Manual de l'Usuari de TST 1.0

Copyright (c) 2005 L'Equip de TST

Es permet copiar, distribuir i/o modificar aquest document sota els termes de la GNU Free Documentation License, Versió 1.2 o qualsevol versió posterior publicada per la Free Software Foundation; sense cap Secció Invariant, ni Text de Portada, ni Text de Contraportada. S'inclou una copia de la llicència a la secció amb el títol "GNU Free Documentation License".

Taula de Continguts

Introducció

TST ha estat creat pensant en un entorn de treball on hi ha diversos treballadors que necessiten un sistema automatitzat per comptar el temps que dediquen a les seves tasques i fer-ne informes. No és un sistema de control, sinó una eina: en tot moment es permet la modificació de les dades. La veracitat és responsabilitat de l'usuari.

La interfície s'ha creat amb GTK+, una llibreria per crear interfícies gràfiques que funciona en diverses plataformes. S'han seguit pautes per crear els diferents elements de la interfície de manera que sigui consistent, senzilla i intuïtiva. No s'ha recarregat de funcionalitat, ja que l'objectiu era que fes el mínim i que ho fes bé.

Per la gestió de les dades es fa servir una base de dades MySQL, també disponible per diverses plataformes. Això permet guardar les dades a un servidor extern al sistema on s'executa o en un servidor executant-se localment. Per tant, les dades dels diferents usuaris es poden guardar en un únic servidor de forma centralitzada o bé en el seu propi sistema, depenent de les seves necessitats.

El llenguatge de programació utilitzat és Python. És un llenguatge interpretat que funciona en moltes plataformes amb el qual es poden fer servir les altres tecnologies mencionades (GTK+ i MySQL) instal·lant les llibreries adequades.

Les plataformes on s'ha provat són:

TST s'ha traduït a diversos idiomes fent servir la funció gettext inclosa a Python. L'idioma de la interfície canviarà depenent de la configuració del sistema operatiu.

Els idiomes disponibles són:

TST és programari lliure; vostè el pot redistribuir i/o modificar sota els termes de la GNU General Public License tal com va publicar la Free Software Foundation; tant la versió 2 de la Llicència, o (a la vostra elecció) qualsevol versió posterior.

Guia d'Instal·lació

Instal·lació Genèrica

Servidor

Hi ha d'haver un ordinador executant un servidor MySQL per donar servei als usuaris. Si l'han de fer servir des d'altres ordinadors, s'ha de configurar MySQL per que accepti connexions per xarxa. Potser també caldrà augmentar el número de connexions simultànies que suportarà, depenent del número d'usuaris.

Client

Hi ha que instal·lar els següents paquets amb aquest ordre:

  • GTK+ (versió 2.x)
  • Python (versió 2.3 o superior)
  • Python GTK+ (versió 2.x)
  • Python MySQLdb
  • TST

Consulti la documentació de cada paquet per instal·lar-lo correctament.

TST es distribueix amb un script de distutils de Python. Per tant es pot instal·lar de la següent forma:

tar xzvf tst10-1.0.x.tar.gz
cd tst10-1.0.x
python setup.py install

On x és el número de revisió.

Instal·lació en un Sistema Debian GNU/Linux

Servidor

Per instal·lar el servidor MySQL i les seves dependències en un sistema Debian GNU/Linux, executi:

apt-get install mysql-server

Si el servidor l'han de fer servir des d'altres màquines, s'haurà de modificar el fitxer /etc/mysql/my.cnf de forma que MySQL accepti connexions TCP/IP. En versions antigues s'havia de comentar la línia:

skip-networking

D'aquesta forma:

#skip-networking

Però en versions més noves s'ha de canviar la línia:

bind-address = 127.0.0.1

Per:

bind-address = a.b.c.d

On a.b.c.d és la adreça IP del servidor.

Una vegada modificat el fitxer, ha de reiniciar MySQL:

/etc/init.d/mysql restart

Client

Per instal·lar TST en un sistema Debian GNU/Linux es poden fer servir els paquets .deb oficials:

dpkg -i tst10-pyXY_1.0.Z_all.deb

On XY és la versió de Python predeterminada i Z és el número de revisió de TST. Si dona problemes de dependències, executi:

apt-get install -f

S'instal·laran els paquets necessaris.

Instal·lació en un Sistema Microsoft Windows

Servidor

Per instal·lar MySQL per Microsoft Windows, executi l'instal·lador de MySQL. La configuració per defecte està preparada per acceptar connexions TCP/IP, així que no serà necessari modificar la configuració si es vol donar servei per xarxa.

Client

Per instal·lar TST per Microsoft Windows, s'han d'executar els instal·ladors dels diversos paquets dels quals depèn en l'ordre esmentat a la secció Instal·lació Genèrica.

Els instal·ladors de paquets creats amb Python 2.3 semblen tenir un error que apareix en arribar al final de la instal·lació. Sembla que l'error apareix en executar l'instal·lador des d'unitats de xarxa o unitats de només lectura. Una solució és fer servir instal·ladors creats amb Python 2.4, i l'altre és copiar els instal·ladors a la unitat on s'instal·laran i executar-los des d'allà.

A sistemes Microsoft Windows 98 hi pot haver problemes si no s'ha establert una variable de l'entorn HOME o HOMEPATH. Per arreglar-ho, hi ha que afegir la següent línia a C:\AUTOEXEC.BAT:

SET HOME=C:\

A sistemes anteriors a Microsoft Windows XP hi pot haver problemes de funcionalitat si el tema de GTK+ és el wimp, per no poder trobar el tipus de lletra requerit. Una solució és canviar de tema amb la utilitat que instal·la GTK+. L'altre solució consisteix en establir el tipus de lletra que farà servir GTK+ afegint la següent línia a l'arxiu %HOMEPATH%\.gtkrc-2.0:

gtk-font-name = "Tahoma 8"

La Interfície

Ús del Teclat

Tancar una Finestra

Per tancar una finestra es pot fer servir la tecla Esc. Tancar una finestra suposa cancel·lar el que s'havia fet i tornar a l'anterior finestra. Tancar l'última finestra suposa sortir del programa.

Canviar el Focus

Es diu que un element de la interfície té el focus quan rep les pulsacions del teclat. Si es vol canviar el focus es pot fer servir la tecla Tab per anar al següent element o la combinació Shift+Tab per anar a l'anterior.

Alguns elements de la interfície (com ara el quadre de text) intercepten la tecla Tab, així que s'ha de fer servir Shift+Tab per sortir-ne.

Activar un Element

Si es vol activar un botó o un element d'una llista un cop tingui el focus es pot fer servir la tecla Enter o Space.

Alguns botons poder ser activats amb la tecla Enter sense tenir el focus. Això és possible a les finestres on només hi ha un botó a la part inferior si l'element que té el focus no intercepta la tecla Enter.

Recórrer una Llista

Un cop una llista té el focus, es pot recórrer amb les tecles de direcció.

Eliminar un Element d'una Llista

Per eliminar un element seleccionat d'una llista es pot fer servir la tecla Del. Apareixerà el menú amb la opció d'eliminar. Si es vol cancel·lar s'ha de fer servir la tecla Esc. Si es vol continuar s'ha de seleccionar l'opció eliminar amb les tecles de direcció i activar-la amb la tecla Enter o Space.

Missatges d'Error

En haver un error apareix un missatge a la part inferior de la finestra activa, s'emet un avís audible i la icona a l'esquerra del missatge parpelleja.

Captura de pantalla de la finestra de configuració de TST 1.0 mostrant un missatge d'error.

Alguns missatges d'error inclouen un número al final. Aquest és el codi d'error de MySQL. Per tant, si es vol saber amb major exactitud la raó d'un error, s'ha de consultar la documentació de MySQL.

Davant d'un error hi ha dues opcions: solucionar el que s'hagi de solucionar i tornar a intentar el que ha produït l'error o cancel·lar (tancar la finestra).

Programa de l'Administrador

Funció del Programa

El programa de l'administrador, tst10-admin, serveix per gestionar els usuaris que han de fer servir TST.

Ús del Programa

Connectar

En executar tst10-admin apareix la finestra de configuració. Aquesta finestra conté dos camps: el nom d'usuari i la clau.

Captura de pantalla de la finestra de configuració de TST 1.0 Admin.

Aquestes dades depenen de la configuració del servidor MySQL. S'ha d'introduir el nom d'un usuari amb permís per crear i eliminar taules i assignar i rellegir privilegis, como ara root, i la seva clau.

En cas de que el servidor MySQL no s'estigui executant localment, s'ha d'indicar el servidor després del nom d'usuari separat per una arrova (@), per exemple, si l'usuari es root i el servidor és 192.168.0.1: root@192.168.0.1.

Si el servidor MySQL s'executa en un port diferent a l'habitual, s'ha d'indicar el port després del servidor separat per dos punts (:), per exemple, si l'usuari es root, el servidor és 192.168.0.1 i el port és 1234: root@192.168.0.1:1234.

Una vegada introduïdes les dades, s'ha de fer clic al botó de connectar. Si tot va bé, desapareixerà la finestra de configuració i apareixerà el llistat d'usuaris.

Captura de pantalla de la finestra de llistat d'usuaris de TST 1.0 Admin.

En sortir del programa, les dades de connexió es guarden a un arxiu anomenat .tst10-adminrc al directori d'inici. D'aquesta manera, la pròxima vegada que s'executi tst10-admin no farà falta introduir el nom d'usuari (ni el servidor ni el port si són necessaris), ja que es carregarà automàticament. La clau no es guarda per motius de seguretat.

Sortir del Programa

Es pot sortir del programa tancant la finestra de configuració o la finestra de llistat d'usuaris.

Crear un Nou Usuari

Per afegir un nou usuari s'ha de fer clic al botó d'afegir usuari a la finestra de llistat d'usuaris. Apareixerà la finestra de nou usuari. Aquesta finestra conté dos camps: el nom d'usuari i la seva clau.

Captura de pantalla de la finestra de nou usuari de TST 1.0 Admin.

El nom d'usuari no pot deixar-se en blanc i està limitat a 10 caràcters alfanumèrics. No hi pot haver dos usuaris amb el mateix nom d'usuari.

La clau no té límits de longitud i pot deixar-se en blanc.

Si es vol cancel·lar la creació del nou usuari, s'ha de tancar la finestra.

Una vegada introduïdes les dades, s'ha de fer clic al botó de guardar. Si tot va bé, desapareixerà la finestra de nou usuari i es tornarà al llistat d'usuaris.

Modificar un Usuari

Si es vol modificar un usuari existent, s'ha de fer doble clic sobre el seu nom a la finestra de llistat d'usuaris. Apareixerà la finestra d'editar usuari. Aquesta finestra conté dos camps: el nom d'usuari i la clau.

Captura de pantalla de la finestra d'editar usuari de TST 1.0 Admin.

El nom d'usuari no es pot modificar.

La clau està en blanc, és a dir, no s'edita l'anterior clau sinó que es reemplaça.

Si es vol cancel·lar la modificació de l'usuari, s'ha de tancar la finestra.

Per guardar els canvis s'ha de fer clic al botó guardar. Si tot va bé, desapareixerà la finestra d'editar usuari i es tornarà al llistat d'usuaris.

Eliminar un Usuari

Si es vol eliminar un usuari existent, s'ha de fer clic amb el botó dret sobre el seu nom a la finestra de llistat d'usuaris. Apareixerà un menú amb la opció d'eliminar.

Captura de pantalla de la finestra de llistat d'usuaris de TST 1.0 Admin amb la opció d'eliminar.

Si es vol cancel·lar l'eliminació, s'ha de fer clic fora d'eliminar.

En fer clic a sobre eliminar s'elimina l'usuari i s'actualitza la llista.

Programa de l'Usuari

Funció del Programa

El programa de l'usuari, tst10, serveix per mantenir el compte del temps dedicat als projectes per després generar informes senzills.

Ús del Programa

Connectar

En executar tst10 apareix la finestra de configuració. Aquesta finestra conté dos camps: el nom d'usuari i la clau.

Captura de pantalla de la finestra de configuració de TST 1.0.

S'ha d'introduir un nom usuari (i la seva clau) creat amb el programa de l'administrador, tst10-admin.

En cas de que el servidor MySQL no s'estigui executant localment, s'ha d'indicar el servidor després del nom d'usuari separat per una arrova (@), per exemple, si l'usuari es jpf i el servidor és 192.168.0.1: jpf@192.168.0.1.

Si el servidor MySQL s'executa en un port diferent a l'habitual, s'ha d'indicar el port després del servidor separat per dos punts (:), per exemple, si l'usuari es jpf, el servidor és 192.168.0.1 i el port és 1234: jpf@192.168.0.1:1234.

Una vegada introduïdes les dades, s'ha de fer clic al botó de connectar. Si tot va bé, desapareixerà la finestra de configuració i apareixerà el llistat de tasques.

Captura de pantalla de la finestra de llistat de tasques de TST 1.0.

En sortir del programa, les dades de connexió es guarden a un arxiu anomenat .tst10rc al directori d'inici. D'aquesta manera, la pròxima vegada que s'executi tst10 no farà falta introduir el nom d'usuari (ni el servidor ni el port si són necessaris), ja que es carregarà automàticament. La clau no es guarda per motius de seguretat.

Sortir del Programa

Es pot sortir del programa tancant la finestra de configuració o la finestra de llistat de tasques.

Crear una Nova Tasca

Per crear una nova tasca s'ha de fer clic al botó d'afegir nova tasca de la finestra de llistat de tasques. Apareixerà la finestra de nova tasca, la qual té dos camps: el nom de la tasca i les anotacions.

Captura de pantalla de la finestra de nova tasca de TST 1.0.

El nom de la tasca està limitat a 32 octets i no es pot deixar en blanc. No hi pot haver dues tasques amb el mateix nom.

Per les anotacions no hi ha límit establert i es pot deixar en blanc.

Si es vol cancel·lar la creació de la nova tasca, s'ha de tancar la finestra.

Per guardar la nova tasca s'ha de fer clic al botó guardar. Si tot va bé, desapareixerà la finestra de nova tasca i es tornarà a la finestra de llistat de tasques.

Modificar una Tasca

Per modificar una tasca s'ha de fer doble clic sobre el seu nom a la finestra de llistat de tasques. Apareixerà la finestra d'editar tasca, la qual té dos camps: el nom de la tasca i les anotacions.

Captura de pantalla de la finestra d'editar tasca de TST 1.0.

Si es vol cancel·lar la modificació de la tasca, s'ha de tancar la finestra.

Per guardar els canvis fets a la tasca, s'ha de fer clic al botó guardar. Si tot va bé, desapareixerà la finestra d'editar tasca i es tornarà a la finestra de llistat de tasques.

Eliminar una Tasca

Per eliminar una tasca s'ha de fer clic amb el botó dret sobre el seu nom a la finestra de llistat de tasques. Apareixerà un menú amb la opció eliminar.

Captura de pantalla de la finestra de llistat de tasques de TST 1.0 amb la opció d'eliminar tasca.

Si es vol cancel·lar l'eliminació, s'ha de fer clic fora d'eliminar.

En fer clic a sobre d'eliminar s'elimina la tasca (i les sessions de treball relacionades) i s'actualitza la llista.

Crear una Nova Sessió de Treball

Per crear una nova sessió de treball s'ha de seleccionar una tasca a la finestra de llistat de tasques i fer clic al botó de nova sessió de treball. Desapareixerà la finestra de llistat de tasques i apareixerà la barra de treball.

Captura de pantalla de la barra de treball de TST 1.0.

La barra de treball conté un botó per arrossegar-la, un comptador que es pot posar en pausa i reprendre i un botó de finalitzar.

Mentre el comptador estigui en marxa, el botó de finalitzar estarà deshabilitat. Si el comptador està en pausa més de 10 segons, parpellejarà per captar l'atenció de l'usuari.

Captura de pantalla de la barra de treball de TST 1.0 mentre parpelleja.

Per finalitzar la sessió de treball, s'ha de fer clic al botó de finalitzar. Desapareixerà la barra de treball i apareixerà la finestra de nova sessió de treball.

Captura de pantalla la finestra de nova sessió de treball de TST 1.0.

Al la finestra de nova sessió de treball hi ha un quadre de text pel detall del que s'ha fet a la sessió de treball, un calendari per la data i tres camps per les hores, els minuts i els segons.

El detall no té cap límit establert i es pot deixar en blanc.

La data estarà establerta segons la data actual. Es pot modificar.

El valor de hores, minuts i segons estarà establert segons el comptador de la barra de treball. Els tres camps es poden modificar dins del rang 00:00:00 - 23:59:59.

Si es vol cancel·lar la creació de la sessió de treball, s'ha de tancar la finestra.

Per guardar la nova sessió de treball s'ha de fer clic al botó de guardar. Si tot va bé desapareixerà la finestra de nova sessió de treball i es tornarà a la finestra de llistat de tasques.

Modificar una Sessió de Treball

Per modificar una sessió de treball s'ha de fer doble clic sobre la mateixa a la finestra de llistat de tasques. Apareixerà la finestra d'editar sessió de treball, on hi ha els mateixos elements que en la finestra de nova sessió de treball.

Captura de pantalla de la finestra d'editar sessió de treball de TST 1.0.

Si es vol cancel·lar la modificació de la sessió de treball, s'ha de tancar la finestra.

Per guardar els canvis fets a la sessió de treball s'ha de fer clic al botó de guardar. Si tot va bé desapareixerà la finestra d'editar sessió de treball i es tornarà a la finestra de llistat de tasques.

Eliminar una Sessió de Treball

Per eliminar una sessió de treball s'ha de fer clic amb el botó dret sobre ella a la finestra de llistat de tasques. Apareixerà un menú amb la opció eliminar.

Captura de pantalla de la finestra de llistat de tasques de TST 1.0 amb la opció d'eliminar sessió de treball.

Si es vol cancel·lar l'eliminació, s'ha de fer clic fora d'eliminar.

En fer clic a sobre d'eliminar s'elimina la sessió de treball i s'actualitza la llista.

Crear un Informe

Per crear un informe s'ha de seleccionar una tasca a la finestra de llistat de tasques i fer clic al botó de crear informe. Apareixerà la finestra d'informe, la qual conté dos calendaris (inici i final) i un quadre de text amb l'informe.

Captura de pantalla de la finestra d'informe de TST 1.0.

L'inici i el final estaran establerts segons la data de la primera i última sessió de treball de la tasca, respectivament. En canviar-los s'actualitza l'informe amb el nou filtre.

L'informe no es pot modificar.

Per cancel·lar s'ha de tancar la finestra.

Per copiar l'informe al portapapers s'ha de fer clic al botó de copiar. Desapareixerà la finestra d'informe i es tornarà a la finestra de llistat de tasques.

GNU Free Documentation License

		GNU Free Documentation License
		  Version 1.2, November 2002


 Copyright (C) 2000,2001,2002  Free Software Foundation, Inc.
     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.


0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other
functional and useful document "free" in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.

This License is a kind of "copyleft", which means that derivative
works of the document must themselves be free in the same sense.  It
complements the GNU General Public License, which is a copyleft
license designed for free software.

We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does.  But this License is not limited to software manuals;
it can be used for any textual work, regardless of subject matter or
whether it is published as a printed book.  We recommend this License
principally for works whose purpose is instruction or reference.


1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that
contains a notice placed by the copyright holder saying it can be
distributed under the terms of this License.  Such a notice grants a
world-wide, royalty-free license, unlimited in duration, to use that
work under the conditions stated herein.  The "Document", below,
refers to any such manual or work.  Any member of the public is a
licensee, and is addressed as "you".  You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.

A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of
the Document that deals exclusively with the relationship of the
publishers or authors of the Document to the Document's overall subject
(or to related matters) and contains nothing that could fall directly
within that overall subject.  (Thus, if the Document is in part a
textbook of mathematics, a Secondary Section may not explain any
mathematics.)  The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.

The "Invariant Sections" are certain Secondary Sections whose titles
are designated, as being those of Invariant Sections, in the notice
that says that the Document is released under this License.  If a
section does not fit the above definition of Secondary then it is not
allowed to be designated as Invariant.  The Document may contain zero
Invariant Sections.  If the Document does not identify any Invariant
Sections then there are none.

The "Cover Texts" are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License.  A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.

A "Transparent" copy of the Document means a machine-readable copy,
represented in a format whose specification is available to the
general public, that is suitable for revising the document
straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available
drawing editor, and that is suitable for input to text formatters or
for automatic translation to a variety of formats suitable for input
to text formatters.  A copy made in an otherwise Transparent file
format whose markup, or absence of markup, has been arranged to thwart
or discourage subsequent modification by readers is not Transparent.
An image format is not Transparent if used for any substantial amount
of text.  A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain
ASCII without markup, Texinfo input format, LaTeX input format, SGML
or XML using a publicly available DTD, and standard-conforming simple
HTML, PostScript or PDF designed for human modification.  Examples of
transparent image formats include PNG, XCF and JPG.  Opaque formats
include proprietary formats that can be read and edited only by
proprietary word processors, SGML or XML for which the DTD and/or
processing tools are not generally available, and the
machine-generated HTML, PostScript or PDF produced by some word
processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page.  For works in
formats which do not have any title page as such, "Title Page" means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.

A section "Entitled XYZ" means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language.  (Here XYZ stands for a
specific section name mentioned below, such as "Acknowledgements",
"Dedications", "Endorsements", or "History".)  To "Preserve the Title"
of such a section when you modify the Document means that it remains a
section "Entitled XYZ" according to this definition.

The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document.  These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.


2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
conditions whatsoever to those of this License.  You may not use
technical measures to obstruct or control the reading or further
copying of the copies you make or distribute.  However, you may accept
compensation in exchange for copies.  If you distribute a large enough
number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and
you may publicly display copies.


3. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
Document's license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all these Cover
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
the back cover.  Both covers must also clearly and legibly identify
you as the publisher of these copies.  The front cover must present
the full title with all words of the title equally prominent and
visible.  You may add other material on the covers in addition.
Copying with changes limited to the covers, as long as they preserve
the title of the Document and satisfy these conditions, can be treated
as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.

If you publish or distribute Opaque copies of the Document numbering
more than 100, you must either include a machine-readable Transparent
copy along with each Opaque copy, or state in or with each Opaque copy
a computer-network location from which the general network-using
public has access to download using public-standard network protocols
a complete Transparent copy of the Document, free of added material.
If you use the latter option, you must take reasonably prudent steps,
when you begin distribution of Opaque copies in quantity, to ensure
that this Transparent copy will remain thus accessible at the stated
location until at least one year after the last time you distribute an
Opaque copy (directly or through your agents or retailers) of that
edition to the public.

It is requested, but not required, that you contact the authors of the
Document well before redistributing any large number of copies, to give
them a chance to provide you with an updated version of the Document.


4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under
the conditions of sections 2 and 3 above, provided that you release
the Modified Version under precisely this License, with the Modified
Version filling the role of the Document, thus licensing distribution
and modification of the Modified Version to whoever possesses a copy
of it.  In addition, you must do these things in the Modified Version:

A. Use in the Title Page (and on the covers, if any) a title distinct
   from that of the Document, and from those of previous versions
   (which should, if there were any, be listed in the History section
   of the Document).  You may use the same title as a previous version
   if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities
   responsible for authorship of the modifications in the Modified
   Version, together with at least five of the principal authors of the
   Document (all of its principal authors, if it has fewer than five),
   unless they release you from this requirement.
C. State on the Title page the name of the publisher of the
   Modified Version, as the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modifications
   adjacent to the other copyright notices.
F. Include, immediately after the copyright notices, a license notice
   giving the public permission to use the Modified Version under the
   terms of this License, in the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections
   and required Cover Texts given in the Document's license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add
   to it an item stating at least the title, year, new authors, and
   publisher of the Modified Version as given on the Title Page.  If
   there is no section Entitled "History" in the Document, create one
   stating the title, year, authors, and publisher of the Document as
   given on its Title Page, then add an item describing the Modified
   Version as stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for
   public access to a Transparent copy of the Document, and likewise
   the network locations given in the Document for previous versions
   it was based on.  These may be placed in the "History" section.
   You may omit a network location for a work that was published at
   least four years before the Document itself, or if the original
   publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications",
   Preserve the Title of the section, and preserve in the section all
   the substance and tone of each of the contributor acknowledgements
   and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document,
   unaltered in their text and in their titles.  Section numbers
   or the equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements".  Such a section
   may not be included in the Modified Version.
N. Do not retitle any existing section to be Entitled "Endorsements"
   or to conflict in title with any Invariant Section.
O. Preserve any Warranty Disclaimers.

If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no material
copied from the Document, you may at your option designate some or all
of these sections as invariant.  To do this, add their titles to the
list of Invariant Sections in the Modified Version's license notice.
These titles must be distinct from any other section titles.

You may add a section Entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various
parties--for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.

You may add a passage of up to five words as a Front-Cover Text, and a
passage of up to 25 words as a Back-Cover Text, to the end of the list
of Cover Texts in the Modified Version.  Only one passage of
Front-Cover Text and one of Back-Cover Text may be added by (or
through arrangements made by) any one entity.  If the Document already
includes a cover text for the same cover, previously added by you or
by arrangement made by the same entity you are acting on behalf of,
you may not add another; but you may replace the old one, on explicit
permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License
give permission to use their names for publicity for or to assert or
imply endorsement of any Modified Version.


5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified
versions, provided that you include in the combination all of the
Invariant Sections of all of the original documents, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.

The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy.  If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.

In the combination, you must combine any sections Entitled "History"
in the various original documents, forming one section Entitled
"History"; likewise combine any sections Entitled "Acknowledgements",
and any sections Entitled "Dedications".  You must delete all sections
Entitled "Endorsements".


6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents
released under this License, and replace the individual copies of this
License in the various documents with a single copy that is included in
the collection, provided that you follow the rules of this License for
verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute
it individually under this License, provided you insert a copy of this
License into the extracted document, and follow this License in all
other respects regarding verbatim copying of that document.


7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
distribution medium, is called an "aggregate" if the copyright
resulting from the compilation is not used to limit the legal rights
of the compilation's users beyond what the individual works permit.
When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.

If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
the entire aggregate, the Document's Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.


8. TRANSLATION

Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
translations of some or all Invariant Sections in addition to the
original versions of these Invariant Sections.  You may include a
translation of this License, and all the license notices in the
Document, and any Warranty Disclaimers, provided that you also include
the original English version of this License and the original versions
of those notices and disclaimers.  In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.

If a section in the Document is Entitled "Acknowledgements",
"Dedications", or "History", the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.


9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except
as expressly provided for under this License.  Any other attempt to
copy, modify, sublicense or distribute the Document is void, and will
automatically terminate your rights under this License.  However,
parties who have received copies, or rights, from you under this
License will not have their licenses terminated so long as such
parties remain in full compliance.


10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions
of the GNU Free Documentation License from time to time.  Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.  See
http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number.
If the Document specifies that a particular numbered version of this
License "or any later version" applies to it, you have the option of
following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation.  If the Document does not specify a version
number of this License, you may choose any version ever published (not
as a draft) by the Free Software Foundation.


ADDENDUM: How to use this License for your documents

To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:

    Copyright (c)  YEAR  YOUR NAME.
    Permission is granted to copy, distribute and/or modify this document
    under the terms of the GNU Free Documentation License, Version 1.2
    or any later version published by the Free Software Foundation;
    with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    A copy of the license is included in the section entitled "GNU
    Free Documentation License".

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
replace the "with...Texts." line with this:

    with the Invariant Sections being LIST THEIR TITLES, with the
    Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.

If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.

If your document contains nontrivial examples of program code, we
recommend releasing these examples in parallel under your choice of
free software license, such as the GNU General Public License,
to permit their use in free software.