diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 00:40:28 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 00:40:28 +0000 |
commit | fd423d0bb64fe29a2be1fbae5baaf4bc386cc274 (patch) | |
tree | 6bf20bbdf3d9741134f6ea40b30c1b3722fa0cd1 /Master/texmf-dist/doc/omega | |
parent | 0afd1aaf73fc909c6604939dcaf4ccc983b7277e (diff) |
doc 1
git-svn-id: svn://tug.org/texlive/trunk@77 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/omega')
-rw-r--r-- | Master/texmf-dist/doc/omega/base/doc-1.12.ps | 4500 | ||||
-rw-r--r-- | Master/texmf-dist/doc/omega/base/doc-1.8.tex | 2323 | ||||
-rw-r--r-- | Master/texmf-dist/doc/omega/base/torture.ps | 7612 | ||||
-rw-r--r-- | Master/texmf-dist/doc/omega/base/torture.tex | 1127 | ||||
-rw-r--r-- | Master/texmf-dist/doc/omega/omega-devanagari/india.ps.gz | bin | 0 -> 582919 bytes |
5 files changed, 15562 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/omega/base/doc-1.12.ps b/Master/texmf-dist/doc/omega/base/doc-1.12.ps new file mode 100644 index 00000000000..2e9d0b83a57 --- /dev/null +++ b/Master/texmf-dist/doc/omega/base/doc-1.12.ps @@ -0,0 +1,4500 @@ +%!PS-Adobe-2.0 +%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software +%%Title: doc-1.12.dvi +%%Pages: 43 +%%PageOrder: Ascend +%%BoundingBox: 0 0 596 842 +%%EndComments +%DVIPSWebPage: (www.radicaleye.com) +%DVIPSCommandLine: dvips doc-1.12 -o +%DVIPSParameters: dpi=600, compressed +%DVIPSSource: Omega output, Version 3.14159--1.12, 2000.02.13:1820 +%%BeginProcSet: texc.pro +%! +/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S +N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 +mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 +0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ +landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize +mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ +matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round +exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ +statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] +N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin +/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array +/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 +array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N +df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A +definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get +}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} +B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr +1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 +1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx +0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx +sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ +rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp +gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B +/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ +/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ +A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy +get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} +ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp +fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 +{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add +chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ +1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} +forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn +/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put +}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ +bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A +mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ +SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ +userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X +1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 +index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N +/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ +/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) +(LaserWriter 16/600)]{A length product length le{A length product exch 0 +exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse +end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask +grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} +imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round +exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto +fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p +delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} +B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ +p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S +rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end + +%%EndProcSet +TeXDict begin 39158280 55380996 1000 600 600 (doc-1.12.dvi) +@start +%DVIPSBitmapFont: Fa cmti10 10 16 +/Fa 16 120 df<14F8EB07FE90381F871C90383E03FE137CEBF801120148486C5A485A12 +0FEBC001001F5CA2EA3F801403007F5C1300A21407485C5AA2140F5D48ECC1C0A2141F15 +831680143F1587007C017F1300ECFF076C485B9038038F8E391F0F079E3907FE03FC3901 +F000F0222677A42A>97 D<133FEA1FFFA3C67E137EA313FE5BA312015BA312035BA31207 +EBE0F8EBE7FE9038EF0F80390FFC07C013F89038F003E013E0D81FC013F0A21380A2123F +1300A214075A127EA2140F12FE4814E0A2141F15C05AEC3F80A215005C147E5C387801F8 +007C5B383C03E0383E07C0381E1F80D80FFEC7FCEA01F01C3B77B926>I<147F903803FF +C090380FC1E090381F0070017E13784913383901F801F83803F003120713E0120FD81FC0 +13F091C7FC485AA2127F90C8FCA35A5AA45AA3153015381578007C14F0007EEB01E0003E +EB03C0EC0F806CEB3E00380F81F83803FFE0C690C7FC1D2677A426>I<ED01F815FFA315 +0316F0A21507A216E0A2150FA216C0A2151FA21680A2153FA202F81300EB07FE90381F87 +7F90383E03FF017C5BEBF80112013803F00048485B120FEBC001121F5DEA3F801403127F +01005BA214075A485CA2140FA248ECC1C0A2141F15C3ED8380143F1587007C017F1300EC +FF076C485B9038038F8E391F0F079E3907FE03FC3901F000F0253B77B92A>I<147F9038 +03FFC090380FC1E090383F00F0017E13785B485A485A485A120F4913F8001F14F0383F80 +01EC07E0EC1F80397F81FF00EBFFF891C7FC90C8FC5A5AA55AA21530007C14381578007E +14F0003EEB01E0EC03C06CEB0F806CEB3E00380781F83803FFE0C690C7FC1D2677A426> +I<EC07C0EC3FF09138FC38E0903901F01FF0EB03E0903807C00FEB0F80011F1307D93F00 +13E05B017E130F13FE4914C01201151F1203491480A2153F1207491400A25DA249137EA2 +15FEA25D00031301140314076C6C485A0000131FEB787BEB3FF390380FC3F0EB00031407 +A25DA2140F5D121C007E131F5D00FE49C7FC147E5C387801F8387C07E0381FFF80D803FE +C8FC24367CA426>103 D<EB03F0EA01FFA3EA00075CA3130F5CA3131F5CA3133F91C8FC +A35B90387E07F0EC1FFCEC783E9038FFE01F02C01380EC800F1400485A16C05B49EB1F80 +12035BA2153F000715005BA25D000F147E5B15FE5D121FD98001131C15F8163C003F0103 +1338010013F0A216704814E0007E15F016E0EDE1C000FE903801E38048903800FF000038 +143C263B7BB92A>I<EB03F0EA01FFA3EA00075CA3130F5CA3131F5CA3133F91C8FCA35B +017EEB0F80ED3FE015F09039FE01C1F09038FC0387EC0707140E0001011C13E0EBF83891 +383003800270C7FC00035BEBF1C0EBF38001FFC8FCEA07FC7FEBFFC0EBE7F8380FE1FCEB +C07E147F80001F809039801F81C0A21583003F013F138001001303A21507481500007E13 +3EEC1E0E151E00FE6D5A48EB07F80038EB01E0243B7BB926>107 +D<EB0FC0EA07FFA3EA001F1480A2133FA21400A25BA2137EA213FEA25BA21201A25BA212 +03A25BA21207A25BA2120FA25BA2121FA25BA2123FA290C7FCA25AA2EA7E0EA212FE131E +EAFC1CA2133C133812F81378EA7870EA7CE0121FEA0F80123B79B915>I<D801E013FE3A +07F803FF803A0E3C0F07C03A1E3E3C03E0261C1F787F39383FF00114E0007813C0007081 +14804A485AEAF07FEAE07EA20000140701FE5C5BA2150F00015D5B151F5E12034990383F +8380160316070007027F130049137EA2160E000F147C49141E161C5E001FEC3C7849EB1F +E00007C7EA0780292679A42F>110 D<147F903803FFC090380FC1F090381F00F8017E13 +7C5B4848137E4848133E0007143F5B120F485AA2485A157F127F90C7FCA215FF5A4814FE +A2140115FC5AEC03F8A2EC07F015E0140F007C14C0007EEB1F80003EEB3F00147E6C13F8 +380F83F03803FFC0C648C7FC202677A42A>I<9039078007C090391FE03FF090393CF078 +7C903938F8E03E9038787FC00170497EECFF00D9F0FE148013E05CEA01E113C15CA2D800 +03143FA25CA20107147FA24A1400A2010F5C5E5C4B5A131F5EEC80035E013F495A6E485A +5E6E48C7FC017F133EEC70FC90387E3FF0EC0F8001FEC9FCA25BA21201A25BA21203A25B +1207B512C0A3293580A42A>I<3903C003F0390FF01FFC391E783C0F381C7C703A3C3EE0 +3F8038383FC0EB7F800078150000701300151CD8F07E90C7FCEAE0FE5BA2120012015BA3 +12035BA312075BA3120F5BA3121F5BA3123F90C9FC120E212679A423>114 +D<14FE903807FF8090380F83C090383E00E04913F00178137001F813F00001130313F0A2 +15E00003EB01C06DC7FC7FEBFFC06C13F814FE6C7F6D13807F010F13C01300143F141F14 +0F123E127E00FE1480A348EB1F0012E06C133E00705B6C5B381E03E06CB45AD801FEC7FC +1C267AA422>I<EB0380EB07C0130FA4131F1480A3133F1400A35B137E007FB5FCA2B6FC +3800FC00A312015BA312035BA312075BA3120F5BA3121FEB801CA2143C003F1338EB0078 +147014F014E0EB01C0EA3E03381F0780380F0F00EA07FCEA01F0183579B31C>I<01F015 +07D803FC903903801F80D8071E903907C03FC0D80E1F130F121C123C0038021F131F49EC +800F00701607A249133FD8F07E168000E0ED000313FEC64849130718000001147E5B03FE +5B0003160E495BA2171E00070101141C01E05B173C1738A217781770020314F05F000301 +0713016D486C485A000190391E7C07802800FC3C3E0FC7FC90393FF81FFE90390FE003F0 +322679A437>119 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fb cmex10 10 2 +/Fb 2 2 df<1430147014E0EB01C01303EB0780EB0F00A2131E5BA25B13F85B12015B12 +03A2485AA3485AA3121F90C7FCA25AA3123EA2127EA6127C12FCB3A2127C127EA6123EA2 +123FA37EA27F120FA36C7EA36C7EA212017F12007F13787FA27F7FA2EB0780EB03C01301 +EB00E0147014301462738226>0 D<12C07E12707E123C7E7EA26C7E6C7EA26C7E7F1200 +7F1378137CA27FA37FA31480130FA214C0A31307A214E0A6130314F0B3A214E01307A614 +C0A2130FA31480A2131F1400A3133EA35BA2137813F85B12015B485AA2485A48C7FCA212 +1E5A12385A5A5A14627C8226>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fc cmsy7 7 2 +/Fc 2 49 df<B712FEA327037A8F34>0 D<13E0EA01F0EA03F8A3EA07F0A313E0A2120F +13C0A3EA1F80A21300A25A123EA35AA3127812F8A25A12100D1E7D9F13>48 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fd cmti7 7 4 +/Fd 4 113 df<14181438147814F81301EB03F0130FEA01FF13F3380003E0A21307A214 +C0A2130FA21480A2131FA21400A25BA2133EA2137EA2137CA213FCA25BA21201B512F0A2 +152678A523>49 D<EB0FE0EB3FF8EBF83C3801E01EEA03800007133EEA0F00001E133C00 +3E1318003C1300127CA25AA45AA31408141C0078133C1478383C01F0381E07C0380FFF00 +EA03F8171B789920>99 D<3907803F80390FE0FFC0391CF1C1E03938F301F0EBFE00485A +81495B00E1130113F01201A24848485AA34A5AEA07C0EDC380EC0F83A23A0F801F0700A2 +150EEC0F0CD81F005BEC07F0000E6D5A211B7B9926>110 D<9038F00F803901FC3FE039 +039E707039071EE07890381FC03C000E1380140049133E121C133E1200137E157C137CA2 +13FC15F85B15F00001130115E0EC03C0EC07803903FC0F00EBFE1EEBE7F8EBE3E0D807E0 +C7FCA25BA2120FA25B121FEAFFF8A21F257E9923>112 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fe eccc1000 10 29 +/Fe 29 122 df<B512FCA516057E941F>45 D<EB03FE90381FFFC090383E03E09038F800 +F84848137C48487F48487F497F000F1580001F15C090C712074815E0A34815F0007E1403 +A500FE15F8B2007E15F0A4007F14076C15E0A36C15C06D130F000F15806D131F00071500 +6C6C133E6C6C5B6C6C5B90387E03F090381FFFC0D903FEC7FC25397CB62E>48 +D<EB01C013031307131FEA01FFB5FCA2EAFE1F1200B3B3A7EB7FF0B612F8A31D3777B62E +>I<151C153CA2157C15FCA214011403A21407140F141D141914311471146114C11301EB +038114011307130E130C131813381330136013E0EA01C01380EA03005A12065A121C5A12 +3012705AB712FEA3C73801FC00AA4A7E49B512FCA327387DB72E>52 +D<00061406D80780131E9038F801FC90B5FC5D5D15C05D4AC7FC38067FF090C9FCAAEB03 +FC90380FFF8090383C07E09038F001F03907C000F8497F90C7127E157F0006EC3F80C8FC +16C0151FA216E0A4121C127F5A7FA390C713C0153F12FC006015800070147F0030150000 +3814FE6C5C000F495A39078007F03903F01FE06CB512806C6C48C7FCEB0FF023397BB62E +>I<EC3FC0903801FFF801077F90380FE01E90383F800790387E001F49EB3F804848137F +485AA2485A000FEC3F0049131E001F91C7FCA2485AA3127F90C9FCEB01FC903807FF8039 +FF1E07E090383801F0496C7E01607F01E0137E497F16805BED1FC0A390C713E0A57EA47F +123F16C0A2001FEC3F807F000F15006D5B000714FE6C6C5B6C6C485A3900FE07F090387F +FFC0011F90C7FCEB03FC23397BB62E>I<EB03FC90381FFF80017F13E03901F807F03903 +C000FC4848137E48C7123E000E80001E80001C1580003C1407A3123EA2003F140F6D1400 +13E06C6C131E01FC133E6C6C5B6D6C5A6CEBE1E06CEBF7C06C01FFC7FC6C7E6D7F010F13 +E0013F7F01F913FC3901E07FFE3907C03FFF380F800F261F00031380001E6D13C048EB00 +7F007C143F0078EC0FE015075A1503A21501A36C15C012781503007C15806CEC07006C5C +6C6C131ED807E0137C3903F803F0C6B55A013F1380D907FCC7FC23397BB62E>56 +D<EB03F8EB1FFF017F13C03901FC07E048486C7E3907E001F8000F6D7E4848137E5B003F +80A248C71380A25AED1FC0A516E0A56C143FA36C7E157F121F6C6C13FF6C6C13DF000313 +013901F0039F3900FC0F1FD93FFC13C0EB07F090C7FCA2153F1680A216005D120F486C13 +7E486C5BA24A5A4A5A49485A6C48485A001C495A260F807FC7FC3807FFFC000113F03800 +7FC023397BB62E>I<1407A24A7EA34A7EA3EC37E0A2EC77F01463A2ECC1F8A201017F14 +80A2903803007EA301067FA2010E80010C131FA2496D7EA2013FB57EA29038300007496D +7EA3496D7EA200018149130012036D801207D81FE0903801FF80D8FFF8010F13F8A22D2C +7DAB33>97 D<B612F015FE3A07F8003F806C48EB0FC0ED07E0ED03F016F8150116FCA516 +F8A2ED03F01507ED0FE0ED3F80913801FF0090B512F815FF9039F0001FC0ED07E0ED03F0 +ED01F816FC150016FEA616FC1501A2ED03F8ED07F0ED0FE0486CEB3FC0B7120015F8272B +7CAA30>I<91383FC006903901FFF80E90390FE03E1E90381F0007017EEB03BE01F8EB01 +FE484813004848147E0007153E485A001F151E5B003F150E90C8FC5A1606A212FE1600AA +007F1506A37E6D140E001F150C7F000F151C6C6C1418000315386C6C14706C6C14E0017E +EB01C0011FEB078090390FE03E00903801FFF89038003FC0272D7BAB31>I<B612F015FE +3907F8007F6C48EB0FC0ED03E06F7E6F7E167C167E82A2EE1F80A217C0160FA317E0AA17 +C0A3EE1F80A217005E163E5E16FC4B5A4B5AED0FC0486CEB7F80B600FEC7FC15F02B2B7C +AA34>I<B712E0A23907F8000F6C481303ED00F01670A21630A41618A215C01600A31401 +A2140790B5FCA2EBF0071401A21400A21606A21500A2160CA4161CA2163C167C16F8486C +1307B7FCA2272B7CAA2E>I<B712C0A23907F8001F6C481303ED01E01500A21660A41630 +A215C01600A31401A2140790B5FCA2EBF0071401A21400A492C7FCAB487EB512E0A2242B +7CAA2C>I<91383FE003903901FFF807903907E01E0F90391F00078F017EEB01DF496DB4 +FC484880484880484880485A001F815B003F8190C8FC5A82A212FE93C7FCA892383FFFF8 +A2007F02001380EE3F00A27E7F121F7F120F6C7E6C7E6C6C5C6C7E017E5C011FEB01CF90 +3907E00F87903901FFFE039026003FF0C7FC2D2D7BAB35>I<B539C07FFFE0A23B07F800 +03FC006C486D5AB190B6FCA29038F00001B2486C497EB539C07FFFE0A22B2B7CAA33>I< +B512C0A23807F8006C5AB3B3487EB512C0A2122B7CAA19>I<90B512C0A2903801FE006D +5AB3AB1210127C12FEA3495A12FC387003F06C485A381E0FC06CB4C7FCEA01FC1A2C7CAA +23>I<B512E0A2D807F8C8FC6C5AB3A61660A416C0A31501A21503A21507ED1F80486C13 +FFB7FCA2232B7CAA2B>108 D<D8FFF0ED3FFC6D157F0007178000031700017C15DFA26D +EC019FA36DEC031FA26D6C1306A36D6C130CA26D6C1318A26D6C1330A36D6C1360A2027C +13C0A391383E0180A291381F0300A3EC0F86A2EC07CCA3EC03F8A2486C6C5AA2D81FE0ED +3F803CFFFC00E007FFFCA2362B7CAA3E>I<D8FFF0903807FFE07F0007020013006C6C14 +3C7F017F14187F806D7E130F806D7E6D7EA26D7E6D7E147E147FEC3F80141F15C0EC0FE0 +EC07F0140315F8EC01FC140015FE157FED3F98151F16D8ED0FF81507A215031501A2486C +13001678D81FE01438EAFFFC16182B2B7CAA33>I<EC7FC0903803FFF890380FC07E9039 +3F001F80017CEB07C04848EB03F048486D7E4913004848147C000F157E484880A248C8EA +1F80A24816C0A2007E150FA200FE16E0AA007FED1FC0A36C16806D143F001F1600A26C6C +147E6C6C5CA26C6C495A6C6C495AD8007CEB07C0013FEB1F8090260FC07EC7FC903803FF +F89038007FC02B2D7BAB35>I<B612E015FC3907F800FE6C48EB1F80ED0FC0ED07E016F0 +1503A216F8A516F0A2150716E0ED0FC0ED1F80EDFE0090B55A15E001F0C8FCB1487EB512 +C0A2252B7CAA2E>I<B67E15F03907F800FE6C48133FED0FC06F7EA26F7E82A65E4B5AA2 +4B5A033FC7FC15FE90B512F05D9038F001F8EC007E816F7EA26F7EA582A4171816F01507 +1738486C903803F830B5D8C00113709238007FE0C9EA1F802D2C7CAA32>114 +D<017F13603901FFE0E0380780F9380E001F48130748130312780070130100F01300A315 +607EA26C14007E127F13C0EA3FFEEBFFE06C13F8000713FE6C7FC61480010F13C01300EC +0FE01407EC03F01401A212C01400A37E15E06C1301A26CEB03C06CEB0780B4EB0F0038F3 +E01E38E0FFF838C01FE01C2D7BAB26>I<007FB712C0A23A7E003FC00F007890381F8003 +007015011600126000E016E0A2481660A5C71500B3A8EC7FE0011FB57EA22B2B7DAA31> +I<B539C007FFE0A2D807F8C713006C48143CA21618B3A916386C6C1430A2000015706D5C +017C5C6D13016D495A90260F800FC7FC903803E03C903800FFF8EC3FC02B2C7CAA33>I< +B56CEB3FFEA2D80FFCC7EA0FF06C48EC07E00003ED03C01780000116006D5C00001506A2 +017E5CA2017F141C6D141880011F5CA26D6C5BA28001075CA26D6C485AA2ECF803010191 +C7FCA2903800FC06A2ECFE0EEC7E0C147F6E5AA2EC1FB0A215F06E5AA26E5AA36E5AA22F +2C7EAA33>I<B56CEB1FFEA2D80FFCC7EA0FF00003ED07C01780000116006C6C1406017F +140E160C6D6C5B6D6C133816306D6C5B6D6C13E05E6D6C485A903801FC0393C7FC903800 +FE06EC7F0E150CEC3F9CEC1FF85D140F6E5AAF4A7E49B57EA22F2B7EAA33>121 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Ff cmbx10 10 5 +/Ff 5 122 df<EB3FFE0003B512E0000F14F8391FF00FFE003FEB03FF6D6C7F6E7FA26F +7EA26C5A6C5AEA0380C8FCA2EC3FFF010FB5FC137F3901FFF87F00071380380FFE00EA3F +F85B485A12FF5BA415FF6D5A127F263FF00713F83B1FFC1FBFFFC0390FFFFE1F0003EBF8 +0F39003FE0032A257DA42E>97 D<EC1FF0903801FFFC010713FF90391FF87F8090383FE0 +FFD9FFC113C0A2481381A24813016E1380A2ED3E0092C7FCA8B6FCA4000390C8FCB3ABB5 +12FEA4223A7DB91D>102 D<903801FFC0010F13F8017F13FFD9FF807F3A03FE003FE048 +486D7E48486D7E48486D7EA2003F81491303007F81A300FF1680A9007F1600A3003F5D6D +1307001F5DA26C6C495A6C6C495A6C6C495A6C6C6CB45A6C6CB5C7FC011F13FC010113C0 +29257DA430>111 D<9038FE03F000FFEB0FFEEC3FFF91387C7F809138F8FFC000075B6C +6C5A5CA29138807F80ED3F00150C92C7FC91C8FCB3A2B512FEA422257EA427>114 +D<B539F001FFF8A4000390C7EA3F00161E6E133E6C153C6E137C6C15786E13F8017F5CEC +F001013F5C14F8011F495AA2ECFC07010F5CECFE0F010791C7FC6E5A6D131E15BE6D13BC +15FC6D5BA36E5AA26E5AA26E5AA26E5AA292C8FCA25C141E003F133E387F803C38FFC07C +147814F8EBC1F0EBC3E06C485A387D1F80D83FFFC9FCEA1FFCEA07F02D357EA432>121 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fg cmmi10 10 9 +/Fg 9 121 df<121C127FEAFF80A5EA7F00121C0909798817>58 +D<121C127FEAFF80A213C0A3127F121C1200A412011380A2120313005A1206120E5A5A5A +12600A19798817>I<150C151E153EA2153C157CA2157815F8A215F01401A215E01403A2 +15C01407A21580140FA215005CA2141E143EA2143C147CA2147814F8A25C1301A25C1303 +A2495AA25C130FA291C7FC5BA2131E133EA2133C137CA2137813F8A25B1201A25B1203A2 +5B1207A25B120FA290C8FC5AA2121E123EA2123C127CA2127812F8A25A12601F537BBD2A +>61 D<14E0EB03F8A21307A314F0EB01C090C7FCAB13F8EA03FEEA070F000E1380121C12 +1812381230EA701F1260133F00E0130012C05BEA007EA213FE5B1201A25B12035BA20007 +131813E01438000F133013C01470EB806014E014C01381EB838038078700EA03FEEA00F8 +15397EB71D>105 D<EB0FC0EA03FF5AA2EA001F1480A2133FA21400A25BA2137EA213FE +A25BA21201A25BA21203A25BA21207A25BA2120FA25BA2121FA25BA2123FA290C7FCA25A +A2EA7E03A2EAFE07130612FCA2130E130C131C1318EA7C38EA3C70EA1FE0EA0780123B7D +B919>108 D<D803E0137F3A07F801FFE03A0E3C0781F03A1C3E1E00F826383F387F0030 +5B4A137C00705B00605BA200E090C712FC485A137EA20000140101FE5C5BA2150300015D +5B15075E120349010F133016C0031F13700007ED80605B17E0EE00C0000F150149158016 +03EE0700001FEC0F0E49EB07FC0007C7EA01F02C267EA432>110 +D<14FF010313C090380F80F090383E00380178131C153C4913FC0001130113E0A33903F0 +00F06D13007F3801FFE014FC14FF6C14806D13C0011F13E013039038003FF01407140300 +1E1301127FA24814E0A348EB03C012F800E0EB07800070EB0F006C133E001E13F83807FF +E0000190C7FC1E267CA427>115 D<01F8EB03C0D803FEEB07E0D8070F130F000E018013 +F0121C12180038140700301403D8701F130112601500D8E03F14E000C090C7FC5BEA007E +16C013FE5B1501000115805B150316001203495B1506150E150C151C151815385D00015C +6D485A6C6C485AD97E0FC7FCEB1FFEEB07F024267EA428>118 D<903907E001F090391F +F807FC9039783E0E0F9039E01F1C1FD801C09038383F803A03800FF07F0100EBE0FF5A00 +0E4A1300000C157E021F133C001C4AC7FC1218A2C7123FA292C8FCA25CA2147EA214FEA2 +4A130CA20101141C001E1518003F5BD87F81143801835C00FF1560010714E03AFE0E7C01 +C0D87C1C495A2778383E0FC7FC391FF00FFC3907C003F029267EA42F>120 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fh cmr12 12 1 +/Fh 1 11 df<ED7FF0020FB57E91393FC01FE09139FE0003F8D903F8EB00FED90FE0EC3F +8049486E7ED97F80EC0FF049C86C7E48486F7E48486F7E00078349814848EE7F80A2001F +18C049163F003F18E0A34848EE1FF0AA6C6CEE3FE0A4001F18C06D167F000F1880A26C6C +EEFF00A200035F6D150100015F00005F6D1503017E5E017F15076D5E6D5E6E140F010F5E +010793C7FC6E5C0103151E00C018186D6C5CA2D86000033813306E147802701470A20070 +013002601370003018600038013802E013E0263FFFF891B5FCA36C18C0A33D467CC546> +10 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fi ecit1000 10 4 +/Fi 4 85 df<010FB512C016F04914F86D14FC16FE903801FC004A137FA20103143FA25C +A21307167E5CA2010F14FC150102C013F8ED03F0011FEB0FE0ED1FC091B512801600495B +8116809138001FC049130F16E0017E1307A213FEA25BA21201ED0FC05BA20003EC1F8015 +3F4914005D000714FEEC03FC007FB55AB65A5D15806C49C7FC28337BB22C>66 +D<903807FFF85B815D7FD900FEC7FC5CA21301A25CA21303A25CA21307A25CA2130FA25C +A2131FA25CA2133FA291C8FCA25BA2137EA213FEED03C049EB07E0A20001140F16C05BA2 +0003141F1680007FB6FCA2B7FC6C1500A223337BB22C>76 D<903807FFFE49EBFF8016C0 +16E06D14F0903901FC0FF8ECF80715030103EB01FCA214F015001307ED01F814E0A2010F +EB03F0A29138C007E0150F011FEB1FC0ED3F80913880FF00ECFFFE495B5D5D8190387F01 +FC1400137EA213FEA25BA200011301A201F85BA2000315E0913803FBF001F013F3A20007 +14F716E0EA7FFCD8FFFEEBFFC0A26E13806C486C1300C8127C26347BB22C>82 +D<0003B612F04815F8A35A9039E07F03F0EBC07EA2001FEBFE0716E0EB80FCA2D80F01EB +03C0000091C7FC5CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA291C8FCA2 +5BA2137EA213FEA25BA21201A2387FFFC080B5FC7E5C253374B22C>84 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fj ecbx1000 10 1 +/Fj 1 22 df<B812FEA32F03809730>21 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fk ecti1000 10 66 +/Fk 66 123 df<B712FCA2260279962A>21 D<04FFEB03F003039038E00FFC923A0FC0F0 +1F1E923A3F00783E0F923A7E01F87C3FDB7C03EBFC7F03FC14F8DA01F813F905F1137EDC +01E1133C913B03F00003F000A314074B130760A3140F4B130F60A3010FB812C0A3903C00 +1F80001F8000A3023F143F92C790C7FCA44A5C027E147EA402FE14FE4A5CA413014A1301 +5FA313034A13035FA313074A495AA44948495AA44948495AA3001CD9038090C8FC007E90 +380FC03F013E143E00FE011F5B133C017C5C3AF8780F01E0D878F0EB07C0273FE003FFC9 +FC390F8000FC404C82BA33>27 D<EE3FFC4BB51280923907E007C092391F8001E0DB3F00 +13F0037E13034B1307A24A5A18E04A48EB038094C7FCA314075DA4140F5DA3010FB7FCA2 +5F903A001F80007EA217FE023F5C92C7FCA216015F5C147E16035FA214FE4A13075FA301 +01140F5F4AECC1C0A2161F1783010316805CA2EF870013074A5CEE0F8EEE079EEE03FC01 +0FEC00F04A91C7FCA35C131FA2001C90CAFC127E5BEAFE3E133C137CEAF878EA78F0EA3F +E0EA0F80344C82BA2F>I<EA01E0EA07F0120F13F8121FA3120FEA07B0EA0030A2137013 +6013E013C0120113801203EA0700120E5A5A5A5A5A0D196EB919>39 +D<150C151C153815F0EC01E0EC03C0EC0780EC0F00141E5C147C5C5C495A1303495A5C13 +0F49C7FCA2133EA25BA25BA2485AA212035B12075BA2120F5BA2121FA290C8FCA25AA212 +3EA2127EA2127CA412FC5AAD1278A57EA3121C121EA2120E7EA26C7E6C7EA212001E5274 +BD22>I<140C140E80EC0380A2EC01C015E0A2140015F0A21578A4157C153CAB157CA715 +FCA215F8A21401A215F0A21403A215E0A21407A215C0140F1580A2141F1500A2143EA25C +A25CA2495AA2495A5C1307495A91C7FC5B133E133C5B5B485A12035B48C8FC120E5A1278 +5A12C01E527FBD22>I<EA03C0EA07F0120F121F13F8A313F0EA07B0EA003013701360A2 +13E013C01201EA038013005A120E5A5A5A5A5A0D197A8819>44 D<387FFFF8A2B5FCA214 +F0150579941E>I<120EEA3F80127F12FFA31300127E123C0909778819>I<1538A2157015 +F014011403EC07E0140F143F14FF010713C0EB3FCF141F131001001380A2143FA21500A2 +5CA2147EA214FEA25CA21301A25CA21303A25CA21307A25CA2130FA25CA2131FA25CA213 +3FA291C7FC497EB61280A31D3777B62A>49 D<EC03F0EC1FFE91387C0F809138F007C090 +3901C003E0D9038013F090380700014914F8131E131CEB3C60D9387013FCEB7830137013 +F013E0EC70030001016013F813C014E0ECC00701C114F0903881800F018314E09039C700 +1FC001FE133FD80078148090C7EA7F0015FEEC01F84A5A4A5AEC1F804AC7FC14FCEB01F0 +EB07C0495A013EC8FC5B4914C048481301485A5B4848130348C71380000E1407001E140F +48EC1F00D83FF85B397FFFC07E39783FFFFCEA700FD8F0075BD8E0015B6D13C0021FC7FC +263979B62A>I<EC03FCEC1FFF91387C07C09138F003E0903903C001F0EB078049C712F8 +131E5B013814FCEB78C0EB70E0EC600101F014F813E0A2ECE003D9E1C013F0EBF3809039 +7F0007E0011EEB0FC090C7FCED1F80ED3F00157EEC03F8903803FFF015C05D90380003E0 +6E7E81140081A281A5007E130100FE5CA31403485C12E04A5A4A5A5D4A5A007049C7FC00 +78137E6C13F8381E07F03807FFC0D801FCC8FC263978B62A>I<16E0ED03F0A3150716E0 +A3150F16C0A2151F1680A2153F1600A2157EA35DA24A5AA24A5AA25D4A5AA24A5A141F92 +C7FC143EA25CECF81C153E903801F07EEB03E014C0010713FE49485AEB1F00133EEB3C01 +01785B13F0EA01E03803C003D807FE5B381FFFC34813FB267C01FF13403AF0003FFFE000 +601307C71400EC0FE05DA3141F5DA3143F92C7FCA4143E141C24477DB62A>I<01031438 +496C13F89138F007F091B512E016804914005D15F815C0D91E1CC7FC011CC8FCA3133C13 +38A313781370A2147F9038F1FFC09038E783E09038FE01F09038F800F8485A497F49137C +5BC8127EA315FEA414015D121E127F1403485CA248495A12F800E05C140F4A5A5D6C49C7 +FC147E00785B387C01F8383E07F0381FFFC06C90C8FCEA03F8253977B62A>I<15FE9138 +03FF80020F13E0EC3F819138FC00F0495A903803F003903807E00790380FC00FD91F8013 +E0EB3F00017EEB07C092C7FC5B12015B12035B12075B000F13FE9038E3FF80391FC703E0 +9038DE01F0EBF80048487F8149137C5B007F147E5BA290C712FE5A5AA214015D5AA21403 +5DA348495AA24A5A5D4A5A6C133F007C91C7FC147E6C13F8381F03F06CB45A6C1380D801 +FCC8FC243976B62A>I<D9E07C131ED9E3FE131CD801EF143C496C137848B5FC16F09138 +0F01E03907F807039039F0038FC03A0FC001FF80497E48C7EA0F00121E003E141E003C14 +3E48143C157C4814784814F84A5AC7FC4A5AA24A5AA2140F5D141F4AC7FCA25C147E14FE +A25C13015C1303A2495AA3130F5CA2131F5CA2133FA25C137FA391C8FC137E133C273974 +B62A>I<EC03F8EC0FFF023F13809138FE07E0903801F003903903E001F0EB07C090390F +8000F849C7FCA2133EA21501017E14F0A2150316E0017F13079138800FC002C013809138 +E01F0090383FF03EECF87890381FFDF090380FFFC06D5B6D7F81010F7F90381E7FF89038 +7C1FFCEBF80F3903E007FE3807C003000F6D7E48487E90C77E123E007E80127CA200FC14 +3E5AA2157E157C5DA24A5A6C495A007C495A007E495A6C013FC7FC381F80FE380FFFF800 +0313E0C690C8FC253978B62A>I<133C137E13FF5AA313FE13FCEA00701300B2120EEA3F +80127F12FFA31300127E123C102477A319>58 D<EB0780EB0FC0EB1FE0133FA314C01480 +EB0E0090C7FCB2EA03C0EA07F0120F121F7FA35BEA07B0EA003013701360A213E05B1201 +485A90C7FC5A120E5A5A5A5A5A13347AA319>I<EE01C01603A21607160FA2161F83163F +A2167F16FF16EF150116CFED038FA2ED070FA2150E151E151C1538A203707FA2EDE007A2 +EC01C014031580EC0700A2140EA25CA25C027FB5FCA291B6FC9139E00007F849481303A2 +495A130791C7FC5B130E5BA25B1378137013F0487ED807FC4A7EB56C48B512F0A3343C7B +BB3E>65 D<0107B612FCEFFF8018C0903B000FF0001FF04BEB07F81703021F15FC17014B +14FEA2023F1400A24B1301A2147F18FC92C7120318F84A140718F04AEC0FE0EF1FC00101 +ED3F80EF7F004AEB01FEEE07F849B612E05F9139F80007F0EE01FC01076E7E177F4AEC3F +80A2010F16C0171F5CA2131F173F5CA2133FEF7F805C1800017F5D4C5A91C7485A5F4914 +0FEE1FE0494A5A00014AB45AB748C7FC16F816C037397BB83A>I<DB03FE130E92393FFF +801E92B5EAE03C913903FE01F0913A0FF000787CDA3FC0EB3CFC4AC7EA1FF802FE140FEB +03FC49481407494815F049481403495A5C49C813E05B485A5B000317C0485AA2485A1880 +485A94C7FCA2485AA3127F5BA312FF90CBFCA41738A217784816707E17F06C5E16015F16 +036C6C4A5A94C7FC001F150E6D141E000F5D6D5C6C6C495A6C6CEB03C0D801FEEB0F8027 +007F807EC8FC6DB45A010F13E0010090C9FC373D74BA3B>I<0107B8FCA3903A000FF000 +034BEB007F183E141F181E5DA2143FA25D181C147FA29238000380A24A130718004A91C7 +FC5E13015E4A133E167E49B512FEA25EECF8000107147C163C4A1338A2010F147818E04A +13701701011F16C016004A14031880013F150718004A5CA2017F151E173E91C8123C177C +4915FC4C5A4914070001ED7FF0B8FCA25F38397BB838>69 D<0107B712FEA3903A000FF0 +00074B1300187C021F153CA25DA2143FA25D1838147FA292C8FCEE03804A130718004A91 +C7FCA201015CA24A131E163E010314FE91B5FC5EA2903807F800167C4A1378A2130FA24A +1370A2011F14F0A24A90C8FCA2133FA25CA2137FA291CAFCA25BA25B487EB6FCA337397B +B836>I<DB03FE130E92393FFF801E92B5EAE03C913903FE01F0913A0FF000787CDA3FC0 +EB3CFC4AC7EA1FF802FE140FEB03FC49481407494815F049481403495A5C49C813E05B48 +5A5B000317C0485AA2485A1880485A94C7FCA2485AA3127F5BA312FF90CBFC0307B512E0 +A392390007FC00705A16075FA36C150F5FA36C6C141F5F121F6D143F6C7E4C5A6C6C14FF +6C6CEB03EFD801FEEB07C728007FC03F07C7FC90393FFFFC03010F01F0C8FC0100138037 +3D74BA40>I<0103B5D8F80FB512E0A390260007F8C7381FE0004B5DA2020F153F615DA2 +021F157F96C7FC5DA2023F5D605DA2027F14016092C7FCA24A1403605CA249B7FC60A202 +FCC712070103150F605CA20107151F605CA2010F153F605CA2011F157F95C8FC5CA2013F +5D5F5CA2017F14015F91C7FC491403007FD9FE01B512F8B55BA243397CB83E>I<0103B5 +12F8A390390007F8005DA2140FA25DA2141FA25DA2143FA25DA2147FA292C7FCA25CA25C +A21301A25CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA25CA2137FA291C8 +FC497EB6FCA25C25397CB820>I<0207B512F0A391390007FC006F5AA215075EA3150F5E +A3151F5EA3153F5EA3157F93C7FCA35D5DA314015DA314035DA31407A25DA2140FA2003F +5C5A141F485CA24A5A12FC00E049C8FC14FE00705B495A6C485A381E0FC06CB4C9FCEA01 +F82C3B78B82C>I<0103B500F890387FFFE0A21AC090260007F8C7380FFC004B15E06102 +0F4BC7FC183E4B5C18F0021F4A5A4D5A4BEB0F804DC8FC023F143C5F4B5B4C5A027FEB07 +C04CC9FCED001E5E4A5BED01FCECFE0315070101497E151FECFC7C4B7E903903FDE07FDA +FFC07F1580ED003F49488014F84A131F83130F160F4A801607011F81A24A130383133F16 +014A80A2017F6E7EA291C8FC494A7F007F01FE011F13FCB55CA243397CB840>I<0107B5 +12FCA25E9026000FF8C7FC5D5D141FA25DA2143FA25DA2147FA292C8FCA25CA25CA21301 +A25CA21303A25CA21307A25CA2130F170C4A141CA2011F153C17384A1478A2013F157017 +F04A14E01601017F140317C091C71207160F49EC1F80163F4914FF000102071300B8FCA2 +5E2E397BB834>I<902607FFF8923807FFF0614F13E0D9000FEFF0004F5AA2021F167FF1 +EFC0141DDA1CFCEC01CF023C16DF9538039F800238ED071FA20278ED0E3F97C7FC027015 +1CA202F04B5AF0707E14E0037E14E0010117FE4D485A02C0EC0380A20103ED0701610280 +140EA20107ED1C0305385B14006F137049160705E05B010EEC01C0A2011E913803800F61 +011CEC0700A2013C020E131F4C5C1338ED1FB80178163F04F091C8FC01705CA201F04A5B +187E00015DD807F816FEB500C09039007FFFFC151E150E4C397AB84A>I<902603FFF891 +B512E0A281D90007923807F8006F6E5A61020F5E81DA0E7F5DA2021E6D1307033F92C7FC +141C82DA3C1F5C70130EEC380FA202786D131E0307141C147082DAF003143C70133814E0 +150101016E1378030014705C8201036E13F0604A1480163F010715C1041F5B91C7FC17E1 +49EC0FE360010E15F31607011E15FF95C8FC011C80A2013C805F1338160013785F01F815 +7CEA03FC267FFFE0143CB51538A243397CB83E>I<ED03FE92383FFFC09238FC07F09139 +03E001F891390F80007C023FC77E027E8002F815804948EC0FC0EB07E04948EC07E0131F +4A15F049C81203137E01FE16F8485AA2485AA2485AA2120F5B001F16075B123FA34848ED +0FF0A448C9EA1FE0A3EF3FC0A21880177F18005F5F16015F6C4B5A4C5AA24C5A6C4B5A6D +4A5A001F93C7FC6D147E000F5D6C6CEB03F06C6C495A6C6CEB0F806C6C013FC8FC90383F +01FC90381FFFE0010190C9FC353D74BA40>I<0107B612F817FF1880903B000FF0003FE0 +4BEB0FF0EF03F8141FEF01FC5DA2023F15FEA25DA2147FEF03FC92C7FCA24A15F817074A +15F0EF0FE01301EF1FC04AEC3F80EFFE0001034A5AEE0FF091B612C04CC7FCD907F8C9FC +A25CA2130FA25CA2131FA25CA2133FA25CA2137FA291CAFCA25BA25B1201B512FCA33739 +7BB838>I<0103B612F017FEEFFF80903B0007F8003FC04BEB0FF01707020FEC03F8EF01 +FC5DA2021F15FEA25DA2143FEF03FC5DA2027FEC07F818F092C7120F18E04AEC1FC0EF3F +004A14FEEE01F80101EC0FE091B6128004FCC7FC9138FC003F0103EC0F80834A6D7E8301 +071403A25C83010F14075F5CA2011F140FA25CA2133F161F4AECE007A2017F160F180E91 +C7FC49020F131C007F01FE153CB5913807F078040313F0CAEAFFE0EF3F80383B7CB83D> +82 D<92383FC00E913901FFF01C020713FC91391FC07E3C91393F001F7C027CEB0FF84A +130749481303495A4948EB01F0A2495AA2011F15E091C7FCA34915C0A36E90C7FCA2806D +7E14FCECFF806D13F015FE6D6D7E6D14E0010080023F7F14079138007FFC150F15031501 +A21500A2167C120EA3001E15FC5EA3003E4A5AA24B5AA2007F4A5A4B5A6D49C7FC6D133E +D8F9F013FC39F8FC03F839F07FFFE0D8E01F138026C003FCC8FC2F3D7ABA2F>I<0007B8 +12E0A25AD9F800EB001F01C049EB07C0485AD900011403121E001C5C003C178014031238 +00785C00701607140700F01700485CA2140FC792C7FC5DA2141FA25DA2143FA25DA2147F +A292C9FCA25CA25CA21301A25CA21303A25CA21307A25CA2130FA25CEB3FF0007FB512F8 +B6FCA2333971B83B>I<003FB539800FFFFEA326007F80C7EA7F8091C8EA3F00173E4915 +3CA2491538A20001167817705BA2000316F05F5BA2000715015F5BA2000F15035F5BA200 +1F150794C7FC5BA2003F5D160E5BA2007F151E161C90C8FCA2163C4815385A16781670A2 +16F04B5A5E1503007E4A5A4BC8FC150E6C143E6C6C5B15F0390FC003E03907F01FC00001 +B5C9FC38007FFCEB1FE0373B70B83E>I<49B5D8F007B5FCA3D9000790C713E0DA03FCEC +7F00187C020115786F5C4D5A02005D6F495A4DC7FC6F5BEE801E5F033F5BEEC0705F9238 +1FC1C016E3EEE780DB0FEFC8FC16FE6F5A5EA2150382A2150782150F151CED3CFF5D4B7E +DA01E07FEDC03FDA03807FEC0700020E131F021E805C4A130F0270805C49481307494880 +130749C71203011E81133E01FE81D807FF1407B500E090387FFFFC93B5FC6040397CB83E +>88 D<B812FC17FEA217FC2F047C7040>95 D<1318133813F0EA01C013801203EA070012 +0E120C121C5A1230A212701260A212EFEAFF80A6EA7F00123C0D196FB919>I<14F8EB07 +FE90381F871C90383E03FE137CEBF801120148486C5A485A120FEBC001001F5CA2EA3F80 +1403007F5C1300A21407485C5AA2140F5D48ECC1C0A2141F15831680143F1587007C017F +1300ECFF076C485B9038038F8E391F0F079E3907FE03FC3901F000F0222677A42A>I<13 +3FEA1FFFA3C67E137EA313FE5BA312015BA312035BA31207EBE0F8EBE7FE9038EF0F8039 +0FFC07C013F89038F003E013E0D81FC013F0A21380A2123F1300A214075A127EA2140F12 +FE4814E0A2141F15C05AEC3F80A215005C147E5C387801F8007C5B383C03E0383E07C038 +1E1F80D80FFEC7FCEA01F01C3B77B926>I<147F903803FFC090380FC1E090381F007001 +7E13784913383901F801F83803F003120713E0120FD81FC013F091C7FC485AA2127F90C8 +FCA35A5AA45AA3153015381578007C14F0007EEB01E0003EEB03C0EC0F806CEB3E00380F +81F83803FFE0C690C7FC1D2677A426>I<ED01F815FFA3150316F0A21507A216E0A2150F +A216C0A2151FA21680A2153FA202F81300EB07FE90381F877F90383E03FF017C5BEBF801 +12013803F00048485B120FEBC001121F5DEA3F801403127F01005BA214075A485CA2140F +A248ECC1C0A2141F15C3ED8380143F1587007C017F1300ECFF076C485B9038038F8E391F +0F079E3907FE03FC3901F000F0253B77B92A>I<147F903803FFC090380FC1E090383F00 +F0017E13785B485A485A485A120F4913F8001F14F0383F8001EC07E0EC1F80397F81FF00 +EBFFF8148090C8FC5A5AA55AA21530007C14381578007E14F0003EEB01E0EC03C06CEB0F +806CEB3E00380781F83803FFE0C690C7FC1D2677A426>I<ED07C0ED1FF0ED3E38ED7C3C +EDF8FC15F9140115F1020313F8EDF0F0160014075DA4140F5DA4141F5D010FB512C05B16 +809039003F800092C7FCA45C147EA414FE5CA413015CA413035CA413075CA4130F5CA313 +1F5CA391C8FC5B121CEA7E3EA2EAFE3C137C1378EAF8F01278EA3FC0EA0F80264C82BA19 +>I<EC07C0EC3FF09138FC38E0903901F01FF0EB03E0903807C00FEB0F80011F1307D93F +0013E05B017E130F13FE4914C01201151F1203491480A2153F1207491400A25DA249137E +A215FEA25D00031301140314076C6C485A0000131FEB787BEB3FF390380FC3F0EB000314 +07A25DA2140F5D121C007E131F5D00FE49C7FC147E5C387801F8387C07E0381FFF80D803 +FEC8FC24367CA426>I<EB03F0EA01FFA3EA00075CA3130F5CA3131F5CA3133F91C8FCA3 +5B90387E07F0EC1FFCEC783E9038FFE01F02C01380EC800F1400485A16C05B49EB1F8012 +035BA2153F000715005BA25D000F147E5B15FE5D121FD98001131C15F8163C003F010313 +38010013F0A216704814E0007E15F016E0EDE1C000FE903801E38048903800FF00003814 +3C263B7BB92A>I<EB01C0EB07E014F0130F14E01307EB038090C7FCAB13F0EA03FCEA07 +1EEA0E1F121CA212385B1270A25BEAF07E12E013FEC65AA212015B1203A25B12075BA200 +0F13E013C013C1001F13C01381A2EB83801303EB0700A2130E6C5AEA07F8EA01E0143879 +B619>I<EB03F0EA01FFA3EA00075CA3130F5CA3131F5CA3133F91C8FCA35B017EEB0F80 +ED3FE015F09039FE01C1F09038FC0387EC0707140E0001011C13E0EBF838913830038002 +70C7FC00035BEBF1C0EBF38001FFC8FCEA07FC7FEBFFC0EBE7F8380FE1FCEBC07E147F80 +001F809039801F81C0A21583003F013F138001001303A21507481500007E133EEC1E0E15 +1E00FE6D5A48EB07F80038EB01E0243B7BB926>107 D<EB0FC0EA07FFA3EA001F1480A2 +133FA21400A25BA2137EA213FEA25BA21201A25BA21203A25BA21207A25BA2120FA25BA2 +121FA25BA2123FA290C7FCA25AA2EA7E0EA212FE131EEAFC1CA2133C133812F81378EA78 +70EA7CE0121FEA0F80123B79B915>I<D801E001FEEB07F03C07F803FF801FFC3C0E3C0F +07C0783E3C1E3E3C03E1E01F261C1F78D9F3C013803C383FF001F7800F02E01400007801 +C013FE007018C002805B4A4848EB1F80EAF07FD8E07E5CA200000207143F01FE1700495C +A2030F5C0001177E495C18FE031F5C120349DA8001131C18F8033F153C00070403133849 +020013F0A24B1570000F17E049017E15F019E003FEECE1C0001FEE01E34949903800FF00 +0007C70038143C3E2679A444>I<D801E013FE3A07F803FF803A0E3C0F07C03A1E3E3C03 +E0261C1F787F39383FF00114E0007813C000708114804A485AEAF07FEAE07EA200001407 +01FE5C5BA2150F00015D5B151F5E12034990383F8380160316070007027F130049137EA2 +160E000F147C49141E161C5E001FEC3C7849EB1FE00007C7EA0780292679A42F>I<147F +903803FFC090380FC1F090381F00F8017E137C5B4848137E4848133E0007143F5B120F48 +5AA2485A157F127F90C7FCA215FF5A4814FEA2140115FC5AEC03F8A2EC07F015E0140F00 +7C14C0007EEB1F80003EEB3F00147E6C13F8380F83F03803FFC0C648C7FC202677A42A> +I<9039078007C090391FE03FF090393CF0787C903938F8E03E9038787FC00170497EECFF +00D9F0FE148013E05CEA01E113C15CA2D80003143FA25CA20107147FA24A1400A2010F5C +5E5C4B5A131F5EEC80035E013F495A6E485A5E6E48C7FC017F133EEC70FC90387E3FF0EC +0F8001FEC9FCA25BA21201A25BA21203A25B1207B512C0A3293580A42A>I<ECF8039038 +07FE0790381F871F90383E03BF017C13FEEBF80112013803F000484813FC120F5B001F13 +0115F8EA3F80A2007F1303010013F0A34813074814E0A3140F4814C0A3141F1580143FA2 +007C137FECFF006C5AEB03BF381F0F7F3807FE7EEA01F0C7FC14FE5CA313015CA313035C +130748B512C0A3203577A426>I<3903C003F0390FF01FFC391E783C0F381C7C703A3C3E +E03F8038383FC0EB7F800078150000701300151CD8F07E90C7FCEAE0FE5BA2120012015B +A312035BA312075BA3120F5BA3121F5BA3123F90C9FC120E212679A423>I<14FE903807 +FF8090380F83C090383E00E04913F00178137001F813F00001130313F0A215E00003EB01 +C06DC7FC7FEBFFC06C13F814FE6C7F6D13807F010F13C01300143F141F140F123E127E00 +FE1480A348EB1F0012E06C133E00705B6C5B381E03E06CB45AD801FEC7FC1C267AA422> +I<EB0380EB07C0130FA4131F1480A3133F1400A35B137E007FB5FCA2B6FC3800FC00A312 +015BA312035BA312075BA3120F5BA3121FEB801CA2143C003F1338EB0078147014F014E0 +EB01C0EA3E03381F0780380F0F00EA07FCEA01F0183579B31C>I<13F8D803FEEB01C0D8 +078FEB03E0390E0F8007121E121C0038140F131F007815C01270013F131F00F0130000E0 +15805BD8007E133FA201FE14005B5D120149137EA215FE120349EBFC0EA20201131E161C +15F813E0163CD9F003133814070001ECF07091381EF8F03A00F83C78E090393FF03FC090 +390FC00F00272679A42D>I<01F0130ED803FC133FD8071EEB7F80EA0E1F121C123C0038 +143F49131F0070140FA25BD8F07E140000E08013FEC6485B150E12015B151E0003141C5B +A2153C000714385B5DA35DA24A5A140300035C6D48C7FC0001130E3800F83CEB7FF8EB0F +C0212679A426>I<01F01507D803FC903903801F80D8071E903907C03FC0D80E1F130F12 +1C123C0038021F131F49EC800F00701607A249133FD8F07E168000E0ED000313FEC64849 +130718000001147E5B03FE5B0003160E495BA2171E00070101141C01E05B173C1738A217 +781770020314F05F0003010713016D486C485A000190391E7C07802800FC3C3E0FC7FC90 +393FF81FFE90390FE003F0322679A437>I<903907E007C090391FF81FF89039787C383C +9038F03E703A01E01EE0FE3803C01F018013C0D8070014FC481480000E1570023F130000 +1E91C7FC121CA2C75AA2147EA214FEA25CA21301A24A1370A2010314F016E0001C5B007E +1401010714C000FEEC0380010F1307010EEB0F0039781CF81E9038387C3C393FF03FF039 +07C00FC027267CA427>I<13F0D803FCEB01C0D8071EEB03E0D80E1F1307121C123C0038 +140F4914C01270A249131FD8F07E148012E013FEC648133F160012015B5D0003147E5BA2 +15FE00075C5BA214015DA314035D14070003130FEBF01F3901F87FE038007FF7EB1FC7EB +000F5DA2141F003F5C48133F92C7FC147E147C007E13FC387001F8EB03E06C485A383C1F +80D80FFEC8FCEA03F0233679A428>I<903903C0038090380FF007D91FF81300496C5A01 +7F130E9038FFFE1E9038F83FFC3901F007F849C65A495B1401C7485A4A5A4AC7FC141E5C +5C5C495A495A495A49C8FC131E5B49131C5B4848133C48481338491378000714F8390FF8 +01F0391FFF07E0383E1FFFD83C0F5B00785CD8700790C7FC38F003FC38E000F021267BA4 +22>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fl cmr7 7 8 +/Fl 8 57 df<140EB3A2B812E0A3C7000EC8FCB3A22B2B7DA333>43 +D<EB3F803801FFF03803E0F83807803C48487E001E7F003E1480A2003C1307007C14C0A4 +00FC14E0AE007C14C0A36CEB0F80A36CEB1F006C131E6C6C5A3803E0F86CB45A38003F80 +1B277EA521>48 D<13381378EA01F8121F12FE12E01200B3AB487EB512F8A215267BA521 +>I<13FF000313E0380E03F0381800F848137C48137E00787F12FC6CEB1F80A4127CC7FC +15005C143E147E147C5C495A495A5C495A010EC7FC5B5B903870018013E0EA0180390300 +030012065A001FB5FC5A485BB5FCA219267DA521>I<13FF000313E0380F01F8381C007C +0030137E003C133E007E133FA4123CC7123E147E147C5C495AEB07E03801FF8091C7FC38 +0001E06D7E147C80143F801580A21238127C12FEA21500485B0078133E00705B6C5B381F +01F03807FFC0C690C7FC19277DA521>I<1438A2147814F81301A2130313071306130C13 +1C131813301370136013C012011380EA03005A120E120C121C5A12305A12E0B612E0A2C7 +EAF800A7497E90383FFFE0A21B277EA621>I<EB0FE0EB3FF8EBF81C3801E0063803C01F +48485AEA0F005A121E003E131E91C7FC5AA21304EB3FC038FCFFF038FDC078EB003CB413 +3E48131E141FA2481480A4127CA4003C1400123E001E131E143E6C133C6C6C5A3803C1F0 +3801FFC06C6CC7FC19277DA521>54 D<137F3803FFE0380781F8380E007C48131E5A8012 +78A3127C007E131EEA3F80EBE03C6C6C5A380FFCF03807FFC06C5BC613E0487F38079FFC +380F07FEEA1E0348C67E48133FEC1F8048130FA21407A315001278140E6C5B6C5B380F80 +F03803FFE0C66CC7FC19277DA521>56 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fm ecbx1200 12 40 +/Fm 40 123 df<ED0FFF4AB512C0020F14F0027F80903A01FFF803FC499038C000FE010F +EB00034948497E49485B5C495A4C138001FF6E13005CA3705AEE01F893C8FCA74BB51280 +B9FCA5C69038E00003B3B0007FD9FFC1B6FCA538467EC53E>28 D<B612F8A91D097F9A25 +>45 D<EA07C0EA1FF0EA3FF8EA7FFCEAFFFEA7EA7FFCEA3FF8EA1FF0EA07C00F0F788E1F +>I<EC3FF849B5FC010F14E0013F14F890397FF01FFC9039FFC007FE4890380001FF4848 +6D1380000716C049147F000F16E049143F001F16F0A2003F16F8A249141F007F16FCA600 +FF16FEB3A3007F16FCA56C6CEC3FF8A3001F16F0A2000F16E06D147F000716C06D14FF6C +6C4913806C6D4813006C6D485A90397FF01FFC6DB55A010F14E0010314809026003FF8C7 +FC2F427CC038>48 D<EC03C01407141F147FEB03FF133FB6FCA413C3EA0003B3B3ADB712 +FCA5264177C038>I<ECFFE0010F13FE013F6D7E90B612E0000315F82607FC0313FE3A0F +E0007FFFD81F806D138048C7000F13C0488001C015E001F07F00FF6E13F07F17F881A46C +5A6C5A6C5AC9FC17F05DA217E05D17C04B13804B1300A2ED1FFC4B5A5E4B5A4B5A4A90C7 +FC4A5A4A5AEC0FF04A5AEC3F804AC7127814FE495A494814F8D907E014F0495A495A49C8 +FC017C140149140348B7FC4816E05A5A5A5A5AB8FC17C0A42D417BC038>I<ECFFF00107 +13FF011F14C0017F14F049C66C7ED803F8EB3FFED807E06D7E81D80FF86D138013FE001F +16C07FA66C5A6C4815806C485BC814005D5E4B5A4B5A4B5A4A5B020F1380902607FFFEC7 +FC15F815FF16C090C713F0ED3FFCED0FFEEEFF80816F13C017E0A26F13F0A217F8A3EA0F +C0EA3FF0487EA2487EA217F0A25D17E06C5A494913C05BD83F80491380D81FF0491300D8 +0FFEEBFFFE6CB612F800015D6C6C14C0011F49C7FC010113E02D427BC038>I<163FA25E +5E5D5DA25D5D5D5DA25D92B5FCEC01F7EC03E7140715C7EC0F87EC1F07143E147E147C14 +F8EB01F0EB03E0130714C0EB0F80EB1F00133E5BA25B485A485A485A120F5B48C7FC123E +5A12FCB91280A5C8000F90C7FCAC027FB61280A531417DC038>I<0007150301E0143F01 +FFEB07FF91B6FC5E5E5E5E5E16804BC7FC5D15E092C8FC01C0C9FCAAEC3FF001C1B5FC01 +C714C001DF14F09039FFE03FFC9138000FFE01FC6D7E01F06D13804915C0497F6C4815E0 +C8FC6F13F0A317F8A4EA0F80EA3FE0487E12FF7FA317F05B5D6C4815E05B007EC74813C0 +123E003F4A1380D81FC0491300D80FF0495AD807FEEBFFFC6CB612F0C65D013F1480010F +01FCC7FC010113C02D427BC038>I<4AB47E021F13F0027F13FC49B6FC01079038807F80 +90390FFC001FD93FF014C04948137F4948EBFFE048495A5A1400485A120FA248486D13C0 +EE7F80EE1E00003F92C7FCA25B127FA2EC07FC91381FFF8000FF017F13E091B512F89039 +F9F01FFC9039FBC007FE9039FF8003FF17804A6C13C05B6F13E0A24915F0A317F85BA412 +7FA5123FA217F07F121FA2000F4A13E0A26C6C15C06D4913806C018014006C6D485A6C90 +38E01FFC6DB55A011F5C010714C0010191C7FC9038003FF02D427BC038>I<121E121F13 +FC90B712FEA45A17FC17F817F017E017C0A2481680007EC8EA3F00007C157E5E00785D15 +014B5A00F84A5A484A5A5E151FC848C7FC157E5DA24A5A14035D14074A5AA2141F5D143F +A2147F5D14FFA25BA35B92C8FCA35BA55BAA6D5A6D5A6D5A2F447AC238>I<EC7FF00103 +B5FC010F14C0013F14F090397F801FFC3A01FC0003FE48486D7E497F4848EC7F80163F48 +4815C0A2001F151FA27FA27F7F01FE143F6D158002C0137F02F014006C01FC5B6E485A6C +9038FF83FCEDE7F86CECFFE06C5D6C92C7FC6D14C06D80010F14F882013F8090B7FC4801 +3F14802607FC0F14C0260FF80314E04848C6FC496D13F0003F141F48481307496D13F815 +0000FF157F90C8123F161F160FA21607A36D15F0127F160F6D15E06C6C141F6DEC3FC06C +6CEC7F80D80FFE903801FF003A07FFC00FFE6C90B55AC615F0013F14C0010F91C7FC0100 +13F02D427BC038>I<EC7FF0903807FFFE011F6D7E017F14E09039FFE03FF0489038800F +F848496C7E48488048486D7E001F80003F1680A2484815C08117E0A212FF17F0A617F8A4 +5D127FA3003F5CA26C7E5D6C6C5B12076C6C131E6CEBC07C6CEBFFF8013F5B010F01C013 +F00101130090C8FCA217E05DA2EA03C0D80FF015C0487E486C491380A217004B5A150F5E +49495A6C48495A01C0EBFFE0260FF0035B6CB65A6C4AC7FC6C14F86C6C13E0D907FEC8FC +2D427BC038>I<DCFFF01470031F01FF14F04AB6EAE0010207EDF803023FEDFE0791B539 +E001FF0F4949C7EA3F9F010701F0EC0FFF4901C0804990C87E4948814948814948167F48 +49163F4849161F5A4A160F485B19074890CAFC19035A5BA2007F1801A34994C7FC12FFAE +127F7F1AF0A2123FA27F6C18011AE06C7F19036C6D17C06E16077E6C6DEE0F806C6DEE1F +006D6C5E6D6C167E6D6C6C5D6D6D4A5A6D01F0EC07F0010101FEEC1FE06D903AFFF001FF +80023F90B6C7FC020715FC020115F0DA001F1480030001F8C8FC44467AC451>67 +D<BA1280A419C026003FFEC7121F1701EF007F183F181F180F180719E01803A31801A3EE +01E0F000F0A419001603A31607160F167F91B6FCA59138FE007F160F16071603A31601A6 +93C9FCAFB712F0A53C447CC346>70 D<B712F0A526003FFECAFCB3B1F00780A4180F1900 +A460A360A2187EA218FE170117031707171F177FEE03FFB95AA539447CC343>76 +D<B500FE067FB512806E95B6FCA26F5EA2D8003F50C7FC013D6DEE03DFA2013C6DEE079F +A26E6CEE0F1FA26E6C161EA26E6C163CA36E6C1678A26E6C16F0A26E6DEC01E0A26E6DEC +03C0A36E6DEC0780A26F6CEC0F00A26F6C141EA26F6C5CA36F6C5CA26F6C5CA26F6D485A +A26F6D485AA26F6D485AA3706C48C7FCA293383FF81EA2706C5AA2706C5AA3706C5AA270 +5BA2705BA2705BA2B6057FB6128071C7FCA2173E171C61447CC36A>I<B64BB512FE8181 +A281D8003F6D91C7EA780081013D7F81133C6E7E6E7F6E7F6E7F6E7F82806E7F6E7F6F7E +6F7F83816F7F6F7F6F7F6F7F6F7F8382707F707F707F707F8482707F707F717E71138071 +13C019E0837113F07113F87113FC7113FE19FF847213F884848484A28484197F193F191F +A2190F1907B61603190119001A78A24F447CC358>I<B9FC18F018FE727E19E0D8001F90 +C7000F7F05017F716C7E727E727E721380A21AC084A21AE0A91AC0A24E1380A21A00604E +5A4E5A4D485A050F5B92B712C096C7FC18FC18C092CBFCB3A7B712E0A543447DC34D>80 +D<B812F8EFFFC018F818FE727ED8001F90C7003F13E005037F05007F727E727E727EA286 +84A286A762A24E90C7FCA24E5A61187F943801FFF005075B053F138092B7C8FC18F818E0 +18F892C77FEF3FFF050F7F717F717FA2717FA2717FA785A61B0F85A2187F73131F72141E +B700E06DEB803E72EBE0FC72EBFFF8060114F0726C13E0CC0007138050457DC354>82 +D<B792B6FCA526003FFECAEAFC00806D606F15016D608119036D606F15076D606F150F6D +6081191F6D6D93C7FC61027F163E6F157E023F167C8119FC6E6D5C18016E5E7013036E5E +8218076E6D5C180F6E5E70131F6E93C8FC705B037F143E82187E033F147C7013FC6F5C17 +816F5C17C117C36F5C17E76F5C17FF6F5CA36F91C9FCA2705AA2705AA3705AA2705AA270 +5AA250457EC355>86 D<903801FFE0011F13FE017F6D7E48B612E03A03FE007FF84848EB +1FFC6D6D7E486C6D7EA26F7FA36F7F6C5A6C5AEA00F090C7FCA40203B5FC91B6FC130701 +3F13F19038FFFC01000313E0481380381FFE00485A5B127F5B12FF5BA35DA26D5B6C6C5B +4B13F0D83FFE013EEBFFC03A1FFF80FC7F0007EBFFF86CECE01FC66CEB8007D90FFCC9FC +322F7DAD36>97 D<EC3FFC49B512C0010F14F0013F14FC90397FF003FE9039FFC001FF00 +03495A48494813805B120F485AA2485A6F1300007F6E5AED00784991C7FCA212FFAC6C7E +A3123F6DEC03C0A26C6C1407000F16806D140F6C6DEB1F006C6D133E6C01F05B3A007FFC +03F86DB55A010F14C0010391C7FC9038003FF82A2F7CAD32>99 D<EE03FEED07FFA5ED00 +1F160FB1EC3FE0903803FFFC010FEBFF8F013F14CF9039FFF807FF48EBC0014890388000 +7F4890C7123F4848141F49140F121F485AA3127F5BA212FFAC127FA37F123FA26C6C141F +A26C6C143F0007157F6C6C91B5FC6CD9C00314FC6C9038F01FEF6DB5128F011FEBFE0F01 +0713F89026007FC0EBF80036467CC43E>I<EC3FF80103B57E010F14E0013F8090397FF8 +3FF89039FFC007FC48496C7E48496C7E48486D1380485A001FED7FC05B003FED3FE0A212 +7F5B17F0161F12FFA290B7FCA401F0C9FCA5127FA27FA2123F17F06C7E16016C6C15E06C +6C14036C6DEB07C06C6DEB0F806C01F0EB3F0090397FFE01FE011FB55A010714F0010114 +C09026001FFEC7FC2C2F7DAD33>I<DAFFE0137E010F9039FE03FF80013FEBFF8F90B812 +C048D9C07F133F489038001FF84848EB0FFC4848903907FE1F80001F9238FF0F00496D90 +C7FCA2003F82A8001F93C7FCA26D5B000F5D6C6C495A6C6C495A6C9038C07FF04890B55A +1680D8078F49C8FC018013E0000F90CAFCA47F7F7F90B612C016FC6CEDFF8017E06C826C +16FC7E000382000F82D81FF0C77ED83FC014074848020113808248C9FC177FA46D15FF00 +7F17006D5C6C6C4A5A6C6C4A5AD80FFEEC3FF83B07FFC001FFF0000190B612C06C6C92C7 +FC010F14F8D9007F90C8FC32427DAC38>103 D<EB7FC0B5FCA512037EB1ED07FE92383F +FF8092B512E002C114F89139C7F03FFC9138CF801F9139DF000FFE14DE14FC4A6D7E5CA2 +5CA35CB3A7B60083B512FEA537457CC43E>I<137C48B4FC4813804813C0A24813E0A56C +13C0A26C13806C1300EA007C90C7FCAAEB7FC0EA7FFFA512037EB3AFB6FCA518467CC520 +>I<EB7FC0B5FCA512037EB3B3B3A3B61280A519457CC420>108 D<90277F8007FEEC0FFC +B590263FFFC090387FFF8092B5D8F001B512E002816E4880913D87F01FFC0FE03FF8913D +8FC00FFE1F801FFC0003D99F009026FF3E007F6C019E6D013C130F02BC5D02F86D496D7E +A24A5D4A5DA34A5DB3A7B60081B60003B512FEA5572D7CAC5E>I<90397F8007FEB59038 +3FFF8092B512E0028114F8913987F03FFC91388F801F000390399F000FFE6C139E14BC02 +F86D7E5CA25CA35CB3A7B60083B512FEA5372D7CAC3E>I<EC1FFC49B512C0010714F001 +1F14FC90397FF80FFF9026FFC0017F48496C7F4848C7EA3FE000078248486E7E49140F00 +1F82A2003F82491407007F82A400FF1780AA007F1700A46C6C4A5AA2001F5E6D141F000F +5E6C6C4A5AA26C6C6CEBFFE06C6D485B27007FF80F90C7FC6DB55A010F14F8010114C090 +26001FFCC8FC312F7DAD38>I<90397FC00FF8B590B57E02C314E002CF14F89139DFC03F +FC9139FF001FFE000301FCEB07FF6C496D13804A15C04A6D13E05C7013F0A2EF7FF8A4EF +3FFCACEF7FF8A318F017FFA24C13E06E15C06E5B6E4913806E4913006E495A9139DFC07F +FC02CFB512F002C314C002C091C7FCED1FF092C9FCADB67EA536407DAC3E>I<90387F80 +7FB53881FFE0028313F0028F13F8ED8FFC91389F1FFE000313BE6C13BC14F8A214F0ED0F +FC9138E007F8ED01E092C7FCA35CB3A5B612E0A5272D7DAC2E>114 +D<90391FFC038090B51287000314FF120F381FF003383FC00049133F48C7121F127E00FE +140FA215077EA27F01E090C7FC13FE387FFFF014FF6C14C015F06C14FC6C800003806C15 +806C7E010F14C0EB003F020313E0140000F0143FA26C141F150FA27EA26C15C06C141FA2 +6DEB3F8001E0EB7F009038F803FE90B55A00FC5CD8F03F13E026E007FEC7FC232F7CAD2C +>I<EB01E0A51303A41307A2130FA2131FA2133F137F13FF1203000F90B51280B7FCA4C6 +01E0C7FCB3A3ED01E0A9150302F013C0137F150790393FF80F8090391FFC1F006DB5FC6D +13FC01015B9038003FE023407EBE2C>I<B6903803FFFCA5000101E09038003E006C163C +80017F5D8017F8013F5D6E1301011F5D6E1303010F5D6E13076D5DED800F6D92C7FC15C0 +5E6DEBE01E163E6D143CEDF07C027F1378EDF8F8023F5B15FD021F5B15FF6E5BA36E5BA2 +6E90C8FCA26E5AA26E5AA21578362C7EAB3B>118 D<B5D8FE1FB539801FFFF0A5000190 +27C0003FE0C7EA7C007114786E17F86C6F6C5C6E1601017F6E6C5CA26E011F1403013F6F +5C6E013F1407011F6F5CA26E0179140F010F048090C7FC6E01F95C6D02F0EBC01E15806D +902681E07F5B18E003C3157C6D9139C03FF07815E76DDA801F5B18F803FF14F96E903900 +0FFDE018FF6E486D5BA36E486D5BA26E486D90C8FCA24B7F02075DA26E48147C4B143C4C +2C7EAB51>I<B6903803FFFCA5000101E09038003E006C163C80017F5D8017F8013F5D6E +1301011F5D6E1303010F5D6E13076D5DED800F6D92C7FC15C05E6DEBE01E163E6D143CED +F07C027F1378EDF8F8023F5B15FD021F5B15FF6E5BA36E5BA26E90C8FCA26E5AA26E5AA2 +1578A215F85D14015D001F1303D83F805B387FC007D8FFE05B140F92C9FC5C143E495A38 +7FC1F8EB07F06CB45A6C5B000790CAFCEA01FC36407EAB3B>121 +D<001FB71280A49026FC001F130001E0495A5B49495A90C7485A48495B123E4A5B4A5B00 +3C495BA24A90C7FC4A5A4A5AC7FC4A5A495B495BA2495B499038800780491300A2495A49 +48130F49481400A2485B48495B485BA248495B4890C75A48485C15034848EB1FFEB7FCA4 +292C7DAB32>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fn ecrm0700 7 1 +/Fn 1 66 df<140EA2141FA34A7EA3EC6FC0A2ECEFE014C7A290380183F0A390380301F8 +A201067F1400A249137EA2011C137F01187FA24980013FB5FCA2903960000FC0A201E080 +491307A248486D7EA200038115011207D81FC0497ED8FFF890383FFFE0A22B2A7EA931> +65 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fo cmr12 14.4 1 +/Fo 1 11 df<923803FFF0033F13FF4AB612E0020F9038003FFCDA3FF0EB03FFDAFFC001 +0013C0010390C8EA3FF0D907FCED0FF849486F7ED93FF06FB4FC49486F7F49486F7F4849 +707EA24890CA6C7E4848717EA24848717E001F85A2491707003F85A34848711380AB6C6C +4D1300A4001F616D170FA2000F61A26C6C4D5AA20003616D173F6C616E167F6C61017F60 +6E16FF013F95C7FC6D6C4B5AA2010F5F6D6C4B5AA26D6C4B5AA201015F6D6C4B5AA200E0 +017C93388001C06EED1F000070F10380021E151E021F153E6E153CA26C6E027CEB070002 +071578A2003C010303705B003E616CB56C91B512FEA56C61A34A547BD355>10 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fp cmsy10 10 11 +/Fp 11 107 df<007FB81280B912C0A26C17803204799641>0 D<0060150600F8150F6C +151F007E153F6C157E6C6C14FC6C6CEB01F86C6CEB03F06C6CEB07E06C6CEB0FC06C6CEB +1F80017EEB3F006D137E6D6C5A90380FC1F8903807E3F0903803F7E06DB45A6D5B6EC7FC +A24A7E497F903803F7E0903807E3F090380FC1F890381F80FC90383F007E017E7F49EB1F +804848EB0FC04848EB07E04848EB03F04848EB01F84848EB00FC48C8127E007E153F4815 +1F48150F00601506282874A841>2 D<EB0380497EA7397803803C00FC147E00FE14FE39 +7F8383FC393FC387F8390FE38FE03903FBBF803900FFFE00EB3FF8EB0FE0A2EB3FF8EBFF +FE3903FBBF80390FE38FE0393FC387F8397F8383FC39FE0380FE00FC147E0078143C3900 +07C000A76D5A1F247BA62A>I<EB1FF0EBFFFE487F000714C04814E04814F04814F8A248 +14FCA3B612FEA96C14FCA36C14F8A26C14F06C14E06C14C0000114006C5BEB1FF01F1F7B +A42A>15 D<EF0180EF07C0171FEF7F80933801FF00EE07FCEE1FF0EE7FC04B48C7FCED07 +FCED1FF0ED7FC04A48C8FCEC07FCEC1FF0EC7FC04948C9FCEB07FCEB1FF0EB7FC04848CA +FCEA07FCEA3FF0EA7FC048CBFC5AEA7F80EA3FE0EA0FF8EA03FEC66C7EEB3FE0EB0FF8EB +03FE903800FF80EC3FE0EC0FF8EC03FE913800FF80ED3FE0ED0FF8ED03FE923800FF80EE +3FE0EE0FF8EE03FE933800FF80EF3FC0170FEF038094C7FCAE007FB81280B912C0A26C17 +80324479B441>20 D<181EA4181F84A285180785727EA2727E727E85197E85F11F80F10F +C0F107F0007FBA12FCBCFCA26C19FCCCEA07F0F10FC0F11F80F13F00197E61614E5A4E5A +A24E5A61180F96C7FCA260181EA4482C7BAA53>33 D<EC01F8140FEC3F80ECFC00495A49 +5A495AA2130F5CB3A7131F5C133F49C7FC13FEEA03F8EA7FE048C8FCEA7FE0EA03F8EA00 +FE137F6D7E131F80130FB3A7801307A26D7E6D7E6D7EEC3F80EC0FF814011D537ABD2A> +102 D<12FCEAFFC0EA07F0EA01FCEA007E7F80131F80130FB3A7801307806D7E6D7EEB00 +7EEC1FF0EC07F8EC1FF0EC7E00495A495A495A5C130F5CB3A7131F5C133F91C7FC137E48 +5AEA07F0EAFFC000FCC8FC1D537ABD2A>I<14C0EB01E01303A214C01307A21480130FA2 +EB1F00A2131E133EA25BA2137813F8A2485AA25B1203A25B1207A2485AA290C7FC5AA212 +3EA2123C127CA2127812F8A41278127CA2123C123EA27EA27E7FA26C7EA212037FA21201 +7FA26C7EA21378137CA27FA2131E131FA2EB0F80A2130714C0A2130314E0A21301EB00C0 +135278BD20>I<126012F07EA21278127CA2123C123EA27EA27E7FA26C7EA212037FA26C +7EA212007FA21378137CA27FA2131E131FA2EB0F80A2130714C0A2130314E0A414C01307 +A21480130FA2EB1F00A2131E133EA25BA2137813F8A25B1201A2485AA25B1207A2485AA2 +90C7FC5AA2123EA2123C127CA2127812F8A25A126013527CBD20>I<126012F0B3B3B3B3 +A91260045377BD17>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fq ectt0800 8 21 +/Fq 21 122 df<387FFFF8B512FCA36C13F816057A9023>45 D<123E127FEAFF80A5EA7F +00123E0909738823>I<EB07F0EB1FFCEB7FFE48B5FC4814803907FC1FC0380FE0079038 +C0FFE0EA1F83485AEA3E0FD87E1F13F0007C138FEB3F0738783E0338F87C01A212F0EB78 +00A5EB7C0112F8A239783E03E0387C3F0790381F8FC0007E13FFD83E0F1380D83F071300 +381F83FE390FC0F9E09038E007F03807FC0F6CB5FC6C14C06C6C138090381FFE00EB07F8 +1C297DA823>64 D<3803FF80000F13E04813F8487F80EB80FFEC3F80381F001FC7FC140F +14FF137F0003B5FC120F5A387FF00F130012FCA25A141F7E6C133F387F81FF90B512FC6C +14FE7E000713C73901FE01FC1F1D7D9C23>97 D<EB3FF0EBFFFC000313FF5A5A381FE07F +EA3F80387F003E007E90C7FCA25AA25AA57EA2007E1307007FEB0F80141FEA3FC0391FF0 +7F006CB5FC6C5B6C5BC613F0EB3FC0191D7B9C23>99 D<ECFF8015C0A41407A7EB7F8738 +01FFE74813F7000F13FF5A13E0383F803F387F001F007E130FA2481307A25AA56C130FA2 +127E141F007F133F383F807FEBE0FF6CB512FE7E000313F76C13C738007F031F297EA823 +>I<EB3FC0EBFFF800037F4813FF481480381FF07F393F801FC0EB000F007E130715E05A +B6FCA415C000F8C8FC7EA2007EEB01C0007FEB03E0383F800713E0391FF81FC06CB5FC6C +14800001EBFE006C6C5AEB1FE01B1D7D9C23>I<147F903801FFC0010713E05B5BEB3FCF +140F90383E07C091C7FCA4007FB51280B612C0A36C1480D8003EC7FCB3383FFFFE487FA3 +6C5B1B297EA823>I<133813FEA5133890C7FCA6EA7FFC487EA3127FEA003EB3387FFFFE +B6FCA36C13FE182A7AA923>105 D<EA7FFEB5FCA37EEA001FB3AD007FB512C0B612E0A3 +6C14C01B297CA823>108 D<397E1F01F039FF7FC7FC9038FFEFFE14FF6C80390FE1FE1F +EBC1FC01C07FEB80F8A2EB00F0AE3A7FE3FE3FE026FFF3FF13F0A3267FE3FE13E0241D81 +9C23>I<38FF81FCEBC7FF01DF138090B512C0A23907FE0FE0EBF807EBF00313E0A313C0 +AD39FFFE1FFF5CA380201D7F9C23>I<133F3801FFE0487F487F487F381FC0FE383F807F +383E001F007E1480007C130F00FC14C0481307A66C130FA2007C1480007E131F6CEB3F00 +6D5A381FE1FE6CB45A6C5B6C5B6C5BD8003FC7FC1A1D7C9C23>I<38FF81FCEBC7FF01DF +13C090B512E015F03907FE0FF8EBF8039038F001FCEBE000A249137EA2153EA5157E7F15 +FC7F14019038F803F89038FE0FF090B5FC15E001DF138001CF1300EBC3F801C0C7FCAAEA +FFFEA51F2C7F9C23>I<397FF00FE039FFF87FF8ECFFFC13FB6CB5FCC613F8ECC078EC80 +0091C7FC5BA25BA35BAA387FFFFCB57EA36C5B1E1D7E9C23>114 +D<3801FF9C000F13FE5A127FA2EAFF0000FC137E48133EA26C131C6C1300EA7FF0383FFF +80000F13E06C13F838007FFCEB01FEEB007F0070133F00F8131F7E143F7E38FF80FFEBFF +FE14FC14F814F000701380181D7B9C23>I<39FF807FC001C013E0A400071303B0140714 +0FEBE03F90B6FC7EA2C613F3EB3FC1201D7F9C23>117 D<39FFF03FFCA5390F8007C000 +071480A2EBC00F00031400A26D5A0001131EA2EBF03E0000133CA2EBF87CEB7878A2EB7C +F8EB3CF0A2133F6D5AA36D5A6D5A1E1D7E9C23>I<397FF00FFE39FFF81FFFA3397FF00F +FE001FC712F86C14F0A57F390783E1E0EB87F1A3EB8FF90003EB79C013CFA2EBDF7BA2EB +DE3B00011480EBFE3FA2EBFC1FA23900F80F00201D7F9C23>I<397FF07FF039FFF8FFF8 +A3397FF07FF03903E03E003801F03C3800F87CEB78F8EB7CF0EB3FE0131F6D5A5C130749 +7E497E133DEB3CF0EB7878EBF07C0001133C497E3803C01F397FF03FF839FFF87FFCA339 +7FF03FF81E1D7E9C23>I<39FFF03FFCA539078007C0158013C00003130F1500EA01E05C +EBF01E1200A26D5A1378A26D5AA3EB1E7014F0130EEB0FE0A213075CA35CA2130F91C7FC +A2EA3E1FEA7F1E133EEA7CFC127F5B6C5A6C5AEA0F801E2C7E9C23>I +E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fr ecrm0800 8 42 +/Fr 42 122 df<123C127EB4FCA21380A2127F123D1201A312031300A25A1206120E5A5A +5A126009157A8714>44 D<B512C0A412047F9018>I<123C127E12FFA4127E123C08087A +8714>I<EB3FC0EBFFF03803E07C48487E48487E497E001EEB0780A2003E14C0A248EB03 +E0A500FC14F0B0007C14E0A3007E1307003E14C0A36CEB0F806C14006D5A3807C03E3803 +F0FC3800FFF0EB3FC01C2D7DAB23>48 D<130C133C137CEA03FC12FFEAFC7C1200B3B113 +FE387FFFFEA2172C7AAB23>I<EB7F803801FFF0380780FC380E003F48EB1F8048EB0FC0 +5A0060EB07E012F000FC14F07E1403A3007C1307C7FCA215E0140F15C0141F1580EC3F00 +147E147C5C495A495A495A495A011EC7FC5B5B4913305B485A4848136048C7FC000E14E0 +001FB5FC5A4814C0B6FCA21C2C7DAB23>I<000CEB0180380FC01F90B512005C5C14F014 +C0D80C7EC7FC90C8FCA8EB1FC0EB7FF8380DE07C380F801F01001380000E130F000CEB07 +C0C713E0A2140315F0A4127812FCA448EB07E012E0006014C00070130F6C14806CEB1F00 +6C133E380780F83801FFE038007F801C2D7DAB23>53 D<1230123C003FB512F8A215F05A +15E039700001C000601480140348EB0700140E140CC7121C5C143014705C495AA2495AA2 +49C7FCA25B130E131EA2133EA3133C137CA413FCA913781D2E7CAC23>55 +D<EB1FC0EBFFF03803E07C3807801E48487E001EEB0780A248EB03C0A4123E1407003F14 +80381FC00F01E01300EBF81E6C6C5A3807FFF86C13E0C6FCEB3FF8EBFFFC3803C7FFD807 +831380D81F0013C0001E133F48EB1FE0007C13070078EB03F012F84813011400A46C14E0 +00781301007C14C0003C13036CEB0780390F800F003807E03C3801FFF038003FC01C2D7D +AB23>I<EB3F80EBFFF03803E0783807C03E48487E48487E003E14801407007E14C0127C +00FC14E01403A315F0A5007C1307127EA2003E130F7E6C131F3807803B3803E0F33800FF +C390383F03E013001407A215C0A2140F001E1480003F14005C143E143C003E5B001C5B38 +0E03E03807FF80D801FEC7FC1C2D7DAB23>I<4A7E4A7EA34A7EA24A7EA3EC1BF81419A2 +EC30FCA2EC70FEEC607EA24A7EA349486C7EA2010380EC000FA201066D7EA3496D7EA201 +1FB57EA29038180001496D7EA349147EA201E0147F4980A20001ED1F801203000716C0D8 +0FF0EC3FE0D8FFFC0103B5FCA2302F7EAE35>65 D<DA1FF013C09138FFFE01903903F00F +8390390F8001E3013FC71277017C143F4848141F4848140F48481407A248481403121F49 +1401123F90C8FC481500A300FE1600AB127F17C0A27E7F001F15016D1580120F6C6C1403 +EE07006C6C14066C6C140ED8007C5C013F147890390F8001E0903903F00FC0902600FFFE +C7FCEC1FF02A2F7CAD33>67 D<B712FCA23903F800030001EC007C82161E160EA21606A3 +1607821530A293C7FCA31570A2EC01F090B5FCA2EBF801EC0070A21530A217C0A3923800 +0180A4160317005EA25E5E167F0003EC01FEB7FCA22A2D7DAC30>69 +D<B712FCA23903F800030001EC007C163E161E160EA21606A3160716031518A21600A315 +38157815F890B5FCA2EBF800157815381518A592C7FCAB487EB512F8A2282D7EAC2E>I< +B512F8A2D803FCC8FC6C5AB3A7160CA41618A41638A2167816F81501ED07F00003141FB7 +FCA2262D7EAC2C>76 D<D8FFF8903803FFFC7F00019138003FC06DEC0F006D1406EBBF80 +A2EB9FC0EB8FE0138780EB83F8138180EB80FE147E147FEC3F80EC1FC0140F15E0EC07F0 +140315F8EC01FC140015FE157FED3F86151F16C6ED0FE6150716F6ED03FE1501A2150016 +7E163EA2486C141ED80FF0140EB5FC16062E2D7DAC35>78 D<90383F80303901FFF07038 +07C07C390F000EF0001E13074813034813011400127000F01470A315307EA26C1400127E +127FEA3FE013FE381FFFE06C13FC6C13FF00011480D8003F13E013039038003FF0EC07F8 +1401140015FC157C12C0153CA37EA215787E6C14706C14F06CEB01E039F78003C039E3F0 +0F0038E07FFE38C00FF01E2F7CAD27>83 D<007FB712F8A29039000FC003007C15000070 +1638A200601618A200E0161CA248160CA5C71500B3A94A7E011FB512E0A22E2D7EAC33> +I<B539F003FFFCA2D803FCC7EA3FC06C48EC0F001606B3AB160E0000150C7F161C017C14 +18017E14386D5C6D146090390F8001E0903907E00380902601F80FC7FC9038007FFCEC0F +F02E2E7DAC35>I<B500C090380FFFC0A2D807FCC73803FE006C48EC00F800015E5F6C7E +5F6D1401017E5DA26D4AC7FCA26E5B011F140680010F5CA26D6C5BA26E133801031430A2 +6D6C5BA26E13E001005C8091387E0180A26E48C8FCA21583EC1F86A2EC0FCCA215FC6E5A +A26E5AA36E5AA26E5A322E7FAC35>I<B53C801FFFF001FFF8A22707FC000190C7EA3FC0 +D803F06D48EC1F00047E140EA26C6C027F140CA26D171C0000DBDF801318A26D1738017E +9026018FC01330A2017F17706D90260307E01360A2028016E0011F90260603F05BA202C0 +1501010F90260C01F85BA202E01503010790261800FC90C7FCA202F05D010349EB7E06A2 +02F8150E010149EB3F0CA202FC151C010049EB1F98A202FE15B8DA7F80EB0FF0A2023F5D +92C71207A26E5D021E1403A2020E5D020C1401452E7FAC48>I<13FF000713C0380F01F0 +381C00F8003F137C80A2143F001E7FC7FCA4EB07FF137F3801FE1FEA07F0EA1FC0EA3F80 +EA7F00127E00FE14065AA3143F7E007E137F007FEBEF8C391F83C7FC390FFF03F83901FC +01E01F207D9E23>97 D<EB1FE0EB7FFC3801F01E3803E0073907C01F80EA0F80EA1F005A +003EEB0F00007E90C7FCA2127C12FCA9127EA215C07E6C130101801380380FC0033907E0 +07003801F03E38007FF8EB1FC01A207E9E1F>99 D<15F8141FA214011400ACEB0FE0EB7F +F83801F81E3803E0073807C003380F8001EA1F00481300123E127EA25AA9127C127EA200 +3E13017EEB8003000F13073903E00EFC3A01F03CFFC038007FF090391FC0F800222F7EAD +27>I<EB1F80EBFFF03803E0783807C03E380F801E381F001FEC0F80123E007E130715C0 +127C12FCA3B6FCA200FCC8FCA5127EA2003E14C0123F6C1301390F80038001C013003803 +E00F3801F03C38007FF8EB1FC01A207E9E1F>I<EB03F0EB0FFCEB3E1EEB7C3F13F8EA01 +F0A23803E00C1400AAB512E0A23803E000B3A6487E387FFF80A2182F7FAE16>I<013F13 +F89038FFC3FE3903E1FF1E3807807C000F140C391F003E00A2003E7FA76C133EA26C6C5A +00071378380FE1F0380CFFC0D81C3FC7FC90C8FCA3121E121F380FFFF814FF6C14C04814 +F0391E0007F848130048147C12F848143CA46C147C007C14F86CEB01F06CEB03E03907E0 +1F803901FFFE0038003FF01F2D7E9D23>I<EA07C012FFA2120F1207AC14FE9038C3FF80 +9038C703E09038DE01F013F8496C7EA25BA25BB2486C487E3AFFFE1FFFC0A2222E7EAD27 +>I<EA0780EA0FC0EA1FE0A4EA0FC0EA0780C7FCA8EA07C012FFA2120F1207B3A5EA0FE0 +EAFFFCA20E2E7EAD14>I<EA07C012FFA2120F1207B3B3A3EA0FE0EAFFFEA20F2E7EAD14> +108 D<2607C07FEB07F03BFFC3FFC03FFC903AC783F0783F3C0FCE01F8E01F803B07DC00 +F9C00F01F8D9FF8013C04990387F000749137EA249137CB2486C01FEEB0FE03CFFFE0FFF +E0FFFEA2371E7E9D3C>I<3807C0FE39FFC3FF809038C703E0390FDE01F0EA07F8496C7E +A25BA25BB2486C487E3AFFFE1FFFC0A2221E7E9D27>I<EB1FE0EB7FF83801F03E3803C0 +0F3907800780390F0003C04814E0003EEB01F0A248EB00F8A300FC14FCA9007C14F8A26C +EB01F0A26CEB03E0A2390F8007C03907C00F803901F03E0038007FF8EB1FE01E207E9E23 +>I<3807C0FE39FFC7FF809038CF03E0390FDC01F03907F800FC49137E49133E49133FED +1F80A3ED0FC0A8151F1680A2ED3F00A26D137E6D137C5D9038FC01F09038CE07E09038C7 +FF80D9C1FCC7FC01C0C8FCA9487EEAFFFEA2222B7E9D27>I<380781F038FF87FCEB9E7E +EA0F98EA07B813B0EBF03CEBE000A35BB1487EB5FCA2171E7E9D1B>114 +D<3801FE183807FFB8381E01F8EA3C00481378481338A21418A27E7EB41300EA7FF06CB4 +FC6C13C06C13F0000113F838001FFC130138C0007E143EA26C131EA27EA26C133CA26C13 +7838FF01F038E3FFC000C0130017207E9E1C>I<1360A413E0A312011203A21207121FB5 +12F0A23803E000AF1418A714383801F03014703800F860EB3FE0EB0F80152A7FA81B>I< +D807C013F800FF131FA2000F130100071300B21401A314033803E007EC0EFC3A01F81CFF +C038007FF890391FE0F800221F7E9D27>I<3AFFFC01FFC0A23A0FE0007E000007147C15 +380003143015706C6C1360A26C6C5BA390387C0180A26D48C7FCA2EB3F07EB1F06A2EB0F +8CA214DCEB07D8A2EB03F0A36D5AA26D5A221E7F9C25>I<3BFFFC3FFE07FFA23B0FE003 +F001F801C09038E000F00007010114E0812603E00314C0A2913807F8012701F006781380 +A29039F80E7C030000D90C3C1300A290397C181E06A2151F6D486C5AA2168C90391F6007 +98A216D890390FC003F0A36D486C5AA36DC75A301E7F9C33>I<3AFFFC07FF80A23A0FF0 +03FC000003EB01F0000114C06D485A000091C7FCEB7C06EB3E0E6D5A14B8EB0FB0EB07E0 +13036D7E497E1307EB067C497EEB1C1F01387FEB700F496C7E6E7ED803C07F00076D7E39 +1FE003FC3AFFF007FFC0A2221D7F9C25>I<3AFFFC01FFC0A23A0FE0007E000007147C15 +38000314306D137000011460A26C6C5BA2EBFC01017C5BEB7E03013E90C7FCA2EB1F06A2 +148EEB0F8CA2EB07D8A2EB03F0A36D5AA26D5AA2495AA2130391C8FC1278EAFC06A25B13 +1CEA7838EA7070EA3FE0EA0F80222B7F9C25>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fs cmsy6 6 2 +/Fs 2 122 df<136013701360A20040132000E0137038F861F0387E67E0381FFF803807 +FE00EA00F0EA07FE381FFF80387E67E038F861F038E060700040132000001300A2137013 +6014157B9620>3 D<136013F0A81360A4387C63E0B512F0A2387C63E038006000A313F0 +B3A21360A7142F7CA31E>121 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Ft ectt1000 10 90 +/Ft 90 127 df<003C131E007F137F481480A66C1400A6007E7FA6003E133EA3003C131E +001C131C191977B32C>34 D<0107131C90380F803EA8011F137EEC007CA4003FB612E0B7 +12F8A43A003E00F800A2EB7E01017C5BA8EBFC0301F85BA2B712F8A4003F15E03A01F007 +C000A30003130F01E05BA86C486CC7FC25337DB22C>I<EB01C0497EA6EB0FFC90387FFF +8048B512E00007804880391FFBEFFC393FC3E1FE903803E07F007E80127C00FC158012F8 +157FA300FCEC3F00A2007E91C7FC127FEA3FC313FBEA1FFF6C13FC6C13FF000114C06C6C +7F011F13F801037F14E7ECE1FEECE07F81001880007E1580150F12FFA312FE151F160000 +7E5C007F143ED83F8313FE9038C3E1FC391FFBEFF86CB55A6C5C6C5CC691C7FCEB1FF8EB +03E0A66D5A21417BB92C>I<D807801307D81FE0EB0F80151F487E486C133F1600007C5C +D8FCFC137EEAF87C15FE5D14015DA21403D8FCFC5BEA7CF8007F13075D383FF00FD81FE0 +5BA23807801FC75B143F92C7FCA25C147E14FE5CA213015CA213035C13075CA2130F5C13 +1FEC800FED3FC0013FEB7FE0140049EBFFF0017E13F9A2D9FE0113F801FC13F0A2120113 +F8120313F015F90007010013F05B000F14FF49EB7FE0A20007EC3FC06C48EB0F0025417D +B92C>I<EA0F80EA1FE0EA3FF0127F13F8A213FCA2123F121F120FEA007CA313FC13F8A2 +120113F01203EA07E0A2EA0FC0EA3F80127FEAFF005A12F812700E1D71B22C>39 +D<143814FC13011303EB07F8EB0FF0EB1FC0EB3F80EB7F0013FE485A485A5B12075B120F +5B485AA2123F90C7FCA25A127EA312FE5AAC7E127EA3127F7EA27F121FA26C7E7F12077F +12037F6C7E6C7E137FEB3F80EB1FC0EB0FF0EB07F8EB03FC130113001438164272B92C> +I<127012FC7E7E6C7E6C7EEA0FE06C7E6C7E6C7E6C7E137F7F1480131F14C0130FEB07E0 +A214F01303A214F81301A314FC1300AC130114F8A3130314F0A2130714E0A2EB0FC0131F +1480133F14005B13FE485A485A485A485AEA3FC0485A48C7FC5A5A1270164279B92C>I< +EB0380497EA60020140800F8143E00FE14FE00FF13C1EBC7C7EBE7CF003FB512F8000F14 +E0000314806C140038007FFCA248B5FC481480000F14E0003F14F839FFE7CFFEEBC7C7EB +07C100FE13C000F8143E0020140800001400A66D5A1F247AAA2C>I<147014F8AF003FB6 +12E0B712F8A4C700F8C7FCB0147025267DAB2C>I<EA0F80EA1FE0EA3FF0EA7FF8A213FC +A3123F121F120F120013F8A21201EA03F01207EA1FE0EA7FC0EAFF80130012FC12700E17 +718A2C>I<007FB512F0B612F8A36C14F01D0579942C>I<121FEA3F80EA7FC0EAFFE0A5EA +7FC0EA3F80EA1F000B0B708A2C>I<1507ED0F80A2151F16005D153E157E157CA215FC5D +14015D14035D14075D140F5D141F92C7FC5C143EA2147E147C14FC5C13015C13035C1307 +5C130F5C131F91C8FC5B133EA2137E137C13FC5B12015B12035B12075B120F5B121F90C9 +FCA25A123E127E127C12FC5AA2127021417BB92C>I<EB03F8EB0FFE90383FFF80497F90 +B57E3901FE0FF03903F803F848486C7EEBE0004848137EA248487FA248C7EA1F80A2003E +140F007E15C0A3007C140700FC15E0AC6C140F007E15C0A46CEC1F80A36C6CEB3F00A26C +6C137E6D13FE00075CEBF0016C6C485A3901FE0FF06CB55A6D5B6D5BD90FFEC7FCEB03F8 +23357CB32C>I<1307497EA2131FA2133F137F13FF5A1207127FB5FC13DF139FEA7C1F12 +00B3AE007FB512E0B612F0A36C14E01C3477B32C>I<EB0FF890387FFF8048B512E00007 +804814FC391FF80FFE393FE001FF903880007F48C7EA3F80007E141F00FE15C0150F6C15 +E01507A3127E123CC8FCA2150F16C0151F1680153F16005D15FE4A5A14034A5A4A5A4A5A +4A5AECFF804948C7FC495A495A495AEB3FE0EB7F8049C8FC485A4848EB03C04848EB07E0 +EA1FE0485A48B6FCB7FCA36C15C023347CB32C>I<EB0FFC90387FFF8048B512E0000714 +F84880391FF807FEEBC0004848137F6D7F1680151FA26C5A6CC7FCC8FC153F16005D15FE +14014A5AEC1FF890381FFFF0495BA215F86D7F90380007FEEC00FF81ED3F80ED1FC0150F +A216E01507A2123C127EB4FC150F16C0A248141F007FEC3F806DEB7F006C6C5B391FF807 +FE6CB55A6C5C6C14E0C66C1380D90FFCC7FC23357CB32C>I<EC07F04A7E141F143FA214 +7EA214FCEB01F8A2EB03F0EB07E0A2EB0FC0EB1F80A2EB3F00137EA25B485AA2485A5B12 +07485AA2485A48C7FCA2127E5AB712FC16FEA36C15FCC8EAF800AA91387FFFF091B512F8 +A36E13F027347EB32C>I<000FB512FE4880A35D0180C8FCADEB83FE90389FFF8090B512 +E015F8819038FE03FE9038F000FF01C07F49EB3F8090C7121F6C15C0C8120FA2ED07E0A4 +123C127EB4FC150F16C0A248141F007EEC3F80007FEC7F006C6C5B6D485A391FF80FFC6C +B55A6C5C000114C06C6C90C7FCEB0FF823347CB22C>I<EC3FC0903801FFF801077F011F +7F497F90387FE07F9039FF003F804848137FEA03F8485A5B000FEC3F004848131E4990C7 +FC123F90C9FCA25A127EEB03FE90381FFF80D8FC7F13E000FDB57EB67E9038FE07FC9038 +F001FE9038C0007F49EB3F8090C7121F16C048140F16E01507A3127EA47E150F6D14C000 +1F141F6D1480000F143F6DEB7F003907F801FE3903FE07FC6CB55A6C5C6D5B011F1380D9 +07FCC7FC23357CB32C>I<1278B712C016E0A316C000FCC7EA3F80ED7F0015FE00785CC7 +12014A5A4A5A5D140F5D4A5A143F92C7FC5C147E14FE5C13015CA2495AA213075CA3495A +A4495AA5133F91C8FCAA131E23357CB32C>I<EB07FC90383FFF8090B512E0000314F848 +80390FFC07FE391FF001FF9038C0007F4848EB3F8090C7121F4815C0007E140FA56CEC1F +80A26C6CEB3F006D5B390FF001FE3903FC07F86CB55A6C6C13C0D907FCC7FC90387FFFC0 +48B512F03903FC07F8390FF001FE391FC0007F497F48C7EA1F80007EEC0FC0A248EC07E0 +A7007EEC0FC0A2007F141F6C6CEB3F806C6CEB7F009038F001FF390FFC07FE6CB55A6C5C +C614E0013F1380D907FCC7FC23357CB32C>I<EB07FCEB3FFF90B512C0488048803907FC +07F8390FF001FC48486C7ED83F80137E157F48C77E007EEC1F8012FE5AED0FC0A416E0A3 +7E127E007F141F7E6D133F6C6C137F390FF001FF3807FC0F6CB6FC6C14F76C14C7013F13 +0FD90FF813C090C7FCA2151F1680153F1600000F5C486C137E486C13FE4A5A4A5A140790 +38801FF0391FE07FE090B55A6C91C7FC6C5B000113F838007FC023357CB32C>I<121FEA +3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F00C7FCAE121FEA3F80EA7FC0EAFFE0A5EA7FC0 +EA3F80EA1F000B2470A32C>I<EA0F80EA1FC0EA3FE0EA7FF0A5EA3FE0EA1FC0EA0F80C7 +FCAEEA0F80EA1FE0EA3FF0EA7FF8A213FCA3123F121F120F120013F8A21201EA03F01207 +EA1FE0EA7FC0EAFF80130012FC12700E3071A32C>I<1502ED0F80151F157F15FF913803 +FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80000390C8FCEA07 +FCEA1FF8EA3FE0EAFF8090C9FCA27FEA3FE0EA1FF8EA07FC6CB4FCC67FEB3FE06D7EEB07 +FC6D7E903800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157F151F150FED0200212A +7BAD2C>I<007FB612F0B712F8A36C15F0CAFCA8007FB612F0B712F8A36C15F025127DA1 +2C>I<122012F87EB4FC7FEA3FE0EA1FF8EA07FC6CB4FCC67FEB3FE06D7EEB07FC6D7E90 +3800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157FA215FF913803FE00EC0FFCEC1F +F0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80000390C8FCEA07FCEA1FF8EA3FE0 +EAFF8090C9FC12FC5A1220212A7BAD2C>I<EC7F80903803FFE0010F7F013F7F497F9038 +FFC0FE3901FE007FD803F87F4848EB1F809038E00FCF390FC03FFF48484813C091B5FCEA +3F01393E03F87F903907F03FE0007EEBE01F397C0FC00FEC8007A2EAFC1F00F8EB0003A9 +00FCEB8007D87C0F14C0A2ECC00F3A7E07E01F80003EEBF03F903903F87F00393F01FFFE +D81F805B6E5A6C6C6C5A3907E00FC09039F00007C06C6CEB0FE0D801FE131F3900FFC0FF +6DB512C06D1480010FEBFE00010313F89038007FC023337CB22C>64 +D<14FE497EA4497FA214EFA2130781A214C7A2010F7FA314C390381F83F0A590383F01F8 +A490387E00FCA549137E90B512FEA34880A29038F8003FA34848EB1F80A4000715C04913 +0FD87FFEEBFFFC6D5AB514FE6C15FC497E27347EB32C>I<007FB512E015F8B612FE6C80 +16C03903F0003FED0FE0ED07F01503A2ED01F8A6ED03F0A21507ED0FE0ED1FC0EDFF8090 +B612005D5D15FF16C09039F0001FE0ED07F0ED03F81501ED00FCA216FE167EA616FE16FC +1501ED03F8150FED3FF0007FB612E016C0B712806CECFE0015F027337FB22C>I<02FF13 +700107EBE0F84913F9013F13FD4913FFEBFF813901FE007F4848131FD807F0130F150748 +5A491303485A150148C7FCA25A007EEC00F01600A212FE5AAB7E127EA3007F15F06CEC01 +F8A26C7EA26C6C13036D14F06C6C130716E0D803FC131F6C6CEB3FC03A00FF81FF806DB5 +12006D5B010F5B6D13F00100138025357DB32C>I<007FB5FCB612C015F0816C803907E0 +03FEEC00FFED7F80153FED1FC0ED0FE0A2150716F0150316F81501A4ED00FCACED01F8A3 +150316F0A2150716E0150FED1FC0153FED7F80EDFF00EC03FE007FB55AB65A5D15C06C91 +C7FC26337EB22C>I<007FB612F0B712F8A37E3903F00001A7ED00F01600A4EC01E04A7E +A490B5FCA5EBF003A46E5A91C8FCA5163C167EA8007FB612FEB7FCA36C15FC27337EB22C +>I<007FB612F8B712FCA37ED803F0C7FCA716781600A515F04A7EA490B5FCA5EBF001A4 +6E5A92C7FCAD387FFFE0B5FC805C7E26337EB22C>I<903901FC038090390FFF87C04913 +EF017F13FF90B6FC4813073803FC01497E4848137F4848133F49131F121F5B003F140F90 +C7FCA2127EED078092C7FCA212FE5AA8913803FFF84A13FCA27E007E6D13F89138000FC0 +A36C141FA27F121F6D133F120F6D137F6C7E6C6C13FF6D5A3801FF076C90B5FC6D13EF01 +1F13CF6DEB0780D901FCC7FC26357DB32C>I<D87FFEEBFFFCB54813FEA36C486C13FCD8 +07E0EB0FC0B190B6FCA59038E0000FB3D87FFEEBFFFCB54813FEA36C486C13FC27337EB2 +2C>I<007FB512F8B612FCA36C14F839000FC000B3B3A5007FB512F8B612FCA36C14F81E +3379B22C>I<0107B512804914C0A36D148090390003F000B3AF1218127EA2B4FCA24A5A +48130F007F131F9038C07FC06CB55A6C91C7FC6C5B000313F838007FC022347BB22C>I< +D87FFCEB7FF8486CEBFFFCA36C48EB7FF8D807C0EB1F80153FED7F00157E5D4A5A14034A +5A5D4A5A4A5A143F4AC7FC147E5CEBC1F813C3EBC7FCA2EBCFFEEBDFBEEBFFBF141F01FE +7F496C7E13F86E7EEBF00301E07FEBC001816E7EA2157E153E153F811680ED0FC0A2ED07 +E0D87FFCEB1FFC486CEB3FFEA36C48EB1FFC27337EB22C>I<387FFFE0B57EA36C5BD803 +F0C8FCB3AE16F0ED01F8A8007FB6FCB7FCA36C15F025337DB22C>I<D87FE0EB0FFC486C +EB1FFEA26D133F007F15FC000F15E001BC137BA4019E13F3A3EB9F01A2018F13E3A21483 +A2018713C314C7A201831383A214EFA201811303A214FFEB80FEA3147C14381400ACD87F +F0EB1FFC486CEB3FFEA36C48EB1FFC27337EB22C>I<D87FF0EB7FFC486CEBFFFEA27F00 +7FEC7FFCD807FEEB07C013DEA213DF13CFA2148013C714C0A213C314E0A213C114F0A213 +C014F8A2147CA3143EA2141E141FA2140F1587A2140715C7A2140315E71401A215F71400 +A215FFD87FFC137F487E153FA26C48EB1F8027337EB22C>I<EB7FFF0003B512E0000F14 +F848804880EBE003EB800048C7127FA2007E80A300FE158048141FB3A86C143FA2007E15 +00A3007F5CA26C6C13FEEBF00790B5FC6C5C6C5C000314E0C66C90C7FC21357BB32C>I< +007FB512C0B612F88115FF6C15802603F00013C0153FED0FE0ED07F0A2150316F81501A6 +150316F01507A2ED0FE0ED3FC015FF90B61280160015FC5D15C001F0C8FCB0387FFF80B5 +7EA36C5B25337EB22C>I<EB7FFF0003B512E0000F14F848804880EBF007EB800048C712 +7FA2007E80A300FE158048141FB3A7EB01F0EB03F800FE143F267E01FC1300A2EB00FE00 +7F5C147FD83F8013FEEBF03F90B5FC6C5C6C5C000314E0C67E90380007F0A26E7EA26E7E +A26E7EA2157FA2153E21407BB32C>I<387FFFFCB67E15E015F86C803907E007FE1401EC +007F6F7E151FA26F7EA64B5AA2153F4BC7FCEC01FE140790B55A5D15E081819038E007FC +EC01FE1400157F81A8160FEE1F80A5D87FFEEB1FBFB5ECFF00815E6C486D5AC8EA01F029 +347EB22C>I<90381FF80790B5EA0F804814CF000714FF5A381FF01F383FC003497E48C7 +FC007E147F00FE143F5A151FA46CEC0F00007E91C7FC127F7FEA3FE0EA1FFCEBFFC06C13 +FC0003EBFFC06C14F06C6C7F01077F9038007FFEEC07FF02001380153FED1FC0A2ED0FE0 +A20078140712FCA56CEC0FC0A26CEC1F806D133F01E0EB7F009038FE01FF90B55A5D00F9 +14F0D8F83F13C0D8700790C7FC23357CB32C>I<007FB612FCB712FEA43AFC007E007EA7 +0078153CC71400B3AF90383FFFFCA2497F6D5BA227337EB22C>I<3B7FFF803FFFC0B56C +4813E0A36C496C13C03B03F00001F800B3AF6D130300015DA26D130700005D6D130F017F +495A6D6C485AECE0FF6DB5C7FC6D5B010313F86D5B9038003F802B3480B22C>I<D87FFC +EB7FFC486CEBFFFEA36C48EB7FFCD80FC0EB07E06D130F000715C0A36D131F00031580A3 +6D133F00011500A36D5B0000147EA4017E5BA46D485AA490381F83F0A4010F5B14C7A301 +075BA214EFA201035BA214FFA26D90C7FCA46D5A27347EB22C>I<D87FF0EB07FF486C49 +1380A36C486D1300001FC8127CA46C6C5CA76C6C495AA4143E147FA33A03E0FF83E0A214 +F7A201E113C3A3000101E35BA201F113C701F313E7A314C1A200005DA201F713F71480A3 +01FF13FF017F91C7FC4A7EA4013E133E29347FB22C>I<3A3FFF03FFE0484913F0148714 +076C6D13E03A01F800FE007F0000495A13FE017E5BEB7F03013F5B1487011F5B14CF010F +5B14FF6D5BA26D90C7FCA26D5AA26D5AA2497EA2497EA2497F81EB0FCF81EB1FC7EC87F0 +EB3F83EC03F8EB7F01017E7FEBFE00497F0001147E49137F000380491480151FD87FFEEB +FFFC6D5AB514FE6C15FC497E27337EB22C>I<D87FFCEB7FFC486CEBFFFEA36C48EB7FFC +D807F0EB0FC0151F000315806D133F12016DEB7F0012006D137E017E13FE017F5BEB3F01 +EC81F8131FEC83F0EB0FC314C7903807E7E0A201035B14EF6DB45AA292C7FC7F5C147EB0 +903807FFE0497FA36D5B27337EB22C>I<003FB612C04815E0A4007EC7EA1FC0ED3F80A2 +ED7F00157E15FE4A5A003C5CC712034A5AA24A5A4A5AA24A5A4AC7FCA214FE495AA2495A +495AA2495A495AA2495A49C8FCA213FE485AA24848EB03C049EB07E01207485A5B121F48 +5AA248C7FCB7FCA46C15C023337CB22C>I<387FFFFCB512FEA314FC00FCC7FCB3B3B3B5 +12FC14FEA36C13FC17416FB92C>I<127012F8A27E127C127E123E123F7EA27F120F7F12 +077F12037F12017F12007F137C137E133EA2133F7F80130F801307801303801301801300 +80147C147E143EA2143F8081140F81140781140381140181140081157CA2157E153E153F +811680150FA2ED070021417BB92C>I<387FFFFCB512FEA37EC7127EB3B3B3387FFFFEB5 +FCA36C13FC17417DB92C>I<EB07C0EB1FF0EB7FFC48B5FC000714C0001F14F0397FFC7F +FC39FFF01FFEEBC007EB0001007CEB007C003014181F0C7AAE2C>I<007FB6FCB71280A4 +6C150021067B7D2C>I<1338137CEA01FC1203EA07F813F0EA0FC0EA1F80A2EA3F00123E +127E127CA212FC5AA3EAFFC013E013F013F8A2127FA2123F13F0EA1FE0EA07C00E1D72B8 +2C>I<3801FFF0000713FE001F6D7E15E048809038C01FF81407EC01FC381F80000006C7 +7EC8127EA3ECFFFE131F90B5FC1203120F48EB807E383FF800EA7FC090C7FC12FE5AA47E +007F14FEEB8003383FE01F6CB612FC6C15FE6C14BF0001EBFE1F3A003FF007FC27247CA3 +2C>I<EA7FF0487EA3127F1201AAEC1FE0ECFFF801FB13FE90B6FC16809138F07FC09138 +801FE091380007F049EB03F85BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13 +036DEB07F0150F9138801FE09138E07FC091B51280160001FB5B01F813F83900F03FC027 +337FB22C>I<903803FFE0011F13F8017F13FE48B5FC48804848C6FCEA0FF0485A49137E +4848131890C9FC5A127EA25AA8127EA2127F6C140F6DEB1F806C7E6D133F6C6CEB7F0039 +07FE03FF6CB55A6C5C6C6C5B011F13E0010390C7FC21247AA32C>I<EC0FFE4A7EA380EC +003FAAEB07F8EB3FFE90B512BF4814FF5A3807FC0F380FF00348487E497E48487F90C7FC +007E80A212FE5AA87E007E5CA2007F5C6C7E5C6C6C5A380FF0073807FC1F6CB612FC6CEC +BFFE6C143FEB3FFC90390FF01FFC27337DB22C>I<EB03FE90381FFFC0017F13F048B57E +48803907FE03FE390FF800FFD81FE0EB3F805B4848EB1FC090C7120F5A007E15E015075A +B7FCA416C000FCC9FC7E127EA2127F6CEC03C06DEB07E06C7ED80FF0130F6C6CEB3FC001 +FF13FF000190B512806C1500013F13FC010F13F00101138023247CA32C>I<EC0FF8EC3F +FE91B5FC4914805B903807FC7F14F090390FE03F0014C092C7FCA6007FB512FEB7FCA36C +5C26000FC0C7FCB3A8003FB512F04880A36C5C21337DB22C>I<ED03F8903907F80FFC90 +391FFE3FFE017FB6FC48B7FC48ECFE7F9038FC0FF82607F003133E3A0FE001FC1CD9C000 +1300001F8049137EA66D13FE000F5CEBE0016C6C485A3903FC0FF048B5FC5D481480D99F +FEC7FCEB87F80180C8FCA37F6C7E90B512F06C14FE48ECFF804815E04815F03A3FC0001F +F848C7EA03FC007E1400007C157C00FC157E48153EA46C157E007E15FCD87F801303D83F +E0EB0FF8D81FFCEB7FF06CB612E0000315806C1500D8003F13F8010713C028387EA42C> +I<EA7FF0487EA3127F1201AAEC1FE0EC7FFC9038F9FFFE01FB7F90B6FC9138F03F80ECC0 +1F02807FEC000F5B5BA25BB3267FFFE0B5FCB500F11480A36C01E0140029337FB22C>I< +1307EB1FC0A2497EA36D5AA20107C7FC90C8FCA7387FFFC080B5FC7EA2EA0007B3A8007F +B512FCB612FEA36C14FC1F3479B32C>I<140EEC3F80A2EC7FC0A3EC3F80A2EC0E0091C7 +FCA748B512804814C0A37EC7120FB3B3A2141F003C1480007E133FB414005CEB01FEEBFF +FC6C5B5C001F5B000790C7FC1A467CB32C>I<EA7FE0487EA3127F1201AA91381FFFF04A +13F8A36E13F0913800FE004A5A4A5A4A5A4A5A4A5A4A5A4AC7FC14FEEBF1FC13F3EBF7FE +90B5FCA2EC9F80EC0FC001FE7FEBFC07496C7E496C7E811400157E811680151F3A7FFFC0 +FFFCB500E113FEA36C01C013FC27337EB22C>I<387FFFE0B57EA37EEA0003B3B3A5007F +B61280B712C0A36C158022337BB22C>I<3A7F83F007E09039CFFC1FF83AFFDFFE3FFCD8 +7FFF13FF91B57E3A07FE1FFC3E01FCEBF83F496C487E01F013E001E013C0A301C01380B3 +3B7FFC3FF87FF0027F13FFD8FFFE6D13F8D87FFC4913F0023F137F2D2481A32C>I<397F +F01FE039FFF87FFC9038F9FFFE01FB7F6CB6FC00019038F03F80ECC01F02807FEC000F5B +5BA25BB3267FFFE0B5FCB500F11480A36C01E0140029247FA32C>I<EB07FCEB1FFF017F +13C048B512F048803907FC07FC390FF001FE48486C7E0180133F003F158090C7121F007E +EC0FC0A348EC07E0A76C140F007E15C0A2007F141F6C15806D133F6C6CEB7F006D5B6C6C +485A3907FC07FC6CB55A6C5C6C6C13C0011F90C7FCEB07FC23247CA32C>I<397FF01FE0 +39FFF8FFF801FB13FE90B6FC6C158000019038F07FC09138801FE091380007F049EB03F8 +5BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13036DEB07F0150F9138801FE0 +9138E07FC091B51280160001FB5B01F813F8EC3FC091C8FCAD387FFFE0B57EA36C5B2736 +7FA32C>I<903903FC078090391FFF0FC0017F13CF48B512EF4814FF3807FE07380FF001 +48487E49137F4848133F90C7FC48141F127E150F5AA87E007E141FA26C143F7F6C6C137F +6D13FF380FF0033807FC0F6CB6FC6C14EF6C6C138F6D130FEB07F890C7FCAD0203B5FC4A +1480A36E140029367DA32C>I<D87FFEEB3FC0B53801FFF0020713F8021F13FC6C5B3900 +3F7FE1ECFF019138FC00F84A13704A13005CA25C5CA391C8FCAF007FB512E0B67EA36C5C +26247EA32C>I<90387FF8700003B512F8120F5A5A387FC00F387E00034813015AA36CEB +00F0007F140013F0383FFFC06C13FE6CEBFF80000314E0C66C13F8010113FCEB0007EC00 +FE0078147F00FC143F151F7EA26C143F6D133E6D13FE9038F007FC90B5FC15F815E000F8 +148039701FFC0020247AA32C>I<131E133FA9007FB6FCB71280A36C1500D8003FC8FCB1 +ED03C0ED07E0A5EC800F011FEB1FC0ECE07F6DB51280160001035B6D13F89038003FE023 +2E7EAD2C>I<3A7FF003FF80486C487FA3007F7F0001EB000FB3A3151FA2153F6D137F39 +00FE03FF90B7FC6D15807F6D13CF902603FE07130029247FA32C>I<3A7FFF01FFFCB514 +FE148314016C15FC3A03E0000F80A26D131F00011500A26D5B0000143EA26D137E017C13 +7CA2017E13FC013E5BA2EB3F01011F5BA21483010F5BA214C701075BA214EF01035BA214 +FF6D90C7FCA26D5A147C27247EA32C>I<D87FFFEB7FFF6EB5FCB515806C16004A7ED807 +C0EB01F0A66C6C495AA3143E147FA2D801F0495AECFF87A214F7A201F113C700005D9038 +F9E3CFA201FB13EFA3D97BC190C7FC017F13FFA21480A2013F5B90381F007C29247FA32C +>I<3A3FFF03FFF048018713F8A36C010313F03A00FC007E005D90387E01F8013F5BEB1F +83EC87E090380FCFC0903807EF80EB03FF6D90C7FC5C6D5A147C14FE130180903803EF80 +903807CFC0EB0FC7EC83E090381F01F0013F7FEB7E00017C137C49137E0001803A7FFF01 +FFFC1483B514FE6C15FC140127247EA32C>I<3A7FFF01FFFCB5008113FE148314816C01 +0113FC3A03E0000F806C7E151F6D140012005D6D133E137C017E137E013E137CA2013F13 +FC6D5BA2EB0F815DA2EB07C1ECC3E0A2EB03E3ECE7C0130114F75DEB00FFA292C7FC80A2 +143EA2147E147CA214FC5CA2EA0C01003F5BEA7F83EB87E0EA7E0F495A387FFF806C90C8 +FC6C5A6C5AEA07E027367EA32C>I<003FB612E04815F0A4007EC7EA1FE0ED3FC0ED7F80 +EDFF004A5A003C495AC7485A4A5A4A5A4A5A4A5A4AC7FCEB01FC495AEB0FF0495A495A49 +5A49C8FC4848EB01E04848EB03F0485A485A485A485A485AB7FCA46C15E024247DA32C> +I<15FF02071380141F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF007F5B +B55A49C8FC6D7E6C7FC67F131FEB07F01303B380EB01FEECFFC06D13FF6E1380141F1407 +0200130021417BB92C>I<EA7FC0EAFFF813FE6D7E6C7FC67F131FEB07F01303B380EB01 +FEECFFC06D13FF6E1380141F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF +007F5BB55A49C8FC13F8EA7FC021417BB92C>125 D<D801F8131CD807FE133E390FFF80 +7E48EBC0FE48EBF3FC397F9FFFF8D8FE0713F0486C13E048C613C00070EB3F001F0A7AB2 +2C>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fu cmr10 10 19 +/Fu 19 94 df<15E0A34A7EA34A7EA34A7EA34A7EA2140DEC1DFF14191418A24A7F157F +A202607F153FA202C07F151FA2D901807F150FA2D903007F1507A20106801503A2010E80 +130C1501011C80131881A24981167FA24981163FA24981161FA20001821203486C81D81F +F84A7EB50107B512E0A3333C7DBB3A>3 D<EC0FFE91387FFFC0903903FC07F890390FE0 +00FED93F80EB3F8049C76C7E01FE6E7E48486E7E00038248486E7E48486E7EA248486E7E +003F1780A34848ED7FC0AA003F17806D15FFA2001F1700A36C6C4A5AA200075E6D140300 +035E00015EA26C6C4A5AA2017C5DA26D4A5A011E92C7FC00C017606D141E006017C06D14 +1CA326700380EB38010038EE0380D83FFFEC3FFFA46C1700A2333B7CBA3C>10 +D<146014E0EB01C0EB0380EB0700130E131E5B5BA25B485AA2485AA212075B120F90C7FC +A25A121EA2123EA35AA65AB2127CA67EA3121EA2121F7EA27F12077F1203A26C7EA26C7E +1378A27F7F130E7FEB0380EB01C0EB00E01460135278BD20>40 D<12C07E12707E7E7E12 +0F6C7E6C7EA26C7E6C7EA21378A2137C133C133E131EA2131F7FA21480A3EB07C0A6EB03 +E0B2EB07C0A6EB0F80A31400A25B131EA2133E133C137C1378A25BA2485A485AA2485A48 +C7FC120E5A5A5A5A5A13527CBD20>I<15301578B3A6007FB812F8B912FCA26C17F8C800 +78C8FCB3A6153036367BAF41>43 D<EB03F8EB1FFF90387E0FC09038F803E03901E000F0 +484813780007147C48487FA248C77EA2481580A3007EEC0FC0A600FE15E0B3007E15C0A4 +007F141F6C1580A36C15006D5B000F143EA26C6C5B6C6C5B6C6C485A6C6C485A90387E0F +C0D91FFFC7FCEB03F8233A7DB72A>48 D<EB01C013031307131F13FFB5FCA2131F1200B3 +B3A8497E007FB512F0A31C3879B72A>I<EB0FF0EB7FFE48B57E3903E03FE0390F000FF0 +000E6D7E486D7E486D7E123000706D7E126012FCB4EC7F807FA56CC7FC121CC8FCEDFF00 +A34A5A5D14035D4A5A5D140F4A5A4A5A92C7FC147C5C495A495A495A495A91C8FC011EEB +01805B5B49130348481400485A485A000EC75A000FB6FC5A5A485CB6FCA321387CB72A> +I<EB07F8EB3FFF4913C03901F80FF03903C007F848486C7E380E0001000F80381FE0006D +7FA56C5A6C5AC85A1401A25D4A5AA24A5A5DEC0F80027EC7FCEB1FFCECFF809038000FE0 +6E7EEC01FC816E7EED7F80A216C0A2153F16E0A2121EEA7F80487EA416C049137F007F15 +80007EC7FC0070ECFF006C495A121E390F8003F83907F00FF00001B512C06C6C90C7FCEB +0FF8233A7DB72A>I<1538A2157815F8A2140114031407A2140F141F141B143314731463 +14C313011483EB030313071306130C131C131813301370136013C01201EA038013005A12 +0E120C5A123812305A12E0B712F8A3C73803F800AB4A7E0103B512F8A325397EB82A>I< +0006140CD80780133C9038F003F890B5FC5D5D158092C7FC14FC38067FE090C9FCABEB07 +F8EB3FFE9038780F803907E007E090388003F0496C7E12066E7EC87EA28181A21680A412 +3E127F487EA490C71300485C12E000605C12700030495A00385C6C1303001E495A6C6C48 +5A3907E03F800001B5C7FC38007FFCEB1FE0213A7CB72A>I<EC3FC0903801FFF0010713 +FC90380FE03E90383F800790387E001F49EB3F804848137F485AA2485A000FEC3F004913 +1E001F91C7FCA2485AA3127F90C9FCEB01FC903807FF8039FF1E07E090383801F0496C7E +01607F01E0137E497FA249148016C0151FA290C713E0A57EA56C7E16C0A2121FED3F807F +000F15006C6C5B15FE6C6C5B6C6C485A3900FE07F090383FFFC06D90C7FCEB03FC233A7D +B72A>I<EB03F8EB1FFF017F13C09038FC07E03903F803F048486C7E48486C7E49137E12 +1F48487FA2007F158090C7FCA248EC1FC0A616E0A56C143FA27F123F001F147FA26C6C13 +FF3907E001DF0003149F3801F0033900FC0F1FD93FFC13C0EB07F090C7FC153F1680A316 +005D000F147E487E486C5BA24A5A4A5A49485A6C48485A001C495A260F807FC7FC3807FF +FC000113F038003FC0233A7DB72A>57 D<121C127FEAFF80A5EA7F00121CC7FCB2121C12 +7FEAFF80A5EA7F00121C092479A317>I<121C127FEAFF80A5EA7F00121CC7FCB2121C12 +7F5A1380A4127F121D1201A412031300A25A1206A2120E5A121812385A1260093479A317 +>I<007FB812F8B912FCA26C17F8CCFCAE007FB812F8B912FCA26C17F836167B9F41>61 +D<EB3FE03801FFFE3907C03F80390E000FC0003CEB07F000301303007014F8007C130100 +FE14FC7EA4127E003CEB03F8C7FCEC07F0A2EC0FE0EC1F80EC3F00147E147C5C495A5C49 +5A5CA249C7FCA31306AA90C8FCA8130EEB3F80497EA56D5A010EC7FC1E3B7CBA27>63 +D<EAFFF8A4EAF000B3B3B3B3A3EAFFF8A40D5378BD17>91 D<EAFFF8A4EA0078B3B3B3B3 +A3EAFFF8A40D537FBD17>93 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fv ecrm1000 10 84 +/Fv 84 123 df<486C1360000314E039070001C0000EEB038048EB070000181306003813 +0E0030130C0070131C00601318A200E01338481330A400CEEB338039FF803FE001C013F0 +A3007F131FA2393F800FE0390E0003801C1981B91C>16 D<001C1307007FEB1FC039FF80 +3FE0A201C013F0A3007F131F001CEB073000001300A400011470491360A2000314E090C7 +12C048130100061480000E130348EB070048130E485B006013181C1980B91C>I<EC6003 +ECE007A2903801C00EA2903803801C0107133CEC0038491378011E13F090383C01E0EB7C +03017813C09038F007800003131F3907E03F00380FC07E48485A387F03F838FE07F0A238 +7F03F8381F80FC380FC07E6C6C7E3903F01F800000130790387803C0017C13E0EB3C0190 +381E00F06D13786D1338EC803C0103131C903801C00EA2903800E007A2EC6003202877A7 +2E>19 D<EAC006EAE007A238700380A26C6C7E003C7FEA1C00001E7F6C13786C6C7EEBC0 +3E0003131E6C6C7E01F813C03900FC07E090387E03F090383F01F890381FC0FE90380FE0 +7FA290381FC0FE90383F01F890387E03F09038FC07E03901F80FC001E013003803C01E00 +07133EEB803C48485A001E5B001C5BEA3C0100385B48485AA24848C7FCA2EAC00620287C +A72E>I<B81280A2290280962A>I<BD12C0A25202809653>I<DA0FF813FC91397FFF07FF +903B01F807DF83C0903A07E001FF0F903B1F8007FE1FE090393F000FFC137E16F85B9338 +F007804848010790C7FC1503ACB812F8A32801F80003F0C7FCB3AB486C497E267FFFE0B5 +12F0A3333B7FBA30>27 D<EC0FF8EC7FFE903901F80780903907E001C090391F8000E090 +383F0007017E497EA25BA2485A6F5AED018092C8FCA9ED03F0B7FCA33901F8000F1503B3 +AA486C497E267FFFE0B512C0A32A3B7FBA2E>I<EC0FFC91387FFF70903901F803F09038 +07E00790381F800FEB3F00137EA25B150748481303ADB7FCA33901F80003B3AB486C497E +267FFFE0B512C0A32A3B7FBA2E>I<DA0FF0EB1FF0DA7FFEEBFFFC903B01F80F83F00F90 +3C07E001CFC00380903C1F8000FF0001C090273F0007FE130F017E4948497EA2495CA248 +485C03076E5A03030203C7FC95C8FCA9F007E0BAFCA33C01F80003F0001F1807B3AA486C +496C497E267FFFE0B500C1B51280A3413B7FBA45>I<121C127FEAFF80A213C0A3127F12 +1C1200A412011380A2120313005A1206120E5A5A5A12600A1979B917>39 +D<146014E0EB01C0EB0380EB0700130E131E5B5BA25B485AA2485AA212075B120F90C7FC +A25A121EA2123EA35AA65AB2127CA67EA3121EA2121F7EA27F12077F1203A26C7EA26C7E +1378A27F7F130E7FEB0380EB01C0EB00E01460135278BD20>I<12C07E12707E7E7E120F +6C7E6C7EA26C7E6C7EA21378A2137C133C133E131EA2131F7FA21480A3EB07C0A6EB03E0 +B2EB07C0A6EB0F80A31400A25B131EA2133E133C137C1378A25BA2485A485AA2485A48C7 +FC120E5A5A5A5A5A13527CBD20>I<1530B3A8B912FCA2C80030C8FCB3A836367BAF41> +43 D<121C127FEAFF80A213C0A3127F121C1200A412011380A2120313005A1206120E5A +5A5A12600A19798817>I<B512FCA516057F941C>I<121C127FEAFF80A5EA7F00121C0909 +798817>I<1506A2150E150CA2151C151815381530A215701560A215E015C0A214011580 +A2140315005C1406A2140E140CA2141C1418A214381430A21470146014E05CA213015CA2 +130391C7FCA25B1306A2130E130C131C1318A213381330A213701360A213E05BA212015B +120390C8FCA25A1206A2120E120CA2121C1218A21238123012701260A212E05AA21F537B +BD2A>I<EB03F8EB1FFF90387E0FC09038F803E03901E000F0484813780007147C48487F +A248C77EA2481580A3007EEC0FC0A500FE15E0B3007E15C0A4007F141F6C1580A36C1500 +A26C6C133EA26C6C5B6C6C5BEBF0013900F803E090387E0FC0D91FFFC7FCEB03F823397D +B62A>I<EB01C013031307131F13FFB5FCA2131F1200B3B3A7497E007FB512F0A31C3779 +B62A>I<EB0FF0EB7FFE48B57E3903E03FE0390F000FF0001E6D7E001C6D7E486D7E5A6E +7E126012FE6CEC7F807FA56CC7FC121CC8FCEDFF00A25D14015D14035D4A5A4A5A5D4A5A +4AC7FC147E5C495A14E0495A495A49C8FC011EEB01805B5B49130348481400485A485A90 +C75A48B6FC5A5A485CB6FCA321377CB62A>I<EB07F8EB3FFF90B512C03901F80FF03903 +C007F848486C7E390E0001FEEA0F80391FE000FF7FA56C5A6C5AC7485AA25D14035D4A5A +5DEC0F80027FC7FCEB1FFCECFF809038000FE06E7EEC01FC816E7EED7F80A216C0A2153F +16E0A2121EEA7F80A2487EA316C0157F491480007EC7FC0070ECFF006C495A121E390F80 +03F83907F00FF00001B512C06C6C90C7FCEB0FF823397DB62A>I<1538A2157815F8A214 +0114031407A2140F141F141B14331473146314C313011483EB030313071306130C131C13 +1813301370136013C01201EA038013005A120E120C5A123812305A12E0B712F8A3C73803 +F800AA4A7E0103B512F8A325387EB72A>I<0006140CD80780133C9038F003F890B5FC5D +5D158092C7FC14FC38067FE090C9FCAAEB07F8EB1FFE9038780F809038E007E03907C003 +F0496C7E130000066D7E81C8FC8181A21680A4121C127F5A7FA390C713005D12FC00605C +12704A5A6C5C6C1303001E495A6C6C485A3907E03F800001B5C7FC38007FFCEB1FE02139 +7CB62A>I<EC3FC0903801FFF0010713FC90380FE03E90383F800790387E001F49EB3F80 +4848137F485A12075B000FEC3F0049131E001F91C7FC5B123FA3127F90C9FCEB01FC9038 +07FF8039FF1E07E090383801F0496C7E01607F01E0137E497F16805BED1FC0A390C713E0 +A57EA47F123F16C0A2001FEC3F807F000F15006D5B000714FE6C6C5B6C6C485A3900FE07 +F090387FFFC0011F90C7FCEB03FC23397DB62A>I<12301238123E003FB612E0A316C05A +168016000070C712060060140E5D5D00E014304814705D5DC712014A5A4AC7FC1406140E +5CA25C1478147014F05C1301A213035C1307A2130FA3131F5CA2133FA5137FA96DC8FC13 +1E233A7BB72A>I<EB03F8EB1FFF017F13C09038FC07F03901E001F83903C0007C484813 +3C90C7123E48141E000E141F001E80A3121FA26D5B6D131E7FD80FF85B6D137C01FF1378 +6C6D5A6CEBE3E0ECF780C601FFC7FC6D5A6D6C7E010F13E0013F7F01F97F3901E07FFE48 +486C7E380F800F48486C1380001E010113C0487F007C143F0078EC1FE0150F00F8140748 +1403A21501A36C15C0A200781403007C15806C14076CEC0F006C6C131ED807E0137C3903 +F803F0C6B55A013F1380D907FCC7FC23397DB62A>I<EB03F8EB1FFF017F13C03901FC07 +E048486C7E3907E001F8000F6D7E4848137E5B003F80A248C71380A25AED1FC0A516E0A5 +6C143FA36C7E157F121F6C6C13FF6C6C13DF000313013901F0039F3900FC0F1FD93FFC13 +C0EB07F090C7FCA2153F1680A216005D120F486C137E486C5BA24A5A4A5A49485A381F00 +0F001CEB1F80260F807FC7FC3807FFFE000113F838003FC023397DB62A>I<121C127FEA +FF80A5EA7F00121CC7FCB2121C127FEAFF80A5EA7F00121C092479A317>I<121C127FEA +FF80A5EA7F00121CC7FCB2121C127FEAFF80A213C0A3127F121C1200A412011380A21203 +13005A1206120E5A5A5A12600A3479A317>I<EB3FE03801FFFE3907C03F80390E000FC0 +003CEB07F000301303007014F8007C130100FE14FC7EA4127E003CEB03F8C7FCEC07F0A2 +EC0FE0EC1F80EC3F00147E147C5C495A5C495A5CA249C7FCA31306AA90C8FCA8130EEB3F +80497EA56D5A010EC7FC1E3B7CBA27>63 D<1538A3157CA315FEA34A7EA34A6C7EA20207 +7FEC063FA2020E7FEC0C1FA2021C7FEC180FA202387FEC3007A202707FEC6003A202C07F +1501A2D901807F81A249C77F167FA20106810107B6FCA24981010CC7121FA2496E7EA349 +6E7EA3496E7EA213E0707E1201486C81D80FFC02071380B56C90B512FEA3373C7DBB3E> +65 D<B712E016FC16FF0001903980007FC06C90C7EA1FE0707E707E707EA2707EA283A7 +5F16035F4C5A4C5A4C5A4C5AEEFF8091B500FCC7FCA291C7EA7F80EE1FE0EE07F0707E70 +7E83707EA21880177F18C0A7188017FFA24C13005F16034C5AEE1FF8486DEB7FF0B812C0 +94C7FC16F832397DB83B>I<913A01FF800180020FEBE003027F13F8903A01FF807E0790 +3A03FC000F0FD90FF0EB039F4948EB01DFD93F80EB00FF49C8127F01FE153F1201484815 +1F4848150FA248481507A2485A1703123F5B007F1601A35B00FF93C7FCAD127F6DED0180 +A3123F7F001F160318006C7E5F6C7E17066C6C150E6C6C5D00001618017F15386D6C5CD9 +1FE05C6D6CEB03C0D903FCEB0F80902701FF803FC7FC9039007FFFFC020F13F002011380 +313D7BBA3C>I<B712C016F816FE000190398001FF806C90C7EA3FE0EE0FF0EE03F8707E +707E177FA2EF3F8018C0171F18E0170F18F0A3EF07F8A418FCAC18F8A4EF0FF0A218E0A2 +171F18C0EF3F80A2EF7F0017FE4C5A4C5AEE0FF0EE3FE0486DEBFF80B8C7FC16F816C036 +397DB83F>I<B812FEA3000190388000076C90C8FC173F838383A383A31880170116C0A3 +94C7FCA31501A21503150F91B5FCA3EC000F15031501A21500A21860A318E093C712C0A4 +1701A3EF0380A21707A2170F173F177F486D903807FF00B9FCA333397EB838>I<B812F8 +A30001903880001F6C90C71201EE00FC177C173C171CA2170CA4170E1706A2ED0180A217 +00A41503A21507151F91B5FCA3EC001F15071503A21501A692C8FCAD4813C0B612C0A32F +397DB836>I<DBFF8013C0020FEBF001023F13FC9139FF803F03903A03FC000787D90FF0 +EB03CF4948EB00EF4948147F4948143F49C8121F485A4848150F48481507A248481503A2 +485A1701123F5B007F1600A448481600AB93B6FCA26C7E9338007FE0EF3FC0A2123F7F12 +1FA26C7EA26C7EA26C7E6C7E6C6C157F6D7E6D6C14FF6D6C14EFD90FF8EB03C7D903FEEB +0783903A00FFC03F0191393FFFFC00020F01F0130002001380383D7CBA41>I<B648B512 +FEA30001902680000313006C90C76C5AB3A491B6FCA391C71201B3A6486D497EB648B512 +FEA337397DB83E>I<B612C0A3C6EBC0006D5AB3B3AD497EB612C0A31A397EB81E>I<013F +B512E0A39039001FFC00EC07F8B3B3A3123FEA7F80EAFFC0A44A5A1380D87F005B007013 +1F6C5C6C495A6C49C7FC380781FC3801FFF038007F80233B7DB82B>I<B649B5FCA30001 +01809038007FF06C90C8EA3F80053EC7FC173C17385F5F4C5A4C5A4CC8FC160E5E5E5E5E +4B5AED0780030EC9FC5D153E157E15FF5C4A7F4A6C7E140E4A6C7E4A6C7E14704A6C7E4A +6C7E14804A6C7E6F7EA26F7F707EA2707E707EA2707EA2707E707EA2707E707F8484486D +497FB6011FEBFF80A339397DB841>I<B612E0A3000101C0C8FC6C90C9FCB3AD1718A517 +381730A31770A317F0A216011603160FEE1FE0486D13FFB8FCA32D397DB834>I<B59338 +07FFF86E5DA20001F0FC002600DFC0ED1BF8A2D9CFE01533A3D9C7F01563A3D9C3F815C3 +A2D9C1FCEC0183A3D9C0FEEC0303A2027F1406A36E6C130CA36E6C1318A26E6C1330A36E +6C1360A26E6C13C0A3913901FC0180A3913900FE0300A2ED7F06A3ED3F8CA2ED1FD8A3ED +0FF0A3486C6D5A487ED80FFC6D48497EB500C00203B512F8A2ED018045397DB84C>I<B5 +913807FFFE8080C69238007FE06EEC1F80D9DFF0EC0F001706EBCFF8EBC7FCA2EBC3FEEB +C1FFA201C07F6E7EA26E7E6E7E81140F6E7E8114036E7E168080ED7FC016E0153FED1FF0 +ED0FF8A2ED07FCED03FEA2ED01FF6F1386A2EE7FC6EE3FE6A2EE1FF6EE0FFEA216071603 +A216011600A2177E486C153E487ED80FFC151EB500C0140EA2170637397DB83E>I<EC03 +FF021F13E09138FE01FC903901F8007ED907E0EB1F8049486D7ED93F80EB07F049C76C7E +01FE6E7E48486E7E49157E0003167F4848ED3F80A24848ED1FC0A2001F17E049150F003F +17F0A3007F17F8491507A300FF17FCAC007F17F86D150FA3003F17F0A26C6CED1FE0A36C +6CED3FC0000717806D157F000317006C6C15FEA26C6C4A5A017F4A5A6D6C495A6D6C495A +D907E0EB1F80D903F8017FC7FC903900FE01FC91381FFFE0020390C8FC363D7BBA41>I< +B712C016FC16FF0001D9800013C06C90C7EA1FE0707EEE03F883707EA2707EA21880A718 +00A24C5AA24C5A5FEE0FF04C5AEEFF8091B548C7FC16F091CAFCB3A5487FB6FCA331397E +B838>I<B612FEEDFFE016F8000190388007FE6C90C76C7EEE3FC0707E707E707EA2707E +A283A65FA24C5AA24C5A4C5AEE3F8004FFC8FCED07FC91B512E05E9138000FF0ED03F8ED +00FE82707E707EA2161F83A583A6F00180A217F8160F1803486D01071400B66D6C5A0401 +1306933800FE0ECAEA3FFCEF07F0393B7DB83D>82 D<D90FF813C090383FFE0190B51281 +3903F807E33907E000F74848137F4848133F48C7121F003E140F007E1407A2007C140312 +FC1501A36C1400A37E6D14006C7E7F13F86CB47E6C13F8ECFF806C14E06C14F86C14FEC6 +80013F1480010714C0EB007F020713E0EC007FED3FF0151F150FED07F8A200C01403A215 +01A37EA216F07E15036C15E06C14076C15C06C140F6DEB1F80D8FBF0EB3F00D8F0FE13FE +39E03FFFF8010F13E0D8C00190C7FC253D7CBA2E>I<003FB812E0A3D9C003EB001F273E +0001FE130348EE01F00078160000701770A300601730A400E01738481718A4C71600B3B0 +913807FF80011FB612E0A335397DB83C>I<B6903807FFFEA3000101809038007FE06C90 +C8EA1F80EF0F001706B3B2170E6D150C80171C133F17186D6C14385F6D6C14F06D6C5C6D +6C495A6D6CEB07806D6C49C7FC91387F807E91381FFFF8020713E09138007F80373B7DB8 +3E>I<B500FC91387FFF80A30003018091380FFC006C90C8EA07E0715A6C705A6E140301 +7F93C7FCA280013F1506A26E140E011F150C80010F5DA28001075DA26E147001031560A2 +6D6C5CA2806D4A5AA2ED8003027F91C8FCA291383FC006A215E0021F5BA2EDF01C020F13 +18A26E6C5AA215FC02035BA2EDFEE002015BA26E6C5AA36FC9FCA3153EA2151CA3393B7E +B83E>I<B5D8FC07B5D8F001B5FCA30007902780001FFEC7EA1FF86C48C7D80FF8EC07E0 +00010307ED03C01B807F6C6F6C1500A26E5F017F6E6C1406A280013F4A6C5CA280011F4A +6D5BEE067FA26D6C010E6D5BEE0C3FA26D6C011C6D5BEE181FA26D6C6F5BEE300FA26D6C +6F485AEE6007A26D6C4CC7FC9338C003FCA203805D913B7F818001FE06A203C1150EDA3F +C3C7EAFF0CA203E3151CDA1FE6EC7F98A215F6DA0FFCEC3FF0A302075E4B141FA202035E +4B140FA202015E4B1407A2020093C8FC4B80503B7EB855>I<007FB590383FFFFCA3C601 +F801071380D97FE0D903FCC7FC013FEC01F06D6C5C5F6D6C5C6D6C13034CC8FC6D6C1306 +160E6D6C5B6DEB8018163891387FC0306E6C5A16E06E6C5A91380FF18015FB6EB4C9FC5D +14036E7EA26E7F6F7EA24B7E15DF9138019FF09138038FF8150F91380607FC91380E03FE +140C4A6C7EEC38000230804A6D7E14E04A6D7E49486D7E130391C76C7E01066E7E130E01 +0C6E7E011C1401013C8101FE822607FF80010713E0B500E0013FEBFF80A339397EB83E> +I<B500FE91383FFFE0A3000301E0913807FE00C649EC03F0017F6F5A606D6C5D6D6C1403 +95C7FC6D6C1406A26D6C5C6D6C141C17186D6C143817306D6D5B6E6C13E05F91383FE001 +5F91381FF003DA0FF890C8FC1606913807FC0E160C913803FE1C913801FF185E6E13B016 +E0157F6F5AB3A24B7E023FB512C0A33B397FB83E>I<003FB7FCA39039FC0001FE01C013 +0349495A003EC7FC003C4A5A5E0038141F00784A5A12704B5A5E006014FF4A90C7FCA24A +5A5DC712074A5AA24A5A5D143F4A5AA24A5A92C8FC5B495AA2495A5C130F4948EB0180A2 +495A5C137F495A16034890C7FC5B1203485AEE0700485A495C001F5D48485C5E4848495A +49130FB8FCA329397BB833>I<007FB81280B912C0A26C17803204797041>95 +D<EA01801203EA0700120E5A12181238123012701260A212E05AA412CEEAFF8013C0A312 +7FA2EA3F80EA0E000A197AB917>I<EB1FE0EBFFFC3803E03F3907000F80390F8007E048 +6C6C7E13E06E7EA26E7E6C5A6C5AC8FCA4147FEB07FFEB3FE0EBFE00EA03F8EA0FF0EA1F +C0123F485A90C7FC160C12FEA31401A26C13036CEB077C903980063E18383FC01E3A0FE0 +781FF03A03FFF00FE03A007F8007C026277DA52A>I<EA03F012FFA3120F1203B0EC1FE0 +EC7FF89038F1E03E9039F3801F809039F7000FC001FEEB07E049EB03F049EB01F85BED00 +FCA216FEA2167E167FAA167E16FEA216FC15016D14F8ED03F07F01EEEB07E001C6EB0FC0 +9039C7801F00903881E07E903800FFF8C7EA1FC0283B7EB92E>I<EB03FC90381FFF8090 +387E03E03901F80070484813F83907E001FC380FC003A2EA1F80123F90380001F848EB00 +F01500A2127E12FEAA127E127FA26C14067F001F140E6D130C000F141C6C6C13386C6C13 +706C6C13E039007C07C090381FFF00EB07F81F277DA525>I<ED0FC0EC03FFA3EC003F15 +0FB0EB03F8EB1FFF90387E078F9038F801EF3903F0007F4848133F4848131FA24848130F +123F90C7FC5AA2127E12FEAA127E127FA27EA26C6C131FA26C6C133F6C6C137F6C6CEBEF +F03A01F801CFFF39007C078F90381FFE0FD907F813C0283B7DB92E>I<EB07F8EB1FFF90 +387C0FC03901F803E03903F001F0D807E013F8380FC0004848137CA248C7127E153E5A15 +3F127E12FEA3B7FCA248C8FCA5127EA2127FA26C14037F001F14076C6C13060007140E6D +131CD801F013386C6C137090387E03E090381FFF80903803FC0020277EA525>I<147E90 +3803FF8090380FC1E0EB1F8790383F0FF0137EA213FCA23901F803C091C7FCADB512FCA3 +D801F8C7FCB3AB487E387FFFF8A31C3B7FBA19>I<ED03F090390FF00FF890393FFC3C3C +9039F81F707C3901F00FE03903E007C03A07C003E010000FECF000A248486C7EA86C6C48 +5AA200075C6C6C485A6D485A6D48C7FC38073FFC38060FF0000EC9FCA4120FA213C06CB5 +12C015F86C14FE6CECFF804815C03A0F80007FE048C7EA0FF0003E140348140116F84814 +00A56C1401007C15F06CEC03E0003F1407D80F80EB0F80D807E0EB3F003901FC01FC3900 +7FFFF0010790C7FC26387EA52A>I<EA03F012FFA3120F1203B0EC0FF0EC3FFCECF03F90 +39F1C01F809039F3800FC0EBF70013FE496D7EA25BA35BB3A3486C497EB500C1B51280A3 +293A7EB92E>I<EA0380EA0FE0487EA56C5AEA0380C8FCAAEA03F012FFA312071203B3AA +487EB512C0A312387EB717>I<EB01C0EB07F0EB0FF8A5EB07F0EB01C090C7FCAAEB01F8 +13FFA313071301B3B3A2123C127E00FF13F01303A214E038FE07C0127C383C0F00EA0FFE +EA03F8154984B719>I<EA03F012FFA3120F1203B1913801FFFCA39138007FC01600157C +15705D4A5A4A5A4AC7FC141E1438147814FC13F1EBF3FEEBF73F01FE7FEBF81F496C7E81 +14076E7E6E7E811400157E157F811680ED1FC0486CEB3FF0B500C0B5FCA3283A7EB92C> +I<EA03F012FFA3120F1203B3B3AD487EB512C0A3123A7EB917>I<2703F00FF0EB1FE000 +FFD93FFCEB7FF8913AF03F01E07E903BF1C01F83803F3D0FF3800FC7001F802603F70013 +CE01FE14DC49D907F8EB0FC0A2495CA3495CB3A3486C496CEB1FE0B500C1B50083B5FCA3 +40257EA445>I<3903F00FF000FFEB3FFCECF03F9039F1C01F803A0FF3800FC03803F700 +13FE496D7EA25BA35BB3A3486C497EB500C1B51280A329257EA42E>I<EB03FE90380FFF +8090383E03E09038F800F84848137C48487F48487F4848EB0F80001F15C090C712074815 +E0A2007EEC03F0A400FE15F8A9007E15F0A2007F14076C15E0A26C6CEB0FC0000F15806D +131F6C6CEB3F006C6C137EC66C13F890387E03F090381FFFC0D903FEC7FC25277EA52A> +I<3903F01FE000FFEB7FF89038F1E07E9039F3801F803A07F7000FC0D803FEEB07E049EB +03F04914F849130116FC150016FEA3167FAA16FEA3ED01FCA26DEB03F816F06D13076DEB +0FE001F614C09039F7803F009038F1E07E9038F0FFF8EC1FC091C8FCAB487EB512C0A328 +357EA42E>I<D903F813C090381FFE0190387E07819038FC01C33903F000E30007147748 +48133749133F001F141F485A150F48C7FCA312FEAA127FA37E6D131F121F6D133F120F6C +6C137F6C6C13EF3901F801CF39007E078F90381FFE0FEB07F890C7FCABED1FE00203B5FC +A328357DA42C>I<3807E01F00FFEB7FC09038E1E3E09038E387F0380FE707EA03E613EE +9038EC03E09038FC0080491300A45BB3A2487EB512F0A31C257EA421>I<EBFF03000313 +E7380F80FF381E003F487F487F00707F12F0A2807EA27EB490C7FCEA7FE013FF6C13E06C +13F86C7F00037FC67F01071380EB007F141F00C0EB0FC01407A26C1303A37E15806C1307 +7EEC0F00B4131E38F3C07C38E1FFF038C03F801A277DA521>I<1318A51338A31378A313 +F8120112031207001FB5FCB6FCA2D801F8C7FCB215C0A93800FC011580EB7C03017E1300 +6D5AEB0FFEEB01F81A347FB220>I<D803F0EB07E000FFEB01FFA3000FEB001F00031407 +B3A4150FA3151F12016D133F0000EC77F86D9038E7FF8090383F03C790381FFF87903A03 +FC07E00029267EA42E>I<B538803FFEA33A0FF8000FF06C48EB07E00003EC03C06D1480 +00011500A26C6C1306A26D130E017E130CA26D5BA2EC8038011F1330A26D6C5AA214E001 +075BA2903803F180A3D901FBC7FCA214FF6D5AA2147CA31438A227257EA32C>I<B53A1F +FFE03FFEA3260FF8009038000FF86C48017EEB03E018C00003023EEB0180A26C6C013FEB +0300A36C6CEC8006156FA2017E9038EFC00C15C7171CD93F01EBE01815830281EBF038D9 +1F831430150102C3EBF87090260FC6001360A2D907E66D5A02EC137CA2D903FCEB7F804A +133FA2010192C7FC4A7FA20100141E4A130E0260130C37257EA33C>I<B538807FFFA33A +03FE003FF00001EC1F80000092C7FC017E131C6D13186D6C5AECC070010F5B6D6C5AECF1 +80EB03FB6DB4C8FC6D5AA2147F804A7E8114CF903801C7E090380383F090380703F8EB06 +01496C7E011C137E49137F01787F496D7E486C80000FEC3FF0D8FFFE90B51280A329247F +A32C>I<B538803FFEA33A0FF8000FF06C48EB07C00003EC03806C7E16007F00001406A2 +017E5BA2137F6D5BA26D6C5AA2ECC070010F1360A26D6C5AA214F101035BA2D901FBC7FC +A214FF6D5AA2147CA31438A21430A214701460A25CA2EA7C0100FE5B130391C8FC1306EA +FC0EEA701C6C5AEA1FF0EA0FC027357EA32C>I<003FB512FCA2EB8003D83E0013F8003C +EB07F00038EB0FE012300070EB1FC0EC3F800060137F150014FE495AA2C6485A495AA249 +5A495A495AA290387F000613FEA2485A485A0007140E5B4848130C4848131CA24848133C +48C7127C48EB03FC90B5FCA21F247EA325>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fw ecbx1440 14.4 46 +/Fw 46 122 df<DC7FFEECFFC0031FB5D8801F13F092B6D8E07F13FC020703F9B57E021F +D9C007B5EAC1FF91277FFE000102071380DAFFF8010713FC010301E049494813C0495B49 +494913F04990C7FC19E0495A741380017F17C04A6E6E130071EC00FC98C7FCAEBB12FEA5 +26007FFCC7000701C0C8FCB3B3A7007FB5D8FC07B612F0A552547DD34D>27 +D<EA07E0EA1FF0EA3FFC127F7FB5FCA31480A37EA27E7EEA07E7EA0007A3130F1400A35B +131E133EA25BA25BA2485A485A1207485A485A90C7FC121E120C1127768F25>44 +D<B712E0AB230B7F9F2C>I<EA07E0EA1FF8EA3FFCEA7FFEA2B5FCA6EA7FFEA2EA3FFCEA +1FF8EA07E01010768F25>I<913803FF80023F13F849B6FC010715C04901017F903A3FFC +007FF8D97FF0EB1FFC49486D7E48496D7E4A7F4817804890C76C13C0A248486E13E0A200 +1F17F0A3003F17F8A249157FA2007F17FCA600FF17FEB3A5007F17FCA6003F17F86D15FF +A3001F17F0A3000F17E06D5C6C17C0A26C6D4913806C17006E5B6C6D495A6D6C495AD93F +FCEB7FF8903A0FFF01FFE06D90B55A010192C7FCD9003F13F802031380374F7BCD42>48 +D<151E153E15FE1403140F147FEB07FF0003B5FCB6FCA3EBF87FEAFC00C7FCB3B3B3A600 +7FB712FCA52E4E76CD42>I<EC1FFE49B512F0010F14FC013FECFF804915E02701FF803F +7F2703FC000713FCD807F001017F48486D7FD81F806E138048C87E7013C0D87FE016E001 +F8806D16F000FF817F7013F8A56C5AA26C5A6C5AEA0380C914F05EA218E05E18C05E1880 +4C13005F4C5A4C5A5F4B5B4B5B4B5B94C7FCED0FFC4B5A4B5AED7FC04B5A4A90C8FCEC03 +FC4A5A4A4814F84A5A4A5A4AC8FC02FEEC01F0495A495A495A5CD90F80140349C8FC013E +1507017FB7FC90B812E05A5A5A5A5A5A5AB9FC18C0A4354E7ACD42>I<913807FFC0027F +13FC0103B67E010F15E090261FF80313F890267FC0007F01FEC7EA3FFE48488148486E13 +8013FE486C6C6D13C0804817E080A66C5B18C06C5B6C90C75AD80038168090C8FC4C1300 +A24C5A5F4C5A4B5B4B13C0030F5BDB7FFEC7FC91387FFFF816C016FCEEFF80DA000313E0 +9238007FF8EE3FFE707E70138018C07013E018F07013F8A218FC82A218FEA3EA03C0EA0F +F0EA3FFC487EA2B5FCA218FCA25E18F8A26C4816F0495C4916E0D83FE04A13C06C485CD8 +0FF04A1380D807FE91387FFE003B03FFE003FFFC6C90B65A6C6C15E0010F92C7FC010114 +FCD9001F1380374F7BCD42>I<17FC1601A216031607160FA2161F163F167FA216FF5D5D +A25D5D5D167F153E157E15FC15F8EC01F01403EC07E015C0EC0F80141FEC3F00143E5C14 +FC495A5C495A1307495A5C49C7FC5B137E137C5B1201485A5B485A120F485A90C8FC123E +127E5ABA1280A5C901FCC7FCAF021FB71280A5394F7CCE42>I<486C150601F0153E01FE +EC01FED9FFF0133F91B65A5F5F5F5F5F94C7FC16FC5E16E093C8FC15FC01F0138091CAFC +AC913807FF80023F13F891B512FE01F36E7E9026FFFC0113E09139E0007FF891C76C7E49 +6E7E01F86E7E5B7013804916C0C9FC18E08218F0A418F8A31203EA0FE0EA3FF8487EA212 +FF7FA218F0A25B5E6C4816E05B01C016C06CC85A18806C6C4A13007FD80FF04A5A6C6CEC +FFFCD803FE4913F02701FFE00F5B6C6CB612806D92C7FC010F14F8010114C09026003FFC +C8FC354F7ACD42>I<ED07FE92B512C0020314F0021F14FC91397FFC01FE9139FFE0007F +01030180EB3F804990C7121F4948EC7FC0494814FF4948010313E0495A49485B5A485BA2 +485BA2486F13C091C7FC4803001300177E94C7FC5AA25B127FA2ED3FF04AB5FC020714C0 +00FF4914F091391F807FF891393E001FFE02786D7E4A6D13807013C06D5A4A6D13E018F0 +5C7013F8A291C813FCA44916FEA3127FA6123FA37F6C17FCA36C17F85E7E6E15F06C17E0 +6C6D5B6E15C06C4B13806D6C491300D93FFC495A6DB4EBFFFC010790B512F06D5D010015 +80021F01FCC7FC020313C0374F7BCD42>I<121F7F7FEBFF8091B8FCA45A18FE18FC18F8 +18F0A218E018C018804817000180C8123E007EC9127E5F007C4B5A4C5A5F16074C5A484B +5A4CC7FC167E167CC912FC4B5A4B5AA24B5A150F4B5AA24B5AA24BC8FC5DA25C5D1403A2 +14075D140FA3141FA2143FA34A5AA414FFA65BAB6D5B6E5A6E5A6E5A385279D042>I<91 +3803FFC0023F13FC49B67E010715E090260FFC0013F8D93FE0EB1FFCD97F80EB07FE49C7 +6C7E496E1380484880000317C049157F120718E0173F120FA27FA27F7F6E147F02E015C0 +8002FC14FF6C01FF15806F481300EDE0036C9138F807FE6F485A6C9138FF1FF06CEDFFE0 +17806D4AC7FC7F010F6E7E6D81010115F06D81010315FE010F81D93FF71580D97FC115C0 +2701FF807F14E048EB001F48486D14F04848010314F848481300496E13FC003F151F4914 +07007F6F13FE491400177F00FF163F49151F170F1707A21703A218FCA27F127F6DED07F8 +A26C6CED0FF07F6C6CED1FE06C6CED3FC06C6CEDFF806C01C0010313006C01FCEB3FFE6C +6CB612F8011F15E001071580010002FCC7FC020F13C0374F7BCD42>I<913807FF80027F +13F849B512FE01076E7E90261FFE0113E0903A7FF8003FF049486D7E48496D7E48496D7E +484980486F138091C7FC486F13C05A18E0485A18F0A27013F812FFA318FCA618FEA35E12 +7FA4003F5DA26C7E5E7E6C6D5B161E6C7F6C6D5B6C6C6C13F890393FFC03F06DB55A0107 +4A13FC01001400EC1FF891C8FCA218F85EA301FC16F0487E2607FF8015E05E486D15C0A2 +4C1380A24C13005F4A131F6C4B5A49C7485A494A5A6C48495B6D01075B2701FF803F90C7 +FC6C90B512FC013F5C6D14C0010791C8FC9038007FF0374F7BCD42>I<ECFFFC010FEBFF +E0013F14FC90B7FC0003D9801F13802707F8000313E0D80FE06D13F048487F48C813F8D8 +7FC0EC7FFC13F07F00FF16FE7FA66C5A6C48ECFFFC6C5AD8078015F8C85A4B13F04B13E0 +17C04B138092381FFE004B5A16F04B5A4B5A5E4A90C7FC5D4A5AA25D4A5AA25D140F5DA2 +5DAD91C9FCAAEC1F80EC7FE04A7E497FA2497FA66D5BA26D5B6E5AEC1F802F5479D33E> +63 D<932603FFF01407047F01FF140F0307B600E0131F033F03F8133F92B700FE137F02 +039126C003FF13FF020F01F8C7EA3FC1023F01C0EC0FE391B5C80003B5FC4901FC814949 +814901E082011F498249498292CA7E4948834948835A4A83485B4885A24849187FA2485B +1B3FA2485B1B1FA25AA21B0091CDFCA2B5FCAE7EA280A36C1A1FA36C7FA21B3F6C7F1B3E +6C7F1B7E6C6D187C6C1AFC6E18F86C19016D6CEF03F06D7E6FEE07E06D6DEE0FC001076D +EE1F806D01F8EE3F006D6D16FE6D01FF4B5A023F01C0EC07F8020F01FCEC3FF00203903A +FFC001FFC0020091B6C7FC033F15FC030715F0DB007F1480040301F0C8FC505479D25F> +67 D<BB12FCA5D8000701F0C7000F7F1800191F190F19071903190119001A7E1A7F86A3 +86A51B80DD03E0130FA497C7FCA31707A3170F171F173FEE01FF92B6FCA5EDF001EE003F +171F170F1707A31703A794CAFCB3A2B812F0A549527CD153>70 D<B81280A5D8000701F0 +C7FCB3B3B3B2B81280A529527DD130>73 D<B600F04EB612F06F606F60A3D800076D4E49 +C7FCA2DADFFFF01F7FA202CF6D173EA302C76D177CA202C36D17F8A202C16DEE01F0A202 +C06DEE03E0A36F6CEE07C0A26F6CEE0F80A26F6CEE1F00A36F6D153EA26F6D5DA26F6D5D +A36F6D4A5AA26F6D4A5AA2706C4A5AA3706C4A5AA2706C4AC7FCA2706D133EA3706D5BA2 +706D5BA2706D485AA2706D485AA3716C485AA2716C485AA2716C48C8FCA37113BEA27113 +FCA2715BA3715BA2715BA2D91FF06F5AB600FE050FB712F0A2725AA272C7FC74527CD17D +>77 D<B600F84BB612FC818181A2D800076E91C7383FE00070EE0F80828214DF02CF7F02 +C77F8202C37F14C102C0806F7F836F7F816F7F6F7F83816F7F6F80707F8482707F707F70 +7F8482707F7080717F8583717F717F85717F83717F7114801AC07213E0847213F07213F8 +1AFC7213FE847213FF72148F1BCF7313EF857313FF85A285858585A286868686A2868686 +86EB1FF0B600FE177F1B3F1B1F1B0FA25E527CD167>I<B912FCF0FFE019FE737E1AE0D8 +000F01E0C7003F7F060313FC06007F737E7313807313C07313E0851BF0A21BF885A21BFC +A91BF8A3611BF0A21BE04F13C0614F13804F13004F5A060713F8063F5B92B812C097C7FC +19F8198003E0CBFCB3AEB712FEA54E527CD15A>80 D<DA0FFE141C91B500F0133C010702 +FC137C011F02FF13FC017F15C19026FFF00113E148903980001FFB4890C7EA07FFD807FC +14014848804848153F171F4848150FA2007F1607491503A2170112FFA217007FA26D167C +A27F7F6D93C7FC6C7E14C014F8ECFF806C14F8EDFFC06C15FC6CEDFF8017F06C16FC6C82 +6C707E6C836D82011F8201078213016D6C81020781EC007F030380ED003F040314801600 +173F837113C0838312F883A3837EA319807EA26C5E19007F6D4B5A7F6D4B5A01FC4B5A6D +151FD9FFC04A5AD97FF8ECFFE028FE1FFF80075B010790B6C7FCD8FC0115FC486C6C14F0 +48010F14C0489026007FFCC8FC3A5479D249>83 D<003FBB12FCA59126C0007FEB000301 +FCC7ED003FD87FF0F00FFE49180749180349180190C81600A2007E1A7EA3007C1A3EA500 +FC1A3F481A1FA6C91700B3B3AC49B912C0A550517BD05B>I<B700F8017FB600FC49B612 +E0A5D8001F01C0C8001F01E0C9EBC0000E1FC7FC6F6F606D73163E6F81207E6D73167C6F +8120FC6D735E6F6F17016D735E616F1B036D735E616F1B076E4C6E5D7015BF1F0F6E041F +6E5D70031F161F6E9AC8FC073F8070DA3E0F5E6E73143E197E70DA7C07167E6E04FC6E14 +7C704A7E1FFC6E03016F5C704A7E6E515A060381704A6C15036E735C1807704A6D14076F +07805B7148487F1E0F6F021F04C05B05C090C77E1E1F6F4A04E090C9FCDDE03E6E5C6FF1 +F03E187EDDF07C6E147E6FF1F87C18FC71486E14FC6F01F9715ADDFDF0801DFD6F01FFEF +FFF04E806F62A24E817061A24E81706195C97EA27096CAFC4D82040F60A24D1607040760 +A24D16030403604D160104016083537ED188>87 D<EC3FFE0107B512E0011F14FC017F14 +FF2701FFC00F13C02703FE00037F486C01007F6E6D7E486D80707EA2707EA3707F6C5B6C +90C7FC6C5AC9FCA60307B5FC0203B6FC147F0103B7FC011FEBF00F017F1300EBFFFC0003 +13F04813C0485B4890C7FC5A5B485AF081F012FF5BA35EA26D5C127F6D5C003F03F713C3 +6DD901E314E06CD9C00714FF00079026F01F8114C06C90B5C61480C602FC6D1300011F01 +F0EB3FFC01010180EB07F03C387CB642>97 D<EB3FF8B5FCA51203C6FCB3A4EE7FF00307 +B5FC031F14C0037F14F0913AF9FF007FFCDAFFF8EB1FFF03E001077F03806D7F92C76C7F +4A6E7F5C4A6F7E85183F85A38584A31A80AD1A00A36061A261187F616E15FF616E4A5B6E +4A5B6F495BDACFE04990C7FCDA87F0EB3FFE913A01FE01FFF8496CB65A49013F14C04901 +0749C8FC90C813E041547DD249>I<913803FFE0023F13FE91B67E010315E0010F903800 +3FF8D93FFCEB07FC4948497E4948131F4849497E485B485BA24890C7FC5A5B003F6F5A70 +5A705A007F92C8FC5BA312FFAD127F7FA3123F7F6CEE0F80A26C6D141F18006C6D5C6C6D +143E6C6D147E6C6D5C6D6C495A6DB4EB07F0010F9038C01FE06D90B5128001014AC7FCD9 +003F13F80203138031387CB63A>I<943803FF80040FB5FCA5EE003F170FB3A4913803FF +80023F13F849B512FE0107ECFF8F011F9038C03FEF90273FFE0007B5FCD97FF813014948 +7F484980484980484980488291C8FC5A5B123FA2127F5BA312FFAD127FA37F123FA3121F +7F6C5E6C6D5C5F6C6D91B5FC6C6D5B6C6D4914E0D97FFCD90FEFEBFF80D91FFFEB7F8F01 +0790B5120F010114FC6D6C13E00207010049C7FC41547CD249>I<913807FF80027F13F8 +49B512FE01076E7E011F010313E0903A3FFC007FF0D97FF06D7E49486D7E4849130F4849 +6D7E48824890C77E1880485A82003F17C0A3485A18E082A212FFA290B8FCA401FCCAFCA6 +127FA37F123FA2EF03E06C7E17076C17C06C6D140F18806C6D141F6C6DEC3F006C6D147E +D97FFC495AD91FFFEB07F86D9038E03FF0010390B512C001005D023F01FCC7FC020113E0 +33387CB63C>I<ED1FF8913803FFFE020FEBFF80023F14C09139FFF83FE001039038E0FF +F049138049010113F85BEB3FFEA2EB7FFCA26F13F0495AEE7FE0EE1F8093C7FCAEB712C0 +A5C601F8C8FCB3B3A7B612FEA52D547CD328>I<DA1FFE14FE49B539E007FF80010FDAFC +1F13C0013FDAFF7F13E090267FF807EBFF072701FFE001EBF07F48497E484990387FF83F +91C7003F14C048EEFC1F489338FE070049021F90C7FCA2003F82A9001F5EA26D143F6C5E +6C5E6E137F6C6D495A6C6D485B6CD9F80713804890B6C8FCD803EF14FC01C114E02707C0 +1FFEC9FC49CBFCA2487EA37FA27F13FC90B612FE6CEDFFF017FCEFFF806C8318F06C836C +837F48B87E1207D80FFCC700037F4848EC003F4848150F48486F138083485A83A56D5D00 +7F18006D5D003F5F6C6C4B5A01FE153FD807FFED7FF06C01C049485AC601FC011F138001 +3FB648C7FC010F15F8010115C0D9000F01F8C8FC3B4F7CB542>I<EB3FF8B5FCA51203C6 +FCB3A4EE1FFC93B57E030314E0030F14F892391FC07FFC92397E003FFE03F86D7EECF9F0 +4B6D7FECFBC0ECFF8092C76C7FA25CA25CA45CB3ACB6D8F807B612C0A542537CD249>I< +133FEBFFC0487F487FA2487FA66C5BA26C5B6C5B013FC7FC90C8FCAEEB1FF8B5FCA51201 +7EB3B3A6B612F0A51C547CD324>I<EB3FF8B5FCA51203C6FCB3A50407B512F0A5933900 +7FF000EF3FC04D5A4DC7FCEE01FC4C5AEE0FF04C5A4C5A4CC8FC16FEED03FC4B5A4B5A4B +5A4B7E4B7EECF9FF02FB7F91B57EA28203BF7F031F7F14FE4A6C7FDAF0077F6F7FA26F7F +6F7F167F83707F707FA2707F707F707FA2707F707F84B6D8F00F14FEA53F537DD245> +107 D<EB3FF8B5FCA51203C6FCB3B3B3B1B612F8A51D537CD224>I<D93FF0D91FF84AB4 +7EB591B56C010F13F8030302E0013F13FE030F6E90B6FCDB3F809027F803F80F7F922A7E +007FFC07E0077F000302F890283FFE0F80037FC6D9F1F0011F49487EDAF3E0DAFF3E814B +153CDAF7805D92C76C496D7F14FF4A5EA24A5EA34A5EB3ADB6D8F80FB66CB612F8A56536 +7BB56E>I<D93FF0EB1FFCB591B57E030314E0030F14F892391FC07FFC92397E003FFE00 +0302F86D7EC6EBF1F04B6D7FECF3C0ECF78092C76C7F14FF5CA25CA45CB3ACB6D8F807B6 +12C0A542367CB549>I<913801FFC0023F13FE91B67E010315E0010F018013F8903A3FFC +001FFED97FF0EB07FF49486D7F48496D7F48496D7F91C8127F4883488349153F001F83A2 +003F8349151FA2007F83A400FF1880AC007F1800A3003F5F6D153FA2001F5FA26C6C4B5A +A26C6D4A5A6C5F6C6D495B6C6D495B6D6C4990C7FCD93FFCEB1FFE6DB46CB45A010790B5 +12F0010115C0D9003F49C8FC020313E039387CB642>I<D93FF8EB7FF0B50107B5FC031F +14C0037F14F09126F9FF0013FCDAFFF8EB3FFF000302E0010F7FC602806D7F92C76C7F4A +824A804A6E7F85187F85A2183F85A4721380AD4E1300A44E5AA26118FF616E5C616E4A5B +6E4A5B6F495B03E04990C7FC6FEB7FFE913AF9FE01FFF802F8B65A033F14C0030749C8FC +030013E093CAFCB1B612F8A5414D7DB549>I<90393FF001FCB590380FFF804B13E0037F +13F09238FE1FF89138F1F83F00019138F07FFC6CEBF3E015C0ECF780A2ECFF00EE3FF84A +EB1FF0EE0FE093C7FC5CA45CB3ABB612FEA52E367DB535>114 D<903903FFC00E011FEB +FC1E90B6127E000315FE3907FE003FD80FF0130F4848130348481301491300127F90C812 +7EA248153EA27FA27F01F091C7FC13FCEBFF806C13FEECFFF06C14FE6F7E6C15E06C816C +15FC6C81C681133F010F15801301D9000F14C0EC003F030713E0150100F880167F6C153F +A2161F7EA217C07E6D143F17807F6DEC7F0001F85C6DEB03FE9039FF801FFC486CB512F0 +D8F81F14C0D8F00791C7FC39E0007FF02B387CB634>I<147CA614FCA41301A31303A213 +07A2130F131F133F137F13FF1203000F90B512FEB7FCA426007FFCC8FCB3A9EE0F80ABEE +1F006D7EA2011F143E806D6D5A6DEBC1F86DEBFFF001005C023F1380DA03FEC7FC294D7E +CB33>I<D93FF8913801FFC0B50207B5FCA50003ED001FC61607B3AE5FA35FA25F137F5F +6D6C14F7DC01E713F06D6CD907C7EBFFC0903A0FFF801F876D90B51207010114FC6D6C13 +F0020701C091C7FC42377CB549>I<B600E1B6D8800FB5FCA500019026F0000301C0C7EA +3FE06E6D6DEC0F806CF21F00A26E6D6D5C017F193E6E147F72147E013F197C6E6F14FC6D +6117FF6F6E13016D4A5E03C06E13036D615E03E001E7EB80076D02075E03F001C313C06D +4E5A160F03F80181EBE01F6D96C7FC6F48C6FC735A027F49153EDBFE3E90387FF87E023F +177C167EDBFF7C90383FFCFC6E01FC5D4CEB1FFF6E5FA24C7F6E5F4C7F6E5FA24C7F6E5F +4C7FA26E94C8FC93C8FC6F5DA2033E157C58367DB45F>119 D<B6D8F001B512FCA5C66C +48C7381FF8006D6CEC0FE06D6D495A606D6D49C7FC6D6D137E6D6D13FE6D6D485A4C5A6D +01FC5B6E6C485A6E6C485A161F6EEBBF806E01FFC8FC6E5B5E6E5B806E7F6F7EA26F7E83 +4B7F92B5FC83DA01FB7FDA03F17FDA07F07F4A5A4A486C7E4B6C7E4A486C7F147E02FE6D +7F49486D7F49486D7F4A8149487F49486D7F011F6F7ED97FE06E7EB500FE0107B6FCA540 +357EB445>I<B600E090381FFFFCA5000101F8C7000113006CEE007C6E15FC017F5E6E14 +01013F5E8017036D6D5C17076D5E6F130F6D5E6F131F6D93C7FC815F6D6D133E177E6D15 +7C6F13FC027F5C811601DA3FFF5B16036E5C16876E5C16CF6E5C16EF16FF6E91C8FCA26E +5BA26E5BA26F5AA36F5AA26F5AA26F5AA35E151F93C9FC5D153E157ED81FC0137C487E48 +6C13FC486C5B14015D4A5A14074A5A6C48485A4948CAFC495A383F81FC6CB45A6C5B0003 +13C0C648CBFC3E4D7DB445>I E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fx cmsy8 8 2 +/Fx 2 122 df<130C131EA50060EB01800078130739FC0C0FC0007FEB3F80393F8C7F00 +3807CCF83801FFE038007F80011EC7FCEB7F803801FFE03807CCF8383F8C7F397F0C3F80 +00FCEB0FC039781E078000601301000090C7FCA5130C1A1D7C9E23>3 +D<1338137CA81338A7007C137CB512FEA3387C387C00001300A5137CB3A41338AD173D7C +AE20>121 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fy ecrm1200 12 21 +/Fy 21 122 df<14FF010713E090381F81F890383E007C01FC133F4848EB1F8049130F48 +48EB07C04848EB03E0A2000F15F0491301001F15F8A2003F15FCA390C8FC4815FEA54815 +FFB3A46C15FEA56D1301003F15FCA3001F15F8A26C6CEB03F0A36C6CEB07E0000315C06D +130F6C6CEB1F806C6CEB3F00013E137C90381F81F8903807FFE0010090C7FC28447CC131 +>48 D<EB03FE90381FFFC0017F13F03901F80FFC3903C001FE48486C7E000EC7EA7F8048 +EC3FC0ED1FE04815F00030140F007015F800601407126CB415FC7F7F1503A46C4813076C +C7FCC8FC16F8A2150F16F0151F16E0A2ED3FC0ED7F8016005D5D4A5A4A5A4A5A5D4A5A4A +5A4AC7FC147C5C5C495A495A495A49C7120C131E5B013814185B5B485A4848143848C812 +30000E1570001FB612F0A25A5AB712E0A326427BC131>50 D<B912F0A3000101C0C7127F +6C6C48EC0FF817031701170018781838A2181CA3180CA4180E1806160CA21800A5161CA2 +163C167CED01FC91B5FCA3EC8001ED007C163C161CA2160CA793C8FCB08048487EB612F8 +A337447CC340>70 D<B6D8C003B6FCA3000101E0C70007138026007F80913801FE00B3A9 +91B7FCA30280C71201B3AC2601FFE0913807FF80B6D8C003B6FCA340447CC349>72 +D<010FB512FEA3D9000313806E130080B3B3AB123F487E487EA44A5A13801300006C495A +00705C6C13076C5C6C495A6CEB1F802603E07FC7FC3800FFFCEB1FE027467BC332>74 +D<B712FCEEFFC017F800019039C0000FFC6C6C48EB01FF9338007F80EF1FE0170FEF07F0 +18F8EF03FCA218FE1701A218FFA718FEA2170318FCA2EF07F818F0EF0FE0EF1FC0EF7F80 +933801FE00EE0FFC91B612F017800280C9FCB3AA3801FFE0B612C0A338447CC342>80 +D<B66C91380FFFFCA3000101F8C8000313C026007FE0923800FE0061013F17F06D6C5E80 +010F5F6D6C4B5A18036D6C93C7FC6E15066D160E6D6D140C181C6E6C14186E6C5C18706E +6C146018E06E6C5C6E6C495A17036E6C91C8FC5F6E6C13066E6D5A171C92387FC0185FED +3FE06F6C5A17E06F6C5AEEF980ED07FF6F90C9FCA26F5AB3A6923807FF800203B6FCA346 +447FC349>89 D<EB07FC90383FFF809038F80FE03903C003F048C66C7E000E6D7ED80FC0 +137E486C137F6D6D7EA36F7EA26C5AEA0380C8FCA4EC0FFF49B5FC90380FFE1FEB3FC0EB +FF00EA03FC485A485A485A485A127F5B176048C7FCA3153FA36D137F007F14EF6D9038C7 +E0C0003F13013A1FE00783F13B07F81E03FF802701FFFC0113003A001FE0007C2B2E7CAC +31>97 D<EA01FC12FFA3120712031201B3EC03FC91380FFF8091383C07E091387001F890 +39FDE0007E02807F01FFEC1F8091C713C049EC0FE049140717F0A2EE03F8A217FCA21601 +17FEAB17FC1603A217F8A2EE07F0A26DEC0FE017C06D141F01FBEC3F80D9F380EB7E00D9 +E1C05B9039E0F001F89039C03C07E09039801FFF80C7D803FCC7FC2F467DC436>I<EC7F +80903803FFF090380FC07C90383F000F01FCEB03804848EB01C00003140F4848EB1FE049 +133F120F485AA2485AED1FC0007FEC070092C7FCA290C9FC5AAB7E7FA2123F16307F001F +15706C6C146016E06C6C14C06C6C13010001EC03806C6CEB0700013F131E90381FC07890 +3807FFF001001380242E7DAC2B>I<EB01FE903807FFC090381F03F090387E00FC49137E +48487F485A4848EB1F80000F15C049130F121F484814E01507A2007F15F090C7FCA25AA3 +90B6FCA290C9FCA67EA27FA2123F16306C7E1670000F15606D14E06C6C14C0000314016C +6CEB03806C6CEB0700013E131E90381F80F8903803FFE0010090C7FC242E7DAC2B>101 +D<EA01FC12FFA3120712031201B3EC01FE913807FFC091381E07F091383801F802707FEC +E000D9FDC07F5C01FF147F91C7FCA25BA35BB3A8486CECFF80B5D8F83F13FEA32F457DC4 +36>104 D<EA01E0EA07F8A2487EA46C5AA2EA01E0C8FCADEA01FC12FFA3120712031201 +B3B0487EB512F8A315437DC21C>I<EA01FC12FFA3120712031201B3B3B3A5487EB512F8 +A315457DC41C>108 D<D801FC01FFEC1FE000FF010701E0EBFFFC913B0F03F801E07F91 +3C3C01FC07803F800007903C7000FE0E001FC0000349D97E1C130F2601FDC0D97F38804A +143001FFDA3FF06D7E91C75BA2495DA3495DB3A8486C4A6C497EB5D8F81FB50003B512E0 +A34B2C7DAB52>I<3901FC01FE00FF903807FFC091381E07F091383801F8000701707F00 +03EBE0002601FDC07F5C01FF147F91C7FCA25BA35BB3A8486CECFF80B5D8F83F13FEA32F +2C7DAB36>I<EC7F80903803FFF090380FC0FC90383E001F496D7E496D7E48486D7E4848 +6D7E48486D7E000F81A24848147E003F157FA290C87E481680A44816C0AA6C1680A26D14 +7F003F1600A2001F157E6D14FE000F5D6D130100075D6C6C495A6C6C495A6C6C495A013E +49C7FC90381FC0FE903807FFF89038007F802A2E7DAC31>I<3903F803F000FFEB1FFCEC +3C3EEC707F0007EBE0FF3803F9C000015B13FBEC007E153C01FF13005BA45BB3A748B4FC +B512FEA3202C7DAB26>114 D<90383FE0183901FFFC383907E01F78390F0003F8001E13 +01481300007C1478127800F81438A21518A27EA27E6C6C13006C7E13FC383FFFE06C13FC +6C13FF6C14C06C14E0C614F0011F13F81300EC0FFC140300C0EB01FE1400157E7E153EA2 +7EA36C143C6C147C15786C14F86CEB01F039F38003E039F1F00F8039E07FFE0038C00FF0 +1F2E7DAC26>I<D801FC147F00FFEC3FFFA300071401000380000181B3A85EA35DA21200 +6D5B017E9038077F80017F010E13C06D011C13FE90380FC078903803FFF09026007F8013 +002F2D7DAB36>117 D<B539F001FFFCA3000790C7EA7FE06C48EC1F8000011600160E00 +00150C6D141C6D1418A26E1338013F1430A26D6C5BA26E13E0010F5CA26D6C485AA2ECF8 +03010391C7FCA2903801FC06A2ECFE0E0100130CA2EC7F18A215B8EC3FB0A2EC1FE0A36E +5AA26E5AA36EC8FCA21406A35CA25CA2123C007E5BB4FC5CA25CEAFE01387C0380D87007 +C9FCEA3C1EEA0FFCEA03F02E3F7EAA33>121 D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: Fz cmr17 17.28 1 +/Fz 1 11 df<93381FFFC00303B512FE031FECFFC09226FFF80013F802030180EB0FFEDA +0FFCC73801FF80DA3FF09138007FE0DA7FC0ED1FF0494848ED0FFC4948C9EA03FE494870 +7E4948707F4948717E4948717E017F854948717E4849717E488691CB12074848727EA200 +0F1B804984001F1BC0A248487213E0A44848F17FF0AC6C6CF1FFE0A4001F1BC06D60A200 +0F1B80A26D6000071B00A26C6C4E5AA26C626E170F6C62A26D6C4D5AA26D6C4D5A011F61 +A26D6C4D5AA26D6C4DC7FC010360A26D6C4C5AA26D6C4C5A027E5FA26E4C5AA26E5F6E6C +4B5A00E01B386E6C4BC7FCA200700103041E1470A26F153E0201163CA26C6D6C4B14E0A3 +003C027003701301A2003F1A076CB500F892B612C0A56C1B80A355647BE360>10 +D E +%EndDVIPSBitmapFont +%DVIPSBitmapFont: FA ecrm1728 17.28 16 +/FA 16 122 df<B912F018FF19E019F8C601FCC8EA7FFED93FF892380FFF80011F04017F +9538007FF0F11FF8737EF103FE737E737F747E747E747E1A0F87747E1A0387747EA27413 +80A2F37FC0A21CE01B3FA21CF0A21B1F1CF8A31CFCA21B0FA41CFEAF1CFCA51B1F1CF8A4 +F33FF0A21CE0A21B7F1CC01BFF1C80A2501300A2505A505AA2505A505A505A505A1AFF4F +5B4F90C7FCF107FCF11FF8F17FF0953801FFC0013F04075BD9FFFCDB7FFEC8FCBA12F819 +E096C9FC18F0576278E167>68 D<EC3FE0903803FFFE010F6D7E90393FC03FE090397C00 +0FF801F0EB03FC48486D7E48486D7E48486E7E48C86C7E7F01F06E7E487E6D6E7EA3707E +A36C5AEA03E0C9FCA6167FED7FFF020FB5FC91387FF807903801FF80903807FC00EB1FF0 +EB7FC0495AD803FEC7FC485A120F5B485A485AA24848EE01C0A312FF5BA2160FA3161F6D +141B007F153B16736D17806C6C9138E1FC03001FEC03C16C6C903A0780FE0700D807FE49 +486C5A2701FF807CEB7FFE6C6CB4486D5A011F01E06D5A010390C7EA07E03A4179BF43> +97 D<4AB47E020F13F8023F13FE9139FF007F80D903FCEB07E0D907F0EB01F0D91FE0EB +007849488049488049C87E48485D4915FF00034B138048485CA2485AA2485AA2003F6F13 +0049EC007C94C7FC127FA35B12FFAD127F7FA4123F7FA2001FEE01C07F000F16036D1680 +12076C6C15076D160000015E6C6C151E6D6C5C6D6C5C6D6C5CD90FF8495AD903FCEB07C0 +903A00FF803F8091263FFFFEC7FC020F13F80201138032417BBF3C>99 +D<181EEF3FFEEE07FFA4EE000F1703A21701B3AAEDFF80020F13F8023F13FE9139FF803F +81903A03FC0007C14948EB01E1D91FE0EB00F94948147D4948143D49C8121F4848150F49 +1507120348481503491501120F121F5BA2123F5B127FA45B12FFAD127F7FA3123FA27F12 +1FA26C6C1503A26C6C150712036D150F6C6C151F0000163D137F6D6CECF9FF6D6CEB01F1 +D90FF0D903C113C06D6CD90F81EBFF80D901FFEB7F019039007FFFFC021F13E002010100 +91C7FC41657BE34B>I<EC03FE91381FFFE091B512F8903901FE03FE903A07F0007F8049 +486D7ED93FC06D7E49C76C7E496E7E49140348488148481401000782491400000F828348 +5A1880123F49153FA2007F17C0A35BA212FF90B8FCA30180CAFCA9127F7FA3123FA27F12 +1FEF01C06C7E17036C6C1680A26C6C15070001EE0F006D150E6C6C151E6D6C5C6D6C5C6D +6C5CD907F0EB03E0D903FC495A902700FF803FC7FC91383FFFFC020F13F0020113803241 +7BBF3C>I<ED1FE0EDFFF8020313FE91380FF03F91391FC01F8091383F807F91397F00FF +C014FE1301495A5C0107EC7F80A24948EB1E0093C7FCA2495AB3A5B712E0A426001FE0C8 +FCB3B3B0497EEB7FFC003FB512FEA42A657DE429>I<EB03C0EA07FFB5FCA41201EA007F +A2133FB3AAEE7FE0923803FFFC030F13FFDB3F0013C00378EB1FE04B6D7EDAC1C06D7EDA +C3808002C7C7120302CE81170114DC14D802F86E7E5CA35CA35CB3B3496C4A7F496C4A7F +B6D8F003B612C0A442647CE34B>104 D<1378EA01FE487E487FA66C90C7FC6C5AEA0078 +90C8FCB3A2EB0780EA0FFFB5FCA41203C6FCA2137FB3B3AC497E487FB61280A4195F7BDE +25>I<D903C0D97FE04AB47ED807FF902603FFFC020F13F0B5010F01FF023F13FCDB3F00 +01C09038FC03FF0378903C1FE001E0007F804B6D6C48486D7E0001D9C1C06D6C48C76C7E +27007FC380DAFC0E8102C7C7000349140FD93FCE6F48810501160702DC5E02D8166002F8 +912600FFE06E7E4A5EA34A5EA34A93C8FCB3B3496C4A6D4A7E496C4A6D4A7EB6D8F003B6 +D8C00FB6FCA4683F7CBE71>109 D<D903C0EB7FE0D807FF903803FFFCB5010F13FFDB3F +0013C00378EB1FE04B6D7E0001D9C1C06D7E27007FC3808002C7C71203D93FCE81170114 +DC14D802F86E7E5CA35CA35CB3B3496C4A7F496C4A7FB6D8F003B612C0A4423F7CBE4B> +I<4AB47E020F13F0027F13FE4AC67ED903F8EB1FC0D907E0EB07E0D91FC0EB03F849486D +7E49C87E01FE157F49814848ED1F80000317C04848ED0FE0A24848ED07F0A2001F17F849 +1503003F17FCA3007F17FE491501A400FF17FFAC007F17FEA26D1503A3003F17FCA2001F +17F86D1507A2000F17F06D150F000717E06C6CED1FC0A26C6CED3F806C6CED7F00017F15 +FE6D6C495A6D6C495A6D6C495AD903F8EB1FC06DB4EBFF806D6CB448C7FC020F13F00201 +138038417BBF43>I<010FEB07F8D80FFFEB1FFEB590387FFF809238F81FC0913801E03F +913903C07FE00003EB0780C6EB0F00140E6D5A0218EB3FC00238EB1F800230EB06000270 +90C7FCA2146014E0A25CA55CB3B0497E4813F0B612F8A42B3F7BBE34>114 +D<9138FFC003010FEBF807017FEBFE0F3A01FF003F9FD803F0EB07DF48486DB4FCD80F80 +1300001F8148C8FC003E81007E81127C00FC81A4827EA27E7F6C7E6D91C7FC13F8EA3FFE +381FFFE06C13FF15F0000314FE6C6E7E6C6C14E0011F14F801078001008002077FDA003F +13801507030113C0ED007F00E0ED3FE0161F17F06C150F1607A36C1503A37EA26C16E016 +077E17C06D140F6D15806D141FD8FDF0EC3F00D8F8F8147E017C495A3AF01F801FF06DB5 +12C0D8E00391C7FC39C0007FF02C417CBF35>I<1470A714F0A51301A31303A21307A213 +0FA2131F133F137F13FF1203000F90B6FCB8FCA326000FF0C8FCB3AEEE01C0AE6D6CEB03 +80A316076D6C14005E6D6C130E6D6C131E6E6C5A91383FE0F86EB45A020713C0020090C7 +FC2A597ED734>I<D903C0150FD807FFED1FFFB50203B5FCA40001ED0007D8007F1501A2 +013F81B3B25FA35FA35F011F15066E140E5F130F6E4A7F01075D6D6C494813E0D901FE49 +48EBFFC0903A00FFC01F8091393FFFFE00020F13F8020001C0EC800042407CBE4B>I<B6 +6C0103B512C0A4000101F8C8EBFC006C01E0ED3FF0017FEE1FC0013F5F96C7FC131F181E +6D7E181C6E153C01071638A26E1578010316708001015EA26E14016D5E81027F4A5AA26F +1307023F92C8FC81021F140EA26F131E020F141C8102075CA26F137802031470A26E6C5B +A2EDFF016E5CA21683037F5B16C7033F90C9FCA216EFED1FEE16FE6F5AA36F5AA26F5AA3 +6F5AA25EA215035EA24BCAFCA25D150EA25DA2153C1538EA1F80486C5B487E5DA24A5A14 +0349485AD83F8090CBFCEB001E001E133E380FC0FC3807FFF000015B6C6CCCFC425B7EBD +47>121 D E +%EndDVIPSBitmapFont +end +%%EndProlog +%%BeginSetup +%%Feature: *Resolution 600dpi +TeXDict begin +%%PaperSize: A4 + +%%EndSetup +%%Page: 1 1 +1 0 bop 815 872 a FA(Draft)47 b(do)t(cumen)l(tation)f(for)f(the)h +Fz(\012)e FA(system)1113 1112 y Fy(John)33 b(Plaice)1610 +1076 y Fx(\003)1899 1112 y Fy(Y)-8 b(annis)32 b(Haralam)m(b)s(ous)2782 +1076 y Fx(y)1641 1307 y Fy(F)-8 b(ebruary)33 b(2000)515 +1771 y Fw(1)131 b(In)l(tro)t(duction)639 1952 y Fv(The)32 +b Fu(\012)g Fv(\(Omega\))g(t)n(yp)r(esetting)g(system,)h(an)e +(extension)h(of)g(Donald)g(Kn)n(uth's)f(T)3247 1970 y(E)3294 +1952 y(X,)515 2052 y(is)k(designed)g(for)f(the)i(t)n(yp)r(esetting)f +(of)g(all)g(the)h(w)n(orld's)e(languages.)58 b(It)35 +b(normally)g(uses)515 2152 y(the)f(Unico)r(de)f(c)n(haracter)f(enco)r +(ding)h(standard)f(as)h(in)n(ternal)g(represen)n(tation,)g(although)515 +2251 y(it)g(can)f(accept)g(an)n(y)g(other)g(c)n(haracter)e(set)j(for)f +(input)h(or)f(output.)52 b(Since)32 b(it)h(allo)n(ws)e(one)515 +2351 y(to)h(dynamically)f(de\034ne)h(\034nite)h(state)f(automata)f(to)h +(translate)f(from)h(one)g(enco)r(ding)f(to)515 2451 y(another,)26 +b(it)i(is)g(p)r(ossible)f(to)g(de\034ne)h(complex)f(con)n(textual)g +(analysis)f(for)h(ligature)g(c)n(hoice,)515 2550 y(c)n(haracter)d +(cluster)i(building)h(or)f(diacritic)g(placemen)n(t,)g(as)g(required)g +(for)g(scripts)g(suc)n(h)g(as)515 2650 y(Arabic,)32 b(Dev)-5 +b(anagari,)30 b(Hebrew)h(or)g(Khmer.)48 b(It)31 b(also)g(allo)n(ws)f +(an)n(y)g(n)n(um)n(b)r(er)h(of)h(translit-)515 2749 y(erations,)h(allo) +n(wing)f(an)n(y)n(one)g(to)h(t)n(yp)r(e)h(texts)g(for)f(an)n(y)f +(script,)j(using)e(an)n(y)g(other)f(script.)515 2849 +y Fu(\012)27 b Fv(curren)n(tly)f(supp)r(orts)h(m)n(ultidirectional)g +(writing,)g(therefore)f(allo)n(wing)g(t)n(yp)r(esetting)h(of)515 +2949 y(Hebrew,)g(Arabic,)g(Chinese,)h(Japanese,)e(Mongolian)g(and)h +(man)n(y)g(other)g(scripts.)639 3048 y(A)g(Unico)r(de-based)e(fon)n(t)h +(is)g(also)e(b)r(eing)i(designed)g(for)f(the)i(alphab)r(etic)e +(scripts.)36 b(This)515 3148 y(fon)n(t)c(is)g(made)h(up)f(of)h(four)f +(subfon)n(ts:)46 b(\(1\))32 b(Latin,)i(Greek,)f(Cyrillic,)g(Armenian,)g +(Geor-)515 3248 y(gian,)c(punctuation;)h(\(2\))f(Hebrew,)g(Arabic,)g +(Syriac;)g(\(3\))g(Dingbats)g(and)g(non-letterlik)n(e)515 +3347 y(sym)n(b)r(ols;)34 b(\(4\))e(Indic)h(and)f(South-East)g(Asian)g +(scripts.)50 b(This)33 b(fon)n(t)f(consists)f(of)i(all)f(the)515 +3447 y(glyphs)23 b(required)f(to)h(prop)r(erly)g(t)n(yp)r(eset)g(eac)n +(h)g(of)g(the)h(scripts,)g(whic)n(h)f(means)g(m)n(uc)n(h)g(more)515 +3546 y(than)k(designing)g(one)g(glyph)h(for)f(eac)n(h)f(Unico)r(de)i(p) +r(osition.)639 3646 y(This)39 b(do)r(cumen)n(t)f(is)h(the)f(draft)h(do) +r(cumen)n(tation)f(for)g(the)g Fu(\012)h Fv(t)n(yp)r(esetting)f +(system,)515 3746 y(designed)28 b(and)h(dev)n(elop)r(ed)f(b)n(y)h(the)g +(authors.)40 b(This)29 b(draft)g(do)r(cumen)n(t)g(accompanies)f(the)515 +3845 y(1.12)e(release)g(of)i Fu(\012)p Fv(,)f(whic)n(h)h(is)f(a)n(v)-5 +b(ailable)26 b(at:)733 3999 y Ft(ftp://ftp.cse.u)o(ns)o(w.e)o(du)o(.a)o +(u/u)o(se)o(rs)o(/pl)o(ai)o(ce/)o(Om)o(eg)o(a)639 4152 +y Fv(or)h(at)g(an)n(y)g(of)h(the)g(CT)-7 b(AN)28 b(sites.)639 +4251 y(This)40 b(do)r(cumen)n(tation)f(should)g(b)r(e)h(considered)e +(cursory)-7 b(.)71 b(In)40 b(particular,)h(it)f(only)515 +4351 y(describ)r(es)23 b(the)i(driv)n(ers)d(that)j(ha)n(v)n(e)e(b)r +(een)h(dev)n(elop)r(ed)g(for)g(t)n(yp)r(esetting)g(and)g(viewing,)g +(and)515 4451 y(only)j(presen)n(ts)g(the)g(to)r(ols)h(that)f(are)g +(based)g(on)g Ft(web2c)p Fv(.)639 4550 y(F)-7 b(or)27 +b(more)g(information,)g(see)g(our)g(W)-7 b(eb)28 b(page,)f(curren)n +(tly)f(at:)733 4704 y Ft(http://www.ens.)o(fr)o(/om)o(eg)o(a)p +515 4769 1146 4 v 606 4822 a Fs(\003)642 4846 y Fr(Sc)n(ho)r(ol)18 +b(of)g(Computer)g(Science)i(and)e(Engineering,)i(The)e(Univ)n(ersit)n +(y)h(of)f(New)f(South)i(W)-6 b(ales,)20 b(Sydney)515 +4925 y(2052,)k(Australia.)31 b Fq(plaice@cse.unsw.edu.au)609 +4983 y Fs(y)642 5006 y Fr(A)n(telier)16 b(Fluxus)g(Virus,)h(187,)f(rue) +h(Nationale,)h(F-59800)e(Lille,)g(F)-6 b(rance.)31 b +Fq(yannis@fluxus-virus.com)1926 5255 y Fv(1)p eop +%%Page: 2 2 +2 1 bop 515 523 a Fw(2)131 b(Implemen)l(tation)639 705 +y Fv(The)32 b(canonical)f Fu(\012)h Fv(implemen)n(tation)g(is)g(based)f +(on)h(the)g(standard)f Ft(web2c)f Fv(T)3109 723 y(E)3155 +705 y(X)i(dis-)515 804 y(tribution.)42 b(Curren)n(tly)-7 +b(,)29 b Fu(\012)h Fv(is)f(based)g(on)g Ft(web2c-7.3)p +Fv(.)39 b(This)29 b(means)g(that)g(the)h(follo)n(wing)515 +904 y(standard)c(distributions)i(automatically)e(include)i +Fu(\012)p Fv(:)639 1070 y Fp(\017)41 b Fv(Thomas)27 b(Esser's)g(T)-7 +b(eT)1452 1088 y(E)1498 1070 y(X)28 b(\(Unix\).)722 1170 +y(Lo)r(ok)f(up)h Ft(http://www.tug.)o(org)o(/t)o(ete)o(x/)722 +1269 y Fv(or)f Ft(mailto:te@inform)o(at)o(ik)o(.un)o(i-)o(han)o(no)o +(ve)o(r.d)o(e)21 b Fv(.)639 1435 y Fp(\017)41 b Fv(F)-7 +b(abrice)27 b(P)n(opineau's)g(T)1479 1453 y(E)1525 1435 +y(XWin32)h(\(Windo)n(ws95/NT\).)722 1535 y(Lo)r(ok)f(up)h +Ft(ftp://ftp.ese-m)o(etz)o(.f)o(r/p)o(ub)o(/T)o(eX/)o(wi)o(n3)o(2)722 +1635 y Fv(or)f Ft(mailto:popineau@)o(es)o(em)o(etz)o(.e)o(se-)o(me)o +(tz)o(.fr)21 b Fv(.)639 1801 y Fp(\017)41 b Fv(Sebastian)27 +b(Rah)n(tz's)g(T)1441 1819 y(E)1488 1801 y(XLiv)n(e)g(\(CD-R)n(OM\).) +722 1900 y(Lo)r(ok)g(up)h Ft(http://www.tug.)o(org)o(/t)o(exl)o(iv)o +(e.)o(htm)o(l)722 2000 y Fv(or)f Ft(mailto:s.rahtz@e)o(ls)o(ev)o(ier)o +(.c)o(o.u)o(k)21 b Fv(.)639 2166 y(In)36 b(addition,)h(there)d(are)h +(curren)n(tly)f(t)n(w)n(o)g(other)h(prepac)n(k)-5 b(aged)33 +b(T)2753 2184 y(E)2799 2166 y(X)i(en)n(vironmen)n(ts)515 +2266 y(that)28 b(supp)r(ort)f Fu(\012)p Fv(:)639 2432 +y Fp(\017)41 b Fv(T)-7 b(om)28 b(Ki\033e's)f(CMac)p Fu(\012)g +Fv(\(MacIn)n(tosh\).)722 2531 y(Lo)r(ok)g(up)h Ft(http://www.kiff)o +(e.c)o(om)o(/cm)o(ac)o(om)o(ega)o(.h)o(tm)o(l)722 2631 +y Fv(or)f Ft(mailto:tom@kiffe)o(.c)o(om)21 b Fv(.)639 +2797 y Fp(\017)41 b Fv(Christian)27 b(Sc)n(henk's)g(MiKT)1634 +2815 y(E)1680 2797 y(X)h(\(Windo)n(ws95/NT\).)722 2897 +y(Lo)r(ok)f(up)h Ft(http://www.inx.)o(de/)o(~c)o(sch)o(en)o(k/)o(mik)o +(te)o(x)722 2996 y Fv(or)f Ft(mailto:cschenk@s)o(na)o(fu)o(.de)21 +b Fv(.)639 3162 y(The)28 b(three)f(\034les)h(distributed)g(with)g(the)g +Fu(\012)f Fv(implemen)n(tation)h(are)733 3328 y Ft(web2c-7.3.1-ome)o +(ga)o(-1.)o(12)o(.t)o(ar.)o(gz)733 3428 y(omegalib-1.12.t)o(ar)o(.gz) +733 3528 y(omegadoc-1.12.t)o(ar)o(.gz)639 3694 y Fv(T)-7 +b(o)29 b(install)g Fu(\012)p Fv(,)h(y)n(ou)f(will)g(require)g(the)g +(standard)g(T)2265 3712 y(E)2311 3694 y(X)h(distribution)f(as)g(w)n +(ell.)41 b(These)515 3793 y(\034les)27 b(include)733 +3959 y Ft(web-7.3.1.tar.g)o(z)733 4059 y(web2c-7.3.1.tar)o(.g)o(z)639 +4225 y Fv(as)34 b(w)n(ell)h(as)f(a)g(standard)f Ft(texmf)g +Fv(tree.)58 b(In)34 b(addition)h(to)f(these)h(\034les,)h(the)f(follo)n +(wing)515 4325 y(driv)n(ers)26 b(are)g(needed:)733 4491 +y Ft(dvipsk.tar.gz)733 4590 y(odvipsk.tar.gz)733 4690 +y(gsftopk.tar.gz)733 4790 y(xdvik.tar.gz)733 4889 y(oxdvik.tar.gz)733 +4989 y(libwww.tar.gz)1926 5255 y Fv(2)p eop +%%Page: 3 3 +3 2 bop 639 523 a Fv(These)28 b(\034les)f(are)g(all)g(made)g(a)n(v)-5 +b(ailable)26 b(in)i(the)g(ab)r(o)n(v)n(e)e Ft(ftp)h Fv(sites.)639 +623 y(The)h(installation)f(pro)r(cedure)f(is)i(describ)r(ed)f(b)r(elo)n +(w.)36 b(Assume)28 b(that)639 786 y Fp(\017)41 b Ft(/usr/local/ftp)22 +b Fv(con)n(tains)27 b(y)n(our)f(do)n(wnloaded)g(\034les;)639 +951 y Fp(\017)41 b Ft(/usr/local/src)22 b Fv(is)27 b(where)g(y)n(ou)g +(place)g(source)g(\034les;)g(and)639 1115 y Fp(\017)41 +b Ft(/usr/local/share)21 b Fv(is)28 b(where)f(the)h Ft(texmf)d +Fv(tree)i(is)h(to)f(b)r(e)h(placed;)733 1294 y Ft(FTP=/usr/local/)o(ft) +o(p)733 1394 y(SHARE=/usr/loca)o(l/)o(sha)o(re)733 1494 +y(SRC=/usr/local/)o(sr)o(c)733 1593 y(cd)42 b($SHARE)733 +1693 y(tar)g(xzf)g($FTP/texmflib.ta)o(r.g)o(z)733 1793 +y(tar)g(xzf)g($FTP/omegalib-1.)o(12.)o(ta)o(r.)o(gz)733 +1892 y(cd)g($SRC)733 1992 y(tar)g(xzf)g($FTP/web-7.3.1.t)o(ar.)o(gz)733 +2091 y(tar)g(xzf)g($FTP/web2c-7.3.1)o(.ta)o(r.)o(gz)733 +2191 y(tar)g(xzf)g($FTP/web2c-7.3.1)o(-om)o(eg)o(a-)o(1.1)o(2.)o(tar)o +(.g)o(z)733 2291 y(cd)g(web2c-7.3)733 2390 y(tar)g(xzf)g +($FTP/dvipsk.tar.)o(gz)733 2490 y(tar)g(xzf)g($FTP/odvipsk.tar)o(.gz) +733 2590 y(tar)g(xzf)g($FTP/gsftopk.tar)o(.gz)733 2689 +y(tar)g(xzf)g($FTP/xdvik.tar.g)o(z)733 2789 y(tar)g(xzf)g +($FTP/oxdvik.tar.)o(gz)733 2888 y(tar)g(xzf)g($FTP/libwww.tar.)o(gz)733 +2988 y(configure)733 3088 y(make)639 3267 y Fv(Y)-7 b(ou)19 +b(will)g(ha)n(v)n(e)e(to)i(c)n(ho)r(ose)e(whether)h(y)n(our)g(call)g +(to)g Ft(configure)d Fv(needs)k(an)n(y)e(argumen)n(ts.)515 +3366 y(Note)j(that)g(the)g(\034les)g(ma)n(y)f(not)h(lo)r(ok)f(exactly)h +(lik)n(e)f(this,)j(but)e(y)n(ou)g(should)f(b)r(e)h(able)g(to)g +(\034gure)515 3466 y(out)27 b(what)h(is)f(happ)r(ening.)515 +3740 y Fw(3)131 b(What)43 b(do)t(es)g Fo(\012)h Fw(o\033er?)639 +3922 y Fv(The)34 b Fu(\012)g Fv(system)f(is)h(a)f(deriv)-5 +b(ativ)n(e)33 b(of)h(Donald)f(Kn)n(uth's)h(T)2508 3940 +y(E)2554 3922 y(X.)56 b(As)34 b(suc)n(h,)h(all)e(of)h(the)515 +4021 y(T)561 4039 y(E)607 4021 y(X)24 b(\034le)g(t)n(yp)r(es)g(can)g(b) +r(e)g(used)g(b)n(y)f Fu(\012)h Fv(as)g(w)n(ell.)35 b(In)24 +b(addition)g(there)g(are)e(six)i(new)g(\034le)g(t)n(yp)r(es.)515 +4121 y(They)j(are:)689 4263 y(Su\036x)100 b(Replaces)f(Description)p +639 4296 1878 4 v 689 4365 a Ft(.opl)129 b(.pl)283 b +Fv(F)-7 b(on)n(t)27 b(prop)r(ert)n(y)g(list)g(\(text\))689 +4465 y Ft(.ofm)129 b(.tfm)239 b Fv(F)-7 b(on)n(t)27 b(metric)h +(\(binary\))689 4565 y Ft(.ovp)129 b(.vpl)239 b Fv(Virtual)27 +b(prop)r(ert)n(y)g(list)g(\(text\))689 4664 y Ft(.ovf)129 +b(.vf)283 b Fv(Virtual)27 b(fon)n(t)h(\(binary\))689 +4764 y Ft(.otp)129 b Fv(\026\026)249 b Fu(\012)27 b Fv(T)-7 +b(ranslation)26 b(Pro)r(cess)h(\(text\))689 4864 y Ft(.ocp)129 +b Fv(\026\026)249 b Fu(\012)27 b Fv(Compiled)h(Pro)r(cess)f(\(binary\)) +515 5006 y(These)g(di\033eren)n(t)h(\034le)f(t)n(yp)r(es)h(are)e +(describ)r(ed)i(in)g(future)f(sections.)1926 5255 y(3)p +eop +%%Page: 4 4 +4 3 bop 515 523 a Fv(The)27 b Fu(\012)h Fv(distribution)g(con)n(tains)e +(sev)n(eral)g(binaries,)h(describ)r(ed)g(b)r(elo)n(w:)689 +664 y(Binary)264 b(Replaces)132 b(Description)p 639 698 +2620 4 v 689 767 a Ft(omega)26 b Fv(\()p Fu(\012)p Fv(\))141 +b(T)1246 785 y(E)1292 767 y(X)294 b(T)n(yp)r(esetting)28 +b(engine)f(\()p Ft(.tex)21 b Fp(!)j Ft(.dvi)n Fv(\))689 +867 y Ft(lambda)h Fv(\()p Fu(\003)p Fv(\))100 b(L)1222 +850 y Fn(A)1259 867 y Fv(T)1305 885 y(E)1351 867 y(X)235 +b(F)-7 b(or)27 b(structured)g(do)r(cumen)n(ts)h(\()p +Ft(.tex)21 b Fp(!)j Ft(.dvi)n Fv(\))689 967 y Ft(odvips)247 +b(dvips)228 b Fv(P)n(ostScript)28 b(driv)n(er)e(\()p +Ft(.dvi)21 b Fp(!)j Ft(.ps)n Fv(\))689 1066 y Ft(oxdvi)291 +b(xdvi)272 b Fv(Screen)27 b(preview)n(er)f(for)h Ft(.dvi)f +Fv(\()p Ft(.dvi)c Fp(!)h Fv(screen)o(\))689 1166 y Ft(odvicopy)159 +b(dvicopy)140 b Fv(De-virtualizes)27 b Ft(.dvi)f Fv(\()p +Ft(.dvi)21 b Fp(!)i Ft(.dvi)o Fv(\))689 1266 y Ft(odvitype)159 +b(dvitype)140 b Fv(Debugging)27 b(for)g Ft(.dvi)f Fv(\()p +Ft(.dvi)c Fp(!)h Fv(text\))689 1365 y Ft(opl2ofm)203 +b(pltotf)184 b Fv(Build)28 b(fon)n(t)g(metric)f(\()p +Ft(.opl)22 b Fp(!)h Ft(.ofm)n Fv(\))689 1465 y Ft(ofm2opl)203 +b(tftopl)184 b Fv(Debugging)27 b(for)g Ft(.ofm)f Fv(\()p +Ft(.ofm)c Fp(!)h Ft(.opl)n Fv(\))689 1564 y Ft(ovp2ovf)203 +b(vptovf)184 b Fv(Build)28 b(virtual)f(fon)n(t)h(\()p +Ft(.ovp)21 b Fp(!)i Ft(.ofm)17 b Fp(\002)h Ft(.ovf)n +Fv(\))689 1664 y Ft(ovf2ovp)203 b(vftovp)184 b Fv(Debugging)27 +b(for)g Ft(.ovf)f Fv(\()p Ft(.ofm)17 b Fp(\002)h Ft(.ovf)k +Fp(!)h Ft(.ovp)n Fv(\))689 1764 y Ft(otp2ocp)203 b Fv(\026\026)282 +b(Compile)28 b Fu(\012)p Fv(TP)g(\()p Ft(.otp)21 b Fp(!)i +Ft(.ocp)o Fv(\))689 1863 y Ft(outocp)247 b Fv(\026\026)282 +b(Debugging)27 b(for)g Ft(.ocp)f Fv(\()p Ft(.ocp)c Fp(!)h +Fv(text\))689 1963 y Ft(mkofm)291 b(mktextfm)96 b Fv(Generate)27 +b Ft(.ofm)f Fv(\034le)i(if)g(needed)689 2063 y Ft(mkocp)291 +b Fv(\026\026)282 b(Generate)27 b Ft(.ocp)f Fv(\034le)i(if)g(needed)515 +2308 y Fw(4)131 b(Sixteen-bit)45 b(fon)l(ts,)f(registers,)f(etc.)639 +2490 y Fv(One)24 b(of)g(the)g(fundamen)n(tal)g(limitations)g(of)g(T) +2066 2508 y(E)2112 2490 y(X3)g(is)g(that)g(most)g(quan)n(tities)g(can)g +(only)515 2590 y(range)32 b(b)r(et)n(w)n(een)h(0)h(and)f(255.)54 +b(F)-7 b(on)n(ts)33 b(are)g(limited)h(to)f(256)g(c)n(haracters)e(eac)n +(h,)j(only)f(256)515 2689 y(fon)n(ts)k(are)g(allo)n(w)n(ed)g(sim)n +(ultaneously)-7 b(,)39 b(only)f(256)e(of)i(an)n(y)f(giv)n(en)g(kind)h +(of)g(can)g(b)r(e)g(used)515 2789 y(sim)n(ultaneously)-7 +b(,)28 b(etc.)40 b Fu(\012)29 b Fv(lo)r(osens)f(these)g(restrictions,)g +(allo)n(wing)f(65)h(536)f(\(0\02565)h(535\))f(of)515 +2889 y(eac)n(h)f(of)i(these)g(en)n(tities.)515 3121 y +Fm(4.1)112 b(Characters)639 3274 y Fv(Eac)n(h)26 b(fon)n(t)h(can)f +(allo)n(w)f(up)i(to)f(65)g(536)f(c)n(haracters,)f(ranging)h(b)r(et)n(w) +n(een)i(0)f(and)g(65)f(535.)515 3374 y(Unless)g(other)f(means)h(are)f +(pro)n(vided,)g(using)h Fu(\012)g Fv(T)-7 b(ranslation)24 +b(Pro)r(cesses)g(\(see)h(section)f(8\),)515 3474 y(the)37 +b(input)h(and)g(output)f(mec)n(hanisms)g(for)g(c)n(haracters)e(b)r(et)n +(w)n(een)i(256)f(\(hex)h(100\))f(and)515 3573 y(65)23 +b(535)g(\(hex)i(\033\033)6 b(\))26 b(use)e(four)g(circum\035exes.)35 +b(F)-7 b(or)24 b(example,)h Ft(^^^^cab0)c Fv(means)j(hex)g(v)-5 +b(alue)515 3673 y Ft(cab0)26 b Fv(and)h Ft(^^^^0020)d +Fv(is)k(the)g(space)f(c)n(haracter.)515 3905 y Fm(4.2)112 +b(F)-9 b(on)m(ts)639 4058 y Fv(Up)31 b(to)f(65)f(536)g(fon)n(ts)h(ma)n +(y)f(b)r(e)i(used.)45 b(This)30 b(is)g(handled)g(automatically)-7 +b(,)30 b(and)g(space)515 4158 y(is)d(allo)r(cated)g(as)g(needed.)515 +4390 y Fm(4.3)112 b(Registers)639 4544 y Fv(Up)27 b(to)f(65)g(536)f +(registers)g(of)h(eac)n(h)g(kind)g(ma)n(y)g(b)r(e)h(used.)36 +b(The)26 b(only)g(case)g(to)g(b)r(e)h(noted)515 4643 +y(is)g(that)h Ft(\\box255)d Fv(remains)h(the)i(b)r(o)n(x)f(used)h(b)n +(y)f(the)h(output)g(routine.)1926 5255 y(4)p eop +%%Page: 5 5 +5 4 bop 515 523 a Fm(4.4)112 b(Math)38 b(co)s(des)639 +676 y Fv(T)685 694 y(E)731 676 y(X)27 b(allo)n(ws)f(the)g(use)h(of)f +(16)g(\()p Fu(2)1628 646 y Fl(4)1665 676 y Fv(\))h(fon)n(t)g(families,) +f(eac)n(h)g(fon)n(t)h(of)f(256)f(\()p Fu(2)2892 646 y +Fl(8)2929 676 y Fv(\))i(c)n(haracters.)515 776 y(T)-7 +b(o)33 b(access)f(the)i(c)n(haracters)c(in)k(the)g(math)f(fon)n(ts,)i +(and)e(to)g(de\034ne)h(ho)n(w)f(they)g(are)f(to)i(b)r(e)515 +876 y(used,)27 b(there)h(are)e(sev)n(eral)g(basic)h(primitiv)n(es:)639 +1058 y Fp(\017)41 b Ft(\\mathcode)24 b Fp(h)p Fk(8-bit)30 +b(numb)l(er)9 b Fp(i)23 b Fu(=)g Fp(h)p Fk(15-bit)30 +b(numb)l(er)8 b Fp(i)p Fv(:)722 1158 y(De\034nes)28 b(15-bit)f(math)h +(co)r(de)f(for)g(c)n(haracter;)639 1324 y Fp(\017)41 +b Ft(\\mathcode)24 b Fp(h)p Fk(8-bit)30 b(numb)l(er)9 +b Fp(i)p Fv(:)722 1423 y(Outputs)28 b(15-bit)f(math)h(co)r(de)f(asso)r +(ciated)f(with)i(c)n(haracter;)639 1590 y Fp(\017)41 +b Ft(\\mathchar)24 b Fp(h)p Fk(15-bit)31 b(numb)l(er)8 +b Fp(i)p Fv(:)722 1689 y(Generates)27 b(a)g(math)h(c)n(haracter)d(with) +j(15-bit)f(math)h(co)r(de;)639 1855 y Fp(\017)41 b Ft(\\mathaccent)23 +b Fp(h)p Fk(15-bit)31 b(numb)l(er)8 b Fp(i)p Fv(:)722 +1955 y(Generates)27 b(a)g(math)h(accen)n(t)f(with)h(15-bit)f(math)g(co) +r(de;)639 2121 y Fp(\017)41 b Ft(\\mathchardef)23 b Fp(h)p +Fk(c)l(ontr)l(ol-se)l(quenc)l(e)6 b Fp(i)23 b Fu(=)g +Fp(h)p Fk(15-bit)30 b(numb)l(er)9 b Fp(i)p Fv(:)722 2220 +y(De\034nes)28 b(a)f(con)n(trol)f(sequence)h(with)i(a)e(15-bit)f(math)i +(co)r(de;)639 2387 y Fp(\017)41 b Ft(\\delcode)25 b Fp(h)p +Fk(8-bit)30 b(numb)l(er)8 b Fp(i)23 b Fu(=)g Fp(h)p Fk(27-bit)31 +b(numb)l(er)8 b Fp(i)p Fv(:)722 2486 y(De\034nes)28 b(27-bit)f +(delimiter)h(co)r(de)f(for)g(c)n(haracter;)639 2652 y +Fp(\017)41 b Ft(\\delcode)25 b Fp(h)p Fk(8-bit)30 b(numb)l(er)8 +b Fp(i)p Fv(:)722 2752 y(Outputs)28 b(27-bit)f(delimiter)h(co)r(de)f +(asso)r(ciated)f(with)i(c)n(haracter;)639 2918 y Fp(\017)41 +b Ft(\\delimiter)24 b Fp(h)p Fk(27-bit)30 b(numb)l(er)9 +b Fp(i)p Fv(:)722 3017 y(Generates)27 b(a)g(math)h(delimiter)f(with)i +(27-bit)d(delimiter)i(co)r(de;)639 3184 y Fp(\017)41 +b Ft(\\radical)25 b Fp(h)p Fk(27-bit)30 b(numb)l(er)8 +b Fp(i)p Fv(:)722 3283 y(Generates)27 b(a)g(math)h(radical)e(with)i +(27-bit)f(delimiter)h(co)r(de;)639 3466 y(where)639 3632 +y Fp(\017)41 b(h)p Fk(8-bit)31 b(numb)l(er)8 b Fp(i)28 +b Fv(refers)e(to)i(an)f(8-bit)g(c)n(haracter;)639 3798 +y Fp(\017)41 b(h)p Fk(15-bit)31 b(numb)l(er)8 b Fp(i)28 +b Fv(refers)f(to)g(v)-5 b(alue)28 b Ft(0x8000)d Fv(or)h(a)i(triple)815 +3964 y Fj(\025)42 b Fv(3)27 b(bits)h(for)f(math)h(category)-7 +b(,)815 4097 y Fj(\025)42 b Fv(4)27 b(bits)h(for)f(fon)n(t)h(family)-7 +b(,)815 4230 y Fj(\025)42 b Fv(8)27 b(bits)h(for)f(c)n(haracter)e(in)j +(fon)n(t,)722 4396 y(called)f(a)h Fk(math)i(c)l(o)l(de)6 +b Fv(;)639 4562 y Fp(\017)41 b(h)p Fk(27-bit)31 b(numb)l(er)8 +b Fp(i)28 b Fv(refers)f(to)g(a)g(negativ)n(e)g(n)n(um)n(b)r(er)g(or)g +(a)g(quin)n(tuple)815 4728 y Fj(\025)42 b Fv(3)27 b(bits)h(for)f(math)h +(category)-7 b(,)815 4861 y Fj(\025)42 b Fv(4)27 b(bits)h(for)f +(\034rst)g(fon)n(t)h(family)-7 b(,)815 4993 y Fj(\025)42 +b Fv(8)27 b(bits)h(for)f(\034rst)g(c)n(haracter)f(in)i(fon)n(t,)1926 +5255 y(5)p eop +%%Page: 6 6 +6 5 bop 815 523 a Fj(\025)42 b Fv(4)27 b(bits)h(for)f(second)g(fon)n(t) +h(family)-7 b(,)815 656 y Fj(\025)42 b Fv(8)27 b(bits)h(for)f(second)g +(c)n(haracter)e(in)j(fon)n(t,)722 822 y(called)f(a)h +Fk(delimiter)j(c)l(o)l(de)p Fv(.)639 988 y Fu(\012)p +Fv(,)26 b(on)f(the)h(other)e(hand,)i(allo)n(ws)e(256)f(\()p +Fu(2)1913 958 y Fl(8)1950 988 y Fv(\))j(fon)n(t)f(families,)h(eac)n(h)e +(fon)n(t)h(of)h(65)e(536)g(\()p Fu(2)3277 958 y Fl(16)3347 +988 y Fv(\))515 1088 y(c)n(haracters.)35 b(So,)28 b(in)h(addition)e(to) +h(the)h(T)1799 1105 y(E)1845 1088 y(X)f(math)g(fon)n(t)g(primitiv)n +(es,)g(whic)n(h)g(con)n(tin)n(ue)f(to)515 1187 y(w)n(ork,)f(there)h +(are)g(16-bit)g(v)n(ersions:)639 1370 y Fp(\017)41 b +Ft(\\omathcode)24 b Fp(h)p Fk(16-bit)30 b(numb)l(er)9 +b Fp(i)23 b Fu(=)g Fp(h)p Fk(27-bit)30 b(numb)l(er)8 +b Fp(i)p Fv(:)722 1469 y(De\034nes)28 b(27-bit)f(math)h(co)r(de)f(for)g +(c)n(haracter;)639 1636 y Fp(\017)41 b Ft(\\omathcode)24 +b Fp(h)p Fk(16-bit)30 b(numb)l(er)9 b Fp(i)p Fv(:)722 +1735 y(Outputs)28 b(27-bit)f(math)h(co)r(de)f(asso)r(ciated)f(with)i(c) +n(haracter;)639 1901 y Fp(\017)41 b Ft(\\omathchar)24 +b Fp(h)p Fk(27-bit)30 b(numb)l(er)9 b Fp(i)p Fv(:)722 +2001 y(Generates)27 b(a)g(math)h(c)n(haracter)d(with)j(27-bit)f(math)h +(co)r(de;)639 2167 y Fp(\017)41 b Ft(\\omathaccent)23 +b Fp(h)p Fk(27-bit)31 b(numb)l(er)8 b Fp(i)p Fv(:)722 +2267 y(Generates)27 b(a)g(math)h(accen)n(t)f(with)h(27-bit)f(math)g(co) +r(de;)639 2433 y Fp(\017)41 b Ft(\\omathchardef)22 b +Fp(h)p Fk(c)l(ontr)l(ol-se)l(quenc)l(e)6 b Fp(i)24 b +Fu(=)e Fp(h)p Fk(27-bit)31 b(numb)l(er)8 b Fp(i)p Fv(:)722 +2532 y(De\034nes)28 b(a)f(con)n(trol)f(sequence)h(with)i(a)e(27-bit)f +(math)i(co)r(de;)639 2698 y Fp(\017)41 b Ft(\\odelcode)24 +b Fp(h)p Fk(16-bit)31 b(numb)l(er)8 b Fp(i)23 b Fu(=)g +Fp(h)p Fk(51-bit)31 b(numb)l(er)8 b Fp(i)p Fv(:)722 2798 +y(De\034nes)28 b(51-bit)f(delimiter)h(co)r(de)f(for)g(c)n(haracter;)639 +2964 y Fp(\017)41 b Ft(\\odelcode)24 b Fp(h)p Fk(16-bit)31 +b(numb)l(er)8 b Fp(i)p Fv(:)722 3064 y(Outputs)28 b(51-bit)f(delimiter) +h(co)r(de)f(asso)r(ciated)f(with)i(c)n(haracter;)639 +3230 y Fp(\017)41 b Ft(\\odelimiter)23 b Fp(h)p Fk(51-bit)31 +b(numb)l(er)8 b Fp(i)p Fv(:)722 3329 y(Generates)27 b(a)g(math)h +(delimiter)f(with)i(51-bit)d(delimiter)i(co)r(de;)639 +3495 y Fp(\017)41 b Ft(\\oradical)24 b Fp(h)p Fk(51-bit)31 +b(numb)l(er)8 b Fp(i)p Fv(:)722 3595 y(Generates)27 b(a)g(math)h +(radical)e(with)i(51-bit)f(delimiter)h(co)r(de;)639 3778 +y(where)639 3944 y Fp(\017)41 b(h)p Fk(16-bit)31 b(numb)l(er)8 +b Fp(i)28 b Fv(refers)f(to)g(a)g(16-bit)g(c)n(haracter;)639 +4110 y Fp(\017)41 b(h)p Fk(27-bit)31 b(numb)l(er)8 b +Fp(i)28 b Fv(refers)f(to)g(v)-5 b(alue)28 b Ft(0x8000000)23 +b Fv(or)k(a)g(triple)815 4276 y Fj(\025)42 b Fv(3)27 +b(bits)h(for)f(math)h(category)-7 b(,)815 4408 y Fj(\025)42 +b Fv(8)27 b(bits)h(for)f(fon)n(t)h(family)-7 b(,)815 +4541 y Fj(\025)42 b Fv(16)27 b(bits)g(for)h(c)n(haracter)d(in)j(fon)n +(t,)722 4707 y(called)f(a)h Fk(math)i(c)l(o)l(de)6 b +Fv(;)639 4873 y Fp(\017)41 b(h)p Fk(51-bit)31 b(numb)l(er)8 +b Fp(i)35 b Fv(refers)e(to)h(a)f(pair)h(of)g(n)n(um)n(b)r(ers,)h +(either)f(b)r(oth)g(negativ)n(e)f(or)g(ar-)722 4973 y(ranged)27 +b(as)f Fp(h)p Fk(27-bit)31 b(numb)l(er)8 b Fp(i)24 b(h)p +Fk(24-bit)30 b(numb)l(er)9 b Fp(i)p Fv(,)28 b(with)g(the)g(\034rst)f(n) +n(um)n(b)r(er)g(b)r(eing:)1926 5255 y(6)p eop +%%Page: 7 7 +7 6 bop 815 523 a Fj(\025)42 b Fv(3)27 b(bits)h(for)f(math)h(category) +-7 b(,)815 656 y Fj(\025)42 b Fv(8)27 b(bits)h(for)f(\034rst)g(fon)n(t) +h(family)-7 b(,)815 789 y Fj(\025)42 b Fv(16)27 b(bits)g(for)h(\034rst) +f(c)n(haracter)e(in)j(fon)n(t,)722 955 y(and)g(the)g(second)f(n)n(um)n +(b)r(er)g(b)r(eing:)815 1121 y Fj(\025)42 b Fv(8)27 b(bits)h(for)f +(second)g(fon)n(t)h(family)-7 b(,)815 1254 y Fj(\025)42 +b Fv(16)27 b(bits)g(for)h(second)e(c)n(haracter)g(in)i(fon)n(t,)722 +1420 y(called)f(a)h Fk(delimiter)j(c)l(o)l(de)p Fv(.)639 +1586 y(Since)25 b Fu(\012)f Fv(is)h(up)n(w)n(ardly)e(compatible)h(with) +h(T)2030 1604 y(E)2076 1586 y(X,)h(the)e(older)g(primitiv)n(es)g(still) +h(con)n(tin)n(ue)515 1685 y(to)k(function)g(as)g(exp)r(ected.)41 +b(In)n(ternally)-7 b(,)29 b(math)g(co)r(des)f(are)g(27-bit)h(n)n(um)n +(b)r(ers)f(and)h(delim-)515 1785 y(iter)h(co)r(des)h(are)f(51-bit)g(n)n +(um)n(b)r(ers.)46 b(Ho)n(w)n(ev)n(er,)30 b(if)h Ft(\\mathcode)p +Fp(h)p Fk(15-bit)c(numb)l(er)8 b Fp(i)31 b Fv(app)r(ears)515 +1885 y(in)21 b(text)g(mo)r(de,)i(it)e(con)n(tin)n(ues)f(to)h(generate)e +(a)i(15-bit)f(n)n(um)n(b)r(er,)i(to)f(remain)f(up)n(w)n(ardly)g(com-) +515 1984 y(patible)33 b(with)g(T)1037 2002 y(E)1084 1984 +y(X:)48 b(Donald)33 b(Kn)n(uth)g(de\034nes)g(sev)n(eral)e(n)n(umerical) +h(constan)n(ts)g(through)515 2084 y Ft(\\mathcode)p Fv(.)515 +2358 y Fw(5)131 b(New)43 b(t)l(yp)t(esetting)i(routines)639 +2540 y Fv(Most)19 b(of)f(the)h(dev)n(elopmen)n(t)f(in)h +Fu(\012)g Fv(has)f(dealt)g(with)h(di\033eren)n(t)g(means)f(for)g +(manipulating)515 2640 y(c)n(haracter)25 b(streams.)36 +b(Nev)n(ertheless,)26 b(there)i(are)e(new)i(t)n(yp)r(esetting)g +(routines.)515 2872 y Fm(5.1)112 b(New)37 b(in\034nit)m(y)f(lev)m(el) +639 3025 y Fv(A)d(new)g(in\034nit)n(y)g(lev)n(el)f Ft(fi)h +Fv(has)f(b)r(een)h(added.)52 b(It)33 b(is)g(smaller)f(than)g +Ft(fil)g Fv(but)h(bigger)515 3125 y(than)i(an)n(y)e(\034nite)j(quan)n +(tit)n(y)-7 b(.)58 b(Its)34 b(original)f(in)n(ten)n(tion)i(w)n(as)f +(for)g(in)n(ter-letter)g(stretc)n(hing:)515 3225 y(either)e +Fk(\034l)t(ling-in-the-black)p Fv(,)i(as)e(is)g(done)f(for)h +(calligraphic)e(scripts)i(suc)n(h)g(as)f(Arabic;)j(or)515 +3324 y(for)d(emphasis,)i(as)f(in)h(Russian;)h(all)e(this)g(without)h +(ha)n(ving)e(to)h(rewrite)g(existing)f(macro)515 3424 +y(pac)n(k)-5 b(ages.)38 b(There)28 b(is)g(therefore)g(a)g(new)h(k)n +(eyw)n(ord,)e Ft(fi)p Fv(,)h(and)h(t)n(w)n(o)f(new)g(primitiv)n(es,)h +Ft(\\hfi)515 3524 y Fv(and)e Ft(\\vfi)p Fv(.)515 3756 +y Fm(5.2)112 b(Lo)s(cal)37 b(paragraph)i(parametrization)639 +3909 y Fv(The)30 b Fu(\012)g Fv(system)g(allo)n(ws)e(the)j +(\034netuning)f(of)g(la)n(y)n(out,)f(using)h Fk(lo)l(c)l(al)39 +b Fv(paragraph)27 b(primi-)515 4009 y(tiv)n(es.)35 b(The)24 +b(\034rst)g(t)n(w)n(o,)g Ft(\\localinterline)o(pe)o(nal)o(ty)17 +b Fv(and)24 b Ft(\\localbrokenpenal)o(ty)o Fv(,)19 b(are)515 +4108 y(generalizations)25 b(of)j Ft(\\interlinepenal)o(ty)21 +b Fv(and)27 b Ft(\\brokenpenalty)p Fv(.)639 4208 y(When,)38 +b(sa)n(y)-7 b(,)37 b Ft(\\localinterlinep)o(en)o(al)o(ty=)o(20)o(0)30 +b Fv(app)r(ears,)36 b(a)f Fk(whatsit)44 b Fv(no)r(de)36 +b(is)f(de-)515 4308 y(p)r(osited)f(in)n(to)f(the)i(tok)n(en)e(list)h +(for)f(the)i(curren)n(t)e(paragraph.)53 b(If)34 b(the)h(v)-5 +b(alue)33 b(is)h(c)n(hanged)515 4407 y(again,)40 b(another)d(whatsit)i +(no)r(de)g(is)f(dep)r(osited.)70 b(When)39 b Fu(\012)g +Fv(cuts)f(the)h(paragraph)d(in)n(to)515 4507 y(lines,)26 +b(it)h(will)f(add)g(the)h(curren)n(t)e(v)-5 b(alue)26 +b(of)g(the)h(lo)r(cal)e(p)r(enalt)n(y)h(to)g(the)h(p)r(enalt)n(y)f(no)r +(de)g(that)515 4607 y(is)21 b(placed)g(after)g(ev)n(ery)f(line)i(in)f +(the)h(v)n(ertical)e(list.)35 b(Similarly)21 b(for)g +Ft(\\localbrokenpena)o(lt)o(y)515 4706 y Fv(when)30 b(a)h +(discretionary)d(h)n(yphen)j(is)f(placed)g(at)g(the)h(end)g(of)g(a)f +(line.)46 b(With)31 b(these)f(primi-)515 4806 y(tiv)n(es,)20 +b(it)g(b)r(ecomes)e(p)r(ossible)h(to)g(discourage)e(or)h(encourage)f +(page)h(breaks)g(at)h(more)f(sp)r(eci\034c)515 4905 y(parts)27 +b(of)g(a)g(paragraph.)1926 5255 y(7)p eop +%%Page: 8 8 +8 7 bop 639 523 a Fv(This)34 b(same)e(lo)r(cal)h(approac)n(h)f(is)h +(tak)n(en)g(for)f(a)h(completely)g(di\033eren)n(t)h(task:)48 +b(placing)515 623 y(\034xed-width)36 b(t)n(yp)r(eset)g(material)g(at)g +(the)g(b)r(eginning)h(\(or)e(the)i(end\))f(of)h(ev)n(ery)e(line)h(in)g +(a)515 722 y(paragraph.)639 822 y(\023)23 b(The)f(original)f(problem)h +(to)g(b)r(e)g(solv)n(ed)g(w)n(as)f(for)h(\034ne)g(F)-7 +b(renc)n(h)22 b(t)n(yp)r(esetting,)i(in)e(whic)n(h)515 +922 y(\023)28 b(guillemets)35 b(are)f(placed)h(running)g(do)n(wn)f(the) +i(left)g(side)f(of)g(a)g(paragraph,)g(as)f(in)i(this)515 +1021 y(\023)28 b(paragraph,)19 b(so)h(long)g(as)g(material)g(is)g(b)r +(eing)h(quoted.)g(\024)f(Since)h(T)2593 1039 y(E)2640 +1021 y(X)g(breaks)e(paragraphs)515 1121 y(in)32 b(arbitrary)f(places,)i +(it)g(w)n(as)e(imp)r(ossible)h(to)h(dev)n(elop)e(a)h(robust)g(macro)f +(pac)n(k)-5 b(age)31 b(that)515 1220 y(could,)c(in)h(a)f(single)g +(pass,)g(place)g(the)h(guillemets)f(in)h(the)g(righ)n(t)f(p)r +(ositions.)639 1320 y(The)h(original)e(text)i(for)f(the)h(previous)e +(paragraph)f(w)n(as:)776 1482 y Ft({<<~\\localleftbo)o(x{<)o(<~)o(}T)o +(he)37 b(original)j(problem)h(to)i(be)f(solved)776 1581 +y(was)g(for)h(fine)f(French)f(typesetting,)d(in)43 b(which)e +(guillemets)776 1681 y(are)h(placed)g(running)e(down)i(the)g(left)g +(side)g(of)h(a)g(paragraph,)776 1781 y(as)g(in)g(this)f(paragraph,)d +(so)k(long)e(as)i(material)d(is)j(being)776 1880 y(quoted.~>>})c(Since) +j(\\TeX\\)f(breaks)g(paragraphs)e(in)k(arbitrary)776 +1980 y(places,)e(it)i(was)f(impossible)d(to)k(develop)e(a)i(robust)e +(macro)776 2080 y(package)g(that)h(could,)f(in)h(a)i(single)d(pass,)g +(place)h(the)776 2179 y(guillemets)e(in)i(the)h(right)e(positions.)639 +2341 y Fv(There)27 b(are)g(curren)n(tly)f(four)i(lo)r(cal)f(primitiv)n +(es:)639 2503 y Fp(\017)41 b Ft(\\localleftbox{)p Fp(h)p +Fk(typ)l(eset-material)t Fp(i)p Ft(})p Fv(:)722 2602 +y(Un)n(til)30 b(this)f(primitiv)n(e)g(is)g(rede\034ned,)g(then)h(the)f +(t)n(yp)r(eset)h(material)e(will)h(b)r(e)g(placed)722 +2702 y(at)c(the)g(b)r(eginning)g(of)g(ev)n(ery)f(line)h(that)g(follo)n +(ws)f(the)i(o)r(ccurrence)d(of)i(this)g(primitiv)n(e)722 +2802 y(in)j(the)g(text.)639 2965 y Fp(\017)41 b Ft(\\localrightbox{)p +Fp(h)p Fk(typ)l(eset-material)t Fp(i)p Ft(})p Fv(:)722 +3065 y(Un)n(til)30 b(this)f(primitiv)n(e)g(is)g(rede\034ned,)g(then)h +(the)f(t)n(yp)r(eset)h(material)e(will)h(b)r(e)g(placed)722 +3165 y(at)24 b(the)h(end)f(of)g(ev)n(ery)f(line)i(that)f(follo)n(ws)f +(the)i(o)r(ccurrence)e(of)h(this)g(primitiv)n(e)g(in)h(the)722 +3264 y(text.)639 3428 y Fp(\017)41 b Ft(\\localinterlinepe)o(na)o(lt)o +(y)17 b Fu(=)23 b Fp(h)p Fk(p)l(enalty)8 b Fp(i)p Fv(:)722 +3528 y(Un)n(til)22 b(this)e(primitiv)n(e)h(is)f(rede\034ned,)i(then)f +(the)g(giv)n(en)f(p)r(enalt)n(y)h(v)-5 b(alue)20 b(will)h(b)r(e)g +(added)722 3627 y(to)28 b(the)g(p)r(enalt)n(y)f(no)r(de)h(placed)f(b)r +(et)n(w)n(een)g(successiv)n(e)g(lines)g(in)h(a)f(paragraph.)639 +3791 y Fp(\017)41 b Ft(\\localbrokenpenal)o(ty)16 b Fu(=)23 +b Fp(h)p Fk(p)l(enalty)8 b Fp(i)p Fv(:)722 3891 y(Un)n(til)40 +b(this)g(primitiv)n(e)f(is)g(rede\034ned,)j(then)e(eac)n(h)e(time)i +(that)g(a)f(line)g(ends)h(with)722 3991 y(a)34 b(discretionary)d(no)r +(de,)36 b(then)e(the)g(giv)n(en)f(p)r(enalt)n(y)h(v)-5 +b(alue)33 b(will)h(b)r(e)g(added)g(to)g(the)722 4090 +y(p)r(enalt)n(y)28 b(no)r(de)f(follo)n(wing)g(that)h(line.)639 +4252 y(Grouping)f(is)g(resp)r(ected)h(b)n(y)f(all)g(of)h(the)g(lo)r +(cal)f(paragraph)e(primitiv)n(es.)515 4526 y Fw(6)131 +b(Multiple)45 b(directions)639 4707 y Fv(Belo)n(w)27 +b(is)h(what)g(is)f(a)n(v)-5 b(ailable)27 b(in)h(the)g(exp)r(erimen)n +(tal)g(v)n(ersions)e(of)h Fu(\012)p Fv(.)38 b(Unfortunately)515 +4807 y(w)n(e)c(did)g(not)h(consider)e(it)i(to)f(b)r(e)h(su\036cien)n +(tly)f(stable)g(for)g(it)h(to)f(b)r(e)h(released)e(generally)-7 +b(.)515 4907 y(Therefore,)34 b Fu(\012)g Fv(con)n(tin)n(ues)g(to)g +(supp)r(ort)f(the)i(bidirectionalit)n(y)e(functions)h(of)g +Ft(TeX--XeT)p Fv(.)515 5006 y(In)j(addition,)j(with)e(the)g +Ft(\\pagedirHR)c Fv(and)j Ft(\\pagedirHL)p Fv(,)d(primitiv)n(es,)39 +b(it)f(is)f(p)r(ossible)1926 5255 y(8)p eop +%%Page: 9 9 +9 8 bop 515 523 a Fv(to)38 b(transform)e(the)j(en)n(tire)e(page)h(in)n +(to)f(a)h(righ)n(t-to-left)f(page)g(or)g(a)h(left-to-righ)n(t)f(page.) +515 623 y(Similarly)-7 b(,)30 b Ft(\\pardirHR)c Fv(and)k +Ft(\\pardirHL)c Fv(allo)n(w)j(the)h(paragraph)e(direction)h(to)h(c)n +(hange.)515 722 y(The)35 b(page)f(direction)h(c)n(hanges)f(should)h(o)r +(ccur)f(in)i(empt)n(y)f(pages,)h(and)f(the)h(paragraph)515 +822 y(direction)k(c)n(hanges)g(should)h(o)r(ccur)g(outside)g(of)g +(horizon)n(tal)e(mo)r(de.)78 b(T)-7 b(o)41 b(ensure)g(that)515 +922 y(tables)24 b(are)g(used)h(prop)r(erly)-7 b(,)24 +b(there)h(is)f(a)h(primitiv)n(e)f Ft(nextfakemath)p Fv(,)d(whic)n(h,)k +(put)g(in)h(fron)n(t)515 1021 y(of)35 b(math)h(mo)r(de,)i(ignores)c +(that)i(the)g(mathematics)f(is)h(supp)r(osed)f(to)h(b)r(e)g(t)n(yp)r +(eset)f(from)515 1121 y(left-to-righ)n(t.)68 b(This)39 +b(is)f(used)g(in)h Fu(\003)p Fv(,)i(whic)n(h)e(go)r(es)e(in)n(to)h +(math)h(mo)r(de)f(to)h(do)f Ft(tabular)515 1220 y Fv(en)n(vironmen)n +(ts.)639 1409 y Fk(Sinc)l(e)32 b(T)907 1426 y(E)953 1409 +y(X)f(was)h(original)t(ly)i(designe)l(d)f(for)f(English,)i(it)e(only)g +(supp)l(orts)g(left-to-right)515 1508 y(typ)l(esetting.)47 +b(This)33 b(situation)g(was)g(impr)l(ove)l(d)h(somewhat)f(with)g(Knuth) +f(and)h(MacKay's)515 1608 y Ft(TeX-XeT)p Fk(,)23 b(mo)l(di\034e)l(d)k +(into)f(Br)l(eitenlohner's)i Ft(TeX--XeT)p Fk(.)23 b(However,)28 +b(these)e(mo)l(di\034c)l(ations)515 1707 y(to)g(T)656 +1725 y(E)702 1707 y(X)h(only)g(al)t(low)h(the)f(use)f(of)i +(right-to-left)f(typ)l(esetting,)g(and)h(even)e(then,)i(only)f(within) +515 1807 y(a)32 b(p)l(articular)h(p)l(ar)l(agr)l(aph.)48 +b(In)32 b(other)g(wor)l(ds,)i(these)e(systems)g(do)h(not)f(supp)l(ort)g +(the)g(typ)l(e-)515 1907 y(setting)d(of)i(a)f(ful)t(l)g(text)f(in)g +(the)h(di\033er)l(ent)g(writing)g(dir)l(e)l(ctions.)639 +2006 y(The)e Fu(\012)e Fk(system)g(distinguishes)h(sixte)l(en)f +(di\033er)l(ent)g(dir)l(e)l(ctions,)i(which)g(ar)l(e)f(designate)l(d) +515 2106 y(by)j(thr)l(e)l(e)f(p)l(ar)l(ameters:)613 2261 +y(1.)42 b(The)c Fv(b)r(eginning)29 b(of)g(the)g(page)h +Fk(is)h(one)g(of)h Fi(T)e Fk(\(top\),)i Fi(L)e Fk(\(left\),)i +Fi(R)e Fk(\(right\))i(or)f Fi(B)f Fk(\(b)l(ot-)722 2361 +y(tom\).)37 b(F)-6 b(or)26 b(English)h(and)g(A)n(r)l(abic,)g(the)f(b)l +(e)l(ginning)g(of)h(the)f(p)l(age)h(is)f Fi(T)p Fk(;)g(for)g(Jap)l +(anese)722 2460 y(it)k(is)g Fi(R)p Fk(;)g(for)g(Mongolian)i(it)e(is)g +Fi(L)p Fk(.)613 2621 y(2.)42 b(The)e Fv(b)r(eginning)31 +b(of)g(the)g(line)i Fk(de\034nes)f(wher)l(e)i(e)l(ach)f(line)g(b)l(e)l +(gins.)48 b(F)-6 b(or)33 b(English,)i(it)722 2720 y(is)30 +b Fi(L)p Fk(;)g(for)h(A)n(r)l(abic,)f(it)g(is)g Fi(R)p +Fk(;)g(for)h(Jap)l(anese)f(and)g(Mongolian,)i(it)e(is)g +Fi(T)p Fk(.)613 2881 y(3.)42 b(The)e Fv(top)30 b(of)g(the)g(line)i +Fk(c)l(orr)l(esp)l(onds)h(to)f(the)g(notion)g(of)h(`up')g(within)g(a)f +(line.)46 b(Nor-)722 2980 y(mal)t(ly,)30 b(this)f(wil)t(l)h(b)l(e)e +(the)g(same)h(as)f(for)h(the)g(b)l(e)l(ginning)f(of)h(the)f(p)l(age,)i +(as)f(in)f Fi(TLT)f Fk(for)722 3080 y(English,)36 b Fi(TRT)c +Fk(for)j(A)n(r)l(abic,)g Fi(RTR)d Fk(for)i(Jap)l(anese,)h(or)f +Fi(LTL)e Fk(for)j(Mongolian.)51 b(How-)722 3180 y(ever,)39 +b(for)e(English)h(include)l(d)f(in)f(Mongolian)j(text,)e(suc)l(c)l +(essive)f(lines)h(move)g(`up')722 3279 y(the)30 b(p)l(age,)h(which)h +(gives)e(dir)l(e)l(ction)h Fi(LTR)p Fk(.)639 3434 y(The)36 +b Fu(\012)e Fk(system)h(distinguishes)h(thr)l(e)l(e)e(levels)h(of)h +(di\033er)l(ent)f(writing)g(dir)l(e)l(ction:)49 b(p)l(age)515 +3534 y(\()p Ft(\\pagedir)p Fk(\),)21 b(text)g(\()p Ft(\\textdir)p +Fk(\))e(and)24 b(mathematics)f(\()p Ft(\\mathdir)p Fk(\).)33 +b(Each)24 b(of)g(these)f(prim-)515 3634 y(itives)30 b(takes)g(as)g +(primitive)i(one)e(of)g(the)g(ab)l(ove)h(sixte)l(en)e(writing)h(dir)l +(e)l(ctions.)639 3789 y Fp(\017)41 b Ft(\\pagedir)24 +b Fp(h)p Fv(direction)o Fp(i)p Fk(:)86 b(The)28 b(p)l(age)g(dir)l(e)l +(ction)f(c)l(an)g(only)h(b)l(e)f(change)l(d)h(if)g(the)f(cur-)722 +3888 y(r)l(ent)i(vlist)h(is)g(empty.)39 b(This)31 b(de)l(cision)g +(avoids)h(ambiguous)e(situations.)639 4049 y Fp(\017)41 +b Ft(\\textdir)23 b Fp(h)p Fv(direction)o Fp(i)p Fk(:)86 +b(This)27 b(primitive)g(c)l(an)f(app)l(e)l(ar)i(anywher)l(e)e(in)g(a)h +(text,)e(and)722 4148 y Fu(\012)41 b Fk(wil)t(l)i(al)t(low)f(for)g(the) +g(moment)e(only)i(mixe)l(d)f(horizontal)i(c)l(ombinations.)74 +b(F)-6 b(u-)722 4248 y(tur)l(e)38 b(versions)g(wil)t(l)i(al)t(low)g +(many)e(di\033er)l(ent)h(c)l(ombinations,)i(with)e(p)l(ar)l(ametriza-) +722 4348 y(tion.)79 b(Gr)l(ouping)44 b(is)f(r)l(esp)l(e)l(cte)l(d,)k +(so)d(it)f(is)g(p)l(ossible)i(to)e(have)h(inserts)f(within)h(a)722 +4447 y(p)l(ar)l(agr)l(aph:)61 b(these)40 b(ar)l(e)g(implemente)l(d)g +(using)f(the)h(lo)l(c)l(al)h(p)l(ar)l(agr)l(aph)g(me)l(chanism)722 +4547 y(describ)l(e)l(d)31 b(in)f(the)g(pr)l(evious)h(se)l(ction.)639 +4707 y Fp(\017)41 b Ft(\\mathdir)26 b Fp(h)p Fv(direction)p +Fp(i)p Fk(:)85 b(Normal)t(ly)31 b(mathematics)f(is)f(done)h(in)f(the)g +(same)h(dir)l(e)l(c-)722 4807 y(tion)e(as)g(English,)i(namely)f +Fi(TLT)p Fk(.)d(Ther)l(e)j(have)g(b)l(e)l(en)f(situations)f(wher)l(e)i +(it)f(has)g(b)l(e)l(en)722 4907 y(written)f Fi(TRT)p +Fk(.)f Fu(\012)h Fk(al)t(lows)i(only)f(eight)g(dir)l(e)l(ctions)g(for)g +(mathematics,)h(namely)e(those)722 5006 y(in)j(which)h(the)f(\034rst)f +(and)h(thir)l(d)h(dir)l(e)l(ction)f(p)l(ar)l(ameters)h(ar)l(e)f +(identic)l(al.)1926 5255 y Fv(9)p eop +%%Page: 10 10 +10 9 bop 639 523 a Fk(In)33 b(addition,)j Fu(\012)d Fk(al)t(lows)h(one) +g(to)f(designate)h(the)f(dir)l(e)l(ction)h(of)f(a)h(b)l(ox.)48 +b(F)-6 b(or)33 b(example)515 623 y Ft(\\hbox)41 b(dir)h(TRT{...})d +Fk(cr)l(e)l(ates)k(a)g(horizontal)h(b)l(ox,)h(and)e(uses)f(dir)l(e)l +(ction)h Fi(TRT)f Fk(while)515 722 y(building)31 b(that)e(b)l(ox.)639 +822 y(Final)t(ly,)38 b(fonts)d(c)l(an)f(b)l(e)h(stor)l(e)l(d)g(either)g +(natur)l(al)t(ly)g(or)g(not.)53 b(In)34 b(the)g(unnatur)l(al)g(situ-) +515 922 y(ation,)f(c)l(al)t(le)l(d)g(with)f(primitive)h +Ft(\\unnaturaldir)p Fk(,)27 b(it)32 b(is)g(understo)l(o)l(d)f(that)h +(glyphs)h(in)f(the)515 1021 y(curr)l(ent)27 b(font)h(wil)t(l)h(always)h +(app)l(e)l(ar)f(to)f(the)g(right)h(of)g(the)f(curr)l(ent)f(p)l(oint,)i +(ab)l(ove)h(the)e(b)l(ase-)515 1121 y(line.)61 b(In)37 +b(the)g(natur)l(al)g(situation,)i(c)l(al)t(le)l(d)g(with)f +Ft(\\naturaldir)p Fk(,)c(glyphs)39 b(app)l(e)l(ar)g(in)e(the)515 +1220 y(`c)l(orr)l(e)l(ct')h(dir)l(e)l(ction.)62 b(So)38 +b(a)f(natur)l(al)g(A)n(r)l(abic)h(font)f(would)i(have)f(the)g(glyphs)g +(app)l(e)l(ar)h(to)515 1320 y(the)28 b(left)g(of)g(the)g(curr)l(ent)e +(p)l(oint,)j(and)f(a)g(natur)l(al)f(Jap)l(anese)h(font)g(would)g(make)h +(the)f(glyphs)515 1420 y(app)l(e)l(ar)j(b)l(elow)f(the)g(curr)l(ent)f +(p)l(oint.)515 1694 y Fw(7)131 b(F)-11 b(on)l(ts)44 b(for)g +Fo(\012)639 1876 y Fv(The)39 b(T)867 1894 y(E)913 1876 +y(X)g(system)g(tak)n(es)f(the)h(follo)n(wing)f(approac)n(h)e(to)j(fon)n +(ts.)70 b(The)39 b(T)3019 1894 y(E)3065 1876 y(X)g(driv)n(er)515 +1976 y(reads)23 b(T)775 1994 y(E)821 1976 y(X)j(do)r(cumen)n(ts)e(and)h +(generates)e Ft(.dvi)g Fv(\034les.)36 b(The)24 b(driv)n(er)g(uses)g +(fon)n(t)h(metric)f(\034les)515 2075 y(\(su\036x)32 b +Ft(.tfm)p Fv(,)f(text)i(v)n(ersion)d Ft(.pl)p Fv(\))h(to)h(determine)g +(ho)n(w)f(to)h(la)n(y)f(out)h(b)r(o)n(xes)f(on)h(a)f(pages.)515 +2175 y(The)f(screen)g(driv)n(er)f(or)g(prin)n(ter)h(driv)n(er)f +(transforms)g(the)i Ft(.dvi)e Fv(\034le)h(in)h(the)g(appropriate)515 +2275 y(format,)f(using)f(bitmap)i(fon)n(ts)e(\()p Ft(.pk)p +Fv(\),)h(scaled)f(fon)n(ts)h(\()p Ft(.pfa)f Fv(or)g Ft(.pfb)p +Fv(\),)g(or)g(virtual)g(fon)n(ts)515 2374 y(\()p Ft(.vf)p +Fv(,)d(text)i(v)n(ersion)e Ft(.vp)p Fv(\).)639 2474 y(In)k(the)f +Fu(\012)g Fv(system,)g(w)n(e)g(mak)n(e)f(no)h(attempt,)h(for)f(the)g +(momen)n(t,)h(to)f(c)n(hange)f(the)h(de\034-)515 2573 +y(nition)i(of)g(bitmaps)g(or)f(scaled)g(fon)n(ts.)46 +b(W)-7 b(e)32 b(ha)n(v)n(e)d(fo)r(cused)i(on)g(the)g(fon)n(t)g(metrics) +f(\()p Ft(.ofm)p Fv(,)515 2673 y(text)e(v)n(ersion)e +Ft(.opl)p Fv(\),)g(and)h(the)h(virtual)f(fon)n(ts)h(\()p +Ft(.ovf)p Fv(,)e(text)i(v)n(ersion)e Ft(.ovp)p Fv(\).)639 +2773 y(Curren)n(tly)-7 b(,)25 b(these)g(new)f(fon)n(t)h(\034le)g +(formats)f(come)g(in)h(t)n(w)n(o)f(v)n(ersions.)35 b(The)24 +b(\034rst,)h(called)515 2872 y(lev)n(el)h(0,)h(corresp)r(onds)e(to)i +(the)h(16-bit)e(v)n(ersion)g(of)h(TFM)g(\034les,)h(with)f(no)g(new)g +(functional-)515 2972 y(it)n(y)-7 b(.)45 b(Lev)n(el)29 +b(1)h(fon)n(ts)g(are)f(more)h(am)n(bitious,)g(and)g(pro)n(vide)f(for)h +(more)f(p)r(o)n(w)n(erful)h(features,)515 3072 y(including)d +(compression)f(metho)r(ds)i(and)f(additional)g(parameters.)515 +3304 y Fm(7.1)112 b(Lev)m(el-0)37 b Fh(\012)p Fm(FM)i(\034les)639 +3457 y Fv(The)g(lev)n(el-0)f Fu(\012)p Fv(FM)h(\034les)g(are)g(simply)g +(16-bit)f(v)n(ersions)f(of)i(TFM)h(\034les,)h(and)e(ha)n(v)n(e)515 +3557 y(corresp)r(onding)29 b(en)n(tries.)48 b(Belo)n(w)30 +b(is)h(a)g(description)g(of)h(the)f(\034rst)h(14)e(w)n(ords)g(of)h(a)g +(lev)n(el-0)515 3656 y Fu(\012)p Fv(FM)d(\034le.)37 b(Eac)n(h)27 +b(en)n(try)g(is)g(a)h(32-bit)e(in)n(teger,)h(non-negativ)n(e)f(and)h +(less)g(than)h Fu(2)3051 3626 y Fl(31)3121 3656 y Fv(:)722 +3822 y Fk(ofm-level)93 b Fu(=)83 b(0;)989 3947 y Fk(lf)101 +b Fu(=)83 b Fv(length)28 b(of)f(the)h(\034le,)g(in)g(w)n(ords)n +Fu(;)983 4072 y Fk(lh)90 b Fu(=)83 b Fv(length)28 b(of)f(the)h(header)f +(data,)g(in)h(w)n(ords)n Fu(;)976 4196 y Fk(b)l(c)88 +b Fu(=)83 b Fv(smallest)27 b(c)n(haracter)e(co)r(de)j(in)g(the)g(fon)n +(t)p Fu(;)976 4321 y Fk(e)l(c)88 b Fu(=)83 b Fv(largest)26 +b(c)n(haracter)f(co)r(de)j(in)g(the)g(fon)n(t)p Fu(;)943 +4445 y Fk(nw)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(width)g(table)p Fu(;)958 4570 y Fk(nh)89 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(heigh) +n(t)g(table)o Fu(;)956 4694 y Fk(nd)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er) +27 b(of)h(en)n(tries)f(in)g(the)h(depth)g(table)p Fu(;)973 +4819 y Fk(ni)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(italic)g(correction)e(table)o Fu(;)977 4943 +y Fk(nl)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g +(the)h(lig-k)n(ern)e(table)p Fu(;)1905 5255 y Fv(10)p +eop +%%Page: 11 11 +11 10 bop 960 523 a Fk(nk)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(en)n(tries)f(in)g(the)h(k)n(ern)f(table)p Fu(;)962 +648 y Fk(ne)89 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(extensible)g(c)n(haracter)d(table)p Fu(;)959 +772 y Fk(np)88 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(fon)n(t)f +(parameter)f(w)n(ords)o Fu(;)770 897 y Fk(font-dir)92 +b Fu(=)83 b Fv(direction)27 b(of)h(fon)n(t)o Fg(:)515 +1063 y Fv(W)-7 b(e)32 b(m)n(ust)g(ha)n(v)n(e)f(that)i +Fk(b)l(c)26 b Fp(\000)21 b Fu(1)30 b Fp(\024)g Fk(e)l(c)35 +b Fp(\024)c Fu(65535)p Fv(.)48 b(F)-7 b(urthermore,)32 +b(the)g(follo)n(wing)f(iden)n(tit)n(y)515 1162 y(m)n(ust)c(hold:)722 +1328 y Fk(lf)102 b Fu(=)82 b(14)18 b(+)g Fk(lh)25 b Fu(+)18 +b(2)g Fp(\003)g Fu(\()p Fk(e)l(c)24 b Fp(\000)18 b Fk(b)l(c)23 +b Fu(+)18 b(1\))g(+)g Fk(nw)27 b Fu(+)18 b Fk(nh)25 b +Fu(+)18 b Fk(nd)27 b Fu(+)18 b Fk(ni)27 b Fu(+)1017 1453 +y(2)18 b Fp(\003)g Fk(nl)27 b Fu(+)18 b Fk(nk)27 b Fu(+)18 +b(2)g Fp(\003)g Fk(ne)25 b Fu(+)18 b Fk(np)5 b Fg(:)515 +1619 y Fv(Note)40 b(that)h(a)f(fon)n(t)h(ma)n(y)f(con)n(tain)g(as)g +(man)n(y)g(as)f(65536)g(c)n(haracters)f(\(if)j Fk(b)l(c)50 +b Fu(=)44 b(0)c Fv(and)515 1719 y Fk(e)l(c)28 b Fu(=)22 +b(65535)p Fv(\),)k(and)h(as)g(few)h(as)f(0)g(c)n(haracters)e(\(if)k +Fk(b)l(c)e Fu(=)c Fk(e)l(c)g Fp(\000)18 b Fu(1)p Fv(\).)639 +1818 y(As)29 b(with)h(TFM)g(\034les,)f(if)h(t)n(w)n(o)e(or)g(more)h(o)r +(ctexts)g(are)f(com)n(bined)g(to)h(form)g(an)g(in)n(teger)515 +1918 y(of)j(16)g(or)f(more)h(bits,)i(the)f(most)f(signi\034can)n(t)g(o) +r(ctets)g(app)r(ear)f(\034rst)i(in)f(the)h(\034le.)52 +b(This)32 b(is)515 2017 y(called)27 b(BigEndian)g(order.)639 +2117 y(Also)i(as)g(with)h(TFM)g(\034les,)g(the)g(rest)f(of)h(the)g +(\034le)g(is)f(a)g(sequence)g(of)h(ten)g(data)f(arra)n(ys)515 +2217 y(ha)n(ving)d(the)i(informal)f(sp)r(eci\034cation)812 +2383 y Fk(he)l(ader)93 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(lh)e Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(stu\033)722 +2507 y(char-info)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([)p +Fk(b)l(c)5 b Fg(::)p Fk(e)l(c)g Fu(])23 b Ff(of)32 b +Fk(char-info-wor)l(d)856 2632 y(width)90 b Fu(:)83 b +Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(nw)g Fp(\000)18 b +Fu(1])k Ff(of)33 b Fk(\034x-wor)l(d)833 2756 y(height)92 +b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(nh)e +Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)856 +2881 y(depth)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nd)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)870 +3005 y(italic)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(ni)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)776 +3130 y(lig-kern)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nl)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(lig-kern-c)l(ommand) +891 3254 y(kern)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nk)g Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)860 +3379 y(exten)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(ne)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(extensible-r)l(e) +l(cip)l(e)827 3504 y(p)l(ar)l(am)90 b Fu(:)83 b Ff(arra)m(y)27 +b Fu([1)p Fg(::)p Fk(np)5 b Fu(])23 b Ff(of)32 b Fk(\034x-wor)l(d)639 +3670 y Fv(There)26 b(is)f(no)h(need)g(to)g(describ)r(e)f(the)h(en)n +(tire)g(\034le,)g(only)g(those)f(parts)g(that)h(di\033er)g(from)515 +3769 y(TFM)32 b(\034les:)45 b Fk(char-info-wor)l(d)11 +b Fv(,)33 b Fk(lig-kern-c)l(ommand)42 b Fv(and)31 b Fk(extensible-r)l +(e)l(cip)l(e)7 b Fv(.)50 b(Here)32 b(is)f(a)515 3869 +y(summary)26 b(of)i(those)f(di\033erences.)639 4035 y +Fp(\017)41 b Fk(char-info-wor)l(d)e Fv(\(8)27 b(o)r(ctets\):)772 +4167 y Fk(width)284 b Fv(16)26 b(bits)772 4266 y Fk(height)304 +b Fv(8)27 b(bits)772 4366 y Fk(depth)325 b Fv(8)27 b(bits)772 +4466 y Fk(italic)338 b Fv(8)27 b(bits)772 4565 y Fk(RFU)340 +b Fv(6)27 b(bits)772 4665 y Fk(tag)409 b Fv(2)27 b(bits)772 +4765 y Fk(r)l(emainder)110 b Fv(16)26 b(bits)722 4893 +y(The)32 b(meaning)e(is)h(as)g(in)g(TFM)h(\034les,)g(so)e(there)h(are)f +(65536)f(p)r(ossible)i(widths,)h(256)722 4993 y(p)r(ossible)27 +b(widths,)h(256)f(p)r(ossible)g(heigh)n(ts)g(and)g(256)f(p)r(ossible)i +(italic)f(corrections.)1905 5255 y(11)p eop +%%Page: 12 12 +12 11 bop 639 523 a Fp(\017)41 b Fk(lig-kern-c)l(ommand)c +Fv(\(8)28 b(o)r(ctets\):)772 653 y Fk(skip-byte)163 b +Fv(16)26 b(bits)772 752 y Fk(next-char)137 b Fv(16)26 +b(bits)772 852 y Fk(op-byte)218 b Fv(16)26 b(bits)772 +952 y Fk(r)l(emainder)110 b Fv(16)26 b(bits)722 1078 +y(The)i(meaning)f(is)g(as)g(in)h(TFM)g(\034les,)g(with)g(ev)n(ery)e(en) +n(try)h(doubling)g(in)h(size.)639 1240 y Fp(\017)41 b +Fk(extensible-r)l(e)l(cip)l(e)35 b Fv(\(8)27 b(o)r(ctets\):)772 +1370 y Fk(ext-top)131 b Fv(16)27 b(bits)772 1469 y Fk(ext-mid)108 +b Fv(16)27 b(bits)772 1569 y Fk(ext-b)l(ot)139 b Fv(16)27 +b(bits)772 1669 y Fk(ext-r)l(ep)132 b Fv(16)27 b(bits)722 +1795 y(Once)37 b(again,)i(the)e(meaning)g(is)g(as)g(in)g(TFM)h +(\034les,)h(but)f(ev)n(ery)e(en)n(try)h(has)g(b)r(een)722 +1895 y(doubled.)515 2125 y Fm(7.2)112 b(Lev)m(el-0)37 +b Fh(\012)p Fm(PL)h(\034les)639 2278 y Fv(The)23 b(lev)n(el-0)e +Fu(\012)p Fv(PL)i(\034les)f(are)f(the)i(same)f(as)g(PL)h(\034les,)g +(with)g(the)g(exception)f(that)h(v)-5 b(alues)515 2378 +y(restricted)27 b(to)g(8)g(bits)h(can)f(no)n(w)g(b)r(e)h(16)f(bits.)515 +2608 y Fm(7.3)112 b(Lev)m(el-0)37 b Fh(\012)p Fm(VF)h(\034les)639 +2762 y Fv(The)e Fu(\012)p Fv(VF)g(\034les)f(are)g(indistinguishable)g +(from)g(VF)h(\034les,)h(except)f(for)f(the)g(\034le)h(suf-)515 +2861 y(\034x.)56 b(They)34 b(exist)h(only)e(b)r(ecause)h(the)h(v)-5 +b(ast)34 b(ma)5 b(jorit)n(y)32 b(of)i(driv)n(ers)f(balk)h(when)g(they)g +(see)515 2961 y(c)n(haracters)25 b(that)j(are)e(not)i(8)f(bits.)515 +3191 y Fm(7.4)112 b(Lev)m(el-0)37 b Fh(\012)p Fm(VP)g(\034les)639 +3345 y Fv(The)21 b(lev)n(el-0)f Fu(\012)p Fv(VP)i(\034les)e(are)g(the)i +(same)e(as)g(VP)i(\034les,)g(with)f(the)h(exception)e(that)i(v)-5 +b(alues)515 3444 y(restricted)27 b(to)g(8)g(bits)h(can)f(no)n(w)g(b)r +(e)h(16)f(bits.)515 3675 y Fm(7.5)112 b(Lev)m(el-1)37 +b Fh(\012)p Fm(FM)i(\034les)639 3828 y Fv(The)e(lev)n(el-1)e(fon)n(ts)i +(tak)n(e)f(a)g(di\033eren)n(t)h(approac)n(h)e(to)i(lev)n(el-0)e(fon)n +(ts.)64 b(They)37 b(do)f(not)515 3928 y(mak)n(e)28 b(the)h(assumption)g +(that)g(t)n(yp)r(esetting)g(means)f(simply)h(placing)g(placing)f +(glyphs)g(on)515 4027 y(the)37 b(baseline,)h(one)e(after)g(another.)62 +b(Example)37 b(applications)e(include)i(the)g(automatic)515 +4127 y(placemen)n(t)j(of)g(glue)g(b)r(et)n(w)n(een)g(c)n(haracters)e +(in)j(East)g(Asian)f(scripts,)j(the)e(building)f(of)515 +4227 y(consonen)n(tal)32 b(clusters)h(for)g(South-Asian)g(and)h +(South-East-Asian)f(scripts,)h(as)f(w)n(ell)h(as)515 +4326 y(the)28 b(placing)f(of)g(diacritics)g(in)h(Arabic)f(and)g +(Hebrew.)639 4426 y(Lev)n(el-1)c(fon)n(ts)g(are)g(di\033eren)n(t)h +(from)f(lev)n(el-0)g(fon)n(ts)h(at)f(three)h(lev)n(els.)35 +b(First,)24 b(they)g(allo)n(w)515 4525 y(the)k(de\034nition)g(of)f(six) +g(new)h(kinds)f(of)h(table:)639 4683 y Fp(\017)41 b Fe(iv)-10 +b(alue)28 b Fv(tables)f(con)n(tain)g(in)n(tegers.)639 +4845 y Fp(\017)41 b Fe(fv)-10 b(alue)22 b Fv(tables)e(con)n(tain)g +(\034xw)n(ord)g(v)-5 b(alues)20 b(that)h(do)g(not)g(gro)n(w)e(with)i +(magni\034cation.)639 5006 y Fp(\017)41 b Fe(mv)-10 b(alue)28 +b Fv(tables)f(con)n(tain)g(\034xw)n(ord)f(v)-5 b(alues)27 +b(that)h(do)g(gro)n(w)d(with)j(magni\034cation.)1905 +5255 y(12)p eop +%%Page: 13 13 +13 12 bop 639 523 a Fp(\017)41 b Fe(r)n(ule)27 b Fv(tables)h(con)n +(tain)e(T)1516 541 y(E)1563 523 y(X)i(rule)f(de\034nitions.)639 +678 y Fp(\017)41 b Fe(glue)28 b Fv(tables)f(con)n(tain)g(T)1522 +696 y(E)1568 678 y(X)h(glue)f(de\034nitions.)639 833 +y Fp(\017)41 b Fe(penal)-7 b(ty)29 b Fv(tables)f(con)n(tain)e(T)1660 +851 y(E)1707 833 y(X)i(p)r(enalt)n(y)f(de\034nitions.)639 +977 y(There)e(can)h(b)r(e)g(sev)n(eral)d(copies)i(of)h(eac)n(h)f(kind)g +(of)h(table,)g(but)g(for)f(the)h(momen)n(t,)g(there)515 +1077 y(is)h(a)g(maxim)n(um)h(of)f(32)g(new)h(tables)f(in)h(all.)639 +1176 y(These)41 b(new)g(tables)g(can)g(b)r(e)h(used)f(as)f(global)g +(tables,)45 b(or)40 b(can)h(b)r(e)g(indexed)h(on)e(a)515 +1276 y(c)n(haracter-b)n(y-c)n(haracter)21 b(basis)k(in)h(the)h +Fk(char-info-wor)l(d)37 b Fv(en)n(tries,)26 b(whic)n(h)g(de\034ne)g(c)n +(harac-)515 1375 y(ter)34 b(parameters.)55 b(So,)36 b(in)e(addition)g +(to)g(the)h(standard)e(parameters)g(of)h(width,)i(heigh)n(t,)515 +1475 y(depth)j(and)g(italic)g(correction,)h(additional)e(parameters)f +(\(of)i(the)g(six)g(kinds)g(outlined)515 1575 y(ab)r(o)n(v)n(e\))26 +b(can)h(b)r(e)h(giv)n(en)f(for)g(the)h(c)n(haracters.)639 +1674 y(T)-7 b(o)31 b(allo)n(w)f(these)i(new)f(tables)g(to)g(b)r(e)h +(used,)g(c)n(hanges)e(ha)n(v)n(e)g(also)h(b)r(een)g(made)h(to)f(the)515 +1774 y(lig-k)n(ern)26 b(table.)639 1918 y Fp(\017)41 +b Fv(Characters)22 b(can)i(b)r(e)h(put)f(in)n(to)g(equiv)-5 +b(alence)24 b(classes,)f(where)h(all)g(c)n(haracters)d(in)k(the)722 +2017 y(same)i(class)g(will)h(act)f(the)h(same)f(in)h(the)g(lig-k)n(ern) +e(table;)639 2172 y Fp(\017)41 b Fv(Glue)32 b(no)r(des,)f(rule)g(no)r +(des)f(and)h(p)r(enalt)n(y)g(no)r(des)g(can)f(b)r(e)i(inserted)e +(automatically)722 2272 y(in)n(to)e(the)g(stream,)e(exactly)h(as)g(for) +g(k)n(ern)g(no)r(des)g(in)h(T)2405 2290 y(E)2451 2272 +y(X.)639 2427 y Fp(\017)41 b Fv(The)d(lig-k)n(ern)e(program)f(can)i(b)r +(e)h(completely)f(replaced)f(b)n(y)h(an)h Fu(\012)p Fv(TP)f(\(see)h +(sec-)722 2527 y(tion)28 b(8\).)639 2671 y(No)n(w)i(w)n(e)f(b)r(egin)i +(with)f(the)h(\034rst)e(part)h(of)g(the)g(header)f(of)h(a)g(lev)n(el-1) +f Fu(\012)p Fv(FM)h(\034le.)44 b(Here)515 2770 y(are)22 +b(the)i(\034rst)f(17)g(w)n(ords)e(of)j(a)f(lev)n(el-1)f +Fu(\012)p Fv(FM)i(\034le.)35 b(Eac)n(h)23 b(en)n(try)g(b)r(elo)n(w)g +(is)g(a)g(32-bit)g(in)n(teger,)515 2870 y(non-negativ)n(e)j(and)h(less) +g(than)h Fu(2)1554 2840 y Fl(31)1624 2870 y Fv(.)722 +3014 y Fk(ofm-level)93 b Fu(=)83 b(1;)989 3138 y Fk(lf)101 +b Fu(=)83 b Fv(length)28 b(of)f(the)h(\034le,)g(in)g(w)n(ords)n +Fu(;)983 3263 y Fk(lh)90 b Fu(=)83 b Fv(length)28 b(of)f(the)h(header)f +(data,)g(in)h(w)n(ords)n Fu(;)976 3387 y Fk(b)l(c)88 +b Fu(=)83 b Fv(smallest)27 b(c)n(haracter)e(co)r(de)j(in)g(the)g(fon)n +(t)p Fu(;)976 3512 y Fk(e)l(c)88 b Fu(=)83 b Fv(largest)26 +b(c)n(haracter)f(co)r(de)j(in)g(the)g(fon)n(t)p Fu(;)943 +3636 y Fk(nw)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(width)g(table)p Fu(;)958 3761 y Fk(nh)89 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(heigh) +n(t)g(table)o Fu(;)956 3885 y Fk(nd)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er) +27 b(of)h(en)n(tries)f(in)g(the)h(depth)g(table)p Fu(;)973 +4010 y Fk(ni)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(italic)g(correction)e(table)o Fu(;)977 4134 +y Fk(nl)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g +(the)h(lig-k)n(ern)e(table)p Fu(;)960 4259 y Fk(nk)91 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(k)n +(ern)f(table)p Fu(;)962 4384 y Fk(ne)89 b Fu(=)83 b Fv(n)n(um)n(b)r(er) +27 b(of)h(en)n(tries)f(in)g(the)h(extensible)g(c)n(haracter)d(table)p +Fu(;)959 4508 y Fk(np)88 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(fon)n(t)f(parameter)f(w)n(ords)o Fu(;)770 4633 +y Fk(font-dir)92 b Fu(=)83 b Fv(direction)27 b(of)h(fon)n(t)o +Fu(;)925 4757 y Fk(nc)l(o)88 b Fu(=)83 b Fv(o\033set)27 +b(of)h(the)g(c)n(haracter)d(en)n(tries,)i(in)h(w)n(ords)o +Fu(;)904 4882 y Fk(ncw)92 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(c)n(haracter)d(info)j(w)n(ords)n Fu(;)926 5006 +y Fk(np)l(c)87 b Fu(=)c Fv(n)n(um)n(b)r(er)27 b(of)h(parameters)d(p)r +(er)j(c)n(haracter)n Fg(:)1905 5255 y Fv(13)p eop +%%Page: 14 14 +14 13 bop 515 523 a Fv(Most)34 b(of)h(the)f(en)n(tries)g(in)h(the)g +(\034rst)f(part)g(are)g(as)g(for)g(lev)n(el-0)f(fon)n(ts.)58 +b(The)34 b(new)h(en)n(tries)515 623 y(p)r(ertain)27 b(to)h(ho)n(w)f +(the)g Fk(char-info-wor)l(d)39 b Fv(en)n(tries)27 b(are)f(stored.)639 +789 y Fp(\017)41 b Fk(nc)l(o)6 b Fv(:)83 b(This)39 b(v)-5 +b(alue)39 b(giv)n(es)f(the)h(o\033set)g(in)n(to)g(the)h(\034le)f(for)g +(the)h(\034rst)f(w)n(ord)f(of)h(the)722 888 y Fk(char-info-wor)l(d)g +Fv(table.)h(The)28 b Fk(nc)l(o)34 b Fv(v)-5 b(alue)28 +b(is)g(required)f(b)n(y)h(output)h(driv)n(ers,)e(whic)n(h)722 +988 y(need)j(quic)n(k)f(access)f(to)i(the)g(c)n(haracters,)d(ev)n(en)i +(if)h(the)g(total)f(length)h(of)g(the)f(tables)722 1088 +y(preceding)e(them)h(is)g(not)f(easily)g(computed,.)639 +1254 y Fp(\017)41 b Fk(ncw)9 b Fv(:)83 b(Since)19 b(man)n(y)g(large)e +(fon)n(ts)i(ha)n(v)n(e)f(large)f(n)n(um)n(b)r(ers)i(of)g(consecutiv)n +(e)e(c)n(haracters)722 1353 y(with)31 b(iden)n(tical)e(metrics.)44 +b(These)30 b(are)f(compressed)f(in)j(lev)n(el-1)d(fon)n(ts,)j(and)e(so) +h(the)722 1453 y(n)n(um)n(b)r(er)24 b(of)g Fk(char-info-wor)l(d)35 +b Fv(en)n(tries)24 b(is)g(not)g(simply)g Fk(e)l(c)17 +b Fp(\000)12 b Fk(b)l(c)j Fu(+)d(1)p Fv(.)35 b(The)24 +b Fk(ncw)33 b Fv(v)-5 b(alue)722 1553 y(giv)n(es)23 b(the)h(n)n(um)n(b) +r(er)f(of)h(w)n(ords)e(used)i(for)f(c)n(haracter)f(information,)i(not)f +(the)h(n)n(um)n(b)r(er)722 1652 y(of)k(en)n(tries.)639 +1818 y Fp(\017)41 b Fk(np)l(c)5 b Fv(:)83 b(This)28 b(is)f(the)h(n)n +(um)n(b)r(er)f(of)h(extra)e(parameters)g(p)r(er)i(c)n(haracter.)639 +1984 y Fp(\017)41 b Fk(r)l(e)l(al-lf)19 b Fv(:)83 b(This)27 +b(w)n(ould)g(b)r(e)h(the)g(length)g(of)f(the)h(\034le,)g(w)n(ere)f +(there)g(no)g(compression.)639 2150 y(The)g(next)g(t)n(w)n(elv)n(e)f +(en)n(tries)g(come)h(in)g(pairs.)35 b(F)-7 b(or)26 b(eac)n(h)h(kind)g +(of)f(parameter)g(\()p Fe(iv)-10 b(alue)p Fv(,)515 2250 +y Fe(fv)g(alue)p Fv(,)21 b Fe(mv)-10 b(alue)p Fv(,)21 +b Fe(r)n(ule)p Fv(,)g Fe(glue)p Fv(,)g Fe(penal)-7 b(ty)r +Fv(\),)21 b(the)e(\034rst)g(en)n(try)g(states)g(ho)n(w)g(man)n(y)f +(tables)515 2350 y(of)39 b(that)h(kind)g(there)f(are,)j(and)d(the)h +(second)f(states)g(ho)n(w)g(man)n(y)g(w)n(ords)f(these)h(tables)515 +2449 y(require.)780 2615 y Fk(nki)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)34 b Fe(iv)-10 b(alue)28 b Fv(tables)o Fu(;)763 +2740 y Fk(nwi)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e +(for)h Fe(iv)-10 b(alue)28 b Fv(tables)o Fu(;)770 2864 +y Fk(nkf)101 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 +b Fe(fv)-10 b(alue)28 b Fv(tables)p Fu(;)753 2989 y Fk(nwf)101 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h +Fe(fv)-10 b(alue)28 b Fv(tables)p Fu(;)739 3113 y Fk(nkm)89 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 b Fe(mv)-10 +b(alue)28 b Fv(tables)o Fu(;)722 3238 y Fk(nwm)89 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h Fe(mv)-10 +b(alue)28 b Fv(tables)o Fu(;)770 3362 y Fk(nkr)91 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)34 b Fe(r)n(ule)27 b Fv(tables)p +Fu(;)753 3487 y Fk(nwr)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(w)n(ords)e(for)h Fe(r)n(ule)g Fv(tables)p Fu(;)768 +3611 y Fk(nkg)90 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 +b Fe(glue)28 b Fv(tables)o Fu(;)751 3736 y Fk(nwg)90 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h +Fe(glue)h Fv(tables)o Fu(;)766 3861 y Fk(nkp)88 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)34 b Fe(penal)-7 b(ty)29 +b Fv(tables)p Fu(;)749 3985 y Fk(nwp)88 b Fu(=)83 b Fv(n)n(um)n(b)r(er) +27 b(of)h(w)n(ords)e(for)h Fe(penal)-7 b(ty)29 b Fv(tables)p +Fg(:)639 4151 y Fv(W)-7 b(e)24 b(m)n(ust)g(ha)n(v)n(e)f(that)h +Fk(b)l(c)15 b Fp(\000)c Fu(1)22 b Fp(\024)h Fk(e)l(c)28 +b Fp(\024)23 b Fu(65535)p Fv(.)33 b(F)-7 b(urthermore,)23 +b(the)h(follo)n(wing)f(iden)n(tit)n(y)515 4251 y(m)n(ust)k(hold:)722 +4417 y Fk(lf)102 b Fu(=)82 b(29)18 b(+)g Fk(lh)25 b Fu(+)18 +b Fk(ncw)28 b Fu(+)18 b Fk(nw)27 b Fu(+)18 b Fk(nh)25 +b Fu(+)18 b Fk(nd)27 b Fu(+)18 b Fk(ni)27 b Fu(+)1017 +4541 y(2)18 b Fp(\003)g Fk(nl)27 b Fu(+)18 b Fk(nk)27 +b Fu(+)18 b(2)g Fp(\003)g Fk(ne)25 b Fu(+)18 b Fk(np)24 +b Fu(+)1017 4666 y Fk(nki)j Fu(+)18 b Fk(nwi)28 b Fu(+)18 +b Fk(nkf)36 b Fu(+)18 b Fk(nwf)36 b Fu(+)18 b Fk(nkm)25 +b Fu(+)18 b Fk(nwm)24 b Fu(+)1017 4790 y Fk(nkr)j Fu(+)18 +b Fk(nwr)28 b Fu(+)18 b Fk(nkg)25 b Fu(+)18 b Fk(nwg)26 +b Fu(+)18 b Fk(nkp)24 b Fu(+)18 b Fk(nwp)6 b Fg(:)515 +4956 y Fv(Finally)-7 b(,)27 b(the)h(sum)g Fk(nki)f Fu(+)18 +b Fk(nkf)37 b Fu(+)18 b Fk(nkm)24 b Fu(+)18 b Fk(nkr)27 +b Fu(+)18 b Fk(nkg)26 b Fu(+)18 b Fk(nkp)33 b Fv(m)n(ust)28 +b(b)r(e)g(less)f(than)h(32.)1905 5255 y(14)p eop +%%Page: 15 15 +15 14 bop 639 523 a Fv(The)29 b(rest)f(of)h(the)g(\034le)g(is)f(comp)r +(osed)g(of)h(a)f(n)n(um)n(b)r(er)h(of)g(arra)n(ys.)37 +b(The)29 b(new)g(parameter)515 623 y(tables)e(are)g(placed)h(b)r(efore) +g(the)g(standard)f(dimension)h(tables,)g(as)f(it)i(is)f(di\036cult)g +(to)g(esti-)515 722 y(mate)c(space)g(requiremen)n(ts)g(without)h(ha)n +(ving)e(read)h(the)h(new)g(tables.)36 b(F)-7 b(urthermore,)24 +b(the)515 822 y(c)n(haracter)g(parameter)h(indices)h(in)h(the)g +Fk(char-info-wor)l(d)37 b Fv(en)n(tries)26 b(are)f(relativ)n(e)h(and)g +(m)n(ust)515 922 y(b)r(e)i(translated)e(in)n(to)i(an)f(absolute)g +(reference)f(in)n(to)i(the)g(tables.)1277 1193 y Fk(he)l(ader)93 +b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(lh)e +Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(stu\033)1186 1317 +y(ivalue-no)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p +Fk(nki)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1186 +1442 y(fvalue-no)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkf)36 b Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1144 +1566 y(mvalue-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkm)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1257 +1691 y(rule-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkr)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1254 +1815 y(glue-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkg)e Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1273 +1940 y(p)l(en-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkp)c Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1019 +2064 y(ivalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(ivalue-no)5 b Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(inte)l(ger)1603 2177 y Fv(.)1603 +2210 y(.)1603 2244 y(.)799 2368 y Fk(ivalue-table)7 b +Fu([)p Fk(nki)27 b Fp(\000)18 b Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(ivalue-no)5 b Fu([)p Fk(nki)28 b +Fp(\000)18 b Fu(1])g Fp(\000)g Fu(1])k Ff(of)32 b Fk(inte)l(ger)1019 +2493 y(fvalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(fvalue-no)5 b Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1603 2605 y Fv(.)1603 +2639 y(.)1603 2672 y(.)807 2796 y Fk(fvalue-table)8 b +Fu([)p Fk(nkf)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(fvalue-no)5 b Fu([)p Fk(nkf)19 b +Fp(\000)f Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)976 +2921 y(mvalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(mvalue-no)5 b Fu([0])18 b Fp(\000)g +Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)1603 3033 y Fv(.)1603 +3067 y(.)1603 3100 y(.)722 3224 y Fk(mvalue-table)7 b +Fu([)p Fk(nkm)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(mvalue-no)5 b Fu([)p Fk(nkm)18 b +Fp(\000)g Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)1090 +3349 y(rule-table)6 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(rule-no)t Fu([0])18 b Fp(\000)g +Fu(1])23 b Ff(of)32 b Fk(rule-entry)1603 3461 y Fv(.)1603 +3495 y(.)1603 3528 y(.)869 3652 y Fk(rule-table)6 b Fu([)p +Fk(nkr)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 b +Fu([0)p Fg(::)p Fk(rule-no)t Fu([)p Fk(nkr)19 b Fp(\000)f +Fu(1])g Fp(\000)g Fu(1])k Ff(of)32 b Fk(rule-entry)1087 +3777 y(glue-table)6 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(glue-no)5 b Fu([0])18 b Fp(\000)g +Fu(1])k Ff(of)32 b Fk(glue-entry)1603 3889 y Fv(.)1603 +3923 y(.)1603 3956 y(.)862 4080 y Fk(glue-table)7 b Fu([)p +Fk(nkg)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 b +Fu([0)p Fg(::)p Fk(glue-no)5 b Fu([)p Fk(nkg)18 b Fp(\000)g +Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(glue-entry)1106 +4205 y(p)l(en-table)6 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(p)l(en-no)t Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(inte)l(ger)1603 4317 y Fv(.)1603 +4351 y(.)1603 4384 y(.)877 4508 y Fk(p)l(en-table)7 b +Fu([)p Fk(nkp)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(p)l(en-no)t Fu([)p Fk(nkp)19 b Fp(\000)f +Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1187 +4633 y(char-info)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(ncw)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(char-info-wor)l(d) +1321 4757 y(width)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nw)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1298 +4882 y(height)92 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nh)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d) +1321 5006 y(depth)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nd)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1905 +5255 y Fv(15)p eop +%%Page: 16 16 +16 15 bop 1335 523 a Fk(italic)89 b Fu(:)83 b Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(ni)f Fp(\000)18 b Fu(1])23 b Ff(of)32 +b Fk(\034x-wor)l(d)1241 648 y(lig-kern)90 b Fu(:)83 b +Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(nl)f Fp(\000)18 b +Fu(1])23 b Ff(of)32 b Fk(lig-kern-c)l(ommand)1356 772 +y(kern)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p +Fk(nk)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1325 +897 y(exten)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p +Fk(ne)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(extensible-r)l(e)l(cip)l +(e)1292 1021 y(p)l(ar)l(am)90 b Fu(:)83 b Ff(arra)m(y)27 +b Fu([1)p Fg(::)p Fk(np)5 b Fu(])23 b Ff(of)32 b Fk(\034x-wor)l(d)639 +1204 y Fv(So,)f(for)f(parameter)f Fg(x)p Fv(,)j(there)f(is)f(a)g(table) +h Fk(x-no)t Fv(,)g(of)g(length)g Fk(nkx)9 b Fv(,)31 b(giving)f(the)h +(size)f(of)515 1303 y(eac)n(h)21 b(table.)34 b(In)22 +b(addition,)h(there)e(are)g Fk(nkx)31 b Fv(tables)21 +b(con)n(taining)g(the)h(actual)f(en)n(tries,)h(where)515 +1403 y(the)28 b Fg(i)p Fv(-th)f(table)h(is)f(of)h(length)f +Fk(x-no)5 b Fu([)p Fg(i)p Fu(])p Fv(.)639 1503 y(The)39 +b(only)f(parameter)f(en)n(tries)h(with)h(an)f(unclear)g(structure)f +(are)h Fk(rule-entry)45 b Fv(and)515 1602 y Fk(glue-entry)7 +b Fv(.)639 1785 y Fp(\017)41 b Fv(Eac)n(h)28 b Fk(rule-entry)34 +b Fv(uses)27 b(three)h(w)n(ords)e(\(12)h(o)r(ctets\):)772 +1941 y(1st)g(w)n(ord)126 b Fk(width)k Fv(32)26 b(bits)100 +b(\034xw)n(ord)772 2040 y(2nd)27 b(w)n(ord)99 b Fk(height)109 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)772 2140 y(3rd)27 +b(w)n(ord)112 b Fk(depth)130 b Fv(32)26 b(bits)100 b(\034xw)n(ord)722 +2292 y(The)25 b(in)n(terpretation)e(of)i(the)f(v)-5 b(alues)24 +b(should)h(b)r(e)f(clear.)35 b(If)25 b(one)f(of)g(the)h(three)g(v)-5 +b(alues)722 2392 y(is)22 b(0,)g(then)g(it)g(can)g(stretc)n(h)f(in)h +(the)f(appropriate)f(direction,)j(as)e(is)g(standard)g(in)g(T)3247 +2410 y(E)3294 2392 y(X.)639 2558 y Fp(\017)41 b Fv(Eac)n(h)28 +b Fk(glue-entry)34 b Fv(uses)27 b(four)g(w)n(ords)g(\(16)g(o)r +(ctets\):)772 2713 y(1st)g(w)n(ord)126 b Fk(subtyp)l(e)407 +b Fv(4)27 b(bits)100 b(\(0\0253\))1211 2813 y Fk(ar)l(gument-kind)149 +b Fv(4)27 b(bits)100 b(\(0\0252\))1211 2913 y Fk(str)l(etch-or)l(der) +211 b Fv(4)27 b(bits)100 b(\(0\0254\))1211 3012 y Fk(shrink-or)l(der) +229 b Fv(4)27 b(bits)100 b(\(0\0254\))1211 3112 y Fk(char-rule)301 +b Fv(16)26 b(bits)772 3211 y(2nd)h(w)n(ord)99 b Fk(width)435 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)772 3311 y(3rd)27 +b(w)n(ord)112 b Fk(str)l(etch)388 b Fv(32)26 b(bits)100 +b(\034xw)n(ord)772 3411 y(4th)28 b(w)n(ord)112 b Fk(shrink)406 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)815 3613 y Fj(\025)42 +b Fk(subtyp)l(e)34 b Fv(is)27 b(one)g(of)955 3747 y(0)99 +b Fk(normal)955 3847 y Fv(1)g Fk(a-le)l(aders)955 3946 +y Fv(2)g Fk(c-le)l(aders)955 4046 y Fv(3)g Fk(x-le)l(aders)815 +4198 y Fj(\025)42 b Fk(ar)l(gument-kind)36 b Fv(is)27 +b(one)g(of)955 4333 y(0)99 b Fk(sp)l(ac)l(e)955 4432 +y Fv(1)g Fk(rule)34 b Fv(\()p Fk(subtyp)l(e)g Fv(m)n(ust)27 +b(b)r(e)h(leader\))955 4532 y(2)99 b Fk(char)l(acter)38 +b Fv(\()p Fk(subtyp)l(e)c Fv(m)n(ust)27 b(b)r(e)h(leader\))1905 +5255 y(16)p eop +%%Page: 17 17 +17 16 bop 815 523 a Fj(\025)42 b Fk(str)l(etch-or)l(der)37 +b Fv(and)27 b Fk(shrink-or)l(der)38 b Fv(are)26 b(one)i(of)955 +638 y(0)99 b Fk(normal)955 738 y Fv(1)g Fk(\034)955 837 +y Fv(2)g Fk(\034l)955 937 y Fv(3)g Fk(\034l)t(l)955 1037 +y Fv(4)g Fk(\034l)t(l)t(l)815 1183 y Fj(\025)42 b Fg(n)23 +b Fu(=)f Fk(char-rule)35 b Fv(dep)r(ends)28 b(on)f(the)h(v)-5 +b(alue)28 b(of)f Fk(ar)l(gument-kind)8 b Fv(:)954 1309 +y(0.)41 b(0;)954 1422 y(1.)g Fg(n)p Fv(-th)28 b(rule)f(in)h(rule)f +(table)h(0;)954 1535 y(2.)41 b Fg(n)p Fv(-c)n(haracter)25 +b(in)j(fon)n(t.)722 1705 y(The)38 b(explanation)f(here)g(only)g(really) +g(mak)n(es)g(sense)g(if)h(the)g(reader)f(has)g(a)g(clear)722 +1805 y(understanding)32 b(of)g(ho)n(w)f(glue)h(no)r(des)g(are)f(built)i +(in)f(T)2459 1823 y(E)2505 1805 y(X.)51 b(More)31 b(detailed)h(do)r +(cu-)722 1904 y(men)n(tation)c(is)f(forthcoming.)639 +2071 y(The)i(new)g Fk(char-info-wor)l(d)39 b Fv(arra)n(y)26 +b(is)j(of)f(great)g(in)n(terest.)39 b(Its)29 b(length)f(is)h(not)f +(directly)515 2171 y(computable)35 b(from)h(the)g(n)n(um)n(b)r(er)g(of) +g(c)n(haracters)d(in)j(the)h(fon)n(t.)62 b(Eac)n(h)35 +b Fk(char-info-wor)l(d)515 2270 y Fv(en)n(try)e(con)n(tains)h(a)g +(minim)n(um)g(of)h(12)e(o)r(ctets,)j(and)e(is)g(in)h(an)n(y)e(case)h(a) +f(m)n(ultiple)i(of)g(four)515 2370 y(o)r(ctets.)i(Eac)n(h)27 +b(en)n(try)g(is)g(as)g(follo)n(ws:)689 2488 y(1st)g(w)n(ord)126 +b Fk(width)339 b Fv(16)27 b(bits)1128 2587 y Fk(height)359 +b Fv(8)28 b(bits)1128 2687 y Fk(depth)380 b Fv(8)28 b(bits)p +639 2720 1831 4 v 689 2790 a(2nd)f(w)n(ord)99 b Fk(italic)393 +b Fv(8)28 b(bits)1128 2890 y Fk(RFU)395 b Fv(5)28 b(bits)1128 +2989 y Fk(ext-tag)362 b Fv(1)27 b(bit)1128 3089 y Fk(tag)464 +b Fv(2)28 b(bits)1128 3189 y Fk(r)l(emainder)165 b Fv(16)27 +b(bits)p 639 3222 V 1128 3292 a Fk(no-r)l(ep)l(e)l(ats)167 +b Fv(16)27 b(bits)1128 3391 y Fk(p)l(ar)l(am)1356 3411 +y Fl(0)1659 3391 y Fv(16)g(bits)1128 3491 y(.)14 b(.)g(.)1128 +3590 y Fk(p)l(ar)l(am)1356 3611 y Fd(np)m(c)s Fc(\000)p +Fd(1)1659 3590 y Fv(16)27 b(bits)1128 3692 y Fk(p)l(adding)257 +b Fv(16)27 b(bits)99 b(if)28 b(necessary)515 3811 y(where)f +Fk(np)l(c)32 b Fv(is)c(the)g(n)n(um)n(b)r(er)f(of)g(c)n(haracters)f(p)r +(er)h(parameter.)639 3910 y(The)h Fk(r)l(ep)l(e)l(at)36 +b Fv(en)n(try)27 b(allo)n(ws)g(one)g(to)h(state)f(that)h(the)h(follo)n +(wing)f Ft(no-repeats)23 b Fv(c)n(harac-)515 4010 y(ters)e(ha)n(v)n(e)g +(iden)n(tical)g(attributes,)i(thereb)n(y)f(allo)n(wing)e(the)i +Fu(\012)p Fv(FM)g(\034le)g(to)g(b)r(e)g(m)n(uc)n(h)g(smaller.)515 +4110 y(This)j(attribute)g(is)h(essen)n(tial)e(for)h(Chinese,)g +(Japanese)f(and)h(K)n(orean)e(ideogram)h(fon)n(ts.)36 +b(In)515 4209 y(other)23 b(w)n(ords,)g(this)g Fk(char-info-wor)l(d)35 +b Fv(en)n(try)23 b(is)g(relev)-5 b(an)n(t)23 b(to)g Fu(\()p +Fk(no-r)l(ep)l(e)l(ats)17 b Fu(+)10 b(1\))23 b Fv(c)n(haracters.)639 +4309 y(If)33 b(the)f Fk(ext-tag)38 b Fv(bit)33 b(is)e(on,)i(then)f(the) +h(lig-k)n(ern)d(en)n(try)h(p)r(oin)n(ted)h(to)g(b)n(y)f +Fk(r)l(emainder)42 b Fv(is)515 4408 y(shared)27 b(with)j(all)e(the)h +(other)f(c)n(haracters)e(in)j(its)g Fk(e)l(quivalenc)l(e)j(class)p +Fv(,)d(whic)n(h)g(corresp)r(onds)515 4508 y(to)e Fk(p)l(ar)l(am)844 +4528 y Fl(0)909 4508 y Fv(if)h(there)g(exists)f(an)g +Fe(iv)-10 b(alue)28 b Fv(table.)639 4608 y(W)-7 b(e)35 +b(are)f(no)n(w)g(ready)g(for)g(the)h(c)n(hanged)f(lig-k)n(ern)f(table.) +58 b(There)34 b(are)g(four)g(new)h(in-)515 4707 y(structions,)i(whic)n +(h)f(can)f(b)r(e)i(distinguished)f(b)n(y)f(the)i(fact)f(that)g(the)g +(0-th)g(16-bit)f(en)n(try)515 4807 y(\()p Fk(skip-byte)7 +b Fv(\))34 b(is)f(exactly)f(256.)53 b(In)33 b(that)h(case,)g(then)f +(the)h(1st)f(16-bit)f(en)n(try)h(\()p Fk(next-char)9 +b Fv(\))515 4907 y(de\034nes)31 b(an)g(equiv)-5 b(alence)30 +b(class.)47 b(If)32 b(the)f(next)h(c)n(haracter)d(is)i(of)g(that)g +(equiv)-5 b(alence)31 b(class,)515 5006 y(then)d(the)g(2nd)f(16-bit)g +(en)n(try)g(\(the)h Fk(op-byte)7 b Fv(\))28 b(is)g(in)n(terpreted)f(as) +f(follo)n(ws:)1905 5255 y(17)p eop +%%Page: 18 18 +18 17 bop 575 523 a Fv(17.)40 b(A)n(dd)28 b(the)g(glue)f(no)r(de)h +(de\034ned)g(b)n(y)f(en)n(try)g Fk(r)l(emainder)38 b +Fv(in)27 b(the)h(0-th)g(glue)f(table.)575 689 y(18.)40 +b(A)n(dd)g(the)g(p)r(enalt)n(y)f(no)r(de)g(de\034ned)h(b)n(y)f(en)n +(try)g Fk(r)l(emainder)49 b Fv(in)40 b(the)f(0-th)g(p)r(enalt)n(y)722 +789 y(table.)575 955 y(19.)h(A)n(dd)25 b(the)f(p)r(enalt)n(y)h(no)r(de) +f(de\034ned)g(b)n(y)g(en)n(try)g Fk(r)l(emainder)10 b +Fg(=)p Fu(256)22 b Fv(in)j(the)f(0-th)g(p)r(enalt)n(y)722 +1054 y(table,)h(then)f(add)f(the)h(glue)f(no)r(de)h(de\034ned)g(b)n(y)f +(en)n(try)g Fk(r)l(emainder)33 b Fv(mo)r(de)23 b Fu(256)f +Fv(in)i(the)722 1154 y(0-th)k(glue)f(table.)575 1320 +y(20.)40 b(A)n(dd)28 b(the)g(k)n(ern)f(no)r(de)g(de\034ned)h(b)n(y)g +(en)n(try)e Fk(r)l(emainder)38 b Fv(in)28 b(the)g(0-th)f(m)n(v)-5 +b(alue)27 b(table.)515 1552 y Fm(7.6)112 b(Lev)m(el-1)37 +b Fh(\012)p Fm(PL)h(\034les)639 1706 y Fv(The)24 b(lev)n(el-1)e +Fu(\012)p Fv(PL)i(\034les)f(are)g(the)h(text)g(v)n(ersions)d(of)j(lev)n +(el-1)e Fu(\012)p Fv(FM)i(\034les.)35 b(Hence,)25 b(lev)n(el-)515 +1805 y(1)30 b Fu(\012)p Fv(PL)i(\034les)e(con)n(tain)g(six)h(kinds)g +(of)g(new)g(tables:)43 b(in)n(teger)30 b(\()p Fe(iv)-10 +b(alue)p Fv(\),)32 b(\034xed)f(\()p Fe(fv)-10 b(alue)p +Fv(\),)515 1905 y(magni\034able)24 b(\034xed)i(\()p Fe(mv)-10 +b(alue)p Fv(\),)26 b(rule)f(\()p Fe(r)n(ule)p Fv(\),)h(glue)f(\()p +Fe(glue)p Fv(\))i(and)e Fe(penal)-7 b(ty)r Fv(\))25 b(tables.)36 +b(In)515 2005 y(addition,)29 b(the)g(c)n(haracter)e(en)n(tries)i(can)f +(include)i(new)f(parameters,)f(whic)n(h)g(can)h(then)h(b)r(e)515 +2104 y(used)d(in)h(the)g(extended)g(lig-k)n(ern)e(table.)639 +2204 y(W)-7 b(e)25 b(b)r(egin)f(with)h(the)f(new)h(tables.)35 +b(These)24 b(extra)f(tables)h(are)f(n)n(um)n(b)r(ered)h(within)h(eac)n +(h)515 2303 y(class,)h(from)h(0)g(to)g Fg(n)18 b Fp(\000)f +Fu(1)p Fv(,)27 b(where)g Fg(n)g Fv(is)g(the)h(n)n(um)n(b)r(er)f(of)g +(tables)g(in)h(that)f(class.)36 b(T)-7 b(o)27 b(de\034ne,)515 +2403 y(sa)n(y)-7 b(,)26 b(the)i(\034fth)h Fe(iv)-10 b(alue)27 +b Fv(table,)h(one)f(b)r(egins)h(as)e(follo)n(ws:)847 +2502 y Fb(\000)885 2569 y Ft(FONTIVALUE)39 b(H)k(5)h +Fp(h)p Fk(table-de\034nition)7 b Fp(i)2148 2502 y Fb(\001)639 +2735 y Fv(The)28 b(instructions)f(for)g(de\034ning)h(tables)f(are)888 +2829 y Fb(\000)926 2897 y Ft(FONTIVALUE)123 b Fp(h)p +Fk(table-no)6 b Fp(i)83 b(h)p Fk(table-de\034nition)7 +b Fp(i)2537 2829 y Fb(\001)888 2930 y(\000)926 2997 y +Ft(FONTFVALUE)123 b Fp(h)p Fk(table-no)6 b Fp(i)83 b(h)p +Fk(table-de\034nition)7 b Fp(i)2537 2930 y Fb(\001)888 +3030 y(\000)926 3097 y Ft(FONTMVALUE)123 b Fp(h)p Fk(table-no)6 +b Fp(i)83 b(h)p Fk(table-de\034nition)7 b Fp(i)2537 3030 +y Fb(\001)888 3131 y(\000)926 3198 y Ft(FONTRULE)211 +b Fp(h)p Fk(table-no)6 b Fp(i)83 b(h)p Fk(table-de\034nition)7 +b Fp(i)2537 3131 y Fb(\001)888 3231 y(\000)926 3298 y +Ft(FONTGLUE)211 b Fp(h)p Fk(table-no)6 b Fp(i)83 b(h)p +Fk(table-de\034nition)7 b Fp(i)2537 3231 y Fb(\001)888 +3332 y(\000)926 3399 y Ft(FONTPENALTY)79 b Fp(h)p Fk(table-no)6 +b Fp(i)83 b(h)p Fk(table-de\034nition)7 b Fp(i)2537 3332 +y Fb(\001)639 3561 y Fv(The)26 b(prop)r(ert)n(y)f(lists)g(for)h(these)f +(tables)h(con)n(tain)f(as)g(man)n(y)g(en)n(tries)g(as)g(there)h(are)f +(slots)515 3660 y(in)31 b(the)g(table.)47 b(So)30 b(the)h(fourth)g(en)n +(try)-7 b(,)31 b(starting)f(from)h(0,)g(in)g(a)f(glue)h(table)g(w)n +(ould)f(b)r(egin)515 3760 y(as)d(follo)n(ws:)847 3859 +y Fb(\000)885 3926 y Ft(GLUE)42 b(H)h(4)g Fp(h)p Fk(glue-de\034nition)7 +b Fp(i)1861 3859 y Fb(\001)639 4092 y Fv(The)28 b(instructions)f(for)g +(de\034ning)h(en)n(tries)e(are:)888 4186 y Fb(\000)926 +4253 y Ft(IVALUE)124 b Fp(h)p Fk(entry-no)5 b Fp(i)84 +b(h)p Fk(ivalue-de\034nition)8 b Fp(i)2426 4186 y Fb(\001)888 +4287 y(\000)926 4354 y Ft(FVALUE)124 b Fp(h)p Fk(entry-no)5 +b Fp(i)84 b(h)p Fk(fvalue-de\034nition)8 b Fp(i)2426 +4287 y Fb(\001)888 4387 y(\000)926 4454 y Ft(MVALUE)124 +b Fp(h)p Fk(entry-no)5 b Fp(i)84 b(h)p Fk(mvalue-de\034nition)7 +b Fp(i)2468 4387 y Fb(\001)888 4488 y(\000)926 4555 y +Ft(RULE)212 b Fp(h)p Fk(entry-no)5 b Fp(i)84 b(h)p Fk +(rule-de\034nition)7 b Fp(i)2355 4488 y Fb(\001)888 4588 +y(\000)926 4655 y Ft(GLUE)212 b Fp(h)p Fk(entry-no)5 +b Fp(i)84 b(h)p Fk(glue-de\034nition)7 b Fp(i)2358 4588 +y Fb(\001)888 4688 y(\000)926 4756 y Ft(PENALTY)80 b +Fp(h)p Fk(entry-no)5 b Fp(i)84 b(h)p Fk(p)l(enalty-de\034nition)7 +b Fp(i)2470 4688 y Fb(\001)1905 5255 y Fv(18)p eop +%%Page: 19 19 +19 18 bop 639 523 a Fv(No)n(w)32 b(w)n(e)h(come)f(to)g(the)h +(de\034nitions)g(of)f(the)h(individual)g(en)n(tries.)51 +b(The)33 b(four)f(simple)515 623 y(ones)26 b(are)f(for)h +Fe(iv)-10 b(alue)p Fv(,)27 b Fe(fv)-10 b(alue)p Fv(,)28 +b Fe(mv)-10 b(alue)26 b Fv(and)h Fe(penal)-7 b(ty)p Fv(,)27 +b(whic)n(h)f(are)g(as)g(follo)n(ws:)35 b(The)515 722 +y(instructions)27 b(for)g(de\034ning)g(en)n(tries)g(are:)888 +814 y Fb(\000)926 881 y Ft(IVALUEVAL)123 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)1763 814 y Fb(\001)888 914 y(\000)926 982 y Ft(FVALUEVAL)123 +b Fp(h)p Fk(r)l(e)l(al)9 b Fp(i)1646 914 y Fb(\001)888 +1015 y(\000)926 1082 y Ft(MVALUEVAL)123 b Fp(h)p Fk(r)l(e)l(al)9 +b Fp(i)1646 1015 y Fb(\001)888 1115 y(\000)926 1183 y +Ft(PENALTYVAL)79 b Fp(h)p Fk(inte)l(ger)9 b Fp(i)1763 +1115 y Fb(\001)639 1342 y Fv(with)28 b(some)f(examples:)733 +1505 y Ft(\(IVALUEVAL)39 b(H)k(42\))733 1605 y(\(PENALTYVAL)c(D)k +(1000\))733 1705 y(\(FVALUEVAL)c(R)k(42.0\))733 1804 +y(\(MVALUEVAL)c(R)k(42.0\))639 1968 y Fv(whic)n(h)29 +b(de\034ne)g(an)g(in)n(teger)f(v)-5 b(alue)29 b(of)g(hex-42,)f(a)g(p)r +(enalt)n(y)h(v)-5 b(alue)29 b(of)g(1000,)e(a)i(\034x-w)n(ord)515 +2067 y(v)-5 b(alue)27 b(of)h(42.0,)e(and)h(a)h(magni\034able)e(\034x-w) +n(ord)g(v)-5 b(alue)28 b(of)f(42.0.)639 2167 y(A)h Fp(h)p +Fk(rule-de\034nition)7 b Fp(i)28 b Fv(con)n(tains)e(three)i(comp)r +(onen)n(ts,)f(eac)n(h)g(defaulting)g(to)h(0:)888 2263 +y Fb(\000)926 2331 y Ft(RULEWD)81 b Fp(h)p Fk(r)l(e)l(al)9 +b Fp(i)1472 2263 y Fb(\001)888 2364 y(\000)926 2431 y +Ft(RULEHT)81 b Fp(h)p Fk(r)l(e)l(al)9 b Fp(i)1472 2364 +y Fb(\001)888 2464 y(\000)926 2531 y Ft(RULEDP)81 b Fp(h)p +Fk(r)l(e)l(al)9 b Fp(i)1472 2464 y Fb(\001)639 2691 y +Fv(The)30 b(most)f(complex)g(en)n(tries)f(are)h(for)g(glue,)g(whic)n(h) +g(can)g(tak)n(e)g(sev)n(eral)f(instructions.)515 2790 +y(The)f(\034rst)h(few)g(instructions)f(should)g(b)r(e)h(clear:)888 +2866 y Fb(\000)926 2933 y Ft(GLUEWD)517 b Fp(h)p Fk(r)l(e)l(al)9 +b Fp(i)1908 2866 y Fb(\001)888 2966 y(\000)926 3034 y +Ft(GLUESTRETCH)297 b Fp(h)p Fk(r)l(e)l(al)9 b Fp(i)1908 +2966 y Fb(\001)888 3067 y(\000)926 3134 y Ft(GLUESHRINK)341 +b Fp(h)p Fk(r)l(e)l(al)9 b Fp(i)1908 3067 y Fb(\001)888 +3167 y(\000)926 3234 y Ft(GLUESTRETCHORDER)77 b Fp(h)p +Fk(or)l(der)10 b Fp(i)1969 3167 y Fb(\001)888 3268 y(\000)926 +3335 y Ft(GLUESHRINKORDER)121 b Fp(h)p Fk(or)l(der)10 +b Fp(i)1969 3268 y Fb(\001)639 3499 y Fv(where)27 b Fp(h)p +Fk(or)l(der)10 b Fp(i)28 b Fv(is)g(one)f(of)34 b Ft(UNIT)p +Fv(,)26 b Ft(FI)p Fv(,)h Ft(FIL)p Fv(,)f Ft(FILL)p Fv(,)g +Ft(FILLL)p Fv(.)639 3599 y(No)n(w,)h(glue)h(can)f(either)g(b)r(e)h +(blank,)f(or)g(consist)g(of)h(a)f(leader:)888 3695 y +Fb(\000)926 3762 y Ft(GLUETYPE)80 b Fp(h)p Fk(kind)10 +b Fp(i)1584 3695 y Fb(\001)639 3926 y Fv(where)30 b Fp(h)p +Fk(kind)10 b Fp(i)30 b Fv(is)h(one)e(of)37 b Ft(NORMAL)p +Fv(,)28 b Ft(ALEADERS)p Fv(,)f Ft(CLEADERS)p Fv(,)g Ft(XLEADERS)p +Fv(.)g(If)k(a)f(leader)515 4026 y(is)d(c)n(hosen,)g(then)h(one)f(of)h +(the)g(follo)n(wing)e(alternativ)n(es)g(can)h(b)r(e)h(giv)n(en:)888 +4117 y Fb(\000)926 4184 y Ft(GLUERULE)80 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)1676 4117 y Fb(\001)888 4218 y(\000)926 4285 y +Ft(GLUECHAR)80 b Fp(h)p Fk(inte)l(ger)9 b Fp(i)1676 4218 +y Fb(\001)639 4444 y Fv(W)-7 b(e)28 b(giv)n(e)f(b)r(elo)n(w)g(the)h +(tables)f(for)g(an)h(initial)f(test)h(with)g(East)g(Asian)f(fon)n(ts:) +733 4608 y Ft(\(FONTIVALUE)39 b(H)k(0)863 4707 y(\(IVALUE)e(H)i(0)994 +4807 y(\(IVALUEVAL)c(H)44 b(0\))994 4907 y(\))863 5006 +y(\(IVALUE)d(H)i(1)1905 5255 y Fv(19)p eop +%%Page: 20 20 +20 19 bop 994 523 a Ft(\(IVALUEVAL)39 b(H)44 b(1\))994 +623 y(\))863 722 y(\(IVALUE)d(H)i(2)994 822 y(\(IVALUEVAL)c(H)44 +b(2\))994 922 y(\))863 1021 y(\(IVALUE)d(H)i(3)994 1121 +y(\(IVALUEVAL)c(H)44 b(3\))994 1220 y(\))863 1320 y(\))733 +1420 y(\(FONTGLUE)39 b(H)44 b(0)863 1519 y(\(GLUE)e(H)h(0)994 +1619 y(\(GLUETYPE)d(H)j(0\))994 1719 y(\(GLUESTRETCHORDE)o(R)37 +b(NORMAL\))994 1818 y(\(GLUESHRINKORDER)g(NORMAL\))994 +1918 y(\(GLUEWD)k(R)i(0.0\))994 2017 y(\(GLUESTRETCH)c(R)k(0.0\))994 +2117 y(\(GLUESCHRINK)c(R)k(0.0\))863 2217 y(\))863 2316 +y(\(GLUE)f(H)h(1)994 2416 y(\(GLUETYPE)d(H)j(0\))994 +2516 y(\(GLUESTRETCHORDE)o(R)37 b(NORMAL\))994 2615 y +(\(GLUESHRINKORDER)g(NORMAL\))994 2715 y(\(GLUEWD)k(R)i(1.2333)994 +2814 y(\(GLUESTRETCH)c(R)k(4.5555\))994 2914 y(\(GLUESCHRINK)c(R)k +(2.3444\))863 3014 y(\))689 3113 y(\(FONTPENALTY)c(H)k(0)820 +3213 y(\(PENALTY)d(H)j(0)994 3313 y(\(PENALTYVAL)c(H)k(0\))994 +3412 y(\))820 3512 y(\(PENALTY)d(H)j(1)994 3611 y(\(PENALTYVAL)c(H)k +(122A\))994 3711 y(\))820 3811 y(\))639 3977 y Fv(The)32 +b(extra)e(tables)h(can)g(app)r(ear)f(in)i(an)n(y)f(order,)g(but)h(they) +f(m)n(ust)h(all)f(app)r(ear)f Fk(b)l(efor)l(e)515 4076 +y Fv(the)c(\034rst)h(c)n(haracter)d(en)n(try)i(has)f(app)r(eared,)h +(since)g(the)h(c)n(haracter)d(parameters)h(can)h(refer)515 +4176 y(to)h(these)h(tables.)639 4276 y(When)39 b(de\034ning)e(the)i(c)n +(haracter)c(en)n(tries,)40 b(the)e(standard)f(en)n(tries)g(\(width,)k +(heigh)n(t,)515 4375 y(depth)27 b(and)f(italic)g(correction\))f(all)h +(exist.)36 b(One)26 b(can)g(also)f(add)h(parameters)f(to)h(the)h(c)n +(har-)515 4475 y(acters)f(b)n(y)h(referring)f(to)i(the)g(ab)r(o)n(v)n +(e)e(tables.)37 b(The)27 b(syn)n(tax)g(for)g(an)g(en)n(try)g(resem)n +(bles)733 4641 y Ft(\(CHARIVALUE)39 b(H)k(0)g(H)g(2\))639 +4807 y Fv(F)-7 b(or)24 b(this)g(c)n(haracter,)e(it)j(is)f(en)n(try)f(2) +h(in)g Fe(iv)-10 b(alue)24 b Fv(table)g(0)f(that)i(is)f(relev)-5 +b(an)n(t.)34 b(All)25 b(en)n(tries)1905 5255 y(20)p eop +%%Page: 21 21 +21 20 bop 515 523 a Fv(are)26 b(similar:)888 593 y Fb(\000)926 +660 y Ft(CHARIVALUE)123 b Fp(h)p Fk(inte)l(ger)9 b Fp(i)83 +b(h)p Fk(inte)l(ger)9 b Fp(i)2208 593 y Fb(\001)888 694 +y(\000)926 761 y Ft(CHARFVALUE)123 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)83 b(h)p Fk(inte)l(ger)9 b Fp(i)2208 694 y Fb(\001)888 +794 y(\000)926 861 y Ft(CHARMVALUE)123 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)83 b(h)p Fk(inte)l(ger)9 b Fp(i)2208 794 y Fb(\001)888 +894 y(\000)926 962 y Ft(CHARRULE)211 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)83 b(h)p Fk(inte)l(ger)9 b Fp(i)2208 894 y Fb(\001)888 +995 y(\000)926 1062 y Ft(CHARGLUE)211 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)83 b(h)p Fk(inte)l(ger)9 b Fp(i)2208 995 y Fb(\001)888 +1095 y(\000)926 1163 y Ft(CHARPENALTY)79 b Fp(h)p Fk(inte)l(ger)9 +b Fp(i)83 b(h)p Fk(inte)l(ger)9 b Fp(i)2208 1095 y Fb(\001)639 +1316 y Fv(There)21 b(is)g(a)g(sp)r(ecial)g(use)g(for)g(the)h(0-th)f(in) +n(teger)f(table,)i(whic)n(h)g(de\034nes)f(the)h(equiv)-5 +b(alence)515 1416 y(class)26 b(of)i(the)g(c)n(haracter)d(for)i(the)h +(lig-k)n(ern)e(table:)888 1506 y Fb(\000)926 1574 y Ft(CHARIVALUE)40 +b(H)j(0)82 b Fp(h)p Fk(inte)l(ger)10 b Fp(i)1938 1506 +y Fb(\001)639 1732 y Fv(The)25 b(idea)f(is)g(that)h(c)n(haracters)d +(that)j(act)f(similarly)g(with)h(resp)r(ect)f(to)g(their)h(neigh)n(b)r +(or-)515 1832 y(ing)34 b(c)n(haracters)d(should)j(ha)n(v)n(e)f(the)i +(same)e(lig-k)n(ern)g(en)n(try)-7 b(,)35 b(allo)n(wing)e(for)g(the)i +(dramatic)515 1931 y(reduction)27 b(in)h(size)f(of)g(the)h(lig-k)n(ern) +e(table.)37 b(More)27 b(later.)639 2031 y(Also)22 b(to)h(sa)n(v)n(e)e +(space,)i(it)g(is)f(p)r(ossible)g(to)h(state)f(that)h(sev)n(eral)d(c)n +(haracters)g(use)j(the)g(same)515 2131 y(information.)36 +b(This)27 b(is)h(done)f(with)h(the)g Fe(charrepea)-7 +b(t)28 b Fv(instruction:)888 2221 y Fb(\000)926 2288 +y Ft(CHARREPEAT)40 b(H)j(34)g(H)g(42)f Fp(h)p Fk(char)l +(acter-de\034nition)8 b Fp(i)2618 2221 y Fb(\001)639 +2447 y Fv(states)29 b(that)h(c)n(haracters)d Ft(0x34)h +Fv(through)h(to)h Ft(0x76)e Fv(\()p Ft(0x34)p Fv(+)p +Ft(0x42)p Fv(\))e(all)j(use)h(the)g(same)515 2546 y(information.)36 +b(This)27 b(clustering)g(is)h(done)f(automatically)f(b)n(y)i(the)g +Ft(ovp2ovf)c Fv(program.)639 2646 y(The)30 b(lig-k)n(ern)d(table)i +(uses)g(four)g(new)g(instructions)g(for)f(the)i(automatic)f(insertion)f +(of)515 2746 y(k)n(ern,)e(glue)i(and)f(p)r(enalties)h(b)r(et)n(w)n(een) +f(c)n(haracters.)35 b(F)-7 b(or)27 b(example,)733 2904 +y Ft(\(CKRN)41 b(H)i(3)g(H)h(2\))639 3062 y Fv(states)27 +b(that)h(if)g(w)n(e)f(encoun)n(ter)g(this)h(instruction,)f(and)h(the)g +(next)f(c)n(haracter)f(has)h(3)g(in)515 3161 y(its)h(0-th)g +Fe(iv)-10 b(alue)28 b Fv(table,)g(then)g(the)h(2-nd)e(en)n(try)g(in)i +(the)f(0-th)g Fe(mv)-10 b(alue)28 b Fv(table)g(is)f(inserted)515 +3261 y(in)n(to)g(the)h(stream.)36 b(Similarly)-7 b(,)733 +3419 y Ft(\(CGLUE)41 b(H)i(3)g(H)g(2\))639 3577 y Fv(states)27 +b(that)h(if)g(w)n(e)f(encoun)n(ter)g(this)h(instruction,)f(and)h(the)g +(next)f(c)n(haracter)f(has)h(3)g(in)515 3677 y(its)c(0-th)g +Fe(iv)-10 b(alue)24 b Fv(table,)g(then)g(the)g(2-nd)f(en)n(try)g(in)g +(the)h(0-th)f Fe(glue)h Fv(table)f(is)g(inserted)g(in)n(to)515 +3776 y(the)28 b(stream.)36 b(Once)27 b(again,)733 3934 +y Ft(\(CPENALTY)39 b(H)44 b(3)f(H)g(2\))639 4092 y Fv(do)r(es)19 +b(the)g(same)f(thing,)j(except)e(that)g(it)h(inserts)e(the)h(2-nd)g(en) +n(try)f(in)h(the)h(0-th)e Fe(penal)-7 b(ty)515 4192 y +Fv(table)27 b(in)n(to)h(the)f(stream.)37 b(The)27 b(other)g(one)g(is) +733 4350 y Ft(\(CPENGLUE)39 b(H)44 b(3)f(H)g(2)g(H)g(4\))639 +4508 y Fv(whic)n(h)27 b(inserts)f(the)h(2-nd)f(en)n(try)g(in)h(the)g +(0-th)f Fe(penal)-7 b(ty)28 b Fv(table,)f(then)g(the)g(4-th)g(en)n(try) +515 4608 y(in)h(the)g(0-th)f Fe(glue)g Fv(table.)639 +4707 y(The)j Fe(label)g Fv(instruction)f(used)h(in)g(PL)g(\034les)g +(has)f(a)h(v)-5 b(arian)n(t)29 b(called)g Fe(clabel)p +Fv(,)h(whic)n(h)515 4807 y(means)d(that)h(sev)n(eral)e(c)n(haracters)f +(are)h(using)i(the)g(same)f(lig-k)n(ern)f(en)n(try)-7 +b(.)36 b(It)28 b(is)g(this)f(tec)n(h-)515 4907 y(nique)40 +b(that)g(allo)n(ws)f Ft(ovp2ovf)e Fv(to)j(cluster)g(the)g(c)n +(haracters)e(with)j(similar)e(prop)r(erties,)515 5006 +y(otherwise)26 b(eac)n(h)h(w)n(ould)g(p)r(oin)n(t)h(to)f(a)h +(di\033eren)n(t)f(lig-k)n(ern)f(en)n(try)-7 b(.)1905 +5255 y(21)p eop +%%Page: 22 22 +22 21 bop 639 523 a Fv(Our)27 b(example)h(sho)n(ws)f(ho)n(w)g(East)h +(Asian)f(fon)n(ts)h(migh)n(t)g(b)r(e)g(co)r(ded.)38 b(The)28 +b(equiv)-5 b(alence)515 623 y(class)33 b(of)i(a)f(c)n(haracter)f(has)h +(three)h(p)r(ossible)f(v)-5 b(alues:)51 b(1)34 b(for)g(`left')i(c)n +(haracters)c(\(op)r(ening)515 722 y(paren)n(thesis,)41 +b(op)r(ening)e(quote,)j(etc.\),)i(2)39 b(for)g(`middle')h(or)e +(ordinary)g(c)n(haracters,)i(and)515 822 y(3)26 b(for)f(`righ)n(t')h(c) +n(haracters)e(\(closing)h(paren)n(thesis,)h(closing)f(quote,)h(p)r +(erio)r(d,)g(etc.\).)37 b(Here)26 b(is)515 922 y(the)i(lig-k)n(ern)e +(table.)733 1088 y Ft(\(LIGTABLE)863 1187 y(\(CLABEL)41 +b(H)i(1\))863 1287 y(\(CPENGLUE)d(H)j(1)g(H)h(0)f(H)g(0\))863 +1386 y(\(CPENGLUE)d(H)j(2)g(H)h(0)f(H)g(0\))863 1486 +y(\(CPENGLUE)d(H)j(3)g(H)h(0)f(H)g(0\))863 1586 y(\(STOP\))863 +1685 y(\(CLABEL)e(H)i(2\))863 1785 y(\(CGLUE)e(H)j(1)f(H)g(0\))863 +1885 y(\(CGLUE)e(H)j(2)f(H)g(0\))863 1984 y(\(CPENGLUE)d(H)j(3)g(H)h(0) +f(H)g(0\))863 2084 y(\(STOP\))863 2183 y(\(CLABEL)e(H)i(2\))863 +2283 y(\(CGLUE)e(H)j(1)f(H)g(0\))863 2383 y(\(CGLUE)e(H)j(2)f(H)g(0\)) +863 2482 y(\(CPENGLUE)d(H)j(3)g(H)h(0)f(H)g(0\))863 2582 +y(\(STOP\))639 2748 y Fv(Glue)36 b(is)g(inserted)g(b)r(et)n(w)n(een)f +(all)h(pairs)f(of)h(c)n(haracters)d(that)j(are)f(of)h(category)e(1,)j +(2,)515 2848 y(or)25 b(3.)35 b(In)26 b(addition,)g(a)f(p)r(enalt)n(y)h +(is)f(added)h(in)g(fron)n(t)f(of)h(c)n(haracters)d(of)j(category)d(3)i +(\(`righ)n(t')515 2947 y(c)n(haracters\),)30 b(prev)n(en)n(ting)g(a)h +(linebreak)g(just)h(prior)e(to)i(suc)n(h)f(c)n(haracters.)46 +b(A)n(t)32 b(the)g(same)515 3047 y(time,)d(a)g(p)r(enalt)n(y)f(is)h +(added)g(after)f(all)h(o)r(ccurrences)e(of)i(c)n(haracters)d(of)j +(category)e(1)h(\(`left')515 3147 y(c)n(haracters\).)639 +3246 y(Another)j(p)r(ossibilit)n(y)f(is)g(to)g(completely)h(replace)e +(the)i(lig-k)n(ern)e(table,)i(with)g(the)g(in-)515 3346 +y(struction)888 3444 y Fb(\000)926 3511 y Ft(LIGTABLEOCP)79 +b Fp(h)p Fk(o)l(cp-\034le-name)7 b Fp(i)2039 3444 y Fb(\001)639 +3678 y Fv(Here)27 b(the)h Fu(\012)p Fv(CP)g Fp(h)p Fk(o)l +(cp-\034le-name)7 b Fp(i)28 b Fv(will)g(b)r(e)g(used)g(instead)f(of)h +(the)f(lig-k)n(ern)f(table.)515 3910 y Fm(7.7)112 b(Lev)m(el-1)37 +b Fh(\012)p Fm(VF)h(\034les)639 4063 y Fv(The)28 b(lev)n(el-1)e +Fu(\012)p Fv(VF)i(\034les)g(are)e(indistinguishable)h(from)h(lev)n +(el-0)e Fu(\012)p Fv(VF)i(\034les.)515 4296 y Fm(7.8)112 +b(Lev)m(el-1)37 b Fh(\012)p Fm(VP)g(\034les)639 4449 +y Fv(The)31 b(lev)n(el-1)f Fu(\012)p Fv(VP)h(\034les)g(are)f(similar)g +(to)h(lev)n(el-1)e Fu(\012)p Fv(PL)j(\034les)e(for)h(the)g(description) +f(of)515 4549 y(the)38 b(tables.)65 b(F)-7 b(or)37 b(the)h(actual)f(c)n +(haracter)e(la)n(y)n(out)h(stu\033,)41 b(there)c(is)g(no)g +(di\033erence)h(with)515 4648 y(lev)n(el-0)26 b Fu(\012)p +Fv(VP)i(\034les.)1905 5255 y(22)p eop +%%Page: 23 23 +23 22 bop 515 523 a Fm(7.9)112 b(Lev)m(el-2)37 b Fh(\012)p +Fm(FM)i(\034les)639 676 y Fv(The)h(lev)n(el-2)f(fon)n(ts)h(go)f +(further)h(than)g(lev)n(el-1)f(fon)n(ts,)k(in)d(that)h(they)f(supp)r +(ort)g(the)515 776 y(automatic)27 b(placemen)n(t)g(of)g(accen)n(ts,)g +(as)g(ISO-10646)e(requires.)639 876 y(not)41 b(mak)n(e)f(the)h +(assumption)f(that)h(t)n(yp)r(esetting)g(means)f(simply)h(placing)f +(placing)515 975 y(glyphs)24 b(on)h(the)g(baseline,)g(one)f(after)h +(another.)35 b(Example)24 b(applications)g(include)h(the)h(au-)515 +1075 y(tomatic)21 b(placemen)n(t)g(of)h(glue)f(b)r(et)n(w)n(een)g(c)n +(haracters)e(in)j(East)g(Asian)f(scripts,)h(the)g(building)515 +1174 y(of)h(consonen)n(tal)g(clusters)g(for)g(South-Asian)g(and)g +(South-East-Asian)g(scripts,)h(as)f(w)n(ell)h(as)515 +1274 y(the)k(placing)f(of)g(diacritics)g(in)h(Arabic)f(and)g(Hebrew.) +639 1374 y(Lev)n(el-1)c(fon)n(ts)g(are)g(di\033eren)n(t)h(from)f(lev)n +(el-0)g(fon)n(ts)h(at)f(three)h(lev)n(els.)35 b(First,)24 +b(they)g(allo)n(w)515 1473 y(the)k(de\034nition)g(of)f(six)g(new)h +(kinds)f(of)h(table:)639 1639 y Fp(\017)41 b Fe(iv)-10 +b(alue)28 b Fv(tables)f(con)n(tain)g(in)n(tegers.)639 +1805 y Fp(\017)41 b Fe(fv)-10 b(alue)22 b Fv(tables)e(con)n(tain)g +(\034xw)n(ord)g(v)-5 b(alues)20 b(that)h(do)g(not)g(gro)n(w)e(with)i +(magni\034cation.)639 1971 y Fp(\017)41 b Fe(mv)-10 b(alue)28 +b Fv(tables)f(con)n(tain)g(\034xw)n(ord)f(v)-5 b(alues)27 +b(that)h(do)g(gro)n(w)d(with)j(magni\034cation.)639 2136 +y Fp(\017)41 b Fe(r)n(ule)27 b Fv(tables)h(con)n(tain)e(T)1516 +2154 y(E)1563 2136 y(X)i(rule)f(de\034nitions.)639 2302 +y Fp(\017)41 b Fe(glue)28 b Fv(tables)f(con)n(tain)g(T)1522 +2320 y(E)1568 2302 y(X)h(glue)f(de\034nitions.)639 2468 +y Fp(\017)41 b Fe(penal)-7 b(ty)29 b Fv(tables)f(con)n(tain)e(T)1660 +2486 y(E)1707 2468 y(X)i(p)r(enalt)n(y)f(de\034nitions.)639 +2634 y(There)e(can)h(b)r(e)g(sev)n(eral)d(copies)i(of)h(eac)n(h)f(kind) +g(of)h(table,)g(but)g(for)f(the)h(momen)n(t,)g(there)515 +2733 y(is)h(a)g(maxim)n(um)h(of)f(32)g(new)h(tables)f(in)h(all.)639 +2833 y(These)41 b(new)g(tables)g(can)g(b)r(e)h(used)f(as)f(global)g +(tables,)45 b(or)40 b(can)h(b)r(e)g(indexed)h(on)e(a)515 +2932 y(c)n(haracter-b)n(y-c)n(haracter)21 b(basis)k(in)h(the)h +Fk(char-info-wor)l(d)37 b Fv(en)n(tries,)26 b(whic)n(h)g(de\034ne)g(c)n +(harac-)515 3032 y(ter)34 b(parameters.)55 b(So,)36 b(in)e(addition)g +(to)g(the)h(standard)e(parameters)g(of)h(width,)i(heigh)n(t,)515 +3132 y(depth)j(and)g(italic)g(correction,)h(additional)e(parameters)f +(\(of)i(the)g(six)g(kinds)g(outlined)515 3231 y(ab)r(o)n(v)n(e\))26 +b(can)h(b)r(e)h(giv)n(en)f(for)g(the)h(c)n(haracters.)639 +3331 y(T)-7 b(o)31 b(allo)n(w)f(these)i(new)f(tables)g(to)g(b)r(e)h +(used,)g(c)n(hanges)e(ha)n(v)n(e)g(also)h(b)r(een)g(made)h(to)f(the)515 +3431 y(lig-k)n(ern)26 b(table.)639 3596 y Fp(\017)41 +b Fv(Characters)22 b(can)i(b)r(e)h(put)f(in)n(to)g(equiv)-5 +b(alence)24 b(classes,)f(where)h(all)g(c)n(haracters)d(in)k(the)722 +3696 y(same)i(class)g(will)h(act)f(the)h(same)f(in)h(the)g(lig-k)n(ern) +e(table;)639 3862 y Fp(\017)41 b Fv(Glue)32 b(no)r(des,)f(rule)g(no)r +(des)f(and)h(p)r(enalt)n(y)g(no)r(des)g(can)f(b)r(e)i(inserted)e +(automatically)722 3961 y(in)n(to)e(the)g(stream,)e(exactly)h(as)g(for) +g(k)n(ern)g(no)r(des)g(in)h(T)2405 3979 y(E)2451 3961 +y(X.)639 4127 y Fp(\017)41 b Fv(The)d(lig-k)n(ern)e(program)f(can)i(b)r +(e)h(completely)f(replaced)f(b)n(y)h(an)h Fu(\012)p Fv(TP)f(\(see)h +(sec-)722 4227 y(tion)28 b(8\).)639 4392 y(No)n(w)i(w)n(e)f(b)r(egin)i +(with)f(the)h(\034rst)e(part)h(of)g(the)g(header)f(of)h(a)g(lev)n(el-1) +f Fu(\012)p Fv(FM)h(\034le.)44 b(Here)515 4492 y(are)22 +b(the)i(\034rst)f(17)g(w)n(ords)e(of)j(a)f(lev)n(el-1)f +Fu(\012)p Fv(FM)i(\034le.)35 b(Eac)n(h)23 b(en)n(try)g(b)r(elo)n(w)g +(is)g(a)g(32-bit)g(in)n(teger,)515 4592 y(non-negativ)n(e)j(and)h(less) +g(than)h Fu(2)1554 4561 y Fl(31)1624 4592 y Fv(.)722 +4757 y Fk(ofm-level)93 b Fu(=)83 b(1;)989 4882 y Fk(lf)101 +b Fu(=)83 b Fv(length)28 b(of)f(the)h(\034le,)g(in)g(w)n(ords)n +Fu(;)983 5006 y Fk(lh)90 b Fu(=)83 b Fv(length)28 b(of)f(the)h(header)f +(data,)g(in)h(w)n(ords)n Fu(;)1905 5255 y Fv(23)p eop +%%Page: 24 24 +24 23 bop 976 523 a Fk(b)l(c)88 b Fu(=)83 b Fv(smallest)27 +b(c)n(haracter)e(co)r(de)j(in)g(the)g(fon)n(t)p Fu(;)976 +648 y Fk(e)l(c)88 b Fu(=)83 b Fv(largest)26 b(c)n(haracter)f(co)r(de)j +(in)g(the)g(fon)n(t)p Fu(;)943 772 y Fk(nw)91 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(width)g(table)p +Fu(;)958 897 y Fk(nh)89 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(en)n(tries)f(in)g(the)h(heigh)n(t)g(table)o Fu(;)956 +1021 y Fk(nd)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f +(in)g(the)h(depth)g(table)p Fu(;)973 1146 y Fk(ni)91 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h +(italic)g(correction)e(table)o Fu(;)977 1270 y Fk(nl)91 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(lig-k) +n(ern)e(table)p Fu(;)960 1395 y Fk(nk)91 b Fu(=)83 b +Fv(n)n(um)n(b)r(er)27 b(of)h(en)n(tries)f(in)g(the)h(k)n(ern)f(table)p +Fu(;)962 1519 y Fk(ne)89 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(en)n(tries)f(in)g(the)h(extensible)g(c)n(haracter)d(table)p +Fu(;)959 1644 y Fk(np)88 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(fon)n(t)f(parameter)f(w)n(ords)o Fu(;)770 1768 +y Fk(font-dir)92 b Fu(=)83 b Fv(direction)27 b(of)h(fon)n(t)o +Fu(;)925 1893 y Fk(nc)l(o)88 b Fu(=)83 b Fv(o\033set)27 +b(of)h(the)g(c)n(haracter)d(en)n(tries,)i(in)h(w)n(ords)o +Fu(;)904 2017 y Fk(ncw)92 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(c)n(haracter)d(info)j(w)n(ords)n Fu(;)926 2142 +y Fk(np)l(c)87 b Fu(=)c Fv(n)n(um)n(b)r(er)27 b(of)h(parameters)d(p)r +(er)j(c)n(haracter)n Fg(:)515 2305 y Fv(Most)34 b(of)h(the)f(en)n +(tries)g(in)h(the)g(\034rst)f(part)g(are)g(as)g(for)g(lev)n(el-0)f(fon) +n(ts.)58 b(The)34 b(new)h(en)n(tries)515 2405 y(p)r(ertain)27 +b(to)h(ho)n(w)f(the)g Fk(char-info-wor)l(d)39 b Fv(en)n(tries)27 +b(are)f(stored.)639 2568 y Fp(\017)41 b Fk(nc)l(o)6 b +Fv(:)83 b(This)39 b(v)-5 b(alue)39 b(giv)n(es)f(the)h(o\033set)g(in)n +(to)g(the)h(\034le)f(for)g(the)h(\034rst)f(w)n(ord)f(of)h(the)722 +2667 y Fk(char-info-wor)l(d)g Fv(table.)h(The)28 b Fk(nc)l(o)34 +b Fv(v)-5 b(alue)28 b(is)g(required)f(b)n(y)h(output)h(driv)n(ers,)e +(whic)n(h)722 2767 y(need)j(quic)n(k)f(access)f(to)i(the)g(c)n +(haracters,)d(ev)n(en)i(if)h(the)g(total)f(length)h(of)g(the)f(tables) +722 2867 y(preceding)e(them)h(is)g(not)f(easily)g(computed,.)639 +3031 y Fp(\017)41 b Fk(ncw)9 b Fv(:)83 b(Since)19 b(man)n(y)g(large)e +(fon)n(ts)i(ha)n(v)n(e)f(large)f(n)n(um)n(b)r(ers)i(of)g(consecutiv)n +(e)e(c)n(haracters)722 3131 y(with)31 b(iden)n(tical)e(metrics.)44 +b(These)30 b(are)f(compressed)f(in)j(lev)n(el-1)d(fon)n(ts,)j(and)e(so) +h(the)722 3230 y(n)n(um)n(b)r(er)24 b(of)g Fk(char-info-wor)l(d)35 +b Fv(en)n(tries)24 b(is)g(not)g(simply)g Fk(e)l(c)17 +b Fp(\000)12 b Fk(b)l(c)j Fu(+)d(1)p Fv(.)35 b(The)24 +b Fk(ncw)33 b Fv(v)-5 b(alue)722 3330 y(giv)n(es)23 b(the)h(n)n(um)n(b) +r(er)f(of)h(w)n(ords)e(used)i(for)f(c)n(haracter)f(information,)i(not)f +(the)h(n)n(um)n(b)r(er)722 3430 y(of)k(en)n(tries.)639 +3594 y Fp(\017)41 b Fk(np)l(c)5 b Fv(:)83 b(This)28 b(is)f(the)h(n)n +(um)n(b)r(er)f(of)h(extra)e(parameters)g(p)r(er)i(c)n(haracter.)639 +3759 y Fp(\017)41 b Fk(r)l(e)l(al-lf)19 b Fv(:)83 b(This)27 +b(w)n(ould)g(b)r(e)h(the)g(length)g(of)f(the)h(\034le,)g(w)n(ere)f +(there)g(no)g(compression.)639 3922 y(The)g(next)g(t)n(w)n(elv)n(e)f +(en)n(tries)g(come)h(in)g(pairs.)35 b(F)-7 b(or)26 b(eac)n(h)h(kind)g +(of)f(parameter)g(\()p Fe(iv)-10 b(alue)p Fv(,)515 4021 +y Fe(fv)g(alue)p Fv(,)21 b Fe(mv)-10 b(alue)p Fv(,)21 +b Fe(r)n(ule)p Fv(,)g Fe(glue)p Fv(,)g Fe(penal)-7 b(ty)r +Fv(\),)21 b(the)e(\034rst)g(en)n(try)g(states)g(ho)n(w)g(man)n(y)f +(tables)515 4121 y(of)39 b(that)h(kind)g(there)f(are,)j(and)d(the)h +(second)f(states)g(ho)n(w)g(man)n(y)g(w)n(ords)f(these)h(tables)515 +4221 y(require.)780 4384 y Fk(nki)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)34 b Fe(iv)-10 b(alue)28 b Fv(tables)o Fu(;)763 +4508 y Fk(nwi)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e +(for)h Fe(iv)-10 b(alue)28 b Fv(tables)o Fu(;)770 4633 +y Fk(nkf)101 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 +b Fe(fv)-10 b(alue)28 b Fv(tables)p Fu(;)753 4757 y Fk(nwf)101 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h +Fe(fv)-10 b(alue)28 b Fv(tables)p Fu(;)739 4882 y Fk(nkm)89 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 b Fe(mv)-10 +b(alue)28 b Fv(tables)o Fu(;)722 5006 y Fk(nwm)89 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h Fe(mv)-10 +b(alue)28 b Fv(tables)o Fu(;)1905 5255 y Fv(24)p eop +%%Page: 25 25 +25 24 bop 770 523 a Fk(nkr)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)34 b Fe(r)n(ule)27 b Fv(tables)p Fu(;)753 648 y +Fk(nwr)91 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h +Fe(r)n(ule)g Fv(tables)p Fu(;)768 772 y Fk(nkg)90 b Fu(=)83 +b Fv(n)n(um)n(b)r(er)27 b(of)34 b Fe(glue)28 b Fv(tables)o +Fu(;)751 897 y Fk(nwg)90 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 +b(of)h(w)n(ords)e(for)h Fe(glue)h Fv(tables)o Fu(;)766 +1021 y Fk(nkp)88 b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)34 +b Fe(penal)-7 b(ty)29 b Fv(tables)p Fu(;)749 1146 y Fk(nwp)88 +b Fu(=)83 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(for)h +Fe(penal)-7 b(ty)29 b Fv(tables)p Fg(:)639 1301 y Fv(W)-7 +b(e)24 b(m)n(ust)g(ha)n(v)n(e)f(that)h Fk(b)l(c)15 b +Fp(\000)c Fu(1)22 b Fp(\024)h Fk(e)l(c)28 b Fp(\024)23 +b Fu(65535)p Fv(.)33 b(F)-7 b(urthermore,)23 b(the)h(follo)n(wing)f +(iden)n(tit)n(y)515 1400 y(m)n(ust)k(hold:)722 1555 y +Fk(lf)102 b Fu(=)82 b(29)18 b(+)g Fk(lh)25 b Fu(+)18 +b Fk(ncw)28 b Fu(+)18 b Fk(nw)27 b Fu(+)18 b Fk(nh)25 +b Fu(+)18 b Fk(nd)27 b Fu(+)18 b Fk(ni)27 b Fu(+)1017 +1680 y(2)18 b Fp(\003)g Fk(nl)27 b Fu(+)18 b Fk(nk)27 +b Fu(+)18 b(2)g Fp(\003)g Fk(ne)25 b Fu(+)18 b Fk(np)24 +b Fu(+)1017 1804 y Fk(nki)j Fu(+)18 b Fk(nwi)28 b Fu(+)18 +b Fk(nkf)36 b Fu(+)18 b Fk(nwf)36 b Fu(+)18 b Fk(nkm)25 +b Fu(+)18 b Fk(nwm)24 b Fu(+)1017 1929 y Fk(nkr)j Fu(+)18 +b Fk(nwr)28 b Fu(+)18 b Fk(nkg)25 b Fu(+)18 b Fk(nwg)26 +b Fu(+)18 b Fk(nkp)24 b Fu(+)18 b Fk(nwp)6 b Fg(:)515 +2084 y Fv(Finally)-7 b(,)27 b(the)h(sum)g Fk(nki)f Fu(+)18 +b Fk(nkf)37 b Fu(+)18 b Fk(nkm)24 b Fu(+)18 b Fk(nkr)27 +b Fu(+)18 b Fk(nkg)26 b Fu(+)18 b Fk(nkp)33 b Fv(m)n(ust)28 +b(b)r(e)g(less)f(than)h(32.)639 2183 y(The)h(rest)f(of)h(the)g(\034le)g +(is)f(comp)r(osed)g(of)h(a)f(n)n(um)n(b)r(er)h(of)g(arra)n(ys.)37 +b(The)29 b(new)g(parameter)515 2283 y(tables)e(are)g(placed)h(b)r +(efore)g(the)g(standard)f(dimension)h(tables,)g(as)f(it)i(is)f +(di\036cult)g(to)g(esti-)515 2383 y(mate)c(space)g(requiremen)n(ts)g +(without)h(ha)n(ving)e(read)h(the)h(new)g(tables.)36 +b(F)-7 b(urthermore,)24 b(the)515 2482 y(c)n(haracter)g(parameter)h +(indices)h(in)h(the)g Fk(char-info-wor)l(d)37 b Fv(en)n(tries)26 +b(are)f(relativ)n(e)h(and)g(m)n(ust)515 2582 y(b)r(e)i(translated)e(in) +n(to)i(an)f(absolute)g(reference)f(in)n(to)i(the)g(tables.)1277 +2850 y Fk(he)l(ader)93 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(lh)e Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(stu\033)1186 +2975 y(ivalue-no)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nki)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1186 +3099 y(fvalue-no)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkf)36 b Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1144 +3224 y(mvalue-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkm)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1257 +3349 y(rule-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkr)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(inte)l(ger)1254 +3473 y(glue-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkg)e Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1273 +3598 y(p)l(en-no)88 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nkp)c Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1019 +3722 y(ivalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(ivalue-no)5 b Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(inte)l(ger)1603 3835 y Fv(.)1603 +3868 y(.)1603 3901 y(.)799 4026 y Fk(ivalue-table)7 b +Fu([)p Fk(nki)27 b Fp(\000)18 b Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(ivalue-no)5 b Fu([)p Fk(nki)28 b +Fp(\000)18 b Fu(1])g Fp(\000)g Fu(1])k Ff(of)32 b Fk(inte)l(ger)1019 +4150 y(fvalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(fvalue-no)5 b Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1603 4263 y Fv(.)1603 +4296 y(.)1603 4329 y(.)807 4454 y Fk(fvalue-table)8 b +Fu([)p Fk(nkf)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(fvalue-no)5 b Fu([)p Fk(nkf)19 b +Fp(\000)f Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)976 +4578 y(mvalue-table)7 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(mvalue-no)5 b Fu([0])18 b Fp(\000)g +Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)1603 4691 y Fv(.)1603 +4724 y(.)1603 4757 y(.)722 4882 y Fk(mvalue-table)7 b +Fu([)p Fk(nkm)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(mvalue-no)5 b Fu([)p Fk(nkm)18 b +Fp(\000)g Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d)1090 +5006 y(rule-table)6 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(rule-no)t Fu([0])18 b Fp(\000)g +Fu(1])23 b Ff(of)32 b Fk(rule-entry)1905 5255 y Fv(25)p +eop +%%Page: 26 26 +26 25 bop 1603 499 a Fv(.)1603 532 y(.)1603 565 y(.)869 +690 y Fk(rule-table)6 b Fu([)p Fk(nkr)18 b Fp(\000)g +Fu(1])83 b(:)g Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(rule-no)t +Fu([)p Fk(nkr)19 b Fp(\000)f Fu(1])g Fp(\000)g Fu(1])k +Ff(of)32 b Fk(rule-entry)1087 814 y(glue-table)6 b Fu([0])83 +b(:)g Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(glue-no)5 b +Fu([0])18 b Fp(\000)g Fu(1])k Ff(of)32 b Fk(glue-entry)1603 +927 y Fv(.)1603 960 y(.)1603 993 y(.)862 1118 y Fk(glue-table)7 +b Fu([)p Fk(nkg)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(glue-no)5 b Fu([)p Fk(nkg)18 b Fp(\000)g +Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(glue-entry)1106 +1242 y(p)l(en-table)6 b Fu([0])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(p)l(en-no)t Fu([0])19 b Fp(\000)f +Fu(1])k Ff(of)32 b Fk(inte)l(ger)1603 1355 y Fv(.)1603 +1388 y(.)1603 1421 y(.)877 1546 y Fk(p)l(en-table)7 b +Fu([)p Fk(nkp)18 b Fp(\000)g Fu(1])83 b(:)g Ff(arra)m(y)27 +b Fu([0)p Fg(::)p Fk(p)l(en-no)t Fu([)p Fk(nkp)19 b Fp(\000)f +Fu(1])g Fp(\000)g Fu(1])23 b Ff(of)32 b Fk(inte)l(ger)1187 +1670 y(char-info)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(ncw)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(char-info-wor)l(d) +1321 1795 y(width)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nw)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1298 +1919 y(height)92 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nh)d Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d) +1321 2044 y(depth)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(nd)g Fp(\000)18 b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1335 +2168 y(italic)89 b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p +Fg(::)p Fk(ni)f Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(\034x-wor)l(d) +1241 2293 y(lig-kern)90 b Fu(:)83 b Ff(arra)m(y)27 b +Fu([0)p Fg(::)p Fk(nl)f Fp(\000)18 b Fu(1])23 b Ff(of)32 +b Fk(lig-kern-c)l(ommand)1356 2417 y(kern)89 b Fu(:)83 +b Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(nk)g Fp(\000)18 +b Fu(1])k Ff(of)32 b Fk(\034x-wor)l(d)1325 2542 y(exten)88 +b Fu(:)83 b Ff(arra)m(y)27 b Fu([0)p Fg(::)p Fk(ne)d +Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fk(extensible-r)l(e)l(cip)l(e)1292 +2666 y(p)l(ar)l(am)90 b Fu(:)83 b Ff(arra)m(y)27 b Fu([1)p +Fg(::)p Fk(np)5 b Fu(])23 b Ff(of)32 b Fk(\034x-wor)l(d)639 +2815 y Fv(So,)f(for)f(parameter)f Fg(x)p Fv(,)j(there)f(is)f(a)g(table) +h Fk(x-no)t Fv(,)g(of)g(length)g Fk(nkx)9 b Fv(,)31 b(giving)f(the)h +(size)f(of)515 2914 y(eac)n(h)21 b(table.)34 b(In)22 +b(addition,)h(there)e(are)g Fk(nkx)31 b Fv(tables)21 +b(con)n(taining)g(the)h(actual)f(en)n(tries,)h(where)515 +3014 y(the)28 b Fg(i)p Fv(-th)f(table)h(is)f(of)h(length)f +Fk(x-no)5 b Fu([)p Fg(i)p Fu(])p Fv(.)639 3114 y(The)39 +b(only)f(parameter)f(en)n(tries)h(with)h(an)f(unclear)g(structure)f +(are)h Fk(rule-entry)45 b Fv(and)515 3213 y Fk(glue-entry)7 +b Fv(.)639 3361 y Fp(\017)41 b Fv(Eac)n(h)28 b Fk(rule-entry)34 +b Fv(uses)27 b(three)h(w)n(ords)e(\(12)h(o)r(ctets\):)772 +3510 y(1st)g(w)n(ord)126 b Fk(width)k Fv(32)26 b(bits)100 +b(\034xw)n(ord)772 3610 y(2nd)27 b(w)n(ord)99 b Fk(height)109 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)772 3709 y(3rd)27 +b(w)n(ord)112 b Fk(depth)130 b Fv(32)26 b(bits)100 b(\034xw)n(ord)722 +3855 y(The)25 b(in)n(terpretation)e(of)i(the)f(v)-5 b(alues)24 +b(should)h(b)r(e)f(clear.)35 b(If)25 b(one)f(of)g(the)h(three)g(v)-5 +b(alues)722 3954 y(is)22 b(0,)g(then)g(it)g(can)g(stretc)n(h)f(in)h +(the)f(appropriate)f(direction,)j(as)e(is)g(standard)g(in)g(T)3247 +3972 y(E)3294 3954 y(X.)639 4107 y Fp(\017)41 b Fv(Eac)n(h)28 +b Fk(glue-entry)34 b Fv(uses)27 b(four)g(w)n(ords)g(\(16)g(o)r +(ctets\):)772 4255 y(1st)g(w)n(ord)126 b Fk(subtyp)l(e)407 +b Fv(4)27 b(bits)100 b(\(0\0253\))1211 4355 y Fk(ar)l(gument-kind)149 +b Fv(4)27 b(bits)100 b(\(0\0252\))1211 4455 y Fk(str)l(etch-or)l(der) +211 b Fv(4)27 b(bits)100 b(\(0\0254\))1211 4554 y Fk(shrink-or)l(der) +229 b Fv(4)27 b(bits)100 b(\(0\0254\))1211 4654 y Fk(char-rule)301 +b Fv(16)26 b(bits)772 4753 y(2nd)h(w)n(ord)99 b Fk(width)435 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)772 4853 y(3rd)27 +b(w)n(ord)112 b Fk(str)l(etch)388 b Fv(32)26 b(bits)100 +b(\034xw)n(ord)772 4953 y(4th)28 b(w)n(ord)112 b Fk(shrink)406 +b Fv(32)26 b(bits)100 b(\034xw)n(ord)1905 5255 y(26)p +eop +%%Page: 27 27 +27 26 bop 815 523 a Fj(\025)42 b Fk(subtyp)l(e)34 b Fv(is)27 +b(one)g(of)955 656 y(0)99 b Fk(normal)955 756 y Fv(1)g +Fk(a-le)l(aders)955 856 y Fv(2)g Fk(c-le)l(aders)955 +955 y Fv(3)g Fk(x-le)l(aders)815 1105 y Fj(\025)42 b +Fk(ar)l(gument-kind)36 b Fv(is)27 b(one)g(of)955 1238 +y(0)99 b Fk(sp)l(ac)l(e)955 1338 y Fv(1)g Fk(rule)34 +b Fv(\()p Fk(subtyp)l(e)g Fv(m)n(ust)27 b(b)r(e)h(leader\))955 +1438 y(2)99 b Fk(char)l(acter)38 b Fv(\()p Fk(subtyp)l(e)c +Fv(m)n(ust)27 b(b)r(e)h(leader\))815 1587 y Fj(\025)42 +b Fk(str)l(etch-or)l(der)37 b Fv(and)27 b Fk(shrink-or)l(der)38 +b Fv(are)26 b(one)i(of)955 1704 y(0)99 b Fk(normal)955 +1804 y Fv(1)g Fk(\034)955 1904 y Fv(2)g Fk(\034l)955 +2003 y Fv(3)g Fk(\034l)t(l)955 2103 y Fv(4)g Fk(\034l)t(l)t(l)815 +2253 y Fj(\025)42 b Fg(n)23 b Fu(=)f Fk(char-rule)35 +b Fv(dep)r(ends)28 b(on)f(the)h(v)-5 b(alue)28 b(of)f +Fk(ar)l(gument-kind)8 b Fv(:)954 2383 y(0.)41 b(0;)954 +2498 y(1.)g Fg(n)p Fv(-th)28 b(rule)f(in)h(rule)f(table)h(0;)954 +2613 y(2.)41 b Fg(n)p Fv(-c)n(haracter)25 b(in)j(fon)n(t.)722 +2791 y(The)38 b(explanation)f(here)g(only)g(really)g(mak)n(es)g(sense)g +(if)h(the)g(reader)f(has)g(a)g(clear)722 2891 y(understanding)32 +b(of)g(ho)n(w)f(glue)h(no)r(des)g(are)f(built)i(in)f(T)2459 +2909 y(E)2505 2891 y(X.)51 b(More)31 b(detailed)h(do)r(cu-)722 +2991 y(men)n(tation)c(is)f(forthcoming.)639 3167 y(The)e +Fk(char-info-wor)l(d)36 b Fv(arra)n(y)23 b(tak)n(es)h(is)h(of)g(great)f +(in)n(terest.)36 b(Its)25 b(length)g(is)g(not)g(directly)515 +3267 y(computable)35 b(from)h(the)g(n)n(um)n(b)r(er)g(of)g(c)n +(haracters)d(in)j(the)h(fon)n(t.)62 b(Eac)n(h)35 b Fk(char-info-wor)l +(d)515 3367 y Fv(en)n(try)30 b(con)n(tains)f(a)i(minim)n(um)g(of)g +(eigh)n(t)f(\(8\))h(o)r(ctets,)g(and)g(is)f(in)h(an)n(y)f(case)g(a)g(m) +n(ultiple)h(of)515 3466 y(four)c(\(4\))h(o)r(ctets.)36 +b(The)28 b(simplest)g(en)n(try)f(is)g(as)g(follo)n(ws:)689 +3589 y(1st)g(w)n(ord)126 b Fk(width)910 b Fv(8)27 b(bits)1128 +3688 y Fk(height)889 b Fv(8)27 b(bits)1128 3788 y Fk(depth)910 +b Fv(8)27 b(bits)1128 3888 y Fk(italic)923 b Fv(8)27 +b(bits)p 639 3921 1844 4 v 689 3991 a(2nd)g(w)n(ord)99 +b Fk(32-bit-tag)31 b Fu(=)23 b(0)630 b Fv(1)28 b(bit)1128 +4090 y Fk(no-r)l(ep)l(e)l(ats)738 b Fv(7)27 b(bits)1128 +4190 y Fk(extr)l(a-ac)l(c)l(ent-tag)i Fu(=)23 b(0)406 +b Fv(1)28 b(bit)1128 4289 y Fk(extr)l(a-ac)l(c)l(entbis-tag)i +Fu(=)22 b(0)309 b Fv(1)28 b(bit)1128 4389 y Fk(extr)l(a-se)l +(c-char-tag)i Fu(=)23 b(0)335 b Fv(1)28 b(bit)1128 4489 +y Fk(extr)l(a-se)l(c-ac)l(c)l(ent-tag)h Fu(=)22 b(0)271 +b Fv(1)28 b(bit)1128 4588 y Fk(extr)l(a-se)l(c-ac)l(c)l(entbis-tag)h +Fu(=)23 b(0)173 b Fv(1)28 b(bit)1128 4688 y Fk(ext-tag)891 +b Fv(1)28 b(bit)1128 4788 y Fk(T)1173 4805 y(E)1219 4788 +y(X-tag)811 b Fv(2)27 b(bits)1128 4887 y Fk(r)l(emainder)694 +b Fv(16)27 b(bits)639 5006 y(More)f(space)g(is)h(tak)n(en)f(b)n(y)g(a)h +Fk(char-info-wor)l(d)37 b Fv(when)27 b(the)g(bits)g(designated)f(as)g +(0)h(tak)n(e)1905 5255 y(27)p eop +%%Page: 28 28 +28 27 bop 515 523 a Fv(the)36 b(v)-5 b(alue)35 b(1.)61 +b(T)-7 b(o)36 b(b)r(egin,)i(if)e(the)g Fk(32-bit-tag)44 +b Fv(is)35 b(on,)j(then)e(the)g(\034rst)g(12)e(o)r(ctets)i(of)g(the)515 +623 y Fk(char-info-wor)l(d)i Fv(are)27 b(as)g(follo)n(ws:)689 +717 y(1st)g(w)n(ord)126 b Fk(width)550 b Fv(8)27 b(bits)1128 +816 y Fk(height)529 b Fv(8)27 b(bits)1128 916 y Fk(depth)550 +b Fv(8)27 b(bits)1128 1016 y Fk(italic)563 b Fv(8)27 +b(bits)p 639 1049 1485 4 v 689 1119 a(2nd)g(w)n(ord)99 +b Fk(32-bit)30 b(tag)432 b Fv(1)27 b(bit)1128 1218 y +Fk(no-r)l(ep)l(e)l(ats)337 b Fv(15)26 b(bits)1128 1318 +y Fk(ac)l(c)l(ent-tag)414 b Fv(1)27 b(bit)1128 1418 y +Fk(ac)l(c)l(entbis-tag)317 b Fv(1)27 b(bit)1128 1517 +y Fk(se)l(c-char-tag)344 b Fv(1)27 b(bit)1128 1617 y +Fk(se)l(c-ac)l(c)l(ent-tag)278 b Fv(1)27 b(bit)1128 1716 +y Fk(se)l(c-ac)l(c)l(entbis-tag)181 b Fv(1)27 b(bit)1128 +1816 y Fk(ext-tag)532 b Fv(1)27 b(bit)1128 1916 y Fk(T)1173 +1934 y(E)1219 1916 y(X-tag)451 b Fv(2)27 b(bits)1128 +2015 y Fk(RFU)565 b Fv(6)27 b(bits)p 639 2049 V 689 2118 +a(3nd)g(w)n(ord)99 b Fk(r)l(emainder)335 b Fv(32)26 b(bits)639 +2237 y(When)k(the)f Fk(extr)l(a)35 b Fv(tags)28 b(are)g(on,)h(extra)f +(32-bit)g(w)n(ords)g(are)g(necessary)-7 b(.)39 b(They)28 +b(are,)h(in)515 2337 y(order:)639 2437 y Fk(Primary)i(dir)l(e)l(ction)g +(ac)l(c)l(ent)e(information)6 b Fv(:)689 2554 y Fk(primary-top-axis)459 +b Fv(8)27 b(bits)689 2654 y Fk(primary-b)l(ottom-axis)329 +b Fv(8)27 b(bits)689 2754 y Fk(primary-midd)t(le-horizontal)113 +b Fv(8)27 b(bits)689 2853 y Fk(primary-midd)t(le-vertic)l(al)210 +b Fv(8)27 b(bits)639 2949 y Fk(Primary)k(dir)l(e)l(ction)g(extr)l(a)e +(ac)l(c)l(ent)g(information)6 b Fv(:)689 3066 y Fk +(primary-top-axis-bis)238 b Fv(8)27 b(bits)689 3166 y +Fk(primary-b)l(ottom-axis-bis)108 b Fv(8)27 b(bits)689 +3266 y Fk(primary-b)l(ase-slant)297 b Fv(8)27 b(bits)689 +3365 y Fk(RFU)787 b Fv(8)27 b(bits)639 3461 y Fk(Se)l(c)l(ondary)k(dir) +l(e)l(ction)f(b)l(asic)h(information)6 b Fv(:)689 3578 +y Fk(se)l(c)l(ondary-width)131 b Fv(8)27 b(bits)689 3678 +y Fk(se)l(c)l(ondary-height)110 b Fv(8)27 b(bits)689 +3778 y Fk(se)l(c)l(ondary-depth)131 b Fv(8)27 b(bits)689 +3877 y Fk(se)l(c)l(ondary-italic)144 b Fv(8)27 b(bits)639 +3973 y Fk(Se)l(c)l(ondary)k(dir)l(e)l(ction)f(ac)l(c)l(ent)g +(information)6 b Fv(:)689 4090 y Fk(se)l(c)l(ondary-top-axis)458 +b Fv(8)27 b(bits)689 4190 y Fk(se)l(c)l(ondary-b)l(ottom-axis)328 +b Fv(8)27 b(bits)689 4290 y Fk(se)l(c)l(ondary-midd)t(le-horizontal)112 +b Fv(8)27 b(bits)689 4389 y Fk(se)l(c)l(ondary-midd)t(le-vertic)l(al) +209 b Fv(8)27 b(bits)639 4485 y Fk(Se)l(c)l(ondary)k(dir)l(e)l(ction)f +(extr)l(a)f(ac)l(c)l(ent)h(information)6 b Fv(:)689 4603 +y Fk(se)l(c)l(ondary-top-axis-bis)237 b Fv(8)28 b(bits)689 +4702 y Fk(se)l(c)l(ondary-b)l(ottom-axis-bis)107 b Fv(8)28 +b(bits)689 4802 y Fk(se)l(c)l(ondary-b)l(ase-slant)296 +b Fv(8)28 b(bits)689 4901 y Fk(RFU)849 b Fv(8)28 b(bits)1905 +5255 y(28)p eop +%%Page: 29 29 +29 28 bop 639 523 a Fv(When)29 b(there)f(are)f(additional)g(c)n +(haracter)f(parameters,)g(then)j(they)f(are)f(arranged)f(as)515 +768 y(follo)n(ws:)969 617 y Fk(p)l(ar)l(am)1197 638 y +Fl(0)1712 617 y Fv(8)h(bits)969 717 y(.)14 b(.)g(.)969 +816 y Fk(p)l(ar)l(am)1197 837 y Fd(np)m(c)s Fc(\000)p +Fd(1)1712 816 y Fv(8)27 b(bits)969 918 y Fk(p)l(adding)257 +b Fv(8,16,24)25 b(bits)100 b(as)27 b(necessary)515 1037 +y(where)g Fk(np)l(c)32 b Fv(is)c(the)g(n)n(um)n(b)r(er)f(of)g(c)n +(haracters)f(p)r(er)h(parameter.)639 1136 y(The)h Fk(r)l(ep)l(e)l(at)36 +b Fv(en)n(try)27 b(allo)n(ws)g(one)g(to)h(state)f(that)h(the)h(follo)n +(wing)f Ft(no-repeats)23 b Fv(c)n(harac-)515 1236 y(ters)e(ha)n(v)n(e)g +(iden)n(tical)g(attributes,)i(thereb)n(y)f(allo)n(wing)e(the)i +Fu(\012)p Fv(FM)g(\034le)g(to)g(b)r(e)g(m)n(uc)n(h)g(smaller.)515 +1336 y(This)j(attribute)g(is)h(essen)n(tial)e(for)h(Chinese,)g +(Japanese)f(and)h(K)n(orean)e(ideogram)h(fon)n(ts.)36 +b(In)515 1435 y(other)23 b(w)n(ords,)g(this)g Fk(char-info-wor)l(d)35 +b Fv(en)n(try)23 b(is)g(relev)-5 b(an)n(t)23 b(to)g Fu(\()p +Fk(no-r)l(ep)l(e)l(ats)17 b Fu(+)10 b(1\))23 b Fv(c)n(haracters.)639 +1535 y(If)33 b(the)f Fk(ext-tag)38 b Fv(bit)33 b(is)e(on,)i(then)f(the) +h(lig-k)n(ern)d(en)n(try)h(p)r(oin)n(ted)h(to)g(b)n(y)f +Fk(r)l(emainder)42 b Fv(is)515 1635 y(shared)27 b(with)j(all)e(the)h +(other)f(c)n(haracters)e(in)j(its)g Fk(e)l(quivalenc)l(e)j(class)p +Fv(,)d(whic)n(h)g(corresp)r(onds)515 1734 y(to)e Fk(p)l(ar)l(am)844 +1754 y Fl(0)909 1734 y Fv(if)h(there)g(exists)f(an)g +Fe(iv)-10 b(alue)28 b Fv(table.)639 1834 y(W)-7 b(e)35 +b(are)f(no)n(w)g(ready)g(for)g(the)h(c)n(hanged)f(lig-k)n(ern)f(table.) +58 b(There)34 b(are)g(four)g(new)h(in-)515 1933 y(structions,)i(whic)n +(h)f(can)f(b)r(e)i(distinguished)f(b)n(y)f(the)i(fact)f(that)g(the)g +(0-th)g(16-bit)f(en)n(try)515 2033 y(\()p Fk(skip-byte)7 +b Fv(\))34 b(is)f(exactly)f(256.)53 b(In)33 b(that)h(case,)g(then)f +(the)h(1st)f(16-bit)f(en)n(try)h(\()p Fk(next-char)9 +b Fv(\))515 2133 y(de\034nes)31 b(an)g(equiv)-5 b(alence)30 +b(class.)47 b(If)32 b(the)f(next)h(c)n(haracter)d(is)i(of)g(that)g +(equiv)-5 b(alence)31 b(class,)515 2232 y(then)d(the)g(2nd)f(16-bit)g +(en)n(try)g(\(the)h Fk(op-byte)7 b Fv(\))28 b(is)g(in)n(terpreted)f(as) +f(follo)n(ws:)575 2384 y(17.)40 b(A)n(dd)28 b(the)g(glue)f(no)r(de)h +(de\034ned)g(b)n(y)f(en)n(try)g Fk(r)l(emainder)38 b +Fv(in)27 b(the)h(0-th)g(glue)f(table.)575 2542 y(18.)40 +b(A)n(dd)g(the)g(p)r(enalt)n(y)f(no)r(de)g(de\034ned)h(b)n(y)f(en)n +(try)g Fk(r)l(emainder)49 b Fv(in)40 b(the)f(0-th)g(p)r(enalt)n(y)722 +2642 y(table.)575 2800 y(19.)h(A)n(dd)25 b(the)f(p)r(enalt)n(y)h(no)r +(de)f(de\034ned)g(b)n(y)g(en)n(try)g Fk(r)l(emainder)10 +b Fg(=)p Fu(256)22 b Fv(in)j(the)f(0-th)g(p)r(enalt)n(y)722 +2900 y(table,)h(then)f(add)f(the)h(glue)f(no)r(de)h(de\034ned)g(b)n(y)f +(en)n(try)g Fk(r)l(emainder)33 b Fv(mo)r(de)23 b Fu(256)f +Fv(in)i(the)722 3000 y(0-th)k(glue)f(table.)575 3158 +y(20.)40 b(A)n(dd)28 b(the)g(k)n(ern)f(no)r(de)g(de\034ned)h(b)n(y)g +(en)n(try)e Fk(r)l(emainder)38 b Fv(in)28 b(the)g(0-th)f(m)n(v)-5 +b(alue)27 b(table.)515 3430 y Fw(8)131 b Fo(\012)43 b +Fw(T)-11 b(ranslation)45 b(Pro)t(cesses)639 3611 y Fv(The)38 +b(c)n(hanges)d(describ)r(ed)i(ab)r(o)n(v)n(e)f(are)g(v)n(ery)g(useful,) +k(and)d(allo)n(w)f(the)i(resolution)e(of)515 3711 y(sev)n(eral)c +(problems.)57 b(Ho)n(w)n(ev)n(er,)35 b(they)f(do)h(not)f(radically)f +(alter)h(the)h(structure)f(of)g(T)3247 3729 y(E)3294 +3711 y(X.)515 3811 y(This)i(is)g(not)g(the)h(case)e(for)g(the)i +Fu(\012)f Fv(T)-7 b(ranslation)35 b(Pro)r(cesses,)i(whic)n(h)f(allo)n +(w)f(text)i(to)f(b)r(e)515 3910 y(passed)g(through)f(an)n(y)h(n)n(um)n +(b)r(er)h(of)f(\034nite)h(state)g(automata,)h(in)e(order)g(to)g(imp)r +(ose)h(the)515 4010 y(required)26 b(e\033ects.)639 4110 +y(These)32 b(pro)r(cesses)e(are)g(necessary)g(for)h(translating)g(one)g +(c)n(haracter)f(set)h(to)h(another.)515 4209 y(They)26 +b(are)e(also)h(used)h(to)g(c)n(ho)r(ose)f(the)h(v)-5 +b(arious)24 b(forms)i(of)g(letters)f(in)h(Arabic,)g(or)f(to)h(create) +515 4309 y(consonen)n(tal)18 b(clusters)h(in)i(Khmer,)g(or)e(to)h +(rearrange)d(letter)i(order)g(in)h(Indic)h(scripts.)33 +b(They)515 4408 y(could)24 b(also)g(o\033er)h(alternativ)n(e)e(means)i +(of)f(c)n(hanging)g(texts)h(to)g(upp)r(er)g(or)f(lo)n(w)n(er)f(case)h +(or)g(to)515 4508 y(h)n(yphenate)j(texts.)639 4608 y(Eac)n(h)d +(translation)f(pro)r(cess)g(is)g(placed)h(in)g(a)g(\034le)g(with)h(the) +f(su\036x)g Ft(.otp)p Fv(.)34 b(Its)24 b(syn)n(tax)f(is)515 +4707 y(similar)i(but)h(not)g(iden)n(tical)f(to)h(a)f +Ft(lex)g Fv(or)g Ft(flex)f Fv(\034le)i(on)f(Unix.)37 +b(Examples)26 b(of)f(translation)515 4807 y(pro)r(cesses)h(can)h(b)r(e) +h(found)g(in)g(the)g Ft(texmf/omega/otp)21 b Fv(directory)-7 +b(.)639 4907 y(An)26 b Ft(.otp)f Fv(\034le)h(de\034nes)f(a)h(\034nite)g +(state)g(automaton)e(that)i(transforms)f(an)g(input)i(c)n(har-)515 +5006 y(acter)f(stream)h(in)n(to)h(an)f(output)h(c)n(haracter)d(stream.) +36 b(It)28 b(consists)f(of)h(six)f(parts:)1905 5255 y(29)p +eop +%%Page: 30 30 +30 29 bop 689 510 a Fk(Input)689 609 y(Output)689 709 +y(T)-6 b(ables)689 809 y(States)689 908 y(A)n(liases)689 +1008 y(Expr)l(essions)515 1103 y Fv(where)28 b(the)h +Fk(Expr)l(essions)37 b Fv(actually)28 b(state)h(what)f(translations)g +(tak)n(e)g(place)g(and)h(in)g(what)515 1203 y(situation.)639 +1303 y(In)37 b(what)g(follo)n(ws,)h Fg(n)e Fv(refers)g(to)g(a)h(p)r +(ositiv)n(e)f(in)n(teger)f(b)r(et)n(w)n(een)i(0)f(and)h +Fu(2)3005 1272 y Fl(24)3099 1303 y Fp(\000)24 b Fu(1)p +Fv(.)64 b(It)515 1402 y(can)25 b(b)r(e)h(giv)n(en)f(in)h(decimal)f +(form,)h(o)r(ctal)f(form)h(\(preceded)f(b)n(y)i Ft(@')p +Fv(\))e(or)g(hexadecimal)f(form)515 1502 y(\(preceded)f(b)n(y)i +Ft(@")p Fv(\).)35 b(Hexadecimal)23 b(n)n(um)n(b)r(ers)h(can)f(use)h(b)r +(oth)g(min)n(uscule)g(and)g(ma)5 b(juscule)515 1601 y(letters)29 +b(to)g(express)f(the)i(digits)f Fk(a\025f)p Fv(.)44 b(Num)n(b)r(ers)29 +b(can)g(also)f(b)r(e)i(giv)n(en)f(in)g(c)n(haracter)e(form:)515 +1701 y(a)i(prin)n(table)h Fe(asci)r(i)g Fv(c)n(haracter,)e(when)i +(placed)g(inside)g(a)f(pair)h(of)f(quotes,)h(generates)f(the)515 +1801 y Fe(asci)r(i)f Fv(co)r(de)f(for)g(that)h(c)n(haracter.)35 +b(F)-7 b(or)27 b(example,)g Ft(`a')f Fv(is)i(equiv)-5 +b(alen)n(t)27 b(to)h Ft(@"61)p Fv(.)639 1900 y(The)j +Fk(Input)38 b Fv(part)30 b(states)g(ho)n(w)g(man)n(y)g(o)r(ctets)h(are) +e(in)i(eac)n(h)f(input)i(c)n(haracter.)44 b(If)31 b(the)515 +2000 y(section)h(is)h(empt)n(y)-7 b(,)34 b(then)f(the)g(default)g(v)-5 +b(alue)33 b(is)g(2,)g(since)g(w)n(e)f(hop)r(e)h(that)g(Unico)r(de)g +(will)515 2100 y(b)r(ecome)f(the)h(standard)f(means)g(of)h(comm)n +(unication)f(in)h(the)g(future.)53 b(If)33 b(the)g(section)f(is)515 +2199 y(not)27 b(empt)n(y)-7 b(,)28 b(it)g(m)n(ust)g(b)r(e)g(of)f(the)h +(form)847 2365 y Ft(input:)20 b Fk(in)7 b Ft(;)639 2531 +y Fv(where)27 b Fk(in)34 b Fv(states)28 b(ho)n(w)e(man)n(y)h(o)r(ctets) +h(are)f(in)g(eac)n(h)g(input)h(c)n(haracter.)639 2631 +y(The)34 b Fk(Output)39 b Fv(part)33 b(states)g(ho)n(w)g(man)n(y)g(o)r +(ctets)g(are)f(in)i(eac)n(h)f(output)g(c)n(haracter.)53 +b(If)515 2730 y(the)34 b(section)f(is)h(empt)n(y)-7 b(,)35 +b(then)f(the)g(default)g(v)-5 b(alue)34 b(is)g(2,)g(since)g(w)n(e)f +(hop)r(e)h(that)g(Unico)r(de)515 2830 y(will)27 b(b)r(ecome)h(the)g +(standard)e(means)h(of)g(comm)n(unication)g(in)h(the)g(future.)37 +b(If)28 b(the)g(section)515 2930 y(is)f(not)h(empt)n(y)-7 +b(,)28 b(it)g(m)n(ust)f(b)r(e)h(of)g(the)g(form)847 3096 +y Ft(output:)20 b Fk(out)7 b Ft(;)639 3262 y Fv(where)27 +b Fk(out)35 b Fv(states)27 b(ho)n(w)g(man)n(y)g(o)r(ctets)h(are)e(in)i +(eac)n(h)f(output)h(c)n(haracter.)639 3361 y(The)k Fk(T)-6 +b(ables)39 b Fv(part)31 b(is)g(used)g(for)g(de\034ning)g(tables)g(that) +h(will)f(b)r(e)h(referred)e(to)h(later)g(in)515 3461 +y(the)26 b(expressions.)35 b(Often,)27 b(translations)e(from)g(one)h(c) +n(haracter)e(set)j(to)f(another)f(are)g(most)515 3561 +y(e\036cien)n(tly)h(presen)n(ted)f(through)g(table)i(lo)r(okup.)35 +b(This)26 b(section)g(can)g(b)r(e)g(empt)n(y)-7 b(,)27 +b(in)f(whic)n(h)515 3660 y(case)g(no)i(tables)f(ha)n(v)n(e)f(b)r(een)i +(de\034ned.)37 b(If)28 b(it)g(is)g(not)f(empt)n(y)-7 +b(,)28 b(it)g(is)g(of)f(the)h(form)847 3826 y Ft(tables:)20 +b Fk(table)1349 3790 y Fl(+)639 3992 y Fv(where)27 b(eac)n(h)g +Fk(table)35 b Fv(is)27 b(of)h(the)f(form)847 4158 y Fk(id)9 +b Ft([)p Fg(n)p Ft(])22 b(=)h({)p Fg(n)1244 4124 y Fl(+)1298 +4158 y Ft(};)639 4325 y Fv(where)k(the)h(n)n(um)n(b)r(ers)f(in)h +Fg(n)1504 4294 y Fl(+)1587 4325 y Fv(are)e(comma-separated.)639 +4424 y(The)i Fk(States)33 b Fv(part)27 b(is)g(used)g(to)g(separate)f +(out)h(the)h(expressions.)35 b(Not)27 b(all)g(expressions)515 +4524 y(will)33 b(necessarily)e(b)r(e)i(applicable)f(in)h(all)f +(situations.)52 b(T)-7 b(o)32 b(do)h(this,)h(the)f(user)f(can)g(name) +515 4623 y(states)e(and)h(iden)n(tify)g(expressions)f(with)h(state)g +(names,)g(in)h(order)d(to)i(express)f(what)h(ex-)515 +4723 y(pressions)g(apply)h(when.)51 b(This)32 b(section)g(can)g(b)r(e)h +(empt)n(y)-7 b(,)34 b(in)e(whic)n(h)h(case)e(there)h(is)h(only)515 +4823 y(one)27 b(state.)37 b(If)28 b(it)g(is)f(not)h(empt)n(y)-7 +b(,)27 b(it)h(is)g(of)f(the)h(form)847 4989 y Ft(states:)20 +b Fk(id)1251 4952 y Fl(+)1306 4989 y Ft(;)1905 5255 y +Fv(30)p eop +%%Page: 31 31 +31 30 bop 639 523 a Fv(where)27 b(the)h(iden)n(ti\034ers)f(in)h +Fk(id)1577 486 y Fl(+)1659 523 y Fv(are)f(comma-separated.)639 +623 y(The)k Fk(A)n(liases)38 b Fv(part)30 b(is)h(used)g(to)f(simplify)h +(the)g(de\034nition)g(of)g(the)g(left)g(hand)g(sides)f(of)515 +722 y(the)i(expressions.)48 b(Eac)n(h)32 b(expression)e(consists)h(of)h +(a)g(left-hand)g(side,)h(in)f(the)g(form)g(of)f(a)515 +822 y(simpli\034ed)23 b(regular)d(expression,)i(and)g(of)h(a)f(righ)n +(t-hand)f(side,)j(whic)n(h)e(states)g(what)g(should)515 +922 y(b)r(e)33 b(done)g(with)h(a)e(recognized)g(string.)53 +b(T)-7 b(o)32 b(simplify)i(the)f(de\034nitions)g(of)g(the)h(left-hand) +515 1021 y(sides,)e(aliases)d(can)i(b)r(e)h(used.)48 +b(This)31 b(section)g(can)g(b)r(e)h(empt)n(y)-7 b(,)32 +b(in)f(whic)n(h)h(case)e(there)h(are)515 1121 y(no)c(aliases.)35 +b(If)28 b(it)g(is)g(not)f(empt)n(y)-7 b(,)28 b(it)g(is)g(of)f(the)h +(form)847 1287 y Ft(aliases:)19 b Fk(alias)1391 1250 +y Fl(+)639 1453 y Fv(where)27 b(eac)n(h)g Fk(alias)36 +b Fv(is)27 b(of)h(the)g(form)847 1619 y Fk(id)k Ft(=)23 +b Fk(left)8 b Ft(;)639 1785 y Fv(and)28 b Fk(left)36 +b Fv(is)27 b(de\034ned)h(b)r(elo)n(w.)639 1885 y(The)38 +b Fk(Expr)l(essions)45 b Fv(part)37 b(is)g(the)h(v)n(ery)e(reason)g +(for)h(an)g Ft(.otp)f Fv(\034le.)66 b(It)38 b(states)f(what)515 +1984 y(translations)26 b(m)n(ust)h(tak)n(e)g(place,)g(and)h(when.)37 +b(It)28 b(cannot)f(b)r(e)h(empt)n(y)-7 b(,)28 b(and)f(its)h(syn)n(tax)e +(is)847 2150 y Ft(expressions:)18 b Fk(expr)1556 2116 +y Fl(+)639 2316 y Fv(Eac)n(h)28 b Fk(expr)36 b Fv(is)28 +b(of)f(the)h(form)847 2482 y Fk(leftState)h(totalL)l(eft)i(right)h +(pushBack)h(rightState)7 b Ft(;)639 2648 y Fv(where)30 +b Fk(leftState)36 b Fv(de\034nes)30 b(the)g(state)g(for)g(whic)n(h)g +(this)g(expression)e(is)i(applicable,)g Fk(to-)515 2748 +y(talL)l(eft)i Fv(de\034nes)25 b(the)f(left-hand-side)g(regular)f +(expression,)g Fk(right)33 b Fv(de\034nes)25 b(the)f(c)n(haracters)515 +2848 y(to)38 b(b)r(e)i(output,)i Fk(pushBack)49 b Fv(states)39 +b(what)f(c)n(haracters)f(m)n(ust)i(b)r(e)g(added)f(to)h(the)g(input)515 +2947 y(stream)26 b(and)i Fk(rightState)34 b Fv(giv)n(es)26 +b(the)i(new)g(state.)639 3047 y(In)n(tuitiv)n(ely)-7 +b(,)31 b(if)f(the)g(automaton)f(is)h(in)g(macro-state)e +Fk(leftState)36 b Fv(and)29 b(the)i(regular)d(ex-)515 +3147 y(pression)39 b Fk(totalL)l(eft)49 b Fv(corresp)r(onds)38 +b(to)i(a)h(pre\034x)f(of)g(the)h(curren)n(t)e(input)j(stream,)h(then) +515 3246 y(\(1\))34 b(the)h(input)g(stream)f(is)g(adv)-5 +b(anced)34 b(to)h(the)f(end)h(of)g(the)f(recognized)f(pre\034x,)j +(\(2\))f(the)515 3346 y(c)n(haracters)c(generated)i(b)n(y)g(the)h +Fk(right)42 b Fv(expression)33 b(are)f(put)j(on)n(to)e(the)h(output)g +(stream,)515 3445 y(\(3\))d(the)g(c)n(haracters)e(generated)h(b)n(y)g +(the)i Fk(pushBack)41 b Fv(stream)30 b(are)g(placed)h(at)g(the)g(b)r +(egin-)515 3545 y(ning)25 b(of)g(the)h(input)h(stream)d(and)h(\(4\))h +(the)g(system)f(c)n(hanges)f(to)h(the)h(macro-state)e(de\034ned)515 +3645 y(b)n(y)j Fk(rightState)p Fv(.)639 3744 y(The)h +Fk(leftState)34 b Fv(\034eld)27 b(can)h(b)r(e)g(empt)n(y)-7 +b(.)37 b(If)28 b(it)g(is)f(not,)h(its)f(syn)n(tax)g(is)847 +3910 y Ft(<)o Fk(id)10 b Ft(>)639 4076 y Fv(The)28 b(syn)n(tax)e(for)i +Fk(totalL)l(eft)35 b Fv(is)847 4242 y Ft(beg:)n Fu(?)23 +b Fk(left)1204 4206 y Fl(+)1282 4242 y Ft(end:)n Fu(?)639 +4408 y Fv(The)31 b Ft(beg:)p Fv(,)g(if)g(presen)n(t,)g(will)g(only)g +(matc)n(h)g(the)g(string)f(if)i(it)f(is)g(at)g(the)g(b)r(eginning)g(of) +515 4508 y(the)d(input.)38 b(The)28 b Ft(end:)p Fv(,)e(if)j(presen)n +(t,)e(will)h(only)f(matc)n(h)h(the)g(string)f(if)h(it)h(is)e(at)h(the)g +(end)g(of)515 4608 y(the)g(input.)639 4707 y(The)g(syn)n(tax)e(for)i +Fk(left)35 b Fv(is)28 b(giv)n(en)f(b)n(y)722 4873 y Fk(left)92 +b Fu(::=)82 b Fg(n)969 4998 y Fp(j)127 b Fg(n)p Ft(-)p +Fg(n)1905 5255 y Fv(31)p eop +%%Page: 32 32 +32 31 bop 969 523 a Fp(j)127 b Ft(.)969 648 y Fp(j)g +Ft(\()p Fk(left)1283 611 y Fl(+)1338 648 y Ft(\))969 +772 y Fp(j)g Ft(^\()o Fk(left)1327 735 y Fl(+)1382 772 +y Ft(\))969 897 y Fp(j)g(f)p Fk(id)9 b Fp(g)969 1021 +y(j)127 b Fk(left)32 b Ft(<)o Fg(n)p Ft(,)p Fg(n)p Fu(?)p +Ft(>)515 1312 y Fv(where)e(the)g Fk(left)1024 1275 y +Fl(+)1109 1312 y Fv(means)g(a)g(series)g(of)g Fk(left)39 +b Fv(separated)29 b(b)n(y)h(v)n(ertical)f(bars.)44 b(Therefore,)30 +b Fg(n)515 1411 y Fv(means)35 b(a)g(single)g(n)n(um)n(b)r(er,)j +Fg(n)p Ft(-)o Fg(n)e Fv(is)f(a)h(range,)g Ft(.)f Fv(is)h(a)f(wildcard)g +(c)n(haracter,)h Ft(\()o Fk(left)3189 1375 y Fl(+)3244 +1411 y Ft(\))f Fv(is)515 1511 y(a)e(c)n(hoice,)h Ft(^\()p +Fk(left)1075 1474 y Fl(+)1130 1511 y Ft(\))f Fv(is)h(the)g(negation)f +(of)g(a)h(c)n(hoice,)g Ft({)p Fk(id)9 b Ft(})33 b Fv(is)h(the)g(use)g +(of)f(an)h(alias)e(and)515 1611 y Fk(left)8 b Ft(<)p +Fg(n)p Ft(,)o Fg(n)p Fu(?)p Ft(>)28 b Fv(means)f(b)r(et)n(w)n(een)h +Fg(n)g Fv(and)g Fg(n)1798 1580 y Fc(0)1849 1611 y Fv(o)r(ccurrences)e +(of)i Fk(left)p Fv(.)39 b(Should)28 b(there)g(b)r(e)g(no)g +Fg(n)3333 1580 y Fc(0)3356 1611 y Fv(,)515 1710 y(then)g(the)g +(expression)e(means)h(at)g(least)g Fg(n)h Fv(o)r(ccurrences.)639 +1810 y(The)g(syn)n(tax)e(for)i Fk(right)36 b Fv(is)847 +1976 y Ft(=>)22 b Fk(stringExpr)1345 1939 y Fl(+)639 +2142 y Fv(while)28 b(that)g(for)f Fk(pushBack)p Fv(,)i(if)f(it)g(is)g +(not)f(empt)n(y)-7 b(,)28 b(is)847 2308 y Ft(<=)22 b +Fk(stringExpr)1345 2271 y Fl(+)639 2474 y Fv(The)34 b +Fk(right)43 b Fv(expression)32 b(corresp)r(onds)g(to)i(the)g(c)n +(haracters)d(that)k(are)d(to)i(b)r(e)h(output.)515 2574 +y(The)27 b Fk(pushBack)38 b Fv(expression)26 b(corresp)r(onds)f(to)j +(the)f(c)n(haracters)e(that)j(are)e(put)i(bac)n(k)f(on)n(to)515 +2673 y(the)h(input)g(stream.)639 2773 y(A)h Fk(stringExpr)38 +b Fv(de\034nes)29 b(a)f(string)g(of)h(c)n(haracters,)e(using)h(the)h(c) +n(haracters)e(in)i(the)g(rec-)515 2873 y(ognized)d(input)j(stream)e(as) +f(argumen)n(ts.)36 b(It)28 b(is)f(of)h(the)g(form)812 +2967 y Fg(s)689 3066 y Fp(j)100 b Fg(n)689 3166 y Fp(j)g +Ft(\\)p Fg(n)689 3266 y Fp(j)g Ft(\\$)689 3365 y Fp(j)g +Ft(\\\($-)p Fg(n)p Ft(\))689 3465 y Fp(j)g Ft(\\*)689 +3564 y Fp(j)g Ft(\\\(*-)p Fg(n)p Ft(\))689 3664 y Fp(j)g +Ft(\\\(*+)p Fg(n)p Ft(\))689 3764 y Fp(j)g Ft(\\\(*+)p +Fg(n)p Ft(-)p Fg(n)1132 3734 y Fc(0)1153 3764 y Ft(\))689 +3863 y Fp(j)g Ft(#)p Fk(arithExpr)515 3959 y Fv(where)30 +b Fg(s)i Fv(is)f(an)g Fe(asci)r(i)h Fv(c)n(haracter)d(string)i +(enclosed)f(in)i(double)f(quotation)f(marks.)47 b(The)515 +4058 y Ft(\\)p Fg(n)29 b Fv(means)g(the)h Fg(n)p Fv(-th)g(c)n(haracter) +d(\(starting)i(from)h(1\))f(in)h(the)g(recognized)e(pre\034x;)j(the)f +Ft(\\$)515 4158 y Fv(means)25 b(the)h(last)f(c)n(haracter)f(in)i(the)g +(pre\034x;)g Ft(\\\($-)p Fg(n)p Ft(\))d Fv(the)j Fg(n)p +Fv(-th,)g(coun)n(ting)f(from)h(the)g(end.)515 4258 y(The)k +Ft(\\*)g Fv(means)f(the)i(en)n(tire)f(recognized)e(pre\034x;)k +Ft(\\\(*-)p Fg(n)p Ft(\))c Fv(the)i(pre\034x)g(without)h(the)f(last)515 +4357 y Fg(n)37 b Fv(c)n(haracters;)k Ft(\\\(*+)p Fg(n)p +Ft(\))35 b Fv(without)j(the)g(\034rst)f Fg(n)h Fv(c)n(haracters;)i +Ft(\\\(*+)p Fg(n)p Ft(-)p Fg(n)2835 4327 y Fc(0)2856 +4357 y Ft(\))d Fv(remo)n(v)n(es)f(the)515 4457 y(\034rst)27 +b Fg(n)h Fv(and)f(last)g Fg(n)1132 4427 y Fc(0)1183 4457 +y Fv(c)n(haracters.)639 4557 y(F)-7 b(or)28 b(example,)f(Indic)h +(scripts)f(are)g(enco)r(ded)h(with)g(v)n(o)n(w)n(els)e(at)i(the)g(end)g +(of)g(a)g(syllable,)515 4656 y(but)33 b(the)h(v)n(o)n(w)n(el)d(is)i +(actually)g(prin)n(ted)g(\034rst)f(on)h(the)h(page.)52 +b(Up)33 b(to)g(six)g(consonan)n(ts)e(can)515 4756 y(precede)c(a)g(v)n +(o)n(w)n(el,)f(yielding)h(the)h(follo)n(wing)f(transliteration:)733 +4922 y Ft({consonant}<1,6)o(>)37 b({vowel})85 b(=>)h(\\$)43 +b(\\\(*-1\);)1905 5255 y Fv(32)p eop +%%Page: 33 33 +33 32 bop 639 523 a Fv(The)35 b Fk(arithExpr)45 b Fv(en)n(try)35 +b(allo)n(ws)e(for)i(calculations)e(to)i(actually)f(b)r(e)i(e\033ected)f +(on)g(the)515 623 y(c)n(haracters)25 b(in)j(the)g(pre\034x.)36 +b(Their)27 b(syn)n(tax)g(is)g(as)g(follo)n(ws:)812 717 +y Fg(n)689 816 y Fp(j)100 b Ft(\\)p Fg(n)689 916 y Fp(j)g +Ft(\\$)689 1016 y Fp(j)g Ft(\\\($-)p Fg(n)p Ft(\))689 +1115 y Fp(j)g Fk(arithExpr)53 b Ft(+)44 b Fk(arithExpr)689 +1215 y Fp(j)100 b Fk(arithExpr)53 b Ft(-)44 b Fk(arithExpr)689 +1315 y Fp(j)100 b Fk(arithExpr)53 b Ft(*)44 b Fk(arithExpr)689 +1414 y Fp(j)100 b Fk(arithExpr)53 b Ft(div:)42 b Fk(arithExpr)689 +1514 y Fp(j)100 b Fk(arithExpr)53 b Ft(mod:)42 b Fk(arithExpr)689 +1613 y Fp(j)100 b Fk(id)9 b Ft([)p Fk(arithExpr)g Ft(])689 +1713 y Fp(j)100 b Ft(\()p Fk(arithExpr)9 b Ft(\))515 +1809 y Fv(where)30 b Fk(id)9 b Ft([)p Fk(arithExpr)g +Ft(])32 b Fv(means)e(a)h(table)f(lo)r(okup:)43 b(the)32 +b Fk(id)40 b Fv(m)n(ust)31 b(b)r(e)g(a)g(table)g(de\034ned)g(in)515 +1909 y(the)d Fk(T)-6 b(ables)35 b Fv(section.)i(The)27 +b(other)g(op)r(erations)f(should)i(b)r(e)g(clear.)639 +2008 y(The)g(follo)n(wing)e(example)h(sho)n(ws)g(the)h(use)f(of)h +(tables.)515 2174 y Ft(\045)43 b(File)f(inbig5.otp)515 +2274 y(\045)h(Conversion)c(to)k(Unicode)e(from)g(Chinese)g(Big)h(5)i +(\(HKU\))515 2373 y(\045)f(Copyright)d(\(c\))i(1995)g(John)g(Plaice)f +(and)h(Yannis)f(Haralambous)515 2473 y(\045)i(This)f(file)g(is)g(part)g +(of)h(the)f(Omega)g(project.)515 2573 y(\045)515 2672 +y(\045)h(This)f(file)g(was)g(derived)f(from)g(data)h(in)h(the)f(tcs)h +(program)515 2772 y(\045)g(ftp://plan9.att.)o(co)o(m/)o(pla)o(n9)o(/u)o +(nix)o(sr)o(c/)o(tcs)o(.s)o(har)o(.Z)o(,)37 b(16)43 b(November)d(1994) +515 2872 y(\045)515 3071 y(input:)84 b(1;)515 3170 y(output:)40 +b(2;)515 3370 y(tables:)515 3569 y(in_big5_a1[@"9d)o(])e(=)43 +b({)515 3669 y(@"20,)128 b(@"2c,)h(@"2ce,)85 b(@"2e,)128 +b(@"2219,)41 b(@"2219,)f(@"3b,)129 b(@"3a,)515 3768 y(...)515 +3868 y(@"2199,)40 b(@"2198,)h(@"2225,)g(@"2223,)f(@"2215)515 +3968 y(};)515 4167 y(in_big5[@"3695])d(=)43 b({)515 4266 +y(@"3000,)d(@"ff0c,)h(@"3001,)g(@"3002,)f(@"ff0e,)h(@"30fb,)f(@"ff1b,)h +(@"ff1a,)515 4366 y(...)515 4466 y(@"fffd,)f(@"fffd,)h(@"fffd,)g +(@"fffd,)f(@"fffd)515 4565 y(};)515 4765 y(expressions:)515 +4964 y(@"1a)870 b(=>)42 b(@"0a;)1905 5255 y Fv(33)p eop +%%Page: 34 34 +34 33 bop 515 523 a Ft(@"00-@"a0)650 b(=>)42 b(\\1;)515 +623 y(@"a1\(@"40-@"7e\))386 b(=>)42 b(#\(in_big5_a1[\\2-@)o("4)o(0])o +(\);)515 722 y(@"a1\(@"a1-@"fe\))386 b(=>)42 b(#\(in_big5_a1[\\2-@)o +("6)o(2])o(\);)515 822 y(\(@"a2-@"fe\)\(@"4)o(0-@)o("7)o(e\))81 +b(=>)42 b(#\(in_big5[\(\\1-@"a)o(2\))o(*@)o("9d)37 b(+)43 +b(\\2-@"40]\);)515 922 y(\(@"a2-@"fe\)\(@"a)o(1-@)o("f)o(e\))81 +b(=>)42 b(#\(in_big5[\(\\1-@"a)o(2\))o(*@)o("9d)37 b(+)43 +b(\\2-@"62]\);)515 1021 y(.)g(.)915 b(=>)42 b(@"fffd;)639 +1187 y Fv(In)33 b(the)g(future,)h(more)e(op)r(erations)f(ma)n(y)h(w)n +(ell)g(b)r(e)h(added.)51 b(Researc)n(h)31 b(is)h(still)h(under)515 +1287 y(w)n(a)n(y)d(for)i(suc)n(h)g(things)g(as)f(pro)n(viding)f(means)i +(for)f(de\034ning)i(functions,)g(lo)r(cal)e(v)-5 b(ariables,)515 +1386 y(error)25 b(handling)j(and)f(other)g(functionalit)n(y)-7 +b(.)639 1486 y(The)41 b Fk(pushBack)51 b Fv(part,)43 +b(whic)n(h)d(serv)n(es)f(to)h(put)h(c)n(haracters)d(bac)n(k)i(on)n(to)g +(the)g(input)515 1586 y(stream,)c(uses)f(the)g(same)g(syn)n(tax)f(as)g +(the)i Fk(right)44 b Fv(part.)59 b(When)36 b(c)n(haracters)c(are)i +(placed)515 1685 y(bac)n(k)d(on)n(to)g(the)h(input)h(stream,)f(they)g +(will)g(b)r(e)h(lo)r(ok)n(ed)e(at)g(up)r(on)i(the)f(next)g(iteration)f +(of)515 1785 y(the)d(automaton.)639 1885 y(Finally)-7 +b(,)28 b(the)g Fk(rightState)34 b Fv(can)27 b(b)r(e)h(empt)n(y)g(or)e +(one)h(of)h(the)g(follo)n(wing)e(three)i(forms:)812 1979 +y Ft(<)p Fk(id)9 b Ft(>)689 2078 y Fp(j)100 b Ft(<push:)41 +b Fk(id)9 b Ft(>)689 2178 y Fp(j)100 b Ft(<pop:>)515 +2273 y Fv(If)29 b(it)g(is)f(empt)n(y)-7 b(,)30 b(the)f(automaton)e(sta) +n(ys)h(in)h(the)g(same)f(state.)40 b(If)29 b(it)g(is)f(of)h(the)g(form) +f Ft(<)p Fk(id)9 b Ft(>)p Fv(,)515 2373 y(then)39 b(the)g(automaton)f +(c)n(hanges)g(to)h(state)f Fk(id)p Fv(.)72 b(The)39 b +Ft(<push:)i Fk(id)9 b Ft(>)39 b Fv(means)g(c)n(hange)e(to)515 +2473 y(state)30 b Fk(id)p Fv(,)i(but)f(remem)n(b)r(ering)e(the)i +(curren)n(t)e(state.)45 b(The)31 b Ft(<pop:>)d Fv(means)i(return)f(to)i +(the)515 2572 y(previously)26 b(sa)n(v)n(ed)g(state.)639 +2672 y(Sev)n(eral)38 b Ft(.otp)g Fv(\034les)h(are)f(in)h(the)h +Ft(omega/texmf/otp)33 b Fv(directory)-7 b(.)70 b(The)39 +b Ft(char2uni)515 2772 y Fv(directory)25 b(con)n(tains)h +Fu(\012)p Fv(TPs)h(that)g(con)n(v)n(ert)e(national)h(c)n(haracter)f +(sets)h(to)h(Unico)r(de,)g(while)515 2871 y(the)h Ft(omega)d +Fv(directory)h(con)n(tains)h Fu(\012)p Fv(TPs)h(designed)f(to)g(w)n +(ork)f(with)j(the)e Fu(\012)h Fv(fon)n(ts.)515 3146 y +Fw(9)131 b(Compiled)44 b(T)-11 b(ranslation)45 b(Pro)t(cesses)639 +3327 y Fu(\012)27 b Fv(do)r(es)f(not)h(kno)n(w)f(an)n(ything)g(ab)r +(out)h Fu(\012)g Fv(T)-7 b(ranslation)25 b(Pro)r(cesses.)35 +b(It)27 b(actually)f(reads)515 3427 y(a)h(compiled)g(form)h(of)f(these) +h(\034lters,)f(kno)n(wn)g(as)g(Compiled)g(T)-7 b(ranslation)26 +b(Pro)r(cesses)h(\(\034le)515 3527 y(su\036x)g Ft(.ocp)p +Fv(\).)36 b(Essen)n(tially)-7 b(,)27 b(the)h Fu(\012)p +Fv(CPs)g(can)f(b)r(e)h(considered)e(to)i(b)r(e)g(p)r(ortable)f(assem)n +(bler)515 3626 y(programs,)e(and)i Fu(\012)h Fv(includes)g(an)f(in)n +(terpreter)f(for)h(the)h(generated)f(instructions.)639 +3726 y(The)e(command)f(for)h(reading)e(in)i(a)g Fu(\012)p +Fv(CP)g(\034le)g(is)g(similar)f(to)g(a)h(fon)n(t)g(declaration.)34 +b(The)515 3826 y(example)733 3992 y Ft(\\ocp\\TexUni=TeX)o(Ar)o(abi)o +(cT)o(oU)o(nic)o(od)o(e)639 4158 y Fv(means)c(that)h(the)g(\034le)g +Ft(TeXArabicToUnico)o(de.)o(oc)o(p)25 b Fv(is)30 b(read)g(in)h(b)n(y)f +Fu(\012)h Fv(and)f(that)h(in-)515 4257 y(ternally)c(the)h(translation)e +(pro)r(cess)g(is)i(referred)e(to)h(as)g Ft(\\TeXUni)p +Fv(.)639 4357 y(The)c Fu(\012)p Fv(CPs)g(consist)g(of)f(a)h(sequence)f +(of)h(4-o)r(ctet)f(w)n(ords.)34 b(The)23 b(\034rst)g(sev)n(en)f(w)n +(ords)f(ha)n(v)n(e)515 4457 y(the)28 b(follo)n(wing)e(form:)1905 +5255 y(34)p eop +%%Page: 35 35 +35 34 bop 689 510 a Fk(lf)141 b Fv(length)28 b(of)f(the)h(en)n(tire)f +(\034le,)h(in)g(w)n(ords;)689 609 y Fk(in)115 b Fv(n)n(um)n(b)r(er)27 +b(of)h(o)r(ctets)f(in)h(an)g(input)g(c)n(haracter;)689 +709 y Fk(ot)117 b Fv(n)n(um)n(b)r(er)27 b(of)h(o)r(ctets)f(in)h(an)g +(output)g(c)n(haracter;)689 809 y Fk(nt)112 b Fv(n)n(um)n(b)r(er)27 +b(of)h(tables;)689 908 y Fk(lt)138 b Fv(n)n(um)n(b)r(er)27 +b(of)h(w)n(ords)e(allo)r(cated)h(for)g(tables;)689 1008 +y Fk(ns)106 b Fv(n)n(um)n(b)r(er)27 b(of)h(states;)689 +1108 y Fk(ls)132 b Fv(n)n(um)n(b)r(er)27 b(of)h(w)n(ords)e(allo)r +(cated)h(for)g(states;)515 1203 y(The)g(header)g(w)n(ords)f(are)h +(follo)n(w)n(ed)f(b)n(y)i(four)f(arra)n(ys:)724 1369 +y Fa(table)6 b Fv(_)q Fa(length)89 b Fu(:)84 b Ff(arra)m(y)26 +b Fu([0)p Fg(::)p Fa(nt)f Fp(\000)18 b Fu(1])23 b Ff(of)32 +b Fa(wor)l(d)975 1493 y(tables)90 b Fu(:)84 b Ff(arra)m(y)26 +b Fu([0)p Fg(::)p Fa(lt)g Fp(\000)18 b Fu(1])23 b Ff(of)32 +b Fa(wor)l(d)722 1618 y(state)6 b Fv(_)p Fa(length)89 +b Fu(:)84 b Ff(arra)m(y)26 b Fu([0)p Fg(::)p Fa(ns)f +Fp(\000)18 b Fu(1])k Ff(of)32 b Fa(wor)l(d)975 1743 y(tables)90 +b Fu(:)84 b Ff(arra)m(y)26 b Fu([0)p Fg(::)p Fa(ls)f +Fp(\000)18 b Fu(1])23 b Ff(of)32 b Fa(wor)l(d)639 1909 +y Fv(The)21 b Fk(table_length)27 b Fv(arra)n(y)18 b(states)i(ho)n(w)g +(man)n(y)g(w)n(ords)f(are)g(used)i(for)f(eac)n(h)f(of)i(the)f(tables) +515 2008 y(in)i(the)g Fu(\012)p Fv(CP)-7 b(.)23 b(F)-7 +b(or)21 b(the)i(GB)f Fp(!)g Fv(Unico)r(de)g(example)f(on)h(page)f(33,)h +(the)h Fk(table_length)29 b Fv(w)n(ould)515 2108 y(ha)n(v)n(e)d(t)n(w)n +(o)h(en)n(tries:)36 b(hex)27 b(v)-5 b(alues)28 b Ft(9d)e +Fv(and)i Ft(3695)p Fv(.)639 2207 y(The)g Fk(tables)35 +b Fv(arra)n(y)25 b(is)j(simply)f(the)h(concatenation)e(of)i(the)g +(tables)f(in)h(the)g Fu(\012)p Fv(TP)g(\034le.)639 2307 +y(The)21 b Fk(state_length)27 b Fv(arra)n(y)18 b(states)i(ho)n(w)g(man) +n(y)g(w)n(ords)f(are)h(used)g(for)g(eac)n(h)g(of)h(the)g(states)515 +2407 y(in)h(the)g Fu(\012)p Fv(CP)-7 b(.)22 b(F)-7 b(or)22 +b(the)g(GB)g Fp(!)g Fv(Unico)r(de)g(example)f(on)h(page)e(33,)j(the)f +Fk(state_length)28 b Fv(w)n(ould)515 2506 y(ha)n(v)n(e)e(one)h(en)n +(try)-7 b(.)639 2606 y(The)27 b Fk(states)33 b Fv(arra)n(y)24 +b(is)j(simply)g(the)g(concatenation)e(of)i(the)g(sequence)f(of)h +(instructions)515 2706 y(for)e(eac)n(h)g(state)g(in)h(the)g +Fu(\012)p Fv(TP)g(\034le.)37 b(Eac)n(h)25 b(instruction)h(tak)n(es)e +(one)i(or)e(t)n(w)n(o)h(4-o)r(ctet)g(w)n(ords.)515 2805 +y(Zero-)d(and)h(one-argumen)n(t)e(instructions)i(use)g(one)g(w)n(ord.) +35 b(If)24 b(the)f(instruction)h(consists)e(of)515 2905 +y(one)h(w)n(ord,)g(then)g(the)h(actual)f(instruction)g(is)g(in)g(the)h +(\034rst)f(t)n(w)n(o)f(o)r(ctets)i(and)f(the)g(argumen)n(t)515 +3004 y(is)g(in)g(the)g(last)g(t)n(w)n(o)f(o)r(ctets.)35 +b(If)23 b(the)h(instruction)e(consists)g(of)h(t)n(w)n(o)f(w)n(ords,)h +(then)g(the)h(actual)515 3104 y(instruction)g(is)h(in)g(the)g(\034rst)g +(t)n(w)n(o)f(o)r(ctets,)h(the)h(\034rst)e(argumen)n(t)g(is)h(in)g(the)g +(next)g(t)n(w)n(o)f(o)r(ctets)515 3204 y(and)i(the)h(last)f(argumen)n +(t)g(is)g(in)h(the)g(last)f(t)n(w)n(o)g(o)r(ctets.)37 +b(The)26 b(instructions)h(are)e(as)h(follo)n(ws:)709 +3386 y(1)111 b Ft(OTP_RIGHT_OUTPU)o(T)235 b Fv(0)27 b(argumen)n(ts)709 +3486 y(2)111 b Ft(OTP_RIGHT_NUM)366 b Fv(1)27 b(argumen)n(t)709 +3586 y(3)111 b Ft(OTP_RIGHT_CHAR)322 b Fv(1)27 b(argumen)n(t)709 +3685 y(4)111 b Ft(OTP_RIGHT_LCHAR)278 b Fv(1)27 b(argumen)n(t)709 +3785 y(5)111 b Ft(OTP_RIGHT_SOME)322 b Fv(2)27 b(argumen)n(ts)709 +3984 y(6)111 b Ft(OTP_PBACK_OUTPU)o(T)235 b Fv(0)27 b(argumen)n(ts)709 +4084 y(7)111 b Ft(OTP_PBACK_NUM)366 b Fv(1)27 b(argumen)n(t)709 +4183 y(8)111 b Ft(OTP_PBACK_CHAR)322 b Fv(1)27 b(argumen)n(t)709 +4283 y(9)111 b Ft(OTP_PBACK_LCHAR)278 b Fv(1)27 b(argumen)n(t)668 +4383 y(10)110 b Ft(OTP_PBACK_SOME)322 b Fv(2)27 b(argumen)n(ts)668 +4582 y(11)110 b Ft(OTP_ADD)630 b Fv(0)27 b(argumen)n(ts)668 +4682 y(12)110 b Ft(OTP_SUB)630 b Fv(0)27 b(argumen)n(ts)668 +4781 y(13)110 b Ft(OTP_MULT)586 b Fv(0)27 b(argumen)n(ts)668 +4881 y(14)110 b Ft(OTP_DIV)630 b Fv(0)27 b(argumen)n(ts)668 +4980 y(15)110 b Ft(OTP_MOD)630 b Fv(0)27 b(argumen)n(ts)1905 +5255 y(35)p eop +%%Page: 36 36 +36 35 bop 668 523 a Fv(16)110 b Ft(OTP_LOOKUP)498 b Fv(0)27 +b(argumen)n(ts)668 623 y(17)110 b Ft(OTP_PUSH_NUM)410 +b Fv(1)27 b(argumen)n(t)668 722 y(18)110 b Ft(OTP_PUSH_CHAR)366 +b Fv(1)27 b(argumen)n(t)668 822 y(19)110 b Ft(OTP_PUSH_LCHAR)322 +b Fv(1)27 b(argumen)n(t)668 1021 y(20)110 b Ft(OTP_STATE_CHANG)o(E)235 +b Fv(1)27 b(argumen)n(t)668 1121 y(21)110 b Ft(OTP_STATE_PUSH)322 +b Fv(1)27 b(argumen)n(t)668 1220 y(22)110 b Ft(OTP_STATE_POP)366 +b Fv(1)27 b(argumen)n(t)668 1420 y(23)110 b Ft(OTP_LEFT_START)322 +b Fv(0)27 b(argumen)n(ts)668 1519 y(24)110 b Ft(OTP_LEFT_RETURN)278 +b Fv(0)27 b(argumen)n(ts)668 1619 y(25)110 b Ft(OTP_LEFT_BACKUP)278 +b Fv(0)27 b(argumen)n(ts)668 1818 y(26)110 b Ft(OTP_GOTO)586 +b Fv(1)27 b(argumen)n(t)668 1918 y(27)110 b Ft(OTP_GOTO_NE)454 +b Fv(2)27 b(argumen)n(ts)668 2017 y(28)110 b Ft(OTP_GOTO_EQ)454 +b Fv(2)27 b(argumen)n(ts)668 2117 y(29)110 b Ft(OTP_GOTO_LT)454 +b Fv(2)27 b(argumen)n(ts)668 2217 y(30)110 b Ft(OTP_GOTO_LE)454 +b Fv(2)27 b(argumen)n(ts)668 2316 y(31)110 b Ft(OTP_GOTO_GT)454 +b Fv(2)27 b(argumen)n(ts)668 2416 y(32)110 b Ft(OTP_GOTO_GE)454 +b Fv(2)27 b(argumen)n(ts)668 2516 y(33)110 b Ft(OTP_GOTO_NO_ADV)o(AN)o +(CE)104 b Fv(1)27 b(argumen)n(t)668 2615 y(34)110 b Ft(OTP_GOTO_BEG)410 +b Fv(1)27 b(argumen)n(t)668 2715 y(35)110 b Ft(OTP_GOTO_END)410 +b Fv(1)27 b(argumen)n(t)668 2814 y(36)110 b Ft(OTP_STOP)586 +b Fv(0)27 b(argumen)n(ts)639 3097 y(The)k Ft(OTP_LEFT)p +Fv(,)c Ft(OTP_GOTO)g Fv(and)j Ft(OTP_STOP)d Fv(instructions)j(are)f +(used)h(for)g(recogniz-)515 3196 y(ing)i(pre\034xes)g(in)h(an)f(input)i +(stream.)51 b(The)33 b Ft(OTP_RIGHT)c Fv(instructions)j(place)g(c)n +(haracters)515 3296 y(on)e(the)h(output)g(stream,)g(while)g(the)g +Ft(OTP_PBACK)c Fv(instructions)j(place)h(c)n(haracters)d(bac)n(k)515 +3396 y(on)n(to)h(the)h(input)h(stream.)43 b(The)30 b(instructions)g +Ft(OTP_ADD)d Fv(through)i(to)h Ft(OTP_PUSH_LCHAR)515 +3495 y Fv(are)c(used)i(for)f(in)n(ternal)g(computations)g(in)g +(preparation)f(for)h Ft(OTP_RIGHT)d Fv(or)j Ft(OTP_PBACK)515 +3595 y Fv(instructions.)35 b(Finally)-7 b(,)24 b(the)g +Ft(OTP_STATE)19 b Fv(instructions)k(are)f(for)h(c)n(hanging)f +(macro-states.)639 3694 y(The)32 b(system)g(that)h(reads)e(from)h(the)g +(input)h(stream)f(uses)f(t)n(w)n(o)h(p)r(oin)n(ters,)g(whic)n(h)g(w)n +(e)515 3794 y(will)22 b(call)h Fk(\034rst)29 b Fv(and)23 +b Fk(last)p Fv(.)35 b(The)23 b Fk(\034rst)29 b Fv(v)-5 +b(alue)23 b(p)r(oin)n(ts)f(to)h(the)f(b)r(eginning)h(of)f(the)h(input)h +(pre\034x)515 3894 y(that)k(is)f(curren)n(tly)g(b)r(eing)g(iden)n +(ti\034ed.)37 b(The)28 b Fk(last)36 b Fv(v)-5 b(alue)27 +b(p)r(oin)n(ts)h(to)f(the)h(end)g(of)f(the)h(input)515 +3993 y(pre\034x)d(that)i(has)f(b)r(een)g(read.)36 b(When)26 +b(a)g(pre\034x)g(has)g(b)r(een)g(recognized,)f(then)i +Fk(\034rst)33 b Fv(p)r(oin)n(ts)515 4093 y(to)27 b Ft(\\1)g +Fv(and)g Fk(last)36 b Fv(p)r(oin)n(ts)28 b(to)f Ft(\\$)p +Fv(.)639 4193 y(The)k Ft(OTP_LEFT_START)25 b Fv(instruction,)31 +b(called)g(at)f(the)h(b)r(eginning)g(of)g(the)g(parsing)e(of)515 +4292 y(a)34 b(pre\034x,)h(adv)-5 b(ances)33 b Fk(\034rst)41 +b Fv(to)35 b Fk(last)23 b Fu(+)f(1)p Fv(;)37 b Ft(OTP_LEFT_RETURN)28 +b Fv(resets)33 b(the)i Fk(last)42 b Fv(v)-5 b(alue)34 +b(to)515 4392 y Fk(\034rst)19 b Fp(\000)g Fu(1)29 b Fv(\(it)i(is)e +(called)h(when)f(a)h(particular)e Fk(left)38 b Fv(pattern)29 +b(do)r(es)h(not)f(corresp)r(ond)f(to)i(the)515 4491 y(pre\034x\);)d +Ft(OTP_LEFT_BACKUP)21 b Fv(bac)n(ks)27 b(up)h(the)g Fk(last)35 +b Fv(p)r(oin)n(ter)28 b(b)n(y)f(1.)639 4591 y(In)n(ternally)-7 +b(,)35 b(a)e Fu(\012)p Fv(CP)i(program)d(uses)h(a)h(program)d(coun)n +(ter)i(\(PC\),)i(whic)n(h)f(is)g(simply)515 4691 y(an)39 +b(index)h(in)n(to)g(the)g(appropriate)e(state)i(arra)n(y)-7 +b(.)71 b(Lik)n(e)39 b(for)h(all)f(assem)n(bler)f(programs,)515 +4790 y(this)d(coun)n(ter)f(is)g(normally)g(incremen)n(ted)g(b)n(y)h(1)f +(or)g(2,)i(dep)r(ending)f(on)f(the)i(size)e(of)h(the)515 +4890 y(instruction,)27 b(but)h(it)g(can)f(b)r(e)h(abruptly)g(c)n +(hanged)e(through)h(an)g Ft(OTP_GOTO)d Fv(instruction.)639 +4990 y(The)i(argumen)n(t)f(in)h(single-argumen)n(t)e +Ft(OTP_GOTO)f Fv(instructions)i(is)h(the)g(new)g(PC.)h(F)-7 +b(or)1905 5255 y(36)p eop +%%Page: 37 37 +37 36 bop 515 523 a Fv(the)38 b(t)n(w)n(o-argumen)n(t)e(instructions,)k +(the)f(\034rst)f(is)g(the)g(comparand)f(and)h(the)h(second)e(is)515 +623 y(the)j(new)f(PC)h(should)f(the)h(test)g(succeed.)72 +b(The)40 b Ft(OTP_GOTO)c Fv(instruction)j(itself)h(is)f(an)515 +722 y(unconditional)26 b(branc)n(h;)g Ft(OTP_GOTO_NO_ADVAN)o(CE)20 +b Fv(adv)-5 b(ances)26 b Fk(last)35 b Fv(b)n(y)27 b(1,)g(and)f(branc)n +(hes)515 822 y(if)37 b(has)f(reac)n(hed)f(the)i(end)g(of)f(input;)42 +b Ft(OTP_GOTO_BEG)32 b Fv(branc)n(hes)j(at)i(the)g(b)r(eginning)f(of) +515 922 y(input)29 b(and)f Ft(OTP_GOTO_END)23 b Fv(branc)n(hes)j(at)i +(the)h(end)f(of)g(input.)40 b(As)28 b(for)f Ft(OTP_GOTO_)p +Fk(c)l(ond)p Fv(,)515 1021 y(it)33 b(succeeds)f(if)h(the)h(c)n +(haracter)c(p)r(oin)n(ted)j(to)g(b)n(y)g Fk(last)40 b +Fv(\(w)n(e'll)33 b(call)g(it)g Ft(*)p Fk(last)8 b Fv(\))33 +b(satis\034es)f(the)515 1121 y(test)c Fk(c)l(ond)9 b +Fv(\()p Ft(*)p Fk(last)p Fv(,)27 b Fk(\034rstA)n(r)l(g)7 +b Fv(\).)639 1220 y(The)20 b Ft(OTP_STOP)d Fv(instruction)j(stops)f +(pro)r(cessing)g(of)h(the)g(curren)n(tly)f(recognized)g(pre\034x.)515 +1320 y(Normally)j(the)h(automaton)f(will)h(b)r(e)g(restarted)f(with)i +(an)e Ft(OTP_LEFT_START)17 b Fv(instruction.)639 1420 +y(When)33 b(computations)e(are)g(undertak)n(en)h(for)f(the)i +Ft(OTP_RIGHT)28 b Fv(and)k Ft(OTP_PBACK)c Fv(in-)515 +1519 y(structions,)d(a)g(computation)h(stac)n(k)f(is)g(used.)36 +b(This)26 b(stac)n(k)f(is)g(accessed)g(through)g(instruc-)515 +1619 y(tions)i Ft(OTP_ADD)d Fv(through)j(to)g Ft(OTP_PUSH_LCHAR)p +Fv(,)22 b(as)k(w)n(ell)i(as)e(through)h(the)h(instructions)515 +1719 y Ft(OTP_RIGHT_OUTPU)o(T)22 b Fv(and)27 b Ft(OTP_PBACK_OUTPUT)o +Fv(.)639 1818 y(Since)37 b(the)g Ft(OTP_RIGHT)c Fv(and)j +Ft(OTP_PBACK)d Fv(instructions)j(are)g(analogous,)h(only)f(the)515 +1918 y(former)31 b(are)g(describ)r(ed.)50 b(The)33 b +Ft(OTP_RIGHT_OUTPU)o(T)26 b Fv(instruction)32 b(p)r(ops)g(a)g(v)-5 +b(alue)32 b(of)g(the)515 2017 y(top)41 b(of)g(the)g(stac)n(k)f(and)h +(outputs)g(it;)48 b Ft(OTP_RIGHT_NUM)p Fu(\()p Fg(n)p +Fv(\))36 b(simply)41 b(places)f Fg(n)h Fv(on)g(the)515 +2117 y(output)j(stream;)52 b Ft(OTP_RIGHT_CHAR)p Fu(\()p +Fg(n)p Fu(\))39 b Fv(places)44 b(the)g Fg(n)p Fv(-th)h(input)g(c)n +(haracter)d(on)i(the)515 2217 y(output)37 b(stream;)k +Ft(OTP_RIGHT_LCHAR)31 b Fv(do)r(es)37 b(the)g(same,)i(but)e(from)g(the) +g(bac)n(k;)k(\034nally)-7 b(,)515 2316 y Ft(OTP_RIGHT_SOME)21 +b Fv(places)27 b(a)g(substring)g(on)n(to)g(the)h(output)g(stream.)639 +2416 y(Three)19 b(instructions)f(are)g(used)h(for)f(placing)h(v)-5 +b(alues)18 b(on)h(the)g(stac)n(k:)32 b Ft(OTP_PUSH_NUM)p +Fu(\()p Fg(n)p Fu(\))515 2516 y Fv(pushes)42 b Fg(n)h +Fv(on)n(to)e(the)i(stac)n(k,)j Ft(OTP_PUSH_CHAR)p Fu(\()p +Fg(n)p Fu(\))37 b Fv(pushes)42 b(the)h Fg(n)p Fv(-th)g(c)n(haracter)d +(and)515 2615 y Ft(OTP_PUSH_LCHAR)p Fu(\()p Fg(n)p Fu(\))22 +b Fv(do)r(es)27 b(the)h(same)f(from)g(the)h(end.)639 +2715 y(The)g(arithmetic)f(op)r(erations)f(of)i(the)g(form)f +Ft(OTP_)p Fk(op)32 b Fv(apply)27 b(the)h(op)r(eration)722 +2881 y Fa(stack)10 b Fu([)p Fa(top)24 b Fp(\000)18 b +Fu(1])82 b(:=)h Fa(stack)9 b Fu([)p Fa(top)25 b Fp(\000)18 +b Fu(1])k Fa(op)29 b(stack)10 b Fu([)p Fa(top)5 b Fu(])515 +3047 y Fv(where)29 b Fk(top)36 b Fv(is)30 b(the)h(stac)n(k)e(p)r(oin)n +(ter,)h(and)g(then)h(decremen)n(t)e(the)i(stac)n(k)e(p)r(oin)n(ter.)44 +b(Finally)-7 b(,)515 3147 y(the)28 b Ft(OTP_LOOKUP)23 +b Fv(instruction)k(applies)h(the)g(op)r(eration)722 3313 +y Fa(stack)10 b Fu([)p Fa(top)24 b Fp(\000)18 b Fu(1])82 +b(:=)h Fa(stack)9 b Fu([)p Fa(top)25 b Fp(\000)18 b Fu(1][)p +Fa(stack)8 b Fu([)p Fa(top)e Fu(]])515 3479 y Fv(and)27 +b(then)h(decremen)n(ts)f(the)h(p)r(oin)n(ter.)639 3578 +y(Last,)42 b(but)d(not)h(least,)h(are)d(the)i Ft(OTP_STATE)35 +b Fv(instructions,)42 b(whic)n(h)d(manipulate)f(a)515 +3678 y(stac)n(k)26 b(of)g(macro-states.)35 b(The)26 b(initial)h(state)g +(is)g(alw)n(a)n(ys)d(0.)37 b(The)26 b Ft(OTP_STATE_CHANGE)p +Fu(\()p Fg(n)p Fu(\))515 3778 y Fv(c)n(hanges)f(the)i(curren)n(t)e +(state)i(state)f Fg(n)p Fv(;)h Ft(OTP_STATE_PUSH)p Fu(\()p +Fg(n)p Fu(\))21 b Fv(pushes)27 b(the)g(curren)n(t)e(state)515 +3877 y(on)n(to)d(the)i(state)g(stac)n(k)e(b)r(efore)i(c)n(hanging)e +(the)i(curren)n(t)e(state;)j Ft(OTP_STATE_POP)18 b Fv(p)r(ops)24 +b(the)515 3977 y(state)j(at)h(the)f(top)h(of)g(the)g(state)f(stac)n(k)f +(in)n(to)i(the)g(curren)n(t)e(state.)515 4251 y Fw(10)131 +b(T)-11 b(ranslation)45 b(pro)t(cess)e(lists)639 4433 +y Fv(T)-7 b(ranslation)26 b(pro)r(cesses)g(can)h(b)r(e)h(used)f(for)g +(a)g(n)n(um)n(b)r(er)g(of)h(di\033eren)n(t)f(purp)r(oses.)36 +b(Since)515 4533 y(not)31 b(all)g(uses)h(can)f(b)r(e)h(foreseen,)f(w)n +(e)g(ha)n(v)n(e)f(decided)i(to)g(o\033er)e(a)i(means)f(to)g +(dynamically)515 4632 y(recon\034gure)23 b(the)j(set)f(of)g +(translation)g(pro)r(cesses)e(that)j(are)e(passing)g(o)n(v)n(er)g(the)i +(input)g(text.)515 4732 y(This)h(is)h(done)f(using)g(stac)n(ks)g(of)g +(translation)f(pro)r(cess)h(lists.)639 4832 y(F)-7 b(or)38 +b(an)n(y)g(single)g(purp)r(ose,)i(for)e(example)g(to)h(pro)r(cess)e(a)h +(giv)n(en)f(language,)j(sev)n(eral)515 4931 y Fu(\012)p +Fv(CPs)31 b(migh)n(t)h(b)r(e)g(required.)47 b(If)32 b(one)g(mak)n(es)e +(a)h(con)n(text)g(switc)n(h,)i(suc)n(h)e(as)g(pro)r(cessing)e(a)1905 +5255 y(37)p eop +%%Page: 38 38 +38 37 bop 515 523 a Fv(di\033eren)n(t)24 b(language,)f(then)i(one)f(w)n +(ould)g(to)g(b)r(e)g(able)g(to)g(quic)n(kly)g(replace)f +Fk(al)t(l)34 b Fv(of)24 b(the)h Fu(\012)p Fv(CPs)515 +623 y(that)j(are)e(curren)n(tly)h(b)r(eing)g(used.)37 +b(This)28 b(is)f(done)g(using)h Fu(\012)p Fv(CP)g(lists.)639 +722 y(A)g Fu(\012)p Fv(CP)g(list)g(is)f(actually)g(a)g(list)h(of)f +(pairs.)36 b(Eac)n(h)27 b(pair)g(consists)f(of)i(a)f(p)r(ositiv)n(e)g +(scaled)515 822 y(v)-5 b(alue)27 b(and)h(a)f(doubly)g(ended)h(queue)f +(of)h Fu(\012)p Fv(CPs.)37 b(F)-7 b(or)27 b(example,)733 +982 y Ft(\\ocplist\\Arabic)o(OC)o(P=[)o(\(1)o(.0)37 b(:)43 +b(\\TexUni,\\UniUniT)o(wo,)o(\\U)o(ni)o(Two)o(Fo)o(nt)o(\)])639 +1142 y Fv(the)36 b(output)f(from)g Fu(\012)g Fv(once)g(the)g +Fu(\012)p Fv(CP)h(list)f Ft(\\ArabicOCP)c Fv(has)j(b)r(een)i(t)n(yp)r +(ed,)h(sho)n(ws)515 1242 y(that)23 b(that)g(list)g(has)g(one)f(elemen)n +(t,)j(namely)d(the)i(pair)e(with)h(the)h(scaled)e(v)-5 +b(alue)23 b(1.0)f(and)h(the)515 1342 y(doubly)g(ended)i(queue)e(with)i +(three)e Fu(\012)p Fv(CPs,)i Ft(\\TexUni)p Fv(,)d Ft(\\UniUniTwo)e +Fv(and)k Ft(\\UniTwoFont)p Fv(.)639 1441 y Fu(\012)p +Fv(CP)32 b(lists)f(are)e(built)j(up)f(using)g(the)g(\034v)n(e)g(op)r +(erators)d Ft(\\nullctlist)p Fv(,)g Ft(\\addbefore)p +Fv(-)515 1541 y Ft(ocplist)p Fv(,)i Ft(\\addafterocplis)o(t)p +Fv(,)d Ft(\\removebeforeoc)o(pli)o(st)e Fv(and)32 b Ft +(\\removeafterocp)o Fv(-)515 1640 y Ft(list)p Fv(.)39 +b(F)-7 b(or)29 b(example,)g(the)g(ab)r(o)n(v)n(e)f(output)i(w)n(as)e +(generated)f(b)n(y)i(the)h(follo)n(wing)e(sequence)515 +1740 y(of)f Fu(\012)h Fv(statemen)n(ts:)733 1900 y Ft +(\\ocp\\TexUni=TeX)o(Ar)o(abi)o(cT)o(oU)o(nic)o(od)o(e)733 +2000 y(\\ocp\\UniUniTwo=)o(Un)o(ico)o(de)o(To)o(Con)o(tU)o(ni)o(cod)o +(e)733 2100 y(\\ocp\\UniTwoFont)o(=C)o(ont)o(Un)o(ic)o(ode)o(To)o(Te)o +(XAr)o(ab)o(icO)o(ut)733 2299 y(\\ocplist\\Arabic)o(OC)o(P=)733 +2398 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\TexUni)733 +2498 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\UniUniTwo)733 +2598 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\UniTwoFont)733 +2697 y(\\nullocplist)639 2857 y Fv(The)28 b Ft(\\ocplist)c +Fv(command)j(is)h(similar)e(to)i(the)g Ft(\\ocp)e Fv(command:)515 +2957 y Ft(\\ocplist)e Fk(listName)34 b Ft(=)28 b Fk(o)l(cpListExpr)p +Fv(.)639 3057 y(All)23 b Fk(o)l(cpListExpr)32 b Fv(are)21 +b(built)i(up)f(from)g(either)g(the)g(empt)n(y)g Fu(\012)p +Fv(CP)h(list,)g Ft(\\nullocplist)p Fv(,)515 3156 y(or)29 +b(from)i(an)f(already)f(existing)h Fu(\012)p Fv(CP)h(list.)47 +b(In)30 b(the)h(latter)f(case,)h(the)g(list)g(is)f(completely)515 +3256 y(copied,)h(to)f(ensure)g(that)g(the)h(named)f(list)h(is)f(not)h +(itself)g(mo)r(di\034ed.)45 b(Giv)n(en)30 b(a)g(list)h +Fg(l)r Fv(,)g(the)515 3356 y(instruction)22 b Ft(\\addbeforeocplis)o(t) +16 b Fg(n)23 b Fk(o)l(cp)28 b Fg(l)c Fv(states)e(that)h(the)f +Fu(\012)p Fv(CP)h Fk(o)l(cp)29 b Fv(is)22 b(added)g(at)h(the)515 +3455 y(head)e(of)h(the)h(doubly)f(ended)g(queue)g(for)f(v)-5 +b(alue)22 b Fg(n)g Fv(in)g(list)g Fg(l)r Fv(.)35 b(If)22 +b(that)h(queue)f(do)r(es)f(not)h(exist,)515 3555 y(it)h(is)g(created)f +(and)h(inserted)f(in)h(the)h(list)f(so)f(that)h(the)g(scaled)g(v)-5 +b(alues)22 b(are)g(all)g(in)i(increasing)515 3655 y(order.)53 +b(The)34 b(instruction)f Ft(\\addafterocplis)o(t)28 b +Fg(n)33 b Fk(o)l(cp)40 b Fg(l)35 b Fv(do)r(es)e(the)h(same,)g(except)g +(the)515 3754 y(addition)j(tak)n(es)f(place)h(at)g(the)h(tail)f(of)g +(the)h(doubly)f(ended)g(queue.)66 b(The)37 b(instruction)515 +3854 y Ft(\\removebeforeoc)o(pli)o(st)21 b Fg(n)28 b(l)h +Fv(remo)n(v)n(es)d(the)i Fu(\012)p Fv(CP)h(at)e(the)i(head)e(of)h(the)g +(doubly)g(ended)515 3953 y(queue)j(n)n(um)n(b)r(ered)g +Fg(n)p Fv(.)47 b(The)31 b(instruction)g Ft(\\removeafterocpli)o(st)25 +b Fg(n)31 b(l)h Fv(do)r(es)f(the)h(same)515 4053 y(at)27 +b(the)h(tail)g(of)f(the)h(doubly)g(ended)f(queue.)37 +b(See)28 b(the)g(next)f(section)g(for)h(more)e(examples.)515 +4326 y Fw(11)131 b(Input)44 b(Filters)639 4508 y Fv(Here)28 +b(w)n(e)f(come)g(to)g(the)h(crucial)f(parts)g(of)h Fu(\012)p +Fv(.)37 b(What)27 b(happ)r(ens)h(to)g(the)g(input)g(stream)515 +4608 y(as)36 b(it)i(passes)e(through)h(translation)f(pro)r(cesses?)65 +b(What)38 b(is)f(the)h(in)n(teraction)e(b)r(et)n(w)n(een)515 +4707 y(T)561 4725 y(E)607 4707 y(X's)28 b(macro-expansion)c(and)k +Fu(\012)p Fv('s)f(translation)g(pro)r(cesses?)639 4807 +y(When)j Fu(\012)f Fv(is)f(in)i(horizon)n(tal)d(mo)r(de)i(and)g(it)g +(encoun)n(ters)f(a)g(tok)n(en)g(of)h(the)h(form)e Fk(letter)p +Fv(,)515 4907 y Fk(other_char)p Fv(,)44 b Fk(char_given)j +Fv(or)38 b Fk(char_num)p Fv(,)k(that)e(c)n(haracter)d(and)j(all)f(the)h +(successiv)n(e)515 5006 y(c)n(haracters)25 b(in)j(those)f(categories)e +(are)h(read)h(in)n(to)g(a)g(bu\033er.)37 b(The)28 b(curren)n(tly)e +(activ)n(e)h Fu(\012)p Fv(CP)1905 5255 y(38)p eop +%%Page: 39 39 +39 38 bop 515 523 a Fv(is)21 b(applied)g(to)g(the)g(bu\033er,)i(and)e +(the)g(result)g(is)g(placed)g(bac)n(k)f(on)n(to)g(the)i(input,)h(to)e +(b)r(e)h(reread)515 623 y(b)n(y)27 b(the)h(standard)e(T)1165 +641 y(E)1212 623 y(X)i(input)g(routines,)f(including)h(macro)e +(expansion.)639 722 y(The)j(curren)n(tly)f(activ)n(e)f +Fu(\012)p Fv(CP)j(is)e(designated)g(b)n(y)g(a)h(pair)f +Fu(\()p Fg(v)s(;)14 b(i)p Fu(\))p Fv(,)29 b(where)f Fg(v)k +Fv(is)d(a)f(scaled)515 822 y(v)-5 b(alue)27 b(and)g Fg(i)h +Fv(is)f(an)g(in)n(teger.)36 b(If)28 b(all)f(the)h(enabled)f +Fu(\012)p Fv(CPs)h(are)e(in)i(a)f Fu(\012)p Fv(CP)h(list,)g(then)g(the) +g Fg(v)515 922 y Fv(designates)k(the)i(index)f(in)n(to)g(the)h +Fu(\012)p Fv(CP)g(list)f(and)g(the)h Fg(i)f Fv(designates)f(whic)n(h)h +(elemen)n(t)h(in)515 1021 y(the)28 b Fg(v)s Fv(-queue)f(is)h(curren)n +(tly)e(activ)n(e.)639 1121 y(Once)k(a)g Fu(\012)p Fv(CP)h(has)f(b)r +(een)h(used,)g(the)g Fg(i)f Fv(is)g(incremen)n(ted;)h(if)g(it)g(p)r +(oin)n(ts)g(to)f(the)h(end)f(of)515 1220 y(the)e(curren)n(t)e(queue,)i +(then)g Fg(v)j Fv(is)c(set)h(to)f(the)h(next)g(queue,)g(and)f +Fg(i)g Fv(is)h(reset)f(to)g(1.)639 1320 y(When)d(the)g(last)e(enabled)h +Fu(\012)p Fv(CP)h(has)f(b)r(een)g(used,)h(then)g(the)g(standard)e(tec)n +(hniques)h(for)515 1420 y(treating)32 b(letters)h(and)g(other)g(c)n +(haracters)e(are)h(used,)i(namely)f(generating)f(paragraphs,)515 +1519 y(etc.)639 1619 y(What)41 b(this)f(means)g(is)g(that)g(it)h(is)f +(no)n(w)f(p)r(ossible)h(to)g(apply)g(a)g(\034lter)g(on)g(the)g +Fk(text)515 1719 y Fv(of)33 b(a)h(\034le)f(without)h(macro-expansion,)f +(generate)f(a)h(new)h(text,)h(p)r(ossibly)f(with)g(macros)515 +1818 y(to)j(b)r(e)i(expanded,)h(macro-expand,)e(re-apply)f(\034lters,)j +(etc.)67 b(All)39 b(this)f(without)g(activ)n(e)515 1918 +y(c)n(haracters,)25 b(and)i(without)h(breaking)e(macro)h(pac)n(k)-5 +b(ages.)639 2017 y(Ho)n(w)23 b(are)f Fu(\012)p Fv(CP)i(lists)f +(enabled?)35 b Fu(\012)p Fv(CP)24 b(lists)f(are)f(placed)h(on)g(a)g +(stac)n(k,)g(eac)n(h)f(n)n(um)n(b)r(ered)515 2117 y(queue)35 +b(in)h(a)f(giv)n(en)f(list)i(masking)f(the)g(queues)h(with)g(the)f +(same)g(n)n(um)n(b)r(er)g(for)g(the)h(lists)515 2217 +y(b)r(elo)n(w)27 b(that)h(one)f(on)g(the)h(stac)n(k.)639 +2316 y(There)e(are)f(three)h(commands,)g(whic)n(h)g(all)f(resp)r(ect)h +(the)h(grouping)d(mec)n(hanism.)36 b(The)515 2416 y Ft(\\clearocplists) +22 b Fv(command)28 b(disables)f(all)h Fu(\012)p Fv(CP)h(lists.)39 +b(The)28 b Ft(\\pushocplist)23 b Fk(OCPlist)515 2516 +y Fv(command)f(pushes)g Fk(OCPlist)31 b Fv(on)n(to)22 +b(the)h(stac)n(k.)34 b(The)22 b Ft(\\popocplist)c Fv(command)k(p)r(ops) +h(the)515 2615 y(last)k(list)h(from)f(the)h(stac)n(k.)639 +2715 y(F)-7 b(or)27 b(example,)g(consider)g(the)h(follo)n(wing)e +(purely)h(h)n(yp)r(othetical)h(situations:)733 2881 y +Ft(\\ocplist\\French)o(OC)o(P)38 b(=)43 b(\\addbeforeocpli)o(st)37 +b(1)43 b(\\ocpA)1648 2980 y(\\addbeforeocpli)o(st)37 +b(2)43 b(\\ocpB)1648 3080 y(\\addbeforeocpli)o(st)37 +b(3)43 b(\\ocpC)1648 3180 y(\\nullocplist)733 3362 y(\\ocplist\\German) +o(OC)o(P)38 b(=)43 b(\\addbeforeocpli)o(st)37 b(1)43 +b(\\ocpD)1648 3462 y(\\addbeforeocpli)o(st)37 b(2)43 +b(\\ocpE)1648 3562 y(\\addbeforeocpli)o(st)37 b(3)43 +b(\\ocpF)1648 3661 y(\\nullocplist)733 3844 y(\\ocplist\\Arabic)o(OC)o +(P)38 b(=)43 b(\\addbeforeocpli)o(st)37 b(1)43 b(\\ocpG)1648 +3944 y(\\addbeforeocpli)o(st)37 b(2)43 b(\\ocpH)1648 +4043 y(\\addbeforeocpli)o(st)37 b(2)43 b(\\ocpI)1648 +4143 y(\\addbeforeocpli)o(st)37 b(3)43 b(\\ocpJ)1648 +4242 y(\\nullocplist)733 4425 y(\\ocplist\\Specia)o(lA)o(rab)o(ic)o(OC) +o(P)38 b(=)1648 4525 y(\\addafterocplis)o(t)g(3)43 b(\\ocpK)1648 +4624 y(\\ArabicOCP)733 4807 y(\\ocplist\\UpperC)o(as)o(eOC)o(P)37 +b(=)1648 4907 y(\\addbeforeocpli)o(st)g(2.5)42 b(\\ocpL)1648 +5006 y(\\nullocplist)1905 5255 y Fv(39)p eop +%%Page: 40 40 +40 39 bop 639 523 a Fv(There)39 b(are)g(no)n(w)f(5)h +Fu(\012)p Fv(CP)h(lists)g Fk(de\034ne)l(d)p Fv(,)j(but)d(none)f(of)g +(them)h(are)f Fk(enable)l(d)p Fv(.)73 b(The)515 623 y(de\034ned)28 +b(lists)f(are:)733 789 y Ft(\\ocplist\\French)o(OC)o(P)38 +b(=)907 888 y([\(1.0:\\ocpA\),)g(\(2.0:\\ocpB\),)g(\(3.0:\\ocpC\)])733 +988 y(\\ocplist\\German)o(OC)o(P)g(=)907 1088 y([\(1.0:\\ocpD\),)g +(\(2.0:\\ocpE\),)g(\(3.0:\\ocpF\)])733 1187 y(\\ocplist\\Arabic)o(OC)o +(P)g(=)907 1287 y([\(1.0:\\ocpG\),)g(\(2.0:\\ocpH,\\ocpI)o(\),)f +(\(3.0:\\ocpJ\)])733 1386 y(\\ocplist\\Specia)o(lA)o(rab)o(ic)o(OC)o(P) +h(=)907 1486 y([\(1.0:\\ocpG\),)g(\(2.0:\\ocpH,\\ocpI)o(\),)f +(\(3.0:\\ocpJ,\\ocpK)o(\)])733 1586 y(\\ocplist\\UpperC)o(as)o(eOC)o(P) +g(=)907 1685 y([\(2.5:\\ocpL\)])639 1851 y Fv(Consider)27 +b(no)n(w)g(the)h(sequence)f(of)g(instructions)733 2017 +y Ft(\\clearocplists)733 2117 y(\\pushocplist\\Fr)o(en)o(chO)o(CP)733 +2217 y(\\pushocplist\\Up)o(pe)o(rCa)o(se)o(OC)o(P)733 +2316 y(\\pushocplist\\Ge)o(rm)o(anO)o(CP)733 2416 y(\\popocplist)733 +2516 y(\\popocplist)733 2615 y(\\pushocplist\\Ar)o(ab)o(icO)o(CP)733 +2715 y(\\pushocplist\\Sp)o(ec)o(ial)o(Ar)o(ab)o(icO)o(CP)733 +2814 y(\\pushocplist\\Ge)o(rm)o(anO)o(CP)639 2980 y Fv(The)h +(e\033ectiv)n(e)f(enabled)h Fu(\012)p Fv(CP)g(list)g(is,)f(in)h(turn:) +733 3147 y Ft([])733 3246 y([\(1.0:\\ocpA\),)38 b(\(2.0:\\ocpB\),)g +(\(3.0:\\ocpC\)])733 3346 y([\(1.0:\\ocpA\),)g(\(2.0:\\ocpB\),)g +(\(2.5:\\ocpL\),)h(\(3.0:\\ocpC\)])733 3445 y([\(1.0:\\ocpD\),)f +(\(2.0:\\ocpE\),)g(\(2.5:\\ocpL\),)h(\(3.0:\\ocpF\)])733 +3545 y([\(1.0:\\ocpA\),)f(\(2.0:\\ocpB\),)g(\(2.5:\\ocpL\),)h +(\(3.0:\\ocpC\)])733 3645 y([\(1.0:\\ocpA\),)f(\(2.0:\\ocpB\),)g +(\(3.0:\\ocpC\)])733 3744 y([\(1.0:\\ocpG\),)g(\(2.0:\\ocpH,\\ocp)o +(I\))o(,)g(\(3.0:\\ocpJ\)])733 3844 y([\(1.0:\\ocpG\),)g +(\(2.0:\\ocpH,\\ocp)o(I\))o(,)g(\(3.0:\\ocpJ,\\ocp)o(K\))o(])733 +3944 y([\(1.0:\\ocpD\),)g(\(2.0:\\ocpE\),)g(\(3.0:\\ocpF\)])639 +4110 y Fv(The)27 b(\034rst)f(test)h(of)g(the)g Fu(\012)p +Fv(CP)g(lists)g(w)n(as)f(for)g(Arabic.)36 b(The)27 b(text)g(w)n(as)e(t) +n(yp)r(ed)i(in)g Fe(asci)r(i)p Fv(,)515 4209 y(using)f(a)g(Latin)h +(transliteration.)35 b(This)27 b(text)g(w)n(as)e(\034rst)i(transformed) +e(in)n(to)i(Unico)r(de,)g(the)515 4309 y(o\036cial)k(16-bit)g(enco)r +(ding)g(for)g(the)i(w)n(orld's)d(c)n(haracter)g(sets.)49 +b(These)31 b(letters)h(w)n(ere)f(then)515 4408 y(translated)c(in)n(to)h +(their)h(appropriate)d(visual)i(forms)g(\(isolated,)g(initial,)h +(medial)f(or)g(\034nal\))515 4508 y(and)36 b(then)g(the)h(text)f(w)n +(as)f(translated)h(in)n(to)g(the)g(fon)n(t)g(enco)r(ding.)62 +b(During)36 b(the)h(second)515 4608 y(translation,)27 +b(in)n(ter-letter)h(blac)n(k)f(spacing)h(is)g(inserted,)g(since)h +(Arabic)e(t)n(yp)r(esetting)i(calls)515 4707 y(for)e(w)n(ord)f +(expansion)h(to)g(\034ll)h(out)g(a)f(line.)37 b(Here)27 +b(is)g(the)h(input:)733 4873 y Ft(\\font\\ARfont=oa)o(r1)o(0)38 +b(scaled)j(1728)g(offset)h(256)g(\045\045)h(an)f(X-font)733 +4973 y(\\def\\keshideh{\045)1905 5255 y Fv(40)p eop +%%Page: 41 41 +41 40 bop 733 523 a Ft(\\begingroup\\pen)o(al)o(ty1)o(00)o(00)o(\045) +733 623 y(\\clearocplists\\)o(xl)o(ead)o(er)o(s\\)o(hbo)o(x{)o(\\c)o +(har)o('7)o(67})o(\\h)o(sk)o(ip0)o(pt)o(pl)o(us1)o(fi)o(\045)733 +722 y(\\endgroup})733 822 y(\\ocp\\TexUni=TeX)o(Ar)o(abi)o(cT)o(oU)o +(nic)o(od)o(e)733 922 y(\\ocp\\UniUniTwo=)o(Un)o(ico)o(de)o(To)o(Con)o +(tU)o(ni)o(cod)o(e)733 1021 y(\\ocp\\UniTwoFont)o(=C)o(ont)o(Un)o(ic)o +(ode)o(To)o(Te)o(XAr)o(ab)o(icO)o(ut)733 1121 y(\\ocplist\\Arabic)o(OC) +o(P=\045)733 1220 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\TexUni)733 +1320 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\UniUniTwo)733 +1420 y(\\addbeforeocpli)o(st)37 b(1)43 b(\\UniTwoFont)733 +1519 y(\\nullocplist)733 1619 y(\\def\\AR#1{\\begi)o(ng)o(rou)o(p\\)o +(no)o(ind)o(en)o(t\\)o(pus)o(ho)o(cpl)o(is)o(t)37 b(\\ArabicOCP\045)733 +1719 y(\\ARfont\\languag)o(e=)o(255)o(\\t)o(ex)o(tdi)o(r)g(TRT)43 +b(#1\\endgroup})639 1872 y Fv(Notice)35 b(that)g(the)g +Ft(\\keshideh)p Fv(,)e(whic)n(h)h(is)h(dynamically)e(inserted)i(b)r(et) +n(w)n(een)f(letters)515 1972 y(b)n(y)29 b(the)g Ft(\\UniUniTwo)c +Fu(\012)p Fv(CP)-7 b(,)30 b(uses)f(the)g Ft(fi)g Fv(in\034nit)n(y)-7 +b(.)42 b(It)30 b(also)e(disables)g(all)h(of)g(the)h Fu(\012)p +Fv(CPs,)515 2072 y(within)e(a)f(group.)515 2343 y Fw(12)131 +b(Input)44 b(and)g(output)g(c)l(haracter)h(sets)639 2525 +y Fv(In)30 b(a)f(m)n(ultilingual,)h(heterogeneous)d(en)n(vironmen)n(t,) +i(it)h(it)g(inevitable)f(that)h(di\033eren)n(t)515 2625 +y(\034les)i(will)g(b)r(e)g(written)g(using)g(di\033eren)n(t)g(c)n +(haracter)e(sets.)49 b(It)33 b(is)e(ev)n(en)h(p)r(ossible)f(that)i(the) +515 2725 y(same)h(\034le)h(migh)n(t)f(ha)n(v)n(e)g(di\033eren)n(t)h +(parts)f(that)h(use)f(di\033eren)n(t)h(c)n(haracter)e(sets.)58 +b(Ho)n(w)34 b(is)515 2824 y(it)c(p)r(ossible)f(to)g(tag)f(these)i +(\034les)f(in)n(ternally)g(so)f(that)i Fu(\012)f Fv(can)g(read)g(and)g +(write)g(di\033eren)n(tly)515 2924 y(enco)r(ded)e(\034les)h(in)g(a)f +(meaningful)g(manner.)639 3023 y(After)19 b(lo)r(oking)e(at)i(a)f(lot)g +(of)h(c)n(haracter)d(sets,)k(w)n(e)e(ha)n(v)n(e)f(decided)i(that)f(the) +h(v)-5 b(ast)19 b(ma)5 b(jorit)n(y)515 3123 y(of)25 b(the)h(w)n(orld's) +e(c)n(haracter)g(sets)h(\026)g(unfortunately)h(not)f(all)g(\026)h(can)f +(b)r(e)h(categorized)d(in)n(to)515 3223 y(one)k(of)g(the)h(follo)n +(wing)f(groups:)639 3376 y Fp(\017)41 b Ft(onebyte)32 +b Fv(includes)j(all)g(those)f(c)n(haracter)f(sets)h(that)h(include)g +(the)g(basic)g(Roman)722 3476 y(letters,)g(bac)n(kslash)d(and)i(p)r +(ercen)n(t)f(in)h(the)g(same)g(p)r(ositions)f(as)g(do)r(es)g +Fe(asci)r(i)i Fv(\()p Fe(iso-)722 3576 y(646)p Fv(\).)g(Hence)23 +b(all)f(the)h Fe(iso-8859)f Fv(c)n(haracter)e(sets,)k(as)e(w)n(ell)g +(as)f(man)n(y)h(of)h(the)f(shifted)722 3675 y(East-Asian)27 +b(sets,)h(suc)n(h)f(as)g(Shift-)p Fe(jis)p Fv(,)h(are)f(included.)639 +3835 y Fp(\017)41 b Ft(ebcdic)c Fv(includes)i(all)g(those)g(c)n +(haracter)e(sets)i(that)g(include)h(the)f(basic)g(Roman)722 +3935 y(letters,)34 b(bac)n(kslash)d(and)i(p)r(ercen)n(t)g(in)g(the)g +(same)f(p)r(ositions)h(as)f(do)r(es)g Fe(ebcdic-us)p +Fv(.)722 4034 y(Once)27 b(again)g(there)g(are)g(shifted)h(c)n(haracter) +d(sets)j(that)f(fall)h(in)n(to)f(this)h(category)-7 b(.)639 +4194 y Fp(\017)41 b Ft(twobyte)32 b Fv(includes)j(all)g(those)f(c)n +(haracter)f(sets)h(that)h(include)g(the)g(basic)g(Roman)722 +4294 y(letters,)45 b(bac)n(kslash)39 b(and)i(p)r(ercen)n(t)g(in)h(the)f +(same)g(p)r(ositions)g(as)f(do)r(es)h Fe(unicode)722 +4394 y Fv(\()p Fe(iso-10646)p Fv(\).)639 4554 y Fp(\017)g +Ft(twobyteLE)29 b Fv(is)j(the)h(same)f(as)f Ft(twobyte)p +Fv(,)g(but)i(in)g(Little)g(Endian)f(order,)h(for)f(\020Mi-)722 +4653 y(crosoft)27 b Fe(unicode)p Fv(\021.)639 4807 y(These)h +(categories)d(are)i(called)g Fk(mo)l(des)p Fv(.)639 4907 +y(In)h Fu(\012)p Fv(,)h(it)f(is)g(assumed)f(that)h(ev)n(ery)f(textual)h +(input)g(source)f(and)h(textual)g(output)g(sink)515 5006 +y(has)39 b(a)g(mo)r(de,)k(as)c(w)n(ell)h(as)f(t)n(w)n(o)g +(translations:)60 b(one)39 b(from)h(the)g(c)n(haracter)d(set)j(to)g +(the)1905 5255 y(41)p eop +%%Page: 42 42 +42 41 bop 515 523 a Fv(in)n(ternal)33 b(enco)r(ding,)h(and)g(one)f +(from)g(the)h(in)n(ternal)f(enco)r(ding)g(to)g(the)h(c)n(haracter)d +(set)j(in)515 623 y(question.)48 b(Normally)30 b(the)i(in)n(ternal)f +(enco)r(ding)g(will)h(b)r(e)g Fe(unicode)p Fv(,)g(whic)n(h)g(means)f +(that)515 722 y(linguistic)j(information)g(suc)n(h)g(as)g(h)n +(yphenation)g(will)h(only)f(need)h(to)g(b)r(e)g(de\034ned)g(once.)515 +822 y(There)27 b(are)g(situations)h(in)g(whic)n(h)g(extra)f(c)n +(haracters)f(will)j(b)r(e)f(needed,)g(if)h(the)f(c)n(haracters)515 +922 y(or)e(their)i(scripts)f(are)f(not)i(included)g(in)g +Fe(unicode)p Fv(,)f(but)i(this)e(will)h(not)g(b)r(e)g(the)g(norm.)639 +1021 y Fu(\012)g Fv(has)f(t)n(w)n(o)g(basic)g(st)n(yle)h(of)f(input:)38 +b(the)28 b(old)g(T)2111 1039 y(E)2157 1021 y(X)g(st)n(yle,)g(or)e(the)j +(automatic)e Fu(\012)g Fv(st)n(yle.)515 1121 y(In)33 +b(the)h(automatic)f(st)n(yle,)h(up)r(on)g(op)r(ening)f(a)g(\034le,)i +Fu(\012)f Fv(reads)e(the)i(\034rst)f(t)n(w)n(o)f(o)r(ctets,)j(and)515 +1220 y(dra)n(ws)26 b(the)i(follo)n(wing)e(conclusions:)639 +1378 y Fp(\017)41 b Fv(Hex)28 b Ft(0025)e Fv(\()p Fe(unicode)i +Ft(\045)p Fv(\))f(or)g Ft(005c)f Fv(\()p Fe(unicode)i +Ft(\\)p Fv(\):)36 b(the)28 b(mo)r(de)g(is)f Ft(twobyte)p +Fv(.)639 1540 y Fp(\017)41 b Fv(Hex)28 b Ft(2500)e Fv(\()p +Fe(unicode)i Ft(\045)p Fv(\))f(or)g Ft(5c00)f Fv(\()p +Fe(unicode)i Ft(\\)p Fv(\):)36 b(the)28 b(mo)r(de)g(is)f +Ft(twobyteLE)p Fv(.)639 1701 y Fp(\017)41 b Fv(Hex)28 +b Ft(25)f Fv(\()p Fe(asci)r(i)h Ft(\045)p Fv(\))g(or)e +Ft(5c)h Fv(\()p Fe(asci)r(i)i Ft(\\)p Fv(\):)37 b(the)27 +b(mo)r(de)h(is)g Ft(onebyte)p Fv(.)639 1863 y Fp(\017)41 +b Fv(Hex)28 b Ft(6c)f Fv(\()p Fe(ebcdic-us)h Ft(\045)p +Fv(\))g(or)f Ft(e0)f Fv(\()p Fe(ebcdic-us)j Ft(\\)p Fv(\):)37 +b(the)28 b(mo)r(de)g(is)f Ft(ebcdic)p Fv(.)639 2025 y +Fp(\017)41 b Fv(If)d(none)g(of)g(these)f(four)h(situations)f(o)r +(ccurs,)i(then)g(the)f(default)g(input)g(mo)r(de)g(is)722 +2124 y(assumed.)639 2282 y(Here)27 b(are)g(the)h(primitiv)n(es)f(for)g +(manipulating)g(mo)r(des:)639 2439 y Fp(\017)41 b Ft +(\\DefaultInputMode)21 b Fp(h)p Fk(mo)l(de)7 b Fp(i)28 +b Fv(:)37 b(The)27 b(default)h(input)h(mo)r(de)e(is)h(set)f(to)h +Fp(h)p Fk(mo)l(de)7 b Fp(i)p Fv(.)639 2601 y Fp(\017)41 +b Ft(\\noDefaultInputMo)o(de)21 b Fv(:)37 b(The)27 b(standard)g(T)2201 +2619 y(E)2247 2601 y(X)h(st)n(yle)f(of)h(input)g(is)g(restored.)639 +2762 y Fp(\017)41 b Ft(\\DefaultOutputMod)o(e)17 b Fp(h)p +Fk(mo)l(de)7 b Fp(i)24 b Fv(:)35 b(The)23 b(default)h(output)f(mo)r(de) +h(is)f(set)g(to)g Fp(h)p Fk(mo)l(de)8 b Fp(i)p Fv(.)639 +2924 y Fp(\017)41 b Ft(\\noDefaultOutputM)o(od)o(e)21 +b Fv(:)37 b(The)28 b(standard)f(T)2245 2942 y(E)2291 +2924 y(X)h(st)n(yle)f(of)g(output)h(is)g(restored.)639 +3086 y Fp(\017)41 b Ft(\\InputMode)30 b Fp(h)p Fk(\034le)7 +b Fp(i)34 b(h)p Fk(mo)l(de)8 b Fp(i)34 b Fv(:)50 b(The)34 +b(input)h(mo)r(de)f(for)g(\034le)g Fp(h)p Fk(\034le)7 +b Fp(i)34 b Fv(is)g(c)n(hanged)f(to)722 3186 y Fp(h)p +Fk(mo)l(de)7 b Fp(i)p Fv(,)30 b(where)f Fp(h)p Fk(\034le)6 +b Fp(i)30 b Fv(can)e(b)r(e)i Ft(currentfile)p Fv(,)25 +b(meaning)j(the)i(curren)n(t)e(\034le)h(b)r(eing)722 +3285 y Ft(\\input)p Fv(,)c(or)i(an)g(in)n(teger)g Fg(n)p +Fv(,)h(whic)n(h)f(corresp)r(onds)f(to)h Ft(\\openin)e +Fg(n)p Fv(.)639 3447 y Fp(\017)41 b Ft(\\noInputMode)34 +b Fp(h)p Fk(\034le)6 b Fp(i)39 b Fv(:)59 b(The)38 b(input)i(mo)r(de)e +(for)g(\034le)h Fp(h)p Fk(\034le)6 b Fp(i)39 b Fv(is)f(restored)f(to)i +(the)722 3546 y(standard)27 b(T)1115 3564 y(E)1161 3546 +y(X)h(st)n(yle.)639 3708 y Fp(\017)41 b Ft(\\OutputMode)22 +b Fp(h)p Fk(\034le)7 b Fp(i)27 b(h)p Fk(mo)l(de)7 b Fp(i)28 +b Fv(:)36 b(The)27 b(output)g(mo)r(de)g(for)f(\034le)h +Fp(h)p Fk(\034le)7 b Fp(i)27 b Fv(is)g(c)n(hanged)e(to)722 +3808 y Fp(h)p Fk(mo)l(de)7 b Fp(i)p Fv(,)22 b(where)d +Fp(h)p Fk(\034le)6 b Fp(i)20 b Fv(can)f(b)r(e)h(an)f(in)n(teger)f +Fg(n)p Fv(,)j(whic)n(h)e(corresp)r(onds)f(to)h Ft(\\openout)d +Fg(n)p Fv(.)639 3970 y Fp(\017)41 b Ft(\\noOutputMode)26 +b Fp(h)p Fk(\034le)7 b Fp(i)31 b Fv(:)44 b(The)32 b(output)f(mo)r(de)h +(for)e(\034le)i Fp(h)p Fk(\034le)6 b Fp(i)32 b Fv(is)f(restored)f(to)h +(the)722 4069 y(standard)c(T)1115 4087 y(E)1161 4069 +y(X)h(st)n(yle.)639 4227 y(Here)f(are)g(the)h(primitiv)n(es)f(for)g +(manipulating)g(translations:)639 4384 y Fp(\017)41 b +Ft(\\DefaultInputTran)o(sl)o(at)o(ion)23 b Fp(h)p Fk(mo)l(de)7 +b Fp(i)31 b(h)p Fk(o)l(cp-\034le-name)7 b Fp(i)30 b Fv(:)42 +b(The)30 b(default)g(input)722 4484 y(translation)d(for)g(mo)r(de)g +Fp(h)p Fk(mo)l(de)7 b Fp(i)28 b Fv(is)g Fp(h)p Fk(o)l(cp-\034le-name)7 +b Fp(i)p Fv(.)639 4645 y Fp(\017)41 b Ft(\\noDefaultInputTr)o(an)o(sl)o +(ati)o(on)23 b Fp(h)p Fk(mo)l(de)7 b Fp(i)30 b Fv(:)40 +b(There)29 b(is)g(no)g(longer)f(a)h(default)h(in-)722 +4745 y(put)e(translation)f(for)g(mo)r(de)g Fp(h)p Fk(mo)l(de)8 +b Fp(i)p Fv(.)639 4907 y Fp(\017)41 b Ft(\\DefaultOutputTra)o(ns)o(la)o +(tio)o(n)24 b Fp(h)p Fk(mo)l(de)7 b Fp(i)31 b(h)p Fk(o)l +(cp-\034le-name)7 b Fp(i)31 b Fv(:)42 b(The)31 b(default)f(out-)722 +5006 y(put)e(translation)f(for)g(mo)r(de)g Fp(h)p Fk(mo)l(de)8 +b Fp(i)28 b Fv(is)f Fp(h)p Fk(o)l(cp-\034le-name)7 b +Fp(i)p Fv(.)1905 5255 y(42)p eop +%%Page: 43 43 +43 42 bop 639 523 a Fp(\017)41 b Ft(\\noDefaultOutputT)o(ra)o(ns)o(lat) +o(io)o(n)33 b Fp(h)p Fk(mo)l(de)7 b Fp(i)39 b Fv(:)59 +b(There)38 b(is)g(no)g(longer)g(a)g(default)722 623 y(output)28 +b(translation)f(for)g(mo)r(de)g Fp(h)p Fk(mo)l(de)8 b +Fp(i)p Fv(.)639 789 y Fp(\017)41 b Ft(\\InputTranslation)21 +b Fp(h)p Fk(\034le)6 b Fp(i)28 b(h)p Fk(o)l(cp-\034le-name)7 +b Fp(i)28 b Fv(:)37 b(The)28 b(input)g(translation)f(for)g(\034le)722 +888 y Fp(h)p Fk(\034le)7 b Fp(i)28 b Fv(is)f Fp(h)p Fk(o)l +(cp-\034le-name)7 b Fp(i)p Fv(,)28 b(where)f Fp(h)p Fk(\034le)7 +b Fp(i)28 b Fv(is)f Ft(currentfile)c Fv(or)k(an)g(in)n(teger)g +Fg(n)p Fv(.)639 1054 y Fp(\017)41 b Ft(\\noInputTranslati)o(on)20 +b Fp(h)p Fk(\034le)7 b Fp(i)27 b Fv(:)36 b(There)27 b(is)f(no)h(longer) +e(an)i(input)g(translation)f(for)722 1154 y(\034le)i +Fp(h)p Fk(\034le)7 b Fp(i)p Fv(.)639 1320 y Fp(\017)41 +b Ft(\\OutputTranslatio)o(n)26 b Fp(h)p Fk(\034le)7 b +Fp(i)33 b(h)p Fk(o)l(cp-\034le-name)7 b Fp(i)33 b Fv(:)47 +b(The)32 b(output)h(translation)f(for)722 1420 y(\034le)c +Fp(h)p Fk(\034le)7 b Fp(i)28 b Fv(is)f Fp(h)p Fk(o)l(cp-\034le-name)7 +b Fp(i)p Fv(,)28 b(where)f Fp(h)p Fk(\034le)7 b Fp(i)27 +b Fv(is)h(an)f(in)n(teger)g Fg(n)p Fv(.)639 1586 y Fp(\017)41 +b Ft(\\noOutputTranslat)o(io)o(n)24 b Fp(h)p Fk(\034le)7 +b Fp(i)30 b Fv(:)42 b(There)30 b(is)f(no)h(longer)f(an)h(output)g +(translation)722 1685 y(for)d(\034le)h Fp(h)p Fk(\034le)7 +b Fp(i)p Fv(.)639 1851 y(All)26 b(of)g(the)g(ab)r(o)n(v)n(e)e +(instructions)i(apply)f(only)g(after)h(the)g(carriage)d(return)i +(ending)h(the)515 1951 y(curren)n(t)g(line.)639 2051 +y(The)37 b(default)f(mo)r(de)g(when)h(the)f(system)g(b)r(egins)g(is)g +Fu(\012)h Fv(st)n(yle,)h(assuming)e Ft(onebyte)p Fv(.)515 +2150 y(This)25 b(is)f(su\036cien)n(t)h(for)g(all)g(the)g +Ft(iso-8859)d Fv(c)n(haracter)g(sets,)k(for)e(the)h Fe(utf-8)h +Fv(enco)r(ding)f(for)515 2250 y Fe(unicode)p Fv(,)31 +b(man)n(y)f(national)g(c)n(haracter)e(sets,)j(and)f(most)h +(mixed-length)f(c)n(haracter)e(sets)515 2350 y(used)f(in)h(East)g +(Asia.)639 2449 y(Once)d(the)g(basic)f(family)g(of)h(c)n(haracter)e +(sets)h(has)g(b)r(een)h(determined,)h Fu(\012)f Fv(can)f(read)g(the)515 +2549 y(\034les,)36 b(and)e(actually)f(in)n(terpret)h(con)n(trol)f +(sequences.)56 b(It)35 b(is)f(then)h(p)r(ossible)f(to)g(b)r(e)h(more) +515 2648 y(sp)r(eci\034c)28 b(and)g(to)g(sp)r(ecify)h(exactly)f(what)g +(translation)f(pro)r(cess)g(m)n(ust)i(b)r(e)f(applied)h(to)f(the)515 +2748 y(en)n(tire)f(\034le)h(to)f(con)n(v)n(ert)f(the)i(input)g(to)g +Fe(unicode)p Fv(.)639 2848 y(Input)37 b(translations)e(are)h(simply)g +(single)g Fu(\012)p Fv(CPs,)j(whic)n(h)d(di\033er)g(from)g(input)h +(\034lters)515 2947 y(in)32 b(that)g(they)g(apply)g(to)g +Fk(al)t(l)41 b Fv(c)n(haracters)30 b(in)i(a)g(\034le,)h(not)f(simply)g +(the)g(letters)g(and)g(other)515 3047 y(c)n(haracters)d(in)j(horizon)n +(tal)e(mo)r(de.)50 b(F)-7 b(or)31 b(eac)n(h)g(kind)h(of)g(mo)r(de,)h +(there)f(can)f(b)r(e)h(a)g(default)515 3147 y(input)c(translation.)639 +3246 y(Up)r(on)33 b(startup,)h(there)e(is)g(no)g(default)h(translation) +f(for)g(the)g Ft(onebyte)p Fv(,)f Ft(twobyte)f Fv(or)515 +3346 y Ft(twobyteLE)24 b Fv(mo)r(des,)j(but)h(there)g(is)f(one)g(for)g +Ft(ebcdic)p Fv(,)e(namely)733 3512 y Ft(\\ocp\\OCPebcdic=)o(eb)o(cdi)o +(c)733 3611 y(\\DefaultInputTr)o(an)o(sla)o(ti)o(on)37 +b(ebcdic)k(\\OCPebcdic)515 3886 y Fw(13)131 b(F)-11 b(urther)44 +b(w)l(ork)639 4068 y Fv(The)32 b Fu(\012)h Fv(pro)5 b(ject)31 +b(is)h(far)g(from)g(\034nished.)50 b(Curren)n(tly)32 +b(m)n(uc)n(h)g(of)g(the)g(curren)n(t)f(w)n(ork)g(is)515 +4167 y(geared)19 b(to)n(w)n(ards)f(fon)n(t)i(dev)n(elopmen)n(t.)34 +b(Nev)n(ertheless,)21 b(new)f(functionalit)n(y)g(is)g(to)h(b)r(e)f +(added)515 4267 y(in)30 b(the)h(future.)45 b(In)30 b(particular,)f +(more)h(general)e(metho)r(ds)j(for)e(h)n(yphenation,)h(as)g(w)n(ell)g +(as)515 4367 y(for)d(text)h(output,)g(using)f Fu(\012)p +Fv(TPs,)h(are)e(en)n(visaged.)1905 5255 y(43)p eop +%%Trailer +end +userdict /end-hook known{end-hook}if +%%EOF diff --git a/Master/texmf-dist/doc/omega/base/doc-1.8.tex b/Master/texmf-dist/doc/omega/base/doc-1.8.tex new file mode 100644 index 00000000000..ec991c36710 --- /dev/null +++ b/Master/texmf-dist/doc/omega/base/doc-1.8.tex @@ -0,0 +1,2323 @@ +\documentclass[fleqn]{article} +\usepackage[T1]{fontenc} + +\newcommand{\OMEGA}{$\Omega$} +\newcommand{\LAMBDA}{$\Lambda$} +\newcommand{\OTP}{\OMEGA TP} +\newcommand{\OCP}{\OMEGA CP} +\newcommand{\mymathtt}[1]{\mbox{\texttt{#1}}} +\newcommand{\mymathit}[1]{\mbox{\emph{#1}}} +\newcommand{\myit}[1]{\mbox{\emph{#1}}} +\newcommand{\OFM}{\OMEGA FM} +\newcommand{\TFM}{TFM} +\newcommand{\PL}{PL} +\newcommand{\VF}{VF} +\newcommand{\VP}{VP} +\newcommand{\OPL}{\OMEGA PL} +\newcommand{\OVF}{\OMEGA VF} +\newcommand{\OVP}{\OMEGA VP} +\newcommand{\bits}[1]{\langle\mbox{\emph{#1-bit number}}\rangle} +\newcommand{\showfile}{\langle\mbox{\emph{file}}\rangle} +\newcommand{\showmode}{\langle\mbox{\emph{mode}}\rangle} +\newcommand{\showdir}{\langle\mbox{\emph{direction}}\rangle} +\newcommand{\showcs}{\langle\mbox{\emph{control-sequence}}\rangle} +\newcommand{\showtext}{\langle\mbox{\emph{typeset-material}}\rangle} +\newcommand{\showpenalty}{\langle\mbox{\emph{penalty}}\rangle} +\newcommand{\showtno}{\langle\mbox{\emph{table-no}}\rangle} +\newcommand{\showeno}{\langle\mbox{\emph{entry-no}}\rangle} +\newcommand{\showtable}{\langle\mbox{\emph{table-definition}}\rangle} +\newcommand{\showrule}{\langle\mbox{\emph{rule-definition}}\rangle} +\newcommand{\showglue}{\langle\mbox{\emph{glue-definition}}\rangle} +\newcommand{\showivalue}{\langle\mbox{\emph{ivalue-definition}}\rangle} +\newcommand{\showfvalue}{\langle\mbox{\emph{fvalue-definition}}\rangle} +\newcommand{\showmvalue}{\langle\mbox{\emph{mvalue-definition}}\rangle} +\newcommand{\showpenaltydef}{\langle\mbox{\emph{penalty-definition}}\rangle} +\newcommand{\showinteger}{\langle\mbox{\emph{integer}}\rangle} +\newcommand{\showfixword}{\langle\mbox{\emph{real}}\rangle} +\newcommand{\showorder}{\langle\mbox{\emph{order}}\rangle} +\newcommand{\showkind}{\langle\mbox{\emph{kind}}\rangle} +\newcommand{\showchardefn}{\langle\mbox{\emph{character-definition}}\rangle} +\newcommand{\showligocp}{\langle\mbox{\emph{ocp-file-name}}\rangle} + +\begin{document} +\title{Draft documentation for the \OMEGA\ system} +\author{John Plaice\thanks{School of Computer Science +and Engineering, University of New South Wales, +Sydney 2052, Australia. \texttt{plaice@cse.unsw.edu.au}} +\and Yannis Haralambous\thanks{Atelier Fluxus Virus, +187,~rue Nationale, F-59800 Lille, France. +\texttt{yannis@fluxus-virus.com}}} +\date{March 1999} +\maketitle + +\section{Introduction} +The \OMEGA\ (Omega) typesetting system, an extension of Donald Knuth's \TeX, +is designed for the typesetting of all the world's languages. It +normally uses the Unicode character encoding standard +as internal representation, although it can +accept any other character set for input or output. Since it allows +one to dynamically define finite state automata to translate from +one encoding to another, it is possible to define complex contextual +analysis for ligature choice, character cluster building or diacritic +placement, as required for scripts such as Arabic, Devanagari, +Hebrew or Khmer. It also allows any number of transliterations, +allowing anyone to type texts for any script, using any other script. +\OMEGA\ currently supports multidirectional writing, therefore +allowing typesetting of Hebrew, Arabic, Chinese, Japanese, Mongolian +and many other scripts. + +A Unicode-based font is also being designed for the alphabetic +scripts. This font is made up of four subfonts: (1)~Latin, Greek, +Cyrillic, Armenian, Georgian, punctuation; (2)~Hebrew, Arabic, Syriac; +(3)~Dingbats and non-letterlike symbols; (4)~Indic and South-East +Asian scripts. This font consists of all the glyphs required to +properly typeset each of the scripts, which means much more than +designing one glyph for each Unicode position. + +This document is the draft documentation for the \OMEGA\ typesetting +system, designed and developed by the authors. This draft document +accompanies the 1.8~release of~\OMEGA, which is available~at: +\begin{verbatim} + ftp://ftp.cse.unsw.edu.au/users/plaice/Omega +\end{verbatim} +or at any of the CTAN sites. + +This documentation should be considered cursory. +In particular, it only describes the drivers that +have been developed for typesetting and viewing, +and only presents the tools that are +based on \texttt{web2c}. + +For more information, see our Web page, currently~at: +\begin{verbatim} + http://www.ens.fr/omega +\end{verbatim} + +\section{Implementation} + +The canonical \OMEGA\ implementation is based on the standard +\texttt{web2c} \TeX\ distribution. Currently, \OMEGA\ is based +on \texttt{web2c-7.3}. This means that the following standard +distributions automatically include~\OMEGA: +\begin{itemize} +\item +Thomas Esser's Te\TeX\ (Unix).\\ +Look up \verb|http://www.tug.org/tetex/|\\ +or \verb|mailto:te@informatik.uni-hannover.de|~. +\item +Fabrice Popineau's \TeX Win32 (Windows95/NT).\\ +Look up \verb|ftp://ftp.ese-metz.fr/pub/TeX/win32|\\ +or \verb|mailto:popineau@esemetz.ese-metz.fr|~. +\item +Sebastian Rahtz's \TeX Live (CD-ROM).\\ +Look up \verb|http://www.tug.org/texlive.html|\\ +or \verb|mailto:s.rahtz@elsevier.co.uk|~. +\end{itemize} + +In addition, there are currently two other prepackaged +\TeX\ environments that support~\OMEGA: +\begin{itemize} +\item +Tom Kiffe's CMac\OMEGA\ (MacIntosh).\\ +Look up \verb|http://www.kiffe.com/cmacomega.html|\\ +or \verb|mailto:tom@kiffe.com|~. +\item +Christian Schenk's MiK\TeX\ (Windows95/NT).\\ +Look up \verb|http://www.inx.de/~cschenk/miktex|\\ +or \verb|mailto:cschenk@snafu.de|~. +\end{itemize} + +The three files distributed with the \OMEGA\ implementation are +\begin{verbatim} + web2c-7.3-omega-1.8.tar.gz + omegalib-1.8.tar.gz + omegadoc-1.8.tar.gz +\end{verbatim} +To install \OMEGA, you will require the standard \TeX\ distribution +as well. These files include +\begin{verbatim} + web-7.3.tar.gz + web2c-7.3.tar.gz +\end{verbatim} +as well as a standard \texttt{texmf} tree. +In addition to these files, the following drivers are needed: +\begin{verbatim} + dvipsk.tar.gz + odvipsk.tar.gz + gsftopk.tar.gz + xdvik.tar.gz + oxdvik.tar.gz + libwww.tar.gz +\end{verbatim} +These files are all made available in the above \texttt{ftp} sites. + +The installation procedure is described below. Assume that +\begin{itemize} +\item \verb|/usr/local/ftp| contains your downloaded files; +\item \verb|/usr/local/src| is where you place source files; and +\item \verb|/usr/local/share| is where the \texttt{texmf} tree is +to be placed; +\end{itemize} +\begin{verbatim} + FTP=/usr/local/ftp + SHARE=/usr/local/share + SRC=/usr/local/src + cd $SHARE + tar xzf $FTP/texmflib.tar.gz + tar xzf $FTP/omegalib-1.8.tar.gz + cd $SRC + tar xzf $FTP/web-7.3.tar.gz + tar xzf $FTP/web2c-7.3.tar.gz + tar xzf $FTP/web2c-7.3-omega-1.8.tar.gz + cd web2c-7.3 + tar xzf $FTP/dvipsk.tar.gz + tar xzf $FTP/odvipsk.tar.gz + tar xzf $FTP/gsftopk.tar.gz + tar xzf $FTP/xdvik.tar.gz + tar xzf $FTP/oxdvik.tar.gz + tar xzf $FTP/libwww.tar.gz + configure + make +\end{verbatim} +You will have to choose whether your call to \texttt{configure} +needs any arguments. Note that the files may not look exactly +like this, but you should be able to figure out what is happening. + +\section{What does \OMEGA\ offer?} + +The \OMEGA\ system is a derivative of Donald Knuth's \TeX. As such, +all of the \TeX\ file types can be used by \OMEGA\ as well. In +addition there are six new file types. They are: +\vspace*{.2cm} + +\begin{tabular}{lll} +Suffix & Replaces & Description\\ +\hline +\texttt{.opl} & \texttt{.pl} & Font property list (text)\\ +\texttt{.ofm} & \texttt{.tfm} & Font metric (binary)\\ +\texttt{.ovp} & \texttt{.vpl} & Virtual property list (text)\\ +\texttt{.ovf} & \texttt{.vf} & Virtual font (binary)\\ +\texttt{.otp} & ------ & \OMEGA\ Translation Process (text)\\ +\texttt{.ocp} & ------ & \OMEGA\ Compiled Process (binary)\\ +\end{tabular} +\vspace*{.2cm} + +\noindent These different file types are described in future sections. + +\noindent +The \OMEGA\ distribution contains several binaries, described below: +\vspace*{.2cm} + +\begin{tabular}{lll} +Binary & Replaces & Description\\ +\hline +\texttt{omega} (\OMEGA) & \TeX & Typesetting engine + ($\texttt{.tex} \rightarrow \texttt{.dvi}$) \\ +\texttt{lambda} (\LAMBDA) & \LaTeX & For structured documents + ($\texttt{.tex} \rightarrow \texttt{.dvi}$) \\ +\texttt{odvips} & \texttt{dvips} & PostScript driver + ($\texttt{.dvi} \rightarrow \texttt{.ps}$) \\ +\texttt{oxdvi} & \texttt{xdvi} & Screen previewer for \texttt{.dvi} + ($\texttt{.dvi} \rightarrow \textrm{screen}$) \\ +\texttt{odvicopy} & \texttt{dvicopy} & De-virtualizes \texttt{.dvi} + ($\texttt{.dvi} \rightarrow \texttt{.dvi}$) \\ +\texttt{odvitype} & \texttt{dvitype} & Debugging for \texttt{.dvi} + ($\texttt{.dvi} \rightarrow \textrm{text}$) \\ +\texttt{opl2ofm} & \texttt{pltotf} & Build font metric + ($\texttt{.opl} \rightarrow \texttt{.ofm}$) \\ +\texttt{ofm2opl} & \texttt{tftopl} & Debugging for \texttt{.ofm} + ($\texttt{.ofm} \rightarrow \texttt{.opl}$) \\ +\texttt{ovp2ovf} & \texttt{vptovf} & Build virtual font + ($\texttt{.ovp} \rightarrow \texttt{.ofm}\times\texttt{.ovf}$) \\ +\texttt{ovf2ovp} & \texttt{vftovp} & Debugging for \texttt{.ovf} + ($\texttt{.ofm}\times\texttt{.ovf} \rightarrow \texttt{.ovp}$) \\ +\texttt{otp2ocp} & ------ & Compile \OTP{} + ($\texttt{.otp} \rightarrow \texttt{.ocp}$) \\ +\texttt{outocp} & ------ & Debugging for \texttt{.ocp} + ($\texttt{.ocp} \rightarrow \textrm{text}$)\\ +\texttt{mkofm} & \texttt{mktextfm} & Generate \texttt{.ofm} file if needed\\ +\texttt{mkocp} & ------ & Generate \texttt{.ocp} file if needed\\ +\end{tabular} + +\section{Sixteen-bit fonts, registers, etc.} + +One of the fundamental limitations of \TeX3 is that most quantities can +only range between 0~and~255. Fonts are limited to~256 characters each, +only 256 fonts are allowed simultaneously, only 256 of any given kind of +can be used simultaneously, etc. \OMEGA\ loosens these restrictions, +allowing 65~536 (0--65~535) of each of these entities. + +\subsection{Characters} + +Each font can allow up to 65~536 characters, ranging between +0~and~65~535. Unless other means are provided, using \OMEGA\ +Translation Processes (see section~\ref{lab:otps}), the input +and output mechanisms for characters between 256 (hex~100) +and 65~535 (hex~ffff) use four circumflexes. For example, +\verb|^^^^cab0| means hex value \verb|cab0| and \verb|^^^^0020| +is the space character. + +\subsection{Fonts} + +Up to 65~536 fonts may be used. This is handled automatically, +and space is allocated as needed. + +\subsection{Registers} + +Up to 65~536 registers of each kind may be used. The only case to +be noted is that \verb|\box255| remains the box used by the output +routine. + +\subsection{Math codes} + +\TeX\ allows the use of 16 ($2^4$) font families, each font +of 256 ($2^8$) characters. +To access the characters in the math fonts, and to define how +they are to be used, there are several basic primitives: + +\begin{itemize} +\item \verb|\mathcode| $\bits{8}=\bits{15}$:\\ +Defines 15-bit math code for character; +\item \verb|\mathcode| $\bits{8}$:\\ +Outputs 15-bit math code associated with character; +\item \verb|\mathchar| $\bits{15}$:\\ +Generates a math character with 15-bit math code; +\item \verb|\mathaccent| $\bits{15}$:\\ +Generates a math accent with 15-bit math code; +\item \verb|\mathchardef| $\showcs=\bits{15}$:\\ +Defines a control sequence with a 15-bit math code; +\item \verb|\delcode| $\bits{8}=\bits{27}$:\\ +Defines 27-bit delimiter code for character; +\item \verb|\delcode| $\bits{8}$:\\ +Outputs 27-bit delimiter code associated with character; +\item \verb|\delimiter| $\bits{27}$:\\ +Generates a math delimiter with 27-bit delimiter code; +\item \verb|\radical| $\bits{27}$:\\ +Generates a math radical with 27-bit delimiter code; +\end{itemize} +where +\begin{itemize} +\item $\bits{8}$ refers to an 8-bit character; +\item $\bits{15}$ refers to value \texttt{0x8000} or a triple +\begin{itemize} +\item 3 bits for math category, +\item 4 bits for font family, +\item 8 bits for character in font, +\end{itemize} +called a \emph{math code}; +\item $\bits{27}$ refers to a negative number or a quintuple +\begin{itemize} +\item 3 bits for math category, +\item 4 bits for first font family, +\item 8 bits for first character in font, +\item 4 bits for second font family, +\item 8 bits for second character in font, +\end{itemize} +called a \emph{delimiter code}. +\end{itemize} + +\OMEGA, on the other hand, allows 256 ($2^8$) +font families, each font of 65~536 ($2^{16}$) characters. +So, in addition to the \TeX\ math font primitives, which continue to work, +there are 16-bit versions: + +\begin{itemize} +\item \verb|\omathcode| $\bits{16}=\bits{27}$:\\ +Defines 27-bit math code for character; +\item \verb|\omathcode| $\bits{16}$:\\ +Outputs 27-bit math code associated with character; +\item \verb|\omathchar| $\bits{27}$:\\ +Generates a math character with 27-bit math code; +\item \verb|\omathaccent| $\bits{27}$:\\ +Generates a math accent with 27-bit math code; +\item \verb|\omathchardef| $\showcs=\bits{27}$:\\ +Defines a control sequence with a 27-bit math code; +\item \verb|\odelcode| $\bits{16}=\bits{51}$:\\ +Defines 51-bit delimiter code for character; +\item \verb|\odelcode| $\bits{16}$:\\ +Outputs 51-bit delimiter code associated with character; +\item \verb|\odelimiter| $\bits{51}$:\\ +Generates a math delimiter with 51-bit delimiter code; +\item \verb|\oradical| $\bits{51}$:\\ +Generates a math radical with 51-bit delimiter code; +\end{itemize} +where +\begin{itemize} +\item $\bits{16}$ refers to a 16-bit character; +\item $\bits{27}$ refers to value \texttt{0x8000000} or a triple +\begin{itemize} +\item 3 bits for math category, +\item 8 bits for font family, +\item 16 bits for character in font, +\end{itemize} +called a \emph{math code}; +\item $\bits{51}$ refers to a pair of numbers, either both negative +or arranged as $\bits{27}\;\bits{24}$, with the first number being: +\begin{itemize} +\item 3 bits for math category, +\item 8 bits for first font family, +\item 16 bits for first character in font, +\end{itemize} +and the second number being: +\begin{itemize} +\item 8 bits for second font family, +\item 16 bits for second character in font, +\end{itemize} +called a \emph{delimiter code}. +\end{itemize} + +Since \OMEGA\ is upwardly compatible with \TeX, the older primitives +still continue to function as expected. Internally, math codes are +27-bit numbers and delimiter codes are 51-bit numbers. However, +if \verb|\mathcode|$\bits{15}$ appears in text mode, it +continues to generate a 15-bit number, to remain upwardly compatible +with \TeX: Donald Knuth defines several numerical constants through +\verb|\mathcode|. + +\section{New typesetting routines} + +Most of the development in \OMEGA\ has dealt with different means +for manipulating character streams. Nevertheless, there are new +typesetting routines. + +\subsection{New infinity level} + +A new infinity level \texttt{fi} has been added. It is smaller than +\texttt{fil} but bigger than any finite quantity. Its original intention +was for inter-letter stretching: either \emph{filling-in-the-black}, +as is done for calligraphic scripts such as Arabic; or for emphasis, +as in Russian; all this without having to rewrite existing macro packages. +There is therefore a new keyword, \texttt{fi}, and two new primitives, +\verb|\hfi| and~\verb|\vfi|. + +\subsection{Local paragraph parametrization} + +The \OMEGA\ system allows the finetuning of layout, using +\emph{local} paragraph primitives. The first two, +\verb|\localinterlinepenalty| and \verb|\localbrokenpenalty|, are +generalizations of \verb|\interlinepenalty| and \verb|\brokenpenalty|. + +When, say, \verb|\localinterlinepenalty=200| appears, a \emph{whatsit} node +is deposited into the token list for the current paragraph. If the +value is changed again, another whatsit node is deposited. When +\OMEGA\ cuts the paragraph into lines, it will add the current value +of the local penalty to the penalty node that is placed after every line +in the vertical list. Similarly for \verb|\localbrokenpenalty| when a +discretionary hyphen is placed at the end of a line. With these primitives, +it becomes possible to discourage or encourage page breaks at more +specific parts of a paragraph. + +This same local approach is taken for a completely different task: placing +fixed-width typeset material at the beginning (or the end) of every +line in a paragraph. + +{<<~\localleftbox{<<~}The original problem to be solved +was for fine French typesetting, in which guillemets +are placed running down the left side of a paragraph, +as in this paragraph, so long as material is being +quoted.~>>} Since \TeX\ breaks paragraphs in arbitrary +places, it was impossible to develop a robust macro +package that could, in a single pass, place the +guillemets in the right positions. + +The original text for the previous paragraph was: +\begin{verbatim} + {<<~\localleftbox{<<~}The original problem to be solved + was for fine French typesetting, in which guillemets + are placed running down the left side of a paragraph, + as in this paragraph, so long as material is being + quoted.~>>} Since \TeX\ breaks paragraphs in arbitrary + places, it was impossible to develop a robust macro + package that could, in a single pass, place the + guillemets in the right positions. +\end{verbatim} +There are currently four local primitives: +\begin{itemize} +\item \verb|\localleftbox{|$\showtext$\verb|}|:\\ +Until this primitive is redefined, then the typeset material +will be placed at the beginning of every line that follows +the occurrence of this primitive in the text. +\item \verb|\localrightbox{|$\showtext$\verb|}|:\\ +Until this primitive is redefined, then the typeset material +will be placed at the end of every line that follows +the occurrence of this primitive in the text. +\item \verb|\localinterlinepenalty|$\;=\showpenalty$:\\ +Until this primitive is redefined, then the given penalty +value will be added to the penalty node placed between +successive lines in a paragraph. +\item \verb|\localbrokenpenalty|$\;=\showpenalty$:\\ +Until this primitive is redefined, then each time that a +line ends with a discretionary node, then the given penalty +value will be added to the penalty node following that line. +\end{itemize} +Grouping is respected by all of the local paragraph primitives. + +\section{Multiple directions} + +Below is what is available in the experimental versions of~\OMEGA. +Unfortunately we did not consider it to be sufficiently stable +for it to be released generally. Therefore, \OMEGA\ continues +to support the bidirectionality functions of \verb|TeX--XeT|. +In addition, with the \verb|\pagedirHR| and \verb|\pagedirHL|, +primitives, it is possible to transform the entire page into +a right-to-left page or a left-to-right page. Similarly, +\verb|\pardirHR| and \verb|\pardirHL| allow the paragraph +direction to change. The page direction changes should occur +in empty pages, and the paragraph direction changes should +occur outside of horizontal mode. To ensure that tables +are used properly, there is a primitive \verb|nextfakemath|, +which, put in front of math mode, ignores that the mathematics +is supposed to be typeset from left-to-right. This is used +in~\LAMBDA, which goes into math mode to do \verb|tabular| +environments. + +\bigskip + +{\em +Since \TeX\ was originally designed for English, it only supports +left-to-right typesetting. This situation was improved somewhat +with Knuth and MacKay's \verb|TeX-XeT|, modified into Breitenlohner's +\verb|TeX--XeT|. However, these modifications to \TeX\ only +allow the use of right-to-left typesetting, and even then, only +within a particular paragraph. In other words, these systems do +not support the typesetting of a full text in the different writing +directions. + +The \OMEGA\ system distinguishes sixteen different directions, +which are designated by three parameters: +\begin{enumerate} +\item The \emph{beginning of the page} is one of \texttt{T}~(top), +\texttt{L}~(left), \texttt{R}~(right) or~\texttt{B}~(bottom). +For English and Arabic, the beginning of the page is~\texttt{T}; +for Japanese it is~\texttt{R}; for Mongolian it is~\texttt{L}. +\item The \emph{beginning of the line} defines where each line begins. +For English, it is~\texttt{L}; for Arabic, it is~\texttt{R}; for Japanese +and Mongolian, it is~\texttt{T}. +\item The \emph{top of the line} corresponds to the notion +of `up' within a line. Normally, this will be the same as for the +beginning of the page, as in \texttt{TLT} for English, \texttt{TRT} +for Arabic, \texttt{RTR} for Japanese, or \texttt{LTL} for Mongolian. +However, for English included in Mongolian text, successive lines +move `up' the page, which gives direction~\texttt{LTR}. +\end{enumerate} + +The \OMEGA\ system distinguishes three levels of different writing +direction: page (\verb|\pagedir|), text (\verb|\textdir|) and +mathematics (\verb|\mathdir|). Each of these primitives takes +as primitive one of the above sixteen writing directions. +\begin{itemize} +\item \verb|\pagedir| $\showdir$:\quad +The page direction can only be changed if the current vlist +is empty. This decision avoids ambiguous situations. +\item \verb|\textdir| $\showdir$:\quad +This primitive can appear anywhere in a text, and \OMEGA\ will +allow for the moment only mixed horizontal combinations. +Future versions will allow many different combinations, with +parametrization. +Grouping is respected, so it is possible to have inserts +within a paragraph: these are implemented using the local paragraph +mechanism described in the previous section. +\item \verb|\mathdir| $\showdir$:\quad +Normally mathematics is done in the same direction as English, +namely~\texttt{TLT}. There have been situations where it has been +written~\texttt{TRT}. \OMEGA\ allows only eight directions for +mathematics, namely those in which +the first and third direction parameters are identical. +\end{itemize} + +In addition, \OMEGA\ allows one to designate the direction of a box. +For example \verb|\hbox dir TRT{...}| creates a horizontal box, +and uses direction~\texttt{TRT} while building that box. + +Finally, fonts can be stored either naturally or not. In the unnatural +situation, called with primitive \verb|\unnaturaldir|, it is understood +that glyphs in the current font will always appear to the right of the +current point, above the baseline. In the natural situation, called +with \verb|\naturaldir|, glyphs appear in the `correct' direction. So a +natural Arabic font would have the glyphs appear to the left of the +current point, and a natural Japanese font would make the glyphs appear +below the current point. +} + +\section{Fonts for \OMEGA} + +The \TeX\ system takes the following approach to fonts. The \TeX\ driver +reads \TeX\ documents and generates \texttt{.dvi} files. The driver +uses font metric files (suffix \texttt{.tfm}, text version \texttt{.pl}) +to determine how to lay out boxes on a pages. The screen +driver or printer driver transforms the \texttt{.dvi} file in the +appropriate format, using bitmap fonts (\texttt{.pk}), scaled fonts +(\texttt{.pfa} or \texttt{.pfb}), or virtual fonts (\texttt{.vf}, +text version \texttt{.vp}). + +In the \OMEGA\ system, we make no attempt, for the moment, to change the +definition of bitmaps or scaled fonts. We have focused on the font +metrics (\texttt{.ofm}, text version \texttt{.opl}), and the +virtual fonts (\texttt{.ovf}, text version \texttt{.ovp}). + +Currently, these new font file formats come in two versions. The first, +called level~0, corresponds to the 16-bit version of \TFM\ files, with +no new functionality. Level~1 fonts are more ambitious, and provide +for more powerful features, including compression methods and additional +parameters. + +\subsection{Level-0 \OFM\ files} + +The level-0 \OFM\ files are simply 16-bit versions of \TFM\ files, and have +corresponding entries. +Below is a description of the first 14 words of a level-0 \OFM\ file. +Each entry is a 32-bit integer, non-negative and less than~$2^{31}$: +\begin{eqnarray*} +\myit{ofm-level} & = & 0; \\ +\myit{lf} & = & \mbox{length of the file, in words}; \\ +\myit{lh} & = & \mbox{length of the header data, in words}; \\ +\myit{bc} & = & \mbox{smallest character code in the font}; \\ +\myit{ec} & = & \mbox{largest character code in the font}; \\ +\myit{nw} & = & \mbox{number of entries in the width table}; \\ +\myit{nh} & = & \mbox{number of entries in the height table}; \\ +\myit{nd} & = & \mbox{number of entries in the depth table}; \\ +\myit{ni} & = & \mbox{number of entries in the italic correction table}; \\ +\myit{nl} & = & \mbox{number of entries in the lig-kern table}; \\ +\myit{nk} & = & \mbox{number of entries in the kern table}; \\ +\myit{ne} & = & \mbox{number of entries in the extensible character table}; \\ +\myit{np} & = & \mbox{number of font parameter words}; \\ +\myit{font-dir} & = & \mbox{direction of font}. +\end{eqnarray*} +We must have that $\myit{bc}-1\leq \myit{ec}\leq 65535$. +Furthermore, the following identity must hold: +\begin{eqnarray*} +\myit{lf} & = & +14 + \myit{lh} + 2*(\myit{ec}-\myit{bc}+1) + +\myit{nw} + \myit{nh} + \myit{nd} + \myit{ni} +\\ +& & 2*\myit{nl} + \myit{nk} + 2*\myit{ne} + \myit{np}. +\end{eqnarray*} +Note that a font may contain as many as 65536 characters (if $\myit{bc}=0$ +and $\myit{ec}=65535$), and as few as 0~characters +(if $\myit{bc}=\myit{ec}-1$). + +As with \TFM\ files, if two or more octexts are combined to form an integer +of 16~or more bits, the most significant octets appear first in the file. +This is called BigEndian order. + +Also as with \TFM\ files, the rest of the file is a sequence of ten data arrays having the informal specification +\begin{eqnarray*} +\myit{header} & : & + \mathbf{array}\;[0..\myit{lh}-1]\;\mathbf{of}\;\myit{stuff}\\ +\myit{char-info} & : & + \mathbf{array}\;[\myit{bc}..\myit{ec}]\;\mathbf{of}\; + \myit{char-info-word}\\ +\myit{width} & : & + \mathbf{array}\;[0..\myit{nw}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{height} & : & + \mathbf{array}\;[0..\myit{nh}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{depth} & : & + \mathbf{array}\;[0..\myit{nd}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{italic} & : & + \mathbf{array}\;[0..\myit{ni}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{lig-kern} & : & + \mathbf{array}\;[0..\myit{nl}-1]\;\mathbf{of}\; + \myit{lig-kern-command}\\ +\myit{kern} & : & + \mathbf{array}\;[0..\myit{nk}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{exten} & : & + \mathbf{array}\;[0..\myit{ne}-1]\;\mathbf{of}\; + \myit{extensible-recipe}\\ +\myit{param} & : & + \mathbf{array}\;[1..\myit{np}]\;\mathbf{of}\;\myit{fix-word} +\end{eqnarray*} + +There is no need to describe the entire file, only those parts that differ +from \TFM\ files: $\myit{char-info-word}$, +$\myit{lig-kern-command}$ and $\myit{extensible-recipe}$. +Here is a summary of those differences. +\begin{itemize} +\item $\myit{char-info-word}$ (8 octets): + +\begin{tabular}{lr} +$\myit{width}$ & 16 bits\\ +$\myit{height}$ & 8 bits\\ +$\myit{depth}$ & 8 bits\\ +$\myit{italic}$ & 8 bits\\ +$\myit{RFU}$ & 6 bits\\ +$\myit{tag}$ & 2 bits\\ +$\myit{remainder}$ & 16 bits\\ +\end{tabular} + +The meaning is as in \TFM\ files, so there are 65536 possible widths, +256 possible widths, 256 possible heights and 256 possible italic corrections. + +\item $\myit{lig-kern-command}$ (8 octets): + +\begin{tabular}{lr} +$\myit{skip-byte}$ & 16 bits\\ +$\myit{next-char}$ & 16 bits\\ +$\myit{op-byte}$ & 16 bits\\ +$\myit{remainder}$ & 16 bits\\ +\end{tabular} + +The meaning is as in \TFM\ files, with every entry doubling in size. + +\item $\myit{extensible-recipe}$ (8 octets): + +\begin{tabular}{lr} +$\myit{ext-top}$ & 16 bits\\ +$\myit{ext-mid}$ & 16 bits\\ +$\myit{ext-bot}$ & 16 bits\\ +$\myit{ext-rep}$ & 16 bits\\ +\end{tabular} + +Once again, the meaning is as in \TFM\ files, but every entry has +been doubled. +\end{itemize} + +\subsection{Level-0 \OPL\ files} + +The level-0 \OPL\ files are the same as \PL\ files, with the exception +that values restricted to 8~bits can now be 16~bits. + +\subsection{Level-0 \OVF\ files} + +The \OVF\ files are indistinguishable from \VF\ files, +except for the file suffix. They exist only because +the vast majority of drivers balk when they see +characters that are not 8~bits. + +\subsection{Level-0 \OVP\ files} + +The level-0 \OVP\ files are the same as \VP\ files, with the exception +that values restricted to 8~bits can now be 16~bits. + +\subsection{Level-1 \OFM\ files} + +The level-1 fonts take a different approach to level-0 fonts. They do +not make the assumption that typesetting means simply placing +placing glyphs on the baseline, one after another. Example +applications include the automatic placement of glue between characters +in East Asian scripts, the building of consonental clusters for +South-Asian and South-East-Asian scripts, as well as the placing of +diacritics in Arabic and Hebrew. + +Level-1 fonts are different from level-0 fonts at three levels. First, they +allow the definition of six new kinds of table: +\begin{itemize} +\item \textsc{ivalue} tables contain integers. +\item \textsc{fvalue} tables contain fixword values that do not grow with +magnification. +\item \textsc{mvalue} tables contain fixword values that do grow with +magnification. +\item \textsc{rule} tables contain \TeX\ rule definitions. +\item \textsc{glue} tables contain \TeX\ glue definitions. +\item \textsc{penalty} tables contain \TeX\ penalty definitions. +\end{itemize} +There can be several copies of each kind of table, but for the moment, +there is a maximum of 32~new tables in all. + +These new tables can be used as global tables, or can be indexed +on a character-by-character basis in the $\myit{char-info-word}$ entries, +which define character parameters. So, in addition to the standard +parameters of width, height, depth and italic correction, additional +parameters (of the six kinds outlined above) can be given for the +characters. + +To allow these new tables to be used, changes have also been made +to the lig-kern table. +\begin{itemize} +\item Characters can be put into equivalence classes, where all +characters in the same class will act the same in the lig-kern table; +\item Glue nodes, rule nodes and penalty nodes can be inserted +automatically into the stream, exactly as for kern nodes in~\TeX. +\item The lig-kern program can be completely replaced by an \OTP\ (see +section~\ref{lab:otps}). +\end{itemize} + +Now we begin with the first part of the header of a level-1 \OFM\ file. +Here are the first 17~words of a level-1 \OFM\ file. +Each entry below is a 32-bit integer, non-negative and less +than~$2^{31}$. +\begin{eqnarray*} +\myit{ofm-level} & = & 1; \\ +\myit{lf} & = & \mbox{length of the file, in words}; \\ +\myit{lh} & = & \mbox{length of the header data, in words}; \\ +\myit{bc} & = & \mbox{smallest character code in the font}; \\ +\myit{ec} & = & \mbox{largest character code in the font}; \\ +\myit{nw} & = & \mbox{number of entries in the width table}; \\ +\myit{nh} & = & \mbox{number of entries in the height table}; \\ +\myit{nd} & = & \mbox{number of entries in the depth table}; \\ +\myit{ni} & = & \mbox{number of entries in the italic correction table}; \\ +\myit{nl} & = & \mbox{number of entries in the lig-kern table}; \\ +\myit{nk} & = & \mbox{number of entries in the kern table}; \\ +\myit{ne} & = & \mbox{number of entries in the extensible character table}; \\ +\myit{np} & = & \mbox{number of font parameter words}; \\ +\myit{font-dir} & = & \mbox{direction of font}; \\ +\myit{nco} & = & \mbox{offset of the character entries, in words}; \\ +\myit{ncw} & = & \mbox{number of character info words}; \\ +\myit{npc} & = & \mbox{number of parameters per character}. +\end{eqnarray*} +Most of the entries in the first part are as for level-0 fonts. The new +entries pertain to how the $\myit{char-info-word}$ entries are stored. +\begin{itemize} +\item $\myit{nco}$:\quad This value gives the offset into the file +for the first word of the $\myit{char-info-word}$ table. The +$\myit{nco}$ value is required by output drivers, which need quick +access to the characters, even if the total length +of the tables preceding them is not easily computed,. +\item $\myit{ncw}$:\quad Since many large fonts have large numbers +of consecutive characters with identical metrics. These are compressed +in level-1 fonts, and so the number of $\myit{char-info-word}$ +entries is not simply $\myit{ec}-\myit{bc}+1$. The $\myit{ncw}$ +value gives the number of words used for character information, +not the number of entries. +\item $\myit{npc}$:\quad This is the number of extra parameters per character. +\item $\myit{real-lf}$:\quad This would be the length of +the file, were there no compression. +\end{itemize} + +The next twelve entries come in pairs. +For each kind of parameter (\textsc{ivalue}, \textsc{fvalue}, +\textsc{mvalue}, \textsc{rule}, \textsc{glue}, \textsc{penalty}), +the first entry states how many tables of that kind there are, +and the second states how many words these tables require. +\begin{eqnarray*} +\myit{nki} & = & \mbox{number of \textsc{ivalue} tables}; \\ +\myit{nwi} & = & \mbox{number of words for \textsc{ivalue} tables}; \\ +\myit{nkf} & = & \mbox{number of \textsc{fvalue} tables}; \\ +\myit{nwf} & = & \mbox{number of words for \textsc{fvalue} tables}; \\ +\myit{nkm} & = & \mbox{number of \textsc{mvalue} tables}; \\ +\myit{nwm} & = & \mbox{number of words for \textsc{mvalue} tables}; \\ +\myit{nkr} & = & \mbox{number of \textsc{rule} tables}; \\ +\myit{nwr} & = & \mbox{number of words for \textsc{rule} tables}; \\ +\myit{nkg} & = & \mbox{number of \textsc{glue} tables}; \\ +\myit{nwg} & = & \mbox{number of words for \textsc{glue} tables}; \\ +\myit{nkp} & = & \mbox{number of \textsc{penalty} tables}; \\ +\myit{nwp} & = & \mbox{number of words for \textsc{penalty} tables}. +\end{eqnarray*} + +We must have that $\myit{bc}-1\leq \myit{ec}\leq 65535$. +Furthermore, the following identity must hold: +\begin{eqnarray*} +\myit{lf} & = & +29 + \myit{lh} + \myit{ncw} + +\myit{nw} + \myit{nh} + \myit{nd} + \myit{ni} +\\ +& & 2*\myit{nl} + \myit{nk} + 2*\myit{ne} + \myit{np} +\\ +& & \myit{nki} + \myit{nwi} + +\myit{nkf} + \myit{nwf} + +\myit{nkm} + \myit{nwm} +\\ +& & \myit{nkr} + \myit{nwr} + +\myit{nkg} + \myit{nwg} + +\myit{nkp} + \myit{nwp}. +\end{eqnarray*} +Finally, the sum +$\myit{nki}+ \myit{nkf}+ \myit{nkm}+ +\myit{nkr}+ \myit{nkg}+ \myit{nkp}$ +must be less than 32. + +The rest of the file is composed of a number of arrays. The new parameter +tables are placed before the standard dimension tables, as it is difficult +to estimate space requirements without having read the new tables. +Furthermore, the character parameter indices in the $\myit{char-info-word}$ +entries are relative and must be translated into an absolute reference +into the tables. + +\begin{eqnarray*} +\myit{header} & : & + \mathbf{array}\;[0..\myit{lh}-1]\;\mathbf{of}\;\myit{stuff}\\ +\myit{ivalue-no} & : & + \mathbf{array}\;[0..\myit{nki}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{fvalue-no} & : & + \mathbf{array}\;[0..\myit{nkf}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{mvalue-no} & : & + \mathbf{array}\;[0..\myit{nkm}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{rule-no} & : & + \mathbf{array}\;[0..\myit{nkr}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{glue-no} & : & + \mathbf{array}\;[0..\myit{nkg}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{pen-no} & : & + \mathbf{array}\;[0..\myit{nkp}-1]\;\mathbf{of}\;\myit{integer}\\ +\myit{ivalue-table}[0] & : & + \mathbf{array}\;[0..\myit{ivalue-no}[0]-1]\; + \mathbf{of}\;\myit{integer}\\ +& \vdots\\ +\myit{ivalue-table}[\myit{nki}-1] & : & + \mathbf{array}\;[0..\myit{ivalue-no}[\myit{nki}-1]-1]\; + \mathbf{of}\;\myit{integer}\\ +\myit{fvalue-table}[0] & : & + \mathbf{array}\;[0..\myit{fvalue-no}[0]-1]\; + \mathbf{of}\;\myit{fix-word}\\ +& \vdots\\ +\myit{fvalue-table}[\textit{nkf}-1] & : & + \mathbf{array}\;[0..\myit{fvalue-no}[\textit{nkf}-1]-1]\; + \mathbf{of}\;\myit{fix-word}\\ +\myit{mvalue-table}[0] & : & + \mathbf{array}\;[0..\myit{mvalue-no}[0]-1]\; + \mathbf{of}\;\myit{fix-word}\\ +& \vdots\\ +\myit{mvalue-table}[\textit{nkm}-1] & : & + \mathbf{array}\;[0..\myit{mvalue-no}[\textit{nkm}-1]-1]\; + \mathbf{of}\;\myit{fix-word}\\ +\myit{rule-table}[0] & : & + \mathbf{array}\;[0..\myit{rule-no}[0]-1]\; + \mathbf{of}\;\myit{rule-entry}\\ +& \vdots\\ +\myit{rule-table}[\textit{nkr}-1] & : & + \mathbf{array}\;[0..\myit{rule-no}[\textit{nkr}-1]-1]\; + \mathbf{of}\;\myit{rule-entry}\\ +\myit{glue-table}[0] & : & + \mathbf{array}\;[0..\myit{glue-no}[0]-1]\; + \mathbf{of}\;\myit{glue-entry}\\ +& \vdots\\ +\myit{glue-table}[\textit{nkg}-1] & : & + \mathbf{array}\;[0..\myit{glue-no}[\textit{nkg}-1]-1]\; + \mathbf{of}\;\myit{glue-entry}\\ +\myit{pen-table}[0] & : & + \mathbf{array}\;[0..\myit{pen-no}[0]-1]\; + \mathbf{of}\;\myit{integer}\\ +& \vdots\\ +\myit{pen-table}[\textit{nkp}-1] & : & + \mathbf{array}\;[0..\myit{pen-no}[\textit{nkp}-1]-1]\; + \mathbf{of}\;\myit{integer}\\ +\myit{char-info} & : & + \mathbf{array}\;[0..\myit{ncw}-1]\;\mathbf{of}\; + \myit{char-info-word}\\ +\myit{width} & : & + \mathbf{array}\;[0..\myit{nw}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{height} & : & + \mathbf{array}\;[0..\myit{nh}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{depth} & : & + \mathbf{array}\;[0..\myit{nd}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{italic} & : & + \mathbf{array}\;[0..\myit{ni}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{lig-kern} & : & + \mathbf{array}\;[0..\myit{nl}-1]\;\mathbf{of}\; + \myit{lig-kern-command}\\ +\myit{kern} & : & + \mathbf{array}\;[0..\myit{nk}-1]\;\mathbf{of}\;\myit{fix-word}\\ +\myit{exten} & : & + \mathbf{array}\;[0..\myit{ne}-1]\;\mathbf{of}\; + \myit{extensible-recipe}\\ +\myit{param} & : & + \mathbf{array}\;[1..\myit{np}]\;\mathbf{of}\;\myit{fix-word} +\end{eqnarray*} + +So, for parameter $x$, there is a table $\myit{x-no}$, of +length~$\myit{nkx}$, giving the size of each table. +In addition, there are $\myit{nkx}$ tables +containing the actual entries, where the $i$-th table is of +length~$\myit{x-no}[i]$. + +The only parameter entries with an unclear structure are +$\myit{rule-entry}$ and $\myit{glue-entry}$. + +\begin{itemize} +\item +Each $\myit{rule-entry}$ uses three words (12~octets): +\vspace*{.1cm} + +\begin{tabular}{llrl} +1st word & $\myit{width}$ & 32 bits & fixword\\ +2nd word & $\myit{height}$ & 32 bits & fixword\\ +3rd word & $\myit{depth}$ & 32 bits & fixword\\ +\end{tabular} +\vspace*{.1cm} + +The interpretation of the values should be clear. If one of the +three values is~0, then it can stretch in the appropriate direction, +as is standard in~\TeX. +\item +Each $\myit{glue-entry}$ uses four words (16~octets): +\vspace*{.1cm} + +\begin{tabular}{llrl} +1st word & $\myit{subtype}$ & 4 bits & (0--3)\\ +& $\myit{argument-kind}$ & 4 bits & (0--2)\\ +& $\myit{stretch-order}$ & 4 bits & (0--4)\\ +& $\myit{shrink-order}$ & 4 bits & (0--4)\\ +& $\myit{char-rule}$ & 16 bits\\ +2nd word & $\myit{width}$ & 32 bits & fixword\\ +3rd word & $\myit{stretch}$ & 32 bits & fixword\\ +4th word & $\myit{shrink}$ & 32 bits & fixword\\ +\end{tabular} +\vspace*{.1cm} + +\begin{itemize} +\item$\myit{subtype}$ is one of +\vspace*{.1cm} + +\begin{tabular}{ll} +0 & $\myit{normal}$\\ +1 & $\myit{a-leaders}$\\ +2 & $\myit{c-leaders}$\\ +3 & $\myit{x-leaders}$\\ +\end{tabular} +\vspace*{.1cm} + +\item $\myit{argument-kind}$ is one of +\vspace*{.1cm} + +\begin{tabular}{ll} +0 & $\myit{space}$\\ +1 & $\myit{rule}$ ($\myit{subtype}$ must be leader)\\ +2 & $\myit{character}$ ($\myit{subtype}$ must be leader)\\ +\end{tabular} +\vspace*{.1cm} + +\item $\myit{stretch-order}$ and $\myit{shrink-order}$ +are one of +\vspace*{.1cm} + +\begin{tabular}{ll} +0 & $\myit{normal}$\\ +1 & $\myit{fi}$\\ +2 & $\myit{fil}$\\ +3 & $\myit{fill}$\\ +4 & $\myit{filll}$\\ +\end{tabular} +\vspace*{.1cm} + +\item $n=\myit{char-rule}$ depends on the value of +$\myit{argument-kind}$: +\begin{enumerate} +\item[0.] 0; +\item[1.] $n$-th rule in rule table~0; +\item[2.] $n$-character in font. +\end{enumerate} +\end{itemize} +The explanation here only really makes sense if the reader has a clear +understanding of how glue nodes are built in~\TeX. More detailed +documentation is forthcoming. +\end{itemize} + +The new $\myit{char-info-word}$ array is of great interest. Its length +is not directly computable from the number of characters in the font. Each +$\myit{char-info-word}$ entry contains a minimum of 12 octets, and is in +any case a multiple of four octets. Each entry is as follows: +\vspace*{.1cm} + +\begin{tabular}{llrl} +1st word & $\myit{width}$ & 16 bits\\ +& $\myit{height}$ & 8 bits\\ +& $\myit{depth}$ & 8 bits\\ +\hline +2nd word & $\myit{italic}$ & 8 bits\\ +& $\myit{RFU}$ & 5 bits\\ +& $\myit{ext-tag}$ & 1 bit\\ +& $\myit{tag}$ & 2 bits\\ +& $\myit{remainder}$ & 16 bits\\ +\hline +& $\myit{no-repeats}$ & 16 bits\\ +& $\myit{param}_0$ & 16 bits\\ +& \ldots\\ +& $\myit{param}_{\it npc-1}$ & 16 bits\\ +& $\myit{padding}$ & 16 bits & if necessary\\ +\end{tabular} +\vspace*{.1cm} + +\noindent +where $\myit{npc}$ is the number of characters per parameter. + +The $\myit{repeat}$ entry allows one to state that the following +\texttt{no-repeats} characters have identical attributes, thereby +allowing the \OFM\ file to be much smaller. This attribute is essential +for Chinese, Japanese and korean ideogram fonts. In other words, this +$\myit{char-info-word}$ entry is relevant to $(\myit{no-repeats}+1)$ +characters. + +If the $\myit{ext-tag}$ bit is on, then the lig-kern entry pointed to +by $\myit{remainder}$ is shared with all the other characters in its +\emph{equivalence class}, which corresponds to $\myit{param}_0$ +if there exists an \textsc{ivalue} table. + +We are now ready for the changed lig-kern table. There are four +new instructions, which can be distinguished by the fact that +the 0-th 16-bit entry ($\myit{skip-byte}$) is exactly~256. +In that case, then the 1st 16-bit entry ($\myit{next-char}$) +defines an equivalence class. If the next character is of that +equivalence class, then the 2nd 16-bit entry +(the $\myit{op-byte}$) is interpreted as follows: +\begin{enumerate} +\item[17.] Add the glue node defined by entry $\myit{remainder}$ +in the 0-th glue table. +\item[18.] Add the penalty node defined by entry $\myit{remainder}$ +in the 0-th penalty table. +\item[19.] Add the penalty node defined by entry +$\myit{remainder}/256$ in the 0-th penalty table, then +add the glue node defined by entry +$\myit{remainder}\;\textrm{mode}\;256$ in the 0-th glue table. +\item[20.] Add the kern node defined by entry $\myit{remainder}$ +in the 0-th mvalue table. +\end{enumerate} + +\subsection{Level-1 \OPL\ files} + +The level-1 \OPL\ files are the text versions of level-1 \OFM\ files. +Hence, level-1 \OPL\ files contain six kinds of new tables: +integer (\textsc{ivalue}), fixed (\textsc{fvalue}), +magnifiable fixed (\textsc{mvalue}), rule (\textsc{rule}), +glue (\textsc{glue}) and \textsc{penalty}) tables. +In addition, the character entries can include new parameters, +which can then be used in the extended lig-kern table. + +We begin with the new tables. +These extra tables are numbered within each class, from 0 to $n-1$, +where $n$ is the number of tables in that class. To define, say, +the fifth \textsc{ivalue} table, one begins as follows: +\[ + \bigl(\texttt{FONTIVALUE H 5 } \showtable\bigr) +\] +The instructions for defining tables are +\[ +\begin{array}{lll} + \bigl(\texttt{FONTIVALUE} & \showtno & \showtable\bigr)\\ + \bigl(\texttt{FONTFVALUE} & \showtno & \showtable\bigr)\\ + \bigl(\texttt{FONTMVALUE} & \showtno & \showtable\bigr)\\ + \bigl(\texttt{FONTRULE} & \showtno & \showtable\bigr)\\ + \bigl(\texttt{FONTGLUE} & \showtno & \showtable\bigr)\\ + \bigl(\texttt{FONTPENALTY}& \showtno & \showtable\bigr)\\ +\end{array} +\] + +The property lists for these tables contain as many entries as there are +slots in the table. So the fourth entry, starting from~0, in a glue +table would begin as follows: +\[ + \bigl(\texttt{GLUE H 4 } \showglue\bigr) +\] +The instructions for defining entries are: +\[ +\begin{array}{lll} + \bigl(\texttt{IVALUE} & \showeno & \showivalue\bigr)\\ + \bigl(\texttt{FVALUE} & \showeno & \showfvalue\bigr)\\ + \bigl(\texttt{MVALUE} & \showeno & \showmvalue\bigr)\\ + \bigl(\texttt{RULE} & \showeno & \showrule\bigr)\\ + \bigl(\texttt{GLUE} & \showeno & \showglue\bigr)\\ + \bigl(\texttt{PENALTY}& \showeno & \showpenaltydef\bigr)\\ +\end{array} +\] + +Now we come to the definitions of the individual entries. +The four simple ones are for \textsc{ivalue}, \textsc{fvalue}, +\textsc{mvalue} and \textsc{penalty}, which are as follows: +The instructions for defining entries are: +\[ +\begin{array}{ll} + \bigl(\texttt{IVALUEVAL} & \showinteger\bigr)\\ + \bigl(\texttt{FVALUEVAL} & \showfixword\bigr)\\ + \bigl(\texttt{MVALUEVAL} & \showfixword\bigr)\\ + \bigl(\texttt{PENALTYVAL}& \showinteger\bigr)\\ +\end{array} +\] +with some examples: +\begin{verbatim} + (IVALUEVAL H 42) + (PENALTYVAL D 1000) + (FVALUEVAL R 42.0) + (MVALUEVAL R 42.0) +\end{verbatim} +which define an integer value of hex-42, a penalty value of 1000, +a fix-word value of 42.0, and a magnifiable fix-word value of +42.0. + +A $\showrule$ contains three components, each defaulting to~0: +\[ +\begin{array}{ll} + \bigl(\texttt{RULEWD} & \showfixword\bigr)\\ + \bigl(\texttt{RULEHT} & \showfixword\bigr)\\ + \bigl(\texttt{RULEDP} & \showfixword\bigr)\\ +\end{array} +\] + +The most complex entries are for glue, which can take several +instructions. The first few instructions should be clear: +\[ +\begin{array}{ll} + \bigl(\texttt{GLUEWD} & \showfixword\bigr)\\ + \bigl(\texttt{GLUESTRETCH} & \showfixword\bigr)\\ + \bigl(\texttt{GLUESHRINK} & \showfixword\bigr)\\ + \bigl(\texttt{GLUESTRETCHORDER} & \showorder\bigr)\\ + \bigl(\texttt{GLUESHRINKORDER} & \showorder\bigr)\\ +\end{array} +\] +where $\showorder$ is one of \texttt{UNIT}, \texttt{FI}, \texttt{FIL}, +\texttt{FILL}, \texttt{FILLL}. + + +Now, glue can either be blank, or consist of a leader: +\[ +\begin{array}{ll} + \bigl(\texttt{GLUETYPE} & \showkind\bigr)\\ +\end{array} +\] +where $\showkind$ is one of \texttt{NORMAL}, \texttt{ALEADERS}, +\texttt{CLEADERS}, \texttt{XLEADERS}. If a leader is chosen, +then one of the following alternatives can be given: +\[ +\begin{array}{ll} + \bigl(\texttt{GLUERULE} & \showinteger\bigr)\\ + \bigl(\texttt{GLUECHAR} & \showinteger\bigr)\\ +\end{array} +\] +We give below the tables for an initial test with East Asian fonts: +\begin{verbatim} + (FONTIVALUE H 0 + (IVALUE H 0 + (IVALUEVAL H 0) + ) + (IVALUE H 1 + (IVALUEVAL H 1) + ) + (IVALUE H 2 + (IVALUEVAL H 2) + ) + (IVALUE H 3 + (IVALUEVAL H 3) + ) + ) + (FONTGLUE H 0 + (GLUE H 0 + (GLUETYPE H 0) + (GLUESTRETCHORDER NORMAL) + (GLUESHRINKORDER NORMAL) + (GLUEWD R 0.0) + (GLUESTRETCH R 0.0) + (GLUESCHRINK R 0.0) + ) + (GLUE H 1 + (GLUETYPE H 0) + (GLUESTRETCHORDER NORMAL) + (GLUESHRINKORDER NORMAL) + (GLUEWD R 1.2333 + (GLUESTRETCH R 4.5555) + (GLUESCHRINK R 2.3444) + ) + (FONTPENALTY H 0 + (PENALTY H 0 + (PENALTYVAL H 0) + ) + (PENALTY H 1 + (PENALTYVAL H 122A) + ) + ) +\end{verbatim} + +The extra tables can appear in any order, but they must all appear +\emph{before} the first character entry has appeared, since the +character parameters can refer to these tables. + +When defining the character entries, the standard entries (width, +height, depth and italic correction) all exist. One can also add +parameters to the characters by referring to the above +tables. The syntax for an entry resembles +\begin{verbatim} + (CHARIVALUE H 0 H 2) +\end{verbatim} +For this character, it is entry 2 in \textsc{ivalue} table 0 that is +relevant. All entries are similar: +\[ +\begin{array}{lll} + \bigl(\texttt{CHARIVALUE} & \showinteger & \showinteger\bigr)\\ + \bigl(\texttt{CHARFVALUE} & \showinteger & \showinteger\bigr)\\ + \bigl(\texttt{CHARMVALUE} & \showinteger & \showinteger\bigr)\\ + \bigl(\texttt{CHARRULE} & \showinteger & \showinteger\bigr)\\ + \bigl(\texttt{CHARGLUE} & \showinteger & \showinteger\bigr)\\ + \bigl(\texttt{CHARPENALTY} & \showinteger & \showinteger\bigr)\\ +\end{array} +\] +There is a special use for the 0-th integer table, which defines +the equivalence class of the character for the lig-kern table: +\[ +\begin{array}{ll} + \bigl(\texttt{CHARIVALUE H 0} & \showinteger\bigr) +\end{array} +\] +The idea is that characters that act similarly with respect to +their neighboring characters should have the same lig-kern +entry, allowing for the dramatic reduction in size of the +lig-kern table. More later. + +Also to save space, it is possible to state that several characters use the +same information. This is done with the \textsc{charrepeat} +instruction: +\[ +\begin{array}{ll} + \bigl(\texttt{CHARREPEAT H 34 H 42 } \showchardefn\bigr) +\end{array} +\] +states that characters \texttt{0x34} through to \texttt{0x76} +(\texttt{0x34}+\texttt{0x42}) all use the same information. +This clustering is done automatically by the \texttt{ovp2ovf} program. + +The lig-kern table uses four new instructions for the automatic +insertion of kern, glue and penalties between characters. For example, +\begin{verbatim} + (CKRN H 3 H 2) +\end{verbatim} +states that if we encounter this instruction, and the next character +has 3~in its 0-th \textsc{ivalue} table, then the 2-nd entry in the 0-th +\textsc{mvalue} table is inserted into the stream. +Similarly, +\begin{verbatim} + (CGLUE H 3 H 2) +\end{verbatim} +states that if we encounter this instruction, and the next character +has 3~in its 0-th \textsc{ivalue} table, then the 2-nd entry in the 0-th +\textsc{glue} table is inserted into the stream. +Once again, +\begin{verbatim} + (CPENALTY H 3 H 2) +\end{verbatim} +does the same thing, except that it inserts the 2-nd entry in the 0-th +\textsc{penalty} table into the stream. The other one is +\begin{verbatim} + (CPENGLUE H 3 H 2 H 4) +\end{verbatim} +which inserts the 2-nd entry in the 0-th \textsc{penalty} table, then +the 4-th entry in the 0-th \textsc{glue} table. + +The \textsc{label} instruction used in \PL\ files has a variant called +\textsc{clabel}, which means that several characters are using the same +lig-kern entry. It is this technique that allows \texttt{ovp2ovf} +to cluster the characters with similar properties, otherwise each would +point to a different lig-kern entry. + +Our example shows how East Asian fonts might be coded. The +equivalence class of a character has three possible values: 1~for +`left' characters (opening parenthesis, opening quote, etc.), +2~for `middle' or ordinary characters, +and 3~for `right' characters +(closing parenthesis, closing quote, period, etc.). +Here is the lig-kern table. +\begin{verbatim} + (LIGTABLE + (CLABEL H 1) + (CPENGLUE H 1 H 0 H 0) + (CPENGLUE H 2 H 0 H 0) + (CPENGLUE H 3 H 0 H 0) + (STOP) + (CLABEL H 2) + (CGLUE H 1 H 0) + (CGLUE H 2 H 0) + (CPENGLUE H 3 H 0 H 0) + (STOP) + (CLABEL H 2) + (CGLUE H 1 H 0) + (CGLUE H 2 H 0) + (CPENGLUE H 3 H 0 H 0) + (STOP) +\end{verbatim} +Glue is inserted between all pairs of characters that are of category 1, +2, or~3. In addition, a penalty is added in front of characters of +category 3 (`right' characters), preventing a linebreak just prior to +such characters. At the same time, a penalty is added after all +occurrences of characters of category~1 (`left' characters). + +Another possibility is to completely replace the lig-kern table, +with the instruction +\[ +\begin{array}{ll} + \bigl(\texttt{LIGTABLEOCP} & \showligocp\bigr)\\ +\end{array} +\] +Here the \OCP\ $\showligocp$ will be used instead of the lig-kern +table. + +\subsection{Level-1 \OVF\ files} + +The level-1 \OVF\ files are indistinguishable from level-0 +\OVF\ files. + +\subsection{Level-1 \OVP\ files} + +The level-1 \OVP\ files are similar to level-1 \OPL\ files for +the description of the tables. For the actual character layout +stuff, there is no difference with level-0 \OVP\ files. + +\section{\OMEGA\ Translation Processes} +\label{lab:otps} + +The changes described above are very useful, and allow the resolution +of several problems. However, they do not radically alter the +structure of \TeX. This is not the case for the \OMEGA\ Translation +Processes, which allow text to be passed through any number of finite +state automata, in order to impose the required effects. + +These processes are necessary for translating one character set to +another. They are also used to choose the various forms of letters in +Arabic, or to create consonental clusters in Khmer, or to rearrange +letter order in Indic scripts. They could also offer alternative +means of changing texts to upper or lower case or to hyphenate texts. + +Each translation process is placed in a file with the suffix \verb|.otp|. +Its syntax is similar but not identical to a \texttt{lex} or +\texttt{flex} file on Unix. Examples of translation processes can +be found in the \texttt{texmf/omega/otp} directory. + +An \verb|.otp| file defines a finite state automaton that transforms +an input character stream into an output character stream. +It consists of six parts: + +\begin{tabular}{l} +\emph{Input}\\ +\emph{Output}\\ +\emph{Tables}\\ +\emph{States}\\ +\emph{Aliases}\\ +\emph{Expressions}\\ +\end{tabular} + +\noindent +where the \emph{Expressions} actually state what translations take +place and in what situation. + +In what follows, $n$ refers to a positive integer between 0~and +$2^{24}-1$. It can be given in decimal form, octal form (preceded by +\texttt{@'}) or hexadecimal form (preceded by \texttt{@"}). +Hexadecimal numbers can use both minuscule and majuscule letters +to express the digits~\emph{a--f}. Numbers can also be given in +character form: a printable \textsc{ascii} character, when placed +inside a pair of quotes, generates the \textsc{ascii} code for that +character. For example, \verb|`a'| is equivalent to~\verb|@"61|. + +The \emph{Input} part states how many octets are in each input character. +If the section is empty, then the default value is~2, since we hope +that Unicode will become the standard means of communication in the future. +If the section is not empty, it must be of the form +\[ \mymathtt{input:}\;\mymathit{in}\mymathtt{;} \] +where \emph{in} states how many octets are in each input character. + +The \emph{Output} part states how many octets are in each output character. +If the section is empty, then the default value is~2, since we hope +that Unicode will become the standard means of communication in the future. +If the section is not empty, it must be of the form +\[ \mymathtt{output:}\;\mymathit{out}\mymathtt{;} \] +where \emph{out} states how many octets are in each output character. + +The \emph{Tables} part is used for defining tables that will be +referred to later in the expressions. Often, translations from one +character set to another are most efficiently presented through table +lookup. This section can be empty, in which case no tables have been +defined. If it is not empty, it is of the form +\[ \mymathtt{tables:}\; \mymathit{table}^+ \] +where each \emph{table} is of the form +\[ \mymathit{id}\mymathtt{[}n\mymathtt{]}\;\mymathtt{=}\; +\mymathtt{\char'173}n^+\mymathtt{\char'175}\mymathtt{;} \] +where the numbers in $n^+$ are comma-separated. + +The \emph{States} part is used to separate out the expressions. Not +all expressions will necessarily be applicable in all situations. +To do this, the user can name states and identify expressions with +state names, in order to express what expressions apply when. +This section can be empty, in which case there is only one state. If +it is not empty, it is of the form +\[ \mymathtt{states:}\; \mymathit{id}^+\mymathtt{;} \] +where the identifiers in $\mymathit{id}^+$ are comma-separated. + +The \emph{Aliases} part is used to simplify the definition of the left +hand sides of the expressions. Each expression consists of a +left-hand side, in the form of a simplified regular expression, and of a +right-hand side, which states what should be done with a recognized +string. To simplify the definitions of the left-hand sides, +aliases can be used. This section can be empty, in which case there +are no aliases. If it is not empty, it is of the form +\[ \mymathtt{aliases:}\; \mymathit{alias}^+ \] +where each \emph{alias} is of the form +\[ \mymathit{id}\;\mymathtt{=}\;\mymathit{left}\mymathtt{;}\] +and \emph{left} is defined below. + +The \emph{Expressions} part is the very reason for an \verb|.otp| +file. It states what translations must take place, and when. It +cannot be empty, and its syntax is +\[ \mymathtt{expressions:}\; \mymathit{expr}^+ \] +Each \emph{expr} is of the form +\[ + \mymathit{leftState}\; \mymathit{totalLeft}\; + \mymathit{right} \; \mymathit{pushBack} \; \mymathit{rightState} \mymathtt{;} +\] +where \emph{leftState} defines the state for which this expression is +applicable, \emph{totalLeft} defines the left-hand-side regular +expression, \emph{right} defines the characters to be output, +\emph{pushBack} states what characters must be added to the input +stream and \emph{rightState} gives the new state. + +Intuitively, if the automaton is in macro-state \emph{leftState} and +the regular expression \emph{totalLeft} corresponds to a prefix of the current +input stream, then (1)~the input stream is advanced to the end of the recognized +prefix, (2)~the characters generated by the \emph{right} +expression are put onto the output stream, (3)~the characters +generated by the \emph{pushBack} stream are placed at the beginning +of the input stream and (4)~the system changes to the macro-state +defined by \emph{rightState}. + +The \emph{leftState} field can be empty. If it is not, its syntax is +\[ \mymathtt{<} \mymathit{id} \mymathtt{>} \] + +The syntax for \emph{totalLeft} is +\[ \mymathtt{beg:}? \; \mymathit{left}^+ \; \mymathtt{end:}? \] +The \texttt{beg:}, if present, will only match the string if it is +at the beginning of the input. The \texttt{end:}, if present, will +only match the string if it is at the end of the input. + +The syntax for \emph{left} is given by +\begin{eqnarray*} +\mymathit{left} & ::= & n\\ +& \mid & n\mymathtt{-}n\\ +& \mid & \mymathtt{.}\\ +& \mid & \mymathtt{(}\mymathit{left}^+\mymathtt{)}\\ +& \mid & \mymathtt{\char94(}\mymathit{left}^+\mymathtt{)}\\ +& \mid & \{\mymathit{id}\}\\ +& \mid & \mymathit{left}\;\mymathtt{<}n\mymathtt{,}n?\mymathtt{>}\\ +\end{eqnarray*} +where the $\mymathit{left}^+$ means a series of \emph{left} separated +by vertical bars. Therefore, $n$ means a single number, $n\mymathtt{-}n$ is a +range, $\mymathtt{.}$~is a wildcard character, +$\mymathtt{(}\mymathit{left}^+\mymathtt{)}$ is a choice, +$\mymathtt{\char94(}\mymathit{left}^+\mymathtt{)}$ is the negation of a choice, +$\mymathtt{\char'173}\mymathit{id}\mymathtt{\char'175}$ +is the use of an alias and +$\mymathit{left}\mymathtt{<}n\mymathtt{,}n?\mymathtt{>}$ +means between $n$~and $n'$~occurrences of \emph{left}. Should there +be no~$n'$, then the expression means at least $n$~occurrences. + +The syntax for \emph{right} is +\[ \mymathtt{=>}\; \mymathit{stringExpr}^+ \] +while that for \emph{pushBack}, if it is not empty, is +\[ \mymathtt{<=}\; \mymathit{stringExpr}^+ \] +The \emph{right} expression corresponds to the characters that are to +be output. The \emph{pushBack} expression corresponds to the +characters that are put back onto the input stream. + +A \emph{stringExpr} defines a string of characters, using the +characters in the recognized input stream as arguments. It is of the form + +\begin{tabular}{ll} +& $s$\\ +$\mid$ & $n$\\ +$\mid$ & \verb|\|$n$\\ +$\mid$ & \verb|\$|\\ +$\mid$ & \verb|\($-|$n$\verb|)|\\ +$\mid$ & \verb|\*|\\ +$\mid$ & \verb|\(*-|$n$\verb|)|\\ +$\mid$ & \verb|\(*+|$n$\verb|)|\\ +$\mid$ & \verb|\(*+|$n$\verb|-|$n'$\verb|)|\\ +$\mid$ & \verb|#|\emph{arithExpr}\\ +\end{tabular} + +\noindent +where $s$~is an \textsc{ascii} character string enclosed in double +quotation marks. +The \verb|\|$n$ means the $n$-th character (starting from 1) +in the recognized prefix; the \verb|\$| means the last character in the +prefix; \verb|\($-|$n$\verb|)| the $n$-th, counting from the end. +The \verb|\*| means the entire recognized prefix; +\verb|\(*-|$n$\verb|)| the prefix without the last $n$~characters; +\verb|\(*+|$n$\verb|)| without the first $n$~characters; +\verb|\(*+|$n$\verb|-|$n'$\verb|)| removes the first~$n$ and last~$n'$ +characters. + +For example, Indic scripts are encoded with vowels at the end of a +syllable, but the vowel is actually printed first on the page. Up +to six consonants can precede a vowel, yielding the following +transliteration: +\begin{verbatim} + {consonant}<1,6> {vowel} => \$ \(*-1); +\end{verbatim} + +The \emph{arithExpr} entry allows for calculations to actually be +effected on the characters in the prefix. Their syntax is as follows: + +\begin{tabular}{ll} + & $n$\\ +$\mid$ & \verb|\|$n$\\ +$\mid$ & \verb|\$|\\ +$\mid$ & \verb|\($-|$n$\verb|)|\\ +$\mid$ & \emph{arithExpr}\verb| + |\emph{arithExpr}\\ +$\mid$ & \emph{arithExpr}\verb| - |\emph{arithExpr}\\ +$\mid$ & \emph{arithExpr}\verb| * |\emph{arithExpr}\\ +$\mid$ & \emph{arithExpr}\verb| div: |\emph{arithExpr}\\ +$\mid$ & \emph{arithExpr}\verb| mod: |\emph{arithExpr}\\ +$\mid$ & \emph{id}\verb|[|\emph{arithExpr}\verb|]|\\ +$\mid$ & \verb|(|\emph{arithExpr}\verb|)|\\ +\end{tabular} + +\noindent +where \emph{id}\verb|[|\emph{arithExpr}\verb|]| means a table lookup: +the \emph{id} must be a table defined in the \emph{Tables} section. +The other operations should be clear. + +The following example shows the use of tables. +\label{gb:unicode} +\begin{verbatim} +% File inbig5.otp +% Conversion to Unicode from Chinese Big 5 (HKU) +% Copyright (c) 1995 John Plaice and Yannis Haralambous +% This file is part of the Omega project. +% +% This file was derived from data in the tcs program +% ftp://plan9.att.com/plan9/unixsrc/tcs.shar.Z, 16 November 1994 +% + +input: 1; +output: 2; + +tables: + +in_big5_a1[@"9d] = { +@"20, @"2c, @"2ce, @"2e, @"2219, @"2219, @"3b, @"3a, +... +@"2199, @"2198, @"2225, @"2223, @"2215 +}; + +in_big5[@"3695] = { +@"3000, @"ff0c, @"3001, @"3002, @"ff0e, @"30fb, @"ff1b, @"ff1a, +... +@"fffd, @"fffd, @"fffd, @"fffd, @"fffd +}; + +expressions: + +@"1a => @"0a; +@"00-@"a0 => \1; +@"a1(@"40-@"7e) => #(in_big5_a1[\2-@"40]); +@"a1(@"a1-@"fe) => #(in_big5_a1[\2-@"62]); +(@"a2-@"fe)(@"40-@"7e) => #(in_big5[(\1-@"a2)*@"9d + \2-@"40]); +(@"a2-@"fe)(@"a1-@"fe) => #(in_big5[(\1-@"a2)*@"9d + \2-@"62]); +. . => @"fffd; +\end{verbatim} + +In the future, more operations may well be added. Research is still +under way for such things as providing means for defining functions, +local variables, error handling and other functionality. + +The \emph{pushBack} part, which serves to put characters back onto the +input stream, uses the same syntax as the \emph{right} part. When +characters are placed back onto the input stream, they will be looked +at upon the next iteration of the automaton. + +Finally, the \emph{rightState} can be empty or one of the following +three forms: + +\begin{tabular}{ll} +& \verb|<|\emph{id}\verb|>|\\ +$\mid$ & \verb|<push: |\emph{id}\verb|>|\\ +$\mid$ & \verb|<pop:>|\\ +\end{tabular} + +\noindent +If it is empty, the automaton stays in the same state. +If it is of the form \verb|<|\emph{id}\verb|>|, then the automaton +changes to state~\emph{id}. The \verb|<push: |\emph{id}\verb|>| +means change to state~\emph{id}, but remembering the current state. +The \verb|<pop:>| means return to the previously saved state. + +Several \texttt{.otp} files are in the +\texttt{omega/texmf/otp} directory. +The \texttt{char2uni} directory contains \OTP s that +convert national character sets to Unicode, while the +\texttt{omega} directory contains \OTP s designed to work +with the \OMEGA\ fonts. + +\section{Compiled Translation Processes} + +\OMEGA\ does not know anything about \OMEGA\ Translation Processes. +It actually reads a compiled form of these filters, known as +Compiled Translation Processes (file suffix \texttt{.ocp}). +Essentially, the \OCP s can be considered to be portable assembler +programs, and \OMEGA\ includes an interpreter for the generated +instructions. + +The command for reading in a \OCP\ file is similar to a font +declaration. The example +\begin{verbatim} + \ocp\TexUni=TeXArabicToUnicode +\end{verbatim} +means that the file \verb|TeXArabicToUnicode.ocp| is read +in by~\OMEGA\ and that internally the translation process is +referred to as \verb|\TeXUni|. + +The \OCP s consist of a sequence of 4-octet words. The first seven +words have the following form: + +\begin{tabular}{ll} +\emph{lf}&length of the entire file, in words;\\ +\emph{in}&number of octets in an input character;\\ +\emph{ot}&number of octets in an output character;\\ +\emph{nt}&number of tables;\\ +\emph{lt}&number of words allocated for tables;\\ +\emph{ns}&number of states;\\ +\emph{ls}&number of words allocated for states;\\ +\end{tabular} + +\noindent +The header words are followed by four arrays: +\begin{eqnarray*} +\mathit{table\_length} & : & + \mathbf{array} \; [0..\mathit{nt}-1] \; \mathbf{of} \; \mathit{word}\\ +\mathit{tables} & : & + \mathbf{array} \; [0..\mathit{lt}-1] \; \mathbf{of} \; \mathit{word}\\ +\mathit{state\_length} & : & + \mathbf{array} \; [0..\mathit{ns}-1] \; \mathbf{of} \; \mathit{word}\\ +\mathit{tables} & : & + \mathbf{array} \; [0..\mathit{ls}-1] \; \mathbf{of} \; \mathit{word} +\end{eqnarray*} + +The \emph{table\_length} array states how many words are used for each +of the tables in the~\OCP. For the GB~$\rightarrow$~Unicode example on +page~\pageref{gb:unicode}, the \emph{table\_length} would have two +entries: hex values \texttt{9d} and~\texttt{3695}. + +The \emph{tables} array is simply the concatenation of the tables in +the \OTP\ file. + +The \emph{state\_length} array states how many words are used for each +of the states in the~\OCP. For the GB~$\rightarrow$~Unicode example on +page~\pageref{gb:unicode}, the \emph{state\_length} would have one +entry. + +The \emph{states} array is simply the concatenation of the sequence of +instructions for each state in the \OTP\ file. Each instruction takes +one or two 4-octet words. Zero- and one-argument instructions use +one word. If the instruction consists of one word, +then the actual instruction is in the first two octets and the +argument is in the last two octets. If the instruction consists of +two words, then the actual instruction is in the first two octets, +the first argument is in the next two octets and the last argument is +in the last two octets. The instructions are as follows: + +\begin{tabbing} +\makebox[1cm][r]{99} \= \quad \verb|OTP_GOTO_NO_ADVANCE| \= \quad 2 arguments\kill +\makebox[1cm][r]{1} \> \quad \verb|OTP_RIGHT_OUTPUT| \> \quad 0 arguments\\ +\makebox[1cm][r]{2} \> \quad \verb|OTP_RIGHT_NUM| \> \quad 1 argument\\ +\makebox[1cm][r]{3} \> \quad \verb|OTP_RIGHT_CHAR| \> \quad 1 argument\\ +\makebox[1cm][r]{4} \> \quad \verb|OTP_RIGHT_LCHAR| \> \quad 1 argument\\ +\makebox[1cm][r]{5} \> \quad \verb|OTP_RIGHT_SOME| \> \quad 2 arguments\\ +\\ +\makebox[1cm][r]{6} \> \quad \verb|OTP_PBACK_OUTPUT| \> \quad 0 arguments\\ +\makebox[1cm][r]{7} \> \quad \verb|OTP_PBACK_NUM| \> \quad 1 argument\\ +\makebox[1cm][r]{8} \> \quad \verb|OTP_PBACK_CHAR| \> \quad 1 argument\\ +\makebox[1cm][r]{9} \> \quad \verb|OTP_PBACK_LCHAR| \> \quad 1 argument\\ +\makebox[1cm][r]{10} \> \quad \verb|OTP_PBACK_SOME| \> \quad 2 arguments\\ +\\ +\makebox[1cm][r]{11} \> \quad \verb|OTP_ADD| \> \quad 0 arguments\\ +\makebox[1cm][r]{12} \> \quad \verb|OTP_SUB| \> \quad 0 arguments\\ +\makebox[1cm][r]{13} \> \quad \verb|OTP_MULT| \> \quad 0 arguments\\ +\makebox[1cm][r]{14} \> \quad \verb|OTP_DIV| \> \quad 0 arguments\\ +\makebox[1cm][r]{15} \> \quad \verb|OTP_MOD| \> \quad 0 arguments\\ +\makebox[1cm][r]{16} \> \quad \verb|OTP_LOOKUP| \> \quad 0 arguments\\ +\makebox[1cm][r]{17} \> \quad \verb|OTP_PUSH_NUM| \> \quad 1 argument\\ +\makebox[1cm][r]{18} \> \quad \verb|OTP_PUSH_CHAR| \> \quad 1 argument\\ +\makebox[1cm][r]{19} \> \quad \verb|OTP_PUSH_LCHAR| \> \quad 1 argument\\ +\\ +\makebox[1cm][r]{20} \> \quad \verb|OTP_STATE_CHANGE| \> \quad 1 argument\\ +\makebox[1cm][r]{21} \> \quad \verb|OTP_STATE_PUSH| \> \quad 1 argument\\ +\makebox[1cm][r]{22} \> \quad \verb|OTP_STATE_POP| \> \quad 1 argument\\ +\\ +\makebox[1cm][r]{23} \> \quad \verb|OTP_LEFT_START| \> \quad 0 arguments\\ +\makebox[1cm][r]{24} \> \quad \verb|OTP_LEFT_RETURN| \> \quad 0 arguments\\ +\makebox[1cm][r]{25} \> \quad \verb|OTP_LEFT_BACKUP| \> \quad 0 arguments\\ +\\ +\makebox[1cm][r]{26} \> \quad \verb|OTP_GOTO| \> \quad 1 argument\\ +\makebox[1cm][r]{27} \> \quad \verb|OTP_GOTO_NE| \> \quad 2 arguments\\ +\makebox[1cm][r]{28} \> \quad \verb|OTP_GOTO_EQ| \> \quad 2 arguments\\ +\makebox[1cm][r]{29} \> \quad \verb|OTP_GOTO_LT| \> \quad 2 arguments\\ +\makebox[1cm][r]{30} \> \quad \verb|OTP_GOTO_LE| \> \quad 2 arguments\\ +\makebox[1cm][r]{31} \> \quad \verb|OTP_GOTO_GT| \> \quad 2 arguments\\ +\makebox[1cm][r]{32} \> \quad \verb|OTP_GOTO_GE| \> \quad 2 arguments\\ +\makebox[1cm][r]{33} \> \quad \verb|OTP_GOTO_NO_ADVANCE| \> \quad 1 argument\\ +\makebox[1cm][r]{34} \> \quad \verb|OTP_GOTO_BEG| \> \quad 1 argument\\ +\makebox[1cm][r]{35} \> \quad \verb|OTP_GOTO_END| \> \quad 1 argument\\ +\makebox[1cm][r]{36} \> \quad \verb|OTP_STOP| \> \quad 0 arguments\\ +\end{tabbing} + +The \verb|OTP_LEFT|, \verb|OTP_GOTO| and \verb|OTP_STOP| instructions +are used for recognizing prefixes in an input stream. The \verb|OTP_RIGHT| +instructions place characters on the output stream, while the +\verb|OTP_PBACK| instructions place characters back onto the input +stream. The instructions \verb|OTP_ADD| through to +\verb|OTP_PUSH_LCHAR| are used for internal computations in preparation +for \verb|OTP_RIGHT| or \verb|OTP_PBACK| instructions. Finally, the +\verb|OTP_STATE| instructions are for changing macro-states. + +The system that reads from the input stream uses two pointers, which +we will call \emph{first} and \emph{last}. The \emph{first} value +points to the beginning of the input prefix that is currently being +identified. The \emph{last} value points to the end of the input +prefix that has been read. When a prefix has been recognized, then +\emph{first} points to~\verb|\1| and \emph{last} points to~\verb|\$|. + +The \verb|OTP_LEFT_START| instruction, called at the beginning of +the parsing of a prefix, advances \emph{first} to $\emph{last}+1$; +\verb|OTP_LEFT_RETURN| resets the \emph{last} value to +$\emph{first}-1$ (it is called when a particular \emph{left} pattern +does not correspond to the prefix); \verb|OTP_LEFT_BACKUP| backs up +the \emph{last} pointer by~1. + +Internally, a \OCP\ program uses a program counter (PC), which is simply an +index into the appropriate state array. Like for all assembler +programs, this counter is normally incremented by 1 or~2, depending on +the size of the instruction, but it can be abruptly changed through +an \verb|OTP_GOTO| instruction. + +The argument in single-argument \verb|OTP_GOTO| instructions is the +new~PC. For the two-argument instructions, the first is the comparand +and the second is the new~PC should the test succeed. The +\verb|OTP_GOTO| instruction itself is an unconditional branch; +\verb|OTP_GOTO_NO_ADVANCE| advances \emph{last} by~1, and branches if +has reached the end of input; \verb|OTP_GOTO_BEG| branches at the +beginning of input and \verb|OTP_GOTO_END| branches at the end of +input. As for \verb|OTP_GOTO_|\emph{cond}, it succeeds if the +character pointed to by \emph{last} (we'll call it +\verb|*|\emph{last}) satisfies the test +\emph{cond}(\verb|*|\emph{last}, \emph{firstArg}). + +The \verb|OTP_STOP| instruction stops processing of the currently +recognized prefix. Normally the automaton will be restarted with an +\verb|OTP_LEFT_START| instruction. + +When computations are undertaken for the \verb|OTP_RIGHT| and +\verb|OTP_PBACK| instructions, a computation stack is used. +This stack is accessed through instructions \verb|OTP_ADD| through +to \verb|OTP_PUSH_LCHAR|, as well as through the instructions +\verb|OTP_RIGHT_OUTPUT| and \verb|OTP_PBACK_OUTPUT|. + +Since the \verb|OTP_RIGHT| and \verb|OTP_PBACK| instructions are +analogous, only the former are described. +The \verb|OTP_RIGHT_OUTPUT| instruction pops a value of the top of the +stack and outputs it; \verb|OTP_RIGHT_NUM|$(n$) simply places $n$ +on the output stream; \verb|OTP_RIGHT_CHAR|$(n)$ places the $n$-th input +character on the output stream; \verb|OTP_RIGHT_LCHAR| does the same, +but from the back; finally, \verb|OTP_RIGHT_SOME| places a substring +onto the output stream. + +Three instructions are used for placing values on the stack: +\verb|OTP_PUSH_NUM|$(n)$ pushes $n$ onto the stack, +\verb|OTP_PUSH_CHAR|$(n)$ pushes the $n$-th character and +\verb|OTP_PUSH_LCHAR|$(n)$ does the same from the end. + +The arithmetic operations of the form \verb|OTP_|\emph{op} apply the +operation +\begin{eqnarray*} +\mathit{stack}[\mathit{top}-1] & := & +\mathit{stack}[\mathit{top}-1] \; \mathit{op} \; +\mathit{stack}[\mathit{top}] +\end{eqnarray*} +where \emph{top} is the stack pointer, and then decrement the stack +pointer. Finally, the \verb|OTP_LOOKUP| instruction applies the +operation +\begin{eqnarray*} +\mathit{stack}[\mathit{top}-1] & := & +\mathit{stack}[\mathit{top}-1][\mathit{stack}[\mathit{top}]] +\end{eqnarray*} +and then decrements the pointer. + +Last, but not least, are the \verb|OTP_STATE| instructions, which +manipulate a stack of macro-states. The initial state is always~0. +The \verb|OTP_STATE_CHANGE|$(n)$ changes the current state +state~$n$; \verb|OTP_STATE_PUSH|$(n)$ pushes the current state onto +the state stack before changing the current state; +\verb|OTP_STATE_POP| pops the state at the top of the state stack into +the current state. + +\section{Translation process lists} + +Translation processes can be used for a number of different purposes. +Since not all uses can be foreseen, we have decided to offer a means +to dynamically reconfigure the set of translation processes that are +passing over the input text. This is done using stacks of translation +process lists. + +For any single purpose, for example to process a given language, +several \OCP s might be required. If one makes a context switch, +such as processing a different language, then one would to be able +to quickly replace \emph{all} of the \OCP s that are currently being +used. This is done using \OCP\ lists. + +A \OCP\ list is actually a list of pairs. Each pair consists of a +positive scaled value and a doubly ended queue of \OCP s. For +example, +\begin{verbatim} + \ocplist\ArabicOCP=[(1.0 : \TexUni,\UniUniTwo,\UniTwoFont)] +\end{verbatim} +the output from \OMEGA\ once the \OCP\ list \verb|\ArabicOCP| has +been typed, shows that that list has one element, namely the pair +with the scaled value~1.0 and the doubly ended queue with three +\OCP s, \verb|\TexUni|, \verb|\UniUniTwo| and \verb|\UniTwoFont|. + +\OCP\ lists are built up using the five operators \verb|\nullctlist|, +\verb|\addbefore|\-\verb|ocp|\-\verb|list|, \verb|\addafterocplist|, +\verb|\removebeforeocplist| and \verb|\removeafter|\-\verb|ocp|\-\verb|list|. +For example, the above output was generated by the following +sequence of \OMEGA\ statements: +\begin{verbatim} + \ocp\TexUni=TeXArabicToUnicode + \ocp\UniUniTwo=UnicodeToContUnicode + \ocp\UniTwoFont=ContUnicodeToTeXArabicOut + + \ocplist\ArabicOCP= + \addbeforeocplist 1 \TexUni + \addbeforeocplist 1 \UniUniTwo + \addbeforeocplist 1 \UniTwoFont + \nullocplist +\end{verbatim} + +The \verb|\ocplist| command is similar to the \verb|\ocp| command:\\ +\verb|\ocplist|~\emph{listName}~\verb|=|~\emph{ocpListExpr}. + +All \emph{ocpListExpr} are built up from either the empty \OCP\ list, +\verb|\nullocplist|, or from an already existing \OCP\ list. In the +latter case, the list is completely copied, to ensure that the named +list is not itself modified. Given a list~$l$, the instruction +\verb|\addbeforeocplist|~$n$~\emph{ocp}~$l$ states that the +\OCP\ \emph{ocp} is added at the head of the doubly ended queue for +value~$n$ in list~$l$. If that queue does not exist, it is created +and inserted in the list so that the scaled values are all in +increasing order. The instruction +\verb|\addafterocplist|~$n$~\emph{ocp}~$l$ does the same, except the +addition takes place at the tail of the doubly ended queue. The +instruction +\verb|\removebeforeocplist|~$n$~$l$ removes the \OCP\ at the head of the +doubly ended queue numbered~$n$. The instruction +\verb|\removeafterocplist|~$n$~$l$ does the same at the tail of the +doubly ended queue. See the next section for more examples. + +\section{Input Filters} + +Here we come to the crucial parts of \OMEGA. What happens to the +input stream as it passes through translation processes? What is +the interaction between \TeX's macro-expansion and \OMEGA's translation +processes? + +When \OMEGA\ is in horizontal mode and it encounters a +token of the form +\emph{letter}, \emph{other\_char}, \emph{char\_given} or +\emph{char\_num}, that character and all the successive +characters in those categories are read into a buffer. +The currently active \OCP\ is applied to the buffer, and +the result is placed back onto the input, to be reread +by the standard \TeX\ input routines, including macro +expansion. + +The currently active \OCP\ is designated by a pair $(v,i)$, +where $v$~is a scaled value and $i$~is an integer. If all the +enabled \OCP s are in a \OCP\ list, then the~$v$ designates the index into +the \OCP\ list and the~$i$ designates which element in the $v$-queue is +currently active. + +Once a \OCP\ has been used, the~$i$ is incremented; if it points to the +end of the current queue, then $v$~is set to the next queue, and +$i$~is reset to~1. + +When the last enabled \OCP\ has been used, then the standard techniques +for treating letters and other characters are used, namely generating +paragraphs, etc. + +What this means is that it is now possible to apply a filter on the +\emph{text} of a file without macro-expansion, generate a new text, +possibly with macros to be expanded, macro-expand, re-apply filters, +etc. All this without active characters, and without breaking macro +packages. + +How are \OCP\ lists enabled? \OCP\ lists are placed on a stack, each +numbered queue in a given list masking the queues with the same number +for the lists below that one on the stack. + +There are three commands, which all respect the grouping mechanism. +The \verb|\clearocplists| command disables all \OCP\ lists. +The \verb|\pushocplist|~\emph{OCPlist} command pushes \emph{OCPlist} +onto the stack. The \verb|\popocplist| command pops the last list +from the stack. + +For example, consider the following purely hypothetical situations: +\begin{verbatim} + \ocplist\FrenchOCP = \addbeforeocplist 1 \ocpA + \addbeforeocplist 2 \ocpB + \addbeforeocplist 3 \ocpC + \nullocplist +\end{verbatim} + +\begin{verbatim} + \ocplist\GermanOCP = \addbeforeocplist 1 \ocpD + \addbeforeocplist 2 \ocpE + \addbeforeocplist 3 \ocpF + \nullocplist +\end{verbatim} + +\begin{verbatim} + \ocplist\ArabicOCP = \addbeforeocplist 1 \ocpG + \addbeforeocplist 2 \ocpH + \addbeforeocplist 2 \ocpI + \addbeforeocplist 3 \ocpJ + \nullocplist +\end{verbatim} + +\begin{verbatim} + \ocplist\SpecialArabicOCP = + \addafterocplist 3 \ocpK + \ArabicOCP +\end{verbatim} + +\begin{verbatim} + \ocplist\UpperCaseOCP = + \addbeforeocplist 2.5 \ocpL + \nullocplist +\end{verbatim} +There are now 5 \OCP\ lists \emph{defined}, but none of them are +\emph{enabled}. The defined lists are: +\begin{verbatim} + \ocplist\FrenchOCP = + [(1.0:\ocpA), (2.0:\ocpB), (3.0:\ocpC)] + \ocplist\GermanOCP = + [(1.0:\ocpD), (2.0:\ocpE), (3.0:\ocpF)] + \ocplist\ArabicOCP = + [(1.0:\ocpG), (2.0:\ocpH,\ocpI), (3.0:\ocpJ)] + \ocplist\SpecialArabicOCP = + [(1.0:\ocpG), (2.0:\ocpH,\ocpI), (3.0:\ocpJ,\ocpK)] + \ocplist\UpperCaseOCP = + [(2.5:\ocpL)] +\end{verbatim} +Consider now the sequence of instructions +\begin{verbatim} + \clearocplists + \pushocplist\FrenchOCP + \pushocplist\UpperCaseOCP + \pushocplist\GermanOCP + \popocplist + \popocplist + \pushocplist\ArabicOCP + \pushocplist\SpecialArabicOCP + \pushocplist\GermanOCP +\end{verbatim} +The effective enabled \OCP\ list is, in turn: +\begin{verbatim} + [] + [(1.0:\ocpA), (2.0:\ocpB), (3.0:\ocpC)] + [(1.0:\ocpA), (2.0:\ocpB), (2.5:\ocpL), (3.0:\ocpC)] + [(1.0:\ocpD), (2.0:\ocpE), (2.5:\ocpL), (3.0:\ocpF)] + [(1.0:\ocpA), (2.0:\ocpB), (2.5:\ocpL), (3.0:\ocpC)] + [(1.0:\ocpA), (2.0:\ocpB), (3.0:\ocpC)] + [(1.0:\ocpG), (2.0:\ocpH,\ocpI), (3.0:\ocpJ)] + [(1.0:\ocpG), (2.0:\ocpH,\ocpI), (3.0:\ocpJ,\ocpK)] + [(1.0:\ocpD), (2.0:\ocpE), (3.0:\ocpF)] +\end{verbatim} + +The first test of the \OCP\ lists was for Arabic. The text was typed +in \textsc{ascii}, using a Latin transliteration. This text was first +transformed into Unicode, the official 16-bit encoding for the +world's character sets. These letters were then translated into +their appropriate visual forms (isolated, initial, medial or final) +and then the text was translated into the font encoding. During the +second translation, inter-letter black spacing is inserted, since Arabic +typesetting calls for word expansion to fill out a line. Here is the +input: +\begin{verbatim} + \font\ARfont=oar10 scaled 1728 offset 256 %% an X-font + \def\keshideh{% + \begingroup\penalty10000% + \clearocplists\xleaders\hbox{\char'767}\hskip0ptplus1fi% + \endgroup} + \ocp\TexUni=TeXArabicToUnicode + \ocp\UniUniTwo=UnicodeToContUnicode + \ocp\UniTwoFont=ContUnicodeToTeXArabicOut + \ocplist\ArabicOCP=% + \addbeforeocplist 1 \TexUni + \addbeforeocplist 1 \UniUniTwo + \addbeforeocplist 1 \UniTwoFont + \nullocplist + \def\AR#1{\begingroup\noindent\pushocplist \ArabicOCP% + \ARfont\language=255\textdir TRT #1\endgroup} +\end{verbatim} +Notice that the \verb|\keshideh|, which is dynamically inserted +between letters by the \verb|\UniUniTwo| \OCP, uses the \verb|fi| +infinity. It also disables all of the \OCP s, within a group. + +\section{Input and output character sets} + +In a multilingual, heterogeneous environment, it it inevitable that +different files will be written using different character sets. It +is even possible that the same file might have different parts that +use different character sets. How is it possible to tag +these files internally so that \OMEGA\ can read and write differently +encoded files in a meaningful manner. + +After looking at a lot of character sets, we have decided that the +vast majority of the world's character sets --- unfortunately not +all --- can be categorized into one of the following groups: +\begin{itemize} +\item \texttt{onebyte} includes all those character sets that include +the basic Roman letters, backslash and percent in the same positions +as does \textsc{ascii} (\textsc{iso-646}). Hence all the \textsc{iso-8859} +character sets, as well as many of the shifted East-Asian sets, +such as Shift-\textsc{jis}, are included. +\item \texttt{ebcdic} includes all those character sets that include +the basic Roman letters, backslash and percent in the same positions +as does \textsc{ebcdic-us}. Once again there are shifted character +sets that fall into this category. +\item \texttt{twobyte} includes all those character sets that include +the basic Roman letters, backslash and percent in the same positions +as does \textsc{unicode} (\textsc{iso-10646}). +\item \texttt{twobyteLE} is the same as \texttt{twobyte}, but in Little +Endian order, for ``Microsoft \textsc{unicode}''. +\end{itemize} +These categories are called \emph{modes}. + +In \OMEGA, it is assumed that every textual input source and textual output +sink has a mode, as well as two translations: one from the character set to +the internal encoding, and one from the internal encoding to the character +set in question. Normally the internal encoding will be \textsc{unicode}, +which means that linguistic information such as hyphenation will only need +to be defined once. There are situations in which extra characters will +be needed, if the characters or their scripts are not included in +\textsc{unicode}, but this will not be the norm. + +\OMEGA\ has two basic style of input: the old \TeX\ style, or the +automatic \OMEGA\ style. +In the automatic style, upon opening a file, \OMEGA\ reads the first +two octets, and draws the following conclusions: +\begin{itemize} +\item Hex \texttt{0025} (\textsc{unicode} \verb|%|) +or \texttt{005c} (\textsc{unicode} \verb|\|): the mode is \texttt{twobyte}. +\item Hex \texttt{2500} (\textsc{unicode} \verb|%|) +or \texttt{5c00} (\textsc{unicode} \verb|\|): the mode is \texttt{twobyteLE}. +\item Hex \texttt{25} (\textsc{ascii} \verb|%|) +or \texttt{5c} (\textsc{ascii} \verb|\|): the mode is \texttt{onebyte}. +\item Hex \texttt{6c} (\textsc{ebcdic-us} \verb|%|) +or \texttt{e0} (\textsc{ebcdic-us} \verb|\|): the mode is \texttt{ebcdic}. +\item If none of these four situations +occurs, then the default input mode is assumed. +\end{itemize} +% +Here are the primitives for manipulating modes: +\begin{itemize} +\item \verb|\DefaultInputMode| $\showmode$ : The default input mode is set +to $\showmode$. +\item \verb|\noDefaultInputMode| : The standard \TeX\ style of +input is restored. +\item \verb|\DefaultOutputMode| $\showmode$ : The default output mode +is set to $\showmode$. +\item \verb|\noDefaultOutputMode| : The standard \TeX\ style of +output is restored. +\item \verb|\InputMode| $\showfile$ $\showmode$ : The input mode for +file $\showfile$ is changed to $\showmode$, where $\showfile$ can be +\texttt{currentfile}, meaning the current file being \verb|\input|, +or an integer~$n$, which corresponds to \verb|\openin|~$n$. +\item \verb|\noInputMode| $\showfile$ : The input mode for +file $\showfile$ is restored to the standard \TeX\ style. +\item \verb|\OutputMode| $\showfile$ $\showmode$ : The output +mode for file $\showfile$ is changed to $\showmode$, where +$\showfile$ can be an integer~$n$, which corresponds to +\verb|\openout|~$n$. +\item \verb|\noOutputMode| $\showfile$ : The output mode for +file $\showfile$ is restored to the standard \TeX\ style. +\end{itemize} +% +Here are the primitives for manipulating translations: +\begin{itemize} +\item \verb|\DefaultInputTranslation| $\showmode$ $\showligocp$ : +The default input translation for mode $\showmode$ is $\showligocp$. +\item \verb|\noDefaultInputTranslation| $\showmode$ : +There is no longer a default input translation for mode $\showmode$. +\item \verb|\DefaultOutputTranslation| $\showmode$ $\showligocp$ : +The default output translation for mode $\showmode$ is $\showligocp$. +\item \verb|\noDefaultOutputTranslation| $\showmode$ : +There is no longer a default output translation for mode $\showmode$. +\item \verb|\InputTranslation| $\showfile$ $\showligocp$ : +The input translation for file $\showfile$ is $\showligocp$, +where $\showfile$ is \verb|currentfile| or an integer~$n$. +\item \verb|\noInputTranslation| $\showfile$ : +There is no longer an input translation for file $\showfile$. +\item \verb|\OutputTranslation| $\showfile$ $\showligocp$ : +The output translation for file $\showfile$ is $\showligocp$, +where $\showfile$ is an integer~$n$. +\item \verb|\noOutputTranslation| $\showfile$ : +There is no longer an output translation for file $\showfile$. +\end{itemize} +All of the above instructions apply only after the carriage return +ending the current line. + +The default mode when the system begins is \OMEGA\ style, +assuming \texttt{onebyte}. This is sufficient for all the +\texttt{iso-8859} character sets, for the \textsc{utf-8} +encoding for \textsc{unicode}, many national character sets, +and most mixed-length character sets used in East Asia. + +Once the basic family of character sets has been determined, +\OMEGA\ can read the files, and actually interpret control sequences. +It is then possible to be more specific and to specify exactly what +translation process must be applied to the entire file to convert +the input to \textsc{unicode}. + +Input translations are simply single \OCP s, which +differ from input filters in that they apply to \emph{all} characters +in a file, not simply the letters and other characters in horizontal +mode. For each kind of mode, there can be a default input +translation. + +Upon startup, there is no default translation for the +\texttt{onebyte}, \texttt{twobyte} or \texttt{twobyteLE} modes, +but there is one for \texttt{ebcdic}, namely +\begin{verbatim} + \ocp\OCPebcdic=ebcdic + \DefaultInputTranslation ebcdic \OCPebcdic +\end{verbatim} + +\section{Further work} + +The \OMEGA\ project is far from finished. Currently much of the current +work is geared towards font development. Nevertheless, new +functionality is to be added in the future. In particular, more +general methods for hyphenation, as well as for text output, using +\OTP s, are envisaged. + +\end{document} + + + +The \verb|.tfm| files used by \TeX3 only allow 256~characters each. +Like \TeX, \OMEGA\ uses \verb|.tfm| files, but it also uses +\emph{extended font metric} (\verb|.ofm|) files, which are +generalizations of \verb|.tfm| files for fonts of up to +65~536~characters each. + +The description below focuses on the differences between \verb|.tfm| +files and \verb|.ofm| files. The standard definition of \verb|.tfm| +files is in the second volume of Knuth's \emph{Computers and +Typesetting} series. + +The first 52 bytes (13 words) of an \verb|.ofm| file contain thirteen +32-bit integers that give the lengths of the various subsequent +portions of the file. These thirteen integers are, in order: + +\begin{tabular}{ll} +$0$ &empty word to designate \verb|.ofm| file;\\ +\emph{lf}&length of the entire file, in words;\\ +\emph{lh}&length of the header data, in words;\\ +\emph{bc}&smallest character code in the font;\\ +\emph{ec}&largest character code in the font;\\ +\emph{nw}&number of words in the width table;\\ +\emph{nh}&number of words in the height table;\\ +\emph{nd}&number of words in the depth table;\\ +\emph{ni}&number of words in the italic correction table;\\ +\emph{nl}&number of words in the lig-kern table;\\ +\emph{nk}&number of words in the kern table;\\ +\emph{ne}&number of words in the extensible character table;\\ +\emph{np}&number of font parameter words.\\ +\end{tabular} + +The first word is~0 (future versions of +\verb|.ofm| files could have different values; what is important is that +the first two bytes be~0 to differentiate \verb|.tfm| and \verb|.ofm| files). +The next twelve integers are as above, all non-negative and less +than~$2^{31}$. The inequality $\mathit{bc}-1\leq\mathit{ec}\leq65535$ +must hold, as must the equality +\[\mathit{lf}=13+ +\mathit{lh}+ +2(\mathit{ec}\!-\!\mathit{bc}\!+\!1)+ +\mathit{nw}+ +\mathit{nh}+ +\mathit{nd}+ +\mathit{ni}+ +\mathit{nl}+ +\mathit{nk}+ +\mathit{ne}+ +\mathit{np}.\] +Note that an \verb|.ofm| font may contain as many as 65~536 characters +(if $\mathit{bc}=0$ and $\mathit{ec}=65535$), and as few as 0~characters +(if $\mathit{bc}=\mathit{ec}+1$). + +The rest of the \verb|.ofm| file is, like in \verb|.tfm| files, a +sequence of ten data arrays. Three of the arrays are different: +\emph{char\_info}, \emph{lig\_kern} and \emph{exten}. + +The \emph{char\_info} array contains one \emph{char\_info\_word} entry +per character. Each \emph{char\_info\_word} in an \verb|.ofm| file +takes 2~words (8~octets), packed as follows: + +\begin{description} +\item[octets 0--1:] \emph{width\_index} (16~bits); +\item[octet 2:] \emph{height\_index} (8~bits); +\item[octet 3:] \emph{depth\_index} (8~bits); +\item[octets 4--5:] +\emph{italic\_index} (14 bits) times 4, plus \emph{tag} (2~bits); +\item[octets 6--7:] \emph{remainder} (16 bits). +\end{description} + +Therefore the \verb|.ofm| format imposes a limit of 256~different heights, +256~different depths, and 16~384~different italic corrections. + +The \emph{lig\_kern} array consists of a sequence of +\emph{lig\_kern\_command} entries. Each \emph{lig\_kern\_command} +in an \verb|.ofm| file takes 2~words (8~octets), packed as follows: + +\begin{description} +\item[octets 0--1:] \emph{skip\_byte}, indicates that this is the final +program step if the byte is 128 or more, otherwise the next step is obtained +by skipping this number of intervening steps. +\item[octets 2--3:] \emph{next\_char}, ``if \emph{next\_char} +follows the current character, then perform the operation and stop, +otherwise continue.'' +\item[octets 4--5:] \emph{op\_byte}, indicates a ligature step if less +than~128, a kern step otherwise. +\item[octets 6--7:] \emph{remainder}. +\end{description} + +For \verb|.tfm| files, if the very first instruction of a +character's \emph{lig\_kern} program has $\mathit{skip\_byte}>128$, +the program actually begins in location +$256*\mathit{op\_byte}+\mathit{remainder}$. +This feature allows access to large \emph{lig\_kern} arrays, +because the first instruction must otherwise appear in a location $\leq255$. +For \verb|.ofm| files, the latter value is $\leq65535$. + +Extensible characters are specified by an \emph{extensible\_recipe}, +which consists of four 2-octet words called \emph{top}, \emph{mid}, +\emph{bot}, and \emph{rep} (in this order). These bytes are the +character codes of individual pieces used to build up a large symbol. +If \emph{top}, \emph{mid}, or \emph{bot} are zero, they are not +present in the built-up result. For example, an extensible vertical +line is like an extensible bracket, except that the top and bottom +pieces are missing. + +\paragraph{Font offsets.} + +When switching from one alphabet to another in Unicode, one passes +from one Unicode page to another. However, the corresponding fonts will +normally all be numbered from~0. To deal with this situation, a +new keyword, \texttt{offset}, is introduced. In the \verb|\font| +command, $\mathtt{offset}\;n$ states that character~$c$ in the +font is referred to in \OMEGA\ by $n+c$. For example, +\begin{verbatim} + \font\ARfont=oar10 scaled 1728 offset 256 %% an Omega font +\end{verbatim} +states that the font \texttt{oar10} is to be loaded, using a scaling +factor of~1728, and that character~$c$ in the font will be referred to +in \OMEGA\ as $c+256$ or, equivalently, that character~$C$ in +\OMEGA\ refers to character $C-256$ in the font. + +\paragraph{Extended virtual property files.} + +The \texttt{.ovp} files are the same as \texttt{.vpl} files, except that +characters are no longer limited to 8~bits, but to 16~bits. + +\paragraph{Extended virtual font files.} + +The \texttt{.vf} file format already supports fonts with large +numbers of characters. However, not all drivers that read +\texttt{.vf} files properly support large fonts. Therefore, the +files generated from \texttt{.ovp} files are labeled \texttt{.ovf} +rather than~\texttt{.vf}. + +\section{Character dimensions} + +To simplify the acrobatics necessary for diacritic placement for +certain alphabets, four new primitives (\verb|\charwd|, \verb|\chardp|, +\verb|\charht|, and \verb|\charit|) are provided. When followed by +a integer designating a character, they respectively provide the +width, the depth, the height and the italic correction of the +character. For example, +\begin{verbatim} + \charwd120 +\end{verbatim} +can be considered to be an abbreviation of +\begin{verbatim} + \setbox250=\hbox{P}\wd250 +\end{verbatim} +but without the side effect of creating a box and putting something inside it. + +\end{document} diff --git a/Master/texmf-dist/doc/omega/base/torture.ps b/Master/texmf-dist/doc/omega/base/torture.ps new file mode 100644 index 00000000000..30bdb8628f7 --- /dev/null +++ b/Master/texmf-dist/doc/omega/base/torture.ps @@ -0,0 +1,7612 @@ +%!PS-Adobe-2.0 +%%Creator: (Omega) odvips(k) 5.92a Copyright 2002 Radical Eye Software +%%Title: torture.dvi +%%Pages: 18 +%%PageOrder: Ascend +%%BoundingBox: 0 0 596 842 +%%DocumentFonts: OmegaSerifCommon OmegaSerifLatin OmegaSerifGreek CMSY8 +%%+ OmegaSerifCommon-Bold OmegaSerifLatin-Bold OmegaSerifGreek-Bold +%%+ OmegaSerifCommon-Italic OmegaSerifLatin-Italic CMSY6 CMTT9 +%%+ OmegaSerifArabicOne CMEX10 CMMI10 CMR10 CMTT10 CMITT10 +%%+ OmegaSerifArabicTwo OmegaSerifArabicThree OmegaSerifTifinagh +%%+ OmegaSerifIPA OmegaSerifCyrillic CMTT8 CMSY10 +%%+ OmegaSerifArabicOne-Bold OmegaSerifArabicTwo-Bold +%%+ OmegaSerifArabicThree-Bold +%%EndComments +%DVIPSWebPage: (www.radicaleye.com) +%DVIPSCommandLine: odvips -o torture.ps torture +%DVIPSParameters: dpi=600, compressed +%DVIPSSource: Omega output, Version 3.14159--1.23.1, 2002.10.08:2301 +%%BeginProcSet: texc.pro +%! +/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S +N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 +mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 +0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ +landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize +mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ +matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round +exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ +statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] +N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin +/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array +/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 +array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N +df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A +definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get +}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} +B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr +1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 +1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx +0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx +sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ +rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp +gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B +/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ +/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ +A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy +get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} +ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp +fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 +{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add +chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ +1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} +forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn +/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put +}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ +bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A +mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ +SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ +userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X +1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 +index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N +/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ +/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) +(LaserWriter 16/600)]{A length product length le{A length product exch 0 +exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse +end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask +grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} +imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round +exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto +fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p +delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} +B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ +p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S +rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end + +%%EndProcSet +%%BeginProcSet: texps.pro +%! +TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 +index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll +exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0 +ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{ +pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get +div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type +/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end +definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup +sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll +mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[ +exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if} +forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def +end + +%%EndProcSet +%%BeginFont: OmegaSerifArabicThree-Bold +%!PS-AdobeFont-1.0: OmegaSerifArabicThree-Bold 001.000 +%%CreationDate: 6/03/98 at 9:43 +%%VMusage: 1024 23777 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 595 405 0 +%%EndComments +FontDirectory/OmegaSerifArabicThree-Bold known{/OmegaSerifArabicThree-Bold findfont dup/UniqueID known{dup +/UniqueID get 4405653 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicThree-Bold) readonly def +/FamilyName (OmegaSerifArabicThree) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 595 def +/descent 405 def +end readonly def +/FontName /OmegaSerifArabicThree-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 128 /charaaa put +dup 132 /charaae put +dup 136 /charaai put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4405653 def +/FontBBox{-87 -643 1003 1011}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C6736001140EE3F98559E66B7DFEBFE4C51 +1C9B5180FCE9ED2E4D03937F9112EF7C862C0CF91AA27BDE000631C680623F39 +968F943EBCB4CDE6B1202F2FB85F3751A4A3504D7008438A7114A1C968F497B6 +12C3B26C19A5E25F51DADDF3E97EB4C4249B58396BEAC13C2F9D0BDF37A356C2 +74DA38C4374AFD757CE5900DDA27B6D9BC0B207D0FE83EA292D7633E77E33C05 +3BCB5F2C97FFA0E515AFB1E21AF0F86C8326D0FC13AE4294A760FE305702AA73 +C180CFEC8EB3CD2A3B0B9E6BC54A482C66EF74EA91DC5BDD60EBF63C702C6128 +3E4030737A6C717562D721AC876D6829AE7A9AEDE5E517DA7A11DBC746B3571D +194B6840AA135E3B29A458B5A4E49F2C9FCFAA22BE76F58562E6926532D76894 +48D81215D3C9A5ABC7E2B0683E0C811DA3BEDB990BBE24E80876AF8E61C32D4C +A1F21650CC35C9435581E77BA86652EF989FD87C61514216432EAB753D5BC555 +AB5C223656CD3E59DD8F8AF10CFF3146CA6BC78B70E5685AE9A67F8128A0C050 +6955237FD68CAD5D1366109B1F3577069CF4971E0AF3E019C9EFDA2E0C0E95C1 +A7B56B819A6B45BAB306B465357930C978794450D0DCDD48B981D0BA768C1F41 +089BC67656ABA844B4CE3F5DCF514D507B3C8D052C5EF037AB28A5674C9CA7CA +B85C3F1D6C46E01861FFA7DD31E3B9D64A85A7D4C13136392E607B3AC4DFF976 +9B3CDFEDFFE9C3661E44E6D7E44E29CC0848E8324D53E2D0815AA4857F43CE44 +08C703D864F66186E45B5D0E5ADEFA79099E3DD372EDAFA466D141B1F5FEE3E3 +02D2BCEF36C98EB0B5058D7AD22E98087FBA3023C4342535DAFE439DF4AFD525 +4167A21CD51B8959D899C05E423C081B2224C6712576909D101E0179ED198A84 +ECECE32CAD2225592CEA5B55ADE572AC5B4CED52C1433629AE2A3A495F7EFA2D +8E0BF37447AB0E403F2717850832B3812C040108BE4C8F5DB698E081FD5E431E +713D15F33E174E2A37811CC6796359638FA5D1B2DCF3DF16396FA4BE5507AE4A +1C00CEE3E6311A950A48108E70BA7A46EA016651020BCE03D86AB76F1EE6FB9D +1AFE2A91DC1569078A9E235F1CCBF1EF95351B467A31B054200C90A4B1DA76A3 +496CBF3E4FB998EEBB05A7A1ED76E9BE9B0EFD16E8572462D50A0C333925B0D9 +661770399923B8DCBBF1628A8FA3BF337982A3DFF9E33653BCC373B3DD70CA1D +3C58F3E48EE2A5FCA1191BC358086B8D30FF3471B7FF1D3C2564EA6363C55B33 +486631ADFD6AB982A0E151E9A8305566DD012277095AACFABB608D8DA03F9CF5 +FCCA5B12918B0F800CF1DAC9B9D229AC0D6E6286C38F943FCB2BC11543731619 +B31D7D2F8EFD077B4C0405AFF86F730523F37DEE8C3322909C07F390EFB76393 +331054369E181071101E184E7F1843BF0B9898A9139F5A6D4E6FCDA003C6879B +FA7C9946DD31D3839D1B170DB0A387D7CBED18E9AB0F465FC71F50B430669F86 +30FB55701DA6DC5448D98BE713490110E7F21E96980318EA3A56B49B40DE6A14 +38B7C4A045900B711041C237DBFB1A1CD234BED8B89AEA0771E6E4EF736A57B5 +DC9ADBBE51CC75AB67EF7FCA45158FF32AE059966D4DDB0288247EC8E3F7B0DD +996C91EB44F0 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifArabicTwo-Bold +%!PS-AdobeFont-1.0: OmegaSerifArabicTwo-Bold 001.000 +%%CreationDate: 6/03/98 at 9:40 +%%VMusage: 1024 46068 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 625 375 0 +%%EndComments +FontDirectory/OmegaSerifArabicTwo-Bold known{/OmegaSerifArabicTwo-Bold findfont dup/UniqueID known{dup +/UniqueID get 4311139 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicTwo-Bold) readonly def +/FamilyName (OmegaSerifArabicTwo) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 625 def +/descent 375 def +end readonly def +/FontName /OmegaSerifArabicTwo-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 91 /dalthreedainvfin put +dup 108 /rehfdaiso put +dup 167 /kafswashini put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4311139 def +/FontBBox{-125 -671 1096 920}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C6736001234F4C7DE8D2AE5353E2FB4EC5D +DA3365CBE565213F1096E617F437159223F2B1418B3EA7C4BDB22196A545AE13 +59CAF9378D2CBB050B05CA8601AB231E90EFB6A78A41C70CF56A825B3ACA8146 +B10F2624C748EF943DA2E422209609BB65C781F46BEB920C65F8F7B09ECFBB48 +C1D183C810D013710CE8939E2647235E8DB9BCA80F6F077D0BAFE3C2DFE5739D +5AA68CE8E2099338F6EB005962E1400F2D11852AF3189B2D1116A980ECF95678 +75C601D02623E8B47FFFA97188F37E76C1A3EA9FFEF23D12D59955E9932B795D +A8CCF2396FFDC66B635E2F7B3409930B58459BA7D7A8898F776C0C8B4F4F8AC4 +700F378D447F1D5EB675E3E4E8854BF27FDF241203B2DA4207616B430AC12BC6 +D4ACB0A1B8B9B26F5D2462E8C956070F4AEFF325E0D24724BC3C47CAEE381616 +0D14B069314ABB99C24ED1D6DDB7F50575A1ED13EF8EC0B749F157E941B4826A +97352F9E9B7FF7DB0641C83E7AB28A7C71CDADA5F04277833023779595F7661D +28169240226788F6578E61B710C6D01F9E76905217F9E9220F395FA450D092F6 +5C062108AC34CB6DF2D8B26FDA2236D97244B19A3862FF6FBDDB3CDCCF3CDB4F +F0D5B5E6E707151ED7CF4087A2D3261C122B0749D3613F85D5911FB77768C4C7 +C2720BA16AEF524ABD1177DF66B48E816D591147519838133E097122926DC2D9 +CE23642049EFD3A61C9A2B4D710697E18D49644F954710B3BC4B089C0E39085D +253B97E1EAF5809BE351617DDF5A893102A107D360122518F8DEE14A3BB76FE3 +909F293DA44BB457014D745196AAF73F063D7C965F8178D528E7E6BADDB93C48 +AA633F477B739EAAF07B14F1A85B3EFC1C18FD447F68460CAB3EE3A3C0572F13 +A5A400D355B1DE1D32145D39243D0590A92562FF3EECF7B1499A9F3E37D5A600 +D94C0DAB5835F049AFA413A05AC855001CB0C39F75B71C47081C70A717B2CD5E +5298ACF97096DD0DFA0D9884DAACD9C2503E7C7B656D3720CA214A69BBCABA9E +A958191214BEB72FD912219AD35D0A48DEAAA63DC1C4D598320328214D9F69C7 +1A2E1EF8A48838E2662A426B26C5FCDC54AB5E0B35058A5810200F8857BD60C1 +917750F4C8FE4CA1EA5D56FE89CD34D712A444C1686B2A8B3C0465DBF032919F +F85C8A7FFDD4EFADE6306463109362F4B0988F9CDA8EE6327B712A987144F6BC +49A7A004E7E4DF8FD7B0556CC4C052D62DCD606F7B5437B9EB1FAC5334259B94 +53869480B1DDF9154F405413A87268C5AAFD354397E9B6C43D7AA79DF12DC9D4 +10094AA2A78DC69A3A749F0923DD12E3CA80676640C2DE87DDD87C1C82B89851 +6958E1CF4017DA3C7A9B8269998092E831A58D786DF0CA340313A4886DE53B0E +20C64CD894BEFCA5B8D183B09C4E38FF3553CE05A0ECC272A51DA9EF05252839 +C0DDE7682C4F264D25222733DE5F074B28EB549337F72A9B8134B71E25E517C6 +0BC4382F063958BD3DA86A41BE556413E9D334A96DBE56960D91A871DA970CAC +1AC836F046E0A0235A2BF004EB34E711920AE6AD28F7242E8B6F16AC159223D5 +80734F3860C94ED3203F2DB18112127237C2CBBB0D0EA97F2CCE9E72BC07681F +2848D8E3C203DAC3CE7A4BE86E4A6793669C57AC233BB7214B6E62431185B3D4 +AAE931B28D74006E141A095D5CDA4E6CD904C51202D0E4E13C2F44A70D69F4D4 +A319B0979DF0C0569EFAABA4EB1E265B21681CD1ABD2718FD4349684849CCD76 +84ECFDD62E682F9177EF7FDE99F5064EFB +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifArabicOne-Bold +%!PS-AdobeFont-1.0: OmegaSerifArabicOne-Bold 001.000 +%%CreationDate: 6/03/98 at 9:43 +%%VMusage: 1024 39006 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 701 299 0 +%%EndComments +FontDirectory/OmegaSerifArabicOne-Bold known{/OmegaSerifArabicOne-Bold findfont dup/UniqueID known{dup +/UniqueID get 4250676 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicOne-Bold) readonly def +/FamilyName (OmegaSerifArabicOne) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 701 def +/descent 299 def +end readonly def +/FontName /OmegaSerifArabicOne-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 49 /onearabic put +dup 50 /twoarabic put +dup 51 /threearabic put +dup 56 /eightarabic put +dup 75 /shadda put +dup 99 /alifhamzaiso put +dup 109 /alifiso put +dup 110 /aliffin put +dup 112 /behini put +dup 116 /tehmarbutafin put +dup 118 /tehini put +dup 119 /tehmed put +dup 120 /tehfin put +dup 126 /jeemini put +dup 138 /daliso put +dup 139 /dalfin put +dup 143 /rehfin put +dup 144 /zainiso put +dup 147 /seenini put +dup 148 /seenmed put +dup 150 /sheeniso put +dup 160 /dadmed put +dup 163 /tahini put +dup 176 /ghainmed put +dup 180 /fehmed put +dup 184 /qafmed put +dup 190 /lamiso put +dup 191 /lamini put +dup 200 /lamalifiso put +dup 203 /meemini put +dup 206 /nooniso put +dup 209 /noonfin put +dup 211 /hehini put +dup 215 /wawiso put +dup 216 /wawfin put +dup 218 /yehini put +dup 221 /yehiso put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4250676 def +/FontBBox{-87 -619 1096 1152}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C673600181FA406F8EB56A8316F8647B842 +3AE588E35867102682AE142A8CA0BC2DC8F4ADF8E65872876F2108C3E3E307CE +1F9C5B5D1EA8BBD559658EF5023880DD8D8678E6F06666667AB78FDD2DF16168 +82CAC672ACA700A0D6CFFABD2D9E8319809F8A27BDBED7D02B33D144D5DB7511 +BBD11661C44B851687D0B192E527C7EFF0270939D0685D3F8C0CA9F2C232307D +06D5977F78F0FE65C739AD74ED98A9450DFBCD5A2F28897D1875C1BDC66152D2 +8DF231D7D7E6C5084FB2237636AB2466FEC8FF4FEAB0F4938110F0A4A652467A +5F6388FD656738D88982AEB30D711A5895D89A0F3CF62BF0DD9E6CDB49FCB9DC +10567485BBEB19A29130F5926B81187B3C64C428BFB231BB8198894EF7495E51 +38D8E3CB64BD1BAE789DBC5F1A4EDBAF11428A51A8F7EB1FC083A485D1C50F0A +18005E2869EEFA05E58EAA102989A3B44384FAF3DB06074FF1C91F82ADCE128D +312CC4402E2F7C40C474540B86DB5241FFC90FB903BB8D2C37D4A1446B099080 +254D90AAA8B631AE6FF5AC24954DBBBB16558DF88DD040C408071D6F6EFD31B5 +C6350D5EADFEE4966F7273330BB71A1E09AFA37107154E5430CD813251C14FB0 +D72114C5D0C23F164606C473AF1867FEDA04AA0C5ECD1E0DBCAFCEFF7DEAC87B +5A7EDC1396631D7F4CE4446601FFC5716A75BB0623659A6B7276EFB91A3107A7 +16AE363FD620C2257874E43A4840E1AF0241871EA45A93CB49D4C62D0A757B9E +F608AC61C1807383A1FDBC48474C4E7303645387F87075FD5F5ECDA6728285A2 +D7EC3DEA062BC79ADB5F321821C7A03258CCCF3CDFDA2CF22F246A29D228205B +E9896C2B0E43FD628897E1D85C6477372C43AE2CA1A61195E0F437F9C6EC869F +B06F7F2B9F14658905BE688D77641BEC6D54CABB0CF292D91F721ABD108A0937 +98A2BBA78271F6C15BAD3C9DA4F21BF93EADB34804D206CD872EACCA0563E9F0 +54665B92FB804C7EE832FEE338F1A24456666DE91D0040D191976E58C420EFE7 +799210DDB777A6AFF563ABDD9802B99CBF4FCB6C035BAAA26D11D6D3A4F3BE42 +F956A22EF5B8FDE7178E7CF45D7C8F72CC72887D08500375297E66BDB4DB7537 +8F81635568A1CA72940E2934A2EAA3C0DF04B1BCEFE14996E7CD68F42CAD2580 +53E61E74E2095B31B4FB01CEC7227F5616E339A9209333F46B3D2219A613394E +6FB3996558BBB213A63628CBB16EF528CD703E7695DE3058F00EE2626BB653AF +7C340C8A11FC0D6C2CD94752A1919D1AF602E6E89F16F34C2505D559D2B665D5 +6E3C217463894C308231C1E61FDC8B4D551CCA0DD3245F428099967E716CB162 +A6E3AF0E844E7F8910149DF054BFACCD5A67777D2352361BEE483B79843F44B4 +58C2B6DC9E8B9603D5BA66491207FBD6F308C47E59D47408026BFBA9603B9F92 +296D083AD8EAD26F599810F02C4EF3B75B08E6F3D045C1888E0D54B908A245A8 +767EFA0AFA67F2266EF79F7A592E297A8592435CA499B616C7E21F66FE1126A4 +AAF6FEC02E8D5B324FA20EF7A4C70C25C179D9EDC5477A5A107E7D791AB80B9F +78C4433C173963415E2E242D8EF274B9D9E58AF29B1EFECB8330616E30222027 +8DD423F34A5DC4790590B5CD6AB7A3BA9E9EA14C1565ED8F88CEEF324395918D +AB63608AA8EC840DD236F327851A1FC2DAA4F93C227A2F355DC8A2FDD73A44C6 +9825EB7D93B34EAED331E11903B41B6AC1A82F2739F606AA93FDD45E5DE0BEC6 +DC4F65ABBFD1D5F7424C78C8289698DC3BFADA1516C42B1EF881FDBEB19E3993 +A5C06B1F4FEECC71F600AE2B855B9C808DF61CD70D96E86095925674D93C7295 +45C7A4521414B5F7CA3590EAD6401B0590CFD939B7383ACB33D423E3BEE15381 +CDFCC86A4859514D56F8683848B49FD7A531AE5E966CEE2EEF44F352B6FF80BA +E3334A51C8AA1561668F9CFF592323FF8BB7CA4C4DB233B868A10C5265D6A898 +C7ACF3A2388414629C249AB07853BC40836A4328C46F144CCD0DD278137B0C17 +C9FC6452670870ECC997742AE55886B795DA5A1FA7ED354ECE40C0833E51E6F4 +DD53E5E5DC6084FF9CAD268FD1D7F0061CF4E638E325AFA6E3A54C3EFDADB343 +8B6BF8188AD327E71FDD88669FA04BA50132ADAF44F40C87CB065F195C2CBA45 +F4DB6B1F70C5A21BD5E9E83F0BC74E1ACD64745963A80249DF56EBA9EBB35E29 +AB506546CB575ACFB0DD2B22921D46241164F6C4FEDB696156396A16ED86467C +53A564C9EDE22C919AEFC3033AE548391BEE36A1109EFD8079E7F493332E6224 +C916C297AE47BBDF301688F2F114163DCDF5593B21D2127E83DA5900B4D25713 +7BD65A919CE080B2EBA11578F5A41BD61C15D82CE449F38C20594224AE4B0FCD +922635D3AE87D26A57923AB3BD0AEA81909524EA0C9C1BC1154B4B21048BCC7B +388D9847B69B24A241EE6655B64CF04E0E924E862284316269CCCAEEF58B5564 +9C55BC70FC8BDC948DDF3C8FEF8ABCB8E6718CDB4316BB35E80F392BD2C05765 +DFD8099D66B978086E1E6BCDDB3354BDFA40F57CDF820BB6F5E8142558C0F9EE +59664C3CED995DDDC8DA6AE5454569826908BFBCD5CEA309A0155000DED44E9D +156AE03C9A9C9A889CDB17D37D5711C512723ACB0B73249B6EB57B9463F8591C +DCE3008EEE2E33DFAE25AC0BD669B87BEB12E312EBC30C044ABAB7F0DEBFFCB9 +CEE2757C2C135F41A656A40E64457D66077533ED9961A211FCFE6D8C245A86BC +F350F6ACB5D7B15669E38C8F03E49A87BE80889C168E8BEA7D9DAB1BAF5E86DD +1A70620950E0C88CE34BD131509FC0E1113DF8306A6A953E52363013AEFF51C2 +4CDDC892B8EE693ABF2A1BB1159A720514F3096C53011B515871CDD21AC4FCF8 +AA217DBF2A800D26548108ED2466845906A08943F6A168BCBBA4A1724DCCEFA1 +5C9315809C6BD247001B649D0035C4D450C8F4979843B0EE58EF5ABE82B89D0C +E4B594E04FD8A0D11693DC879898966F7E72443A9CFC69A8CCF00194031BE578 +D507AFAC153706B6B4ECB2022FEAAFCC9E36AFFEF0B2A9DE33DEED7A4A5B00AA +909B3A53E0A4229D661070EE6046F4AF525F847DEE44F8DB4B8385FA5FBFF17E +BE2A3F853CDC46538B53BF2BB2138CC9F49EA10EAB9B481E0A3AE3820E6B58E8 +952FEBABBC964938758E22AE62491F7F1A64BE21F21B09F81D9F6F448C9193FF +7C44E0F7638775053670B34E1D002B1B9EE0781EB5648D0E145D9A79E2B2CD96 +14A57A79CE28A67532F29D0945399EC6480293A8BE57CB357C7D2AA3B3C04D18 +0DB0C35B916120A880CA7544F8ED6B9EEC967642AC3B6FE0568184DC3882413B +66034144CD47820BCCAAA14B0B58038FB6363383AFA1B4FCB2FE56B5CFE5C725 +0D40453EF5AD976E598F8C29315AFBAEB72EB35F2CF0F844D018055890913DE9 +E17D6E985E15CCFD4B02BF713CEA59FF1C55626D32EC29F6370F8B83D17A4D09 +40C38D1E1C6B509E5713D3538F0E640259AD2456A606E4947C4AFC168E379E13 +A539CC261533AC00D43A6AAA5087A22957556E22D881950FDF3D3AD46291CAB4 +678F7B1AE696CFD0C2BF3E473E99AE0B115F5D14514F6960D8412EE373C306C6 +FCC0C0C66054BFA8CC8D2228DC5EE62A054CDAE4612DF16711D186EBC465D2A0 +F31E50F6D9AD643618F7AEA2A758F57574901B1B70C58D7391755DA4B28F5FFE +BDD17B186BE7211648ACC17080A4AFBBB0C5BC4359C4F61EBB2AC8857C9A9700 +00A3B80A57179CB387529FA76C5F1A703801A37067AA28831337042B40AFBB70 +D42114B68E4526299508993F6CD1A47207538A7E3AC261A30580FDD3553CD498 +D49C5904CC9A8B20C3DC8070D528D4B0B2B18D61EC6BD879B0D9FC64BFC68DD1 +7E5E9E6FEE250384CFBD7596C2607EE8262B2D2F2D362DB16ED6C0A0ED73B163 +D3EDCBFE68DB4F1D7128498F126634DF605E0C9F8D9B6DB5CEF94C0DA95241E7 +1F63AC8C3693FD669EF2B47FE2F0F01EAA27DF6E4349A2C4CE8A00987667485C +25769044B2D583E99BD22CC0F23FA04B359727EFED93EF6629F5E88B1AF0BF0D +1E1581D4B23649A42D2B1CE755153DAFA52A939C26A5E6A89EC19F66B2949CA0 +DCB97F135F7C3AC54C62338151C77241DB1C645588FA4C62846CD579F2BEF754 +335AF58A32DCA45CEC04C44561698CC84229D98884BE2788CDDBC2F334A6404F +F04E40D957006BF70F2D9BF7B0604F5FEABB7B7A6E70DD85C7D51BF89EFC24FF +D10793726A3E199120D0397F37C3AB91310DAA5E8F73A1729D41C9A12BC6795F +38A781CF0D8D5597BCADB3AF4C1AA13E26A427F46AB8938507F1B41D7C149CFB +DD638235E74F60F9581E1F2456914CD0F135785074EDD3FA9FD301420204D39E +33F6ABBABC593E6E131535E93F3EB5D1F0D0ECB746A8575E5A79651074D96D78 +4C4F171D2E78D55D8FC75BC3B6594B83C57AA4FA62F2689478BFC84A958F0F49 +6578D231C335328381D0652A4279D08D08F7F984D1CCDEDAA2664ADDC9864B5A +0898EDCB54D1DD46D4CFFFF36D66557EA520FAB8D9394733347CAD406FFEC58F +CB8F509F98B30743504285ABE401C829EB77A66457DAD90C24F77422A04CF8AA +44E8DC9298E8937288DA2113F59B952B140671C06426C3A19525F69C367E6449 +A01661B38833DBFF6420DE79960A0FBE323AA37BB0682D16851E18DB8674B74A +7780CD2DD8D8E6C26AA23A0706795A204FE71260CF179056583D0DE27243DE00 +EFE619A678231727D611703E28945BB260C75592D5F5FF53A87F47690700F218 +0A6C89200794EE154A4ABF3A3C123F6C9C13B9AE5B9D5EE36BB4CCE81B1268C8 +5F81669FFA211A8FD9308C371FF195E4592AAE95F9A00E80B2DF909632742B4E +C0E42FB94136581D53341B41A60EF2A46B52BFCC559C70354E9086EF330438D2 +A8FA8AD5CC6F9EF65C8FC30AD470F2BE210D9067B13480C92C30443818778BFB +DB9B6373656D2541F2607BE181DEB22EE80B92816CAB3B1F3212A6EB926CD9DB +2EA9125D748C23BB859ADE524A5ECFEAFBBED7E14CC06D2788B60A8A37101F00 +2D3BD7ED0C09E9ECF10DFE99888899F5B2724558DBB0ABD82783AC276D88CC4B +D5BEB2E626D217C6B9A8CA3D8A83DCC79472F7D9DAA8957B51E37E73E7261EF1 +0334DBEDA4C18757EB840E94E411B1BCDFE11940B2D0844C3143B8F3F13ACB64 +64B491E850485CE2ED778039AFE9ADA0B5EC06FAD04D7F6814BEE1A8F1C2840E +8A66BF03AB8687B58D03105B9A573F754E2CEB2E922503466E92757883AEFD88 +6265DCABFDDAE448FE1234870052C37ACF39D38B19344EAF2DE90EDBFC805C29 +846C36EAA54E2EED4E884D5AA0396A77F0318C2022F9BA88E13941A8AF563FEF +EC01E391686652EEEAF63A0C4D6BA24C7C715EB3BA290DDFC9437C49166FD9A5 +316FCD749C16BCCF50FB3A368A71966145E29CED782D71DB4D3B78F8F25B97ED +0D3662452EA0C1CBE4ECCEA21F0C1D7F4B40C1F5D3157951BB0323A596AB820A +1CE7EFF6CA3684718E07D926827F8D5E0CE16296C69FAFC29652F6113ABB0854 +71DBFE4CCDB7C75C7C16D5AECF357DF09CE5C88C853F8A051D20E141F6F75F1B +001C3B9B24507D8613353CF48E291522718E28EF23452C2CF30569D86DC33606 +E10AE13A927D5646A41FBEEA5D17FBB0E53A2357BF3AF528138A0975FE720A68 +8532CB7C2854414C27F83E8F9FBF8D9D955CBEDCC4FA2804D3802D59DEE17435 +EAA94BE0BD80D7743CF9949633B955CC063BE390B48D6EC7723312E1673A3DFE +28AC42FF815AB1F1FD4746862238E2389075D53E31220DD51B9C288C3271515E +E20DB732CC385847AB922DFD6C7B603257E6FF029FA3B2E69A5E0FCCF879AECD +19AD8C2AF19BAE9ACA90A32E43FA48F0BE6968C922751D5BCAED9FEA9E39BAB9 +86EB6C5FA7B2FFDC55B47DCBFCB001216D58DFB9E037F0B12E9B63A2F8C1503B +58EECED81C8322BFF51B91AB64679BBBD5DF61D4C9BC59EE4C9DB67B1051ED85 +197F47A2F173F9DC96DE2522A898AF693F075EE6E083D7028C9014830A75EAAE +1E872548B830391BFA124A8D6FD3050348EF341FCB71876D4B10EDE70D23E8F1 +DA2C7B1039CEAE5937EC7E43033FAEF8F78D5616681AB237B07FB581E4FA5AEC +A84FA482D0A497E4FA3D216B23FAB0E769265494CD5CD7DB87F1BE9AE6BE443F +53549A2E8ADAF99905465267A98482FDB5F1997EB7B2E96B40BD54A08C94ADD9 +86B4C0B7437C265B6C22F9D0B475E27F2160FEF374258590F5F329331F74C127 +4DA397826EE49BBA76A56DDF48037C6137572DFCC9E13FE184A89A362702CE1F +625C76E7DDB5B940FA674586C937E571B15969203BF8210B230DDC962170220D +7186B7144ED8EAD400A1F9A4296DCD29584FBE0BDFF3FD2D28168781BFDBB28C +175EC3E34EDCBA460AAB9E94A13AFBFD3C80BB7D7F08F167910E8D706E28E570 +DB6EA61400199F1B0298B73C3BE631AE3F0DC6CF69FFB1D189B356231689705D +1915AA32F606F3766AED244AD1C9718EE289C5245243591FC3CA5B395F283940 +8074A4C335ADCD8D60F638EB86DA4F506179F34A26FC571B5C8AE3B546FA2F6B +055E4CDAA5AAD963F49954D12751FAFBC9A8C3CF7E387415A6809728D5415342 +F126D6B0FCA8659ED49A1371A46A6C5BC0B4327563CAAF1E5F2668CD0D7405BF +7B7204BEDBE06C9C958994C942070D15139F096F6F3AC2F8EA97E010F277D73E +0B32EE2D56EB943F762952D356A3D0B8B6CBAF17255C0E26E533266B5FA23826 +5CC9E4B3FA5BFA90E5A0581424C91242835946E3DCCD8C2A7137FAE5BAC2BE82 +31959B64551EDE5422C3E16162FDCC4B756A4E5B6C490E8ACDC475AE09753291 +08265B154791A9C429D4FD755ECD550F62AED972A77B9675D770C6B3E1F48040 +E470DBA312F8D9C9E3877417829CD54B9F4DA01518AFCC17DDF608F0AE25E7DB +994FC812391D8571E6A4983877B0DE11BBFA0244A56CEDAEFD8D4DA8D6CE1152 +017BADED4670BB2B94CA6709EFF9871EFD0AC336EC7131CEE6AB29318B5A558B +5B2C6B2558839E28E0768FD803AA65F71A757284E29C0B6F0F89B63DBEB0509D +FCA6AB1FAD4F59D26E0D8D2A9AC0B8862C81470CD4C598FDFE6AACA9391A0135 +6944A48129EB6E4F7632FB2F22B03BFA7CA2EE57B8D2CD7F5741CBAA73A0D9E6 +CF4E9AD26AF74A6A50B172F0137482B64E46B31983C35A3CF0CFE2487F5E8397 +17A9F120151924D1D9EFE4A63AB6493A9F9AF9E47F42AA4155DEF5BFC91436D1 +6723545DE0D295D2ED8FC435C08FE3E5C61274E3DA14A42883ECD65266B74025 +74EC5C0A22B682F87AF7D11F5661ED5F03C482BE33C609572730CAF063D37300 +50BDFAFAEF4D25B76E0282499819B36EB896A3909FD14FACC069D2FDFD4BD553 +6AA80DD8D9969C4E28BE4E68525F53B79E0932FFFCB88FA9F5A2259AE243628C +1F934603C2A7B6A5F6EEC0A3C69BE99525367A231A6B39C08CFF43297053A9BB +E48C0F36C5F59A679C5EDDF11F24E1ED817F72D604EF0918D0336D689E157046 +0A171F9FCA3B448DF2CF7E08A34FE370E4C6795F884A08CEDFDAA6402AE897CE +FD5FCCF4B6A20767C478CB0D96D49690C263083B7B764197744FFB5366572B86 +D6E298F67F6B34B09E9DC804FA8D32D6DA5E2EFBAEDF3FD4B5E8E1964328DA33 +21CAE312D9E1DD20C0C7F271DA0023E0 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark{restore}if +%%EndFont +%%BeginFont: CMSY10 +%!PS-AdobeFont-1.1: CMSY10 1.0 +%%CreationDate: 1991 Aug 15 07:20:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /minus put +dup 33 /arrowright put +readonly def +/FontBBox{-29 -960 1116 775}readonly def +/UniqueID 5000820 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A +27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF +5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09 +0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730 +DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A +71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09 +4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C +515DB70A8D4F6146FE068DC1E5DE8BC57036431151EC603C8BCFE359BBD953AD +5F3D9983B036D9202C8FCC4FA88AF960E1E49914EC809263862931DB14B61EEE +6D37A389B488D0B64CFB7DA527AAED80494F79A073D895AA287BB47BD5246090 +A76CE91680C1F37E66C3EC962B74658013610C734E3025C5D2D7009EC16A650C +E8F49B2316D5D3E736A77294AB2130FA35105F117CD86FC2B774CCC02B673605 +51E29E7455202E5E99424468257E03D6CDEB79958C5BFB749CEB86FB100C4594 +CDEEE0C90BAD06D2821BF9E33B1B9684487BD0E875D8AF6957283799E9FA6654 +B3E3335255313EDCAE8617CCCC243E2CF1D679C0DFC93DE5E4CAEB7A95BF7E9B +BECF64B0C1327FFFE2A2AFD5D8FE8AC7C3BACB78BF9A42A61DC05544903373F7 +A39145743F80746ED965FB652C6102CA6EA518EDD69C4C9E691337AA4D046057 +94661C62EB63B0D70AE62F7BFF92021DAA44B1C34E69F98EBE838B9CC1D110F2 +53 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMTT8 +%!PS-AdobeFont-1.1: CMTT8 1.0 +%%CreationDate: 1991 Aug 20 16:46:05 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMTT8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +end readonly def +/FontName /CMTT8 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 50 /two put +dup 97 /a put +dup 99 /c put +dup 102 /f put +dup 105 /i put +dup 110 /n put +dup 111 /o put +dup 114 /r put +dup 117 /u put +readonly def +/FontBBox{-5 -232 545 699}readonly def +/UniqueID 5000830 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5F0187316F83DDE3E2D27FCDF6C5CE4F95B6EE +3317BD91B7921F3039DD35FEA387D5CFB6C6E9DC84C178F3432994FC7FAC6E5A +ED41A1E2EBA350178FBFEB45944511731BA827167DDAC238FC69A5486B995477 +C469E2E27493B0B711DF8E267D3D5613B450011921685147114106C9472580BD +F531022F6DF5432B2A4EBC51A8032C7F9689B6FA942D849B29709631613DA68D +4DF7B6F059A19304F40A3C3580CE3B51D79D42984194D4F178801720892FB6E7 +61FF43C63F9256B5E9F4227B1378222BAAD4D52C77462DF01892220E11129C16 +6C9E45BB9F01ED7C1AD5D8B4D72BE0E12969AFEA90FEF170603CDB91CB243173 +B19A56084D10293B80A35275F41BF78A054DDC98F4A1FFF592463D944960FB31 +6BE5F03960F9B1F213CBCC7FD448657FE388F10104D42B0715FC9571CC60CF23 +C72560CBB8835A0CA208FE06676B3B48B093CB7FB2C0C53AF17EC5B372A9771B +BFD52FFB7062B4FE0106A01A2A1A1DD4EF5C8C7623EC9324A2CB3B402FCC1FCE +52BFC8662F8A39D5F1B41C97E7CE34E16AC28A1E94007AEA7D4C519399F1B7A9 +48FA7DDB671067244F09C29F95DD60668223F45BBDA8B1C452E930A9F3F341C5 +351D59EA87462FFB30277D3B24E2104D4AAB873BB2B16DA5B23BEE25BE2C8128 +C4CF2F4F438A4E520CD932BAC455BF8775C27AEA6C73EED3EB2F8DB5E356AE27 +41B35C8AEFE73C4CD6A591AAE4F45762EBD6D3636C03F08C552BBFD0A13D11D5 +491F8369B4BAB8ED9D6F1DE7DB7AFD383986C4338D3AA71C9AF2B8A0955CFD86 +0345F16D9798B25156DDF826A7CB6A0CC4CB43078BEBD3E499DA95562A08EED9 +7CA27B7A0CE3FA7EBDAA87A60255602BF21A7C3F55EF79244804A6D158BC0732 +91CE2CB28628565D63BD2396FF34EA71228F1D14B43F59F618A32FEC9BCC00C4 +C5A054AEA4B880E053147542859671CDF19B6ECC71EB1A3B5574466E8E84D640 +FB76F60E89A46091B53039D133078A28403F305E69699EF610C80DCBB9D6B17A +FBE7DB783DC11FE122B92DD5059935EA40D1B23A4340C6D1D1E1D4C9EA7B3212 +2FACBD19E40B2E4D445B81F06423ED1A7E0F2B368D9DA69AE1DBB07F1EF28117 +FC3C202007BA869D5D331FB309115A152FFD4E191AF736AB69271D823BCA67C5 +54C044B1DE43535CA4AE4AF44DBF0B76E61C5ADC4735E582770A030208800110 +5E1FBCF1EF450D87194A2BC47221B52D0C61B8B03627552935BDCEA3CD6BA6D6 +E637BCC123708D1CA66E30D7FCE448152CD37AFE4AED9D346C51C02D44434808 +5774181ED0510DBEBF93F67A9A8D9F78E20105CC2897BD424297C1B74B447471 +7844A58B638F6FD5DA6C6A075C385896892DA3415E476946D8257E79F601D186 +6C8A7BA8C98B14D56B9534AF6A7095EC3694569D1F3507162A1B57F802D4F55A +8842F9BF7A3B89C5034957432267C7A1418EB4CC95C6E1805704E000F21B4D49 +EF2C76FA93E0CE5DDE8D31CC7E8FD2F2D2FEDCC160F94AC3B9FE67EA9A260CF0 +4F668F5D1AAEA52ED492DD7F2B7826F0035767FB04B4AA563A5208EFA988369D +4C9F1330CBC4429E71BD50B5AF013429AE9BB40BFBEEDBC347BD4E2791632E6D +76D0AE1F1202F86A8B4F7895018381A09D63B211168AA77EA4016F98929C41F6 +57829E729A1439A45D0E912D0DF163EFC096D33F95DD809229FE1EF29068E0D2 +2A350A918AA06C46C565A13077DE550E42355BC93351309570A3646569A2FFA1 +DA320C09F17DB0ACE8B8F4DECD8469E0F89E5645C0E9652F2EBC5BD33CAAE047 +14D15562B0B45D9065985FD5A736BC1B5EEC41DEED0E4B24D6F24BEF1E9B5B30 +50907F2B1DBF2B62AC6C97A14F6D9AF17D567F2893CC241270468E40708D5ABA +50DF52C1D45CD1E0D7D31B11523FC275E7D67DD4871A670C4834167E3EE23A9E +AFA1617DB88B3AFEE200B943C808A20B1F527A676037FB4B90634739A94C0808 +1D64BDD88C8DD7DB6D9FCB35B769EC7AB66ECCCE81CA5B455C3048EFD278D2A7 +65B82A369CA5D3D7FF80878B329E2E5F0EF64E6DB6020E08FB257943615F795E +F46C3077E1B36832B677362C13D78392BA5CC57442DD8F9CB64C3FAEA4922891 +193F2F2DA90E64363083B325638C34B57FAD1ADE6694198E1BA3DEFE2ED01E64 +E45DB437B55E20A427A8E4E4675D7FFD76E6A29A5B1BFB0471669BBBEAA8E73F +87E0405B161618B9CFC6DC4308836685CC86551EAFEC7921BB187BE490E3934E +880576C16DCA18926C606D10E3FEDEA8529FB7CDE93043B3BA5B79AE91B5EDF4 +D87F090D9452E889AF3CD1468BA04AFF6D142C67BF0EBB0CF225594CAD3835EE +5B89338F8BF0F53B8F549507C229C6064D5EC0D4CD334F5D2BF5464754D78B3F +33A3B973D894C1C926139C85028F474377A2FD0E600545D0C78C671DB78D9A55 +CA0B75C8C68FE66ED8D7670567188AB80CEB95B237C1C5D337FBFA6C18307FFD +3264684F794530DAAF1FFA89A6F8BF2225156F6C2006D08B6068F316D2C41D51 +74BFE0833A85480AC27D4D647B8EC31CCB38172FBEBAFA9D33D095A31C4387FD +769FF5F731ABB0E22BF5390F14EFB0FA31275C872EEB1FAF0084C6B5A8302710 +B7590CE53C459EBB84819DE9FE888F435E8496DF8D20D30895625304E45B33DD +7222AFEB85E4A31E7807E5FE17591EA9FAE85552021BDCC13DB727FA6956A78F +3663FE4B49B9DFD1CD18850C4A1F470914201B6F4695B7A441AD9E680CA78E98 +39434E88D96D36159E258ED720289B7B3B7FB0F357D66C7EF7A5FBA3968F1241 +C04054845D0379E11194B6CCD00E3A2D69BD637CBD8F1EB25371B32761 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMTT10 +%!PS-AdobeFont-1.1: CMTT10 1.00B +%%CreationDate: 1992 Apr 26 10:42:42 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00B) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMTT10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +end readonly def +/FontName /CMTT10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 13 /quotesingle put +dup 18 /grave put +dup 33 /exclam put +dup 34 /quotedbl put +dup 35 /numbersign put +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 44 /comma put +dup 45 /hyphen put +dup 46 /period put +dup 47 /slash put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 55 /seven put +dup 56 /eight put +dup 57 /nine put +dup 58 /colon put +dup 59 /semicolon put +dup 60 /less put +dup 61 /equal put +dup 62 /greater put +dup 64 /at put +dup 65 /A put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 71 /G put +dup 72 /H put +dup 73 /I put +dup 76 /L put +dup 77 /M put +dup 78 /N put +dup 79 /O put +dup 80 /P put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 88 /X put +dup 89 /Y put +dup 90 /Z put +dup 91 /bracketleft put +dup 92 /backslash put +dup 93 /bracketright put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 113 /q put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +dup 122 /z put +dup 123 /braceleft put +dup 124 /bar put +dup 125 /braceright put +dup 126 /asciitilde put +readonly def +/FontBBox{-4 -235 731 800}readonly def +/UniqueID 5000832 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19 +38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF +D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204 +EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727 +A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593 +F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714 +4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA +6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E +A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B +E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F +1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438 +452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF +8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369 +5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA +DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9 +BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19 +741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79 +E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712 +E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7 +D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE +C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DC +FF798F2ABFC4F3539392985C4CB324B00072295FC160818BB0355FDC4F12E39B +984826450553E3D271F03D8DC2D12A92A4D32034FD16DA13B876D88C8C097384 +46D8D7E41CA1A8979F9B07EC3337E70CBBE3A377235B04C79BBBDB66CE1C1A41 +89DAB7CE91F2FC0CAF6DDAD09992D56F72299068192610EE3DE5DB7CF6366B4C +D74F414484DCCDBA449BFAADA39D0F27574E604E31CB513B18E3821A33076151 +C2BCB6E957C77A0AECA48C587ABB5E8C7624D56B32F80BBCFDC874AAD6EA5119 +C9B06886F08CC7DE5400E0F52B07483FD4BAF26C1556CA27B259F845681D61D0 +2D28B185C9F052844D9A5F91CF19210B9DDF9783C39758F2DEB5872E01B20C5E +3CC7E7889904499A2B12DC672A95733A19406FF5CE02C7CDD5120EEF1CB46CA7 +FB2DA35D63821C89B2E992A8BC3EBA57C1A71D2F9FC755C4798E56CE6044AA19 +58EC67001977AF644EC087B16D6F32AEDEAB0E6FBA5853EF9B6FB95CE1058631 +5F29C0106A137C9F33E9A8BFA1940219DD970634EADD22888B0664D8FA7FA465 +5B60BC03D8176DB57E04C99BF7F56AE8698261F95A619834A5E63695539AEA65 +4872E1860B8655218BE836BB9C9DC09E89EA1F66EADC375CCF657CD5C3C5D5DD +318024702BDB0D66BCE72BD68A8030CD61076276051CD1D487917247805FBE1E +06653E03528359D7FDD6A52A3884C5635EAF281CED64E2B1343B30FB5C71938C +C0220B2A5FEA69E75C3923B20AA27C8E1552873B33BA57144448752055A60957 +D344AB1B7D31959803588DE840A09345A08FB3D3E71889E245CB802711B9E4D5 +165F61246A9DBE238A56D0EB3E08E0487008559E346921EA3A8BE3B681B60C3D +C13D07B8B503C633D56CB822CE174F473F67F1D473C3286908D095406E89FF25 +FEB234CCD6D6EF98F38F735C78A5D1D205776B6BDB3831791B8C44D42D44409B +6F398DB7B747DB4E37E449D89FAFF8C6C23EF3171B9569BD1BFA24CA56C237D2 +9CC179619C6AD2CBA782D0086B42B6A3751A3CD09029814CEE12B2AE0DE218F2 +5A81C44DB97CD8A23F1415F381236D5876A3484C46BA3633A9D58F50368822B1 +66C2A49F0005DA228E2D3546BB58BE9A12C1C5D7D5C2AAAC95C7CB0A066F514A +953A8295B4B68A77CEE4D45DFA573B5AABCBCEBEB4A0B004D92C0CEC6980F133 +CCE52BE79CA250D48E21BAF6DA007488B1B87A2EB12E0026E2E0483FA404A21A +48D2889B24E7AC5B86FCEFF450CFF49B3E013BC284506887FEC3D59CA3A4F3AD +6AF1E9D7158431219EBFADBA9AFD86AE1ED9860E53D980CF447AC91C981F518F +3868B58D4E466635AFA5BE6EEEFC661E4C07223CBA71ADCF9BB7850AB4467CB8 +BC82562B785E00882BB0079723125ABB0537C697027EF91B5ABA41EFD3F72D43 +DB200982EC24EEA73461FE894F055939437AE43AA2DAA2EE1C6C381442B401FE +504737EDDE0CA7DBE92EE4CDAD6F6D4CF59007CCE2C1DA2170D329E7440652E2 +1E5A9E112E5347241C060E0FA3C5F998EECF17C59B21FA98D00BA78C0679931C +8F52EBC84AC590381A21136078D839FDD4E88947B9A87625208B3EC9C0DE3B8C +4556A2E1E214265B976E816B9610816E2DECFD740097A325E2B06C99F8E1B45E +5BDEC5499EF4662938F41E80153AE66DE60DA2A9CE04A984D5C9E852E27A6BF9 +C69356B0AB4ED26B133BAF6436C428346D1042D8316BE3D86C4231F6EBFC35B2 +535337EBA10767D015FDF7074FCE0CB853CE67D3E64EFFC4375DA313F21E86D5 +42508ABA694C5AFD52BBB380133B4B091716C0404117D9DA3ACAF4FE61BE9D4F +DE39FCE9238166ABF16807BAE3B003C4AB1ECFCF1F745F7D60895EA09FDB0212 +6FF8B79D3FFBCC10C6F282CC4A6FEACB7903942A2C9B5529D75B44406F0363D4 +FAB48440FD648A9A1F9F72D3A02B9F0B58D764A0C6A506A32D61A7183BB339A6 +072A438917F87CD6FE851FB8416E269DCFEAB13728DEFAA9F8DDCBC7BCD46E88 +014D619B3BA1FC13DDD44839A09D424937B11FAF40A1FADFB3C31A2826199A45 +BE682AE259E61899BD525B78EDBBE4FD55DD58E39B93BE523D26BC2FA2B0495F +70FEF009C48C5F4D3F9E9CD0A53AD292FB0E8AF31E7B55A343090D99FE9BCF51 +BFBCA143C0325E8020838D0CF3282FBD39F63873F52D43A9BD8619934F62F28B +AAB035A481DFFE057ED35F008CCF4A91431FD92802326E9C5253A5EAA50DD4BD +50E27CD59D76F84FA3320B299D813471D01F45683E1FAC1FCE0286EAB58FE317 +770EB39BB3F16A0A50E71C56BD38F10E881ED5554824BF34E7399F47103F6536 +4525EB33B900CA997ADD045C21F03349E7C20AD2CB202EC6B4008C27DE941713 +ED42130D4075CAE6C26BFA60E10977CA832EA940F347842E7B316106E04ADD65 +06AA7413B3986F0D057DEF501D8C17C9382EC5B97E4C8A1D2DEB9CA302F99777 +AFFDB678F07A9D65C34CDED6E8EC06E54B08C50B72661F902C2781654A73F1E7 +78FF0C3AED15B3583221756EE9891243D72148CB02E500A6309A959747BF0C4A +84E84F0AB3D84A32C7E68ED851CA5BB60D1A45D4799636FE1C107F07A6D50654 +A7FF2A4412EFEDE4C187D04279280B74E226B8D16C473551C0BF95FCA6693EFF +E6E07572C955FA39B3D05CC0D077560C6037A35F648BBB853BE6A4FB41DFB84F +36A8202067EF3B54938E5047B30829FCE858391BB012A429897FB974004319FD +1C4A768113706BD3A624CA89D324260E47122DFE2C613B45A616639D3E97DC50 +BC72708C53070880BFA9B6F56B2B4A70D707018B95C4E38E29BACCA0148B78E3 +3391C4D26E3F9271246859E5966C32F5E70FB862D5442425D17ACB13C85BC2F3 +AF96F292F062D36F9143AAE1B41F9C7FA840A045F36763515E4EBF7A6BC37CAC +37852FD1E770624717BA5232BEF18093136C28C542A424F56353FC47E620D854 +D41F78206DDEC12F2D1BD3C6DBA4F5386EC687472AF2B009EF12C4A480ECDE70 +E773C440723B0E21E8B8BEADC69B44D178AAE5369199166C9E8D53B48CB2F247 +EC78C1E449E0A7B63267477C39798F204A1D16E5F003CC78A01C1C1EF59BF2F2 +E10D8701E1AF0079869842CDE4640051971E76A9501A453FEEC66B355DB0BA94 +26183BC7BF8F9431BAB26CE3B951CF1951D1EDF491C4C30C9545D27DE14114AE +461DC3D23CDD10925D258C0DCFBC9484007A98FFA490C6195A605A88C871A4F3 +AEEAB7250F08BEFD82E8EB1284D51979B56D2E162C7A66B299413163ECA28C25 +A3523A35A149F1123052C718D0C068435A3CEC656E8983A9E61858507AD878B5 +B4CC4A440A8BEBCCE425DFFBBF10026A3A838243665F39DF6DA1708437762B13 +AF7C2E5C5DB7F6E6A9C9C6D2ABD404F5C13803A8C59083817E205D5745DDA1CA +B9F1B0676B9DAE40E02B8D6CC44E8E2A8203AEF7A8E2CE56B94780B2290B1CDB +4EFD27624A0A5D044A3C0FE2D107B252AC58BC4FB9C787EFD4E06247259857B2 +1FCD0C06A27A6AE14D794A4DF939AF1C43B925221F4297A90DF86DE6D3623398 +C2A96C1C3FA70A5305F03B9AFDA300B5D5880F212EFC93BFD2D436E382AC6CBB +2B0DEC93DE991F9E094D0FA027ED2533165F71F1E163B101DB27BD14CD1426CE +AA04158CFD6191F01A48CA86191BDA2944FE9E605F491A7039884D0FDD8E3F15 +77216FB6FE7DB55DF62A7C5A54845EA0A38AC1AEF09F2BF3DA526A3B8DFDC1A9 +C4946F798C07F52CC7393A524F2925FDB2E0CA2D6BCBB504ED8E597135D03589 +3F4607197F31F079962FB1F9747D469306449695B0EAB65D80A9330CC26D3930 +0D8F072610AC5858C0A12C57041DF339407C956A1A24E3F98F5C4CAEDFE9BE0E +780C36F33E98DFEF02B13B27D01910FF3F6F7CE03D9E13BBDFBF4704AC80068E +139D466823EFCF2C50F7E64117EC927625E390E2EC8B0B3BF5A2B0EB2CBF724C +7E67937CE468197B6D1AB4ABBEC9280A643534D0686254141829E04F1458E87D +00EC63D7F8CCB1D8F9C7CEBC9FD46E24A2CED97E7D82B5600FF3C84163538306 +67255A917577F4C41B69D3F587A29DC20A70F55DD632BCF9A3BFE6F9A29D4581 +6A07A7DD480C301CBC62B9DBA69B2740A574F1821D8090BB88D705AD4DF30348 +0E9707601C361C1E321C62CD405ED374B72FD8F57345096E953ADD3CA965A953 +353165A3D3802B4D790F03A56234B8D665142D3FDD2DB0C25BC8F8A4389D6BAA +879485C49DE4117138D78B5E444ACF6BB784F65252A703A3EF4716FC2FAE8285 +08C7163F6424B3A1AEA933E62A6DF45A4363D600A09043062B254499626CBC0E +1A31EE62A298B56300D78804CFEBDC00427C978034A251EADDC6771997938EA8 +9477A74F2E4C89E562D04B099D3AFDACEF74CBDF81B06550CC97FCD6E072FA69 +AA912538C95DAC00BC2428AC0EDD2F5704EA6A2AFB519578F9BE5C59FF510E3D +EC1096E2D0B13A6808C890E3AFA9FD5E57B9FC0A85ECB2290AF45DD9F7ED75FF +96D4E517FB3ED71A3683D574A32D4B4CC95B74DD9690477D630500BC73FD63E2 +F3D66849110EFE3307B39984DF7B3C7D78DDA7B4E6FC863C72BEBC907D013B7C +47BAB572AC949E65B8F4BF3E6F50B4671C1F9FC0711751EDDB3F1A5CB829F6F3 +E9D77AAEB7F09C0D29C03BA1B01A5B660CAC287212EA7C8AFEF23A04A65ECCBB +72F5F3EA903B39E35F0DFC5C5CFD50972504665371C3F0E0DC66C09727F0A37A +2152F9CC620B6EC6555AEF9FC72C6E7D918F01D0764A98005B5274F2D7201CF9 +FB4385562719E98DFBCD1EF553F03CE10662368998DCA233E4F676B8315BC412 +224D51799ACADC82E53D526235659F46F6B7179A567C7A86EB6046E9C2B80288 +62FD8CF297494BAF9B61D6F5B16CE61134FEF1C62413BBDEBB6C218B2113A79B +E2F7A7027E79C949E60400614C94F3B3E5909F5251D4584E0D51D48BC8784FD9 +8A59562AB81289FD5157F6975BCBA7BC1822224DEA78F2304FE13D9F24940842 +64A8C316554F89756D2F5AF86007CD16AFFA80A7C0CA1B38E724029C96CB9D11 +F14CFF583C45A34BAD78BD78316437DC241EF4C8871BE18F2969252E1ED831DA +FA810AC72DFFA76B0E63933BA836424D0C983FD4DA411A4B8FB42E52F8C51A25 +6407E93E86D42A98D7805998F3BEAC50B593F4C47D32DEC6FA0445667D234695 +144053B9654EDB954D09E4449EC5B89378D567061F8CA3DDC4FBE7DDEA86E281 +4067C6C4CB41C01A1EFAEE1F77AC4D640E3E84031CFC66F03C85932555310A80 +A51B3FD98D38472E3276308ED9937BCF0563C47AC06EEAC168F87B2CF5EB9F00 +284AA9357B1AD5A2532B1BB37F0A234663E282C09B7D5E0CB81ABE085335E699 +AC6C74EE562A5714AE092FBA9587EF58A41070A3228933AA4F9B7DF376CA328D +253412BDFD3BFE78F5C4CB3E4716D48CB6F9352A0D4555D2EA5EE10120D3F758 +DDED704DB532FE392D3CDBE2C5A30B2D5F4971F23EF80BC4E6247D6C570D0484 +B2F448C3EA4E98E61BA0B9ADEDFB0BCF6556D531D5538A7EC52EA0EB7CF977B6 +68ABD219DBCBECFEBBD991D6FCC2561A200374F48FC5163E7F01B283F8FC7455 +AB184E28101569CA2B3C612FBBFD0808294546662E49C181014F7A1A056DBE84 +FDBF9F612D8EEF93F08204FBBD0C2B0B73387429CF688CC4C6002599A9E033F4 +E50CA414A2B1026E678FA0604A9F4DCE65355CC60F4422CFA46BD9ABFA4E531E +082832615BA3169F90A29DE4AC9B3ED1D9724C69279ECEEBB60E7DBDE6F34D58 +D45124B44308516C1E29CE49EF07F722E48C1B80760214F17D6670838EAFCBC2 +9008F164CF00F68F7FEE53676CFDC8D092ED731C51D3F53AEFDDF1E3B60680F4 +C67DBB3569D5C4E5F9C7D3C16B6914DB8F351DD51BCB51AD8D9BD8F08B0CA49B +9C388F896457E2C38058576D0D05E9493E4044007F3E362966B6A43236F701DF +2AC55FB670D1F7A45A051D6A0F91E137668C4F8CAD66DB6D52996FBD3FA72121 +432E8C4CCD3211F2CA5F4824A1EA4CCE4812643DCFAB0E56ECBD66325215C169 +0FFAAC709212525EAE3E09B00A8B423EE36B40029E1444C639FDBAEDFE20F2CF +0B8BEA5D6948FBB1952EAD7FBC93AE25270C08E946E19E4412CCE3D109242FC2 +3A27DF6A52D6FEF189D95E237DAF97FD1C6D65F7B9709A1CF816CC32D2D9D666 +CDF505C3D5E6DBE9BF561314C4E99FF0E6B8CA506CF7498DBDF11DE619A3091C +0AC1ACFA66D02C8B0308D1C8BFE0557609DE5D211F103C1588FB0FA6BBAC53ED +572B39C09ED47B9220920B5F78B5BD8E15562F24BE15B32FB9E1E1106F35A5C5 +63FAE8669AED0332A1091288C423CCF79EBAF8539951BF544AC44AABE9588B0B +34858AFD2D02F17C63D29F1B12F69A13D7FB6FEE968233BABAB1B725EBE23EDF +FD61E1EA898E78A078DB4BDD08BFF312867CC43C09731C0EDDB083B88AD950F7 +0D8C3576ABD7694D3B4A921307D952BC9C79178F040FFCE854220EFFCCAEC53A +F43D4EC43528D7F70433C390181728CCF85F3E139896B21D5348CD0D70F2B036 +FFC4170996EAA36141C6BC02591DB191187C5D568E235ECBE48B3AFBB02762E5 +F607DF2DA2CF25139C93DD31B32C8C863F87F6348D6077635684EA38C87BFA49 +DC6B0B560FF50857BAC275525080F29566F539BD3CD4CA81119EF9BD45DB9025 +FF0A246DE3D00106B965DBA894BEC8FCC434D84D1DC7FC327E5C102BA81DE8F6 +541CBE8E900F77A3155FA28E581A3E369D4D2B91E0E2024D2BD71ABA9D7454CC +A4E248BB40FDF238ED407922E8109FE73667F3CF3C510AE062A3AA8EEA4345B8 +9D93C1D79E1B8A5C97FC0AAA5CA59D7C886971E41822A40AA335DBE9C74598EB +03FD272EDB48842E875FF97CB72AC6016E7F0D67138E8164594CAE3C2D3F88CB +B548D20284F9E207E736C25F235862EB792A163AFF128F0FBA57D6B859818B62 +A927DFAD2765B5FD59CE543D599DA2F6C3152067E4BFCAFA3747916EFB675D0E +156621E28EA4D40C19F9933D52B9397633C4015216319BA1EAA687DD832BA8CE +4107B02DACADB24317C716BDA42267EBC54AE3C22E7719CA58CEC3367D4A49A6 +BFBDDC722B3C742A1AE307ACA50B5D44A8CF35B5C9FF0C68477A302EE8F2D8F9 +274DDC36A9785893334944AD597EEFFEF65566DCCB953CEA0411871C4BEEDB01 +BB93AB8349FEC29E9BCF4BF92D6F76B98A90267A7C8CD9E7472D23FDF53671E8 +EF5CE369439FEEFC13A371E4DA9392EA17965830AD9CF605CA31FDDEDAFD55FF +F0F1D4407CCEE7D3C0844475212FD1C03E4D1AC92E9A0F8AB0FA01964193BEDE +430DFDDD2D40CB640035985F08758F79064A85CA17AA8A4843E2C5F78B6917FE +7E42FFD0B696D943E58CB97428D3882F55507DAD83CCCE8D91D2AAFDA72C8321 +AE505E202326CED8E4EC1E5168E53BD8B21CB2036A415668B79A41EB588A6306 +7DB4E4F76B38C064B1E1D56E046A168B7BA8DDC264ACC0EF78A80D1358AABB5E +1849F7EAECA6598322A0016893BC18002B30802D592CC2D8CB9815C05680D113 +78575BD2728393F10D94EDAF582BCDFA6880F2116848542E99CC4F10B45CDDAC +3DE3040E620923B9ABD8297184212A5EC52733E8A29306545DDCB305778BBA11 +DA7F4876F7F6CFBB93A37EF4D2B7D51B0AD172869D298F0BC0E05390933916A9 +AE3999708EF55F1F4FE6D0BA0BEFF420DFD53EF03400546F9C5DE5DD7BA4AD16 +07B0158652DD4902D4EC2F6C8EB076EDCC822ACCF9031D32DA0B90C3F3843AD6 +2F7BD80E63D8B6FE4261BE9BCDFCEF304622CC063A4BAE632A602F3B02414340 +935AADA48AE6E53F7FD942D827C05ADAA19A62798D998F0917CF2919F2012795 +7880AABEC380E2A42F262A5A64DA69EEDC6627F6F4F97F1BF54417246C68C739 +E828AB0CD369F7DA60566C8C3901DDC52D7AE86719000578880EB0003ED98CD8 +9C8382BEE89594589329E0944910EB8D0D75A2D4E00F5B49497344B6FF92A56E +C4D6CC04253DC173B6D91C5FBD78E70294C21B0569FF071682C128E4E38489D4 +94D00B2C94245F4DA8CF45507E8CE6F5C42CBA97946D6D8E44C13E26B4F09C43 +3F423ECBACE222BC609A8317153A1E05301867447FFC31A282F66F37CA8C5F35 +3D0C8796C70F3CB13EF282AB846757D47C3AA2D91C1723F30A02AA2BB97B0FF0 +2BB009E73EEAD0165EFF3CFC1ECDBD7CBBF09F3141F2B3AF8680D3B8FE9BF6CE +FFAC591F5BB65D9A839D1E7A261B1DF630432A2333DB5F398B44C180EB3B4161 +82B9052DBEE8F8C92A77802D3F6A5EDD46D417E382C0AD59B8DC0D762A57A474 +942967E9A2A53EFE9136BAE6C42DD43E31DE4E15836796411A5F4EF0D8A09093 +5C2384B5B5F7C09DE8D1C920450010DC8AD8ACAE0C0951D70D47764CF5CD29DE +1F143E2F11492F875A0D73BA9B81C9D8BDC6875BEB18ED8C57E58E6C60A093F2 +F332FE1F7209E5A3D6EADC721B59695B3B4441C174BF2CFD38D676288609922A +9B0F261E81FC56ECBC760994DE4294BEDF70A6ED7105F3DFB9750C95623996E3 +9E885E038AC2733106DBB4CD0B1ED6B0258BE1E78BB7E79C2C119854D1016ED8 +451E818B90FED298A649DEDD59AD4A98A0F7386EB2B4936E7EDE08198CB8A72F +80EB830EE251C72E37D555C7B5C3BCF33341AA0624D63DD83CB42A0339B2191C +2D6457E3C1F65C9D7BF1DCA09BDCE2C758129C2AEDC40F8E81A34A24AD7CFD43 +1D7221869E880079D7CC3B5CD625D6F435BF7E919A15293C71D1E39F224AD16B +79BE3C3FECD3B01D5D510DB3C6E902037D02C11368B68EDBA28C816BF43A921A +27A666AB440919843502CF9747FD43D2320BFCA4598AFF3EDBB9B201AE82DB2C +6C2495F3A22EBD43212B0C5429BEEB5EA1DF657A9D7DEF6284E580E315BD6D67 +0956D7E66D09356AEF4FCD34BDA4D235F0C1D46F132F4AFC7A566098683D86B2 +57C7C6FEB7A12D180DAE69FBAF134336B14BFC98FB9B65B0754F5974C94A0351 +278CEFD95EBAAF4193D92542F79BF3302B2E59C1A33E10D3C9DF65086F49A7A3 +4933070567331171ED3DCD7119DAC1F730F298EFAAF76ABD9F9DFBF2CB18685C +2271C164A2EF22978D1D49939E9D8DEBDB9B047E0E78ED90EC42218A83D3D7C7 +10D063A15B231E7740F2C8A5E9780021FCBADE29191C8E548A15D9391082FF78 +98C8AC21AB3891ECBBDA07083209F560F2DA6A244FEE5CD964C737F629401DAA +D522710D440CFA36EDE5AA56B74E9D082A859BBC6DED610C340FFE07D8AAF4F7 +7EEC353047F380C758E4809071CDAED46E7CEECF994C5C39D811245D4C8B84FF +8B9C18A9DE146C9CC4315612E92B01E65AA000EB073A4F59EEF1BDC8CB71FD52 +6DD0D40EA1BA6B9A390C9B7641EDE2BB96FA755FAA65D3ACF87DFCF8C860D4BA +1B903C82D020912721737402F1D8B4519525D5EC7DFF7A23BB282E520F611C24 +21465A4DC490644D6D63BA7FE1F4FB3E098D41C1729EFA240FA209865A3B53B8 +DCE2BC6A22AC31540C700208D2AB97D1A8E2E8E2C1569D097A442C3C7AAAD74F +25C08341B01CAECDBE3F8330E1FDD8A71A3F9B26967053E02F7C4198D0502B6A +84CA6D8D7B89BF7C610815FCA5C271E6E9A90B227B1D271A092C2BD0B0BDA08C +9BBF0DFAECBC4A47502AF1A0C830A7FB77FED8090BA787CD28E145065F86B9A6 +C6A7DC0F59E621B9269CC4DAD3B61ECDE5EBBB9090BF5306E0B91BBEB8105F63 +B74DA518055ABCB2233E10336B9AED56DE269E85E3FC23F743BAD9D0A40597BE +5CFF40FA6AB0529EE8A348A14EB28033967919B9E5F0A17CA0567A4D1F53E0D1 +76F26645F90230CCF3E4F68528A3C241CE2107F3CB47720391250EBACBA03B16 +17EDEC329ADAFAF8F1AA47EC07CEC146089CE498B09A5C49AD9694B95F9F6BF1 +159196F9B19AF24CC3E8931571318141E1AE44596F96F1EDFC156028B1C27409 +B5B55F5EA7192C3557BF7BE77B165D69D4A937A2AA93C257E61027D31965C5BB +CB494567977B1D288E9B453D184CA7CA650B5292F2031F3ABB17C4B9DCF09C1C +414EF12F2223E499B0A42DBE67E8FB1A2055C467C6C3B936C52CBBFE81CA553A +287F548D35F4DE0382743478864070B367CC201E2BE18029C4D019D6DB8B5A4A +2B72A2D0E1FB84C0E31F6229F8BCD299E4F08D42E6DEDBE4165C5D538677F431 +959553F7A8851002750A473384D8508F4B9ABB4D350135090146C5E24A97B1E5 +722F3B6BAF6F52770FDE3FA28D5FB633775F5BC9C574BB9AB68F7AAB60A681E7 +858D73F0B4AE646CF33E1E2BF48F8F1B98801DC87F0CF809D88CFBA33E3C3D80 +914528E1EAC2A660E8BF84497F6E70E0496586BD2F0D3ECE1C58391BA34FC5DE +A46E9619C5AED3440E4B12BCE8116A34265016339C08F13A41CF6EF778757E08 +6E7E5E2FA1FF8F612808046BE259717876622A17B62671FAB1F2BCFCA3FB2220 +E6EB48D0B33717B1C956848DF1EEBF6C8E81A92EBE273BA7D1C83ADCAE8EA870 +044550017B99F1895FF5E38120A1DBE1EE30614767179CDD7DB5B8288ACC061F +EEDDF719A2CB69B3C51C8DA039BB6641D210E6750B28DD38FA5F1373E4C480EB +477EB8E2F13E13B2ED4099EC74062FD01F191361107AC8D75513F950C173CEA4 +D4E345F307C7BE455C0B40EBAED65F80759B971A06D11C3DC6F7FC0935BB31CC +48A82DD4CC58C6677A899D16D1389D44E69C7E4CE7E55A6556F96900095CCB20 +DE364E8294C6695F74E46FDCEF6F136113B635B12928010BBBB978D74977E29D +A1DC32E7DA97B88DB615556B2034C2FF2D2EFBDFAEE7217A56832F553836846A +88B4EBEA359277A54F72B04F31D02A5FA761E26D5433720104BD028D31940633 +4165BF164E6CF75EE607079C388C9E5DC1BE8837317789B01D33AE622D362452 +D8430996ABD0EC5AF57CE5270F60B02D2823C435B8FC9A7B14A6D48A9911E7D0 +3EC257EB6A3FB906DC0AEEDE02AD81ACABE2B97A0B88CC550DBC9FF5875ED797 +4F3D45466F61ABE62F42BED3AFEF481F630CD2AC5AE9451A9C5254A73FB55007 +4BD3A3AE88DC12D39200151BD8B63A6DE8B30631F90BCB20E56636F83A6EAAAB +4314AE0773ADCB67F03C56507A08F4897493EDA5295D243AFC52BF1DF3C5AA93 +C6B789295583CE217CD2A8ECF62ACC15A18740162D8F1563FF9CBF9FAD6DDE0F +F6D3DE6FB3579E0358C508E824613B3C24B2C957D061BF5F1C90FC6E48823930 +71B76160DFBD42EE97F80D107CBFC03731827F42070A1EC124185830AF56F39B +BBED40FB5A5DD2C182289B5D8501961B6FA5A329F2A6CED221A2B1C661EEAC39 +0003B277EDC700BBFF6B24F600FB8D1C85594D171D82C3689BDAE2830A61A8DE +94CE80E3E78F0524A42775497EC07EA9BE9D803CA4354C832796EEFDCFAF3407 +F02FC26CD7232F079EB3E7C5FD94C3D3695C2C8830A0963D06F156736175383E +2179509B8AB470CD5A3ED5532DCB04B644ED54BFE27DA654A98FA2E137688C71 +BC4BE02663B8932159E8C8424EF22D50425688E3F6C653EAB251FB0F5165F860 +76C8980D53136728DB39A7CCA1FABC4A8069D5E8B681A34E55D11AE890ADAE7B +19EE3E498B662AB846855C86163483344E250FEEF9E99AB26D901FEF0477BE4A +B36D262626F8C93D1F4496C2BC21854DEE5CA719C80DCF9ED6412D226BD8E925 +BE41172F9F683CF5A241A93E1899017E4E540397952C7FE963BA5F5D2343BCDF +7782DE25920259D6985B8AE3AD89F4BA8A3D8AD6F38A3458B7A79A843CD96C19 +D02000BABF4E1D954A80A56C7FC9CBE1C27A2970D05AC6951356191686E6945B +A2F5B50342B7AC50B106876EC2ACC46886D789539DC7C72BEEE47C75DBD14F48 +105CB9DBAAA697D686ED1AA8B9DA4828E124849FE4910B8116A3264FAF64CB6C +CF09D4DB9D20025BBA0DE0854154D66F35346C4EB300FF229377857B03DA7606 +08A7AF3ECE9D0F24CB4B0AD8F65C1E98D0282F84BD2C2A9610EDB0C1AB19599F +20794A8B2B41797B4F1748EE835A675023E55728CE91F988ACE33F40DFEDFC9D +08AE07E9D81A56005E147D00314BB1A1D0F1A0561263EA17FE387AFA8604AF04 +D5878141316CF9D64CF81CB26FAFC186F6648DF4B9F47648C4E6AAE9C09424B1 +E1501B2C0590F8BC90A59F132A43C8B2942C70D6BBC913AD4813468EE6998A15 +C6EE8157471D9D21E8D1B2CA7A38011F6AB397554A43278E9A2EFA9C2A924168 +1E7E23D0A0393CFC6B36B28B05522AA2080AC997F53FC846BBBB12E0BFBADEFA +24455C9A13B16DDC60A28CC2CB109CE36D1215D0A0D2D116C52F7017A05B39E6 +CB7FDD3FC73327FBCDACAE0BA3F2C47495C01149FC5F7A1C2CD1F17B7B3C4DAF +C8E1399E48EBA403DBE9A6787E86A1A5CCCDEBEAB0469896B8A03847D8C24A99 +7C891AD2722A26D57A79DAF75400DC6C4DEE9308B06B878F335EFB957D085DF9 +A516895E5D3D09C44B2CA23844FBF56A524179220B9662FF65BB9D44AE584ABC +3DA962148531B3CB3FFCF6D87E377EECEE7DCB2E7E2DC267FA50E682AD5D9DC2 +AD895CA74F6AE34D6D09922B35B5AAB16C65D7905F25E9E12F6AA99712608F92 +021217BF43402FA8D55354544882351D4A9F35DA0AE2EEF3288818EEF310D235 +F033D430A2B805310C1B7D9F3713F05BE1DE5BF892A99A98D99D47A8653E4619 +C2FEF4A112EFCD5B4278AF0111D03FD573CF5A9BEE695B87F0DD6BF294D992C0 +F64F0D491BFCF4D1C3137B99674433DC2B3B01F5B9653B9BFFCB581BE7EEE529 +F1B441FC8A30F9DA1C55E5AF7B67284DFC9DC1A3B731D7EFDD3E25FDBD27683C +C459677A2C7D2AA2470D3CB40753A92B20AF2F9435EF07EAB72BE55D36AE73F3 +9DC02E5CBF43347D38FC400C83F9C807DEC1DC72A10D3DC8785B25429CF6BDC0 +AAC84CEFA86B20C9B7AD73EBC540CDB5DC39557B71E35551A84EE918056822C4 +2A20D2D2D7E00FEDF44DF677D767FFE441A8393AFC4E0FBF4E0DDBD545743BB7 +1778A17453BB034E0ACB7DF5E51064366184FC5DA5129ABA7F190FFA215927D5 +F22EB009BE9D01AE4F991F126E51A8AC52DD79B7DA26F200D53AB43BD8579764 +5C1234DD946FCC678A864DE1D001A446DCE2B36FEA81B3C7B72BB25054805F7C +2C105722587A06964A3769E497D1AF6444C252DC7C8C4482973EAA030EAFB889 +4A5E5A48C577819662D28B5502EB0D94841D12F13A029E8C1C986A10B98A791D +E9206FD4591CD754CC78B8B426288B6AD8582DEA976AC2FA0625C79A3FC439FA +83ADB80B303E4AE880E602CBBAC24AF548C9E2F861617226795FBF8AD3BACA99 +DB1D40CEB1359DB50E9F280B5E8923FBB5CAF5613A1E6A081F4B0795D21A1F76 +2239FC979136E8B3CADB8B335F5AFFBB00EFDF0EB34D9A6EECCE575EEA1A5912 +ED43F0067E810099FE2F5138270DA7C0CB483C613CC5AFBACC060DA40CBDFE3E +95BBB1BB4A772E0BCFA8A1F2A8B2E8CCFAD2F5A6B4B33DC8D844012676BA91B1 +C2D54C40C06129B5B9F9E58C61200823358D7AB8FA7F9925A3159D3B5DB8F1CB +7198FE427C7611E0181B829A1E8C6D5B2AFB6CCF3669A91E925ABE12A8A2183B +02948D2316D2912A02FED5FA50DB832064BF1B3C8F657291CC8FED54DFE75935 +F435294854F20BEBD85C83B79EC7FA2EC2FD589517CE3930B0159592F352CE3A +9A208FEC943FFE7CCDA3642FCE44A571AC164953A4619B93B4609B4E7E92A2CF +131A467D31C0B680F821EF8347F719A1E6495A98D1F56E5D7D10215695CA5BFE +9F06DF5F8CB6EDD388FEC79B5EE6518324C5F73677A7ECF07B79B1F673B979BA +A2C699FE3F36E8E98EA6B593223517729BA0D67D5132C51EA2ED30739C9EEF01 +CB5D9EDA62BD475815E4547E7551244DE9572900B3B4F7DE49CDAE66D8B6798F +4F13153C16D4007A8DB7706B31F3942031AD6597AF2E8E90C1F333B398257414 +AB7B2753621B0574F1462304B1A13C0B8BBD01969C73C2071F7244AB4768D0F3 +F956055180E0380983D96368404D6573532A878FC53F4EA07323EA15CC02AE14 +93614E236799018C366A5B2461679BCD2BEB73CC461263F96CE9B1EFACF6BE98 +F33EAFFD3D3B5822EED564396B744D359B63CCAC01BFC292FB7376C2F81B1F54 +7FBA0F427A2B4009F99F413893C925C90974269E97B674EF6ED083C14825F385 +02DAF8818FC19EC3850DEE32C0937382652E1F3EEF438F548D4102B162FB0723 +0353FA1D0C416916531C19E559C75D09D3DDDEC2DC993D1BE7D5B8CDCF7CC122 +C4DEB0E910E1C79D804798203008BB5B5751460602A3FA75EC4573CF5EAEFB45 +5B4A03F56CF656DDAC9897E5A2B97BCC1527C550CB10D878B33B81FB57697E9E +4D187937C5EB07D7BAE76701ED158E3AEAA8A4AAA866796E8E58D1D688096F69 +93D52FFB60B702FC68756BD1BB7A57464DA684DE81B8D49181C48A4B054051AB +AE4F9D2379086CBB0EF49487C811236C7E0CD0FBADDDBBE335B895BC73D61B38 +CA73C5343C76D3AF29B7D275B9F12FD1BF942A9C05C6F7E38BBEF24738A63B4B +127665D8E3FB56A15CC77AE972605BBAEA5311EB8D543BC898A76C6877536F7F +B958B21EB7C132C75E5D1FFDE60FE94BD88E9957DC58A029DCE3DB98B65FED51 +8F11D3BED59DC149D767BADD826FCDB2F2521FDC337C06105840268A7F1D3961 +EFB45EB9D669A91C019C97EB1D637D58AED41B812B32A703F34B62B7803CE353 +5B7D5B0B88A33FF37988AA08FFED939F704E6D1BEE9000300BD9592884A8B05B +E0B4F5B5CB1C421266EB7D9AD588BBAA0A87A9B529FF07DBBB6FB4DFF2395C89 +1966C7638BB4E15199C717A10BFC77C2CB1988F9ACAD0714437A7BBA14349A1C +0E967B92094C1D5FE6454193D645A7C401674DE4D2EBADFCD2FE55857FEEF874 +769198451FD27B29A6EE6153FC6B0D3250FC234E2E30A62EDBE2C1252DE42F16 +2456A5E21D44000F70F4418F277BA5416A45B50E33047CADCD4E89666F61299A +46BC16381A969646257418697643962334DC53394288BDAC7A67BDF3D58364E9 +0F802CDF67147D4CAB717D9A973CE8814951201F5C13639B71E2ABB968747E42 +2154CF71EB4B1EAD6F63C76D52143A629DE74A6FA47B5901CB3D30DBE01B88C4 +18A9A77BD588B452DA6E8A54D8601CF6AE60B753394AAE82C6F635E93CB25CAF +565E5812E6C18AB0E6F828F5CFB11EB44EFDBBBC5F7D227E02EF0AEB8768DC7A +1DB4851C89966D9068D696EE8F1FAC0EF941F72BC96E31E44CFC3D6D52D24D4F +825F47D12DD112561AE8CB0C1AA3B607E6014595860B6AEEDD5561D1E0651639 +85F93654FFF3E67954F732A11199255A87CA782912FFA9C8036DB01B07DB8420 +85C36A44E01C3C814CDE205C26021C3524906D1BF8BCCB180DCCE985793A8072 +13391F99E55EF2076A96F1A67C5E55495646751A251C6E86C4A3B5010C72D9DA +017C2D4791439FB727650268C18B79BAE91B371EC834496AC1B680B1BBFF8703 +69D3D60261A45E99EEA3FF24664AD036D65009CA765BB8B731F209BE559E780F +3E76497C26A71D1120061128E8F77E98CD6612F1E7AC7EA744CDE43482A6D160 +AD3380133ACE6E54C9E60257C98EAB945B2DF3EA61819DF7266B48C0AEB07F01 +E882E4F1175E438FB0C541746CC31A25AF94B4430696DCF39F88B49F3799A59B +755F29B8BC5E3AF5B0A0941F0156F9050C652FA5BC45ED43A8902029427D3469 +22CC9F1D16D10B23DC17C900CF5FB0CB507DC315ACE0C04D8D4B50950FF5C537 +A566F04711C830EA3A5F409450A64FD48DAB6202A65ACDCF1ACCA97B99F8EEE3 +E6933AF2FF9BEE74B04EB0B67548819A8C9082D597322F5F83ABF8076B4548BA +FD41356A9518530CCF531697EEC40B05814E4DF83E2AEB370F8D326A3E6F9D78 +4F84982F8AD605C567B51B5B2BCC97148406AA60D29464F7A643E363AA862246 +CE9E4CA3163104635799164131C9A521EAF6894F981392D11E96B7EBAC130900 +01317007D305CC66D406CD465FAB6B81EE7ECFFD93A24DAB8D906E98A8F1408F +384BC2CEF88FB391FD0C992B7B85EAA6268044F97CA8DB976AC6956DBED18966 +D860A3CEAD960C7DE57F9E7995150E3B7ED9192B7D19378BEA763DEFBE69E754 +9F3B69403EF59603BBAE0937399D9B5E4B3E8BCBFFAB685507B2030CA2CA2BFE +20D6698804443CA828ADE50D9D87E89A0D9EA23F23C7D5AEB1913160EEFA4873 +D010547DA98DE4FEA4D2D4C25BA5065A75E7A420F36EE0FE59DB6209D3078488 +54D2AC212826E781E03EC87A8C9E4889B17F52620BC73541D08FA2EC5D88361D +034F4B5DD890C8AA755B9530412CF47FDBD8FD4CE70951AC84741123AFF0BA71 +9976B54804829EEED8860A8BB6FF2BBBB18967EF42008D1E4DCFFFE6C3438448 +AFD23BB8999365E1A967CBE34DF4B338C89B158F95420CEE5192F106F7D3EC5C +584FA335C398E1F23F2A5DBDEFA32741BE4B30625478A7C136CDDD517F28FF1F +21009D24A7DEB02E972AB810FC8324510BD58BA77D17BE258ADB8979AAECCE0A +7EB4219D2CBE36162FAF45F82A21B74A8AF2CC4C0E3E8F8C2D6C31562EB514B1 +377CDF06CD52412C7ED4A99E273B4E7713304263E8EAFA43FB3E82D6CEAB37F4 +7EBB820B3ED2A07C59363A29580E9596009E6E58E507F4029E006478C32C74C7 +07D9982D766A2955C86D20AF494D5DCC74504D04E568AF186424BD46D258281A +7043555057FFCC5B64BB56584A9A86C946915D2A13F047424A54D80C6296C2B5 +FA355D8C585E610EB8963981C607DDCD14BD531868AABEE1090A7B6CED016F37 +DBD78C0E6223F272180CFAFBBF38BFE38833866BE74D9BCCFABECA85E7A21CEA +84E3CAB8FC281E09D9406A83 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifLatin-Italic +%!PS-AdobeFont-1.0: OmegaSerifLatin-Italic 001.000 +%%CreationDate: 10/03/99 at 15:10 +%%VMusage: 1024 42164 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(v. 1997-02-08\) +% ADL: 771 229 0 +%%EndComments +FontDirectory/OmegaSerifLatin-Italic known{/OmegaSerifLatin-Italic findfont dup/UniqueID known{dup +/UniqueID get 16262007 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifLatin-Italic) readonly def +/FamilyName (OmegaSerifLatin) readonly def +/Weight (Medium) readonly def +/ItalicAngle -11 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(v. 1997-02-08\)) readonly def +/em 1000 def +/ascent 771 def +/descent 229 def +end readonly def +/FontName /OmegaSerifLatin-Italic def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 69 /E put +dup 70 /F put +dup 73 /I put +dup 76 /L put +dup 80 /P put +dup 84 /T put +dup 85 /U put +dup 88 /X put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put +dup 105 /i put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 121 /y put +dup 122 /z put +dup 205 /fi put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262007 def +/FontBBox{-168 -290 1013 813}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360015A30749A338E471804A9341D92A +0B722D817EECC4E8A595D9A0FB01CD573285B74FC826C8AAE622622585F3840A +0350E8F82EA4EB13511BD83F7BDDFED852B104860C69D06CD494E89215B134EB +1C913B0D68C8CB4A37B6ECDE9AB1A4F133A9327587FCC81A7B9A4305211DFA0D +79839FECDE7AB2B893DE806ADC5C93BB154EB921EDE7AA74971C4DE8CF6B1FE7 +C79780B92CEA1BFF9F94DFDC8E19B913AC7BECDC28549B3E99C13A72AB6EA913 +A6CEC9BA5672A61497DC8BBE9EF8A29C7C8D609A07296A88C5F69A565BDA19AC +C3DA487074B6A4F4D2138EE9DECD378360BFE90D9AE1A8DCEA90AF1B174F5D56 +9CF55D491225DD86CBA94A6B64D8D5F15751441EF1DAD731680FE105BA755AC2 +85656DE7B2F683EA235BC4F7230844D5F79C4946AEE86B5F8EA6C4BE07358421 +2BCE44A1669DBD2E9B44DD98892691CD1990C8EE999034601B3F40ECE145C29D +1132F0EE7CA0419685CE4CD0354FBE524043C94AD42CCE850010D75856224A06 +0A5EC4ECAB27D46258CA45BB11C5F25D37A90BC0B8DFDC254D570029BAA8F30B +30AFF50A21F07291FDBF1F3F225B00E7845B687C35180EFE88624A9CFFDA7019 +BEFF80A405AC904BD4074D9198B0F59D72FF8C99F0CF7BD83BB89DFACD63457B +726930A2581C48F4D15A1D87478777734C632BA8E22216B240955A9C0AF084AC +EBB49807F45F8856F0C60BA856FFC199902E085199D9D17BD02454EE531D8658 +3B3B33AF51D819E59C03498BE4E53870E8D22A7ACD73B466468A28E764EEC3A0 +5840D747716B7C4B6033772888DAEFD53C4EE02850A7D904334582ABD0A97DFB +56FF97F0D8CF1E06ECEB2D62FB662DEEA05F0EAC8630BC4F616F3D3DFC7DCFA8 +0A95757E6F5C409DD33E5323E045D831BB05A5B8C87D495CD3A10A7F1EAD3F1F +084111206865619298B1D02A5D564D59B23F5F3FF7C4D6D4D4D8A18B49B70486 +7B26A1237A2A3B90C01ABAD063F61FEB1CBF633184CB857C9E8398B3FD21D1FE +47D715C304B7499F522FF17DD83FB7D0F4E89ED968616298A2D78794512B17A7 +D03602C02161DB54453A524AC92E1BE6C2596DCE91D959533BDC1E39F4B06CE0 +E6541068FB1B2A32036D2223F43DCFC2F4BB0605A2B5F750ED1A437DA553D4E6 +75CA3D586C91C159C4825C927164784B2FDF40D3F0852BEAC346409E13A80A24 +A69DF83573334AE9E5AF04527DD99EEFE939A5C645AEB0114471F5BB568D2693 +3CF043FAA4AE7C0B2426CDABAE27042435C8029AC10789E729D6974433CA1AE9 +C19FFE0303AF1B0861478F8550602D836FF6E3A27AE2628390E5C470EC331D38 +7089C2785F66A8DB65AEFD487C688F795D4BD29BA81DCDA963AB51A8D55DC876 +EC734DB0308DE26C9F5782AA73AF8823D0D07C9AE42C08B7D8B9CF4C5451F5B9 +0F16A28893FEF7643C07FD1365E99FC4013E157564F50CB712436DE2827FF0A9 +F13ACB5B5BAB431D08F752903BAE543EB3D4EA79EA00B6778AFD247BA73536E5 +0CB9CE89BC530CC33D505216E026DEA0B32950F53E3994B47FCC2D511727E2D2 +4975DAC6AD61FB8141DAC3EC3DDF821DA3903387061734B2F88182E236CF4776 +540B7B7BED31437726DE13B752A49EC8F15453B7C46B6A2E9727F0ED72B9F336 +F16060AF6ED35D16E27CEC72FF232C45B232842348E4881AE48E6A052DBC5F09 +8454D19E811EA4F01505C07A41796E1F0236CC28D5EFDE5652E3177256957715 +3141CA4CC4A2091E4BD8B8E741E6659437C25779AFFC8FE34145688DB65C6D98 +010555AFF47C0A839FB7CEF7D2CCC72DB917C429B173B4283FD03C91FBD36BA0 +635BFFAB1A3B7819A402C68DBB0B42D9CC5FBB3D8592C922B8284CE442E11E45 +3AA5F657F3A4609ACA726F8009CEF979DD05737589CF626A952312734275867F +0349847C2CF5C76E834BA36E64A6177E7A3CE4E060307B3CF1301CB85C1ACFD2 +05F2D40ED369D0368F48455B9CF748FF718CF700E7458F435E6A48432AC33288 +E52FB8F5E3B90AD0CA04E002A201DDA238B0B189E5E56AD067490E4E00C3E2AF +C6F79209E7CE542022A7C420587D19FD3272A48FF1B8660DC9C854CCFD0E6F7B +2B843E68EF390A5C81710E5B69BA0E07973BC55064C69777EADC1E98A97D00B7 +20534FF751C0132C99DFD3CCA16939CE443159F7732D9E7CC5D236339FFB1581 +513FB4A5A4E1627BAA96154CD5BC0CE83517CB0D78F7B37281CB860265EC098D +0702DB83006EF9F687B92D04F553FED0C5283FEC0D6A30BD4A42410DA0C7BE8B +2ED778D04A236D6C18223CF443E24154B16AFCDF856482AA8E43686194C38399 +419A2F6B43793CFB70CCA5ED0FB14F04A1AA7964B50D2B4C6C411D8A7F6E424A +CAF0625999E69241F41FDB2715640461959DF063094202C1C39CD1907F45286F +2F5DAA713448C971B32616C8589645A73BD1867DD4B77FB2C5D0F7D24CDAB9B0 +F472C23BFA2F6911BD766D51D77F796350B2F9510D43AF77A2287CA7DED8D931 +C1C2EBDA43E9414F36541BCB06749C5F7175382997B8DDA4ABD1424FA727F46D +134CE5D5E40CB14C4D2BB751A4D36FB086101CF659A956BE8AECEDC2BDACD4E3 +9199A88A9E2793400B22DFBDB3763557F53F7E03B8C5BC2B17072925A85CB9C6 +0E59D9B8607F5487B29E50C051407BEECADD053B1DC1D2F9FF2195516222EC72 +A2A40729FA0D669FB35BBBAF7ACCD13C13FCB01978ECD9323DE7FEF7C02E990F +C1C971C722A702103991963DA35EB4E39E649E6D1652F44961118457D5C4E806 +B23EBBF830E50E5BD03BDE52233165287B01026681948E95DB975CE278E2D159 +A3F87F6884AEDDE778EAAF6271A2CCE2071F289A6B522AC8240B89F7DDE4C61F +7D82213AE094F8DCCB2B5E29CF8CC85D89B58AF8A7E0A059633A782BA2938C7C +8762EE12F4534BB38704CCD7A664ECBF60EE4487A2DE5161A1600E56FAEB1173 +576EA7CF0EBCB7D668C41B40ABFB7CE65528B4F601BD56B724A9E306973EC357 +3654D750B79F118A7D534C03A69A85DE70CACCC1AE64E748AA55D5A08ABC1F5B +7B0967C887C385FB344AECEF81133A04E32A88164DF8A5F294FA4FDA9BDAED1A +BA6C58A82CE2EC6DB4182E98BF98A6B0B434A6B5D8939DAB4F5150260705298F +A9B1BF8B7528F717EE2E59FD9EF27F843BD8D11D532A0F18D53E10065A41B968 +96B0C2D7BBF523248AF77D868086572D8B39954FD89290831E80C8278DA8182B +160335A971C498A1C3731231F155ED0ED5CFD6965354A29240A55D8A6C0F42F6 +AC741CCBF86F3824B5EC47DDE14A6669D3FE875E704F196FF9BFF39A685D2FCA +53664307222AEF12AD24C0C2A7B03379E4F0EA38638E1F395FB5AEA6CD08905C +C77A990D0D5553AD5898DF0193B87247C38CFA7D6AB17A9F54E1F27C18FDC776 +C550F8E3F042EA1DFB516715F85C7070E8CCCEC14EA6D8117D6BDB84DD5F46EA +0F37819F0C182D13C6F049B516F89EB0098BADB113668B65F038F722EE215E3A +55826E2E1C57A29ED6732467BF89E8EA66216432F4D9699501D22F68091AD4C9 +102325C759DEBCF9C07286888BF76C3E8925CC55EC70398BB8467C00DA8FB5D6 +425ABF7A87C6FD6E1F5B5B19006AB0DBFC666C84D88138E88E1653FCD7EC6891 +5685181F5356C6672ACC4DE3BC8766C1640C03E6119F52EE14044962F0B4266F +2B89C5EFF7F5F1FA5097D6C1978081C7BA677E6E65A0FDD2F241D7152D58C1D2 +7D4AE5B7E7CEF7595C17844F28F2B0E6F79DA8251A0BCA84507FB956D638B5D3 +6BA837C7A16836E921DB708E9E0F0E1BF8F8B21502DC18CBB80041758B8481BC +3C0695D5FE5F7334F63E68D3A2D5E6286C0352E5E6777EEA983FC54316F5098E +4EE9328E0738BB100E2332B026D4C5554D5653525877AB350977198BB5BD43EB +B9A4CC9C8B78BD59FACA2CE855D207F40FB5D8F5D810CF1587601B8FFE3DF563 +FA22F40738E1043B2B5AE9A1A32281B0EC40C451990F7E4FB78B7201EFD21C50 +6492F9BF28EA0ADC3F3D3183AA5B2ABD85B62107BA57A0745C52E33C2593C3C4 +031386B41F5B8964818AC216773DE26A21C5E3CF8DA3325838AAFC3C9ACD5E97 +27C8D4B69D1B07D1D61CCC09956941AA21D0155ED075BF45825E17760874F621 +3E4AAE753E34A754574022EC7765C01AFDD3583CB5AE3B523F45532E39AD0376 +F033B6A90849EC331CE48BDDBC584F652C0013A788D7B36FDA40C8677A2439FC +9847BA102198F1C57A55A0B1373C0FD5D5AA602B6F18685146599F793AB1B903 +26C617370862EF52B694F6DD71A627942D2CF882343CA1D6B13BAA862F306494 +B1EC22932A192478DDFF0A9DC214CF30E00C41B94131084493E2A898CFC5C944 +93EEAE672A72B6375EEF5774921DA3B5D1A9D8AB70678B15CC2FD2EEBA38551E +457AFC2127F8911D28AB956A847BF0EF134FEEA309B74DC55C94F0C5415E4035 +52A3C13F2E6663CBCC8E42E4E062902ECC0B756DC3EB4C628FDBE2B1B5736DD5 +927FB4C4465B80F38210033B3D2A92847B1D3CA2FB83E72884AD2E2A69B8B61E +F448A0C55BFE36CB3895020D30C8F0C9345C3DF92CB044DD2B8E128F4E77F7B9 +D19E24F288CDB6CDAB80E695973D2D77F8A7033D0D6A8C489627EE6A5CE5413D +F853C60CB73C148D1A4D4BB74528F7ABAB901D586FD81E955B6F54B17195BBD7 +2D273427FC21397BDE47000E04ECBF0FDC11E0564EAB2ADDE4574213247A769A +B86FEFCC726486DC26E31B1E728F205C041F6752C9EFCA8D8E7060EB1CCB0F84 +74161D2165B06080C0F5B566F983ACFF3C918DF8EC0F26DE214DE6BF9E1EB4E3 +2DDC7498A61D2272E9288B31F5EE93BD3A75A2F670122ED9FC6010E210A521AF +FA9C878D5F6B3CC90E406DB4B3526D4181D3F61305F9437117AAE73B2CFA1E5A +F790740AC21C84D7F863278BA60620EA925810896228244BBF27CD1FB235FE83 +DD90C6B3ACEA8C43914FB6C52D7BBE6935F2234C3746F78F01A07C0A1894A5B6 +CD3D4F1EEA76390AAD636785494564A31A7BBB7822B833EE2AB81239335CA76F +620DC961200C4C93532F00E75E1DFAB84A8D8EE12C068AA1C6382279B6022EE4 +B9B516F7E76407420669D1519C8A4DD8D901A5B50A69BF08B4E1E3F5453E8D7A +854A99D2E1466A2A6697CE99E06D523DD092162249BD1312F5F20CA7828CA23D +4107F09907E19E31D1A076F58BFE3CAF91DE66CDBB2DA1C39985DB8A4AFB8059 +534C6118EA934209AA2C0E898DDF042D226E3782ACA6B241F846CD1FCAF41B65 +A5F74B1CCD1117C7F1FAF62AF86CBDC8AA69324A0673364D2F5F08BD329755E8 +94889D73A08810F5F6134D37DE5B8650CA44348DA819C6BCC0780DB913ED13F2 +37AF38A96155BA5974ADD0AF8DBA7D928A39D85B55ADD62EBE62A2CBBD8DFB5E +0D1698BB51F3352AC3C4430DCFB2CD64CDF9D1009AECE6EB1BAF8275EC3D68C1 +2CCB1E40047609E5B23563D1F22A1097182650AB76B279A256E918B0DE7E4722 +762124DCB7861A209B7D04B07BEA5CBC68D02FDFC96B69EEA9FF3335BC7F777C +8F53E7F1F1D334E9B175698CE86EDBCC5BB2FE078EA2FB5B1A41E3B9F0D02A80 +8372A262374A64FC53DC6A782D2BB281917225E79D721F727C24A4160E116DA5 +351D0466A4F7C59ADCDFB637B2AE24F8A55C3EBDED6EF2BB342EF2244507D845 +3685C17BF5ECE9C400A6D9E74A401DC60C0B1C06B18E603DB34E1ADAD6871B57 +D0C4058041C445C956C09D67A578422313E491DDDFD375DF3054DD1921F29467 +7D66B245155886BC99431487E5EFB629B142027DFE1D7A63E59001F052D535E1 +DC0EA1435F1F2B8FF1A631EB6F81DB549C00F1B17ECBFB66B0EC8750E1B27AAC +BAA22AC1819AF8E39D3AC06F0B3E92F48280628A7AE255F86DC1B52F15747C34 +4F81FED8237EEDD6858FE6D47F9A55E068A9FCB37AE3F0ADC1F2D60E7173CD83 +F88B68303B0BD629CD938B7FB82E008204127AADED32E26BE7A2330BB7FA38B2 +674059A71FC7B51D4C2584CA005CE4D1783DC2C20D15D514A4C275DD04405444 +5F8743E430D1ED6D7EBE03D27EF9B12399B5E014FFF8C1EFDDBC6D5BC26D0743 +5C3F8D6D256F43318CEE85CAD23A070DA78E368751D57CE878FECC0C09F5C53B +7EB5AB33FAF77CF1AAB27AA9B071B84987202FF92750EA88BB06B0483310000B +A59CC75853F5A9D24A85BB43CD198241D2E670A0A127F563303E026434E39955 +9570D6549B5FD998FACEC124CFDB027B93B14601AEB24E29A16CA363B5390B1C +38296766A27C8DBCB3CD25BAD3ABB1F639D0D4DBAE4942C971682FE358D13122 +86CB9EC74436FC94EABDA8A4A1A6DC4502F8F7E3762A8CF8390AE15AB7B12CD0 +191F2F09F7EA54C66A811E033DDB5B01B4D9389C79BF0355779F433FBCA26294 +CB8DA259C71AD75FD17E0D57369C82A399FCC27B6385FE6797B450A0FDE80EAC +B40262E81CB4FD6A7F10ED3B62E1D7D27E8E6287562DFBEF960788A2D6786216 +DF843916F0B8128C10733C369EA27F02E64A8D7425504983813DD7F2F4BD8540 +01BD6B97BFA7F361B198ED483E2394001FADD28F1482E6C419B4908B48A20B66 +6B6842FF6DF70DFC9627470CE73609C92029B5D7273C35B40D85ADE1DFE34FD1 +4B5D7580CC65CBFE8FCADE53CE6CDE79E0D90AD466CD200E2FAF7889E0128261 +2F1AF22643B12226C782D370542AC6D992CC7D50213119DE6AD8ADFB0DE9EAED +7A08154586A0B69723E0C2E708F9E3AFF75332312747C31C6AB43DE3BE2530FB +838041C5F2AEA780D01D0942E800FFCEF750D37489CF478E715DD707B1CA68F1 +893BC3441D260EDFF7811FE3FD45A0EDE318374F729D3E3F735E4C8FAD2C7780 +59C498FAC2AAD8125E74137B80475621D310A9298BFCCF6CD62CC749DF62B547 +B8E7D6BB11FF83221A7ACEAB5B574F69552698ECF7D5368CB2281C47C2CF0F37 +2F115C1C884CCB51BCAC7CE38406C98E60A62F2BA4759AAE03085CE4FEC67037 +300B466AD579A8227052EDBCCD4ED3FE88484E806F3A3A220C67514B84A1A0BC +4F898A26B6FC10145896B08836C6AB9B0CBC8EE338C248B9685BD915CB6918CC +C0661385EC95EFD38204554FEB48D8715FB8582B4E102E32B4B1FE4BB93E0B13 +D94E3AE5D67C44DCAD46714C11B27A7F0069E1CE8450EC9815DF9F92DF1CCB85 +165505803FCE8480CC31E4C6313EC81BB0D33264086F393ECAC444D9CF8D13FD +4E82E827F2E216FAD2C2FDCC8A700BCB73287A7C57B64DF5CF587A157091FB90 +06DACB9F210E700F01AE4D3742BBE3CD399C852DA3E09951FA83FBE9A0632F44 +992BE67118C30E4F65C579346910771BCDE255333A661FA6FFBE97107B195940 +EC8D0EE174EB4C7B012A1CCDD211A8CF41AD895F84A4224B4AD5EE0651FA4176 +FB89BE13C1763B14B8C17C49074C2D4AE898C9C34E74DDF7A6C55D6DD6126BAB +B0EAE537AF73EA465AA7C56ED0F265314FA813AAEDCAD031B47561131982E8E0 +CD897C72FA539B3FE878E682303CE586377EEECE5A7C46F68A31F91E199A4A08 +71EB0EC397D8526E6EA5AF51707B3B9A9E3657217FDF99348B1904A5B936B115 +DB2EB8055E918613DDC6A39FD33FCBCA34589D7683C69DA9E560CB4DFD3A056F +11DCA228AAA587769A2B187B1226CCE9F6594FB18C79316F56085E14EA96F81B +EFDF85C71B21F0F97E92A2295720F5909A82A214 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifCommon-Italic +%!PS-AdobeFont-1.0: OmegaSerifCommon-Italic 001.000 +%%CreationDate: 10/03/99 at 16:16 +%%VMusage: 1024 29255 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(version 1997-02-08\) +% ADL: 769 231 0 +%%EndComments +FontDirectory/OmegaSerifCommon-Italic known{/OmegaSerifCommon-Italic findfont dup/UniqueID known{dup +/UniqueID get 16262003 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifCommon-Italic) readonly def +/FamilyName (OmegaSerifCommon) readonly def +/Weight (Medium) readonly def +/ItalicAngle -11 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(version 1997-02-08\)) readonly def +/em 1000 def +/ascent 769 def +/descent 231 def +end readonly def +/FontName /OmegaSerifCommon-Italic def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +dup 45 /hyphen put +dup 160 /gravenosp put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262003 def +/FontBBox{-167 -438 1558 827}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360015A30749A338E471804A9341D92A +0B722D817EECC4E8A595D9A0FB01CD573285B74FC826B26FB8034812F3277F06 +8DBFB5FA4300BE6A3C79B727E7F660880904699899E15B50DDB7C37717286389 +F5515FB520AC448FE062C651A67F11636BB2D6F606D809239FC44EB3DD052492 +C761205CA18D709E93F5DAFADD132D58CEBE9DA621CA2515DC12CA513EDAD108 +685CB66647940445069F29B6EC72C452EA45927A17CF4D6CCEE0EF15C088AB3A +BF044EA37288758EDD224059D4695F7273F8559DC93E05EDBB8ED3EBC909C809 +76AE13FB2D60CF934B256CB868FB8928FB2431B77E33A9F5F1642FDE40474D8A +36B5C7376DC483EC4128F9A66DB4CCDC9FF4A3118B84EB6B97F60994C49276F7 +3F1FF0030B646204426668CB1A0D4E2208122C6174945E3986893726AB61FD86 +CE065FA2127D8CD3F734956FBF0FAEF7D00ACA8340679229DB9C685516CD59D6 +C9C846DEFBE494B6068FBBC5F9C081D212EB43EB69D1AAA41C062946A4183596 +BA01255438FDE2994F77103E3E20AF1F908A3B036E0854C1036BC4A3AAF8FF26 +9744566F77A72E36CD6308106175FA67F1EB5A85F71CFD603E2E5E96B48073C6 +F82F4A11C40067FF139FFC9A923438D5E661A5F73BE2DDD93CDC0FA9AFDE2856 +A9549E245C85C36C00A3DC38A566C38D15BE43819F443237B901BBCDBFB34124 +6E54548CBB228ADAE976EF08829CA1E447461A32E3F6CA4F9D2579AD2089BF1A +CAA7918C5FCE18FDC2645D2D22BD97F03705B761021744FD384CB269B75970AC +ACD22086C4257BC649DDDE5E78D34125D39E7BED3D92067369F004D80161A57C +C0107BC6C1937BCECA239F90FBA261DF1A7E91C96E3F8BFB5B2825A4C86135D3 +67BF0242AD7D07C2EF591D6D3E459A991187D441F2AA90E2BD44393E530139BE +17DBEAC81DC9818F105F6770EEF2A57E2AB218A0D298CD90EBD495E25C073D27 +1F80D152FAF3FDB13D45433A0D4250B2B6617D33BAA3B4F4B510B00791061217 +12F33CB8550424F7B82F4EB571B6CBBB75A2299BDAA2DE5AA9426834413DDEC8 +072615BDE0F39E1BA1B3C17C4C3C5E25915053B7ED5A627CC7EA4C60BB231CAB +47E82142CCCD7F24271FF2566522B15928200E8ABDC4182328E6E374C9DABA91 +72A95791631CDC285234372CD9DA48A1266A75D34CBBB76F460862EFF021B68B +C6E014055B809047C02C33635ADD8E059460114B768418FB242CEC7DA4BE0393 +F417C11D675DE466BFDFE2A0E9A28F83AF37CD9933ACE63713F7F66FC1204F2D +76E22E855672115BF04C2073C6FB06CBA9837BC42878D2B24BC95D118F3C68E1 +43D0CC65F44ECFD1E38EF9AAA752F49E47B70E197D548C05D810F05586623BB0 +E003449FADEBE72E55AB10A498F3977D957EBE58D8FF356C8F15AE39CD9EEE51 +EF46DD99A4FCD22AD2CBD58E5A3DB83DCC43F4CC857B90E44EC3B148FA73D73A +AFC3D74B91EA0194681003BA59B27228BF4DF2F96746739C9143B26A0CD04FCE +432C0BE382DC3A999DB08E84025FA9497B66E492FC9812012BCA662EE3665258 +E5923770157FBF148860B6064B4BCDE6AFAA8DFC1FCA8BD9E072BCC51F707901 +12286804DE6745E4970F9B +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifCommon +%!PS-AdobeFont-1.0: OmegaSerifCommon 001.000 +%%CreationDate: 10/03/99 at 16:14 +%%VMusage: 1024 28846 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(version 1997-02-08\) +% ADL: 769 231 0 +%%EndComments +FontDirectory/OmegaSerifCommon known{/OmegaSerifCommon findfont dup/UniqueID known{dup +/UniqueID get 16262001 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifCommon) readonly def +/FamilyName (OmegaSerifCommon) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(version 1997-02-08\)) readonly def +/em 1000 def +/ascent 769 def +/descent 231 def +end readonly def +/FontName /OmegaSerifCommon def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 33 /exclam put +dup 34 /quotedbl put +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 44 /comma put +dup 45 /hyphen put +dup 46 /period put +dup 47 /slash put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 55 /seven put +dup 56 /eight put +dup 57 /nine put +dup 58 /colon put +dup 59 /semicolon put +dup 63 /question put +dup 91 /bracketleft put +dup 93 /bracketright put +dup 95 /underscore put +dup 104 /quoteleft put +dup 105 /quoteright put +dup 108 /quotedblleft put +dup 109 /quotedblright put +dup 112 /guillemotleft put +dup 113 /guillemotright put +dup 117 /emdash put +dup 160 /gravenosp put +dup 161 /acutenosp put +dup 162 /circumflexnosp put +dup 163 /tildenosp put +dup 166 /brevenosp put +dup 195 /dotsubnosp put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262001 def +/FontBBox{-121 -438 1356 826}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C673600130707D87128819324132AA262CA +70C79A7D7A5550FFA797ADABCFB6DB926A63A4F174D4E122EEB485140671F458 +BC4F2A86D2B32DAEB60F295986EB03CACFA3EF239EB0929FE2D0C34941943934 +FEBD1F4682E7622BE41D680F3968F3C3BCCFC40A1459201A5EAA52E54BE9720B +C97DEA29E7B80DF3955126C1C0CFD71815F6901A704866E33B62BE257F254A6C +59D4F6665C33000965D65C2FCF240BE793D0C1FED7D75B035424C0AC31CD69B6 +ECA6720D856F041C9703E4E6B4B1C8EF49FACD4F3C18AEBF7CE8D455D2480CEF +D01EFE1A43BEADA4A0D6D7210985C96D6B863E0BBE056E60FD7E345B8FB6008A +15B53241F2F34C72E533619DAE3F2C42370AC9B05403BACAC4E4F5739EAB0B4E +D8081F345AAE73CF1E8EE94ED6CFA6FF1FC221CB348E42CCF6D252F953697922 +2AF20D249AC6576EF113EE12C4BC1BD8F360C2B9B7E50B85AE3C9C78FB33EF41 +23A2FEA559A91AF2CB03891BC36A0364422F4C5374899377B4E2415FB64F4CB2 +1381640346F5384E00AE740414A16531D6F2BB4FADE1F3C7C680A2809D3FB284 +AB13B8D2F8AD0E74E89D67AFBFB739A2453738B20F55F2D1F8290B254C19C399 +5A207B3CB0FAFECE186996AFB57D96B9652190981882039D56A6EBAC4A4B134D +84C19F0A6C8E61F52C36FA72A6616D75E3B0A4C4BBD77EDC425FC2AC4800BD1F +38BFCF0E19FA988564F72BBECB48FB4FEFD947156159C815D04B75F569CCBC81 +2DB91E8A2BC594ED389411B0A7B5CCE3197B8A65981348055784A8646463F290 +9B0DBE703B299CF157B06D08C32592BAB401C7B738525FEF89E5722C91733403 +6F6929391C61211A500CB006AA6A7D4488BF64932404F3017E135EE7926F8583 +7A2C5E235B9EEB4F7848914E1531F0AED1629C991A6DF4AB0914D83D859C06AD +88DC521374212B1CD239F1939E28CC7BBA6958ACC81AFEE819A344F06D9AE8BD +AEBB27E73E680FF2E3F1B7141208E412FBE53BE9EDC0EBA464CD48F4956DCF85 +1EA3BA94AA767BD994FD1D33589076811B032899EB6FED9BBE0640C3DD350567 +A8C1CDE2B37C804F50ABA6AA474FB0D029F921F90A029EFB627DB1CE411F5545 +0B3E95C3B464F0A55B0A0E8F5782728F8232B06797F38280328CEFFB402D1B1D +525F63B3CDE835FC8F50C88344D1D85CAF9993E06D05AC9641AA4B08E97B5BD3 +46BFB1C6985447B9DF2103B5BE181822C1C611D4E9697393E4FD0282B57B9879 +7E2875E08615E9C8B097817A63C2CA942542765A26CD8E39AB0DAB01C604ABA0 +3FD0F1DA2DED4E58248AAB802C585B81118C6DE7E022616D69367A334E8ADC4D +B8A55D0FBA14AF90813BA27BA7A24F1B094C13443BFD8BEA75E660041545A8A7 +083507E2DCF40824DF16B58F3D1BFC9E5A3E62B0938693D1C43C4C653C7DFA6C +BC4DEB6D5FA7391C5A7693EE04184B469FF573EFB874C39A5E023533489952AB +E1DA40947ECE09841E2409742E8D9A2271109FBF05C390E2070B191F1D379795 +258B148E8015963C239CCF5761E14A3854618476E0795042A5DC3DBAE927479E +BE2190FBC376F16E08B1D61CCC31A95F8D8161AA278BFDA348F332ABF2A72967 +EB087F40B06A7796F1A9F361FD63C39786A375D899E5F8FA27D8A773354738F8 +B9310B1E89E1B45B1183C241B93F7D5E0C8543C8121055031F853BB5A35D915F +37DC1876F81DB9946757B2E9126CE35F9315218D2E6D563ED2CDBC4F7753F9CC +16FFB560C6B96CCC5A767C12694B1421D5BC90C38A6C7AF4B858ED9DAA227E3D +2D206688E0876564E2FA747EE9A891BB4BB2059BFDA4832BDD65B9811DBE0130 +0816A9D1BEEEE76D723D8536C1EDED5DEFE858776F651E885F7ACF908662B4FF +FBAD7D607659BC54C75306F87667BD5D9B4D2D8706C38081165B872F2770FF78 +8CE7CDD66A993ABAF34BB2EB03C507EBE94DC621AE7A1559CEBDA42BFEFA7854 +76CB70ABA0705684742BA0919757F60A7B97ABA8088E874337AD05F189709BAA +E243E8EC03BEAA8B4E8F57358086B3FAE94907257771EBFBCE7D1787EC0F25D3 +12762B8527CBE338E556253D7463EAB6314FE303B8E8DE7C0CE5059927C51985 +93AF7CE78ADA7B9B2BC3159A663C560348FE576FE9D47EE85FE8FAC9E178C6F8 +66CAC41DACF60B586AF81F6238F1912FA452DA667CC6DEB686BE6217B3B40302 +F183CD067BA0F9343D9B3945E2DBAABEDA9F370A84512C7B571AEE4CAA6D9D4B +5D5D0EB84393D8E7EEE123D8D537E4E85B568E449044C79288AA0F6504A64154 +86153842B57D26B0292AC058DBF9E7152294CA348FF578A21DB6E901BC29236B +DA91CF7A278873CF84F745E01EF9FAA31E07ED0DB1DA38613174DA43A1DCBE43 +37B2C892A692BE38EB22D052C72AA6A3EC1BE38F50338A8DFAC02E5110B7E059 +E0C7798837F3F00BE5BBA27457C061DB1DEFD1B4B096B106A0E88C2A510E1367 +1361353DD4AF6DE228098BFCCF3EE73844B2C7A227322CE4C3A328403D06F131 +901A1F225B5F74EF53381F234EC197EEE4A4ACC85856CFE807472B719C684FBC +8B81BE1F2A6A1B68E6C4424BB4C19EBAD4281114DB1F3CD3DEB7C6EBE87F52DF +66A4CEA445DEED940DA73AF0D866E043F70C1CED4FF7F70974A1DC54752F92AF +567D4727FBDEC00D75292064DB8C0B8F015BA89F27074B997F8918934FAA64CD +926986564ECBF86333D7779A82F6752761D6C5BE57203AC607BB9D7E48A31F22 +1F5FFDC058CCA6BCFB80197A09F725347FA515CEECDC22081E65320BCF96387E +4C8CE4484F4B8123B36B4BC316CE49118985F8ABEC7E35557B4123EED72AF76B +A1A4FD0956772233ED334C8610D017CE5CCF2C8BE8EE60E88A9A33C67DC33B59 +D388F5D247DD6927BCD8DCC448A9364200656D0D438C62B03BFC9E2D778494BC +281E4CB6FA33E11AE2B590555BE6A705C385F1AA6D2BC87D6DA4049620645106 +C3CE03F53BE9E3BC4743F057D256E91DEF3563E7FEE41009B7A40903FAD698B5 +AF8FFBF321580B68EA5374AEAB6CC744D9947BC5A8C8C782E6E227BBB875B3D4 +8B1D49EE178B3AFDF92D14132111DB8DE1AB42A663A94628F8306803A955009B +7D88BEB845046452706935487F1193E10A4662C67C6E93CF44DC7A36144324CE +D38387996F2E5A2FFA5A5B47226FC2B2AD3D28306EAEFB787E494F7DAD04A692 +C05BBF6D3B4F867DEE3D6D01FB47CD757497087987985FE5B7E83C28A45E53D1 +96FB76D93C376F2D9D723F1A2D7FC8E3DD361EE1714D612E3F1353CA7C0E99EB +444ADC604CB3EBEB9B7C548E05ACA9D761854D785091FA7A64389EB62770F27C +487EFFDA12726E49144287ECD7B2A52B12A1DB4A8F7A762C7140B2A5A6AB4968 +F5A4E0BCE5FD40B5A8470847ADA5E18428DADCF7282F16C9A7E353E233A79C9F +9D5B64DB0F74530319E56F8CF7FA064044499FD7397B6FA90C4728BE978B831B +E06200A48A21229721722ED261B2EDC87A25E093929875716391311C8E7837D8 +6290033648CF85EF39D00AF0F37F725A61BA41C698BE54032529F56AF4752AAE +D0A076457598F55E4BB96565FE775D63098423D7224551B7853859D3F4FDDBB9 +CD56CB11E3A1463E632AD3FF5C31C0B497C024E6CC72495116EA44720DD0CD14 +D9D91299C4CAA0B5640577FEB587D82310A5DFF807FC5D5BECFF027DD5C3A45E +47A9D79EA2D03B4A85BC12EE8029E1F5277CE06ADA446FAB1970FFD1E632AA74 +90D121CE105B6BE2634242B99CB554E7D1D405396F55956D99ACEA753EACA1D5 +1F0D62568CC14CC13C8AD6C83BC2C13594DF4F53BE9716BE8271DD6D567F3B79 +7B465523FDD2B285B245A45980ABB4601D0AE0D040A47987C705D6D562A1F3D3 +B33E7D926FA1A8BFEB8CAFEAD93EE4019A408DCEBC5FF568ECDC013D6FFAFA55 +7E15275629A4BAA5DB1292F598C83A94F148FD42B5CC5D7494905B6535643113 +2BD96CD06B3C08959BAD860083EEEA81536AA8E9F9A1F400F778BDFEEE93C2C0 +E68DE05662F4D65B6A5047F8BC9C5A4F285A00F3694E50B2C58C062549FD6D5E +6D1ED1E381872EFD5FF6C1AAEB2BFF47347A34A6056BFA7C9212EA64C05A1767 +460021DC8D7182AA84AC4B8745D71E9F46002E1D74A53E43C421F34C30B819F3 +2D1593274D105FCA8C9E42BE6AABD70CD2B426AB3F8C2D43101CA6F463862E38 +7EFC3EC3F462DF04490D4CFE51A2FE22A2126902E42BA2725F8651D1A07B3E40 +7D5A8BFD7462484AB93D2C8EB19487054F6DE8DA28319043A26D694801F09B06 +67348495625DBBD8B5438682914AB413733799E214D6BFA33F5AD5D6FDC53618 +419E69A47A3372800AB2E6D71047C5394CA652D7DF3480D01DBEEC75234E4ABD +95532825B1E7700E3478517B7B33EDA57DEC40026E29FDC590B62958E3756F54 +56ED7F80026733811202C4E26D6ECC9C0F45FAF148424DF9ECECC496E78B30AB +4036A04066B381C91B638F555A2936746F018D4016BD8423A3A1A69C84D49D13 +78D58BD101E2FA36AE8B32DB0B7520D0BAD57422AB126CEBD6CFA561C94C68BF +473A9E35F786BC0E3B26CC627FEB7889573E44A5781FA3BE5FA16ECE348F87FF +4B43F880237E4AC9E8007C27E6257B1B705EF6582288556155546ED0049BE4FC +2FE5FA54C599BA124E7EFD3FD9505AD0416B9085885BFCAA7426CB31E6CB8BF5 +8AA285504D617A693FECDE815364ABE67CF7D63705CF57D36025DEDD09E346BE +B371C2787F47567DE4A21C7E2B8B441A8218B82D650029AF22167AE3B121B75C +A05C83DCD61DDB53DC8C4211BD9B478804357A6F5ED73E7765399C28A0427DD6 +7877C51BB7CFAFAA509300D37F58F09FE3B79E7D39062CEF8CD378894F58DAF3 +CAB6E07416A5E9577870D62B8D9CF53C119275429C5246BE3590AB0FF6A05862 +BD3DE6032A9B689C789FAA0BDA3546B2304C9BAA24B01DC8D44A7FB460C7E13C +4630095FE05A8E08A6B3B75938ECE7D76395CD69268BFC0C12B5D9486B5C8F6C +695704054A57B61AFC46CD33714E405290A528B83756C855069B0C62666CCA88 +138C33B14B04FA5FB03ED7FA55A75312A1517BED630E0937E551A618B3B609B4 +71DB513DE11145672D83D3260533802B99EC1AF4553DD7713E9B335B662C7627 +92D6EFB6A520E070B88C40A87C80BC7FF131001ADF610527A09E7AD6A8BBDA62 +B9D8255E67A62AB3F3F38D0CD274B956FCCA1FC01D2E667AC78A09A78081BBBF +CE644678B407195D639B594CA2352DDB2285496115BE9C810E74924F09319AF9 +9917A1902F53E4BE34A79F3C6B705DC5FE23EF9A1A326782F45FE0B464D96EEC +A991283FE4F5F14A6F43DEA03E0960937AD2DF390D9DEE446880A2CC2B5B36ED +5E725365F007E6EF91D508B651892D171853A436CD1391E4174B883FD791ABE7 +A08FDD15C2CAA41E2CFB7692092BE08D57938507E756102326EEEE3FA179EB5E +3FA5B5783C8A81FCC602CC49FC6137F25DBB9B719C0223C8DA0CAECD64FBE187 +A6D46AE7898124F5092E079395BA144F3D4487529650DA1E369CBDB4EB45BB2F +BFF2741AA87873E447CDE704E541C185F522115552E650D7EBCF7C1D518D946D +A8F642F60ADA45A2C0A98CCE60FBD6D0F7AC7A130BE46B8C4EF5B62B8F4BE6E7 +AD52CEA87A410107774D642F38858EB6286B8CB1645BFB6AD860DC0DA5B0D56F +E5366E469CA569156207B01957EFA392D4FAFD888963D5BD09427F2ED4CBFC85 +4541EBE90D3D2FB3845B3CCEC548546CA7D4667F2D26654B81C9577C84C6F725 +4594AEEA1C8A8E49CE50FF9DEF3B4AB070CF8627EAF1DE2BF8413954E2770A97 +269B091555FA5328624FA042D515260414D8A8EF1A454FD1B7CD06D6CDF4235C +9298EF28F2BADB4430BD6B510F6FBB7F8A38DD6894A393FAC0A65B6E0594C803 +694DB720694B791BC976B28C33D630DF804CF93C66B87479193092191290F6AF +0216012A802EBE7086139EF13FF00CAA401BDD792204826DCD9094F094A95154 +1B559466B0 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifArabicThree +%!PS-AdobeFont-1.0: OmegaSerifArabicThree 001.000 +%%CreationDate: 6/03/98 at 9:43 +%%VMusage: 1024 23867 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 595 405 0 +%%EndComments +FontDirectory/OmegaSerifArabicThree known{/OmegaSerifArabicThree findfont dup/UniqueID known{dup +/UniqueID get 4405653 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicThree) readonly def +/FamilyName (OmegaSerifArabicThree) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 595 def +/descent 405 def +end readonly def +/FontName /OmegaSerifArabicThree def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 50 /alifwaslaiso put +dup 70 /urduhehfin put +dup 71 /hamzasindhi put +dup 72 /meemsindhi put +dup 73 /arabicstroke put +dup 74 /hehgoalfinvar put +dup 77 /zalowerdotiso put +dup 78 /zalowerdotfin put +dup 80 /sallallahou put +dup 128 /charaaa put +dup 132 /charaae put +dup 134 /charaag put +dup 136 /charaai put +dup 137 /charaaj put +dup 145 /charaar put +dup 147 /charaat put +dup 155 /charabc put +dup 157 /charabe put +dup 161 /charabj put +dup 163 /charabl put +dup 167 /charabp put +dup 176 /charabz put +dup 178 /characb put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4405653 def +/FontBBox{-68 -616 989 984}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C6736001140EE3F98559E66B7DFEBFE4C51 +1C9B5180FCE9ED2E4D03937F9112EF7C862C0CF91AA27BDE000631C680623F39 +968F943EBCB4CDE6B1202F2FB85F3751A4A3504D7008438A7114A1C968F497B6 +12C3B26C19A5E25F51DADDF3E97EB4C4249B58396BEAC13C2F9D0BDF37A356C2 +74DA38C4374AFD757CE5900DDA27B6D9BC0B207D0FE83EA292D7633E77E33C05 +3BCB5F2C97FFA0E515AFB1E21AF0F86C8326D0FC13AE4294A760FE305702AA73 +C180CFEC8EB3CD2A3B0B9E6BC54A482C66EF74EA91DC5BDD60EBF63C702C6128 +3E4030737A6C717562D721AC876D6829AE7A9AEDE5E517DA7A11DBC746B3571D +194B6840AA135E3B29A458B5A4E49F2C9FCFAA22BE76F58562E6926532D76894 +48D81215D3C9A5ABC7E2B0683E0C811DA3BEDB990BBE24E80876AF8E61C32D4C +A1F21650CC335653451D85A7B86A022631C1ED8B91B0604B0FAD697A19AD7789 +6BF2A3ED24C830979C01DFFC6D31C1661400F26359E01FC0953E65E172E1F028 +193EF1C10CDDE95CFB833FBDD13FB3DED442C3044BFD1892A979CD289378B7B4 +94EE51D2F2160C391DC589105A5834BAF02FF4939B94291F2756C3216DC5821F +3ECC9D9CE679FB160B7882D8C16437AB51BCF56F15E7849A8D6B5106282BA0D6 +CFD43B9AE48B3974964429FB940BEA819F612599D57776E3BD5973D91CDBF0D8 +306088A85610617BA110ED16EB6187079E8BF76A1C468F0D1CC90557A1A27BA7 +9F88ECB18AE5C5A339153506FD39CC57C8C656714040954E50F594A63B3CDBC0 +7016FC92798A7DEAE9AC50219B17B043A81F1A2FC7F186DBC4FAB3F6822D6396 +77C6C022DB50F1B85F57673C6CE01B2B626290E69AF5B1164C279BF20CFCFC70 +378F0C47745066FC878C363578D209E0AFDC3B14EE62296357FB7028BF3CADEE +7E8C9564D4C6699B90773116C29836F93EDD1DAF3A6D22EBE767BCD2293371F4 +07B733B05A24F20F79E685021882F4EB09AAF8C13FB76B13323C14953D2EF406 +E6DC0C7B80DC2FFC7FB5A367A2006478C8E1E41795023F335189239AD591F248 +4D4B111CC0417F5DF1A6A8D1DB1F6E4AD0C13F9F8F0E50B5BD9CB7850AB4020D +E47828DBB2CA349755C4F44B00FCDCB2E7E53EDF554366C28621E4488D929671 +ED119412E9E3D238F85EE01AEE79409ADE73939D8C12DE4C37936192312D999B +3F3C3CBB5E4539D4566BD37B347158FBD55128A5933CD3F1973D3B14FBAC1FC5 +7E030BC02C199A6E2858F6B6700C6553FDDE114439AEEE4067AE4C3DCDACF562 +8E10A1116640C859D8520897B28953B1E8F5A32A88B75854424F79F26792566A +672A7BF55066053704B7A265AAEA480BEEF5F0B1E14AE97F8E5A927C09DE87A6 +801D5F69C7D9F122578FA84D4001E3AA8A669EE8E136409DA4D4415654530DFC +6BE821B045E28480E49D4461DF943A492B2770BF3072E26A41EC0817D2F248AF +5CA6A82D7749BA5AD84DAEE72AE647DB331B1F8A38966727D317173301879CF3 +0990806EC120A1ACADD9832FEF8199A90B43CB8C1547169FB39309F0DD8449B6 +01EE06593C21D5D0DA41DF618EC876056FA204A456C5A2B9D025BB691116D5F7 +0AE80370A7DD48709AE9175711A70C978216CEF20528119E973AB12A2B4F93BE +8CFA1E1161CB7D9C7E76F8B90C81935F293A37F39F15F261CD05499E6B104DB2 +BC19C43EF28AD3634980826FFBDBC63269C7A4A91A8A90619212A888E9726CCF +5A1DA718042BBDBA4BF29F957B8613F2C01FB1C4861B207609AA4E60E79848AA +4C8F013F33B90DEBE8F020694F45A47F921E58AA0246084587344ED82AD534B7 +B27D568E1BD0839F92345BF5F1FEC3F50B44833D4AC0EC8FA7BC6AEB2FEDA48F +B169B6AD75C9D3F0230D6B547520B47D96308D157C681E4E76133339B91A6E1B +D892D1C487026B9C643B1E69436B16B751608BD5AEB714FE7C34209DB375192C +5B31FFC7EB5305CA59AA38B2FEEB448B3AE64986956758572D558C30500DDFAA +56C360788C9BCFE1F274C3503312A85A7088FB2431CA32952BD67B6EF03D95A4 +0B646AE55E264527BE95D3076996C4B76D46EEAA1E62E772E5C48D7669EC335F +7974D70FADCD590C5C1BC97B9209B7CC745927C44A27E772F3A28691CDD71693 +AC5BD4DF37440D44A74B2FB4E0D985945EBC97C2A1AC97687F54D0F15B70E759 +E6615014F8B8D2B69EB2999F8BA34C6DF71E7C5E850D06383009A2C9A26EDEC9 +C89053E0B9E6CCDA78202E979220B1B3693B844E9208EBC250B195D969D2F092 +1202770F5DD113881F420B5A99420CD436B62DA8AD9864B8ABDC8AC9FC20E813 +77FDA15EB93490DD9A3C5706C30FF2C2FB7D4074890A393678E14EB7C6989755 +4F22D699663B55CF2233244B248C94092E4DB0F5DEFFE42A29DC131BB4D367AA +851896AEB06BB2F0D09CB96E220F7CF07C5F8172C500AD4708632B6D74B3DF80 +F409286F8B5EFCBFDF880A968B5924F27DA750B6D7E90A6C04D76978B921AAF1 +7CAA60A1C8BBE4FD2AA89ADCF986A16DA74829167D5C8FB16E70CF4067D8E7A2 +961219874ECEB2F2BAE671202CA0F713B549927A00CCEC486CF92FDFD6848446 +9666F8A750F6A1E663C254573CE9058890E604D2B1DEA9176988E6EE8858C192 +6EBFEF68280917CC684600E5713D51F484A9BA0E782EDE4C9FC7F8203D8F7D24 +D9BE8CEAD600310801E5A61874377F3EF55ED1E28020A931144D0ACD06749210 +49BFBCE47AB55CD29BF0B250A689F0D8951AC6AEB7B43BE0F3592B47C6E5D948 +64339A74B4219FEE3031F6D576405929575EB28FFA72EC1DD7253165143D4A57 +DAE694DC9A0E83187EC02DFB7DF2F8828841AE8DFE7AEB04C24D97673DA6B3F3 +737910C106C8CB8C9FE0F4A745DE94B9DB7F05D21675B6205F515140B41B4402 +4132FB74C7F082B5C9713F5B880573A3FFF7AB2FEB341C12F49E1FD71570AE07 +ED8B7301060060F1F0D14075B8B885E498E2F1E5DBAAFD6E710944F61F93F598 +7CE11D288D0AD7F6C791D404339398BA1916D090A6DF48C654917FA253449765 +03723370987556F684D5481BAE294E7D3849FB6D1EEE5117B63C553B88DC8C1A +17491A5E7260ACA3732AD9B394D1A6C462F7A9D53603CDF1F694F069E0E7A676 +18DFE84A27B9DFA1837273555FAB3A713D45B353D7C57E4377F5C2A6866BD2D7 +CD4C2D2CCEB4A0A4A465377F2E8CCCA679A9D3F7AC5FFF846188CBBE62FBB321 +1285A434DF0B2F0DD7888AF8199682A64EF933089380A38367A06971D8E2532B +12671A0819DA364743D965F7515D029EB16AFCD589E3E2DD4D0942DC0F2ABF13 +FB3A7457C5B82C5C2220A108676C48FCE97B02F13F9FF5B4615D0813B3E1D1B1 +F1B04B136FFCB1F90659217106FA47EED7C76A5A398B98EAF066BB790805FDFC +BDAEBD030B0EFFF0120A876117DC7D68E8E425D92A53C28D5ECF9437B6F03E41 +744E93DF9C171D58041D54C12C5B03BE92F9877F4080C7AD6D2664DC9630D6DC +0B3C2C808A6CEA7E73AE0495CB5E21FAF54AD628D5AECE2AEFAE4AE91B88C576 +BC644EAE848AD1B46D29B06750DBCA6DC1FDCDC173882271EA579ABD21D5F832 +5232780B42056FB347C4B219FCA3192146E9FF778DCD9884C65CE6395CBF8E2F +F3A1540047DA0C58F836F7790A07859AB788DAFFC2915E58922362F343D671FD +61255329624BF5C98919F2802EB0581EF40D4A6544D3BF3D0424FEB234A6BB38 +20513E44E5745EBD111B19C0E513FC143B7F6A3547684F24DBF74D4260B64FDA +0C82F80A4862AFE1A3E0E745325C58AD7883B8DC39D1FC553D5CF784FFC8DFA9 +3C9CACEE6691C250C5A193550F19ECA244064722518627A175E7330231E33189 +60A923A609802FE87C22C0653BFA5DEDF321EB38A1C69546BE1E2D2EF8148093 +EAC650FE94788E6953EADAB4BEB4380FCCE9B5D904B17CBAD414DEDA8B45CDAE +1EBAB3EF02D5B4BD97E52CD52AFE593C354B9345FF129917DFEDD1CD2BAA786D +D9D9E9D78020A922ACFA9664BED724B714BE339F50AA2F9F8CC6CBDB7541ABEA +19C873E538173490B13AB8807624A4FC8130F832CB28A58795B16132D1C09261 +903EC9FEB6BF8F95E2A879A2E0DE661F0D500D9ED817D57C70579A755BCC64BD +443A57F4D22B54A08D6DFCBEAB45148908AAE6E9B60152C9B4746164F669558F +CE46D0B42A080807872EFB53A486A553C3FC2D180E14F4C56B7A4D3654B31F0F +A3C94FACC71F98E9490DCF959EC7CCDFA25165223FB0CA543F3C0BB83E1D9ACE +01ACFEACF55F3AE0D841442F53F86CE15438A8B94A25156CCB7EE66C233A9B0A +0E3EDD1B77E889B9E5F59CE42C6766C5D1D9A0A0F5A51E9B072954C3F27711D0 +527C7DE0D046BB6896F5907B84CA3964BDB650B8C786637792053B7FAB907F71 +3074A9BEA1A2973BFE1BD84229F9F42BB378DE4D651B296BD0BF3D9246A5AB9B +CAE8422CA31F50484A316FDBEE55188EF2F4A8623FA842B9DF64946E5E3383CA +EDCB2A018E0F8B417E6C64003B97F8B98C2A601A76C1322CFB0934CCAC3E7F0B +B5793B266B83FE7EB48A381751C895B9A57248B8A5F7EEA59111532C96B7BE2F +CE6838D7FF31A192C8A1A2D4C201E7B93ADFA33091BA8A957D3DAE33E4251820 +434151FF5F1592DA4C135CECA77354532B1B403868EA4E6F24D4EC051E691C62 +BBDB75D120E328E68F1F264FFCA08D2A0093B1C31C4DAE1FE619688059AE32EA +1FEE7BD98CE0F53B76E4879991EAAF3A0D20641848C44D1CF50F9E298B3BB482 +BB7645A3828435DCE4D97A9195DE6127B56F8567D9F744001302D5D93EE0671E +924D7B08134D3BEC1BDE2F603A9BF34C837A928B1305B186C7508938BAD4FEDD +D92E5A806C5CB93BC023A37AF1F0F21E69C7CAC82447694695C153707239B140 +446762D9F6507122267E69C4F8F21418B87797F7A8CA081064B8EB7614ADB2C4 +BAE8762B4D1CA1C473724AAC9CAF8459A9092F96D95E8AEC7E77A8B4E0B5182C +EC6CF86DF891CFBE8ED92019EA2643543C551F404F974CD1B95B3C13363059E0 +FE0D9351EE17F8FC39653B0E4110887CC3E3530F4980E3082DF53EEEFD4EFDA5 +7B46112BBA8D2C0CEA79FB37098D860FC2A700B4B092F6ABD981A594709221D7 +8BA6851E036C4FAD48FADC98B04D36180FE15B467D791698D7D685F71D481220 +C036C69636B2A3A989226F2EA3762B4C7C72729A2BC9F5A7B0E0E0ECE14CA727 +C82DCBDAB2762274E37D8B871B2472A6ADCAC79276A9D0FFB01ACFB02CB4EEC9 +ABF5A8C041B28813E6150DFE4131F81DC3846BADD5017CEFA1D1DCCB5847CF51 +9B4C0706F0888709BC949CA22BB6EF308C22461CBF7FF62D833269F46AACCD7D +A7CEE82808961E7D193EF259530D4B4BC17BB621E3266FDB101AB5A0737E77FC +7E878EFDAAB9AD80F29C56826CDE466E6260D39A2CBF5D6CA0ABF812B4E7F954 +B1F6F8FE4583D9B8AC9F32FC9911152BE401777513FC0E35A691499687672ECF +D25036DA2D1505B9EB175F345D28FA5B1360E4C533FCB42C32C6171DA1F427B6 +1BEA67CF0B91CAFD1FA0EE61B939ED877C9D12A8B8B2E79202207F353A107041 +91F6D5A5B19F6144CB2C8A91F5033D9930FBEDFE274253B18A9C98DBC2FDB743 +25AACB2C24610B1E61D29EFE35562FAC37937A96797BA4622E3A2E31BB016069 +E6561FD2D13647A67D4E51AE7655A800017DB6D4137018EE0A573B95A499F07B +F9E3E54C3E1C2CD9ED772F509AAD3830A766BE175746F139041B28EFCB3A0C69 +CD0FF8D3D9A070070AC2BBFEE4C13691A3E855F18039C3851439845D410D4CD1 +7D0811801E8865185A35D85A9FB770A4241C9145D4DC5550640CB9D0632D7EEC +50CE1F49FE4D48E69C361408A808A8F6EB1743D99325AA23500FE6579A70FB6C +4C194970DF4E1DEF310105A625432018A4FB12D781BE104FFA1BAC43E4FC19A1 +74FC8DE4D75188EC0745991A89438DB9F7F80282115839549F700980BA6F10E8 +B5E4092BD0F1B96B5B6CDC8B18439689BB85A9577F699C709A8A91E4AE3DC261 +63CBE2C4011B290D718C375D83F464AFAFEC154441EFE9B23B0BEEF1712494E8 +CAF6F4C9487F23DAACC2698E5ACA1D8CDF16846DDD60F33BB09365D1FA23F41C +02391751CB66DF1C4041A25F3981C35ADC66B487E40A312B6E0B6A4357C6B0C9 +15B4CFD625AF0EF256A084AD095D53B260F706B460C7D466780695C1F504E28D +4A1FBD93AD11870F7775A30A55A3ED24E3FD5E9A93F09E2C9AD22B7EB547F710 +736C22C1A25E80CD75E7C667EC29350CD47D67CDCA260E8CB049F5F651259EC2 +184A12DDA26B59F29609633507B9E57ED6A34475381B7216303F23E8 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifArabicOne +%!PS-AdobeFont-1.0: OmegaSerifArabicOne 001.000 +%%CreationDate: 6/03/98 at 9:43 +%%VMusage: 1024 38500 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 701 299 0 +%%EndComments +FontDirectory/OmegaSerifArabicOne known{/OmegaSerifArabicOne findfont dup/UniqueID known{dup +/UniqueID get 4250676 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicOne) readonly def +/FamilyName (OmegaSerifArabicOne) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 701 def +/descent 299 def +end readonly def +/FontName /OmegaSerifArabicOne def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 33 /commaarabic put +dup 34 /semicolonarabic put +dup 48 /zeroarabic put +dup 55 /sevenarabic put +dup 56 /eightarabic put +dup 57 /ninearabic put +dup 58 /lamalifhamzashortiso put +dup 62 /llahshadda put +dup 64 /fatha put +dup 65 /kasra put +dup 66 /damma put +dup 67 /sukun put +dup 68 /fathatan put +dup 72 /fathashadda put +dup 73 /kasrashadda put +dup 75 /shadda put +dup 96 /hamzastandalone put +dup 97 /alifmaddaiso put +dup 99 /alifhamzaiso put +dup 100 /alifhamzafin put +dup 101 /wawhamzaiso put +dup 103 /alifsubhamzaiso put +dup 105 /yehhamzaiso put +dup 106 /yehhamzaini put +dup 107 /yehhamzamed put +dup 108 /yehhamzafin put +dup 109 /alifiso put +dup 110 /aliffin put +dup 111 /behiso put +dup 112 /behini put +dup 113 /behmed put +dup 114 /behfin put +dup 115 /tehmarbutaiso put +dup 116 /tehmarbutafin put +dup 117 /tehiso put +dup 118 /tehini put +dup 119 /tehmed put +dup 120 /tehfin put +dup 121 /thehiso put +dup 122 /thehini put +dup 123 /thehmed put +dup 125 /jeemiso put +dup 126 /jeemini put +dup 128 /jeemmed put +dup 130 /hahiso put +dup 131 /hahini put +dup 132 /hahmed put +dup 134 /khahiso put +dup 135 /khahini put +dup 136 /khahmed put +dup 138 /daliso put +dup 139 /dalfin put +dup 140 /thaliso put +dup 141 /thalfin put +dup 142 /rehiso put +dup 143 /rehfin put +dup 144 /zainiso put +dup 145 /zainfin put +dup 146 /seeniso put +dup 147 /seenini put +dup 148 /seenmed put +dup 149 /seenfin put +dup 150 /sheeniso put +dup 151 /sheenini put +dup 152 /sheenmed put +dup 153 /sheenfin put +dup 154 /sadiso put +dup 155 /sadini put +dup 156 /sadmed put +dup 157 /sadfin put +dup 158 /dadiso put +dup 159 /dadini put +dup 160 /dadmed put +dup 161 /dadfin put +dup 162 /tahiso put +dup 163 /tahini put +dup 164 /tahmed put +dup 166 /zahiso put +dup 168 /zahmed put +dup 170 /ainiso put +dup 171 /ainini put +dup 172 /ainmed put +dup 173 /ainfin put +dup 174 /ghainiso put +dup 175 /ghainini put +dup 176 /ghainmed put +dup 177 /ghainfin put +dup 178 /fehiso put +dup 179 /fehini put +dup 180 /fehmed put +dup 181 /fehfin put +dup 182 /qafiso put +dup 183 /qafini put +dup 184 /qafmed put +dup 185 /qaffin put +dup 186 /kafiso put +dup 187 /kafini put +dup 188 /kafmed put +dup 189 /kaffin put +dup 190 /lamiso put +dup 191 /lamini put +dup 192 /lammed put +dup 193 /lamfin put +dup 194 /lamalifmaddaiso put +dup 196 /lamalifhamzaiso put +dup 198 /lamalifsubhamzaiso put +dup 200 /lamalifiso put +dup 201 /lamaliffin put +dup 202 /meemiso put +dup 203 /meemini put +dup 204 /meemmed put +dup 205 /meemfin put +dup 206 /nooniso put +dup 207 /noonini put +dup 208 /noonmed put +dup 209 /noonfin put +dup 210 /hehiso put +dup 211 /hehini put +dup 212 /hehmed put +dup 214 /hehfin put +dup 215 /wawiso put +dup 216 /wawfin put +dup 217 /alifmaksuraiso put +dup 218 /yehini put +dup 219 /yehmed put +dup 220 /alifmaksurafin put +dup 221 /yehiso put +dup 222 /yehfin put +dup 223 /lammeemini put +dup 228 /noondotlessiso put +dup 236 /vehiso put +dup 237 /vehini put +dup 238 /vehmed put +dup 240 /ttehiso put +dup 241 /ttehini put +dup 242 /ttehmed put +dup 244 /ttehehiso put +dup 248 /beehiso put +dup 252 /tehringiso put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4250676 def +/FontBBox{-68 -584 1096 1117}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C673600181FA406F8EB56A8316F8647B842 +3AE588E35867102682AE142A8CA0BC2DC8F4ADF8E65872876F2108C3E3E307CE +1F9C5B5D1EA8BBD559658EF5023880DD8D8678E6F06666667AB78FDD2DF16168 +82CAC672ACA700A0D6CFFABD2D9E8319809F8A27BDBED7D02B33D144D5DB7511 +BBD11661C44B851687D0B192E527C7EFF0270939D0685D3F8C0CA9F2C232307D +06D5977F78F0FE65C739AD74ED98A9450DFBCD5A2F28897D1875C1BDC66152D2 +8DF231D7D7E6C5084FB2237636AB2466FEC8FF4FEAB0F4938110F0A4A652467A +5F6388FD656738D88982AEB30D711A5895D89A0F3CF62BF0DD9E6CDB49FCB9DC +10567485BBEB19A29130F5926B81187B3C64C428BFB231BB8198894EF7495E51 +38D8E3CB64BD1BAE789DBC5F1A4EDBAF1142913CDDBA29BEC89707AF09E137C3 +3B4263AC7BD4D00A8749A91FCA7DE199CB7EE8CEF7B22E01EAE519124B99547A +01DD790D2ABB9AFF072A80F5A99E0F56D6E3B6EFFD206A0DFACDC758F6EDEA58 +EED456ADF7BC19EEA37540878389D1D30063C0874BFE104022ABD938DAA125F9 +2CF6297CEE53F54FA26CC3950A2BC2832D2BA18E4F563D1DF5856E89B93C9F79 +F5775EBAEC2DA428B85D62E7548A046DA3B2D37D683FA27B51701766D97050D1 +0320DA75E0D9054F74919D5ECE71AE64FD8B0BCA41BD76A4BECA6B50EEB0A972 +40CA228FF73B62296E35E903C9BAB54C7A024381D9B9AC5A39D1462422419596 +781C0D4E2F7B57215270A912A9FE9C377347CABFE99B300466871A8EEA0289A1 +79049D900814623F97D6D043D7A3817288201B3A872E697E4D07E10A556164CA +83F80E3EE992AB41666ADC003C526A31E82E96046448C039025846F7429D515E +56A1324C55E73E38FF48F0FC39190D5BBC57DE79AD0CBD22308DDBF64CAF38F5 +613DDA0C4165BDBFB84FA981A257F6651F6A448AFE5F7E13D6E20F68B1286BC4 +7DC777436A20D3FAFA1AC51B71B64549513365760D1B821C5FD515F4C8D50A1B +C6F11748DA1426A7A78471090183C78F4BBBE81D69E64BDA170396DAA4602552 +607A16AB6860C1EE1ADBFBD578B1F13F6AFDF7A07ACE06172FAD38EF9AF97AE6 +E5C0E25DD3367E37DB205D96A5AE9C49796DA64F7391C77A31870E9F553A2F48 +367F42DF58B70EAB2C5D843209D7B96014523CC934B4D61ADBCFB4FD277A335E +613E15926EA8FDD30B0B3B7FDF50916F716B91BD869681696299DF92F05D6047 +E3AF00F3D0760FAEED53E9C54FC1EC9CA3AB9576F7D162832CA4D899C544EE79 +FA10989EB7382D300C844250E22F8875B81CE1C78EAF1C18422A4C34A25DC38E +20BB0699516F56E713FAC322AC21775845736335F6B6CD2EC282A36CA5D10DDE +7CAB7C63BBF2BB2F7E857B55DDDE90097272E3FBF9E20D698359B28523CBC0B4 +19486F2AD8F67C690CE24D576F2B48192F881EC56D1365DB80426675AE196F84 +0779E5ACA5929B140C2D1EFB2890A33CFD53117CBA36856CA82A44FE6AB4F6C3 +3BAD6D86B851A50357AB4F2DB44C75C7B772E661DECDA90CB39CDB0DBBF4CF12 +ABAD772B507B72E15DED83E913576986DF98364412E31CF30B5D4A4857A4CCE0 +CFE497A81F35859F2214F21B6BC0707B1554B91B4717A313B6771C04A0FEFBF7 +FDDD8B70B5EFCF1352ED26C364250350D26E28BC0756BEC81F53E3C910C92654 +304F69DEFFCE8A0EDEBA6E9197720A3A3908D62F9CACEB2578A20B98D21CD7F7 +A57E5B1032694FD8F943389A1BB4C0A059433CF0B86ADFFABF8B0CB32E2A3104 +B05EABA58DF2FB2E45A86823FDC890A390FAA89600653EE250C1C5780CE16770 +63E98763055289CE68B7AD3C5C4EA52B0EDD26E17677BC008297AD529FE29C5B +BD155E50F3A4346DA9772CA1EA22E9E59ACBCF490456C277E3B263F4B524303A +511197E93D623AD33A468D78F2AF4E1CE1B2853E7DBD83D6A71D346B79A3C7D7 +67C148A12905E7B3FDC2620884F4B5FB4398670EBF6EA3CC2A086B35305B5ABC +EF2A592F0E852D32F6D21CECC9BDEECC5D5991BAD0427264098E711D9500B9FD +F13B62F84B292820871F947638B3D0451957BC98D00D639A1B74F5745AADE18B +896362355209DA2AEB5EF47CDAAF9D5058341F57F49BCA02DA60833BD834E9EB +6AB4FA4398E26801E6D9ABDDDCFAB5244B0D109742215998204A2446A3101C2F +2CE9A2FD7C456F3E63ABEEDDC3333B03F8EA6E02329345A56B5DD63CF886E2C0 +BD0ABDB764CE36EE7C2D677F5E66C458F9D96DE4945F80725AAD5D5C32FE0204 +2DBD4EE079AC98FE0B0CD315CFC99BCFDCFA8C4312065D1DC15D23AE62E024D4 +3043AA0AD1F324B40DF8312AC83211ABCF4B7FB261AC3A4749B85ECCBFA0F003 +C711C51D4849CB06155850194273BB3F144B5D2CBD951C6D8AE0E54F40BC2279 +ECD2F87587D722B51DD2988744618AE1FFDFFB2B6880C6DEA792EDFF815CB79D +CF4F128A7435472489FC31CA74B8EEC8C7756E5D58F3D07099087BF5F891A7A5 +5D2AF3A92B523C5E7FD889616F4A292B67FDE52EBF2902C77AAF2531C23C67EA +4B8D6D1F28BE4745891B3FD01490C480E3A95B0CC6DCA8FC2E4C8CA29AD7F1C1 +ED3945535A656F9FE0A89DAF23E6DC1D8496F37DFD64137DE31512D335998F2B +9E35141871B852EADF41DEBCB0F8476DBD04F5B20004E698790CF6FDA66C1E7B +F3E0F86303F618B99C057475A5B326DAAB34F2A028A7F1B7FFA0B025E916DA23 +0FDED5551AE177BF1CBB07D98061C0A99A7CF8DBA48FDD8B9A3223B5CD05C8ED +3B2B691846695651D2B8B819E8811B947B62F94F972623AF345FCC936C5866BA +B4BF935317FC72F3E458D7A1EA13B0BE514A3DD7678C783FBB40760A6F94B215 +10C32F7E8F83806765659A8160573DAD335AA49C16D63A6862C0124F68682086 +2EAE3F15CEFB4D902F05B663A86BC0E4EED59F8CF8EB3D39542F6A6471EBEC4C +FB8B18BE89FE8C793F53DEEB916850FA50D8648B7FC5B81264E6749D2E408256 +87948CC568CE12918B7841F689D3BD67CEE40622A97A7C36E9CECA956648E37B +E3D081B8DEA61BE629281502BD671882F779CF3B9941937C00EE70134B17A9ED +4DB36B02898BC4AA5F3B7D3B953DC1EE5DD42BB9740C261AD5ADB9873DB5B71B +EBDAAFD09557A3A039EB2E2323A289E3C842853414994F615AD77E89639E6248 +27D7643988A47AA8614A1406D61626659AC434C864DFEAEF2620983273EADD70 +FD8D2081DD42ABB27403F12EE4FDC16D9BCF3C334BB4CA7EFA9F07183B6AF3A6 +AA1ED00DEB6B4D41C5E434A4C3C54F0DE8F64C80162E8F3D548AC8C7AB2AC6EF +64287F627C1F4353CFDEF168BF25DD63D628A5AEB401921CAD51468D8C427539 +27B7A10153225AE197FFF100A73DDC0B7E7009C467B2AD5BAA88E69D706C4571 +BC3E80C5B2BF2E7A74052DCF153A49F83F61A2083FE10B7D3C71B86F33434539 +3F66A782FD79328C7F1A77D762FEF421087177986152B9FFC48542644B0FA1EB +A84B4C4CBBFEBE729C6713714D2F6943A9746ADF909A3E43038FC545B52809DE +5582F3F6713E08B2D45AD64A5C3A752EBEB41062B551F91DC2BECC731E530E91 +1D1FF0C1BF0233E11D680E48D5A8314D483C1F11B05A2FD693B71B8D3290B8F7 +56805871F9C19E124F6ADD16135723C9B4B6EF7455F10B7C184A40FBDBC87138 +BB57463C7A29441E8A6A198951D6419A718B711D6D74F52B849EE20DF6AE2159 +C4F85BAC6743A02FCF45257AFF3DD6166360F909543695F857A0C39789D7834C +C31B026F4179C1C4343BDF27A13C89CD2F86A85CA07E62FAC978500E7BCAE7AA +4DB36882D1D14E9EBE991B8725D160CD541DD0A926A537CC79EAD98F35E027F3 +3A1CA89C848B58E6A8FC078CF6F0DECF8B6CC268BCF2C384889CD8A0EAA6F907 +F41FE2B4EB27EF587D02CCA7C99062E21C73A6659BA21B039DE56443C9624BAA +2681C54778D3276BD5D63813BA73C2FC23F024FF77519606D771E288B7E3A541 +34F91C7ABFDDFB90F3769370BD13B3F63C9F8535C1F6108536C8E3AFE7C6E585 +623BED711E1BB197EF1F217317C72459D20664F63CA98C11F76E0019CBAEBC8F +D46F201D5F8E75C47DC9104E7EC4742A3125D20D588B47F35C0AFF65C5F99C85 +3507DFFC771547E40D41F2C36502E8AE3A604EB607CE03683AFED2AE49CD8F3C +53218C0AF5101377E64E0932A29384F0AFD59B7D4E724F2F9FC649F220A658F6 +F776434CA053C1769A6BD7100904F557411532B816E25F433574EBF2E0496F39 +F3A70FF199B2BB02F19F5F0BEB2FAE3E2B3F93A3EB0EF584314B04FB376986A9 +7DAD869CC48AB8AB28ABC39A4DAC3E130CE5989E609E78462E92ED6171B1A7D8 +08D2F2AB17AE77E83931D9F3A0DEDE5698783B6A86619A92DF032FA4769FF25F +45D68C50BAD4A3F3F57EB9EC8BFBDE17DAF1A482B9750C84FC65C1A7FE20C3BD +545A5DD6D0680C4A3CA71AFEF872CD5A0819E1AACC5E865C2428A87B8EE5DA56 +CFCB642375B9F9DA7FA8F4272F8A0591FFD8FBD5ACB3D79E9E4BFEB6249EABFF +596BE2EC001D65BFEEDA394FA5390C1BC1CED698514B3ADAA0B0578F5A0602A3 +9394108F51B86CCCCD034DC7C77AED156CC0599FA3DA330A30CD7AB085CD63C2 +4DE494915ECB5C47F06D2FA7CFAE2FC746E7AC7AF7346906A22CAE8B3BAAF2C9 +AA51DB24C0E5A43383DB7E086BD9FC38DD297BA61C0BBAC367E60DC2D6F91B92 +BEA6D1CCAA646B508992F099BD329C427180BEB7470ADC52936433F11B40DC87 +A3A42EE62D7494D1FBAA61C6AE6F7C0642DDA30E54321997DD880A8AE6A41B4C +BCCA6E63921F42133597A5CB760C7B7C3A555EA617217FEA7867A162516F8E29 +E0572E32E7480F13E3AA977C02481F1DA4A6F343651C75816556301F99BD0300 +501E129CCDBB4B7D360CAA31A346D20EFC8292D8076121CA484164A588BA8EFA +19E549A52D2A5BDFDDD68D6DB97C098E3619FB178A0F5D479A64E6C384CF58BA +BA97C2A4CAA6D561D6C1198E7E6E0A5B059B115F250D92710D7F765B270A1013 +4FA87E953EE1D21FA82BA903DFC53BCB3DB4965A18D5167138AFB940B04CF897 +8B895BCA47F1AC5EF0585A011358C4660E5578B826180A34F8351FC25A3AF877 +FEA51F94687B971D6BE03D70D5775E4493B641857294C5F2FFF5789EEE0EE72F +ACC1C5BB8D93FA7684D10F53A2088A690ADA6E7A1D6453270668BD5E717659F3 +B5BB6F226D3A5367F3113C8D087FC09A9E70CC08597651A2DBBD92BC92B77090 +9CE00234E09555AF516E38D41F014A7B1376A978AA9E0E43A2C1FAAD37018DCF +68642E5368EFD09F59DDBA1FDA9813ABF6D6D8BF138350FE190DC73F28431AC4 +9482DAB2B6AC2923BDB821BA50A9E1862DF174CF1043AC71A16EF968C08059A4 +1F0CC9F1F7D3810CC912EF09516C66D77B49DE740BA1C2E0EB84260FF095C7C9 +33D80531B5BFF3D2ADD1966D34419602EBAE34C0737B1957A27B650A31B696E6 +353F01BF40ABD4B944D8EF3926E873EB463B2A1C24C27159241872A5A07153EB +C0E84DFF19D432C0C8170C2C67CCE5A8B909FE230B43E223969B4EE5A4A21B22 +7750A5596B2AE6B2CDA73B23604BF14236E4959D2C5B67794566225CD9D0603D +F5292CEE0937A3173C94D332C1BDC642C6F25A7AA033CA29635625C362461B0B +D438EFD9DFA231AC50BD915614D1A7045040F48F63C5B75DF2B1A1C2963EB475 +6446764137B6185F1729CB748A5785CFABDD5D390D5B036844B38D9C3C959CA1 +153CE13D5386C7D3B28BF507C0D0E8D1D372EB131364BEE67AE931D65B6368AF +290F4F3FED877FECA138C7AE8897DD2A73F73DD76EDEC8FB93E95C67431A8637 +152F1EE7811731D9E9C95A1689ECC4D06AE63D0E78AFE451B2D9F6D88C85C6B4 +C8D75DD7DA759061B11D25100CFF14D8B7610ACE1F396BCA41DDE80B188D4079 +15DABE0E4B09DC94FDC504416EF37F67134E9157517525F978679FA73F82E3FB +DC5B7277C0D334C030A42A2F59F00B1CD894B3907A309CDB7DFFF5776A2E9016 +FA6B4AA5B9A07CC189628DB9BF011F6F7D8F88B203FC314A360DA40C0E834157 +BC809516EFAA63F75F3B317B5F94F1F620FB981B019DB20905E31D05790F1ACB +A90FD0BE43D56B5A2DE04570E72F4506D7BAE332B87152A2C96014569E58025C +A122E1394BD780C56AD5C2952244E1BDACD7ABB6F2F91A749E9B6500A1A95A4E +FC00EAE179B274D860252ACE27FF77C7C85164697E87DCF16B27D2BE96333D97 +FD4AD76215236A373C8022B99C0F62B0087EC8524EC6833DEF26E58A5ADBF622 +04FE4F3B08F53E8470DA2FAA5CE80D0CBBC2E6AE5376672480A60B640EE28748 +D552CADDA433CA8DBDD183654BFD1F119D196077BE7CCD5E22116A56A4D170ED +EDA70CB75A076F2518399239B1A133EFCE9BA2AEFBA00F5083FC9FD21100CC06 +C7393F89BD37C3F87599B55BED1192B88C582633CE1C95802A2DB0425934F331 +076A2087466A0036F7BCB33EEC12387364335EC0B24A48476D645EE77D254242 +68F8F47A70567AD55A791E888C0D8895A27EE3E494281D20249E2D2F8F869B19 +62A2BB36CBD14163A17148E20AEAE05EFAB0A72378832162AA53D50F283E10B0 +FA721A36A4A3CB5D5C73003AD82D039194486EA18D4B1852A7E7F5F13AA49E5D +B66F81B385FC6808CC653FA7D15109AAF0107C622B1EE8B4CA02F442632A48B3 +A2543D5D0177401CBC839FA3CDFD92593EC0F36DB23921D48A60B1EF9CB0A8D9 +7763BCD82B65F7B1BB11526C0F91E8335480EFE186ED1B57DEAB353ACAC84F3A +915027590007F82CB2BC9AAEF8588D2DF6D8C287CE91B4BC4C13FDAC09D659EB +9DAEBA14335D703E44BBFA891A6F4C692F169C330BE90F4069098387EBA00F39 +D678790014DBA1B9B3EA8DC476DE7B4FAB16DED8C93A2B97550F41AF89561C37 +934B84E043CE773F1C7EF82A8B0C440C14CBC3566DBF61338EDC6F7DB141F49C +E9AC8322713C42486C650EEB1C23CD5010A724D7B811950668BC9AD2347CC8A9 +26C68BFB4AE21C0EF2164D286F449A2939237CD60FED0A02133955ADD177A4B4 +F1366999604654922B365D08107A681BE17F84DF09DB2B99AA9A1A8F05F4D855 +97B9642668FF14F0C92F0911999802FD2A9F69C07E78A74C6B60430E9B4A984E +3A166593CD8650E9D99DAD6A7A5E506DBC89762E81AFEB3C34448BD08DEDB2C4 +359746EDBB228A146D7B26078C78351737971948530D129B1CA55A853B34BB83 +BAE026BDAE8E79FE166D86B8323A884DBC39141055F1018DC393CC8C5AFAD04E +12D7768809C353171651DDCCB443F0E71D7F9430A818CE64F672810D67F791A5 +82CB2AB2BE07E826DAC6D815F9398DDA20432F6FEA6DFBBD7D5404C9D5626C49 +2272ABA4EEEA0E1CA887FB10F4C3B78E30EE49D631D4188CD090A11E7F5B4069 +09623068D3BFC402BDB0A7334CE12B1F4D632932BC93EF11EA3ACB86D566BEBC +9045A037843AC41B94FB207B2D9FB45D144421C0CFE8CA2DBE0E19DD154E8602 +B8D44563A151B2E9E58EE95F4961A944491445DD0634F7BCE84E86BA9F871A44 +BA9B0FDC3FA7F3FDE019762F2F754C24612F5D1E3E8EBD8512CAF4F943A170F5 +C253B046026002D4E892171DFAD80A457B35D1562CEB8F9EE92F66B3930F0945 +0023A4BBD1902ABC1C8ACCCFFBE2946087FE8296C4659D45925D010AD61D0015 +03320FD96170FC685DD620A74EE234B3EE770901B64C9E61260D6EE509C8D24D +FB08466FD0EF050AA3B7CFCE771780A813F1554490C3869A9362B86E3266C314 +A447EEF7035545AE1F53220F6DA1D0A1B8D7988BAC1B14804EF14C10281C407F +2617821EC3B29C083B63D9477835530765E5C500484F4A00AE085D611EB537BB +9125A20A059EA7178AA1AC07586C32D2C0EAFB8239B9BAAD612AE5EF9C3B1ECF +D23EA9A1C0F8BF910247BD8B308B49C12E2C93B0CDF28CBB4E8755C054E41572 +4156EB406CD398AD3608B852CAAC9317659ED8A5CB0A4F0C41FA7252D3060ADB +B935BC8A46BC6534340FD9D07B45C475C4411F38889F704002732D1603C2FE5D +6395E97B0F3AB99A9B6011A778F4FAB66859DE65A0631ACEB213372686B1FFAF +56D6548681CC0C0A2D410EF6EEA47E6C499C9F80FF1B8E40BF6A57D348D53E68 +563B2E6EC379CA3AEDE5344A8DCB7E426BD524058ED8B20ABB6F1AFA70520625 +D07A229F1E0B9BC8FB8BCE9F8795A721AA39F63A65759C18994E537B6CE61C34 +76790CCABF3B2DA29A8B3B55AE7A5588A89B75377DC883CDE282927A441584D4 +9B0862241E0643D48E428D239CE84F38BC1E9D1C9959A4EFD1825DBE6429F9B3 +49F54D57D3A4F92AC241CEB590C159081D242981D79E49BCFA33F592042BB0F6 +B3AE4C0DD62D7EDFD6A27F9D36959816D63EA03F8DD228A4AFDA4CE7561DF5B7 +DF6566C9258D146A9863DA53C76A7B73C7AB80F03BDE33607DCDE987D8C96AA2 +3D4DFE3945E165D3C34D30835D0FF4E04BDB0362E1A8988BC0F4450828885124 +F87E8468A547DE7A4B67751E9021299CC9B5622FC35CD587B8FD413710D88AA0 +8B9832EAD92451785E467E017140C74569551F728449EC5341C47BA0C69CEB4D +3557973AC5A91676CD49F005896C2BFBC1DECDA890D03197884BDA650A7960CD +0A53BE9229151C35C662684E304E7DF420898D1525B686E464B9E604CE136D88 +BD42AA5C8284E42658AE948F8704525B5650600785C7B52D3302AE02E114F61F +3887E220956FC83524AEBDA471563483D3F852E1BCB90C8230939B04B04058E2 +A3A357B43CBAFCD10744BC66C055328A07EE288D01F73388B6584D12EF14B6DE +A3FC516A74A8A23F7C3B45B2F106E868E849763D5EE1382A8FAD1C0B5E5ACB99 +A44CCE84E94BE0D6E38CF617D58EF4D82536268EEFDDC6FF0DC13CEF88D0DD3A +1003BD6CA5BB12FD6EAD41E3B59696764FE47A6418371D1C1DE8C6159619BB5F +9DCF727EACBEB87754075CB49B951558559A7F375E97B33E0FE829C307966AB5 +6C5317AAD821665F1AE0E4C0A552132E876ABFDD8B66DE4FE5A3A4E810DF9FBD +CE83FD02AE547B3576F18EBE13B4825F2866D5C87EAE4163533B7E4468921733 +3ABF08F45FC632C3D805FA9A892268154B937CB303C5E4566CF9EA979661A562 +B3F3C748B5D056F3A536ADE8CE087415378C7B0ACF13283396115F3F0BB2CCA3 +08E2FA919BC42B4908AD8D1FD1067388FABA2A48B3FDD3E1DBF11E453A3006DF +62507A18F0C84ABE22E357C0DF55C3ECC1B95BD05C35253AF813F04CFEA59317 +11007AB8CB36C38A6E996710EC0661C69802004D4F64747005951B9E5B428FF2 +14BB0FCBB0F4589ACC6DBD8F157064EF8F1FE4D53D2DC3C7081AE8B1BD5DEF5D +E5AA7DDD75CC23513339AC7EAFA9EF71F201D0A0E26059CB95897D9162809342 +CAEB536A4655A9DB74F234EDCC8F52A77B80CB4436D032139E222C848C6BD621 +AD816777FB9B5088E7C10C741E3C60C62C143B451E8FA1F706F5B713F5465622 +0F2CE39A2D1AEC99CE5AC0300EB69B8C64D2488FD496B39E8CEAB6621DF75406 +6FFF7BA9C691F530472602F1568D88FAFB8D2E363C37D04393676A128048F0B5 +2DA20CA1F4A018EC6476D67380D47DAAC84A69306F64BD13EC27A77FA55F2C90 +1D9ABF31EF460B9D01DCDFD79FCC328E782771DF4D1FAE818F63AD437F31E7A6 +495CC8264AA47AEB80F1CF88320CF44088B0CBE486B8EFBD839ADE65626D4340 +6459445AF83EFD3939AB4788FAEDCC1ABD942F2CF4AE90EB7E6495914B5EE6CA +7660AD1EF2073FE6E10A32DCCAF57433E50A75965D39281742D50656741C0FCA +6A69E03412A02046893CD5010720380DFBB57F532F8C1113B32CFAFD9C7E1D52 +A59EDE400E485BED386F1026981780B5791C23463094EBA2CD5BE5CEA217638C +21CDA8EEAE3FDCE4EFD9F318ED142096A364EAD734E82B0EEB9D82AA57CDF81A +B20C98D572240075D3204E87F36B256AE6E0131D351E3B592C341320DF8527A0 +1FBA378969E1101F28D263C77715A45BFD869342229B25532BA8EF1A13E13914 +F2E0FC8C3623FF1F9018D30E10468CBE70A9C5A77203803B5ED9E8D231B14BB4 +6B1CE7504886AC2324D3C850937679C18E0F82BCC5B20409F8A5ED605340DCE9 +BE55C7D347615BBE596971D8B9A05CC57F8D617B96B85659CED6C6483A0764EF +D00E9F543E0826B602B8CBD161792D3FE659E02AAE33B0083278637F232C192C +31388721DE3D8E4BB47C5447CB734483D3319F173A659269F049105CA35511B2 +74E222B6432D178B7CCE7E70F1115395D0A0CAC85BAC9722839A07C7508C6033 +757D387099210BAA0DD8085F4892DABB53AA0CABAB9B74EFDF4F3D4B31CFDF10 +19B117A18E3531901273C9831DB398E63D8CC994A4179E5CF6C09F8056710820 +0194E0B145B077FD3C8F17C5E2C69071AE9FBC5C29CF974A349EF8FAC8C5FEFE +E5481A89D1755D7DB84D2AA8F7B4A04AD95FB6CB9223D47E65C8153FE25AA3AA +0F1B197C93757D9272836D5B062F9A0790C126A6963C2A651B2CEC835077BF5D +A0C24A9423A5CEDDEDE8F8CF2998B495365F6532C4F41470443F61AB9D446D91 +49AF6AFE5CF5898B4FBBAF88B65727537F28AD1330B680FBC5CF5DA97848E42D +F2D159D3E9D163DFC9692AD766EAC98353A6748F62F2FC45CA06EA4F444A62AC +0E93869C87B0C130B4CC59BA548C8F6924CC2BB950372E828285914B9578096C +F89759B976F3075E34E0730364DB52C2975910C4197CDBF6253B9E751382081E +911AC5DCFD74864659167793D7BF0C1FC25E94FCCA414DD90BAAEE5C9B716040 +8627623CB872E3D5338F1D1C3C11D885070EC33ABCAEF3CCCED0A0775C66B9DD +27675495313F789B10B7F7198C2FF509B0A1B40D9B81925B285D9123BACA93E2 +0F646B433714F1F2B1D3B188E37A39BCEED2F2D804343611DD7E3045CE1C9993 +05F7D425B72933240A3D8F903D093AF60BAE47A62B669A95C9EB6279C3A06CBA +35B6E17241CA8BAABFCB78A1B9B1CD3578334EDBDDE30193CD077B1A9201FC87 +F914DE74E406D508B5222A41346306395E53B621577EDA344D65F1A797D5CB80 +B8C6592D7DE93091CB098C0F23EC9757207D8904692690DF6C1BAFDAD8FBB467 +1BDADFC96C6FD4AF3A4526E13470EF195B83569FF8B8E9756D4C5B0381447F0D +E22890B37F48575EDBDE4E43D74333D02D9325EC4B59D3B0EEF08C111A44129B +D601119207B9421BA2FD165A34335BA9E00CB3B880743CD80FCFF1F247A4BD3B +D67D9FA95C6B72E0FBC3186197F4B84D8897B7BA10D944063A5C7C71A9E0E785 +4E297D1227E651BF32062DA52DCDE83C7527E3B33BA19C272B3348A5C80A049A +2773BFEEB086C0C5ADD7C8482B0F94975C86A509824DA9A9A12BC016A665A209 +8E08776E20D00F2E7BAC7D30B2BE5E781804A4B9E9A285D764876A027472A626 +DAA35E25EE04FAE6752116DAB2B0FA0816E3AB7835D5221998E9C8B7ECED417C +390F47FA00E41BE57D098FDB22E0D62B0FC9DF03979FCA5D937662B49F3233E7 +77D511A0E672E554EEF0C2DA75D4B103CC700C3139A6A0E170DE31CD92801C9F +1F82CBFFF88AB6CE43ABEC3284E1885F4A534F68AD07405AE1863F68FBDE2D35 +13E476028A5294AE92206135224E9588D460765CC29E3B49916AD1FB97CD964F +F27AAB202378037B80B5B28F351246E1B993D8D7AF4E2908B35FE2234A5287EA +C06BE46A5173B0DBBED891C044E08D1300CBBE976EBEAB15148BE1CE940AF127 +2DB42CB927DDA763EF3D071F8438C52FE732850E3537B9938929DF981BA98651 +60271BE8E10F11BFCAB85CFC066EFC7DD7123915B43AF93647852532DDC958CE +EF1341EEA00DDD35E67072C0A46CFB7FB588D21E3FCEA12200D50B1702C34E4B +3F8494CD59791B60F93AAA06606482F34414F3BFEAFBE3ECC17ECE0C738E197F +A9769259EA06B4C5285DAC990303A1A1B25B101725A6BAABD5686FA8125D636F +A04652AF6DBD4480F39DD50BBFEC0A493A1DD6BB20E575F3D5DA3FDC366AA8FF +686FF011C19826382253B1B51251101C7B1FB2A64D13722E931FA58259FF3CED +12F68A18A7C464726C627200E95EAA6B35C9843EF681B374894F935623A46972 +569C5F0AEBEC263A8E3DBEF77C451E31D72A8F4FB738FCB557A67A07F9095E87 +6E82FF881221C40AF65632D233DB576DB1C6D9DD35D93E7ADE8E2FFBF2611919 +57D1787BF478FA0F3B960A37C76B46F5E744ABD050A423AA17517F76A50F5DBA +E8FDA90E5AFF7589BD9281F86C77B4C4781E66A3B7952DB4E78EE8CAB63976B4 +C55215176BBCB72BCA6CFDA4AAC65D1D0EB5615C7E93A66D166401451728C096 +E6EE4F4B0B3B5985F5D6C58D4720396C5CF60E1FF9BD5E4FE7736BA24304AE0D +5589C85B9E78CD0E4C2EC7C13A7A37D78DEBAEADCEE3D8BB596BEC0268CCA59E +6CBC556252FBC165D351E5814E4D741F3645AD09F0C3221FC69A1E060878EFB9 +7DEDF65631130845BDB375CB3ED79246A642E85AF909775250B7F64319C4B7CB +4A8320397325CF8786B8DD3950405CEE6D93AB521D5ED22587EB820C31303726 +6FA271DEF4FF5908810EB73F3D75B2AE5B2B0FC62831D269FFAB5F7B99F76939 +BC4BDD16FDAC230FB37711C1AB93FE5381A60EB3AC51467B665704FE019D9498 +1BF92F6A0B56A6E6600C1D116FD5337D0F875F76E4C101D565EB881E591D1581 +01BED6FD2B0700A361B03E71D09C42685B818D0FE7AD93173DA840E03706EE40 +329B7831F67185966BA8CEF84612C8FB5D5D8B61ED1FEBB642EEAA658448C7D6 +38B1C8A7679F9B89413F8BF0A7ED5A20F174E894ADF07ECEF60FAA6CE0075F92 +21FD07DBAC57DA4D361F75DD6D6924BB7ABE4A935BDD51AA8D83A243C25BC0B6 +8997B57BDE3B08E694F468C59AE2037790E72A82E06E648426E6191E44FDB90D +6C7D99EC6DC2D9E361C841DF770FA20A112F185FC891F13E56B5AAFF6E9000BA +57AC4096DF73AE7009FB1994D14B43A68FCDA7FBAD29EC2B38F79D3964938B6C +286704E237CE9747D712299EE3573D7C00570F22114748A0AEA56923758120BE +855CE6BE1B5B08771264D3A9105C14874EDB9CB6FD30FEA69994B5530D0D55BB +143180EF0BD9854169143F406281D8261532342AE0589624DB888DCCA238291D +4989D92477CCDEB8FB6E6503280D43CBF0283F96BBF761BB0A373089D93A0D30 +EE1C34EAA3E911AF58FB5A0D239F5E9251A47EBE4DD42339E1600458DBF01C42 +909CBD6896587A76A930E97C19EDD25B59E685155A5B13BC09D47A3D0379467E +35B15F503B460113F2C8894E3A8A56392F227FE0433E29D84CF516F19E1F24EC +E7FC73D016E517F33F543D3048005D0378C7F823D03830107FE4C91A36C0F00A +E5846C48BC2B5651BC4B3F19AFC39D84EC30326A36979345033D926F9B205CFF +8AD5BFC2429B40F0B8181D45FC9E8EA522F4F2C526066EC889A119C30EBBED6E +5B5B938F2CAD336DC8BEA6BA267774B3688ED79144A0DF959F521B3CA7A6D522 +78ECA65CB83C3B5FA29DE27E32A3934955BA2F5314903E28E4EED1B559C38850 +B819EC7FD83C2C9E801A7FA5820C316F1AAEFB465D1EA60C6AEAA19AD9E101A5 +8C3E8CA54E4E420C8845EE95B6DA01D64C92CFF925DBDD2473FFC46B25F74905 +740485B90335C43F8A7CAD03C3451CC163B4B0018EB32B07C08438121C4201EC +3EBD8E50E4E4B58DF9BDFE3B7F9CD52F9261C1B79D2B65BD438F5B07E73B31BF +A6261026258FAD83C59F5C63EF506B27A669592E8D4C20813A05A589268EE277 +01C72755E831C78E9E711A985FB25FFE518FFCC56D6F6A62200943463F6804D8 +E23D40A72169FCED750364A1DF23CEFF5138AB6D6915D21B90F5501254C50DD3 +8805C72817D275B81E3EAB116CADC1E80BD137FE6D855C0342E70A7E63A6937C +2EADB493A05D3E58F70493EA0ADF82F553EBADD4A9D319B59245ED5CE2AE5832 +19B1E732F66A9C36877C69D5B701BC3A6773B4CD6C8633F7726FA154DC579F06 +4EDE444159FD6128079EE435701A47B8C9C35317AA0E694296C5BDDD852CF5C7 +F26E20BF094932D7FBD13B28C7000CA8BD67E837455894BB3094A28FF51ABEA1 +EFE54F768C75F2AD3225A46AE783C8FBB495F1B2FE18E920B88D79EABAEDECD2 +6C96E118D5FB4B8825AFF388BA0CA05F3BFF08193C7412ED24F231944B97056C +958C6955A02186373FAAEB816641B30FD260FCEFCB918C5D8969A85606C14118 +A461242F3EA14D5CEAC61728B171D501D276CD0681386816EB9A3A3C3B80FDD9 +6BB55BD138A1C7C9D5E4705709F6841FDBF9C0FA6E533182BD165B385293F163 +B7B03C8964CB62C6999D99B31B219142E2C9D2051A21C138C54FA83ED978DA2F +7D04A21E4E98CC03135B6692287703990CA5734BD88C76721D45904B3B98C5C5 +AF7A35C944B5CD5CA622C389FF37543A484C6DCCD66CD791F372D461996ABDD1 +AAEB9768AAEB0D2840A6FCDBBCEDF12D147291D65443E213BB4FD2E904DFEA5A +62A67F9EDB1F3BC222E1981C9CD3171278D50578D4D462AEFCF76643FCD7F49E +EED85F7A4D4ABDE0F11F41C4F7EB5E474734C3F3D72EA2C3A86D97BE406ECD42 +4A93A6EB92CD5C0E8E1D6674C4A3E275E0D6801A7CC79136ECDFB20E8A26B082 +A38A8AA4C7996B048FC0CC687E842DE22022E28FA0DFF3F5321B16AC36EDB316 +5A35F626F2E37F64323AE473DCD802227180D8A3672ABB09C32376BB52A35174 +17560A8A8073EDECAB6A0CCDEE63682225F73D8447815E694F8CDAFEAF642103 +974F64763F2CD4C3BBF919C297C73ACECD3DBC89B59CDCF20804E576B03518E9 +18BAA153AB854FA5431DDAB8C4B942F9B5ABFA203755996FD9E203FB8E99605E +C3775155DA1366FBE9CC7A51F57CC09B39C9F5092117E1F95AC2CD3A4912759E +DA5C9F2866E9A221CDC4C41C006B4B431BC2B90DB1BA206837FE7C07D09AD6CA +AD6F1FD2C76F48F8452E6D126867DEF3DD13195861A8823717442E5E75938EFD +C97267F9D01D3A7B7DC67E92BA4508E08E8CAEE0939C258FFF5B1F271762FC4A +1F9E3899835858DED0225B34D2346464D6D14D475A0FA9CDE5CDBC99204B6B0E +33E7074681A790D7F7CAD2F514B2CAEB4DA2D574B900A8F52A40A917062315B8 +C25B6A47648A23B2D92D8DBB113EC81CB6B14EC15EE6F789BEE1497321F41D60 +2B2EEAC854F3800794F26E0B70C3BD6EA8D741895F7C2085892B6C02B248EBEA +00784D1300DCB5A22D70B6302BAD7A3270E4373F81462B60053208F0F706C2B8 +7CC3B29F1D2EDA952936E33039A636EA6579FAFE3013CB91AAB957A0AB9B5DC5 +B67EE2C43CF292CC658D2AC2CC55D7D76205C6089F492209D0A6C8167AAD7AE8 +92D24CFB105769F5DCE3172153D4DE31833451D91AC31F5E822856F07037F9F6 +A93A340D44293FC5AF45D540DDE0916F82F8D76095BDA2C314A2232BE045FF1B +70FE00CB0A9F3CE6F9E4511D2BB3195CC0FF885E17FF0D85F0FC2FABDD5EB7F0 +FCCB23221E0A9A5E5179560D18AFDE73156F5717039BF0F8AB5569B7CB228DCD +AC50F6564B075394FA3C5025A775292F322045B9C71B857A5CC4DCACAA7C28AA +2FEB391C81686EE67CCAF4486926A9A5C3FA3532A9EB59B19CFD6FE109956B56 +B2177C64C72DE1210BFFDEBF8700F21C1129EFEAE71E5B03F0CE90151214D331 +0FF341C12D621E7616B3C51922C4CFD2871BBC5FFDA0804B5322BCF34706FB64 +D19034FB1C449B1DD9C402DD389FA2282427A198EAF357D5200D9FBFA9F41273 +345D8DAFB42C18FEF7CC661FDA5A4D1948D73A2D7EC17CE6FC619360BE1DCDC5 +6C21AA23CCE82845D4E5B0B2D755FAAAC9C3E5DF8A6B7C4E66B4221B175BDA17 +F52681C0A833AE20335B74D815A855A3EA519EA3A132420B70E79D979C753AD9 +86616EBC4A1A9B6F428B1A99A202859358D84098D79347D6F3EAF3B8A224681B +C4BFB9378B897FA9625A98663A08E466347E899153D14D0E4E90098408DBDD96 +5F3E8550F1E98CA9B0A847711FBBB87BC8390D80ED8CADE175E556C3A42E0248 +0E6B2C82D6F1FAF4694B9AD4E453B6F3880C399E02262612E673114EFF55AFFB +372D60C7A0FF504A495520D8B2EBEFA5CA30EC1B25E0D29471DD69E9B33C0A31 +9053D59FB995A91B2DB4E1C81A54EFD801A69F8EFA3251330E6709AF42A401C6 +A10B137C48B33B8237259E291DE70FA2C7ED45C60FA35B1D44133A84A5608645 +11F2D6558E9713A39419E3A886DC595CB8DCFBADE248271DB17106049510B88E +80769A50F6EB3FFCD5F5E0B18A5ABC048D751FAA70EC8AD5503AFEAD3EE08E2C +55058BB271B068517B0D4694E3F9F89C7185353E1E86DD2681215DDCD6868195 +19B1AD725CBF8D7E9BC55228869869B57A224FDBBC58A95EEB87057F124E9844 +0890AC338C57A13DB786A518F5D32845019878A36550A704B15B4A53A5C2F1DF +B910643F8C068A11AC9DBE7BC3FBF59AE31B643D44262D4037E32CAA6FA00B19 +3E1B3C4791733245C51269634A65D5EA2300DB2D9492300E471B5E9ACAB4F4D4 +799E15F36C77113BCD322921742ED2096D86A2797B42CECF3BD902D0C130461E +EFAD341D9E4AA2A31A06DD2D16622F175338A67C74D9C39B1D7FFC276738772F +0F74FDD768D256C50D5590B2BA1BF844CE3A925FC9611C1563A05C087E9F24A1 +4FD6E7C199041774557EE33CE8326E738A1C40DB777D08C0EBEB2ED00283F99C +E2831ACF8B30367BEA9F0942BB04067883A15162EC67C205A58CBD23B356B6DC +DFF550AE90B2F60BE939179CA8998B222977C6929C59112CE3501E9150DE9646 +329857FEB0E17D4A9F084776FBA27D35FCCF323E0003767BD28000BCC8DF3189 +ADB9F06E9586EAA5576C3361EA22DC7C72A4227FA51934B5852EAAD2C06AB569 +E2603D6129145A6C424B16204FCFE72B0E0A17E95AB2B3610DB38A19199B37AF +09BA040D9EF605BA4C6A29CFA45D418C65CBC524BE105FF06364A1A085CEC705 +A3AE8EC7B2890770C3384678007C12EADAA62D6A26E086DDF537CEA95F6AAB9A +FA48BC9A6F93A847DCC7A789A06FB1C5F71006776B310FAE9E45A2BB9E2689FE +1FFDE621FEC2F9105BD789F18E2B2360EF027760C7245BA5D8D97AF8DCF3B3DF +A4D885209AA2AD9E39A8A45A9B3080743D0CC4686935D0D9663FCC9A4B2468D9 +319F891A37C595CDAE3DFCFB25C4FCE86A347847DCA60E64AD9435F18BACEF59 +BB830CCF56B0D14BB8A9601914B23B69254376FA18C7D168B23ED5B38ADE7666 +5EBF47619357B4396AE943610387421CC5968849E2DCDE1F9183EDB8BA3DED2A +ABD590A28ED20E4413582FD61210FE8E9BD2E11AEF145E21BB7BBA4CC1648C8E +F7C5E6F8C1F9C5EA6DE01323FCAB23F57470C5C9D5206F74DB427D9D7F456BAF +30DF4E4E68ACE3D985D03622B223451BFF9CEC0C4DEF3AC99A2FFC112C5DD257 +D83F5389E94B69B3543D297983C5F2911D9F22C59FA759F961460DD36D7CE4C5 +F33D1239B285ADDCA60BE289A26038A8E571A055A3B6AAC36EFDC63BA8A33D36 +02CEDDD481C1F54BDD907B2A191463C2BE68DF46139B7315E432054FB65F6C4C +194D495B231D3BB6BFF1270F801A8261E3440564A9366EA2FC55313F51DFDED6 +83950F091E0769BC725F9BE1336DEC716853279A0AE6D48A07993950FC64AA26 +8A860A3647B942AB03D0AC26FF9416B7699EE29E8AF81D54588D1A9CEE0B88DC +CE33AE4D645C61E5FA6299B6D7560C8F6FB8F62A75A6944E0B3948BB1937049E +1221AD91D00AC9951B0C871AA3F48894AD4328697106DD0D7127399060520AEA +28EEE1639D2BB255208FB6DBCC2E44E12EA5F9D1DDE0FC7D5891F7ABFBC57C69 +D0BEB7D574DA7B3521755F86A6E97E02611C5830456F168E576A51D154CE554C +EF33CDF3BE803B4ED685CCBA8C43B6E948BC9AC1967669C31C7A760B4A94020A +AD12EBFCD99A9283BD13A4CA7B2F95C51F1FBA18DCDA29A2B75ED6344B92FD94 +978661F4EACA93F480CF1517A7A704834CC6993097E1A87EEF3397419C11C0DA +CB668CA98A363CA6E48DD301ADFF175C1FB0779FA5F6D308FA19D2B46C7BF5EF +36B82942AE14935F6A48C3AAB9D49AF68FF705E020006473B7EF93C5DF165853 +A60A02F820E80BCFF2B5CAC77938B9EEF1A26B79875157FEA9C3B09865329755 +1D2BDBCE3A98FB33A39D1A6A62D15D44F58C59F3C3CE5EFC96DEE71050B6C6F0 +7B18132A54CCAA48C94F6FFCBC85E6883248C4E2DAFF412087F6D77253E76F11 +E218BDB2A83B63D245B6D26F737542FD500B5001C89C3F806265162FFB0727DA +0CAD9F3212B73D2602837EFAE90366B0860BCEABD46DF7127D730C11F9D205F6 +B672DA2EE6E4193869D3E73CA58BC7712AFE76C78269B15648732D4C4072A0C1 +C342D9773F46A62FFFF8B302B3F385916A28FBDFDEC4CEBA194DB8E589FFC94E +6CA3E2879607BC0ED0D0D1570748CE391A9AB38508478182A74350B1817A5FD8 +F338032F879F14C80C79DD10ADB4B51AC004F73DA769AEA1919E30A7A100392C +97F709984E748A28B84F4CA56090AE29BC226AEE7C5B486300FFCA752CF53D47 +ABF7323F5655A8AB95ACE45B1C5F2A1DCE2FDC885DEA0FE731D3ABF49C319BED +ADC3FFD22EDB34595F69D7483E44791122C5FB8F27C2DA41B2A0051FFCC65C40 +6AEB44CFFB0F6596AE6F70FD182200A6010BA7B012F52647F656FF17FBA75E8F +900B614DABEB0430830A230FC87A66CD85966B366A54DF4E4FF7E1D22119FF46 +FD26E37A1F1B15C749FD559AC4C606C96616132FFE7878456DC5D621D638193F +83650DD8A381E29C2AAF78A9B03A44979F8BAAB0CD13085CCD21C26B88FDCE0A +3A6B53A86C4819CACB3B2EE11DBAC1F5313B01A97BCF73234C81416BE5F6AA42 +93A9D4F25639F6FAEA62D846AD1F7122E2DCE3A105F7D9B09AF44FE50A2F9A45 +9164D166792BAC0B957FA9372982385F9FDF60E1A6833069771894E38727E932 +B46F10476A53E9489BA6F4E694FE6D99845E9E01B4E09E9974726683862DF30B +D6851CB35E0F490FB26F128A1CE35410F141553929EDAC40035936F195F48AB6 +1E55CC2BEF4E9C9A19FD405CA0576E52D6933E452813B3BC76FA250A68661AC8 +46A308C891857342C9E07237A50528D9E0EDD8ADF87B305224B41FC556553A1A +D089E405A59F22342CCA8BD79B8FAD18FD0878450C0D473BAA67E6B338891B4C +BC90A05792F47E272C774F870C23AEA98C0D26FB26511B4EB9DE2C3DCFB48BF7 +21CFD194D8CF39AB4B1941D041D14684B0F00D46F3F0FF31EBFCA089D9DE7641 +125371D1529B3530F2B6695DCBDC292D455EC8CB092BB3CB115CFE54F7B87589 +CDC13269CB5F6926410F09BFECDEB9AD6F7852586D9EB4E9DE9B9A86C977D4E8 +9B75CEA00C27C79CF5AED18EFADDA811BED572ADD951FF50C04CB6A000EA5577 +7C15965BD3379A036D04C6EFA1D7B89D42C20CEC06BCC5971F4BB3FFD606E476 +9515B7998D4DDED11342312596CF32EB0B33823F1BB7EA404AF1B1C818B55BB7 +460429245F1BD7D940787B76885D07B8999BC9A203BE343C669B2D4AA0160B62 +FF13714B4D5F985D815FCF00D6702CE6F973D73090B5F00F27DF91812C822B9D +2738482369576813751BB518085E011A47E04DC62DABE7A9E8D9AEFE73674FDF +7781B45E8381C551736CC279744C7405866FFB196A7D1254E8DDA0697386A53B +61074C49076F1BC9EBDBE6BAA9D152AB1D1E1A6837A6917D5B67E35BF72E3D7C +C3B9E87978B3D73562C8785522EF7E4E7147CB0605E8A3FA0C72653056B5D2B9 +7504E21294AEF93E3032AF67FA1BC1C41A18D04334478FCA86B31798F7EF3E86 +28CCD465F15A819FA944D84D753530289E466BC413C04E2BDF28D892FFDFE430 +281EA4E09BFDD95DEF8A4F9B8F89840F4EECE5447EE5CBAE2A2F1E6DFE3B3EF6 +8E27608491FE4DFFADB9120E00997CC22A81DC01DE65E36792083B39BF652561 +9C86E08FFE1A5E05910F1DDCE1E2A01EFAB773E5DB962EB2645946804A558F69 +28BE0011EC15CD7189087842A637CE7BB7E7ED91CAA2BF1E8961129D13F8577C +0D14A0B1E116E3C670464FE54CEB1AFBA899FB8CD69A3C8EB2FDD6A9963AD349 +CB11A575FC1FD48604131F268D67A8F833256A67DC8C2F2EC862FAE751770733 +F7481667EB26EC1AF5C2B7C21A26D611314B8E3AB0739837D5652E614C206D67 +C8F1236B589C0A12A2FF362E26981A10D0701684DBB1A6E245975C6E920CEAF1 +9C6B888320CE8F4A12056DD24580B19C18C408E1342DB509979C5CEB479D91D3 +3673FB9A0FAFA3F68F6F1AB25DCA7A836A3B9F1EA5FE4B96881D52D6F3B0C3C9 +C361A65DAC576B6303BC5577C143EF4DAA4B72C449BBE02F938855991BF1CDF8 +B66D44295355EA1CAC55ED9EA652CD4FEAF6466FB9AA746B4C7BFEB409268A8D +7CDF33A26F962EED9BDED6C27290A9E74329A28317139E856F16CF6A961E23C6 +8EB77CA636D35FB9529D4A59FF775A917F7A3179B0AE9F580E00729452A111D7 +B145AD08C46907C335BD82C577FA09781C340A7CCDB1610CDCDAE64BCF2E9B51 +ECE5D9FC175F5E469E9BBB9E9088A927C04EE35AEFFDB6441D9E625EE2317062 +DF5DCFFDA2918AB174236DF8D985952F385F48D6B328B38BB9D65D2067FF4F54 +641097C49B84A0D8FB6E93EE2E9AEC1EEE4E42DD5E61598319D9779069315EB0 +AC98E7D7BC788EAA135431E3A465AC049FA60416BA7AF9DF46B5A55742A95352 +7DEFD0D9C090F38862519109ECB554EF7BA4BEA4876F3759C290E02F83238306 +E685FC36163BCF6987600C1A81EB1CC0F25D270BE8FA168BD4D4C4DCDF2261D8 +3C4B21F0979BA9FD09A33571E40E02E4E4C4D8B3C68AE389095BC91997742EE9 +8B01D438B43C39D56832798A6A19B52AFD7035D521B4DF985F4922CBCDB0694E +F15428FCD24D496DFD02BD847D68592AD74ADB8BDC1F9518FBE41AFD7849C7F9 +5F519E71D81C43680C8628A1043AC305AFEB4C39301288DFBA825C11F6FFDFE6 +2A39ED770329F5BCF758E03ADF703BDDDDFAF6CDE697372D9D2AB79709F6E914 +4642FCD2EF37D2A7618CC612F9858EA3BDBD314B34C94141563FD8736339F23C +E10409DB1788347287B8A9270BADAD82F4784F343F5041F81F34C294BD9D785D +0560556A2C5F5E66F1C5C1B0594DBEB2383980C12C156D5C89572C96D57E3D10 +71EEF60053CD9064F29228AB7C195C06F13DB969800179D2EF13E1F3DADEADB0 +53E3749D342BFC0DB94340FF4BB08F1B3FC502BA8530506881CCD872E7FA3D68 +7C79D8D18B084D8743179F558FF036A85AE14E2D4F7A90B60AAAD4D54F6D90AA +505B68F804799A09719CE39AB946A70E1A47FDA042A93D4AEF5DDF9B3C43EFB2 +478BD73B445E866A3A88DA10D3E135AA93A7FB9BA56F04E4207B840F64EFC690 +4E7DD9BA4EC3EC8D9CB6AF2A77E8270B49106E6692ACC544AB40184B63353E38 +011DC7737C16D44343893D7DFA785FB2FE1091AB78FBBE2D1D4302EB6EF22856 +9A79AF4DBD71E04C434BE5EAE258606DEF1C3EE675A2108E0C34F19F265BDC83 +4ACA3502163EA95C51A7CC2C8917ED4E114530677A2D7194ACA40C484EEC8E0D +EDEF895DC0C1CD3B0D0204FF2CF2C01BF39F19787E7CF782B132D3147ED6C783 +75D87803B2D7F9BE549E122F21F44E2C4DC8D1EBA4D05DFD189165A9DEC9080A +0B3B4026F8309C687372726750123FB8E5E3ABC315100C6727A98ACE47F74A61 +E6A6F60BE4A49DD922DDACBEA98B8660549FEB49178D1181E6D7BC7753A77DC1 +AC83F692786F361EC1EC06A4EC5B5994FD9D14C127DBC3E33616B257D6E354CF +F2A2125066399EB5014FA3D9AFB6CE281006D6CC64EBA2CDBDFC1BE281EF68B3 +9C0EC787ACC73859E9472B698063F7558646DE83F7C7A42E4C2DEC9AD1807AAB +D912FE12BCB471A62E074A540E76E9937F2630A0F69673402CCA4C7D8AB157F0 +0F0B717F35D6D27D1D808FDE07E654DCCC17FD06732C8F6659103C0364FE5AC9 +5C4C2DCD54FB047D1FCC1D64948D160DE177FB366DB285056F66FA5FFC8F6BAD +1BD3ABC6E59DB6903C08299C3CEA32394917CC185FC1621FB634F3F97107E28C +173A05B76F430DC97B59787BFCFAE58C0E84353752D9208D342280F246E019A5 +91A60B687A1363DB31066BB02E01D76E71BC16C040205C3C30761FF7741D4D27 +D9428620B3348C88D6DAACE809FBAAF3A475DAC70F3AD9BF2AB5A7ADF1934E4F +64A4754CBA788E1AF79EA0D3DB85070D5E60642E51B5B833AACA21417CDF3C2D +249491E5549F6325D646D65B1B49A0BB21F9DDEE070F64ECB8C71E7145411593 +C6AECDF3900896D4EA11323EC87F4BEB513100891119AA1241EF0C23FBC6D83D +6E54FAA94D3D66B331C5C666604FD2A22DD8F97DB520A570A315C512F6B955E5 +65DBF10413047832B18CF0802F5A28C29D6D99F859766ED454CF6AF0C99568F2 +FC16E4B59325B74D2BA8134B65D946090EBDBF39FF561A784FA47D94ECBC1B82 +BB5EA96F02CA32826DDFA644D093661605856CB9FA3AEAB345A1EF6AB31715CD +44C9E8BB668B6A7611AAF50552CC7C4AEC4C7033C78ECFF4829B4D02656CA03A +6B465F474A8D8F369DD9F64DF39A0D0FEBD5EE0C960CEE14A0AFB3552F7C3A6D +CB27A55D8AD2528CB2E85F60AD32CF012A811D35B83D729DEA517AEB919C74A8 +E2851CB3F9B7B1580A3807AC28F2F09C714ED34086C30F18AE0C497EA0E7D401 +E54CCD473864051A011BA1977591AF507A84B445E512E13D7258EC22010D184D +85AF02219C75383D0B24F78AF455284F687B88AF2923A4544C28B1A30986946A +4B85C11326D58F5A51DAC26416E0165B9EF2755E01AAB9DF249958848C48FE5C +298DF0B869AB54991F199A1BE92A35B21BC088A321BE404845BF7B3751E17E4F +7C726BDFC668F90C6245BC28A96D2D7D047F0DD7ABB57484110BD35B72D1E5F8 +A8D104BA6F4949F6DDD7890A39A1BB7D2ED8A0EB81F70E5D135BE3E1C087091D +B85F7CEEB9C1CB2F6BCF9F5BC63B3429F7EFAE7706DD50F440737D63ADBA7D77 +37EA88EE2E6E8533C05E8CCA320F1548039D8D377A90849E462AD0742B7E10F7 +8EE35E5665FC6E0989810A3B6745A4F3146DBF28DCED25C69E7897D0CF67AE04 +35A987DD412EAC33DA4AE27D081199062A2C80F2937A8D349727F654DAB1C29C +9712A4B3E7C82973E77C0802E27AB641BFDB7247416AD2CBA91F3D224B6E4321 +BDBE53110C317D593C81F97A0DD306101D7C8BB39FB5E945A47A9A2D06EBFF93 +4E022F77A122B61B08B51C9DA177D3C6169BA376605EDEE79904B12E045312CB +6F9DBF4F895AE04AC17526E8833B570F320E502E454A3750DA1B42C936274C79 +6AF746BE7353ACD3278000081D82EDFA20D36182815C867F3E517D48B84F0A0F +50C1D2464BF702625981EF8DC9221670C7D4F584BA26C3BCD2549D2F61AC7574 +B987ADD6CF8A2190616F7838725FD3D719FB02A24200149977B4750AAEE69DBB +F3B7CD9E6740374999B0F6AFEC4E0D048B0A5F1546CE03605BB2CE3AAC92685E +1EC81574CB871AD9F3D9E116DC73788E6CE0B5EE9FC653F3D547335EABA8B8DE +BC547A2F05BD6D07333EA135CE555EC9C02951FE1C844BF2F2F11168A57066EC +BB09C0503DFD7063DCEA74AB2C13A5EF64A90C57A96A12A2AAB0738031237464 +8B6B02F261D22CE48DC65C98C5D1B592BA4B479EA63DCE735B16E29282180751 +A34302F75C9B315631133D318EF7DDAB336C5274C6751D17598C085397B5B55E +F3F8F92CF1B8BD6E2D868B9A48C67D4261A0226B3ADD2236400D870B5BBEDA20 +DFEE37BA6CC2E16AAEAC885EAAFA493D0C03612981C1966D52FC5F3114856527 +C7489227F2456C27BF24FF8AD790551576134CC36582CAE0859BFF076B4DBEC9 +0A84D6968D5B877EDB197195B2D5A912CD98123D2EE68B7730AC66BDBCDD97EC +54605D4FF96FFEAA39E5505067BB7B382B8F0308D2F168FD14DA6DA0F8790C0D +39E5D436C5643DD250052B462770D9B40752114F4783EE337093F425D04F6318 +406015ACCBA30218A9FF0F639788EF20C0990A297548F4D01222E1108227423B +5E2654097B5457FEA154288247EFA347868021CFD20F9102282D71020F6E6557 +DEC16DC6DAA7FB88030A80677B32D5E526DED86DCB8C86EDF7EC3CD9C0EC5DB0 +0E16E0FE37CF1D12AA5F5080C2BC331506E4DEC5F28DFEF6B017AB3E7901E183 +D7A050AE141A564993B20C6A5307E37FFB7771444D1860FD23D3197B5A2C3CFE +AD24B94F3B9246D0CFD2F8D141F5FA92BC1C0C6F1A7F53C0DB75A93A7CEFC02E +136D917B6715E9F9186A9301B49762EAE9D825485CBBA7DB3DF1C773A9D712DE +2A6454815811FD89F30B4EB9B9040834E5183D0EBF27636165CC61BC9301B86F +AC129D10521E2DA86217C9CB416D87209A33C8F11F2F3717D09BA4CB8720C866 +B3F4F2150BFAEA36806F3EC0CD040468902941C581B891F22F7C53742F5CD58B +6746BAB02900DE52B595FA84D003061905FA3D08C19468CD9640A761DB58FE7C +377AEFD40532AA19EA664D045329058D873D9B1CAC80B945B19FF76BB813CD84 +1ECA75445EF4EF543B5EC426D7F50B4E9C0D8D26641ED57F67A651D49718D078 +1589C30A79C019FE711B8F85E6EB828220D94442FE158F328EEAA5D5824E1B5E +B7502149925DC6211CB3D58CEA83FED76E5FC748F7A13D2F682B873B502F9C10 +91A7E6F74ADAE134ABD384DD3AD5F782C15A02611AEB578D993E02796E9A7CA2 +30D3A31AB91D75FA3D2FF29ABED46004CAFB9E39AE10D58AE6D7C2F86589D437 +496FD364408BB87A5BEE26BB78C996A05DF10059E9481FE9512442B8362FC2DF +D6C964DC49DD5E31AE67C7232E6186A06835A8E302D711B2F91E0CA3F311DB17 +E5D35796690DAC41A515DA75BF10D1FFA9C05F9306EB30031E467BDFB00F6D2C +85B38FF33818E933AB211A2748D5E10FD9EA21D50AAB2EC5CCADD5DA82F9312B +EFFE20B35455D6B57A0974F8B4B90ED5FB7D98928F97867CE6D349DFB5C8114F +D031ACD7A795D4E389057770133EED08E59495B09F901AD3A83E76BD39E1705C +2D69AC5A1886EBD989E8F4C2CA88DDB5DFB6C219EB1E47BAD596E6634BB8D395 +DBC8462D1A4543A0AA1436B64C87DFFCFAFB307222BC9A84AEE76465B827FD7C +C3E4E81E420BE94EBA0C7A6DD822714CD5A527910375CAD71CE091C022BD9A1E +6324E3089CD9BAEFD703BF9A3B0F216F9E9E30CF817416D86890B988BD2FA98A +3F59AC5C8048F6DF38454FD2AA579091FDDC56BCE521E04E76C504A1B30DC121 +37C059B1E6A09DD771EFE9807C2BB99906F735D28CCA24818FC128D99B58BBA3 +775D677A5BC9E529732EDB27896897316CE2096CA2A7F08A8C16E0E69A987CD3 +6C1CE21248B76D81F9462031270B5FEFCF92FAE4CA16D384599A04C9F9C2692C +9D75C8498053BEE8C2B7878F7984F07F678D40C763FAD9DE36F25DEAC79BC22E +0B95A44FF15F576E5F0890CE55E9E28CFA4704AFCD6C87788C07900AE3261A77 +2E255C7EE90159DE6CA68A10E7723CEAE816563B785CEE4CAC1D035F86471795 +E373A99DD1099DE3D7A8C6B2E3C61AA5E32F68303E79D5AC44E90A06ED88C4A1 +0A4A56D97FDC829A3D313FCAF24CCDDF62886283F574F371180C309F9ACF20EA +087892EEAAABA1EB4B995AF6BFB5E131EFBE8A60F7F58474A90761B94FEA89A5 +3C3AFB3CE42A4B85A5B1347A4DA4030587F5CA98B884B14638A526F3EF75EE51 +4554B02BA8638A7C06CF5C5096855A9165DE6CA16A0EF62ED13CA8F1772BA36C +11D42D652E9D60F34C9DE6B242A2FA671D149602D7E97E760D14B16BCCB43D4C +6D69944487CCC3CBADEB8EF949CA8AA17775904B6FFD53EA4800B038AC5779AF +9BEE09933B672668B407E40B380C5031984F0F21038BCB6963899DB2EB7C01EB +9F0CD50C45A9DC2BED08A9F84A1205F8949899E78A698161E0EC5EEA545F1E0D +E0EA0205F2F176ECF7490A0F795FBC9671B42C524EA04F8065026EFD7B695406 +33208B1DA85BC51C0FF72F63FDA879A1759CFB6BAAFE5422F57251F2835540A8 +A34D13AFF9BD1A319BA081EC4C4BF1052BDA4021347B0A7695CDECCA5C9410A9 +EABF71F481D97AB780DD9CFCF2C1AAEDB2F4561C74BB2E3D8FCB7915518DA257 +595C56821CF1ED450AA911F7F0BC58398400167FF270C50B379D3528D7FD90DE +D59AFDBF40961744D7CD018B16EE2D9EB94AA8ACDD9069145ECAD3455F3ECE87 +BCB7BA4CD5F15D083CEA56C2A917F489C22593F48DE1F61BA0E33C7BEF121091 +10822E4382F21532BC330F98301E2E10C27EFA31B33461088A0092F61FBF3BB1 +002F069BBD6AC29F041A2E560914883D70917B5F5A152F886ECE746DEDF95A35 +295FC1B317B0CFA283C4187FCA2B9398AF15F30506EBF2931C6CAC0B33F15E7D +D1EF23F0C0B986139D505723DAB4819B9FAA1C9BC8AA0482FFF75BB487D9E518 +B15F1247A2CC3DCCBC9D7DCA11F262238A0FFE980A1AFBDC55DED5588DBD6D12 +F24BA4E0D1D51127A10BD758846F10391A18177E6B7B042760E0AA497460EB7C +1817B5367445B691E504E2EDA50248C5EBB1B4F1E247E519C494326B235C14AB +3F40DFBAB16CC72A5770B4FAF552185046EECD601E06B22EA776B7E16B73B6A1 +CEF853964D0D4DAD5AAFC3EFFDFDC3AFB1C9300A02C745D65A1ACE6A6791EEDF +E15D51236F21EB629AB93ACD50ED67D055C7A08B4A536DDF8618155E14A8C23E +C265D026A32F82A2C6248E8F1AE397E95C5DE005E4B37C762FC201586DA7B22A +C08E59233908D2A68F9C4FE051AB2AC536F1EFDB071E3FA1809C44D0B8A77FE7 +03176A54222DA7A59BD93F08C1C98EFD7DD5F63C625FFE9D9426E1B0327A4B95 +A8612C0DD91F3827E615D2779EB98D1E3EB9B26D06D8FCC21FB205C895F921ED +7C531793CBCD1A00A1713DC8F6BA8771ECA01CB592DB802621B19AA542818067 +89647196167FB1D6E8505EDD9627EFBC5C455252D1EDE583E5B2D0593DFA7D63 +5249F18DF8623E385E5E6B788C7D5B8F71C125A694B741907DD0209967286EB9 +88A30796D0E3FB13343E44F433D18BC187EB214AD674F82D170E45842229A626 +59E3A115C8C0F54012E592B39E4C5536EC036175B2CDA5237321DEB533481A51 +011FA16D097D1E032A5B57F782223413538738C8813BC53BB3A6FDD2473D829E +1D82426F043DDA3DA68BD4E9578A1376EE2D1A3E098A74E09AD26BCFC9E5319B +7CFC845AD971E7F061854866D678227EFF98C2969A2779423A26AC8DB6BF443D +D4FD75B49BDAF8B927F7F0A4042653FB9536520339B0CAC67267E8AE4D432CE6 +1C9D3699E09F0195A33CB340B1ABC8C22B7F03C90DC89707A3F8C03998D65D7E +DF04147365E9DF84BC8C9DF0EAD2E7B913F9EAE7AACED9583C84FC9BD0CF9BE0 +C66D4D5D14CC6630B52594FDD8D076330DB6E80B0890A8B71D138BDAD0352A2A +868D99B6F3E3F0EFA53714C8D3BF02FEB7140C9D241A9F538587A1640786598D +713B9012AC0C0B50D1FB58C13D3137250DD472AFC2B5C2E5C81F4730EB7DC60C +522B17B69CAE06D01F1E7F4B16E33228F18973E885CE1B0C6BD207F6D1DDAAD9 +84A701979318E51F1902593143365675C54D4474C269B73804794F7E196B82D2 +1BD3208E13F7D856608D559349E7889D6C37D9707FD46CB9C4557149266A8976 +D636BAD2E3F743CC80DA8B87F77E38B8599A40D79B328F914E4356DACA79D5CC +8E67B2687E4855116BDDD91088102514C8437C30DC168FEF2DA93C9176A66B4A +6DFED7AC4C848CB6114AA2E31EFAFC3D6DB6D8580D389F1E3AF6DD43F563C479 +3F26B67CB8D2E7A598195DFC6E0B4903E26B9CD5ADE1E61A18446826EE5149A4 +5EDC63DD9F3136DE1F +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark{restore}if +%%EndFont +%%BeginFont: OmegaSerifGreek-Bold +%!PS-AdobeFont-1.0: OmegaSerifGreek-Bold 001.000 +%%CreationDate: 6/03/98 at 9:46 +%%VMusage: 1024 27614 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 v. 1997-02-08 +% ADL: 776 224 0 +%%EndComments +FontDirectory/OmegaSerifGreek-Bold known{/OmegaSerifGreek-Bold findfont dup/UniqueID known{dup +/UniqueID get 4475229 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifGreek-Bold) readonly def +/FamilyName (OmegaSerifGreek) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 v. 1997-02-08) readonly def +/em 1000 def +/ascent 776 def +/descent 224 def +end readonly def +/FontName /OmegaSerifGreek-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 87 /Omega put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4475229 def +/FontBBox{-39 -240 921 897}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C673600174C0ADCD768F61D640707D87128 +819324132AA262CA70C79A7D7A2015702B229606D56E9E6448EDF888E45D102E +A8AF8A0FEEB189353B894CE01AEC180DD26708C1739692D834976408CCDFB47D +A62B92F591DEE406A6B4B0D67D611D69D337CBAAACDBCA21675BA3492F5BEB89 +FB9437452FD102182E81641B5BA4C5E65A9ACD965A529EB124351F2F8B292F7E +670531AB7E0A0C9E4D42922CFE36F7D68117B365445DC558FCF0A87A7A65F346 +A017456F083E97E36761C058E44D5CF849D3C829BE3BB8425440D81473EFE99B +3454EB2F693C1EDCB84E3C21B50B178F93FD8AC8ABD0BA9B181F9F25315E2809 +B27F83E61FCEB7BA34C529DE0B250120B085C94C9027C308FC7A1FB0989C8A8B +BE44EBED6057B96DA3259D3317B33C1C5E8D540D27A4A891F1096362B8CAC41F +922D75D201BADB045CE52E425949E592737C844FD4DA8121B255381F1268474A +EF8CFC5033983A04B822E5D9142715AD86560323B57BF2E2CD064045793627D4 +D0BA81B4B20FBA3C03C02EE864AAB0C4A7EE05190FABEB0FAE6959783D631F98 +AC99320BA10AF8543ECE35B0850A7904EC34B8B18DC0A46CA740D665D50AE60A +F68491E43EE92822775631691C81CD3ED7D04DC7500636F72B0575D70A58AB66 +B5D3544D6F1AF970782B6E71069A9EEBE5E6890B1D3B3EFC21EB60DAC86C08E7 +EE20894C8D1DB06D25EA26DB0179799CE9C3A99A8102D8A42CB3A36A467821D8 +78BA879755A309468E6851A7F9D15D3D202EB796696EDD92BCCFCEF2DE448D86 +6665B3B092A16D06139A6EEE05530F33A98AAE11344481086F88980BF194B4AF +6153A7992D3C7EEA4323BDC8552F3B271C86E3EC3F5AA9953196F4ADB9C924FA +156DF4011727B672204B6EE5D86BC8C3E0EC7845E7A79C89E3BED624BA482881 +809D6415F3951DC0A49248ADE52E536208334DA806F72A54105F1F0DECC4D127 +2505414D327EB4BC88FA82A6F3A5E70BDAA7F77092F5383C506B203EC104AB6E +F99A3793E69C079DF7B72A4E309C02F091318E1A70C0EF5FDFF50226920E5005 +F6676579B37F6F1EFABB50BF0445AEFD11414077B59875C9B854DA45F9F30586 +C8012FDFAB61A4ECBD8C2DF5E03AA36C90BB3CB7EBB1A7BA9F69F0AFDD858E47 +17F9B18FBD79364EA01F87464A3C4095052E93A7F0812F6E766930DC6AA875C6 +3A3A30FB4178FBA03DD48563426003B2B183BB61E64D7688FB193BA8D2081FF7 +CF5B61565DFAF367722DAF164F5B0198BC942893900CCA1C6580C572E2FB0AB5 +84F1F004F69E9C1D05BD13258D5A0CA900F4E99AAA29BF12F48CC84DAB0166DB +F1AABED16C717413FD207BCC618E2EAA73760C7CD5B7A0906DB949B64A9A1034 +E86685440D43BB10B92A2F74FB3410D08238C8EED0AC7E473745C467AD5972BE +E884AED16AF7E4983BB5FF1702DD210326D01F115FC6910040F522889257422E +469BC3CE8F5F73EEE3E1196F7AA1119B411F4FF2F580719258B6CF3E9622 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark{restore}if +%%EndFont +%%BeginFont: OmegaSerifLatin-Bold +%!PS-AdobeFont-1.0: OmegaSerifLatin-Bold 001.000 +%%CreationDate: 10/03/99 at 15:11 +%%VMusage: 1024 37830 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(v. 1997-02-08\) +% ADL: 771 229 0 +%%EndComments +FontDirectory/OmegaSerifLatin-Bold known{/OmegaSerifLatin-Bold findfont dup/UniqueID known{dup +/UniqueID get 16262006 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifLatin-Bold) readonly def +/FamilyName (OmegaSerifLatin) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(v. 1997-02-08\)) readonly def +/em 1000 def +/ascent 771 def +/descent 229 def +end readonly def +/FontName /OmegaSerifLatin-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 66 /B put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 71 /G put +dup 72 /H put +dup 73 /I put +dup 75 /K put +dup 77 /M put +dup 79 /O put +dup 80 /P put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 87 /W put +dup 89 /Y put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put +dup 105 /i put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262006 def +/FontBBox{-75 -308 1157 834}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360015A30749A338E471804A9341D92A +0B722D817EECC4E8A595D9A0FB01CD573285B74FC826C8AAE622622585F3840A +0350E8F82EA4EB13511BD83F7BDDFED852B104860C69D06CD494E89215B134EB +1C913B0D68C8CB4A37B6ECDE9AB1A4F133A9327587FCC81A7B9A4305211DFA0D +79839FECDE7AB2B893DE806ADC5C93BB154EB921EDE7AA74971C4DE8CF6B1FE7 +C79780B92CEA1BFF9F94DFDC8E19B913AC7BECDC28549B3E99C13A72AB6EA913 +A6CEC9BA5672A61497DC8BBE9EF8A29C7C8D609A07296A88C5F69A565BDA19AC +C3DA487074B6A4F4D2138EE9DECD378360BFE90D9AE1A8DCEA90AF1B174F5D56 +9CF55D491225DD86CBA94A6B64D8D5F15751441EF1DAD731680FE105BA755AC2 +85656DE7B2F683EA235BC4F7230844D5F79C4946AEE86B5F8EA6C4BE07358421 +2BCE44A1669DBD2E9B44DD98892691CD1990C8EE999034601B3F40ECE145C29D +1132F0EE7CA0419685CE4CD0354FBE524043C94AD42CCE850010D75856224A06 +0A5EC4ECAB27D46258CA45BB11C5F25D37A90BC0B8DFDC254D570029BAA8F30B +30AFF50A21F07291FDBF1F3F225B00E7845B687C35180EFE88624A9CFFDA7019 +BEFF80A405AC904BD4074D9198B0F4CE9A490E33618EE77E2E448C2F35164E66 +964953DE064E7E73F2F4BCBE045CCEC256767D29A85C234F2E2E5F60215364E8 +B658D2A1BB6BFFE389D216ED403CF2B4E4E298F3D5342C0D1DCAA7BE169B8F10 +4313CA164E10EEAC83272A0D715875B14C73AD9CE8017DB95D6F3FA772D98325 +C5FA0AA8CD7CD5B412E524AF1B2D886920DB06E2CCAEA2AC3C11FE967BC93AB7 +69C406366F74D8E1FCCC3D42DA4032268FCB398321BB3AE0DF95B81D86B4A9CD +51C4ED7357AFCDFDAC149DF94D48BE8104CDAEC5DD659FB697C0EF440ED47AE0 +8DB408D908B1C5AD935F5B925A19177BBF30C4391A6C96390C57D3965694C0DB +35F0C6BE11C49FE7A53D7D80FEC5815880DAD86B6517A40DEE93F5569529861F +AEFDC91E823E0A0EA904688AC778835D832E779BD32F9BF87A16824AAB88F364 +45DB2EEF7D2BD7B06D233D10EF7781806EE2F45BC5722534868C89C436906A12 +8CA20FDA51ABF65DDFA80DC32C453514CE19D58681C9F0AD50200A15715168D4 +850CB66054B5EA3ED1610A1AD4A831F85F3A8B2C3D3A6DDB2C6D95BF77265F63 +7C0151B61E097DD4AF688DC6EF86262E3E24C4BF4C561ED9AF88CFD52898DB09 +7CFD3996233C869D68F1863D4A3FF5DA417944A5AF9B03663CB37CD119C40339 +0764A99038D69D48D7F4C36B89334964437BE8C6B0EA0721448EBF268CAA3062 +D195C170CBEF476F00D9D6547CCFBB2B8B774013583374CB926DF5A027778FEB +4C4E46ED096327FD83501E2006AB9499FE967F7187E0A5226C146D0B765A25D8 +525E7AF57794F5A2AFB09B6694643F4FF8868431559BAB7909DF6AD8CC13F369 +0DF457564EA7208E26749E07930DB25EE9272C70398A2155B3EDE3F8431CD278 +74E7ACBFA661CA787C4FD39BDBD9CC4BB9F63D93E66358402FE7B950F0D3F21F +A46B57F2238DCB8BC6052714064A01F5CA7D0B8AC0840A6F85828D07DE5E40D7 +DD1B31C09CE7382DB083CA4282ADF8EC00FAF6FEA788BAFEEB7E3C813282EBA7 +15068069AA14B5C855E4F04E667EFE221496839836CD2A4F9F947B19F31383A0 +6AE8A65D3AD3BF8CC2DB714AF0106359ADD23C2CF224FDB586F5268FAA8D9FEC +B90E65F4BEA779EBC84AFBDBF3ADAE1464F76276618FC5701E4B6FC2F64A054F +63EA6829393486CE9F021E38A48BFF45E41F4675195354B36FC0D6F2DEAF8916 +F5B73C4998952EA4C738B0E071D8B7255B33B728B441B7E89C64239D041D6E3D +BABB73E73E6F160306BF5AAF03A0F121233AF8E52B1C18EA0377C123C629AAB2 +A310887573B20B39A455F1B450D3B63FDDF95FD3A0BC27B3D5FD011786D8AF3E +5EB9BC7BE13433BA8A161EE60FAF716397ACE3A69F3105AC03B16ED9A9E0E14F +4456A93878586BA9CEBF26ECABC510B1B5534C8B948302D4CB3FFF055F287D2F +265826678A07A8C6DBD6E96268E1B596D184C926B79B558435067679042C9034 +537D61A03B4563F65636F5EA88C4EC9376FD685E2DD92DFA0AB0C8C049309EEA +C4375CDE80642BCE84796774DBF6CD06C10817DC2E5F97DE66593746FE98386E +47259B6DC15F46BF59BB4FDEA6C2068D3C2B2D4FD942E87E6E4A618CD80D477B +E7BEC17F79EF0716B0B33B265E2A9511164A28C633597B9C48908A368AD494C9 +5C4D43FF2A1608A2C04AA9E2F1DC7AB201BFA720DCC6D353C1E307C54A5E6EE9 +C5CF38AC13256A370E02BCEBE20A3BB70A65E65669CDC30FABC917E4B11B3A42 +04E2F2FFA5D54D975392C832508EB6DCE44AA70FAAD29C3F0F49320FAC73AD0F +62E6D67EE802E063EB0ACA1B4CEE12254DD6EC687CC6C4FB922E2366AF4D2BE7 +339183BE936A506950F695BA91DEE03EAC7E91B4D4A3CFCA2782B89707CF6908 +6AAC84CAF507A6ADAED10C4396F57CD97DFEFD94A1366D22D6D31D1AB95E3596 +C03332D6EE30393E97039B986B388D629B1C3E431C9BDCF3F070BE17551BAC4A +68FEBE8AC4FCEFAEB8942FDF67C332E8565C63A32CFA6D2B4F0D9245907008CA +A90BD20054D9A28092E90AED19AA531CD82EA92B5683B4AF8857BEEFC1AAF8CF +44C071EC7A72D8E674C11250016574338D5BECDD8479F280D44C425A10CDD2E8 +1C4307FA61DB1293678914C5769E0D34E611CB10DD8606823C0E03969F1CCE50 +A560779D3011C7D420D191F98B20A1EE50246C3DCC3133492A16AD5AB07E42E2 +314850D210E4517F046EFBFCB877E0CA07ECAC3663B19ED39FB1B94432EFDE6F +AC9FD4787F3592C151B37A870800BF184AA64771CBF002A355938434B2E2F9D7 +F4552223768C1C0236F9C26362265F68F7E79632787F4FE1E26F5230465B7D28 +30814A0B8A6ADE15EBBF457E547E5822895E5582336BE6F70E83052F0E8C2299 +1545931ACC2A00B78B43EC1FCA353C9CCEAC567AB16E2E3D84E297D95D5F6A76 +51A9016B7F9938B23F8B5567D1316E87DF8B359DE65D64A623E48379A1B5D435 +A6C78BE28D0E7E12F38CBF4444CC763C3D141F0294D940C773591DF0BF2D2163 +8D894FD31D19BD25DE7188858B27099E1B62B5045296F58343601E0EF45D9FF2 +5D118DC654B999212083023CBDA56AFEBA72CDD73413C4FECDFDB25894637AA3 +12A9303FE0CA140C7DBCAEB7864E3C2B36CC616FF632A549FAB2F933DF44A05A +0663605C84BA5A4602535F726F4E3F66BAB2DDB9A6B2F5CEFCE0977B68BBEF15 +0B99B3F58591422A64D08E434544D572B80AAB197BA05A0BEDBBD9B3B526E703 +857F05FA820BD8C0F08A9372EFF7F003FD91813A465BC7928EA70B66064F2DF5 +852D2B9647DAFB600AE6560470CFA3DEC72E83650FB4F8D071704D14E3117AF1 +338089AAF24C5296B5131F16442B255DBCAE0CD006CE73D96357882BF680064F +06580DB2D436F454D34A80A6257A6BA8AC5F8BEDBFCB46EEC88942F78954D141 +981EF0BFD4259C9931983D9FD6B8554A539CDE7F9ED390641CBC720642DDA30F +199765AB5C0AED0399BAD0ABF0059EFFB42B85E3162B26A722DFB99F15C26DE0 +16DDEB945C4B55141C404699B8B6ADBC7DB87A85D75FF92D91723AEA07D3CA9D +5852A932FBBF7800ED369FA1C7A2FA32341FC1B5D723736FE31394E4C469E819 +6F1F15BBE1D547F32ACC73C1E37AD554C8F312B8E74A8F77D57F869D2C4E5F85 +85E8CC86C586EA65AA14338BBDDD93A37BA0F6269FE306F4261E06399EB3489F +BF70088277E06E62749DA159C2B2A188679E101DF9AEF039A449762B73AAA0A5 +04AFCAA2EE4E23B2A8F4B7DBCB0171BC9FD02F69B39A22BF7E403EAA262E8C7E +3F9092B101A8D00082250FE1B8453405836A778EA75FA828259F415B4E340C67 +DB3B249B0AAB9BD80B2780E516DAD25CE003DF1E4989BA38EB839D4500138EBA +E2A80B83E1EC824E4A18BE77DAE1079D75E2F8CCF6B7B9E90E8CCFD5131CE343 +862B5BADE7D306D59069FF7F4811393C7098A307EEA976C7A6D34DA123D6AA48 +E875902ED89BE643424D6E4092D92AD9FB97E10004418E29B53B6A8E2251269E +3F6B8DED0544CD6D3E40C03D0D46BF4FD936C0484BF54CC493A8C2AC7054ED16 +6AD0D6C969C2F1F25432CFB012882ABEE024334833036A4C1F68BDE85F8813F2 +CAFBAB48C014AEDD12D1BE337B212AED8EFE2D0F6DD6F68A29FDCFCB4E3A1437 +AD4711DCC637AFBF2E0F1AD9514F1BB6F87A2820183A512642182CCD3FC00916 +43B420D06A4054AF50FB616049CADC303C99669F67B3569CBBFFE601B7F86166 +C6E95B3DCC855631C96B85D60733292A2136AA73627C0B1438C6E3E68E0EB6AF +8DEB53E29CD07F2C4F64EC365CAC7FEBD585C54E1E686C184CAD780C63F97114 +F4E2D8D25C7F61BB18D516BDA53C2CE1003128660A1421962D39A30A3D5D439E +94B8F8754D36675119C390CC1B27DF0F3622224AFD34808E81809338508217BC +0FD7D5F443E84DAA28296D84D64F467C3FF0DC87485161CDBEEDB05FFDDF9944 +6DD0408F2BFEBB4154FBBCF6D11EA1E61D944239CD77E903953CB64016CA624A +8FD0D1C71779E7F1CF2125D9C82E1DA84FC40DFB8532BEDAB967BFEBA0321DBD +25AFEF51AAAF8B6C8311A50FE1A878588DC0EF948054BEEFBE3895AF971FDE62 +383B73D35F47506B5618C6AB2368552F40CF9803EA1A152FF07AEE381BCBD334 +3BE5E024E6A222E59877D224F87FE06D27EC94C6C94BAA9A425CAA465C3DD416 +BE327267D71D6156B837DA723556C1122FE44007748A31C480B35F099E101EB2 +6EADDE2D99A114636FF24059957E8908D2F6E593206EDB9CD3116423B03767DA +9BC3A819F62A51DAC46962ABD3247113037EDC1EDC3291B1FB7B1CCA08082389 +325C8E4B4ABB86D33CD66D069C14F8018AE1811D5B89B3534D678B50E1E27677 +EDDA511FB22C7AFD1DDAEDEA80B9F0F53515CA733D2C5F21B49894AE15AF5555 +E3D16BC198F3F9863671C02DB58EEFA56574DD58FA271980DAA3066F65E14C44 +2D7298D78BCF04DDC34ED4E1474CD9AF7D25A4A279F06341EDD418A21E61D11C +9E6349BF2EA1E8A52F803E16C74933FE8C699D81CA7643B4A21374B5948BAEA4 +C7F95CAB6BD11F92792427CDA137447E273B8BCF48A4496297075C4013929887 +7221F89A90A45F3B124C3302DD279DC444EDEEBA05C377CF35A6870F464EB376 +DF7BAE8994F8491F00971463868160F52F6BBBA1E9B3593822591DA2E2DDFF79 +3FD5D337EF3DA963E66A91DBF0B77FBEBBB956B1F431C227AC84E915BC827FA4 +3ECD9095FB8432EC3E6230D5F2776ABE585BD5CE28E170D3551685FA703F880D +33CBC99997C52418F72438D110473C36DC907C05B7AA284EBC996C7F7EEFB0F5 +5AEDE5CF56D2B90AF1EB622E9069580FDBC21EF385F1FEE481FF0109AF4F7CF2 +0D9C83D8538998FAF4591A6E165DD2FB026B35C96BD3E06FDDD4ED9070B77707 +EBF7AEC082B18D6ED3DDE639BAD3F8ECE42D1914AE02244D977C168D78971284 +BC928D233642D5DB0C9CDE495156DEFC77959D9D6547BB3BF57CA5D9DC309614 +307FEE4E2D6686F93AEA7D8C32DB02AFAB99FDDE85DF90474DAF86F06B7BCEF8 +3687E27E2C4AE26093680354008DFDB9C48D354BA21E0F8ED6DD6288D9585898 +99B2B33F5CCD4A3258E308F9594FFFF444898C317C09B13AC93FCD7320494E2A +B777F5089037CFD355FEB7665898D8117552B196B1943BD12979369148566E96 +01BECAED857A884B3A3BABDF20EEB2F5C16BE0DD9824B91B28626EB7693DF84B +CF85D0B6F23561C029DD25F04536E97190EE272EE1FCAE8F27E90A7B7F840FDD +535F69913D1621A604951878983F53AFB349CE1D76981AC385EAF8304AA1643F +6A5BBC5CF893A414C04DE9871B6D08FA409EDBD20B74BC36714087D03F0DB5B7 +476C5F595CADE6F1EDAF1937544A5995AE5ACEAC025BD722F0FB2F55607DD1C2 +C2F30C563D21A4076C580DD2E94BBF63D85DD3E593A3D1401600FDE4016C523E +F91A9CCE1488EB77B370C01E87254CCC546A8481BBCA79B0C5B38CC5B4FD22B3 +BCF55FC805D50F429F63CEE5D55004B2719C7C909176CD908547BAB0BFE1238A +6FA470516858391D18962A797460853A2823E758CAD89156F61E015C42AAF09E +A3BD3DD35F8F9882863D2B70EE50408CE6634332D13003A614F45B05627FCA45 +75C4CC4CC3A8488B759BF906ABDCD92C3B9B65D6D70AEA92CBB20025E38FD56D +18DC74B7549E89BD4C562DF166AC57D8C44EA0932CF099EE9CE7DA04ED247F0D +F46BE53531661B299230DFC2348B7E49202C26A510B4B89D709517B5E2104789 +510FC61F01DC7CBFBE0AC74EB5D341B5663FC0ED42E4BA6A3C57F5F348CB8EC0 +8ACE1657CBF0DE50C4AFA5D8AA6F06C4183B883C65909EA0D970E7584DC68E66 +947A7A105AB5170995D6E50038D870EBFC57E3B775BED0DC2986443D40BAD633 +3683B8353DF7400C5B777C1635A8AAAF394D21DF67664C1C7DACD01B2800806D +1035C7BC366FEA06E31113351AA16B55F63B8CD319FFAC9421A46A3FA3F611B4 +9905A5D8F2F34D04E4325BAD426EA4A6858295D37D177B99EDE4232879A865E1 +492AFEA8493824EC45964E941031F3A57C8B6A287792E3E940F0E16F55581373 +6833F7A0777B32E78939703269E348AED7ACD1AC474DB250541533E4FCCB97C4 +C15D6D06A40081658C1192F7F3B1062F7D25D5FC737A8F6738BB25B6E78ADD1B +AFFFF6E5C5B12D564975E46AF78008E784C9D59F0C711B1B8AF219522F6EEBE7 +129E549F6FA9F4C30CC7F9B89B03FB142042853C99769027BAC2B319C7F27A7A +1082BCF9798C2553547A7BC0BEBCDB10FF9CF924AF536DE985B7845E83856799 +AF0AF04DAC2331FDF49711A227E64B806ABD40845F07176D95247A35DB167D02 +274CE559878146C7902DFDD2AEC8FA4C470867E824CC93F0D97DBA84961F177A +9AF05E7BA0CF0F2923BC323B29D0275E10F955CCE2D9A942CD9DD2EE8E2584D5 +374507939C490C3ABEF5D6A842B2B80AFEC172C846C3E0A289392DF866C15588 +03E07A1BFE40D726C8EB737A6EF3FECD186837D29FB6207950BBC9C8BFA8CCCF +30896905B74315A4ED722F134A756B52D1579F1E7241A835CDDFECC3A693A3CB +D157189238EEAF2AE360D6FE7F40A4BCAC986D9DAF6F3C2F14243AA957FA723F +B5367743423E353F344FEF2313AEC27C2CFB2DD5E6AC96EC492AD9C99239A3D1 +A7A60CCCB3D3DB2109F4BA4ADB7381250FBCD8667566DC231E16E42F1F8183FB +6232D2701ADA84F205756704CB60E604BE15CD10EDD2441C6FB1A29F7B25CF01 +B2AFC54DBA7BF2C30441451E00D5A30BB873D6134EEBCC1CC4350701C207028C +F3D6C02D29378751FAC87015F2804898AB75DD91FE559EEB65820B32D73E6246 +C0ABAD17327DEBD0A3BC67321C645C87EFE82BD13454C7BE1D4CED0A417FECC7 +702069BCE1738C90D342918C815FFEDF357494CA65C53340F293B6FA0EB3B7A8 +980ECF159D52C9EE66EF90D213EE4C8020F140006FCDE4D27E66E04CDDB100AF +DF7D96F86CE3FBB253E8AF08ACEFEA16C20217141A4453D2CBBEBFB0EF5C5472 +498C8BAE44BEB52984BFC737A77B868D4B32AA7DE26D1C4BED84333EA814BB09 +00919A9B4EB17C98812C7D805DEED1C20935189422C07CDAD159D36339B6238C +CDEE8280856D4EA274A87CE37E4CB806FEDB0400C536479A0DE188D88E20A903 +C83A27528B510262B830CBA8371C671D6471E07D4BE2FAE92338CA84C96C3074 +1E8287B86869AA0043F15D705168664818DFFBC1B98C437315FD17BF503DDBFE +06F32A65AAC79AF7B0DEBC8BC437BB1983DB6ECE2E56C63468D51AD977377484 +1DAD10B35CB695D585052EF1072748E8A342101245A410AF5EAE4B19616B58C9 +4ED9A2AC27A31CFC72661B3600E9FCBB6754CE77496EF36D5EB15067850E9AD0 +B8F7317879C11C16D6181FCC9E8FBCD0A572F1B97612CD2A80351ED4B44FB0F0 +93672E248BA1037723FE6D0667FFE031 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifCommon-Bold +%!PS-AdobeFont-1.0: OmegaSerifCommon-Bold 001.000 +%%CreationDate: 10/03/99 at 16:16 +%%VMusage: 1024 28616 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(version 1997-02-08\) +% ADL: 769 231 0 +%%EndComments +FontDirectory/OmegaSerifCommon-Bold known{/OmegaSerifCommon-Bold findfont dup/UniqueID known{dup +/UniqueID get 16262002 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifCommon-Bold) readonly def +/FamilyName (OmegaSerifCommon) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(version 1997-02-08\)) readonly def +/em 1000 def +/ascent 769 def +/descent 231 def +end readonly def +/FontName /OmegaSerifCommon-Bold def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 46 /period put +dup 47 /slash put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 55 /seven put +dup 56 /eight put +dup 58 /colon put +dup 63 /question put +dup 105 /quoteright put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262002 def +/FontBBox{-167 -488 1697 826}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360016721C2B79B67CC47F682E5097CE +9C5ADAA79226C5AECBFD865DED34492C94DF1C5519E977C28DDD62152EB86D1B +BC7978B75CE8170F760AF2300F5139D5EBE619703161B4122994436C1A1D7C1C +0A5FE93A9A4DAB0067657AD0953247C9997243AB455D0BB6C2A5FDE743912156 +1CF4F7CB173F7A12E713EF12FC597055FAB8F3CD69FF16C2909114BB59F0F4F7 +EAC907BB1916F911A31A9349ABF409BD9C36D475946E61B57F53A14C590160FD +9BDEB4CC798DFE093C251F1F3EBC5666431E37FF21088A40459B34D8FD3C63E7 +45B96BE1720F4538130A5E3C08B2B9B285027E9CCE345F0B499B3B03B603B167 +05049D8F438DDBC2683CBDC1CE5820BBFDD3187941C694380FE2CB9E8326690B +76CDF9B543BC9624BC097EF8A0BD0DDDD88C568D67E315DE5D45C2035E4EF455 +D5FED3AF124C3CD23B6A82EEEF9548624B3F95DB78BF3D483278A36EFE41AC91 +76DB103357032532074461F5599D1CD6711DFB235D9102C0E4E3D98912D809C1 +2CB644E20954F37EF12B83FE5D03071EB3DDEB0A43C83BF8443C0E39C3F84C5F +95D92B43D1D6DBDF44C6D6265B4C1DDD36260054E5769F61A7131BC42DAADBBD +A70E56A037B2974212B6F55A684D6428238ADEFFEE98447F50AE404E8E1BE41B +0B9DE16F8C74B8BD62E28939C0FCFB7A35D5F4FFCCC5B804A41AD61DD3D01BB4 +E9AFD9FD512C1812258F678086847B5665A333988FB8D7523F9DF9F41281D091 +474B1BE217A8BC9C8C607C2128D50BA5904B1866CE16AEA51C8A215AF1E112C5 +92C1504D79F604E6ACA9F132D1840FFA0F13A99691023B20344EC08A3659E3C8 +1CE9A65B60D1AAECA137BADFAB299EAA7639F80249D14369980D88766FE5F4A4 +A856647C3240A03779424418999898384204F692B804EF1864ADC733AE203E58 +0ECB88228BDAD1B6FCB3DC0E6BA1FC9D12DBA2BEA04B1838BF65DF1F1DA4A200 +A4669E27B27A74F6108A4A6E42147162D91B642A1C8FE83DF9FE3E75F1B6D47B +B7CED7D9DDC1E2387B54FF11BEFD5745C88FDA6352CE6D5BD028791A30875545 +06B2BEC1399437F308EDEE32B11A12010F7E8A652F651340EC22A93658E90C90 +5BD16AB90225F09581E993637F4ECF65B3E4D1EAE80CB0C8E3A7BF9186856732 +E7061453B3EF6FB899359074FAAD34406263A9D3EECF7DCDF84C31F7F30AE7D2 +3BA9642DE7BA19CB765C70ECE0C0EDA895898566A457DDF4BAB117038AE618EA +24156E95C5E70B37526B16A746841B73F1A018E0183FECB5C9AEE1944B8D0980 +25FF9B81C37C2A3679647C87B5690256D4E9355FEEDEFD5B674CED854A7CBEFE +2EF1C00955A0E3A3ED9766BC8FB88BE90424048F4A0D2CABDF2D1DD0711223CB +972B41F2F74312670F295A69073CCA8CF5040C76BD2A422BA0E2A68D41A1CFE9 +612FC8F90563EABA175B7ADD5FD8899938F221CF897FC62F4781A63F3B107A8E +8195D1A3886DDF3A2F96E41FD7AED56E11216BB0A9C8226D7FE8891E1D4F5102 +BCD6972C1E0A66579791B9270D31ED0CC94078224E9BCE39290ECFCAA66090B0 +5F36B15E90505D821472A5C54838B625AE5DE0EBE9FA3BC9C641B6B4EFFB8C7A +408329A501901C16FED67B7F4ADC8D8790021C53B7BFD9A26896D7885472A0F1 +5C3AE3779D32E396C6A1282BD152A76F69D015DC1FFB20EACF7A4798FDC40E90 +7F3D97DE15057EE0D58C60C2D33C1A6ECC9F2D6923606BA1551D1217B958FDD0 +E483BE71936B01ACBDF7D264B69A9D0D1ED9A5516534BACADE8F2051FCE1A821 +A4A483E31F31F094C09DE04676928EE142EF5936D248F5FF7EFA48103E4D8C60 +B3017A8ABF6C5042BB44B3B068DF89540DAEFA422B088A1B2FB0A34BB8D32949 +D8C8844B19B9CE13DEBCD50C978EF76F3D580E6D3576CD3321E4385ED4145553 +E8D2E01BAE0F71475EE4C30049F0F76A94CF579D506B20629D568EEC292696F4 +C6D7A9059B98A5EF4FAEC3C1A27E2A0737E4A28FF1C7DE47E619B5224D1A35DD +99FFB276CD4FE1EC847F735F8B56DE9F7C1E18ACF5694B7E63D0A084119981C6 +737EFE627F64A457F351D7493943D8C9B5C60C1CD5FC21F1128673691ACD0A97 +2CB8B68116F2A785EDDDC6A336391DA14CE8DBBE6459D734626B1A7D47CD36B9 +E6713D39359866E2CD43B7E03A755B816A01756E76AA65BB2CF95AAF9E04203C +DEB09CD5F8F5F96FF5F4A9B0F97ABE5FE04D721E6189244BB5BBD630D73CB5E4 +37337A477168C011715995CAE4064ACD43116C51E6B251133686A4BD14862B85 +1794E55CD0201361BAA61566028EE9462BDB6988534E62CDC08EC71C016D609F +D8129D4670249B8A8080E584298C116149C64F0325E72751B7B6344E045EAF94 +998C7F1EE803E955CEAD12A9A6446CD35EBD21177A725CCF214F90688E479114 +6DA720B9DD78ACD1681AE1D4F9867E20B8881BE51D8B8F401DCA66D3EEDB8406 +E8AC6043F860D410A90EA61C9EBE02882B21C4A638EAC3B6CE0AB984C10E6448 +58604FFA6C80D95FA9EED2A9CCE3818014AE6F356802EA79B8A4E5EA86ADBE51 +26E4DBA755D71AAF0E6482D1B10EB8F46BB2B79AF07590DE2BDDA27B7245DE4E +97B36A43D33F2ADC77E89B343989AC7A6EFDD5452EEA27CDA8E53274CA505D9A +61328B4BED5783AA17FC36C8CAE3F78F41A86BDF15355423C5F24BBE88613C8F +C19BCBBF72C7BC09BE25CF39E0AB63755EFF27061780115C06FC9B677865F194 +AEE6413D40D8D2DA765E10BACC25847711049033CB859CA399CBD7939C33D92A +B0CF5EA1DFDDFB6017BB5A7DBE66B51CE83B02A9C7A6E5AD9051AFED7C4318B3 +F1DE237850692B69CB317759392DE46024A63C2F82AF1D52D3D528E5FCCAC97B +F1E95963C1F46EBD61DFE4D23E9A09D37304B7B8AD4D44263711A8641B43BDE9 +AB +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark{restore}if +%%EndFont +%%BeginFont: CMITT10 +%!PS-AdobeFont-1.1: CMITT10 1.0 +%%CreationDate: 1991 Aug 18 17:48:50 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMITT10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch true def +end readonly def +/FontName /CMITT10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 97 /a put +dup 101 /e put +dup 103 /g put +dup 108 /l put +dup 110 /n put +dup 117 /u put +readonly def +/FontBBox{11 -233 669 696}readonly def +/UniqueID 5000779 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D004D606918A40B8D7BFA821B73E118040992A4 +E1BF99740F8FAA47E4349853C8149C0F8BE2F23C6F332BC0373C867D0715E8FA +FF163A60AFD0FED665D5829739975C5DE12EB30895604D211F645D4E13330DB7 +64B6E35463C93B752F691FDDC44595B0A0E9E57C6F649809C4DBC7DB58102A60 +46349E9A5740893A1BD4536B99ECE72B147B713619037400669C07291022F84F +4F3302F8244D2F0F1380466E81E0B5E00AF33E021A55620A7A93F3BD49C7040A +67C096167F502EF2051B526405B9391B4340A3FFEC103E317E315A88D31661E1 +7E4104A2B925D1DDA9586861904FF6FFCE6A8E808385E4C4014F5A494874E2FB +C3758D6989AB68C4CEF82F92B9439794FC404A29D086ED6B27997735BC3A24F0 +473FFD74BAECF5282E2EBFCB92D69B81C568D394055E2E30A7E3F448796E4EB8 +019AC2E075377F777183BD87FDD194E855ABFA35AFA73304DBB181C267431B16 +70456FD8470B525011891C1E140B8FF24A474B89F1CEAAB509F91FCAF512E16D +8413BAC0C664FDCD31245C5996F4883305D3EDF1C8D1E6F0B1E79A06028BBDDF +6AA5B515DF33BA8FFF2394262F3FE1DF95AD661322BFA5179E325BD1B1EECE49 +69F64789FF1BE8DE5CD7485571A07471BD6CAB4891BAB122BE4C4A1B7176F33E +A1A434F745811B71EA8AF73407F32E9F4EAAE1C1FAA979523C18A24F754C307C +CE056DCB71B20292D4FBCBF9AB9E9B81DADAB90E60BE926315049E5BF0F50315 +66D82E4963CB556F19461F43EF80302912AC1168884A1692AC59BFBC431B14AC +A5FC06C4AB595F9DF66CE5EB69568038445A9EDDE20CF92BA308A23705B81A69 +72D6F77C04DB55352C2B1D9E27FDAB79D4E4212BCB11595C864460FBD25EFA45 +8A5DFA81D050607C22C83EDF85A56BB3B9E2D0A51C4B6255B634953B4ED9A301 +E1562A87274D80E2136A7DE725575BAA426272550B4F089B6F68B8239D493E82 +363AE4AF55BDD65E892ED9730A5A84ABDB7BCA5255D88468A131EA49F8C1C251 +76D4F1695DAD731685663929D39FB594867BB8E08BC1170AC5259C4F61CAB7C8 +A7BB29F0B9B7DCE38E3316E56EF05C3D3DEB196B8FA88F9DEEF456286FD6EF2E +7CB23C8771A1128B47AA6171ED09B5737E6D25449965C6A86C920309F822A68E +36AF3378502318140FC3FE5938AB1F6797ECDA13231AAB1EB1D4C4C613F530E8 +9A2BBC5B11A94634219BD71A2D0D4291E79A6314BCE28F7B87887DA7A9E50577 +079599B4DD94A9D912E4E4AB6D8E2B3FBC0523294DAC51E69966337D3E47F257 +3C96F476169B32021E0A8F586C693D960C2839A9F8947F63824DD4E17E05480B +A0899AD7446006EDA51BF71F69BD8F51094E4845D4E52C3AA444293F180AF6F8 +AC281DB81F0D08DC6333A2A7947848B68420125E06A8925A68A9883A124F0921 +0E72C3E82EE87F51E70255969C1DFC8E6413DA3888D3832971984D653FB574A5 +504B99277D783673F1B3B63B8F4FE6D9416ACC8CEC2BFEE7CEE815ADD37B5EF9 +5CA2AA03E7DEA03EF556209B21954C05AE100EB8441131DEBBFBC4A7D70FA746 +13431B7DE548496180711E1B586BA0FEA22DE1CDA9109960DFE67B24357F4B65 +D907D51D0AF6B150A8213D0CB09C3AC92AEE15248261DA9475C1E61256E060E9 +9073739B52070E52292D0A289729CCA82B1280AE82C2A8290F650C5D6DC72C0E +A49BD2F5DEFABB5557EA1ED3235E40CB79F0E36CC20974D2A52297BEE1C91B3A +1DFF6F464D77BB3F7230F7F1A4519E8AB9A92A6477E501071008D8A758B832AB +B8B4B2EA4078C056EDB72005FB6EE2D2FED845D215AD718345075A93CEAAFAF6 +C30BDD654B5912D34B4D38A56808F870161BB7FF9A4E847FA202194325725730 +AF047E1483657BF4813643C3E59CDD1DD2CA16759C1D5A25E4F75B1348519DB0 +87996626639CFA40C6C795FF01E19FA6DCCF94CDC79E6D8EE4E78AF4D7FCCC39 +71C01C0601A4C7C65FC4746C82FA5F8178EE896854C0F76C8CA6E4FD554E74C7 +A60F18FA3B9386AA24562A22F1B438D31BE429DC382C76C490AE81AEB37E8182 +D727F93EE2E44D9705646F5761CA44DB8524E93208A2BA79D7BC163D975ACC85 +0E97B37C18D0C53A24A56F2F3E5024E9A6AC05A80064A3888F6703960E0656FE +3E8EF6F83C442FDD020966A1A3DEB69C416FD8B9F9D7AA7EAF8A38F7C69B284A +83C5F0880CC9FB7599647BF39A945583F03660724D6486A8985A236516167C0E +B42635112191AF27CF52C71127E76EAA797A1F171328EA78FC8E813CB5C64EB8 +EA8A8460F184939761535BC438663CBD2D04E61B866EC07D26EFF1BC721173E2 +7A378879B95028573CFFCE3D27CC005B4F0EED61AC732CE0F08C1FDB9D2361E5 +800E720E65E015EEAC8E0869A11C894F2208E18A7E461130B50F61E5E6E7304F +A48CFAC48EE300B84346A6DAE3D5AF25282CDF9003F60AE86874D9828273296E +2EDCE8DB75BE94 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR10 +%!PS-AdobeFont-1.1: CMR10 1.00B +%%CreationDate: 1992 Feb 19 19:54:52 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00B) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 61 /equal put +readonly def +/FontBBox{-251 -250 1009 969}readonly def +/UniqueID 5000793 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4 +87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F +D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0 +92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C +295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75 +409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C +4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF +2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E +0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E +B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008 +24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B +43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF +D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575 +5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC +96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3 +7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3C8578EF9A20A0E06E +4F7ADDAF0E7D1E182D115BF1AD931977325AD391E72E2B13CC108E3726C11099 +E2000623188AAAC9F3E233EB253BDD8B0A4759A66A113E066238B0086AC1B634 +5ABFF90E4B5ED3FA69C22541981B2BFC9710AEF6B50A8BB53431C7B4D380D721 +639E005D6B4688EE16BFF48443E7C9E5FB5BC5883E271CB03428948F9221D912 +2E2F3750D1A1AE5FF546535E1DEBF69B458DF49EA3817D9612E5C9A0B7A698E7 +5F576FB653DE1297A8C417599917F9D75D42234E54B4B1E99669BA5A40B4AA21 +43CE5634719D8F3536694F15E4F8E5B7D9CFE15B68A7D53FF47B923F0AB3CD4F +FEC1BAA7036B5936213BB109CA9425C69A28B7221E68FC79848CD6AFB220F45A +A0D21EC1020DA99816247E6B49FE263926782D00E5B3A57151761303FEA24487 +F85FB9B6E6C83B05B38B3BA7F81776B082204C032D467B91767AAD865BBF0F1C +271649C2ED9F8111C5637017470B3F6C3DAA3AF1705DF2B7838968B4EA7F9E62 +BE7DA1AD8D81D3608EE86352BEA38DB87A0D57A5DD28829D8728077ED4C16931 +59E158F9155CFCD1CE098395826D7D29C56EE27BF71132F6E6EF1F3FC99449E9 +9AD5D11275FFCA914FC866BBCBE9E978201D3A78A9B9EF3D50694AB260ACE9B7 +64011370C48D51ED6EA297309F3CCE8946BD55D98C7A4EE3959AC8AAAC99510A +3A57B04AC3E0C54B6021D1BD5209BBE0E945DDB019FB41BC593530222F36624D +6D9D1E58580CC3F0CBD119EAF06A2A544D5B05FC33D8595ECCCD38B44C3D5961 +56E7F2F827FC7B10480D5FB076172FAFEA2AD59113E544311526DE5DA56A64AE +7F0E6297D1EA3B9F87F85FED1A4D554F76113A59052406E6E76BAB34699797DB +8E39F197FC3513F562411AE4A4A066CFEF879C9263E3031CE1FF731205268033 +0E4A7FE0596990542D316611B20C00ACA89845F1D16B4BC73426EA8A13E0AC86 +0D08143FA619F8D7F944F01E624C1FED2AD0A81EE44C1F396F62740EAE45EEC1 +9BE659970777EF2C0C038DD25BE74B59124FA9C96905604BAB7C4DAF564FD2D0 +4BB75557ACF7B855A07AD09891F9AF +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI10 +%!PS-AdobeFont-1.1: CMMI10 1.100 +%%CreationDate: 1996 Jul 23 07:53:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 100 /d put +dup 102 /f put +dup 120 /x put +readonly def +/FontBBox{-32 -250 1048 750}readonly def +/UniqueID 5087385 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958 +9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321 +990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E +6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB +DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721 +59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823 +D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF +8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808 +6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9 +1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE +03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909 +95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1 +74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2 +3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8 +47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19 +AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8 +42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8 +40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837 +B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53 +956017667094CD8DC214A666D7D12CB23EC030318B42DFCF5EB15EC9308B324D +0A6DD804E67314F3F38D2A3CFDC92910D8F58B00F5AE62253FE93F693002D389 +B54D9570C3F6BD60ADF30F847F14CA3538AF785B2C4204A3556DE2461896ED59 +B6D9980719A1CE8667D834B27FCF581F4CC195DAD6F15F9A43DB75FBCCB414A8 +D6DE979087696BA293570896162450D720E55089860D0FE17E3831B9120F354F +73C67AC9F13ECFA6EB207EFB732EDCEDCFB3B4D17870ED58A3B45F7BC547B822 +B37625FC45713DFB2D08826CDA9A58E8E457158AF6610351F95384DD62E23AA5 +C1582A14378606C9983643D727D0C85069AA252A603B5DD2D78BBB7D19B23F7A +D897BE6D57EC52CB274147074AB77E702A44FCD91384770A57791895AE1F511B +40F7255185DDD580C7AF2F1D8B32FF151093088204BF90D462B164A62F2D101A +F3D569BA8517F8A5097DAC462525EB282855186FC64789EC08FBC719FB71E442 +88F94948F227A56F2DBC7F8304B3F875FB1BFC309D0F69B6687B3EA7A3559BFA +2297A6855CCABEC21017DAE2407FD9FC0EA689ED939F5278DC1584F9DE28994E +7DC99947E154E4AC7529075848B1E828813C139A7AF73B52E8DFFC3BC9F67E7D +82F5709273AC94EE32C2C3835895D0E337079681FDB72E8251A14F04A64FB0A9 +8D9CA9B465C1C17AB46F603CA561C48ED8A8A9D2F7578A7CBFEEF29AD1D3DC32 +E29BC2B8DD06630A47FA5ED62CD96F105A20162AE4B0D873394EEA24A8EFC0BB +78D959FC92B4793CE9CE921BDADBEB46126BDF89EAB957C9C961F218A2E1C3D9 +B9B06D30D7CB990E82F37308F84EC69DAF0AAB788E49AA0088824BCB82DCB968 +18D5573E6D58F857C8E48E83C134C7AF2DEEBDCFC0EAB8794B23C59D92D75893 +DE958AC7383B1755ABB6C6CEBE3D3B910C3FB8025CE9BA4CB5585137B039347A +E84650FADE6E9CEDBCB895F921D9AE82E9D98442488180AE4E70D1B1F8560115 +B97EC35851364444A52DEFA3D133F800553B837C45895763E4EF2A2D63BC1E35 +B97598FFBA04EEB9282A25FE8F748855605A4914D29A44B1FC8DB106F69A618B +B25407B544B01DF5097B7046B8486C5E19F4A09FBC68F397751145F00672460D +BADFBB1D4A91 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMEX10 +%!PS-AdobeFont-1.1: CMEX10 1.00 +%%CreationDate: 1992 Jul 23 21:22:48 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMEX10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMEX10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 90 /integraldisplay put +readonly def +/FontBBox{-24 -2960 1454 772}readonly def +/UniqueID 5000774 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF5B8CAC6A7BEB5D02276E511FFAF2AE11910 +DE076F24311D94D07CACC323F360887F1EA11BDDA7927FF3325986FDB0ABDFC8 +8E4B40E7988921D551EC0867EBCA44C05657F0DC913E7B3004A5F3E1337B6987 +FEBC45F989C8DC6DC0AD577E903F05D0D54208A0AE7F28C734F130C133B48422 +BED48639A2B74E4C08F2E710E24A99F347E0F4394CE64EACB549576E89044E52 +EABE595BC964156D9D8C2BAB0F49664E951D7C1A3D1789C47F03C7051A63D5E8 +DF04FAAC47351E82CAE0794AA9692C6452688A74A7A6A7AD09B8A9783C235EC1 +EA2156261B8FB331827145DE315B6EC1B3D8B67B3323F761EAF4C223BB214C4C +6B062D1B281F5041D068319F4911058376D8EFBA59884BA3318C5BC95684F281 +E0591BC0D1B2A4592A137FF301610019B8AC46AE6E48BC091E888E4487688350 +E9AD5074EE4848271CE4ACC38D8CBC8F3DB32813DDD5B341AF9A6601281ABA38 +4A978B98483A63FCC458D0E3BCE6FD830E7E09B0DB987A6B63B74638FC9F21A5 +8C68479E1A85225670D79CDDE5AC0B77F5A994CA700B5F0FF1F97FC63EFDE023 +8135F04A9D20C31998B12AE06676C362141AAAA395CDEF0A49E0141D335965F2 +FB4198499799CECCC8AA5D255264784CD30A3E8295888EFBC2060ADDD7BAC45A +EEEECDFF7A47A88E69D84C9E572616C1AC69A34B5F0D0DE8EE4EDF9F4ADE0387 +680924D8D5B73EF04EAD7F45977CA8AD73D4DD45DE1966A3B8251C0386164C35 +5880DD2609C80E96D1AB861C9259748E98F6711D4E241A269ED51FF328344664 +3AF9F18DCE671611DB2F5D3EA77EE734D2BED623F973E6840B8DAD1E2C3C2666 +DD4DD1C1C8384F906A7BAACDF441BB0AAEA2A697E453C2408FE375B1090D144B +904791D6D429BF5300E2062837E4F34AB7B5B74806980A2E092057AB0E43BF76 +966952DFC3F7D77C4ED3BFC8B1BF7F788F7CFC9B687CB7BF5219AA907DC7FEAE +036680403A8E4763A589506F02E5BA62541A4E005E01BD9599964A8EBB80C140 +E15F4AD1CC392750C24C3B868BC0D49D2ACB67A5B9D7E4EAA381118DB2EB2EA7 +9ECFC69C4974333618F6815E83D99F861DBFCA48639E196F40321DF1A4B5E073 +3B381EA3597C4EF712B7568038A222B5365E9AE6124E9CB8C6A52F3BD331211E +10AFDF17C53E93EC19675A8313E3480BBD6D2A70759EC02CCA8EFB7F6166BC27 +3E8D4B3619FD2475DD4D5EE5694A74EE896FEE1154E2CD97B64404D66783D968 +8DCB52DA0DFF726DD5C80729823F85E8CB1645F2FF5092254A64C2E7830AEC71 +BF4467B90C43C5E718D0B0C00D13A55834B60621C5D9092D50BDF531E4881436 +542C46DD3894EBB465 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifArabicTwo +%!PS-AdobeFont-1.0: OmegaSerifArabicTwo 001.000 +%%CreationDate: 6/03/98 at 9:41 +%%VMusage: 1024 46450 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 625 375 0 +%%EndComments +FontDirectory/OmegaSerifArabicTwo known{/OmegaSerifArabicTwo findfont dup/UniqueID known{dup +/UniqueID get 4311139 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifArabicTwo) readonly def +/FamilyName (OmegaSerifArabicTwo) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 625 def +/descent 375 def +end readonly def +/FontName /OmegaSerifArabicTwo def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 32 /tehinviso put +dup 33 /tehinvini put +dup 36 /pehiso put +dup 37 /pehini put +dup 39 /pehfin put +dup 40 /tehehiso put +dup 41 /tehehini put +dup 44 /behehiso put +dup 45 /behehini put +dup 48 /hahhamzaiso put +dup 56 /nyehiso put +dup 60 /dyehiso put +dup 61 /dyehini put +dup 62 /dyehmed put +dup 64 /hahthreedaiso put +dup 65 /hahthreedaini put +dup 68 /tchehiso put +dup 69 /tchehini put +dup 70 /tchehmed put +dup 72 /tchehehiso put +dup 73 /tchehehini put +dup 76 /ddaliso put +dup 78 /dalringiso put +dup 80 /daldotiso put +dup 81 /daldotfin put +dup 84 /dahaliso put +dup 85 /dahalfin put +dup 86 /ddahaliso put +dup 90 /dalthreedainviso put +dup 91 /dalthreedainvfin put +dup 94 /rrehiso put +dup 95 /rrehfin put +dup 96 /rehringiso put +dup 97 /rehringfin put +dup 100 /rehdotdotiso put +dup 102 /rehstrokeiso put +dup 106 /jehiso put +dup 108 /rehfdaiso put +dup 109 /rehfdafin put +dup 110 /seendotdotiso put +dup 111 /seendotdotini put +dup 112 /seendotdotmed put +dup 156 /pehehiso put +dup 162 /qaftdaiso put +dup 164 /kehehiso put +dup 166 /kafswashiso put +dup 167 /kafswashini put +dup 168 /kafswashmed put +dup 169 /kafswashfin put +dup 170 /kafringiso put +dup 186 /gafiso put +dup 187 /gafini put +dup 188 /gafmed put +dup 194 /ngoehiso put +dup 202 /guehiso put +dup 203 /guehini put +dup 228 /rnooniso put +dup 229 /rnoonfin put +dup 230 /noonringiso put +dup 236 /hehdoahchashmeemed put +dup 237 /hehdoahchashmeeini put +dup 238 /hehhamzaiso put +dup 246 /yehtailiso put +dup 248 /eiso put +dup 252 /yehbarreeiso put +dup 253 /yehbarreefin put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4311139 def +/FontBBox{-124 -644 1096 897}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C6736001234F4C7DE8D2AE5353E2FB4EC5D +DA3365CBE565213F1096E617F437159223F2B1418B3EA7C4BDB22196A545AE13 +59CAF9378D2CBB050B05CA8601AB231E90EFB6A78A41C70CF56A825B3ACA8146 +B10F2624C748EF943DA2E422209609BB65C781F46BEB920C65F8F7B09ECFBB48 +C1D183C810D013710CE8939E2647235E8DB9BCA80F6F077D0BAFE3C2DFE5739D +5AA68CE8E2099338F6EB005962E1400F2D11852AF3189B2D1116A980ECF95678 +75C601D02623E8B47FFFA97188F37E76C1A3EA9FFEF23D12D59955E9932B795D +A8CCF2396FFDC66B635E2F7B3409930B58459BA7D7A8898F776C0C8EFAB42691 +9F9BF621FB3335D6BB039BB84BA5F393CB90CE58480666B46E4D93A0F1E12A21 +D28C52693C56F59D363B03D93EBD0CED42170E1B12E1DC730EE3F7A92313B023 +B22D909848352C8087C82FACEF9C20FE28B49655A2E8260E94131E56FC5D8929 +8F327134D77A227A2F6297F3B8155B4E4C04D11052DC737D9753C71DB1AD19C7 +4F532E85E51C2C9CFFB437423DB06D60B1601496B5B4180CD7243AB66A93D5E9 +D962C004AAF9CBFE851C931A914E1FED785611BCD119D8C0BA3B3FF292DD8D3E +77232E9784C8124C7EF60B1604C1B3DAE3170D5775A024A5D18861C71436C3EE +CEADEE8931EFF1EAF800D0DD2BBE26EF3A66FE2128C39E8FA4E174E1057C9133 +DCB5066EDB1C27F6530A3C9B160D225FB111D123F8434BE971D96CD7DDA7A40A +B3956E65553012A50943BBD05EAB603FD469890451C4C3DA958829F3C7D61F37 +AAC8F75EA67125C72A4E324619D1EFDEDACAD239E5BE85CED55AD9C4B3C9B4A7 +3BC1016AC8BE2CE6FB34C44D6FB978865624D1EA7CCE8A5FEBA6765D886D60D0 +6164485F16716B9844185E5DE1E80DE64113C4E685A0334220FA044E4F1FB44E +7FF2BF986F32087FF4370D1C258D6A80B0AA7E69E5FC7D3DE8018FA4EFB5795A +FCCD42F67BA095799FE94FAB91F3EA3481FC87092B7BA2FD5E07CC6D7CF67D90 +72473D13FED5F3391C08DEB5E359EFC5BC6CC263DF0057FF4D34D835DC44E8E8 +C514D3A1C3968C01DCC01B6D85217F1AE865E666A90AD7891635657D4BF23E78 +2999490541864B8236ABFFD5757748D55BFD87FB92B6C3BE9031201134DC8FED +A28D35D73282D48A4E22E4187FEF54F01B873891F66D970824E8EEBB72B0FE16 +83B4D2FFC4FD0D34A776BE5BC7E2056246524CF55CF4D804F3818D1CAB18EE38 +CB2385F50F35D370E245909B0D1383A4013701F1B385E2A427C7586D903708E1 +AE5F01C7C3F52B4A1BB802F31316C9EB562F65C3DB86B58FA94A349412A34503 +3E3DCF28D3EAD0F6356091D7BD5B1415E748EAE5F65378B80D41DD5B5E0B1B93 +F327467CEA9AE1D23391AE03FD2628A32A6D626494876EAD9A4E321535EDA421 +21E03993B925D42EF3319A3751A09940463A3DE3726EFDD05CF449F731630194 +9EC8517BBA549DB5E7C8510CB170C2A9D74ED5C3E6FC28C4CF2F6CFD0921E445 +930F4ECEB4203F46DD2D9D2052495B0CA1A392CF548BB8A1BE47DFBCA4E73AB9 +A9AA2D1FE281F34B0A40E3404C7659838EE0451D6F052D1930987BEE80B207CB +2ED043AA06A37A9DC5E284042E609150021EAE9526023B5947EDD4781FA97006 +B027945A2C1BE2672266369A96AD23DD152AD19C3071185053CA1FC32C9496A2 +335A2F1053698B7C7AB7281AE53686004837FB43719889713B061DE8CFAC8B56 +6FCA20C8C7A2F5BE37CF7393F9CD7AAA775BED85509D3CB5D60406CB14155F7F +A9EC108046F75429CB8550B191A2D624A8835F55BC56B3B1E828ED8691379B9C +6CBF9698DB89A5EB9691C31E390B0E6871888E8E984BCC4A33158137D16D4C1D +6A6D32E13574F1CF601F19B0B87F0BA0D0E164AF12089259BB2A052994245346 +0627CA245C30158BBFD8B37E66C50A10EBEC439CF8CFC56AEBCB3D45F3EBC84D +3ECB870C2FB563D2A0898467FD0A32DE4C5F45898707CC7004A6948707BBD5F3 +475A15CC547F8217A85995159629CC95E3A6E4E793436DFD3C485C1A9519D8D2 +1DE1A080234D1A8472CDB1C832433A503BE49D2EB29ECF3F42D2B2D85D3A27E4 +EEA3E962659563E3B57B3CAFA5F99ABE792BB852BC9276AD6153658D95563764 +22C2B4199372FF2E382B67A5EFBD046AE56F8A5D11DF9137B1BD5FCC1D6CB5BB +D149CC9BE4FEF6590F10D0CCD199E4A840364F33FCD5B9FB27532881FBB3E253 +20A540830609137F09B44D6E7FC283E2D036CF5A62CD7E1188A74685926BAA14 +9DAAC16A390FB5A9612F74AC68BE2CEB5A6C74BE4B7E6A8273C4387F20EE1719 +01A84A3461FB1525D7FC84FD398570C5FBE62A389349ED316BF590B8A6A643C1 +71E4850122986405D9B37E6EAC4106A02512B2642041B214051B8FF460050BFA +743B91FA2980FE639EB7167D6E25918786D900C12FFF905EB6E26317F2F959AA +77E9BEE6D89107D16BCE5EB99B12F8494E5C9E68A0EC52217467BDAB29C245D2 +BEC87A14B1AC186ECC50891B2C02490D0C0637DA4EF429E5194E6E75844C1CCE +F3E5CC911D0464DA90AAC3666B34EBBE7C0995AB7F321D2EB732E17955CBBAFB +97BA957C8CCE773345FD5FC13C94B02A4395905D1B7B14F5CECB7E1231130D0D +C94465FF74FFE83CC7587C68905C877B3176635A5EB6FA0AE0C528FD810B66F2 +DAE6BF7D3EE521993D48754421E644E62795C292F83A9ED5D520649C61CB4BAE +01C338463F7BF8BA62CC0FA544D978E5CE447BD02802392150CFABC5A288032F +A51FCC8D80B33EED1B28046B527F8D3315ED1BE925FE6092C62D0817C926CA9B +68D29AAE7403544C2BF9297879F3AE4A371D3375D4075A2074B1C81DE8AD982C +34801ADED7AE7EFA31407D3369DDE88C20C2439CFDB3F2ECECC948E9A6731CB5 +431B4338EB1570A44D897F086CBDEC2603E64DC05892A9F151FBE35B2B43C42F +962ED49F532A0A2D1D73B583D2947F2AFF2EA2CA9300E9B0B30F65EEECE8C59E +0933EE359670BF326CB8069D411970F0C5E65CFC6FBD988C44F5D38A0DBB0967 +7367D664268022F23313F21491605FC60C115DA4D05733230BDD0096D135B6F4 +444344EB98F02C07DE19FC289FF85E80CD8F0ABC16544A5395A8EA5FDA555820 +BAB4DD6D2CF7A5353B989D5D3A490E3973BC9ED3979B27BB65487F7B0F16599F +26AEF8396177D83B6AE247F6C3BFEACE1447F468ADEDB1ABB8F0D66EE0BEDCDA +9878EECD74C226892F8CF8395714711513D36BC48C11B3B91B27ED63DB403431 +BB1FB4A85FB1AE71C3A87C672B884A2C11FE3ED3946BDEF8EE42BFFD404CB182 +B8265B4B848465DEF02C82202EC80362A6F40A6A1777D88F3F7AF5A5FE5D2477 +9FFBBC4E2F27BC440FF6982B9F82C83DAAE8AB9E6C57B041AE4907F14B701891 +DCD212C9FB4BAD2BF7F1A4374A93607C48DF01A184F526EC43AFCF5C64038BAD +B932714B9AE03F8B309EA08CE6E16319D6E26DF9DCEADDB8953D4E2D68075136 +2D4F52FB1791637EDBB11D94F044567D73883392EC5403AE66816715EE73C849 +CEF547B176A4F5C0278B39D38B5EEEC3D8C5CA9D388E6EADAB5D7C57D81AEED2 +F589CC8C4BA671625C65829CF210B36E149AA578CDD0300CF9F8144B10E5C4A6 +293BBD73CE125D3EA3201689C841003F123C66B2146865BD10CAC273BFD75DBF +3351FF2C29ABECBB0D5160ECAD7F70C513E842F42BFBD3FC800FF10B99EEAAAA +56EFA1DF8DE54A9C824D03DCCAF781458BC0F26B634CBAF2FAD7526155A1AE29 +FFACFF2E07D7438544987F0B0808309AE92344048B5E68517A7907A8BF3EEC2A +253297874570DE0771A314400C320FAE13A32E851649511D97FBEC4021C0E8AA +34B4451A1AE2332E5A726FDF2701A297A7C489FFDE00DF7BC1D6BC4441E509A8 +F72E5F84475D10CD6A7E2143C13707E76459052A577033A3CDA9B6DEC36AF13A +EB03F9B2C11A654421AE4A9BAFF62BACB512373088E8746685E1523B7C49C5AE +3F853F9767935518EDF630A9F9C617FFA2580862A9A545B3188BF6A0A7D66A87 +077C12D1BDD06D3D9E681A42D549675597236D01C5D299BBB720C47A2CA1352E +D0DF8283BD58A3AA4AEFCD25DC27565E0A89F29B1EFECAFF319287919C7BE5CF +5731A2DAC3514C80C13DC28B61977B7E337C9A5E4AAE3E6386B5A480F87A3276 +FFBB7D64A46544D09421AFB62A32CA49BA2DFD0496F76076440DB23FA1E6E065 +A0B8D48E2A8EB2C90D596B179F9FC7E68A731AC2CF977C17D2370B16A95A2742 +EB5E471DC136D2CAF24607595CC243A053117B507846228F04502E34E79E2A5C +C842D084BA85C1E822FFB46E2F39BF324EA04604DBB0125787095ACA9E34C4D4 +238BFE7B1A37ACECAE9D8B2BE519144A1C04ED733B9C398ADA687BB24F2CE523 +D0446AEFC526BDE1A5185FFEBA2F35A39B74D3F08F6663385F30A55BAF35DC05 +37A9AA503E38075DA9D7698542BD63A19F17F14E66232B20E4DE09F66EE784D9 +055EA36F003DB42FBB9354093C4BA6941CBDCDB2C578D5FCF950FA9CB776825A +0FAB0120DE20B8E2B5A6933949A0D40A89D6BD51A4DBE1E44370932E920C1CDC +956925FC858E30BB5A914FBFCE9EC7C10215551BA52AE8B48DD80CEB64BA6F50 +624161B744A242FF0D1AA8B08AFF9E6F5A67DAB09904FC9DEB7463DCB3EF9DE5 +23EC0B48FB12A920DFE29F24FB2F7BD7B74D662C51205718D3BC7A5E5499A551 +6B7109196B123C093044ED13FB5F84EEFBC53BC84C611F378A6697E56BCF9757 +A48416FA384A91E2E465D6050F41DEC142E7E00135BA40DF5B1EE4F64565EB77 +356B5B5CA1FA1BB56A86D13ED785CF93051B9A24A1C34BA82801B8E700739BCA +A3C07C73A55ACCC5C6786E5201EB2382D7247D84A943E0DD5D319579F4DA1825 +55FFEDE01EDDA7E2ACD4A9A7105FE2A15BD6C5D882DF0DFDFCD73F9997914216 +7F3FE5A934A8A75E05BD8EA1E1DB6AADEDC6BA556332CDE1A71FF9AC397B5DDE +E8567AC6F037BF7D88644BDFC42175E7D78D170B489BAF7D5E431B29F4E00109 +EC391AC51DA945ECF13F22C7A094CD08C14513A3BA0E64AB0E024938E294FEA1 +505BC706D9AD7321646176D850C2B2125B65D5D7D0C42A26913DBA293A7BA815 +E7193F71CFB0F38B0CDDE36944C3027F17D5941186EC51F67118A40589E75E02 +DDB4F77196426AE0C04ABBABF446B10BE464DE53E8462F6C194F5DF8E0D4E527 +8B574665E8BD599EF2FCE0DB008FE881C5EE43C7E255D2F2F23C98329B53CF45 +F39DCDBA792D359A93C1C190EDA28DB47CCF60871590E3254C8DC48D2547AB0F +2C06194D7D6B3C6E037C5712F585406BDC08F1D35DE76477FDD7416C448354A1 +6AFD08855659D0104277332DB7C0F766AD7DBFDE94B76766C0145A6429F6DECF +97F2D0D51581F75282209B44813678003EF562EB8738D2551319BBBD137EFE9B +5D27EDCA51B08A2BF5E9D5A21BBC408D1E80607180A7FFC985D47F8CD618E881 +839C0C3107E0AB7A8EF19AE242465D1AA9FB9D0566B02E3DBE4F3EDC8E741213 +CF9D3A51596253D9D00E4E8312FFAD6DA2B56B41509A4DFFC21F35F028C5EE3C +952D7E38F74A9FA5F78D54B2F8395CF5CF0EDE8D19F073DF1D0E6648C337EFF0 +913A31F73D1EE0CC636C139D4602CFA5EAE2D311FC560F3AE4941445BD33DD16 +809D2BFD24848800A3B671C73394F235AE808B94AAB1285FA8987ECC2FDA411F +9BB614D14E1BF3D3B872C937AD96BEA83B8F21258F2F2A4D29DC8F34E7F1538B +B5743CFC3931AB373BDFEFBEA8B3D9500C8B2814BC2F202871C1273FE25D4A8E +65659D6AB1608AD410AEA9CAC3C1C4B0348BA643F82D0286722E5FAB1A7B40BD +833F7958ACA411B03DD43440E98C92852FCD2A60002A2C3BE88E2DCAAAF74763 +C9AF533B91888F1434445B48C05C8A005397BE12C3DE8D0E6226E231E3955BD2 +68881C4D5556363AA14BC1D371E075E0501C65089A19B396E10193B2D0AF39AA +1445BCB4FCF4EB3B47BB2DBAA7E219E6CE33A03BE3D1D318F899C6709930DC6A +2FEBAAFB5503249489EBC3194EDFC9D26B75A2EF6DE15C49EA905CF7D41CDE5B +CE8BBD60F12FBF80F55571DD0E2E796D53174F9BDCCF51AF33F3EFE03109E4AD +B908A5A8AE9A3C0AD6FA7B07D9A04621E3AC301F73470F72B4484A9527C9CF4C +36E40FB90BE34CB2B48DB39EAD9CE54DB1458D8A1C31113437464B76A9F8D97A +2913F20DFAFC9886351BAD83EB1410125EF0B62BFAB127EDEE6A150BD0F4C275 +C8E3A51CA38D3124E31EEC5356D1E8B6B409B84077E209B61A182EDF3ABA2763 +BBB1C2FEE3DA4FAB747EBF176AE703C89DB1E7C4B2CC4E046D415F41DE86C3E9 +BB7CA9AFDB5B3DDD3606CFEE9A057DCAA4F10C2397A798902339B8543D9820A9 +100FA13B12458454B74B96D336A546906F65DCFE7488E65B210D5342FC31C967 +4563043B3373ADA3F7148469250434E71D21A0EF22E68FBAE8697CAC1FC5CB20 +C7F4F8ED78E10FF706E652B154A6CB718CF9EC34C7DEB7BAF419C12C939B4535 +690A5DD5B6CE4B5546571D0A44FA386C394C8A0494D0A490AD26CB834856A2A4 +6D8308922447D4494E1996AC9CF0E81B14B97A325DA35D8890261AD983CB7894 +F5531DA6BA14B332CA4E5A63435618E857FC98F467DEBC7A8D6A01D5C27D8DBE +B7377B03408092A2E69DAB0EAB93A2C4695129D380FCC7020E3C3EF46269FE8A +95C1E4A03BC04A270B31C1DA249D8007D946C82388746BB9EA2BFD993509E3B8 +F31D1DA52AF95B71867F47ED0AEF563BE8FC3BB339BE773878A1F10CC1C84D2B +ADA07BB330C43541D55CD158C4B96ACDB155C786FB7E5B2B68CF0348C2B78AC9 +17E8087D558A2186B185D40397188E16470333C50216551C0E1F39FFC1B2FD7A +31233F485AB074CDE2F9C5B059F58C0B129B1D8CAFE5133CBD06E0161698396E +C671B1FFF9B6CA0EA97A1297324D30264120482DC31E9E370ACA0A4596E1A9E5 +65FC314992A46DFB1C8F2982A72C2B7167B004C03B0CEFF3747E99ABBCEA4E3E +48C1CE6B4318C43F5DFA4C9DF56DAFDB3B856E8D7082723C7EA5E3B83BFEC4B9 +6B51D8203B0B3CFCC696C1C5F907CBA370FFF14406F1EA6F948A73FBD603145B +41919D9A2C1FD95BA4872F32F07A32F720604C08405803E78006492C4DA4A2F7 +531A3A76F62F90BF7F845BD8D82D6E1CBCF8736F69D5FF1CF81830969D4FFD1D +DBD67E1AD8ACD294F3BF16B3E556CB1565664B88ADCE9096772F7D9749627C9D +8AFD3FFB14DDF4CC238F8DCE1F56B60ECC9174341D829D2AB708428841F4D81C +07B9D03D4BA196441344EEAEF73F3DF0B47B3162AFF34D4B64745F706C36B7B8 +91AEC2208C5F7DF4C1C5D08C78A8C3077ADF50DE34DC217897062A57DB7F93F1 +E636396EF56A72216F1A374F0BF5A66B47B7E08938C7E4D85C053AE1AF1928E8 +E2D868A11DD44A5E7C1DEBA35614A162ABE20D1248A1698D994217606B0D7487 +3D85BA330A3F1AA823F074FA5B7C8CDFFD5FAAD630DBABBC40970F45F9D258C3 +8E6B503E99C8A8B3145270C25CBE2BDFC48869CE315D11B3419E77F3773186DA +A7892B08DA8F5C29F6051298BA6A1E62EF5542CB8BB6D6A821D309518C90C994 +FB2162D151FAF92D8B918DB80496E9F0A9D8DB0B010E0F79955597ED059DFA96 +D011A4E0B69D93A4BB2FFC209262DCA926FFF5E02BD7E49D558E06B3A2E8050A +C6F97E46FEE61FF6C043AAA1118352F92F9D3188520C11AECF727E2C8F47CBBB +3DBF4C9D3DC1B6871E0E9771ACE2B8BC13D57C3164763BB0D952F9D31EB9D0E8 +BA39FC9B73CF7FC285D6646A74E7A24F4730E957769341D38CE701D7B6E2220F +DBD327700A9557847E0BE204D270FACA30635BB4397AE728938AC220533B8FCF +5B589333A66FB2501665922AF8D8B0C261331947AAAD1764CCF251CF6F402289 +B5A799D6D28A5E979ED2FEC14416BC9EA6239247F84FF0A11C0B72497C3E7512 +16AF9C1766B510533971E855DE727A37CED5072509934C1A5545A473414D4BEB +BCB70E2A170D9B583FA3E65DEC438A6F9175676699E93DF0C1BB37499CFC4F2C +AC86EB3D726A1CA88857032D4AC7E35BC06C7C2BB3C106C010672ABC1AB38A25 +D349F07CB140C733BF91886C5D3DC6EC3EC5870E6D610CC48F2B725B40E99231 +9B8F8896CD8E915D11A05CE140D79AEE67A2D1654FC3B3AC74DB78B1E9EF4174 +189B08D389475758F3C41B97D25E2329928FA37D685C3C664FD191B3C6073A59 +27DB494753AB851EB470C6613C69543E59412F2533A77338FD3BD9AA0C0438A7 +01A24AF6E23A544C98168540E0FF9FB1A5579C2E032F96334E33F9D97770F5D6 +DE5B3203ADC74C49FD591D5AF2A3E485C9615EE7FF1E8185E265BA7C51C239B2 +965F4077280C46B0D37644E11D4B470C5C61EC4AD391BAFF9BAFF6E5D93E56EA +886B8C16B4137DCAD02570542B3532AA4D174851F1D00437ED0CB32492D38E3E +8AAE98D79CE25D2D831F2A88611A5C714C18507D0F3B07584589516AC0728464 +FC0A303D946C141100361DD7B7BEBDD1A67325404C64DE4CF1A9226D161444C4 +B6E990A38E814B2F891E8316E53FEE14BD37E18833DE7EE50916C30AE59D1330 +D692760816E03021CBE3420D52ED28995A31C9F49E3B8565C5AA925AFAC09029 +AC75C78253CE5151ACC1C6C2BC31A0B3E531CF628DF9B75C6D8948EA3F8A6F22 +EAB1683904596ECADB7B82473F3BD100A967E242A4F1FDF566CE2D713508B624 +ACE3FB52BDB2EB3768BB1F51CFBA318593CDE57F2D16E768F9BBD11DD7E444C1 +AB47B6FD54DE7064A9AE7DFA6313349915CD53BEEEFB0141655E4B50A549228F +0FD70D93A638081ED33BF15CF85A757664942D0A3BBEAF0DAE575A12316CF813 +A40DEE0D4D647F33B0C1F6DCA7DDA2703787CF29B2762BED9F7C734B61F8F350 +2E8986426E3CB0C840716AD135F1FB5A92DA2D93B0448E1CD90AFB26D7EC9CFE +B70FC062855CE04FB7968746DE212BDD028D8914196BBB8AFC3DECC7260FDB83 +DAF00B2808FF597BD8D909A732B65B506A060316E1A52AF658F3490F60E91DE1 +8D07DCE96603602ECFBBB766ECD63CA5DD26F04D7F1B3751B45D43CEB7492EA0 +7BA260225CA5F8DB13A5D818E702F6BE390E6D4B9918230B81AAB33FD2EAA512 +D037BE6DDE5F468537B4D013D049F6A2ED94ECF9860036300AF377E8A47343C3 +392721D22EA9F4FA66FD747BAC1D3B2FAEFBFDB95801AF02AC5BC1B85273B33B +FE942CAED11EB9CC179D21A1853507894BFE62A66BD6F3C596C6F28C2EE08F31 +10012B38840177C6E87675B5D483403FEED4D5337C2490D58643C000239083CB +FCCBDC70AA3F145A78A67EA407C9ED187E4B7378EFCDA1502009B20EF7CFD5C1 +B908609A790C6EE4ECFA814BD36F67109407D3D4542C5BA5D7ABBA4512957BAE +AAF68AC9FAFB3B7E417A2CB249FC9697A72B78C3F01054EDF0C31636EC79B4A9 +1A6ADD75D3C62DCD185DC4DC16241818A12613375470D74BCED55B32DE548275 +2B45253238FE15904AA34884E84BA627D7A4B30ACF6204EE45173EFE304788DC +6EFD65621F4390E4D712A59CC8DF9F2627F99D2E30A138323C4E3200FF73C36B +665126F46179BB991EC9C1A4C8C741A42086196065E546F95368852EC348EEF7 +ED18CC3E5689EC7C84521375E63E375437D4C349494F60A0730AF964E72F2D52 +81276BC73E052143DD6F735FE55E3917C160DA094575B1C7707B978918DBDB9C +FD9FD2A142DA151BA48DFCBB59D5822C727300CED9525BDB7BEF6F27B807699C +27DCA9217D3D3343DCCCB6ADFBA3B91B266EBA8CCD1B27D89C36CFE48625E531 +65E6087103B8EACD0935F6E1C4DF40CBDC99BD1B7CA14C08B78665810708D0CA +5F60E3E86D43D5F2F7D87C68E8A806A98D11237966C7C401B6DD245AA372E25F +F48D45F496E0EC559B531B8A90B896D145041DD419F949D38CE0CC5721DDD4BD +E93E5A6DEF9CBB380F25E7C42A070C407A8E5BAB052C6D39B978FCFA127A138F +A773E9F40BDEBD64908B9D82B94C8728A056017CC54169DD21F1BDE36A1A5391 +E9946BF86A9A2192B6DE4931F5E37A95004F2665FFED31DE086BB2BC709D2667 +D57D1ED8E20865E7E2C984628DE0FCD865EEF4BE7B16A273BE28E149C9A1D83A +75CBE17B8C982B8395B161F53F5807B14F4E4D8A17D7A80F5B4A4B8050A65C97 +CC05846F2F04EC2D2F0F8C51FF9C052172CBA4C9FA8542A21F2CE112AB3A011C +5256FA51FE4B9C8338217A86F3ADC0CA77112B5C6C3150CCB34D9EFC36796566 +5731269D5ACC56ED63013164192E7AA7E8A57F77431DCBDA76313FCB99E5DD7F +B88095D79DA349382CF27F5ACAC9FF748F8D8B871FD4DA797616F7A56FC0C66C +9E8A8950DA9E64354BFB57B66FC9E41D35D163A129652CA038A13AA98C443340 +7C56ADE5CABCE540E5E3E8327B39FC770E26262E9C79931A5505632F10131AAC +4AE2D47556CDE39D13081B5353E3DB00F5B986230E436FD04EE91BFD1E58617A +7CBB758B45BE48C1A51BDA8D36E6DF085B9BEA1023742B41C722BFBEDBA7CC11 +380F022D85E9E8FF1F4C25C8D96C34C50995CB42E0D1F9033D6363568733EE09 +271E90D85E429713F0EF09416DDE0A0B26AB9BB8BF1C58CC4387BEC1EF8D26A8 +FCC63CA61B1FBC2A4D8F2ED7655DA76CCD8EB5ACFD43DA33BEBF2CFC5E0FAD44 +86FD0EA7D42B1378D0DE975DE97BD891E1199F6D07E7C056F2091FE2C8F105B8 +C6AE7AECE5C8EE78491798A7C4E8F2038438B87BF2AFD0AB6C1E1AA2A919CE72 +3B0C0F06B46AE92CD428C2CA54F56D2A3796727E6DBBED2E09E0015EC0B238D1 +287DAE5C2DBBCA73BA01B4F2747BE51DA283728B296CEDB8FE322ECE94C0D914 +F173F2AE90091265CFCF8C94AFEC04F60CA034C2F1D62E2A7C448A5D0AF12F34 +44978D516C95F1C28E91A31258DB9D90BB9E63C3B408C0F7CB6CA4DDA4D1FF37 +F0F419CB59E22A44570E36E3D0595493C184877751FD97F9F76C00C5A8FE4A68 +21A431B213341167243927457E86C49A8856ED997211FA1BF09D7558454142D7 +F8E6469C543831CDEBA286B50ACC1A8E13B67AC3B16DC7003D25F172AE184BFC +6B8DD6452B2DBF73F07F67A910C61052864CE0E02A4AE50266FFCB21C37CF341 +9901ACA5E15E280E81DE34BA5A4A90D265DBFDE21B0E19D074858D2B356819B5 +AA1EAD72DF64C48A8197138395D62168CD11FA2ACED42D420640F63362316855 +086525A19332FDDB192883871BF8D483B6B09F8F7CDDCFF96BEB3C39DC1E64A6 +4D9D8566B9D1A4F5082100E3AFEA91FFDD6409FB27F10265749ECA18EAF11E5A +E1767279B277606F5524A7D740890494F8245D10A6A5413B9E2AEF6DF56507AA +5AEDCAA84599446A75BF8E70FEA09133E567B079A691BF5B4B65367250F99DC5 +2152C54A4879988A0F2EFA8F269628ADFB3C715193E6A3CC4BE5C3306CF7907B +6FCCF1B593B16A043BE94D0C4268B1114EB3CBDCBF343189C0690EAEC8FB509D +21E126DC653AB8550F72FD8A61C6E3526475DA54BE4E6DD4CB43047C999F108F +010A138CC3CA0EE46A3D32199BC9B12F726202B3077D4FBF0B4E94B333D31327 +4753D5C228868011EE1E98C73551792C5375B73CE6F02C9E97AA3A912CECBC26 +8BF40C838E6791D2D603A9F2F82BC6000D8DEFB541C609A7EBA9AFBCA4903D6A +3A854BAD5C4372E2D18EDB7837DB8A901D56E6712A4108909AA5FF2AABC7A894 +154C86E9C75BA296D480650B1FE60064B872C6D6E79851A347F0FF8DBD470C66 +D0CC316AA141C133808F0781B687222B5AEF8B8776E9916941D400999163EBFD +66760578A1F35225B12035B19D78DE70F602522546D3DCB373DED303A3A71428 +A03AFB2B4D287BF3AC834D9BF8941F8D932C6ED8D1E3073E2C40A6D5DA0FBE0E +C255F895AC87B2A1C69AFF691B3281FE363E6A2EB1001BB418FFFA8221EE264E +128D8548F945BFBED2D049EEB1617A27D633BD05786235A840964A00B6E60EC8 +E47BC2C76BD9FFF1CEE56546ECBC5BC4538F9F61EA309C4CDFD9B3D315F7B4FE +0074AD190B9FBB91D8A9A4FF370EEFBCD54039AFC0BC80F46E1F1263DC026CA9 +E7DDE632B830F060D1C49097C6B98E990B316518950D597BAB669ED95254E90B +C9A6E12DBB5ADC3FA0AA8A5DD741A9743CA3359CF8EA044C91DFFA10AEF4AB34 +C847720D451660DFC428CD21F14DEBA427690579530BACC6C42FED5C3913AE55 +52583AA5388179C7AE0F3D58145EE487DC5E0CF619E74640AB6159C5B1ACEDAB +D6F7F893ED837DD5583F1AEAA9D0B61DA593E9D5D4F739ED822E9D41F889FDD9 +78B71B8952C5F2111A3576DCA3C4DBD45D5E916CA20D2EBC85C149D8C2376AFE +81FA1C3B0A2920870F9169E24A99572EC90763A78EC12D4BF2D1441858262D1C +CC670DBB6F98B3011800D467966587AAE60EEAF7DDE7B8570BDB89E82EC05351 +53EF70F7D815000E33EC2EE9A902A0775B89365702693C2BC44272649AEEE3A5 +E9B3115FD13049FD705824F1ADFA4565D56E0810AE5994B907D0B64C280776FF +4022A6A05FB6766AA81E4A1C50062E5F900E90A6AEF4B1FF3CFD1AA9A38C3786 +C32771AD81ABBA3EE379B6BC058431F1891F13F16DFEA23710BC10C4317D3097 +9C6E0F733B088414BCB206D4E99A81324DA6B156B05B8EC44DBEA963D545C18D +2F866A63FC4DCFBC9A1DB682633F195D9D7683EB7699764B43020DAC116ECE68 +DF18E379DB7118603B08F6A794815F0A56178AB9EC5AE10153D552A6250D5628 +509181937EAEB706C6B1D0838D6FC92E4D81CB77232E8C9C79BFAB0B38F66265 +83D0531CD1BE8D459793A21D7B2A37513ED536529064C804EF6B98C8EDAA9C6A +3643B3DA5724C0D342C761087BE822F17DC58370D3251A142C410DF6320B649C +63A2B66501BA5CC721AFBC265984F1D59FA6980B62CB56771BBA39D09DA1445F +7D5B100A03B041F5D83B8EAF2475AB4F17A8E37E80250F465A4A25B289E870B6 +00C1FE3AA5D0EA67ED9371BEB83BF6560EA33FE53F100DE329F20050FE24AF5D +C4F70344DAA888957F9AB9828D09A0E832E7DA7A1C065F7D5849DB97EF01F7C1 +044E265828E4DAC768E9394B622020BA87EB43A1F2B512788D2DE92A0647209D +AFDD823482FE4DDDC1354E5A5A5D40F62C2A1192A5DD6964621C5C777B4592CF +A8C7CE8A3F2D720ECDFDE2A44F85C3FB3FC712F7685239A946675B81394B00A6 +83BCA6B2DE0E2EBEE98FEE49B80670F8B016F4BCE6E62E1146E8A220B85F5390 +748D196AF324EE8AA917BE1FE77628174E1178CAB080EC9857FF9D48CCEDB2C7 +16B05E063998D1B8FCA4872915C725A7BA90F1528B23C765E1BEDEEBFBB5B842 +BA80945FD4A6AAD50BF4160208237A26E87FE82AAD579E4A50D3EEBD0357EAE2 +F93ADFB955E508A5A2434EEFF946C61D451EC9EA0E3422C38681234264E76E17 +669DD4303BFECB19F82667EEECE05205206BAAD6E867E59EA7569AD8394EB24D +5A56A6421131E06BD4ED00F888C023995BB1DEE99EEE71E2FDFF66D72E0257C7 +523949FFE6ECE300C07B2BC3D446964801425BA0BE2574A2E3FF5DDF654754C3 +4E78A8CBFFE2C7350928AFC67BD7EB59C8088BF2EDC64F945E46F9DB723F3039 +717347375154A017C6ABC65E4B5E974F9815ADAB34D8C24DEE5F14D04847EC78 +9FCA8FBF432FCF144A96D46C4701E388F0DD71091FFD4CDD018D57C85E95920A +A387D0C98D78BB525E198D6AEEAB98F070635291CE9875B77EE1D6F3637832AB +5821C606EA20DD1EE21A36526870BCB3C1BBD37E0B0C98F0A4EE86556E432228 +332110FA1340A7A1644A601BD399B027A51CA3AC4F17B693CABB81072618625D +DA8C8DD94C44B26016FFE5C5BF0FDFE96ED17A9272C452199BECEF8C5F3A75B9 +6D984EA2F3564BE346EFCD460360DA5FDD5DD14ED87EA60C1B4ED6CE84C40D54 +B370F889B48919AB2BA1BAA3DFFA449CB9C4EB0DE3BEAFD1E3C68E465D3F8967 +4C5B0FA308906782367544066718BC924D2D25E88A278AE551967CC86EFFC5C8 +82C61C68C544FDCF2528FF8A230C9C402538B179FE4EADA385B8BA9C8557FB92 +6E259136F869974CAE454AA46E6DE9141A8E562992B29092E4C5BE7BF7A957C2 +CF87D111AE27DBC495FFED79738B8BA8F69F5768A39B5ACB68BC7CF56F3D0369 +2A5BD8F41DCD71FE55818739FF2F9FEE96599EF20BC38ED54E12113CA0B79FDD +5BD7578B64815CD1745D5DBD73E22CC9D5245998BDDA350E288385DEC7ADCAEE +853692F9FD65033BFBFBA6D504B55DB579DDC411515CEC8D873090B923EA16C3 +6A43AC45BC139CFFED7C736E945F84CF70972799685AA910DE009EEAF494F26D +1A9CE8D9B805AC4CEA872DF21A6EA846192772A7E40CB35F60DAFC66FA750153 +B0C83DAB2C8977A7F8DAE9DA19B4D45FBADF1983F0B2458B4B889CF30A7FBCAA +4C62C1D70752AC753812D47492EE1FF477677B7FB4A782D488E7E52CB55A5E75 +3A2F40EF4C707724418910247F59419943F3CE1A71E2EEF263B3214C8E90C1EB +F0320F42DED892692386AAC25746F86EE10B46A76BD7DFA278C428ADFF6D63FF +A35949869093D1956B6780F4AF379F7C93701B4337483BBB37683FC65D82F2E2 +EE955C269946E4F2E0E80D4249E721E68855BD199584090A5110C836540F73A3 +32DD7DD78D00541C4E721A846BD9484FB63B147C879553991E147EB16EA28415 +0965032126D0C6F394BE700E58FA8FAE9909BBD4F7B32B26F8EB96B2EA530FF6 +8ABD01133E28AFA347B328106121A0E6F2DABDCA25B96CA77CDC656E2E0785B8 +E3166685C3FDC27532C9A64CC4B3117A76B32FCECF5CB1BD130D80020C72F1BF +83C54CFDC9A0CE1228F8E3C5E644C2E423E18F2C79621E0129AF6A601A89E6E8 +F387CA9F50A2E7F3D4F863D1F432544A57E798FC99A6C8B17CABA55A172439BF +A2E7DE0C7C9AF32B736740F1F594736D2EF663C903C7DB36BFF608C62C93155B +CD3CEE59B9B381E61CACFB42202EC7E33E03B68E21B01D23EF9726B8F0BF447D +0532B21798BCDB6B5F0E0697939A78FBD456D369FB287A8C9946FD16E6DEAD2D +E20F0665F36D086BB115D41DE6675C01F843A6656EB8F38CA1486C48D7172702 +ED92EC045B738FB2C16050DF31C52326C46EEB1083BE019C0AC040A620C2FC4D +0AF5643EB0B6460A975F640F4ABD8F4A30C8B6096551A8A358A1D77DB449629B +5397A068F5E86B367DD2D0D3F31B395620B82B32FECBED3749FBD3189259B0DF +980C492BEA96BB8C15DB66E3DBEEBEE20B0990752A41A826993815FAE11E690A +E157CFD70748B02B683DA200D455200034C893609219BDB138F45E08C29A402C +9390B3612A920DEC102FDB0BDB1B5C37344B9234C74625A20A0FBE7C680E1C21 +655627CEE1E7B75A2C33AD5D21E7EC8577D5658C5C1BF6AC63BFC8E8FDE88448 +A80A3FEF8C31BAD43FD15B5542BCCC7263A3A72D122F2D4232FE7B5FAFE33B07 +7330D32B1CB27A4FC92E0AA226EF18437ED00CED92F4DF2E1A8B15BD36BF81B9 +7E4C3C00EEEC508B4E2A16AA +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMTT9 +%!PS-AdobeFont-1.1: CMTT9 1.0 +%%CreationDate: 1991 Aug 20 16:46:24 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMTT9) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +end readonly def +/FontName /CMTT9 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 45 /hyphen put +dup 46 /period put +dup 50 /two put +dup 64 /at put +dup 97 /a put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 105 /i put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +readonly def +/FontBBox{-6 -233 542 698}readonly def +/UniqueID 5000831 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E +2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279 +650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35 +F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A +D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E +F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1 +4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A +438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD +BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B +A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641 +AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74 +D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB +CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A +082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980 +9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0 +4BA1EBFAFDBEC531EA13DFBD6700E53818CE04D23886B8AE75DCC36BCD3189B1 +0D55FAE27D0D126E82AEF31D7B5DF27E58C30BB0867D6D7AC1DA9EFB8A2DF095 +B5B934A68EE122DA0A83B36C952431586B957990206194E89339048AA6EE4C53 +703763505ED57C494DD907D0EEA04F6B1D4C8F3BA778F4E7AA832AAB4D75F024 +61E91C6D25FD6823CB24FC863B57C0471CC9FEB22D97D74D9D68C3137ECA8424 +E93E0F0A1AAAFD7053823CC6118B17EB5183545766283D056B0781E49D0D623D +6156EBBD42ABF9297D989D693E10D4CA0A5182243015D376F8BF48685E12A4BC +74B10003FD5602C1A10FD77A6450484FE534E6D913378DD4852B52C21CF73AE1 +F6191311300CCF55A671833CD4876822952419EE6E3C69B88625E462323B9332 +0694E8C7FB4F3CED94839F4018B239E68F60EA4C71351909C4ABAE093D8C91A3 +1EE3200C14726E0BBE136775589219156E66FEADE3A0513BDD55A1750FE45468 +9CBA5079CD3354892385456D9E57FB133D8256C4BDB3447355F7D1FBF08924EA +D9892B1C7C703DF5DE596FF31C06EC25DABB7E073F18E4C7F75A067A3709B92F +3DF53CBEC468BDAA021526948253D86AA9AA939AAC67A7B9879E6C1364ACEA2A +22BC50507B2B93F98ABE2FE0A2FFBCE23BB869CA5237DDA0F4396F23D0E0844C +C5FCA756382301B641C96E87E6F47B9F83FAD1AFFF3C81D2B03DC01F3EEA12BC +D2415CB730CF5AD3390CE4AE585F7E31C1144AD4494EFBA3CF5B5B20D97912B7 +9FF57F90C3A55CCDA052FFEAEED9C5F6D83F4E2EF361BF364A1D86C93D23350F +4488B2471388DCE802668ECFE04D62D6B6DA7E5E7D892AA40AC442BAE686BDAF +14F69E0238EDD6E96EFE625DA5CBB04B06B335405E08F8C1AAF4EBCC21C8F605 +33B76F3223B8A93F24691B55E017F462B63B04613156CD73EAB5C51BEFB4D886 +C6C8E852F8B1B5387360DB6EA4963F3E606B97EAFA1303247A6289082D5F583D +48AE001AA9BEF2FDD1B693DD38CB6067268C2DC745974EFE117763817642350D +F6FB58A42B377E6FE6F927A89C7CE18BD37914F61EBF4844415B51E8BFAF7E8E +92B71EFC4CD62BEC8E6CE06F52E7DB72C02CA71705EB1474B5C19E35A2FF92A0 +5EF6ABA404B1D30F07E6535CB3D342592187D94FFA3434C1A5AC19BFA09EF866 +9F69BBD02EE8B1FD367C9EA7675456A9D3796DB87F30DD78757A28D19FC92021 +01B8FD9C352937589F9B14ADE31305D72D77B0BF59294184AD2850BD1D284827 +65401937700976680192C36A772A2475034CF75798207C3990D7253BC8F8845F +C6DABE10FF40BA52347D0D1C9C8F7CDBA4BD55A56A3B60C13A0CBFA130B98C34 +29E2CF6681E71F0AC034989C5DBD0549954D8CF29D3F02A89C7C60DA0EA29D19 +E8801BB2C8D01D39FA63D1B7E539EA229CB39816AD943C0466EAD5BFC64FB723 +C8056032301BCF6F9DDF3A3C7CC13DE00BAB66B73CDFBABC5F578AA42C259DBB +791075102FC0810D73DB20E013C5230514579FFB0D53082CD0AC0E9883D68133 +8D06941C8AF73332B1759987C306364A3DE23FDD711AB340FF5A104F95B06C6B +841626BC45A31385A15B68D200BB1F8C927EB67771B29D1863C95C1D4CE8A149 +CFBE1628EBD44E351F229598548B9F62935C2D48EEEBCB189A2F52A3B64488F3 +78509294C4E8BC404DA9F061AA8A943B1D44146612FF838C6EE65033F7B2F6CF +545180804E8E08BC918AE43EC47B0BD54305BE203F2BB6528339C257642E6270 +899D7DD0D6F1B10303E02875C3B23F37EBCFE958A4CB878E28CAD3061C4A35C4 +0063A4FF33CA9FF36AC7B4CED3FC2D6468CD1559902D2C352324B90071FFA90F +CF0B62BC4BBE6EBDF09967D7C8126493D1A24B32CCB7954C8D05B6AFC08F1D4C +FB0DCACAE6F8D551743F5823D29050A6F417E9A43B7889FAFAAF8364BB347A45 +8ECE4C0FD38302B71E2AB22E558D0267E9269273BF0BBD64E4AFCF65EB18BA4D +B77526D01E3A3FF9B2BDA0CFA8305795D006EE196D2C85C2D2F066CAEE5F8725 +70D70ED2D8F34C905177E1AAB15EB68322DB40CACBCC2910680262C0D495A779 +86DF12197FF21AD049A0805C319854BD861901422C7C8F705BCD214D05FE45F0 +03B9A7395F7448423DCEC6E00332026341923DF1B23DFE93B670EA043AC9BA8D +CFEFFA2C32917CC2F6C1DC1066058F1158A49BBC8AE69F6A2C87ACB644941ED0 +D0A061F4A8A3ACCD4F3BDDF7162DB4250C0A51348A2C892EBC2BA86814AF222B +044532A4C820C3B109F228DFCBA3E920B814DB18C7D43D04B1BC49ADB11EA7D5 +29B7CEA3978474DCA22C8C4602DB2DF47F1318F704C4D50772DD856EAC9C8A02 +2A595D602EFC7F57C55BD958D0915173DF1A0C377C01F93F4F1BD736AE1E382F +1C2EE12018A2444BC1FA66A31BB8183775C75145CC3F8502E6FCB4D9604441E5 +5D3E54E577BC6A14236E1A1A26124E98DEC28490D733098161819D7896DF0445 +4A785FBCE977DD8FBD1BA6934ED73D990CB12CCA05DA97AE02BAC0E9CD92A665 +5658FDCEC2C3E5682C9813C9BB1C2E51F36AC0C65C063A49904E146ABCC9CF15 +D45C37330D950C84D997FD1774136F0A6A4F7AE040041CB4336C4141701DA5F9 +C92FC3CF40E3334D20D2D6E225FD82CB66656589B5FCCCBAADDD6AF34676271F +55E4585BE95A14EE9BA249B60EEFDA435289529B5FF319B83249BE6F705873FC +BFB5A5215D6AA351FD6A534B042C57D188456CAB1A399B582C826508A68AE028 +CF79DEDE77D5DAA83E4877B920DC324EAA5BD1D44B1959FD96C9B34E2805E758 +32B2EC70EC4EE52397A1E133A4B757AD0844F7ACFF1EDDBE77E7FB8A155D69D9 +5C87892FBCFFFE0191074B979FD7C90C2B994167924DC50BD0D16F8390E43C99 +4EFF8742646245739BF334C4F5489DAED6A015CD371538F2D2DF4A65CA970032 +83CB3519B677C2538B444672A9236B2A1BC0D818F4E7E1E103B5494495BDF368 +63E9805B59DB8A861C96E9EBFEAE4F30867C6B41CCF4508073CC233405A7F571 +113AFFBCD0C394C65BC038B2757BB3F2A61C811B39F3A83774E6A911EA741CE1 +EFA66B17372B68B49A8DC994F8958FF1874F1723F9BA470184C1085570DF1DC8 +0645F5D8BEEEC505A4CCEED09E23F6AA9837D01322A50D467237D8A5E927D2B8 +0293035740ABB785D6E930A1589B8856ED9261BA4DF066D464AAE9BDEE654B48 +1DA52F7CEFC727F297878E2E1515B902C6010B32D6638500FC9962339310CB25 +1FDA0E7B3B441455DC1957A817A4E3A98C85F1DE6CF4439D96D5217217ADC051 +434B1532ADA7AD61308015FB332B3F5C028D3D0DA2F7C26C2835BB8FF07E30A3 +5A111ABEFB79C03FF4B54AAB1639B642ED9E640380AFF003C43BE3DA813CBF79 +B8584F2F3A58162E757B1548F7E31D636A7D5DA63D6FB043144221AEB5B57084 +C12B6FE60278CE180B3A6F23FCCDF522C9A734BE0F7C4AAEA328D6031788CFE5 +577051A54698A6009EFDDE31448AF31CAF1BC77A2362A7E3530BF5E3D5A945A3 +FA24AE750C270E32C2F9523367CDF6F71999182F8EA538B05FEDC145541F5113 +79A673232BBFCDA3DBD7D9BF5D4B67282F860624A572118838E2D0BFB4B54A11 +4FBCA7F01C28A89BEF937ABABA5862C84F6040A21AB5935B2886BC044DE602AA +F206F6B021D1CBF667741D882B698B8B7D9C380442F96841D5AFB585F948310B +D409E7BDCAE28E4EFFEB1D2315EC2BA809E94A5FD9EE4C10D00C54A2ED03A837 +6B62945BE433C6199EB8BF39E8F2F9FF0E3BA1126597EE96464D3BC863EF625B +7FE65DF435DE8B20306588DBB684CA4D5F6968D8350BFA4FB948BFD05C299CC8 +DE477858CCDE6EAA663EEB5B4EE343A6BEE16C190D7D90202D6CA93303BCF3CE +F4C15A4BCDC2B619A3E1A431935CAABE4A4CE9CE68D62609FC28130B8FB686AF +E993C851DF8B6706F094A2BB035FD35720806821103E292E96167B1050950F50 +668773050BDA43050A0D776784B5A8E344A766D502F29F062EFF50AB9AC82856 +D5E1842A0A91059373567A4024554CDAA75620460A0990CB20C80A2E0A8F2FE3 +D2D2DECB364000C5A597AC6CD6DE0D3AB49BF0A8469A1411867A354E345391EE +C5B73D4A85BEB69C1D0CE298BB9D2C6071B099F173EC6BD0743FD0D1245079A1 +9933B122B8DA0FDDFFA74D8BEF0223F67CE986543AA2D6746C5C0E14EF1C5E6E +81B52F31684AFB059F039FF12122B8BB8D248A2E865CE5FD24FD9EB2368F6B5F +E263BB972DF6053BBAB3416E384397A5524EF792255D09B64F2630E3FBE9F231 +5C9EB4B7B7CAB99E0E548A6FDFE8D6BAB8AEEBE52FD4B53EBA69EE5E2ED764E6 +EAF61C24E73CB361FA9F349F100B8F2E600F66B82C1F6D38269509B7BD410852 +64E07709C869EDB4306E97F58EC8AB3762AC119C692048072A076090FF1D1EFE +7DDCDE1A671CE8349404A10FC361D8E05DF993320FBA442ABBA218EA9225E878 +AF6163FECF81D0CEDFF3C016645329B7753B973D8BF2E44A3963C2DC888CE3BC +9F24786F71453FC0E2AAC2E57C42A7A593632A4195B71F94CAAB960376F7CDA4 +FA49FBC9119260846C204277FBDBED428076E6CA54F7B017DB4B20AF6045CA16 +48DB43F1262CD9BB92D66AE710D55115A1ACE99498AA0DBFAE5B0DE87A44CE1C +3DA3AF8567FFE382255D5EB053596A3C +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY6 +%!PS-AdobeFont-1.1: CMSY6 1.0 +%%CreationDate: 1991 Aug 15 07:21:34 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY6) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY6 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 3 /asteriskmath put +dup 121 /dagger put +readonly def +/FontBBox{-4 -948 1329 786}readonly def +/UniqueID 5000816 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFB7605D7BA557CC35D6 +49F6EB651B83771034BA0C39DB8D426A24543EF4529E2D939125B5157482688E +9045C2242F4AFA4C489D975C029177CD6497EACD181FF151A45F521A4C4043C2 +1F3E76EF5B3291A941583E27DFC68B9211105827590393ABFB8AA4D1623D1761 +6AC0DF1D3154B0277BE821712BE7B33385E7A4105E8F3370F981B8FE9E3CF3E0 +007B8C9F2D934F24D591C330487DDF179CECEC5258C47E4B32538F948AB00673 +F9D549C971B0822056B339600FC1E3A5E51844CC8A75B857F15E7276260ED115 +C5FD550F53CE5583743B50B0F9B7C4F836DEF6BA1ABE5F0F80D96571277EAF86 +A3AAFCE36556A8E93CA43B2548CAAA8E3811FB14BE0DD2A5876604EAEB57E538 +D067F0F49205AD8F9CD93C587F664D8CDBE367FF88A14ACFF6BD620723236A73 +E601D960027C9862C73EA0446912D3B61F8D7DD3A36E5B664E393CFD6365863B +24472865054C827B4821C1316F165E923C790510EEF2EF7A25EB526A8427E8B5 +B3F5AE140A5BE0D419D679BD76A4CFB08B233133C6A2056EFA2946F235849118 +AAC5A1C1CCD3815C59C1A9FBCF18E0B47C554E18DC882BE145A27CA24EB80987 +56CC19E5F6C732B889A506BFEAD1FEC17728DA845F46CF12955A4D6D899ECD20 +BBB28309A09E576D7E721451AE7E1DC473936F17EAA98DBC4DD25E3271BD9F57 +8E0A98C7A8488E755FE0C06DF29AA9181F3176419BDBE9D5E7B7CE8B7EA16BE1 +043E627A366F54ACADDCBB7F1EE329304ACF416ECDE990912185027346E67322 +4CCB5F753F03499B6EB81072AB218A29135B80F0C8A69598E628C303EBF7D57D +98B86A2A88859BD76D883FAF65FA002FEDACE183C3D811BE116B6551942E01EC +CD60A99C93E7955DBA53C848D0588E5752A568DAF93F77EEFC0DA837076A7A08 +D45359A17B2755A8D0B7878B046EDC1D2E53E14C218669AD7171E4ECDE1E81AB +4BD5CBCE22647F5064419BBD1EC448E26F6C8BE34DDCFF1605FBF4FA4DE72393 +3F219D47C42BEDD7C5EF7990CDF04E15F0BD12A1EB27B42341E6F6C1C35CF924 +D3C4F662104C8286DB7C0FBEF9AB2A75D8A17CA5464B417FF0DC1501E40B6D9A +226919145F74A039B54E80023BFBB07B71967C420B23004C4CDF51A94DE0A270 +8C7957 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifLatin +%!PS-AdobeFont-1.0: OmegaSerifLatin 001.000 +%%CreationDate: 10/03/99 at 15:54 +%%VMusage: 1024 38628 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 \(v. 1997-02-08\) +% ADL: 771 229 0 +%%EndComments +FontDirectory/OmegaSerifLatin known{/OmegaSerifLatin findfont dup/UniqueID known{dup +/UniqueID get 16262005 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifLatin) readonly def +/FamilyName (OmegaSerifLatin) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 \(v. 1997-02-08\)) readonly def +/em 1000 def +/ascent 771 def +/descent 229 def +end readonly def +/FontName /OmegaSerifLatin def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 42 /dotlessi put +dup 59 /ij put +dup 65 /A put +dup 66 /B put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 71 /G put +dup 72 /H put +dup 73 /I put +dup 74 /J put +dup 75 /K put +dup 76 /L put +dup 77 /M put +dup 78 /N put +dup 79 /O put +dup 80 /P put +dup 82 /R put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 86 /V put +dup 87 /W put +dup 88 /X put +dup 89 /Y put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 113 /q put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +dup 122 /z put +dup 170 /epsilonlatin put +dup 204 /ff put +dup 205 /fi put +dup 206 /fl put +dup 207 /ffi put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 16262005 def +/FontBBox{-70 -290 1022 824}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360014D1BA6E55276544E69D16D7A89E +4DB7072940C005CE1E039DDAA8C52DDD5ACB36A89C58EBBCFE44D2E203AC2EFB +47778EE57115DBCCF97A881A6751E870C64040CCD9E001C8DC7B3E3A83D8A5C3 +961C179B4C1590EE4F5BADA69AC2DD38B3C6AAEF1A87B102001739AB377DD039 +B5C8E53437A2ADA6E183F0078F7D2848CF45034F27ECDED0B5787B32A0B992CE +3B73DA3214725C7B02B0FBB5CE87093BBD4556341F05B1A8AAE47429F8DD0234 +EF31434CA5AEB60A167546B5B3C2F864B9673661B0916EB5968215BB2E11F1EF +7E46037391A4E53317B80888875363E328DED163B13944E8938D32B1A36F6C70 +B5A040D7C98FBEAD4BE92B1D8655C9C4112D424946A81A9A45C1E93EF526538A +3625CA38D0A7EF1D5EE3BFAC421856A5929092FD0887779F59F8C6B7E7352C8C +F9762245F0F28E6BBBDC878EF40FE57A5D03FAE4E84F7FE4A7EB56526A200DEB +F2EC4E444DB5374CB3365DA7AFBB0DC81D617C65F35067874E5BEE235FAC340B +E41C08542A128E8FD049A0E6E37951C9940287E106788AF0C6C4060070E1F330 +6D1C72860E695ED0709F8C7754F6BD13F925D98D59943B4FB8A62F959BF5C00B +B34CE7D041A17572742E14B807C58903B3CE4993ED93684CADE6C0F1631FE8A7 +D131FB0D781B50F33D76004F3EA30BC1E88839B81C5FFCAFAECF62DA94F09E98 +795EA4434D644FC7CD26E2CA473AF4AB619A9E955B7EEF91E4F268311980B7E2 +4C30FF53CC72360D43914BCE409B140A6EF288109300CC5173F4731831364766 +E98AB82CB92095CAF6A6D09487D33E99124A9843B92E2AECF26576C097609C1B +8EB4AAE9CB65D08600D768CD3C06EA196B1F6E2DD14B3D47140B805484E81C83 +C0688C0C4F80598937ECAAD0FEAFECBE90CE4F5BE218CC5FE1CBFCE603260A27 +792BCA8EF3919FE465EB90E2A823DC95B70F0C64694B73BFF6FD780391B20163 +EEB322D5D648630DF641E5329F12B7A6E1736BDD36A22E617F623FECC043475A +2524A77842AAE5DB8A017783FFB37A6C27D0CC702C94AC7F9BB5AF3B721E065B +AF0338767274A4C36B3EF4810C739A984809B9486EB43496510D4B8B8B926C82 +5359394C76BB5ACA3EBECBA9A3F3ECFEA422037D4F30E19C52DCA1381CB1B907 +3FDE8411B7D56E8873D4F180768CBE7735345793B29479DABA3865EB3394FF22 +45FC7F94EA67F6B4452DA13BC9DD3C0A40DD2AC11182183FAC92CDC1C1C3A7EF +82432621B7AB9DAC75DAA70E036EB795F6A5D84A12223E8B4D1FAAB40FCA12B5 +2BB69E51560A2FA349DD667800EACD80E987FA9656D5F50BE433968C6ACE8CDE +468143425CD992A242C8D60405E6B09C9E39EF93411D6DC96743B09F9DC37C26 +C0DF13EB5354A05318BE8DD93ABCF878199B80B35E0890ED7082538CD894FC61 +62851E915A303595BCD31646581E47C617AC56AD3A8706BD85DCA59B951D15ED +ACB6060A6152D62A5757CCBFFE8F8C902F635DDD393728059557873CA0A32864 +F2624505FF43AFD96F2B80CC5394DB9A0252CA9D5D3F38D64B10D398F81258FB +5815A43EF41D044193D3305E704CA6B5BD12FF8898FC491066359BA5A39868B2 +D3E3D1B4E2BA803BCE2C265E2D31FB3A7CB5AC730C77E32BCA2B1C3CBB0C97BD +C7953A1B19EEAD1955173CA7F34164660413715EC0C84BAFBDB39D264D495B1E +FC50FFD0C843FF7EFBC6E798C865D3B0E5E2248F9FCD22526F2BBF83E76733E6 +444C7F35B4CA0C7694C94F651B81F3925270ED80B4CF02C8A91C4AD3AB00ADED +BBE7CD1C7B9BA644755DB77DF4909A370FF225BB577C63074E4BA7387367BDB1 +C1AFEF1DAA44483CB8E428DB02E1D6DAB725C5F861D36A4D821305F52F428048 +5CE3E0A127AE70AD77477AE29DE414C65581FDD9903DBF568337023FC3B76063 +ED0B708203C2163672F312CB649781C4924B3B68933DDB2C3FB679C49F99C41C +C167647A6D3361955876AFCFB845696422FA4807D36DA75DB3EE33923F0E39D2 +A04954419884961A7BC2BEEF77B7B62DFEF3DC6AFBDFCFD3062E20E8AF660641 +7229C2351F67E0E6A6F31A2823794C0C4A2857BB3BC756F8A2CE4D8A5FD7E030 +D962032BFF7A35A964B76899FBE5BAE19426949F1E93249A176478E4EB8A2D30 +F2FD28A58B9611DC0FF3C859D723CBD105E995A02D591C09C1C6E92C6882AA17 +EBAFE36CD3E75F966CAA393679D82E03256661E6E0CE4A464AC524A6507E515E +F29546C4E0B339426F4F70832EBB69EB0B76A437BDEC88C1A746FC9277DA055C +E681065A5A255551E1EDA44F3C9F53586EA739993CDC20E2739064BBBAF8EA0D +2B6EC92EF04EA6F54BB808B6E07B838980E5C0AB4FA6FD8F9FBFB6AFBC462A90 +CFE8BD6FF5FC90D7B350E949FE10D773E1060081F9B0F55E768F56C2363DD796 +FB3B952EB4C9324184CE2F9BCB0CA5A13270E3D63A49EAB1FFCA60E79F2186E7 +BB19782870515DE17BBB487AE4748F23D5736C4383AACE85A93A3A8C07F325E1 +7BC363C81AAE3C2182026D1F8BEFEB80ADD795582F7F70E66B4EB5736DF9999B +EFD7B5EE420B6D136FDC34484EB03B6FFCF8BD96857A6819C413D40A75556098 +0B3E209B38227C6F17764FA364733E665A8AE085F58FA1C7F458B9C790AECC04 +FE5DAFD67EB685CFF9E38F9DB99AAEB81597D6B333850F657F35E28F18B99E79 +AEAB8BC80A0A31687401A66B74FB126BB29538EE110BE08A7426ED0F24EDCFAC +83B506A7FD1AC90A49A42D6B69C07854C11EBF37149C12F97BEC301C60987164 +17364DCE669AA91BBE765EF061481A41C99A4F4D5E01DC69D57334B2968D2139 +E12DC19AF3D08B967FFF0F0E585220E2A943B0D51044212A7690447DFCECE713 +403D4A278753DE809D11826B47AC155AF50743A0E388F781388DE2D9AD7244A2 +E5658DCDD08797E43EBDE55EDF91DC7F818E182D92AD8BE1567867A9B1A4B2CB +226B7B79D05FE1FED7E3A1DE71102C4E1E1EF01644AC4E996E938409C6A10732 +9D94A4712AF73FA1CAF5A9C27B0A7B8A6C71ED4A7EF5142BD6A00C55CF09BE1B +A4BEA9A869A34B5F5460581862B28A45F914949558278F442B05272343C0511F +B55B70BA7BFB40FEEA3291BCF54082DD41F52A71152F08A46988730F13B3C3C4 +C4269B62C2068AECC8BA69B11B0F324A47E6107202074890162518F8DEE14A3B +B74C7A5EA350C427EDF60CBCDE4B62C4C17243D6D762E32563A8D97C3FA97E72 +C7CA9E32AC4509391196E78B39123E79113DE69D010EC6DB1E522E4C76C92409 +4F2BE8A1288DD3519C95590BCFDD71535128F8705B6AFF0BEC22964A49CFBB4F +00DA7A8BDEC6E3C27E9ED8EC6974DF312DE65A1155140747BF35DE495F6DB3AB +B785DE1B78AD145607B53917F0E83CC13AD4226853D1D85C71F550ACD16D3B8C +06D63449D02495EF2CD4DBFC8419036E99F6B14B71D4BA2F68D9042C1458EA87 +21B56E2F0CC418262074B54FFF626F8530896ED35E1E75E768A2F3189B2C849E +64C766066853E04CA5398F536AED185145271DACD57B596FF2178AEAD73D39EB +BD945E456E4A33B7A887C1A4F04A8E5A4EB1E2604CB9DA3AE7C33BC3FF3AB965 +DAAC8D354E32F1F7A85AEF113A655FD66B459ACE047ADE2621D620EE68595186 +E64F569D9D07891B026526E71B07D7B2AE4CF9C729C91285FD8A2F20AD76A373 +DDFC636A065E4228D7404756AFF81322475220D94A5B29FBF577E2F14AE75AF3 +4F2F4EDD35E63649481CD9DE6B2605D185B610782BBE5B09216D6B74E6096BF4 +789D9A237E994D74EA13FE74BCAFC30951FEB47572DDCE140D183011C2111F8A +168F11B8F6BA0D93A976AD0698CCB0ED48DDD61783149BDB16A1AFE771B2F719 +E4A1D7594DB6C30AD9A3801CD2D588DD50671DEF6BCE008082CB6F350A95DB67 +E43624538C0818A5B4DDE65C3C93AA9BE72B8E9AD50179FAB0026CF540283F94 +1005EA6A151F1E158E9D879C48C2A7FC8B824634E33C8F0431B074E222B6426D +8AF5E764A886C4C6B40B0B041A6BA6D85F53C74C91B1A835463FAB2F6275BF7B +B6437CDDF1D0BA72EFA0B791170EB1784CD8C674C23C945D668DF472E6003FA4 +A5AF76844E9F1E4E723B403B5C723E4951048642E33362D5B64B5F0223DDC44A +5E5702A7922B94FB0FF3A252A05B021D23A2E2BCC8B0DFEECAC7F77AEE0D09A1 +56F4D6F7F50A822D85B650E64F8120FED79227A304519F81623663E079EA0900 +04AC8547B51C3F9DB0567AD2E65248C9DE1676087C85413DC9083F61DF0E2A28 +5F1F95AEC1893B752CD4A7F1D7DA05B16C32B907E977BFFF620C7874FB6453C5 +BB14170D19EC41528CBC403EF886720E2607DF6955C562CD474E8789F7C3673B +132906D4F88BF194AA4DA2592C2487F1BDE748DF8D244CC7BAC9E4C143AEE0EA +295AFD4B8D787FB6D52C73D4ABA83CBB133C19F0F77F0971001706F6ECDF7F3B +69363595752711379BE032A150B239ECD0271BDD2741C65649EA84AF54345937 +C1785C12E75FCE1943145B165983A946C50C1802FDA75D261EB60E6444083889 +83E560AE31E321368F17061FBB3818648446ACA4B94D5797D3343A057A4CBC0C +9620B778DA8ABB59AF5D5F94382357166060B1F347187565D3BF60573082363A +F200793D97EA87142DEF0D1F5F8807EB1831C265F630A2E97DEACF756B352E24 +64098A2890DEF99421D41CF92D74A749F10E77CE8CFC11E0CDD17CBCD93839A0 +5F827048160541EBD6AA084777810EC30EA0A39BCEAE27BCB0B4B9B60A490580 +2177BDBD7A6A1D1943DB6EDC03337930C0A52560EA392DF71547596F63800C90 +405117F35A6D03977CC42E95561A2632E9DDD7EDEA554D52E1E65123403EF1E8 +26A86DF5F1277CA9E5DA233753583E0CE18FBB25FA7B4385C447345387703797 +7F8B69A7CEE687077E65237FA8A05C5A5726DBD4BC0CD5CAD10FC23901E63CD0 +53B4A1FE22C78ADDABF5E9EA1209727A238371B690FA12178F2B8CA0CF190BB8 +23D0D5F8E1DD8574F875BC6FA4928C483D9DA33E9E0C1E7FEAC384227B58C4AE +A9E97BCBA5796288211382F8B480225AC5D021E1E23FB3A9CDE24795944FA84C +9F707A1668CC3872D3DD5D8D0041AEB029970911CE07407BFC9CDE8E6759DE40 +1AC6E69CAF278620BD311D97D3E125BBF72457E50DA5442FE03E6D5AD2C2DC19 +F4C3617C9C87FEDA0F75671EAE59C56599715D3218818B95CB959CD63AAD41B5 +56CAB4388F913D84D86273C51D2FF8593366D527016D9D6C479FF52E8B127F58 +74D822CD7715A489E4520B7002E2AEAB933F5110B079A3F2A286B6703783C608 +E5689BB93421991246CC21AFE5042D7626E5C47F15595EE022DFFF2004C5C299 +6D7346AFCB229235DE4C5EBCE344E55AED7304A9B50A11F8CAC8E26D73826D99 +DEBF4AA7DBB36C57797B47DB3CDC7A05421A26A7782F6041BC377FB59D4CDC47 +2B61FC8CD614ADE31305EA7FEA0682B51D8C3E4B86EFCF5B996B160CA7F907D7 +58F9D6790FD81048BF322F76C66AFDE12178885CD2595ED6200946B85D314768 +82A0A830B8D3C0AE0A17D21E8A4593C7195EB8C83CC93AFC8D42452FC31ADE4D +F198AE4DF98791894961FAF753E9C1AF61F89D6B3609CEA28A2C05EC1B7D1BF2 +C8CBD41F3715AE0EBF352C44F5420B4688F425D7AC5AE940120515EF4AB7CD1C +B6D2FD93F7656390D7A649DC3994E884006BF3006AE6935CB84F56B952427D26 +906F638B93A3B9C18E3C85CCB0A4320864920780FFE3B843D623585C82E6B4AC +58B290671F2A600A7C418FF7CB2AA93316143FC5D18DF96551B47FABB901374E +402BD3FBC0EF199C1D90164C85DAECEC31F94B1D4EE32354479E259847C7FC47 +898FE6FB12946469EFE4492B02CBAEF9A5E5F04674016B1BE84A22609B062944 +245EC0E3B5C20880B4C87D5FAECE0AB21DC7B79C1F4044B8A8B3872138C39420 +DBBE4945679C68A8EE71E728A7C8EDFE857E1D16EFA3D426F72332D4CBC87A2F +8F4EDB5E9178D5C572860EA2AD15AA885C06FD03E1A6102523717FC773F049F7 +5FC09E974ECB9BBC4A9068CCD7F620A156AB4F8F669DDE7CE8F4208E398F6621 +4DFD83198EC0D0592279BE2AECA5A311EEB3F85FE86E6EA2F7CB3BCE4464E3BB +FB655970FE674C52A074313E910839C6DF041D7EF74227D649991B31E3F2D3EF +075DF53BFBC36CBD6F8A4A1D6CCC03F285B6C0777FB96664A1245D20FD9ED27D +6DACD6D7AFB3366876E921F26A5CA3053F82093A8375E7B89161017435D31105 +7D4469373C842215857AC325D6DB4E51ABB90B564A5A506CEEA8887683E96620 +ABDD870ED923A60A3CECF7B73FEB9A3B9213D8668C24B9F8DE0D3C69BAEB4A6E +8A7B9FD865F6ACEBEEAF8B8D8ACFF9CEFA8B80B24AE2E0459847765BC58A015E +3CC5DE4751ED0BB214C7E5A4C895D044CAE68437FE872502B23AC1B75A32D39E +13FCB907A6B5BC59B718C837F91A3B5040DD882FD1374C2FE22464C3F6F7EAD5 +C85B663CDEF0C89294E4E4DA535522CD9B0A321CE8019BC55012134307961EC2 +74813232013ACC2F0D7E37172851D1617DAF5299F86A2336B27F42E7128C3D7C +7DBDD2E4C543BFB09D55A1F89C163BB40FC6613716727759D459FE74163AAFE3 +64E649A69604185BAF9BBCC4F00D977841F5815F3A3191BC4EDA156D7A791F26 +38C39592FAEBAEBCA5AB6511F2BED0347CF1A72FFDBCCF21C91A95505654DE09 +4AA7B0E6F351BDDCA00702A64F7C9B7A9C1D3C4A0F5765C79BE4F0357EBC9852 +97B6F371AE25D65280480B6FBFB44C4C5583319387E16FAFC4DDC942D5DE3785 +96251AA24AA67E985207E86D356CA6E5FA85EADBE464A41E09EB8A4837AE75A8 +F78A3376C462C4001B79013BB4E2AA055F9CCF73E689D0277F0A512CC6D2388A +13BA9DF303723511108E0CD3EA06A619FB75DCE6E7E81CDEC1DBA0B6AB3EF797 +2310446D92C202B79A8F03F7F931833FCB3404745FAF66016D1C63E79C600A2D +84C76AD7DD3C37CC04468DB10938901676748AF0EF5ED28DFB62FE38B3C37262 +89A74801D71A6F1B166954F085E9A74700CE2562482CCB0B844B2FB8435AE0B2 +610C673F9440BD29E9CAB55A979DCCB28D4C125D97F7149F4CAFDD6FD907112E +BBE724D375DC77A22D3D1025A1F885A9BC3948E38DBE4C2017A1E65FF418FE48 +CB07824AE80678AF9FF85CBA236AAF873F9EAE4C4553DB52915E08276A9B6304 +56CD6437CBD5D7113749FAB4122C68EC19B92F8C09B149DEB714141A10B47DC3 +7F2F5C4356519F4C4987D75C3235B90696E4E9377A85C2973CF6E2EFA87FF6B1 +16BAE309D3155693471343B31A7DF5CDE3E7DCACA6A67EAD2B19F5A6F3FB46F9 +8779EF5D3C58B1C8D9CB01836460C706EC7AA575C391870CB7EC6BB5A2CFE16F +A3AF98F79CA4B7AFA9A96D3518E5AD07CE22A643C03D5F05EFFF7CD269282DDF +7FB892CFF3E551BA2EF55ECB806E59C5BC41A4F07071EDBDF2F5608DD7991E66 +82D000637A814FDBEA1B1DDA6D54DC088A277834FD23D6244681198CE5ED956F +4FE808626CFB987D4D8DAE9FF1857319333BED1D3DAC56DD3F30DE296FEEE859 +1E4920EEB51431B08502F01101DFC4CA452D6CF81E8C0510160744DB916CA7E3 +53A9747AE7569F80BDAC06C1A61A8DC6C4D80E7B3E49A58554D5F5296320DC18 +BD8DCF751D77E389C32481A380EB5146AF8B35EB8F8C51052A61B84D23AAA37A +AFD876E1D5EB114EC5D53A97C97FF54B4FB06156AC0907137B7211B2ABBAD248 +195C514CA81B7C5118CB2AC13DF6F576B4816BC0C3E9617200E3B1BE8B9453C3 +DEA88F5B81BC61C93E8829F9FF5DD5741C7E6C6374C8D6796EE1831F65D35AE6 +502A90BCA5A1A532B4532C6805EA392A04A134F47CAF88D24772CC18C50F10D4 +E288DAF1027BC251ABB9A8950DC4DE28119E782A38ED0840BFB22DD8AF0D17E3 +644265D0DADD0DBD50EE89F0BBA9C60458873A205F766532A2B4F423A60202B4 +062B5C1AAE7CEA5F30A0CF2533F2C658F6502E59327527DDE7E805D6042E30A8 +61B0A542D1827E9BA932C9DE47233CF2BE2C39EC0C441E58906AFC2C17C23371 +CAFABF8172653A5B1A0CA3D17CFD857988B58632A990E654002AC2F7FA57044B +E5DD1C60B9C9E0A7F31E35B3B86BAE6F2A963441AE0558EE00569F7B8ED0F344 +7145B12DEF7C112FD729DF42FDC1B9C5170833C4A0DFFD2489174654ED15A14C +C44EFF0B7189EB03976EA3DC4840CD184304DA92DC10460F2C5D5185FA2B8818 +3FA9B8D1FE641D2CA792FF6B9454F80666A7229546436378579969B35F33FA2A +EE249A7B4FA4A4F909F17A30D3822A0DAEAA285253FC6FFA4803C221FB5E478A +8DD41E110B098C887719E6FA6B3C6FFD3CA4AC7DEE7A26BD9C2617833F9504F2 +39CE0F14A50CB74B5CF520138EAAA9534EB50B18A1EA0ED8880BF54C03E9E2B7 +876D97B5FBAEF1F39AA121B2D575AB34E0A0A23ADBE5935A11DDDFB31D17A601 +8CBDBE1204B0461054BAF8DFC05D3596DEC9E237E3E7C6D2CFE879684337542D +871626FF569ED6646DE77F27A5355662F73CD8A98955216F723D6494C5AC33CA +4E9860A299ABC3F7BEC7DC702080FFB0F51EFEBF777F477E9C195DE2B8A2F1C6 +27391B88F49C946E202FADE6FEAC4EA6076C221904F11929F379F6F5EE718D4A +4906BD49A98C97B45153E9B5C522B8F844E124D56A37AF67ADF4A36CFE31477F +69BAF141194C83A3BE5979FC6D7DC709A2AE58AF52AA014C8003D33DB7F20D88 +22506B297F6E17E2A7BC6D35A08949F21B60A19AFFF17731145B3EC531ABC086 +40E8B97D39FB2DD5E1E4E3F9E6D6626CC108E22C83590AAF0641C6112999B4E8 +A9DFB3639ACC7170498367628595247C45A4950627183F598AB4B67D30F4FF44 +1F370B2A013C047206BE3560CD2FD578A42C0696DC4AD348166DC44813476164 +2B86A0C0875EBB6E56CDD9C861A5CD52324C3AEDCBBBB6470E091D3D963D6681 +4881DC852D547E90D3A615B97B3DE7957AA138B65BF3FA2D77C1CB9F027464D4 +332523EDB90CCC606971AC24B910EC82F4F886812D1564C5DD3930E04157BD88 +6642C52A4EBB16F03F3E1A3483AFF5A9E5EA28C8CF304496B5968BA99250E00D +3DB5C39361E8ED5EA1261C32A57147001BF48C5BA43CCF6B0D2F8647B6EAEFEC +A4C09A5B47079ED8B9BB31D3571ECA436D4204FE4801A3E85D59BFFC23C3DBF6 +84AC15E788D715E9CF0A9804BCFA26F6278E30C267B1B78848C2167A87DDBB1C +DABF8B5D3194F44F6FB5733C38CBE5D374CBAE4F77771FB4ECE9E1438F3C83FC +E5719BCADADEFF2B9DAB14A41206567C9C1858620B5A74205D3CFDBDFCB3255A +0317E60248C4D96A80F441F48DD03F1896991325957C55AEA3842465B86FED5F +C3C01C28C146FE3D4D2C69391E32B3860D8E019E966C578EEB7A4962AD2CD095 +CAF2FAF34DF585540C2A9E5AB0D44435C3F625C6E0EB7AC19A24D33BFDEBEF60 +BA443FE0DFE368FDA1CE1EF826C2F275FB07E52BD6F2E11FFB51A75F70F67D0E +717604C95F30887BF60D227E88D7B2C50431A120A548A3615103E032050D8288 +8D5DD515FA85FB7188FBB8FFBA4B7A2EEFEB5D93BD4AED457018769A5253F967 +C0885CB4C3AF38F4035D799E65D5D46CB45BA1446ED471224AAC5AAD27710C1A +4AAEE245540849A319807F526B03B60936620A3E757A148168DAD781D664F7FE +9A1C734E39B983D605DA616E5D31AD786B2146980FBE3058B2F2B2AA15757733 +6FFE3B9FF99C31A3631AD0DE927E2D1C7F740909E6EB332D931A46243072C737 +CE4F633F0E9CA3C8E70D4BD4BC9122F666E5B1DD9CD5FB9A4B4C3FB47F37694B +A110D92B23D56E1399EA42256504F29677844B2EA8FFCBAE78E6ADC13F542DA5 +7DAD1A5A9A06174EC3CD038A54A770BEED510C94D3B7F33FAF6B70D041614E51 +0DB957D1DE3E935E231AB6C587A165001994D28C4013B8248E22BAAA3BD11236 +76C2800104F86652DF571DD301822D1A2452848D63DCED0CDAD065CE3C4EBBD4 +5C74F29D8FA53B2515CEAE5F0F1A218825243E41F5B9789380E841A9A3842E66 +566DA54379118F993C4D972C842D38DDBEBD39C66C9E770A8A2E881B1279254B +96DED03C668840CDB93259DAED5B3887F24E434AC076E2A9F88940FF96581FF0 +5FF66999C2BDB7A858B4F0EBCE2E7FE240FBC92533295F08B141E8A11071AA06 +7E5A3269D423B2791E03C9874ADA728043E9D5DE4CE987B1B3ADF4A307E7F8E4 +2D510F9C92ED6F5306017FB1F41C13A2C34FC6F5E2EB0D38A3FC58E516CFBAC7 +AA39CE3D3BA78ADA1569006552ED38185D635F97D1841A214F06E2844F53965F +6FE56BF9A0C606FE43935773ABFFD6C37DAFA03A8219541B4662A7BE34E2FA64 +4E2665AB994EA56CB04400936F83B88D840BE6F3708A6ABEAF0DAC359AE6E932 +12C36A942C48467EF8A58E5CF1B95CF4383B80D637D761A70C2F650FB5264E7A +9DAA25C5A8239C6C9557AEE02B22FCE32ED764E664F8F8613B9039240436C498 +91F003660482D81DF10F3D06BA8C22E90C8BC68B4EF165879DF412BBF4128A6F +9E6312DF5A3D52A69ED90A36B155EEB635902F2110156726BABAEBC2A21E415D +79760987F0130B6F1363798BDFB139083A1042CD96291AA1721E5415C65B3DFF +6E7167E316F7687016F89985466FFF8FA029D45A153B76BE00CB96621D008F85 +0611E0E53076B0E06AF30AB66F009808B3E8470972803FF1A217411CF4E895F8 +EFADE724F21BEEE553CE95C0652132CACF9E72E26035377845738FA3FC4EFCED +F5D25BA89A3C6012E1ACE3524C7B7389F35BF859BA9F430C22565F579CFB1D0F +1CC6D5F0BB2CA71FFBA6BD945FBB253F7004F395C5F5709B289888B8E5684061 +F341A3007709D93CA7A39D83A4DD736A06F36D9398620B418A66F56889E6FA5F +E1BD0A7C2000B2FE8BEFBA025C0A486BB5871AD6323A737F313B163801268DC8 +2612AF8BF578A02BEA385F66D7085579470B8E22371657D255C2E901EFD787C9 +AC6DF9825ECF25479BB6F6D7905397FF714B0B9C0D5D76B8EA77BB8400B48684 +E3582834C1CC9B2EBB451AE28FC58BD44F7037DFAAF7978E3C5B22207F21AE78 +2C9E06DFFA7BB7464597102E46D366670160A1D699F34963FA1BCDC39B7BBEFB +63A21B47A2C431ED3D4AEC49BA911F1A907D6D7AB3764A60A1F34ED3E55E69D9 +580AA654B6CA9D9A963FB902C0C3A747F7CDF55CC9205592033FA02BFF5C6565 +068DB777385AD1C13FBC0393BA1D0A746A32869E3CCC52D309BA637D3A49DDC2 +2C7E37386493E283C4D2B877E941C38B9D5196C97F9FE24C4B6901286A45E617 +DA34CE336AED3C654D1C19C0AC3FE5B14E86F681FE5C2AC39D4966AFA138C9DB +2B1F4FD542B9601A7EDCF4CE479289F46D77CA141EF196E868C0B64F21A1AA5B +3C1040CD9371C24EA8E4DD6E844382A2029575281FBDF7FC21A3FF8BBCCAA9CD +2336EAC6B267F8D6D99F1891CAED1768A2DF53F77F53A339F9A3D16979D5CD38 +462CA659F333F18587CF2C0506BCBFF4D2CBABCB7E001BF33896A7CDD3128D52 +C880A3A3F6DD79558B67F3B3E97B0C7844B079AF1B85CAFDBB8B2FCA587B7A72 +4A7C0E76DED595650FB7DBA836C599AD21C5A5D8558EB707B308E5072B74D4B8 +6701C298FE105CA637DACE20AD0BF1FA5704FF53F95AA341AD9E680CA78E9839 +434E88D96D36159E258ED720289B7B3B7FB0F357D66C7EF7A5FBA3968F1241C0 +4054845D0379E11194B6CCD00E3A2D69BD637CBD8F1EB25371B32761 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifGreek +%!PS-AdobeFont-1.0: OmegaSerifGreek 001.000 +%%CreationDate: 29/12/98 at 11:57 +%%VMusage: 1024 29265 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 v. 1997-02-08 +% ADL: 776 224 0 +%%EndComments +FontDirectory/OmegaSerifGreek known{/OmegaSerifGreek findfont dup/UniqueID known{dup +/UniqueID get 4475229 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifGreek) readonly def +/FamilyName (OmegaSerifGreek) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996 v. 1997-02-08) readonly def +/em 1000 def +/ascent 776 def +/descent 224 def +end readonly def +/FontName /OmegaSerifGreek def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 87 /Omega put +dup 98 /beta put +dup 119 /omega put +dup 120 /xi put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4475229 def +/FontBBox{-66 -280 863 848}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C673600174C0ADCD768F61D640707D87128 +819324132AA262CA70C79A7D7A2015702B229606D56E9E6448EDF888E45D102E +A8AF8A0FEEB189353B894CE01AEC180DD26708C1739692D834976408CCDFB47D +A62B92F591DEE406A6B4B0D67D611D69D337CBAAACDBCA21675BA3492F5BEB89 +FB9437452FD102182E81641B5BA4C5E65A9ACD965A529EB124351F2F8B292F7E +670531AB7E0A0C9E4D42922CFE36F7D68117B365445DC558FCF0A87A7A65F346 +A017456F083E97E36761C058E44D5CF849D3C829BE3BB8425440D81473EFE99B +3454EB2F693C1EDCB84E3C21B50B178F93FD8AC8ABD0BA9B181F9F25315E2809 +B27F83E61FCEB7BA34C529DE0B250120B085C94C9027C308FC7A1FB0989C8A8B +BE44EBED6057B96DA3259D3317B33C1C5E8D540D27A4A891F1096362B8CAC41F +922D75D201BADB045CE52E425949E592737C844FD4DA8121B255381F1268474A +EF8CFC5033983A04B822E5D9142715AD86560323B57BF2E2CD064045793627D4 +D0BA81B4B20FBA3C03C02EE864AAB0C4A7EE05190FABEB0FAE6959783D631F98 +AC99320BA10AF8543ECE35B0850A7904EC34B8B18DC0A46CA740D665D50AE60A +F68491E43EE92822775631691C81CD3ED7D04DC7500636F72B0575D70A58AB66 +B5D3544D6F1AF84BC839A43F070A1968136633B732D6B90CB5B83540A85132D1 +5F4AF966A942D4DF5B2CEB52D86D73E46FD77E5054C54F2BDEB25CF3EBDA7879 +3F16DBA9488094AFDEEBB4918D59916F815760310EC894AA9648EF34D70F2E33 +342740C922E5CEBEE5CFC3EA894A16C5DC9D00E4EE004A02D9BB46BAB3DAC87E +D9EDCE958DD2A34928FEDA1AA92E439859CB5822658A81962D9105FBE7050F6E +F393372CBC9C861803D96A2C121675408E29138B56DA6A8B9DEBA5BFDBA4A1F5 +E53E24A6862D602E5A97651E39ECD39E1A3566F04BB494565EC9E4AEA0A19222 +BB61078079DC3F513AFE00D1245A9A8EA080734F2B09B366193FD9055CC8CFB0 +1373D33A9D22D14C37AB7C60E6E7DEFE6764141F24ADD0E8F159567077FE882B +C9A9D984F182698895506B51DCF7F3DD0B1A50D4DD65C2CC3181AB3A2834A51D +B9BCC07B95C49D5723EB859244E7131C4FFAAD1081531C6A60A09456F8B84197 +A47A686BE86B7020632E6B8A8491AF498A8B6FA4FD5DA4CD2022BB7BFE1616C7 +8E2F99BAC1D2179909F0889002835BFE5A19C0A76866A5C0F550BE3FE994451D +97BBD158AD17F0ED501E75AD857E5B04AF5D308F06C50D20FF55AF10D49B8314 +42647EE2B8F5D63CE9490F520AFE822470D0F14091E705F51D8982CFF9ED1C6F +4B561A83299A9FDD5A9DE18502B372B2E8EE8CCB1CDC3F365E4F271805302307 +40366013216DA47578B9FD802DFCE978B94FF97005A593DEBF34B21AE38F3B3F +C49FB9F223E82582EDC1A62155821B871DB30AD93250450CC1524F3301819BD6 +1DE7C8CBD8B7FEA10EBBA6E3A1817429CD9B148305DE1516B285DCD41D131BD2 +FC3AF043D588C2F034858325F15E2E94BBAA2399DF6784D365CAC17A9AB917F2 +9CD422B24CD315BDD4AD0FE00CBED26C04DAF6A30A24FB5DA94D01D828F020D9 +F8937027D996A0AC3C89C48FE3D3D73D9D2A87B6A60FAB6A79FBEFC838357028 +1F97A6004DAA19201B54B875111561DA460EBD49ECAF918B6ECEA036A6AC6E63 +815501A1FF5293FBF11C5D8C3BBD0B66D1038F6341979A9D63AE68B94B8BA3E9 +721F2A29FB481F7E93F0D2FA65A09A93B0797C32A0F4CED1F846CA24E974F7B5 +92380316D1559A3A16FF8A00AE5D81811870214714B538D155EC0743171A8B67 +8068E13A9D9D745C6B85539E456A400A91DB67792BF42BCB358A1942FBE586F4 +F4CD44FF51CAFCB30A2B97F98A0D5E4E06CCC0F19F6E0050CB4B833884844412 +74C3FC9DB4474DB4ACA64127FE7F711BA7E10EEDB5555439EE91B9415449F0A2 +35747F5B828D3B068A64110374B3FB70E610A4CEAAE7B8DA29FF6BBC9C1611DB +C5483351D11CFB0CC27266670D9D6377424A96240C43A9F8AED15190911481BC +73D96156B0FD5D89F5403C5D21BE095E481C6CBAD61B4DCDC315856BB0BAAF0A +B9BC6BC8DCD2E32BA40B6BDD3DB99E54B5DEAFB33D409B0911CF6559B46EDF1C +8D3C330B836B4FE57638BBD396AF2572D1C36800E3ACCBACE7F9F2AC11107D8C +573ED4D332718593B3C951817669288507FB5B65 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark{restore}if +%%EndFont +%%BeginFont: OmegaSerifTifinagh +%!PS-AdobeFont-1.0: OmegaSerifTifinagh 001.000 +%%CreationDate: 6/03/98 at 10:04 +%%VMusage: 1024 20172 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 903 97 0 +%%EndComments +FontDirectory/OmegaSerifTifinagh known{/OmegaSerifTifinagh findfont dup/UniqueID known{dup +/UniqueID get 4032321 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifTifinagh) readonly def +/FamilyName (OmegaSerifTifinagh) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition 0 def +/UnderlineThickness 0 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 903 def +/descent 97 def +end readonly def +/FontName /OmegaSerifTifinagh def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 33 /tifia put +dup 34 /tifib put +dup 35 /tific put +dup 36 /tifid put +dup 37 /tifif put +dup 38 /tifig put +dup 39 /tifih put +dup 40 /tifii put +dup 41 /tifij put +dup 42 /tifik put +dup 43 /tifil put +dup 44 /tifim put +dup 45 /tifin put +dup 46 /tifiq put +dup 47 /tifir put +dup 48 /tifis put +dup 49 /tifit put +dup 50 /tifiu put +dup 51 /tifiw put +dup 52 /tifix put +dup 53 /tifiy put +dup 54 /tifiz put +dup 55 /tifidotd put +dup 56 /tifidotg put +dup 57 /tifidoth put +dup 58 /tifidots put +dup 59 /tifidott put +dup 60 /tifidotz put +dup 61 /tifigh put +dup 62 /tifidotn put +dup 64 /tifilslanted put +dup 65 /tifinslanted put +dup 102 /tifibt put +dup 105 /tifigt put +dup 106 /tifimt put +dup 107 /tifirt put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4032321 def +/FontBBox{3 -80 1094 636}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360015A30749A338E471804A9341D92A +0B722D817EECC4E8A595D9A0FB01CD573285B74FC8569F8B4ED9995FFA4FB1DE +2335627CB04A06FCA2B1E398D6480246903DE22A152B41C38F382898D4C29CF6 +92603BC414CF33FF8A8E12BCDD7D337F376F0D0A48BAA32A927C67CE356C342A +06274F38C51C8D659EA0016C85ABBA277D014DA53A512F240FBE1BEC7FAE1A6D +096755EE544D4178986A3D112A9A6AB06E41C833A0417C63A6B8AAB88D51F8E6 +CB78B42A0C5738D99484F44FE5816433CF93B747001754D5CCA50B7A1F4F009C +E38369A81E6E1E2407E159B975C0D9FB50C2DBD8A95446192073F5C827767D0E +2B6D7A1F7B761637F48157CF90A472398A7EDB9F5AA6D13DE3799C03CEB0804A +2490BE0624D9E5B53753A4B4A8CF4292B1891A079F81C0A9EB0846F930119020 +F94E99C3C29BE8F8E9A4269494CFCC40A3D59C3E6D8F382E44A385B44AFC464B +FC9EA49EDAECAF26C35A38A958FCA4C358D34FB3D4CBC8B172B8ACC84013DBF1 +FFA6493FE36F940503E07A77D7F1B7C6F35858354EC88D9FBCAF4623BFC9DF16 +1209D0DD661C06F002D9E04CAEAFE978B240AC59F96DDD876C0C552010CA3635 +CD102A2060CC9D033B80C45B8A0C46027C431FAA17EEBF580A2640B587A21D5D +2B94188F8312626C86CE6E745116E2DDEEB67CF098028A5BDB84E77F8D635920 +26640FDD2738687C9FFA2594813789933247AB74D22B7907AE7EED2379CEAACD +E7DFCA56C74D5F9663CC8C6F56A99695671A6E49A1AD47FCD8687BF8BDE5D7CC +3F8237BC305F40BF60487ECD19D26018E20A5E0355AA3169FA2578515EC78E18 +B0C5B7A40629FA6D3AE571FB0750BCF17431B16841B250CD1405FCB5A0C78FEE +2FC810F9149090C7DE43E87335570FA82647AAAF3DDC36FA9F094AB79B2A02DF +97397EFCD8FAFA17F268D6D38F6660CF0E221621219366231C3E68A3D5AAB257 +E0358DA91D90EB05977C45A5B7022263178F5A7EF8335F559FD8013E38DDA595 +1F9084A686FB20F9C89089D6E93E5397D13E5F78CDEF0BDFA7ADACA822566157 +99AB02FCC1C3E5896D8C38A16601A96DE78137AADACB7E5A8CBFCC2FBBE33502 +34FFC204DA2FBFA4ABA80C3D1F0945C05D8F98188A13DDE73EC278CD2593F130 +FD99FDEBF0A71BAA7748210AD24786DFA89E85211B6E61691BBCE628AAC3DD05 +DF52722EA5EC213D69A25829C200AEE84FD1BAE3C81FC8B5CBBC974F9213AD3C +5365A868943840852A181EC13196504BBB2D32079DD40822C2A8C3F980E4345E +F191CDE264146DE55E0ED9E6223CD06103D0D212883A0F61F0597D1986B6148F +FF46A4CE87D8212B5CD35495CCCD3DDD73A4DBAB835278705C227C1086B5F01E +8D978D393637CE21F3DABCB8A8EF7419E8CAB5AC1C0EA50D3533C39C96B79D7D +379227D516C165E287063CA98A1BC5487F35110E2AD4B9184C005AAFD8A388DE +2435E8E5567DDB47391570AE0768501EF0620E8C0A3EA4CB9D496A9C0B2DED69 +036CBCF90B398165675F60832554F52376F24FBF287B7F7318E4FCC18EBB9C8E +AF2C16EB9F3F0CCDC9225BBCF404F0B7E61F584295C1D4C03D723FD3A6FBE947 +00EEDA4D1042BE0DB09890F8FE54819CF95DFB1B4B9790FD0C6DEDAAF57B06BA +EDA5E189E00E4D9ADEFE9E0D3773BD1831E75D4A732619CD4CA17C1EDAB6835B +60ADD7147FA07A3BE43CACF25908E87F7E7659AD96087D4B66AF4DA2C070A4B8 +3003357838120741C6DEC957988CE6CDBCCB8CEC46CFE57BD71DEB6102F60BA2 +CB5BE4F67244DD21311F3B4EA6DBF427741CA4CEAD404476A260459E6BCF1EA5 +95884E769B45D3D8CC7E693D7F38F0438E74BEC532023B8157BA143449683C46 +1D8C4542969626C02DC018F4330403FD097D13CDADE7F804220B605B4320918B +F53C48F7E7D32BE47CF439C656CBA90C39CA5A48271D166CA41F3F5289FAC838 +25EB6609EC8DD8B9FE46CB9DDA21455AEFA8B3322C5848C65471C19ED3B2D164 +263AFE206164A0E031C02172045A6063DBCF5B78BB42548DD22F0B70471D08BA +A2FCF4C4BE438AC657E2ECA5838DCBAB2E11C8E284793B701EBE26761155E4BB +E7AF25C9CED7D418FF54FA995B4AF447A86DA93ECBA5108EC56E2FC96B633534 +C29A00B3022CA5CD25291014F2753673D9C14700762241564DE8265998FDE2DA +759853A6BBD9FA11E05F81FEC96290F34A7F885FDA38477C0433ADAD9AA0D22C +2F053030CF015AA715503AFCF8672C7FDBC0648D1FC89C236C9AFB3BCFCD7698 +D047F1D97A252E3E3A56F086F8B31CCB65CF4AF828023E990FD8E8505911B929 +BFEBF171EEFC71C1B3840422541194D438EB9EC9B3045BE9D1AE0A0F0B4AF1F6 +B8F4BDB422FADBA84E98722BE98EC8BBC0217ACC975D4FA7E04335114BAE1811 +6D05828C7BA8E66FBDF0DAC6F4415B8D8A46496B64AAA04AD010225515BB8F2B +63C23053B787393932731FB6FF8DFCAAEF6978CD1F2BA44DCD51E91CCA4D0433 +E5549AA6B1EC99ED28D2B4A7B62637EFE024C810664F949FB0019C9ECF6CB3EB +B77B8A8B826FAA8D470D1A347E7222CF7B2BCA817DAC692D74E09732821F14AC +78313DCBE61E18CD83687E388B1AA2D061C84A199FD5BC3695981F90D41ACA5A +8E984922EF5A8430054EB5EA3A3FDAB41AC75E3B1530C30E1288EBCCBDB94D96 +64025B6621545B1BA1BEED067E11C1C42F869B092876BFCA16FBDBEB34C49BCC +F80CD19038D926BB5FD07819F9CD8AA1F85250DA2951ACB5A1CF05F28D2F0D97 +807463C420823496009B9749EF2864DAAFC22A352F0FBE3CFD44C8FF6054354E +9FD649B60860606A66B03E18CB15AC0C8B8D4248188D784006C5E59EA591378C +DE3C6443B7517B78BC5B72C05CCA7CD1D77AD1028EED2D0DFEF3C1287B78E45A +3C9DEB3C5A764684F3145EC3820AC50C8835A568741CD4E8D71EC6C18C3DD649 +ADC5EC5A3B19FB62B4D771B2EEC5092B4C24267F016C88BEEEAA786E4C7D0FF4 +D8962EA616570E8E42E7FFE3C87B773B4D16AFDCABFE828AAB4F88799EB9D0B6 +E1A966F03D29677F6D347614800DD8148A423EFAE714A7BB51F48CDA9DF94B36 +86187E274DB2FBCDE31187B7F04C2694D4D9F9E955DA5CAA37DE01C1F90C5F1B +71C9F3D6E9EDC69F2A5A59455F61551C601DD3098BDAEFA007FC8F76F8D53432 +6C8C3F13B729860E6C39A5A0E56336EAE3401415330BDC11C143EC67A580C02B +EBFD149D7CDDEBEB00524F2A2983E0CAC054AF737E69CE642202EBA7065F7338 +8C4D62BE834974469DABC9F24BC4C7DE81D5852BEE3F74D36ACCA79F57D7622D +FB37A98BD38BCB721A8BEEC0991B64FD2E21F02CDF9030F4F1BCA8EAE536A420 +C5F988D0145BF7782E7CCD5604DB4B0AC6A2D38177048AAE8DA2C2493822D1CD +9950D879D619D1E31EB2B8CE683862DFA0191860F7A4184398D63D60D23E5C55 +7CB6EA54AE017E45F2783DC4312439D05F6DCE71D7A912D5AFEB7A637BE73DBF +E80D6AFDC62FFB1EC4DEC22A2B7DE156AB4453C3DE4F04D57309C811D86A0AEA +A284249336DF8BC6B2FEEED64CA2967DD61ECAEC98F2442A8562F01DE0150197 +62426167D99CA7DD2F57A32ED0E58C83607DC936B922953E2D6BD48099024EDF +A6D321031D8975BA33E805F6FA0EC05F86E3C7686A50DD234E7F6EC3BAD80234 +94040170E6FC393C361104971435BF4452B4F97E57B7CD970F3139F28968C567 +F01F0D78118BD6AC74AA0A2C7247F574616DAADD17BA727B7C1B1FA81DF58506 +A3E5DB3D15B1BA793BFE8397137E8D35B99D1FADE751D77821AC213650CA88D1 +38F07BD9E36F1F5380032D1B55585A832B6FCE9A5EB9DAA48C6992CCE98C7229 +D3A093C8DCFC83A88B52AD5A6370C64A99BC20386FB36225DA5D8F68846E3E53 +86A139D5D8B0B424DEC9B3CCFAAF66267C231FF932F26FD69C3931C2DC443D2C +AEFE9C84609B787DD775CA277216E0570464A95D736ABD37299ABA093B9805A7 +D32139652A20CB7610BEAD29527E4DE2AF7533CDFE3CABF26FC61FA3BBE36882 +208B9587406EC85309F5FEE0E388CF37B99016F68A3BB888BE29F374F729041D +66134FA644D9F85907B8905DAC7C2555F361F6AA90493D8B4E0DFDB45B2B3E36 +169E7076350233112B0A339388D02126E9FE4BFD6981172B8A954DA9D01A39BD +6B86CFD9D424D090F4C5A6D7857CE71BBB075D1C02CC1940DDD9F84E71CEDC8D +B98DCDEA1844F5CBD0167A5EB32FA8F20093D2396FF9F31E131973CDA8B0E2CC +92C772E78ECEB94289309F8E2C3FF7830778BA70FDFBBCFCF9E1258BC194D987 +48ACEC73B8F3419AF9EF6D4E9771391F58CF0FCE360AD728E849888BC7617747 +E356DC1B9E4B1BEC5723D39B484939CDF673D0A764284067BDD1AEA1C0EDF320 +E534F58F348FA2511D134849D05CC53A1744B93AFE5AD716E87AD35457B18448 +2EF0633D73C071CE200B300E5217E98549D17C2880C1E18AC53667ADA6FEB60F +4D5AC56A788577DBE53D2DFC3B2EF3398F6DCCB4C9960E8F563B957059C37BC8 +1473ADECFB585074E238D46047950BC44B426CCD99C77D1856EF4CAFFDB5441A +9CD37D8851CCE36277CA4B38C5272F4340B70CD75D05B46FA366E94D96543409 +89B98CCC5AD1B620D09D500163E8337622C295880CF7E514B09E40C0B8CFE42D +90FA54AFC161AF60042FE3CF5D21D55BBAF33D479AEFDC55DDB77B2B8AC61797 +231CFB314792E69C605A9462274B5322A964C7CA45ED01E0D4F36EE10B46A766 +C3F53DD7D202490EF67845476FE9A4DA66E7734F23E7A88749E7BA9B895A4BDE +FBB716B1559B8F30815EA7C6D9D4752B3D5F5EC10F68D920C0AF365418B4DB8A +341657E5CA30233DECB17B85F819F7BE49018D07ACA962F24252977781E233F5 +ED2043BE18F2E746573AB006830C62D44045891195B8963C45412D7990CE6BB8 +078645066EB6AAF88DD1C3DF37058A1F18C343F739C7CD8C2167CBF1A9FCF16B +4591D70018E26AFC18A06DAC6CA50B69A9E02B558D7E112DA355AD55DD6294DD +FB01CC4F7237C5D52FA681343243EA7C46B7C9314D122685196850014CD2F578 +85E5F7E27456F9DE027BC3FA75885FA716170ED54889A5C165A8BA7722FBB1CE +3CF726D6493350B847E033296D91049E7370F31A6D8093725D2C91ABF6A94DF8 +1B02D4BBF41BCFB7A07407105CB0FB91D6FC43C6C496BB6F61C3F90871439B83 +95285ADB381E2D8BB7ECEE760FA1FFD9E620B89D403D13E98EF94525521EED5C +DD8142375E31CAD2D60599E902DBD0F93E0812408965D1C7F62801DE0DED7FC3 +A67EE5C5740DB3DFEB3A2FEE4B7E151ADCF39B3AF50B73AC99F57ED06293DB7C +E317839E29DE865BCA1A1D9CEA528FA940D84AFA0338BFCB171C3D669D54F700 +79AA3658B8AD58435BAAE3C057409445A396DA454F7EDC42A39DBC001DB778E3 +4EA0A7FB13F0AA364CBADA4D469990BBE8195D5AE163135C2E66C99BF0250391 +AB901DB3BA48CCD1E0886E284E9041E121CFC235694E82B2F80686F3D2353F46 +C7DEF7C11C7D1AB0781AC693A52679CDA51817D7C663C92B7B0899D9AF62A6E3 +F47E11305E9F18E17B151B13F8419547DF2F02A7053F8E284FCFF1EB7CEA4AC6 +6120F99542B2A35A4AB8601C148BB96B2CED56B2F4F4EB7C8588ACA83FADD0AD +E52ACB7C5BC3ED081DE1E449738908D692CAFBAFC4D8BA8B8E33C1756A223AC8 +E3569FBF2E97C7EBD06118AAF44C48EDAF2236AB1C1F81D30C594F0A8F1D1D83 +945FDCF3684C0CD4CCDC53BA6C9097A4568D9F85B6EFD6A21A7B82FE77279972 +C23FB7150B5C009A6DEF2CDFAA523FEEBB3B6DFEEC8EE01DA855AE59CF9E4BE5 +E74A70444F75E1647669CB872BFFE38A74192F2C9B268D5B0D31571BAE92B29E +7E6CB16A91FB4AFFCF335BF62FC8FCFEB9D889664ABC58D34A81A4ADFDB5F26E +5479F9F695BC8310F5B1C329912DEBF2F1FCF04F0E8BBDF84CE5E5EB766C223E +7F94E51707F29D731688D5B0B8C135A52AF98064DBCFDC9E75805455F4F1C287 +7FF6F0DBDE28553AA2ADBE8957A39942D1166E1C0DA8EAC281FC54F530558784 +413809DE36D20DF297F1C83728301234827A2D681E0E1B70BD68B5922C6A9BEC +A6A7FABEB106A5D6704780155DE7737CFE1857F6F54C0D3506E1401DDBB91C37 +A1E41D3D75B27766415F85FF069DDBCCBC4A0396E09584F74A49FABBF91CA8B8 +1114CDAC6329A5BCC0DE3CFF805AF9489E937D328B4EA448F3AB009E0D39DCE5 +72ABAAEB68C2ED474BE943EEF4D26C0E138070DCA82365ED7BD65B80885F9C35 +E052EA5069676C371E3C90011E78FCF24D7728BCED566C184B04F63A9FDFEC01 +31A27E90E80C5BD83A99F1339983836EE89B187268C484F76A4D6152FEBA97E5 +C5B8BC5B65FA3A87E6A79AE8BCDA3BF0FE1C6F19486E378D6300D9788A5FE063 +22FCB5CCBA8E3545406D4DA619A8E127410B4BDD3A32F047F49F6B68F3E5165E +907B9798D085931D45C83B0909D5C896C1A1348C666CEE579EF60DAB57FC2997 +CBB9FF5352280E2F3860592D3EE4DD2E763226556AF920A2A022B8C6BD1C0A22 +F785E0FB6099FFB67CF451A17AC7681F169AB018C0EB8ABEC42439178F88CC29 +23E6324E9804434625AF8E0EB84173F3A095564BA5F932C3AAFA38CB37F70C56 +14426ACCC5B9C06444B7D40E5D2FA148993835BA74C356A3C6DE63A336F89880 +CE4C5B16D9953F8A287B484C77337F75167DFE4C4DB82666FB751D8D825F4257 +4AC2F4387E12643C5AF70A1A3A242A61FA4485F76D992D0AE90DB47037ABD1FF +622C541B0491AE3EA38DA1EDB71BF522791789BAD2CE7CC69481AC54E138EA3A +F4B7BE7E5C7ED47FB1BB184A5F4BF4D83FE843F6980ABBB0FC6EB0071837B282 +A401195AE7FC983E8FAE449556B05B5D8A0641FDB7D2649C0C2AF9FCD4253152 +CCF6C8DE02B18ABE772F586BD784A9F9A2FF3676263E881E8397317D460BCCE6 +F46E0A3103BB97BFE4968ED7F98853CA203224F6AD1B9AAE35A0FFA6836A6C98 +2CE95BC55E5DE11E9971B29FE7E5AA4DA8465C6EA77B3A231571C6B6B88E1A12 +8C703B11E111F546948C979FBA26B78B85C9240A8ADA1A9A6CFCE5DECB790F0B +0BE44B26E1636D38DF58E11370F285709C161225A4B070B7D9EB2806234258A0 +60DB9B1F48295DCC2AC037A8C101CB5E7328D7D99E830AE86ECEF39A21070DA8 +6E5D4187F5E402ECAD85C1967D9F153E6C536C2FFCBECA87A962D94F72232ADF +90DC95040BF92484D0ED784F83486E81A88FA1E7C0EFB7E7FB0DFF338B13A1E1 +0BE724B595C4361C81DF32984302EB1804D9AB5639C1FF01423D2C6A13EA6DDB +03B7FFA78CA9B4951CA23B0D1D6F32AA8191E945CDE6BBDC277EBB0C87DF7A3B +F4E108A0DEE30A38FDE3562EF90FBDF6C82221F10545DC7B0F34E9BF31B1370E +9C099F9B18CBF6893E29C60123337B6C23D60CFE56675C85257343A86DF24F3D +818318A21D4D61C118F7ECA1AA26250713C911F41EB15FC5933B2F3D7191C6E9 +579C51EE17F8FC39653B72FAB4C58F61BA6638E63B6CF28532C66AAC0FB8C382 +7BCC4D1400D41CDE5CCF3BA6E33C3E622FB7B4F3DE4DB8D22F1D5947D064F0B4 +E30DB3F32A324A3D0CF7CFB7E11C59CAF9A17AF7F0CAF2CE9CC01D8C5C54AFDB +CDB5C1A536980A9BEE50FE10 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifIPA +%!PS-AdobeFont-1.0: OmegaSerifIPA 001.000 +%%CreationDate: 6/03/98 at 10:03 +%%VMusage: 1024 39496 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 722 278 0 +%%EndComments +FontDirectory/OmegaSerifIPA known{/OmegaSerifIPA findfont dup/UniqueID known{dup +/UniqueID get 4345888 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifIPA) readonly def +/FamilyName (OmegaSerifIPA) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition 0 def +/UnderlineThickness 0 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 722 def +/descent 278 def +end readonly def +/FontName /OmegaSerifIPA def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 124 /gammalatin put +dup 211 /tesh put +dup 234 /glottalstop put +dup 235 /glottalstoprev put +dup 240 /epsilonlatinrevclosed put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4345888 def +/FontBBox{-151 -326 868 705}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C67360015A30749A338E471804A9341D92A +0B722D817EECC4E8A595D9A0FB01CD573285B74FC8569F8B4ED9995FFA4FB1DE +2335627CB04A06FCA2B1E398D6480246903DE22A152B41C38F382898D4C29CF6 +92603BC414CF33FF8A8E12BCDD7D337F376F0D0A48BAA32A927C67CE356C342A +06274F38C51C8D659EA0016C85ABBA277D014DA53A512F240FBE1BEC7FAE1A6D +096755EE544D4178986A3D112A9A6AB06E41C833A0417C63A6B8AAB88D51F8E6 +CB78B42A0C5738D99484F44FE5816433CF93B747001754D5CCA50B7A1F4F009C +E38369A81E6E1E2407E159B975C0D9FB50C2DBD8A95446192073F5C827767D0E +2B6D7A1F7B761637F48157CF90A472398A7EDB9F5AA6D13DE3799C03C8E93850 +3707F15A09FD3121E8F4F6577C452C587024330A74B6D2AB7D5710F5E54990AC +0705D85A89327A62FA0685D0F805B0A33F9B072B6285A94427FCA9F8D7C0F960 +0DD8C317400418FE72B6E01D0D8B8FE607E2C24299E8E49BEC6FD97A5375CAA7 +349DC69B8B55C01547A92020ACB6A644A4E5C95565FBBAB617DD5F81B3F927CB +12DE933B135011820D7305D899466416DAE7FE53A23F0066F879B546B169FDE2 +AB77EB0D58C32F6A9129933D0123FB003B82FB8B06128F61F1EF98A83A495A46 +431E06D28A5C1E67D57A235717DB8DF07357413B40040CC76B8F8AC5F56A57BF +417B90FD89DB5D020E06A6D366A486DC02098B864701FAC28FDE5AC5D3571E40 +A2B8CB8ACBBD0D65B16320BFA78239427EF40D6B858B380DAB8FFA7BF2567732 +BA8C9C9836FE516C03EA5834FA10F431DDD6EF57C8EEC26EE1DA7103209D3097 +4A40872E926DE4FD979C952811FFD75F3EE8F027074C783454461BC5E7269F53 +17D0B106EDB2523FD4BAF26C1556CA2435E64479E6F02D75E2FC8A56DC9053D4 +25BD33474212954F9379E76128411F6F62DA2124572295FD68450B253E5AF294 +B803CF4EF6E7CFC68794DACF0844824EFB048DC8251A50DB7E63D85DC9D40892 +E9D9155401049B2C660E48824BD78AEFAEC9250E522F116EDFB6D3C300399808 +FE32066B99720529CF6E4736FED11F791B3CE3455ADA71857E76CB113F68D8FA +FF2B6205650442DE6762D11AC50FFD4ED71CCC78503B6905458936E6F74B5655 +CB973DCEA1F88A8928F89851E1607B22EB01559233F3E0C0E4638AEBA2A05FE1 +3F2CD08E1286E7A72B1C2E46B2AA4C7559EF4A8BF11CEB03C8C02AF666FB222B +5160A4D6170FA8FBFF0C46434A67105C491C88D6337DCE46D10FCF7583B176BA +AEFBA71D46AFF93D541651CD027DC8072B4481E77AAC6082455A130BC1044BFB +D15F3D8448CDBE14CD239375036992732CB38C4DC3A7B3296E16E7B891C8F6BF +3810E9207346217D01A3A6E6A9FE62C1E6152FFFFDBF9A566615F313A43F4701 +CA04467BC0825A86CAF30625021102D98ED300C725412D200D2CF779F8E4E0F7 +135E1E672A2DD2157CC74D07EA8DC0D458587C0E7BB39A6156D41451488F66D9 +EB0C189C41DA3B01D5219DA17812F4180F3C70B446C727ED5D53E05E1BA56335 +585C6B7B4B9C23CD76993080C41F243038726098E0CF84C4638CF375EE065222 +45E1676B7B76C7563077282D2E8CCDA53C89DF02CF1845DA14BCD3EA84E1E144 +913219F0F96C63011B0C679DA18D258EEB887DC0C227EF1A7F14F46B4BDA8EF0 +15208992B8A062EB82914FCC31AD035DF36428CB3B9D209A739D17FF34AAE30A +6419C8E6B536EE7D028CF4880B7F6D6BE2A02C2019FB5958B2C728008F647CC4 +9D19B8DC15BC358A5528D21464B336953D92490E3B640A84D134E622BB97732A +AEE27909A15D28FB192F8D99063B96C18C76D623D444FADE3A8ED202F424DA6B +4A424B93AD0530233066FCBA83EED39B1C1D6F832077508A4E13F4715415C9E4 +7536B48359819DA8326075EC27BD397A0FDBBD54FA491A1DC5A5381C30841FB3 +BDA3731BB216B283F8A05FC398C499A7243D2BE3142522185AF9BD7AF4E2F981 +83ECB7F4C324ED34514E0240B0717847817CB42A8F768DBC9D0DA0A59405BCFC +59C21184E7DD125DE615954F01DB19D0B2A1592D5E1E49D99341DC5BB7DBCDDF +6ACE1AADA3DC7B2AEC7A8F678C0398044695B9A792961680101844406F5290B3 +53CB4988A27A1F7EFBB4823AAD8C5A6120904BD5468114D83097F8ED776072E7 +169F40B7230959A79FF9F0E0F5A22BE1BA7133 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: OmegaSerifCyrillic +%!PS-AdobeFont-1.0: OmegaSerifCyrillic 001.000 +%%CreationDate: 6/03/98 at 9:49 +%%VMusage: 1024 35663 +% Generated by Fontographer 4.1.3 +% Copyright The Omega Project 1996 +% ADL: 755 245 0 +%%EndComments +FontDirectory/OmegaSerifCyrillic known{/OmegaSerifCyrillic findfont dup/UniqueID known{dup +/UniqueID get 4356202 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +20 dict begin +/FontInfo 16 dict dup begin +/version (001.000) readonly def +/FullName (OmegaSerifCyrillic) readonly def +/FamilyName (OmegaSerifCyrillic) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/Notice (Copyright The Omega Project 1996) readonly def +/em 1000 def +/ascent 755 def +/descent 245 def +end readonly def +/FontName /OmegaSerifCyrillic def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 46 /Yusiotified put +dup 181 /ohook put +readonly def +/PaintType 0 def +/FontType 1 def +/StrokeWidth 0 def +/FontMatrix[0.001 0 0 0.001 0 0]readonly def +/UniqueID 4356202 def +/FontBBox{-70 -350 1210 931}readonly def +currentdict end +currentfile eexec +D9D66F633B846AB28EDC112EE8CE6C6736001141B80F92BF0DB9D14D5829662F +49914E39DCF6611F886FF01FF0F4B0CC1EFDFEB495FF75E2130C1FC28060B24D +43B72DFCAD5CABC03D129717718ABE4FF6E43EAEC660C6BEA4CAC3A129D19FC5 +5823A1A21612CC0BC1288469C12A2822A891050E25BC3ABB4E0568470B6EE3F2 +6E6221FB0302EBF01B76D7BCE4E503855F67031D0A100DB729B2C17C2E525854 +AEE6DA7EA322C48AE0E38C61823651DD30A1E138AB3D104579F42F6984418F83 +065021764D74963B7C4EC17A47E5095DEA0D564D5555B3CC58AD65E2B48C61C6 +27558CEF3496D8C8D7492F1C6C48382AAFAC68C9926E991EE6B59D10E2B13D91 +244123F95AB26C3B782A78C1E09E303579BE428D994D6BD38D931C76E589FE25 +69F12252A8C67618640D175A8156E451B8E87076D3533C4899B51BCA78ADD455 +4717732786C0078220C41F03CBAECE1D06230A3C1041341E72822F3A7724CAF5 +EFE246914C79FCC3BBCC001E527B684ABF080729F67082BDE0126410189A7628 +FB1ECAC9DD14174FEF7F7180DDB5A83CD8ED1B6F0EDE313D9CF3BDE26D08884C +DA8D0AD74062D36CB19A8D05D87F334C318847646ADE5AB8849E81ED32B0EAFB +CD7EC6F58A4FB94373FFA8270AFD378A41BCA3F08FAE9E5CBE7F3C3FCCB12A3B +A061CB5D9F7586B0F955A18B5C13FF6C8A41D1FA047D4514ED477CD65FBFAD58 +BA28790DC53AB99F06A54AFCE0FEDBBB819366E691B5CA5C9916FFA55E1EDC99 +E2E986B5A37B9F595B80FCB4622B9C1711E35FE7F7D32C89BFD8467C8DBE9B08 +4974A9FC7C109AD0020C1F77C1F509024F48209D251083585B1D9A8C378E6D01 +5BCB96269B6EB93AAE444E16715ADAEF84BBAFD83E00FDD9453C02BAA1E989E1 +BDDAEABA33069D6073F18F71C6DFE7A31326783358C765638B4D4D32F2F7C002 +14F4AE6E5A26F62516DE799F5F0D3D558030F2E7121F6A618DC78E8EFC20BC3B +F32EBB01BD69D741F114B5C2CD2E63CF7D0E0B85AA41B1179D4A645786F38152 +B8716AF955D7F033C38B3B511E623E8B0E09F52097AEAA2F659EC5FD0E2E2A16 +63A7E36F337E150AF419F0F86159ABC4105EFBE8689B341522A57255E2F8E152 +C89D3CEB7CD50391E665336251F6FE41350D1EFC09663EFCE61CEAE7F4C93CFB +E6E7C36626958595627F97E82EE7902AA2082E9D2DA9874CFDF1DA8F59FB603E +8F1B8CBAB0D4E9A76D6390E4A630D95A1BE15B9F868FCE550CECC6B285E2FA86 +5AB812CC58931B34DFDA203D17FD2F20AAF254BD174AFA1BF4A0F6DC3FFE0078 +16F941103F6C47B2859F4502391F81592C875B112A926EEDB17F38E21EB41F60 +106683EAF249ED78A645B30024C2CC67CE667D75D3AEBB37CEAE846C61215D12 +5B26E3F12F37958A4380587A49225F868B171915FFF4545DF77950F2B7615A94 +086237D3F378566D08846C1DAA56CD52B2702DAC814FDF4E2E84A7BE414FCF7E +6C0427AD398CFB96476E7E5FEC682BF1FDDB510D291292361F5984B2E41917C5 +F5F62584F0032D2AE7C50B66F577260C17DD1AAC0BEC1A4644494EF40625AC42 +5A6A2789DD0A675E2EC0696C1586921B52C37D1A215BFCC9F145D1C9CD81995E +2F9C5B4B3969B0A729472B5B335955E5E1B9022D2E47007555726879BBE764E8 +84587D069A57E19F0FCAB76933BCA2B6ACB0A9F3AEAD8BCE2BF01587C102E326 +872DCB777286BAE7668D58B9C09E6A567DBDB981F4339EDC7D679BEE09F428B9 +B1C10DED43C38F2008F013E3D319F5CC59E59C8B6AF0B45763 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY8 +%!PS-AdobeFont-1.1: CMSY8 1.0 +%%CreationDate: 1991 Aug 15 07:22:10 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY8 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 3 /asteriskmath put +dup 121 /dagger put +readonly def +/FontBBox{-30 -955 1185 779}readonly def +/UniqueID 5000818 def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFBB2A7C1B5D8E7E8AA0 +5B10EA43D6A8ED61AF5B23D49920D8F79DAB6A59062134D84AC0100187A6CD1F +80F5DDD9D222ACB1C23326A7656A635C4A241CCD32CBFDF8363206B8AA36E107 +1477F5496111E055C7491002AFF272E46ECC46422F0380D093284870022523FB +DA1716CC4F2E2CCAD5F173FCBE6EDDB874AD255CD5E5C0F86214393FCB5F5C20 +9C3C2BB5886E36FC3CCC21483C3AC193485A46E9D22BD7201894E4D45ADD9BF1 +CC5CF6A5010B5654AC0BE0DA903DB563B13840BA3015F72E51E3BC80156388BA +F83C7D393392BCBC227771CDCB976E93302530FA3F4BEF341997D4302A48384A +CEFFC155983607ED44ED8BB0F2E1ECA433708ADC448491EE34E5DE6387C31A7E +DCF2EA2BD9D34874BA24E7890A4D439123FC08F165C103EC279DE5EA68EA8297 +E6AC3FFF3F15BA263EF1A0B6F158C59FFA893535D961F306F33EC80849E2C642 +1AA4B3506CCDF2635B07582676F8B20BA58C498650410C92A6E81E135BCE79B7 +89E572C6B118695164E031F6288FA34E1E695ECBBB704877860E030EE8FE908B +9A9352DBF53B779DA608B7E82EA0DFD24D3DFF0F52A2A8379BB2C03F6581E2C0 +65EF423EBAB253F569641118D9E4B5C6CDB3598772CAA9C3D29EF51254714926 +96E32853AE95D9B8463E678F1CD480AB9926124287EC40D13131FAD8BDA673E6 +D49F45207D96CD52EDF175CFEA9357FDCD103731293412CD00F21A1B6D6DD4A1 +D862E349370E8C3406E4FD0395EA7EC947345EDF74D5DCDEF8D669A406376E68 +BC7B6620926E78770859C7F457E89A00B639A571E76498EA1255A324A258448D +49E8478E32703B26E5FFFB53CBF6FA3F0D995DBD581076EC39887184A78A0635 +E8DAB331BC8DD55619EFA587685D6363D0EC794BFDA45856A836A25220D8ADCC +1BDE168F17C7A4C73BE7EB6CCDD88516EFE568ABC1E39FC431C588EC0B994B4B +D1212FBE2715E90093839BB09E76BC55B400ABBE299258A2BB7B5D35EB3A6787 +ED601F4C515362C730AC2A686CC7099A9D228592018E08C40D0325A66A175267 +DED0964F8C8AEE3B6E75E98E170F034DD41C97BDF3068A4081C4D74BFCDBAD43 +6A90439168D2B0F2EA848D5CEA51DCD2 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +TeXDict begin 39158280 55380996 1000 600 600 (torture.dvi) +@start /Fa 119[0 3[0 3[73 128[{}3 99.6264 /OmegaSerifArabicThree-Bold +rf /Fb 88[88 58[41 16[41 91[{}3 99.6264 /OmegaSerifArabicTwo-Bold +rf /Fc 34[65 2[30 1[42 43 3[52 1[54 2[54 2[44 2[53 8[23 +48 5[38 3[38 3[43 12[58 2[82 9[92 1[74 74 2[41 41 3[41 +41 11[62 5[76 30 30 1[35 3[30 1[29 29 9[29 23[0 18[53 +4[53 53 53 49[{}37 99.6264 /OmegaSerifArabicOne-Bold +rf /Fd 222[91 32[71{}2 90.9091 /CMSY10 rf /Fe 138[35 +2[35 2[35 35 4[35 2[35 2[35 1[35 46[35 50[{}9 66.4176 +/CMTT8 rf /Ff 133[44 44 44 44 1[44 44 44 44 3[44 44 44 +44 1[44 44 44 44 44 44 44 44 44 12[44 5[44 44 44 2[44 +14[44 11[44 44 44 44[{}30 83.022 /CMTT10 rf /Fg 134[33 +2[33 1[21 29 29 3[37 54 3[21 3[33 2[37 9[46 2[54 42 14[46 +69[{}14 74.7198 /OmegaSerifLatin-Italic rf /Fh 95[25 +160[{}1 74.7198 /OmegaSerifCommon-Italic rf /Fi 202[25 +25 25 25 25 49[{}5 49.8132 /OmegaSerifCommon rf /Fj 205[42 +50[{}1 143.462 /OmegaSerifArabicThree rf /Fk 35[85 1[43 +93 61 62 2[61 3[43 43 77 1[64 3[76 5[76 2[34 2[64 3[55 +3[55 55 14[84 15[107 4[59 1[59 4[92 89 2[92 13[43 7[42 +10[42 25[0 0 4[0 0 0 0 5[76 24[36 33[{}35 143.462 /OmegaSerifArabicOne +rf /Fl 40[89 2[88 109 9[122 53[154 47[61 30[0 3[0 64[{}8 +206.559 /OmegaSerifArabicOne rf /Fm 222[69 33[{}1 206.559 +/OmegaSerifCommon rf /Fn 168[74 87[{}1 90.9091 /OmegaSerifGreek-Bold +rf /Fo 134[45 45 2[51 30 35 40 1[51 45 51 76 25 2[25 +51 2[40 51 40 51 45 11[66 61 51 2[56 9[56 61 2[61 66 +65[{}26 90.9091 /OmegaSerifLatin-Bold rf /Fp 201[45 45 +45 45 45 45 1[30 23 46[{}8 90.9091 /OmegaSerifCommon-Bold +rf /Fq 168[81 87[{}1 99.6264 /OmegaSerifGreek-Bold rf +/Fr 134[50 2[50 55 33 39 44 1[55 50 55 83 28 2[28 1[50 +1[44 55 44 55 50 7[72 1[100 2[66 3[61 4[78 1[39 78 78 +2[72 2[72 65[{}28 99.6264 /OmegaSerifLatin-Bold rf /Fs +150[33 41[50 4[33 3[50 50 1[50 50 50 2[25 46[{}9 99.6264 +/OmegaSerifCommon-Bold rf /Ft 138[48 6[48 1[48 4[48 1[48 +3[48 97[{}6 90.9091 /CMITT10 rf /Fu 129[48 48 48 48 48 +48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 +48 48 48 48 48 48 48 3[48 48 48 48 48 48 2[48 48 48 2[48 +48 48 1[48 2[48 48 48 48 48 48 48 1[48 48 1[48 48 48 +48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 +48 4[48 48 48 14[48 4[48 13[{}79 90.9091 /CMTT10 rf /Fv +194[71 17[71 1[35 35 40[{}4 90.9091 /CMR10 rf /Fw 135[52 +17[45 1[47 100[{}3 90.9091 /CMMI10 rf /Fx 75[25 24[57 +11[27 75[0 1[0 65[{}5 66.4176 /OmegaSerifArabicOne rf +/Fy 165[51 90[{}1 90.9091 /CMEX10 rf /Fz 77[61 1[72 8[0 +3[56 1[73 3[37 1[0 7[0 1[78 7[0 0 1[0 1[0 3[67 47[91 +1[37 37 2[22 28 37 29 46 19[27 50[{}23 90.9091 /OmegaSerifArabicThree +rf /FA 2[47 47 3[59 1[59 7[32 27 39 5[49 49 49 24[41 +66 7[66 5[41 41 66 15[66 91 80 80 91 1[66 1[50 5[72 43[68 +68 84 37 37 1[37 3[37 1[37 2[37 37 37 37 2[37 37 3[37 +37 37 2[37 37 1[37 1[37 2[56 54 1[58 56 54 2[56 54 1[58 +56 54 3[54 7[54 2[27 75 2[27 75 69 1[27 75 2[27 75 32[{}66 +90.9091 /OmegaSerifArabicTwo rf /FB 3[75 3[75 3[75 1[27 +27 75 1[35 35 72 7[49 4[34 54 59 54 27 27 59 39 39 32 +1[39 48 32 49 27 27 49 37 40 40 37 54 48 1[48 1[48 2[44 +21 21 44 54 41 41 54 50 35 35 50 72 35 35 72 43 39 40 +54 43 39 40 54 1[53 1[60 1[53 53 60 98 75 78 100 98 74 +78 100 84 68 68 84 84 68 68 84 37 37 37 37 37 37 37 37 +1[58 56 54 1[58 56 54 1[58 1[56 54 1[27 27 75 69 27 27 +75 32 32 69 27 27 75 27 27 54 27 27 59 1[27 1[39 27 27 +1[27 29 20[0 1[0 5[0 0 0 0 1[74 4[48 48 48 6[48 13[25 +23 33[{}135 90.9091 /OmegaSerifArabicOne rf /FC 134[39 +39 39 39 39 1[39 39 1[39 39 39 39 39 2[39 2[39 39 39 +39 1[39 32[39 13[39 3[39 39 45[{}22 74.7198 /CMTT9 rf +/FD 134[29 117[32 3[{}2 49.8132 /CMSY6 rf /FE 190[48 +65[{}1 66.4176 /OmegaSerifLatin rf /FF 202[33 33 33 33 +33 49[{}5 66.4176 /OmegaSerifCommon rf /FG 50[45 82[35 +40 1[61 40 45 25 35 35 1[45 45 45 66 25 40 1[25 45 45 +25 40 45 40 45 45 16[56 3[51 2[30 2[56 4[56 65[{}29 90.9091 +/OmegaSerifLatin-Italic rf /FH 210[30 3[30 30 40[{}3 +90.9091 /OmegaSerifCommon-Italic rf /FI 168[57 87[{}1 +74.7198 /OmegaSerifGreek rf /FJ 50[42 83[37 37 54 37 +37 21 29 25 1[37 37 37 58 21 37 1[21 37 37 25 33 37 33 +37 33 8[54 71 54 54 46 42 2[42 1[54 1[46 5[42 46 54 50 +50 54 22[21 42[{}40 74.7198 /OmegaSerifLatin rf /FK 93[25 +25 25 54[25 25 45[21 37 37 37 1[37 37 1[37 37 37 24 19 +1[19 2[25 25 40[{}19 74.7198 /OmegaSerifCommon rf /FL +148[68 93 102 2[98 36[39 55 1[47 27 47 47 40 58 47 47 +68 48 47 48 27 55 65 55 48 25 47 41 55 47 47 48 55 57 +55 51 55 27 33[{}36 90.9091 /OmegaSerifTifinagh rf /FM +15[41 4[40 40 22[51 86[45 124[{}5 90.9091 /OmegaSerifIPA +rf /FN 74[45 134[104 46[{}2 90.9091 /OmegaSerifCyrillic +rf /FO 135[44 63 20[49 10[69 87[{}4 90.9091 /OmegaSerifGreek +rf /FP 48[75 51 51 55 33[39 47[40 45 45 66 45 45 25 35 +30 45 45 45 45 71 25 45 25 25 45 45 30 40 45 40 45 40 +7[66 66 86 66 66 56 51 61 1[51 66 66 81 56 66 35 30 66 +66 51 56 66 61 61 66 5[50 59[{}56 90.9091 /OmegaSerifLatin +rf /FQ 60[30 28[30 2[30 1[30 43[91 3[45 45 2[40 40 2[30 +30 8[45 1[30 1[30 27[40 3[25 25 45 45 45 45 45 45 45 +45 45 45 29 23 30 23 51 1[30 30 5[37 34[{}35 90.9091 +/OmegaSerifCommon rf /FR 168[97 87[{}1 119.552 /OmegaSerifGreek-Bold +rf /FS 134[60 60 86 60 66 40 47 53 1[66 60 66 100 33 +66 1[33 66 60 40 53 66 53 66 60 7[86 1[120 2[80 66 2[73 +93 1[113 3[47 2[73 3[80 86 65[{}34 119.552 /OmegaSerifLatin-Bold +rf /FT 199[60 60 60 60 60 60 60 60 49[{}8 119.552 /OmegaSerifCommon-Bold +rf /FU 190[42 65[{}1 58.1154 /OmegaSerifLatin rf /FV +256[{}0 58.1154 /OmegaSerifCommon rf /FW 168[63 87[{}1 +83.022 /OmegaSerifGreek rf /FX 134[42 1[60 42 42 23 32 +28 42 42 42 42 65 23 42 1[23 42 42 28 37 42 37 42 37 +8[60 78 1[60 51 46 2[46 3[51 2[28 2[46 51 2[55 60 65[{}35 +83.022 /OmegaSerifLatin rf /FY 197[23 11[21 28 21 47 +43[{}5 83.022 /OmegaSerifCommon rf /FZ 139[28 32 37 14[37 +46 42 31[60 65[{}7 83.022 /OmegaSerifLatin-Bold rf /F0 +256[{}0 83.022 /OmegaSerifCommon-Bold rf /F1 134[31 117[35 +3[{}2 66.4176 /CMSY8 rf /F2 138[50 1[39 33 2[50 50 78 +28 2[28 50 2[44 1[44 50 44 7[72 8[55 5[39 1[72 72[{}17 +99.6264 /OmegaSerifLatin rf /F3 256[{}0 99.6264 /OmegaSerifCommon +rf /F4 168[109 87[{}1 143.462 /OmegaSerifGreek rf /F5 +134[72 1[104 1[72 40 56 48 1[72 1[72 1[40 2[40 72 72 +1[64 72 64 72 64 12[88 80 5[128 9[96 1[104 65[{}22 143.462 +/OmegaSerifLatin rf /F6 197[40 11[36 1[36 44[{}3 143.462 +/OmegaSerifCommon rf end +%%EndProlog +%%BeginSetup +%%Feature: *Resolution 600dpi +TeXDict begin +%%PaperSize: A4 + end +%%EndSetup +%%Page: 63 1 +TeXDict begin 63 0 bop 519 912 a F5(Multilingual)33 b(T)-11 +b(ypesetting)33 b(with)i F4(W)p F6(,)g F5(a)h(Case)e(Study)p +F6(:)1681 1095 y F5(Arabic)1079 1348 y F2(Y)-10 b(annis)24 +b(Haralambous)1908 1312 y F1(\003)2217 1348 y F2(John)g(Plaice)2673 +1312 y F1(y)1722 1772 y FZ(Abstract)734 1924 y FX(In)c(this)h(paper)e +(we)i(describe)f(the)g(internal)g(structure)f(of)h(the)h(Arabic)f +(script)g(pack)p FY(-)609 2023 y FX(age)f(for)f(the)h +FW(W)h FX(typesetting)e(system)p FY(,)h FX(as)h(well)f(as)h(the)f +(techniques)e(and)i(tools)g(used)g(for)609 2123 y(its)j(de)n(v)o +(elopment)p FY(.)27 b FX(This)21 b(package)e(allo)n(ws)i(typesetting)e +(using)h(re)o(gular)f(L)2746 2107 y FU(A)2775 2123 y +FX(T)2812 2142 y(E)2853 2123 y(X)i(styles)p FY(,)609 +2223 y FX(in)16 b(all)g(Arabic)g(alphabet)e(languages)p +FY(:)26 b FX(Arabic)p FY(,)16 b FX(Berber)m FY(,)f FX(F)o(arsi)p +FY(,)i FX(Urdu)p FY(,)f FX(P)o(ashto)p FY(,)g FX(Sindhi)p +FY(,)609 2322 y FX(Uighur)m FY(,)j FX(etc)p FY(.)734 +2422 y FX(W)-7 b(e)17 b(also)f(gi)n(v)o(e)g(a)g(description)f(of)h(the) +g(character)f(codes)h(added)f(to)h(Unicode)p FY(,)f FX(to)i(ob)p +FY(-)609 2521 y FX(tain)h(the)g(Unicode)p FY(++)e FX(encoding)p +FY(,)g FX(used)h(by)g(the)h FW(W)g FX(system)g(for)f(typesetting)g +(purposes)p FY(.)382 2813 y FT(1)119 b FS(Ov)o(er)o(view)30 +b(of)g(the)g FR(W)g FS(Arabic)g(Script)i(P)o(ackage)382 +3020 y FP(T)-7 b(ypesetting)28 b(with)d FO(W)f FP(is)i(a)f(process)i +(similar)f(to)g(typesetting)i(with)e(T)2580 3041 y(E)2623 +3020 y(X)p FQ(:)37 b FP(the)26 b(user)g(prepares)382 +3133 y(a)c FQ(l)p FP(source)p FQ(m)i FP(\315le)p FQ(,)e +FP(containing)j(the)e(te)o(xt)g(of)1736 3092 y FJ(his)1736 +3153 y(her)1853 3133 y FP(document)h(and)f(a)f(certain)i(number)f(of)f +(macro)p FQ(-)382 3246 y FP(commands)34 b(for)f(attrib)n(ute)i(changes) +f(of)f(the)g(te)o(xt)g FQ(\()p FP(font)h(characteristics)p +FQ(,)k FP(language)p FQ(,)g FP(case)p FQ(,)382 3359 y +FP(etc)p FQ(.\),)20 b FP(references)h(to)e(\315gures)h +FQ(\()p FP(included)h(in)e(graphical)j(format)d(\315les)g(on)g(disk)p +FQ(\))h FP(and)f(other)h(ma)p FQ(-)382 3472 y FP(terial)k(included)i +(in)e(or)f(accompan)o(ying)k(the)d(te)o(xt)p FQ(.)523 +3585 y FP(Once)18 b(this)h(source)h(\315le)e(prepared)p +FQ(,)j FO(W)d FP(is)g(launched)p FQ(:)33 b FP(it)19 b(reads)g(the)g +(\315le)p FQ(,)f FP(e)o(xpands)i(the)f(com)p FQ(-)382 +3698 y FP(mands)g(and)g(typesets)i(the)e(te)o(xt)g(accordingly)-6 +b FQ(.)35 b FP(T)-7 b(o)17 b(perform)j(this)f(task)p +FQ(,)h FO(W)e FP(loads)h(and)g(e)o(x)o(ecutes)382 3810 +y(se)n(v)o(eral)24 b FO(W)p FP(TPs)d FQ(\()p FO(W)h FP(T)m(ranslation)i +(Processes)p FQ(\),)h FP(which)e(tak)o(e)g(care)g(of)g(lo)n(w)f(le)n(v) +o(el)h(properties)i(of)382 3923 y(the)g(document)i FQ(\()p +FP(conte)o(xtual)h(analysis)f(of)e(the)g(script)p FQ(,)h +FP(case)g(switching)g(according)i(to)d(script)382 4036 +y(and)k(language)p FQ(,)k FP(etc)p FQ(.\).)50 b FP(It)29 +b(also)h(uses)g(di\314erent)h(fonts)p FQ(,)g FP(most)e(of)g(which)g +(are)h FG(virtual)p FQ(,)i FP(in)d(the)382 4149 y(sense)20 +b(that)g(the)o(y)g(themselv)o(es)h(call)f(other)g(fonts)p +FQ(.)33 b FP(On)19 b(a)g(higher)i(le)n(v)o(el)p FQ(,)f +FP(such)g(a)f(document)i(uses)382 4262 y(L)405 4247 y +FE(A)439 4262 y FP(T)480 4283 y(E)524 4262 y(X)d(packages)p +FQ(,)23 b FP(some)c(of)h(them)g(modi\315ed)g(to)f(tak)o(e)i(adv)n +(antage)h(of)e(the)f(additional)k(features)382 4375 y(of)g +FO(W)g FP(vs)p FQ(.)g FP(T)739 4395 y(E)783 4375 y(X)p +FQ(.)523 4488 y FP(The)j(leading)i(idea)f(of)f(the)g +FO(W)f FP(Arabic)i(Script)f(P)o(ackage)h FQ(\()p FP(as)g(of)f(an)o(y)g +FO(W)f FP(language)k(pack)p FQ(-)382 4601 y FP(age)p +FQ(\))e FP(is)g(that)g(the)g(lo)n(w)f(le)n(v)o(el)h(properties)i(of)e +(the)f(script)i(ha)n(v)o(e)g(to)e(be)h(separated)i(from)d(higher)382 +4714 y(le)n(v)o(el)e(typesetting)j(commands)p FQ(.)35 +b FP(F)o(or)23 b(e)o(xample)p FQ(,)h FP(conte)o(xtual)i(analysis)g(of)d +(the)h(Arabic)h(script)382 4827 y(has)f(to)f(be)h(completely)i +(independent)h(of)c(the)h(L)1877 4811 y FE(A)1911 4827 +y FP(T)1952 4847 y(E)1996 4827 y(X)e(command)i(le)n(v)o(el)p +FQ(,)g FP(so)f(that)i(one)f(can)g(use)382 4940 y(Arabic)f(te)o(xt)g(in) +g(an)o(y)g(conte)o(xt)i FQ(\()p FP(inside)f(a)f(table)h(or)e(a)h +(formula)p FQ(,)h FP(or)e(deeply)j(nested)f(inside)h(se)n(v)p +FQ(-)382 5053 y FP(eral)h(L)566 5037 y FE(A)601 5053 +y FP(T)642 5073 y(E)685 5053 y(X)f(en)l(vironments)30 +b(and)c(commands)p FQ(,)i FP(etc)p FQ(.\))41 b FP(and)27 +b(under)g(an)o(y)f(circumstances)p FQ(,)k FP(as)c(in)p +382 5133 1196 4 v 480 5186 a FD(\003)516 5218 y FJ(Atelier)19 +b(Fluxus)g(V)l(irus)p FK(,)f(187,)h FJ(rue)g(Nationale)p +FK(,)g(59800)i FJ(Lille)p FK(,)c FJ(France)p FK(,)i FC +(yannis@fluxus-virus.com)484 5280 y FD(y)516 5312 y FJ(School)c(of)f +(Computer)h(Science)g(and)g(Engineering)p FK(,)h FJ(The)e(Uni)n(v)o +(ersity)h(of)f(Ne)n(w)g(South)h(W)-6 b(ales)p FK(,)14 +b FJ(Sydne)o(y)h FK(2052)382 5403 y FJ(Australia)p FK(,)j +FC(plaice@cse.unsw.edu.au)1831 5652 y FQ(63)p eop end +%%Page: 64 2 +TeXDict begin 64 1 bop 382 548 a FP(the)27 b(follo)n(wing)g(e)o(xample) +p FQ(,)h FP(which)f(has)f(been)i(typeset)g(with)e(ordinary)j(L)2670 +533 y FE(A)2704 548 y FP(T)2745 568 y(E)2788 548 y(X)c(en)l(vironments) +382 661 y(and)f(macros)p FQ(:)p 1280 772 1192 4 v 1278 +885 4 113 v 1728 851 a FB(\203)-56 b(@)-27 b(\333)-54 +b(n)-59 b(s)p 2189 885 V 663 w(\313)-40 b(@)-27 b(\333)g(I)-69 +b(x)p 2471 885 V 1280 888 1192 4 v 1278 1167 4 279 v +1330 940 a Fy(Z)1749 967 y FB(\257)i(\333)j(\217)-122 +b(\313)-40 b(@)-58 b(\204)g(C)-37 b(\213)g(B)e(\327)-76 +b(\212)1434 1147 y Fx(\233)-57 b(A)-25 b(\264)g(C)e(\217)1849 +1064 y Fw(f)10 b Fv(\()p Fw(x)p Fv(\))15 b Fw(dx)p 2189 +1167 V 182 w FB(c)-27 b(@)g(\317)-54 b(n)p 2471 1167 +V 1280 1170 1192 4 v 523 1340 a FP(There)19 b(are)h(tw)o(o)e(k)o(e)o(y) +i(aspects)h(to)e(Arabic)g(script)i(typesetting)p FQ(,)i +FP(unfortunately)g(of)c(unequal)382 1453 y(comple)o(xity)p +FQ(:)45 b FP(the)28 b(\315rst)g(one)g(is)g(conte)o(xtual)i(analysis)p +FQ(,)h FP(that)e(is)f(the)g(f)o(act)g(that)h(Arabic)g(letters)382 +1566 y(change)20 b(shape)h(according)g(to)e(their)h(position)h(in)e(a)f +(w)o(ord)p FQ(,)i FP(or)f(according)i(to)e(the)h(f)o(act)f(that)h(the)o +(y)382 1679 y(are)g(part)h(of)f(an)h(abbre)n(viation)p +FQ(,)j FP(etc)p FQ(.)32 b FP(This)20 b(aspect)i(can)f(be)f(handled)i +(easily)g(and)f(e\317ciently)h(by)382 1791 y FO(W)p FP(TPs)p +FQ(.)34 b FP(The)24 b(second)h(aspect)h(is)e(more)g(global)p +FQ(:)37 b FP(it)24 b(is)g(the)g(f)o(act)h(that)g(Arabic)g(script)g(is)f +(written)382 1904 y(from)f(right)i(to)e(left)p FQ(.)523 +2017 y FP(T)-7 b(w)o(o)30 b(methods)j(can)f(be)g(applied)p +FQ(:)51 b FP(the)32 b(\315rst)f(one)h(is)g(to)f(change)i(the)f(def)o +(ault)i(direction)382 2130 y(of)26 b(the)h(whole)g(document)p +FQ(.)43 b FP(This)26 b(method)h(is)g(e)o(xtremely)g(e\317cient)h(when)e +(the)h(document)h(is)382 2243 y(entirely)33 b(in)e(Arabic)p +FQ(,)i FP(or)e(if)g(left)p FQ(-)p FP(to)p FQ(-)p FP(right)j(te)o(xt)d +(e)o(xcerpts)i(are)e(e)o(xceptional)p FQ(.)59 b FP(Being)32 +b(global)p FQ(,)382 2356 y FP(this)h(method)h(applies)g(also)f(to)g +(page)p FQ(-)p FP(le)n(v)o(el)i(typesetting)g(methods)p +FQ(,)h FP(such)e(as)e(the)h(order)h(of)382 2469 y(columns)23 +b(in)e(a)g(multicolumn)i(en)l(vironment)p FQ(,)h FP(etc)p +FQ(.)33 b FP(Of)21 b(course)p FQ(,)i FP(mathematical)g(formulas)g(are) +382 2582 y(not)h(a\314ected)h(by)e(this)h(global)h(direction)h(change)p +FQ(.)523 2695 y FP(The)21 b(second)i(method)f(is)f(to)g(k)o(eep)i(left) +p FQ(-)p FP(to)p FQ(-)p FP(right)h(as)d(def)o(ault)i(direction)h(and)e +(to)f(temporar)n FQ(-)382 2808 y FP(ily)g(switch)h(to)g(right)p +FQ(-)p FP(to)p FQ(-)p FP(left)i(for)e(e)n(v)o(ery)g(Arabic)g(script)g +(sentence)p FQ(.)35 b FP(This)21 b(can)h(be)f(practical)j(for)382 +2921 y(a)f(document)i(where)f(Arabic)g(e)o(xcerpts)h(are)f(e)o +(xceptional)p FQ(.)382 3213 y FT(2)119 b FS(P)o(arts)29 +b(of)h(the)g FR(W)g FS(Arabic)h(Script)g(P)o(ackage)382 +3420 y FP(This)23 b(package)j(consists)f(of)f(the)g(follo)n(wing)h +(elements)p FQ(:)496 3633 y(1.)45 b FP(The)19 b Fu(OmegaSerifArabic)14 +b FP(PostScript)20 b(fonts)p FQ(:)33 b FP(\315les)19 +b Fu(omsea1.pfb)p FQ(,)e Fu(omsea2.pfb)p FQ(,)609 3746 +y Fu(omsea3.pfb)24 b FP(and)k(the)g(corresponding)k(AFM)25 +b(\315les)p FQ(.)45 b FP(A)27 b(Sans)p FQ(-)p FP(serif)i(font)f +FQ(\()p Fu(Omega-)609 3859 y(SansArabic)p FQ(\),)23 b +FP(as)j(well)f(as)h(additional)j(styles)e(of)f(the)g(Serif)g(font)g +(are)g(under)h(de)n(v)o(el)p FQ(-)609 3971 y FP(opment)p +FQ(.)496 4159 y(2.)45 b FP(The)16 b(virtual)h(font)g +Fu(omrl)p FQ(:)28 b FP(\315les)16 b Fu(omrl.ovf)p FQ(,)e +Fu(omrl.ofm)p FQ(,)g Fu(omsea1.tfm)p FQ(,)g Fu(omsea2.tfm)p +FQ(,)609 4272 y Fu(omsea3.tfm)p FQ(.)496 4460 y(3.)45 +b FP(The)16 b(con\315guration)j(\315le)c Fu(omrl.cfg)p +FQ(,)f FP(which)j(is)e(used)i(by)f(the)h(PERL)c(utility)18 +b(Mak)o(eO)-5 b(VP)609 4573 y(to)24 b(create)g(the)g(virtual)h(font)f +(out)g(of)g(the)g(AFM)d(\315les)j(and)g(other)g(information)p +FQ(.)496 4760 y(4.)45 b FP(A)23 b(certain)i(number)f(of)g +FO(W)p FP(TPs)p FQ(:)663 4948 y(\()p FP(a)p FQ(\))46 +b Fu(7arb2uni.otp)p FQ(,)19 b(7-)p FP(bit)25 b(Arabic)p +FQ(/)p FP(F)o(arsi)g(transcription)i(to)c(Unicode)p FQ(;)658 +5094 y(\()p FP(b)p FQ(\))46 b Fu(7ber2uni.otp)p FQ(,)19 +b(7-)p FP(bit)25 b(Berber)f(transcription)j(to)d(Unicode)p +FQ(;)663 5240 y(\()p FP(c)p FQ(\))46 b Fu(7urd2uni.otp)p +FQ(,)19 b(7-)p FP(bit)25 b(Urdu)e(transcription)28 b(to)23 +b(Unicode)p FQ(;)658 5386 y(\()p FP(d)p FQ(\))46 b Fu(7pas2uni.otp)p +FQ(,)19 b(7-)p FP(bit)25 b(Afghanistani)h(P)o(ashto)e(transcription)j +(to)d(Unicode)p FQ(;)1831 5652 y(64)p eop end +%%Page: 65 3 +TeXDict begin 65 2 bop 663 548 a FQ(\()p FP(e)p FQ(\))46 +b Fu(7pap2uni.otp)p FQ(,)19 b(7-)p FP(bit)25 b(P)o(akistani)g(P)o +(ashto)e(transcription)28 b(to)23 b(Unicode)p FQ(;)673 +694 y(\()p FP(f)p FQ(\))46 b Fu(7snd2uni.otp)p FQ(,)19 +b(7-)p FP(bit)25 b(Sindhi)f(transcription)j(to)d(Unicode)p +FQ(;)658 839 y(\()p FP(g)p FQ(\))46 b Fu(uni2cuni.otp)p +FQ(,)13 b FP(conte)o(xtual)19 b(analysis)p FQ(,)g FP(sending)f(Unicode) +p FQ(++)g FP(to)e(cUnicode)p FQ(++)809 952 y(\(h)p FP(c)p +FQ(i)24 b FP(for)g FQ(h)p FP(conte)o(xtual)p FQ(i\);)658 +1098 y(\()p FP(h)p FQ(\))46 b Fu(cuni2oar.otp)p FQ(,)19 +b FP(cUnicode)p FQ(++)26 b FP(to)d Fu(omrl)f FP(font)p +FQ(.)609 1285 y FP(These)34 b FO(W)p FP(TPs)f(are)h(a)n(v)n(ailable)i +(in)e(human)p FQ(-)p FP(readable)k(and)c(compiled)i(binary)f(format)609 +1398 y FQ(\()p FP(OCP)p FQ(\),)22 b FP(the)i(latter)g(being)h(loaded)g +(by)f FO(W)e FP(on)i(runtime)p FQ(.)496 1585 y(5.)45 +b FP(A)25 b(L)723 1570 y FE(A)757 1585 y FP(T)798 1606 +y(E)842 1585 y(X)g(style)i FQ(\()p Fu(arabic.sty)p FQ(\))c +FP(de\315ning)k(a)f(command)h(that)g(will)e(acti)n(v)n(ate)j(and)f(de)p +FQ(-)609 1698 y FP(acti)n(v)n(ate)e(the)f FO(W)p FP(TPs)p +FQ(.)496 1886 y(6.)45 b FP(Documentation)26 b(and)e(test)g(\315les)g +FQ(\()p Fu(testarab.tex)p FQ(,)19 b Fu(testsind.tex)p +FQ(\).)382 2178 y FT(3)119 b FS(Installation)30 b(of)f(the)h +FR(W)g FS(Arabic)h(Script)g(P)o(ackage)382 2385 y FP(T)-7 +b(o)15 b(use)i(the)g FO(W)f FP(Arabic)h(Script)g(P)o(ackage)g(you)g +(must)g(ha)n(v)o(e)g FO(W)e FP(v)o(ersion)j FQ(1.45)f +FP(or)g(higher)h(installed)382 2498 y(on)k(your)h(machine)p +FQ(.)34 b FP(Place)22 b(OFM)p FQ(,)e FP(O)-5 b(VF)e FQ(,)20 +b FP(TFM)g(and)j(OCP)d(\315les)i(where)g(the)h(system)f(e)o(xpects)382 +2611 y(to)g(\315nd)h(them)f FQ(\()p FP(if)h(in)f(doubt)p +FQ(,)i FP(consult)h(the)d Fu(texmf.conf)e FP(\315le)p +FQ(\).)32 b FP(K)n(eep)23 b(the)f Fu(arabic.sty)e FP(\315le)382 +2724 y(some)n(where)25 b(where)f(it)g(can)g(be)g(found)i(by)e +FO(W)p FQ(.)33 b FP(Finally)25 b(add)g(the)f(follo)n(wing)i(fe)n(w)d +(lines)i(to)f(the)382 2837 y Fu(psfonts.map)c FP(con\315guration)26 +b(\315le)d(of)h Fu(odvips)p FQ(:)382 3023 y Fu(omsea1)i +(OmegaSerifArabicOne)c(</foo/omsea1.pfb)382 3136 y(omsea2)k +(OmegaSerifArabicTwo)c(</foo/omsea2.pfb)382 3249 y(omsea3)k +(OmegaSerifArabicThree)21 b(</foo/omsea3.pfb)382 3436 +y FP(where)j Fu(/foo)d FP(stands)k(for)f(the)g(absolute)i(path)e(of)f +(the)h(directory)i(containing)h(the)c(PFB)f(\315les)p +FQ(.)523 3549 y FP(This)38 b(is)h(all)g(you)g(need)g(to)g(do)p +FQ(:)64 b FP(you)39 b(can)g(start)g(already)i(by)d(launching)k +FO(W)37 b FP(on)i(\315les)382 3662 y Fu(testarab.tex)19 +b FP(and)24 b Fu(testsind.tex)p FQ(.)523 3775 y FP(In)f(the)g(follo)n +(wing)h(sections)h(we)d(will)g(describe)j(the)e(use)g(of)g(the)g +(package)p FQ(,)i FP(from)d(the)h(end)382 3887 y(users)p +FQ(i)g FP(point)h(of)e(vie)n(w)-6 b FQ(.)33 b FP(W)-7 +b(e)21 b(will)h(assume)h(that)g(the)f(user)h(is)f(f)o(amiliar)i(with)e +(the)g(T)2952 3908 y(E)2996 3887 y(X)f(typeset)p FQ(-)382 +4000 y FP(ting)j(system)g(and)g(the)g(L)1132 3985 y FE(A)1166 +4000 y FP(T)1207 4021 y(E)1251 4000 y(X)e(macro)i(package)p +FQ(.)382 4293 y FT(4)119 b FS(Basic)29 b(Macr)n(os)382 +4500 y FP(Before)h(starting)h(a)d(ne)n(w)h(document)i(one)e(has)h(to)f +(choose)i(if)e(the)g FQ(l)p FP(background)k(language)p +FQ(m)382 4613 y FP(is)24 b(going)i(to)e(be)h(an)f(Arabic)h(alphabet)i +(language)p FQ(,)f FP(in)f(other)g(terms)p FQ(,)g FP(if)f(we)f(e)o +(xpect)j(pages)f(and)382 4726 y(columns)32 b(to)e(be)g(typeset)j(from)d +(right)h(to)g(left)p FQ(,)h FP(and)f(the)g(whole)f(global)i(page)g +(design)g(to)e(be)382 4839 y(right)p FQ(-)p FP(to)p FQ(-)p +FP(left)d(oriented)p FQ(.)523 4951 y FP(If)22 b(this)h(the)f(case)p +FQ(,)h FP(then)g(the)g(macro)g Fu(\\GlobalArabic[)p Ft(language)p +Fu(])15 b FP(has)22 b(to)h(be)f(used)h(in)382 5064 y(the)g(document)h +(header)l FQ(,)g FP(where)e(the)h(optional)i(ar)n(gument)f +Ft(language)19 b FP(is)k(one)f(of)h(the)f(follo)n(w)p +FQ(-)382 5177 y FP(ing)p FQ(:)34 b Fu(arabic)21 b FQ(\()p +FP(by)j(def)o(ault)p FQ(\),)h Fu(farsi)p FQ(,)d Fu(urdu)p +FQ(,)f Fu(pashto)p FQ(,)g Fu(sindhi)p FQ(,)g Fu(custom)p +FQ(.)523 5290 y FP(This)c(macro)h(will)g(switch)g(the)g(global)h +(typesetting)i(direction)e(of)f(the)g(document)h(to)f(right)p +FQ(-)382 5403 y FP(to)p FQ(-)p FP(left)25 b(and)f(will)f(launch)i(the)f +FO(W)p FP(TPs)e(necessary)k(for)e(the)g(language)h(chosen)p +FQ(.)1831 5652 y(65)p eop end +%%Page: 66 4 +TeXDict begin 66 3 bop 523 548 a FP(Inside)23 b(the)f(document)p +FQ(,)h FP(independently)i(of)d(the)g(choice)g(of)g(background)i +(language)p FQ(,)g FP(one)382 661 y(can)32 b(use)f(L)713 +645 y FE(A)747 661 y FP(T)788 681 y(E)832 661 y(X)f(en)l(vironments)35 +b Fu(arabic)p FQ(,)30 b Fu(berber)p FQ(,)h Fu(farsi)p +FQ(,)f Fu(urdu)p FQ(,)h Fu(pashto)p FQ(,)g Fu(pashtop)p +FQ(,)382 774 y Fu(sindhi)c FP(to)j(switch)g(to)g(the)g(corresponding)k +(language)p FQ(,)f FP(and)e Fu(latin)c FP(or)j Fu(greek)e +FP(to)h(switch)382 887 y(to)20 b(a)f(Latin)h(alphabet)i(language)g(or)e +(some)g(\316a)n(v)n(our)h(of)f(Greek)p FQ(.)32 b FP(It)20 +b(should)h(be)f(noted)h(that)g(these)382 1000 y(macros)d(are)g(only)g +(temporary)i(and)e(will)f(be)h(adapted)h(to)f(a)f(more)h(global)h +(language)p FQ(-)p FP(switching)382 1112 y(scheme)p FQ(,)24 +b FP(currently)i(being)f(elaborated)h(by)e(the)f(L)1947 +1097 y FE(A)1982 1112 y FP(T)2023 1133 y(E)2066 1112 +y(X)p FQ(3)g FP(and)h FO(W)f FP(w)o(orking)h(groups)p +FQ(.)382 1405 y FT(5)119 b FS(Input)31 b(of)e(Arabic)i(Alphabet)h(T)-11 +b(ext)382 1615 y Fs(5.1)99 b Fr(Y)-11 b(ou)25 b(Ha)n(v)o(e)f(an)h +(Arabic)g(K)n(eyboard)382 1790 y FP(If)18 b(you)i(ha)n(v)o(e)f(an)g +(Arabic)g(K)n(e)o(yboard)p FQ(,)h FP(containing)i(su\317ciently)f(man)o +(y)d(k)o(e)o(ys)i(for)f(the)g(language)382 1903 y(you)31 +b(w)o(ant)f(to)h(typeset)h FQ(\()p FP(for)f(e)o(xample)p +FQ(,)i FP(with)d(a)g(standard)j(Arabic)e(k)o(e)o(yboard)h(one)f(can)g +(per)n FQ(-)382 2016 y FP(haps)k(typeset)h(F)o(arsi)p +FQ(,)g FP(possibly)h(Urdu)d(b)n(ut)h(not)g(P)o(ashto)g(and)f(certainly) +j(not)e(Sindhi)p FQ(\),)i FP(you)382 2128 y(need)e(to)e(con\315gure)j +FO(W)d FP(to)g(your)i FG(input)g(encoding)p FQ(,)k FP(by)33 +b(pro)o(viding)k(the)d(appropriate)j(input)382 2241 y +FO(W)p FP(TP)28 b(by)i(use)g(of)g(the)g Fu(\\ArabicInputEncoding)24 +b FP(macro)p FQ(,)31 b FP(which)f(you)h(ha)n(v)o(e)f(to)g(place)h(in) +382 2354 y(the)c(header)g(of)g(your)g(document)p FQ(.)43 +b FP(W)-7 b(e)26 b(ha)n(v)o(e)h(already)h(written)f(such)g +FO(W)p FP(TPs)e(for)i(three)g(input)382 2467 y(encodings)p +FQ(:)34 b FP(Macintosh)21 b(Arabic)e FQ(\()p Fu(applemac)p +FQ(,)d FP(co)o(v)o(ering)k(Arabic)p FQ(,)g FP(F)o(arsi)p +FQ(,)f FP(Urdu)p FQ(\),)g FP(W)l(indo)n(ws)382 2580 y(Arabic)j +FQ(\()p Fu(1256)p FQ(,)d FP(co)o(v)o(ering)k(Arabic)f(and)f(F)o(arsi)p +FQ(\),)h FP(MS)p FQ(-)p FP(DOS)d(Arabic)i(ASMO)e FQ(\()p +Fu(708)p FQ(,)h FP(co)o(v)o(ering)382 2693 y(Arabic)27 +b(only)p FQ(\))g FP(and)g(ISO)d FQ(8859-6)k(\()p Fu(iso8859-6)p +FQ(,)c FP(co)o(v)o(ering)j(only)g(Arabic)p FQ(\).)43 +b FP(If)25 b(your)i(equip)p FQ(-)382 2806 y FP(ment)c(is)h(not)g(in)f +(this)h(list)p FQ(,)g FP(go)g(to)f(section)i FQ(6)e FP(to)h(see)g(ho)n +(w)f(to)g(write)h(your)g(o)n(wn)f FO(W)p FP(TPs)p FQ(.)382 +3055 y Fs(5.2)99 b Fr(Y)-11 b(ou)25 b(Don)p Fs(i)p Fr(t)g(Ha)n(v)o(e)f +(an)h(Arabic)h(K)n(eyboard)382 3229 y FP(In)d(that)h(case)g(you)g(can)g +(use)g(a)e(Latin)i(transcription)p FQ(:)38 b FP(we)22 +b(ha)n(v)o(e)i(prepared)i(ASCII)c(Latin)h(tran)p FQ(-)382 +3342 y FP(scriptions)30 b(for)d(each)h(of)f(the)h(main)f(Arabic)p +FQ(-)p FP(alphabet)k(languages)p FQ(:)44 b FP(Arabic)p +FQ(,)29 b FP(Berber)l FQ(,)g FP(F)o(arsi)p FQ(,)382 3455 +y FP(Urdu)p FQ(,)23 b FP(P)o(ashto)h FQ(\()p FP(Afghanistani)j(and)d(P) +o(akistani)p FQ(\),)g FP(Sindhi)p FQ(.)34 b FP(Here)24 +b(the)o(y)g(are)p FQ(:)382 3701 y Fp(5.2.1)92 b Fo(Arabic)p +Fp(/)p Fo(F)n(arsi)24 b(T)-7 b(ranscription)p 672 3774 +2410 4 v 670 3897 4 123 v 745 3853 a Fu(A)p 865 3897 +V 148 w FB(m)p 1040 3897 V 1057 3897 V 164 w Fu(p)p 1252 +3897 V 123 w FA($)p 1426 3897 V 1443 3897 V 140 w Fu(z)p +1638 3897 V 155 w FB(\220)p 1838 3897 V 1855 3897 V 172 +w Fu(\022)p 2050 3897 V 132 w FB(\252)p 2221 3897 V 2238 +3897 V 149 w Fu(m)p 2433 3897 V 129 w FB(\312)p 2582 +3897 V 2599 3897 V 194 w Fu(I)p 2889 3897 V 187 w FB(\331)p +3079 3897 V 672 3900 2410 4 v 670 4020 4 121 v 721 3979 +a Fu(\015a)p 865 4020 V 124 w FB(c)p 1040 4020 V 1057 +4020 V 164 w Fu(j)p 1252 4020 V 134 w FB(})p 1426 4020 +V 1443 4020 V 126 w Fu(zh)p 1638 4020 V 131 w FA(j)p +1838 4020 V 1855 4020 V 148 w Fu(gh)p 2050 4020 V 108 +w FB(\256)p 2221 4020 V 2238 4020 V 149 w Fu(n)p 2433 +4020 V 123 w FB(\316)p 2582 4020 V 2599 4020 V 188 w +Fu(y)p 2889 4020 V 187 w FB(\335)p 3079 4020 V 672 4024 +2410 4 v 670 4144 4 121 v 721 4103 a Fu(\015i)p 865 4144 +V 124 w FB(g)p 1040 4144 V 1057 4144 V 164 w Fu(H)p 1252 +4144 V 134 w FB(\202)p 1426 4144 V 1443 4144 V 150 w +Fu(s)p 1638 4144 V 132 w FB(\222)p 1838 4144 V 1855 4144 +V 148 w Fu(f)p 2050 4144 V 123 w FB(\262)p 2221 4144 +V 2238 4144 V 116 w Fu(\015n)p 2433 4144 V 99 w FB(\344)p +2582 4144 V 2599 4144 V 164 w Fu(\015y)p 2889 4144 V +163 w FB(i)p 3079 4144 V 672 4148 2410 4 v 670 4268 4 +121 v 721 4227 a Fu(\015A)p 865 4268 V 124 w FB(a)p 1040 +4268 V 1057 4268 V 140 w Fu(kh)p 1252 4268 V 110 w FB(\206)p +1426 4268 V 1443 4268 V 126 w Fu(sh)p 1638 4268 V 108 +w FB(\226)p 1838 4268 V 1855 4268 V 148 w Fu(q)p 2050 +4268 V 134 w FB(\266)p 2221 4268 V 2238 4268 V 127 w +Fu(-h)p 2433 4268 V 108 w FB(\322)p 2582 4268 V 2599 +4268 V 172 w Fu(||)p 2889 4268 V 178 w FB(`)p 3079 4268 +V 672 4272 2410 4 v 670 4392 4 121 v 721 4351 a Fu("A)p +865 4392 V 124 w Fz(2)p 1040 4392 V 1057 4392 V 140 w +Fu(ch)p 1252 4392 V 110 w FA(D)p 1426 4392 V 1443 4392 +V 150 w Fu(S)p 1638 4392 V 123 w FB(\232)p 1838 4392 +V 1855 4392 V 141 w Fu(v)p 2050 4392 V 123 w FB(\354)p +2221 4392 V 2238 4392 V 116 w Fu("h)p 2433 4392 V 108 +w FB(s)p 2582 4392 V 2599 4392 V 196 w Fu(E)p 2889 4392 +V 193 w FA(\374)p 3079 4392 V 672 4395 2410 4 v 670 4516 +4 121 v 745 4474 a Fu(b)p 865 4516 V 124 w FB(o)p 1040 +4516 V 1057 4516 V 140 w Fu(d)p 1252 4516 V 142 w FB(\212)p +1426 4516 V 1443 4516 V 159 w Fu(D)p 1638 4516 V 124 +w FB(\236)p 1838 4516 V 1855 4516 V 140 w Fu(k)p 2050 +4516 V 132 w FB(\272)p 2221 4516 V 2238 4516 V 149 w +Fu(e)p 2433 4516 V 132 w FA(\356)p 2582 4516 V 2599 4516 +V 2889 4516 V 3079 4516 V 672 4519 2410 4 v 670 4640 +4 121 v 745 4598 a Fu(t)p 865 4640 V 124 w FB(u)p 1040 +4640 V 1057 4640 V 116 w Fu(dh)p 1252 4640 V 118 w FB(\214)p +1426 4640 V 1443 4640 V 159 w Fu(T)p 1638 4640 V 144 +w FB(\242)p 1838 4640 V 1855 4640 V 160 w Fu(g)p 2050 +4640 V 126 w FA(\272)p 2221 4640 V 2238 4640 V 143 w +Fu(U)p 2433 4640 V 128 w FB(\327)p 2582 4640 V 2599 4640 +V 122 w Fu(LLah)p 2889 4640 V 107 w FB(>)p 3079 4640 +V 672 4643 2410 4 v 670 4764 4 121 v 721 4722 a Fu(th)p +865 4764 V 100 w FB(y)p 1040 4764 V 1057 4764 V 140 w +Fu(r)p 1252 4764 V 142 w FB(\216)p 1426 4764 V 1443 4764 +V 159 w Fu(Z)p 1638 4764 V 144 w FB(\246)p 1838 4764 +V 1855 4764 V 160 w Fu(l)p 2050 4764 V 137 w FB(\276)p +2221 4764 V 2238 4764 V 130 w Fu(\015u)p 2433 4764 V +104 w FB(e)p 2582 4764 V 2599 4764 V 146 w Fu(SLh)p 2889 +4764 V 122 w Fz(P)p 3079 4764 V 672 4767 2410 4 v 382 +4937 a FP(Remarks)p FQ(:)496 5150 y(1.)45 b FP(The)23 +b FG(tah)h(marb)n(utah)i FB(s)d FP(can)g(be)h(written)g(in)g(tw)o(o)f +(w)o(ays)p FQ(:)34 b Fu("h)22 b FP(or)i Fu("t)p FQ(.)496 +5337 y(2.)45 b FP(The)23 b FG(waw)g FB(\327)g FP(can)g(be)h(written)g +(in)g(tw)o(o)f(w)o(ays)p FQ(:)34 b Fu(w)22 b FP(or)i +Fu(U)p FQ(.)1831 5652 y(66)p eop end +%%Page: 67 5 +TeXDict begin 67 4 bop 496 548 a FQ(3.)45 b FP(The)20 +b(hyphen)i(in)e(front)i(of)e(the)h(transcription)j(of)c +FB(\322)g FP(is)g(only)h(necessary)i(to)e(pre)n(v)o(ent)g(con)p +FQ(-)609 661 y FP(fusion)26 b(between)g(cases)f(such)g(as)g +Fu(kh)e FQ(\()p FB(\206)p FQ(\))h FP(and)h Fu(k-h)e FQ(\()31 +b FB(\273)-73 b(\326)41 b FQ(\).)36 b FP(W)-7 b(e)23 +b(suggest)k(you)e(use)g(it)f(all)609 774 y(the)g(time)p +FQ(.)496 961 y(4.)45 b FP(VER)-6 b(Y)15 b(IMPOR)-5 b(T)d(ANT)j +FQ(:)14 b FP(the)k(duplication)j(of)c(consonants)k FQ(\()p +FG(shaddah)p FQ(\))f FP(is)d(obtained)j(by)609 1074 y(writing)26 +b(the)f(consonants)j(twice)p FQ(.)38 b FP(So)24 b(for)i(e)o(xample)p +FQ(,)f Fu(Dmm"h)e FP(will)i(produce)98 b FB(\237)-118 +b(\314)-40 b(K)-32 b(t)142 b FP(and)609 1187 y(not)132 +b FB(\237)-118 b(\314)-80 b(\314)-72 b(t)158 b FQ(;)20 +b FP(to)g(obtain)h(the)f(latter)l FQ(,)h FP(type)g Fu(Dm-m"h)p +FQ(,)d FP(as)h(for)h(e)o(xample)g(in)g(the)g(w)o(ord)197 +b FB(v)-54 b(w)-85 b(\204)-95 b(\217)-37 b(K)-54 b(\272)149 +b FQ(,)609 1300 y FP(which)24 b(presents)i(both)e(cases)p +FQ(,)g FP(and)g(which)g(is)g(typed)g Fu(t-tHrrk)p FQ(.)523 +1513 y FP(V)-12 b(o)n(wels)25 b(and)g(other)h(diacritics)i(are)d +(obtained)i(in)e(the)g(follo)n(wing)i(w)o(ay)p FQ(:)36 +b(\()p FP(the)o(y)26 b(are)f(typed)382 1626 y(after)f(the)g(consonant)i +(to)e(which)g(the)o(y)g(belong)p FQ(\))p 1492 1737 770 +4 v 1490 1850 4 113 v 1541 1816 a FP(f)o(atha)p 2064 +1850 V 420 w Fu(a)p 2259 1850 V 1492 1853 770 4 v 1490 +1966 4 113 v 1541 1932 a FP(kasra)p 2064 1966 V 409 w +Fu(i)p 2259 1966 V 1492 1969 770 4 v 1490 2082 4 113 +v 1541 2048 a FP(damma)p 2064 2082 V 332 w Fu(u)p 2259 +2082 V 1492 2086 770 4 v 1490 2198 4 113 v 1541 2165 +a FP(souk)o(oun)p 2064 2198 V 271 w Fu(<>)p 2259 2198 +V 1492 2202 770 4 v 1490 2315 4 113 v 1541 2281 a FP(v)o(ertical)h(f)o +(atha)p 2064 2315 V 102 w Fu(a|)p 2259 2315 V 1492 2318 +770 4 v 1490 2431 4 113 v 1541 2397 a FP(f)o(athatan)p +2064 2431 V 286 w Fu(aN)p 2259 2431 V 1492 2434 770 4 +v 1490 2547 4 113 v 1541 2513 a FP(kasratan)p 2064 2547 +V 275 w Fu(iN)p 2259 2547 V 1492 2550 770 4 v 1490 2663 +4 113 v 1541 2629 a FP(dammatan)p 2064 2663 V 198 w Fu(uN)p +2259 2663 V 1492 2667 770 4 v 523 2837 a FP(Example)p +FQ(:)33 b FP(it)20 b(is)h(a)f(tri)n(vial)i(task)f(no)n(w)f(to)h +(welcome)g(you)g(to)g(this)g(system)g(of)g(Arabic)g(input)p +FQ(,)382 2950 y FP(by)j(saying)382 3162 y Fu(\\begin{arab})382 +3275 y(\\Huge)382 3388 y(\015aahlAaN)h(wa)i(sahlAaN!)382 +3501 y(\\end{arab})2338 3787 y Fl(c)-61 b(@)-109 b(\323)-231 +b(\311)-122 b(D)-192 b(\327)-89 b(@)-257 b(\223)-154 +b(@)-88 b(\324)-210 b(\311)-122 b(D)-95 b Fm(!)382 4019 +y FP(Example)24 b(of)f(v)n(o)n(welized)j(Arabic)p FQ(:)3067 +4480 y Fk(:)-33 b(A)-43 b(@)g(\317)g(H)-61 b(\324)g(@)-42 +b(n)-165 b Fj(2)-118 b Fk(\302)-34 b(C)-119 b(\316)-77 +b(@)-157 b(\310)-34 b(@)-166 b(v)-43 b(B)-55 b(\264)g(@)-64 +b(\274)g(I)-59 b(\217)g(B)-136 b(\263)-55 b(A)-85 b(\334)-209 +b(\317)-43 b(@)-55 b(\264)g(C)-107 b(\224)g(A)-61 b(\324)g(@)-42 +b(n)-96 b(!)-181 b(\327)-62 b(@)-34 b(\277)g(@)-64 b(\274)g(A)-43 +b(\320)g(H)-61 b(\324)g(@)-42 b(n)-166 b(v)-43 b(B)-55 +b(\264)g(@)-64 b(\274)g(I)-59 b(\217)g(B)-136 b(\263)-55 +b(A)-85 b(\334)3101 4663 y(c)-42 b(@)-89 b(\207)g(@)-61 +b(\330)g(@)-43 b(\332)g(C)-61 b(\324)g(@)-42 b(n)-176 +b(\327)-62 b(@)-55 b(\263)g(A)-85 b(\334)-199 b Fj(2)-76 +b Fk(\277)-34 b(C)-92 b(\210)g(@)-84 b(\244)g(@)-59 b(\217)g(A)-114 +b Fj(2)-76 b Fk(\277)-34 b(H)-59 b(\215)g(A)-93 b(\331)-199 +b(\277)-34 b(@)-92 b(\204)g(A)-55 b(\270)g(@)-61 b(\324)g(B)d(\314)g(@) +-42 b(n)-96 b F6(.)382 4876 y FP(transcribed)p FQ(:)609 +5088 y Fu(li\015aannahaA)24 b("Al<>\015Ana)h(laA)i(tufakkiru)e(fiI)h +(naf<>sihaA,)609 5201 y(walakinnahaA)e(tufakkiru)h(fiI)h +(\015aakhaway<>haA)609 5314 y(wafiI)g("Al<>khaTari)e("AlladhiI)h +(laHiqahumaA.)1831 5652 y FQ(67)p eop end +%%Page: 68 6 +TeXDict begin 68 5 bop 382 548 a Fp(5.2.2)92 b Fo(Urdu)21 +b(T)-7 b(ranscription)382 722 y FP(The)28 b(Urdu)g(transcription)k(is)c +(similar)h(to)f(the)h(Arabic)p FQ(/)p FP(F)o(arsi)g(one)g(described)i +(abo)o(v)o(e)p FQ(,)e FP(with)f(a)382 835 y(fe)n(w)23 +b(additional)j(characters)p FQ(,)g FP(and)e(one)g(e)o(xception)p +FQ(.)523 948 y FP(The)d(additional)k(characters)f(are)e +FB(\360)p FQ(,)f FA(L)g FP(and)h FA(^)p FQ(,)g FP(transcribed)j(by)c +Fu(\015t)p FQ(,)g Fu(\015d)p FQ(,)f Fu(\015r)p FQ(.)32 +b FP(The)21 b(e)o(xcep)p FQ(-)382 1061 y FP(tion)27 b(concerns)j(the)d +(tw)o(o)g(di\314erent)h(uses)g(of)f(the)g FG(hah)g FP(glyph)i +FB(\322)p FQ(.)42 b FP(In)27 b(Urdu)g(it)g(can)g(be)g(used)h(as)382 +1174 y(the)21 b(second)i(part)e(of)g(a)f(digraph)p FQ(,)j +FP(such)f(as)f(for)g(e)o(xample)69 b FB(~)-102 b Fz(F)56 +b FQ(,)20 b FP(in)h(which)g(case)h(we)e(transcribe)j(it)382 +1287 y(as)h Fu(-h)p FQ(;)g FP(it)h(can)g(also)g(be)g(the)f(standard)j +(consonant)h FG(hah)p FQ(,)d FP(in)f(which)h(case)g(we)f(transcribe)j +(it)e(by)382 1400 y Fu(x)p FQ(.)31 b FP(Notice)22 b(the)f(four)g(forms) +h(of)e(the)i(latter)g(in)e(Urdu)p FQ(:)178 b FA(\355)-66 +b(\354)-71 b FB(\326)-106 b(\322)140 b FQ(,)20 b FP(while)i(in)e +(Arabic)i(the)f(same)g(letter)382 1513 y(is)i(written)172 +b FB(\323)-87 b(\324)-71 b(\326)-109 b(\322)164 b FQ(.)382 +1625 y FP(Example)p FQ(:)3116 1838 y FA(\355)-67 b FB(\314)g(n)j(\216) +-96 b(\331)-156 b(\243)-90 b(\217)-109 b(\262)-143 b +FA(\045)-64 b FB(\217)g(m)-54 b(\317)-74 b FA(\375)-128 +b FB(\220)-77 b(\313)-67 b(n)-54 b(\317)-74 b FA(\375)-131 +b FB(\313)-107 b Fz(\200)-67 b(\210)-81 b FB(\212)-105 +b(\223)-95 b(w)-66 b(\330)-76 b(\216)-108 b(v)-66 b(\324)g(n)-112 +b(\273)-73 b(\326)-103 b(m)-68 b FA(\273)-78 b FB(\217)-122 +b(\273)-109 b(\224)-122 b(\334)-166 b(\227)-126 b(\210)-160 +b(\235)-183 b(\273)-80 b(\330)-124 b(\273)-68 b(n)h(\257)-77 +b(\215)-108 b FA(\045)-64 b FB(\217)3102 1951 y(\273)-99 +b FA(F)-104 b Fz(F)-116 b FB(\277)-62 b(\274)-80 b(\324)-66 +b(n)-103 b FA(\355)-66 b FB(\330)g(m)-117 b FA(\273)-78 +b FB(\217)-64 b(m)-103 b FA(\045)-64 b(_)g FB(m)-116 +b(\313)-84 b(\301)-149 b(~)-83 b(n)-54 b(v)g(n)-103 b(v)-66 +b(\330)-127 b(\327)-71 b(\322)-108 b(m)d(\222)-160 b +FA(\045)-64 b FB(\217)-74 b(\220)-84 b FA(\374)-137 b +FB(\273)-80 b(\330)-115 b(m)-83 b(\203)g(w)-54 b(\333)g(n)-87 +b(\242)-177 b(\223)-115 b FA(\375)-123 b FB(m)-54 b(\361)-66 +b(\324)g(n)-117 b(\273)-78 b(\217)3102 2064 y(\273)e +FA(\354)-106 b Fz(\200)-67 b(\210)-82 b FB(\216)k(\273)-87 +b Fz(F)-128 b FB(\212)-64 b(\332)-54 b(w)g(n)-99 b(\332)-54 +b(n)-99 b FA(\045)-54 b FB(n)g(\317)-81 b(\334)-139 b(\313)-107 +b Fz(\200)-67 b(\210)-72 b FB(p)-66 b FA(\354)g FB(n)-109 +b(\212)-64 b(\332)-54 b(w)g(n)-99 b(v)-54 b(n)-68 b(\273)-73 +b(\326)-98 b(\277)-62 b(\274)-80 b(\324)-86 b FA(\375)-119 +b(\355)-66 b FB(\330)g(j)-74 b FA(\375)-148 b FB(\203)-93 +b(\217)-76 b(\327)-111 b(\262)-158 b(\273)-95 b(\334)-126 +b(p)-74 b FA(\375)-148 b FB(\203)-93 b(\217)-77 b(\313)-67 +b(w)-81 b(\334)3116 2177 y(\317)-59 b(\326)-104 b FA(\355)-66 +b FB(\330)-73 b FQ(.)382 2389 y FP(transcribed)p FQ(:)609 +2602 y Fu(xmArI)26 b(Trf)h(prAnE)e(zmAnE)h(my\015n)h(dstUr)e(t-hA)i(kx) +f(Agr)h(ksI)609 2715 y(shkhS)f(kU)h(kAghdh)e(pr)i(kchh)f(lk-hA)g(xUA)h +(grA)f(p\015rA)g(ml)h(jAtA)f(tU)h(Uh)609 2828 y(As)d(przE)f(kU)h +(AHtyAT)e(sE)i(A\015t-hA)f(kr)g(kxy\015n)g(rk-h)g(dytA)h(yA)f(pAnI)h +(mI\015n)609 2941 y(bxA)j(dytA)f(tAkx)g(lk-hE)g(xU\015yE)g(HrUf)g(kI)h +(bE)f(HrmtI)g(nx)h(xU.)382 3186 y Fp(5.2.3)92 b Fo(P)o(ashto)23 +b(T)-7 b(ranscription)382 3361 y FP(The)24 b(P)o(ashto)h(transcription) +k(is)c(similar)g(to)g(the)g(Arabic)p FQ(/)p FP(F)o(arsi)h(one)f +(described)j(be)o(yond)p FQ(,)e FP(with)382 3474 y(a)c(fe)n(w)g +(additional)k(characters)g(and)d(some)g(e)o(xceptions)p +FQ(.)36 b FP(W)-7 b(e)22 b(are)h(proposing)j(tw)o(o)c +FO(W)p FP(TPs)p FQ(,)g FP(us)p FQ(-)382 3587 y FP(ing)28 +b(the)g(same)g(transcription)p FQ(,)33 b FP(for)28 b(the)g(tw)o(o)g +(\316a)n(v)n(ors)h(of)f(written)h(P)o(ashto)p FQ(:)43 +b FP(Afganistani)29 b(and)382 3699 y(P)o(akistani)p FQ(.)523 +3812 y(1.)k FP(Afghanistani)26 b(P)o(ashto)p 660 3924 +2434 4 v 658 4044 4 121 v 733 4003 a Fu(A)p 853 4044 +V 148 w FB(m)p 1028 4044 V 1045 4044 V 140 w Fu(\015z)p +1240 4044 V 99 w FA(0)p 1393 4044 V 1410 4044 V 116 w +Fu(\015r)p 1605 4044 V 131 w FA(`)p 1805 4044 V 1822 +4044 V 172 w Fu(D)p 2016 4044 V 123 w FB(\236)p 2216 +4044 V 2233 4044 V 140 w Fu(g)p 2428 4044 V 123 w FA(\272)p +2594 4044 V 2611 4044 V 164 w Fu(-y)p 2901 4044 V 163 +w FB(\335)p 3091 4044 V 660 4047 2434 4 v 658 4168 4 +121 v 733 4126 a Fu(b)p 853 4168 V 124 w FB(o)p 1028 +4168 V 1045 4168 V 140 w Fu(c)p 1240 4168 V 123 w FA(@)p +1393 4168 V 1410 4168 V 140 w Fu(z)p 1605 4168 V 155 +w FB(\220)p 1805 4168 V 1822 4168 V 172 w Fu(T)p 2016 +4168 V 143 w FB(\242)p 2216 4168 V 2233 4168 V 160 w +Fu(l)p 2428 4168 V 134 w FB(\276)p 2594 4168 V 2611 4168 +V 199 w Fu(e)p 2901 4168 V 187 w FA(\370)p 3091 4168 +V 660 4171 2434 4 v 658 4292 4 121 v 733 4250 a Fu(p)p +853 4292 V 124 w FA($)p 1028 4292 V 1045 4292 V 140 w +Fu(H)p 1240 4292 V 123 w FB(\202)p 1393 4292 V 1410 4292 +V 116 w Fu(zh)p 1605 4292 V 131 w FA(j)p 1805 4292 V +1822 4292 V 172 w Fu(Z)p 2016 4292 V 143 w FB(\246)p +2216 4292 V 2233 4292 V 160 w Fu(m)p 2428 4292 V 137 +w FB(\312)p 2594 4292 V 2611 4292 V 179 w Fu(ay)p 2901 +4292 V 163 w FB(i)p 3091 4292 V 660 4295 2434 4 v 658 +4418 4 123 v 733 4374 a Fu(t)p 853 4418 V 124 w FB(u)p +1028 4418 V 1045 4418 V 116 w Fu(kh)p 1240 4418 V 99 +w FB(\206)p 1393 4418 V 1410 4418 V 116 w Fu(\015g)p +1605 4418 V 131 w FA(d)p 1805 4418 V 1822 4418 V 172 +w Fu(\022)p 2016 4418 V 146 w FB(\252)p 2216 4418 V 2233 +4418 V 163 w Fu(n)p 2428 4418 V 132 w FB(\316)p 2594 +4418 V 2611 4418 V 172 w Fu(ey)p 2901 4418 V 163 w FA(\366)p +3091 4418 V 660 4421 2434 4 v 658 4542 4 121 v 710 4500 +a Fu(\015t)p 853 4542 V 99 w FB(\374)p 1028 4542 V 1045 +4542 V 140 w Fu(d)p 1240 4542 V 131 w FB(\212)p 1393 +4542 V 1410 4542 V 149 w Fu(s)p 1605 4542 V 131 w FB(\222)p +1805 4542 V 1822 4542 V 125 w Fu(gh)p 2016 4542 V 122 +w FB(\256)p 2216 4542 V 2233 4542 V 139 w Fu(\015n)p +2428 4542 V 108 w FA(\346)p 2594 4542 V 2611 4542 V 172 +w Fu(||)p 2901 4542 V 178 w FB(`)p 3091 4542 V 660 4545 +2434 4 v 658 4666 4 121 v 710 4624 a Fu(\015s)p 853 4666 +V 99 w FB(y)p 1028 4666 V 1045 4666 V 116 w Fu(\015d)p +1240 4666 V 107 w FA(N)p 1393 4666 V 1410 4666 V 125 +w Fu(sh)p 1605 4666 V 107 w FB(\226)p 1805 4666 V 1822 +4666 V 149 w Fu(f)p 2016 4666 V 137 w FB(\262)p 2216 +4666 V 2233 4666 V 154 w Fu(w)p 2428 4666 V 137 w FB(\327)p +2594 4666 V 2611 4666 V 2901 4666 V 3091 4666 V 660 4669 +2434 4 v 658 4789 4 121 v 733 4748 a Fu(j)p 853 4789 +V 134 w FB(})p 1028 4789 V 1045 4789 V 127 w Fu(dh)p +1240 4789 V 107 w FB(\214)p 1393 4789 V 1410 4789 V 149 +w Fu(x)p 1605 4789 V 131 w FA(n)p 1805 4789 V 1822 4789 +V 149 w Fu(q)p 2016 4789 V 148 w FB(\266)p 2216 4789 +V 2233 4789 V 141 w Fu(-h)p 2428 4789 V 116 w FB(\322)p +2594 4789 V 2611 4789 V 134 w Fu(LLah)p 2901 4789 V 107 +w FB(>)p 3091 4789 V 660 4793 2434 4 v 658 4913 4 121 +v 710 4872 a Fu(ch)p 853 4913 V 109 w FA(D)p 1028 4913 +V 1045 4913 V 151 w Fu(r)p 1240 4913 V 131 w FB(\216)p +1393 4913 V 1410 4913 V 149 w Fu(S)p 1605 4913 V 123 +w FB(\232)p 1805 4913 V 1822 4913 V 141 w Fu(k)p 2016 +4913 V 140 w FA(\244)p 2216 4913 V 2233 4913 V 157 w +Fu(L)p 2428 4913 V 2594 4913 V 2611 4913 V 329 w(SLh)p +2901 4913 V 123 w Fz(P)p 3091 4913 V 660 4917 2434 4 +v 523 5087 a FQ(2.)33 b FP(P)o(akistani)25 b(P)o(ashto)1831 +5652 y FQ(68)p eop end +%%Page: 69 7 +TeXDict begin 69 6 bop 660 460 2434 4 v 658 580 4 121 +v 733 539 a Fu(A)p 853 580 V 148 w FB(m)p 1028 580 V +1045 580 V 140 w Fu(\015z)p 1240 580 V 99 w FA(0)p 1393 +580 V 1410 580 V 116 w Fu(\015r)p 1605 580 V 131 w FA(^)p +1805 580 V 1822 580 V 172 w Fu(D)p 2016 580 V 123 w FB(\236)p +2216 580 V 2233 580 V 140 w Fu(g)p 2428 580 V 123 w FA(\252)p +2594 580 V 2611 580 V 164 w Fu(-y)p 2901 580 V 169 w +FA(\374)p 3091 580 V 660 584 2434 4 v 658 704 4 121 v +733 663 a Fu(b)p 853 704 V 124 w FB(o)p 1028 704 V 1045 +704 V 140 w Fu(c)p 1240 704 V 123 w FA(@)p 1393 704 V +1410 704 V 140 w Fu(z)p 1605 704 V 155 w FB(\220)p 1805 +704 V 1822 704 V 172 w Fu(T)p 2016 704 V 143 w FB(\242)p +2216 704 V 2233 704 V 160 w Fu(l)p 2428 704 V 134 w FB(\276)p +2594 704 V 2611 704 V 199 w Fu(e)p 2901 704 V 193 w FA(\374)p +3091 704 V 660 708 2434 4 v 658 828 4 121 v 733 787 a +Fu(p)p 853 828 V 124 w FA($)p 1028 828 V 1045 828 V 140 +w Fu(H)p 1240 828 V 123 w FB(\202)p 1393 828 V 1410 828 +V 116 w Fu(zh)p 1605 828 V 131 w FA(j)p 1805 828 V 1822 +828 V 172 w Fu(Z)p 2016 828 V 143 w FB(\246)p 2216 828 +V 2233 828 V 160 w Fu(m)p 2428 828 V 137 w FB(\312)p +2594 828 V 2611 828 V 179 w Fu(ay)p 2901 828 V 169 w +FA(\374)p 3091 828 V 660 832 2434 4 v 658 954 4 123 v +733 911 a Fu(t)p 853 954 V 124 w FB(u)p 1028 954 V 1045 +954 V 116 w Fu(kh)p 1240 954 V 99 w FB(\206)p 1393 954 +V 1410 954 V 116 w Fu(\015g)p 1605 954 V 116 w FA(\272)p +1805 954 V 1822 954 V 158 w Fu(\022)p 2016 954 V 146 +w FB(\252)p 2216 954 V 2233 954 V 163 w Fu(n)p 2428 954 +V 132 w FB(\316)p 2594 954 V 2611 954 V 172 w Fu(ey)p +2901 954 V 169 w FA(\374)p 3091 954 V 660 957 2434 4 +v 658 1078 4 121 v 710 1036 a Fu(\015t)p 853 1078 V 99 +w FB(\360)p 1028 1078 V 1045 1078 V 140 w Fu(d)p 1240 +1078 V 131 w FB(\212)p 1393 1078 V 1410 1078 V 149 w +Fu(s)p 1605 1078 V 131 w FB(\222)p 1805 1078 V 1822 1078 +V 125 w Fu(gh)p 2016 1078 V 122 w FB(\256)p 2216 1078 +V 2233 1078 V 139 w Fu(\015n)p 2428 1078 V 100 w FB(\317\217)p +2594 1078 V 2611 1078 V 165 w Fu(||)p 2901 1078 V 178 +w FB(`)p 3091 1078 V 660 1081 2434 4 v 658 1202 4 121 +v 710 1160 a Fu(\015s)p 853 1202 V 99 w FB(y)p 1028 1202 +V 1045 1202 V 116 w Fu(\015d)p 1240 1202 V 107 w FA(L)p +1393 1202 V 1410 1202 V 125 w Fu(sh)p 1605 1202 V 107 +w FB(\226)p 1805 1202 V 1822 1202 V 149 w Fu(f)p 2016 +1202 V 137 w FB(\262)p 2216 1202 V 2233 1202 V 154 w +Fu(w)p 2428 1202 V 137 w FB(\327)p 2594 1202 V 2611 1202 +V 2901 1202 V 3091 1202 V 660 1205 2434 4 v 658 1326 +4 121 v 733 1284 a Fu(j)p 853 1326 V 134 w FB(})p 1028 +1326 V 1045 1326 V 127 w Fu(dh)p 1240 1326 V 107 w FB(\214)p +1393 1326 V 1410 1326 V 149 w Fu(x)p 1605 1326 V 146 +w FB(\206)p 1805 1326 V 1822 1326 V 164 w Fu(q)p 2016 +1326 V 148 w FB(\266)p 2216 1326 V 2233 1326 V 141 w +Fu(-h)p 2428 1326 V 116 w FB(\322)p 2594 1326 V 2611 +1326 V 134 w Fu(LLah)p 2901 1326 V 107 w FB(>)p 3091 +1326 V 660 1329 2434 4 v 658 1450 4 121 v 710 1408 a +Fu(ch)p 853 1450 V 109 w FA(D)p 1028 1450 V 1045 1450 +V 151 w Fu(r)p 1240 1450 V 131 w FB(\216)p 1393 1450 +V 1410 1450 V 149 w Fu(S)p 1605 1450 V 123 w FB(\232)p +1805 1450 V 1822 1450 V 141 w Fu(k)p 2016 1450 V 146 +w FB(\272)p 2216 1450 V 2233 1450 V 163 w Fu(L)p 2428 +1450 V 2594 1450 V 2611 1450 V 329 w(SLh)p 2901 1450 +V 123 w Fz(P)p 3091 1450 V 660 1453 2434 4 v 523 1614 +a FP(Ne)n(v)o(ertheless)p FQ(,)39 b FP(one)34 b(should)i(be)e(a)o(w)o +(are)h(that)f(an)g(automatic)i(transcription)i(from)c(one)382 +1727 y(glyph)e(set)e(to)h(the)f(other)i(is)e(not)h(possible)h(because)p +FQ(,)i FP(for)d(e)o(xample)p FQ(,)i FP(a)d(letter)h(such)g(as)f +FA(n)g FP(is)382 1840 y(not)25 b(used)g(in)f(P)o(akistani)i(P)o(ashto)e +(and)h(can)g(be)f(replaced)j(by)d FB(\206)f FP(or)i FB(\226)p +FQ(,)e FP(depending)k(on)e(its)f(pro)p FQ(-)382 1953 +y FP(nunciation)i(in)e(a)f(gi)n(v)o(en)h(w)o(ord)p FQ(.)382 +2066 y FP(Example)g(of)f(Afghanistani)k(P)o(ashto)p FQ(:)3102 +2270 y FB(\273)-73 b(\326)-129 b(\257)-79 b(\330)-66 +b(m)i FA(`)-96 b FB(i)-172 b FA(E)-88 b FB(\326)-126 +b(\212)-77 b(\253)i(\270)c(\301)-128 b(\332)-59 b(\326)-126 +b(\220)-64 b(\332)-54 b(n)-76 b(\316)-133 b(m)-66 b(\327)-117 +b(\237)i(\217)-37 b(K)-27 b FA(\045)-66 b FB(\330)-71 +b(\322)-157 b(\227)-122 b(l)-148 b(\212)-64 b(m)-123 +b(\327)-136 b(\313)-67 b(\320)-81 b(\334)-140 b(`)e FA(E)-88 +b FB(\326)-129 b(\253)-75 b(\270)c(\301)-149 b(\323)-87 +b(\260)-71 b(\326)-66 b FQ(.)3108 2383 y FB(\267)-74 +b(\330)-66 b(v)g(\330)g(\317)-59 b(\326)-122 b FA(\045)-66 +b FB(\324)-107 b(\224)i FA(a)-96 b FB(\331)-163 b(\273)-109 +b FA(p)-122 b FB(\334)-156 b(\327)-76 b FA(j)-64 b FB(\317)-81 +b(\334)-154 b FA(j)-69 b FB(\322)-132 b FA(j)-76 b FB(\327)-66 +b(\317)i(\213)-96 b FA(\370)-161 b FB(\327)-87 b(\310)i +FA(`)-74 b FB(\212)-96 b(\331)j FQ(.)-173 b FA(j)-76 +b FB(\327)-66 b(\317)i(\213)-76 b(\327)-88 b(\316)-139 +b FA(\045)-66 b FB(\324)-78 b(\254)f(\314)-84 b(\301)-134 +b(m)-66 b(\327)g(m)i(\216)g(m)g(\212)-69 b(\322)3104 +2496 y(\327)-87 b(\310)i FA(`)-74 b FB(\212)-96 b(\331)j +FQ(.)-125 b FB(\257)-79 b(\330)-107 b FA(o)-95 b FB(w)-54 +b(\320)-59 b(\326)-101 b(\277)-60 b(\330)-66 b(m)i(\216)g(m)g(\212)-69 +b(\322)-117 b(\212)-85 b(\323)g(\217)-64 b(\333)-95 b(\230)-105 +b(\217)-120 b(\263)-104 b(x)-144 b(m)-105 b(\233)-122 +b(\301)j(m)-66 b(\327)g(m)-95 b(\223)g(n)-111 b(\222)-169 +b(\212)-96 b(\331)j FQ(.)-141 b FA(A)-95 b FB(\330)-79 +b(\313)i(\217)-69 b(\322)-136 b FA(E)-88 b FB(\326)-120 +b(\253)-75 b(\270)c(\301)3106 2609 y(\220)-64 b(\332)-54 +b(n)g(v)g(q)-64 b(\221)-130 b(\323)-87 b(\260)-78 b(\330)f(\313)i(\217) +-69 b(\322)-104 b(m)-64 b(\216)g(m)g(\212)-69 b(\322)-155 +b(\237)-117 b(\254)-66 b(\333)k(\264)-67 b(\326)-118 +b(\273)-68 b(q)k(\221)-96 b(\331)j FQ(.)382 2813 y FP(and)24 +b(the)g(same)f(in)h(P)o(akistani)g(P)o(ashto)p FQ(:)3102 +3017 y FB(\273)-73 b(\326)-128 b(\257)-79 b(\330)-66 +b(m)i FA(^)-84 b(\374)-159 b(E)-88 b FB(\326)-125 b(\212)-77 +b(\253)i(\270)c(\301)-147 b FA(\374)-79 b FB(\322)-125 +b(\220)-84 b FA(\374)-74 b FB(m)e(\316)-132 b(m)-66 b(\327)-117 +b(\237)i(\217)-37 b(K)-27 b FA(\045)-66 b FB(\330)-71 +b(\322)-156 b(\227)-115 b FA(\375)-140 b FB(\212)-64 +b(m)-122 b(\327)-135 b(\313)-67 b(\320)-74 b FA(\375)-132 +b FB(`)-141 b FA(E)-88 b FB(\326)-128 b(\253)-75 b(\270)c(\301)-148 +b(\323)-87 b(\260)-71 b(\326)-66 b FQ(.)3108 3130 y FB(\267)-74 +b(\330)-66 b(v)g(\330)g(\317)-59 b(\326)-101 b FA(\045)-66 +b FB(\324)-107 b(\224)i FA(_)-84 b(\374)-130 b FB(\273)-99 +b(\210)-105 b FA(\375)-128 b FB(\327)-76 b FA(j)-64 b +FB(\317)-74 b FA(\375)-126 b(j)-69 b FB(\322)-111 b FA(j)-76 +b FB(\327)-66 b(\317)i(\213)-84 b FA(\374)-128 b FB(\327)-87 +b(\310)i FA(^)-74 b FB(\212)-84 b FA(\374)j FQ(.)-114 +b FA(j)-76 b FB(\327)-66 b(\317)i(\213)-76 b(\327)-88 +b(\316)-118 b FA(\045)-66 b FB(\324)-78 b(\254)f(\314)-84 +b(\301)-113 b(m)-66 b(\327)g(m)i(\216)g(m)g(\212)-69 +b(\322)-113 b(\327)-87 b(\310)i FA(^)-74 b FB(\212)-84 +b FA(\374)j FQ(.)3103 3243 y FB(\257)i(\330)-95 b(\207)-83 +b(w)-54 b(\320)-59 b(\326)-98 b(\277)-60 b(\330)-66 b(m)i(\216)g(m)g +(\212)-69 b(\322)-114 b(\212)-85 b(\323)g(\217)h FA(\374)-94 +b(\374)-115 b FB(\227)-105 b(\217)-117 b(\263)-104 b(x)-141 +b(m)-105 b(\233)-122 b(\301)-116 b(m)-66 b(\327)g(m)-95 +b(\223)g(n)-111 b(\222)-166 b(\212)-84 b FA(\374)j FQ(.)-135 +b FA(A)-95 b FB(\330)-79 b(\313)i(\217)-69 b(\322)-133 +b FA(E)-88 b FB(\326)-117 b(\253)-75 b(\270)c(\301)-126 +b(\220)-85 b FA(\374)-74 b FB(m)-54 b(v)-74 b FA(\375)g +FB(p)-65 b(\221)3095 3356 y(\323)-87 b(\260)-78 b(\330)f(\313)i(\217) +-69 b(\322)-104 b(m)-64 b(\216)g(m)g(\212)-69 b(\322)-155 +b(\237)-117 b(\254)-86 b FA(\375)k FB(\263)-67 b(\326)-118 +b(\273)-88 b FA(\375)-74 b FB(p)-64 b(\221)-84 b FA(\374)j +FQ(.)382 3560 y FP(transcribed)p FQ(:)609 3764 y Fu(k-h)27 +b(ghUA\015ray)e(chh)h(d\022ql)g(yh)h(zyAn)f(AUDrrpUh)f(shay)i(dA)609 +3877 y(U)e(mnI)g(||)g(chh)f(\022ql)h(hghh.)35 b(qUtUnh)24 +b(p-hs\015rI)g(kxI)g(wzhnI)g(zhh)h(zhUnde)609 3990 y(wlA\015rdI.)16 +b(zhUndUn)g(p-h\022ml)h(AUArAd-h)f(wlA\015rdI.)g(ghUxtnh)g(lUArAd-h)609 +4103 y(d-hreyshr)25 b(ft)h(ASl)g(AUAsAs)g(dI.)g(cUmrh)g(chh)g(\022ql)g +(zyAtebz)f(hghUmrh)609 4216 y(ArAd-h)h(D\022yf-h)f(kebzI.)523 +4420 y FP(A)j(v)n(ariant)i(form)f FA(f)g FP(of)g FA(d)g +FP(is)g(pro)o(vided)i(in)e(the)g(font)p FQ(.)51 b FP(The)28 +b(user)i(can)f(change)i(the)e FO(W)p FP(TPs)382 4533 +y FQ(\()p FP(see)24 b FQ(6\))f FP(so)h(that)g(the)g(former)g(is)f(used) +i(instead)g(of)e(the)h(latter)-5 b FQ(.)382 4777 y Fp(5.2.4)92 +b Fo(Sindhi)21 b(T)-7 b(ranscription)382 4951 y FP(Sindhi)23 +b(being)h(a)f(language)i(with)e(man)o(y)f(more)h(letters)h(than)g +(Arabic)p FQ(,)f FP(and)g(using)h(Arabic)g(let)p FQ(-)382 +5064 y FP(ters)30 b(in)f(a)g(w)o(ay)h(quite)g(di\314erent)h(than)g +(Arabic)p FQ(,)g FP(it)e(is)h(not)g(surprising)i(that)e(the)g(Sindhi)g +(tran)p FQ(-)382 5177 y FP(scription)d(is)e(fundamentally)k +(di\314erent)d(from)f(the)h(Arabic)p FQ(,)g FP(F)o(arsi)p +FQ(,)e FP(Urdu)h(and)h(P)o(ashto)f(ones)p FQ(.)382 5290 +y FP(As)f(a)g(matter)h(of)g(f)o(act)h(we)e(ha)n(v)o(e)h(tried)h(to)e +(use)h(as)g(fe)n(w)f(non)p FQ(-)p FP(alphabetic)29 b(characters)f(as)d +(possi)p FQ(-)382 5403 y FP(ble)p FQ(,)d FP(follo)n(wing)i(a)e(more)p +FQ(-)p FP(or)n FQ(-)p FP(less)i(rational)g(scheme)f(loosely)h(based)g +(on)e(the)g(correspondence)1831 5652 y FQ(69)p eop end +%%Page: 70 8 +TeXDict begin 70 7 bop 382 548 a FP(between)30 b(Sindhi)f(written)g(in) +f(Arabic)i(and)f(in)f(De)n(v)n(anagari)i(script)f(and)h(the)e(standard) +j(tran)p FQ(-)382 661 y FP(scription)24 b(of)e(the)g(latter)-5 +b FQ(.)34 b FP(Since)22 b(shadda)i(is)e(much)g(more)g(seldom)h(in)e +(Sindhi)i(than)g(in)f(Arabic)p FQ(,)382 774 y FP(the)h +FQ(l)p FP(double)i(consonant)h Fv(=)c FP(consonant)k +Fv(+)c FP(shadda)p FQ(m)j FP(con)l(v)o(ention)h(is)d(not)h(v)n(alid)f +(in)g(this)h(tran)p FQ(-)382 887 y FP(scription)p FQ(;)i +FP(instead)f(we)e(propose)j(a)d(transcription)k(of)c(the)h(shadda)h +(diacritic)p FQ(:)36 b Fu(+)p FQ(.)p 562 996 2630 4 v +560 1117 4 121 v 659 1075 a Fu(A)p 803 1117 V 171 w FB(m)p +978 1117 V 995 1117 V 188 w Fu(p)p 1237 1117 V 147 w +FA($)p 1412 1117 V 1429 1117 V 141 w Fu(dh)p 1671 1117 +V 146 w FA(T)p 1855 1117 V 1872 1117 V 164 w Fu(sh)p +2114 1117 V 131 w FB(\226)p 2314 1117 V 2331 1117 V 124 +w Fu(kh)p 2526 1117 V 105 w FB(\272)p 2692 1117 V 2709 +1117 V 194 w Fu(y)p 2999 1117 V 187 w FB(\335)p 3189 +1117 V 562 1120 2630 4 v 560 1241 4 121 v 635 1199 a +Fu(\015A)p 803 1241 V 147 w FB(a)p 978 1241 V 995 1241 +V 164 w Fu(ph)p 1237 1241 V 125 w FA(\234)p 1412 1241 +V 1429 1241 V 118 w Fu(.=d)p 1671 1241 V 122 w FA(Z)p +1855 1241 V 1872 1241 V 164 w Fu(.s)p 2114 1241 V 122 +w FB(\232)p 2314 1241 V 2331 1241 V 117 w Fu(.n)p 2526 +1241 V 99 w FA(\302)p 2692 1241 V 2709 1241 V 164 w Fu(\015y)p +2999 1241 V 163 w FB(i)p 3189 1241 V 562 1244 2630 4 +v 560 1365 4 121 v 659 1323 a Fu(b)p 803 1365 V 147 w +FB(o)p 978 1365 V 995 1365 V 164 w Fu(j)p 1237 1365 V +158 w FB(})p 1412 1365 V 1429 1365 V 151 w Fu(.d)p 1671 +1365 V 146 w FA(P)p 1855 1365 V 1872 1365 V 164 w Fu(.z)p +2114 1365 V 123 w FB(\236)p 2314 1365 V 2331 1365 V 140 +w Fu(g)p 2526 1365 V 123 w FA(\272)p 2692 1365 V 2709 +1365 V 141 w Fu(meN)p 2999 1365 V 149 w Fz(H)p 3189 1365 +V 562 1368 2630 4 v 560 1488 4 121 v 635 1447 a Fu(=b)p +803 1488 V 123 w FB(\370)p 978 1488 V 995 1488 V 140 +w Fu(=j)p 1237 1488 V 134 w FA(<)p 1412 1488 V 1429 1488 +V 127 w Fu(.dh)p 1671 1488 V 122 w FA(V)p 1855 1488 V +1872 1488 V 140 w Fu(..t)p 2114 1488 V 119 w FB(\242)p +2314 1488 V 2331 1488 V 136 w Fu(=g)p 2526 1488 V 99 +w FA(\312)p 2692 1488 V 2709 1488 V 117 w Fu(||eN)p 2999 +1488 V 129 w Fz(G)p 3189 1488 V 562 1492 2630 4 v 560 +1612 4 121 v 635 1571 a Fu(bh)p 803 1612 V 123 w FA(,)p +978 1612 V 995 1612 V 140 w Fu(=n)p 1237 1612 V 134 w +FA(8)p 1412 1612 V 1429 1612 V 151 w Fu(=z)p 1671 1612 +V 146 w FB(\214)p 1855 1612 V 1872 1612 V 140 w Fu(..z)p +2114 1612 V 119 w FB(\246)p 2314 1612 V 2331 1612 V 160 +w Fu(l)p 2526 1612 V 135 w FB(\276)p 2692 1612 V 2709 +1612 V 174 w Fu(||)p 2999 1612 V 178 w FB(`)p 3189 1612 +V 562 1616 2630 4 v 560 1738 4 123 v 659 1695 a Fu(t)p +803 1738 V 147 w FB(u)p 978 1738 V 995 1738 V 164 w Fu(c)p +1237 1738 V 158 w FA(D)p 1412 1738 V 1429 1738 V 175 +w Fu(r)p 1671 1738 V 170 w FB(\216)p 1855 1738 V 1872 +1738 V 187 w Fu(\022)p 2114 1738 V 171 w FB(\252)p 2314 +1738 V 2331 1738 V 163 w Fu(m)p 2526 1738 V 138 w FB(\312)p +2692 1738 V 2709 1738 V 2999 1738 V 3189 1738 V 562 1742 +2630 4 v 560 1862 4 121 v 635 1821 a Fu(th)p 803 1862 +V 123 w FA(\()p 978 1862 V 995 1862 V 140 w Fu(ch)p 1237 +1862 V 134 w FA(H)p 1412 1862 V 1429 1862 V 151 w Fu(.r)p +1671 1862 V 146 w FA(l)p 1855 1862 V 1872 1862 V 164 +w Fu(gh)p 2114 1862 V 146 w FB(\256)p 2314 1862 V 2331 +1862 V 163 w Fu(n)p 2526 1862 V 132 w FB(\316)p 2692 +1862 V 2709 1862 V 2999 1862 V 3189 1862 V 562 1865 2630 +4 v 560 1986 4 121 v 635 1944 a Fu(.t)p 803 1986 V 123 +w FA( )p 978 1986 V 995 1986 V 140 w Fu(.h)p 1237 1986 +V 134 w FB(\202)p 1412 1986 V 1429 1986 V 175 w Fu(z)p +1671 1986 V 170 w FB(\220)p 1855 1986 V 1872 1986 V 187 +w Fu(f)p 2114 1986 V 162 w FB(\262)p 2314 1986 V 2331 +1986 V 130 w Fu(\015n)p 2526 1986 V 108 w FA(\344)p 2692 +1986 V 2709 1986 V 2999 1986 V 3189 1986 V 562 1989 2630 +4 v 560 2110 4 121 v 611 2068 a Fu(.th)p 803 2110 V 99 +w FB(\364)p 978 2110 V 995 2110 V 117 w Fu(=kh)p 1237 +2110 V 109 w FB(\206)p 1412 2110 V 1429 2110 V 151 w +Fu(zh)p 1671 2110 V 146 w FA(j)p 1855 2110 V 1872 2110 +V 187 w Fu(q)p 2114 2110 V 172 w FB(\266)p 2314 2110 +V 2331 2110 V 166 w Fu(U)p 2526 2110 V 137 w FB(\327)p +2692 2110 V 2709 2110 V 130 w Fu(LLah)p 2999 2110 V 107 +w FB(>)p 3189 2110 V 562 2113 2630 4 v 560 2234 4 121 +v 635 2192 a Fu(=s)p 803 2234 V 123 w FB(y)p 978 2234 +V 995 2234 V 164 w Fu(d)p 1237 2234 V 166 w FB(\212)p +1412 2234 V 1429 2234 V 184 w Fu(s)p 1671 2234 V 147 +w FB(\222)p 1855 2234 V 1872 2234 V 163 w Fu(k)p 2114 +2234 V 152 w FA(\246)p 2314 2234 V 2331 2234 V 121 w +Fu(-h)p 2526 2234 V 116 w FB(\322)p 2692 2234 V 2709 +2234 V 158 w Fu(SLh)p 2999 2234 V 122 w Fz(P)p 3189 2234 +V 562 2237 2630 4 v 382 2398 a FP(Remarks)p FQ(:)496 +2602 y(1.)45 b FP(The)23 b(transcription)j Fu(/)c FP(is)g(used)i(for)f +(constructions)k(such)c(as)45 b FB(p)-49 b Fz(J)49 b +FQ(\()p Fu(b/)p FQ(\),)44 b FB(v)-49 b Fz(J)49 b FQ(\()p +Fu(t/)p FQ(\),)43 b FB(\273)-63 b Fz(J)63 b FQ(\()p Fu(kh/)p +FQ(\),)609 2714 y FP(etc)p FQ(.)496 2899 y(2.)45 b FP(The)23 +b FG(waw)g FB(\327)g FP(can)g(be)h(written)g(in)g(tw)o(o)f(w)o(ays)p +FQ(:)34 b Fu(w)22 b FP(or)i Fu(U)p FQ(.)382 3103 y FP(Example)p +FQ(:)3116 3306 y FB(v)-54 b(\320)-66 b(\324)-88 b(\321)-190 +b FA(\247)-117 b FB(\217)-96 b(\335)-147 b(m)-95 b(\223)g(n)-76 +b(\316)-151 b(\273)-95 b(\336)-142 b FA(\045)-54 b FB(\320)-66 +b(\324)g(\320)-85 b(\200)-112 b(\336)-152 b(\214)-85 +b(\323)-115 b Fz(\200)-67 b(\204\211)-102 b FB(\273)-95 +b(\336)-183 b(\223)-126 b(\200)-85 b(n)-93 b FA(\312)-164 +b FB(\216)-78 b(\273)-68 b(\362)i(\330)-127 b FA(\045)-66 +b FB(\330)g(\317)i(\213)-76 b(\327)-129 b Fz(G)-117 b +FA(\045)-54 b FB(\320)-66 b(\324)f(\320)-85 b(\200)-112 +b(\336)3087 3419 y(~)-93 b(\213)-76 b(\327)-95 b(~)g(\324)-76 +b(\213)-126 b Fz(H)g FA(Z)-64 b FB(m)-75 b(\323)-117 +b FA(')-148 b(\045)-54 b FB(\333)-64 b(\213)g(m)-159 +b FA(\247)-117 b FB(\217)-64 b(\361)-81 b(\336)-88 b +FQ(.)-126 b FB(m)-75 b(\323)-87 b(\330)-118 b(p)-49 b +Fz(J)-114 b FB(\313)-79 b(\254)-60 b(\300)g(\330)-76 +b(\312)-169 b FA(\247)-117 b FB(\217)-64 b(\361)e(\330)-118 +b FA(\045)-66 b FB(\330)g(\317)i(\213)-76 b(\327)-118 +b(v)-49 b Fz(J)-142 b FB(\223)-95 b(\320)-65 b FA(U)-126 +b Fz(H)-138 b FB(\323)-85 b(\217)3116 3532 y(a)-54 b(j)-81 +b(\336)-141 b(\327)-74 b(\267)-104 b(x)-173 b FA(I)-83 +b FB(n)-131 b FA(I)-83 b FB(n)-102 b FA(\))-81 b FB(\336)-139 +b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-114 b(a)-75 +b(\323)-102 b(\336)-131 b Fz(G)-114 b FB(\212)-105 b(\227)d(\314)-89 +b(\321)-124 b(m)-95 b(\223)g(n)-76 b(\316)-153 b(~)-110 +b(\336)-131 b Fz(G)-104 b FB(m)-95 b(\223)g(n)-76 b(\316)-153 +b(~)-110 b(\336)-158 b(~)-93 b(\213)-76 b(\327)-95 b(~)g(\324)-76 +b(\213)3087 3645 y(~)-110 b(\336)-140 b(\273)-95 b(\311)-126 +b(\262)-197 b FA(\247)-119 b FB(\324)-76 b FA(m)-64 b +FB(m)-152 b FA(\247)-119 b FB(\324)-76 b FA(m)-64 b FB(m)-113 +b FA(\273)-80 b FB(\324)-66 b(n)-102 b FA( )-161 b(\273)-80 +b FB(\324)k FA(m)-96 b FB(\335)-141 b(\216)-85 b(\323)-75 +b(\333)-66 b(\330)-111 b(a)-75 b(\323)-102 b(\336)-88 +b FQ(.)382 3848 y FP(transcribed)p FQ(:)609 4052 y Fu(tn-hn)26 +b(kry)h(AsAn)f(khy)g(pn-hnjy)g(=z-hnn)f(khy)i(sjA=g)f(rkh\015nU)609 +4165 y(pUndU)f(||eN)f(pn-hnjy)g(jdUj-hd)g(meN)h(.=dA-hp)f(pydA)h +(kr\015ny.)35 b(AhU)25 b(b/)609 4278 y(m\022lUm)19 b(kr\015nU)g(pUndU)g +(t/)h(sndh)f(meN)g(hr)h(\015A\015yy)f(wqt)g(chA)h(chA)f(thy)h(r-hyU)609 +4391 y(\015Ahy)47 b(||eN)g(dshmn)g(AsAn)g(jy)h(||eN)f(AsAn)g(jy)h +(jdUj-hd)e(jy)i(khlAf)609 4504 y(k-h.rA)609 4616 y(k-h.rA)26 +b(g-hA.t)f(g-h.ry)h(r-hyU)g(\015Ahy.)382 4861 y Fp(5.2.5)92 +b Fo(Berber)23 b(T)-7 b(ranscription)382 5035 y FP(The)24 +b(Berber)h(transcription)k(is)24 b(di\314erent)j(from)d(the)h(pre)n +(vious)i(ones)e(because)i(it)d(is)h(based)h(on)382 5148 +y(a)j(tri)p FQ(-)p FP(alphabetic)34 b(system)d FQ(\()p +FP(T)m(i\315nagh)p FQ(,)g FP(Latin)f(and)h(Arabic)f(alphabets)p +FQ(\).)2686 5115 y FF(1)2779 5148 y FP(The)f(goal)i(of)e(this)p +382 5225 1196 4 v 487 5280 a Fi(1)516 5312 y FJ(The)15 +b(reader)g(can)g(\315nd)g(more)g(information)g(in)f Fg(Un)h(syst)1929 +5308 y Fh(\240)1922 5312 y Fg(eme)g(T)2087 5328 y(E)2122 +5312 y(X)f(berb)2325 5308 y Fh(\240)2318 5312 y Fg(er)m(e)p +FK(,)2453 5293 y(\241)2446 5312 y FJ(Etudes)g(et)h(Documents)g(Berb) +3238 5309 y FK(\240)3231 5312 y FJ(eres)p FK(,)382 5403 +y(11)k(\(1994\),)h FJ(La)e(bo)881 5400 y FK(\242)883 +5403 y FJ(*te)985 5400 y FK(\240)977 5403 y FJ(a)h(Documents)p +FK(/)1399 5385 y(\241)1392 5403 y FJ(Edisud)p FK(,)i +FJ(P)o(aris)d FK(\()p FJ(France)p FK(\).)1831 5652 y +FQ(70)p eop end +%%Page: 71 9 +TeXDict begin 71 8 bop 382 548 a FP(transcription)34 +b(is)c(to)g(enable)i(output)g(in)e(the)h(three)g(alphabets)p +FQ(,)j FP(out)d(of)f(the)h(same)f(code)p FQ(.)55 b FP(In)382 +661 y(particular)l FQ(,)31 b FP(since)d(Latin)f(alphabet)i(has)f(upper) +g(and)g(lo)n(wer)f(case)p FQ(,)h FP(it)f(should)i(be)e(possible)i(to) +382 774 y(distinguish)h(these)e FQ(\()p FP(and)g(of)e(course)j(ignore)f +(the)f(distinction)j(when)d(typesetting)k(in)26 b(Arabic)382 +887 y(or)e(T)m(i\315nagh)p FQ(\).)37 b FP(In)24 b(the)h(table)h(belo)n +(w)-6 b FQ(,)24 b FP(all)h(transcribed)j(letters)d(are)g(in)g(lo)n +(wercase)h(ASCII)p FQ(,)c FP(b)n(ut)382 1000 y(can)j(v)o(ery)g(well)g +(be)g(written)h(also)f(in)g(uppercase)p FQ(,)j FP(producing)f(the)e +(same)g(result)p FQ(:)38 b Fu(Tifinagh)p FQ(,)382 1112 +y Fu(tifinagh)20 b FP(or)k Fu(TIFINAGH)c FP(will)k(all)f(three)i +(produce)222 b FB(v)-54 b(\333)-62 b(\264)g(\333)-54 +b(\320)g(n)-81 b(\256)170 b FQ(.)p 529 1251 2695 4 v +527 1364 4 113 v 579 1330 a FP(T)m(r)-5 b FQ(.)p 727 +1364 V 99 w FP(Lat)p FQ(.)p 971 1364 V 99 w FP(Ar)g FQ(.)p +1184 1364 V 100 w FP(T)m(if)p FQ(.)p 1415 1364 V 1432 +1364 V 116 w FP(T)m(r)g FQ(.)p 1631 1364 V 99 w FP(Lat)p +FQ(.)p 1875 1364 V 99 w FP(Ar)g FQ(.)p 2088 1364 V 99 +w FP(T)m(if)p FQ(.)p 2318 1364 V 2335 1364 V 116 w FP(T)m(r)g +FQ(.)p 2535 1364 V 99 w FP(Lat)p FQ(.)p 2778 1364 V 100 +w FP(Ar)g FQ(.)p 2992 1364 V 99 w FP(T)m(if)p FQ(.)p +3222 1364 V 529 1367 2695 4 v 529 1370 V 527 1491 4 121 +v 605 1450 a Fu(a)p 727 1491 V 178 w FP(a)p 971 1491 +V 195 w FB(m)p 1184 1491 V 195 w FL(!)p 1415 1491 V 1432 +1491 V 170 w Fu(.h)p 1631 1491 V 1739 1447 a FQ(\303)1732 +1450 y FP(h)p 1875 1491 V 179 w FB(\202)p 2088 1491 V +166 w FL(9)p 2318 1491 V 2335 1491 V 155 w Fu(.s)p 2535 +1491 V 2644 1447 a FQ(\303)2641 1450 y FP(s)p 2778 1491 +V 160 w FB(\232)p 2992 1491 V 152 w FL(:)p 3222 1491 +V 529 1494 2695 4 v 527 1615 4 121 v 605 1573 a Fu(b)p +727 1615 V 175 w FP(b)p 971 1615 V 169 w FB(o)p 1184 +1615 V 156 w FL(")p 1415 1615 V 1432 1615 V 181 w Fu(i)p +1631 1615 V 185 w FP(i)p 1875 1615 V 186 w FB(\335)p +2088 1615 V 169 w FL(\()p 2318 1615 V 2335 1615 V 185 +w Fu(t)p 2535 1615 V 185 w FP(t)p 2778 1615 V 178 w FB(u)p +2992 1615 V 157 w FL(1)p 3222 1615 V 529 1618 2695 4 +v 527 1739 4 121 v 605 1697 a Fu(c)p 727 1739 V 178 w +FP(c)p 971 1739 V 166 w FB(\226)p 1184 1739 V 155 w FL(#)p +1415 1739 V 1432 1739 V 182 w Fu(j)p 1631 1739 V 185 +w FP(j)p 1875 1739 V 189 w FA(8)p 2088 1739 V 171 w FL(\))p +2318 1739 V 2335 1739 V 161 w Fu(.t)p 2535 1739 V 2644 +1694 a FQ(\303)2646 1697 y FP(t)p 2778 1739 V 186 w FB(\242)p +2992 1739 V 168 w FL(;)p 3222 1739 V 529 1742 2695 4 +v 527 1863 4 121 v 581 1821 a Fu(gh)p 727 1863 V 151 +w FM(|)p 971 1863 V 179 w FB(\256)p 1184 1863 V 182 w +FL(=)p 1415 1863 V 1432 1863 V 194 w Fu(k)p 1631 1863 +V 175 w FP(k)p 1875 1863 V 179 w FB(\272)p 2088 1863 +V 167 w FL(*)p 2318 1863 V 2335 1863 V 181 w Fu(u)p 2535 +1863 V 174 w FP(u)p 2778 1863 V 187 w FB(\327)p 2992 +1863 V 189 w FL(2)p 3222 1863 V 529 1866 2695 4 v 527 +1987 4 121 v 605 1945 a Fu(d)p 727 1987 V 175 w FP(d)p +971 1987 V 188 w FB(\212)p 1184 1987 V 175 w FL($)p 1415 +1987 V 1432 1987 V 181 w Fu(l)p 1631 1987 V 185 w FP(l)p +1875 1987 V 194 w FB(\276)p 2088 1987 V 179 w FL(+)p +2318 1987 V 2335 1987 V 188 w Fu(x)p 2535 1987 V 174 +w FP(x)p 2778 1987 V 180 w FB(\206)p 2992 1987 V 171 +w FL(4)p 3222 1987 V 529 1990 2695 4 v 527 2110 4 121 +v 581 2069 a Fu(.d)p 727 2110 V 836 2066 a FQ(\303)828 +2069 y FP(d)p 971 2110 V 156 w FB(\236)p 1184 2110 V +149 w FL(7)p 1415 2110 V 1432 2110 V 184 w Fu(m)p 1631 +2110 V 162 w FP(m)p 1875 2110 V 174 w FB(\312)p 2088 +2110 V 180 w FL(,)p 2318 2110 V 2335 2110 V 185 w Fu(z)p +2535 2110 V 177 w FP(z)p 2778 2110 V 190 w FB(\220)p +2992 2110 V 169 w FL(6)p 3222 2110 V 529 2114 2695 4 +v 527 2234 4 121 v 581 2193 a Fu(.e)p 727 2234 V 155 +w FP(\252)p 971 2234 V 181 w FB(\252)p 1184 2234 V 1415 +2234 V 1432 2234 V 403 w Fu(n)p 1631 2234 V 175 w FP(n)p +1875 2234 V 181 w FB(\316)p 2088 2234 V 185 w FL(-)p +2318 2234 V 2335 2234 V 172 w Fu(.z)p 2535 2234 V 2643 +2190 a FQ(\303)2638 2193 y FP(z)p 2778 2234 V 190 w Fz(M)p +2992 2234 V 180 w FL(<)p 3222 2234 V 529 2238 2695 4 +v 527 2358 4 121 v 605 2317 a Fu(f)p 727 2358 V 183 w +FP(f)p 971 2358 V 177 w FB(\262)p 1184 2358 V 158 w FL(\045)p +1415 2358 V 1432 2358 V 155 w Fu(.n)p 1631 2358 V 1740 +2315 a FQ(\243)1732 2317 y FP(n)p 1875 2358 V 164 w FQ(.)11 +b FB(\316)p 2088 2358 V 157 w FL(>)p 2318 2358 V 2335 +2358 V 161 w Fu(.i)p 2535 2358 V 161 w FP(i)p 2778 2358 +V 186 w FB(i)p 2992 2358 V 169 w FL(\()p 3222 2358 V +529 2362 2695 4 v 527 2482 4 121 v 605 2441 a Fu(g)p +727 2482 V 175 w FP(g)p 971 2482 V 181 w FA(\242)p 1184 +2482 V 169 w FL(&)p 1415 2482 V 1432 2482 V 181 w Fu(q)p +1631 2482 V 175 w FP(q)p 1875 2482 V 181 w FB(\266)p +2088 2482 V 173 w FL(.)p 2318 2482 V 2335 2482 V 160 +w Fu(--)p 2535 2482 V 150 w FQ(_)p 2778 2482 V 2872 2455 +a Fz(I)p 2992 2482 V 3086 2441 a FQ(_)p 3222 2482 V 529 +2485 2695 4 v 527 2606 4 121 v 581 2564 a Fu(.g)p 727 +2606 V 836 2560 a FQ(\246)828 2564 y FP(g)p 971 2606 +V 179 w FB(})p 1184 2606 V 172 w FL(8)p 1415 2606 V 1432 +2606 V 184 w Fu(r)p 1631 2606 V 182 w FP(r)p 1875 2606 +V 195 w FB(\216)p 2088 2606 V 176 w FL(/)p 2318 2606 +V 2335 2606 V 2535 2606 V 2778 2606 V 2992 2606 V 3222 +2606 V 529 2609 2695 4 v 527 2730 4 121 v 605 2688 a +Fu(h)p 727 2730 V 175 w FP(h)p 971 2730 V 190 w FB(\322)p +1184 2730 V 182 w FL(')p 1415 2730 V 1432 2730 V 184 +w Fu(s)p 1631 2730 V 180 w FP(s)p 1875 2730 V 169 w FB(\222)p +2088 2730 V 147 w FL(0)p 2318 2730 V 2335 2730 V 2535 +2730 V 2778 2730 V 2992 2730 V 3222 2730 V 529 2733 2695 +4 v 382 2903 a FP(Remarks)p FQ(:)496 3116 y(1.)45 b FP(Letter)24 +b FB(\327)f FP(can)h(also)g(be)f(transcribed)k Fu(w)p +FQ(.)496 3303 y(2.)45 b FP(Letter)24 b FB(\331)f FP(can)h(also)g(be)f +(transcribed)k Fu(y)p FQ(.)496 3491 y(3.)45 b FP(The)40 +b(strok)o(e)1051 3505 y Fz(I)1119 3491 y FP(is)h(not)g(to)g(be)f +(confused)j(with)e(the)g(graphical)i(connecting)g(strok)o(e)609 +3604 y FG(k)o(eshideh)p FQ(.)36 b FP(It)23 b(is)h(placed)h(between)f(w) +o(ords)g(and)g(plays)h(a)e(grammatical)i(role)p FQ(.)496 +3791 y(4.)45 b FP(Duplication)25 b(of)d(consonants)j +FQ(\()p FG(shaddah)p FQ(\))g FP(again)e(is)f(transcribed)j(by)e +(writing)g(the)f(cor)n FQ(-)609 3904 y FP(responding)27 +b(consonant)f(twice)p FQ(.)382 4117 y FP(Example)p FQ(:)3116 +4329 y FB(v)-54 b(\333)-62 b(\264)g(\333)-54 b(\320)g(n)-81 +b(\256)-88 b(!)-125 b(\212)2755 4343 y Fz(I)2728 4329 +y FB(v)-54 b(\333)-64 b(\217)g(m)-115 b(v)-54 b(\333)-67 +b(\314)-77 b(\221)h(\327)-39 b(K)i(\216)-64 b(m)-137 +b(\316)g(j)-67 b(\314)g(n)j(\220)g(\332)e(\260)-88 b(\321)-83 +b FQ(.)-180 b FB(\310)-21 b(K)-54 b(\317)-96 b(x)-167 +b(\212)-96 b(\335)-147 b(v)-67 b(\314)-79 b(\330)j(\216)-112 +b(u)1174 4343 y Fz(I)1147 4329 y FB(\317)-27 b(K)-43 +b(\261)-141 b(\212)-64 b(m)-102 b(u)-163 b(v)-54 b(\333)-64 +b(\217)g(m)-137 b(\316)3116 4442 y(v)-54 b(n)-67 b(\253)-77 +b(\217)-64 b(m)-54 b(p)-96 b(x)-160 b(\212)2770 4456 +y Fz(I)2743 4442 y FB(v)-81 b(\311)-107 b(\243)-80 b(\333)-54 +b(\320)g(\333)-96 b(x)-103 b FQ(.)-131 b FB(\317)-27 +b(K)-39 b(\330)-60 b(\277)k(\264)-62 b(n)-54 b(\317)-96 +b(x)2098 4456 y Fz(I)2061 4442 y FB(\212)-37 b(K)-91 +b(\212)-64 b(m)-102 b(u)-156 b(j)-67 b(\314)g(\333)j(\217)-140 +b(\316)e(\327)-74 b(\355)-56 b(\300)-21 b(K)-27 b(\333)-65 +b(\213)-131 b(\313)-67 b(n)-95 b(\223)g(\333)-55 b(\320)h(\333)-95 +b(\224)-117 b(\321)-83 b FQ(.)-132 b FB(j)-67 b(\314)g(n)j(\220)g(\332) +d(\260)-88 b(\321)3094 4555 y(\316)-131 b(j)-67 b(\314)g(\333)j(\217) +2880 4569 y Fz(I)2831 4555 y FB(\316)-83 b(!)-107 b(v)-27 +b(K)g(n)-64 b(\216)-76 b(\327)-88 b(\316)2533 4569 y +Fz(I)2506 4555 y FB(v)-54 b(\320)-96 b(x)-164 b(\257)-75 +b(\264)-62 b(\333)e Fz(N)-74 b FB(\216)-64 b(m)j(!)-117 +b(\212)-87 b FA(\242)-50 b FB(K)-82 b(j)-62 b(\264)-72 +b(\217)-64 b(m)-76 b(\316)-83 b(!)-120 b(\257)-112 b(\265)-154 +b(j)-62 b(\356)-72 b(\213)-77 b(\327)h(\216)-86 b(\316)j(!)-121 +b(\313)-67 b(n)-95 b(\227)g(n)-109 b(v)-54 b(\333)-62 +b(\356)-35 b(K)-27 b(w)-81 b(\336)-149 b(\257)-112 b(\265)3116 +4668 y(\332)-64 b Fz(N)-78 b FB(\273)e(\330)-66 b(m)-76 +b(\316)-134 b FQ(:)-113 b FB(v)-27 b(K)g(n)-64 b(\216)-76 +b(\327)-88 b(\316)-132 b(\263)-79 b(\301)-44 b(K)2443 +4682 y Fz(I)2416 4668 y FB(m)-95 b(\223)-117 b(\321)-124 +b(j)-95 b(\224)-105 b(\315)-134 b(\316)e(\327)-79 b(\313)-67 +b(w)-27 b(K)-67 b Fz(\200)g(\204\210)-34 b FB(!)-109 +b(\212)-124 b(\327)-98 b(\335)1507 4682 y Fz(I)1432 4668 +y FB(u)1404 4682 y Fz(I)1377 4668 y FB(\332)-81 b(\311)-103 +b(\316)-83 b(!)-109 b(\212)-124 b(\327)-66 b(m)-54 b(\332)-76 +b(\321)-124 b(\332)-85 b(\210)-95 b(\213)-74 b(\312)-122 +b(\212)-96 b(\335)3116 4781 y(v)-66 b(\330)-76 b(\212)i(\216)-112 +b(u)2900 4795 y Fz(I)2873 4781 y FB(\332)h(\225)-156 +b(m)-68 b(\273)-41 b(K)-49 b(\321)-133 b(\327)-76 b(\216)-157 +b(u)-147 b(v)-27 b(K)g(w)g(K)-39 b(\330)-88 b(\316)-121 +b(j)-54 b(\320)g(n)-80 b(\243)-88 b(\264)-62 b(n)e(\216)-86 +b(\316)j FQ(.)382 4994 y FP(transcribed)p FQ(:)609 5193 +y Ff(Tifinagh,)21 b(d--tira)h(timezwura)g(n)i(.imazighen.)609 +5293 y(Llant)f(di)h(tmurt--nnegh)c(dat)k(tira)f(n)h(ta.erabt)e +(d--tla.tinit.)609 5392 y(Nnulfant--edd)e(dat)j(.imir)g(n)i(ugellid)d +(Masinisen.)30 b(.Imazighen)20 b(n)1831 5652 y FQ(71)p +eop end +%%Page: 72 10 +TeXDict begin 72 9 bop 609 548 a Ff(.imir--en,)14 b(ttarun--tent)e +(ghefi.zra,)i(degg)h(.ifran,)g(ghef)g(.igduren,)609 648 +y(maca)22 b(tiggti)g(ghef)g(i.zekwan)e(:)34 b(ttarun)21 +b(fell--asen)f(.isem)h(n)j(umettin,)609 747 y(d)h(wi--t--ilan,)20 +b(d)k(wayen)f(yexdem)f(di)i(tudert--is)d(akken)i(ur)h(t)h(ttettun)609 +847 y(.ina.tfaren.)382 1059 y FP(The)e(same)h(code)g(will)f(produce)j +(the)d(follo)n(wing)i(output)h(in)d(the)h(T)m(i\315nagh)f(alphabet)p +FQ(:)609 1272 y FL(1\(\045\(-!=)p FQ(,)28 b FL($)p FQ(_)p +FL(1\(/!)h(1\(,632/!)d(-)j(\(,!6\(=-)p FQ(.)48 b FL(+@!-1)29 +b($\()f(1,2k)p FQ(_)p FL(-A=)h($!1)f(1\(/!)609 1385 y(-)36 +b(1!/!f)f($)p FQ(_)p FL(1+!;\(-\(1)p FQ(.)71 b FL(-A2+\045!-1)p +FQ(_)p FL($$)37 b($!1)f(\(,\(/)e(-)i(2&+@\($)g(,!0\(-\(0-)p +FQ(.)609 1498 y FL(\(,!6\(=-)c(-)h(\(,\(/)p FQ(_)p FL(-)p +FQ(,)j FL(11!/2-)p FQ(_)p FL(1-1)e(=\045\(</!)p FQ(,)g +FL($&&)f(\(\045/!-)p FQ(,)i FL(=\045)d(\(&$2/-)p FQ(,)j +FL(,!#!)609 1611 y(1\(&i\()29 b(=\045)g(\(<*3!-)g FQ(:)47 +b FL(11!/2-)29 b(\045+@)p FQ(_)p FL(!0-)i(\(0,)e(-)h(2j1\(-)p +FQ(,)g FL($)g(3\()p FQ(_)p FL(1)p FQ(_)p FL(\(+!-)p FQ(,)h +FL($)609 1724 y(3!5-)23 b(54$,)f($\()h(12$k)p FQ(_)p +FL(\(0)g(!**-)f(2/)h(1)g(11112-)g(\(-!;\045!/-)p FQ(.)382 +1936 y FP(and)h(the)g(follo)n(wing)h(one)f(in)f(the)h(Latin)g(alphabet) +p FQ(:)609 2149 y FP(T)m(i\315na)p FM(|)p FQ(,)29 b FP(d)p +FQ(_)p FP(tira)h(timezwura)f(n)f(imazi)p FM(|)p FP(en)p +FQ(.)49 b FP(Llant)28 b(di)g(tmurt)p FQ(_)p FP(nne)p +FM(|)j FP(dat)d(tira)h(n)609 2262 y(ta\252rabt)17 b(d)p +FQ(_)p FP(tla)1048 2259 y FQ(\303)1050 2262 y FP(tinit)p +FQ(.)33 b FP(Nnulf)o(ant)p FQ(_)p FP(edd)20 b(dat)c(imir)g(n)f(ugellid) +j(Masinisen)p FQ(.)33 b FP(Imazi)p FM(|)p FP(en)609 2374 +y(n)24 b(imir)p FQ(_)p FP(en)p FQ(,)h FP(ttarun)p FQ(_)p +FP(tent)i FM(|)p FP(e\315)1565 2371 y FQ(\303)1560 2374 +y FP(zra)p FQ(,)d FP(de)o(gg)h(ifran)p FQ(,)g FM(|)p +FP(ef)f(igduren)p FQ(,)i FP(maca)e(tiggti)h FM(|)p FP(ef)609 +2487 y(i)639 2484 y FQ(\303)634 2487 y FP(zekw)o(an)j +FQ(:)38 b FP(ttarun)28 b(fell)p FQ(_)p FP(asen)h(isem)d(n)g(umettin)p +FQ(,)i FP(d)e(wi)p FQ(_)p FP(t)p FQ(_)p FP(ilan)p FQ(,)i +FP(d)e(w)o(ayen)h(ye)o(x)p FQ(-)609 2600 y FP(dem)c(di)h(tudert)p +FQ(_)p FP(is)i(akk)o(en)f(ur)e(t)g(ttettun)i(ina)1971 +2597 y FQ(\303)1973 2600 y FP(tf)o(aren)p FQ(.)382 2893 +y FT(6)119 b FS(Writing)30 b(Y)-13 b(our)31 b(Own)f(T)-9 +b(ranscription)382 3100 y FP(W)i(e)19 b(ha)n(v)o(e)i(de)n(v)o(eloped)h +(and)f(presented)i(in)d(this)g(paper)i(a)d(certain)j(number)f(of)f +(Arabic)h(alphabet)382 3213 y(language)g(transcriptions)h(for)d(tw)o(o) +f(reasons)p FQ(:)33 b FP(\315rst)p FQ(,)19 b FP(to)f(sho)n(w)g(the)h +(possibilities)j(and)d(po)n(wer)f(of)382 3326 y FO(W)p +FQ(,)k FP(and)i(second)p FQ(,)h FP(to)f(gi)n(v)o(e)f(a)g(starting)j +(point)e(for)g(the)g(user)g(to)g(create)2555 3285 y FJ(his)2555 +3346 y(her)2673 3326 y FP(o)n(wn)f(transcriptions)p FQ(.)523 +3439 y FP(The)e(process)j(of)d(creating)j(a)d(ne)n(w)h(transcription)j +(is)d(tw)o(ofold)p FQ(:)34 b FP(the)22 b(\315rst)f(part)p +FQ(,)h FP(which)h(can)382 3552 y(be)29 b(v)o(ery)g(di\317cult)h(and)f +(painful)p FQ(,)j FP(consists)f(of)e(\315nding)h(the)f(combination)i +(of)e(letters)p FQ(,)j FP(digits)382 3664 y(and)24 b(ASCII)d(symbols)k +(which)f(will)f(transcribe)i(each)g(character)p FQ(;)g +FP(the)f(second)h(one)p FQ(,)e FP(which)h(is)382 3777 +y(straightforw)o(ard)f FQ(\()p FP(modulo)e(some)e(precautions)p +FQ(\))k FP(is)d(to)f(implement)i(this)f(in)f FO(W)g FP(by)g(writing)i +(the)382 3890 y(appropriate)27 b FO(W)p FP(TP)-10 b FQ(.)382 +4139 y Fs(6.1)99 b Fr(A)25 b(Good)f(T)-7 b(ranscription)p +Fs(:)37 b Fr(Is)25 b(it)g(P)n(ossible)p Fs(?)382 4314 +y FP(There)f(are)f FQ(\()p FP(at)h(least)p FQ(\))h FP(tw)o(o)e(goals)h +(for)g(a)f(good)i(transcription)p FQ(:)496 4526 y(1.)45 +b FG(It)23 b(has)g(to)g(be)g(r)m(eadable)i(and)e(easily)h(memorizable)p +FQ(.)35 b FP(In)23 b(other)h(w)o(ords)p FQ(,)f Fu(AHmd)e +FP(is)i(better)609 4639 y(than)30 b Fu(\015.hmd)p FQ(,)d +FP(for)i(denoting)166 b FB(m)-83 b(\203)-96 b(\314)-77 +b(\213)151 b FQ(:)43 b FP(although)31 b(an)e(apostrophe)j(can)d(be)g +(considered)609 4752 y(a)d(logical)h(choice)h(for)e(transcribing)k(an)c +(alif)g(and)h(the)f(period)h(in)f(front)h(of)f(the)g(h)g(may)609 +4865 y(denote)21 b(that)f(it)f(is)g(an)g(emphatic)i FQ(h)p +FP(h)p FQ(i)f FP(sound)p FQ(,)h FP(taking)g(an)e(A)f(for)h(alif)h(and)g +(a)f(capital)i(H)d(for)609 4978 y(the)25 b(emphatic)h(h)f(is)f(more)h +(readable)p FQ(;)j FP(also)d(using)h(rules)f(such)h(as)f +FQ(l)p FP(uppercase)i(ASCII)609 5091 y(characters)h(transcribe)f +(emphatic)f(letters)p FQ(m)h FP(is)d(an)h(easy)g(w)o(ay)g(to)g +(memorize)g(the)g(tran)p FQ(-)609 5204 y FP(scriptions)h(of)e +FB(\202)p FQ(,)e FB(\242)p FQ(,)g FB(\236)p FQ(,)g FB(\232)p +FQ(,)h FB(\246)p FQ(.)1831 5652 y(72)p eop end +%%Page: 73 11 +TeXDict begin 73 10 bop 496 548 a FQ(2.)45 b FG(It)25 +b(has)g(to)g(be)g(complete)i(and)e(avoid)i(ambiguities)p +FQ(.)40 b FP(Of)24 b(course)j(all)e(letters)h(of)f(the)g(tar)n +FQ(-)609 661 y FP(get)g(language)j(ha)n(v)o(e)d(to)g(be)g(co)o(v)o +(ered)p FQ(,)i FP(b)n(ut)e(ha)n(ving)i(man)o(y)e(letters)h(to)f +(transcribe)j(leads)609 774 y(sometimes)20 b(to)e(ambiguities)p +FQ(:)34 b FP(for)19 b(e)o(xample)h(taking)g Fu(h)d FP(for)i +FB(\322)p FQ(,)g Fu(k)e FP(for)i FB(\272)f FP(and)h Fu(kh)e +FP(for)i FB(\206)f FP(are)609 887 y(perfectly)h(logical)g(choices)p +FQ(;)i FP(ne)n(v)o(ertheless)f(there)e(is)f(a)g(hitch)p +FQ(:)32 b FP(when)17 b(you)g(need)h(to)f(tran)p FQ(-)609 +1000 y FP(scribe)56 b FB(\273)-73 b(\326)64 b FP(you)25 +b(are)f(tempted)h(to)e(write)h(simply)h Fu(kh)d FP(and)i(this)h(will)e +(of)h(course)h(produce)609 1112 y FB(\206)j FP(instead)p +FQ(.)53 b FP(The)28 b(solution)k(we)c(ha)n(v)o(e)i(gi)n(v)o(en)g(to)f +(this)h(problem)g(is)g(to)f(type)h(a)f(hyphen)609 1225 +y(between)f(the)f(letters)h(which)f(are)g(not)g(considered)j(as)c(a)g +FQ(h)p FP(digraph)p FQ(i,)k FP(b)n(ut)d(this)h(is)e(only)609 +1338 y(a)h(compromise)i(solution)p FQ(:)44 b FP(the)28 +b(user)g(must)f(constantly)k(be)c(a)o(w)o(are)h(of)f(this)h(problem)p +FQ(,)609 1451 y FP(and)c(this)g(is)g(hardly)h(the)e(case)i(when)e(you)h +(are)g(concentrated)j(in)d(your)g(te)o(xt)p FQ(...)523 +1664 y FP(It)e(is)h(clear)h(that)f(these)h(tw)o(o)e(goals)i(are)f +(contradictory)p FQ(:)37 b FP(an)23 b(accurate)i(and)e(unambiguous)382 +1777 y(transcription)33 b(has)d(to)g(be)g(complicated)i(and)e(will)g +(be)f(di\317cult)i(to)f(read)g(and)h(memorize)p FQ(;)i +FP(a)382 1890 y(friendly)25 b(and)f(easily)h(readable)h(transcription)h +(will)c(be)h(full)g(of)f(ambiguities)p FQ(.)523 2002 +y FP(An)j(additional)k(problem)e(when)f(making)h(a)f(transcription)j +(is)d(to)g(choose)h(between)h FH(\()p FG(et)p FH(-)382 +2115 y FG(ymo)p FH(\))p FG(lo)o(gical)p FQ(,)34 b FG(phonetic)f +FP(and)e FG(gr)o(aphical)h FP(representations)j(of)30 +b(characters)p FQ(.)57 b FP(A)29 b(typical)j(e)o(x)p +FQ(-)382 2228 y FP(ample)d(is)g(the)g(standard)i FO(W)c +FP(transcription)33 b(of)28 b(Greek)p FQ(:)45 b Fu(w)28 +b FP(is)g(chosen)j(for)e(letter)g FO(w)p FQ(,)g FP(this)h(is)e(a)382 +2341 y(purely)f FG(gr)o(aphical)h FP(choice)p FQ(:)40 +b FP(the)26 b FQ(h)p FP(w)p FQ(i)f FP(looks)i(lik)o(e)f(an)g(ome)o(ga)p +FQ(,)f FP(b)n(ut)h(has)h(absolutely)h(no)e(other)382 +2454 y(relation)e(with)p FQ(,)e FP(neither)i(historical)h(nor)d +(phonetic)j FQ(\()p FP(the)e(letter)g(ome)o(ga)f(represents)j(the)e +(sound)382 2567 y FQ(h)p FP(o)p FQ(i)k FP(in)g(modern)h(Greek)p +FQ(\);)i Fu(b)c FP(is)h(chosen)i(for)e(letter)i FO(b)p +FQ(,)d FP(this)i(is)f(an)g FG(etymolo)o(gical)j FP(choice)p +FQ(:)43 b FP(the)382 2680 y(Latin)20 b FQ(h)p FP(B)p +FQ(i)g FP(deri)n(v)o(es)i(from)e(the)h(ancient)h(Greek)f +FQ(h)p FP(B)p FQ(i,)f FP(otherwise)i FO(b)d FP(looks)j(quite)f +(di\314erent)h(than)382 2793 y FQ(h)p FP(b)p FQ(i)h FP(and)h(is)f +(pronounced)k FQ(h)p FP(v)p FQ(i)c FP(in)g(modern)h(Greek)p +FQ(;)g FP(\315nally)-6 b FQ(,)24 b Fu(x)e FP(is)h(a)g +FG(phonetic)i FP(transcription)i(of)382 2906 y(letter)c +FO(x)p FQ(;)f FP(clearly)h(the)o(y)g(do)f(not)g(bear)h(an)o(y)f +(resemblance)p FQ(,)j FP(and)d(historically)k(it)c(is)f(not)i(clear)g +FQ(\()p FP(at)382 3019 y(least)d(to)g(the)g(author)p +FQ(\))h FP(why)e FQ(h)p FP(x)p FQ(i)h FP(should)i(be)d(deri)n(v)o(ed)i +(from)f FO(x)e FQ(\()p FP(their)j(positions)h(in)e(the)g(alphabet)382 +3132 y(is)j(quite)h(di\314erent)h(as)e(well)p FQ(,)g +FP(and)h(this)g(is)f(an)g(ar)n(gument)i(speaking)h(against)f(an)e +(etymological)382 3245 y(relation)i(between)g(the)f(letters)p +FQ(\).)523 3357 y FP(The)d(reader)h(may)f(object)i(that)e(this)h +(distinction)i(between)f(etymological)p FQ(,)h FP(phonetic)f(and)382 +3470 y(graphical)e(representations)j(is)19 b(not)g(rele)n(v)n(ant)i +(for)e(Arabic)h(alphabet)h(transcriptions)p FQ(;)k FP(actually)382 +3583 y(this)20 b(is)g(only)h(partly)g(true)p FQ(:)33 +b FP(tak)o(e)20 b(for)g(e)o(xample)h Fu(bh)e FP(for)h +FA(,)p FQ(,)f FP(this)i(is)f(an)g FG(etymolo)o(gical)i +FP(transcrip)p FQ(-)382 3696 y FP(tion)f(in)f(the)g(sense)i(that)f(it)f +(re\316ects)h(the)f(standard)j(transcription)h(of)c(the)g(Indic)h +(alphabet)i(letter)382 3809 y(which)e(corresponds)j(to)c(that)i(Sindhi) +f(letter)-5 b FQ(.)33 b FP(Also)21 b Fu(\022)e FP(for)i(ayn)g(is)f(in)h +(some)g(sense)g(a)g FG(gr)o(aphical)382 3922 y FP(representation)p +FQ(:)37 b FP(it)21 b(has)g(been)h(chosen)h(because)g(it)e(resembles)i +(the)e(IP)-8 b(A)20 b(transcription)25 b(of)c(the)382 +4035 y(ayn)p FQ(,)i FP(which)g(is)f FM(\353)p FQ(.)33 +b FP(F)o(or)22 b(the)g(same)h(reason)p FQ(,)h Fu(\015)e +FP(has)h(been)g(chosen)h(for)f(the)g(hamza)g(with)g(carrier)382 +4148 y FQ(\()p FP(in)h FB(c)p FQ(,)e FB(e)p FQ(,)g FP(etc)p +FQ(.\):)35 b FP(the)23 b(hamza)p FQ(i)-5 b FP(s)25 b(IP)-8 +b(A)22 b(transcription)27 b(is)c FM(\352)p FQ(.)523 4261 +y FP(W)-7 b(e)29 b(hope)i(to)f(ha)n(v)o(e)g(con)l(vinced)k(the)c +(reader)h(that)f(the)h(making)g(of)e(a)h(transcription)k(is)29 +b(a)382 4374 y(di\317cult)34 b(task)p FQ(,)h FP(needing)g(a)e(lot)g(of) +f(thought)p FQ(,)37 b FP(compromises)e(and)e(tests)p +FQ(.)62 b FP(Once)33 b(again)p FQ(,)j FP(we)382 4487 +y(w)o(ould)22 b(lik)o(e)f(to)g(emphasize)i(the)f(f)o(act)f(that)h(our)f +(transcriptions)k(are)d(only)g(temptati)n(v)o(e)g(propos)p +FQ(-)382 4599 y FP(als)f(and)h(should)h(not)f(be)f(tak)o(en)i(as)e +(standards)j(of)d(an)o(y)g(kind)p FQ(;)i FP(after)f(all)g(the)f(po)n +(wer)h(of)f FO(W)f FP(is)h(that)382 4712 y(it)k(can)h(w)o(ork)g(with)f +(an)o(y)h(input)g(transcription)k(without)c(a\314ecting)i(further)f +(processing)p FQ(,)i FP(be)c(it)382 4825 y(conte)o(xtual)h(analysis)p +FQ(,)f FP(diacritic)h(placement)f(or)f(esthetical)i(ligaturing)p +FQ(.)523 4938 y FP(In)21 b(the)h(ne)o(xt)g(section)h(we)e(will)g(see)g +(ho)n(w)g(to)h(implement)g(a)f(ne)n(w)g(transcription)k(or)c(change)382 +5051 y(an)28 b(e)o(xisting)i(one)f(by)f(writing)p FQ(/)p +FP(modifying)k(an)d FO(W)p FP(TP)d(\315le)p FQ(.)47 b +FP(But)28 b(\315rst)g(some)g(generalities)k(on)382 5164 +y(the)24 b FO(W)p FP(TPs)e(used)i(by)g(the)g(Arabic)g +FO(W)e FP(system)p FQ(.)1831 5652 y(73)p eop end +%%Page: 74 12 +TeXDict begin 74 11 bop 382 548 a Fp(6.1.1)92 b Fo(The)22 +b Fn(W)p Fo(TPs)g(used)g(by)h(the)g(Arabic)g Fn(W)g Fo(system)382 +722 y FP(When)e FO(W)f FP(reads)i(the)g(te)o(xt)f(\316o)n(w)e(it)i +(places)i(letters)p FQ(,)f FP(digits)h(and)e(punctuation)k +FQ(\()p FP(whate)n(v)o(er)d(is)f(not)382 835 y(an)f(escape)i(or)f +(special)h(character)p FQ(\))h FP(into)e(a)f(b)n(u\314er)-5 +b FQ(.)33 b FP(When)21 b(it)f(encounters)j(a)e(special)h(character)382 +948 y(it)j(stops)h(b)n(u\314ering)h(and)e(e)o(x)o(ecutes)i(one)e(after) +h(the)f(other)h(all)f(currently)i(acti)n(v)o(e)f FO(W)p +FP(TPs)e(on)h(the)382 1061 y(b)n(u\314er)-5 b FQ(.)34 +b FP(In)22 b(theory)-6 b FQ(,)24 b FO(W)p FP(TPs)d(could)j(be)f(used)g +(to)g(arbitrarily)i(send)e(character)i(combinations)h(to)382 +1174 y(other)e(combinations)p FQ(:)36 b FP(one)23 b(could)h(v)o(ery)f +(well)f(imagine)i(an)f FO(W)p FP(TP)d(sending)25 b(the)e(string)h +FQ(")p FP(Y)-9 b(an)p FQ(-)382 1287 y FP(nis)p FQ(")21 +b FP(to)g FQ(")p FP(John)p FQ(")h FP(and)f FQ(")p FP(John)p +FQ(")h FP(to)e FQ(")p FP(Y)-9 b(annis)p FQ(",)22 b FP(or)f +FQ(")p FP(Microsoft)i(W)-7 b(ord)p FQ(")20 b FP(to)h +FQ(")p FM(\323)-8 b FN(\265)p FO(x)p FN(.)p FM(\360)p +FQ(";)21 b FP(ne)n(v)o(erthe)p FQ(-)382 1400 y FP(less)p +FQ(,)j FP(such)g(an)g FO(W)p FP(TP)d(w)o(ould)j(not)g(be)g(of)f +(general)j(use)p FQ(...)523 1513 y FP(Our)g(de)n(v)o(elopment)i(has)f +(mainly)g(been)g(focused)h(in)e(b)n(uilding)j FO(W)p +FP(TPs)c(in)h(accordance)j(to)382 1625 y(the)24 b(follo)n(wing)h +(scheme)p FQ(:)p 853 1745 407 4 v 853 1855 4 110 v 881 +1830 a FP(Input)f(te)o(xt)p 1255 1855 V 853 1858 407 +4 v 1306 1778 a Fe(foo2uni)1284 1830 y Fd(\000)-41 b(\000)-21 +b(\000)h(\000)f(\000)-41 b(!)p 1611 1743 467 4 v 1611 +1855 4 112 v 53 w FP(Unicode)p FQ(++)p 2075 1855 V 1611 +1858 467 4 v 2125 1778 a Fe(uni2foo)2103 1830 y Fd(\000)g(\000)-20 +b(\000)f(\000)h(\000)-42 b(!)p 2431 1745 470 4 v 2431 +1855 4 110 v 54 w FP(D)l(VI)22 b(output)p 2897 1855 V +2431 1858 470 4 v 382 2034 a(where)h Fu(foo2uni)d FP(sends)k(te)o(xt)f +(encoded)i(in)d(an)h(arbitrary)i(encoding)g(into)e(Unicode)p +FQ(++)i(\()p FP(Uni)p FQ(-)382 2147 y FP(code)p FQ(++)19 +b FP(is)f(Unicode)i(e)o(xtended)g(for)e(the)g(needs)i(of)e +FO(W)f FP(and)h(typography)p FQ(\),)k FP(and)d Fu(uni2foo)c +FP(con)p FQ(-)382 2260 y FP(v)o(erts)20 b(Unicode)p FQ(++-)p +FP(encoded)k(data)c(into)g(the)f(encoding)j(of)d(the)g(output)i(font)p +FQ(.)33 b FP(By)18 b(this)i(method)382 2373 y(we)j(are)g(able)i(to)e(k) +o(eep)h(completely)i(separate)g(input)e(encoding)i(and)e(font)h +(encoding)p FQ(.)523 2486 y FP(In)h(the)h(case)g(of)g(Arabic)g(things)h +(are)e(slightly)j(more)d(complicated)j(since)f(an)e(additional)382 +2599 y(step)33 b(is)f(needed)p FQ(:)53 b FP(conte)o(xtual)35 +b(analysis)p FQ(.)62 b FP(This)32 b(is)h(where)f(our)h(scheme)g(pro)o +(v)o(es)g(to)g(be)f(e)o(x)p FQ(-)382 2711 y FP(tremely)19 +b(e\317cient)p FQ(:)33 b FP(by)19 b(performing)h(conte)o(xtual)h +(analysis)g(on)d(the)h(le)n(v)o(el)g(of)f(Unicode)p FQ(++,)j +FP(and)382 2824 y(hence)k(obtaining)h(the)e(follo)n(wing)h(ne)n(w)e +(scheme)p FQ(:)p 387 2943 407 4 v 387 3053 4 110 v 416 +3029 a FP(Input)h(te)o(xt)p 790 3053 V 387 3056 407 4 +v 840 2977 a Fe(foo2uni)819 3029 y Fd(\000)-41 b(\000)-21 +b(\000)h(\000)f(\000)-41 b(!)p 1146 2942 467 4 v 1146 +3053 4 112 v 53 w FP(Unicode)p FQ(++)p 1610 3053 V 1146 +3056 467 4 v 1660 2977 a Fe(uni2cuni)1638 3029 y Fd(\000)-23 +b(\000)i(\000)h(\000)f(\000)d(!)p 2001 2942 508 4 v 2001 +3053 4 112 v 54 w FP(cUnicode)p FQ(++)p 2505 3053 V 2001 +3056 508 4 v 2555 2977 a Fe(cuni2oar)2533 3029 y Fd(\000)h(\000)i(\000) +h(\000)f(\000)e(!)p 2896 2943 470 4 v 2896 3053 4 110 +v 53 w FP(D)l(VI)23 b(output)p 3362 3053 V 2896 3056 +470 4 v 382 3233 a(we)16 b(still)h(remain)h(independent)i(of)d(both)h +(the)f(input)h(and)f(the)g(font)h(encoding)p FQ(.)33 +b FP(This)17 b(means)g(that)382 3346 y(if)g(we)g(need)i(to)e(adapt)i +FO(W)e FP(to)g(a)h(ne)n(w)f(Arabic)h(encoding)i(we)d(only)h(need)h(to)e +(indicate)j(which)e(code)382 3459 y(position)i(corresponds)h(to)d +(which)g(Unicode)h(character)l FQ(,)i FP(and)p FQ(,)e +FP(on)f(the)g(other)h(hand)p FQ(,)g FP(if)f(we)f(w)o(ant)382 +3572 y(to)22 b(adapt)i(a)e(ne)n(w)f(font)j(to)e FO(W)p +FQ(,)f FP(we)h(only)h(need)g(to)g(indicate)h(which)f(font)g(position)h +(corresponds)382 3684 y(to)f(which)h(conte)o(xtual)i(form)e(of)f(which) +h(character)l FQ(,)i FP(in)e(cUnicode)p FQ(++.)523 3797 +y FP(In)30 b(the)h(ne)o(xt)g(section)h(we)d(will)h(partly)i(describe)h +(the)d(syntax)i(of)f FO(W)p FP(TP)d(\315les)i(by)h(gi)n(ving)382 +3910 y(e)o(xamples)25 b(of)e Fu(foo2uni)e FP(cases)p +FQ(.)382 4159 y Fs(6.2)99 b Fr(Implementing)26 b(a)e(T)-7 +b(ranscription)382 4334 y FP(The)24 b FO(W)p FP(TP)e(\315les)i(we)g +(will)g(need)h(for)g(input)g(encoding)i Fd(!)c FP(Unicode)p +FQ(++)j FP(transformations)j(use)382 4447 y(only)24 b(part)g(of)g(the)g +(syntax)h(of)e FO(W)p FP(TP)f(\315les)p FQ(.)1693 4414 +y FF(2)1763 4447 y FP(Such)i(an)f FO(W)p FP(TP)f(\315le)h(is)g(of)h +(the)g(follo)n(wing)h(form)p FQ(:)382 4659 y Fu(input:)h(1;)382 +4772 y(output:)f(2;)382 4885 y(expressions:)382 4998 +y(...)382 5111 y(...)p 382 5172 1196 4 v 487 5228 a Fi(2)516 +5259 y FJ(The)19 b FC(uni2cuni)i FI(W)p FJ(TP)c(\315le)h(already)i +(needs)g(more)f(complicated)h(constructions)p FK(.)1831 +5652 y FQ(74)p eop end +%%Page: 75 13 +TeXDict begin 75 12 bop 382 548 a FP(where)20 b Fu(input:)33 +b(1;)23 b(output:)33 b(2;)20 b FP(means)g(that)g(input)g(is)g +FQ(8-)p FP(bit)g(while)g(output)h(is)e FQ(16-)p FP(bit)p +FQ(,)i FP(and)382 661 y Fu(...)32 b FP(are)24 b(lines)g(of)g(the)f +(follo)n(wing)i(form)p FQ(:)382 854 y Fu(before)h(=>)g(after)g(;)382 +1048 y FP(where)g Fu(before)d FP(is)i(an)g(e)o(xpression)k(before)d +(the)g(transformation)p FQ(,)j FP(and)d Fu(after)e FP(after)i(it)p +FQ(.)39 b FP(F)o(or)382 1161 y(e)o(xample)p FQ(,)382 +1355 y Fu(\022a\015)26 b(=>)h("o")g(;)382 1548 y FP(will)c(transform)i +(all)f FQ(h)p FP(a)p FQ(i)-5 b FP(s)24 b(in)f(the)h(\315le)f(into)h +FQ(h)p FP(o)p FQ(i)-5 b FP(s)p FQ(.)523 1661 y FP(Ho)n(w)21 +b(do)i(we)e(describe)k(characters)g(and)e(strings)p FQ(?)35 +b FP(On)22 b(the)h(left)g(side)g(of)f Fu(=>)g FP(we)f(can)i(only)382 +1774 y(put)30 b(separate)h(characters)p FQ(:)48 b FP(the)o(y)29 +b(can)h(be)f(written)h(either)h(as)e FQ(l)p FP(gra)n(v)o(e)i(accent)p +FQ(+)p FP(ASCII)f(char)n FQ(-)382 1887 y FP(acter)p FQ(+)p +FP(apostrophe)p FQ(m)j FP(or)c(as)f Fu(@"XYZT)d FP(where)k +Fu(XYZT)d FP(are)i(he)o(xadecimal)j(digits)p FQ(:)44 +b FP(in)29 b(this)f(case)382 2000 y(we)21 b(are)h(not)g(restricted)i +(to)e(ASCII)e(characters)p FQ(.)36 b FP(The)21 b(latter)i(syntax)g(can) +f(also)g(be)g(used)h(on)f(the)382 2113 y(right)i(side)p +FQ(.)34 b FP(F)o(or)23 b(e)o(xample)p FQ(,)382 2306 y +Fu(\022i\015\022j\015)j(=>)g(@"0133)g(;)382 2419 y(@"008E)g(=>)g +(@"00E9)g(;)382 2613 y FP(will)f(send)i(the)f(string)i +FQ(h)p FP(ij)p FQ(i)e FP(to)g(the)g(Unicode)p FQ(++)i +FP(character)g(representing)h(the)e(Dutch)f(;)g(liga)p +FQ(-)382 2726 y FP(ture)p FQ(,)j FP(and)f(the)f FQ(8-)p +FP(bit)i(code)f FQ(8)p FP(E)f FQ(\()p FP(a)g(Macintosh)j +FQ(h)p FP(e)p FQ(i)d FP(with)g(acute)i(accent)p FQ(\))g +FP(to)e(the)h(Unicode)p FQ(++)382 2839 y FP(character)e +FQ(00)p FP(E)p FQ(9)d(\()p FP(which)i(is)e(the)h(Unicode)g +FQ(h)p FP(e)p FQ(i)g FP(with)f(acute)i(accent)p FQ(\).)523 +2952 y FP(On)d(the)h(right)h(side)f(of)g Fu(=>)e FP(we)h(can)h(also)h +(write)e(complete)j(strings)p FQ(,)f FP(possibly)h(containing)382 +3064 y FO(W)19 b FP(commands)p FQ(,)j FP(which)e(will)g(be)g(forw)o +(arded)i(to)e(the)g(ne)o(xt)h FO(W)p FP(TP)d(or)i(to)g(the)g +(typesetting)j(engine)382 3177 y(of)g FO(W)p FQ(.)33 +b FP(F)o(or)22 b(e)o(xample)p FQ(,)382 3371 y Fu(\022~\015)k(=>)h +("\\penalty10000")c(;)382 3582 y FP(sends)h(the)g(tilde)g(character)h +(to)e(the)g(T)1546 3603 y(E)1590 3582 y(X)f(command)i(of)f(in\315nite)h +(penalty)-6 b FQ(.)2719 3549 y FF(3)2791 3582 y FP(W)f(e)22 +b(can)i(also)g(use)382 3695 y(ranges)f(on)e(the)h(left)g(side)p +FQ(:)34 b FP(for)21 b(e)o(xample)p FQ(,)i Fu(\022a\015-\022k\015)c +FP(means)j FQ(l)p FP(all)g(characters)i(between)e(a)f(and)382 +3808 y(k)p FQ(m.)523 3921 y FP(By)d(using)i(parentheses)i(and)d(the)g +(v)o(ertical)h(bar)f(on)g(the)g(left)g(side)p FQ(,)h +FP(we)e(obtain)i(the)f(Boolean)382 4034 y FQ(h)p FP(or)p +FQ(i)24 b FP(operator)p FQ(:)382 4227 y Fu(\(\022E\015|\022e\015\))h +(=>)h(;)382 4421 y FP(for)c(e)o(xample)p FQ(,)h FP(will)f(send)h(both)g +(uppercase)i(and)e(lo)n(wercase)g(letters)h FQ(h)p FP(e)p +FQ(i)e FP(to)g(nothing)j FQ(\()p FP(a)d(trans)p FQ(-)382 +4534 y FP(formation)j(which)f(w)o(ould)g(lea)n(v)o(e)h(Perec)p +FQ(i)-5 b FP(s)24 b(book)g FG(La)f(disparition)k FP(unchanged)2889 +4501 y FF(4)2930 4534 y FQ(\).)523 4647 y FP(This)20 +b(operator)i(becomes)f(e)n(v)o(en)f(more)g(useful)i(by)e(the)g(f)o(act) +g(that)h(we)e(can)h(use)h(on)f(the)g(right)382 4760 y(side)f(the)g(e)o +(xact)g(character)h(matched)g(on)e(the)h(left)g(side)p +FQ(:)32 b FP(the)18 b(commands)i Fu(\\1)p FQ(,)e Fu(\\2)p +FQ(,)f(...)31 b(,)18 b Fu(\\9)f FP(used)382 4873 y(on)26 +b(the)g(right)h(side)f(stand)h(for)g(the)f(\315rst)p +FQ(,)g FP(second)p FQ(,)h(...,)e FP(ninth)i(character)h(matched)f(on)f +(the)h(left)382 4985 y(side)p FQ(.)34 b FP(F)o(or)23 +b(e)o(xample)p FQ(:)p 382 5041 1196 4 v 487 5096 a Fi(3)516 +5128 y FJ(By)e(this)g(we)g(obtain)h(the)f(same)g(result)g(as)g(in)g(T) +1738 5144 y(E)1773 5128 y(X)g(b)o(ut)g(without)g(turning)h(tilde)e +(into)h(an)h(acti)n(v)o(e)f(character)m FK(,)h FJ(a)382 +5219 y(f)o(act)d(that)g(T)677 5236 y(E)712 5219 y(X)g(users)g(will)f +(surely)h(appreciate)p FK(.)487 5280 y Fi(4)516 5312 +y FJ(Although)j(there)f(are)f(rumors)i(that)e(there)h(is)f(a)h(single)f +FK(h)p FJ(e)p FK(i)h FJ(in)f(that)h(book)p FK(...)32 +b FJ(The)21 b(authors)g(were)g(not)g(able)g(to)382 5403 +y(\315nd)e(it)f(yet)p FK(.)1831 5652 y FQ(75)p eop end +%%Page: 76 14 +TeXDict begin 76 13 bop 382 548 a Fu +(\022c\015\(\022a\015|\022e\015|\022i\015|\022o\015|\022u\015\))o +(\022t\015)21 b(=>)27 b("m")f(\\1)h("p")f(;)382 754 y +FP(will)d(send)h(cat)p FQ(,)g FP(cet)p FQ(,)f FP(cit)p +FQ(,)h FP(cot)p FQ(,)f FP(cut)h(respecti)n(v)o(ely)i(to)e(map)p +FQ(,)f FP(mep)p FQ(,)g FP(mip)p FQ(,)g FP(mop)p FQ(,)g +FP(mup)p FQ(.)523 867 y FP(W)-7 b(e)21 b(can)g(go)h(e)n(v)o(en)f +(further)p FQ(:)35 b FO(W)p FP(TP)19 b(syntax)k(allo)n(ws)f(us)f(to)g +(add)h(or)g(substract)h(a)e(\315x)o(ed)g(o\314set)382 +980 y(to)i(the)h(characters)i(matched)f(on)f(the)g(left)f(side)p +FQ(.)34 b FP(F)o(or)23 b(e)o(xample)p FQ(:)382 1186 y +Fu(\022a\015-\022z\015)i(=>)i(#\(\\1)f(-)h(@"0020\))f(;)382 +1393 y FP(will)21 b(substract)i FQ(20)e FP(from)g(the)g(code)h +(position)h(of)e(the)h(character)h(found)f(on)f(the)h(left)f(side)p +FQ(.)33 b FP(The)382 1506 y(characters)20 b(on)d(the)g(left)g(side)h +(being)g(precisely)i(lo)n(wercase)e(letters)p FQ(,)h +FP(this)f(o\314set)g(will)e(turn)i(them)382 1618 y(into)24 +b(uppercase)i(ones)p FQ(.)382 1863 y Fp(6.2.1)92 b Fo(Examples)382 +2038 y FP(The)21 b(be)o(ginning)i(of)e(the)h FO(W)p FP(TP)d +Fu(7arb2uni)p FQ(,)f FP(used)k(to)f(send)h(the)g(ASCII)d(transcription) +25 b(of)c(Ara)p FQ(-)382 2150 y FP(bic)j(to)f(Unicode)p +FQ(++,)i FP(described)h(in)e FQ(5.2.1,)f FP(to)g(Unicode)p +FQ(++,)i FP(looks)g(lik)o(e)f(this)p FQ(:)382 2357 y +Fu(input:)i(1;)382 2470 y(output:)f(2;)382 2695 y(expressions:)382 +2921 y(\022L\015\022L\015\022a\015\022h\015)160 b(=>)27 +b(@"FDF2)f(;)382 3034 y(\022S\015\022L\015\022h\015)243 +b(=>)27 b(@"FDFA)e(;)382 3260 y(\022|\015\022|\015\022|\015\022|\015) +160 b(=>)27 b(@"0621)f(@"0651)f(;)382 3373 y(\022|\015\022|\015)326 +b(=>)26 b(@"0621)g(;)382 3486 y(\022z\015\022h\015\022z\015\022h\015) +160 b(=>)27 b(@"0698)f(@"0651)f(;)382 3599 y(\022z\015\022h\015)326 +b(=>)26 b(@"0698)g(;)382 3712 y(\022z\015\022z\015)326 +b(=>)26 b(@"0632)g(@"0651)g(;)382 3825 y(\022z\015)408 +b(=>)27 b(@"0632)f(;)382 3937 y(\022y\015\022y\015)326 +b(=>)26 b(@"064A)g(@"0651)g(;)382 4050 y(\022y\015)408 +b(=>)27 b(@"064A)f(;)382 4163 y(\022v\015\022v\015)326 +b(=>)26 b(@"06A4)g(@"0651)g(;)382 4276 y(\022v\015)408 +b(=>)27 b(@"06A4)f(;)382 4389 y(\022u\015\022N\015)326 +b(=>)26 b(@"064C)g(;)382 4502 y(\022u\015)408 b(=>)27 +b(@"064F)f(;)523 4708 y FP(Let)35 b(us)g(tak)o(e)h(a)f(closer)h(look)g +(at)f(these)h(lines)p FQ(.)70 b FP(The)34 b(left)i(sides)g +Fu(\022L\015\022L\015\022a\015\022h\015)31 b FP(and)382 +4839 y Fu(\022S\015\022L\015\022h\015)26 b FP(correspond)32 +b(to)d(the)h FQ(\()p FP(religious)p FQ(\))i FP(ligatures)f +FB(>)d FP(and)h Fz(P)f FP(which)i(appear)h(in)e(the)382 +4951 y FG(Ar)o(abic)23 b(Pr)m(esentation)j(F)-10 b(orms)23 +b FP(part)h(of)f(Unicode)p FQ(,)h FP(that)p FQ(i)-5 b +FP(s)25 b(why)d(the)i(code)g(positions)i(we)c(send)382 +5064 y(them)k(to)f(are)h(so)g(high)p FQ(.)40 b FP(The)25 +b(line)i Fu(\022|\015\022|\015\022|\015\022|\015)21 b +FP(corresponds)29 b(to)d(a)f(double)i(hamza)p FQ(;)h +FP(ac)p FQ(-)382 5177 y FP(cording)g(to)f(our)g(transcription)j(rules)p +FQ(,)e FP(by)f(writing)g(a)g(letter)p FQ(i)-5 b FP(s)28 +b(transcription)i(twice)d(without)382 5290 y(intermediate)22 +b(hyphen)p FQ(,)f FP(we)e(get)g(the)h(letter)g(follo)n(wed)h(by)e(a)g +FG(shaddah)j FP(diacritic)p FQ(.)34 b FP(On)18 b(the)i(right)382 +5403 y(side)25 b(of)f Fu(\022|\015\022|\015\022|\015\022|\015)c +FP(you)25 b(see)f(tw)o(o)g(codes)p FQ(:)36 b(0621)25 +b FP(stands)h(for)f(the)f(stand)p FQ(-)p FP(alone)j(hamza)1831 +5652 y FQ(76)p eop end +%%Page: 77 15 +TeXDict begin 77 14 bop 382 548 a FP(in)25 b(Unicode)p +FQ(++,)j FP(and)d FQ(0651)i FP(for)e(the)h FG(shaddah)p +FQ(.)41 b FP(The)25 b(ne)o(xt)h(line)g(will)f(send)h +Fu(||)e FP(to)i(the)g(stand)p FQ(-)382 661 y FP(alone)f(hamza)p +FQ(.)523 774 y FP(W)-11 b(ARNING)p FQ(:)34 b FP(the)i(order)h(of)f +(these)i(lines)f(is)f(v)o(ery)g(important)p FQ(:)61 b +FP(transformations)40 b(are)382 887 y(matched)29 b(in)g(the)f(order)i +(lines)f(are)g(read)p FQ(.)48 b FP(By)28 b(putting)i(the)f(double)h +(hamza)f(before)h(the)e(sin)p FQ(-)382 1000 y FP(gle)h(one)p +FQ(,)g FO(W)f FP(will)g(\315rst)g(look)h(for)g(a)f(double)i(hamza)f +(and)g FG(only)g(if)f(it)g(does)i(not)e(\315nd)h(any)g +FP(will)382 1112 y(then)24 b(proceed)i(to)d(transforming)j(a)e(single)g +(one)p FQ(.)523 1225 y FP(F)o(or)f(the)h(same)f(reason)i(digraphs)h +(such)f(as)e Fu(zh)g FP(must)g(appear)j(before)f(their)f(\315rst)f +(letter)i(in)382 1338 y(the)f FO(W)p FP(TP)f(\315le)h +FQ(\()p FP(and)h(trigraphs)h(before)g(the)f(starting)h(digraph)p +FQ(,)g FP(etc)p FQ(.\).)36 b FP(That)p FQ(i)-5 b FP(s)25 +b(why)e(the)i(order)382 1451 y(of)e(lines)i(starting)g(with)f(a)f +FQ(h)p FP(z)p FQ(i)g FP(is)h FQ(h)p FP(zhzh)p FQ(i,)g(h)p +FP(zh)p FQ(i,)g(h)p FP(zz)p FQ(i,)g(h)p FP(z)p FQ(i.)2204 +1418 y FF(5)523 1564 y FP(Our)f(sample)h(\315le)f(ends)i(lik)o(e)f +(this)p FQ(:)382 1771 y Fu(\022h\015\022h\015)107 b(=>)27 +b(#\(@"0647\))e(#\(@"0651\))g(;)382 1884 y(\022h\015)190 +b(=>)27 b(#\(@"0647\))e(;)382 1997 y(\022-\015\022-\015\022-\015)g(=>)h +(@"2014;)382 2110 y(\022-\015)190 b(=>)54 b(;)382 2223 +y(.)245 b(=>)27 b(#\(\\1\))f(;)523 2430 y FP(This)c(means)g(that)g +(after)g(ha)n(ving)i(entered)f(all)f(digraphs)i(using)f +FQ(h)p FP(h)p FQ(i)f FP(as)f(second)j(character)l FQ(,)382 +2543 y FP(we)e(enter)j(the)f(stand)p FQ(-)p FP(alone)i +FQ(h)p FP(h)p FQ(i,)e FP(\315rst)f(as)g(a)g(double)i(letter)l +FQ(,)f FP(and)g(secondly)i(as)d(a)g(single)i(letter)-5 +b FQ(.)382 2656 y FP(Finally)23 b(we)f(send)h(the)f(triple)i(hyphen)g +(to)e(an)g(m)p FQ(-)p FP(dash)i FQ(hui)e FP(and)g(the)h(single)h +(hyphen)g(to)e(noth)p FQ(-)382 2769 y FP(ing)p FQ(:)36 +b FP(its)25 b(purpose)i(is)d(to)h(pre)n(v)o(ent)h(combinations)h(of)e +(letters)h(to)e(be)h(interpreted)j(as)c(digraphs)p FQ(:)382 +2882 y FP(when)f(reading)h Fu(k-h)p FQ(,)d FO(W)h FP(will)g(not)h +(match)g(it)f(with)g Fu(kh)p FQ(:)33 b FP(it)22 b(will)g(\315rst)g +(match)h Fu(k)f FP(with)g(letter)i(kaf)p FQ(,)382 2994 +y FP(then)d(send)f(the)g(hyphen)i(to)e(the)g(v)n(acuum)g(of)g(non)p +FQ(-)p FP(e)o(xistence)k(and)c(when)g(arri)n(ving)i(to)e(the)g +Fu(h)f FP(the)382 3107 y Fu(k)j FP(will)i(already)h(be)e(matched)i(so)f +(that)g(it)f(is)g(too)h(late)g(to)g(construct)i(a)d Fu(kh)f +FP(digraph)p FQ(.)523 3220 y FP(The)k(period)i(at)e(the)h(be)o(ginning) +i(of)d(the)h(last)g(line)g(is)f(part)h(of)f(the)h FO(W)p +FP(TP)e(syntax)j(we)d(ha)n(v)o(e)382 3333 y(not)f(seen)h(yet)p +FQ(:)36 b FP(it)24 b(means)h FQ(h)p FP(an)o(y)f(character)p +FQ(i.)38 b FP(Since)24 b(this)h(is)f(the)h(last)f(line)h(of)f(the)h +(\315le)p FQ(,)e FP(we)h(can)382 3446 y(interpret)h(it)e(rather)h(lik)o +(e)f FQ(h)p FP(an)o(y)h(still)f(not)h(matched)g(character)p +FQ(i.)36 b FP(This)22 b(line)i(simply)g(sends)g(an)o(y)382 +3559 y(character)i(not)e(yet)f(matched)i(to)f(itself)p +FQ(.)382 3807 y Fs(6.3)99 b Fr(Wrapping)25 b(it)g(up)382 +3982 y FP(Once)h(the)h FO(W)p FP(TP)e(\315le)h(has)h(been)g(written)h +(or)e(modi\315ed)p FQ(,)i FP(one)f(only)g(needs)h(to)f(compile)g(it)g +FQ(\()p FP(by)382 4095 y(using)j(the)g Fu(otp2ocp)c FP(utility)p +FQ(\))31 b FP(and)f(place)g(it)f(where)h FO(W)e FP(e)o(xpects)j(to)e +(\315nd)g(it)p FQ(.)50 b FP(On)29 b(the)g(L)3186 4079 +y FE(A)3220 4095 y FP(T)3261 4115 y(E)3305 4095 y(X)382 +4207 y(command)22 b(le)n(v)o(el)p FQ(,)f FO(W)p FP(TPs)f(are)h(loaded)i +(via)e(the)g Fu(\\ocp)e FP(command)p FQ(,)j FP(in)f(a)g(w)o(ay)g +(similar)h(to)f(fonts)p FQ(:)382 4320 y FP(to)i(load)i(the)e(\315le)g +Fu(foo2uni)e FP(one)j(will)f(write)382 4527 y Fu(\\ocp\\FooUni=foo2uni) +523 4734 y FP(Of)h(course)i(this)g(is)e(preferably)k(done)e(inside)g(a) +e(L)2071 4719 y FE(A)2105 4734 y FP(T)2146 4755 y(E)2190 +4734 y(X)g(package)j(or)d(style)i(\315le)p FQ(:)36 b +FP(the)25 b(\315nal)382 4847 y(user)g(should)i(not)e(need)h(to)e(deal)i +(with)e(or)h(understand)j(this)d(kind)h(of)f(code)p FQ(.)38 +b FP(Once)24 b(the)h FO(W)p FP(TPs)382 4960 y(are)j(loaded)i(the)o(y)e +(are)h(combined)g(into)g FG(lists)p FQ(.)48 b FP(In)28 +b(this)g(w)o(ay)g(we)g(can)g(push)h(or)f(pop)h(simulta)p +FQ(-)382 5073 y FP(neously)h FO(W)p FP(TPs)d(on)p FQ(/)p +FP(from)i(a)f(stack)p FQ(.)48 b FP(This)28 b(is)g(useful)i(because)g(a) +e(language)i(switch)f(usually)p 382 5133 1196 4 v 487 +5189 a Fi(5)516 5220 y FJ(There)21 b(is)e(a)i(simple)f(w)o(ay)h(of)f(a) +o(v)o(oiding)g(ordering)h(problems)p FK(:)31 b FJ(after)20 +b(ha)o(ving)h(written)e(this)h(part)g(of)h(the)f FI(W)p +FJ(TP)382 5312 y(\315le)p FK(,)c FJ(run)h(a)g(line)g(sorting)g(program) +g(on)h(it)e(so)h(that)f(lines)h(are)g(sorted)g(in)g Fg(in)m(ver)o(se)g +FJ(le)o(xicographical)i(order)l FK(.)26 b FJ(This)16 +b(will)382 5403 y(automatically)j(place)h(trigraphs)f(before)h +(digraphs)g(before)f(singletons)p FK(,)g FJ(etc)p FK(.)1831 +5652 y FQ(77)p eop end +%%Page: 78 16 +TeXDict begin 78 15 bop 382 548 a FP(requires)29 b(se)n(v)o(eral)e +FO(W)p FP(TPs)f(to)g(be)h(changed)i(at)d(once)p FQ(.)44 +b FP(T)-7 b(o)26 b(de\315ne)h FO(W)p FP(TP)e(lists)i(we)f(use)h(the)g +(fol)p FQ(-)382 661 y FP(lo)n(wing)d(syntax)p FQ(:)382 +873 y Fu(\\ocplist\\ArabicOCP=)382 986 y(\\addbeforeocplist)f(100)j +(\\ArabUni)382 1099 y(\\addbeforeocplist)d(200)j(\\UniCUni)382 +1212 y(\\addbeforeocplist)d(300)j(\\CUniArab)382 1325 +y(\\nullocplist)523 1538 y FP(The)f(numbers)i FQ(\(100,)g(200,)f(300\)) +h FP(allo)n(w)e(us)h(to)f(introduce)j(additional)h FO(W)p +FP(TPs)p FQ(,)24 b FP(if)i(neces)p FQ(-)382 1650 y FP(sary)-6 +b FQ(,)22 b FP(between)g(the)f(already)i(de\315ned)f(ones)p +FQ(.)33 b FP(Finally)-6 b FQ(,)23 b FP(to)e(acti)n(v)n(ate)p +FQ(/)p FP(desacti)n(v)n(ate)26 b(an)21 b FO(W)p FP(TP)e(list)p +FQ(,)382 1763 y FP(we)k(use)h(the)g(commands)h Fu(\\pushocplist)20 +b FQ(\()p FP(follo)n(wed)25 b(by)f(the)g(name)g(of)g(the)g +FO(W)p FP(TP)e(list)p FQ(\))i FP(and)382 1876 y Fu(\\popocplist)p +FQ(.)29 b FP(T)-7 b(o)23 b(tak)o(e)h(a)f(real)h(life)g(e)o(xample)p +FQ(,)382 2089 y Fu(\\ocp\\ArabUni=7arb2uni)382 2202 y +(\\ocp\\UniCUni=uni2cuni)382 2315 y(\\ocp\\CUniArab=cuni2oar)382 +2428 y(\\ocplist\\ArabicOCP=)382 2540 y(\\addbeforeocplist)f(100)j +(\\ArabUni)382 2653 y(\\addbeforeocplist)d(200)j(\\UniCUni)382 +2766 y(\\addbeforeocplist)d(300)j(\\CUniArab)382 2879 +y(\\nullocplist)382 2992 y(\\pushocplist\\ArabicOCP)382 +3205 y FP(is)d(su\317cient)i(to)f(load)g(all)g FO(W)p +FP(TPs)e(necessary)k(for)e(typesetting)i(in)e(the)g(Arabic)g(language)p +FQ(.)382 3497 y FT(7)119 b FS(A)-12 b(v)o(ailability)31 +b(and)f(Further)h(Inf)m(ormation)382 3704 y FP(The)23 +b FO(W)g FP(system)i(is)f(entirely)h(in)f(the)g(public)i(domain)p +FQ(.)35 b FP(It)24 b(can)g(be)g(obtained)i(from)e(an)o(y)g(CT)-8 +b(AN)382 3817 y(serv)o(er)j FQ(.)46 b FP(The)27 b(latest)h(information) +i(on)d FO(W)g FP(and)h(its)f(Arabic)h(system)g(can)g(be)f(found)i(on)e +(the)h FO(W)382 3930 y FP(serv)o(er)p FQ(:)1327 4156 +y Fu(http://www.ens.fr/omega)382 4323 y FP(courtesy)e(of)d(the)954 +4301 y FQ(\241)945 4323 y FP(Ecole)h(Normale)f(Sup)1658 +4319 y FQ(\241)1656 4323 y FP(erieure)j(de)e(P)o(aris)p +FQ(.)382 4615 y FT(8)119 b FS(Samples)382 4822 y FP(Starting)27 +b(from)e(ne)o(xt)h(page)p FQ(,)h FP(a)e(fe)n(w)f(samples)j +FQ(\()p FP(Arabic)p FQ(,)g FP(Berber)l FQ(,)f FP(Sindhi)p +FQ(\).)41 b FP(F)o(or)24 b(these)j(e)o(xam)p FQ(-)382 +4935 y FP(ples)c(we)f(ha)n(v)o(e)i(switched)g(the)f(background)k +(language)e(to)e(Arabic)p FQ(,)g FP(so)g(that)g(e)n(v)o(en)g(page)h +(num)p FQ(-)382 5048 y FP(bers)g(are)g(in)f(Arabic)p +FQ(.)1831 5652 y(78)p eop end +%%Page: 79 17 +TeXDict begin 79 16 bop 3236 548 a Fc(8)p Fs(.)12 b Fc(1)-272 +b(c)-87 b(\243)-96 b(\264)-67 b(n)-77 b(\276)-127 b(m)-52 +b(\277)-66 b(\260)-72 b(n)-59 b(p)-65 b(t)3338 723 y +FB(\273)d(n)-76 b(\316)-152 b(\304)-104 b(\203)-93 b(\213)-119 +b(m)-61 b(\337)-55 b(\300)-60 b(\330)-93 b(\272)-136 +b(m)-48 b(\277)-56 b(\270)-72 b(\213)-77 b(\313)-67 b(n)-56 +b(`)-111 b(c)-83 b(\207)-125 b(x)-151 b(v)-66 b(\254)g(\333)-111 +b(\231)-179 b(\313)-79 b(\254)-71 b(\326)-165 b Fz(\221)-78 +b(\223)-90 b FB(\267)-109 b(\234)e(\217)-69 b(\322)j(!)-107 +b(p)-66 b(\254)-76 b(\213)-119 b(c)-76 b(\316)-144 b(\313)-67 +b(n)-54 b(v)-96 b(x)-161 b(\220)-76 b(\327)-95 b(~)-83 +b(w)-59 b(\326)-66 b(!)-119 b(\327)-66 b(v)i(\217)-78 +b(\273)-110 b(x)-145 b(\277)-53 b(\326)3339 836 y(\313)-89 +b(\321)-124 b(m)-75 b(\304)-87 b(\327)g(\310)i(\212)-112 +b(z)-81 b(\311)g(z)-59 b(t)-69 b FQ(:)-112 b FB(c)-67 +b(\313)g(\333)j(\217)g(\332)-76 b(\321)-136 b(\327)-66 +b(c)f(\313)g(\333)j(\217)-69 b(s)j FQ(.)-124 b FB(\327)-74 +b(\267)i(\213)-112 b(m)-64 b(\220)-74 b(\212)-64 b(m)g(\212)-141 +b(\203)-125 b(r)-69 b(K)-75 b(m)-61 b(\337)-55 b(\300)-75 +b(\275)-150 b(\304)-87 b(\327)g(\310)i(\212)-69 b(\322)j(!)-98 +b(p)-66 b(\254)-76 b(\213)-124 b(\327)-74 b(\263)-62 +b(n)j(s)-119 b(\327)-66 b(m)-48 b(\277)-58 b(\213)-64 +b(v)e(\324)-76 b(\315)-112 b(m)-61 b(\337)-55 b(\300)-62 +b(\274)-73 b(t)-66 b(!)3340 949 y(\327)g(c)-83 b(\203)g(q)-27 +b(K)-39 b(\324)-76 b(\315)-136 b(\203)-83 b(q)-27 b(K)g(n)-111 +b(\273)-68 b({)-54 b(\333)-64 b(\217)g(m)g(")-90 b(\277)-48 +b(\333)-66 b(\254)-78 b(\330)-39 b(K)-78 b(\237)-117 +b(\324)-76 b(\315)-120 b(\313)-67 b(n)-105 b(\263)-70 +b(\270)e(\213)c(\327)-71 b(\322)-115 b(\313)-89 b(\321)-132 +b(\253)-93 b(\244)-125 b(\265)-142 b(c)-67 b(\313)-40 +b(K)h(\324)-76 b(\315)-119 b(\327)-95 b(\203)-83 b(q)-27 +b(K)-39 b(\324)-66 b(n)-91 b(\277)-60 b(\324)-76 b(\315)-71 +b(!)-106 b(\327)-66 b(v)k(\264)-76 b(\274)-68 b(\333)k(\217)-128 +b(\323)-75 b(n)-105 b(\263)-62 b(\333)c(\324)-76 b(\315)i(")-104 +b(\263)-76 b(\274)-68 b(n)-76 b(\316)3352 1062 y(\332)-95 +b(\224)g(d)-71 b(\276)-138 b(\253)-67 b(\320)h(\324)-76 +b(\315)-132 b(\273)-62 b(\300)-21 b(K)-40 b(\314)-67 +b(n)-137 b(\203)-131 b(\240)-112 b(\217)-71 b(!)-118 +b(\327)-66 b(\332)k(\264)-76 b(\274)-41 b(K)k(\217)-126 +b(\263)-62 b(\333)c(\324)-76 b(\315)-132 b(\273)-62 b(\300)-21 +b(K)-40 b(\314)-67 b(n)-118 b(\212)-93 b(\207)-100 b(\301)-78 +b(!)-118 b(\327)-66 b(\332)g(\330)-117 b(\233)-132 b(\334)d(p)-66 +b(\324)-76 b(\315)-132 b(\273)-62 b(\300)-21 b(K)-40 +b(\314)-67 b(n)-137 b(\207)-93 b(\217)i(})j(!)-118 b(\327)-66 +b(\332)-80 b(\244)-74 b(\300)-48 b(q)-66 b(\324)-76 b(\315)-132 +b(\273)-62 b(\300)-21 b(K)-40 b(\314)-67 b(n)3323 1175 +y(~)-77 b(\300)-105 b(\225)-150 b(\277)-48 b(w)-54 b(\320)g(n)-66 +b(\327)-83 b(\276)-142 b(\243)-92 b(\254)-66 b(n)i(\312)-109 +b(m)-75 b(\306)-83 b(\263)-88 b(\244)-80 b(n)-64 b(\216)-109 +b(c)-66 b(\327)-111 b(m)-48 b(\277)-60 b(\260)-76 b(\213)-64 +b(m)-56 b(`)-101 b(c)-66 b(\327)-111 b(m)-48 b(\277)-89 +b(\230)-68 b(K)-27 b(n)-86 b(\331)-131 b(c)-66 b(\327)-111 +b(m)-49 b(\277)-60 b(\254)-107 b(\230)-95 b(n)-56 b(`)-63 +b FQ(.)3198 1288 y FB(\313)-98 b(\204)-58 b(K)-40 b(\314)-72 +b(t)-103 b(c)-83 b(\207)g(\333)-66 b(\324)g(n)-119 b(\304)-87 +b(\327)g(\310)i(\212)-69 b(\322)j(!)-107 b(\327)-117 +b(\233)f(\314)-40 b(K)g(\314)-109 b(x)-148 b(\263)-62 +b(\333)-67 b(\314)g(n)-98 b(p)-54 b(\333)f(\320)-66 b(\324)g(n)-110 +b(\327)-66 b(p)-94 b Fz(\200)-67 b(\204\210)-72 b FB(\317)-62 +b(\264)-103 b(\224)c(\324)-66 b(n)-98 b(c)-76 b(\316)-120 +b(v)-66 b(\254)-80 b(\314)c(\301)-156 b(\223)-105 b(\217)-37 +b(K)-27 b(m)-112 b(\273)-85 b(\301)-44 b(K)-83 b(\327)-107 +b(\223)-95 b(\333)-49 b(\300)c(t)-116 b(\313)-81 b(\314)g(\274)-68 +b(\320)-59 b(t)3331 1401 y(\306)-75 b(p)-66 b(\254)g(n)i(\212)-85 +b(\323)g(\315)-122 b(\253)-89 b(\321)-121 b(c)-54 b(p)g(\333)-66 +b(\324)-76 b(\315)-121 b(\327)-66 b(m)-48 b(\277)g(w)-27 +b(K)-58 b(\210)-79 b(\300)-21 b(K)-103 b(\235)-183 b(\313)-67 +b(\320)h(\324)-76 b(\315)-71 b FQ(.)3199 1514 y FB(\327)-117 +b Fz(\221)-78 b(\223)c FB(\332)-66 b(\330)-76 b(\312)-132 +b(\313)-89 b(\321)-131 b(m)-75 b(\304)g(\332)-27 b(K)g(n)-64 +b(\312)-133 b(\273)-68 b(n)-76 b(\316)-131 b(m)-75 b(\304)-88 +b(\313)-67 b(\333)j(\217)g(m)-76 b(\316)-131 b(\332)-48 +b(\300)-60 b(\254)-66 b(q)-54 b(n)-76 b(\316)-145 b(\313)-83 +b(\255)-125 b(c)-83 b(\207)f(w)-66 b(\324)-79 b(\314)-67 +b(n)-109 b(m)-75 b(\304)-89 b(\313)-67 b(\333)j(\217)-69 +b(s)-166 b Fz(\221)-78 b(\223)-112 b FB(\203)-93 b(\213)-64 +b(m)-55 b(j)-77 b(\271)-132 b(m)-48 b(\277)-56 b(\270)-109 +b(\234)d(\217)-119 b(p)-67 b(\254)-76 b(\213)3323 1627 +y(\207)-93 b(\217)-76 b(\327)-93 b(})-126 b(m)-61 b(\337)-55 +b(\300)-75 b(\275)-88 b(!)-103 b(\263)g(\230)c(\330)-39 +b(K)k(\267)-62 b(w)c(\324)-76 b(\315)-122 b(\253)-80 +b(\314)-40 b(K)-27 b(w)-66 b(\324)-76 b(\315)-121 b(\327)-95 +b(\203)-83 b(q)-27 b(K)g(q)-96 b(x)-141 b(g)-48 b(\277)g(\333)-66 +b(\324)-76 b(\315)-109 b(m)-48 b(\277)-58 b(\215)-37 +b(K)-48 b(\323)-75 b(n)-102 b(o)-160 b(\313)-79 b(\254)h(\324)-66 +b(n)-99 b(g)g Fz(\260)-144 b FB(m)-48 b(\277)-60 b(\260)-66 +b(n)-54 b(p)-59 b(t)-98 b(\277)-42 b(\300)-21 b(K)-39 +b(\254)-66 b(n)-102 b(o)-155 b(\263)-62 b(\333)c(\324)g(n)-61 +b(!)-107 b(\327)-78 b(\327)f(\253)i(\213)-64 b(v)e(\324)-76 +b(\315)3352 1740 y(c)g(\316)-121 b(v)-64 b(\217)g(\332)e(\324)-76 +b(\315)-109 b(c)-95 b(\227)g(\333)-54 b(n)e(`)-130 b(~)-96 +b(\314)-67 b(\333)-48 b(\300)-53 b(t)-116 b(\327)-66 +b(c)-48 b(\277)-60 b(\254)-66 b(n)-54 b(p)g(n)-93 b(\277)-58 +b(\215)-64 b(\332)g(\215)-70 b(s)-145 b(\223)-95 b(n)-64 +b(\216)-37 b(K)-32 b(s)-105 b(v)-86 b(\204)-127 b(x)-141 +b(m)-75 b(\304)-116 b(\227)-127 b(\200)-85 b(n)-64 b(\216)-130 +b(\323)-75 b(\320)-54 b(n)-81 b(\272)-88 b FQ(.)3203 +1853 y FB(\263)-109 b(\234)e(\213)-37 b(K)-50 b(\266)-119 +b(m)-75 b(\304)-88 b(\313)-67 b(\333)j(\217)g(m)-76 b(\316)-130 +b(\327)-66 b(m)-75 b(\304)-88 b(\313)-67 b(\333)j(\217)-69 +b(s)-114 b(\313)-67 b(n)-104 b(\267)-62 b(n)-48 b(\277)g(w)-59 +b(\326)-114 b(\253)-80 b(\314)-40 b(K)-27 b(w)-66 b(\324)-76 +b(\315)-71 b(!)-105 b(\327)-77 b Fz(\235)-106 b FB(\332)-67 +b(\254)-76 b(\217)k(\263)e(\330)-66 b(m)-109 b(\313)-67 +b(n)-96 b(v)-86 b(\210)-93 b(\264)-62 b(\333)j(\326)-114 +b(\253)-67 b(\320)h(\324)-76 b(\315)-120 b(\313)-89 b(\321)-118 +b(m)-49 b(\277)-89 b(\230)-68 b(K)-37 b(\217)g(K)j(!)-105 +b(\327)-77 b(\214)-85 b(\323)-75 b(q)-66 b(\330)g(m)3339 +1965 y(\313)-79 b(\254)h(\324)-66 b(n)-106 b(\277)-42 +b(\300)-21 b(K)-39 b(\254)-108 b(r)-166 b(\327)-66 b(m)-48 +b(\277)-58 b(\217)-37 b(K)-27 b(\332)-54 b(n)-105 b(\237)-110 +b(t)-168 b Fz(\221)-78 b(\223)-85 b FB(c)-48 b(\277)-60 +b(\260)-66 b(n)-54 b(p)-59 b(t)-66 b(!)-123 b(\327)-79 +b(\313)-108 b(\230)-95 b(n)-75 b(\323)-85 b(\213)-69 +b(s)-117 b(m)-75 b(\304)-116 b(\227)-95 b(n)-56 b(`)-114 +b(m)-83 b Fz(\243)-56 b(\247)-40 b FB(\314)-67 b(\333)-48 +b(\300)-53 b(t)-125 b(\263)-62 b(\333)c(\324)g(n)-61 +b(!)-123 b(\327)-76 b(\216)g(e)-66 b(\332)-59 b(t)-117 +b(m)-75 b(\304)-69 b(\277)-60 b(\254)-66 b(n)-102 b(o)-160 +b(m)-48 b(\277)-60 b(\260)-76 b(\217)-64 b(\332)-54 b(q)-59 +b(t)3352 2078 y(v)-85 b(\204)-127 b(x)-141 b(c)-95 b(\227)-126 +b(\200)-85 b(n)-64 b(\216)-85 b(\323)-75 b(n)-61 b FQ(.)3199 +2191 y FB(\327)-74 b(\267)i(\213)-150 b(\227)-107 b(\254)-76 +b(\217)-109 b(m)-75 b(\304)-101 b(\243)-88 b(\264)-62 +b(n)-71 b(\276)-116 b(p)-95 b(\224)-105 b(\217)-76 b(\327)g(\216)-123 +b(\273)-68 b({)-54 b(\333)-64 b(\217)-122 b(\253)-67 +b(\320)j(\213)-122 b(\313)-67 b(n)-83 b(\207)-93 b(\217)g(~)e(\330)-66 +b(m)-112 b(\313)-84 b(\255)-128 b(\253)-80 b(\314)-40 +b(K)-28 b(w)-66 b(\324)-76 b(\315)-104 b(\277)-60 b(\324)-76 +b(\215)-69 b(\322)-104 b(m)-49 b(\277)-58 b(\217)-37 +b(K)-56 b(\203)-78 b(\300)-53 b(t)-66 b FQ(.)-117 b FB(\327)-66 +b(c)-83 b(\207)-94 b(\215)-76 b(\327)-66 b(m)-99 b(\332)-68 +b(\314)-108 b(\230)h(\330)-88 b(\316)3339 2304 y(\313)-79 +b(\254)h(\324)-66 b(n)-158 b Fz(\221)-78 b(\223)e FB(m)-48 +b(\277)-60 b(\260)-66 b(n)-54 b(p)-59 b(t)-141 b(\203)-83 +b(w)-27 b(K)-54 b(\334)-146 b(\327)-117 b(\233)-99 b(\300)-60 +b(\330)-66 b(m)-107 b(g)-99 b Fz(\260)-164 b FB(\327)-107 +b(\223)-121 b(\244)-92 b(\324)-66 b(n)-61 b(!)-112 b(\263)-62 +b(d)-83 b(\203)-124 b(\224)-68 b(K)-39 b(\330)-66 b(m)-107 +b(p)-54 b(n)-48 b(\277)g(w)-27 b(K)-39 b(\254)-108 b(r)-149 +b(m)-48 b(\277)-89 b(\230)-68 b(K)-37 b(\213)-64 b(\332)g(\213)-71 +b(!)-116 b(\327)-92 b(\243)g(\324)-76 b(\217)-112 b(u)-168 +b(\253)-94 b(\311)g(\313)-67 b(n)-54 b(v)-59 b(\326)-163 +b Fz(\221)-78 b(\223)3339 2417 y FB(\313)-108 b(\230)-95 +b(\333)-54 b(w)-66 b(\324)-76 b(\315)-71 b(!)-116 b(\327)-79 +b(\253)-101 b Fz(\262)-152 b FB(\327)-95 b(~)g(\330)-87 +b(\323)g(\324)-76 b(\315)-116 b(p)-66 b(\254)-76 b(\213)-137 +b(\323)-85 b(\215)-69 b(\322)-111 b(m)-48 b(\277)-58 +b(\217)-37 b(K)-57 b(\203)-77 b(\300)-53 b(t)-111 b(m)-48 +b(\277)-74 b(\244)-53 b(K)-39 b(\330)-66 b(\332)-49 b(\300)c(t)-111 +b(m)-61 b(\337)g(w)-66 b(\254)f(q)-59 b(t)-111 b(m)-48 +b(\277)-21 b(K)-27 b(w)-81 b(\334)-144 b Fz(\235)-116 +b FB(\332)-86 b(\200)-95 b(\217)-37 b(K)-27 b(p)-66 b(\330)-87 +b(\323)-75 b(n)-119 b(\313)-89 b(\321)-137 b(\267)-62 +b(q)-71 b(\301)-78 b FQ(.)-138 b FB(\327)-73 b(\337)-61 +b(n)-54 b(m)3311 2530 y(\227)-107 b(\254)-76 b(\217)-112 +b(u)-143 b(m)-48 b(\277)-60 b(\254)-79 b(\314)-40 b(K)-32 +b(t)-100 b(p)-95 b(\230)-105 b(\213)-37 b(K)-32 b(s)-100 +b(v)-66 b(\254)g(q)g(\324)-76 b(\315)-71 b(!)-100 b(\267)-62 +b(n)-48 b(\277)-90 b(x)-131 b(\277)-60 b(\324)-77 b(\315)j +FQ(:)-106 b FB(\317)-54 b(n)-67 b(\313)-79 b(\330)-66 +b(m)-116 b(\323)-75 b(\320)-54 b(n)-95 b(v)-85 b(\204)-127 +b(x)-159 b(\323)-85 b(\215)-69 b(\322)-101 b(m)-48 b(\277)-89 +b(\230)-68 b(K)-58 b(\200)-96 b(\217)-69 b(s)-130 b(\203)-83 +b(w)-27 b(K)-54 b(\334)-122 b(v)-86 b(\204)-133 b(\240)-112 +b(\217)-105 b(m)-84 b Fz(\243)-95 b FB(\330)-76 b(\216)-64 +b(\332)-27 b(K)g(n)-102 b(u)3358 2643 y(\277)-48 b(w)g(\300)-60 +b(\254)-108 b(r)-141 b(c)-67 b(\313)g(n)g(\313)-81 b(\274)j(\315)-109 +b(c)-48 b(\277)-60 b(\254)-66 b(n)-54 b(p)g(n)-109 b +Fz(\235)g FB(v)-64 b(\217)-76 b(\327)-87 b(\323)-75 b(n)-61 +b(!)-107 b(\327)g(\223)-95 b(w)-86 b(\200)-95 b(\213)-76 +b(\327)-88 b(\316)-173 b Fz(\221)-78 b(\223)-86 b FB(\313)-108 +b(\230)-95 b(n)-75 b(\323)-85 b(\213)-64 b(v)e(\324)g(n)-113 +b(\273)-85 b(\301)-44 b(K)-66 b(\277)-59 b(\215)-37 b(K)-32 +b(s)-117 b(\327)-107 b(\223)i(\217)-76 b(\327)f(\216)-71 +b FQ(.)3236 2895 y Fc(8)p Fs(.)12 b Fc(2)-272 b(m)-82 +b(\310)-23 b(K)-78 b(\276)-163 b(\335)-158 b(\327)-117 +b(\223)-112 b(\270)-79 b(\213)-133 b(\226)-196 b(\316)-134 +b(\332)-112 b(\240)-123 b(\217)-71 b(\332)-104 b(\224)-128 +b(\321)-185 b Fq(W)-172 b Fc(\212)-71 b(v)-59 b(n)-73 +b(\313)g(n)j(\220)f(\332)e(\260)-119 b(x)3352 3070 y +FB(m)-110 b(\212)-37 b(K)-73 b(\317)-95 b(\224)-68 b(K)-41 +b(\274)-90 b(\321)-179 b(\222)-169 b(\327)-66 b(m)-54 +b(\332)-111 b(\225)-157 b(\332)-27 b(K)-72 b(\265)-157 +b(\327)-107 b(\223)k(\270)-72 b(\213)-121 b(\226)-179 +b(\316)-164 b FO(W)-174 b FB(\335)-132 b(v)-54 b(\333)-64 +b(\217)g(m)-157 b(\222)g(v)-66 b(\330)g(v)-81 b(\311)g(\332)-96 +b(x)-142 b(v)-54 b(n)-67 b(\313)g(n)j(\220)g(\332)e(\260)-108 +b(x)-103 b(!)-96 b(m)-67 b(\313)g(n)-157 b(\222)g(v)-54 +b(\333)-62 b(\264)g(\333)-54 b(\320)g(n)-81 b(\256)-88 +b(!)3352 3183 y(m)-67 b(\313)g(n)-176 b(\222)g(\332)-95 +b(\224)-109 b(\274)-41 b(K)-27 b(\333)-48 b(\300)-70 +b(\321)-141 b(\332)-81 b(\311)-107 b(\243)-80 b(n)-54 +b(\317)g(\333)-27 b(K)-49 b(\321)-83 b FQ(.)-164 b FB(\317)-66 +b(\330)-39 b(K)-27 b(\332)-64 b(\213)-37 b(K)-92 b(v)-54 +b(n)-67 b(\313)g(n)j(\220)g(\332)e(\260)-108 b(x)-161 +b(m)-64 b(\312)-71 b(!)-120 b(v)-66 b(\330)g(v)-81 b(\311)g(\332)-96 +b(x)-161 b(\332)-64 b(\213)-37 b(K)g(\216)-86 b(\316)-145 +b FQ(\))-68 b FB(\332)-54 b(w)-27 b(K)-39 b(\330)-66 +b(m)i(\216)-76 b(\327)-88 b(\316)-198 b(\222)-176 b(v)-54 +b(\333)-62 b(\264)g(\333)-54 b(\320)g(n)-81 b(\256)3352 +3296 y(v)-54 b(\333)-27 b(K)g(\320)-54 b(n)g(\332)-27 +b(K)-49 b(\321)-91 b FQ(\()-123 b(:)-128 b FB(\332)-64 +b(\221)-77 b(\313)g(\217)-132 b(\327)-79 b(\313)i(\213)-64 +b(m)-76 b(\316)-132 b(m)-64 b(\212)-120 b(\332)-95 b(\224)-105 +b(\213)-37 b(K)e(\327)-122 b(\332)-54 b(n)-71 b(\276)-44 +b(K)-83 b(v)-54 b(\333)-66 b(\260)-78 b(\330)i(\216)-64 +b(m)-132 b(\316)-144 b(\327)-107 b(\223)g(\330)-76 b(\212)-37 +b(K)-84 b(\222)-189 b(\316)-132 b(v)-54 b(\333)-64 b(\217)g(m)j(!)-140 +b(\335)-154 b(\327)-66 b(m)i(\216)g(m)-54 b(v)-76 b(\321)-144 +b(\327)-107 b(\223)-68 b(K)-27 b(\320)-54 b(n)g(\317)-76 +b(\321)-83 b(!)3352 3409 y(\332)-54 b(w)-68 b(\274)g(\320)-54 +b(\333)-68 b(\274)-90 b(\321)-121 b(\317)-70 b(\261)-147 +b(\335)k(\327)-66 b(\332)i(\213)-131 b(\316)-121 b(v)-95 +b(\224)g(\333)-68 b(\274)-41 b(K)-54 b(\311)-88 b(!)-95 +b(m)-64 b(\312)-121 b(\327)-66 b(\332)i(\213)-151 b(\223)-68 +b(K)-58 b(\210)-95 b(\213)-64 b(m)c(\313)-89 b(\321)-153 +b(\335)-144 b(\327)-107 b(\223)f(\314)g(\224)-95 b(n)-64 +b(\216)-76 b(\327)-134 b(\316)-121 b(v)-62 b(\264)-72 +b(\217)-64 b(m)-54 b(\317)-95 b(\224)f(\333)h(\224)-137 +b(x)-103 b FQ(.)3169 3522 y FO(W)g FB(!)-115 b(\212)e(m)-67 +b(\313)-108 b(\224)-122 b(\311)-113 b(\335)-161 b(\316)-141 +b(\327)-107 b(\223)f(\314)-67 b(\333)h(\324)-83 b(\301)-156 +b(\335)-151 b(\327)-107 b(\223)g(\330)-76 b(\212)-37 +b(K)-84 b(\222)-186 b(\316)-129 b(v)-54 b(\333)-64 b(\217)g(m)j +FQ(.)-130 b FB(m)-67 b(\313)-79 b(\330)-66 b(m)e(\273)-41 +b(K)-49 b(\321)-129 b(\317)-64 b Fz(N)-74 b FB(\216)-64 +b(m)j(!)-116 b(\212)f(m)-54 b(\332)-76 b(\321)-162 b(\335)-150 +b(\212)-37 b(K)-80 b(\332)-55 b(w)-27 b(K)g(n)-68 b(\273)-41 +b(K)-49 b(\321)3352 3635 y(\332)-64 b Fz(N)-76 b FB(\327)-66 +b(p)-27 b(K)g(n)-64 b Fz(M)-127 b FB(\327)-66 b(m)i(\216)-115 +b(v)-54 b(n)-62 b(\355)-35 b(K)-27 b(n)-64 b(\216)g(m)-137 +b(\335)-149 b(\327)-107 b(\223)k(\270)-72 b(\213)-121 +b(\226)-172 b(\212)-127 b(\327)-107 b(\223)-95 b(\333)-66 +b(\324)-76 b(\217)g(\327)j(!)-116 b(\313)-67 b(n)-95 +b(\227)g(n)-105 b(\332)-95 b(\224)-68 b(K)-35 b(\264)-89 +b(\275)-132 b(m)-64 b(\212)-115 b(\332)-48 b(\300)-61 +b(\314)-77 b(\213)-127 b(\327)-74 b(\267)i(\213)-37 b(K)-27 +b(m)-111 b(\226)-176 b(\273)-78 b(\217)-64 b(m)-105 b(v)-66 +b(\330)-107 b(\223)-68 b(K)-27 b(\320)-54 b(\333)-66 +b(\330)g(\332)-76 b(\321)-83 b FQ(.)3352 3748 y FB(\317)-66 +b(\330)g(\317)i(\221)g(m)-111 b(\222)-118 b(!)-92 b(v)-54 +b(n)-64 b Fz(M)-37 b FB(K)-27 b(m)-54 b(\332)-96 b(x)-159 +b(\316)-129 b(\327)-73 b(\337)-61 b(n)d(\212)g(m)j(!)-92 +b(\317)-64 b(\221)-77 b(\313)g(\217)-105 b(m)-143 b(u)-75 +b(K)-68 b(\317)-95 b(\224)f(\333)-62 b(\264)-119 b(\225)-84 +b(K)-125 b(\222)-164 b(\327)-107 b(\223)k(\270)-72 b(\213)-121 +b(\226)-174 b(\316)-118 b(\332)-54 b(\320)g(n)-62 b(\355)-72 +b(\217)-64 b(m)e(\327)-88 b(\316)-139 b(\316)-130 b(\327)-76 +b(\216)e(\313)-67 b(n)-111 b(\222)-174 b(\316)-117 b(v)-55 +b(\333)-64 b(\217)g(m)j(!)3352 3861 y(\332)-95 b(\224)-107 +b(\260)-76 b Fz(N)-64 b FB(m)-54 b(\317)-76 b(\321)-142 +b(\316)-132 b(\327)-107 b(\223)f(\314)-67 b(\333)h(\324)-107 +b(\230)-112 b(\301)-137 b(\316)-132 b(\327)-66 b(m)i(\216)g(m)-54 +b(v)-76 b(\321)-83 b(!)-94 b(\332)-54 b(w)-27 b(K)-39 +b(\330)-66 b(m)-95 b(\223)-68 b(K)h Fz(\200)g(\204\211)c +FB(m)-80 b(\243)g(n)-111 b(\222)-159 b FQ(\))-80 b FB(\327)-66 +b(\332)i(\213)-108 b(\332)-54 b(w)-27 b(K)g(\320)-66 +b(\330)-76 b(\220)g(\327)-88 b(\316)-83 b(!)-135 b(\223)-105 +b(\217)-64 b(m)-54 b(\332)-76 b(\321)-133 b(\257)-112 +b(\265)-155 b(\327)-79 b(\313)i(\213)-64 b(m)-76 b(\316)-83 +b(!)-106 b(\327)-66 b(\332)i(\213)3352 3974 y(\332)g(\221)-77 +b(\313)g(\217)-86 b(\316)-117 b(m)-64 b(\212)-146 b(\223)-68 +b(K)-58 b(\210)-95 b(\213)-77 b(\313)-89 b(\321)-117 +b(v)-54 b(n)-64 b(\220)-77 b(\313)g(\217)-112 b(u)-144 +b(v)-54 b(n)-95 b(\223)-108 b(\314)g(\224)-95 b(\333)-65 +b(\217)h(m)e(\327)-114 b(u)-165 b(\316)-132 b(\273)-78 +b(\217)-64 b(m)-95 b(\332)-54 b(\320)g(n)-62 b(\355)-73 +b(\217)-64 b(m)e(\327)-88 b(\316)-117 b(\332)-68 b(\314)-79 +b(\324)-93 b(\311)-81 b(\317)-76 b(\321)-117 b(m)-64 +b(\312)-118 b(\327)-66 b(\332)i(\213)-128 b(\316)-503 +b FP(Macintosh)p FQ(,)2809 4086 y FP(W)l(indo)n(ws)p +FQ(,)24 b FP(Unix)-603 b FQ(.)3211 4199 y FB(v)-54 b(n)g(\317)-102 +b(\240)g(n)h(v)-54 b(n)-67 b(\313)-77 b(\221)h(\327)-66 +b(m)i(\216)-76 b(\327)-114 b(u)-171 b(\316)-165 b FO(W)-220 +b FQ(u)-178 b FB(\257)-67 b(n)-111 b(\222)-158 b(v)-94 +b Fz(\200)-67 b(\204\210)-74 b FB(m)-86 b(\335)-133 b(\332)-54 +b(w)-27 b(K)g(n)-75 b(\310)-116 b(\223)f(\321)-123 b(\332)-95 +b(\224)-105 b(\315)-133 b(\316)-165 b FO(W)-220 b FQ(u)-125 +b FB(!)-109 b(\327)-123 b(\222)-158 b(v)-88 b Fz(\262)-61 +b(\233)-74 b FB(m)-62 b(\355)-72 b(\217)c(\327)g(\212)i(\312)3320 +4312 y(\335)-149 b(\327)-74 b(\267)i(\213)-37 b(K)-27 +b(m)-111 b(\226)-118 b FQ(.)-123 b FB(m)-64 b(\312)-138 +b FA(\242)-50 b FB(K)-78 b(\332)-67 b(\314)-108 b(\224)-122 +b(\311)-81 b(\332)-76 b(\321)-149 b(\316)-139 b(\327)-107 +b(\223)f(\314)-67 b(\333)h(\324)-83 b(\301)-122 b(m)-81 +b(\272)-54 b(K)-34 b(!)-103 b(m)-64 b(\212)-115 b(\332)-54 +b(n)-64 b(\216)-76 b(\327)-129 b(\327)-79 b(\313)i(\213)-64 +b(m)-76 b(\316)-127 b(m)-75 b(\323)g(\333)k(\301)-78 +b(!)-113 b(\212)-72 b(\263)-35 b(K)-27 b(\333)-64 b(\217)-71 +b(!)-103 b(m)-153 b(u)f(\332)-95 b(\224)-68 b(K)-35 b(\264)-103 +b(\224)c(\330)3352 4425 y(m)-68 b(\273)-41 b(K)-49 b(\321)-132 +b(m)-158 b(u)g(\332)-95 b(\224)-68 b(K)-39 b(\330)-79 +b(\257)-67 b(n)c(\276)-184 b(\222)-167 b(m)-54 b(\317)-62 +b(\270)g(n)-71 b(\276)-149 b(\316)-132 b(v)-67 b(\314)g(n)-95 +b(\227)g(\333)-54 b(\320)-96 b(x)-103 b FQ(.)-148 b FB(\212)-96 +b(\335)-184 b FO(W)-103 b FB(!)-109 b(m)-75 b(\323)g(\333)k(\301)-137 +b(\212)-120 b(m)-64 b(\216)g(m)-132 b(\316)-144 b(\327)-117 +b(\237)i(\217)-64 b(\332)-111 b(\225)-171 b FQ(\))-68 +b FB(\317)-80 b(\244)-53 b(K)-75 b(\240)-124 b(\321)3339 +4538 y(\257)-79 b(\330)j(\216)-121 b(\222)-175 b(\273)-78 +b(\217)-64 b(m)-126 b(\316)g(v)-95 b(\224)-107 b(\330)-66 +b(\317)-102 b(\240)g(\333)-66 b(\330)g(\332)-76 b(\321)-158 +b(\335)-148 b(\327)-107 b(\223)-95 b(q)-66 b(\330)g(\317)-81 +b(\336)-141 b(\212)-114 b(v)-66 b(\260)-107 b(\224)-68 +b(K)-27 b(n)-104 b(v)-54 b(n)-67 b(\313)-77 b Fz(N)-37 +b FB(K)e(\327)-60 b(\277)-90 b(x)-111 b FQ(\()-64 b(.)-120 +b FB(m)-95 b(\223)-103 b(\264)g(\224)c(\330)-73 b(!)-111 +b(\212)d(m)-95 b(\223)-89 b(\300)-62 b(\274)-78 b(\315)-136 +b(\316)e(\327)-66 b(m)-75 b(\323)g(\333)k(\301)3310 4651 +y FO(W)-150 b FB(")-97 b(m)-54 b(\317)-62 b(\356)g(n)-71 +b(\276)-137 b(\316)-120 b(v)-67 b(\314)g(n)-95 b(\227)g(\333)-54 +b(\320)-96 b(x)-140 b(m)-64 b(\216)g(m)-108 b(\212)-37 +b(K)-71 b(\332)-62 b(\264)-35 b(K)c(\260)-88 b(\321)-83 +b(!)-104 b(\212)-120 b(\327)-66 b(\332)-76 b(\321)-83 +b(!)-126 b(\335)-140 b(\212)-108 b(m)-62 b(\355)-89 b(\311)e(\312)-130 +b(\316)e(\327)-107 b(\223)-95 b(q)-54 b(w)-64 b(\217)-108 +b(m)-86 b(\335)-130 b(\332)-54 b(w)-27 b(K)-39 b(\330)-107 +b(\223)g(\330)-76 b(\212)-37 b(K)-68 b(\223)-117 b(\321)-83 +b(!)-94 b(\332)-62 b(\270)-35 b(K)-27 b(\333)-67 b(\314)-77 +b(\213)-37 b(K)3352 4764 y(\332)-67 b(\314)g(\333)j(\217)-86 +b(\316)-133 b(\327)-107 b(\223)f(\314)g(\224)-95 b(n)-64 +b(\216)-76 b(\327)j FQ(.)3211 4877 y FB(m)-68 b(\273)g(n)-75 +b(\310)g(\332)-54 b(n)-61 b(!)-105 b(\332)-64 b(\221)-77 +b(\313)g(\217)-117 b(m)-155 b(u)g(\332)-54 b(n)-99 b(\262)-152 +b(\332)-62 b(\264)-72 b(\217)-91 b(\256)-146 b(\327)-66 +b(\332)-76 b(\321)-129 b(\332)-54 b(\320)-66 b(\330)-79 +b(\313)-89 b(\321)-129 b(\332)-95 b(\224)-103 b(\270)-72 +b(\213)-64 b(m)-111 b(\226)-186 b(\316)-129 b(\332)-102 +b(\240)-112 b(\217)-64 b(\332)-95 b(\224)-117 b(\321)-142 +b(\257)-112 b(\265)-538 b FP(Macintosh)p FQ(,)3036 4990 +y FP(W)l(indo)n(ws)-375 b FB(!)-126 b(\212)-138 b(\327)-66 +b(\332)-27 b(K)g(\333)-125 b(\241)-132 b(!)-148 b(\335)-158 +b(\212)-87 b FA(\242)-50 b FB(K)-89 b(m)-105 b(\237)-115 +b(\217)-64 b(\332)-111 b(\225)-173 b(m)-126 b(\212)-37 +b(K)-89 b(\332)-62 b(\264)-35 b(K)-43 b(\261)-142 b(\212)-96 +b(\335)-148 b(v)-95 b(\224)-108 b(\314)g(\224)-95 b(n)-64 +b(\216)-76 b(\327)-114 b(u)-164 b(m)-68 b(\273)-41 b(K)-49 +b(\321)-138 b(\332)-81 b(\311)-26 b(K)-140 b FA(\242)-50 +b FB(K)-101 b(\327)-74 b(\267)i(\213)-64 b(\332)-71 b(\301)3348 +5103 y FQ(])j FB(m)-54 b(\317)g(n)-62 b(\355)-72 b(\217)-64 +b(m)e(\327)g(m)-103 b(\332)-54 b(w)-27 b(K)-39 b(\330)-66 +b(m)-95 b(\223)-68 b(K)h Fz(\200)g(\204\211)-133 b FB(\222)-160 +b(\332)-27 b(K)-68 b(\224)-108 b(\314)-67 b(\333)-111 +b(\225)-160 b(\332)-67 b(\314)g(\333)h(\330)-76 b(\220)-64 +b(\332)-71 b(\301)-78 b(!)-157 b(\222)d(v)-62 b(\356)-56 +b(\300)-48 b(\333)-64 b(\221)g(\332)-96 b(x)-585 b FQ(p)24 +b FP(wysiwyg)h FQ(q)-524 b FB(!)-100 b(\332)-95 b(\230)-136 +b(\224)-68 b(K)-39 b(\260)-93 b(\311)-154 b(\236)-190 +b(\273)-78 b(\217)-64 b(m)-113 b FQ(:)3352 5216 y FB(m)-105 +b(\237)-115 b(\217)-64 b(\332)-111 b(\225)-157 b(m)-64 +b(\216)g(m)-110 b(\212)-37 b(K)-73 b(\332)-95 b(\224)-107 +b(\330)-74 b(\263)-35 b(K)-43 b(\261)-128 b(\327)-74 +b(\267)i(\213)-37 b(K)-27 b(m)-111 b(\226)-118 b(!)-96 +b(m)-64 b(\212)-110 b(\332)-27 b(K)-61 b Fz(\262)g(\233)-86 +b FB(\257)-67 b(n)-111 b(\222)-214 b(\222)-157 b(v)-95 +b(\224)-105 b(\213)-37 b(K)-59 b(\335)-144 b(\327)-79 +b(\313)-94 b(\336)-127 b(\332)-95 b(\224)-68 b(K)-27 +b(n)-66 b(\327)-137 b(\236)-185 b(\327)-74 b(\355)i(\213)-64 +b(\332)-71 b(\301)-127 b(")-98 b(m)j(\223)-103 b(\356)-75 +b(\314)c(\330)-137 b(\236)3352 5328 y(m)-64 b(\216)g(m)-109 +b(\212)-37 b(K)-72 b(v)-95 b(\224)-107 b(\330)-74 b(\263)-35 +b(K)-43 b(\261)-115 b(v)-95 b(\224)-108 b(\314)g(\224)-95 +b(n)-64 b(\216)-76 b(\327)-114 b(u)-109 b(!)-95 b(\332)g(\224)-108 +b(\314)-77 b(\217)-109 b(m)-64 b(\212)-109 b(\332)-27 +b(K)-61 b Fz(\262)g(\233)-73 b FB(\332)-66 b(\330)-107 +b(\223)i(\217)-123 b(\273)-79 b(\217)-64 b(m)j FQ(.)c([)1836 +5652 y FB(79)p eop end +%%Page: 80 18 +TeXDict begin 80 17 bop 3211 548 a FB(\332)-66 b(\330)g(m)e(\273)-41 +b(K)-49 b(\321)-122 b(m)-64 b(\212)-110 b(\332)-62 b(\270)-35 +b(K)-27 b(\333)-64 b(\315)-122 b(\327)-107 b(\223)k(\270)-72 +b(\213)-121 b(\226)-198 b(\223)-105 b(\217)-64 b(m)-86 +b(\335)-177 b(\262)-157 b(\327)-79 b(\313)i(\213)-64 +b(m)-76 b(\316)-83 b(!)-96 b(\332)-64 b(\221)-77 b(\313)g(\217)-110 +b(m)-64 b(\212)-110 b(\332)-95 b(\224)-68 b(K)-58 b(\210)-96 +b(\213)-74 b(\312)-110 b(m)-95 b(\223)-108 b(\260)-76 +b Fz(N)-64 b FB(m)-76 b(\316)-122 b(\332)-55 b(w)-27 +b(K)-39 b(\330)-66 b(m)-95 b(\223)-68 b(K)h Fz(\200)g(\204\211)-83 +b FB(\212)-110 b(m)-75 b(\310)-26 b(K)-43 b(\277)-70 +b(\321)3320 661 y(\335)-138 b(\327)-76 b(\216)f(\313)-67 +b(n)-111 b(\222)-118 b FQ(.)-104 b FB(v)-54 b(n)-67 b(\257)-108 +b(\224)-68 b(K)-27 b(n)-94 b(v)-54 b(n)-67 b(\313)-77 +b Fz(N)-37 b FB(K)e(\327)-60 b(\277)-90 b(x)-158 b(\316)-128 +b(\327)-66 b(m)i(\216)g(m)-98 b FQ(\))-68 b FB(\332)i(\260)-74 +b(\264)-62 b(n)c(\327)-88 b(\316)-83 b(!)-91 b(v)-54 +b(\333)-62 b(\264)-74 b(\330)-87 b(\310)-82 b(!)-91 b(v)-54 +b(\333)-95 b(\224)-105 b(\213)-37 b(K)-27 b(m)-64 b(\216)g(\332)-76 +b(\321)-83 b(!)-91 b(v)-54 b(\333)-64 b(\221)-77 b(\313)-67 +b(\333)-48 b(\300)-88 b Fz(\200)-67 b(\204\210)g FB(v)-54 +b(\333)g(\320)g(n)-64 b(\212)-37 b(K)-27 b(m)-54 b(\332)-27 +b(K)-49 b(\321)-83 b(!)-92 b(v)-54 b(\333)-67 b(\314)f(\333)-54 +b(w)g(n)-64 b(\216)3352 774 y(v)-54 b(\333)g(\320)-67 +b(\314)-79 b(\330)j(\212)-64 b(m)-77 b FA(\242)-84 b +FB(!)-98 b(m)j(\223)-108 b(\314)-84 b(\301)-140 b(\316)-123 +b(v)-68 b(\274)g(w)-54 b(n)g(p)-94 b Fz(\200)-67 b(\204\210)-42 +b FQ(\()-64 b FB(!)-98 b(m)-149 b(u)-75 b(K)h(\332)-95 +b(\224)-68 b(K)-27 b(\333)-66 b(\260)g(n)-71 b(\276)-159 +b(\223)-122 b(\336)-128 b(v)-54 b(q)-66 b(\330)g(\317)-54 +b(\333)-96 b(x)-165 b(\316)-135 b(\327)-107 b(\223)g(\260)-76 +b Fz(N)-64 b FB(m)-54 b(\317)g(\320)-27 b(K)-54 b(\336)-141 +b(\257)-77 b(\217)-111 b(v)-95 b(\224)-107 b(\330)-66 +b(\317)-102 b(\240)g(\333)-66 b(\330)g(\332)-76 b(\321)-145 +b(\316)3310 887 y FO(W)-103 b FQ(.)f FB(\332)-67 b(\314)g(\333)j(\217) +-71 b(!)-134 b FO(W)-103 b FB(!)-92 b(m)-64 b(\212)-105 +b(\332)-95 b(\224)-68 b(K)-35 b(\264)-103 b(\224)c(\330)g(m)-54 +b(\317)-62 b(\356)g(n)-48 b(\277)g(\320)-27 b(K)-54 b(\336)-122 +b(m)-105 b(\212)-37 b(K)-68 b(\332)-95 b(\224)-68 b(K)-39 +b(\330)-74 b(\263)-35 b(K)-43 b(\261)-111 b(m)-105 b(\237)-115 +b(\217)-64 b(\332)-111 b(\225)-152 b(\332)-66 b(\330)-74 +b(\267)i Fz(N)-86 b FB(\316)-117 b(v)-54 b(n)-67 b(\257)-108 +b(\224)-68 b(K)-27 b(n)-95 b(v)-54 b(n)-67 b(\313)-77 +b Fz(N)-37 b FB(K)e(\327)-60 b(\277)-90 b(x)-137 b(v)-54 +b(n)-67 b(\313)-77 b(\221)h(\327)-66 b(m)i(\216)-76 b(\327)-114 +b(u)-109 b(!)3339 1000 y(\313)-67 b(n)-95 b(\227)g(n)c(v)-54 +b(\333)-64 b(\217)g(m)-54 b(\332)g(\320)-111 b(\225)-156 +b(m)-64 b(\212)-109 b(\332)-48 b(\300)g(\333)-54 b(\320)-96 +b(x)-153 b(\327)-87 b(\310)f(\257)-67 b(\320)-96 b(x)-154 +b(\327)-74 b(\355)-62 b(n)e(\216)-71 b FQ(.)3236 1251 +y Fc(8)p Fs(.)12 b Fc(3)-331 b Fb(\247)-118 b Fc(w)-103 +b Fa(\200)-73 b(\204\210)-138 b Fb(\247)-129 b Fc(\217)-135 +b(\313)-86 b(\330)j Fb(l)-71 b Fc(\332)-59 b(n)-141 b(~)-103 +b Fb([)-93 b Fc(\323)-106 b(\321)3352 1427 y FB(v)-54 +b(\320)-66 b(\324)-88 b(\321)-175 b FA(\247)-117 b FB(\217)-96 +b(\335)-132 b(m)-95 b(\223)g(n)-76 b(\316)-136 b(\273)-95 +b(\336)-127 b FA(\045)-54 b FB(\320)-66 b(\324)g(\320)-85 +b(\200)-112 b(\336)-137 b(\214)-85 b(\323)-115 b Fz(\200)-67 +b(\204\211)-87 b FB(\273)-95 b(\336)-168 b(\223)-126 +b(\200)-85 b(n)-93 b FA(\312)-149 b FB(\216)-78 b(\273)-68 +b(\362)i(\330)-112 b FA(\045)-66 b FB(\330)g(\317)i(\213)-76 +b(\327)-114 b Fz(G)-102 b FA(\045)-54 b FB(\320)-66 b(\324)g(\320)-85 +b(\200)-112 b(\336)-156 b(~)-93 b(\213)-76 b(\327)-95 +b(~)g(\324)-76 b(\213)-121 b Fz(H)h FA(Z)-64 b FB(m)-75 +b(\323)-117 b FA(')3352 1540 y(\045)-54 b FB(\333)-64 +b(\213)g(m)-153 b FA(\247)-117 b FB(\217)-64 b(\361)-81 +b(\336)-88 b FQ(.)-106 b FB(m)-75 b(\323)-87 b(\330)-112 +b(p)-49 b Fz(J)-108 b FB(\313)-79 b(\254)-60 b(\300)g(\330)-76 +b(\312)-163 b FA(\247)-117 b FB(\217)-64 b(\361)e(\330)-112 +b FA(\045)-66 b FB(\330)g(\317)i(\213)-76 b(\327)-112 +b(v)-49 b Fz(J)-136 b FB(\223)-95 b(\320)-64 b FA(U)-120 +b Fz(H)-131 b FB(\323)-85 b(\217)-110 b(a)-54 b(j)-81 +b(\336)-139 b(\327)-74 b(\267)-104 b(x)-171 b FA(I)-83 +b FB(n)-129 b FA(I)-83 b FB(n)-100 b FA(\))-81 b FB(\336)-137 +b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-112 b(a)-75 +b(\323)-102 b(\336)-129 b Fz(G)3342 1653 y FB(\212)-105 +b(\227)d(\314)-89 b(\321)-121 b(m)-95 b(\223)g(n)-76 +b(\316)-150 b(~)-110 b(\336)-128 b Fz(G)-101 b FB(m)-95 +b(\223)g(n)-76 b(\316)-150 b(~)-110 b(\336)-155 b(~)-93 +b(\213)-76 b(\327)-95 b(~)g(\324)-76 b(\213)-138 b(~)-110 +b(\336)-140 b(\273)-95 b(\311)-126 b(\262)-197 b FA(\247)-119 +b FB(\324)-76 b FA(m)-64 b FB(m)-152 b FA(\247)-119 b +FB(\324)-76 b FA(m)-64 b FB(m)-113 b FA(\273)-80 b FB(\324)-66 +b(n)-102 b FA( )-161 b(\273)-80 b FB(\324)k FA(m)-96 +b FB(\335)-141 b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-111 +b(a)-75 b(\323)-102 b(\336)-88 b FQ(.)3211 1766 y FB(m)-95 +b(\223)g(n)-76 b(\316)-140 b(\273)-95 b(\336)-131 b(m)-75 +b(\323)g(n)-104 b(p)-49 b Fz(J)-128 b FB(\207)-83 b(q)-64 +b(\217)-135 b(\323)-106 b(\200)f FA(\345)-140 b(\273)-80 +b FB(\324)k(\217)-93 b(~)-110 b(\336)-131 b(v)-49 b Fz(J)-99 +b FB(m)k(\223)g(n)-76 b(\316)-155 b(~)-110 b(\336)-131 +b(a)-111 b(\222)-161 b FA(\045)-54 b FB(n)-111 b(\222)-163 +b Fz(G)-106 b FB(\332)-95 b(\224)-109 b FA(\274)-78 b +FB(\217)k(\212)-64 b(m)-54 b(j)-81 b(\336)-141 b Fz(H)e +FA(I)-83 b FB(n)-133 b FA(I)-83 b FB(n)3352 1879 y FA(\))i +FB(\336)-138 b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-113 +b(a)-75 b(\323)-102 b(\336)-88 b FQ(.)-130 b FB(\323)-75 +b(\320)-64 b(\213)-105 b(\223)-95 b(w)-54 b(n)-76 b(\316)-133 +b Fz(H)-140 b FA(I)-83 b FB(n)-101 b FA(\))-81 b FB(\336)-138 +b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-113 b(a)-75 +b(\323)-102 b(\336)-88 b(!)-97 b(m)-62 b(\263)-74 b(\260)-66 +b(n)-54 b(\317)-95 b(\224)g(w)-54 b(n)-76 b(\316)-133 +b Fz(H)-140 b FA(I)-83 b FB(n)-101 b FA(\))-81 b FB(\336)-138 +b(\216)-85 b(\323)-75 b(\333)-66 b(\330)-113 b(a)-75 +b(\323)-102 b(\336)-88 b FQ(.)-122 b FB(\253)-77 b(\217)-64 +b(m)-77 b(\266)-126 b Fz(G)3352 1991 y FB(m)-54 b(\332)-64 +b(\217)g(m)-76 b(\316)-133 b Fz(H)-140 b FA(I)-83 b FB(n)-101 +b FA(\))-81 b FB(\336)-138 b(\216)-85 b(\323)-75 b(\333)-66 +b(\330)-113 b(a)-75 b(\323)-102 b(\336)-130 b Fz(G)-103 +b FB(a)-67 b(\313)-77 b(\217)-64 b(\332)-107 b FA(\250)g +FB(n)k Fz(G)-144 b FB(\223)-107 b(\330)-78 b(\327)-66 +b(\332)-96 b(x)-143 b(\332)-66 b(\330)g(\317)-94 b Fz(\200)-67 +b(\204\210)-103 b FA(I)-83 b FB(n)-130 b FA(I)-83 b FB(n)-142 +b(\223)-107 b(\330)-95 b FA(E)-110 b FB(\336)-138 b(\216)-85 +b(\323)-75 b(\333)-54 b(n)-101 b(a)-75 b(\323)-97 b(\321)-83 +b FQ(.)-141 b FB(~)-93 b FA([)-85 b FB(\323)-97 b(\321)3352 +2104 y(m)i(\223)g(n)-76 b(\316)-173 b(\223)-126 b FA(>)-112 +b FB(\336)-147 b(\212)-64 b(\317)-54 b(\333)g(n)-139 +b(~)-110 b(\336)-178 b(\223)-95 b(\333)-54 b(n)-95 b(\223)-137 +b(x)-152 b(v)-81 b(\336)-139 b Fz(G)-153 b FB(\223)-126 +b FA(>)-112 b FB(\336)-147 b(\212)-64 b(\317)-54 b(\333)g(n)-139 +b(~)-110 b(\336)-167 b(~)-93 b(\213)-76 b(\327)-96 b(~)h(\324)-76 +b(\213)-121 b(v)-81 b(\336)-139 b Fz(G)-153 b FB(\223)-126 +b FA(>)-112 b FB(\336)-148 b(\212)-64 b(\317)-55 b(\333)h(n)-139 +b(~)-110 b(\336)3352 2217 y(v)-54 b(\320)-64 b(\213)g(\332)-48 +b(\300)-88 b Fz(\200)-67 b(\204\210)-77 b FB(v)c(\336)-131 +b(\317)-80 b(\250)-90 b(\217)-124 b(\216)-78 b(\273)-68 +b(\320)k(\213)g(m)-95 b(\223)-107 b(\330)-88 b(\316)-128 +b Fz(G)-106 b FB(m)-54 b(\317)-66 b(\324)-88 b(\321)-126 +b(v)-54 b(q)-64 b(\213)g(\332)-48 b(\300)-88 b Fz(\200)-67 +b(\204\210)-106 b FB(~)c(\336)-131 b(m)-54 b(z)-64 b(\217)-86 +b(\316)-140 b(\273)-95 b(\336)-131 b FA(\045)-54 b FB(\320)-66 +b(\324)g(\320)-85 b(\200)-112 b(\336)-144 b(\313)-61 +b(\300)-118 b FA(\251)-125 b FB(!)-109 b(\267)-74 b(\330)e(\312)-116 +b Fz(G)d FB(\253)-77 b(\217)-64 b(m)g(\312)-114 b(v)-81 +b(\336)3352 2330 y FA(\045)-66 b FB(\330)g(\317)i(\213)-96 +b(\335)-147 b FA(Z)-105 b FB(\223)-95 b(\320)-64 b(\213)g(m)-95 +b(\223)-107 b(\330)-88 b(\316)-127 b(v)-49 b Fz(J)-100 +b FB(m)-54 b(\317)-66 b(\324)-88 b(\321)-127 b(v)-54 +b(q)-64 b(\213)g(\332)-48 b(\300)-88 b Fz(\200)-67 b(\204\210)-91 +b FB(\313)-67 b(n)-76 b(\316)-180 b FA(\247)-119 b FB(\324)-76 +b FA(m)-64 b FB(m)-118 b(\313)-67 b(\320)-100 b Fz(\241)-73 +b(\223\233)-81 b(G)-160 b FA(\247)-119 b FB(\324)-76 +b FA(m)-64 b FB(m)-118 b(\313)-68 b({)-54 b(q)-96 b(x)-147 +b(m)-55 b(z)-64 b(\217)-115 b(a)-75 b(\323)-97 b(\321)-83 +b FQ(.)-123 b FB(v)-65 b FA([)-85 b FB(\323)-97 b(\321)-127 +b(j)-81 b(\336)3352 2443 y(m)-95 b(\223)g(n)-76 b(\316)-127 +b FA(\045)-54 b FB(\320)-66 b(\324)g(\320)-85 b(\200)-112 +b(\336)-161 b(~)-93 b(\213)-76 b(\327)-95 b(~)g(\324)-76 +b(\213)-129 b(\273)-95 b(\336)-132 b(p)-66 b(\324)g(w)i(\217)-115 +b(p)-49 b Fz(J)-153 b FA(\247)-117 b FB(\217)-96 b(\335)-178 +b(\223)-109 b FA(\274)-80 b FB(\324)-66 b(\320)i(\213)g(m)-95 +b(\223)-107 b(\330)-88 b(\316)-127 b(v)-49 b Fz(J)-129 +b FA(I)-95 b FB(\330)-66 b FA(!)-107 b(\250)g FB(n)-64 +b(\216)-96 b(\335)-149 b(\327)-66 b(m)i(\216)-76 b(\327)-146 +b(\203)-100 b(\301)-122 b(p)-49 b Fz(J)-114 b FA(\313)-80 +b FB(\330)-111 b Fz(\260)-72 b(\233)3340 2556 y FB(\327)-66 +b(\332)-54 b(\320)-64 b(\213)g(m)-95 b(\223)-107 b(\330)-88 +b(\316)-83 b FQ(.)3201 2669 y FB(\216)-78 b FA(\313)e +FB(\330)-122 b FA(\313)-68 b FB(n)-48 b(\277)-60 b(\324)-66 +b(\333)g(\330)-88 b(\316)-171 b FA(\247)-107 b FB(\320)-64 +b(\213)-96 b(\335)-130 b Fz(G)-98 b FB(\317)-66 b(\254)-76 +b(\217)-86 b(\316)-139 b(\323)-75 b(\362)-54 b(\320)-64 +b(\213)-96 b(\335)-128 b(m)-95 b(\223)g(n)-76 b(\316)-147 +b(~)-110 b(\336)-131 b(\267)-74 b(\330)e(\312)-135 b +FA(I)-83 b FB(n)-48 b(\277)g(\333)-73 b Fz(F)-156 b FB(\223)-95 +b(n)-71 b(\276)-113 b FA(\045)-55 b FB(\333)-64 b FA(m)g +FB(m)-54 b(j)-66 b(\330)-88 b(\316)-120 b Fz(G)-112 b +FB(\253)-77 b(\215)-64 b(m)-102 b(o)-145 b FA(-)-66 b +FB(\330)-80 b FA(\313)-68 b FB(\333)-54 b(n)3352 2782 +y(a)-75 b(\323)-97 b(\321)-122 b Fz(G)-100 b FB(m)-54 +b(\317)-66 b(\324)-88 b(\321)-120 b(\317)-66 b(\254)-76 +b(\217)-86 b(\316)-120 b(m)-95 b(\223)g(n)-76 b(\316)-149 +b(~)-110 b(\336)-133 b(\267)-74 b(\330)e(\312)-129 b(\310)-77 +b(`)-29 b(A)-83 b(\327)-76 b FA(T)-64 b FB(\332)-117 +b FA(\251)-162 b(\045)-54 b FB(\333)-64 b FA(m)g FB(m)-54 +b(j)-66 b(\330)-88 b(\316)-122 b Fz(G)-113 b FB(\253)-77 +b(\215)-64 b(m)-102 b(o)-146 b(\317)-54 b(n)-64 b(\220)-81 +b(\276)-168 b FA(\247)-107 b FB(\333)-54 b(n)-98 b(a)-75 +b(\323)-97 b(\321)-127 b FQ(.)-134 b FB(~)-83 b(\333)-107 +b FA(\250)-117 b([)-85 b FB(\323)-97 b(\321)3352 2895 +y(m)i(\223)g(n)-76 b(\316)-138 b Fz(H)-116 b FB(m)-81 +b FA(<)-141 b FB(\267)-74 b(\330)e(\312)-145 b(~)-110 +b(\336)-133 b(m)-67 b(\313)g(\333)j(\213)-116 b FA(\045)-54 +b FB(\333)-64 b(\213)g(m)-106 b FA(\))-81 b FB(\336)-133 +b(a)-75 b(\323)-102 b(\336)-133 b(v)-49 b Fz(J)-101 b +FB(m)-75 b(\323)g(n)-106 b(m)-95 b(\223)g(n)-76 b(\316)-157 +b(~)-110 b(\336)-146 b(\253)-80 b(\314)c(\301)-125 b +Fz(G)-108 b FB(m)-95 b(\223)g(n)-76 b(\316)-157 b(~)-110 +b(\336)-133 b(p)-81 b(\336)-127 b(\277)-60 b(\330)-114 +b(y)3323 3008 y(~)-93 b(\213)-76 b(\327)-95 b(~)g(\324)-76 +b(\213)-146 b(~)-110 b(\336)-187 b FA(\247)-117 b FB(\217)-96 +b(\335)-139 b FA(\045)-54 b FB(\333)-64 b(\213)g(m)-107 +b FA(\))-81 b FB(\336)-134 b(a)-75 b(\323)-102 b(\336)-136 +b Fz(G)-122 b FB(\313)-67 b(n)-54 b(j)-66 b(\324)-78 +b(\330)-119 b(m)-95 b(\223)g(n)-76 b(\316)-139 b FA(Z)-64 +b FB(m)-54 b(\317)-66 b(\324)-88 b(\321)-141 b(\327)-66 +b(m)-83 b(~)-95 b(\324)-66 b(n)-54 b(j)-81 b(\336)-144 +b(\216)-85 b(\323)-75 b(\333)-54 b(n)-107 b(a)-75 b(\323)-97 +b(\321)-83 b FQ(.)-129 b FB(v)-49 b Fz(J)-103 b FB(m)-95 +b(\223)g(n)-76 b(\316)3352 3121 y(j)-81 b(\336)-137 b(a)-75 +b(\323)g(\333)-66 b(\330)-88 b(\316)-161 b(~)-83 b(\333)-107 +b FA(\250)-134 b FB(\336)-190 b FA(\247)-138 b FB(\200)-104 +b Fz(F)-129 b FB(\317)-49 b Fz(J)-158 b FA(\247)-138 +b FB(\200)-104 b Fz(F)-182 b FA(\247)-107 b FB(\320)-64 +b(\213)g(m)-95 b(\223)-107 b(\330)-88 b(\316)-83 b FQ(.)-137 +b FA(\045)-64 b FB(\217)-120 b(m)-95 b(\223)g(n)-76 b(\316)-146 +b(\273)-95 b(\336)-147 b FA(Z)-105 b FB(\223)-95 b(\362)-66 +b(\330)-122 b(a)-75 b(\323)-102 b(\336)-137 b(v)-49 b +Fz(J)-115 b FB(\212)-64 b(\317)-54 b(\333)g(n)-139 b(~)-110 +b(\336)3352 3233 y(m)-54 b(\317)-64 b(\213)-74 b(\216)-140 +b FA(I)-83 b FB(n)-101 b FA(\))-81 b FB(\336)-138 b(\216)-85 +b(\323)-75 b(\333)-66 b(\330)-113 b(a)-75 b(\323)-102 +b(\336)-130 b Fz(G)-103 b FB(m)-95 b(\223)g(n)-76 b(\316)-152 +b(~)-95 b(\330)-123 b(\212)-105 b(\227)d(\314)-89 b(\321)-176 +b FA(\247)-107 b FB(\333)-54 b(k)-76 b(\321)-152 b(\203)-83 +b(n)-48 b(\277)-88 b Fz(\200)-67 b(\204\206)-88 b FB(\273)-95 +b(\336)-128 b FA(\045)-54 b FB(\320)-66 b(\324)g(\320)-85 +b(\200)-107 b(\321)-136 b(\313)-75 b(\264)-62 b(n)e(\212)-86 +b(\316)-133 b Fz(H)-164 b FA(\247)-107 b FB(w)-96 b(r)-143 +b(a)-54 b(\361)-76 b FA(\345)3323 3346 y FB(~)-110 b(\336)-182 +b FA(\247)-119 b FB(\330)-107 b(\227)-152 b(\231)-212 +b FA(\247)-117 b FB(\217)-96 b(\335)-144 b(\216)-85 b(\323)-75 +b(\333)-66 b(\330)-114 b(a)-75 b(\323)-102 b(\336)-88 +b(!)-98 b(m)-54 b(\317)-66 b(\324)-93 b(\336)-83 b(`)-29 +b(@)-104 b(~)-110 b(\336)-150 b(\310)-77 b(`)-29 b(A)-126 +b(\237)-115 b(\217)-76 b(\327)g(\216)-96 b(\335)-134 +b(a)-75 b(\323)-102 b(\336)-129 b(v)-49 b Fz(J)-97 b +FB(m)i(\223)g(n)-76 b(\316)-124 b FA(\045)-54 b FB(n)-76 +b FA(\344)-134 b Fz(H)-122 b FA(Z)-64 b FB(m)-75 b(\323)-117 +b FA(')-144 b(\045)-54 b FB(\333)-64 b(\213)g(m)3299 +3459 y FA(\247)-117 b FB(\217)-64 b(\332)e(\330)-88 b(\316)-122 +b Fz(G)-100 b FA(\045)-54 b FB(n)-76 b FA(\344)-130 b +Fz(H)-137 b FA(=)-83 b FB(n)-76 b FA(\344)-149 b FB(~)-95 +b(\330)-131 b(\323)-141 b FA(\251)-174 b FB(\327)-107 +b(\223)-95 b(\333)-70 b(\255)-143 b(\207)-93 b(\221)-64 +b(m)-54 b(\317)-66 b(\330)-110 b FA(\045)-54 b FB(\333)-64 +b(\213)g(m)-151 b FA(\247)-117 b FB(\217)-64 b(\332)e(\330)-88 +b(\316)-83 b FQ(.)-107 b Fz(G)-100 b FB(m)-95 b(\223)g(n)-76 +b(\316)-133 b(\313)-79 b(\330)-95 b(~)g(\330)-76 b(\212)-69 +b(\322)-154 b(\233)-117 b(\330)-76 b(\216)-112 b(u)-175 +b(\203)-83 b(n)-71 b(\276)3338 3572 y(\273)-95 b(\336)-167 +b(\223)-108 b(\314)-98 b(\200)h(\324)-88 b FA(\345)-142 +b FB(\310)-77 b(`)-29 b(A)-82 b(\216)-76 b(\327)g(\220)f(\313)g(\217) +-69 b(\322)-133 b(~)-110 b(\336)-139 b(\313)-67 b(\333)j +FA(Q)g FB(\332)-54 b(n)-101 b Fz(G)-112 b FB(\212)-64 +b(\317)-54 b(\333)g(n)-129 b(~)-110 b(\336)-126 b(m)-54 +b(\317)-65 b(\213)-74 b(\216)-110 b FA(\))-54 b FB(\333)f(\320)-64 +b(\213)-74 b FA(l)-163 b(\247)-107 b FB(n)-64 b(\216)-76 +b(\327)-66 b(m)-54 b(j)-94 b Fz(\200)-67 b(\204\210)-72 +b FB(v)-81 b(\336)-141 b FA(\273)-80 b FB(\324)k(\217)-96 +b(\335)-131 b(\317)-80 b(\250)-91 b(\217)-120 b(\216)-78 +b(\273)e(\330)-88 b(\316)3352 3685 y(v)-49 b Fz(J)-107 +b FB(\212)i(\227)d(\314)-89 b(\321)-126 b Fz(G)-133 b +FB(~)-83 b(n)-64 b(\216)-93 b(\203)-83 b(\333)-96 b(x)-144 +b FA(\045)-95 b FB(\224)g(\320)-64 b(\213)-120 b(\267)-74 +b(\330)-66 b(v)g(\330)-88 b(\316)-126 b Fz(G)-104 b FB(m)-95 +b(\223)g(n)-76 b(\316)-124 b(v)-81 b(\336)-137 b(\267)-62 +b(n)-54 b(p)-125 b(\241)-181 b(\267)-74 b(\330)-66 b(v)g(\330)-88 +b(\316)-134 b(\212)-64 b(\317)-54 b(\333)g(n)-131 b(~)-110 +b(\336)-129 b(m)-54 b(\317)-64 b(\213)-74 b(\216)-112 +b FA(\))-54 b FB(\333)g(\320)-64 b(\213)-74 b FA(l)-112 +b FB(v)-54 b(q)-64 b(\213)g(\332)-48 b(\300)-88 b Fz(\200)-67 +b(\204\210)3338 3798 y FB(\273)-95 b(\336)-172 b(\223)-95 +b(\320)-64 b(\213)-86 b(\316)-155 b(\203)-106 b(\271)-137 +b Fz(H)-116 b(G)-147 b FB(\223)-95 b(\320)-64 b(\213)-86 +b(\316)-139 b(\313)-75 b(\264)-62 b(n)e(\212)-86 b(\316)-155 +b(~)-110 b(\336)-160 b(\203)-106 b(\271)-137 b Fz(H)-71 +b FB(!)-142 b(\223)-95 b(\320)-64 b FA(U)-114 b FB(v)-81 +b(\336)-160 b(~)-83 b(n)-64 b(\216)-93 b(\203)-84 b(\333)-96 +b(x)-154 b(\267)-62 b(n)-54 b(\361)-64 b(\315)-125 b(\216)-78 +b(\273)-90 b FA(\345)-155 b FB(~)-110 b(\336)-160 b(\203)-107 +b(\271)-137 b Fz(H)-71 b FB(!)3311 3911 y(\223)-95 b(\320)-64 +b FA(U)-123 b FB(\273)-95 b(\336)-139 b(\313)-108 b(\224)-95 +b(w)-62 b(\270)-79 b(\301)-124 b(\267)-62 b(q)-102 b(\240)-129 +b(\336)-136 b Fz(H)-162 b FA(\247)-117 b FB(\217)-86 +b FA(\344)-150 b FB(~)-110 b(\336)-155 b(\203)-106 b(\271)-132 +b Fz(H)-162 b FA(\247)-107 b FB(\333)-54 b(k)-76 b(\321)-175 +b FA(\247)-107 b FB(w)-96 b(r)-142 b(a)-54 b(\361)-81 +b(\336)-136 b(\216)-85 b(\323)-76 b(\333)-66 b(\330)-88 +b(\316)-121 b(a)-75 b(\323)-97 b(\321)-83 b FQ(.)1836 +5652 y FB(80)p eop end +%%Trailer + +userdict /end-hook known{end-hook}if +%%EOF diff --git a/Master/texmf-dist/doc/omega/base/torture.tex b/Master/texmf-dist/doc/omega/base/torture.tex new file mode 100644 index 00000000000..7f2085fee86 --- /dev/null +++ b/Master/texmf-dist/doc/omega/base/torture.tex @@ -0,0 +1,1127 @@ +% This file is changed by Roozbeh Pournader to make it work +% with Omega 1.23 and fixing obvious bugs +\documentclass[a4paper,11pt]{article} +\usepackage{amsmath} +\usepackage{omega} +%\usepackage[dvips]{draftcopy}\draftcopyName{\today}{140} +\def\shortarab#1{{\pushocplist\ArabicOCP\fontfamily{omarb}\selectfont#1\popocplist}} +\def\shortberber#1{{\pushocplist\ArabicBerberOCP\fontfamily{omarb}\selectfont#1\popocplist}} +\def\shortgreek#1{{\pushocplist\GreekOCP\fontfamily{omlgc}\selectfont#1\popocplist}} +\def\shortlatberber#1{{\pushocplist\LatinBerberOCP\fontfamily{omlgc}\selectfont#1\popocplist}} +\def\shorttifi#1{{\pushocplist\TifinaghOCP\fontfamily{omlgc}\selectfont#1\popocplist}} +\def\shortpashto#1{{\pushocplist\AfghaPashtoOCP\fontfamily{omarb}\selectfont#1\popocplist}} +\def\shortpashtop#1{{\pushocplist\PakiPashtoOCP\fontfamily{omarb}\selectfont#1\popocplist}} +\def\shortsindhi#1{{\pushocplist\SindhiOCP\fontfamily{omarb}\selectfont#1\popocplist}} +\def\tl#1#2#3#4#5#6{\hline\rule[-5pt]{0pt}{14pt}\texttt{#1}&\shortarab{#1}&\texttt{#2}&\shortarab{#2}&\texttt{#3}&\shortarab{#3}& +\texttt{#4}&\shortarab{#4}&\texttt{#5}&\shortarab{#5}&\texttt{#6}&\shortarab{#6}\\} +% +\def\ttl#1#2#3{\hline\rule[-5pt]{0pt}{14pt}\texttt{#1}&\shortlatberber{#1}&\shortberber{#1}&\shorttifi{#1}& +\texttt{#2}&\shortlatberber{#2}&\shortberber{#2}&\shorttifi{#2}& +\texttt{#3}&\shortlatberber{#3}&\shortberber{#3}&\shorttifi{#3}\\} +% +\def\stl#1#2#3#4#5#6{\hline\rule[-5pt]{0pt}{14pt}\texttt{#1}&\shortsindhi{#1}&\texttt{#2}&\shortsindhi{#2}&\texttt{#3}&\shortsindhi{#3}& +\texttt{#4}&\shortsindhi{#4}&\texttt{#5}&\shortsindhi{#5}&\texttt{#6}&\shortsindhi{#6}\\} +\def\patl#1#2#3#4#5#6{\hline\rule[-5pt]{0pt}{14pt}\texttt{#1}&\shortpashto{#1}&\texttt{#2}&\shortpashto{#2}&\texttt{#3}&\shortpashto{#3}& +\texttt{#4}&\shortpashto{#4}&\texttt{#5}&\shortpashto{#5}&\texttt{#6}&\shortpashto{#6}\\} +\def\paptl#1#2#3#4#5#6{\hline\rule[-5pt]{0pt}{14pt}\texttt{#1}&\shortpashtop{#1}&\texttt{#2}&\shortpashtop{#2}&\texttt{#3}&\shortpashtop{#3}& +\texttt{#4}&\shortpashtop{#4}&\texttt{#5}&\shortpashtop{#5}&\texttt{#6}&\shortpashtop{#6}\\} +\begin{document} +\setcounter{page}{63} +\title{Multilingual Typesetting with \OMEGA, a Case Study: Arabic} +\author{Yannis Haralambous\thanks{Atelier Fluxus Virus, 187, rue Nationale, +59800 Lille, France, \texttt{yannis@fluxus-virus.com}} +\and +John Plaice\thanks{School of Computer Science and Engineering, +The University of New South Wales, Sydney 2052 Australia, +\texttt{plaice@cse.unsw.edu.au}} +} +\date{} +\maketitle +\begin{abstract} +In this paper we describe the internal structure of the Arabic script +package for the \OMEGA{} typesetting system, as well as the techniques +and tools used for its development. This package allows typesetting +using regular \LaTeX{} styles, in all Arabic alphabet languages: +Arabic, Berber, Farsi, Urdu, Pashto, Sindhi, Uighur, etc. + +We also give a description of the character codes added to Unicode, to +obtain the Unicode++ encoding, used by the \OMEGA{} system for +typesetting purposes. +\end{abstract} + +\section{Overview of the \OMEGA{} Arabic Script Package} + +Typesetting with \OMEGA{} is a process similar to typesetting with +\TeX: the user prepares a ``source'' file, containing the text of +\hisher{} document and a certain number of macro-commands for +attribute changes of the text (font characteristics, language, case, +etc.), references to figures (included in graphical format files on +disk) and other material included in or accompanying the text. + +Once this source file prepared, \OMEGA{} is launched: it reads the +file, expands the commands and typesets the text accordingly. To +perform this task, \OMEGA{} loads and executes several \OTP{}s +(\OMEGA{} Translation Processes), which take care of low level +properties of the document (contextual analysis of the script, case +switching according to script and language, etc.). It also uses +different fonts, most of which are \emph{virtual}, in the sense that +they themselves call other fonts. On a higher level, such a document +uses \LaTeX{} packages, some of them modified to take advantage of the +additional features of \OMEGA{} vs.\ \TeX. + +The leading idea of the \OMEGA{} Arabic Script Package (as of any +\OMEGA{} language package) is that the low level properties of the +script have to be separated from higher level typesetting +commands. For example, contextual analysis of the Arabic script has to +be completely independent of the \LaTeX{} command level, so that one +can use Arabic text in any context (inside a table or a formula, or +deeply nested inside several \LaTeX{} environments and commands, etc.) +and under any circumstances, as in the following example, which has been +typeset with ordinary \LaTeX{} environments and macros: + +{%\pardir TRT\textdir TRT +\pushocplist\ArabicOCP\fontfamily{omarb}\selectfont +\begin{center}\begin{tabular}{|c|c|}\hline +{\textdir TRT HayA"t} & {\textdir TRT mayyit}\\\hline +{\mathdir TLT$\displaystyle\int_{\text{\textdir TRT Sif<>r}}^{\hbox dir TRT{\textdir TRT ghyr maH<>duUd}}f(x)\,dx$} & {\textdir TRT 'aanA}\\\hline +\end{tabular}\end{center} +\popocplist} + +There are two key aspects to Arabic script typesetting, +unfortunately of unequal complexity: the first one is contextual +analysis, that is the fact that Arabic letters change shape according +to their position in a word, or according to the fact that they are +part of an abbreviation, etc. This aspect can be handled easily and +efficiently by \OTP{}s. The second aspect is more global: it is the +fact that Arabic script is written from right to left. + +Two methods can be applied: the first one is to change the default +direction of the whole document. This method is extremely efficient +when the document is entirely in Arabic, or if left-to-right text +excerpts are exceptional. Being global, this method applies also to +page-level typesetting methods, such as the order of columns in a +multicolumn environment, etc. Of course, mathematical formulas are not +affected by this global direction change. + +The second method is to keep left-to-right as default direction and to +temporarily switch to right-to-left for every Arabic script +sentence. This can be practical for a document where Arabic excerpts +are exceptional. + +\section{Parts of the \OMEGA{} Arabic Script Package} + +This package consists of the following elements: + +\begin{enumerate} +\item{}\tolerance=3000 The \texttt{OmegaSerifArabic} PostScript fonts: +files \texttt{omsea1.pfb}, \texttt{omsea2.pfb}, \texttt{omsea3.pfb} +and the corresponding AFM files. A Sans-serif font +(\texttt{Omega\-Sans\-Arabic}), as well as additional styles of the +Serif font are under development. +\item{}\tolerance=3000 The virtual font \texttt{omrl}: files +\texttt{omrl.ovf}, \texttt{omrl.ofm}, \texttt{omsea1.tfm}, +\texttt{omsea2.tfm}, \texttt{omsea3.tfm}. +\item{} The configuration file \texttt{omrl.cfg}, which is used by the +PERL utility MakeOVP to create the virtual font out of the AFM files +and other information. +\item{} A certain number of \OTP{}s: +\begin{enumerate} +\item{} \texttt{7arb2uni.otp}, 7-bit Arabic/Farsi transcription to Unicode; +\item{} \texttt{7ber2uni.otp}, 7-bit Berber transcription to Unicode; +\item{} \texttt{7urd2uni.otp}, 7-bit Urdu transcription to Unicode; +\item{} \texttt{7pas2uni.otp}, 7-bit Afghanistani Pashto transcription to Unicode; +\item{} \texttt{7pap2uni.otp}, 7-bit Pakistani Pashto transcription to Unicode; +\item{} \texttt{7snd2uni.otp}, 7-bit Sindhi transcription to Unicode; +\item{} \texttt{uni2cuni.otp}, contextual analysis, sending Unicode++ to cUnicode++ +(`c' for `contextual'); +\item{} \texttt{cuni2oar.otp}, cUnicode++ to \texttt{omrl} font. +\end{enumerate} +These \OTP{}s are available in human-readable and compiled binary +format (OCP), the latter being loaded by \OMEGA{} on runtime. +\item{} A \LaTeX{} style (\texttt{arabic.sty}) defining a command that +will activate and deactivate the \OTP{}s. +\item{} Documentation and test files (\texttt{testarab.tex}, +\texttt{testsind.tex}). +\end{enumerate} + +\section{Installation of the \OMEGA{} Arabic Script Package} + +To use the \OMEGA{} Arabic Script Package you must have \OMEGA{} +version 1.45 or higher installed on your machine. Place OFM, OVF, TFM +and OCP files where the system expects to find them (if in doubt, +consult the \texttt{texmf.conf} file). Keep the \texttt{arabic.sty} +file somewhere where it can be found by \OMEGA{}. Finally add the +following few lines to the \texttt{psfonts.map} configuration file of +\texttt{odvips}: +\begin{verbatim} +omsea1 OmegaSerifArabicOne </foo/omsea1.pfb +omsea2 OmegaSerifArabicTwo </foo/omsea2.pfb +omsea3 OmegaSerifArabicThree </foo/omsea3.pfb +\end{verbatim} +where \texttt{/foo} stands for the absolute path of the directory +containing the PFB files. + +This is all you need to do: you can start already by launching +\OMEGA{} on files \texttt{testarab.tex} and \texttt{testsind.tex}. + +In the following sections we will describe the use of the package, +from the end users' point of view. We will assume that the user is +familiar with the \TeX{} typesetting system and the \LaTeX{} macro +package. + +\section{Basic Macros} + +Before starting a new document one has to choose if the ``background +language'' is going to be an Arabic alphabet language, in other terms, +if we expect pages and columns to be typeset from right to left, and +the whole global page design to be right-to-left oriented. + +If this the case, then the macro +\verb=\GlobalArabic[=\texttt{\textit{language}}\verb=]= has to be used +in the document header, where the optional argument +\texttt{\textit{language}} is one of the following: \texttt{arabic} +(by default), \texttt{farsi}, \texttt{urdu}, \texttt{pashto}, +\texttt{sindhi}, \texttt{custom}. + +This macro will switch the global typesetting direction of the +document to right-to-left and will launch the \OTP s necessary for the +language chosen. + +Inside the document, independently of the choice of background +language, one can use \LaTeX{} environments \texttt{arabic}, +\texttt{berber}, \texttt{farsi}, \texttt{urdu}, \texttt{pashto}, +\texttt{pashtop}, \texttt{sindhi} to switch to the corresponding +language, and \texttt{latin} or \texttt{greek} to switch to a Latin +alphabet language or some flavour of Greek. It should be noted that +these macros are only temporary and will be adapted to a more global +language-switching scheme, currently being elaborated by the \LaTeX3 +and \OMEGA{} working groups. + +\section{Input of Arabic Alphabet Text} + +\subsection{You Have an Arabic Keyboard} + +If you have an Arabic Keyboard, containing sufficiently many keys for +the language you want to typeset (for example, with a standard Arabic +keyboard one can perhaps typeset Farsi, possibly Urdu but not Pashto +and certainly not Sindhi), you need to configure \OMEGA{} to your +\emph{input encoding}, by providing the appropriate input \OTP{} by +use of the \verb=\ArabicInputEncoding= macro, which you have to place +in the header of your document. We have already written such \OTP{}s +for three input encodings: Macintosh Arabic (\texttt{applemac}, +covering Arabic, Farsi, Urdu), Windows Arabic (\texttt{1256}, covering +Arabic and Farsi), MS-DOS Arabic ASMO (\texttt{708}, covering Arabic +only) and ISO~8859-6 (\texttt{iso8859-6}, covering only Arabic). If +your equipment is not in this list, go to section~\ref{writingOTPs} to +see how to write your own \OTP{}s. + +\subsection{You Don't Have an Arabic Keyboard} + +In that case you can use a Latin transcription: we have prepared ASCII +Latin transcriptions for each of the main Arabic-alphabet languages: +Arabic, Berber, Farsi, Urdu, Pashto (Afghanistani and Pakistani), +Sindhi. Here they are: + +\subsubsection{Arabic/Farsi Transcription}\label{arabtrans} + +\begin{center} +\begin{tabular}{|c|c||c|c||c|c||c|c||c|c||c|c|} +\tl{A}{p}{z}{`}{m}{I} +\tl{'a}{j}{zh}{gh}{n}{y} +\tl{'i}{H}{s}{f}{'n}{'y} +\tl{'A}{kh}{sh}{q}{-h}{||} +\tl{"A}{ch}{S}{v}{"h}{E} +\tl{b}{d}{D}{k}{e}{} +\tl{t}{dh}{T}{g}{U}{LLah} +\tl{th}{r}{Z}{l}{'u}{SLh} +\hline +\end{tabular} +\end{center} + +\noindent +Remarks: + +\begin{enumerate} +\item The \emph{tah marbutah} \shortarab{"h} can be written in two +ways: \texttt{"h} or \texttt{"t}. +\item The \emph{waw} \shortarab{w} can be written in two ways: +\texttt{w} or \texttt{U}. +\item The hyphen in front of the transcription of \shortarab{h} is +only necessary to prevent confusion between cases such as \texttt{kh} +(\shortarab{kh}) and \texttt{k-h} (\begin{arab}k-h\end{arab}). We +suggest you use it all the time. +\item VERY IMPORTANT: the duplication of consonants (\emph{shaddah}) +is obtained by writing the consonants twice. So for example, +\texttt{Dmm"h} will produce \begin{arab}Dmm"h\end{arab} and not +\begin{arab}Dm-m"h\end{arab}; to obtain the latter, type \texttt{Dm-m"h}, +as for example in the word \begin{arab}t-tHrrk\end{arab}, which +presents both cases, and which is typed \texttt{t-tHrrk}. +\end{enumerate} + +Vowels and other diacritics are obtained in the following way: (they +are typed after the consonant to which they belong) + +\begin{center} +\begin{tabular}{|l|c|} +\hline fatha & \texttt{a}\\ +\hline kasra & \texttt{i}\\ +\hline damma & \texttt{u}\\ +\hline soukoun & \texttt{<>}\\ +\hline vertical fatha & \texttt{a|}\\ +\hline fathatan & \texttt{aN}\\ +\hline kasratan & \texttt{iN}\\ +\hline dammatan & \texttt{uN}\\\hline +\end{tabular}\end{center} + +Example: it is a trivial task now to welcome you to this system of +Arabic input, by saying + +\begin{verbatim} +\begin{arab} +\Huge +'aahlAaN wa sahlAaN! +\end{arab} +\end{verbatim} + +{\pardir TRT\textdir TRT +\begin{center} +\begin{arab} +\Huge +'aahlAaN wa sahlAaN! +\end{arab} +\end{center} +} + +\noindent +Example of vowelized Arabic:\\[8pt] + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\ArabicOCP\fontfamily{omarb}\selectfont\LARGE li'aannahaA +"Al<>'Ana laA tufakkiru fiI naf<>sihaA, walakinnahaA tufakkiru fiI +'aakhaway<>haA wafiI "Al<>khaTari "AlladhiI laHiqahumaA. \popocplist +\end{quote} +} + +\noindent transcribed: + +\begin{quote} +\texttt{li'aannahaA "Al<>'Ana laA tufakkiru fiI naf<>sihaA,\\ +walakinnahaA tufakkiru fiI 'aakhaway<>haA\\ +wafiI "Al<>khaTari "AlladhiI laHiqahumaA.} +\end{quote} + +\subsubsection{Urdu Transcription} + +The Urdu transcription is similar to the Arabic/Farsi one described +above, with a few additional characters, and one exception. + +The additional characters are \shortarab{'t}, \shortarab{'d} and +\shortarab{'r}, transcribed by \texttt{'t}, \texttt{'d}, +\texttt{'r}. The exception concerns the two different uses of the +\emph{hah} glyph \shortarab{h}. In Urdu it can be used as the second +part of a digraph, such as for example +\begin{smallurdu}jh\end{smallurdu}, in which case we transcribe it as +\texttt{-h}; it can also be the standard consonant \emph{hah}, in +which case we transcribe it by \texttt{x}. Notice the four forms of +the latter in Urdu: \begin{smallurdu}x-x-x x\end{smallurdu}, while in +Arabic the same letter is written \begin{smallarab}h-h-h +h\end{smallarab}. + +\noindent +Example: + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\UrduOCP\fontfamily{omarb}\selectfont xmArI Trf prAnE +zmAnE my'n dstUr t-hA kx Agr ksI shkhS kU kAghdh pr kchh lk-hA xUA grA +p'rA ml jAtA tU Uh As przE kU AHtyAT sE A't-hA kr kxy'n rk-h dytA yA +pAnI mI'n bxA dytA tAkx lk-hE xU'yE HrUf kI bE HrmtI nx xU. +\popocplist +\end{quote}} + +\noindent +transcribed: + +\begin{quote} +\texttt{xmArI Trf prAnE zmAnE my'n dstUr t-hA kx Agr ksI\\ +shkhS kU kAghdh pr kchh lk-hA xUA grA p'rA ml jAtA tU Uh\\ +As przE kU AHtyAT sE A't-hA kr kxy'n rk-h dytA yA pAnI mI'n\\ +bxA dytA tAkx lk-hE xU'yE HrUf kI bE HrmtI nx xU.} +\end{quote} + +\subsubsection{Pashto Transcription} + +The Pashto transcription is similar to the Arabic/Farsi one described +beyond, with a few additional characters and some exceptions. We are +proposing two \OTP{}s, using the same transcription, for the two +flavors of written Pashto: Afganistani and Pakistani. + +1. Afghanistani Pashto + +\begin{center} +\begin{tabular}{|c|c||c|c||c|c||c|c||c|c||c|c|} +\patl{A}{'z}{'r}{D}{g}{-y} +\patl{b}{c}{z}{T}{l}{e} +\patl{p}{H}{zh}{Z}{m}{ay} +\patl{t}{kh}{'g}{`}{n}{ey} +\patl{'t}{d}{s}{gh}{'n}{||} +\patl{'s}{'d}{sh}{f}{w}{} +\patl{j}{dh}{x}{q}{-h}{LLah} +\patl{ch}{r}{S}{k}{L}{SLh} +\hline +\end{tabular} +\end{center} + +2. Pakistani Pashto + +\begin{center} +\begin{tabular}{|c|c||c|c||c|c||c|c||c|c||c|c|} +\paptl{A}{'z}{'r}{D}{g}{-y} +\paptl{b}{c}{z}{T}{l}{e} +\paptl{p}{H}{zh}{Z}{m}{ay} +\paptl{t}{kh}{'g}{`}{n}{ey} +\paptl{'t}{d}{s}{gh}{'n}{||} +\paptl{'s}{'d}{sh}{f}{w}{} +\paptl{j}{dh}{x}{q}{-h}{LLah} +\paptl{ch}{r}{S}{k}{L}{SLh} +\hline +\end{tabular} +\end{center} + +Nevertheless, one should be aware that an automatic transcription from +one glyph set to the other is not possible because, for example, a +letter such as \begin{pashto}x\end{pashto} is not used in Pakistani +Pashto and can be replaced by \begin{pashto}kh\end{pashto} or +\begin{pashto}sh\end{pashto}, depending on its pronunciation in a given word. + +\noindent +Example of Afghanistani Pashto: + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\AfghaPashtoOCP\fontfamily{omarb}\selectfont k-h ghUA'ray +chh d`ql yh zyAn AUDrrpUh shay dA U mnI || chh `ql hghh. qUtUnh +p-hs'rI kxI wzhnI zhh zhUnde wlA'rdI. zhUndUn p-h`ml AUArAd-h +wlA'rdI. ghUxtnh lUArAd-h d-hre-yshr ft ASl AUAsAs dI. cUmrh chh `ql +zyAtebz hghUmrh ArAd-h D`yf-h kebzI. \popocplist +\end{quote}} + +\noindent +and the same in Pakistani Pashto: + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\PakiPashtoOCP\fontfamily{omarb}\selectfont k-h ghUA'ray +chh d`ql yh zyAn AUDrrpUh shay dA U mnI || chh `ql hghh. qUtUnh +p-hs'rI kxI wzhnI zhh zhUnde wlA'rdI. zhUndUn p-h`ml AUArAd-h +wlA'rdI. ghUxtnh lUArAd-h d-hre-yshr ft ASl AUAsAs dI. cUmrh chh `ql +zyAtebz hghUmrh ArAd-h D`yf-h kebzI. \popocplist +\end{quote}} + +\noindent +transcribed: + +\begin{quote} +\texttt{k-h ghUA'ray chh d`ql yh zyAn AUDrrpUh shay dA\\ +U mnI || chh `ql hghh. qUtUnh p-hs'rI kxI wzhnI zhh zhUnde\\ +wlA'rdI. zhUndUn p-h`ml AUArAd-h wlA'rdI. ghUxtnh lUArAd-h\\ +d-hreyshr ft ASl AUAsAs dI. cUmrh chh `ql zyAtebz hghUmrh\\ +ArAd-h D`yf-h kebzI.} +\end{quote} + +A variant form \shortpashto{^^^^015d} of \shortpashto{'g} is provided +in the font. The user can change the \OTP{}s (see~\ref{writingOTPs}) +so that the former is used instead of the latter. + +\subsubsection{Sindhi Transcription} + +Sindhi being a language with many more letters than Arabic, and using +Arabic letters in a way quite different than Arabic, it is not +surprising that the Sindhi transcription is fundamentally different +from the Arabic, Farsi, Urdu and Pashto ones. As a matter of fact we +have tried to use as few non-alphabetic characters as possible, +following a more-or-less rational scheme loosely based on the +correspondence between Sindhi written in Arabic and in Devanagari +script and the standard transcription of the latter. Since shadda is +much more seldom in Sindhi than in Arabic, the ``double consonant $=$ +consonant $+$ shadda'' convention is not valid in this transcription; +instead we propose a transcription of the shadda diacritic: +\texttt{+}. + +\begin{center} +\begin{tabular}{|c|c||c|c||c|c||c|c||c|c||c|c|} +\stl{A}{p}{dh}{sh}{kh}{y} +\stl{'A}{ph}{.=d}{.s}{.n}{'y} +\stl{b}{j}{.d}{.z}{g}{meN} +\stl{=b}{=j}{.dh}{..t}{=g}{||eN} +\stl{bh}{=n}{=z}{..z}{l}{||} +\stl{t}{c}{r}{`}{m}{} +\stl{th}{ch}{.r}{gh}{n}{} +\stl{.t}{.h}{z}{f}{'n}{} +\stl{.th}{=kh}{zh}{q}{U}{LLah} +\stl{=s}{d}{s}{k}{-h}{SLh} +\hline +\end{tabular} +\end{center} + +\noindent +Remarks: + +\begin{enumerate} +\item The transcription \texttt{/} is used for constructions such as +\begin{sindhi}b/\end{sindhi} (\texttt{b/}), +\begin{sindhi}t/\end{sindhi} (\texttt{t/}), \begin{sindhi}kh/\end{sindhi} +(\texttt{kh/}), etc. +\item The \emph{waw} \shortarab{w} can be written in two ways: +\texttt{w} or \texttt{U}. +\end{enumerate} + +\noindent +Example: + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\SindhiOCP\fontfamily{omarb}\selectfont tn-hn kry AsAn khy +pn-hnjy =z-hnn khy sjA=g rkh'nU pUndU ||eN pn-hnjy jdUj-hd meN .=dA-hp +pydA kr'ny. AhU b/ m`lUm kr'nU pUndU t/ sndh meN hr 'A'yy wqt chA chA +thy r-hyU 'Ahy ||eN dshmn AsAn jy ||eN AsAn jy jdUj-hd jy khlAf k-h.rA +k-h.rA g-hA.t g-h.ry r-hyU 'Ahy. \popocplist +\end{quote}} + +\noindent +transcribed: + +\begin{quote} +\texttt{tn-hn kry AsAn khy pn-hnjy =z-hnn khy sjA=g rkh'nU\\ +pUndU ||eN pn-hnjy jdUj-hd meN .=dA-hp pydA kr'ny. AhU b/\\ +m`lUm kr'nU pUndU t/ sndh meN hr 'A'yy wqt chA chA thy r-hyU\\ +'Ahy ||eN dshmn AsAn jy ||eN AsAn jy jdUj-hd jy khlAf k-h.rA\\ +k-h.rA g-hA.t g-h.ry r-hyU 'Ahy.} +\end{quote} + +\subsubsection{Berber Transcription} + +The Berber transcription is different from the previous ones because +it is based on a tri-alphabetic system (Tifinagh, Latin and Arabic +alphabets).\footnote{The reader can find more information in \emph{Un +syst^^^^00e8me \TeX{} berb^^^^00e8re}, ^^^^00c9tudes et Documents +Berb^^^^00e8res, 11 (1994), La bo^^^^00eete ^^^^00e0 +Documents/^^^^00c9disud, Paris (France).} The goal of this +transcription is to enable output in the three alphabets, out of the +same code. In particular, since Latin alphabet has upper and lower +case, it should be possible to distinguish these (and of course ignore +the distinction when typesetting in Arabic or Tifinagh). In the table +below, all transcribed letters are in lowercase ASCII, but can very +well be written also in uppercase, producing the same result: +\texttt{Tifinagh}, \texttt{tifinagh} or \texttt{TIFINAGH} will all +three produce \begin{arab}tyfynAgh\end{arab}. + +\begin{center} +\begin{tabular}{|c|c|c|c||c|c|c|c||c|c|c|c|}\hline +Tr. & Lat. & Ar. & Tif. & Tr. & Lat. & Ar. & Tif. & Tr. & Lat. & Ar. & Tif. \\\hline +\ttl{a}{.h}{.s} +\ttl{b}{i}{t} +\ttl{c}{j}{.t} +\ttl{gh}{k}{u} +\ttl{d}{l}{x} +\ttl{.d}{m}{z} +\ttl{.e}{n}{.z} +\ttl{f}{.n}{.i} +\ttl{g}{q}{--} +\ttl{.g}{r}{} +\ttl{h}{s}{} +\hline +\end{tabular} +\end{center} + +\noindent +Remarks: + +\begin{enumerate} +\item Letter \shortarab{U} can also be transcribed \texttt{w}. +\item Letter \shortarab{I} can also be transcribed \texttt{y}. +\item The stroke \shortberber{^^^^063f} is not to be confused with the +graphical connecting stroke \emph{keshideh}. It is placed between +words and plays a grammatical role. +\item Duplication of consonants (\emph{shaddah}) again is transcribed +by writing the corresponding consonant twice. +\end{enumerate} + +\noindent +Example: + +{\pardir TRT\textdir TRT +\begin{quote} +\pushocplist\ArabicBerberOCP\fontfamily{omarb}\selectfont Tifinagh, +d--tira timezwura n .imazighen. Llant di tmurt--nnegh dat tira n +ta.erabt d--tla.tinit. Nnulfant--edd dat .imir n ugellid +Masinisen. .Imazighen n .imir--en, ttarun--tent ghefi.zra, degg +.ifran, ghef .igduren, maca tiggti ghef i.zekwan~: ttarun fell--asen +.isem n umettin, d wi--t--ilan, d wayen yexdem di tudert--is akken ur +t ttettun .ina.tfaren. \popocplist +\end{quote}} + +\noindent +transcribed: + +\begin{quote}\small +\texttt{Tifinagh, d--tira timezwura n .imazighen.\\ +Llant di tmurt--nnegh dat tira n ta.erabt d--tla.tinit.\\ +Nnulfant--edd dat .imir n ugellid Masinisen. .Imazighen n\\ +.imir--en, ttarun--tent ghefi.zra, degg .ifran, ghef .igduren,\\ +maca tiggti ghef i.zekwan~: ttarun fell--asen .isem n umettin,\\ +d wi--t--ilan, d wayen yexdem di tudert--is akken ur t ttettun\\ +.ina.tfaren.} +\end{quote} + +\noindent +The same code will produce the following output in the Tifinagh alphabet: + +\begin{quote} +\begin{tifinagh}Tifinagh, d--tira timezwura n .imazighen. +Llant di tmurt--nnegh dat tira n ta.erabt d--tla.tinit. Nnulfant--edd +dat .imir n ugellid Masinisen. .Imazighen n .imir--en, ttarun--tent +ghefi.zra, degg .ifran, ghef .igduren, maca tiggti ghef i.zekwan~: +ttarun fell--asen .isem n umettin, d wi--t--ilan, d wayen yexdem di +tudert--is akken ur t ttettun .ina.tfaren.\end{tifinagh} +\end{quote} + +\noindent +and the following one in the Latin alphabet: + +\begin{quote} +\begin{latberber}Tifinagh, d--tira timezwura n .imazighen. +Llant di tmurt--nnegh dat tira n ta.erabt d--tla.tinit. Nnulfant--edd +dat .imir n ugellid Masinisen. .Imazighen n .imir--en, ttarun--tent +ghefi.zra, degg .ifran, ghef .igduren, maca tiggti ghef i.zekwan~: +ttarun fell--asen .isem n umettin, d wi--t--ilan, d wayen yexdem di +tudert--is akken ur t ttettun .ina.tfaren.\end{latberber} +\end{quote} + +\section{Writing Your Own Transcription}\label{writingOTPs} + +We have developed and presented in this paper a certain number of +Arabic alphabet language transcriptions for two reasons: first, to +show the possibilities and power of \OMEGA, and second, to give a +starting point for the user to create \hisher{} own transcriptions. + +The process of creating a new transcription is twofold: the first +part, which can be very difficult and painful, consists of finding the +combination of letters, digits and ASCII symbols which will transcribe +each character; the second one, which is straightforward (modulo some +precautions) is to implement this in \OMEGA{} by writing the +appropriate \OTP. + +\subsection{A Good Transcription: Is it Possible?} + +There are (at least) two goals for a good transcription: + +\begin{enumerate} +\item \emph{It has to be readable and easily memorizable}. In other +words, \texttt{AHmd} is better than \texttt{'.hmd}, for denoting +\begin{smallarab}AHmd\end{smallarab} : although an apostrophe can be +considered a logical choice for transcribing an alif and the period in +front of the h may denote that it is an emphatic `h' sound, taking an +A for alif and a capital H for the emphatic h is more readable; also +using rules such as ``uppercase ASCII characters transcribe emphatic +letters'' is an easy way to memorize the transcriptions of +\shortarab{H}, \shortarab{T}, \shortarab{D}, \shortarab{S}, +\shortarab{Z}. +\item \emph{It has to be complete and avoid ambiguities}. Of course +all letters of the target language have to be covered, but having many +letters to transcribe leads sometimes to ambiguities: for example +taking \texttt{h} for \shortarab{h}, \texttt{k} for \shortarab{k} and +\texttt{kh} for \shortarab{kh} are perfectly logical choices; +nevertheless there is a hitch: when you need to transcribe +\begin{smallarab}k-h\end{smallarab} you are tempted to write simply +\texttt{kh} and this will of course produce \shortarab{kh} +instead. The solution we have given to this problem is to type a +hyphen between the letters which are not considered as a `digraph', +but this is only a compromise solution: the user must constantly be +aware of this problem, and this is hardly the case when you are +concentrated in your text... +\end{enumerate} + +It is clear that these two goals are contradictory: an accurate and +unambiguous transcription has to be complicated and will be difficult +to read and memorize; a friendly and easily readable transcription +will be full of ambiguities. + +An additional problem when making a transcription is to choose between +\emph{(etymo)logical}, \emph{phonetic} and \emph{graphical} +representations of characters. A typical example is the standard +\OMEGA{} transcription of Greek: \texttt{w} is chosen for letter +\shortgreek{w}, this is a purely \emph{graphical} choice: the `w' +looks like an omega, but has absolutely no other relation with, +neither historical nor phonetic (the letter omega represents the sound +`o' in modern Greek); \texttt{b} is chosen for letter \shortgreek{b}, +this is an \emph{etymological} choice: the Latin `B' derives from the +ancient Greek `B', otherwise \shortgreek{b} looks quite different than +`b' and is pronounced `v' in modern Greek; finally, \texttt{x} is a +\emph{phonetic} transcription of letter \shortgreek{x}; clearly they +do not bear any resemblance, and historically it is not clear (at +least to the author) why `x' should be derived from \shortgreek{x} +(their positions in the alphabet is quite different as well, and this +is an argument speaking against an etymological relation between the +letters). + +The reader may object that this distinction between etymological, +phonetic and graphical representations is not relevant for Arabic +alphabet transcriptions; actually this is only partly true: take for +example \texttt{bh} for \shortsindhi{bh}, this is an +\emph{etymological} transcription in the sense that it reflects the +standard transcription of the Indic alphabet letter which corresponds +to that Sindhi letter. Also \texttt{`} for ayn is in some sense a +\emph{graphical} representation: it has been chosen because it +resembles the IPA transcription of the ayn, which is ^^^^0295. For the +same reason, \texttt{'} has been chosen for the hamza with carrier (in +\shortarab{'a}, \shortarab{'u}, etc.): the hamza's IPA transcription +is ^^^^0294. + +We hope to have convinced the reader that the making of a +transcription is a difficult task, needing a lot of thought, +compromises and tests. Once again, we would like to emphasize the fact +that our transcriptions are only temptative proposals and should not +be taken as standards of any kind; after all the power of \OMEGA\ is +that it can work with any input transcription without affecting +further processing, be it contextual analysis, diacritic placement or +esthetical ligaturing. + +In the next section we will see how to implement a new transcription +or change an existing one by writing/modifying an \OTP\ file. But +first some generalities on the \OTP{}s used by the Arabic \OMEGA\ +system. + +\subsubsection{The \OTP{}s used by the Arabic \OMEGA{} system} + +When \OMEGA{} reads the text flow it places letters, digits and +punctuation (whatever is not an escape or special character) into a +buffer. When it encounters a special character it stops buffering and +executes one after the other all currently active \OTP{}s on the +buffer. In theory, \OTP{}s could be used to arbitrarily send +character combinations to other combinations: one could very well +imagine an \OTP{} sending the string "Yannis" to "John" and "John" to +"Yannis", or "Microsoft Word" to +"^^^^02a7\kern-1pt^^^^04a9^^^^03be^^^^0468^^^^029a"; nevertheless, +such an \OTP{} would not be of general use... + +Our development has mainly been focused in building \OTP{}s in +accordance to the following scheme: +$$ +\boxed{\text{Input text}} \xrightarrow{\text{\texttt{foo2uni}}} \boxed{\text{Unicode++}} +\xrightarrow{\text{\texttt{uni2foo}}} \boxed{\text{DVI output}} +$$ +where \texttt{foo2uni} sends text encoded in an arbitrary encoding +into Unicode++ (Unicode++ is Unicode extended for the needs of +\OMEGA{} and typography), and \texttt{uni2foo} converts +Unicode++-encoded data into the encoding of the output font. By this +method we are able to keep completely separate input encoding and font +encoding. + +In the case of Arabic things are slightly more complicated since an +additional step is needed: contextual analysis. This is where our +scheme proves to be extremely efficient: by performing contextual +analysis on the level of Unicode++, and hence obtaining the following +new scheme: +$$ +\boxed{\text{Input text}} \xrightarrow{\text{\texttt{foo2uni}}} \boxed{\text{Unicode++}} +\xrightarrow{\text{\texttt{uni2cuni}}} \boxed{\text{cUnicode++}} +\xrightarrow{\text{\texttt{cuni2oar}}} \boxed{\text{DVI output}} +$$ +we still remain independent of both the input and the font +encoding. This means that if we need to adapt \OMEGA{} to a new Arabic +encoding we only need to indicate which code position corresponds to +which Unicode character, and, on the other hand, if we want to adapt a +new font to \OMEGA, we only need to indicate which font position +corresponds to which contextual form of which character, in +cUnicode++. + +In the next section we will partly describe the syntax of \OTP{} files +by giving examples of \texttt{foo2uni} cases. + +\subsection{Implementing a Transcription} + +The \OTP{} files we will need for input encoding $\to$ Unicode++ +transformations use only part of the syntax of \OTP{} +files.\footnote{The \texttt{uni2cuni} \OTP{} file already needs more +complicated constructions.} Such an \OTP{} file is of the following +form: + +\begin{verbatim} +input: 1; +output: 2; +expressions: +... +... +\end{verbatim} + +\noindent where \texttt{input: 1; output: 2;} means that input is +8-bit while output is 16-bit, and \texttt{...} are lines of the +following form: + +\begin{verbatim} +before => after ; +\end{verbatim} + +\noindent where \texttt{before} is an expression before the +transformation, and \texttt{after} after it. For example, + +\begin{verbatim} +`a' => "o" ; +\end{verbatim} + +\noindent will transform all `a's in the file into `o's. + +How do we describe characters and strings? On the left side of +\texttt{=>} we can only put separate characters: they can be written +either as ``grave accent+ASCII character+apostrophe'' or as +\texttt{@"XYZT} where \texttt{XYZT} are hexadecimal digits: in this +case we are not restricted to ASCII characters. The latter syntax can +also be used on the right side. For example, + +\begin{verbatim} +`i'`j' => @"0133 ; +@"008E => @"00E9 ; +\end{verbatim} + +\noindent will send the string `ij' to the Unicode++ character +representing the Dutch ^^^^0133 ligature, and the 8-bit code 8E (a +Macintosh `e' with acute accent) to the Unicode++ character 00E9 +(which is the Unicode `e' with acute accent). + +On the right side of \texttt{=>} we can also write complete strings, +possibly containing \OMEGA{} commands, which will be forwarded to the +next \OTP{} or to the typesetting engine of \OMEGA. For example, + +\begin{verbatim} +`~' => "\penalty10000" ; +\end{verbatim} + +\noindent sends the tilde character to the \TeX{} command of infinite +penalty.\footnote{By this we obtain the same result as in \TeX{} but +without turning tilde into an active character, a fact that \TeX{} +users will surely appreciate.} We can also use ranges on the left +side: for example, \texttt{`a'-`k'} means ``all characters between a +and k''. + +By using parentheses and the vertical bar on the left side, we obtain +the Boolean `or' operator: + +\begin{verbatim} +(`E'|`e') => ; +\end{verbatim} + +\noindent for example, will send both uppercase and lowercase letters +`e' to nothing (a transformation which would leave Perec's book +\emph{La disparition} unchanged\footnote{Although there are rumors +that there is a single `e' in that book... The authors were not able +to find it yet.}). + +This operator becomes even more useful by the fact that we can use on +the right side the exact character matched on the left side: the +commands \verb=\1=, \verb=\2=, ... , \verb=\9= used on the right side +stand for the first, second, ..., ninth character matched on the left +side. For example: + +\begin{verbatim} +`c'(`a'|`e'|`i'|`o'|`u')`t' => "m" \1 "p" ; +\end{verbatim} + +\noindent will send cat, cet, cit, cot, cut respectively to map, mep, +mip, mop, mup. + +We can go even further: \OTP{} syntax allows us to add or substract a +fixed offset to the characters matched on the left side. For example: + +\begin{verbatim} +`a'-`z' => #(\1 - @"0020) ; +\end{verbatim} + +\noindent will substract 20 from the code position of the character +found on the left side. The characters on the left side being +precisely lowercase letters, this offset will turn them into uppercase +ones. + +\subsubsection{Examples} + +The beginning of the \OTP{} \texttt{7arb2uni}, used to send the ASCII +transcription of Arabic to Unicode++, described in~\ref{arabtrans}, to +Unicode++, looks like this: + +\begin{verbatim} +input: 1; +output: 2; + +expressions: + +`L'`L'`a'`h' => @"FDF2 ; +`S'`L'`h' => @"FDFA ; + +`|'`|'`|'`|' => @"0621 @"0651 ; +`|'`|' => @"0621 ; +`z'`h'`z'`h' => @"0698 @"0651 ; +`z'`h' => @"0698 ; +`z'`z' => @"0632 @"0651 ; +`z' => @"0632 ; +`y'`y' => @"064A @"0651 ; +`y' => @"064A ; +`v'`v' => @"06A4 @"0651 ; +`v' => @"06A4 ; +`u'`N' => @"064C ; +`u' => @"064F ; +\end{verbatim} + +Let us take a closer look at these lines. The left sides +\texttt{`L'`L'`a'`h'} and \texttt{`S'`L'`h'} correspond to the +(religious) ligatures \shortarab{LLah} and \shortarab{SLh} which +appear in the \emph{Arabic Presentation Forms} part of Unicode, that's +why the code positions we send them to are so high. The line +\texttt{`|'`|'`|'`|'} corresponds to a double hamza; according to our +transcription rules, by writing a letter's transcription twice without +intermediate hyphen, we get the letter followed by a \emph{shaddah} +diacritic. On the right side of \texttt{`|'`|'`|'`|'} you see two +codes: 0621 stands for the stand-alone hamza in Unicode++, and 0651 +for the \emph{shaddah}. The next line will send \texttt{||} to the +stand-alone hamza. + +WARNING: the order of these lines is very important: transformations +are matched in the order lines are read. By putting the double hamza +before the single one, \OMEGA{} will first look for a double hamza and +\emph{only if it does not find any} will then proceed to transforming +a single one. + +For the same reason digraphs such as \texttt{zh} must appear before +their first letter in the \OTP{} file (and trigraphs before the +starting digraph, etc.). That's why the order of lines starting with a +`z' is `zhzh', `zh', `zz', `z'.% +\footnote{There is a simple way of avoiding ordering problems: after +having written this part of the \OTP{} file, run a line sorting +program on it so that lines are sorted in \emph{inverse} +lexicographical order. This will automatically place trigraphs before +digraphs before singletons, etc.} + +Our sample file ends like this: + +\begin{verbatim} +`h'`h' => #(@"0647) #(@"0651) ; +`h' => #(@"0647) ; +`-'`-'`-' => @"2014; +`-' => ; +. => #(\1) ; +\end{verbatim} + +This means that after having entered all digraphs using `h' as second +character, we enter the stand-alone `h', first as a double letter, and +secondly as a single letter. Finally we send the triple hyphen to an +m-dash `---' and the single hyphen to nothing: its purpose is to +prevent combinations of letters to be interpreted as digraphs: when +reading \texttt{k-h}, \OMEGA{} will not match it with \texttt{kh}: it +will first match \texttt{k} with letter kaf, then send the hyphen to +the vacuum of non-existence and when arriving to the \texttt{h} the +\texttt{k} will already be matched so that it is too late to construct +a \texttt{kh} digraph. + +The period at the beginning of the last line is part of the \OTP{} +syntax we have not seen yet: it means `any character'. Since this is +the last line of the file, we can interpret it rather like `any still +not matched character'. This line simply sends any character not yet +matched to itself. + +\subsection{Wrapping it up} + +Once the \OTP{} file has been written or modified, one only needs to +compile it (by using the \texttt{otp2ocp} utility) and place it where +\OMEGA{} expects to find it. On the \LaTeX{} command level, \OTP{}s +are loaded via the \verb=\ocp= command, in a way similar to fonts: to +load the file \texttt{foo2uni} one will write + +\begin{verbatim} +\ocp\FooUni=foo2uni +\end{verbatim} + +Of course this is preferably done inside a \LaTeX{} package or style +file: the final user should not need to deal with or understand this +kind of code. Once the \OTP{}s are loaded they are combined into +\emph{lists}. In this way we can push or pop simultaneously \OTP{}s +on/from a stack. This is useful because a language switch usually +requires several \OTP{}s to be changed at once. To define \OTP{} lists +we use the following syntax: + +\begin{verbatim} +\ocplist\ArabicOCP= +\addbeforeocplist 100 \ArabUni +\addbeforeocplist 200 \UniCUni +\addbeforeocplist 300 \CUniArab +\nullocplist +\end{verbatim} + +The numbers (100, 200, 300) allow us to introduce additional \OTP{}s, +if necessary, between the already defined ones. Finally, to +activate/desactivate an \OTP{} list, we use the commands +\verb=\pushocplist= (followed by the name of the \OTP{} list) and +\verb=\popocplist=. To take a real life example, + +\begin{verbatim} +\ocp\ArabUni=7arb2uni +\ocp\UniCUni=uni2cuni +\ocp\CUniArab=cuni2oar +\ocplist\ArabicOCP= +\addbeforeocplist 100 \ArabUni +\addbeforeocplist 200 \UniCUni +\addbeforeocplist 300 \CUniArab +\nullocplist +\pushocplist\ArabicOCP +\end{verbatim} + +\noindent is sufficient to load all \OTP{}s necessary for typesetting +in the Arabic language. + +\section{Availability and Further Information} + +The \OMEGA{} system is entirely in the public domain. It can be +obtained from any CTAN server. The latest information on \OMEGA{} and +its Arabic system can be found on the \OMEGA{} server: + +$$\text{\texttt{http://www.ens.fr/omega}}$$ + +\noindent courtesy of the ^^^^00c9cole Normale Sup^^^^00e9rieure de +Paris. + +\section{Samples} + +Starting from next page, a few samples (Arabic, Berber, Sindhi). For +these examples we have switched the background language to Arabic, so +that even page numbers are in Arabic. + +\newpage +\makeatletter +\def\@evenfoot{\reset@font\hfil{\textdir TLT\thepage}\hfil} +\let\@oddfoot=\@evenfoot +\makeatother +\pagedir TRT +\bodydir TRT +\pardir TRT +\textdir TRT +\def\latinit#1{{\fontfamily{omlgc}\selectfont\pushocplist\BasicLatinOCP% +\textdir TLT #1\popocplist}} +\def\rmdefault{omarb} +\fontfamily{omarb}\selectfont +\pushocplist\ArabicOCP + + +\subsection{'aTfAl AlghAb"t} + +kAn l'aHd AlmlUk AlqdmA|| 'akht t`ysh m`h fI qSrh, b`d 'an mAt-t +zUjt-h, wtrkt lh mn Al'awlAd thlAth"t: 'amyryn w'amyr"t. wqd AzdAd Hbb +Almlk l'awlAd-h, b`d wfA"t wAldt-hm Almlk"t, w'aHbbhm HbbA kthyrA; +ly`wwDhm mA fqdUh mn `Tf 'ammhm wHbbhA lhm, wtfkyr hA fyhm; fkAn ys'al +`nhm kllmA HDr, wyfkkr fyhm kllmA dkhl, wywSI bhm kllmA khrj, wyTlbhm +kllmA jls ltnAwl T`Am Al'ifTAr 'aU AlghdA|| 'aU AlshshAI 'aU Al`shA||. + +mHHm"t 'akhyhA l'awlAd-h, wSmm-mt fymA bynhA wbyn nfs-hA 'an t`ml srrA +kll wsyl"t m-mkn"t l'ib`Ad-hm `n 'abyhm wAlttkhllS mnhm. + +wfI yUm mn Al'ayyAm kAn Al'amyrAn yl`bAn m` 'akht-hmA Al'amyr"t fI +HdA'yq AlqSr b`d khrUj Almlk, fshUUqt-hm `mmt-hm wHbb-bt 'ilyhm +Aldhdh-hAb m`hA 'ilI AlghAb"t l-ll`Ab fyhA, w-w`dt-hm 'an tryhm +'ashyA|| jmyl"t w'al`AbA ldhydh"t sArr"t tHt Al'ashjAr hnAk. + +fSddq Al'amyrAn wAl'amyr"t mA qAlt-h `mmt-hm, wlm y`rfUA mA tkhfyh +`nhm mn Alshshrr, wdhhbUA m`hA l-ll`b wAlrryAD"t fI 'alghAb"t, +wmshAhd"t Al'ashA|| Aljmyl"t fyhA, wr'uy"t Al'al`Ab Alghryb"t tHt +'ashjArhA. + +wqd sh`r Al'aTfAl bsrUr kthyr `nd mAkhrjUA m` `mmt-hm lhdhh +AlrrHl"t. w'akhdhUA ymshUn m`hA fI AlghAb"t HttI wSlUA 'ilI wsThA, +f'aHssUA bAltt`b Alshshdyd, wThrt `lAmAt-h fI mshyt-hm, w`lI wjUh-hm +b`d hdhh AlrrHl"t AlTTUyl"t Almt`b"t AlltI lm yjrrbUhA mn qbl. UlmAA +sh`rt Al`mm"t bshdd"t t`bhm, qAlt lhm: nAmUA hnA tHt hdhh Alshshjr"t +HttI tHDr AlHUryyAt ltl`b 'amAmkm 'al`AbA lm trUhA, wstjdUn fI +mshAhdt-hA kll ldhdh"t wsrUr. \popocplist + +\pushocplist\ArabicBerberOCP + +\subsection{Allal i useqdc n y.drisn \OMEGA\ d-tamazight} + +%\noindent{\leaders\hrule height0.5pt\hfill} +%\par + +A dd nessken s wayes yif useqdec n \OMEGA\ i tira s tutlayt tamazight, +ama s tifinagh, ama s isekkilen ila.taniyen. Newwi-dd tamazight am, +tutlayt yeddren (yettwarun s tifinagh tiynayin)~: izmer umdan ad +iseddu yall tighura n usuddes n tira, i waraten ussnanen, itekniken +negh i wid n tsikkla, am wid ssexdamen i usemsaru n tfransist. + +\OMEGA, d ameslay n usmihel i usuddes n tira. Am-wakken ne.zra, d ayen +i dd yttakken i.zubba.z war taggara i useqdec d usihrew, maca issefk +ad ilmed uqeddac kra tussniwin. Nunz-as, ta.z.zayt n ulmad-a, nezmer a +tt nsifess s useqdec n inagrawen n urmas n tira, isegh.zanen n usmihcl +n waraten, ittwassnen a.tas (wid ittnuzun, srayn ghef umdan, wid +izemren ad ssxedmen tazmert tasemsirawt n kra inagrawen imehlanen am +wid n \latinit{Macintosh, Windows, Unix}. + +Tan.da tamzwarut n \OMEGA{} --- ghas tin ay ittalasen ism n \OMEGA{} +---, us tli ageruedm i uqeddac. Am gg imeslayen n usmihel akk, ad yaru +wmdan ahil, deffir, a t issefsu akken a t yessughal s anqal n +tmacint. Di \OMEGA{}, ahil d ara n u.dris (n.t.te.dn ghur-s kra n +tsun.diwin i usbuni d tghessa tame.z.zult). Asefsu, d aselkem n wahil +\OMEGA~; angal n tmacint ara dd iffghen, d win, i d aglam n usebter ay +ittusuddsen, Iqqim-dd imir-n usemsaru. + +Akala-ya, yezmer a t yaf yefregh win inumen iseqdac n i.drisen ghef +\latinit{Macintosh, Windows}, d wiyi.d, i degg a.dris a dd iffegh di +tsemsarut akken yella gg uqdil [Anagraw-a yettwassnen s yism-is +imiwzil, s tglizit \latinit{<<~wysiwyg~>>}, ycsseghla.d kra~: a.dris +ara dd yesuffegh uqeddac, ad yili ghas s tseddi umi yessawe.d ugdil~; +asgmu.d ara dd tsuffegh tsemsarut, yesmer ad yili yuser kra.] + +Iwakken ad yeqqim useqdec sray f umdan, yezmer ad yessexdem asegh.zan +ittwassnen d allaeln i urmas. Taghessa tame.z.zult n wara (ighfawen, +tifula, tiseddarin, tizmilin tinaddayin, timitar tinmudag, asmel n +tektabin), a tt yessyghal si tbunit n usegh.zan-nni gher tsun.diwin n +\OMEGA. Imir, \OMEGA, ad issefsu angal-nni a dd yessuffegh a.dris +yuq.zen taghessa tame.z.zult tamezwarut, maca tira-ines ad ilint +ulaghent ugar. \popocplist + +\pushocplist\SindhiOCP +\subsection{ktyn kr mU.ryA j.=d-hn} + +%\noindent{\leaders\hrule height0.5pt\hfill} +%\par + +tn-hn kry AsAn khy pn-hnjy =z-hnn khy sjA=g rkh'nU pUndU ||eN pn-hnjy +jdUj-hd meN .=dA-hp pydA kr'ny. AhU b/ m`lUm kr'nU pUndU t/ sndh meN +hr 'A'yy wqt chA chA thy r-hyU 'Ahy ||eN dshmn AsAn jy ||eN AsAn jy +jdUj-hd jy khlAf k-h.rA k-h.rA g-hA.t g-h.ry r-hyU 'Ahy. + + +AsAn khy AhA b/ =khbr hj'n g-hrjy t/ AsAn jy 'As pAs ||eN ysgrdA'yy +meN chA chA thy r-hyU 'Ahy. hndstAn meN chA thy r-hyU 'Ahy, AfghAnstAn +meN chA thy r-hyU 'Ahy. `rAq ||eN AyrAn meN chA thy r-hyU 'A-hy ||eN +'AmrykA ||eN sUUyt yUnyn chA chA sUcy r-hyA 'Ahn. j.=d-hn AsAn s=jy +dnyA jy syAst ty ||eN s=jy dnyA jy jdUj-hd ty ||eN s=jy dnyA jy +tndylyn ty n..zr rkhndAsUn ||eN An-hn tbdylyn jy A=srn khy pn-hnjy +mlk, qUm ||eN `rAm ty pUndy .=dsndAsUn t/ An-hn tbdylyn mAn k-h.rA +mnfy ||eN k-h.rA m=sbt A=sr 'Ahn. t.=d-hn 'yy AsAn pn-hnjy jdUj-hd khy +b-htr b/ kry sg-hndAsUn t/ chU.tkAry UArU .hl b/ =gUly UyndAsUn. + + +r=gU =gAl-hyUn kndy ||eN n`rn h'nndy AsAn jy qUm chAlyh sAl py.rA'yUn +||eN `=zAb bhU=gyA 'Ahn ||eN An-hn n`rn AsAn jy qUm lA||i Udhyk +py.rA'yUn ||eN `=zAb nAzl kyA 'Ahn . jyk.=d-hn AsAn meN A=j qUm jy +Amyd pydA thy 'Ahy t/ AhA AsAn jy `ml ||eN AsAn jy by lU=s jdUj-hd jy +kry pydA thy 'Ahy ||eN mA'y-hU AsAn .=dAn-hn wAj-hA'yy rhyA 'Ahn. t/ +AsAn 'yy 'AhyUn jyky kj-h n/ kj-h kndAsUn. pr AsAn khy .=ds'nU 'Ahy t/ +dnyA jy Andr chA thy rhyU {}'Ahy ||eN AsAn jU dshmn ky'yn .hAltn khy +pn-hnjn mfAdn meN ktb 'A'n'n jy kUshsh kry rhyU 'Ahy, An-hy||a jy +lA||i .zrUry 'Ahy t/ AsAn pA'n meN .=dAhp pydA kryUn ||eN pA'n meN +=jA'n jU hk Usy` =khzAnU pydA kryUn. ||eN AsAn mUjUd-h .sUrt .hAl khy +smj-h'n lA||i rUzmrh jy my.dyA ||eN dnyA jy Andr thynd.r kArUA'yyn ty +g-hry n..zr rkhUn t/ dshmn ||eN jAr.hyt psnd qUtUn ||eN AsAn ty qAb.z +qUtUn dnyA jy Andr thynd.r tbdylyn khy sndn .hq meN ||eN sndn mfAdn jy +.hq meN, sndh ty jAr.hyt qA'nm rkh'n jy .hq meN, sndh khy mstql qb.zy +meN kr'n jy .hq meN ky'yn ktb 'A'ny r-hyUn 'Ahn. + +\popocplist +\end{document} diff --git a/Master/texmf-dist/doc/omega/omega-devanagari/india.ps.gz b/Master/texmf-dist/doc/omega/omega-devanagari/india.ps.gz Binary files differnew file mode 100644 index 00000000000..c22c0a6e78f --- /dev/null +++ b/Master/texmf-dist/doc/omega/omega-devanagari/india.ps.gz |