diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 00:43:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 00:43:17 +0000 |
commit | f9ba1f4431124f48769a2666d5d9ec921345ca71 (patch) | |
tree | 84f6056d0a7a06c9fed9927a8be9210064de058c /Master/texmf-dist/doc/bibtex | |
parent | fd423d0bb64fe29a2be1fbae5baaf4bc386cc274 (diff) |
doc 2
git-svn-id: svn://tug.org/texlive/trunk@78 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/bibtex')
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/bibshare | 82 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxbst.doc | 2528 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxdoc.bib | 90 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxdoc.pdf | 1763 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxdoc.tex | 1117 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxhak.pdf | 1465 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/base/btxhak.tex | 623 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/gost/README | 35 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/gost/gost71.pdf | bin | 0 -> 227778 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/gost/gost780.pdf | bin | 0 -> 225226 bytes |
10 files changed, 7703 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/bibtex/base/bibshare b/Master/texmf-dist/doc/bibtex/base/bibshare new file mode 100644 index 00000000000..cb0c4938fcc --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/bibshare @@ -0,0 +1,82 @@ +Notes on how to share bibtex files. + +Construction of citation keys: + +@article + Author:<abbrev-journal>-<volume or yyear>-<start page or month#> + +@inproceedings + Author:<abbrev-booktitle><yyear>-<start page> [no -, e.g, RIDT91] + +@incollection + Author:<abbrev-booktitle>-<yyear>-<start page> + +@proceedings +@book +@...thesis + Author:<abbrev-title>-<yyear> + +@unpublished + Author:<abbrev-title>-<yyear>-<month# or whatever> + +@techreport + Author:<abbrev-title>-<yyear> or + Author:<abbrev-inst>-<yyear>-<number> + + +To make abbrev, use initial letters from the first three or so important +words in the title. If title has one word, probably better to +abbreviate it than to use just a single letter, as in `SCI' rather than +`S' for the journal `Science'. For books it probably doesn't matter much. + +Use \#, \&, \$ +Use \allcaps + +journal string prefix `j-' +publisher `pub-' +publisher address `pub-<publisher>:adr' +institution `inst-' + + +This book has a good collections of journal abbreviations: + +Coden for Periodical Titles, Volume 1, ASTM Data Series DS 23A, +American Society for Testing and Materials, 1916 Race St, Philadelphia, PA 19103 + + +CONVENTIONS (for naming BibTeX citation keys) + +Books are tagged by the first author's last name, a colon, up to 3 +upper-case letters taken from the first three upper-case words in the +title (ignoring words like A, And, The), followed by the last two digits +of the publication year. If there is a volume entry, it is appended to +the tag, prefixed by a hyphen. + +When appropriate, a van part is included in the author tag. For names +with accented letters, accents are dropped in the author tag. + +This scheme is systematic enough that it can be programmed: most of the +Addison-Wesley book entries were created with an awk program from a dump +of the AW database supplied by Mona Zeftel. Older entries in this +bibliography were modified on 28-Nov-1990 to conform to this tagging +scheme. + +The choice of a limit of 3 letters was determined from experiments on +the Addison-Wesley collection. Long tags are undesirable because they +are a nuisance to type, and also interfere with the tagged bibliography +output produced using the LaTeX showtags style option. + +Journal article tags look like author:abbrev-volume-number-page, where +the author part is the last name of the first author: for example, +Gilchrist:NAMS-36-9-1199. + +Technical report tags look like author:abbrev-number: for example, +Billawala:STAN-CS-89-1256. + +InProceedings tags look like author:conferencename-page: for example, +Agostini:TEX85-117. + +With few exceptions, value fields for acknowledgement, address, journal, +and publisher keywords should use macros. This helps to ensure +consistency, and reduces the entry sizes. Address entries must always +include the country. diff --git a/Master/texmf-dist/doc/bibtex/base/btxbst.doc b/Master/texmf-dist/doc/bibtex/base/btxbst.doc new file mode 100644 index 00000000000..37d38bd9f1e --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxbst.doc @@ -0,0 +1,2528 @@ +% BibTeX `plain' family + % version 0.99b for BibTeX versions 0.99a or later, LaTeX version 2.09. + % Copyright (C) 1985, all rights reserved. + % Copying of this file is authorized only if either + % (1) you make absolutely no changes to your copy, including name, or + % (2) if you do make changes, you name it something other than + % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. + % This restriction helps ensure that all standard styles are identical. + % The file btxbst.doc has the documentation for this style. +% Please notify Oren Patashnik (PATASHNIK@SCORE.STANFORD.EDU) of any bugs in +% these standard styles or in this documentation file. +% +% This is file btxbxt.doc; it helps document bibliography styles, +% and is also a template file that you can use to make +% several different style files, if you have access to a C preprocessor. +% For example, the standard styles were made by doing something like +% cpp -P -DPLAIN btxbst.doc plain.txt +% cpp -P -DUNSRT btxbst.doc unsrt.txt +% cpp -P -DALPHA btxbst.doc alpha.txt +% cpp -P -DABBRV btxbst.doc abbrv.txt +% and then renaming after removing unwanted comments and blank lines. +% If you don't have access, +% you can edit this file by hand to imitate the preprocessor, +% with the following explanation of the C preprocessor constructs used here. +% +% The output of the preprocessor is the same as the input, except that certain +% lines will be excluded (and some blank lines will be added). The sequence +% #if VAR +% lines to be included when VAR is not zero +% #else +% lines to be included when VAR is zero +% #endif +% (with the #-signs appearing in column 1) means that one set or the other of +% the lines are to be included depending on the value of VAR. +% The #else part is optional. Comments can be added after #else and #endif. +% Variables can be set by +% #define VAR value +% and one can also use #ifdef VAR to see if VAR has any value, and #ifndef +% to see if it has none. +% Another #if form used in this file is #if !VAR, which includes the lines +% after the #if only if VAR is zero. +% +% Convention: Use all uppercase identifiers for these preprocessor variables +% so you can spot them easily +% +% The command line to the preprocessor should define one of PLAIN, UNSRT, ALPHA +% or ABBRV (though PLAIN will be used by default if none is given), +% and the following lines will set various boolean variables to control the +% various lines that are chosen from the rest of the file. +% Each boolean variable should be set true (1) or false (0) in each style. +% Here are the current variables, and their meanings: +% LAB_ALPH: an alphabetic label is used (if false then a numeric +% label is used) +% SORTED: the entries should be sorted by label (if nonnumeric) +% and other info, like authors (if false, then +% entries remain in order of occurrence) +% NAME_FULL: the authors, editors, etc., get the full names as +% given in the bibliography file (if false, the first +% names become initials) +% ATIT_LOWER: titles of non-"books" (e.g., articles) should be +% converted to lower-case, except the first letter or +% first letter after a colon +% (if false then they appear as in the database) +% MONTH_FULL: months are spelled out in full (if false, then +% they're abbreviated) +% JOUR_FULL: macro journal names are spelled out in full +% (if false then they are abbreviated, currently +% as they appear in ACM publications) +#ifndef UNSRT +# ifndef ALPHA +# ifndef ABBRV +# define PLAIN 1 +# endif +# endif +#endif +#ifdef PLAIN +% plain style (sorted numbers) +# define LAB_ALPH 0 +# define SORTED 1 +# define NAME_FULL 1 +# define ATIT_LOWER 1 +# define MONTH_FULL 1 +# define JOUR_FULL 1 +#endif +#ifdef UNSRT +% unsrt style (unsorted numbers) +# define LAB_ALPH 0 +# define SORTED 0 +# define NAME_FULL 1 +# define ATIT_LOWER 1 +# define MONTH_FULL 1 +# define JOUR_FULL 1 +#endif +#ifdef ALPHA +% alpha style (sorted short alphabetics) +# define LAB_ALPH 1 +# define SORTED 1 +# define NAME_FULL 1 +# define ATIT_LOWER 1 +# define MONTH_FULL 1 +# define JOUR_FULL 1 +#endif +#ifdef ABBRV +% abbrv style (sorted numbers, with abbreviations) +# define LAB_ALPH 0 +# define SORTED 1 +# define NAME_FULL 0 +# define ATIT_LOWER 1 +# define MONTH_FULL 0 +# define JOUR_FULL 0 +#endif +% +% Entry formatting: Similar to that recommended by Mary-Claire van Leunen +% in "A Handbook for Scholars". Book-like titles are italicized +% (emphasized) and non-book titles are converted to sentence +% capitilization (and not enclosed in quotes). +% This file outputs a \newblock between major blocks of an entry +% (the name \newblock is analogous to the names \newline and \newpage) +% so that the user can obtain an "open" format, which has a line break +% before each block and lines after the first are indented within blocks, +% by giving the optional \documentstyle argument `openbib'; +% The default is the "closed" format---blocks runs together. +% +% Citation alphabetic label format: +% [Knu73] for single author (or editor or key) +% [AHU83] (first letters of last names) for multiple authors +% +% Citation label numberic format: +% [number] +% +% Reference list ordering for sorted, alphabetic lables: +% alphabetical by citation label, then by author(s) or whatever +% passes for author in the absence of one, then by year, +% then title +% +% Reference list ordering for sorted, numeric lables: +% alphabetical by author(s) or whatever passes +% for author in the absence of one, then by year, then title +% +% Reference list ordering for unsorted: +% by the order cited in the text +% +% History +% 12/16/84 (HWT) Original `plain' version, by Howard Trickey. +% 12/23/84 (LL) Some comments made by Leslie Lamport. +% 2/16/85 (OP) Changes based on LL's comments, Oren Patashnik. +% 2/17/85 (HWT) Template file and other standard styles made. +% 3/28/85 (OP) First release, version 0.98b for BibTeX 0.98f. +% 5/ 9/85 (OP) Version 0.98c for BibTeX 0.98i: +% fixed Theoretical Computer Science macro name; +% fixed the format.vol.num.pages function. +% 1/24/88 (OP) Version 0.99a for BibTeX 0.99a, main changes: +% assignment operator (:=) arguments reversed; +% the preamble$ function outputs the database PREAMBLE; +% entry.max$ and global.max$ (built-in) variables replace +% entry.string.max and global.string.max functions; +% alphabetizing by year then title, not just title; +% many unnecessary ties removed; \it ==> \em; +% the `alpha' style uses a superscripted `+' instead of a +% `*' for unnamed names in constructing the label; +% the `abbrv' style now uses "Mar." and "Sept."; +% the functions calc.label and presort now look at just +% the fields they're supposed to; +% BOOKLET, MASTERSTHESIS, TECHREPORT use nonbook titles; +% INBOOK and INCOLLECTION take an optional type (e.g. +% type = "Section"), overriding the default "chapter"; +% BOOK, INBOOK, INCOLLECTION, and PROCEEDINGS now allow +% either volume or number, not just volume; +% INCOLLECTION now allows an edition and series field; +% PROCEEDINGS and INPROCEEDINGS now use the address field +% to tell where a conference was held; +% INPROCEEDINGS and PROCEEDINGS now allow either volume +% or number, and also a series field; +% MASTERSTHESIS and PHDTHESIS accept types other than +% "Master's thesis" and "PhD thesis"; +% UNPUBLISHED now outputs, in one block, note then date; +% MANUAL now prints out the organization in +% the first block if the author field is empty; +% MISC can't be empty---it requires some optional field. +% 3/23/88 (OP) Version 0.99b for BibTeX 0.99c---changed the three +% erroneous occurrences of `cite ' to `cite$ '; this +% change didn't affect the four standard styles, so the +% 0.99a versions of those styles are still current. +% +% The ENTRY declaration +% Like Scribe's (according to pages 231-2 of the April '84 edition), +% but no fullauthor or editors fields because BibTeX does name handling. +% The annote field is commented out here because this family doesn't +% include an annotated bibliography style. And in addition to the fields +% listed here, BibTeX has a built-in crossref field, explained later. + +ENTRY +% Fields: + { address +% Usually the address of a publisher or other type of organization. +% Put information in this field only if it helps the reader find the +% thing---for example you should omit the address of a major +% publisher entirely. For a PROCEEDINGS or an INPROCEEDINGS, +% however, it's the address of the conference; for those two entry +% types, include the publisher's or organization's address, if +% necessary, in the publisher or organization field. +% annote +% Long annotation---for annotated bibliographies (begins sentence). + author +% Name(s) of author(s), in BibTeX name format. + booktitle +% Book title when the thing being referenced isn't the whole book. +% For book entries, the title field should be used instead. + chapter +% Chapter (or section or whatever) number. + edition +% Edition of a book---should be an ordinal (e.g., "Second"). + editor +% Name(s) of editor(s), in BibTeX name format. +% If there is also an author field, then the editor field should be +% for the book or collection that the work appears in. + howpublished +% How something strange has been published (begins sentence). + institution +% Sponsoring institution of a technical report. + journal +% Journal name (macros are provided for many). + key +% Alphabetizing, labeling, and cross-referencing key +% (needed when an entry has no author or editor). + month +% Month (macros are provided). + note +% To help the reader find a reference (begins sentence). + number +% Number of a journal or technical report, or of a work in a series. + organization +% Organization sponsoring a conference (or publishing a manual); if +% the editor (or author) is empty, and if the organization produces +% an awkward label or cross reference, you should put appropriately +% condensed organization information in the key field as well. + pages +% Page number or numbers (use `--' to separate a range, use `+' +% to indicate pages following that don't form a simple range). + publisher +% Publisher name. + school +% School name (for theses). + series +% The name of a series or set of books. +% An individual book will will also have it's own title. + title +% The title of the thing you're referred to. + type +% Type of a Techreport (e.g., "Research Note") to be used instead of +% the default "Technical Report"; or, similarly, the type of a +% thesis; or of a part of a book. + volume +% The volume number of a journal or multivolume work. + year +% The year should contain only numerals (technically, it should end +% with four numerals, after purification; doesn't a begin sentence). + } +% There are no integer entry variables + {} +% These string entry variables are used to form the citation label. +% In a storage pinch, sort.label can be easily computed on the fly. +#if LAB_ALPH +#if SORTED + { label extra.label sort.label } +#else !SORTED +% It doesn't seem like a good idea to use an order-of-citation +% reference list when using alphabetic labels, but when this happens +% we do things a little differently + { label } +#endif SORTED +#else !LAB_ALPH + { label } +#endif LAB_ALPH + +% Each entry function starts by calling output.bibitem, to write the +% \bibitem and its arguments to the .BBL file. Then the various fields +% are formatted and printed by output or output.check. Those functions +% handle the writing of separators (commas, periods, \newblock's), +% taking care not to do so when they are passed a null string. +% Finally, fin.entry is called to add the final period and finish the +% entry. +% +% A bibliographic reference is formatted into a number of `blocks': +% in the open format, a block begins on a new line and subsequent +% lines of the block are indented. A block may contain more than +% one sentence (well, not a grammatical sentence, but something to +% be ended with a sentence ending period). The entry functions should +% call new.block whenever a block other than the first is about to be +% started. They should call new.sentence whenever a new sentence is +% to be started. The output functions will ensure that if two +% new.sentence's occur without any non-null string being output between +% them then there won't be two periods output. Similarly for two +% successive new.block's. +% +% The output routines don't write their argument immediately. +% Instead, by convention, that argument is saved on the stack to be +% output next time (when we'll know what separator needs to come +% after it). Meanwhile, the output routine has to pop the pending +% output off the stack, append any needed separator, and write it. +% +% To tell which separator is needed, we maintain an output.state. +% It will be one of these values: +% before.all just after the \bibitem +% mid.sentence in the middle of a sentence: comma needed +% if more sentence is output +% after.sentence just after a sentence: period needed +% after.block just after a block (and sentence): +% period and \newblock needed. +% Note: These styles don't use after.sentence +% +% VAR: output.state : INTEGER -- state variable for output +% +% The output.nonnull function saves its argument (assumed to be nonnull) +% on the stack, and writes the old saved value followed by any needed +% separator. The ordering of the tests is decreasing frequency of +% occurrence. +% +% output.nonnull(s) == +% BEGIN +% s := argument on stack +% if output.state = mid.sentence then +% write$(pop() * ", ") +% -- "pop" isn't a function: just use stack top +% else +% if output.state = after.block then +% write$(add.period$(pop())) +% newline$ +% write$("\newblock ") +% else +% if output.state = before.all then +% write$(pop()) +% else -- output.state should be after.sentence +% write$(add.period$(pop()) * " ") +% fi +% fi +% output.state := mid.sentence +% fi +% push s on stack +% END +% +% The output function calls output.nonnull if its argument is non-empty; +% its argument may be a missing field (thus, not necessarily a string) +% +% output(s) == +% BEGIN +% if not empty$(s) then output.nonnull(s) +% fi +% END +% +% The output.check function is the same as the output function except that, if +% necessary, output.check warns the user that the t field shouldn't be empty +% (this is because it probably won't be a good reference without the field; +% the entry functions try to make the formatting look reasonable even when +% such fields are empty). +% +% output.check(s,t) == +% BEGIN +% if empty$(s) then +% warning$("empty " * t * " in " * cite$) +% else output.nonnull(s) +% fi +% END +% +% The output.bibitem function writes the \bibitem for the current entry +% (the label should already have been set up), and sets up the separator +% state for the output functions. And, it leaves a string on the stack +% as per the output convention. +% +% output.bibitem == +% BEGIN +% newline$ +% write$("\bibitem[") % for alphabetic labels, +% write$(label) % these three lines +% write$("]{") % are used +% write$("\bibitem{") % this line for numeric labels +% write$(cite$) +% write$("}") +% push "" on stack +% output.state := before.all +% END +% +% The fin.entry function finishes off an entry by adding a period to the +% string remaining on the stack. If the state is still before.all +% then nothing was produced for this entry, so the result will look bad, +% but the user deserves it. (We don't omit the whole entry because the +% entry was cited, and a bibitem is needed to define the citation label.) +% +% fin.entry == +% BEGIN +% write$(add.period$(pop())) +% newline$ +% END +% +% The new.block function prepares for a new block to be output, and +% new.sentence prepares for a new sentence. +% +% new.block == +% BEGIN +% if output.state <> before.all then +% output.state := after.block +% fi +% END +% +% new.sentence == +% BEGIN +% if output.state <> after.block then +% if output.state <> before.all then +% output.state := after.sentence +% fi +% fi +% END +% + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} + +% the variables s and t are temporary string holders + +STRINGS { s t } + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {output.bibitem} +{ newline$ +#if LAB_ALPH + "\bibitem[" write$ + label write$ + "]{" write$ +#else + "\bibitem{" write$ +#endif LAB_ALPH + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +% This function finishes all entries. + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +% These three functions pop one or two (integer) arguments from the stack +% and push a single one, either 0 or 1. +% The 'skip$ in the `and' and `or' functions are used because +% the corresponding if$ would be idempotent + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +% Sometimes we begin a new block only if the block will be big enough. The +% new.block.checka function issues a new.block if its argument is nonempty; +% new.block.checkb does the same if either of its TWO arguments is nonempty. + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +% The new.sentence.check functions are analogous. + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +% Here are some functions for formatting chunks of an entry. +% By convention they either produce a string that can be followed by +% a comma or period (using add.period$, so it is OK to end in a period), +% or they produce the null string. +% +% A useful utility is the field.or.null function, which checks if the +% argument is the result of pushing a `missing' field (one for which no +% assignment was made when the current entry was read in from the database) +% or the result of pushing a string having no non-white-space characters. +% It returns the null string if so, otherwise it returns the field string. +% Its main (but not only) purpose is to guarantee that what's left on the +% stack is a string rather than a missing field. +% +% field.or.null(s) == +% BEGIN +% if empty$(s) then return "" +% else return s +% END +% +% Another helper function is emphasize, which returns the argument emphazised, +% if that is non-empty, otherwise it returns the null string. Italic +% corrections aren't used, so this function should be used when punctation +% will follow the result. +% +% emphasize(s) == +% BEGIN +% if empty$(s) then return "" +% else return "{\em " * s * "}" +% +% The format.names function formats the argument (which should be in +% BibTeX name format) into "First Von Last, Junior", separated by commas +% and with an "and" before the last (but ending with "et~al." if the last +% of multiple authors is "others"). This function's argument should always +% contain at least one name. +% +% VAR: nameptr, namesleft, numnames: INTEGER +% pseudoVAR: nameresult: STRING (it's what's accumulated on the stack) +% +% format.names(s) == +% BEGIN +% nameptr := 1 +% numnames := num.names$(s) +% namesleft := numnames +% while namesleft > 0 +% do +% % for full names: +% t := format.name$(s, nameptr, "{ff~}{vv~}{ll}{, jj}") +% % for abbreviated first names: +% t := format.name$(s, nameptr, "{f.~}{vv~}{ll}{, jj}") +% if nameptr > 1 then +% if namesleft > 1 then nameresult := nameresult * ", " * t +% else if numnames > 2 +% then nameresult := nameresult * "," +% fi +% if t = "others" +% then nameresult := nameresult * " et~al." +% else nameresult := nameresult * " and " * t +% fi +% fi +% else nameresult := t +% fi +% nameptr := nameptr + 1 +% namesleft := namesleft - 1 +% od +% return nameresult +% END +% +% The format.authors function returns the result of format.names(author) +% if the author is present, or else it returns the null string +% +% format.authors == +% BEGIN +% if empty$(author) then return "" +% else return format.names(author) +% fi +% END +% +% Format.editors is like format.authors, but it uses the editor field, +% and appends ", editor" or ", editors" +% +% format.editors == +% BEGIN +% if empty$(editor) then return "" +% else +% if num.names$(editor) > 1 then +% return format.names(editor) * ", editors" +% else +% return format.names(editor) * ", editor" +% fi +% fi +% END +% +% Other formatting functions are similar, so no "comment version" will be +% given for them. +% +% The `pop$' in this function gets rid of the duplicate `empty' value and +% the `skip$' returns the duplicate field value + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "{\em " swap$ * "}" * } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } +#if NAME_FULL + { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := +#else + { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := +#endif NAME_FULL + nameptr #1 > + { namesleft #1 > + { ", " * t * } + { numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { " et~al." * } + { " and " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { ", editors" * } + { ", editor" * } + if$ + } + if$ +} + +% The format.title function is used for non-book-like titles. +% For most styles we convert to lowercase (except for the very first letter, +% and except for the first one after a colon (followed by whitespace)), +% and hope the user has brace-surrounded words that need to stay capitilized; +% for some styles, however, we leave it as it is in the database. + +FUNCTION {format.title} +{ title empty$ + { "" } +#if ATIT_LOWER + { title "t" change.case$ } +#else + 'title +#endif ATIT_LOWER + if$ +} + +% By default, BibTeX sets the global integer variable global.max$ to the BibTeX +% constant glob_str_size, the maximum length of a global string variable. +% Analogously, BibTeX sets the global integer variable entry.max$ to +% ent_str_size, the maximum length of an entry string variable. +% The style designer may change these if necessary (but this is unlikely) + +% The n.dashify function makes each single `-' in a string a double `--' +% if it's not already +% +% pseudoVAR: pageresult: STRING (it's what's accumulated on the stack) +% +% n.dashify(s) == +% BEGIN +% t := s +% pageresult := "" +% while (not empty$(t)) +% do +% if (first character of t = "-") +% then +% if (next character isn't) +% then +% pageresult := pageresult * "--" +% t := t with the "-" removed +% else +% while (first character of t = "-") +% do +% pageresult := pageresult * "-" +% t := t with the "-" removed +% od +% fi +% else +% pageresult := pageresult * the first character +% t := t with the first character removed +% fi +% od +% return pageresult +% END + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +% The format.date function is for the month and year, but we give a warning if +% there's an empty year but the month is there, and we return the empty string +% if they're both empty. + +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month " " * year * } + if$ + } + if$ +} + +% The format.btitle is for formatting the title field when it is a book-like +% entry---the style used here keeps it in uppers-and-lowers and emphasizes it. + +FUNCTION {format.btitle} +{ title emphasize +} + +% For several functions we'll need to connect two strings with a +% tie (~) if the second one isn't very long (fewer than 3 characters). +% The tie.or.space.connect function does that. It concatenates the two +% strings on top of the stack, along with either a tie or space between +% them, and puts this concatenation back onto the stack: +% +% tie.or.space.connect(str1,str2) == +% BEGIN +% if text.length$(str2) < 3 +% then return the concatenation of str1, "~", and str2 +% else return the concatenation of str1, " ", and str2 +% END + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ * * +} + +% The either.or.check function complains if both fields or an either-or pair +% are nonempty. +% +% either.or.check(t,s) == +% BEGIN +% if empty$(s) then +% warning$(can't use both " * t * " fields in " * cite$) +% fi +% END + +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +% The format.bvolume function is for formatting the volume and perhaps +% series name of a multivolume work. If both a volume and a series field +% are there, we assume the series field is the title of the whole multivolume +% work (the title field should be the title of the thing being referred to), +% and we add an "of <series>". This function is called in mid-sentence. + +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { "volume" volume tie.or.space.connect + series empty$ + 'skip$ + { " of " * series emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} + +% The format.number.series function is for formatting the series name +% and perhaps number of a work in a series. This function is similar to +% format.bvolume, although for this one the series must exist (and the +% volume must not exist). If the number field is empty we output either +% the series field unchanged if it exists or else the null string. +% If both the number and series fields are there we assume the series field +% gives the name of the whole series (the title field should be the title +% of the work being one referred to), and we add an "in <series>". +% We capitilize Number when this function is used at the beginning of a block. + +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "number" } + { "Number" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " in " * series * } + if$ + } + if$ + } + { "" } + if$ +} + +% The format.edition function appends " edition" to the edition, if present. +% We lowercase the edition (it should be something like "Third"), because +% this doesn't start a sentence. + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +% The format.pages function is used for formatting a page range in a book +% (and in rare circumstances, an article). +% +% The multi.page.check function examines the page field for a "-" or "," or "+" +% so that format.pages can use "page" instead of "pages" if none exists. +% Note: global.max$ here means "take the rest of the string" +% +% VAR: multiresult: INTEGER (actually, a boolean) +% +% multi.page.check(s) == +% BEGIN +% t := s +% multiresult := false +% while ((not multiresult) and (not empty$(t))) +% do +% if (first character of t = "-" or "," or "+") +% then multiresult := true +% else t := t with the first character removed +% fi +% od +% return multiresult +% END + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +% This function doesn't begin a sentence so "pages" isn't capitalized. +% Other functions that use this should keep that in mind. + +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "pages" pages n.dashify tie.or.space.connect } + { "page" pages tie.or.space.connect } + if$ + } + if$ +} + +% The format.vol.num.pages function is for the volume, number, and page range +% of a journal article. We use the format: vol(number):pages, with some +% variations for empty fields. This doesn't begin a sentence. + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + + +% The format.chapter.pages, if the chapter is present, puts whatever is in the +% type field (or else "chapter" if type is empty) in front of a chapter number. +% It then appends the pages, if present. This doesn't begin a sentence. + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" } + { type "l" change.case$ } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +% The format.in.ed.booktitle function is used for starting out a sentence +% that begins "In <booktitle>", putting an editor before the title if one +% exists. + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "In " booktitle emphasize * } + { "In " format.editors * ", " * booktitle emphasize * } + if$ + } + if$ +} + +% The function empty.misc.check complains if all six fields are empty, and +% if there's been no sorting or alphabetic-label complaint. + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and +#if SORTED + key empty$ not and +#else !SORTED +#if LAB_ALPH + key empty$ not and +#endif LAB_ALPH +#endif SORTED + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +% The function format.thesis.type returns either the (case-changed) type field, +% if it is defined, or else the default string already on the stack +% (like "Master's thesis" or "PhD thesis"). + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +% The function format.tr.number makes a string starting with "Technical Report" +% (or type, if that field is defined), followed by the number if there is one; +% it returns the starting part (with a case change) even if there is no number. +% This is used at the beginning of a sentence. + +FUNCTION {format.tr.number} +{ type empty$ + { "Technical Report" } + 'type + if$ + number empty$ + { "t" change.case$ } + { number tie.or.space.connect } + if$ +} + +% Now come the cross-referencing functions (these are invoked because +% one entry in the database file(s) cross-references another, by giving +% the other entry's database key in a `crossref' field). This feature +% allows one or more titled things that are part of a larger titled +% thing to cross-reference the larger thing. These styles allow for +% five posibilities: (1) an ARTICLE may cross-reference an ARTICLE; +% (2) a BOOK, (3) INBOOK, or (4) INCOLLECTION may cross-reference a BOOK; +% or (5) an INPROCEEDINGS may cross-reference a PROCEEDINGS. +% Each of these is explained in more detail later. +% +% An ARTICLE entry type may cross reference another ARTICLE (this is +% intended for when an entire journal is devoted to a single topic--- +% but since there is no JOURNAL entry type, the journal, too, should be +% classified as an ARTICLE but without the author and title fields). +% This will result in two warning messages for the journal's entry +% if it's included in the reference list, but such is life. +% +% format.article.crossref == +% BEGIN +% if empty$(key) then +% if empty$(journal) then +% warning$("need key or journal for " * cite$ * +% " to crossref " * crossref) +% return(" \cite{" * crossref * "}") +% else +% return("In " * emphazise.correct (journal) * +% " \cite{" * crossref * "}") +% fi +% else +% return("In " * key * " \cite{" * crossref * "}") +% fi +% END +% +% The other cross-referencing functions are similar, so no "comment version" +% will be given for them. + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "In {\em " journal * "\/}" * } + if$ + } + { "In " key * } + if$ + " \cite{" * crossref * "}" * +} + +% We use just the last names of editors for a cross reference: either +% "editor", or "editor1 and editor2", or "editor1 et~al." depending on +% whether there are one, or two, or more than two editors. + +FUNCTION {format.crossref.editor} +{ editor #1 "{vv~}{ll}" format.name$ + editor num.names$ duplicate$ + #2 > + { pop$ " et~al." * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " et~al." * } + { " and " * editor #2 "{vv~}{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +% A BOOK (or INBOOK) entry type (assumed to be for a single volume in a +% multivolume work) may cross reference another BOOK (the entire multivolume). +% Usually there will be an editor, in which case we use that to construct the +% cross reference; otherwise we use a nonempty key field or else the series +% field (since the series gives the title of the multivolume work). + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "In " + } + { "Volume" volume tie.or.space.connect + " of " * + } + if$ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" * + } + { "{\em " * series * "\/}" * } + if$ + } + { key * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +% An INCOLLECTION entry type may cross reference a BOOK (assumed to be the +% collection), or an INPROCEEDINGS may cross reference a PROCEEDINGS. +% Often there will be an editor, in which case we use that to construct +% the cross reference; otherwise we use a nonempty key field or else +% the booktitle field (which gives the cross-referenced work's title). + +FUNCTION {format.incoll.inproc.crossref} +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { "In {\em " booktitle * "\/}" * } + if$ + } + { "In " key * } + if$ + } + { "In " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +% Now we define the type functions for all entry types that may appear +% in the .BIB file---e.g., functions like `article' and `book'. These +% are the routines that actually generate the .BBL-file output for +% the entry. These must all precede the READ command. In addition, the +% style designer should have a function `default.type' for unknown types. +% Note: The fields (within each list) are listed in order of appearance, +% except as described for an `inbook' or a `proceedings'. +% +% The article function is for an article in a journal. An article may +% CROSSREF another article. +% Required fields: author, title, journal, year +% Optional fields: volume, number, pages, month, note +% +% article == +% BEGIN +% output.bibitem +% output.check(format.authors,"author") +% new.block +% output.check(format.title,"title") +% new.block +% if missing$(crossref) then +% output.check(emphasize(journal),"journal") +% output(format.vol.num.pages) +% output.check(format.date,"year") +% else +% output.nonnull(format.article.crossref) +% output(format.pages) +% fi +% new.block +% output(note) +% fin.entry +% END +% +% The book function is for a whole book. A book may CROSSREF another book. +% Required fields: author or editor, title, publisher, year +% Optional fields: volume or number, series, address, edition, month, +% note +% +% book == +% BEGIN +% if empty$(author) then output.check(format.editors,"author and editor") +% else output.check(format.authors,"author") +% if missing$(crossref) then +% either.or.check("author and editor",editor) +% fi +% fi +% new.block +% output.check(format.btitle,"title") +% if missing$(crossref) then +% output(format.bvolume) +% new.block +% output(format.number.series) +% new.sentence +% output.check(publisher,"publisher") +% output(address) +% else +% new.block +% output.nonnull(format.book.crossref) +% fi +% output(format.edition) +% output.check(format.date,"year") +% new.block +% output(note) +% fin.entry +% END +% +% The other entry functions are all quite similar, so no "comment version" +% will be given for them. + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + crossref missing$ + { journal emphasize "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + new.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + new.block + note output + fin.entry +} + +% A booklet is a bound thing without a publisher or sponsoring institution. +% Required: title +% Optional: author, howpublished, address, month, year, note + +FUNCTION {booklet} +{ output.bibitem + format.authors output + new.block + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + note output + fin.entry +} + +% For the conference entry type, see inproceedings. + +% An inbook is a piece of a book: either a chapter and/or a page range. +% It may CROSSREF a book. If there's no volume field, the type field +% will come before number and series. +% Required: author or editor, title, chapter and/or pages, publisher,year +% Optional: volume or number, series, type, address, edition, month, note + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + new.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + new.block + note output + fin.entry +} + +% An incollection is like inbook, but where there is a separate title +% for the referenced thing (and perhaps an editor for the whole). +% An incollection may CROSSREF a book. +% Required: author, title, booktitle, publisher, year +% Optional: editor, volume or number, series, type, chapter, pages, +% address, edition, month, note + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + note output + fin.entry +} + +% An inproceedings is an article in a conference proceedings, and it may +% CROSSREF a proceedings. If there's no address field, the month (& year) +% will appear just before note. +% Required: author, title, booktitle, year +% Optional: editor, volume or number, series, pages, address, month, +% organization, publisher, note + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + note output + fin.entry +} + +% The conference function is included for Scribe compatibility. + +FUNCTION {conference} { inproceedings } + +% A manual is technical documentation. +% Required: title +% Optional: author, organization, address, edition, month, year, note + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + new.block + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + new.block + note output + fin.entry +} + +% A mastersthesis is a Master's thesis. +% Required: author, title, school, year +% Optional: type, address, month, note + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + "Master's thesis" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + note output + fin.entry +} + +% A misc is something that doesn't fit elsewhere. +% Required: at least one of the `optional' fields +% Optional: author, title, howpublished, month, year, note + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkb + format.title output + howpublished new.block.checka + howpublished output + format.date output + new.block + note output + fin.entry + empty.misc.check +} + +% A phdthesis is like a mastersthesis. +% Required: author, title, school, year +% Optional: type, address, month, note + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + new.block + format.btitle "title" output.check + new.block + "PhD thesis" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + note output + fin.entry +} + +% A proceedings is a conference proceedings. +% If there is an organization but no editor field, the organization will +% appear as the first optional field (we try to make the first block nonempty); +% if there's no address field, the month (& year) will appear just before note. +% Required: title, year +% Optional: editor, volume or number, series, address, month, +% organization, publisher, note + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + new.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + new.block + note output + fin.entry +} + +% A techreport is a technical report. +% Required: author, title, institution, year +% Optional: type, number, address, month, note + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + new.block + note output + fin.entry +} + +% An unpublished is something that hasn't been published. +% Required: author, title, note +% Optional: month, year + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + new.block + format.title "title" output.check + new.block + note "note" output.check + format.date output + fin.entry +} + +% We use entry type `misc' for an unknown type; BibTeX gives a warning. + +FUNCTION {default.type} { misc } + +% Here are macros for common things that may vary from style to style. +% Users are encouraged to use these macros. +% +% Months are either written out in full or abbreviated + +#if MONTH_FULL + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +#else !MONTH_FULL + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sept."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +#endif MONTH_FULL + +% Journals are either written out in full or abbreviated; +% the abbreviations are like those found in ACM publications. +% +% To get a completely different set of abbreviations, it may be best to make +% a separate .bib file with nothing but those abbreviations; users could then +% include that file name as the first argument to the \bibliography command + +#if JOUR_FULL + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +#else !JOUR_FULL + +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Softw. Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput.-Aided Design Integrated Circuits"} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Programming"} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Gr."} + +MACRO {toms} {"ACM Trans. Math. Softw."} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Prog. Lang. Syst."} + +MACRO {tcs} {"Theoretical Comput. Sci."} + +#endif JOUR_FULL + +% Now we read in the .BIB entries. + +READ + +% The sortify function converts to lower case after purify$ing; it's +% used in sorting and in computing alphabetic labels after sorting +% +% The chop.word(w,len,s) function returns either s or, if the first len +% letters of s equals w (this comparison is done in the third line of the +% function's definition), it returns that part of s after w. + +#if SORTED + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +#else !SORTED +#if LAB_ALPH + +% We need the chop.word stuff for the dubious unsorted-list-with-labels case. + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +#endif LAB_ALPH +#endif SORTED + +% This long comment applies only to alphabetic labels +% +% The format.lab.names function makes a short label by using the initials of +% the von and Last parts of the names (but if there are more than four names, +% (i.e., people) it truncates after three and adds a superscripted "+"; +% it also adds such a "+" if the last of multiple authors is "others"). +% If there is only one name, and its von and Last parts combined have just +% a single name-token ("Knuth" has a single token, "Brinch Hansen" has two), +% we take the first three letters of the last name. The boolean +% et.al.char.used tells whether we've used a superscripted "+", so that we +% know whether to include a LaTeX macro for it. +% +% format.lab.names(s) == +% BEGIN +% numnames := num.names$(s) +% if numnames > 1 then +% if numnames > 4 then +% namesleft := 3 +% else +% namesleft := numnames +% nameptr := 1 +% nameresult := "" +% while namesleft > 0 +% do +% if (name_ptr = numnames) and +% format.name$(s, nameptr, "{ff }{vv }{ll}{ jj}") = "others" +% then nameresult := nameresult * "{\etalchar{+}}" +% et.al.char.used := true +% else nameresult := nameresult * +% format.name$(s, nameptr, "{v{}}{l{}}") +% nameptr := nameptr + 1 +% namesleft := namesleft - 1 +% od +% if numnames > 4 then +% nameresult := nameresult * "{\etalchar{+}}" +% et.al.char.used := true +% else +% t := format.name$(s, 1, "{v{}}{l{}}") +% if text.length$(t) < 2 then % there's just one name-token +% nameresult := text.prefix$(format.name$(s,1,"{ll}"),3) +% else +% nameresult := t +% fi +% fi +% return nameresult +% END +% +% Exactly what fields we look at in constructing the primary part of the label +% depends on the entry type; this selectivity (as opposed to, say, always +% looking at author, then editor, then key) helps ensure that "ignored" fields, +% as described in the LaTeX book, really are ignored. Note that MISC is part +% of the deepest `else' clause in the nested part of calc.label; thus, any +% unrecognized entry type in the database is handled correctly. +% +% There is one auxiliary function for each of the four different sequences of +% fields we use. The first of these functions looks at the author field, and +% then, if necessary, the key field. The other three functions, which might +% look at two fields and the key field, are similar, except that the key field +% takes precedence over the organization field (for labels---not for sorting). +% +% The calc.label function calculates the preliminary label of an entry, which +% is formed by taking three letters of information from the author or editor or +% key or organization field (depending on the entry type and on what's empty, +% but ignoring a leading "The " in the organization), and appending the last +% two characters (digits) of the year. It is an error if the appropriate fields +% among author, editor, organization, and key are missing, and we use +% the first three letters of the cite$ in desperation when this happens. +% The resulting label has the year part, but not the name part, purify$ed +% (purify$ing the year allows some sorting shenanigans by the user). +% +% This function also calculates the version of the label to be used in sorting. +% +% The final label may need a trailing 'a', 'b', etc., to distinguish it from +% otherwise identical labels, but we can't calculated those "extra.label"s +% until after sorting. +% +% calc.label == +% BEGIN +% if type$ = "book" or "inbook" then +% author.editor.key.label +% else if type$ = "proceedings" then +% editor.key.organization.label +% else if type$ = "manual" then +% author.key.organization.label +% else +% author.key.label +% fi fi fi +% label := label * substring$(purify$(field.or.null(year)), -1, 2) +% % assuming we will also sort, we calculate a sort.label +% sort.label := sortify(label), but use the last four, not two, digits +% END + +#if LAB_ALPH + +INTEGERS { et.al.char.used } + +FUNCTION {initialize.et.al.char.used} +{ #0 'et.al.char.used := +} + +EXECUTE {initialize.et.al.char.used} + +FUNCTION {format.lab.names} +{ 's := + s num.names$ 'numnames := + numnames #1 > + { numnames #4 > + { #3 'namesleft := } + { numnames 'namesleft := } + if$ + #1 'nameptr := + "" + { namesleft #0 > } + { nameptr numnames = + { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { "{\etalchar{+}}" * + #1 'et.al.char.used := + } + { s nameptr "{v{}}{l{}}" format.name$ * } + if$ + } + { s nameptr "{v{}}{l{}}" format.name$ * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + numnames #4 > + { "{\etalchar{+}}" * + #1 'et.al.char.used := + } + 'skip$ + if$ + } + { s #1 "{v{}}{l{}}" format.name$ + duplicate$ text.length$ #2 < + { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } + 'skip$ + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ +#if SORTED + { cite$ #1 #3 substring$ } +#else !SORTED % need warning here because we won't give it later + { "for label, need author or key in " cite$ * warning$ + cite$ #1 #3 substring$ + } +#endif SORTED + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ +#if SORTED + { cite$ #1 #3 substring$ } +#else !SORTED % need warning here because we won't give it later + { "for label, need author, editor, or key in " cite$ * warning$ + cite$ #1 #3 substring$ + } +#endif SORTED + { key #3 text.prefix$ } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ +#if SORTED + { cite$ #1 #3 substring$ } +#else !SORTED % need warning here because we won't give it later + { "for label, need author, key, or organization in " cite$ * + warning$ + cite$ #1 #3 substring$ + } +#endif SORTED + { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ +#if SORTED + { cite$ #1 #3 substring$ } +#else !SORTED % need warning here because we won't give it later + { "for label, need editor, key, or organization in " cite$ * + warning$ + cite$ #1 #3 substring$ + } +#endif SORTED + { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.label} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.organization.label + { type$ "manual" = + 'author.key.organization.label + 'author.key.label + if$ + } + if$ + } + if$ + duplicate$ + year field.or.null purify$ #-1 #2 substring$ + * + 'label := + year field.or.null purify$ #-1 #4 substring$ + * + sortify 'sort.label := +} + +% It doesn't seem like a particularly good idea to use an order-of-citation +% reference list when using alphabetic labels, but we need to have a +% special pass to calculate labels when this happens. + +#if !SORTED + +ITERATE {calc.label} + +#endif !SORTED + +#endif LAB_ALPH + +% When sorting, we compute the sortkey by executing "presort" on each entry. +% The presort key contains a number of "sortify"ed strings, concatenated +% with multiple blanks between them. This makes things like "brinch per" +% come before "brinch hansen per". +% +% The fields used here are: the sort.label for alphabetic labels (as set by +% calc.label), followed by the author names (or editor names or organization +% (with a leading "The " removed) or key field, depending on entry type and on +% what's empty), followed by year, followed by the first bit of the title +% (chopping off a leading "The ", "A ", or "An "). +% Names are formatted: Von Last First Junior. +% The names within a part will be separated by a single blank +% (such as "brinch hansen"), two will separate the name parts themselves +% (except the von and last), three will separate the names, +% four will separate the names from year (and from label, if alphabetic), +% and four will separate year from title. +% +% The sort.format.names function takes an argument that should be in +% BibTeX name format, and returns a string containing " "-separated +% names in the format described above. The function is almost the same +% as format.names. + +#if SORTED + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ +#if NAME_FULL + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := +#else + s nameptr "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" format.name$ 't := +#endif NAME_FULL + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +% The sort.format.title function returns the argument, +% but first any leading "A "'s, "An "'s, or "The "'s are removed. +% The chop.word function uses s, so we need another string variable, t + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +% The auxiliary functions here, for the presort function, are analogous to +% the ones for calc.label; the same comments apply, except that the +% organization field takes precedence here over the key field. For sorting +% purposes, we still remove a leading "The " from the organization field. + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +% There is a limit, entry.max$, on the length of an entry string variable +% (which is what its sort.key$ is), so we take at most that many characters +% of the constructed key, and hope there aren't many references that match +% to that many characters! + +FUNCTION {presort} +#if LAB_ALPH +{ calc.label + sort.label + " " + * + type$ "book" = +#else !LAB_ALPH +{ type$ "book" = +#endif LAB_ALPH + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ +#if LAB_ALPH + * +#endif LAB_ALPH + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +% And now we can sort + +SORT + +#endif SORTED + +% This long comment applies only to alphabetic labels, when sorted +% +% Now comes the final computation for alphabetic labels, putting in the 'a's +% and 'b's and so forth if required. This involves two passes: a forward +% pass to put in the 'b's, 'c's and so on, and a backwards pass +% to put in the 'a's (we don't want to put in 'a's unless we know there +% are 'b's). +% We have to keep track of the longest (in width$ terms) label, for use +% by the "thebibliography" environment. +% +% VAR: longest.label, last.sort.label, next.extra: string +% longest.label.width, last.extra.num: integer +% +% initialize.longest.label == +% BEGIN +% longest.label := "" +% last.sort.label := int.to.chr$(0) +% next.extra := "" +% longest.label.width := 0 +% last.extra.num := 0 +% END +% +% forward.pass == +% BEGIN +% if last.sort.label = sort.label then +% last.extra.num := last.extra.num + 1 +% extra.label := int.to.chr$(last.extra.num) +% else +% last.extra.num := chr.to.int$("a") +% extra.label := "" +% last.sort.label := sort.label +% fi +% END +% +% reverse.pass == +% BEGIN +% if next.extra = "b" then +% extra.label := "a" +% fi +% label := label * extra.label +% if width$(label) > longest.label.width then +% longest.label := label +% longest.label.width := width$(label) +% fi +% next.extra := extra.label +% END + +#if LAB_ALPH + +#if SORTED + +STRINGS { longest.label last.sort.label next.extra } + +INTEGERS { longest.label.width last.extra.num } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.sort.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := +} + +FUNCTION {forward.pass} +{ last.sort.label sort.label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + sort.label 'last.sort.label := + } + if$ +} + +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + label extra.label * 'label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ + extra.label 'next.extra := +} + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} + +REVERSE {reverse.pass} + +#else !SORTED + +% It still doesn't seem like a good idea to use an order-of-citation +% reference list when using alphabetic labels, but when this happens we +% must compute the longest label + +STRINGS { longest.label } + +INTEGERS { longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +#endif SORTED + +#else !LAB_ALPH + +% Now comes the computation for numeric labels. +% We use either the sorted order or original order. +% We still have to keep track of the longest (in width$ terms) label, for use +% by the "thebibliography" environment. + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +#endif LAB_ALPH + +% Now we're ready to start writing the .BBL file. +% We begin, if necessary, with a LaTeX macro for unnamed names in an alphabetic +% label; next comes stuff from the `preamble' command in the database files. +% Then we give an incantation containing the command +% \begin{thebibliography}{...} +% where the `...' is the longest label. +% +% We also call init.state.consts, for use by the output routines. + +FUNCTION {begin.bib} +#if LAB_ALPH +{ et.al.char.used + { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ } + 'skip$ + if$ + preamble$ empty$ +#else !LAB_ALPH +{ preamble$ empty$ +#endif LAB_ALPH + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +% Now we produce the output for all the entries + +ITERATE {call.type$} + +% Finally, we finish up by writing the `\end{thebibliography}' command. + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/doc/bibtex/base/btxdoc.bib b/Master/texmf-dist/doc/bibtex/base/btxdoc.bib new file mode 100644 index 00000000000..4eaf3eddc56 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxdoc.bib @@ -0,0 +1,90 @@ +Copyright (C) 1988, all rights reserved. + +@COMMENT(You may put a comment in a `comment' command, + the way you would with SCRIBE.) + +Or you may dispense with the command and simply give the comment, +as long as it's not within an entry. + +If you really want to put a comment inside an entry, simply +make up a never-to-be-used field. + +@FAKE-ENTRY + {fake-database-key, + never-to-be-used-field = "Even if this were a real entry, + I could still have a comment inside an entry + by making up a fake field" + } + +@string (SCRIBE-NOTE = {Chapter twelve and appendices E8 through E10 deal + with bibliographies}) + +The next entry shows some of the syntactically legal things that +those with the inclination may use.@ + +MaNuAl (scribe, + TITLE="Scribe Document Production System + + + User Manual", + ORGANIZATION = {Unilogic,}#" Ltd"# {. + }, + ADDRESS = "Pittsburgh", + MONTH +=aPR + ,YEAR=1984, + note = scribe-note, +) May the inclination not be with you. + + +@MISC{prime-number-theorem, + author = "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin", + note = "A strong form of the prime number theorem, 19th century" } + +@INBOOK{chicago, + title = "The Chicago Manual of Style", + publisher = "University of Chicago Press", + edition = "Thirteenth", + year = 1982, + pages = "400--401", + key = "Chicago" } + +@BOOK{texbook, + author = "Donald E. Knuth", + title= "The {{\TeX}book}", + publisher = "Addison-Wesley", + year = 1984 } + +@BOOK{latex, + author = "Leslie Lamport", + title = "{\LaTeX \rm:} {A} Document Preparation System", + publisher = "Addison-Wesley", + year = 1986 } + +@UNPUBLISHED{btxdoc, + author = "Oren Patashnik", + title = "{{\BibTeX ing}}", + note = "Documentation for general {\BibTeX} users", + month = "8~" # feb, + year = 1988 } + +@UNPUBLISHED{btxhak, + author = "Oren Patashnik", + title = "Designing {\BibTeX} Styles", + note = "The part of \BibTeX's documentation + that's not meant for general users", + month = "8~" # feb, + year = 1988 } + +@BOOK{strunk-and-white, + author = "Strunk, Jr., William and E. B. White", + title = "The Elements of Style", + publisher = "Macmillan", + edition = "Third", + year = 1979 } + +@BOOK{van-leunen, + title = "A Handbook for Scholars", + author = "Mary-Claire van Leunen", + publisher = "Knopf", + year = 1979 } diff --git a/Master/texmf-dist/doc/bibtex/base/btxdoc.pdf b/Master/texmf-dist/doc/bibtex/base/btxdoc.pdf new file mode 100644 index 00000000000..7a096ad6a01 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxdoc.pdf @@ -0,0 +1,1763 @@ +%PDF-1.2 +7 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +10 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F1 +/FontDescriptor 9 0 R +/BaseFont/GDXNIO+CMR17 +/FirstChar 33 +/LastChar 196 +/Widths[249.6 458.6 772.1 458.6 772.1 719.8 249.6 354.1 354.1 458.6 719.8 249.6 301.9 +249.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.6 249.6 +249.6 719.8 432.5 432.5 719.8 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 +471.5 719.4 576 850 693.3 719.8 628.2 719.8 680.5 510.9 667.6 693.3 693.3 954.5 693.3 +693.3 563.1 249.6 458.6 249.6 458.6 249.6 249.6 458.6 510.9 406.4 510.9 406.4 275.8 +458.6 510.9 249.6 275.8 484.7 249.6 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 +510.9 484.7 667.6 484.7 484.7 406.4 458.6 917.2 458.6 458.6 458.6 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 576 772.1 719.8 641.1 615.3 693.3 +667.6 719.8 667.6 719.8 0 0 667.6 525.4 499.3 499.3 748.9 748.9 249.6 275.8 458.6 +458.6 458.6 458.6 458.6 693.3 406.4 458.6 667.6 719.8 458.6 837.2 941.7 719.8 249.6 +458.6] +>> +endobj +13 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F2 +/FontDescriptor 12 0 R +/BaseFont/JMQSDB+CMR12 +/FirstChar 33 +/LastChar 196 +/Widths[272 489.6 816 489.6 816 761.6 272 380.8 380.8 489.6 761.6 272 326.4 272 489.6 +489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 272 761.6 462.4 +462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.3 734 353.2 503 761.2 611.8 897.2 +734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 489.6 272 489.6 +272 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 +544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8 435.2 489.6 979.2 489.6 489.6 +489.6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611.8 816 +761.6 679.6 652.8 734 707.2 761.6 707.2 761.6 0 0 707.2 571.2 544 544 816 816 272 +299.2 489.6 489.6 489.6 489.6 489.6 734 435.2 489.6 707.2 761.6 489.6 883.8 992.6 +761.6 272 489.6] +>> +endobj +16 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F3 +/FontDescriptor 15 0 R +/BaseFont/JZQPYD+CMBX12 +/FirstChar 33 +/LastChar 196 +/Widths[342.6 581 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 +562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 342.6 +875 531.2 531.2 875 849.5 799.8 812.5 862.3 738.4 707.2 884.3 879.6 419 581 880.8 +675.9 1067.1 879.6 844.9 768.5 844.9 839.1 625 782.4 864.6 849.5 1162 849.5 849.5 +687.5 312.5 581 312.5 562.5 312.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 +343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.8 437.5 625 593.7 812.5 593.7 +593.7 500 562.5 1125 562.5 562.5 562.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 675.9 937.5 875 787 750 879.6 812.5 875 812.5 875 0 0 812.5 +656.2 625 625 937.5 937.5 312.5 343.7 562.5 562.5 562.5 562.5 562.5 849.5 500 574.1 +812.5 875 562.5 1018.5 1143.5 875 312.5 562.5] +>> +endobj +19 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F4 +/FontDescriptor 18 0 R +/BaseFont/RPLWQJ+CMR10 +/FirstChar 33 +/LastChar 196 +/Widths[277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 +500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 +750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 +680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 +277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 +500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4 500 1000 500 +500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 625 833.3 +777.8 694.4 666.7 750 722.2 777.8 722.2 777.8 0 0 722.2 583.3 555.6 555.6 833.3 833.3 +277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 +277.8 500] +>> +endobj +20 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +23 0 obj +<< +/Encoding 20 0 R +/Type/Font +/Subtype/Type1 +/Name/F5 +/FontDescriptor 22 0 R +/BaseFont/UEGWGM+CMCSC10 +/FirstChar 33 +/LastChar 196 +/Widths[319.4 552.8 902.8 552.8 902.8 844.4 319.4 436.1 436.1 552.8 844.4 319.4 377.8 +319.4 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 319.4 319.4 +844.4 844.4 844.4 523.6 844.4 813.9 770.8 786.1 829.2 741.7 712.5 851.4 813.9 405.6 +566.7 843 683.3 988.9 813.9 844.4 741.7 844.4 800 611.1 786.1 813.9 813.9 1105.5 +813.9 813.9 669.4 319.4 552.8 319.4 552.8 319.4 319.4 613.3 580 591.1 624.4 557.8 +535.6 641.1 613.3 302.2 424.4 635.6 513.3 746.7 613.3 635.6 557.8 635.6 602.2 457.8 +591.1 613.3 613.3 835.6 613.3 613.3 502.2 552.8 1105.5 552.8 552.8 552.8 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 683.3 902.8 844.4 755.5 +727.8 813.9 786.1 844.4 786.1 844.4 0 0 786.1 552.8 552.8 319.4 319.4 523.6 302.2 +424.4 552.8 552.8 552.8 552.8 552.8 813.9 494.4 915.6 735.6 824.4 635.6 975 1091.7 +844.4 319.4 552.8] +>> +endobj +24 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/visiblespace/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde/dieresis/visiblespace +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/visiblespace/dieresis] +>> +endobj +27 0 obj +<< +/Encoding 24 0 R +/Type/Font +/Subtype/Type1 +/Name/F6 +/FontDescriptor 26 0 R +/BaseFont/CPPCCZ+CMTT10 +/FirstChar 33 +/LastChar 196 +/Widths[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 525 525 525 525 525 525 525 525 525 525 0 0 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525] +>> +endobj +30 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F7 +/FontDescriptor 29 0 R +/BaseFont/QNMIFP+CMR7 +/FirstChar 33 +/LastChar 196 +/Widths[323.4 569.4 938.5 569.4 938.5 877 323.4 446.4 446.4 569.4 877 323.4 384.9 +323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 +323.4 877 538.7 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 +874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 +692.5 323.4 569.4 323.4 569.4 323.4 323.4 569.4 631 507.9 631 507.9 354.2 569.4 631 +323.4 354.2 600.2 323.4 938.5 631 569.4 631 600.2 446.4 452.6 446.4 631 600.2 815.5 +600.2 600.2 507.9 569.4 1138.9 569.4 569.4 569.4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 706.4 938.5 877 781.8 754 843.3 815.5 877 815.5 +877 0 0 815.5 677.6 646.8 646.8 970.2 970.2 323.4 354.2 569.4 569.4 569.4 569.4 569.4 +843.3 507.9 569.4 815.5 877 569.4 1013.9 1136.9 877 323.4 569.4] +>> +endobj +32 0 obj +<< +/Filter[/FlateDecode] +/Length 2289 +>> +stream +xڵn8}Bؗ@̊ulM,b}e&TQ\(Yn1H_b~cHDQp˛e 3dps"I̥LD7ト7~)ER$tDa=HG ycI^@j{?!6ױI0W[ڧngX1qm.QКre73JD͙ZH-bM$IV=99m(~zQhۇ>9HX$r +HU!Azz@w"l6CGQXmMY[SVGX_eem liWBO
9\tP[,wcߟ7o?;qSmK +{1E^ąf6
8yGvϙ2#`='PX +Rm_ Ќ/kJŮ)
S(`M]̊v= tz +r7ՒB3]u@ڴ+.np0ݘ\cV# +>,j˂TM@mTCg>쏣CMNt;nYDV)kz Q$g^e2ɰb5;:~ϒ5 +^쪝 pW~= -bjv֊i +нBkPҜh<0l3^_Q9cwfSz}u#D5MXZ^$vGvNj<eEb;IhI4&M <k0Ԡ_g6;,>;RwֶjXT$}\ C ܻwt6]C1X$ob-N+MrUuq7HaG*4[/6r7a(|5j_zI}{U +R5<Iÿhޅ^zYҌX}n?\6l:>PD$33t#⩝ +D9yobMgQg"yhj\BGm:fiI}p4l_>>3N=&1MN{AQɧa9knekբ/aw*DU`
!C.8*H!G
#>N14?{aEMض鄂 7&yv|1?aB\GJSϡ05b*r
O\9e +?Qh]@3qqjOGܨ'4psrJ\ρ?*Xz cz$g: +endstream +endobj +34 0 obj +<< +/F1 10 0 R +/F2 13 0 R +/F3 16 0 R +/F4 19 0 R +/F5 23 0 R +/F6 27 0 R +/F7 30 0 R +>> +endobj +6 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 34 0 R +>> +endobj +37 0 obj +<< +/Filter[/FlateDecode] +/Length 1925 +>> +stream +xڕXD~E9MAHw@b%E$:3ǎ%B~U]ՎsZ2Gz&ayڸg&BiHa(a6w (:OE^M&NF"\vdy_65nTp,-L\eqRE;OQ=ЈL|F nXovʝ|OԆޒݳm:FҒ.m}e{b'e[,vJEWrXʊ
HmXOt϶̲IpNlwZ+<X>ϫEs7INwɜ +>UE+V6P 7ZTNf*;f̂,)H fDEĀrFDB'+ SL~ ifXIDVD2Amە2fC]jT#yjq]_۶R! +?j]G`k.k4wܙD&yA,(J"4oaoD8iʱ +1̀䶦Ӻ!ӲΫȂBʶ8X9H2Kk@gwrx[h{{ l
=>Js30߳E 89ؔ`꺴,{d2lӮ -26G2) +ZOCޯ ]I):rhY +l%E@Bs&HFg*'>=-S~p +endstream +endobj +38 0 obj +<< +/F3 16 0 R +/F4 19 0 R +/F5 23 0 R +/F2 13 0 R +/F6 27 0 R +>> +endobj +36 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 38 0 R +>> +endobj +41 0 obj +<< +/Filter[/FlateDecode] +/Length 2038 +>> +stream +xڭX[o4~We3$s!qV< Qf*lsq&.c>l"E
]n}zn +QݦE 3%_/]}˟
7_w7q$t X ]ۆL/}صUs߿Ki9}wؖL_6{ͷrjm )_ugglpegs?{O +cU{2\MW~93>+Ӳ`-Mti;S<eOooL>~]tesSqLw+n>En(#Q@J% +vy +ԜEB"<<2,JG2p{kޔ6%Hc7c3
;2v" b|;Lig8ZȦzYF,<,ut +,s@@]]f[tn| +endstream +endobj +42 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F5 23 0 R +>> +endobj +40 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 42 0 R +>> +endobj +45 0 obj +<< +/Filter[/FlateDecode] +/Length 2622 +>> +stream +xڭY[۸~0GHRv&iml4Es,ip{Bby>I䘗!goU~E_ūOn%ďFK_e}w& +#yn~:*Xmӈ>l>SRи_aMKxި ;:^4}[T쎆!T1RH}/uVlᖏ~(quyEvb]i_;`KZm$I^:\=P%oՆm8q5}J]P
ƔOw2Pk^}#Jc?wǢu"=8X(=<T8xݬ|8@а\?ߛn)AwgG; +[O<ǝvz0eG۰g*xQeynE8^&;ӠHzEœ 4Sc64;^e͛KL/+n98R/Bqi +'5!ցj/hwN`XԞ]MgvBUګjjSkxǞu?`[lG7Rw^M7FcV
+ȎevM +Omǥ3SB@unxx) +Ӡ@*+]puա4-w2LX@ D8b&q,фQh{)ewP" Czʑ +[lOU/ΦCw%3Ab? +:X3zq_fMU(w#x1@~`UB=`47ha5 +Q W"*%Q_!*d7 +0tN'#$RQiE.IӨk&DA?eySfW8VbHP8X4!=%ziFc5c?- +sl/kxؘp/`6V!Xb҆ +
z乄oY4#2JGB݄C'5re)?ā +endstream +endobj +46 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F5 23 0 R +/F7 30 0 R +>> +endobj +44 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 46 0 R +>> +endobj +49 0 obj +<< +/Filter[/FlateDecode] +/Length 2498 +>> +stream +xڽXY~ϯe(`fyOb@ +3+`}s2@!BtwdHEo0\MR5U4p$n$T2sQ|oFji'ByOmb4_Y=2caX.VC}wOTȄ\NS&H=P{*>`O'3?uM@ٕ-F&4p\;E$`PDZE"wQ0lYh0 z֏'ި˂E|?Ydø6x7lCShehgˡ]nMbeV#{5iA`V"ZgW!"yBglt¿DŽ6e6d9xgD"Kn㈀x&Ly| hHi폂gTtyϱXVtv1v,Z +!_@G<,"b:
'aCsˎ +2-{`;.xNlGْ\C1sX6BC1v4*78A,M֎b m%&qIJ;WX#a1n>d[s,h[,8<ǥ,ݰ>t(-&'M[L9 +YU#4)qfB̫jkE&hr#<@^
Yͧ20%ɼ]v1c̹>D
؈QDSߝZd?hZvba{^ +K&>X,<q| +[P(ٙ* +E wX]Be9Zi+ +$hn¸KIyqL#LǎP-[Ceo=4CD\Yډ;RhdzA妋kt![dm}"(]Yj+8 +IB-ہ +pFR}(gp:ЕB(u|_Qa^ya&I3zU{b9(q,(5@sSx(vݚ16K} +endstream +endobj +50 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F7 30 0 R +/F5 23 0 R +/F3 16 0 R +>> +endobj +48 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 50 0 R +>> +endobj +53 0 obj +<< +/Filter[/FlateDecode] +/Length 2429 +>> +stream +xڵXYo~ϯt2%W5x쁭 +QYiCcmU !/zNfО`4W4mGab`h'*NRCW#<Ð x +:VeSN`5SPhnĻjTiCa!712}̎y{R!d3yOήJpwO\Wh)V,eOm_YF`V 9sZEn{Sps 2Hj"r1*,BEpv~N + +*n;Md\Vj\$dfQDS3Ά\CkpWl0bٖ%`L2n):<2[T۳i4h*A<hͳ~Rd96`U-XaaVUY*(Mb}pgI97>ϸ$PٱĨ6-N$ Cat$huDl\J8̦*])c&)f ݅|<\07F휱b2S<<Ò@2PT#ڑ:\Mdd_8jK7M +nh6Se|xll)EX' +{[K=#4ܪGGs 9TJĭ_~ͮoxE/.>.n?g (21@ +
h +kUW9 +:cRTC"!$MY]_FQD.tO ՝NQ즢" +O +iL*u:wĿro(mzj
T2ud;B]
4OO3--?q@ +8* +endstream +endobj +54 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F7 30 0 R +/F5 23 0 R +>> +endobj +52 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 54 0 R +>> +endobj +57 0 obj +<< +/Type/Encoding +/Differences[0/minus/periodcentered/multiply/asteriskmath/divide/diamondmath/plusminus/minusplus/circleplus/circleminus/circlemultiply/circledivide/circledot/circlecopyrt/openbullet/bullet/equivasymptotic/equivalence/reflexsubset/reflexsuperset/lessequal/greaterequal/precedesequal/followsequal/similar/approxequal/propersubset/propersuperset/lessmuch/greatermuch/precedes/follows/arrowleft/arrowright/arrowup/arrowdown/arrowboth/arrownortheast/arrowsoutheast/similarequal/arrowdblleft/arrowdblright/arrowdblup/arrowdbldown/arrowdblboth/arrownorthwest/arrowsouthwest/proportional/prime/infinity/element/owner/triangle/triangleinv/negationslash/mapsto/universal/existential/logicalnot/emptyset/Rfractur/Ifractur/latticetop/perpendicular/aleph/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/union/intersection/unionmulti/logicaland/logicalor/turnstileleft/turnstileright/floorleft/floorright/ceilingleft/ceilingright/braceleft/braceright/angbracketleft/angbracketright/bar/bardbl/arrowbothv/arrowdblbothv/backslash/wreathproduct/radical/coproduct/nabla/integral/unionsq/intersectionsq/subsetsqequal/supersetsqequal/section/dagger/daggerdbl/paragraph/club/diamond/heart/spade/arrowleft +161/minus/periodcentered/multiply/asteriskmath/divide/diamondmath/plusminus/minusplus/circleplus/circleminus +173/circlemultiply/circledivide/circledot/circlecopyrt/openbullet/bullet/equivasymptotic/equivalence/reflexsubset/reflexsuperset/lessequal/greaterequal/precedesequal/followsequal/similar/approxequal/propersubset/propersuperset/lessmuch/greatermuch/precedes/follows/arrowleft/spade] +>> +endobj +60 0 obj +<< +/Encoding 57 0 R +/Type/Font +/Subtype/Type1 +/Name/F8 +/FontDescriptor 59 0 R +/BaseFont/LPQBEO+CMSY10 +/FirstChar 33 +/LastChar 196 +/Widths[1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 +275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 +611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 +820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 +666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8 +500 500 611.1 500 277.8 833.3 750 833.3 416.7 666.7 666.7 777.8 777.8 444.4 444.4 +444.4 611.1 777.8 777.8 777.8 777.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 0 0 777.8 +777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 +777.8 777.8 1000 1000 777.8 777.8 1000 777.8] +>> +endobj +63 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F9 +/FontDescriptor 62 0 R +/BaseFont/FXDSVV+CMBX10 +/FirstChar 33 +/LastChar 196 +/Widths[350 602.8 958.3 575 958.3 894.4 319.4 447.2 447.2 575 894.4 319.4 383.3 319.4 +575 575 575 575 575 575 575 575 575 575 575 319.4 319.4 350 894.4 543.1 543.1 894.4 +869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.4 901.4 691.7 1091.7 900 +863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.4 602.8 +319.4 575 319.4 319.4 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.4 351.4 606.9 +319.4 958.3 638.9 575 638.9 606.9 473.6 453.6 447.2 638.9 606.9 830.6 606.9 606.9 +511.1 575 1150 575 575 575 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 691.7 958.3 894.4 805.6 766.7 900 830.6 894.4 830.6 894.4 0 0 830.6 670.8 +638.9 638.9 958.3 958.3 319.4 351.4 575 575 575 575 575 869.4 511.1 597.2 830.6 894.4 +575 1041.7 1169.4 894.4 319.4 575] +>> +endobj +64 0 obj +<< +/Filter[/FlateDecode] +/Length 2391 +>> +stream +xڵXKs6m*!9Mƻ=ek*@ń"$5o? +4xzbԤ,=qS-)PDr`u,N`)P"3<"??=.~BLxz. <CXr +@,B09`Yӌ^H +b@źN[1+ +zݡslrr-BHQ7AOvxɿẌu<87܄1+" 1/I'ik;w[81NXL45tɺnN|J]pl#Qn<?gP?vqq&A
7v 46XWr}?t%+I=qrE}?F{[<w}_ޮ&7"^g/WD\YESW I0]i! +O9YvV!m0V$. ~.~=pWgma[VkYί;91ش͵Qx^jDaxDyA{2Ƹ +oW"ژfjn.64 LC֏ZF;E
NҢ09rS4Kþ9tM@Atb'xvo૫bjjзi:cs>o*ͺó HFJu@$7i$BS/;6#Vd^y}:ENuu.XM +ҷP hLOp,Iβ+bc]5;PBdB(M(&7%LTu
HfnR>cinEQC(& +֙Vw|Rm'ԎfW>|=i߯_ +;EtZ + + 0qYHB +п9Ԕ6L;&4S"ܾjZ[
*xS% +(8cYj4h +9:+2q6xmBgeOHNpLx:&akMa9ly<E%4jjA7"&F4WYi𢜱՜_"96GHo<?YI{{,x7&Hx0-V2p hc +˒N8eTDʖ fXGKT23M0d?8ģhrPg>BNp "Jyr0lќ. cl@˥ǍaLx8׀Ϛ&yL%o;0$쨪
nNRĖGFUƔV/urؙtL}\}"ooeB"|SX
W_F!)ylHHbik1t.PimvzT
<n*6} +endstream +endobj +65 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F3 16 0 R +/F7 30 0 R +/F8 60 0 R +/F5 23 0 R +/F9 63 0 R +>> +endobj +56 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 65 0 R +>> +endobj +68 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/sterling/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +71 0 obj +<< +/Encoding 68 0 R +/Type/Font +/Subtype/Type1 +/Name/F10 +/FontDescriptor 70 0 R +/BaseFont/BPZKOI+CMTI10 +/FirstChar 33 +/LastChar 196 +/Widths[306.7 514.4 817.8 769.1 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 +306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 +306.7 766.7 511.1 511.1 766.7 743.3 703.9 715.6 755 678.3 652.8 773.6 743.3 385.6 +525 768.9 627.2 896.7 743.3 766.7 678.3 766.7 729.4 562.2 715.6 743.3 743.3 998.9 +743.3 743.3 613.3 306.7 514.4 306.7 511.1 306.7 306.7 511.1 460 460 511.1 460 306.7 +460 511.1 306.7 306.7 460 255.6 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 +460 664.4 463.9 485.6 408.9 511.1 1022.2 511.1 511.1 511.1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 627.2 817.8 766.7 692.2 664.4 743.3 715.6 +766.7 715.6 766.7 0 0 715.6 613.3 562.2 587.8 881.7 894.4 306.7 332.2 511.1 511.1 +511.1 511.1 511.1 831.3 460 536.7 715.6 715.6 511.1 882.8 985 766.7 255.6 511.1] +>> +endobj +72 0 obj +<< +/Filter[/FlateDecode] +/Length 2747 +>> +stream +xZ[s۸~[!nN7I>PlHsHJdNg .PPvA͏7WeLdfD"_fחMW߮XzҚ]^HQje}Ӵ ]YU[-/#mή
ZzA#: +V~D- +,dU"yiʙ,%H۸i<LyH{)O1`2.tkc/ Gv/8=Hk+eɭ>trZώ8pt[{c[[V}7IIΈ#RnXd7h{`l8=96Ee6u|#ټrwe +Q-%lR}dK87~&סF)ۼpkG2]nﲞLAlA~Kd`q)TG狝DN-EQM|Co_ģa<l7Q2w8xD=E:(huU;L2!NhLl#U&`]XͮʋcZAuԄ˜0A%Η:0kTv=3>pC$f{bhřcw-ݥ^ iK8 +MonhʮsQU7`39{uEjIBPݾB1Swq:h#HQ@}W0} +8Gŭ,ƑEQBLG\A|BU8 +G;ZF9b/aGO<k1'[3LoW去RdW/|`t5Z- +_\.H]bF%OJN|R2sy.3R=,FT;Z[51AWFf>،('9j|9m_}v-e@HK[>1Zln.%&LC +̿ܫ]Y` +/JJbT/:IGd"V4?"6kh4[_?Ԓ.ԍ7I1->&C*n~$uh^THa`.Um<OL`S\3IvǏ|G㚰2\n +@^/Qdz!:hro-6,N'gNz̲ +O9 Re(9)=(AL~!C<z$=ɉy2O/0sӤ"zEI0
/&NCwg3OePv!\9rDЈ=zЂ6Jg5䫣
/c#-Mk{ͣTOa)oMAg(.6!>#fl+zK:H6O/z\cG4BH04O? +endstream +endobj +73 0 obj +<< +/F9 63 0 R +/F4 19 0 R +/F5 23 0 R +/F6 27 0 R +/F10 71 0 R +>> +endobj +67 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 73 0 R +>> +endobj +76 0 obj +<< +/Filter[/FlateDecode] +/Length 2263 +>> +stream +xYK
Wj_=fRIe+l!AmsZȒ#Dd{rHNH" +!cRh=gbpȮ@E]:" +kѮCSX̐>6Jw`7F8ߎ@^T%,Hzv}a4q6y[ێH [T~xX:<wQ[MSi"5)ؒR]Mj&:_w^d/跳P',A/UJ__KםcN7E/𧛄=PvыitCM8D"@Amѓ?;S<dلAː'7V0qxhu֮:-ID-~z9 { +N]9Ȓ:y:u?ҷЛZ}!SL0"&ޓӑho&ǚIEWD23֎SkNB0*:0f&W!',ưgb<,Jg +-Դ[0{bw<,UzMq.y,> _'SwvPFO_* z}JquJpf#tzt=W80D6_a"?VKu;:"PMMjv!>c +da֮g2jHG \
"]aI b"XTku`cb9djđ[SQ?KQA +0xv +endstream +endobj +77 0 obj +<< +/F9 63 0 R +/F4 19 0 R +/F6 27 0 R +/F10 71 0 R +/F3 16 0 R +>> +endobj +75 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 77 0 R +>> +endobj +80 0 obj +<< +/Filter[/FlateDecode] +/Length 2116 +>> +stream +xڭXI6ϯ(\DR|r0qsq0Aj*v* ұڝa.'.oEwa÷])lˤ!W"=4M~T1 kh4}6bЪ~qBEc32>X<zӜMDǺj;sL]Oں78Gϸ;$JLDf/L) +}Wq$%OfpLEVxmUB94[s4F
N|vZ + M; _ +M +9W%C ǑFfYkP9@PGӊ`|t;@O%_-"3-r$!P_.Y_!={US{UpK߀},u*Zz<2SůJ +`B@T$ZW4~.ץz +ZP&?0vgv輹5r/{+˜Vd3.*h"O/]8j;O
p
94&
w|9Sf37 +endstream +endobj +81 0 obj +<< +/F9 63 0 R +/F4 19 0 R +/F7 30 0 R +/F6 27 0 R +/F10 71 0 R +>> +endobj +79 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 81 0 R +>> +endobj +84 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/alpha/beta/gamma/delta/epsilon1/zeta/eta/theta/iota/kappa/lambda/mu/nu/xi/pi/rho/sigma/tau/upsilon/phi/chi/psi/omega/epsilon/theta1/pi1/rho1/sigma1/phi1/arrowlefttophalf/arrowleftbothalf/arrowrighttophalf/arrowrightbothalf/arrowhookleft/arrowhookright/triangleright/triangleleft/zerooldstyle/oneoldstyle/twooldstyle/threeoldstyle/fouroldstyle/fiveoldstyle/sixoldstyle/sevenoldstyle/eightoldstyle/nineoldstyle/period/comma/less/slash/greater/star/partialdiff/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/flat/natural/sharp/slurbelow/slurabove/lscript/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/dotlessi/dotlessj/weierstrass/vector/tie/psi +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/alpha/beta/gamma/delta/epsilon1/zeta/eta/theta/iota/kappa/lambda/mu/nu/xi/pi/rho/sigma/tau/upsilon/phi/chi/psi/tie] +>> +endobj +87 0 obj +<< +/Encoding 84 0 R +/Type/Font +/Subtype/Type1 +/Name/F11 +/FontDescriptor 86 0 R +/BaseFont/YSXOUZ+CMMI10 +/FirstChar 33 +/LastChar 196 +/Widths[622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 +500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 +750 758.5 714.7 827.9 738.2 643.1 786.2 831.3 439.6 554.5 849.3 680.6 970.1 803.5 +762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 +388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 +298.4 878 600.2 484.7 503.1 446.4 451.2 468.7 361.1 572.5 484.7 715.9 571.5 490.3 +465 322.5 384 636.5 500 277.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 615.3 833.3 762.8 694.4 742.4 831.3 779.9 583.3 666.7 612.2 0 0 772.4 +639.7 565.6 517.7 444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.5 494 437.5 +570 517 571.4 437.2 540.3 595.8 625.7 651.4 277.8] +>> +endobj +88 0 obj +<< +/Filter[/FlateDecode] +/Length 2606 +>> +stream +x}YY6~_ael[Dڷ=29lLx-v;do]$˓'QūXWMFyC7x])2<<m$.WayׇlmӷeJBnwZA3Nm'ʲfx&EAv=4LO,LiR+K~<u`D_š*ECvq_AGaZ\SQj32AsەZY~})X!ϼ.s"LseL*T[-;x,zԦe?ӹ<5;(7<uݢ_];5PlVqTmsGfv'lŁGxC$WvE-Nngbvd|>q4Y +MFt?ұ +
`<1J#W4Es?/M:<փȱ#aNy=:_1tiU#2a9nN +t'1Oy_3#Q%]s
uӱ.77YX2u0q\}5\<t[xx4F
q6b
O*|嵱ϣLf٫
Ѕ-3+
_8Rgb7[M<qRn< +ۚ9( gɇ>]߈eh_ZY`*QP5`0tF2 +Xth( !csIO2X/wBbϩ aAa +;gbdQJoAD?4bni*\@^n^Rk)!#djO<hp瞥|.!خ8o`2Y +ȦUVAdz_Z
G?R<W + +Hϓ@F,Tր+&OoޅD4/KW.9)\*rô؎|NG,xYDgll\pL|0rС]n;uUz>^fTȱgdoxk'Ydd +l(06||ן|˜ +v\B>~tES?NBή XR_RaK]*YApa⛦ST2O^xΝW$ *)Ϙw?"]k +endstream +endobj +89 0 obj +<< +/F9 63 0 R +/F4 19 0 R +/F6 27 0 R +/F10 71 0 R +/F7 30 0 R +/F3 16 0 R +/F11 87 0 R +>> +endobj +83 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 89 0 R +>> +endobj +92 0 obj +<< +/Filter[/FlateDecode] +/Length 2666 +>> +stream +xڭYKWsk$QO4ݞLI3A Mܖ%eݛC,>TW"dqXPyLJ|Mx/,ŪRqxUhXfet9/WИҊ~pGeVEGlw-Rnxv| + +aA̘e9\2:^8 +!*eR 817ڋV +yMFѝ= -3+q E:Hxޥۘcfa)Uìjnu>`/?2vߟe.ɶV;^QoQ3xAꞩ'J)v;vkZ5˖tEcX\X$&r$ωW}|HG`hKDdK%a GZDG + +IQl?R`mmGBj@N\?aT +@~Bd%XꀖfP(
Xx[NQ(<d>^E"|hOدCy0Cd[LE| \:7<Uqy~!JA*O]ge7 R=HY@PWWaqghg<cŝޒD1|ˮ\Y<N*fr^UJ*gTyz?fn().F39RW,PYBDj餾Nͩfb,z
&Ң'J{/Kw6=?-"j@B!JiNyDD_:y6KT&* ۑ$bOrUla*y䯜@w2VM4ePU)mf>m^H\S۫'Y/Ptw&Pr +\~j8 Jo[)&q]wJ4\
zHZ"i;|a(]ɼzGuY~z%51pⴀm74]M㦴%WsB2NS| +ѳ.~Og 2A(jqٰрzo| !A9mb^PޥvتNӋlc +Jw^Rs>;ƵvW.bC1ϭ,I45QO/ +endstream +endobj +93 0 obj +<< +/F4 19 0 R +/F7 30 0 R +/F5 23 0 R +/F10 71 0 R +/F6 27 0 R +>> +endobj +91 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 93 0 R +>> +endobj +96 0 obj +<< +/Filter[/FlateDecode] +/Length 2411 +>> +stream +xڍXmܶ_p?XxjSKbm +== qh=<ЏRDv@9]y<;222v}aP>X}7 +]e%mYitjMn~R!N`Dc\yw:&s7k0".00{fWʗfhnך%dSwLVpMWr`-Eiː3}D%FyxJ%y +]MlՑ:bR)6Spnd̂$3=6{nϺٙΒXЂ]oDK4G67wϷ +aʡvu;*I4<D`kz<CJr*r/h+4qz{n +/ڨR(ȶ U/Cŝ?s7Rԟ2z,Jdj]ÈD.\e?cɓhzS={Pp +bKp( WcY˄> ny0)ƭ{CdlrT84R)vF2P0Dh>oʺ&Y,َJzffH5jBuv%P- YHƴ'!H 3(5חRTdzVGA:YL)^H⒓$BlT`Vͣ_!֩i\xҟ]^C-44kZ^8 +YAqK$jR)l98XJ/FQ|DygkXτ +KsUÐq>TZcD +y +P_VttKH|"phM])=S5O\{|W, +Wϓo7nnT^M6HK]Sx`kZpw'sWFA,Bazy(p#|7<7WKA<j?e>c<~t%C +є&Wlaz91U>G?NH= +<8b㎆iyuվHY,
\?@^CQǹfjv,JGEcg,l;d~\RԬ-tUpL*YL!l&(ns.QI
'Lh: r;X.Yn%fF_n`k̀iYfw
U}~n/\=}ԋ|Sne~& +endstream +endobj +97 0 obj +<< +/F4 19 0 R +/F10 71 0 R +/F6 27 0 R +/F5 23 0 R +/F7 30 0 R +>> +endobj +95 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 97 0 R +>> +endobj +100 0 obj +<< +/Filter[/FlateDecode] +/Length 2389 +>> +stream +xڥko8 +! +s%z>m)PŢc^d)У7Rmm{/|qo"YXmi"hLB,V?ynRIw.\^̀n[skJ݊ +?i=Z}YnyښCys{_5%3n^!^$ +qȤCϫ-2Dm3z{O⾪Zm_<1 +nwn[F^wۺiue'yUX|PNYŔΘܓD0͜bڎg}myi*& +Q,Ty [ޗu;ĩPVH-<9eG k$'II(ivXV_x@W(am k6Ti#c8%4BIIuU Q⠡ז +KWvoWN|B-ڀH`;muF=O@}SWf
}
\F:ox]*};zYˋLSmmIDaۡ54퀔h'^փ(..jagp$;r>Gq}FZvXM<(,X@v'/^"+ +`c[N0ڐGA),Y`M^ a详[FL.d". VkK0Y3c&H-!A$\0<&J 9U-ur5vqE3ɱ fku +5ɺa#j/}2udָ
C1Wr-_@ +aWt=Sq:`QGEv6[Y +8ckwy<<9gm!"2KײvY&u2oW7g@C;*tn5PPL2&Pjp~KSaŒPbLD9;2OC,E1ڼR_jo8J=op^U[DFj<*љbӖa45 XudB &\#+T#~,|wˏ_*P#*Nτ۽0hM!K90'Ġ!tdc#?>-HаdEp&XT5cmL*I4pby.L,a3+͆?]{ꦩ#WR⯅˚NL8KO~6Get8<V俄Β&?zr? H1ID|DP;E<mf ++$7+ķ +B| +m@w %Zݓ`<Jf.<h/XE$ŵ摒NmNj#~DOE}*rЧ~GY +폮+y<0>N:2e}g~d |Ha"6^L= +endstream +endobj +101 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F5 23 0 R +/F7 30 0 R +>> +endobj +99 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 101 0 R +>> +endobj +104 0 obj +<< +/Filter[/FlateDecode] +/Length 2216 +>> +stream +xڵX[o~02uoqlh]`@u"H5.w.,[iӳ8牷!973\~,|^2^~.EiXe-nī[ceQ0b_,b6v gGإȼF8}Snc/{sXDu[#uJ4rO5xbfІ~еS[//az#,`bJ.u\EY ?Ďlzcy٨
v:g%^Hx,dN65n=1k;x ɛa2Zs. j0bQXb)k +$H@Tsnq#ADpݛF%/nݎ +KLWI>zD$p!{?4ϫ5gIE("cv7eyu^}W|(aG7+ˮrs_XWKM+ +ȴT:Ins!sP)Ρ2z*ij˝Js+ CI +RrwIֱԳǹw$%)R
251[~b:AGt[5~x@Kq
O[ڍ议Csgi$7;2ap$5(1kf)Yiy$0щwhƼY\ƤaM&!X /X d2vEF˶
75Ӡ00B;*8tY0^/:]wܿ~۲͛joTW&GZij}r/.-P=)z7;|"-IaiXvltpZsv#ةֺC(}i +ة?Wr;*+i&: K~-V<'ws8˹IB [x +5.-\(%g̢VSܫ +n&7<3(0M5U~>T>|,'!RB$?&2K(1
DFwr8ʸ&D#2H-LDn$5荡u +G,ch]kJ sV7FuŨ!CI6`olߩ)( +QrCX+WVSi35 1=zLrB# ?.v,Oc3c! e+ESzFAF*D4'>sNL75j7WQ֟轓2+ru%<ZFӰ㊶%8\}W.q]-NJ࿌z?$ +endstream +endobj +105 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F5 23 0 R +/F7 30 0 R +/F10 71 0 R +>> +endobj +103 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 105 0 R +>> +endobj +110 0 obj +<< +/Encoding 68 0 R +/Type/Font +/Subtype/Type1 +/Name/F12 +/FontDescriptor 109 0 R +/BaseFont/PMMBVT+CMTI7 +/FirstChar 33 +/LastChar 196 +/Widths[368.3 603.2 955.6 880.2 955.6 896.8 368.3 485.7 485.7 603.2 896.8 368.3 427 +368.3 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 368.3 368.3 +368.3 896.8 603.2 603.2 896.8 865.9 822.6 838.1 881.4 793.3 763.9 903.8 865.9 454.8 +617.1 895.3 734.5 1042.1 865.9 896.8 793.3 896.8 852 661.9 838.1 865.9 865.9 1159.5 +865.9 865.9 720.6 368.3 603.2 368.3 603.2 368.3 368.3 603.2 544.5 544.5 603.2 544.5 +368.3 544.5 603.2 368.3 368.3 544.5 309.5 955.6 661.9 603.2 603.2 544.5 500.4 485.7 +397.6 632.5 544.5 779.4 544.5 573.8 485.7 603.2 1206.4 603.2 603.2 603.2 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 734.5 955.6 896.8 807.2 +779.4 865.9 838.1 896.8 838.1 896.8 0 0 838.1 736.5 677.8 707.2 1060.7 1075.4 368.3 +397.6 603.2 603.2 603.2 603.2 603.2 953.8 544.5 632.6 838.1 838.1 603.2 1028.2 1145.7 +896.8 309.5 603.2] +>> +endobj +111 0 obj +<< +/Filter[/FlateDecode] +/Length 1917 +>> +stream +xڵXYD~W*:F< eSl<ڳ+dFCKQX3===_vFogO_P˓f^4[gYŁmiKin[-/zk[t|Be}[j-15Z]-1v5R" ~37<&EE9EuBڲ^#378a[SPX sq_SEZjkx`/2x'wh(uT mw_HF737Κ_$cXXě>vwu;ȯb +0`4}[W銲Ô|O0htiZ]vЁ +H/d`W"0ЭY6?#?O8M|tH~03r'*'q<q]ݐhXX@zH +AD24AޣyHmܳ +- q+C2Z)Z7Dc&;2R.j +xэat$Yw<^H%%B,YgxQҢQc딖X9/$X^m(R j.Hv[xg8ސZ!$͟Mz0LS2#Zq258P8uncsݰmS15 R$ lL[Z#\ +ٔ]M2ȳp!tg7 +endstream +endobj +112 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F5 23 0 R +/F3 16 0 R +/F10 71 0 R +/F12 110 0 R +>> +endobj +107 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 112 0 R +>> +endobj +9 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-33 -250 945 749] +/FontName/GDXNIO+CMR17 +/ItalicAngle 0 +/StemV 53 +/FontFile 8 0 R +/Flags 4 +>> +endobj +8 0 obj +<< +/Filter[/FlateDecode] +/Length1 714 +/Length2 2264 +/Length3 533 +/Length 2807 +>> +stream +xy<TmY&A$[% B1s0Ecc_'[l=YzHe߲WvQB Wuns_~s8hsm<<K!u@ + II*(d],
Tjj@(quJ*$CqeP N4@ZGK&TK4gs + +S]lT].@zSإSD!0cn.o~
?K'/m,@d@!i 0A*WE''IviX"Mv" +PUQg%pH8T*H +vgH؝z8T~3F܊rыѐ$jnš+!._gQb4n֯51Fd;mޭGPxf}ale"-3i-BOjGjۇ|¤0Kì{tCR%/)H9diK?P.SgcW_j9ֿ6t}ӧ_:Yrt*ga)ٕ.[Ɵk{~xԐ7'Уy #7..!9B
{ޢue#jh[Ŭtl +Y"y
ΜU/n8K"nao)
0omtQ
KTF#NŌŴQ}C/ӧl +SWOHoYdqtⓀmu=ݲp Wl{nxVwL)tlueCİub˓a}EWohR9z4EsC27o)Aܶ@/ŋ0e{qZC蠥EgW[y]7}T6Gs=a*"r꼧zLOH@2<!;f;~fI*{²NZH<.w]U֨[!Hۛz9Rq*Z ۛn>vmY%W]cB=n#RՅQg*o%Ov2Q9pr Y p#;*4k[.K%'!,O ++`2?;8tX}R\^tm펱e%7[Sd$HUAo9"ο$ݼ,$.}fh +5&'p9GyLc>>fDs͚_.,Ύ*eu3x?CK[XTjawJEo=^㦬L7 =
05'Ո-c(n?YN|wHQO*KvUfU ,o {YWoRZ<?LPX)K'BnYU05̺8k9T7<hR쪴׀,?⎹
3JDDRbB`:7پ,/31 w`m\]fz
ɌܓsǴx'G_נ:HY<>JaGj)Gdqh/2X{s<=i$Sy +WzGM[h,>eA_5,wqާc%_zIUku!ZK N$^쫥֤]p=i::U^iW3~PF}@Azs2QhOʞ2E*Yz-~|:W$_4n?Fg&];^9ôOS`s.6k:u
0Vd[MvF%f-e#;7.۩;GR>&+s1HyR' _ v1ls( ^8j_N +n$x8/N9\J~ +ZY<s:⢬~eKoѲq:
<^-wd^;l}-4٥ *(a] +rp͉M s(*[:˫)Zu2ykV˺u|`V:s;|c/*>YaM!{)vQULOZ"Jr9mvS +wll~:FD5^9/FH{L? +endstream +endobj +12 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-34 -251 988 750] +/FontName/JMQSDB+CMR12 +/ItalicAngle 0 +/StemV 65 +/FontFile 11 0 R +/Flags 4 +>> +endobj +11 0 obj +<< +/Filter[/FlateDecode] +/Length1 714 +/Length2 4705 +/Length3 533 +/Length 5259 +>> +stream +xgTSkB +iBѶp+H +G{@ ?q].p? +~5tpO -Ah᧑F[)v)HCǩ7cOؤ#*5%0ۼ<xxi* +7?J6;Y϶xutOWGwuB~0dXm~ +yaS!XE(v(
6Eft_g?>u楋^KtNm>27a6~GNȊ|,lh)^RMVwqSz~ҥV!|~9k֪I]mM$FmsnЙse]9?:+ZX&x$LIh
&BgT
&jrT r4U7`nyj8CxM\
0imZ tX0"4ybrP;9f<;GIpSm7rLjelъ1Y/F=}%t]-Ѫ)Evq'_(N?/,l|aѷ + +Zșob<1Uf60nrv Wr\owR-ǎ5$`%ϴH,M.581?wRV{*d%kK/WWQH3m,YqRE]E=c"ƭN^xC.lCN G~m)nڵTBQl~$ +R{0h_OŃ]|'[r +cC<#D*~%l69u);uYMT߀}|bO +nt?9μ&1o9Bzc +O<5uP9
נL@:$O]<|x%Hv1'dzs' +\LHt6 +8yٟu ,jk,> ns<#"v&9EB{Q^kV,tFl"#Kڛtݒu^PNܾ(o?sFMLȔAT]""Qfdÿp>n5Km|N:" qXIP3d2;^trEX @ע%C'=8&LB9ݍ%5ÜMLxA~\pc=IOG7j[/36%$A+EЂBqlu\ +Odbup?1w֩FƏ_='1y,<72ܦdV5Bq2kd{ER1kfTvaiҚ$ٰROe0`@.uJ.BA1OuHc|Q +IUdRT:}GE?CK)lچl3|<4i;>~3zqAc%vrRFYw=j-C|B g2߿ +A7rh;KhjBoi尿%/fRqzh5oC5WW"*_tsTb +~|)L}ruqm-/BgeKff2xt殢"o҆W-G +R$s"LTu!G_E8:/; +#b9A lHg)kV|U!zݬUȗw4DW_K +WsX?CJ\@;\20Z۽Hd^gN#nx_17Զ*qcά4O#i"Op?A_Vfː|Λh-!$[XKDy
:a<VS,7M0ɱW*ϓ!&ϖ?o-zMfi]뚚8/vTl8?Xe"o*]`LRKڹ["ty`r5Y`i.(S2ɡЧkfRUQ_/y%m;CWmM +⼛ +Y5'[brFrO&8t*{~u'a +_\OdגSPВ%k42}3w$L&8.p'0SK-4 [ ?u?zwC b-j 9B&35%ͬ<ݺ}ٲRcV*!\58[h/n
ÚO.<0ɰ10`vZ 0MNhLd5\ǥv +,a~$Svu˽",+ef^v$qIgEk2)Z~+ڋdE?MSnSs^9"8G3}uOdU$oEeԣtKr'hC~9 >j}"]18s>NDLh'Hq`XqhM+fOƸF +7oz[w'd*YQ|Xn{ZA=sjD\I^I3JXl T]o72Q6C~wrm)YG-NңoekKF?K72FqW}k( 5KiZtytNe._,9-rKl)C%M#?΅+>y4~2lѼ#G$))=_\>Hw^Whwނ4QmiN 5TO-7v\#@x w)|SԨNvt_Y"\'-M_.#jcM529Y/8$ER>93 +³yЋ%5>Vp u +endstream +endobj +15 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-53 -251 1139 750] +/FontName/JZQPYD+CMBX12 +/ItalicAngle 0 +/StemV 109 +/FontFile 14 0 R +/Flags 4 +>> +endobj +14 0 obj +<< +/Filter[/FlateDecode] +/Length1 716 +/Length2 5708 +/Length3 533 +/Length 6257 +>> +stream +xUT-Bqw .i M458
,-9}9}^owܪZs\ZU i9L΅[ &b10:.{;9L-,
v +y=5:/Z)89$kWaBQF_t5p F1']-݀㷱)&c ,ajTN
ХrG^F%-8ުE) +~;yޱenqPe9#37enЄ$r箞Ryfh2"溄ELS/El!ͼ2|x%(=3 $ExCȭў^JFqtv*he3ѿ[fwYw6<FLo1.80ZEɋIk(+(.P +9ըs*ˇ5yx}l!aLJ9jAI|e_$`%a6|ݫ[PEWnJLN9U,wj
H-_t`{lG4pfux݃Jw)7
A;j%]fTz?PDv®LPͱXq>/3Sp$!r 7 +ik祼%^1[9.P#j=l_l̔yp!J9 CѼ2iNNw;!)Bi><ѥMl3z"A6%G9As.Շ]Dδ@iMDabtWPuĥ`n>[Fjg<E։|VEWL
Nl_0I:D{B; +._'d%:{!, +m/yZn?a6'?d.&p{PI`xEtR(&hbjvDb:U82by>{\d+`H(]AD;cC;p1~2ucflyuh66y'JS;i{2)$;;m%ަ(DuC>o+Y|nvA@*WG8kGLKDouXСgR2X;Cb+7AzK+l~Mѳަp3 p![?/qmcz7l}-BysrfAvRiog1 zL7?"jh҂*M%iYK Wݧ]XSƑ9JPU^XA]Huv +̯Y9ut$ua.;
rc?(du-G$3Ccxi0NcR䏌fҬ
7β^m']k.2a;jjܹ:'O +gk(uOrO3ʶ_u$W8NFgd{k*HVȡ*)\އۈ| +e'D\: U!J{W] J!pv7w\6>|p-۸lLߧijY(&Pp9R{Qys4e;ϨfWj`H$pMɬ|QW +:Fuvg!%mEDsqooGLҳibseͣpfjӆ3[[JVn +^! +siו;'%Kq\}WoXAppyèDz2YE SNǍkX`$c>tjnKt
t JB{b}*!Sq;1\#~>PVb#q&Kb]lg59k'91xc@~>P#]}NF],Gw)KC*"*(~I;[Dgd
[NLq~mcMŕϚtC2ȋ4V2Y6eh3"8~hTt~ɢbj+\2I\0<.|n% W?RA hD +QYw@U=FZ
K" Aq#t%̟
YyqL$wD{M_ݦl!#鋕.Evn)r"S⡸m<3`4Q~zT}6,{<[cԺMbvc=EY!Ad0 +4cnUEOǰƂᚁ9}2A"6gD2ʅ+?&E2ڥl|s`(-)%W+c0/ղ
KO?onF2r|f8 qocxwb^ȧ2 +R|#CۣݗJ3p=2+mUFsM\ke.`C,vnQ=V!1N4HXңTx!~\_C9i|llM Ѣ 7|`C)كE} >D{]* \x+;*u/ ^pVʇdR%ѿ?mFWB@xk~RDJQ[pdTQ9NF~H[җ'赞.Q+u}.
3ƂcN@YS=e5i9h:'a`R~@[[(Enj8bks&yk"j?>So0riyy8bZ+zT:o,JiyĚ)-eįÒ/,=\S[\b~v%!o¨"@3f6!f!4E;
t+FJzׯ,sSCorRԷ@WJ1l-Btu~#jzz죜ϫT24kiU-湵<&8G)r)H}(kezď4$>-ڟYJweU]XK±IcGaNQa(2L8
vƳO3+^v*|/pvn|п̄N{6@XkӲʘJފ#nOCSn?z]=c+bNbV߿Jh@r*Å(Eງq͐)k7C4sNGyf%Z[ u;PWPޡ&neٯl?R@]B8NS2f^^h>J142A."o3";m*%pԮ>.v4m]mWL +)qzwGy1=}M(bfʭJ Zxs20?X sjW}`#KL&#zPլrd "7& ? + +Qͮ[3U%cvJepiT#pb}u{3Z*.J4`7L)S?'Rt5əgTN jȘPp2%Bܲĭf26oDD'fzVand36g*ӌ)[b~XgK`և&U(="IZp{d5xVdWSh:ΒwseCo& Dq" +endstream +endobj +18 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-251 -250 1009 969] +/FontName/RPLWQJ+CMR10 +/ItalicAngle 0 +/StemV 69 +/FontFile 17 0 R +/Flags 4 +>> +endobj +17 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 15243 +/Length3 533 +/Length 15795 +>> +stream +xc0Үٶm۶m۶m۶m۶miw=ߙ̟TUT̼^WJRBy%ZAc;CQ;[gZF:F.aEFF:!(RRaGg;[g.FNN&Q<\,\LPPvfRژ8Z8cbd`MdgdaAG@ hmMOML]M頠 - M,lE%akjG\M"7)%?v&Pvg67u5z
l,=/#MW%
-mͬMpp71p62'05v2wCӹ#+K)HRXS7uVR;fhNOsJm@&W(!!;w/Z&VF^''Sbkb"!B'?A+)P\Sl1UQ.}XnƞxדoXAy~"?UNIrfL-\JlL&{ޫBȾ!?md|@ v̵hUWsfUjo#A__~*3RH" +hٚ@
uzH
Cb p` t['2^fG`)aOFRc0:t7v]BٹL_w -W0g{4fnL]R ZLdL]+?Ex^QhC ҦX\]4KU@D9i 5{̤WKġc"5*Ax읿2ʽ+E|%
?F X:-VxsקtK`,DЦu&qT'qQ +)^J7m'u 6IqF +NϹ:87_[uÏݤ]_lO}&ѾceRm[Hd5MLt_5n
svZ7Idayܠ{KVϹ9_"Pbv +2@@2+FNA[8/ϵ}8(wMCWL=tԌ~TL +|¹9װ3$rXyR_(dض#1{/2]s[5de9a>"7úGmv(dGs&;azAĕIFH!0NgIE|' +z/9.z~oF=+;ite`? <>qMs+5%(
I,.dG!0ٸDۉC[Jb{2uoGw =!1]ۃeoo"5v'PW%K1u + +i5'ȎݲWow3e.?@pش)(q8J/_t,Y5gYڻY^4/z)/"WM2%Јv S$KeCJ k^\D0_G ;.F'i6*vߍy1 I+&WRw<if`#]}y'ç]g,zwu.܌6SӍZ&s*y$v~8dN(t- |+o".zz +i])3W]VP ح R.QCQv 1ûo^;
9:k\GEI-m)y9
)N'-'w>x%#on;k?H0#aRR+eʢF6Y;X6&5ibSoi
@z1<C<tǎw#5 Lgͥ>uǢ>>kE'ͽd3YrVmt%5/w}hpf!x8aXKN9hSf¬v+J6pHr'u}m`PW2o: +dЮ,<dT@ee5`YbNɗ0щ헛6Εxfc=CJ>&_D֝.>?|/(yޞʑ7˂PiTUFK3˯5Y>]`6ue=naM0)q+ ":aRW7+~{=:%zt_TaӁ_G*>QVC)9Kd_dA)~9GΞD0ħ|Ϛ,>9*xTN +BDK.117lz"Wf*Pc OD\c{&DxBo51\j2 @(~N!nZ{T~yh[qb2W@ &ѼU3*͘dN8TrN8؊}1$vL"aoN +ݥT<8qSy_|ƛZG(ֈ⏤#WNd#Ddzf.o^r>k-R +g>о=[z}+YXe6K1&|8Ln/Q6FP=}U7g6.f9`] }8@ +W_>K7{t'U輙Q <S(6d=OP +AXὈao/Ld\-9=g/?
6h$Y +I Zu&̦")?_dpy +bK#DO1fYYna)\7 =YTؓњ29܆;0,Ykre4n'7M{s!4 R +o>Ik&_eu.I|.~N|qf.(;,5# R2aXG\^G6@dS0/vʉP.6};>mj$9ig/TPo+0#MW+.v%RAԎteT}72N06|Y-A+ՠ͏4KUŬf +>.rcT
Eyy[Q&qb`NϪ7nΥ23MIwqTS/1gy#vw!sG% kLˋFTo\>KT@IwC`x_lCmHR63l9:u3whd$BC)9JRJ~{G4Z)*Gah驖0FXY#T|!. #0vdmۛ@]'oq/3rBZcg[38u34%m*^iPL4\u]VY{AvR\y)au|&ؒ0Q^fgodUϖBAhTX.x}˷b+-OL.+S>qq)Q5veF8
@ +=P~(F]9y+?73IOF].DnKhĦw0vu*2@+z9.ڱ%iLfl+0m+)P5FOa3:fZZ=G\(FŞw kwնtzX:hrc1shteu: _xaOAӝ@OzL5̅4duK<=YWG +t:V-p)P*RpN(űt$A} +5{H2c +.u=G]uJ24qU@55dպZL놁 _\u.d*>уY4[hu}Tz+1tЍ@(i}._OISURݻ1$ȱ~G"bӳΜ9h0繨:f":pPv y**ް-|hP +Gq+<*Q`tcܷHG=+TE$I2ǹV + Baފ(8E#Vw +d\U>;AV +eYFĒJhF5\ +A!O2 *<:T0WJG@ yzI$b2Y$3GSFP2FLtQ(NaQzZ3hς7G4{ܑu:JzRģEaGv_-{} uz`_o9SDL~/Ťz+Β`*[h'NZ4Hix٧TWaIj;Ik5Ƨ;z +`W]eH4-L .GNΥ%ji<OmO0,8yVr ckl:C +H%,m@,>G R&&\kuGm3yU
'dxE#<ЖI$XE~>/PNr\WRȢ0~6)@pVՎuS^[)]72^CМحQ}LfdnOI~U2?ޟ"{>tqɆ-ګ%6ղE +ĹkΛQMZyīs-8< @%ѕԷIq$yݜbpg +iK\aў쿐*PV˄:@TFamTg?I{p;?R8A٨ǹZxR㟉5""#v}#[8e[qwۇ`60z}0_.3at.!⏓D9,v +pjlIdg<l(˪G0oSH}J)Tj3Vi[X|m7XMڍID~%`qM6[!mVI2{1nցdN+Ҟ4>#K +C|qi*D*~0xGtplKߋ]FCNUtיFbC
'N?] DNL\*` ,Κ[ݵtu6~r6 +IJXl,Ŋea=-<[=8 +G +Qofd(+ j(=2z?'J%1gjeiNd)J5|`g68ψѼOLlOt̑I-odK.cIݝ粯 +x!z*NW83I!`YڈW/1m&30I5@Օ!+2;oW},Ǡ[ETpя +ѓL^ˌ6&a _~V3A'kRwa3)Acn "GR[K:dDJv .^Ԏ+C^xE6:$Q`!O7MyZHU,¸`6;s%cC-",Ʋ
$ޓP`+[uxi4RtƯN56]$Pj]Ԕ}TׅGSm_r:U9
YDH37R/WLj{ȩ
7.f=1^Q.&8'&rL[nUTX|'u"`}8Z.++,972;\C]uDxoOᎄ(`H1{~ hfbWSd#p;6#dV-3Uu +c**@ѻ/ (0Y8dxs`1c<NGBJ]f{&];_/(@)=PH#IA9}ZܯRW-fuDR~^61Ohrw&qۄm%Rg[fQx'=`I&A|7Cȶd1}'1tdK2؛Co5%0/x$x#HEel6RВ"/~`t/X45kzew +nydQ+Q` ѥѭl-ŨS +&>cB}3&7w#1pG3Y¦Īd)1q{"$<WiN]< +{GrfTA]61TMH"fXNjSes_l}f3ړ윲pźdE+G+R`!wQ|\e^4X86NDd\v¯Օq&<RDT6 +pNqїȎ*)hj,XNsBJy-kZ3 +(Uǚf 8YĴiu&4f: u +\Pig2BH=!}3A-ķ4փ8l}fX#L,@}*TLgۖ)pUnB]b!Vq`QIm0ׁeJ҄^Ygue"71֥BBfG +1*4@k;ss]#[@ ^bCZ:Dpǵ%A[wx:=ԟ>1d~ĄmEWg%mq !9SˎăCq&\!47GWä#H @K;r70$SxSt>/~`RFy4(~D pL(¹3g"pbrd٫
#bvJcwAu>5,1K{\8 ½j_XFyleB\1GDk>'a&7YlR)_H\]i
XWEf# Hyg1ژvR,}cj?CbroG쩰kkZ^ erAPף)v7.CZc@T~,nцuxjz< +cy6p@43WiU2Nvﶂ/ +2Q-rz,GsstpI*ͧ|CgB-+K%
/B~P-^O@L;=g3`âv<LJ:kE}ʏѼ +5# C/AU +/ +K +? !M+Ggu ?%Pa*t{)'l!((+~vSEfvː{A,SR41Dz]RZwDUߥ!N#jeԬ{%eD'H\!g4)^#NsYhhwqAT +fKƟIѤb"7QJ*ΌdGI^ +5xւ^T2[$]&q)ܡFEҪmRRsϪ V$Oxk|[?FUCչk0JTwx@#aIk);4m/pqjk6?{K2Ď`i
/Xi"j +Q3)8i1`xqkS='@ШO&2FFhkl
jG#`1BQw9XfNCh`؆5Qi1BWOs&U#HqѿUNn{L6MMW/ߔKsI6}|%Oq#0YURQDЊPCb3%C4u:=h9Xr(Y@0 +%TZ +PL2QNNyȽe:¾yUV]I`Jk|Q4Gb9[>.RNPyN}tkè_8;"Q˽J<t.2[Gzqi&{C-wfE&wMIJAWB07ƞa4Ԗ&WM?[}vø 4hFǑ"U`ŃZ(y|sSl"k +p,lFL@̧96`O0>G/ʹJ8Z5H+`_p!uȄt=j|ꖘ{*|u-9k?/0~BJhR@ (S(!W:Ďzm4u!geIRY9sAƾ?@A=F]"\4W<_.T +.z/Aez3d|]@r536.q%TU/ +˸1QqU;ְ+9 HHlVz< +e> +chjU!R> q2xC0^P'Ml +endstream +endobj +22 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[14 -250 1077 750] +/FontName/UEGWGM+CMCSC10 +/ItalicAngle 0 +/StemV 72 +/FontFile 21 0 R +/Flags 4 +>> +endobj +21 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 1266 +/Length3 533 +/Length 1801 +>> +stream +x{<2fJ.eumf&DFe-#5f<yxf&PjD$u+
딐d]RXԔ +;8y{w^yy v0k7[dg8\fҹ%$^ 7DKݖh@"(0w +HgPX!|vٔSgʎMc]?AGM5UioC +sqyu'<k:`* $0`J8¥M:-4zds_Ѽ؞jw\ܯ<7}vlZ˩[
IJiű9sϕ.KdmViEr.0~*oPߣ<;^a51[ԵͲkRvU%Ο3nj~}Kw3WjPcxc=(هuN|IS?,.;oTt'{9Hg¼cXk.n]3JY2(NJTh>a27,{Jg6\omގj]\}!٫NJBtsy8w"T}CwJQkᴻQ5'BBaxKou-iYcVN?Y&Xj_}a¯+[w)oXXJ8&r[y_o5ǿ48M\nY?`tґ47m4 +endstream +endobj +26 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-4 -235 731 800] +/FontName/CPPCCZ+CMTT10 +/ItalicAngle 0 +/StemV 69 +/FontFile 25 0 R +/Flags 4 +>> +endobj +25 0 obj +<< +/Filter[/FlateDecode] +/Length1 719 +/Length2 13039 +/Length3 533 +/Length 13596 +>> +stream +xUt֥if133ǸvL13%ffQGhIZkMєt%JR%UFaS{c3#+w+ER4r3r~@ +,!Z4i1ۍ5̯`w9'45qD$R+p'
iTZ֟).D9 Tbާ,ː+e|"EK=2R8\S_R9QN|&.w^}A?[:ĩtY ݧJOCw"(v1ؽa
Ȣ(_͚ue|?a,/%n&U]FgL-;!@3VF
Vxаcuy1H>zptN7Q\M"S ^'.;gZp +?'L!-3;tlȺq+ Zf5GU/f_%RМ柏mlIlbLŊs&J" TVx🪯&mH6Yg1]}/A[ڷJ ;q2-wZoZ; ۥ;_S'|0qLKeElISoibО#BkTgmdowjfjsrMQK2tLˁ/ȠhGТE!5fk%Lxi!pjo. +hrTvԪg=I}SCvjreSgǔyjN?XI(ճ$i@R:r_=Ey-G%:'ůat+A#{]w,,4n#.!Dnu|fPjpz]
{L̺qƞ9&/ĿDDLsIĤu +YߜE`%<?{S>x{)Fd +:nT9DEZ$1Mo +ZCXH¯]'x.k8&*Ҋ;Y>8Q-JR ='CM,Sm,DBYЏ0?zKpSu9N-Mhf*h{n0U@Jw
taE&ƣSZ+܌k|xݛ7Pk?Aga%E9l=߱ +7TPn`H$*qrQS⬯}ugLv%e7kb46z9#l.DGpBu#e},X`+IИJp%Wl#LmW7j<&VU*FF}+VXrRJ&̌'Oe<sxX<"l-Z٢Ji;Vl/a-2c4]T76% =օ +fwĨB*ov[Y腟"kS.f$x'(,$9ǿc9ruo]&$KΔ +1FH^]_seW]=u=G]l"QK}HMVtӪeSf7~5/Mwo8iqO|m*k^ +<]a\+Z:e=@R<//}*MCP+sF)Xy5u|4g%<0ã_"ɀUeէǑUטWn +`we&K%܃Te_gH;ll%*Lqa-'/پk$]v +tu^Q,79ۧy٣Fw_Y+O-TlSjXQ8\6?ٮ/5Ө'X"""+eu.Rc͙p#"(t^ScR$KP9r\xC
+T`;#g+yBN23ڌFٖ-.EF5t=GsִcL5!Vh"]L)3'(nϠ[4@XN&J8Aj-5\ +o~}쭡؆ +!2^9cڄuPןkd]=8c3Q& +PbQsvCMTFoX|}H=s!oyo~ԫ'x;z_* +X(`edޫ`2M,=˼]>7L.U\ڒC| +7M85Yt/'aY\9Sc9l1kyB;{~STQE>gT.LpUMz4i=<Ң=ᐕe]Y 7dJ(!?dZ%&Hl"bBxxejr&'*-o`bE{iԕ#,pʢf]W\5`|~B97/1/.e܉Κ?k-]ұЁ
E_`}JFdh/AO8r"s_?/eEF?3y>C{B]WݲTUh3
f ú硦5B1=O]&w'`!-*rSp1@V='=BnW#dєQX͊5fOLY_GhN^LGKLPxP2
GQTi2va;[ؘ0{5=T",^~zܪ|(|ybFck[7I;v_;(X#{#±WoL[I+c +5?ѯ>V?]!G6N}Pjת[.JXK +UvCÇ4EIsr 쒔aFuMN|>uW̙~Iw%2{nO+n,#¤A`dV)jVc-JJȴO) + +r+D^OY[zP +Sʹ>i%P;^֯CȨ`+~K,\DA<0yA!Dt'6|=E1 b:SY +^0ωOD8('FS_$? O:P|+*}/:&l-qIp+XfQtiEtDx.T~3A-a4&~t>1ǣE5Ӵ@!y7K$`E:`զ;}w[=34#&l3!CÜEԡNйB-+?-( "Htk$qKqX:S?{9_O0`x_I?,wDyuD]5J`yC'w +*)(T?I664VFR2::I}` +vLʅ>eI̭Ҡ5r $E$dkR +؏ߦsDFm0(Z +<=wKL*| ^qe oS Yw4Q+ZD +ow$n|m1}ʛAĈK
lKθ,UW# 0_k{ØicAu[J1s `䬼
.T~aZ{_tks
=%!FIԒIԏOr0OT<$|H5[}|Z3Ȋ}GW Y8
MUj +.Ǜ2h0KJN-% +^pbc2wVv|u\aK]/&,&L +vti8xy3pX;irz&QV2|Mb*Lc_k}PuQ
[`M9mŏBթ.u_tvsmݴ@.Gtt?AўxNwJ>v=1͟blF_ƔJ +y66Zg~R2r E
"1~Q8D,N>M#AO8v^
X[tkF!>'ଚ&
U{ՔzɹQ+@E6R-pCͿ Ex(t%c_SPZ%Gv,BA[d|d"}]Z
rjѶ7k|q|Kl!y^KpQqVBʺ{6K9?ַ|GúŅ1|ݼIf~)c-ofT +SVy̔j*Y̚'&8,|vNE}Fa9(m/;}]+$*KU.Zrpp2+A:5 +CG%,Dc}Mv?Ǽ>=YpEe\叐#j⧷!a1TljuDUfdoZo7*,;n˜J[A >Bn/AP_.4'5e볌BWן"fB1S`Ƶj`|7YfJ͕a9TKy(+5Hjٓf/ARVp #x";B,V3`ҋToq]ٺsBYt4|F +_#8XzaVIƁ5CzԄ(&"~rq9h$#<Ҭ>UA~wKFޯs#e +ڶ*i]aq2l~'<Ve˲᱈9]nl/!o_ +Fjc֞'۽+| #<z (rPljAD;܊yaⷡbfI6
_9;#<|e-K81wOlj,JBzȁhvI1/uExGS[Ҭ&mҹc%%6QwvAr[lb(]h&sɈu6,Mܯw'tFk҄(DjlO!~9CrfJi ͯV>Q0 +GYAxK"]"iʲ$Lǜd<v+]íŔ-p +U¼CK(b-'u'Lg{X}ƅ(Yf1h|IV'|TE_/rI(dX,^JR\=O'vꡛ⩅ZgODQ"M +*tKQ3}b׀b_i:II>D)9<u௮udv1u<Gʵ! +ͳ%N*+JAQ]rÁIӏñT1:D2aoЄOpB ;e>AQ3v*iwn5hz<ؖYpNJcp2gFm +1N6厊OD?Djb͝W01%@Iads'WZBAQ1cS!% IMc|ӸoJ e,8?eF'ڼ4-TG3A5̨)
M( GMd-[{o+5ޛ_L
N +2Q]^zj1_F>f~lENGC7*QF`i',ϨUs5'-7Y)wEU"6~uNHU
u?ڗG"9ؗ{^pQV/F2Fq4KZH(cd` +OwƵ:#=pMe6Z͎'8 $L,-ȯ-`']]сeah+c\|a]GBXH̠4C]_On#a)KR +endstream +endobj +29 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-27 -250 1122 750] +/FontName/QNMIFP+CMR7 +/ItalicAngle 0 +/StemV 79 +/FontFile 28 0 R +/Flags 4 +>> +endobj +28 0 obj +<< +/Filter[/FlateDecode] +/Length1 712 +/Length2 1329 +/Length3 533 +/Length 1860 +>> +stream +xiTYQ +"&( vE6HCCkՅ&s?sߜS~60\At7DCўH~ +s#o
MgGrHd"H3@ +PvcxXm)y{`X4~oil>:ԶI[*TngOK`I?>8.0wt6i;մF< pzGϷ9=c|[^}7w~U)&'mh7g~GcEҺBll\NϤy$DWsH=^_Of&_N}O*mq/
fi~ݩ2T:9Q`:3IZ͂<Z[`bEv6k
GAwiT˦+W|^a1|J=6o4H3-nRGZ#77X`8[4q-G⫢V-vu]s74&._Բ1)P=dZ~D#_R-w6)G]5?`
7*jUvXcB&>b纷e/_h9زKNd`W1^.{Y|?Pa iZk2-pt#yu[PL]Oswq5ΎƔA+#c*,M&jyVkb_W'4n<|krsƃ̛Ya_%/j'z&nFcze'} +͊3GK-6nG{W߶ߧ8ʄ'hȏϔ0ّ
USu7Q7xjnaA2ŦV#+J*e}Qq;u%h跲6?L7#䤢pL*!_v\̎ǖpwJZPx%w5^7Ju[57wy.C;&n<kz$#%ӌWA\薢ι\niS[I-$JlĎ`cٕ1`p-窙ƫ<VwQGw:F+U{:*y7qcL[EZѥg)Gߺ^W4N'FK誽ɱɢԢdvL`QYxW-:u`|KE23AS?`'62?;s]VUw<aTן:Xl/j'^
V+Qlt48i4Kd>aEcbU+DwP~Iӑ͍y?"˃8B1c1 +endstream +endobj +59 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-29 -960 1116 775] +/FontName/LPQBEO+CMSY10 +/ItalicAngle -14.035 +/StemV 85 +/FontFile 58 0 R +/Flags 68 +>> +endobj +58 0 obj +<< +/Filter[/FlateDecode] +/Length1 724 +/Length2 661 +/Length3 533 +/Length 1177 +>> +stream +xSUuLOJu+53Rp
44P03RUu.JM,sI,IR04Tp,MW04U002225RUp/,L(Qp2WpM-LNSM,HZRRZZTeh\ǥrg^Z9D8 +@WT*qmKdgaqn99~ !S U[PZZZ4<8Ԕ\tYϒĜdǼT]C=cSDf[fEjJ@fIrBZbNq*X<5/);D' _ـ̼ʂTr0SQfB!P!Xh%d+$$0]_QkdkiLjf +榵 +C2KS=]L
, L.-*J+'aL`(V&s͞##5ˁJNaz&CIMXǞ;w\[g40њ3;nY($ǝg0eXWҞ1Jԗ]aKuz]XU- ݣ%6 t6,`N|+Kgdq;)yAWpq3z]K&j؟u~x?˰
*wO٭\vwv%|3:YY}|v߿Xd?/ya^:-w^fys[Ӟ|g;} +[ף~m7{?hr=<ɩqKݮ<:w}Լ8wÛK3?'lqf<|mlekϙߖeoŌ[[垬w]`P*91LuQUxnqk.O]?[muQF>beb.^q0ߓk.zcBbyJ\m-OB5i 3g.[R֬E{.۲gR';8ot}*?"{L{m3八Oyea>O~zW3/f\̪ϿQ9E%E\\ +endstream +endobj +62 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-301 -250 1164 946] +/FontName/FXDSVV+CMBX10 +/ItalicAngle 0 +/StemV 114 +/FontFile 61 0 R +/Flags 4 +>> +endobj +61 0 obj +<< +/Filter[/FlateDecode] +/Length1 721 +/Length2 6384 +/Length3 533 +/Length 6940 +>> +stream +xeT\ݖq);(-P@pw*X]C<$<X,A;wt>qq?֜|\Q׀d*ݐ|R@E-SA U nJ$T +(())TYDE +#uB:!0Oyݿ" +HѸRc]sl1q6%6üAԉ +<熪 +vE +s6ȯ_pfe'C4VMvd?JA2}\NCšfe U#F{! N=0{IP]6v(+Vm))?r(Qyg^Ep1->)~9dG[Ë'ƭ<ڙnoX=Sυ5<~=ØJbWRW궎Wx253 3cx$7B+B'3@1ǘԧ<AvBBJ# + jMzAD\m_ynIbI]M19/dYy4AFMV +aI<y! +y/dk
f5jQnf^;a)r}6q˻0b/z9{hJA$1Pzʏz*ݹ~htrm2-b%x@3/v˚Z/42(qH*_Ydx|[}fBn;.D&P@9"r,NwoZø{qlPߊk,O3{<
=lwW.TlC<ݛMs1ZFgPvF`Dտ8=~T4HhoJ +])!I**:pA|Tҥ2,wp$3Of*8je\66K
_|g\ԋ{0~u.E9Z!SoL
K{(j3ͲRH'jS
tBܪDӶޏwK#>aiP= +k + +yFr!/&8d]S{5= +: ,({ljQ:a1f療_ޡkyL?LXQ,4sOKR WcH?>~LM*U +9E[69L}4sPR@0B[Nt U> +C]'x^kZo5ڞ1`!}կ;hß +-Ya~]?-%Z3KjaD&ctN0doSGn8=J?Va$/x`\5ONOzI26!Tl~j[&FB{\Hl=qy#6y!1ZrO7P\5@A54בc#$qp%OIޙ.8X0^
Ӿ/8Zk=8U"vjge +Muyx95g,m1@e`l$6rj"l;j8bUn1'FN)֙IHCTXawqupl Q)蘕 +lVg8!)y6,ҙptYHXB<HpaoICthRxx=`Ǧ3-P2ʹMݗBZYj{T(4I ~F褨Lx 3@hJ,f +3_Ms0:)5jn+2^] +髱;Fnmje9µ
zVfܤ(6$IfaiiI +z~m_rsNp1
EPesr_YBQLF24<O/ +Qߡ4H{QNCx#X<v~60Vt*!cvp6U3t1G\+:RDc8*Fw<̨aCwcyܾ٘1 +0"'NdlX4pG]L\ֆ}ʹr x[ELS&+4{@W
NyЧ+4T,B9Ӕ%3ݙ'G\O:#",UaR1t*pY1! !.2)#v>i%$
>!Wk/ )CM7GDÉnW(mCC?WLxnG_SeN(VoLf>YiEFtMcO,Yaӝ\S*fqti_Rxzt\7N +^\d +!o+5
3܃^F
ߓԅ__
AO-'}~?D(p^ݱ`G[<+fsond +,sHn>`VܕcȝtwN$a5֪4ڲTF
XXxZ 8W!8u:gDkBSZr(xBO;`em~|S' 1)2ILU EynstuGȤ,X*nYr>{w7 +Uvqn6nP_\'c:}9j_g.Ji^E8D8vrG{bʶ֕Wzc=?_՞?H%>=Kx~ΑHpJ`,u +O@>:ԫ܂bM/2YfB* +#n*v{"EW?WUqA][OMDMfҋX%<?dͥ9`E|kDC˔nK*K|{琀5k/Zsq|;$iB*;αmZ y!9Mﯟ {3#LPpۮ^ʨZhIc`ݢdDʼFKJe]fR0{i8> K@Ni
2W$MXU(z1%XO +kZ6gy;`zl?Yuc]$4O}+*;4EL_}4EytǴ!ov,ht'wKqgM;C>:eV#/T+>uˎ\o7A֍` S,[ĵ.5̖g!`412U\z'!}G[/3-UD]7gqc1N*Xmg$þqL wxjPi)w`>C|0EWZ$fd}teWyJPXz6nZ73;9č~HuEꄣLKxBŭO$Qϔ ud͛l!)1_ +s+CzGt`t~Jɜ(6-A9[_$C +s~Pk?7*}ƌ1ﭸoMАk'[l$깫.{ǟ)3~1rdc*%]"N>3d]KvNn-"[FwCgHyeG!x+iM7 z-#NpW~jȎU06[YEh` +[6<
0Ck7~An3˴}rqRdUV_ElC]iU~v^ k!SJc\n%@!>
bYڳ DVk,b.A0cO5>䔑62?/8vp;33K}̪q.]\D4Cq6
pS7 +p +3XBq55ԛiC|1]6%1_E76(#uE&>_C,1ǮnİRP}}yobh9Qw8XSkhYN»
O˦J;袋߈ؼs-9| +endstream +endobj +70 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-163 -250 1146 969] +/FontName/BPZKOI+CMTI10 +/ItalicAngle -14.04 +/StemV 68 +/FontFile 69 0 R +/Flags 68 +>> +endobj +69 0 obj +<< +/Filter[/FlateDecode] +/Length1 728 +/Length2 9424 +/Length3 533 +/Length 9987 +>> +stream +xUTѶq\wwoٸCp Xp{p9wңztzXs_kTQ*1;$L| + jr63q +06LAqpp+m%w_. += iKަ߶mjǗZvyN['8(mA'7刋F"mտq>@ä+@'WcZƮ۱6NMm'_{m}UBZVA9]p}!44:uI<H3ʞdWE]PT>w1Ϧ:'}?OY 2?~fCi^}I{ R@H5;Y?7n
jZ\0.sV 5.[
3l%L0Cb +5%҅wu<,d4Nmٶ@ 5kQA܌͈Jpu7ѯ888Lw-Hx?PNEեDI +xqH(c"^)3c$^|2#8~*-xbfNNA,HpMzn
" +>o%U}%Zעl0[L +N ]'QyW } E"+LZyC-n{l1DB2;>9\v
<U"E +Ya;oxxQדŶcFFQX0ݑ{,JU4.[>C^qY %vy\
bz;<B:AP(QuK<8We qIYOg +y+bhD3/ݱKg&r++qOX(P"<AZf{h2.NU(Ozwb=ARFGAy[$h\P:AFh +<>٢a>("ۃ+/J N;J٣e-<o-MSXCCTdphj
j=Io-kvRpm
Ng7V UGv80"'ka=Qye<Ͳi"<鴴[]VII9dL8DXj]<diƘI|kM뮗#K㊇ZhzXġlVѐ2Ju}K2E0+ph{KA8%Nc؟xNR/[#:E(f$BvMЖޝ<jZCTU;*9g'y"SB{|Jkgq)nyj
MeCEVyO2PeYi?S 3Ui.YQq'3p
xb ZK|CI9!ԉYfS3e-OSR1M/xƛ'| +
VmɿuV:W;o=
ruJT]duk9G?߁q C;:H<mM=1S/<\!-^zL{}txUEA꾢9E.hs.YsTT+Y{
.Rъj}q|b2q-CZeiB|Kb]e[ď=6'C+bR:D"<(?mG7>DLUo8Pkk) kIzz^R-uK)
A`|9&cSuf2{+0q}b53"p-d +[Vd{ŁkZx!eoFϞ$U^OA7_T
^+Zn&^ uOFmX~yOhmƼZv7Χl2G ++8l_Ҕ2Lfqvts62.-;8cMb3r +yYwǥr20i3n𦩾I +\3`M9<gIc}a~~s
6}VF(PJTtK[x,FI`T=Q,!eQgI%Io-NѶk1пvx]6v%.)bo,&K +cL>#r?r1$Ŝ)Pmr7:>PZrLJX#VBVwmJ+O"AKlsLjv?Ъ3eKW 16*OONPK\Kr2-x> +Τr3@9=0dnXk<U0Ml??bϴf,$4C]҈_HB!;H,0BPO)7eOVr/9FIWS:p>gr)dv1dqиr(Pe,KDF n$yjGCv5CtmdK&#,ǧ%-4H1>{*XFyNnI 7TƽY+WZ)I4?K&0gRH0!ZBn7T7I\}*-|喾pHQB2q@}'8<QO+ѵQ5RV8>ػHU"ɏ`Q=+D#f!wn5!ͭ٣H+#UfphnpGy<axoUgK`xwGlc'
)/-xmY:]|o?|ˌ< +
͇҆nyn,Z$=
ӗ0;ξwS$W.G]+cԿuyNzh7}Y^]oLa*IDg+FҶaRI0_`kɮY0I[%ϮOqutg
pz1&2!h *=dyV cO➠ vWRy}z5^IoP (H?B7 +Ѐ)|)fP}fkev_}#q{+MRK(8He8ޔ%vG(dQuWwXsG&<oRENG~H٢Ķ Y腒(Y'W{`'@+e(#R4NQ/0`]~&=_T0q9xxbQlusm5-yŇSNo08 +kJ Z;s-Rt~z-Ԋ9& +АFr!Ehc\^qme1Qf. tKkVYp=:7ǝ3O_!Ľd
ymBZ4LflJ):r:;& +TƛޖqvPpNJ[fĬe`qPiNXAƇme(a +Cu0 +7#u?kǷ{ГE +b_|+]#qH&$E->LY;nޗ-ѮF3۸m3
eoP%:s<>R|tFh*}IDmN*6=8i@١O?Q+:Tچvڤh~gcʜ-,sZRGhncT>h: g1:tz|~b +!p2^LJ5$}!^9|{pd?qfn~X^#\WWkX +y{s$W4ICM +p(QG;2j33eveC(U(YvR5mhC C#ߓR.UPߋ}Q
yv&k{[mzUyEbWe= T5>jHH@%PCiJ;H-w`2xyGcݭ})aڂ2ф؝`1$}$b/8W˯V*U$D] q"/'L(Md719 +>S>&CrB;_[;vqT#"Z5Ϟ5]T?n#ZvN}[}+C5thÎKdgOyq'MŃuN\RoLq:Xva<SzD D*mRAg2oO+Qol;mh_x8wB+|ߥG˟k¿r6`7va}x)[RvgYVn$XdGSWTO#NqQHMI?6؉;]q=D͆pgY>'U1@=c(RV+rm;(\G/ȼbrCCC |oF8X>8 +K>Q\+͙Ņ,mTsÓF94y7JLERR̈:S5m#Ϥ|rC ŭ[nUN &_Lba]b1*mdžJPp,\IZ~KLz9
2e*" +v r|tXQ0V},[bڧOטW`J8azvDKR\{|h2FeO
$r{E~7Oxg/vhTz)8N !jh)g,_PEl϶$),
ll
%˥'
˃Y9nN+ +O[HB@d]{<j'6Ӕ8rT.S:$^b)!c<Eq{ +uKà9{IeeH$QpIx}lWr5=ocZS'1/xf=yD|]lzZIhg<eP}`IghL:yꎶA8Ԑ"ϧܼ,+ +wرĞu2aSZoEsڵX/f0NhJbhŤIuڄ!r2H?h-1knOWqf>2,#ck=-$t)=6sJك)(F>K!v×ǪR=fłU'o VDlj{wOR3V^weDW2oZ[^lyIAm%;fv_U@\"v#x,6Kb
6J&:h%#w
l#o~n{b2w$7*]t9-e=!"V"swq{'e`zΙfQY9/g?qj94Lc[\qo>ԆUCF̧L&#RrhrDeiRsyI`Hmk_6EI?=w`^gq3Vu C$SIdg8U8.R]Gz8:et ?GAZY~} +COPc[˅F*tmKB/mTRS
3"Nk+n'IA͆J,jK|-Ψύ8:V\؊(:$jNuGX
\lZrF>l^yo2WRGcdΘtS$Aoq%m^,!`Ehi]RO^i E ++tB9U`tJH-YoUhPyy\ŐB.-լrJ!1Pb̟sb5SbWAKC}Nm20GfBVCKQ Kfpq +endstream +endobj +86 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-32 -250 1048 750] +/FontName/YSXOUZ+CMMI10 +/ItalicAngle -14.04 +/StemV 72 +/FontFile 85 0 R +/Flags 68 +>> +endobj +85 0 obj +<< +/Filter[/FlateDecode] +/Length1 727 +/Length2 1593 +/Length3 533 +/Length 2127 +>> +stream +x{8TǍ
TcvJ-r1ܓKn
Xke#Rɭ2ejEG;ںPv%**LnI>w?~b혜ЉD8 lM uux ] +Bt6@0 P
ll O2qH$0! +졳Id[S<}_^t @˾PeSAN@ ʌ*ӶY +t +ӥv[p;Vlt#1^̌ZDXS?nDMLgFǘ`r+<oV7!Q(ݩ6c2%_x]$7wgw-HzӒQOUfЂ`P̊)|@AbxƤʠEq#ĺ*f,mݛZW{&>< +Hm,oq*19P?@o86T;5и +>HOn[l}>6~2/r1:[\ +endstream +endobj +109 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-27 -250 1268 750] +/FontName/PMMBVT+CMTI7 +/ItalicAngle -14.04 +/StemV 76 +/FontFile 108 0 R +/Flags 68 +>> +endobj +108 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 1182 +/Length3 533 +/Length 1721 +>> +stream +xSUuLOJu+53Rp
4W03RUu.JM,sI,IR04Tp,MW0P02202RUp/,L(Qp2WpM-LNSM,HZRRZZTeh\ǥrg^Z9D8 +@WT*qmKdgaqn99~ A!S U[PZZZ4<6Ԕ\tYϒĜdǼT]C=xf[fEjJ@fIrBZbNq*X<5/%C?),Dɀ̼ʂTj0QQfB!P!Xh%d+$$0_Qkdkdj`hdf`njP04/4E,\ZTWN@i0JMHM=G41^GVkWw{ڼ::%^rw2.~hϊ}.>:2S[ov
˅W.6PlVM[(7aKM[u_s+ITf]ۓvwk>춉*K+nW@57E='nUy)sn0IVzy"WV_oB4uz'[xg>}f{W[}odnU0igx:?n"q♙Β[?'yL^X7)h:slubWV/l.iޟz7OAIՋׁOiO79}}OǗlͽ}S^~ǕLflٷ5tzfxSі)ʝug5P]0`]aaʧ¨5eZg}yy'd8X{:Gak?ܺl%OΓ_v_;zX2}VXfz"ٮm[rnͽfwvT;4:._=ƤCU"=ܯpzh5-4c;vkW[|gwk:{tbnʚw"Bfmx^tegc6/|7*\e_g~:A,k*$*YݕRf'YLҖ^PߡysT|xJθڲ2nAx=74JߗUs.u\; / v4&;R3'RyK+p)O{_yPWFt4n>;]\{Qe}5_Ltƌ-V{N'j9n^wgr_bi3T^~nͼC'l'պH-F߹"<uMaM?_Wݔnٺ_x36KgO添g͙Jk(͓+vXnhOr분{7$N n%OHo>uɚojwu-vɾem {{r&lX&>R<Vy룛Y^?rlAihZrq+L0h^'")R4wf=Yv]-^~scxщSnkOߙأަmT,.n xv&?Q9E%E\\ +endstream +endobj +1 0 obj +<< +/Creator( TeX output 1995.05.18:1036) +/Producer(dvipdfm 0.13.2c, Copyright \251 1998, by Mark A. Wicks) +/CreationDate(D:20040909002908+01'00') +>> +endobj +5 0 obj +<< +/Type/Page +/Resources 6 0 R +/Contents[31 0 R 4 0 R 32 0 R 33 0 R] +/Parent 113 0 R +>> +endobj +35 0 obj +<< +/Type/Page +/Resources 36 0 R +/Contents[31 0 R 4 0 R 37 0 R 33 0 R] +/Parent 113 0 R +>> +endobj +39 0 obj +<< +/Type/Page +/Resources 40 0 R +/Contents[31 0 R 4 0 R 41 0 R 33 0 R] +/Parent 113 0 R +>> +endobj +43 0 obj +<< +/Type/Page +/Resources 44 0 R +/Contents[31 0 R 4 0 R 45 0 R 33 0 R] +/Parent 113 0 R +>> +endobj +113 0 obj +<< +/Type/Pages +/Count 4 +/Kids[5 0 R 35 0 R 39 0 R 43 0 R] +/Parent 3 0 R +>> +endobj +47 0 obj +<< +/Type/Page +/Resources 48 0 R +/Contents[31 0 R 4 0 R 49 0 R 33 0 R] +/Parent 114 0 R +>> +endobj +51 0 obj +<< +/Type/Page +/Resources 52 0 R +/Contents[31 0 R 4 0 R 53 0 R 33 0 R] +/Parent 114 0 R +>> +endobj +55 0 obj +<< +/Type/Page +/Resources 56 0 R +/Contents[31 0 R 4 0 R 64 0 R 33 0 R] +/Parent 114 0 R +>> +endobj +66 0 obj +<< +/Type/Page +/Resources 67 0 R +/Contents[31 0 R 4 0 R 72 0 R 33 0 R] +/Parent 114 0 R +>> +endobj +114 0 obj +<< +/Type/Pages +/Count 4 +/Kids[47 0 R 51 0 R 55 0 R 66 0 R] +/Parent 3 0 R +>> +endobj +74 0 obj +<< +/Type/Page +/Resources 75 0 R +/Contents[31 0 R 4 0 R 76 0 R 33 0 R] +/Parent 115 0 R +>> +endobj +78 0 obj +<< +/Type/Page +/Resources 79 0 R +/Contents[31 0 R 4 0 R 80 0 R 33 0 R] +/Parent 115 0 R +>> +endobj +82 0 obj +<< +/Type/Page +/Resources 83 0 R +/Contents[31 0 R 4 0 R 88 0 R 33 0 R] +/Parent 115 0 R +>> +endobj +90 0 obj +<< +/Type/Page +/Resources 91 0 R +/Contents[31 0 R 4 0 R 92 0 R 33 0 R] +/Parent 115 0 R +>> +endobj +115 0 obj +<< +/Type/Pages +/Count 4 +/Kids[74 0 R 78 0 R 82 0 R 90 0 R] +/Parent 3 0 R +>> +endobj +94 0 obj +<< +/Type/Page +/Resources 95 0 R +/Contents[31 0 R 4 0 R 96 0 R 33 0 R] +/Parent 116 0 R +>> +endobj +98 0 obj +<< +/Type/Page +/Resources 99 0 R +/Contents[31 0 R 4 0 R 100 0 R 33 0 R] +/Parent 116 0 R +>> +endobj +102 0 obj +<< +/Type/Page +/Resources 103 0 R +/Contents[31 0 R 4 0 R 104 0 R 33 0 R] +/Parent 116 0 R +>> +endobj +106 0 obj +<< +/Type/Page +/Resources 107 0 R +/Contents[31 0 R 4 0 R 111 0 R 33 0 R] +/Parent 116 0 R +>> +endobj +116 0 obj +<< +/Type/Pages +/Count 4 +/Kids[94 0 R 98 0 R 102 0 R 106 0 R] +/Parent 3 0 R +>> +endobj +3 0 obj +<< +/Type/Pages +/Count 16 +/Kids[113 0 R 114 0 R 115 0 R 116 0 R] +/MediaBox[0 0 595 842] +>> +endobj +31 0 obj +<< +/Length 1 +>> +stream + +endstream +endobj +33 0 obj +<< +/Length 1 +>> +stream + +endstream +endobj +4 0 obj +<< +/Length 33 +>> +stream +1.00028 0 0 1.00028 72 769.82 cm +endstream +endobj +117 0 obj +<< +>> +endobj +118 0 obj +null +endobj +119 0 obj +<< +>> +endobj +2 0 obj +<< +/Type/Catalog +/Pages 3 0 R +/Outlines 117 0 R +/Threads 118 0 R +/Names 119 0 R +>> +endobj +xref +0 120 +0000000000 65535 f +0000131585 00000 n +0000134162 00000 n +0000133807 00000 n +0000134012 00000 n +0000131749 00000 n +0000011799 00000 n +0000000009 00000 n +0000058795 00000 n +0000058611 00000 n +0000000913 00000 n +0000061901 00000 n +0000061715 00000 n +0000001906 00000 n +0000067463 00000 n +0000067274 00000 n +0000002823 00000 n +0000074022 00000 n +0000073834 00000 n +0000003769 00000 n +0000004686 00000 n +0000090121 00000 n +0000089933 00000 n +0000005654 00000 n +0000006652 00000 n +0000092222 00000 n +0000092036 00000 n +0000007629 00000 n +0000106120 00000 n +0000105934 00000 n +0000008373 00000 n +0000133912 00000 n +0000009337 00000 n +0000133962 00000 n +0000011700 00000 n +0000131852 00000 n +0000013936 00000 n +0000011860 00000 n +0000013859 00000 n +0000131957 00000 n +0000016165 00000 n +0000013998 00000 n +0000016110 00000 n +0000132062 00000 n +0000018989 00000 n +0000016227 00000 n +0000018923 00000 n +0000132259 00000 n +0000021700 00000 n +0000019051 00000 n +0000021623 00000 n +0000132364 00000 n +0000024331 00000 n +0000021762 00000 n +0000024265 00000 n +0000132469 00000 n +0000030460 00000 n +0000024393 00000 n +0000108289 00000 n +0000108094 00000 n +0000026009 00000 n +0000109769 00000 n +0000109579 00000 n +0000026960 00000 n +0000027896 00000 n +0000030361 00000 n +0000132574 00000 n +0000035310 00000 n +0000030522 00000 n +0000117018 00000 n +0000116823 00000 n +0000031429 00000 n +0000032411 00000 n +0000035232 00000 n +0000132772 00000 n +0000037787 00000 n +0000035372 00000 n +0000037709 00000 n +0000132877 00000 n +0000040117 00000 n +0000037849 00000 n +0000040039 00000 n +0000132982 00000 n +0000044861 00000 n +0000040179 00000 n +0000127313 00000 n +0000127119 00000 n +0000041133 00000 n +0000042080 00000 n +0000044760 00000 n +0000133087 00000 n +0000047741 00000 n +0000044923 00000 n +0000047663 00000 n +0000133285 00000 n +0000050366 00000 n +0000047803 00000 n +0000050288 00000 n +0000133390 00000 n +0000052959 00000 n +0000050428 00000 n +0000052892 00000 n +0000133496 00000 n +0000055392 00000 n +0000053022 00000 n +0000055313 00000 n +0000133604 00000 n +0000058547 00000 n +0000129749 00000 n +0000129554 00000 n +0000055456 00000 n +0000056463 00000 n +0000058455 00000 n +0000132167 00000 n +0000132679 00000 n +0000133192 00000 n +0000133712 00000 n +0000134094 00000 n +0000134117 00000 n +0000134139 00000 n +trailer +<< +/Size 120 +/Root 2 0 R +/Info 1 0 R +>> +startxref +134260 +%%EOF diff --git a/Master/texmf-dist/doc/bibtex/base/btxdoc.tex b/Master/texmf-dist/doc/bibtex/base/btxdoc.tex new file mode 100644 index 00000000000..52723e08b69 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxdoc.tex @@ -0,0 +1,1117 @@ +% Copyright (C) 1988, all rights reserved. + +\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em + T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} + +\title{B\kern-.05em{\large I}\kern-.025em{\large B}\kern-.08em\TeX ing} +\author{Oren Patashnik} +\date{February 8, 1988} + +\documentstyle{article} +\begin{document} + +\maketitle + +\section{Overview} + +[This document will be expanded when \BibTeX\ version 1.00 comes out. +Please report typos, omissions, inaccuracies, +and especially unclear explanations +to me ({\tt patashnik@SCORE.STANFORD.EDU}). +Suggestions for improvements are wanted and welcome.] + +This documentation, for \BibTeX\ version 0.99b, +is meant for general \BibTeX\ users; +bibliography-style designers should read this document +and then read ``Designing \BibTeX\ Styles''~\cite{btxhak}, +which is meant for just them. + +This document has three parts: +Section~\ref{differences} +describes the differences between versions 0.98i and 0.99b +of \BibTeX\ and between the corresponding versions of the standard styles; +Section~\ref{latex-appendix} +updates Appendix~B.2 of the \LaTeX\ book~\cite{latex}; +and Section~\ref{odds-and-ends} +gives some general and specific tips +that aren't documented elsewhere. +It's assumed throughout that you're familiar with +the relevant sections of the \LaTeX\ book. + +This documentation also serves as sample input to help +\BibTeX\ implementors get it running. +For most documents, this one included, you produce the reference list by: +running \LaTeX\ on the document (to produce the {\tt aux} file(s)), +then running \BibTeX\ (to produce the {\tt bbl} file), +then \LaTeX\ twice more (first to find the information in the {\tt bbl} file +and then to get the forward references correct). +In very rare circumstances you may need an extra \BibTeX/\LaTeX\ run. + +\BibTeX\ version 0.99b should be used with \LaTeX\ version 2.09, +for which the closed bibliography format is the default; +to get the open format, use the optional document style {\tt openbib} +(in an open format there's a line break between major blocks of a +reference-list entry; in a closed format the blocks run together).] + +Note: \BibTeX\ 0.99b is not compatible with the old style files; +nor is \BibTeX\ 0.98i compatible with the new ones +(the new \BibTeX, however, is compatible with old database files). + +Note for implementors: \BibTeX\ provides logical-area names +\hbox{\tt TEXINPUTS:} for bibliography-style files and +\hbox{\tt TEXBIB:} for database files it can't otherwise find. + + +\section{Changes} +\label{differences} + +This section describes the differences between +\BibTeX\ versions 0.98i and 0.99b, and also between +the corresponding standard styles. +There were a lot of differences; +there will be a lot fewer between 0.99 and 1.00. + + +\subsection{New \BibTeX\ features} +\label{features} + +The following list explains \BibTeX's new features and how to use them. +\begin{enumerate} + +\item +With the single command `\hbox{\verb|\nocite{*}|}' +you can now include in the reference list +every entry in the database files, without having to explicitly +\verb|\cite| or \hbox{\verb|\nocite|} each entry. +Giving this command, in essence, +\hbox{\verb|\nocite|}s +all the enties in the database, in database order, +at the very spot in your document +where you give the command. + +\item +\label{concat} +You can now have as a field value (or an {\tt @STRING} definition) +the concatenation of several strings. +For example if you've defined +\begin{verbatim} + @STRING( WGA = " World Gnus Almanac" ) +\end{verbatim} +then it's easy to produce nearly-identical +{\tt title} fields for different entries: +\begin{verbatim} + @BOOK(almanac-66, + title = 1966 # WGA, + . . . + @BOOK(almanac-67, + title = 1967 # WGA, +\end{verbatim} +and so on. Or, you could have a field like +\begin{verbatim} + month = "1~" # jan, +\end{verbatim} +which would come out something like +`\hbox{\verb|1~January|}' or `\hbox{\verb|1~Jan.|}' in the {\tt bbl} file, +depending on how your bibliography style defines +the {\tt jan} abbreviation. +You may concatenate as many strings as you like +(except that there's a limit to the overall length +of the resulting field); +just be sure to put the concatenation character `{\tt\#}'$\!$, +surrounded by optional spaces or newlines, +between each successive pair of strings. + +\item +\BibTeX\ has a new cross-referencing feature, +explained by an example. +Suppose you say \hbox{\verb|\cite{no-gnats}|} in your document, +and suppose you have these two entries in your database file: +\begin{verbatim} + @INPROCEEDINGS(no-gnats, + crossref = "gg-proceedings", + author = "Rocky Gneisser", + title = "No Gnats Are Taken for Granite", + pages = "133-139") + . . . + @PROCEEDINGS(gg-proceedings, + editor = "Gerald Ford and Jimmy Carter", + title = "The Gnats and Gnus 1988 Proceedings", + booktitle = "The Gnats and Gnus 1988 Proceedings") +\end{verbatim} +Two things happen. +First, the special \hbox{\tt crossref} field tells \BibTeX\ +that the \hbox{\tt no-gnats} entry should inherit +any fields it's missing from +the entry it cross references, \hbox{\tt gg-proceedings}. +In this case it in inherits the two fields +\hbox{\tt editor} and \hbox{\tt booktitle}. +Note that, in the standard styles at least, +the \hbox{\tt booktitle} field is irrelevant +for the \hbox{\tt PROCEEDINGS} entry type. +The \hbox{\tt booktitle} field appears here +in the \hbox{\tt gg-proceedings} entry +only so that the entries that cross reference it +may inherit the field. +No matter how many papers from this meeting exist in the database, +this \hbox{\tt booktitle} field need only appear once. + +The second thing that happens: +\BibTeX\ automatically puts the entry \hbox{\tt gg-proceedings} +into the reference list if it's cross +referenced by two or more entries that you +\verb|\cite| or \hbox{\verb|\nocite|}, +even if you don't \verb|\cite| or \hbox{\verb|\nocite|} +the \hbox{\tt gg-proceedings} entry itself. +So \hbox{\tt gg-proceedings} will automatically appear +on the reference list if one other entry +besides \hbox{\tt no-gnats} cross references it. + +To guarantee that this scheme works, however, +a cross-referenced entry must occur later in the database files +than every entry that cross-references it. +Thus, putting all cross-referenced entries at the end makes sense. +(Moreover, you may not reliably nest cross references; +that is, a cross-referenced entry may +not itself reliably cross reference an entry. +This is almost certainly not something you'd +want to do, though.) + +One final note: +This cross-referencing feature is completely unrelated +to the old \BibTeX's cross referencing, +which is still allowed. +Thus, having a field like +\begin{verbatim} + note = "Jones \cite{jones-proof} improves the result" +\end{verbatim} +is not affected by the new feature. + +\item +\BibTeX\ now handles accented characters. +For example if you have an entry with the two fields +\begin{verbatim} + author = "Kurt G{\"o}del", + year = 1931, +\end{verbatim} +and if you're using the \hbox{\tt alpha} bibliography style, +then \BibTeX\ will construct the label +\hbox{[G{\"o}d31]} for this entry, which is what you'd want. +To get this feature to work you must place the entire accented +character in braces; +in this case either \hbox{\verb|{\"o}|} +or \hbox{\verb|{\"{o}}|} will do. +Furthermore these braces must not themselves be +enclosed in braces (other than the ones that might delimit +the entire field or the entire entry); +and there must be a backslash +as the very first character inside the braces. +Thus neither \hbox{\verb|{G{\"{o}}del}|} +nor \hbox{\verb|{G\"{o}del}|} will work for this example. + +This feature handles all the accented characters and +all but the nonbackslashed foreign symbols found in Tables +3.1 and~3.2 of the \LaTeX\ book. +This feature behaves similarly for ``accents'' you might define; +we'll see an example shortly. +For the purposes of counting letters in labels, +\BibTeX\ considers everything contained inside the braces +as a single letter. + +\item +\BibTeX\ also handles hyphenated names. +For example if you have an entry with +\begin{verbatim} + author = "Jean-Paul Sartre", +\end{verbatim} +and if you're using the \hbox{\tt abbrv} style, +then the result is `J.-P. Sartre'$\!$. + +\item +\label{preamble} +There's now an \hbox{\verb|@PREAMBLE|} command +for the database files. +This command's syntax is just like \hbox{\verb|@STRING|}'s, +except that there is no name or equals-sign, just the string. +Here's an example: +\begin{verbatim} + @PREAMBLE{ "\newcommand{\noopsort}[1]{} " + # "\newcommand{\singleletter}[1]{#1} " } +\end{verbatim} +(note the use of concatenation here, too). +The standard styles output whatever information you give this command +(\LaTeX\ macros most likely) directly to the {\tt bbl} file. +We'll look at one possible use of this command, +based on the \hbox{\verb|\noopsort|} command just defined. + +The issue here is sorting (alphabetizing). +\BibTeX\ does a pretty good job, +but occasionally weird circumstances conspire to confuse \BibTeX: +Suppose that you have entries in your database for +the two books in a two-volume set by the same author, +and that you'd like volume~1 to appear +just before volume~2 in your reference list. +Further suppose that there's now a second edition of volume~1, +which came out in 1973, say, +but that there's still just one edition of volume~2, +which came out in 1971. +Since the {\tt plain} standard style +sorts by author and then year, +it will place volume~2 first +(because its edition came out two years earlier) +unless you help \BibTeX. +You can do this by using the {\tt year} fields below +for the two volumes: +\begin{verbatim} + year = "{\noopsort{a}}1973" + . . . + year = "{\noopsort{b}}1971" +\end{verbatim} +According to the definition of \hbox{\verb|\noopsort|}, +\LaTeX\ will print nothing but the true year for these fields. +But \BibTeX\ will be perfectly happy pretending that +\hbox{\verb|\noopsort|} specifies some fancy accent +that's supposed to adorn the `a' and the~`b'; +thus when \BibTeX\ sorts it will pretend that +`a1973' and `b1971' are the real years, +and since `a' comes before~`b'$\!$, it will place volume~1 before volume~2, +just what you wanted. +By the way, if this author has any other works included +in your database, you'd probably want to use instead something like +\hbox{\verb|{\noopsort{1968a}}1973|} and +\hbox{\verb|{\noopsort{1968b}}1971|}, +so that these two books would come out in a reasonable spot +relative to the author's other works +(this assumes that 1968 results in a reasonable spot, +say because that's when the first edition of volume~1 appeared). + +There is a limit to the number of \hbox{\verb|@PREAMBLE|} commands +you may use, but you'll never exceed this limit if +you restrict yourself to one per database file; +this is not a serious restriction, +given the concatenation feature (item~\ref{concat}). + +\item +\BibTeX's sorting algorithm is now stable. +This means that if two entries have identical sort keys, +those two entries will appear in citation order. +(The bibliography styles construct these sort keys---% +usually the author information followed by the year and the title.) + +\item +\BibTeX\ no longer does case conversion for file names; +this will make \BibTeX\ easier to install on Unix systems, for example. + +\item +It's now easier to add code for processing a +command-line {\tt aux}-file name. + +\end{enumerate} + + +\subsection{Changes to the standard styles} + +This section describes changes to the standard styles +({\tt plain}, {\tt unsrt}, {\tt alpha}, {\tt abbrv}) +that affect ordinary users. +Changes that affect style designers appear in +the document ``Designing \BibTeX\ Styles''~\cite{btxhak}. +\begin{enumerate} + +\item +In general, sorting is now by ``author''$\!$, then year, then title---% +the old versions didn't use the year field. +(The {\tt alpha} style, however, sorts first by label, +then ``author''$\!$, year, and title.) +The quotes around author mean that some entry types +might use something besides the author, like the editor or organization. + +\item +Many unnecessary ties (\verb|~|) have been removed. +\LaTeX\ thus will produce slightly fewer +`\hbox{\tt Underfull} \verb|\hbox|' messages +when it's formatting the reference list. + +\item +Emphasizing (\hbox{\verb|{\em ...}|}) +has replaced italicizing (\hbox{\verb|{\it ...}|}). +This will almost never result in a difference +between the old output and the new. + +\item +The {\tt alpha} style now uses a superscripted~`$^{+}$' instead of a~`*' +to represent names omitted in constructing the label. +If you really liked it the way it was, however, +or if you want to omit the character entirely, +you don't have to modify the style file---% +you can override the~`$^{+}$' by +redefining the \hbox{\verb|\etalchar|} command +that the {\tt alpha} style writes onto the {\tt bbl} file +(just preceding the \hbox{\verb|\thebibliography|} environment); +use \LaTeX's \hbox{\verb|\renewcommand|} inside +a database \hbox{\tt @PREAMBLE} command, +described in the previous subsection's item~\ref{preamble}. + +\item +The {\tt abbrv} style now uses `Mar.' and `Sept.'\ +for those months rather than `March' and `Sep.' + +\item +The standard styles use \BibTeX's new cross-referencing feature +by giving a \verb|\cite| of the cross-referenced entry and by +omitting from the cross-referencing entry +(most of the) information that appears +in the cross-referenced entry. +These styles do this when +a titled thing (the cross-referencing entry) +is part of a larger titled thing (the cross-referenced entry). +There are five such situations: +when (1)~an \hbox{\tt INPROCEEDINGS} +(or \hbox{\tt CONFERENCE}, which is the same) +cross references a \hbox{\tt PROCEEDINGS}; +when (2)~a {\tt BOOK}, (3)~an \hbox{\tt INBOOK}, +or (4)~an \hbox{\tt INCOLLECTION} +cross references a {\tt BOOK} +(in these cases, the cross-referencing entry is a single +volume in a multi-volume work); +and when (5)~an \hbox{\tt ARTICLE} +cross references an \hbox{\tt ARTICLE} +(in this case, the cross-referenced entry is really a journal, +but there's no \hbox{\tt JOURNAL} entry type; +this will result in warning messages about +an empty \hbox{\tt author} and \hbox{\tt title} for the journal---% +you should just ignore these warnings). + +\item +The \hbox{\tt MASTERSTHESIS} and \hbox{\tt PHDTHESIS} +entry types now take an optional {\tt type} field. +For example you can get the standard styles to +call your reference a `Ph.D.\ dissertation' +instead of the default `PhD thesis' by including a +\begin{verbatim} + type = "{Ph.D.} dissertation" +\end{verbatim} +in your database entry. + +\item +Similarly, the \hbox{\tt INBOOK} and \hbox{\tt INCOLLECTION} +entry types now take an optional {\tt type} field, +allowing `section~1.2' instead of the default `chapter~1.2'$\!$. +You get this by putting +\begin{verbatim} + chapter = "1.2", + type = "Section" +\end{verbatim} +in your database entry. + +\item +The \hbox{\tt BOOKLET}, \hbox{\tt MASTERSTHESIS}, +and \hbox{\tt TECHREPORT} entry types now format +their \hbox{\tt title} fields as if they were +\hbox{\tt ARTICLE} \hbox{\tt title}s +rather than \hbox{\tt BOOK} \hbox{\tt title}s. + +\item +The \hbox{\tt PROCEEDINGS} and \hbox{\tt INPROCEEDINGS} +entry types now use the \hbox{\tt address} field +to tell where a conference was held, +rather than to give the address +of the publisher or organization. +If you want to include the +publisher's or organization's address, +put it in the \hbox{\tt publisher} +or \hbox{\tt organization} field. + +\item +The \hbox{\tt BOOK}, \hbox{\tt INBOOK}, \hbox{\tt INCOLLECTION}, +and \hbox{\tt PROCEEDINGS} entry types now allow either +\hbox{\tt volume} or \hbox{\tt number} (but not both), +rather than just \hbox{\tt volume}. + +\item +The \hbox{\tt INCOLLECTION} entry type now allows +a \hbox{\tt series} and an \hbox{\tt edition} field. + +\item +The \hbox{\tt INPROCEEDINGS} and \hbox{\tt PROCEEDINGS} +entry types now allow either a \hbox{\tt volume} or \hbox{\tt number}, +and also a \hbox{\tt series} field. + +\item +The \hbox{\tt UNPUBLISHED} entry type now outputs, +in one block, the \hbox{\tt note} field +followed by the date information. + +\item +The \hbox{\tt MANUAL} entry type now prints out +the \hbox{\tt organization} in the first block +if the \hbox{\tt author} field is empty. + +\item +The {\tt MISC} entry type now issues a warning +if all the optional fields are empty +(that is, if the entire entry is empty). + +\end{enumerate} + + +\section{The Entries} +\label{latex-appendix} + +This section is simply a corrected version of +Appendix~B.2 of the \LaTeX\ book~\cite{latex}, +\copyright~1986, by Addison-Wesley. +The basic scheme is the same, only a few details have changed. + + +\subsection{Entry Types} + +When entering a reference in the database, the first thing to decide +is what type of entry it is. No fixed classification scheme can be +complete, but \BibTeX\ provides enough entry types to handle almost +any reference reasonably well. + +References to different types of publications contain different +information; a reference to a journal article might include the volume +and number of the journal, which is usually not meaningful for a book. +Therefore, database entries of different types have different fields. +For each entry type, the fields are divided into three classes: +\begin{description} + +\item[required] +Omitting the field will produce a warning message +and, rarely, a badly formatted bibliography entry. +If the required information is not meaningful, +you are using the wrong entry type. +However, if the required information is meaningful +but, say, already included is some other field, +simply ignore the warning. + +\item[optional] +The field's information will be used if present, +but can be omitted without causing any formatting problems. +You should include the optional field if it will help the reader. + +\item[ignored] +The field is ignored. +\BibTeX\ ignores any field that is not required or optional, so you can include +any fields you want in a \hbox{\tt bib} file entry. It's a good idea +to put all relevant information about +a reference in its \hbox{\tt bib} file entry---even information that +may never appear in the bibliography. For example, if you want to +keep an abstract of a paper in a computer file, put it in an \hbox{\tt +abstract} field in the paper's \hbox{\tt bib} file entry. The +\hbox{\tt bib} file is likely to be as good a place as any for the +abstract, and it is possible to design a bibliography style for +printing selected abstracts. +Note: Misspelling a field name will +result in its being ignored, +so watch out for typos +(especially for optional fields, +since \BibTeX\ won't warn you when those are missing). + +\end{description} + +The following are the standard entry types, along with their required +and optional fields, that are used by the standard bibliography styles. +The fields within each class (required or optional) +are listed in order of occurrence in the output, +except that a few entry types may perturb the order slightly, +depending on what fields are missing. +These entry types are similar to those adapted by Brian Reid +from the classification scheme of van~Leunen~\cite{van-leunen} +for use in the {\em Scribe\/} system. +The meanings of the individual fields are explained in the next section. +Some nonstandard bibliography styles may ignore some optional fields +in creating the reference. +Remember that, when used in the \hbox{\tt bib} +file, the entry-type name is preceded by an \hbox{\tt @} character. + +\begin{description} +\sloppy + +\item[article\hfill] An article from a journal or magazine. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt journal}, +\hbox{\tt year}. +Optional fields: \hbox{\tt volume}, \hbox{\tt number}, +\hbox{\tt pages}, \hbox{\tt month}, \hbox{\tt note}. + +\item[book\hfill] A book with an explicit publisher. +Required fields: \hbox{\tt author} or \hbox{\tt editor}, +\hbox{\tt title}, \hbox{\tt publisher}, \hbox{\tt year}. +Optional fields: \hbox{\tt volume} or \hbox{\tt number}, \hbox{\tt series}, +\hbox{\tt address}, \hbox{\tt edition}, \hbox{\tt month}, +\hbox{\tt note}. + +\item[booklet\hfill] A work that is printed and bound, +but without a named publisher or sponsoring institution. +Required field: \hbox{\tt title}. +Optional fields: \hbox{\tt author}, \hbox{\tt howpublished}, +\hbox{\tt address}, \hbox{\tt month}, \hbox{\tt year}, \hbox{\tt note}. + +\item[conference\hfill] The same as {\tt INPROCEEDINGS}, +included for {\em Scribe\/} compatibility. + +\item[inbook\hfill] A part of a book, +which may be a chapter (or section or whatever) and/or a range of pages. +Required fields: \hbox{\tt author} or \hbox{\tt editor}, \hbox{\tt title}, +\hbox{\tt chapter} and/or \hbox{\tt pages}, \hbox{\tt publisher}, +\hbox{\tt year}. +Optional fields: \hbox{\tt volume} or \hbox{\tt number}, \hbox{\tt series}, +\hbox{\tt type}, \hbox{\tt address}, +\hbox{\tt edition}, \hbox{\tt month}, \hbox{\tt note}. + +\item[incollection\hfill] A part of a book having its own title. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt booktitle}, +\hbox{\tt publisher}, \hbox{\tt year}. +Optional fields: \hbox{\tt editor}, \hbox{\tt volume} or \hbox{\tt number}, +\hbox{\tt series}, \hbox{\tt type}, \hbox{\tt chapter}, \hbox{\tt pages}, +\hbox{\tt address}, \hbox{\tt edition}, \hbox{\tt month}, \hbox{\tt note}. + +\item[inproceedings\hfill] An article in a conference proceedings. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt booktitle}, +\hbox{\tt year}. +Optional fields: \hbox{\tt editor}, \hbox{\tt volume} or \hbox{\tt number}, +\hbox{\tt series}, \hbox{\tt pages}, \hbox{\tt address}, \hbox{\tt month}, +\hbox{\tt organization}, \hbox{\tt publisher}, \hbox{\tt note}. + +\item[manual\hfill] Technical documentation. Required field: \hbox{\tt title}. +Optional fields: \hbox{\tt author}, \hbox{\tt organization}, +\hbox{\tt address}, \hbox{\tt edition}, \hbox{\tt month}, \hbox{\tt year}, +\hbox{\tt note}. + +\item[mastersthesis\hfill] A Master's thesis. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt school}, +\hbox{\tt year}. +Optional fields: \hbox{\tt type}, \hbox{\tt address}, \hbox{\tt month}, +\hbox{\tt note}. + +\item[misc\hfill] Use this type when nothing else fits. +Required fields: none. +Optional fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt howpublished}, +\hbox{\tt month}, \hbox{\tt year}, \hbox{\tt note}. + +\item[phdthesis\hfill] A PhD thesis. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt school}, +\hbox{\tt year}. +Optional fields: \hbox{\tt type}, \hbox{\tt address}, \hbox{\tt month}, +\hbox{\tt note}. + +\item[proceedings\hfill] The proceedings of a conference. +Required fields: \hbox{\tt title}, \hbox{\tt year}. +Optional fields: \hbox{\tt editor}, \hbox{\tt volume} or \hbox{\tt number}, +\hbox{\tt series}, \hbox{\tt address}, \hbox{\tt month}, +\hbox{\tt organization}, \hbox{\tt publisher}, \hbox{\tt note}. + + +\item[techreport\hfill] A report published by a school or other institution, +usually numbered within a series. +Required fields: \hbox{\tt author}, +\hbox{\tt title}, \hbox{\tt institution}, \hbox{\tt year}. +Optional fields: \hbox{\tt type}, \hbox{\tt number}, \hbox{\tt address}, +\hbox{\tt month}, \hbox{\tt note}. + +\item[unpublished\hfill] A document having an author and title, +but not formally published. +Required fields: \hbox{\tt author}, \hbox{\tt title}, \hbox{\tt note}. +Optional fields: \hbox{\tt month}, \hbox{\tt year}. + +\end{description} + +In addition to the fields listed above, each entry type also has an +optional \hbox{\tt key} field, used in some styles +for alphabetizing, for cross referencing, +or for forming a \hbox{\verb|\bibitem|} label. +You should include a \hbox{\tt key} field for any entry whose +``author'' information is missing; +the ``author'' information is usually the \hbox{\tt author} field, +but for some entry types it can be the \hbox{\tt editor} +or even the \hbox{\tt organization} field +(Section~\ref{odds-and-ends} describes this in more detail). +Do not confuse the \hbox{\tt key} field with the key that appears in the +\hbox{\verb|\cite|} command and at the beginning of the database entry; +this field is named ``key'' only for compatibility with {\it Scribe}. + + +\subsection{Fields} + +Below is a description of all fields +recognized by the standard bibliography styles. +An entry can also contain other fields, which are ignored by those styles. +\begin{description} + +\item[address\hfill] +Usually the address of the \hbox{\tt publisher} or other type +of institution. +For major publishing houses, +van~Leunen recommends omitting the information entirely. +For small publishers, on the other hand, you can help the +reader by giving the complete address. + +\item[annote\hfill] +An annotation. +It is not used by the standard bibliography styles, +but may be used by others that produce an annotated bibliography. + +\item[author\hfill] +The name(s) of the author(s), +in the format described in the \LaTeX\ book. + +\item[booktitle\hfill] +Title of a book, part of which is being cited. +See the \LaTeX\ book for how to type titles. +For book entries, use the \hbox{\tt title} field instead. + +\item[chapter\hfill] +A chapter (or section or whatever) number. + +\item[crossref\hfill] +The database key of the entry being cross referenced. + +\item[edition\hfill] +The edition of a book---for example, ``Second''$\!$. +This should be an ordinal, and +should have the first letter capitalized, as shown here; +the standard styles convert to lower case when necessary. + +\item[editor\hfill] +Name(s) of editor(s), typed as indicated in the \LaTeX\ book. +If there is also an \hbox{\tt author} field, then +the \hbox{\tt editor} field gives the editor of the book or collection +in which the reference appears. + +\item[howpublished\hfill] +How something strange has been published. +The first word should be capitalized. + +\item[institution\hfill] +The sponsoring institution of a technical report. + +\item[journal\hfill] +A journal name. +Abbreviations are provided for many journals; see the {\it Local Guide}. + +\item[key\hfill] +Used for alphabetizing, cross referencing, and creating a label when +the ``author'' information +(described in Section~\ref{odds-and-ends}) is missing. +This field should not be confused with the key that appears in the +\hbox{\verb|\cite|} command and at the beginning of the database entry. + +\item[month\hfill] +The month in which the work was +published or, for an unpublished work, in which it was written. +You should use the standard three-letter abbreviation, +as described in Appendix B.1.3 of the \LaTeX\ book. + +\item[note\hfill] +Any additional information that can help the reader. +The first word should be capitalized. + +\item[number\hfill] +The number of a journal, magazine, technical report, +or of a work in a series. +An issue of a journal or magazine is usually +identified by its volume and number; +the organization that issues a +technical report usually gives it a number; +and sometimes books are given numbers in a named series. + +\item[organization\hfill] +The organization that sponsors a conference or that publishes a \hbox{manual}. + +\item[pages\hfill] +One or more page numbers or range of numbers, +such as \hbox{\tt 42--111} or \hbox{\tt 7,41,73--97} or \hbox{\tt 43+} +(the `{\tt +}' in this last example indicates pages following +that don't form a simple range). +To make it easier to maintain {\em Scribe\/}-compatible databases, +the standard styles convert a single dash (as in \hbox{\tt 7-33}) +to the double dash used in \TeX\ to denote number ranges +(as in \hbox{\tt 7--33}). + +\item[publisher\hfill] +The publisher's name. + +\item[school\hfill] +The name of the school where a thesis was written. + +\item[series\hfill] +The name of a series or set of books. +When citing an entire book, the the \hbox{\tt title} field +gives its title and an optional \hbox{\tt series} field gives the +name of a series or multi-volume set +in which the book is published. + +\item[title\hfill] +The work's title, typed as explained in the \LaTeX\ book. + +\item[type\hfill] +The type of a technical report---for example, +``Research Note''$\!$. + +\item[volume\hfill] +The volume of a journal or multivolume book. + +\item[year\hfill] +The year of publication or, for +an unpublished work, the year it was written. +Generally it should consist of four numerals, such as {\tt 1984}, +although the standard styles can handle any {\tt year} whose +last four nonpunctuation characters are numerals, +such as `\hbox{(about 1984)}'$\!$. + +\end{description} + + +\section{Helpful Hints} +\label{odds-and-ends} + +This section gives some random tips +that aren't documented elsewhere, +at least not in this detail. +They are, roughly, in order +of least esoteric to most. +First, however, a brief spiel. + +I understand that there's often little choice in choosing +a bibliography style---journal~$X$ says you must use style~$Y$ +and that's that. +If you have a choice, however, I strongly recommend that you +choose something like the {\tt plain} standard style. +Such a style, van~Leunen~\cite{van-leunen} argues convincingly, +encourages better writing than the alternatives---% +more concrete, more vivid. + +{\em The Chicago Manual of Style\/}~\cite{chicago}, +on the other hand, +espouse the author-date system, +in which the citation might appear in the text as `(Jones, 1986)'$\!$. +I argue that this system, +besides cluttering up the +text with information that may or may not be relevant, +encourages the passive voice and vague writing. +Furthermore the strongest arguments for +using the author-date system---like ``it's the most practical''---% +fall flat on their face with the advent +of computer-typesetting technology. +For instance the {\em Chicago Manual\/} contains, +right in the middle of page~401, this anachronism: +``The chief disadvantage of [a style like {\tt plain}] is that additions +or deletions cannot be made after the manuscript is typed without changing +numbers in both text references and list.'' +\LaTeX, obviously, sidesteps the disadvantage. + +Finally, the logical deficiencies of the author-date style +are quite evident once you've written a program to implement it. +For example, in a large bibliography, +using the standard alphabetizing scheme, +the entry for `(Aho et~al., 1983b)' +might be half a page later than the one for `(Aho et~al., 1983a)'$\!$. +Fixing this problem results in even worse ones. +What a mess. +(I have, unfortunately, programmed such a style, +and if you're saddled with an unenlightened publisher +or if you don't buy my propaganda, +it's available from the Rochester style collection.) + +Ok, so the spiel wasn't very brief; +but it made me feel better, +and now my blood pressure is back to normal. +Here are the tips for using \BibTeX\ +with the standard styles +(although many of them hold for nonstandard styles, too). +\begin{enumerate} + +\item +With \BibTeX's style-designing language +you can program general database manipulations, +in addition to bibliography styles. +For example it's a fairly easy task for someone familiar with the language +to produce a database-key/author index of all the entries in a database. +Consult the {\em Local Guide\/} to see +what tools are available on your system. + +\item +The standard style's thirteen entry types +do reasonably well at formatting most entries, +but no scheme with just thirteen formats +can do everything perfectly. +Thus, you should feel free to be creative +in how you use these entry types +(but if you have to be too creative, +there's a good chance you're using the wrong entry type). + +\item +Don't take the field names too seriously. +Sometimes, for instance, you might have to include +the publisher's address along with the publisher's name +in the \hbox{\tt publisher} field, +rather than putting it in the \hbox{\tt address} field. +Or sometimes, difficult entries work best when you +make judicious use of the {\tt note} field. + +\item +Don't take the warning messages too seriously. +Sometimes, for instance, the year appears in the title, +as in {\em The 1966 World Gnus Almanac}. +In this case it's best to omit the {\tt year} field +and to ignore \BibTeX's warning message. + +\item +If you have too many names to list in an +\hbox{\tt author} or \hbox{\tt editor} field, +you can end the list with ``and others''; +the standard styles appropriately append an ``et~al.'' + +\item +In general, if you want to keep \BibTeX\ from changing +something to lower case, you enclose it in braces. +You might not get the effect you want, however, +if the very first character after the left brace is a backslash. +The ``special characters'' item later in this section explains. + +\item +For {\em Scribe\/} compatibility, the database files +allow an \hbox{\tt @COMMENT} command; it's not really +needed because \BibTeX\ allows in the database files +any comment that's not within an entry. +If you want to comment out an entry, +simply remove the `{\tt @}' character preceding the entry type. + +\item +The standard styles have journal abbreviations that are +computer-science oriented; +these are in the style files primarily for the example. +If you have a different set of journal abbreviations, +it's sensible to put them in \hbox{\tt @STRING} commands +in their own database file and to list this database file +as an argument to \LaTeX's \hbox{\verb|\bibliography|} command +(but you should list this argument before the ones that +specify real database entries). + +\item +It's best to use the three-letter abbreviations for the month, +rather than spelling out the month yourself. +This lets the bibliography style be consistent. +And if you want to include information for the day of the month, +the {\tt month} field is usually the best place. +For example +\begin{verbatim} + month = jul # "~4," +\end{verbatim} +will probably produce just what you want. + +\item +If you're using the \hbox{\tt unsrt} style +(references are listed in order of citation) +along with the \hbox{\verb|\nocite{*}|} feature +(all entries in the database are included), +the placement of the \hbox{\verb|\nocite{*}|} command +within your document file will determine the reference order. +According to the rule given in Section~\ref{features}: +If the command is placed at the beginning of the document, +the entries will be listed in exactly the order +they occur in the database; +if it's placed at the end, +the entries that you explicitly +\hbox{\verb|\cite|} or \hbox{\verb|\nocite|} +will occur in citation order, +and the remaining database entries will be in database order. + +\item +For theses, van Leunen recommends not giving +the school's department after the name of the degree, +since schools, not departments, issue degrees. +If you really think that giving the department information +will help the reader find the thesis, +put that information in the \hbox{\tt address} field. + +\item +The \hbox{\tt MASTERSTHESIS} and \hbox{\tt PHDTHESIS} entry types +are so named for {\em Scribe\/} compatibility; +\hbox{\tt MINORTHESIS} and \hbox{\tt MAJORTHESIS} +probably would have been better names. +Keep this in mind when trying to classify +a non-U.S.\ thesis. + +\item +Here's yet another suggestion for what to do when an author's +name appears slightly differently in two publications. +Suppose, for example, two journals articles use these fields. +\begin{verbatim} + author = "Donald E. Knuth" + . . . + author = "D. E. Knuth" +\end{verbatim} +There are two possibilities. +You could (1)~simply leave them as is, +or (2)~assuming you know for sure that +these authors are one and the same person, +you could list both in the form that the author prefers +(say, `Donald~E.\ Knuth'). +In the first case, the entries might be alphabetized incorrectly, +and in the second, the slightly altered name might +foul up somebody's electronic library search. +But there's a third possibility, which is the one I prefer. +You could convert the second journal's field to +\begin{verbatim} + author = "D[onald] E. Knuth" +\end{verbatim} +This avoids the pitfalls of the previous two solutions, +since \BibTeX\ alphabetizes this as if the brackets weren't there, +and since the brackets clue the reader in that a full first name +was missing from the original. +Of course it introduces another pitfall---`D[onald]~E.\ Knuth' looks ugly---% +but in this case I think the increase in accuracy outweighs +the loss in aesthetics. + +\item +\LaTeX's comment character `{\tt\%}' is not a comment character +in the database files. + +\item +Here's a more complete description of +the ``author'' information referred to in previous sections. +For most entry types the ``author'' information +is simply the \hbox{\tt author} field. +However: +For the \hbox{\tt BOOK} and \hbox{\tt INBOOK} entry types +it's the \hbox{\tt author} field, but if there's no author +then it's the \hbox{\tt editor} field; +for the \hbox{\tt MANUAL} entry type +it's the \hbox{\tt author} field, but if there's no author +then it's the \hbox{\tt organization} field; +and for the \hbox{\tt PROCEEDINGS} entry type +it's the \hbox{\tt editor} field, but if there's no editor +then it's the \hbox{\tt organization} field. + +\item +When creating a label, +the \hbox{\tt alpha} style uses the ``author'' information described above, +but with a slight change---% +for the \hbox{\tt MANUAL} and \hbox{\tt PROCEEDINGS} entry types, +the {\tt key} field takes precedence over the \hbox{\tt organization} field. +Here's a situation where this is useful. +\begin{verbatim} + organization = "The Association for Computing Machinery", + key = "ACM" +\end{verbatim} +Without the {\tt key} field, the \hbox{\tt alpha} style +would make a label from the first three letters of information +in the \hbox{\tt organization} field; +\hbox{\tt alpha} knows to strip off the `\hbox{\tt The }'$\!$, +but it would still form a label like `\hbox{[Ass86]}'$\!$, +which, however intriguing, is uninformative. +Including the {\tt key} field, as above, +would yield the better label `\hbox{[ACM86]}'$\!$. + +You won't always need the {\tt key} field to override the +\hbox{\tt organization}, though: +With +\begin{verbatim} + organization = "Unilogic, Ltd.", +\end{verbatim} +for instance, the \hbox{\tt alpha} style would +form the perfectly reasonable label `\hbox{[Uni86]}'$\!$. + +\item +Section~\ref{features} discusses accented characters. +To \BibTeX, an accented character is really a special case +of a ``special character''$\!$, +which consists of everything from a left brace at the top-most level, +immediately followed by a backslash, +up through the matching right brace. +For example in the field +\begin{verbatim} + author = "\AA{ke} {Jos{\'{e}} {\'{E}douard} G{\"o}del" +\end{verbatim} +there are just two special characters, +`\hbox{\verb|{\'{E}douard}|}' and `\hbox{\verb|{\"o}|}' +(the same would be true if the pair of double quotes +delimiting the field were braces instead). +In general, \BibTeX\ will not do any processing +of a \TeX\ or \LaTeX\ control sequence inside a special character, +but it {\em will\/} process other characters. +Thus a style that converts all titles to lower case +would convert +\begin{verbatim} + The {\TeX BOOK\NOOP} Experience +\end{verbatim} +to +\begin{verbatim} + The {\TeX book\NOOP} experience +\end{verbatim} +(the `{\tt The}' is still capitalized +because it's the first word of the title). + +This special-character scheme is useful for handling accented characters, +for getting \BibTeX's alphabetizing to do what you want, +and, since \BibTeX\ counts an entire special character as just one letter, +for stuffing extra characters inside labels. +The file \hbox{\tt XAMPL.BIB} distributed with \BibTeX\ +gives examples of all three uses. + +\item +This final item of the section describes \BibTeX's names +(which appear in the \hbox{\tt author} or \hbox{\tt editor} field) +in slightly more detail than what +appears in Appendix~B of the \LaTeX\ book. +In what follows, a ``name'' corresponds to a person. +(Recall that you separate multiple names in a single field +with the word ``and''$\!$, surrounded by spaces, +and not enclosed in braces. +This item concerns itself with the structure of a single name.) + +Each name consists of four parts: First, von, Last, and~Jr; +each part consists of a (possibly empty) list of name-tokens. +The Last part will be nonempty if any part is, +so if there's just one token, it's always a Last token. + +Recall that Per Brinch~Hansen's name should be typed +\begin{verbatim} + "Brinch Hansen, Per" +\end{verbatim} +The First part of his name has the single token ``Per''; +the Last part has two tokens, ``Brinch'' and ``Hansen''; +and the von and Jr parts are empty. +If you had typed +\begin{verbatim} + "Per Brinch Hansen" +\end{verbatim} +instead, \BibTeX\ would (erroneously) think ``Brinch'' were a First-part token, +just as ``Paul'' is a First-part token in ``John~Paul Jones''$\!$, +so this erroneous form would have two First tokens and one Last token. + +Here's another example: +\begin{verbatim} + "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin" +\end{verbatim} +This name has four tokens in the First part, two in the von, and +two in the Last. +Here \BibTeX\ knows where one part ends and the other begins because +the tokens in the von part begin with lower-case letters. + +In general, it's a von token if the first letter at brace-level~0 +is in lower case. +Since technically everything +in a ``special character'' is at brace-level~0, +you can trick \BibTeX\ into thinking that +a token is or is not a von token by prepending a dummy +special character whose first letter past the \TeX\ control sequence +is in the desired case, upper or lower. + +To summarize, \BibTeX\ allows three possible forms for the name: +\begin{verbatim} + "First von Last" + "von Last, First" + "von Last, Jr, First" +\end{verbatim} +You may almost always use the first form; +you shouldn't if either there's a Jr part, +or the Last part has multiple tokens but there's no von part. + +\end{enumerate} + +\bibliography{btxdoc} +\bibliographystyle{plain} +\end{document} diff --git a/Master/texmf-dist/doc/bibtex/base/btxhak.pdf b/Master/texmf-dist/doc/bibtex/base/btxhak.pdf new file mode 100644 index 00000000000..efe43d8305b --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxhak.pdf @@ -0,0 +1,1465 @@ +%PDF-1.2 +7 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +10 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F1 +/FontDescriptor 9 0 R +/BaseFont/MAFYXH+CMR17 +/FirstChar 33 +/LastChar 196 +/Widths[249.6 458.6 772.1 458.6 772.1 719.8 249.6 354.1 354.1 458.6 719.8 249.6 301.9 +249.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.6 249.6 +249.6 719.8 432.5 432.5 719.8 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 +471.5 719.4 576 850 693.3 719.8 628.2 719.8 680.5 510.9 667.6 693.3 693.3 954.5 693.3 +693.3 563.1 249.6 458.6 249.6 458.6 249.6 249.6 458.6 510.9 406.4 510.9 406.4 275.8 +458.6 510.9 249.6 275.8 484.7 249.6 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 +510.9 484.7 667.6 484.7 484.7 406.4 458.6 917.2 458.6 458.6 458.6 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 576 772.1 719.8 641.1 615.3 693.3 +667.6 719.8 667.6 719.8 0 0 667.6 525.4 499.3 499.3 748.9 748.9 249.6 275.8 458.6 +458.6 458.6 458.6 458.6 693.3 406.4 458.6 667.6 719.8 458.6 837.2 941.7 719.8 249.6 +458.6] +>> +endobj +13 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F2 +/FontDescriptor 12 0 R +/BaseFont/WFNAAR+CMR12 +/FirstChar 33 +/LastChar 196 +/Widths[272 489.6 816 489.6 816 761.6 272 380.8 380.8 489.6 761.6 272 326.4 272 489.6 +489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 272 761.6 462.4 +462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.3 734 353.2 503 761.2 611.8 897.2 +734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 489.6 272 489.6 +272 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 +544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8 435.2 489.6 979.2 489.6 489.6 +489.6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611.8 816 +761.6 679.6 652.8 734 707.2 761.6 707.2 761.6 0 0 707.2 571.2 544 544 816 816 272 +299.2 489.6 489.6 489.6 489.6 489.6 734 435.2 489.6 707.2 761.6 489.6 883.8 992.6 +761.6 272 489.6] +>> +endobj +16 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F3 +/FontDescriptor 15 0 R +/BaseFont/GWYMTO+CMBX12 +/FirstChar 33 +/LastChar 196 +/Widths[342.6 581 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 +562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 342.6 +875 531.2 531.2 875 849.5 799.8 812.5 862.3 738.4 707.2 884.3 879.6 419 581 880.8 +675.9 1067.1 879.6 844.9 768.5 844.9 839.1 625 782.4 864.6 849.5 1162 849.5 849.5 +687.5 312.5 581 312.5 562.5 312.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 +343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.8 437.5 625 593.7 812.5 593.7 +593.7 500 562.5 1125 562.5 562.5 562.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 675.9 937.5 875 787 750 879.6 812.5 875 812.5 875 0 0 812.5 +656.2 625 625 937.5 937.5 312.5 343.7 562.5 562.5 562.5 562.5 562.5 849.5 500 574.1 +812.5 875 562.5 1018.5 1143.5 875 312.5 562.5] +>> +endobj +19 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F4 +/FontDescriptor 18 0 R +/BaseFont/YKJLMF+CMR10 +/FirstChar 33 +/LastChar 196 +/Widths[277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 +500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 +750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 +680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 +277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 +500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4 500 1000 500 +500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 625 833.3 +777.8 694.4 666.7 750 722.2 777.8 722.2 777.8 0 0 722.2 583.3 555.6 555.6 833.3 833.3 +277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 +277.8 500] +>> +endobj +20 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +23 0 obj +<< +/Encoding 20 0 R +/Type/Font +/Subtype/Type1 +/Name/F5 +/FontDescriptor 22 0 R +/BaseFont/WWJXCP+CMCSC10 +/FirstChar 33 +/LastChar 196 +/Widths[319.4 552.8 902.8 552.8 902.8 844.4 319.4 436.1 436.1 552.8 844.4 319.4 377.8 +319.4 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 552.8 319.4 319.4 +844.4 844.4 844.4 523.6 844.4 813.9 770.8 786.1 829.2 741.7 712.5 851.4 813.9 405.6 +566.7 843 683.3 988.9 813.9 844.4 741.7 844.4 800 611.1 786.1 813.9 813.9 1105.5 +813.9 813.9 669.4 319.4 552.8 319.4 552.8 319.4 319.4 613.3 580 591.1 624.4 557.8 +535.6 641.1 613.3 302.2 424.4 635.6 513.3 746.7 613.3 635.6 557.8 635.6 602.2 457.8 +591.1 613.3 613.3 835.6 613.3 613.3 502.2 552.8 1105.5 552.8 552.8 552.8 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 683.3 902.8 844.4 755.5 +727.8 813.9 786.1 844.4 786.1 844.4 0 0 786.1 552.8 552.8 319.4 319.4 523.6 302.2 +424.4 552.8 552.8 552.8 552.8 552.8 813.9 494.4 915.6 735.6 824.4 635.6 975 1091.7 +844.4 319.4 552.8] +>> +endobj +24 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/visiblespace/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde/dieresis/visiblespace +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/arrowup/arrowdown/quotesingle/exclamdown/questiondown/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/visiblespace/dieresis] +>> +endobj +27 0 obj +<< +/Encoding 24 0 R +/Type/Font +/Subtype/Type1 +/Name/F6 +/FontDescriptor 26 0 R +/BaseFont/GPPMNM+CMTT10 +/FirstChar 33 +/LastChar 196 +/Widths[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 525 525 525 525 525 525 525 525 525 525 0 0 525 +525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 +525 525] +>> +endobj +28 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/sterling/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis] +>> +endobj +31 0 obj +<< +/Encoding 28 0 R +/Type/Font +/Subtype/Type1 +/Name/F7 +/FontDescriptor 30 0 R +/BaseFont/VLTKLU+CMTI10 +/FirstChar 33 +/LastChar 196 +/Widths[306.7 514.4 817.8 769.1 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 +306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 +306.7 766.7 511.1 511.1 766.7 743.3 703.9 715.6 755 678.3 652.8 773.6 743.3 385.6 +525 768.9 627.2 896.7 743.3 766.7 678.3 766.7 729.4 562.2 715.6 743.3 743.3 998.9 +743.3 743.3 613.3 306.7 514.4 306.7 511.1 306.7 306.7 511.1 460 460 511.1 460 306.7 +460 511.1 306.7 306.7 460 255.6 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 +460 664.4 463.9 485.6 408.9 511.1 1022.2 511.1 511.1 511.1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 627.2 817.8 766.7 692.2 664.4 743.3 715.6 +766.7 715.6 766.7 0 0 715.6 613.3 562.2 587.8 881.7 894.4 306.7 332.2 511.1 511.1 +511.1 511.1 511.1 831.3 460 536.7 715.6 715.6 511.1 882.8 985 766.7 255.6 511.1] +>> +endobj +33 0 obj +<< +/Filter[/FlateDecode] +/Length 2288 +>> +stream +xڭX[ۺ~02UDQԥ@NpNM +$~ijnvϋXV柝k`,loþvKp&\*rn |"RUYnzXg}r8ubۙ%X*͢~Uv~tVxhWdޮQV$٢&p")f>˪h.Zz8D=Co$zlk6yos[mxeEH[!8v־N2A6 >pa.0Y +ڹq6JQ 0D;,D#*@`˂;Z4Hځ};^#ĝu{8֮wp"9ukofħ6[Q@` 3 +:ĔL9:`͵G:Zb_N3`ᖇ%e2n@.8sM䠵a \vp%`#nKJ_5d,'R[LG&.@tBFF[Jw0 BtmAĜk%?/S@*]_ܤqZɬwYB tf]A.ߏ%?Uob4B>Ϻr}9fe!<QױeHqL0T=los wv?t&".fRJq^:G(t9 +3 +7v/ +lWssFr={WRd2kk*Nz}B +o0 ,AܠB@y䦖gX18|>vhPaFrQ(eK% +endstream +endobj +35 0 obj +<< +/F1 10 0 R +/F2 13 0 R +/F3 16 0 R +/F4 19 0 R +/F5 23 0 R +/F6 27 0 R +/F7 31 0 R +>> +endobj +6 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 35 0 R +>> +endobj +40 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F8 +/FontDescriptor 39 0 R +/BaseFont/BRQZFJ+CMR7 +/FirstChar 33 +/LastChar 196 +/Widths[323.4 569.4 938.5 569.4 938.5 877 323.4 446.4 446.4 569.4 877 323.4 384.9 +323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 +323.4 877 538.7 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 +874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 +692.5 323.4 569.4 323.4 569.4 323.4 323.4 569.4 631 507.9 631 507.9 354.2 569.4 631 +323.4 354.2 600.2 323.4 938.5 631 569.4 631 600.2 446.4 452.6 446.4 631 600.2 815.5 +600.2 600.2 507.9 569.4 1138.9 569.4 569.4 569.4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 706.4 938.5 877 781.8 754 843.3 815.5 877 815.5 +877 0 0 815.5 677.6 646.8 646.8 970.2 970.2 323.4 354.2 569.4 569.4 569.4 569.4 569.4 +843.3 507.9 569.4 815.5 877 569.4 1013.9 1136.9 877 323.4 569.4] +>> +endobj +41 0 obj +<< +/Filter[/FlateDecode] +/Length 2819 +>> +stream +xڭYܶba#8Uć^N"m +[zT`'
liT8Ti-ͱ-/+c[vku]=TE}싣 +N.?o 1ؙ3eA}$gY1a*-T 03vjpGPQ5>481t@ٵ~<UŽہ2AkLk۬*[N8c$T9%!6(K¼<Imw2b
g<Ӵ|!%/dJ>̯u#s=Ӗq
4ʂfq@ӧ0i-p=%6
PߐݚۥFWΚCW65pepe,Hny髢s1t<7F87lk_UUb]W\|-T}M|w'VhSH1}$W' *m&d
"nfX<!h7և+ݗ<IK5K{_/ qf*'Ro%͇N9OfsY$w{BM`(R_69-"/-.7T
4݄C5sl
+RA&TWe$$+ )/1w4{N3;'SsSKk: RekvEQ:w~E(Ӷ$^ŸDgc-X
["Y/U*|f2taey^}:w}Yu;*45ou-Q(q彿]Χ#iiN؟OytESK }G 6L[6@eJattdgCǟ^W8o!0US/ᄑwˍt<O0b*o3WC487!tVM)cEE +l2} >^k" +;V-Jȋ871.CZ]EDc(WCÍӵfC3O07 +k=eLG#Ȥ/U(XlG쇚Pv +Ek"Lje (8ٸj<QQwv05 +U-LG2wX;Z_dAkFXku +A@)Pb("_2$$_zS1Zoe `ŰkeՒ,<-a7rGlIy)7s\T*\ +cŚ%
|:?zccDpM&F3&buAr<>!#>yHRtcHN=YBԴIIQJ\v~Wvm>B g^ܕL-ŝuIu1ء6h*0%;8T'&$-769Rڊުvzx`n +endstream +endobj +42 0 obj +<< +/F4 19 0 R +/F5 23 0 R +/F7 31 0 R +/F6 27 0 R +/F8 40 0 R +>> +endobj +37 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 42 0 R +>> +endobj +47 0 obj +<< +/Encoding 7 0 R +/Type/Font +/Subtype/Type1 +/Name/F9 +/FontDescriptor 46 0 R +/BaseFont/NFTYQH+CMBX10 +/FirstChar 33 +/LastChar 196 +/Widths[350 602.8 958.3 575 958.3 894.4 319.4 447.2 447.2 575 894.4 319.4 383.3 319.4 +575 575 575 575 575 575 575 575 575 575 575 319.4 319.4 350 894.4 543.1 543.1 894.4 +869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.4 901.4 691.7 1091.7 900 +863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.4 602.8 +319.4 575 319.4 319.4 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.4 351.4 606.9 +319.4 958.3 638.9 575 638.9 606.9 473.6 453.6 447.2 638.9 606.9 830.6 606.9 606.9 +511.1 575 1150 575 575 575 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 691.7 958.3 894.4 805.6 766.7 900 830.6 894.4 830.6 894.4 0 0 830.6 670.8 +638.9 638.9 958.3 958.3 319.4 351.4 575 575 575 575 575 869.4 511.1 597.2 830.6 894.4 +575 1041.7 1169.4 894.4 319.4 575] +>> +endobj +48 0 obj +<< +/Filter[/FlateDecode] +/Length 2493 +>> +stream +xڝYK۸W萪X +g&8PH۵{hEyGۘg˧3bB'v :yca7F]gj1G'a3^6?
5P(`lyc tVF#~ID|ʲ.M^Y!6ñ4Cg+kq+-E~!Y9<Qk"mAl1՞,UN_'RW)\ +mi>c^VXM0VT +XК)volЗmcoov%lUM*B|=~ɻ}no?֑#ΟmJ!y2%p +LbO@Уf[Gӝj]Я8͛_+\<p5+vsSou6"pw~{Ir5 dYSw +TC +ZK|Gy,*i'Hķ} -@dZCV =a,k4aͮCƹvg«虊ș}LPSoRL¬6>Wo\` +N&ǩׄ8wzn{\W_xn;eAuc@;T<NUp213M?+x}Kŋ)\ +#`Ϋen6A(Yw`!@ɋ٭9<sMS7Y!d;:UGʚr@/oOV"(/d\~lr ?H/&ٖ/(y15H15)t(DXf+v~d8-aJVa.SF*ߌYҮ8A_g13ԚT.z2)[ +ȑԕAhHm!գdkEl$Kh([L +屢d#jjGXݶţ6 )0#w@|SPdL562[gc)qF)aaH'9 +\ e:)TO%?a+,iNd`uJڇ/~_raTϹT5=(e)ӥ+$4IaHNpx<]ϞaljOohmϰ4{d͑JOֺ +(d ld(؝LHʟ7,z@s^U:b*ʓ&7"XaJEeO**flR,EAVYdelȗʒUqeJAS1՛Fy9D6ԙqt/JaBt~fwG:ۄ?" Y~l?Q +endstream +endobj +49 0 obj +<< +/F4 19 0 R +/F5 23 0 R +/F9 47 0 R +/F6 27 0 R +/F3 16 0 R +>> +endobj +44 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 49 0 R +>> +endobj +52 0 obj +<< +/Filter[/FlateDecode] +/Length 2306 +>> +stream +xڵXK8aFCL:A/ ]`ڦmRVtO=H;aO"TXH$Yyx](2[LĹ^rD;5SY\/W2#"j#c+n`<"ZǠ;',E
+*wQ]xT_ųV(b%ҸL>D~rΜLAo'`w4mY /3|0sQ 10# 7mmH CbZgcW_ syjÑYU`My6J1`.H߷sNPSjl, +d̦=,59n&'AJiq6>R&PozW(폂@hh<4Mh;#-.Wq#oơ=ښ~Z;5<Tk +f{O/uT.i[f-?%Z"h3rx\ms=SADn/"+i,Ex=o\Id '/kCA ] tE/[n Z_)80'|h,/PRla+Eb\qCB vַWڛ+D@h)|0gS8lw[Eq&#-/V
7Nj״_S4J8+B<9F T"$0,x V8N<jp:G*1Cg-6 ˅q9=|__*W.vGw,а9XpOKbpg)@\ +\g@ S6ͦ_* +WdGH(h~C؎E hP8 aQHQ~oǮ +:%]s{BSrY9]'AeSE/*PٚGw{θ<xD^/|IbJ:SRbk&Hnz#ae*t,r߬U9`:ցɄ!x9l~ #bVOe} +u\:x?3x4,k˛-H4˪p,$Y3X|exuL{+ҷ8oqi;^ys
rS{ٞO5P<N%Stc/ЎNeԛ\K2z&GGݩK'. +T}bqrB}Z\p4'q2C?}%/dXXAI#o^v +*'uH-gC;VE~Q +_uk?qj"Z+| +M_6e[p ١
7rj._U_ +uzU>{{~{{OZ(F9xG!}rU5[| YŵBgɹC3siUsÉpi̩˨%[_7H +N(^_AOXNp&<. +bc[zXQ:x9JXIJ$6oܳF{&Ot +jHKB{$+ '{nC ڤ3ShG vK4xH{ɹ04twIJLFTWxTHRbVQd9qw8ہ՞2o-X),Z@
XkBTzbwv2PtbnVTpbC`6[g9HQ۸س<;=Xp:,z +Xy\s*Vz9qqzSI^#y+o0onpaZP'O`Td)}oƚ$yƑW7,9BUbqj5T)*O&GC%W0znsͥCfRrԱ"ȷ KR# +endstream +endobj +53 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F3 16 0 R +/F5 23 0 R +>> +endobj +51 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 53 0 R +>> +endobj +56 0 obj +<< +/Type/Encoding +/Differences[0/minus/periodcentered/multiply/asteriskmath/divide/diamondmath/plusminus/minusplus/circleplus/circleminus/circlemultiply/circledivide/circledot/circlecopyrt/openbullet/bullet/equivasymptotic/equivalence/reflexsubset/reflexsuperset/lessequal/greaterequal/precedesequal/followsequal/similar/approxequal/propersubset/propersuperset/lessmuch/greatermuch/precedes/follows/arrowleft/arrowright/arrowup/arrowdown/arrowboth/arrownortheast/arrowsoutheast/similarequal/arrowdblleft/arrowdblright/arrowdblup/arrowdbldown/arrowdblboth/arrownorthwest/arrowsouthwest/proportional/prime/infinity/element/owner/triangle/triangleinv/negationslash/mapsto/universal/existential/logicalnot/emptyset/Rfractur/Ifractur/latticetop/perpendicular/aleph/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/union/intersection/unionmulti/logicaland/logicalor/turnstileleft/turnstileright/floorleft/floorright/ceilingleft/ceilingright/braceleft/braceright/angbracketleft/angbracketright/bar/bardbl/arrowbothv/arrowdblbothv/backslash/wreathproduct/radical/coproduct/nabla/integral/unionsq/intersectionsq/subsetsqequal/supersetsqequal/section/dagger/daggerdbl/paragraph/club/diamond/heart/spade/arrowleft +161/minus/periodcentered/multiply/asteriskmath/divide/diamondmath/plusminus/minusplus/circleplus/circleminus +173/circlemultiply/circledivide/circledot/circlecopyrt/openbullet/bullet/equivasymptotic/equivalence/reflexsubset/reflexsuperset/lessequal/greaterequal/precedesequal/followsequal/similar/approxequal/propersubset/propersuperset/lessmuch/greatermuch/precedes/follows/arrowleft/spade] +>> +endobj +59 0 obj +<< +/Encoding 56 0 R +/Type/Font +/Subtype/Type1 +/Name/F10 +/FontDescriptor 58 0 R +/BaseFont/DOEOMG+CMSY10 +/FirstChar 33 +/LastChar 196 +/Widths[1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 +275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 +611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 +820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 +666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8 +500 500 611.1 500 277.8 833.3 750 833.3 416.7 666.7 666.7 777.8 777.8 444.4 444.4 +444.4 611.1 777.8 777.8 777.8 777.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 0 0 777.8 +777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 +777.8 777.8 1000 1000 777.8 777.8 1000 777.8] +>> +endobj +60 0 obj +<< +/Filter[/FlateDecode] +/Length 2453 +>> +stream +xڝk{{(prV$\(Z.ŵ%GyQ%ep8gƛqC_7?|^o2?K6O$M-cEQ
*,*[SGR>5lkHc-gOX{y[揕 +ׄ8Y#F5R^SG=eʚЗM
wiOɶiFd\'YLϥXپ-#:ʾÉlyfE! X(P2bHm$ʤfrϧ瓞jh-hoGi
= +:bxGUQWYE1h/CdN8V;' o s,Xau"'??QK7xb|QWxqQJӑZp[xx#B:J#3/*
+5W +MԨPBohRLOG`L/o[A?yu^=x'&3n$#b5.WlJ+Hm1b;nscF<G#0-Jp`q?,>nxݶrOms/keYJ7u3 }}Rï +`<#JBYJI1_aB +lq*)):@NwWoxPI]jl!bX|1ǀŒ#fGn2+ +'t/_#rwDO#Akݯr09U/Og{(L'SN8g,{ Y+'U%ݎCeT=Ix)4:s5l<'"4 +]YӨǦ[ly=1 +EOxĬ+I{JaAӝ`5HwV:uT_GޱRT+˱sf+ +-|prguH`wh^ïdRͥm(Á.$R2<"똯:K(e1.C+bߥYOh ~UrP*gc=\:5Ӳh2S_xVا\Dv-1@p7zff ]5{S3TrŷZ9ki"
3 [ГwҬn/AdhjER1L?7Ǝ&5)\FY*{ +?0+\9*.Cz!֎ +ƙjDiIK +endstream +endobj +61 0 obj +<< +/F4 19 0 R +/F5 23 0 R +/F6 27 0 R +/F10 59 0 R +>> +endobj +55 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 61 0 R +>> +endobj +64 0 obj +<< +/Filter[/FlateDecode] +/Length 2105 +>> +stream +xڍˎ6!@@[#Q+sn2i`B0HTzS/JEXw(ڼlhO>M)0K7< /LUE%: Z5?3NVڮ<_O7\LepBcN(6CPc
7ہl?"\j0lMqX10Iw)E4
oJHC6 +cյ`
|!9<q,v[L=@"NzXt!^ˣ,@w@ .uXh^F(*$*YD8$QpӪ>;A%oA2'+dݩRƑ8e=ض( +~C*ŁUWUr2y4n+xpQ=;7̘51ߩ=6xYmHK;M|gwKMo=7O *+j +ouhǛxRC +^X6G'^f)Q4eY`%OvGƺq;R'̎c[B%;\ԇx+IB](A]$Q nua`??(\i1|yN&8ӛlK0-4[\W%)jT(e!`$?f3dڒzy A;+u'q+nGѢӢq⽆p+gM\x +*_*;3 +L2e +,sP۶HqSX<^z4U>\.ǚޤXǾ; rV0KܱT<:cUݥTڭbF2ŽmI +(#YHwh>p6QF}zw`6BI_X:
$'*e :;jUwԥJ]F'",֏ +ٸ5絷dyvS)vi69wiEsyOslip!XtUX{JPi%<hrQz{%60O0D?4JYU9%SJy"-`;ӡk[jOJ~$30|+{dK +:k]+ +lĒt,ѧGs!>ܡ#1YB</4WIsk2aS)uۏ}+O$xqHpD+Fg6sƲ`}QU#ö?hƦ60_tИ, +=ryA1F,]Uoq@_Ȉ>xk$~#Mz~ J:Frtn({;+.ƿӚn^ypUښhW(kƶcL,9MoKxZnh"E'JQQRO +endstream +endobj +65 0 obj +<< +/F4 19 0 R +/F6 27 0 R +>> +endobj +63 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 65 0 R +>> +endobj +68 0 obj +<< +/Filter[/FlateDecode] +/Length 2177 +>> +stream +xڍXKW +-ٜ־pi6Y
|ڇ>9nbKNǎ&`6FSG +SЄBE%oAzc/"rE9*W:pc{}9_X~z +- M;H0]urMC7|
!Ie"SipiUfb oT$aq3cO_':ɯ Ľ6xFz(BM"G袸(gs0[C4t֑'_p+X"f]ado_:T4mUÖp69E'Y|@8ė(xcT 198~2dE~8
V +Npsze X +3fa6cݣd?=]<i + -m8)7ܪܰNݥŎNKQ)dp=u%paIsRhP%-_A<nhmgs-X3}8Ki' +4X&XJ<c4B@ò7NkN+ `}A/Ys@h/-,gCM2o3w2$-|] +3'z!uCéM!琖8GH(MHfbbpi"I{>B^
pçG/9w`rAL,U +lPb/%T ̠y*=L/:#V7̠p~)LTv,n[nȝ/^/}"S>M|luFwZ|ŽL5{ + +Q疓ӟ*e +endstream +endobj +69 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F7 31 0 R +/F10 59 0 R +>> +endobj +67 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 69 0 R +>> +endobj +72 0 obj +<< +/Type/Encoding +/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/alpha/beta/gamma/delta/epsilon1/zeta/eta/theta/iota/kappa/lambda/mu/nu/xi/pi/rho/sigma/tau/upsilon/phi/chi/psi/omega/epsilon/theta1/pi1/rho1/sigma1/phi1/arrowlefttophalf/arrowleftbothalf/arrowrighttophalf/arrowrightbothalf/arrowhookleft/arrowhookright/triangleright/triangleleft/zerooldstyle/oneoldstyle/twooldstyle/threeoldstyle/fouroldstyle/fiveoldstyle/sixoldstyle/sevenoldstyle/eightoldstyle/nineoldstyle/period/comma/less/slash/greater/star/partialdiff/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/flat/natural/sharp/slurbelow/slurabove/lscript/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/dotlessi/dotlessj/weierstrass/vector/tie/psi +160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/alpha/beta/gamma/delta/epsilon1/zeta/eta/theta/iota/kappa/lambda/mu/nu/xi/pi/rho/sigma/tau/upsilon/phi/chi/psi/tie] +>> +endobj +75 0 obj +<< +/Encoding 72 0 R +/Type/Font +/Subtype/Type1 +/Name/F11 +/FontDescriptor 74 0 R +/BaseFont/DUXTIM+CMMI10 +/FirstChar 33 +/LastChar 196 +/Widths[622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 +500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 +750 758.5 714.7 827.9 738.2 643.1 786.2 831.3 439.6 554.5 849.3 680.6 970.1 803.5 +762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 +388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 +298.4 878 600.2 484.7 503.1 446.4 451.2 468.7 361.1 572.5 484.7 715.9 571.5 490.3 +465 322.5 384 636.5 500 277.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 615.3 833.3 762.8 694.4 742.4 831.3 779.9 583.3 666.7 612.2 0 0 772.4 +639.7 565.6 517.7 444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.5 494 437.5 +570 517 571.4 437.2 540.3 595.8 625.7 651.4 277.8] +>> +endobj +76 0 obj +<< +/Filter[/FlateDecode] +/Length 2242 +>> +stream +xڍX#
8qqVCPq[$A[*۲-<I{{I=d)Q?RE/ş/h~Q**/pjᄒϧ5i!f{ߗi
'\Y~G=r3QDyDL NY'˴>4t/["IeӢjX"uw^b4U +VGeY
vj3?4UBy>dH`\;KXylGcY<1w~)\`Mh:[ q$V,i"bdfd[%9-i:7uC韶J;pRVS?ҧ)tPvm'izPy)&,!=,^Ҽ?<8y툾v`|&A$.')kA 2j +LV}8;l~kT3T)J:<\-!6C+~(iv|}!K/$~yx4ߒ9h?[}S|b!x2)]T>`:sKp +6nX,KwIVbm;sۤu$&9U}L#HkV$GiRtz%h!A\` +OX/y>a`<! +@סd*#hL{\A((J7М2/*AڳF3KQiv-@2kD:*.iH,8J̻Osxz{SE
UIDTHrO.D-&?ߒyNZU|yח:E|}#Ej~wчZ)Q`h +樛S!m քkQ{io5鈀pH[KhFW".Ƌ88PʗV!i3֭Ł +endstream +endobj +77 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F11 75 0 R +/F3 16 0 R +>> +endobj +71 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 77 0 R +>> +endobj +80 0 obj +<< +/Filter[/FlateDecode] +/Length 2451 +>> +stream +xڽY8XX+ՠ4v(t^mkdc7ߞyQТb!9o"`qϟ_}6^~.4dʔ-e(OҶ2owLmw2QxY{;x&cU]U8ܗU"`e߶fٺb´>EX'$zwݕRQwnV~=;G%:'l^W3ǰe>{["x3ʙϧcTYƇIiUzeMGcWyt(BKpwyr&`;a}PLk[R]=K~Op6QWq +3%bI7_tSw[V5
o@Ӂۅo]6+,}ͥQVsqoP: a1cFvlJMm4Q3Vl,4BQu|k:ڷmfJ\zko><<<(/-$stZ^Y$wtOQqxwaCE3\~x~b}虻Ol>|,.(.Y<} [c0[a:mKxtF57omάJØPpF?&'kIw(@ +s +n]ov +#B1c) 6FC5^Xg!Q@;+s,}fy!CǰY +*ZcEIXܩJѩ%Mg)EyTJ}3@cK>o<fn[o]rfZeGrI9#x֜9( ;"8>&Dq*֑w;C˙/jSQ6`n +([㜭 +]^$Sh.SΗ:C5y@W,C~ ;d +8Wi +blcd! +7 ܍]HMv(µDy|KҊ=~̀9rfvEVp|,AM,P=v_ܪ\Ӑ)VEe)R3<~sLGS3[jm%Tt42`ϔIcan;ps5\% +ҫU?E^{`I.y"U` XFiAU~Πn=|D!ơ"ޥ`lXnz@~Q7HhHF9<%Iy +VT +hN݈ZMPLzX99'/LTc~>vg;,tb` {` <ʀPgὍ^cĉ¨t|+-y軚//XrΎ$C +endstream +endobj +81 0 obj +<< +/F4 19 0 R +/F6 27 0 R +/F5 23 0 R +/F7 31 0 R +>> +endobj +79 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 81 0 R +>> +endobj +86 0 obj +<< +/Encoding 28 0 R +/Type/Font +/Subtype/Type1 +/Name/F12 +/FontDescriptor 85 0 R +/BaseFont/HEXBOI+CMTI7 +/FirstChar 33 +/LastChar 196 +/Widths[368.3 603.2 955.6 880.2 955.6 896.8 368.3 485.7 485.7 603.2 896.8 368.3 427 +368.3 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 603.2 368.3 368.3 +368.3 896.8 603.2 603.2 896.8 865.9 822.6 838.1 881.4 793.3 763.9 903.8 865.9 454.8 +617.1 895.3 734.5 1042.1 865.9 896.8 793.3 896.8 852 661.9 838.1 865.9 865.9 1159.5 +865.9 865.9 720.6 368.3 603.2 368.3 603.2 368.3 368.3 603.2 544.5 544.5 603.2 544.5 +368.3 544.5 603.2 368.3 368.3 544.5 309.5 955.6 661.9 603.2 603.2 544.5 500.4 485.7 +397.6 632.5 544.5 779.4 544.5 573.8 485.7 603.2 1206.4 603.2 603.2 603.2 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 734.5 955.6 896.8 807.2 +779.4 865.9 838.1 896.8 838.1 896.8 0 0 838.1 736.5 677.8 707.2 1060.7 1075.4 368.3 +397.6 603.2 603.2 603.2 603.2 603.2 953.8 544.5 632.6 838.1 838.1 603.2 1028.2 1145.7 +896.8 309.5 603.2] +>> +endobj +87 0 obj +<< +/Filter[/FlateDecode] +/Length 1388 +>> +stream +xڝV[o6~߯2 +X6ЦXmhʒAII}<
E";7F)MhыU]R<B"~uK}>/o3oSZ(a@{DT݊x)/IF3ļ c-x`vgQn$S.(HA=mq`/I=-5RA
NyPQ-@WMFq;tk'9gd㜜Y;SޛeV+&VKwAh ,~S땚7;pLn; +ck9zA>/ojmæ6Aνx+KI]їAg;3|63k3 ǃvltmԨݣm2{hov` +āUK9 0SE>[}ދI*K|.8^A%>3Z2v˾UE^6ʶL~2~
:l[nu*t)p3Xh +R⤃o +UJ^OI0:o
2v9)ܵAN-7`()-ǃIwfMUTO>tf@.ǚeN8ɮO; _Z{ƉT@s˃w_(Fbπoz$X
>u4<]u9moIIpq}BāAm8jڸ!e~Z7R\Z .x_fњ~mն1zx2<E;e
ؿ0/4<80 +endstream +endobj +88 0 obj +<< +/F6 27 0 R +/F4 19 0 R +/F5 23 0 R +/F3 16 0 R +/F7 31 0 R +/F12 86 0 R +>> +endobj +83 0 obj +<< +/ProcSet[/PDF/Text/ImageC] +/Font 88 0 R +>> +endobj +9 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-33 -250 945 749] +/FontName/MAFYXH+CMR17 +/ItalicAngle 0 +/StemV 53 +/FontFile 8 0 R +/Flags 4 +>> +endobj +8 0 obj +<< +/Filter[/FlateDecode] +/Length1 714 +/Length2 3334 +/Length3 533 +/Length 3882 +>> +stream +xgXS뚆%t# ^BB.H/!$+ +QdS%((HCI]@{9s>g7zYwZKTZV +WZU p($*G + (DLxz!z\*_A"pS=
A"k<H + +#BPQҕM/?'>CgLCԌ3/2dSLb갞#Fk]2Qv&CqlK]\ÏٴJ)&Fގp:hXcؑ=6T^}EU3oۣY(*bZQO~\C kߣF7BR3;LGmaIَ-sWz^.m^ۯ٠ZfQHI(T2Hi䜘 +pZE3ʧ
N"0"Ͷ$xh!A6[Ix/()l%-3a!քRS~Z2Cαb;Ѭ{YyVIW ^RlQr18@NՊmr$yoFQddAZ݊JnG\#PSmdž`5XГca錆osm"oĚOYm)jtaqRsuSY+Knѣ7JkHbM0{ TI??Gu +-[6kz=IzlP~p#`9ԅfaFf x__$F[&bOM/)=;:Fk,+<N~jg1ðw6;K}Q>7#P(Qv\"&c<Sg['iM5ޑMh{7ʒ{cZ`1(ۀ绢P^0hH!CNRqqRA(l$R0ij<)8ɖͱ#p:hč>t{7K^莈m:d(&C5j$-2e +Cj0RFg#&)wut`Xq÷6ԃ} 3/9M +\9 <FN+5T>.B!.pC 5e:;wwZʣ(߆Y]1d꾳G[oB'Agz,(vLrC"{]a\w#~TϪYTqZ-*s.ջ5G6 {֨biʫMln˰LedXٸҢ]1S#pb9i}A82ؒ!PÝrI#vP/Sa]n&͌
L'Zxo5,͢Pr7ų*rg_[@^ޚ=hhk̎i~[ +f䚲.ԨxgOQJNܰKhL:/%GOi҈cyMo쁃͟vIH7c[aj(j͓<>&Cj
97DL5)Mjv]?;9YOʧ -! DR6[y7-Gm,E{W!yAsƕ|èfZeIR^=B>ՖOS|C?\``_:T?(`|V +ɷ{gue.CWP@Q9tb=Ye)hl/P%DVW k ./wSY@Ar֜qpfKkTzI9,}Bfc[XY6~}!뜊϶JשJ.]%cnYӥ6<۹eֺY¸I:,jj㷚)+FNێjRԤW,.ir1䰜/*gxݔoM{QbPekOAY՞Aކ_T94~V+1+@냠r]f+GJW)H
UE;9E,Ot`?lY v@"B
SR;Ǣ%ՊY/UD E@_%'~Vi0Nm*ɴt_i?9mRߍJ?OB,c2:6`KLTmrO!p#˟[ȫٖgt:Sq Lp!ls09X8?n!c=,68=1~74fC2. +ttx9Q-)ʩ%Ãw~V~a
wԏ?vU h`VeF ;#C?/ þ2ờAAD1D꙱LeseeeZR,$ޛ6IVUS&,vuPѓV҈2`IAnq?Vu{fUl$;{_Y/$4>t_z/_ԸmR~vO +endstream +endobj +12 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-34 -251 988 750] +/FontName/WFNAAR+CMR12 +/ItalicAngle 0 +/StemV 65 +/FontFile 11 0 R +/Flags 4 +>> +endobj +11 0 obj +<< +/Filter[/FlateDecode] +/Length1 714 +/Length2 4180 +/Length3 533 +/Length 4735 +>> +stream +xg8\m装!AIDч QQfcK(-J%z/GO}co{=}:"#Bp +)VNŊP-&JE"ⴴ| e'g/<֎ +Ҳ"ء/BV }'$M@zq]xw4J +0Hm +f8$Qnl\ +IW!PHJ"x4Wpq6ўh$t 5ȾƑF5:YltB_CC:?OuR<aZ2q[8nt!WY*MɄ?m>Z !Y>)wQY熝VޫU#
"SHCXRķZ8rD~$⠄ק2eUcs
93S4|2Tng\F@ZQW7_m姅'9 *W]QAi,x'lęU@z +|(;2P'zJ7`R_wo/m\ ?i#H{MkdJqlş$My~ˋoL 9dPAƖPq[<GbcLzԤlltIbI9^)$Tν:|`P6u Jfӕ197l!W]jx7h2SOZYdP 5!ڔ_{]Cʳm<3dE<O2/ͅu|B[Aenۘ +MSFVHm{M8n1~3!h|H}w{+,$JъRk)p~xƒ^WbΒo\)pX_e=)S[bѽOoJwh\ )&U8\EqvPX0Ӡ>ӓhRQi|q{4ˤ7a$y)ou~0E:
104"4MȘly
gZhQv +fٌNy +Dk:O9
\uGٴIn_MNv+VϏ¶ϷZ%'cޔxT4Bt^L\[>XIk7 Ł;Y<Ŗ$,,
-/P1h-W8mR:nnmΦL+ȱsD?6 kLN⢬
*uKVSj|ˏȳAMﯕH7HL5הkZnslso[#({
ۃgF} +4-O3&i^qƒ'CWDSh1lӜr3ؽqCgEeb5J
鉐J)szaqbmq)r!~sx.YD㎟dg&0203z~"2[C]SE-}- +{p +1'W^@y@Zj]Nؙa+ҁȃ|]zNS@+#4ԭlJNڙ*f_tL3W?DR=.4;%6jTD'ZyZUڽMUʗ`1;6G<nw]V2_8,Qwy<Q_#Ėt;/6pa(q-p_e}-~tw4:F}?PPKW.x(m]܈,UyV +<7xgo47ޖ
n| + f
Dsr{Ʈqecpl(<1MLޣdwt:yē:ڴ툦!Xߥ|&m-y%Sܖz(WxߎРLH܋G<at$*871H'Է^zJY;6ʄ=$*m>IrR[MVٰCu~b*|rA>*|,tjd flj\NBT.)Gu[F4潇v:,_[{D7-Bq^"V7~
=*A_0 JLwUu0e&6Io*7
v[hT3l9` i B5 w?P95Q&dIB/dR$#[ ]8'֨㨣R[\8kA7o`Z;X>o{.:36g47UQNa*pdޠpmӶ`llĢ_S%qнbN'-;W +2(|HHP0aD@ Zn $2UkZTF\z`%>Bs~0jTAa>(tԣQi}kf2jvn6.̬,s)HsuM3x[¾)8hOĚ-ugP1w:0dEL5:=UD`%T@ZOUf[qxr}~ +ȤsZ!e;=<^qי٤0y+u=d3u8Gޕ*nw9?,"8r4irHocfk8wT \sQ6=o,L{`g)/#rYoKʖd/+.PqG[% +CCTJjKlg1`DY`)E;SUerzT
rc;^D'
7=KbSUok4Q[h4^~mftƴM_`m?nhwF<cCns-T-_ኧlT1qlAQVG '"r.Yj86hhF0w//?t@[ NVx,-? +endstream +endobj +15 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-53 -251 1139 750] +/FontName/GWYMTO+CMBX12 +/ItalicAngle 0 +/StemV 109 +/FontFile 14 0 R +/Flags 4 +>> +endobj +14 0 obj +<< +/Filter[/FlateDecode] +/Length1 716 +/Length2 5928 +/Length3 533 +/Length 6482 +>> +stream +xUTqiXqi܃kpk o!4A[$-N}8{;\jUbc呱u*=yxĀrF|@>^M<b@>QQ>= + +pW[iBT><` , +O>U +@ a!ѿU/ +3`@m +>4,\5*Mw u2jUk1HBP_d2@Ey COOf3~ux1veKĒc& C>2yxl3Ak'j/ۏV_q|w1Q6*asM4 +Ʒ(Rɻg/q SINz<lH\QyLԉRuǁ)&SfezD/mKq.IR*KIwqM>E.Bob?-cd6߇ԍE+sf|J=
3߮tv0JE6~-uf'7)MSbS<xV.(ڠI<B}?@hrz'mc4c(gPmrs +0MhDxH}f}vҞQg実wuZId#_-1C^,/7jNg#c~^V"z\|s_ +^gA(ҙwvc+r) ksW\&ةgH7uWd^^*uIMg:K^,J{G0]e:(6@$bgRK߰~?&z=/y_5Gi١bAxkB}B__q\{D#vŃ79~Oc:d&^'{uãhhM+`B_M#7kT]\K]r>tmm'bڶ" +n(0:Qh o=GAA`s/k3װjffB/Xg2S0hF(Nfez&ݞ#l^S0mVn[GNjۀc0WHQݙuԭ:kl
PrB1y:LU-1%ڃ}?Ss%(UJl%ͬC]ؚ]^,Ǫ=2 OK_yfj"f>s +L\Oz; +D +3/\et':۴y@sJ>k`]j/ALs .8:%.K~WDJ+LxCUR3@
.b#ڬdw+[5'Ɉziך]]&>?6>;%%!fpK{YI +6?CC Œƀҽ6-vr<b*yKj
0͝Y
I r8:>Rk|>_oB$w|uԸV[{ +k_߯,*m5NirsJF7%n$S~o cDG?Ii;Y@;Pf4gp*9*l0K~9#X?H6c~4;(2&Yp6{3_`[!@DIR/NkW6WEX$px!e?X'M>Ac,еsWW&kqA큃s^1'od-Vn4S[ipbv-5eػd[{^jnkqY2+܂MZ]fw%U$gj>|6toK.{~./5!]{2<x ubϷ(x0B@dPM}?|ѕA$ytMNU"Y'b_{[tnw}&(diٵ+Xre7ɮ[aXHBjR['?Tch(kaХc2Q,?Mr$2{D}:ʩlPp:쵺Mˑ}Q]sNѓ:!0cC$[iw$jPGV=k2M?39n<HD-0y$>c]YS}+A.ʁ
/炌>ނ:%jUns@jcx6i"ɶĭ<Jh_&֛.qWbi|w3 /qv|*M%L슩h$M_x˪Wݺ1.s]r;='gfT +4x+?|ojK:O?F/ȨF<cʚ+ޖ+ +y:д-u xi%pXFt7|8/ܾ"F{ 3%;&m _C
+$h; +q{MR!δjW0߽R('LA +s|2@+3ͥc+p~_([\m*lG2ř\ +e8vVIT:"7
*ʻamc)hB~e~;eV܀"n].ir,ta<>=g/>2Pu9<
17SIָ($o%`a_M=jME-0Sjejyd7y +endstream +endobj +18 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-251 -250 1009 969] +/FontName/YKJLMF+CMR10 +/ItalicAngle 0 +/StemV 69 +/FontFile 17 0 R +/Flags 4 +>> +endobj +17 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 14302 +/Length3 533 +/Length 14858 +>> +stream +xS/晶m۶mi۶m;wzm۶m{zW}SztDkij~1 'VR631ugf`!Waf"bf`b!'u47vي;1ssI3agag!'pt&H`jlK$olin5)كHښH_8;;103LLlaE%mkaG\"7)5?fvDf0 +vg67pV0jm +\,S_=jM|h&dGi6<}̘[;^OՀRxAf{X`́U0"BniLaFx!tfQPl +H"DPT9]$heJfcb
}#'<X]+tM7I<
db'2QfKh)aGFks?6@K}`v*MOTnhZ>`Ư3戞A;7Y};SƉ!xOd]3e*[<O^U-!\3kD+kw[Ci-'YQ,+@NaLӞ$(3&+.qcD:Q?%{G=[{R;۔J3]']ي +I(˩ +|mᖏFjmˏ|V 4寲!VLd'_bif +5CB6UP +]R"75j@&A9}Co|]2BBQx?>Uu՚ͅ0)^W|%$_]0Ӝcב0lR/@!SΧ
4]'mO #渌]FL +{Ԥ
R+08->`'fy1j6;EM-Ѻ2Y֥-CF,ƛ*VF1fg2^ɜ]GJ
z֠J=MAy-2؋x15Kl +J ??B2StS(#~LJC"Wi~!psuAn1rvC-r8~t9m55DIK{A{]W5>#Ք)(;I^:vas?q6pzv-9B`L%09gWl#r/^3Pюex~Pi:۩^{DpbL`# +'swo- +*(9M'ȶ)WowEqPm\G68^<U3JRy7,뚓d#!֬;c/:j'd-RC蔧N1FyX3\JGZ$Qoo0N|QGO9ʄ-|gndi1/Θ$:BuP>Gݴ_&C=yGr'lƠ7u\gL!RMݚnrwH.Q*d`
T彎~W]EuQ*Ow-_Έ_"u +[Bӄr&VJ9Gtt!Dˀty5{z~Dѓ6}Zl_?/cSt$uWH^H|0~vM|$@*'ژ/ٺeGfâY(Ei9r(jmFn^ià +$-
.3dsb
$.;\/`ͣ:qæ>:oE'ǻ`3K]vQir!9+.ؽ:hCSzf60P{͠PH?M
͛3
ɑheuwQ
yx#S9DChDW ',\7hd=~7{eQvJ1E'Zl\Z I4vq_ɘAQ
j֠\y(k7C!g<1Lr4+2MkZaſU(A4?XEgQCvb>|}
.b:!`dL;"m䂭3,p/_S1`@݁9(hG1ov6@}}`7&fMBT[ΚFA*'{}b"7"Lk~RqzVk{XN +"
q:P6QfM'䝟z]%G7F>^pw.*vg@xu\2emЛ;K9%%!A3uocX;0X xS35պ)]qB4ajCut,*Hu=.KZYf9_}dwS>UHgP.oGmq +]hdI,Rܷ6mEhs1p?ɘ9lSx!nEFrAIRtUv:+yMQD_:P: + ?eݍfLT@4}ߛGK>#>Is>Lxd\`^jn<>=ai3oөn_/H(eoBx.}<Mm֕*B`9(&^R5"$#f{%J̶h́5{XV[ mmMF.( +ģ ~z)j5۳@,ܺHLO1^d|1~,O!jb+{6#-ap ]ͳ0WAql3_$R!z7UShkYhJ[ |,Z?AR_tM:V<ZlV\tj<q') +(W$ZG47(I忂6+fFp
{~P^'Gk[L& i/kQ!6mCU`M>&}k_ppGX7h(zjJi Л^ӥ% +oW׃}lj8&IBTv4F@G"HiԆR&ߓXMdHyPKLĻ;JZR*31M^%۹\jE#sEUYLaw!yƲi
^ܝ,v"DTٵl(q+Ʊ}(0Cw(w=νφ,d=mga&*7]AuFBa^M3sNS(#P(G~`[a)C#QJF&y@ݣ?
aFhyCk&Q +kf!7N<Ux6ؼA_$`Cڅ33pyqIy{G=MT惦nMTJC>>b1eC&P(=[Q_̙]$lVk8^ZwJ?i|TFB vlufƪv" lF
YF-K-3' 'Ep;zH.CȗAhn|8asZLXAl63jy}t9}J;Qׯ9VgnbpNZ!q71ø%23<Cƛqߕzy?ص,jB{wv vbN[->]?km.$<qdn(X*0'cLWDl +֑*I|^/"
Iyl?**zgGdvK0ݩa6_D*2:\ A.8A4G A={sLu|xs8l>4P'ɄF`[B֟nc")gCe]` }@}BKA7c/hT^Br=G'yq}G-_]wVSF + +G1M,H1e-v|LcY0(tsPC܅sop +yy +w`t ,L?mV1h40`·{)èU.>87(c;xm^s&F}g +tF"jy/]{Δ=_3]0U-\01GK˾ئ}hg=ewB[/cxzR29v4HVqY]eptm
sKg~B#ܥd{mPSDIuIq#CZ輣c<C7 ԭk͈ΛSkeao_qzmHCd</YS@.3,JyUPi5Ϣv]bEwWڀ~[Rd(buz=Bx9q(>aU#Cb-Ϡ:J-~.QY!zCwZ4xsBnp@)S`oV0|9;ILrP_d JgMyz>A>dj5ė
2Xɒh:T58ūv%ïu](Iشѣ`KNIuq#X4
8qG%[v[Br"!$سUD r(Ą,&u:ckEOjF'EϦ(=">z!6^{68F؉d= w*e\l2hX\3\j{dVr'aO1KڎބŐۣ~WY]MR_SUd;Xj`/3U8/Hq{f%ЖX:77%%?*<VX cשj}iF#βwe,;E~} JBQ:~I gS'q7 'tV`5ijQTP8@3Ks:e@rԭ$?%*M CLOUsɰ+4̕e|&
Qv-0$sV$q +\j4LCWҸdrk͑ŤpG aڎ/E 9CK5+m%a*?C]Ll ¦J$Wq"DrQJ]mֶجjfygxJ,'vrى PpUF4':!i,ӁJHU+iIA04(H/N@3KƊl&CgT;' TSH
+/61
,jo&grkP02oSwS +5}5X9t0hڪ\AsM,2{3Y +:fb}UezSZ J-AiXka[4f0%:BU> +9ﴣS"KjQV
nDFknҀ/,Ө4RD Upx%>ZHzdݻK$#V͋v<Ќz)z/MY'v $J\5T].^Dmġ!}*e;2`ak<VD̨F|Zl\vC_#v+h!d&F\ŵNqq4-ˊN8<C8HMPx +#I6h6|MgMBUЪTULot)ʭ{/NY2tmlhtp)X4ɶbW\gfw©B/DuXfhFvA>vBh]UT핼y +JW+<!@)K<:dfAi!mx8آ8]{i0w0=0KYA>S7-JSHzek<Q#4$. au:}ĕ ҡ)^^v/{S
.'|ŝ`rgWH +Zj5 YPU%LdINH-:dZ([Z>lMHYm7o7뷙G|Ob@cEe<[qf&%L^QL +\]QR#ęwW0oF8P<y1sՁtE>M,o'kt<[#*?H(S9N%##UFwrl#:^r,U17CB="~$nje1)8Gne1-́J +C4I2'$r,Fy4QZFXc! з}f@"fZɶ{9kzfBf +1;<l +waR'Y0.fI[mݩ[+ +i@di8!
qMtZ*aiLw +ׇ~=j?˵w[!)AQLf;ۏ\$1|y3!%bPsSʤłC(,a;ACyj) +kFpYJ$K0)U01;=o֫~\5h2;o
J]$[[ %VhI'1krkRm̬tiGd/~6\<Le( C1Cq:ayO8꿰xB\@tEHJ֝ _㫹Φ,}eXI,`=U[Tl˨S\(^}y!?kЃg?;4^oRʚusIYė0wt
gx:Yn
XG1 +YIV;}~::hiﲗ@fP^^FXuSGMA7RވϗZY@+rqɨ7*CG(=rǧwDѵYT5Y%aFmQb6?LI)Gg~|z'Ra<᧟QY73U| ,h/OzErS3`1e`34
*Y+h,;\>Ksqۚ#,\F
kkzRX8clꩿrF2.Kgy1$(:/DgDWeX5nr8m"Jt{}1f
LcI5uNVFsybosZ;zw]Gu=%sp{A!e;`OyǮgtWSCԃ4`"ltꔂW۪QiC6ұWɞURLQӓLyy^(o9ì]Z^qfl~𩓰WPfF^*p-jE=VnT&FQIySmnSCƼ$,¾-08ғMơPh"<@J(-dDUoI4mVY! rt1-F[=(²K.eRn v˟CkY +g]L.DOg<"+AN$Mvv1u1KF4t7,M&w1[N>O5zYޮ(wy8\8Y +Yw:0"eiǩN,i0Aݤf܄y?CRtfY,T:Yt("mn/\>jRw %{Pei0϶F$h\(hWN +A9mEi-Z_ +1=]/BR̖Ɏh0*\{5nu6gB -(՚BV۠δ2υi.6o/C{M.jX=)8= +EG>
%xJ9E^`BU|i`(;e^e_ɋ`q6$tf|{biPmImhE +"8+XF;;)==CHT2ɥqw<%%y{J#TN +0Jc֮z* +MsfB?#:V&FiYj^(p6!ޱA6e.%^к[Ǫ>5f>_UzknbtsEfM"Zn~ =2*gd0=shMV26 ^)1s.bKmRFLTOP>7d؆k=5VZ!֜yf?S6Ne)|rl5EwhPNߙ=fe6V/xz (22$uW 尞䨡}l[vЭmA1)>n+d4XϨʷ1EDqe5(S*hĈ5Z3Jӳv~ +%Zx̃Q>8j1[Y{t/OWܯdSeǖ'5QQqGbW~BNB=$[sO2мMt/kk6 j!=ͤf!|`yhqc +ܐ_mZ\v +aZU1o`,pH֔a4 +rn$B.(?KVvXb(FYz-l(iTa?<AkE1rxZnj*1@(4R3Nnj+i!L<wuwmfe4"iƎv6ƎV00;% +endstream +endobj +22 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[14 -250 1077 750] +/FontName/WWJXCP+CMCSC10 +/ItalicAngle 0 +/StemV 72 +/FontFile 21 0 R +/Flags 4 +>> +endobj +21 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 1266 +/Length3 533 +/Length 1801 +>> +stream +x{<Ty2fJ.e캶n3
L#סqY#5fcgf2L +z<(ɮhJCzJH.)Z,mԔ +;v_ks9s>|J0"1afsxKB q +灎'vVUA@6w&wA>@g(C_jLM5tFh4bN/IEj7B:ϴ߄:sta# u"+G_ T]^0: +|EXkuR QtC8;iϱ +SxIo4(:b>˸ +tcFFӿ=b][ak>3]KX-n"?H''4D#pV̶`(ή<$m7mfe#6:d|%NU:1ۋ?Daf"ڻ[uP)^Հ0xۑ^-岨V +LC})N%lM?q߱`'( 1
-Va.2T~zbCᑿ٭PA;,\K^bL'L6{ Ώ(vϖCx<gVxՋ?ؐV3LD6J6Q_IWr*/=/s1cLen6],nCkE],&`n^UrYWgt7ӌ1979~}P}ρ8a]3F +>Nh1M}wt(;u}h<%É"TjML&= e[V% +endstream +endobj +26 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-4 -235 731 800] +/FontName/GPPMNM+CMTT10 +/ItalicAngle 0 +/StemV 69 +/FontFile 25 0 R +/Flags 4 +>> +endobj +25 0 obj +<< +/Filter[/FlateDecode] +/Length1 719 +/Length2 11882 +/Length3 533 +/Length 12443 +>> +stream +xUP%֭}[8[P^HNP8t}MGutf^sx4jV@g'wfvv;MF4wsv2w + +6*sl$־Ġ6}{VbNjHoS_WgE^s( LXn`cO7SJK*ZQom=4!Ke;&(x!'Z5{R)*r3cWβܓFԼ~#1vmCpT*H4e
!nݒŦc<$[߫y03R]eD B/2Z(tp>S6NJ>"E,تMkm._/qr}[Ίi;8s +ɬȐ]XVj>;:C}<JMj"fWw$Ss*O@TMdk6BVxVU3K^i,gLe-)o
>.3x:.}QaX6]
qܝ'C뾣a +e@&XχzA0ꞄV5mܣ9bea5ZJq̳|&K<`'/7'6 +塎B-@ h/W8<"lr^퓽@zf'뾚8Ђ ibPADLj/LvYk)ؒk
aF6Ϩċ9,fT®8j̍3!w/i}i7ޅY?n6ѣh?pR:̬X3z9KB9FjHTӂy<Z<~wHDQү8Ḳq2x3˔m$C@b.ϜsIs1+Ea0
Ր&q?Pb+_vn(5߳@A4)9і7bD]QͣGtU%襆JVPD&J,Q}cM;:}V,MzO5M/,
(P˩LSҮg>bu뫹ܹ#;[]5cN]|l' @(D,YPd=hw'_$Ə|N ~'fɦ-h$j$6w9fCDY5Qw;<xCE<ĤX\W#]g$(X^G^ϻaxWW?܆غiC(XT2G/*37q"uѐ'oԒ5Yr"P
wnٔ zDCTEdACa=z>BZr_ +k]mA3f)h kq!͝
>˗߈"=ejs=Cx>dsOP\kȗ$fE5~1 Dε
5&xChkzXj$=TXE6 =ZpP$JCc6<ڜ +Fp;x:mRߎb^r294 4*EEeЫj妳d0"0|=W53]ُNN.L ~l?캦4~:xFRyCpm?c=P@!1#zǥ#mNNן(SE +&bpc=P3naO]vsH+Y>yyX?JKd#^!٠!j:aDfcDXز|*:>^6wD_\7um)_\&+C]ް:i[-ΞКSs$\&C +~H#.ӭJ´lb\Z&@R&.
q}e/`{22Dܝ;8iT0WF >Z^!5S| S8ŦAWJ6nݿU-6G.t6ňnVr#Yy@K"UUY.`ϸș*9=.[`DzwF&nIqX-E]tk:XY=d'9gjAZ-bRX-Zճg K&3l7T<s )MS*d>V {@mȢ@CZ +~.I
~~ޭmYmȸ\Щ~cV^Lu$7=Wknsr6 +""?o}50%\dp_SY-CH8,f+B6_8WyoZCnL Q[eA~&|l@\$#\{?2DŽW@qudz~ +Ps!e$#,˩f.T1\X_)YYG7}k*w68[*OGf<9Cs BT-aBD҅*i*("#bgxJf%OL*j_о#Q}Tw7t0gC2rydܙԳ79md)7wxvxFuU[z_,7KηBhM:<%)%c>Op'~ܯ#1baYC1 +>#.5/YRޏ8Ž8j;fyyY/0K/aXVPa8?WP>"/,擖I#[I\'$R-7JBRrϒlҮLpkp+ we:C(a&FR49j΅Kr*l Kծa}O.t+] 'i1mеv._уZ}cl>f5]oyTe݅/3|y8lF`-՜2
b +J=.28gN"%! =bDTjZ:3|Xh3S1:w٬R\=Eu +抔ᬃ- g\NaӋU'WH B#-d+mt }h盠q5G͢0Fo$L +̧h|Q,ۻ/nqoX&Nt4Beu^uϝ3ͦiJ|2`(u̻-lY
m@E۱yu$3է(d/gᕶSgꬫ +Uپ NOjT)" +d
Y\
9TbaƯspli}4Ԡtw6;^\7ó<,)&(#::1 +4Pv{ݡ"BCvڬaRĊ +E<NtjQXgQ:pQ7tQ/&L\ݥO}p~܆/I)3+SeeD(j 6)J[)x:AkT +$+R'熧-cl_a6=^_O{ć{s4a['3hC7#~K"Qr&! EB*"*Sf(V~vhhy&X_@5A=+M}|=#7Ҷ鍌}(-eXOܷTK+v<Y9ך6g]|De/m΄zRHve93vzz +_L#< +OH^)hx + [qN=Iٳt.ƄnTD^cyLCa(ZtLٴ!8SRƯר:YmPEG@nMF>ȭ8Z:Vl +Lp4ӵFt l!,Yfc;DLؼ;?(<")my|G^}O)%-`s]9q^36&vfcue'f5&aUεvB@>bt-b{=XM +uJ +U`q|ji6#gA%ؑw]uQG9SKKi&}>c&Fc*G[H[&Ƃ.iPgXE\w"Rq݃ +(L7(L%I_$[EJgrmLZSU@jN2:}D'= +KNTZ~ƶR`rߗj+t~{]>v2[27͕ЙzVc;7pSLQ
lkd¤I=^,tښ/quXb!DyX~~i3OBC1+_Mq^J=Ά]bj+ߑVyreco !}ۥUTc_4'MGX&Da-;fIF22Oz#ОX1(E{ZH
]/G+Z0G>ұ51AN2ׯ,Rr!03gc%fX(yNB73ũM??_ߑp;^_0˘6ֱ/+mB~^3iLY|\Eqb=Tb8x$'g25~TbBql\EFc3U)}u4de^rM8~X_PTfnV9uȘpՎ1t)Mbj +ਂ%!e^Ն+*5.~|*ּ,fE}1Y +{>ýD xgj|]n"c$ +uyL[gfsى\n|@;"X!U(ٍ)Ҩ0P'v+@1?cȚϨibͶA%Qni#`Qn;(p
}+tG=L|qBiDāg˪m)IZ s.mWz^1V `i*,#}C*^WP9<>!چ +1pV]8"Sp(3:wy\=/86S8:qHG{R8s΅~el&D=ONe)JF^x'G0ډ,xXt~ۘ2yy?D`'!h!-~x$NI9_d4c Q~\+"˽Į4k@ZebY+w.ԋWt&}Bϥ'ؠIk eI~wh'<p<>Pf*;cK>MriJ/bN-qOm<XI O*qv]DseD5ߕ<QY +ٺD2m$k´1
(*c*ʽ&|vw5D![O䭐{|OZ٥8qdj ?쫈"j&71i_A[/?]2UUXmZqI؍۴QmNz@hRQUk>k'kHC}l<}tlfB8 OyLJ棻dx{2R>Woo5=td (MR:Pp%Fܡ#2
'U1e~+$kr+3Iu6.g|O8"&v<8<"^K\iGf!QKq~Is!mQ,( +Z
Uc}v@5s96QczUCbj6AH;|ڌqOU@X#suh +'^,ߊ{lMB|kh,@AZkՏ20wd-O1S-FٕJ`GCb$Uv58aE7Q0g{\E1bG٬ʥDu<%OX"F10b l]NnUNmZK^E);@FfFz('8KT)rdzcs:MA?1p:Ό\(/2Jg`%js<w.ye +{eT*cdC_ZHq6>7{k!85B6(fUe9e^.DǺ\iWD^>js5E<3".'#*G` +b +m{+.^Lj)/Mysz' +>h"/ +v0Y-TItlH*ZrYØ`Y\ke֩.4}w@*uvt;&w?_˧~KGӼ
COsV>p4{Bf;1;Y|}Q+)B}C5[V}<(lc>|ytDЬ<Bުڙ%ו@H iŦ`L\|)̽ϘghLmiϨ
l-t.eƸG>e LL%d_ft@U bw:}yP +\`E.1}-$8ɩc S}gjb`V5)@?=u9j<vuqTQy=y)Ux>hNeq[#X}\
5b m;댴z@T" +eh>ɽݳh1Q5'h?`Zl`lifIf]ڥ +:;H25FhVd-u0,`fjH+|NosJ궝Ejnzq$ՌmN賥at@b#w7%ܗaxv+ #
j/I_FKgH@٤Ɨ:aדa(C6AT!xKd-WwU=&9Xl,reyՇ'E g^'N=JT73\/}rߣ;z#2
zI'-W(v\%o3v
7%hvwv4; !_Z +endstream +endobj +30 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-163 -250 1146 969] +/FontName/VLTKLU+CMTI10 +/ItalicAngle -14.04 +/StemV 68 +/FontFile 29 0 R +/Flags 68 +>> +endobj +29 0 obj +<< +/Filter[/FlateDecode] +/Length1 728 +/Length2 8291 +/Length3 533 +/Length 8854 +>> +stream +xUT\Ѷq`Aw HAP;Np'x `sν}G/=G\k@!
r+8;ypp +Pz: +@g[q
9/8u0YeJqWAZ+[5Ow'>Z@_<`<lNV
@ߩdd}9x8x7w +Sts;y@]]}V̧+敌!3)x`PDnYtK/iIgL;Ņ+t鹲*9Vۦ3|ۻv7j{<xiHWqBQj7_N*?Rb<oo_0!1Zx#cY=ByMVG鰎ccga%.Ԛpg7k"^nUY^ԾT'!=p's1u)VBV +bۛ[֟PS)3YAɑ5-FBȐyI{oIQR|Z
EGKRo%AX8T'ӒhWWk+֊c6G7Lƣa$8 TyR#<ۥk +FQ&f3G4;Gs:l]u>ꏺĠ4 - +G(q
qq̝٧̑Gy4/B9epzUS@OpBL弴-k(`puITr4&yVd<;#71s}{4ïx Q[0L-p"kn%J"zڈA[I )ot.XTѝ&DAHFoV^]h +R-vNY{(ϕUgb#I7q}|t=X}4mR(Pܮ̊"cD&~3z/fyfXfŔxb1@_X˹[wv'R@uqN-/B
7N$oT˨6,^%ц`5`N|-KmG
ybj +JmR6.oc|Y}Ĵ[ +J{g,ϫtHujp?}c~ +Ѱ,f5is,_sZ>wa3xͺI\):|b3=YLP),u3k[]kj$$ܦlp}q2&V +۫D!+Fb/H'`
݅D_2/<c]y\ݡg!XC!A:7"HR?_g)K +|\tALd>yFgcV\*nAݔv;P;ċ3NiP@KEGq}s6N@<iTڰWn[uP1{k1>> bFifv*ոۨ\QE5d33yƥTK +d)4nXeASryxtD!`P[
4\@a%-@o4v-w!ލeRŢNTbca9zÊ>ihRhu!"j8R:8zMXEY4ć<ߐ8q!Ot7b.g*!6ti@ܑHx>N=ׇ4_˺vvR.*WH5%Jj$Tjvq#|q| +eΐѩq?NsA'Ư1Oe}OSg&rELjFkAZZ-d;).x@^P#Z0mҷDM})JMk1&cv]K~:aHx8X/uLݥiKxMש
-wqg9ZM9XJWOH9V +DDI*>?S%s<?ΝG=C#UHn~-L/aޓ
@MV}/&:8$!~WJ{W~ZAYมӇNlOLDw +bDQ,h=`ujߠ7g7kPBb++|e{/jkI()>BBt
h_%[GL+T~ݣn_Z}V+Os1ҳ0JzÎR τq= <]r[,jr)Yq}hGY]ڙ}c4W`7;eߌ,sLO6_ zBs0T0c{p4_3p5ZuUrHK8b'=\MgC|H{ w1GO'Va7!hpmYHx@#:r"[^YUe=fsD,ủ*gc#Q2\{ r:H6I='w.UedI^}Sd\f|=qQ'6<*u0*>4ϓL@YJɣG}Z>HV9M 0e1O\-CS .3I#R)<YǨXWhޛP+\ႃib &刉ވ[= +S>d::|(~r+fD_Í%XZtaS4"=g8w|o
wc8_g>2S}(?<EfVSD:6`9Ҿ kvR+FvfMpYQܮhy}.[K^=ΥMWOE)4Ӈ5!JX暽*QQúctp<0ͤaStP$ͧ̽gg`?hbB*ϩ^HmP¥Ӟ #TSӣ2aūxwBScpsOɏɾwMZ)h>C?08o9,AhtZ` +)QC&݇M?ν4uKP8Z1^LdۺO'mѲ\l54d)Π0[lbIjQbz5(KTE2G ST}?A+<$X Hi_;-/3AM̪
~Se0XޡhN5B InJ:WGicg{cIJٵ[1'FGwfytp7nsLgWpR7nT2]"Iϴvcj|SAUM\3[<n0ZEx+{Vg^)FW
C
A!]<u9#3ږB[05HڨEr͖{>2G%!|(<A
B;%Hhz@ +exm*1g"b7IM50Jk'=qg+/pLN ^<Vz)3n <Ѱ*<xןzE_̑/~a/HمwDJq`DT篇a>jfKޠOkoY9ۍh!/No[T[Y=,@GDh10X+6U,R~>cc\l>E!ӫoi=C0u| _+vÁ×+D!L05AtN +:k>)4e>ۨţLf䈨7ywjYx +*TܖEQPHhJi=+6uY0c<gRomcܭl>d +\Jn^{2IjI8#ΆGU ]h2sPg]E|FC8(3~D\=w.1*{A,dyy> /ëp1_ +Z3'MɣF]&$z=omC.>(:h/a8Bc(lL/X{xEռ<S\ˏX +y;mr-ޣo[r1Y_H)~yi|S7^o^ѣ`Ѕ^qn|*6bAokpL`/𮔕a8FE}KV.GJш/%(jZu=p## !dp}\X:zzEDOK5"tefEV0}wYfM~6*`"ds:JAdOەB#AZW3#+o+pDK9a
;ʾ,=&%r(4z(P1jZN?W;gg#;-nI7z/gzy\ڏ0?4R4l by9?j*F +Ĭb+!8%p$$#^^c9oZ\ߩG1Lmq:%FxcˠZ=n'p<>"w怦N-R.h:8a>M!5XJv۵8e҄S>洪+y~L#e8c~h|`iyP܊kK+>HBd+U1H$nĩC;畯Yi;ylbID!a +JU.gzJ=8I{#~I?t"̣a,GnS{"ZL҇OE1)3XtR9!jco]چ@Djzv'ց'P + +%)QDBz9\XPs8ڕ4`9"dKVgK_cl\R)(TI7لb-b6.z̠ +r17ciW2Tc);L,?}[㍚TaڒK|Ԍ#Mؔk +:ȵh.%Ta1*]<[W_"(gpR6I6J;fA v
ݥ77{LL"yNZ +yFhe~`eOA`XXVR8ۚsu:2QYPƓߞu>_aިΊfIvTgBO&\;'atSg-7cL=[Ms*Z?q_>@7gG= +endstream +endobj +39 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-27 -250 1122 750] +/FontName/BRQZFJ+CMR7 +/ItalicAngle 0 +/StemV 79 +/FontFile 38 0 R +/Flags 4 +>> +endobj +38 0 obj +<< +/Filter[/FlateDecode] +/Length1 712 +/Length2 1215 +/Length3 533 +/Length 1749 +>> +stream +xiXSg-H\Tɂ( (00"`1&'1 KDZ"KZ8J".X(6( Ū@)05t?}<Gf< AGJ(D + +"C xaPQoP +3 +N<by30 +Rp=P-D$rch/0 +-Џm8wDPiLkyG$ +a=9w߲dqњE1N-nFET:P,{JTO;^ ] +wQwT~ۺ+?/Qop+Ug$AБN'Z)ŏ֘/m`FJ˖1c{?/0wۗr}O_a)&Y'Pob\ԏ;ZhXKHהKXo+ob涵=1y.`X//dȳU?h1KW49^fh,ă_7=.Uӊ<+K'3a
䰢VI6.XWj9UXSʸ}ZCݡ[ve>ISEm.TF`+.,ru0ݜ,+[Iߚ*:X-fW9&/i[)t+cíO1=MO덁ȏWX~݄?NU +.ץtne2tvWo32dV}Vkl__o_e55V0HC(WZo=Y^'d矷3?+pixn%VV/P'
A;{>6>ݮKqP۲H:!7SWhE9#IQ:de֝%P'1oN^[m}b#KtQϤ,yVAo@н/KڕGS6*M5b04|J{V:mr6NޑȂx~ G1Wt<Yܴcбv1,nv*s,nS\_nD;
vGS`tkYcVqb|c׆#EQE6r/>/T_vOMݺѭJA_P$@/g&q&|>6Y%":IJ&
C:*;(WܧUpxT,/mn~dv(u~sEezE\elhşqԟ
1gg!șkD:e{^gVt&tp|^7f~?M!)%q wֳLZ>wp3?А"ˇAT( +endstream +endobj +46 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-301 -250 1164 946] +/FontName/NFTYQH+CMBX10 +/ItalicAngle 0 +/StemV 114 +/FontFile 45 0 R +/Flags 4 +>> +endobj +45 0 obj +<< +/Filter[/FlateDecode] +/Length1 721 +/Length2 4841 +/Length3 533 +/Length 5394 +>> +stream +xgXSǩI&DN ;H/B@ -*E)ґ.;R)U"}8{<s|g3{Z~?lF(;
/$ $TU2@ % +($))T,n)Q) +(W%o8xirC +om41P$戄Aj>s:@yn@PO@>1u߱7A#|A7\YepsanPN3!14qCxx5U H\LwF0w'3v@ +"eLį?+uԸ +
c0t!kT\gf#C|t\N$TIؼq=ol!ʛev> +/-sΊIm7RlqJsa'-鞊(ciIʖCsݢ5a?i&[a@mi'yj_DvIip,85<r6,,!!l{;N#O!}r%Ci:kozڧ%6w +}yO'fHcHJ[Nxxx!@+j$PD;}pޔAb_RD꼊<eg-@<'CSQίaqu +>V_T}V9Y{pEKɐClYP/}tpӡJЇ1rR5O +۬FPdiWDbNҔf_RX+{pfjAͰ3awoHn1- (PEF+w +˂jgg*h +X+-SPh,ݯ>?̜,ikxmֻi
8Kٱ%ekքhUKI#G\ԋQ7&RI4ӎjwX.K| p +E4gyvӆ;[y^SeB*LjGfvD߭ö? zRY+n(-c9z.i_8a;|L|27y%1[RNc~ZD+2mG])v|tT6#w +j?O=8iqaa_w9.%ԁ[mkD*1}(L>'g:FիCuA+4'[~.8 +0&v|5Ud<'w7/
(5Bpa3r!湨Ff)x' "ׁgAU[MAHvUςck^ +s%|4V&[CV3_y^[c/UZx1'R8MbbU5H
_`2F{4@`'_FR`3baGBKo.Y*0f8Ɩ9+K(ڜ7(tZZNlexhQKܮB7zؾHD(j&3 .~3># Pb%,,x*Y& "c:X )s[-0HMqfk0n;$' WcL;ӫqVNnyryoӵPsK +*g +#a!XGw:~MfD.TvW`Q$w))KN +b=) 0b#9-~6U +U֎n!K~bj2c?i2-GvXP18}:"!(.#|u4-TQww
Vˣ械_툸6-$S4
+doCsi5NK/L:KFa@~ZyRKzZoϳV +k:IiLerL3xlG< +l/+8vqL}Uã!qB]˙mghӇnlA;4&ڽ hҍۓ^V> 8Na|%ȏPW%縎ea4eBayn)2ㆣt\\O ]x\!<.vBu20('L'=J8`C2i`-?YEbCÁ<z`dUAXOkuA/Q L\Pb?"A5yt$o:▦
${&<k<#Gq->kA$h8D2mZs^šm>oݙv4RkkHQʐM4Ӣyg]sEǻetgf(1QEdDbRx)ڲ;ilo#Kv.^<s={ +`x:1z2Q{48<k4S(0ibx`-n7QnQ{/:[jO7X*3jHfvD +<L$^ISP%ZjxxЂhi@8;K,F'Oގ3 +;}fUWlF.0R)U +E +endstream +endobj +58 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-29 -960 1116 775] +/FontName/DOEOMG+CMSY10 +/ItalicAngle -14.035 +/StemV 85 +/FontFile 57 0 R +/Flags 68 +>> +endobj +57 0 obj +<< +/Filter[/FlateDecode] +/Length1 724 +/Length2 788 +/Length3 533 +/Length 1309 +>> +stream +xSUuLOJu+53Rp
44P03RUu.JM,sI,IR04Tp,MW04U002225RUp/,L(Qp2WpM-LNSM,HZRRZZTeh\ǥrg^Z9D8 +@WT*qmKdgaqn99~ !S U[PZZZ4<8Ԕ\tYϒĜdǼT]C=cSDf[fEjJ@fIrBZbNq*X<5/);D]ـ̼ʂTr0SQfB!P!Xh%d+$$0]_QkdkiLjf +榵 +C2KS=]L
, L.-*J+'aL`(V&s͞##5ˁJNaz&CIMXǞ;w\[g40њ3;nY($ǝg0eXWҞ1Jԗ]aKuz]XU- ݣ%6 t6,`N|+Kgdq;)yAWpq3z]K&j؟u~x?˰
*wO٭\vwv%|3:YY}|v߿Xd?/ya^:-w^fys[Ӟ|g;} +[ף~m7{?hr=<ɩqKݮ<:w}Լ8wÛK3?'lqf0lĞ7 ݞw9ٽ3lV4یgLcw[Zh.cUs9<gedM\YxN=i{xғ*?vOSƯIOU
Gګ!Luf|{7|ñFz=?a9{]vZ-|)_Ɠ_q<їyI?~r[o19IZWu6Y[m#y3OQ̝eW?Ǩ<v0ȧ/,8P,fb>>xvOc5ayl8\T5ݣRx֗7';3kyv|F稊7Зo8|\7羜#֛m\
Fnz8ƍQ9E%E\\ +endstream +endobj +74 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-32 -250 1048 750] +/FontName/DUXTIM+CMMI10 +/ItalicAngle -14.04 +/StemV 72 +/FontFile 73 0 R +/Flags 68 +>> +endobj +73 0 obj +<< +/Filter[/FlateDecode] +/Length1 727 +/Length2 1655 +/Length3 533 +/Length 2194 +>> +stream +xy8
SQT̘Ðl)d)dIK($\s,!#B(K,YCKЙvu;y=ڈt͘H9X,\Yلt&dJf$ +z5@o~70doSCg`r bRAgRl2N1< ibu=Af:Q&oCJkKCl _a_qԂ)I, O(L*dJfQ)ؘ&4^Kp۰: +>f/Im("ьN<ޥ4lw籞;fn ];v{32V5JJFO,Sc|ڤTQh;|9&ko"g0; \#>UVR<G`b fKnH;=#i[
d}RzerqD_00;a/demZe
D2oM^QC5&k>
+8+'e,`",^$)RtuҤ +zO4d$/!bٿ
>9g)g@Qp]*Aٗ`nPguj:/錘r*gn D{^TevQԌ:}4TK+9)rBj +=C]Ǫ7 +MPv=](iƯ?Y|whxs3Il2ԇ0 +ϊm +>;"XBsF-!G;ӽ)%3GyK];j[wgO-Nd@"$Xܙv*3#+4/{㡫w16_6e
ߥ@OC +Cm֚[3ak"ظAYtn_tk99"U ۴ê~aw-Gj<Ͻ˙M}ԱtX3x8}cް,nm1U!^=&-nVi1Ef:/'(b3},o8 +endstream +endobj +85 0 obj +<< +/Type/FontDescriptor +/CapHeight 850 +/Ascent 850 +/Descent -200 +/FontBBox[-27 -250 1268 750] +/FontName/HEXBOI+CMTI7 +/ItalicAngle -14.04 +/StemV 76 +/FontFile 84 0 R +/Flags 68 +>> +endobj +84 0 obj +<< +/Filter[/FlateDecode] +/Length1 720 +/Length2 1182 +/Length3 533 +/Length 1721 +>> +stream +xSUuLOJu+53Rp
4W03RUu.JM,sI,IR04Tp,MW0P02202RUp/,L(Qp2WpM-LNSM,HZRRZZTeh\ǥrg^Z9D8 +@WT*qmKdgaqn99~ A!S U[PZZZ4<6Ԕ\tYϒĜdǼT]C=xf[fEjJ@fIrBZbNq*X<5/%C5Sɀ̼ʂTj0QQfB!P!Xh%d+$$0_Qkdkdj`hdf`njP04/4E,\ZTWN@i0JMHM=G41^GVkWw{ڼ::%^rw2.~hϊ}.>:2S[ov
˅W.6PlVM[(7aKM[u_s+ITf]ۓvwk>춉*K+nW@57E='nUy)sn0IVzy"WV_oB4uz'[xg>}f{W[}odnU0igx:?n"q♙Β[?'yL^X7)h:slubWV/l.iޟz7OAIՋׁOiO79}}OǗlͽ}S^~ǕLflٷ5tzfxSі)ʝug5P]0`]aaʧ¨5eZg}yy'd8X{:Gak?ܺl%OΓ_v_;zX2}VXfz"ٮm[rnͽfwvT;4:._=ƤCU"=ܯpzh5-4c;vkW[|gwk:{tbnʚw"Bfmx^tegc6/|7*\e_g~:A,k*$*YݕRf'YLҖ^PߡysT|xJθڲ2nAx=74JߗUs.u\; / v4&;R3'RyK+p)O{_yPWFt4n>;]\{Qe}5_Ltƌ-V{N'j9n^wgr_bi3T^~nͼC'l'պH-F߹"<uMaM?_Wݔnٺ_x36KgO添g͙Jk(͓+vXnhOr분{7$N n%OHo>uɚojwu-vɾem {{r&lX&>R<Vy룛Y^?rlAihZrq+L0h^'")R4wf=Yv]-^~scxщSnkOߙأަmT,.n xv&?Q9E%E\\ +endstream +endobj +1 0 obj +<< +/Creator( TeX output 1995.05.18:1037) +/Producer(dvipdfm 0.13.2c, Copyright \251 1998, by Mark A. Wicks) +/CreationDate(D:20040909002938+01'00') +>> +endobj +5 0 obj +<< +/Type/Page +/Resources 6 0 R +/Contents[32 0 R 4 0 R 33 0 R 34 0 R] +/Parent 89 0 R +>> +endobj +36 0 obj +<< +/Type/Page +/Resources 37 0 R +/Contents[32 0 R 4 0 R 41 0 R 34 0 R] +/Parent 89 0 R +>> +endobj +89 0 obj +<< +/Type/Pages +/Count 2 +/Kids[5 0 R 36 0 R] +/Parent 3 0 R +>> +endobj +43 0 obj +<< +/Type/Page +/Resources 44 0 R +/Contents[32 0 R 4 0 R 48 0 R 34 0 R] +/Parent 90 0 R +>> +endobj +50 0 obj +<< +/Type/Page +/Resources 51 0 R +/Contents[32 0 R 4 0 R 52 0 R 34 0 R] +/Parent 90 0 R +>> +endobj +54 0 obj +<< +/Type/Page +/Resources 55 0 R +/Contents[32 0 R 4 0 R 60 0 R 34 0 R] +/Parent 90 0 R +>> +endobj +90 0 obj +<< +/Type/Pages +/Count 3 +/Kids[43 0 R 50 0 R 54 0 R] +/Parent 3 0 R +>> +endobj +62 0 obj +<< +/Type/Page +/Resources 63 0 R +/Contents[32 0 R 4 0 R 64 0 R 34 0 R] +/Parent 91 0 R +>> +endobj +66 0 obj +<< +/Type/Page +/Resources 67 0 R +/Contents[32 0 R 4 0 R 68 0 R 34 0 R] +/Parent 91 0 R +>> +endobj +91 0 obj +<< +/Type/Pages +/Count 2 +/Kids[62 0 R 66 0 R] +/Parent 3 0 R +>> +endobj +70 0 obj +<< +/Type/Page +/Resources 71 0 R +/Contents[32 0 R 4 0 R 76 0 R 34 0 R] +/Parent 92 0 R +>> +endobj +78 0 obj +<< +/Type/Page +/Resources 79 0 R +/Contents[32 0 R 4 0 R 80 0 R 34 0 R] +/Parent 92 0 R +>> +endobj +82 0 obj +<< +/Type/Page +/Resources 83 0 R +/Contents[32 0 R 4 0 R 87 0 R 34 0 R] +/Parent 92 0 R +>> +endobj +92 0 obj +<< +/Type/Pages +/Count 3 +/Kids[70 0 R 78 0 R 82 0 R] +/Parent 3 0 R +>> +endobj +3 0 obj +<< +/Type/Pages +/Count 10 +/Kids[89 0 R 90 0 R 91 0 R 92 0 R] +/MediaBox[0 0 595 842] +>> +endobj +32 0 obj +<< +/Length 1 +>> +stream + +endstream +endobj +34 0 obj +<< +/Length 1 +>> +stream + +endstream +endobj +4 0 obj +<< +/Length 33 +>> +stream +1.00028 0 0 1.00028 72 769.82 cm +endstream +endobj +93 0 obj +<< +>> +endobj +94 0 obj +null +endobj +95 0 obj +<< +>> +endobj +2 0 obj +<< +/Type/Catalog +/Pages 3 0 R +/Outlines 93 0 R +/Threads 94 0 R +/Names 95 0 R +>> +endobj +xref +0 96 +0000000000 65535 f +0000111501 00000 n +0000113376 00000 n +0000113028 00000 n +0000113229 00000 n +0000111665 00000 n +0000012722 00000 n +0000000009 00000 n +0000042619 00000 n +0000042435 00000 n +0000000913 00000 n +0000046800 00000 n +0000046614 00000 n +0000001906 00000 n +0000051838 00000 n +0000051649 00000 n +0000002823 00000 n +0000058622 00000 n +0000058434 00000 n +0000003769 00000 n +0000004686 00000 n +0000073784 00000 n +0000073596 00000 n +0000005654 00000 n +0000006652 00000 n +0000075885 00000 n +0000075699 00000 n +0000007629 00000 n +0000008373 00000 n +0000088639 00000 n +0000088444 00000 n +0000009280 00000 n +0000113129 00000 n +0000010261 00000 n +0000113179 00000 n +0000012623 00000 n +0000111767 00000 n +0000016717 00000 n +0000097793 00000 n +0000097607 00000 n +0000012783 00000 n +0000013747 00000 n +0000016640 00000 n +0000111948 00000 n +0000020359 00000 n +0000099846 00000 n +0000099656 00000 n +0000016779 00000 n +0000017715 00000 n +0000020282 00000 n +0000112052 00000 n +0000022867 00000 n +0000020421 00000 n +0000022801 00000 n +0000112156 00000 n +0000028091 00000 n +0000022929 00000 n +0000105549 00000 n +0000105354 00000 n +0000024545 00000 n +0000025497 00000 n +0000028024 00000 n +0000112345 00000 n +0000030376 00000 n +0000028153 00000 n +0000030332 00000 n +0000112449 00000 n +0000032756 00000 n +0000030438 00000 n +0000032689 00000 n +0000112631 00000 n +0000037102 00000 n +0000032818 00000 n +0000107165 00000 n +0000106971 00000 n +0000033772 00000 n +0000034719 00000 n +0000037035 00000 n +0000112735 00000 n +0000039755 00000 n +0000037164 00000 n +0000039689 00000 n +0000112839 00000 n +0000042373 00000 n +0000109666 00000 n +0000109473 00000 n +0000039817 00000 n +0000040822 00000 n +0000042284 00000 n +0000111871 00000 n +0000112260 00000 n +0000112553 00000 n +0000112943 00000 n +0000113311 00000 n +0000113333 00000 n +0000113354 00000 n +trailer +<< +/Size 96 +/Root 2 0 R +/Info 1 0 R +>> +startxref +113471 +%%EOF diff --git a/Master/texmf-dist/doc/bibtex/base/btxhak.tex b/Master/texmf-dist/doc/bibtex/base/btxhak.tex new file mode 100644 index 00000000000..21928a4e848 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/base/btxhak.tex @@ -0,0 +1,623 @@ +% Copyright (C) 1988, all rights reserved. + +\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em + T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} + +\title{Designing B\kern-.05em{\large I}\kern-.025em{\large B}\kern-.08em\TeX\ + Styles} +\author{Oren Patashnik} +\date{February 8, 1988} + +\documentstyle{article} +\begin{document} + +\maketitle + +\setcounter{section}{4} +\section{Bibliography-style hacking} +\label{style} + +This document starts (and ends) with Section~\ref{style}, +because in reality it is the final section of ``\BibTeX ing''~\cite{btxdoc}, +the general documentation for \BibTeX. +But that document was meant for all \BibTeX\ users, +while this one is just for style designers, +so the two are physically separate. +Still, you should be completely familiar with ``\BibTeX ing''$\!$, +and all references in this document +to sections and section numbers +assume that the two documents are one. + +This section, +along with the standard-style documentation file \hbox{\tt btxbst.doc}, +should explain how to modify +existing style files and to produce new ones. +If you're a serious style hacker you should be familiar +with van~Leunen~\cite{van-leunen} for points of style, +with Lamport~\cite{latex} and Knuth~\cite{texbook} for formatting matters, +and perhaps with {\em Scribe\/}~\cite{scribe} for compatibility details. +And while you're at it, if you don't read the great little book by Strunk and +White~\cite{strunk-and-white}, you should at least look at its +entries in the database and the reference list +to see how \BibTeX\ handles multiple names. + +To create a new style, +it's best to start with an existing style that's close to yours, +and then modify that. +This is true even if you're simply updating an old style +for \BibTeX\ version 0.99 +(I've updated four nonstandard styles, +so I say this with some experience). +If you want to insert into a new style +some function you'd written for an old (version 0.98i) style, +keep in mind that the order of the arguments to +the assignment ({\tt :=}) function has been reversed. +When you're finished with your style, +you may want to try running it on the entire \hbox{\tt XAMPL.BIB} database +to make sure it handles all the standard entry types. + +If you find any bugs in the standard styles, +or if there are things you'd like to do +with bibliography-style files but can't, +please complain to Oren Patashnik. + + +\subsection{General description} + +You write bibliography styles in a postfix stack language. It's +not too hard to figure out how by looking at the standard-style documentation, +but this description fills in a few details (it will fill in more +details if there's a demand for it). + +Basically the style file is a program, written in an unnamed language, that +tells \BibTeX\ how to format the entries that will go in the reference list +(henceforth ``the entries'' will be ``the entry list'' +or simply ``the list''$\!$, context permitting). +This programming language has ten commands, described in the next subsection. +These commands manipulate the language's objects: +constants, variables, functions, the stack, and the entry list. +(Warning: The terminology in this documentation, +chosen for ease of explanation, is slightly different from \BibTeX's. +For example, this documentation's ``variables'' and ``functions'' +are both ``functions'' to \BibTeX. +Keep this in mind when interpreting \BibTeX's error messages.) + +There are two types of functions: {\it built-in\/} ones that \BibTeX\ provides +(these are described in Section~\ref{built-in-fns}), and ones you define +using either the \hbox{\tt MACRO} or \hbox{\tt FUNCTION} command. + +Your most time-consuming task, as a style designer, +will be creating or modifying functions +using the \hbox{\tt FUNCTION} command +(actually, becoming familiar with the references listed above will be +more time consuming, but assume for the moment that that's done). + +Let's look at a sample function fragment. +Suppose you have a string variable named \hbox{\tt label} +and an integer variable named \hbox{\tt lab.width}, +and suppose you want to append the character `{\tt a}' to \hbox{\tt label} +and to increment \hbox{\tt lab.width}: +\begin{verbatim} + . . . + label "a" * 'label := % label := label * "a" + lab.width #1 + 'lab.width := % lab.width := lab.width + 1 + . . . +\end{verbatim} +In the first line, +\hbox{\tt label} pushes that variable's value onto the stack. +Next, the {\tt "a"} pushes the string constant `{\tt a}' onto the stack. +Then the built-in function {\tt *} pops the top two strings and +pushes their concatenation. +The \hbox{\tt 'label} pushes that variable's name onto the stack. +And finally, the built-in function {\tt :=} pops +the variable name and the concatenation and performs the assignment. +\BibTeX\ treats the stuff following the {\tt \%} as a comment +in the style file. +The second line is similar except that it uses {\tt \#1}, +with no spaces intervening between the `{\tt \#}' and the `{\tt 1}'$\!$, +to push this integer constant. + +The nonnull spacing here is arbitrary: multiple spaces, tabs, or newlines +are equivalent to a single one (except that you're probably better off +not having blank lines within commands, as explained shortly). + +For string constants, absolutely any printing character +is legal between two consecutive double quotes, but \BibTeX\ here +(and only here) treats upper- and lower-case equivalents as different. +Furthermore, spacing {\em is\/} relevant within a string constant, +and you mustn't split a string constant across lines +(that is, the beginning and ending double quotes must be on the same line). + +Variable and function names may not begin with a numeral and +may not contain any of the ten restricted characters +on page~143 of the \LaTeX\ book, +but may otherwise contain any printing characters. +Also, \BibTeX\ considers upper- and lower-case equivalents to be the same. + +Integers and strings are the only value types for constants and variables +(booleans are implemented simply as 0-or-1 integers). +There are three kinds of variables: +\begin{description} + +\item[global variables\hfill] These are either integer- or string-valued, +declared using an \hbox{\tt INTEGERS} or \hbox{\tt STRINGS} command. + +\item[entry variables\hfill] These are either integer- or string-valued, +declared using the \hbox{\tt ENTRY} command. +Each has a value for each entry on the list +(example: a variable \hbox{\tt label} might store +the label string you'll use for the entry). + +\item[fields\hfill] These are string-valued, read-only variables +that store the information from the database file; +their values are set by the \hbox{\tt READ} command. +As with entry variables, each has a value for each entry. +\end{description} + + +\subsection{Commands} + +There are ten style-file commands: +Five (\hbox{\tt ENTRY}, \hbox{\tt FUNCTION}, \hbox{\tt INTEGERS}, +\hbox{\tt MACRO}, and \hbox{\tt STRINGS}) +declare and define variables and functions; +one (\hbox{\tt READ}) reads in the database information; +and four (\hbox{\tt EXECUTE}, \hbox{\tt ITERATE}, \hbox{\tt REVERSE}, +and \hbox{\tt SORT}) manipulate the entries and produce output. +Although the command names appear here in upper case, +\BibTeX\ ignores case differences. + +Some restrictions: +There must be exactly one \hbox{\tt ENTRY} and one \hbox{\tt READ} command; +the \hbox{\tt ENTRY} command, all \hbox{\tt MACRO} commands, +and certain \hbox{\tt FUNCTION} commands +(see next subsection's description of \hbox{\tt call.type\$}) +must precede the \hbox{\tt READ} command; +and the \hbox{\tt READ} command must precede the four that +manipulate the entries and produce output. + +Also it's best (but not essential) to leave at least one blank line +between commands and to leave no blank lines within a command; +this helps \BibTeX\ recover from any syntax errors you make. + +You must enclose each argument of every command in braces. +Look at the standard-style documentation +for syntactic issues not described in this section. +Here are the ten commands: +\begin{description} + +\item[\hbox{\tt ENTRY}\hfill] +Declares the fields and entry variables. +It has three arguments, each a (possibly empty) list of variable names. +The three lists are of: +fields, integer entry variables, and string entry variables. +There is an additional field that \BibTeX\ automatically +declares, \hbox{\tt crossref}, used for cross referencing. +And there is an additional string entry variable automatically declared, +\hbox{\tt sort.key\$}, used by the \hbox{\tt SORT} command. +Each of these variables has a value for each entry on the list. + +\item[\hbox{\tt EXECUTE}\hfill] +Executes a single function. +It has one argument, the function name. + +\item[\hbox{\tt FUNCTION}\hfill] +Defines a new function. +It has two arguments; the first is the function's name and the +second is its definition. +You must define a function before using it; +recursive functions are thus illegal. + +\item[\hbox{\tt INTEGERS}\hfill] +Declares global integer variables. +It has one argument, a list of variable names. +There are two such automatically-declared variables, +\hbox{\tt entry.max\$} and \hbox{\tt global.max\$}, +used for limiting the lengths of string variables. +You may have any number of these commands, but a variable's declaration +must precede its use. + +\item[\hbox{\tt ITERATE}\hfill] +Executes a single function, once +for each entry in the list, in the list's current order +(initially the list is in citation order, but the \hbox{\tt SORT} +command may change this). +It has one argument, the function name. + +\item[\hbox{\tt MACRO}\hfill] +Defines a string macro. +It has two arguments; the first is the macro's name, which is treated like +any other variable or function name, +and the second is its definition, which must be double-quote-delimited. +You must have one for each three-letter month abbreviation; +in addition, you should have one for common journal names. +The user's database may override any definition you define using this command. +If you want to define a string the user can't touch, +use the \hbox{\tt FUNCTION} command, which has a compatible syntax. + +\item[\hbox{\tt READ}\hfill] +Dredges up from the database file +the field values for each entry in the list. +It has no arguments. +If a database entry doesn't have a value for a field +(and probably no database entry will have a value for every field), +that field variable is marked as missing for the entry. + +\item[\hbox{\tt REVERSE}\hfill] +Exactly the same as the +\hbox{\tt ITERATE} command except that it executes the function +on the entry list in reverse order. + +\item[\hbox{\tt SORT}\hfill] +Sorts the entry list using +the values of the string entry variable \hbox{\tt sort.key\$}. +It has no arguments. + +\item[\hbox{\tt STRINGS}\hfill] +Declares global string variables. +It has one argument, a list of variable names. +You may have any number of these commands, but a variable's declaration +must precede its use. +\end{description} + + +\subsection{The built-in functions} +\label{built-in-fns} + +Before we get to the built-in functions, +a few words about some other built-in objects. +There is one built-in string entry variable, \hbox{\tt sort.key\$}, +which the style program must set if the style is to do sorting. +There is one built-in field, \hbox{\tt crossref}, +used for the cross referencing feature +described in Section~4. +And there are two built-in integer global variables, +\hbox{\tt entry.max\$} and \hbox{\tt global.max\$}, +which are set by default to some internal \BibTeX\ constants; +you should truncate strings to these lengths before +you assign to string variables, +so as to not generate any \BibTeX\ warning messages. + +There are currently 37 built-in functions. +Every built-in function with a letter in its name ends with a `{\tt \$}'$\!$. +In what follows, ``first''$\!$, ``second''$\!$, +and so on refer to the order popped. +A ``literal'' is an element on the stack, and it will be either +an integer value, a string value, a variable or function name, +or a special value denoting a missing field. +If any popped literal has an incorrect type, \BibTeX\ complains and pushes +the integer 0 or the null string, depending on whether the function +was supposed to push an integer or string. +\begin{description} + +\item[\hbox{\tt >}\hfill] +Pops the top two (integer) literals, +compares them, and pushes the integer 1 if the second is greater than +the first, 0 otherwise. + +\item[\hbox{\tt <}\hfill] +Analogous. + +\item[\hbox{\tt =}\hfill] +Pops the top two (both integer or both string) literals, +compares them, +and pushes the integer 1 if they're equal, 0 otherwise. + +\item[\hbox{\tt +}\hfill] +Pops the top two (integer) literals and pushes their sum. + +\item[\hbox{\tt -}\hfill] +Pops the top two (integer) literals and pushes their difference +(the first subtracted from the second). + +\item[\hbox{\tt *}\hfill] +Pops the top two (string) literals, +concatenates them (in reverse order, that is, the order in which +pushed), and pushes the resulting string. + +\item[\hbox{\tt :=}\hfill] +Pops the top two literals and assigns +to the first (which must be a global or entry variable) +the value of the second. + +\item[\hbox{\tt add.period\$}\hfill] +Pops the top (string) literal, +adds a `{\tt .}' to it if the last non`{\tt \}}' character +isn't a `{\tt .}'$\!$, `{\tt ?}', or `{\tt !}'$\!$, +and pushes this resulting string. + +\item[\hbox{\tt call.type\$}\hfill] +Executes the function whose name is the entry type of an entry. +For example if an entry is of type {\tt book}, this function executes +the {\tt book} function. +When given as an argument to the \hbox{\tt ITERATE} command, +\hbox{\tt call.type\$} actually produces the output for the entries. +For an entry with an unknown type, +it executes the function \hbox{\tt default.type}. +Thus you should define (before the \hbox{\tt READ} command) one function +for each standard entry type as well as a \hbox{\tt default.type} function. + +\item[\hbox{\tt change.case\$}\hfill] +Pops the top two (string) literals; +it changes the case of the second according to the +specifications of the first, as follows. (Note: The word `letters' in +the next sentence refers only to those at brace-level~0, the top-most +brace level; no other characters are changed, except perhaps for +``special characters''$\!$, described in Section~4.) +If the first literal is the +string~`{\tt t}'$\!$, it converts to lower case all letters except the very +first character in the string, which it leaves alone, and except the +first character following any colon and then nonnull white space, +which it also leaves alone; if it's the string~`{\tt l}'$\!$, it converts all +letters to lower case; and if it's the string~`{\tt u}'$\!$, it converts all +letters to upper case. +It then pushes this resulting string. If either +type is incorrect, it complains and pushes the null string; however, +if both types are correct but the specification string (i.e., the +first string) isn't one of the legal ones, it merely pushes the second +back onto the stack, after complaining. (Another note: It ignores +case differences in the specification string; for example, the strings +{\tt t} and {\tt T} are equivalent for the purposes of this built-in +function.) + +\item[\hbox{\tt chr.to.int\$}\hfill] +Pops the top (string) literal, +makes sure it's a single character, converts it to the +corresponding ASCII integer, and pushes this integer. + +\item[\hbox{\tt cite\$}\hfill] +Pushes the string that was the +\hbox{\verb|\cite|}-command argument for this entry. + +\item[\hbox{\tt duplicate\$}\hfill] +Pops the top literal from the stack and pushes two copies of it. + +\item[\hbox{\tt empty\$}\hfill] +Pops the top literal and pushes +the integer 1 if it's a missing field or a string having no +non-white-space characters, 0 otherwise. + +\item[\hbox{\tt format.name\$}\hfill] +Pops the top three literals +(they are a string, an integer, and a string literal). +The last string literal represents a name list (each name +corresponding to a person), the integer literal specifies which name +to pick from this list, and the first string literal specifies how to +format this name, as explained in the next subsection. +Finally, this function pushes the formatted name. + +\item[\hbox{\tt if\$}\hfill] +Pops the top three literals (they +are two function literals and an integer literal, in that order); +if the integer is greater than 0, it executes the second literal, +else it executes the first. + +\item[\hbox{\tt int.to.chr\$}\hfill] +Pops the top (integer) literal, +interpreted as the ASCII integer value of a single character, +converts it to the corresponding single-character string, and pushes +this string. + +\item[\hbox{\tt int.to.str\$}\hfill] +Pops the top (integer) literal, +converts it to its (unique) string equivalent, and pushes this string. + +\item[\hbox{\tt missing\$}\hfill] +Pops the top literal and +pushes the integer 1 if it's a missing field, 0~otherwise. + +\item[\hbox{\tt newline\$}\hfill] +Writes onto the {\tt bbl} file +what's accumulated in the output buffer. +It writes a blank line if and only if the output buffer is empty. +Since \hbox{\tt write\$} does reasonable line breaking, you should use +this function only when you want a blank line or an explicit line break. + +\item[\hbox{\tt num.names\$}\hfill] +Pops the top (string) literal +and pushes the number of names the string represents---one plus +the number of occurrences of the substring ``and'' (ignoring case differences) +surrounded by nonnull white-space at the top brace level. + +\item[\hbox{\tt pop\$}\hfill] +Pops the top of the stack but +doesn't print it; this gets rid of an unwanted stack literal. + +\item[\hbox{\tt preamble\$}\hfill] +Pushes onto the stack the concatenation of all the +\hbox{\tt @PREAMBLE} strings read from the database files. + +\item[\hbox{\tt purify\$}\hfill] +Pops the top (string) literal, +removes nonalphanumeric characters except for white-space characters and +hyphens and ties (these all get converted to a space), removes +certain alphabetic characters contained in the control sequences +associated with a ``special character''$\!$, and pushes the resulting string. + +\item[\hbox{\tt quote\$}\hfill] +Pushes the string consisting of the double-quote character. + +\item[\hbox{\tt skip\$}\hfill] +Is a no-op. + +\item[\hbox{\tt stack\$}\hfill] +Pops and prints the whole stack; +it's meant to be used for style designers while debugging. + +\item[\hbox{\tt substring\$}\hfill] +Pops the top three literals +(they are the two integers literals {\it len\/} and {\it start}, and a +string literal, in that order). +It pushes the substring of the (at most) {\it len\/} consecutive characters +starting at the {\it start\/}th character (assuming 1-based indexing) +if {\it start\/} is positive, and ending at the $-${\it start\/}th character +from the end if {\it start\/} is negative +(where the first character from the end is the last character). + +\item[\hbox{\tt swap\$}\hfill] +Swaps the top two literals on the stack. + +\item[\hbox{\tt text.length\$}\hfill] +Pops the top (string) literal, +and pushes the number of text characters it contains, where an +accented character (more precisely, a ``special character''$\!$, +defined in Section~4) +counts as a single text character, even if it's missing +its matching right brace, and where braces don't count as +text characters. + +\item[\hbox{\tt text.prefix\$}\hfill] +Pops the top two literals +(the integer literal {\it len\/} and a string literal, in that order). +It pushes the substring of the (at most) {\it len\/} consecutive text +characters starting from the beginning of the string. This function +is similar to \hbox{\tt substring\$}, but this one considers +a ``special character''$\!$, even if +it's missing its matching right brace, to be a single text character +(rather than however many ASCII characters it actually comprises), +and this function doesn't consider braces to be text characters; +furthermore, this function appends any needed matching right braces. + +\item[\hbox{\tt top\$}\hfill] +Pops and prints the top of the stack on the terminal and log file. +It's useful for debugging. + +\item[\hbox{\tt type\$}\hfill] +Pushes the current entry's type (book, article, etc.), +but pushes the null string +if the type is either unknown or undefined. + +\item[\hbox{\tt warning\$}\hfill] +Pops the top (string) literal +and prints it following a warning message. +This also increments a count of the number of warning messages issued. + +\item[\hbox{\tt while\$}\hfill] +Pops the top two (function) literals, +and keeps executing the second as long as the (integer) +literal left on the stack by executing the first is greater than 0. + +\item[\hbox{\tt width\$}\hfill] +Pops the top (string) literal +and pushes the integer that represents its width in some relative units +(currently, hundredths of a point, as specified by the June 1987 version +of the $cmr10$ font; the only white-space character with nonzero width +is the space). +This function takes the literal literally; +that is, it assumes each character in the string is to be printed as +is, regardless of whether the character has a special meaning to \TeX, +except that ``special characters'' (even without their right braces) are +handled specially. +This is meant to be used for comparing widths of label strings. + +\item[\hbox{\tt write\$}\hfill] +Pops the top (string) literal +and writes it on the output buffer (which will result in +stuff being written onto the {\tt bbl} file when the buffer fills up). + +\end{description} + +Note that the built-in functions \hbox{\tt while\$} and \hbox{\tt if\$} +require two function literals on the stack. +You get them there either by immediately preceding the name of a function +by a single quote, or, if you don't feel like defining a new function with +the \hbox{\tt FUNCTION} command, +by simply giving its definition (that is, giving what would be the second +argument to the \hbox{\tt FUNCTION} command, including the surrounding braces). +For example the following function fragment appends the character `{\tt a}' +if the string variable named \hbox{\tt label} is nonnull: +\begin{verbatim} + . . . + label "" = + 'skip$ + { label "a" * 'label := } + if$ + . . . +\end{verbatim} +A function whose name you quote needn't be built in +like \hbox{\tt skip\$} above---it may, for example, +be a field name or a function you've defined earlier. + + +\subsection{Name formatting} + +What's in a name? +Section~4 pretty much describes this. +Each name consists of four parts: First, von, Last, and Jr; +each consists of a list of name-tokens, +and any list but Last's may be empty for a nonnull name. +This subsection describes the format string you must supply to +the built-in function \hbox{\tt format.name\$}. + +Let's look at an example of a very long name. +Suppose a database entry~\cite{prime-number-theorem} has the field +\begin{verbatim} + author = "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin" +\end{verbatim} +and suppose you want this formatted ``last name comma initials''$\!$. +If you use the format string +\begin{verbatim} + "{vv~}{ll}{, jj}{, f}?" +\end{verbatim} +\BibTeX\ will produce +\begin{verbatim} + de~la Vall{\'e}e~Poussin, C.~L. X.~J? +\end{verbatim} +as the formatted string. + +Let's look at this example in detail. +There are four brace-level~1 {\em pieces\/} to this format string, +one for each part of a name. +If the corresponding part of a name isn't present (the Jr part for this name), +everything in that piece is ignored. +Anything at brace-level~0 is output verbatim +(the presumed typo `{\tt ?}' for this name is at brace-level~0), +but you probably won't use this feature much. + +Within each piece a double letter tells \BibTeX\ to use whole tokens, and +a single letter, to abbreviate them (these letters must be at brace-level~1); +everything else within the piece is used verbatim +(well, almost everything---read on). +The tie at the end of the von part (in \hbox{\verb|{vv~}|}) +is a discretionary tie---\BibTeX\ will output a tie at that point +if it thinks there's a need for one; +otherwise it will output a space. +If you really, really, want a tie there, +regardless of what \BibTeX\ thinks, use two of them +(only one will be output); that is, use \hbox{\verb|{vv~~}|}. +A tie is discretionary only if it's the last character of the piece; +anywhere else it's treated as an ordinary character. + +\BibTeX\ puts default strings {\em between\/} tokens of a name part: +For whole tokens it uses either a space or a tie, +depending on which one it thinks is best, +and for abbreviated tokens it uses a period followed by +either a space or a tie. +However it doesn't use this default string after the last token in a list; +hence there's no period following the `J' for our example. +You should have used +\begin{verbatim} + "{vv~}{ll}{, jj}{, f.}" +\end{verbatim} +to get \BibTeX\ to produce the same formatted string but with the question +mark replaced by a period. +Note that the period should go inside the First-name piece, +rather than where the question mark was, in case a name has no First part. + +If you want to override \BibTeX's default between-token strings, you +must explicitly specify a string. +For example suppose you want a label to contain the first letter from each +token in the von and Last parts, with no spaces; +you should use the format string +\begin{verbatim} + "{v{}}{l{}}" +\end{verbatim} +so that \BibTeX\ will produce `{\tt dlVP}' as the formatted string. +You must give a string for each piece whose default you want overridden +(the example here uses the null string for both pieces), and this string +must immediately follow either the single or double letter for the piece. +You may not have any other letters at brace-level~1 in the format string. + +\bibliography{btxdoc} +\bibliographystyle{plain} +\end{document} diff --git a/Master/texmf-dist/doc/bibtex/gost/README b/Master/texmf-dist/doc/bibtex/gost/README new file mode 100644 index 00000000000..f1136af339b --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/gost/README @@ -0,0 +1,35 @@ +This is README for set of BibTeX styles attempting to format +bibliography in English, Russian and Ukrainian according to +GOST 7.1-84 and GOST 7.80-00 (See +http://www.inforeg.org.ru/common/doc.asp?/standart/stands/7_1.htm +http://www.inforeg.org.ru/common/doc.asp?/standart/stands/7_80.htm), + +Four BibTeX styles are provided: + +Standard | Sorted Unsorted +---------------------------------------------- +GOST 7.1 1984 | gost71s.bst gost71u.bst +GOST 7.80 2000 | gost780s.bst gost780u.bst + +To produce styles, you need to download the files `gost.ins' and +`gost.dtx'. Run LaTeX on gost.ins. + +How to use: +1. You need bibtex8 +2. Depending on codepage of your bibliographic database, you will + need one of the codepage and sorting order (CS) files: + ruscii.csf (AKA cp866u, cp866nav, cp1125); koi8u.csf; + cp1251.csf. +3. Add field language="ukrainian" or language="russian" to the + bibliographic entries in Ukrainian or Russian languages; + English is the default language. +4. Run LaTeX, then run bibTeX8, then run LaTeX again: + + latex <my_document> + bibtex8 -B -c <my_codepage_file> <my_document> + latex <my_document> + +5. For details of preparing bibliographic database see + examples in gost780.pdf and gost71.pdf + +Happy BibTeXing! diff --git a/Master/texmf-dist/doc/bibtex/gost/gost71.pdf b/Master/texmf-dist/doc/bibtex/gost/gost71.pdf Binary files differnew file mode 100644 index 00000000000..820e6d9e501 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/gost/gost71.pdf diff --git a/Master/texmf-dist/doc/bibtex/gost/gost780.pdf b/Master/texmf-dist/doc/bibtex/gost/gost780.pdf Binary files differnew file mode 100644 index 00000000000..9b1991795b9 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/gost/gost780.pdf |