%!PS-Adobe-2.0 %%Creator: dvipsk 5.58f Copyright 1986, 1994 Radical Eye Software %%Title: manual.dvi %%Pages: 9 %%PageOrder: Ascend %%BoundingBox: 0 0 596 842 %%DocumentPaperSizes: a4 %%EndComments %DVIPSCommandLine: dvips manual.dvi %DVIPSParameters: dpi=300, compressed, comments removed %DVIPSSource: TeX output 1996.11.16:1835 %%BeginProcSet: texc.pro /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N /X{S N}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{dup dup 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 /IE 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 IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /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 dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{ 128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup 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 /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 sub]/id ch-image N /rw ch-width 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 dup 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 dup gp add /gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{ dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1 adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 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}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{] }if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 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 dup 1 get dup mul exch 0 get dup 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 /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for 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 /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V {}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false} ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail {dup /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 300 300 (manual.dvi) @start /Fa 1 44 df<13C0A9B51280A23800C000A911147E8F17>43 D E /Fb 6 121 df98 D101 D111 D<3801FFCE000713FF121F5A48C6FC00FC13 3F5A487FA26C130E6C90C7FCEA7F8013FC381FFFE06C13F8000313FE38001FFF01001380 141F0070EB07C012F814037E14077E6CEB0F80EBC07F90B512005C00FB13F838707FC01A 1F7B9E25>115 D<137013F8A8007FB512C0B612E0A26C14C0D800F8C7FCAF157015F8A4 EBFC01A290387E07F0EB7FFF6D13C0010F1380903803FE001D287EA725>I<397FF81FFC 39FFFC3FFEA2397FF81FFC3903E007C00001EB0F809038F01F003800F81EEB7C3EEB3C7C EB3E786D5A130F6D5A5C1303497E497E131E1478497EEB783EEBF81F497E3901E0078000 0314C03907C003E0397FF01FFED8FFF813FFA2D87FF013FE201F7E9E25>120 D E /Fc 1 46 df<7E12E012F8B4FC13C013F813FF14E014FEA214E0140013F813C090C7 FC12F812E0128017126F882A>45 D E /Fd 7 112 df<15C01403EC0F00143C1470495A EB0780011EC7FC1378EA01E0EA0380000FC8FC123C12F0A2123C120FEA0380EA01E0EA00 78131EEB0780EB01E0EB0070143C140FEC03C014001A1C7C9823>60 D<12C012F0123C120FEA0380EA01E0EA0078131EEB0780EB01E0EB0070143C140FEC03C0 A2EC0F00143C1470495AEB0780011EC7FC1378EA01E0EA0380000FC8FC123C12F012C01A 1C7C9823>62 D97 D<137CEA01C338070080 EA0E07121E001C1300EA3C0248C7FCA35AA5EA70011302EA3004EA1838EA0FC011147E93 14>99 D<147C14CEEB019E1303140CEB0700A4130EA3EBFFF0EB0E00A25BA55BA55BA55B A45B1201EA3180127948C7FC1262123C17297E9F16>102 D104 D<137CEA01C33803018000 0E13C0121E001C13E0123C1278A338F003C0A3EB07801400EA700F130EEA3018EA1870EA 07C013147E9316>111 D E /Fe 2 42 df<127012F8A3127005057C8D0D>1 D<15C0A2156081A28181B612FE81C8EA01C0ED00F0163C160F163C167016C0ED0380B712 005DC8120C5D5D157015605DA2281A7E972D>41 D E /Ff 55 127 df<127012F8B012701200A5127012F8A31270051C779B18>33 D<13C01201A3EA07F0EA 1FFC487EEA7DDF3871C780EAF1C3EAE1C7A338F1C0001279127F6C7EEA0FF8EA03FC6C7E 13CFEBC780EA61C312F1A212E1EAF1C73871CF00EA7DDFEA3FFEEA1FF8EA07F0EA01C0A3 120011247D9F18>36 D38 D<1238127C127EA2123E120EA3121E123C 127812F812F012C0070E789B18>I<137013F01201EA03C0EA0780EA0F00121E121C123C 123812781270A212F05AA87E1270A212781238123C121C121E7EEA0780EA03C0EA01F012 0013700C24799F18>I<126012F012787E7E7EEA0780120313C0120113E01200A213F013 70A813F013E0A2120113C0120313801207EA0F00121E5A5A5A12600C247C9F18>I<1360 13F0A7387FFFC0B512E0A26C13C03800F000A7136013147E9718>43 D<123C127E127FA3123F120F120E121E127C12F81270080C788518>I<387FFFC0B512E0 A26C13C013047E8F18>I<127812FCA412780606778518>I48 DI<131F5B1377A213E7120113C7EA03 8712071307120E121E123C1238127812F0B512F8A338000700A6EB7FF0A3151C7F9B18> 52 D<383FFF80A30038C7FCA8EA3BFCEA3FFE7F383E0780383803C0380001E01300A212 6012F0130100E013C0EAF003387C0F80383FFF006C5AEA07F8131C7E9B18>I<137E48B4 FC00071380380FC3C0EA1F03123C383801800078C7FC1270A2EAF3F8EAEFFEB5FC38FE0F 8038F803C0EAF00114E01300A312701301007813C0EA3C03381E0F80380FFF006C5AEA03 F8131C7E9B18>I57 D<123C127EA4123C1200A81238127C127EA3123E120E 121E123C127812F01260071A789318>59 D<14C0EB03E01307EB1FC0EB3F80EBFE00485A EA07F0485AEA3F8048C7FC12FCA2127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07 E01303EB00C013187E9918>I<387FFFC0B512E0A26C13C0C8FCA4387FFFC0B512E0A26C 13C0130C7E9318>I<126012F87E127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07 E0A2EB1FC0EB3F80EBFE00485AEA07F0485AEA3F8048C7FC12FC5A126013187E9918>I< EA0FF8EA3FFE487E38F80F80EAF003A2130738001F00133E13FCEA01F05B485AA55BC8FC A5EA0380487EA36C5A111C7D9B18>I<137013F8A213D8A2EA01DCA3138CEA038EA4EA07 07A5380FFF80A3EA0E03381C01C0A3387F07F000FF13F8007F13F0151C7F9B18>65 D82 D<383FFFE05AA2387001C01303EB07801400C65A131E131C133C5B137013F0485A5B1203 485A90C7FC5A001E13E0121C123C5A1270B5FCA3131C7E9B18>90 DI<126012F07EA21278127CA27EA2121E 121FA26C7EA212077FA26C7EA26C7EA212007FA2137CA2133C133EA27FA27F1480A21307 EB030011247D9F18>II<387FFFC0B512E0 A26C13C013047E7F18>95 D97 D<127E12FE127E120EA5133EEBFF80000F13C0EBE3E0EB80F0EB00701478000E1338A512 0F14781470EB80F0EBC3E0EBFFC0000E138038067E00151C809B18>IIIII< 3803F1F03807FFF85A381E1F30383C0F00EA3807A5EA3C0FEA1E1EEA1FFC485AEA3BF000 38C7FC123CEA1FFF14C04813E0387801F038F00078481338A36C1378007813F0EA7E0338 3FFFE0000F13803803FE00151F7F9318>I<127E12FE127E120EA5133FEBFF80000F13C0 EBE1E013801300A2120EAA387FC7FC38FFE7FE387FC7FC171C809B18>II<127E12FE127E120EA5 EB3FF0A3EB0780EB0F00131E5B5B5BEA0FF87F139C131EEA0E0FEB0780130314C0387FC7 F812FF127F151C7F9B18>107 DI<38FBE3E0 38FFF7F0EBFFF8383E3E38EA3C3CA2EA3838AB38FE3E3EEB7E7EEB3E3E1714809318>I< EA7E3F38FEFF80007F13C0380FE1E013801300A2120EAA387FC7FC38FFE7FE387FC7FC17 14809318>III<38FF0FC0EB3FF0137FEA07F8 EBE060EBC0005BA390C7FCA8EAFFFC7F5B14147E9318>114 DI<487E1203A4387FFFC0B5FCA238038000A9144014E0A2 1381EBC3C0EA01FF6C1380EB7E0013197F9818>I<387E07E0EAFE0FEA7E07EA0E00AC13 01EA0F073807FFFC6C13FE3801FCFC1714809318>I<387F8FF000FF13F8007F13F0381C 01C0380E0380A338070700A3138FEA038EA3EA01DCA3EA00F8A2137015147F9318>I<38 7F8FF0139F138F380F0700EA078EEA039EEA01DC13F81200137013F07FEA01DCEA039E13 8EEA0707000E1380387F8FF000FF13F8007F13F015147F9318>120 D<387F8FF000FF13F8007F13F0380E01C0EB0380A21207EB0700A2EA0387A2138EEA01CE A213CC120013DC1378A31370A313F05B1279EA7BC0EA7F806CC7FC121E151E7F9318>I< 383FFFF05AA2387001E0EB03C0EB078038000F00131E137C5B485A485AEA0780380F0070 121E5A5AB512F0A314147F9318>II<126012F0B3B012600424769F 18>I<127CB47E7FEA07E01200AB7FEB7FC0EB3FE0A2EB7FC0EBF0005BAB1207B45A5B00 7CC7FC13247E9F18>II E /Fg 4 16 df<12FEEAFFE0EA01FCEA001FEB03C0EB00F01438141E14076E7E6E7E6E7E 1570811518151C150C150E150615078116801501A216C01500A316E01660A62323A18142 >12 D<1660A616E016C0A415011680150316005D1506150E150C151C151815385D5D4A5A 4A5A4AC7FC141E143814F0EB03C0011FC8FCEA01FCEAFFE048C9FC2323A1A242>I<12C0 A67E1260A41270123012381218121C120C120E120612077E7F6C7E6C7E13707F7F130FEB 0380EB01E0EB0078141FEC07F0913800FFE0150F232380A242>II E /Fh 4 64 df<1302131E137EEA01FE120F12FFA2120F1201EA007E131E13020F0C7E852A>27 D<7E12F012FCB4FC13E013FEA213E0130012FC12F012800F0C67852A>45 D<1206A4120FA3EA1F80A2EA3FC0A2EA7FE0A3EAFFF00C0F86A72A>54 D63 D E /Fi 24 121 df<12FEA707077C860F>46 D<137013F81203127F12FFA312431203B3 A6387FFFC0B5FCA27E12247CA31B>49 DIII65 D<387FFFF0B512FC14FF 158039FE007FC0141FEC0FE0A21407A2140FA2EC1FC0143FECFF80B6120014FC14FF15C0 39FE003FE0EC0FF01407EC03F8A6EC07F0140F143FB612E015C015006C13F81D237CA225 >I79 D<48B4FC000F13C04813E014F0381E07F8 EA180312101200A2137FEA07FFEA1FE3EA3F83EA7F0312FEA31307EA7F0F13FB123FEA1F E33807C1F015177F961A>97 D99 D<14F8EB01FCABEA03F1EA0FFDEA1FFF5AEA7F831301127E12FEA9127E127F1387EA3FFF EA1FFDEA0FF93803F0F816237EA21C>I<48B4FC000713C04813E0003F13F0EB83F8EA7F 0114FCEAFE00A3B5FCA214F848C7FCA3007F13081438383FC0F813FF120F6C13E0C61380 16177F9619>I<3801FE0E380FFFDF4813FF4813F3EB87F0387F03F8A6383F87F013FF6C 13E014C03819FE000038C7FC123C383FFFC014F86C13FC14FE5A4813FF38FC007F48131F A36C133F007F13FE13FF6C13FC000F13F0000313C018227F961B>103 D<12FC12FEA512FC1200A6127C12FEB3A3127C07247EA30C>105 D<127C12FEB3AF127C07237EA20C>108 D<3A7C0FC01F803AFE3FF07FE090397FF8FFF0 D9FFFD13F839FFC3FF87903801FE03A200FE13FCAF3A7C00F801F025177D962C>I<387C 1FC038FE3FE0EB7FF0EBFFF8EAFF871303A212FEAF387C01F015177D961C>I<13FF0007 13E0001F13F84813FC1381387F00FE007E137E00FE137FA9007F13FEA2383F81FC13FF6C 13F8000713E00001138018177F961B>I<387C1F8038FE7FE0B512F0A2EB07F8EAFE0314 FC1301A9EB03F8A2EAFF0FEBFFF014E04813C0EB3F0090C7FCA9127C16217D961C>I114 DII<387C01F038FE03F8B01307A2130FEA7FFBEA3FF3380FC1F015177D961C>I<387C01 F8EA7E03007F13F0383F87E0EA1F8F380FCFC0EBFF806C13007E6C5A6C5AA2487E12037F 3807DF80380FCFC0381F87E0123FEB03F0387E01F800FE13FC387C00F816177F9619> 120 D E /Fj 1 66 df<13101338A3135CA3138EA3EA0107A238020380A33807FFC0EA04 01A2380800E0A2001813F0123838FE03FE17177F961A>65 D E /Fk 16 90 df<1306A3130FA3EB1780A2EB37C01323A2EB43E01341A2EB80F0A338010078A2 EBFFF83802003CA3487FA2000C131F80001E5BB4EBFFF01C1D7F9C1F>65 DI<90381F8080EBE0613801801938070007000E1303 5A14015A00781300A2127000F01400A8007014801278A212386CEB0100A26C13026C5B38 0180083800E030EB1FC0191E7E9C1E>I69 DI<90381F8080EBE0613801801938070007000E13035A14015A00781300 A2127000F01400A6ECFFF0EC0F80007013071278A212387EA27E6C130B380180113800E0 6090381F80001C1E7E9C21>I<39FFF0FFF0390F000F00AC90B5FCEB000FAD39FFF0FFF0 1C1C7F9B1F>II76 DIII82 D<3807E080EA1C19EA30051303EA600112E01300A36C13 007E127CEA7FC0EA3FF8EA1FFEEA07FFC61380130FEB07C0130313011280A300C01380A2 38E00300EAD002EACC0CEA83F8121E7E9C17>I<007FB512C038700F0100601300004014 40A200C014201280A300001400B1497E3803FFFC1B1C7F9B1E>I<39FFF003FC390F8001 E00007EB00C06D13800003EB01006D5A000113026C6C5A13F8EB7808EB7C18EB3C10EB3E 20131F6D5A14C06D5AABEB7FF81E1C809B1F>89 D E /Fl 11 85 df<1418A21438A21478A214B8EB0138A2EB023C141C1304130C13081310A21320A2EB7F FCEBC01C1380EA0100141E0002130EA25A120C001C131EB4EBFFC01A1D7E9C1F>65 D<48B5FC39003C038090383801C0EC00E0A35B1401A2EC03C001E01380EC0F00141EEBFF FC3801C00E801580A2EA0380A43907000F00140E141E5C000E13F0B512C01B1C7E9B1D> I<903803F02090381E0C6090383002E09038E003C03801C001EA038048C7FC000E148012 1E121C123C15005AA35AA41404A35C12705C6C5B00185B6C485AD80706C7FCEA01F81B1E 7A9C1E>I<48B512F038003C00013813301520A35BA214081500495AA21430EBFFF03801 C020A448485A91C7FCA348C8FCA45AEAFFF01C1C7E9B1B>70 D<903803F02090381E0C60 90383002E09038E003C03801C001EA038048C7FC000E1480121E121C123C15005AA35AA2 903801FF809038001E00141CA400705BA27E001813786C139038070710D801F8C7FC1B1E 7A9C20>I<3A01FFC3FF803A003C00780001381370A4495BA449485AA390B5FC3901C003 80A4484848C7FCA43807000EA448131E39FFE1FFC0211C7E9B1F>II<3801FFC038 003C001338A45BA45BA4485AA438038002A31404EA0700140C14181438000E13F0B5FC17 1C7E9B1A>76 DII<001FB512C038 1C070138300E0000201480126012405B1280A2000014005BA45BA45BA4485AA41203EA7F FE1A1C799B1E>84 D E /Fm 39 128 df<121C123CA41204A21208A212101220A2124012 80060E7D840E>44 DI<127012F8A212F012E005057B 840E>I<1207120F121FA2120E1200AA127012F8A212F012E008147B930E>58 D<14021406A2140E141EA2143F142F144F14CF148FEB010FA21302A213041308A2011013 8014071320EB3FFFEB40071380A2EA0100A2120212061204001E14C039FF807FF81D207E 9F22>65 D<48B512C039001E00F015781538153C5BA4491378A215F0EC01E09038F00780 9038FFFE009038F00F80EC03C03801E00115E0A3EA03C0A315C038078003EC0780EC0F00 141E380F007CB512E01E1F7D9E20>I<90B5128090381E00E015701538151C5B150EA35B A449131EA44848133CA3157848481370A215E0EC01C0380780031580EC0E005C380F0070 B512C01F1F7D9E22>68 D<48B512FE39001E001C150C1504A25BA490387804081500A214 0C495AEBFFF8EBF018A23801E010A3EC001048481320A21540A248481380140115001407 380F001FB512FE1F1F7D9E1F>I<48B512FC39001E003815181508A25BA4491310EC0800 A3495A1430EBFFF0EBF0303801E020A44848C7FCA4485AA4120FEAFFF81E1F7D9E1E>I< ECFC04903807030C90381C00980130137813E04848133848481330A248C7FC120E001E14 20A2481400A25AA45AECFFF0EC0780A2EC0F001270A3141E7E0018133E001C132E6C13CC 38038304D800FCC7FC1E217A9F23>I77 D<01FFEB3FE0011FEB0F001504EB1780A201275BEB23C0A3903841E010 A214F0134001805B1478A348486C5AA3141E00025CA2140FA24891C7FC80A2120C001C13 02EAFF80231F7D9E22>II<48B512 8039001E00E015701538153C5BA4491378A215F015E09038F003C0EC0F00EBFFFC01F0C7 FC485AA4485AA4485AA4120FEAFFF01E1F7D9E1F>I<903807E04090381C18C090383005 80EB600313C000011301018013001203A391C7FC7FA213F86CB47E14E06C6C7E131FEB01 F8EB0078A21438A21220A2143000601370146014E000705B38E80380D8C606C7FCEA81F8 1A217D9F1A>83 D97 DI<137EEA01C138030080EA0E07 121E001C1300EA3C0248C7FCA35AA5EA70011302EA3004EA1838EA07C011147C9315>I< 1478EB03F8EB0070A414E0A4EB01C0A213F1EA038938070780EA0E03121C123C38380700 1278A3EAF00EA31420EB1C40A2EA703C135C38308C80380F070015207C9F17>I<137CEA 01C2EA0701120E121C123CEA3802EA780CEA7BF0EA7C0012F0A4127013011302EA3804EA 1838EA07C010147C9315>I<1478EB019CEB033CA2EB07181400A2130EA5EBFFE0EB1C00 A45BA55BA55BA5485AA35B1231007BC7FC12F31266123C1629829F0E>III<13C0EA01E0A213C0C7FC A7120E12131223EA4380EA4700A21287120EA35AA3EA38401380A21270EA31001232121C 0B1F7C9E0E>IIII<39 1C0F80F0392630C318394740640C903880680EEB0070A2008E495A120EA34848485AA3ED 70803A3803807100A215E115623970070064D83003133821147C9325>I<381C0F803826 30C0384740601380EB0070A2008E13E0120EA3381C01C0A3EB038400381388A2EB0708EB 031000701330383001C016147C931A>I<137CEA01C338030180000E13C0121E001C13E0 123C1278A338F003C0A3EB07801400EA700F130EEA3018EA1870EA07C013147C9317>I< 3801C1E0380262183804741C1378EB701EA2EA08E01200A33801C03CA314383803807814 7014E0EBC1C038072380EB1E0090C7FCA2120EA45AA2B47E171D809317>I114 D<13FCEA0302EA0601EA0C03130713061300EA0F8013F0EA07F8EA03FCEA003E130E1270 EAF00CA2EAE008EA4010EA2060EA1F8010147D9313>II<000E 13C0001313E0382301C0EA4381EA4701A238870380120EA3381C0700A31410EB0E201218 A2381C1E40EA0C263807C38014147C9318>I<380E0380EA1307002313C0EA4383EA4701 130000871380120EA3381C0100A31302A25BA25BEA0E30EA03C012147C9315>I<380383 80380CC440381068E013711220EB70C03840E0001200A3485AA314403863808012F3EB81 0012E5EA84C6EA787813147D9315>120 D<000E13C0001313E0382301C0EA4381EA4701 A238870380120EA3381C0700A4130E1218A2EA1C1EEA0C3CEA07DCEA001CA25B12F05BEA E060485AEA4380003EC7FC131D7C9316>I127 D E /Fn 24 122 df50 D<137F380183C0380201E0EA040000 0713F05A1301A2000013E0A2EB03C0EB07801400131CEA01F8EA000E7F148014C0130313 071230127812F8A200F0138038800F00EA400E6C5AEA1078EA0FE0141F7D9D17>I<0007 B512FC3900F8007C0178131C150C5B1504A414043901E00800A31438EBFFF8EBE0383803 C010A4EC00081510485AA21520A2156015C0380F00011407B612801E1F7E9E1F>69 D<3A07FF83FFC03A00F8007C000178133CA2495BA648485BA490B5FCEBE0004848485AA6 4848485AA64848485A01807F39FFF07FF8221F7E9E22>72 D<3807FFFE3900F807809038 7801E0EC00F05B15F8A415F03801E00115E0EC03C0EC0780EC1E00EBFFF03803C0388014 1E140EA2140F48485AA51502D80F001304EB800F39FFF00788C7EA01F01F207E9E21>82 D97 D<13FEEA0383380E0780121C0038130090 C7FC12785AA45AA37E5BEA70026C5AEA1C18EA07E011147D9314>99 D<1438EB01F8EB00781438A21470A614E013FCEA0382EA0601121CEA3C00383801C01278 12F0A438E00380A412F0EA700738380F00381C37803807C7E015207D9F19>I<13F8EA07 0EEA0E07121C383803801278127012F0A2B5FC00F0C7FC5AA46C5AEA7002EA3004EA1C18 EA07E011147D9314>II<140EEB3E11EBE1A33801C1C238 0381E0EA07801301120FA3380703C01480EB8700EA04FC48C7FCA21218121CEA0FFF14C0 14E0381800F04813305A5AA3006013606C13C0381C0700EA07FC181F809417>I105 D<13E0120712011200A2485AA6485AEB81FCEB80F014C0EB81801400EA 07045B13181338137C131C120E7FA2130F7F1480EA1C03381E07C038FF8FF016207E9F18 >107 D<13E0120712011200A2EA01C0A6EA0380A6EA0700A6120EA65A121EEAFF800B20 7F9F0C>I<390387C07C391F9861863907A072073903C03403EB80380007EB7807EB0070 A5000EEBE00EA64848485A001EEBE01E3AFFCFFCFFC022147E9326>I<38038F80381F90 E0EA07A03803C0601380000713E01300A5380E01C0A6381C0380001E13C038FF8FF01414 7E9319>I<13FCEA0387380E0180381C00C04813E0A24813F012F0A438E001E0A214C013 0300F0138038700700EA380E6C5AEA07E014147D9317>II114 DI<1380EA0100A35A5A5A121EEAFFF8EA0E00A45AA65A1310A41320A2EA1840 EA0F800D1C7C9B12>I<39FF9FE1FC393C078070391C030060148015401580EA0E079038 0D81001309EB19C21311380F21C4EA0720EB40C814E8EB80F0A26C485A1460000213401E 147C9321>119 D<381FF0FF3803C0780001137014403800E0C0EBE180EB73001376133C A2131C132E134E1387EA0107380203801204380C01C0383C03E038FE07FC18147F9318> I<390FF83F803901E00E00EBC00C140813E000005B143014205C13705CA20171C7FC1339 133A133E133C133813181310A25BA25BEA70C0EAF08000F1C8FC12E61278191D809318> I E /Fo 76 128 df<90381F83E09038F06E303901C07878380380F8903800F03048EB70 00A7B612803907007000B2383FE3FF1D20809F1B>11 D<133FEBE0C0EA01C0380381E0EA 0701A290C7FCA6B512E0EA0700B2383FC3FC1620809F19>I<90381F81F89038F04F0439 01C07C06390380F80FEB00F05A0270C7FCA6B7FC3907007007B23A3FE3FE3FE02320809F 26>14 D34 D<127012F812FCA212741204A31208A21210A212201240060E7C9F0D>39 D<13401380EA01005A12061204120C5AA212381230A212701260A412E0AC1260A4127012 30A212381218A27E120412067E7EEA008013400A2E7BA112>I<7E12407E12307E120812 0C7EA212077EA213801201A413C0AC1380A412031300A25A1206A25A120812185A12205A 5A0A2E7EA112>I<1303AFB612FCA2D80003C7FCAF1E207E9A23>43 D<127012F012F8A212781208A31210A31220A21240050E7C840D>II<127012F8A3127005057C840D>I48 D<13801203120F12F31203B3A6EA07C0EAFFFE0F1E7C9D17>III<1306A2 130EA2131E132EA2134E138EA2EA010E1202A212041208A212101220A2124012C0B512F0 38000E00A7EBFFE0141E7F9D17>II<137CEA0182EA0701380E0380EA0C0712183838030090C7FC12 781270A2EAF1F0EAF21CEAF406EAF807EB0380A200F013C0A51270A214801238EB070012 18EA0C0E6C5AEA01F0121F7E9D17>I<1240387FFFE014C0A23840008038800100A21302 485AA25B5BA25BA21360A213E05B1201A41203A76C5A131F7E9D17>III<127012F8A312701200AA127012F8A3127005147C930D>I<5B497EA349 7EA3EB09E0A3EB10F0A3EB2078A3497EA2EBC03EEB801EA248B5FCEB000FA20002EB0780 A348EB03C0A2120C001E14E039FF801FFE1F207F9F22>65 DI<90380FE0109038381C309038E002703803C001390780 00F048C71270121E15305A1510127C127800F81400A91278007C1410123CA26C1420A27E 6C6C13406C6C13803900E00300EB380CEB0FF01C217E9F21>IIII<90380FE0109038381C309038E002703803C0 0139078000F048C71270121E15305A1510127C127800F81400A7EC3FFEEC01F000781300 127C123CA27EA27E6C7E3903C001703900E002309038380C1090380FF0001F217E9F24> I<39FFF07FF8390F000780AD90B5FCEB0007AF39FFF07FF81D1F7E9E22>II<3807FFC038003E00131EB3A3122012F8A3EAF01CEA403C EA6038EA1070EA0FC012207F9E17>I76 DIIII82 D<3803F040380C0CC0EA1803EA3001EA6000A212E01440A36C13007E127C EA7F80EA3FF86CB4FC00071380C613C0EB1FE013031301EB00F014707EA46C136014E06C 13C038F8018038C60300EA81FC14217E9F19>I<007FB512E038780F010060EB00600040 1420A200C0143000801410A400001400B3497E3803FFFC1C1F7E9E21>I<39FFF003FE39 1F8000F86CC7126015206C6C1340A36C6C1380A2EBE00100011400A23800F002A213F8EB 7804A26D5AA36D5AA2131F6D5AA2EB07C0A36D5AA36DC7FC1F207F9E22>86 D<3BFFF07FF81FF03B1F000FC007C06C903907800180170015C001805C00071502EC09E0 13C000035DEC19F01410D801E05CA2EC2078D800F05CA2EC403C01785CA2EC801E017C14 60013C144090383D000F133F6D5CA2011E1307010E91C7FCA2010C7F010413022C207F9E 2F>I<397FF81FF8390FE007C03907C0030000031302EBE0063801F00400005BEBF818EB 78106D5AEB3E60EB1E406D5AA213076D7E497E1305EB08F0EB18F8EB1078EB207CEB603E EB401EEB801F3901000F801407000214C000061303001FEB07E039FFC01FFE1F1F7F9E22 >I<387FFFFE387E003C127800701378006013F814F0384001E0130314C0EB07801200EB 0F00131EA25B137C13785B1201EBE002EA03C0A2EA0780000F13061300001E1304003E13 0C123C48133C14FCB5FC171F7E9E1C>90 D<12FFA212C0B3B3A512FFA2082D7CA10D>I< EA0804EA1008EA2010A2EA4020A2EA8040A3EAB85CEAFC7EA2EA7C3EEA381C0F0E7A9F17 >I<12FFA21203B3B3A512FFA2082D80A10D>I97 D<121C12FC121CAA137CEA1D87381E0180EB00C0001C13E01470A21478A6147014F014E0 001E13C0381A018038198700EA107C15207E9F19>IIII<137CEA01C6EA03 0F1207EA0E061300A7EAFFF0EA0E00B2EA7FE01020809F0E>I<14E03803E330EA0E3CEA 1C1C38380E00EA780FA5EA380E6C5AEA1E38EA33E00020C7FCA21230A2EA3FFE381FFF80 14C0383001E038600070481330A4006013606C13C0381C03803803FC00141F7F9417>I< 121C12FC121CAA137C1386EA1D03001E1380A2121CAE38FF8FF014207E9F19>I<123812 7CA31238C7FCA6121C12FC121CB1EAFF80091F7F9E0C>I<13E0EA01F0A3EA00E01300A6 1370EA07F012001370B3A31260EAF06013C0EA6180EA3F000C28829E0E>I<121C12FC12 1CAAEB1FE0EB0780EB060013045B5B5B136013E0EA1DF0EA1E70EA1C38133C131C7F130F 7F148014C038FF9FF014207E9F18>I<121C12FC121CB3ABEAFF8009207F9F0C>I<391C3E 03E039FCC30C30391D039038391E01E01CA2001C13C0AE3AFF8FF8FF8021147E9326>I< EA1C7CEAFC86EA1D03001E1380A2121CAE38FF8FF014147E9319>III<3801F04038070C C0EA0E02EA1C03EA38011278127012F0A6127012781238EA1C03EA0C05EA0709EA01F1EA 0001A8EB0FF8151D7F9318>III<1202A31206A2120EA2123EEAFF F8EA0E00AB1304A5EA07081203EA01F00E1C7F9B12>I<381C0380EAFC1FEA1C03AE1307 120CEA061B3803E3F014147E9319>I<38FF83F8383E00E0001C13C06C1380A338070100 A21383EA0382A2EA01C4A213E4EA00E8A21370A3132015147F9318>I<39FF9FE1FC393C 078070391C030060EC8020000E1440A214C0D80704138014E0A239038861001471A23801 D032143A143E3800E01CA2EB6018EB40081E147F9321>I<38FF87F8381E03C0380E0180 EB0300EA0702EA0384EA01C813D8EA00F01370137813F8139CEA010E1202EA0607380403 80000C13C0003C13E038FE07FC16147F9318>I<38FF83F8383E00E0001C13C06C1380A3 38070100A21383EA0382A2EA01C4A213E4EA00E8A21370A31320A25BA3EAF080A200F1C7 FC1262123C151D7F9318>IIII127 D E /Fp 38 122 df45 D<12FCA606067C850E>I<137013F012 03127F12FFA2127F1203B3A4387FFF8014C0A2148012217DA019>49 DIII<383FFFC0A490C7FCA713FC13FF1480EB8FC0383E07E0123C 14F01200A612201260007013E0EAF80F387C1FC0EA7FFF6C1380380FFE00EA03F814217E 9F19>I56 D<387FFFC0B512F014FCA238FE01FE6D7E80A2805CA214 7E14FEEB03FCB55A5C14FC38FE01FEEB007F801580A6EC7F005CB55A5C5C6C13E019207C 9F21>66 DI71 D<007EEB0FE012FEACB6FCA438FE000FAE127E1B207C9F24>I<127E12 FEB3AC127E07207C9F0F>I<007FEB03E0EAFF8013C0A213E0A2EAFBF0A2EAF9F8A2EAF8 FCA2137EA2133FA2EB1F83A2EB0FC3A2EB07E3A2EB03F3A2EB01FBA2EB00FFA2147FA214 3F0078131F1B207C9F24>78 DI<387FFF80B512F0 14F814FC38FE01FE1300147FA814FE1301B512FC14F814E048C7FCAC127E18207C9F20> I<387FFF80B512F0808038FE01FEEB007E147FA6147EEB01FEB55A14F014C0EAFE1F6D7E A26D7EA26D7E130180130080147FA2EC3F80A2007E131F19207C9F20>82 D<007FB512F0B6FCA339001FC000B3A9130F1C207E9F21>84 D97 D99 DII<3803FC 3C380FFF7C4813FC383F0FC0EA3E07007E13E0A5003E13C0EA3F0F381FFF801400EA13FC 0030C7FC1238383FFF8014E06C13F014F8007F13FCEA780048133CA36C137C387E01F838 3FFFF06C13E000031300161F7F9419>103 D<127C12FCAA133FEBFF8000FD13C0EB8FE0 EAFE07A212FCAE127C13207D9F1A>I<127E12FEA61200A5123E127EB3123E07217FA00B> I<127812F8AAEB07C0130FEB1F80EB3E005B5BEAF9F0EAFBE012FFA27F7F12FDEAF8FC13 7E137F7FEB1F8014C0130FEA780712207D9F18>107 D<127C12FCB3AC127C06207E9F0B> I<397C3F01F839FCFF87FC00FDEBCFFE90388FEC7F39FE07F03FA200FC13E0AED87C0313 1F20157D9427>I III< EA7C70EAFCF012FD12FFA21380EAFE00A25AAC127C0C157D9411>114 DI<121F5AA5EA7FFC12FFA3EA 3F00AC1308131CEA1FFC13F8EA0FC00E1B7F9A12>I<387C07E012FCAF130FA2EA7C17EA 3FE7EA1FC713157D941A>I<39F007C01ED8F80F133E14E0007C143C157C131FEB1DF000 3E14F8133C14F81338001FEBF9F0EB7879EB707DA2390FF07FE0143F13E0A2000714C0EB C01F1F157F9422>119 D<38F803E0EA7C07007E13C0383F0F80EA1F1F380F9F00EA07FE 5B6C5A12015B7F487E487EEA0F9FEA1F1FEB0F80383E07C0387C03E000FC13F0EAF80114 157F9417>I<00F813F0EAFC01007C13E0EA7E03123E14C0EA1F07A2EB8780EA0F8FA238 07CF00A2EA03DF13DEEA01FEA25B1200A21378A213F85BA21201EA43E0EA7FC05B007EC7 FC141E7F9417>I E /Fq 25 122 df<130E131F137F485A127FB5FCA27EC6FCB3AD003F 13FE4813FFA26C13FE182B7CAA21>49 D<13FF000313E0000F7F4813FC487FA2387F83FF D8FE0113807F007C137F003C14C012380018133F1208C7FC147FA21580A2ECFF00A2495A 495A5C495A495A495A495A49C7FC13FE13F8485A485A485A485A48C8FC123E007FB51280 B612C0A46C14801A2B7DAA21>II<903801FFE0010F13FE017FEBFF8090B6FC5A00071500EC807F39 0FFE000FD81FF87F497F003F91C7FC5B485AA4485AAC6C7EA46C7E7F001F15806D1303D8 0FFE13073907FF803F91B512C012017E6D1400010F13FC010113E0222C7CAA2A>67 D<007FEC0FE0486CEB1FF0B090B6FCA6903880001FB26CC7EA0FE0242A7BA92F>72 D<127FEAFF80B3B3A4EA7F00092A7BA914>I<387FFFFCB612C08115F881EB800FEC03FE 140181A75DA21403EC0FFC90B55A5D15C04AC7FCEB81FF138081147F816E7EA26E7EA26E 7EA26E7E1403816E7EA26E1380A26CC7127F212A7BA92A>82 D97 D99 DIII<9038FFC0780003EBF1FC000F13FF48EBFE1C393FC0FF0049 7E007F1480A7003F14006D5A6CB45A6C5B000B13F0001813C090C8FC121C121E381FFFFC ECFF8015E06C14F04814F85A397E0007FC4813011400A36C1301007E14F8387FC00F6CB5 12F06C14E000071480C6EBFC001E287F9A21>I<127FEAFF80A7EA7F00C7FCA7123FEA7F 80B3A7EA3F00092B7EAA0F>105 D<127C12FEAE147F495A5BEB07FC495A495A495A495A 495AB5C7FC5BA27FA280806D7EEAFE3F6D7E6D7EA26D7E6D7E807F6D1380007C137F192A 7CA920>107 D<267E03FC13FF27FF0FFE031380496C4813C049018F13E0903A707FDC1F F09039C03FF00F018013E0A2010013C0B2007E90391F8007E02C1B7C9A35>109 D<387E03F838FF0FFE497E5B01601380EBC07F1380A21300B2007EEB3F00191B7C9A22> I I<387E0380EAFF0F131F133F137FA2EBF80013E05B5B90C7FCB0127E111B7D9A16>114 DII<007E133FB4EB7F80B314FFA25B387F83 7FEA3FFEEA1FFC3907F83F00191B7C9A22>I<007C013EEB0F8000FE013FEB1FC0007F49 EB3F801580A2EB80FF003F9138C07F00A214EFD81FC1147E9138E7E0FEA213C33A0FE3C7 F1FCA214C313F70007903883FBF8A2EBFF816CECFFF01401A2806C485CA26C486D5A2A1B 7F9A2D>119 D<007FEB1F80EC3FC09038807F80393FC0FF006C6C5AEA0FF13807F3FC6C B45A5C6C5B7E6D5A6D5AA2497E497E5A803803FBF83807F1FC380FE0FE121FEBC07F393F 803F80007F14C039FF001FE0007EEB0FC01B1B7F9A1E>I<00FCEB0F806CEB1FC0EC3F80 7E7E9038807F00123F13C0001F13FEA2EA0FE0EBE1FC13F112075CEA03FB5C1201A26CB4 5AA36D5AA2133F5C131FA249C7FCA3137EA2EAC0FC12FF5B5B5B13801A277E9A1E>I E /Fr 14 116 df<1238127C12FEA3127C1238070774861F>46 D64 D99 DI<137F3803FFC04813E0380FC1F0381F00F8003E137C003C133C5A14 1E12F85AB512FEA300F0C7FCA27E1278127C003C131E123E6C133E380FE0FC3807FFF800 0113F038007FC0171A7D991F>I<9038FE0FC03903FFBFE04813FF380F83F9391F01F1C0 391E00F000003E7F003C1378A4003E13F8001E5BEA1F01380F83E048B45A5CD83CFEC7FC 90C8FCA37E381FFFE06C13FC80487F393E003F800078130F00F8EB07C0481303A46C1307 007CEB0F806CEB1F00381FC0FE6CB45A6C5BC613C01B287E991F>103 D<137013F8A3137090C7FCA7EA7FF812FF127FEA0078B3A2B512F8A315267BA51F>105 D107 D I<387F87F838FF9FFC387FBFFE3807FC1FEBF00F9038E0078013C0A31380AE397FF87FF8 39FFFCFFFC397FF87FF81E1A80991F>110 D<13FCEA03FF481380381F87E0EA1E01383C 00F0007C13F800781378A248133CA76C137C00781378A2007C13F8003C13F0381E01E0EA 1F873807FF806C1300EA00FC161A7C991F>I<387F87F038FF9FFC387FBFFE3807FC1F90 38F00F809038E007C09038C003E01401138015F01400A6140101C013E0A2EC03C0EBE007 9038F00F809038FC3F00EBBFFEEB9FFCEB87E00180C7FCAAEA7FF8487E6C5A1C2780991F >I<387FE07F39FFE1FF80D87FE713C03801EFC7EBFF079038FC038091C7FC5B5BA35BAC 387FFFE0B5FC7E1A1A7E991F>114 D<3803FE70381FFFF05AEA7E07EAF001EAE000A37E 007E1300EA3FF06CB4FC6C13C0C613F0EB07F813000070133C00F0131CA27E6C133C1478 38FF01F8EBFFF000F713C000E11300161A7C991F>I E /Fs 19 128 df<127812FCA212FEA2127A1202A41204A31208A212101220124007127B8510>44 D<132013E01201120F12FF12F11201B3AD487EB512C0A212287BA71D>49 D54 D<137E3801FF80380781C0380F00E0001E1370481338A248133CA200F8131EA4141FA412 78143FA27E001C135F7E6C139F3803831FEA00FCEB001EA3143E143CA21438001C137800 3E137014E0383C01C038180380381C0F00EA0FFEEA03F818297EA71D>57 D<3801FFFEA2380007E01303B3AA1230127812FCA214C0EAF8070040138038200F00EA30 0EEA0C3CEA03F0172A7DA81E>74 DI78 D<120FB4FCA2121F7EACEB07E0EB1838EB600EEB8007158090380003C0A2EC01E0A215F0 A715E0A2140315C01580EB8007000EEB0F00EB401C380C303838080FC01C2A7EA921>98 D<137F3801C0E038070010000E1378001E13F85A1470007C13200078130012F8A8127812 7C003C1308A26C1310000E13206C13603801C18038007E00151A7E991A>I<13FC380387 80380701C0000E13E0EA1C00003C13F0A2481378A212F8A2B512F800F8C7FCA51278A26C 1308A26C1310000E13206C13403801C18038007E00151A7E991A>101 D<120FB4FCA2121F7EACECFFC0A2EC7E0014305C14405C0103C7FC1304130C131E133E13 5F138FEB0780801303806D7E1300801478147C147E39FFF1FFE0A21B2A7EA91F>107 D<120FB4FCA2121F7EB3B2EAFFF0A20C2A7EA911>I<3A0F07F007F03AFF183818389039 201C201C3A1F400E400E000F010F130F01801380A201001300B13BFFF0FFF0FFF0A22C1A 7E9931>I<380F07F038FF1838EB201C381F400E000F130F1380A21300B139FFF0FFF0A2 1C1A7E9921>I<137E3803C3C0380700E0000E1370481338003C133CA248131EA200F813 1FA80078131EA26C133CA2001C13386C13706C13E03803C3C038007E00181A7E991D>I< 380F0F8038FF11C0EB23E0EA1F43EA0F83EB81C0EB800090C7FCB07FEAFFFCA2131A7E99 17>114 D<3807F080EA1C0DEA3003EA600112E01300A27E6C1300127EEA7FE0EA3FFC6C 7EEA07FF38003F801307388003C0A2130112C0A200E01380130300F01300EACC0EEA83F8 121A7E9917>I<39FFF01FF0A2390F8007800007EB03001402A26C6C5AA2EBE00C000113 08A26C6C5AA2EBF830EB7820A26D5AA2EB3EC0EB1E80A26DC7FCA31306A21C1A7F991F> 118 D127 D E /Ft 5 90 df69 D<903807F00890383C0C18EBE0023901C001B839038000F848C71278481438121E 15185AA2007C14081278A200F81400A7EC1FFF0078EB00F81578127C123CA27EA27E7E6C 6C13B86C7E3900E0031890383C0C08903807F00020247DA226>71 D<39FF8007FF3907C000F81570D805E01320EA04F0A21378137C133C7F131F7FEB0780A2 EB03C0EB01E0A2EB00F014F81478143C143E141E140FA2EC07A0EC03E0A21401A2140000 0E1460121FD8FFE0132020227EA125>78 D<3803F020380C0C60EA1802383001E0EA7000 0060136012E0A21420A36C1300A21278127FEA3FF0EA1FFE6C7E0003138038003FC0EB07 E01301EB00F0A214707EA46C1360A26C13C07E38C8018038C60700EA81FC14247DA21B> 83 D89 D E /Fu 15 122 df<4AB41480021FEBE00191387F0078D901F8EB 0E03D903E0EB0707D90FC0EB018749C812CF013E156F49153F5B4848151F0003160F485A 491507120FA248481503A2123F90C91201A25AA2007E93C7FCA212FEAB007E92387FFFFE A2007F9238007FC0EF1F807EA27F121FA26C7EA26C7EA26C7E12016C7E017C153F7F6D15 7FD90FC014E7D903E0EB01C7D901FCEB0783903A007F803E0191391FFFF8000201018013 00373D7CBB3F>71 D97 D100 D I103 DI<1207EA0F80EA1FC0A3EA0F80EA0700C7FCADEA07C012 FFA2120F1207B3ACEA0FE0EAFFFEA20F397DB815>I<2703E01FE0EB3FC000FFD9607CEB C0F8913A801E01003C2807E3000F067FD803E40288131FA201E8D907907F04D0148001F0 14E0A2495CB3A6486C496CEB1FC0B50081B53803FFFEA23F257EA443>109 D<3903E01FE000FFEB607CEC801E3907E3000FD803E41480A201E8130716C013F0A25BB3 A6486CEB0FE0B50081B5FCA228257EA42C>I<3803E03E00FF13C39038E107803907E20F C0EA03E413E8EC0780EC030001F0C7FCA35BB3A5487EB512C0A21A257EA41E>114 DI<1330A61370A413 F0A21201A212031207381FFFFEB5FCD801F0C7FCB3EC0180A9000014006D5AA2EB78026D 5AEB0E08EB03F019357FB41E>I<3CFFFE0FFFC03FFEA23C0FF000FE0007F06C48017CEB 03E0000317C0033CEB0180153E6C6CED0300A2153F6C6C1506156F1680017C5D15C716C0 D93E015C158316E0D91F035C150116F0D90F875CEC860016F8D907CE5C02CC1378167CD9 03FCEB7D804A133D163F010192C7FC4A7FA20100141E4A130EA237257FA439>119 DII E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300dpi TeXDict begin %%PaperSize: a4 %%BeginPaperSize: a4 a4 %%EndPaperSize %%EndSetup %%Page: 1 1 1 0 bop 247 442 a Fu(Generating)28 b(syn)n(tax)e(diagrams)i(with)g Ft(SYNGEN)778 585 y Fs(Jens)19 b(Kl\177)-29 b(oc)n(k)n(er)633 672 y Fr(kloecker@spri)o(nger)o(.de)696 786 y Fs(No)n(v)n(em)n(b)r(er) 20 b(16,)g(1996)72 1001 y Fq(Contents)72 1103 y Fp(1)43 b(Intro)q(duction)1387 b(1)72 1205 y(2)43 b(Ho)o(w)16 b(to)h(mak)o(e)g(syntax)f(diagrams)1013 b(2)140 1262 y Fo(2.1)46 b(Basic)16 b(elemen)o(ts)42 b(.)23 b(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(2)245 1318 y(2.1.1)50 b(Blanks)19 b(.)j(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)63 b(2)245 1374 y(2.1.2)50 b(Non-terminals)13 b(.)23 b(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(3)245 1431 y(2.1.3)50 b(T)l(erminals)29 b(.)22 b(.)g(.)h(.)f(.)g(.)h (.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(3)245 1487 y(2.1.4)50 b(P)o(arameters)33 b(.)22 b(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)63 b(3)140 1544 y(2.2)46 b(Building)17 b(up)f(diagrams)46 b(.)22 b(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(4)245 1600 y(2.2.1)50 b(Choice)20 b(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)63 b(5)245 1657 y(2.2.2)50 b(Concatenation)42 b(.)22 b(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(5)245 1713 y(2.2.3)50 b(Optional)17 b(comp)q(onen)o(ts)46 b(.)23 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(5)245 1770 y(2.2.4)50 b(Rep)q(etitions)34 b(.)22 b(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)63 b(5)245 1826 y(2.2.5)50 b(Grouping)37 b(.)22 b(.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(6)140 1883 y(2.3)46 b(Options)36 b(.)22 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(6)140 1939 y(2.4)46 b(A)15 b(complete)h(example)36 b(.)23 b(.)f(.)g(.)h(.)f (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)63 b(8)72 2041 y Fp(3)43 b(Ho)o(w)16 b(to)h(read)g(syntax)f(diagrams)1032 b(8)72 2184 y Fq(1)66 b(Intro)r(duction)72 2286 y Fo(A)21 b(v)o(ery)g(imp)q (ortan)o(t,)g(but)g(unfortunately)g(mostly)g(neglected)h(job)f(in)h (soft)o(w)o(are)d(engineering)k(is)72 2342 y(the)c(pro)q(duction)g(of)g (go)q(o)q(d)f(do)q(cumen)o(tation.)31 b(One)19 b(often)g(arising)g (problem)g(in)h(this)f(\014eld)h(is)f(the)72 2399 y(do)q(cumen)o (tation)f(of)f(user)h(languages,)f(i.)8 b(e.)17 b(programming)g (languages,)h(data)f(base)g(languages)h(or)72 2455 y(macro)d(languages) g(in)h(text)f(pro)q(cessing)i(systems.)j(P)o(ossible)c(criterions)g (for)f(a)g(go)q(o)q(d)g(presen)o(tation)72 2511 y(are)929 2760 y(1)p eop %%Page: 2 2 2 1 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 72 248 a Fo(1.)35 b(clearness,)72 341 y(2.)g(compactness,)72 435 y(3.)g(completeness)16 b(and)72 529 y(4.)35 b(e\016ciency)16 b(in)g(pro)q(duction.)143 610 y(A)o(t)21 b(this)h(time)g(nearly)g(all)g(authors)f(use)h(the)g(so) f(called)i Fm(Backus-Naur-F)m(orm)g Fl(BNF)p Fo(,)e(whic)o(h)72 667 y(original)14 b(w)o(as)e(in)o(v)o(en)o(ted)h(to)f(design)h(and)g (not)f(to)g(do)q(cumen)o(t)h(or)f(teac)o(h)h(languages.)19 b(F)l(or)12 b(an)g(example)72 723 y(lo)q(ok)j(at)f([1)o(].)20 b(This)15 b(form)f(of)g(do)q(cumen)o(tation)h(satis\014es)g(p)q(oin)o (ts)g(2{4.)k(In)c(particular,)g(criterion)g(4)g(is)72 780 y(giv)o(en,)j(p)q(erhaps)g(the)f Fk(BNF)h Fo(can)g(b)q(e)g(tak)o (en)f(directly)h(or)f(with)h(sligh)o(t)g(mo)q(di\014cations)g(from)f (parser)72 836 y(sp)q(eci\014cations)c(suc)o(h)e(as)f Fk(Y)m(A)o(CC)p Fo(.)g(But)g(clearness,)i(esp)q(ecially)i(for)c(b)q (eginners,)i(is)f(not)g(giv)o(en.)19 b(Because)72 893 y(language)d(do)q(cumen)o(tation)f(m)o(ust)g(b)q(e)h(useful)g(for)f (exp)q(erts)g(as)g(w)o(ell)i(as)d(for)h(b)q(eginners,)h(the)g Fk(BNF)g Fo(is)72 949 y(not)f(the)g(righ)o(t)g(tec)o(hnique)i(for)d (that)h(purp)q(ose.)143 1006 y(One)j(p)q(ossibilit)o(y)i(for)c(a)i (user)f(friendly)i(design)g(of)e(language)g(do)q(cumen)o(tations)h(is)g (a)f(metho)q(d,)72 1062 y(whic)o(h)22 b(is)f(called)h Fm(syntax)f(diagr)n(ams)p Fo(.)37 b(Go)q(o)q(d)21 b(examples)g(can)g(b) q(e)h(found)f(in)h([2)o(])e(and)h([4],)g(where)72 1118 y(they)13 b(are)g(used)h(to)e(explain)j(the)f(syn)o(tax)e(of)h Fk(GOFER)g Fo(and)g Fk(CAML)f(LIGHT)p Fo(.)h(This)g(kind)i(of)d (graphical)72 1175 y(represen)o(tation)g(is)h(clear)g(\(1\),)e(compact) h(\(2\))f(and)i(the)f(language)h(can)f(b)q(e)h(do)q(cumen)o(ted)g (completely)l(.)143 1231 y Fk(SYNGEN)i Fo(com)o(bines)i(the)e(adv)m(an) o(tages)g(of)h(e\016cien)o(t)g(pro)q(duction)g(of)g Fk(BNF)g Fo(with)g(the)f(clearness)72 1288 y(of)d(syn)o(tax)g(diagrams.)19 b(The)13 b(program)f(tak)o(es)g(a)g Fk(BNF)p Fo(-lik)o(e)j(sp)q (eci\014cation)g(of)d(the)h(language)g(as)f(input)72 1344 y(and)j(the)g(output)g(is)g(the)g(corresp)q(onding)h(syn)o(tax)e (diagram)g(in)i(L)1188 1336 y Fj(A)1207 1344 y Fo(T)1232 1354 y(E)1258 1344 y(X)f(form.)k(F)l(or)14 b(that,)g(ev)o(ery)h(left)72 1401 y(hand)h(side)h(of)e(the)h Fk(BNF)g Fo(m)o(ust)f(b)q(e)i(con)o(v)o (erted)e(in)i(a)e(diagram)h(with)g(a)f(description)i(similar)g(to)e (the)72 1457 y(righ)o(t)e(hand)h(side.)21 b(The)13 b(result)h(of)f(the) h Fk(SYNGEN)p Fo(-run)g(on)g(this)g(description)h(can)f(then)f(b)q(e)i (included)72 1514 y(without)g(additional)i(macros)d(in)i(ev)o(ery)f(L) 795 1505 y Fj(A)814 1514 y Fo(T)839 1523 y(E)866 1514 y(X2e)g(do)q(cumen)o(t.)143 1570 y(As)k(a)g(\014rst)g(application,)j Fk(SYNGEN)d Fo(w)o(as)g(used)h(to)f(pro)q(duce)h(the)g(syn)o(tax)e (diagrams)h(for)g(the)72 1627 y(whole)e Fk(CAML)f(LIGHT)g Fo(language.)24 b(The)17 b(result)h(can)e(b)q(e)i(found)f(in)g(the)g (previously)h(refered)f(b)q(o)q(ok)72 1683 y(on)e(functional)i (programming)d([4)o(].)72 1826 y Fq(2)66 b(Ho)n(w)22 b(to)g(mak)n(e)e(syntax)i(diagrams)72 1928 y Fo(In)d(this)f(section)h (w)o(e)f(will)i(sho)o(w)e(ho)o(w)f(to)h(mak)o(e)f(syn)o(tax)h (diagrams.)28 b(Therefore)18 b(the)h(description)72 1984 y(language)d Fk(ARA)f Fo(\(this)h(stands)g(for)f(Enric)o(hed)i(Regular) f(Expressions)h(and)e(w)o(as)g(deriv)o(ed)i(from)e(the)72 2041 y(german)22 b(\\Angereic)o(herte)h(Regul\177)-23 b(are)24 b(Ausdr)q(\177)-24 b(uc)o(k)o(e"\))22 b(has)h(to)f(b)q(e)h (explained)i(and)e(the)f(usage)h(of)72 2097 y Fk(SYNGEN)15 b Fo(m)o(ust)g(b)q(e)h(describ)q(ed.)72 2219 y Fi(2.1)56 b(Basic)19 b(elements)72 2305 y Fp(2.1.1)50 b(Blanks)72 2390 y Fo(The)11 b(c)o(haracters)f(space,)i(horizon)o(tal)f(tabulation) h(and)f(newline)i(are)d(considered)j(as)d(blanks.)20 b(Blanks)72 2447 y(are)15 b(ignored,)g(but)h(they)f(separate)g(adjacen) o(t)f(non-terminals.)929 2760 y(2)p eop %%Page: 3 3 3 2 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 72 248 a Fp(2.1.2)50 b(Non-terminals)72 333 y Fo(Non-terminals)18 b(are)e(sequences)i(of)e(lo)o(w)o(ercase)h (and)g(upp)q(ercase)g(letters,)g(digits,)h(underscore)f(and)72 390 y(the)h(min)o(us)h(sign.)29 b(All)19 b(c)o(haracters)e(are)h (meaningful)h(and)f(can)h(stand)e(on)h(ev)o(ery)g(p)q(osition)h(in)g (the)72 446 y(string.)41 b(The)23 b(length)f(is)h(not)f(limited.)43 b(In)23 b(the)f(corresp)q(onding)h(diagram)f(non-terminals)i(are)72 503 y(represen)o(ted)16 b(b)o(y)f(rectangular)g(b)q(o)o(xes.)20 b(Diagram)14 b(1)h(giv)o(es)h(a)e(summary)h(of)g(the)g(rules.)p 733 629 42 2 v 774 629 V 816 629 V 816 628 a Fh(-)857 595 y Fg(\017)857 662 y(\016)1022 595 y(\014)1022 662 y(\015)p 891 662 100 2 v 891 595 V 880 633 a Ff(a...z)p 1023 629 42 2 v 816 728 V 816 727 a Fh(-)857 695 y Fg(\017)857 761 y(\016)1022 695 y(\014)1022 761 y(\015)p 891 761 100 2 v 891 695 V 880 736 a Ff(A...Z)p 1023 728 42 2 v 816 828 V 816 827 a Fh(-)857 795 y Fg(\017)857 861 y(\016)928 795 y(\014)928 861 y(\015)p 891 861 5 2 v 891 795 V 881 834 a Ff(-)p 928 828 42 2 v 970 828 95 2 v 816 928 42 2 v 816 927 a Fh(-)857 894 y Fg(\017)857 961 y(\016)928 894 y(\014)928 961 y(\015)p 891 961 5 2 v 891 894 V 881 932 a Ff(_)p 928 928 42 2 v 970 928 95 2 v 816 1027 42 2 v 816 1026 a Fh(-)857 994 y Fg(\017)857 1060 y(\016)1022 994 y(\014)1022 1060 y(\015)p 891 1061 100 2 v 891 994 V 880 1035 a Ff(0...9)p 1023 1027 42 2 v 1064 1026 2 399 v 1064 1026 a Fh(?)p 815 1026 V 1064 1027 42 2 v 774 628 2 67 v 774 628 a(?)p 774 562 332 2 v 1105 1026 2 465 v 1106 1027 42 2 v 1106 1026 a(-)572 1157 y Fo(Diagram)f(1:)h(Non-terminals)h(\()p Ff(nonterm)p Fo(\))72 1330 y Fp(2.1.3)50 b(T)l(erminals)72 1416 y Fo(In)15 b Fk(ARA)g Fo(terminals)g(are)g(enclosed)h(in)f Ff('')g Fo(c)o(haracters.)k(They)c(can)g(con)o(tain)g(an)o(y)f(ASCI)q (I)i(c)o(haracter)72 1472 y(from)d(33)g(\()p Ff(!)p Fo(\))g(to)g(126)g (\()p Ff(~)p Fo(\).)18 b(Exceptions)d(are)e(the)h(c)o(haracter)f Ff(')g Fo(and)h(the)g(bac)o(kslash|they)g(m)o(ust)g(b)q(e)72 1529 y(quoted)j(with)h(the)f(bac)o(kslash.)27 b(After)17 b(compilation)i(with)e Fk(SYNGEN)p Fo(,)g(terminals)h(app)q(ear)g(in)g (o)o(v)m(al)72 1585 y(b)q(o)o(xes.)i(The)15 b(complete)h(syn)o(tax)f (is)g(giv)o(en)h(in)g(Diagram)f(2.)p 620 1711 V 620 1710 a Fh(-)661 1678 y Fg(\017)661 1744 y(\016)732 1678 y(\014)732 1744 y(\015)p 695 1744 5 2 v 695 1678 V 685 1719 a Ff(')p 733 1711 42 2 v 733 1711 V 774 1711 V 816 1711 V 816 1710 a Fh(-)857 1678 y Fg(\017)857 1744 y(\016)1022 1678 y(\014)1022 1744 y(\015)p 891 1744 100 2 v 891 1678 V 880 1719 a Ff(!...&)p 1023 1711 42 2 v 816 1811 V 816 1810 a Fh(-)857 1777 y Fg(\017)857 1844 y(\016)1022 1777 y(\014)1022 1844 y(\015)p 891 1844 100 2 v 891 1777 V 880 1820 a Ff(\(...[)p 1023 1811 42 2 v 816 1910 V 816 1909 a Fh(-)857 1877 y Fg(\017)857 1943 y(\016)1022 1877 y(\014)1022 1943 y(\015)p 891 1943 100 2 v 891 1877 V 880 1920 a Ff(]...~)p 1023 1910 42 2 v 816 2010 V 816 2009 a Fh(-)857 1977 y Fg(\017)857 2043 y(\016)951 1977 y(\014)951 2043 y(\015)p 891 2043 29 2 v 891 1977 V 881 2020 a Ff(\\')p 952 2010 42 2 v 994 2010 71 2 v 816 2109 42 2 v 816 2108 a Fh(-)857 2076 y Fg(\017)857 2143 y(\016)951 2076 y(\014)951 2143 y(\015)p 891 2143 29 2 v 891 2076 V 881 2119 a Ff(\\\\)p 952 2109 42 2 v 994 2109 71 2 v 1064 2109 2 399 v 1064 2109 a Fh(?)p 815 2109 V 1064 2109 42 2 v 774 1710 2 67 v 774 1710 a(?)p 774 1645 332 2 v 1105 2109 2 465 v 1106 2109 42 2 v 1106 2109 V 1106 2108 a(-)1147 2076 y Fg(\017)1147 2143 y(\016)1218 2076 y(\014)1218 2143 y(\015)p 1181 2143 5 2 v 1181 2076 V 1171 2117 a Ff(')p 1218 2109 42 2 v 1218 2108 a Fh(-)651 2240 y Fo(Diagram)f(2:)h(T)l(erminals)h(\()p Ff(term)p Fo(\))72 2412 y Fp(2.1.4)50 b(P)o(a)o(rameters)72 2498 y Fo(T)l(o)20 b(get)f(a)h(compact)f(represen)o(tation,)i(one)f(can)g (use)g(a)g(diagram)f(to)h(represen)o(t)f(more)h(then)g(one)72 2554 y(language)d(elemen)o(t.)27 b(F)l(or)17 b(ev)o(ery)g(represen)o (ted)g(non-terminal)i(a)e Fm(p)n(ar)n(ameter)h(element)j Fo(can)c(b)q(e)h(in-)929 2760 y(3)p eop %%Page: 4 4 4 3 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 72 248 a Fo(tro)q(duced.)22 b(With)16 b(that)f(elemen)o(t)i(a)e(path)h(can)g(b)q(e)g(lo)q(c)o(k)o (ed)g(for)g(all)g(non-terminals)h(not)e(men)o(tioned)72 304 y(in)h(it.)k(Dra)o(wn)14 b(with)i Fk(SYNGEN)p Fo(,)f(parameter)f (elemen)o(ts)i(are)f(enclosed)i(in)f(dashed)g(b)q(o)o(xes.)143 360 y(P)o(arameters)9 b(ma)o(y)h(consist)h(of)f(all)h(ASCI)q(I)h(c)o (haracters)e(from)g(33)g(\()p Ff(!)p Fo(\))g(to)g(126)g(\()p Ff(~)p Fo(\).)17 b(Exceptions)12 b(are)72 417 y(the)f Ff(>)g Fo(sign)g(and)g(again)g(the)g(bac)o(kslash,)h(whic)o(h)g(is)f (used)g(to)g(represen)o(t)g(this)g(c)o(haracters.)18 b(P)o(arameters)72 473 y(has)d(to)g(b)q(e)h(enclosed)g(in)g Ff(<)f Fo(and)h Ff(>)f Fo(signs.)20 b(The)15 b(complete)h(rules)g(are)f (sho)o(wn)g(in)h(Diagram)e(3.)p 620 599 42 2 v 620 598 a Fh(-)661 566 y Fg(\017)661 632 y(\016)732 566 y(\014)732 632 y(\015)p 695 632 5 2 v 695 566 V 685 606 a Ff(<)p 733 599 42 2 v 733 599 V 774 599 V 816 599 V 816 598 a Fh(-)857 566 y Fg(\017)857 632 y(\016)1022 566 y(\014)1022 632 y(\015)p 891 632 100 2 v 891 566 V 880 607 a Ff(!...=)p 1023 599 42 2 v 816 699 V 816 698 a Fh(-)857 666 y Fg(\017)857 732 y(\016)1022 666 y(\014)1022 732 y(\015)p 891 732 100 2 v 891 666 V 880 709 a Ff(?...[)p 1023 699 42 2 v 816 799 V 816 798 a Fh(-)857 765 y Fg(\017)857 832 y(\016)1022 765 y(\014)1022 832 y(\015)p 891 832 100 2 v 891 765 V 880 808 a Ff(]...~)p 1023 799 42 2 v 816 898 V 816 897 a Fh(-)857 865 y Fg(\017)857 931 y(\016)951 865 y(\014)951 931 y(\015)p 891 931 29 2 v 891 865 V 881 908 a Ff(\\>)p 952 898 42 2 v 994 898 71 2 v 816 998 42 2 v 816 997 a Fh(-)857 965 y Fg(\017)857 1031 y(\016)951 965 y(\014)951 1031 y(\015)p 891 1031 29 2 v 891 965 V 881 1008 a Ff(\\\\)p 952 998 42 2 v 994 998 71 2 v 1064 997 2 399 v 1064 997 a Fh(?)p 815 997 V 1064 998 42 2 v 774 598 2 67 v 774 598 a(?)p 774 533 332 2 v 1105 997 2 465 v 1106 998 42 2 v 1106 998 V 1106 997 a(-)1147 965 y Fg(\017)1147 1031 y(\016)1218 965 y(\014)1218 1031 y(\015)p 1181 1031 5 2 v 1181 965 V 1171 1005 a Ff(>)p 1218 998 42 2 v 1218 997 a Fh(-)633 1128 y Fo(Diagram)h(3:)f(P)o (arameter)g(\()p Ff(param)p Fo(\))72 1302 y Fi(2.2)56 b(Building)20 b(up)e(diagrams)72 1388 y Fo(The)h(basic)g(elemen)o(ts)g (of)f(the)g(last)g(section)h(can)g(b)q(e)g(com)o(bined)g(to)f(syn)o (tax)g(diagrams)g(according)72 1444 y(to)g(the)i(follo)o(wing)f(rules.) 33 b(The)19 b(op)q(erators)f(are)h(listed)h(in)g(rev)o(ersed)f(order)g (of)g(their)g(priorit)o(y)l(.)32 b(A)72 1501 y(summary)15 b(of)f(the)i(rules)g(is)f(giv)o(en)h(in)g(the)f(\(recursiv)o(e\))h (Diagram)e(4.)p 455 1596 V 496 1596 V 496 1595 a Fh(-)p 536 1562 122 2 v 536 1628 2 67 v 656 1628 V 536 1630 122 2 v 561 1604 a Ff(ARA)p 656 1596 42 2 v 656 1596 V 656 1595 a Fh(-)697 1563 y Fg(\017)697 1629 y(\016)768 1563 y(\014)768 1629 y(\015)p 731 1629 5 2 v 731 1563 V 721 1606 a Ff(|)p 768 1596 42 2 v 768 1596 V 768 1595 a Fh(-)p 808 1562 122 2 v 808 1628 2 67 v 928 1628 V 808 1630 122 2 v 833 1604 a Ff(ARA)p 928 1596 42 2 v 970 1596 415 2 v 496 1696 42 2 v 496 1695 a Fh(-)p 536 1662 122 2 v 536 1728 2 67 v 656 1728 V 536 1730 122 2 v 561 1704 a Ff(ARA)p 656 1696 42 2 v 656 1696 V 656 1695 a Fh(-)p 696 1662 122 2 v 696 1728 2 67 v 816 1728 V 696 1730 122 2 v 721 1704 a Ff(ARA)p 816 1696 42 2 v 857 1696 528 2 v 496 1795 42 2 v 538 1795 V 538 1794 a Fh(-)578 1762 y Fg(\017)578 1829 y(\016)649 1762 y(\014)649 1829 y(\015)p 612 1829 5 2 v 612 1762 V 603 1802 a Ff(+)p 650 1795 42 2 v 650 1795 V 692 1795 V 692 1794 a Fh(-)p 731 1761 146 2 v 731 1828 2 67 v 875 1828 V 731 1830 146 2 v 756 1802 a Ff(term)p 875 1795 42 2 v 691 1861 2 67 v 692 1862 225 2 v 916 1861 2 67 v 916 1836 a Fh(6)p 916 1795 42 2 v 537 1894 2 100 v 538 1895 421 2 v 957 1894 2 100 v(6)p 958 1795 42 2 v 958 1795 V 958 1794 a(-)999 1762 y Fg(\017)999 1829 y(\016)1070 1762 y(\014)1070 1829 y(\015)p 1033 1829 5 2 v 1033 1762 V 1023 1805 a Ff({)p 1070 1795 42 2 v 1070 1795 V 1070 1794 a Fh(-)p 1110 1761 122 2 v 1110 1828 2 67 v 1230 1828 V 1110 1830 122 2 v 1135 1803 a Ff(ARA)p 1230 1795 42 2 v 1230 1795 V 1230 1794 a Fh(-)1271 1762 y Fg(\017)1271 1829 y(\016)1342 1762 y(\014)1342 1829 y(\015)p 1305 1829 5 2 v 1305 1762 V 1295 1805 a Ff(})p 1343 1795 42 2 v 496 1961 V 496 1960 a Fh(-)537 1928 y Fg(\017)537 1995 y(\016)608 1928 y(\014)608 1995 y(\015)p 571 1995 5 2 v 571 1928 V 561 1971 a Ff([)p 609 1961 42 2 v 609 1961 V 609 1960 a Fh(-)p 648 1927 122 2 v 648 1994 2 67 v 768 1994 V 648 1996 122 2 v 673 1969 a Ff(ARA)p 768 1961 42 2 v 768 1961 V 768 1960 a Fh(-)809 1928 y Fg(\017)809 1995 y(\016)880 1928 y(\014)880 1995 y(\015)p 843 1995 5 2 v 843 1928 V 833 1971 a Ff(])p 881 1961 42 2 v 922 1961 462 2 v 496 2061 42 2 v 496 2060 a Fh(-)p 536 2027 146 2 v 536 2093 2 67 v 680 2093 V 536 2095 146 2 v 561 2068 a Ff(term)p 680 2061 42 2 v 721 2061 664 2 v 496 2161 42 2 v 496 2160 a Fh(-)p 536 2127 217 2 v 536 2193 2 67 v 750 2193 V 536 2195 217 2 v 561 2167 a Ff(nonterm)p 750 2161 42 2 v 792 2161 593 2 v 496 2260 42 2 v 496 2259 a Fh(-)p 536 2226 169 2 v 536 2293 2 67 v 703 2293 V 536 2295 169 2 v 561 2265 a Ff(param)p 703 2260 42 2 v 745 2260 640 2 v 496 2360 42 2 v 496 2359 a Fh(-)537 2327 y Fg(\017)537 2393 y(\016)608 2327 y(\014)608 2393 y(\015)p 571 2393 5 2 v 571 2327 V 561 2370 a Ff(\()p 609 2360 42 2 v 609 2360 V 609 2359 a Fh(-)p 648 2326 122 2 v 648 2392 2 67 v 768 2392 V 648 2394 122 2 v 673 2368 a Ff(ARA)p 768 2360 42 2 v 768 2360 V 768 2359 a Fh(-)809 2327 y Fg(\017)809 2393 y(\016)880 2327 y(\014)880 2393 y(\015)p 843 2393 5 2 v 843 2327 V 833 2370 a Ff(\))p 881 2360 42 2 v 922 2360 462 2 v 1383 2359 2 764 v 1384 2359 a Fh(?)p 495 2359 V 1384 2360 42 2 v -42 w(-)464 2490 y Fo(Diagram)g(4:)h(Enric)o(hed)h(Regular)g(Expressions)g(\()p Ff(ARA)p Fo(\))929 2760 y(4)p eop %%Page: 5 5 5 4 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 72 248 a Fp(2.2.1)50 b(Choice)72 333 y Fo(If)16 b(there)g(are)g(sev)o(eral)g(p)q(ossible)h Fk(ARA)p Fo('s)e(from)g(whic)o(h)i(one)f(can)g(c)o(ho)q(ose)g(the)g (righ)o(t,)f(then)h(the)g(cases)72 390 y(ha)o(v)o(e)f(to)f(b)q(e)i (separated)f(b)o(y)g Ff(|)g Fo(c)o(haracters.)72 471 y Fn(Example)211 516 y Ff(expr)163 573 y(|)24 b(expr)f('+')g(expr)163 629 y(|)h(expr)f('-')g(expr)72 672 y Fe(\))p 163 723 42 2 v 204 723 V 204 722 a Fh(-)p 244 689 146 2 v 244 756 2 67 v 388 756 V 244 758 146 2 v 269 728 a Ff(expr)p 388 723 42 2 v 429 723 296 2 v 204 823 42 2 v 204 822 a Fh(-)p 244 789 146 2 v 244 855 2 67 v 388 855 V 244 857 146 2 v 269 828 a Ff(expr)p 388 823 42 2 v 388 823 V 388 822 a Fh(-)428 790 y Fg(\017)428 856 y(\016)499 790 y(\014)499 856 y(\015)p 463 856 5 2 v 463 790 V 453 829 a Ff(+)p 500 823 42 2 v 500 823 V 500 822 a Fh(-)p 540 789 146 2 v 540 855 2 67 v 684 855 V 540 857 146 2 v 565 828 a Ff(expr)p 684 823 42 2 v 204 922 V 204 921 a Fh(-)p 244 888 146 2 v 244 955 2 67 v 388 955 V 244 957 146 2 v 269 927 a Ff(expr)p 388 922 42 2 v 388 922 V 388 921 a Fh(-)428 889 y Fg(\017)428 956 y(\016)499 889 y(\014)499 956 y(\015)p 463 956 5 2 v 463 889 V 453 929 a Ff(-)p 500 922 42 2 v 500 922 V 500 921 a Fh(-)p 540 888 146 2 v 540 955 2 67 v 684 955 V 540 957 146 2 v 565 927 a Ff(expr)p 684 922 42 2 v 724 922 2 200 v 725 922 a Fh(?)p 204 922 V 725 922 42 2 v 725 921 a(-)72 1075 y Fp(2.2.2)50 b(Concatenation)72 1161 y Fo(T)l(o)15 b(get)g(a)g(sequence)h(of)f Fk(ARA)p Fo('s,)f(they)h(are)g(written)g (directly)i(one)e(b)q(ehind)i(the)f(other.)72 1242 y Fn(Example)163 1308 y Ff('if')23 b(expr)h('then')f(expr)g('else')g (expr)72 1380 y Fe(\))p 163 1430 V 163 1429 a Fh(-)204 1397 y Fg(\017)204 1464 y(\016)298 1397 y(\014)298 1464 y(\015)p 238 1464 29 2 v 238 1397 V 228 1438 a Ff(if)p 299 1430 42 2 v 299 1430 V 299 1429 a Fh(-)p 339 1396 146 2 v 339 1463 2 67 v 482 1463 V 339 1465 146 2 v 364 1435 a Ff(expr)p 482 1430 42 2 v 482 1430 V 482 1429 a Fh(-)523 1397 y Fg(\017)523 1464 y(\016)665 1397 y(\014)665 1464 y(\015)p 557 1464 76 2 v 557 1397 V 547 1438 a Ff(then)p 666 1430 42 2 v 666 1430 V 666 1429 a Fh(-)p 706 1396 146 2 v 706 1463 2 67 v 849 1463 V 706 1465 146 2 v 730 1435 a Ff(expr)p 849 1430 42 2 v 849 1430 V 849 1429 a Fh(-)890 1397 y Fg(\017)890 1464 y(\016)1032 1397 y(\014)1032 1464 y(\015)p 924 1464 76 2 v 924 1397 V 914 1438 a Ff(else)p 1032 1430 42 2 v 1032 1430 V 1032 1429 a Fh(-)p 1072 1396 146 2 v 1072 1463 2 67 v 1216 1463 V 1072 1465 146 2 v 1097 1435 a Ff(expr)p 1216 1430 42 2 v 1216 1429 a Fh(-)72 1583 y Fp(2.2.3)50 b(Optional)17 b(comp)q(onents)72 1669 y Fo(If)e(an)f Fk(ARA)h Fo(is)g(optional,)g(the)g(appropriate)f (expression)i(has)e(to)g(b)q(e)h(enclosed)h(in)g(square)e(brac)o(k)o (ets.)72 1750 y Fn(Example)163 1818 y Ff('if')23 b(expr)h('then')f (expr)g(['else')g(expr])72 1888 y Fe(\))p 163 1939 V 163 1938 a Fh(-)204 1905 y Fg(\017)204 1972 y(\016)298 1905 y(\014)298 1972 y(\015)p 238 1972 29 2 v 238 1905 V 228 1947 a Ff(if)p 299 1939 42 2 v 299 1939 V 299 1938 a Fh(-)p 339 1904 146 2 v 339 1971 2 67 v 482 1971 V 339 1973 146 2 v 364 1943 a Ff(expr)p 482 1939 42 2 v 482 1939 V 482 1938 a Fh(-)523 1905 y Fg(\017)523 1972 y(\016)665 1905 y(\014)665 1972 y(\015)p 557 1972 76 2 v 557 1905 V 547 1947 a Ff(then)p 666 1939 42 2 v 666 1939 V 666 1938 a Fh(-)p 706 1904 146 2 v 706 1971 2 67 v 849 1971 V 706 1973 146 2 v 730 1943 a Ff(expr)p 849 1939 42 2 v 849 1939 V 891 1939 V 891 1938 a Fh(-)931 1905 y Fg(\017)931 1972 y(\016)1073 1905 y(\014)1073 1972 y(\015)p 965 1972 76 2 v 965 1905 V 955 1947 a Ff(else)p 1074 1939 42 2 v 1074 1939 V 1074 1938 a Fh(-)p 1114 1904 146 2 v 1114 1971 2 67 v 1257 1971 V 1114 1973 146 2 v 1139 1943 a Ff(expr)p 1257 1939 42 2 v 890 2004 2 67 v 891 2005 409 2 v 1298 2004 2 67 v 1299 1979 a Fh(6)p 1299 1939 42 2 v 1299 1938 a(-)72 2124 y Fp(2.2.4)50 b(Rep)q(etitions)72 2210 y Fo(There)15 b(are)g(three)h(w)o(a)o(ys)e(to) g(rep)q(eat)i(an)f(expression)h(in)g Fk(ARA)p Fo(.)p 72 2291 18 18 v 143 2291 a(Zero)e(or)h(sev)o(eral)g(rep)q (etitions|denoted)j(with)d(curly)h(brac)o(k)o(ets.)929 2760 y(5)p eop %%Page: 6 6 6 5 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 143 248 a(Example)234 315 y Ff({impl-phrase)22 b(';;'})143 385 y Fe(\))p 234 469 42 2 v 275 469 V 275 468 a Fh(-)p 315 435 311 2 v 315 502 2 67 v 624 502 V 315 504 311 2 v 339 477 a Ff(impl-phrase)p 624 469 42 2 v 624 469 V 624 468 a Fh(-)664 436 y Fg(\017)664 502 y(\016)759 436 y(\014)759 502 y(\015)p 698 502 29 2 v 698 436 V 689 474 a Ff(;;)p 760 469 42 2 v 274 468 2 67 v 275 468 a Fh(?)p 275 403 527 2 v 801 468 2 67 v 274 535 V 275 536 527 2 v 801 535 2 67 v 801 510 a(6)p 801 469 42 2 v 801 468 a(-)p 72 629 18 18 v 143 629 a Fo(One)16 b(or)e(sev)o(eral)i(rep)q(etitions|denoted)h(in)f(curly)g (brac)o(k)o(ets)f(with)g(a)g(leading)h(plus)h(sign.)143 729 y Fn(Example)234 801 y Ff(+{)23 b('A...Z')g(|)h('0...9')f(})143 866 y Fe(\))p 234 950 42 2 v 275 950 V 317 950 V 317 949 a Fh(-)357 917 y Fg(\017)357 984 y(\016)523 917 y(\014)523 984 y(\015)p 391 984 100 2 v 391 917 V 381 958 a Ff(A...Z)p 524 950 42 2 v 317 1050 V 317 1049 a Fh(-)357 1017 y Fg(\017)357 1083 y(\016)523 1017 y(\014)523 1083 y(\015)p 391 1083 100 2 v 391 1017 V 381 1058 a Ff(0...9)p 524 1050 42 2 v 564 1049 2 100 v 565 1049 a Fh(?)p 316 1049 V 565 1050 42 2 v 274 950 2 67 v 275 950 a(?)p 275 884 332 2 v 606 1049 2 167 v 607 1050 42 2 v 607 1049 a(-)p 72 1176 18 18 v 143 1176 a Fo(One)e(or)g(sev)o(eral)g(rep)q(etitions)h (with)g(a)e(separating)h(terminal.)38 b(This)22 b(construct)e(is)i(lik) o(e)g(the)143 1233 y(former)14 b(one,)i(except)f(that)g(the)h (additional)g(terminal)h(has)e(to)g(b)q(e)h(inserted)g(b)q(et)o(w)o (een)g(the)f(plus)143 1289 y(sign)g(and)h(the)f(op)q(ening)h(brac)o(k)o (et.)143 1389 y Fn(Example)234 1457 y Ff('let')23 b(['rec'])g(+)g ('and')h({)f(let-binding)g(})g('in')h(expr)143 1527 y Fe(\))p 234 1677 42 2 v 234 1676 a Fh(-)274 1644 y Fg(\017)274 1710 y(\016)392 1644 y(\014)392 1710 y(\015)p 308 1710 52 2 v 308 1644 V 298 1685 a Ff(let)p 393 1677 42 2 v 393 1677 V 435 1677 V 435 1676 a Fh(-)475 1644 y Fg(\017)475 1710 y(\016)594 1644 y(\014)594 1710 y(\015)p 509 1710 52 2 v 509 1644 V 500 1682 a Ff(rec)p 594 1677 42 2 v 434 1743 2 67 v 435 1744 202 2 v 635 1743 2 67 v 636 1718 a Fh(6)p 636 1677 42 2 v 636 1677 V 677 1677 V 677 1676 a(-)p 717 1643 311 2 v 717 1710 2 67 v 1026 1710 V 717 1712 311 2 v 741 1685 a Ff(let-binding)p 1026 1677 42 2 v 813 1544 a Fg(\017)813 1611 y(\016)931 1544 y(\014)931 1611 y(\015)p 847 1611 52 2 v 847 1544 V 837 1586 a Ff(and)p 677 1676 2 100 v 677 1676 a Fh(?)p 932 1578 137 2 v 677 1578 V 1067 1676 2 100 v 1068 1677 42 2 v 1068 1677 V 349 w(-)1108 1644 y Fg(\017)1108 1710 y(\016)1203 1644 y(\014)1203 1710 y(\015)p 1142 1710 29 2 v 1142 1644 V 1133 1685 a Ff(in)p 1204 1677 42 2 v 1204 1677 V 1204 1676 a Fh(-)p 1244 1643 146 2 v 1244 1710 2 67 v 1387 1710 V 1244 1712 146 2 v 1268 1682 a Ff(expr)p 1387 1677 42 2 v 1387 1676 a Fh(-)72 1863 y Fp(2.2.5)50 b(Grouping)72 1949 y Fo(Ev)o(ery)12 b(expression)i(in)g Fk(ARA)e Fo(can)h(b)q(e)h (enclosed)g(in)g(paren)o(theses)f(to)f(form)g(groups.)18 b(F)l(or)13 b(an)f(example)72 2005 y(lo)q(ok)k(at)e(the)h(concluding)j (Diagram)c(5)h(in)h(this)g(section.)72 2127 y Fi(2.3)56 b(Options)72 2213 y Fo(The)15 b(follo)o(wing)h(diagram)f(sho)o(ws)g (the)g(syn)o(tax)g(of)f(a)h Fk(SYNGEN)h Fo(call.)929 2760 y(6)p eop %%Page: 7 7 7 6 bop 605 100 a Fn(2)45 b(Ho)o(w)14 b(to)h(mak)o(e)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 508 269 42 2 v 508 268 a Fh(-)549 236 y Fg(\017)549 302 y(\016)738 236 y(\014)738 302 y(\015)p 583 302 123 2 v 583 236 V 573 274 a Ff(syngen)p 739 269 42 2 v 739 269 V 780 269 V 822 269 V 863 269 V 863 268 a Fh(-)904 236 y Fg(\017)904 302 y(\016)998 236 y(\014)998 302 y(\015)p 938 302 29 2 v 938 236 V 928 275 a Ff(-c)p 999 269 42 2 v 863 369 V 863 368 a Fh(-)904 336 y Fg(\017)904 402 y(\016)998 336 y(\014)998 402 y(\015)p 938 402 29 2 v 938 336 V 928 375 a Ff(-o)p 999 369 42 2 v 863 468 V 863 467 a Fh(-)904 435 y Fg(\017)904 502 y(\016)998 435 y(\014)998 502 y(\015)p 938 502 29 2 v 938 435 V 928 475 a Ff(-a)p 999 468 42 2 v 863 568 V 863 567 a Fh(-)904 535 y Fg(\017)904 601 y(\016)998 535 y(\014)998 601 y(\015)p 938 601 29 2 v 938 535 V 928 576 a Ff(-h)p 999 568 42 2 v 863 668 V 863 667 a Fh(-)904 634 y Fg(\017)904 701 y(\016)998 634 y(\014)998 701 y(\015)p 938 701 29 2 v 938 634 V 928 676 a Ff(-f)p 999 668 42 2 v 1040 667 2 399 v 1041 667 a Fh(?)p 862 667 V 1041 668 42 2 v 1041 668 V -42 w(-)p 1081 634 169 2 v 1081 700 2 67 v 1248 700 V 1081 702 169 2 v 1105 676 a Ff(value)p 1248 668 42 2 v 822 767 V 822 766 a Fh(-)862 734 y Fg(\017)862 800 y(\016)1099 734 y(\014)1099 800 y(\015)p 896 800 170 2 v 896 734 V 886 775 a Ff(-version)p 1100 767 42 2 v 1141 767 149 2 v 822 867 42 2 v 822 866 a Fh(-)p 862 833 240 2 v 862 899 2 67 v 1100 899 V 862 901 240 2 v 886 875 a Ff(filename)p 1100 867 42 2 v 1141 867 149 2 v 1288 866 2 200 v 1289 866 a Fh(?)p 821 866 2 598 v 1289 867 42 2 v 779 268 2 67 v 780 268 a(?)p 780 203 551 2 v 1330 866 2 665 v 779 932 V 780 933 551 2 v 1330 932 2 67 v 1331 908 a(6)p 1331 867 42 2 v 1331 866 a(-)143 1034 y Fo(The)g(lo)q(ok)h(of)f(the)g(output)g(can)h(b)q(e)g (con)o(trolled)g(b)o(y)f(the)g(sev)o(eral)h(options.)20 b(Because)15 b(the)f(syn)o(tax)72 1090 y(diagrams)f(are)g(build)j(up)e (from)f(the)g(basic)i(elemen)o(ts,)f(the)f(options)h(are)f(mostly)h (deal)g(with)g(the)f(size)72 1146 y(of)j(terminal,)i(non-terminal)g (and)f(parameter)f(b)q(o)o(xes.)25 b(All)18 b(v)m(alues,)g(except)f Fd(f)5 b Fo(,)17 b(ha)o(v)o(e)f(to)g(b)q(e)i(giv)o(en)72 1203 y(in)e(terms)f(of)f Ff(\\unitlength)p Fo(,)g(whic)o(h)i(is)g(b)o (y)f(default)g(equal)h(to)f(1)7 b(pt.)20 b(The)15 b(options)h(are:)p 360 1261 1161 2 v 359 1317 2 57 v 385 1300 a(option)p 535 1317 V 434 w(meaning)p 1520 1317 V 360 1319 1161 2 v 359 1375 2 57 v 385 1358 a Ff(-c)f Fd(c)p 535 1375 V 93 w Fo(Length)h(of)e(connect)i(lines)h(on)e(basic)h(b)q(o)o(xes.)p 1520 1375 V 359 1432 V 385 1415 a Ff(-o)f Fd(o)p 535 1432 V 91 w Fo(Length)h(of)e(a)h(c)o(haracter.)p 1520 1432 V 359 1488 V 385 1471 a Ff(-a)g Fd(a)p 535 1488 V 89 w Fo(Additional)i(o\013set)d(to)h(the)g(b)q(o)o(x)g(length.)p 1520 1488 V 359 1545 V 385 1528 a Ff(-h)g Fd(h)p 535 1545 V 87 w Fo(Heigh)o(t)g(of)g(basic)h(b)q(o)o(xes.)p 1520 1545 V 359 1601 V 385 1584 a Ff(-f)f Fd(f)p 535 1601 V 91 w Fo(V)l(ertically)i(stac)o(k)o(ed)d(b)q(o)o(xes)i(are)f (separated)g(b)o(y)g Fd(h)10 b Fe(\001)g Fd(f)5 b Fo(.)p 1520 1601 V 360 1603 1161 2 v 72 1681 a(The)17 b(next)g(v)m(alues)h (are)e(a)h(go)q(o)q(d)f(c)o(hoice)i(for)e(the)h(normal)g(Computer)f(Mo) q(dern)h(T)o(yp)q(ewriter)g(T)o(yp)q(e)72 1737 y(fon)o(t)f(family)l(.) 27 b(They)18 b(are)e(listed)j(in)f(dep)q(endency)h(of)e(the)g(fon)o(t)g (size)h(and)f(under)h(the)f(assumption,)72 1793 y(that)e Ff(\\unitlength)e Fo(is)j(equal)g(to)e(1)8 b(pt.)p 519 1851 843 2 v 518 1908 2 57 v 544 1891 a(fon)o(t)14 b(size)p 733 1908 V 64 w Fd(c)p 828 1908 V 126 w(o)p 1027 1908 V 142 w(a)p 1157 1908 V 88 w(h)p 1252 1908 V 75 w(f)p 1360 1908 V 519 1909 843 2 v 518 1966 2 57 v 544 1949 a Fo(10)7 b(pt)p 733 1966 V 141 w(8)p 828 1966 V 50 w(5.24995)p 1027 1966 V 47 w(10.5)p 1157 1966 V 49 w(14)p 1252 1966 V 49 w(0.5)p 1360 1966 V 518 2022 V 544 2005 a(11)g(pt)p 733 2022 V 118 w(10)p 828 2022 V 50 w(5.69145)p 1027 2022 V 47 w(11.4)p 1157 2022 V 49 w(16)p 1252 2022 V 49 w(0.5)p 1360 2022 V 518 2079 V 544 2062 a(12)g(pt)p 733 2079 V 118 w(12)p 828 2079 V 50 w(6.175)p 1027 2079 V 93 w(12.4)p 1157 2079 V 49 w(18)p 1252 2079 V 49 w(0.5)p 1360 2079 V 519 2080 843 2 v 72 2158 a(The)18 b(v)m(alues)g(for)f(a)g (10)7 b(pt)17 b(fon)o(t)f(are)h(prede\014ned)i(and)f(used,)g(if)f(no)h (options)f(are)g(giv)o(en.)27 b(The)17 b(next)72 2215 y(picture)g(sho)o(ws)e(the)i(e\013ect)e(of)h(the)g(v)m(alues)h Fd(c)p Fo(,)f Fd(o)p Fo(,)g Fd(a)g Fo(and)g Fd(h)g Fo(on)g(a)g (non-terminal)h(b)q(o)o(x)f(with)g(a)g(sev)o(en)72 2271 y(c)o(haracter)f(string.)p 556 2387 119 4 v 633 2385 a Fc(-)p 1088 2387 V 489 w(-)p 671 2326 421 4 v 671 2444 4 119 v 752 2407 a Fb(testbox)p 1088 2444 V 671 2447 421 4 v 556 2504 60 2 v 557 2503 a Fh(\033)p 615 2504 V 34 w(-)p 674 2504 296 2 v -1 w(\033)p 970 2504 119 2 v 330 w(-)p 1088 2504 60 2 v(\033)p 1147 2504 V 34 w(-)p 1264 2385 2 60 v 1265 2367 a(6)p 1264 2444 V 1265 2444 a(?)p 555 2527 2 142 v 674 2527 2 83 v 1087 2527 V 1205 2527 2 142 v 1088 2327 201 2 v 1088 2445 V 606 2542 a Fd(c)803 2545 y Fo(7)9 b Fe(\001)h Fd(o)g Fo(+)h Fd(a)1137 2542 y(c)1281 2401 y(h)929 2760 y Fo(7)p eop %%Page: 8 8 8 7 bop 613 100 a Fn(3)46 b(Ho)o(w)14 b(to)h(read)g(syn)o(tax)f (diagrams)p 72 117 1737 2 v 72 248 a Fi(2.4)56 b(A)18 b(complete)i(example)72 333 y Fo(The)h(problem)h(is)f(to)g(mak)o(e)f(a) h(diagram)f(for)h(an)g(en)o(umeration)g(de\014nition)i(and)e (declaration)h(of)72 390 y(the)e(language)f Fk(C)374 383 y Fa(+)l(+)438 390 y Fo(\(tak)o(en)g(from)f([3]\))h(and)g(to)g (include)j(it)e(in)g(a)f(11)7 b(pt)19 b(L)1370 381 y Fj(A)1389 390 y Fo(T)1414 400 y(E)1441 390 y(X-do)q(cumen)o(t.)33 b(The)72 446 y(description)17 b(in)f Fk(ARA)f Fo(is:)163 538 y Ff('enum')23 b(\()71 b()24 b([name])f('{')g(+)h(',')f({name) g(['=')h(expr]})f('}')378 594 y(|)g()g(name)330 651 y(\))72 737 y Fo(This)16 b(input)g(is)g(compiled)h(b)o(y)e Fk(SYNGEN)g Fo(with)h(the)f(call)163 838 y Ff(syngen)23 b(-c)h(10)f(-h)h(16)f(-o)h(5.69145)f(-a)g(11.4)h(example.ara)72 944 y Fo(and)15 b(can)h(b)q(e)g(included)h(in)f(the)g(do)q(cumen)o(t)f (with)163 1027 y Ff(\\begin{figure}[ht])187 1083 y (\\centerline{\\input{exampl)o(e.syn}})163 1140 y(\\caption{$<$dekl,)21 b(def$>$)j(enumeration})163 1196 y(\\end{figure})72 1289 y Fo(The)15 b(result)h(is)g(giv)o(en)g(in)g(Diagram)e(5.)p 138 1480 42 2 v 138 1479 a Fh(-)179 1447 y Fg(\017)179 1513 y(\016)321 1447 y(\014)321 1513 y(\015)p 213 1513 76 2 v 213 1447 V 203 1485 a Ff(enum)p 321 1480 42 2 v 321 1480 V 363 1480 V 363 1479 a Fh(-)p 404 1513 5 2 v 404 1447 V 519 1513 V 519 1447 V 417 1513 9 2 v 434 1513 V 450 1513 V 467 1513 V 483 1513 V 500 1513 V 417 1447 V 434 1447 V 450 1447 V 467 1447 V 483 1447 V 500 1447 V 404 1512 2 5 v 522 1512 V 404 1450 V 522 1450 V 404 1467 2 9 v 404 1483 V 404 1500 V 522 1467 V 522 1483 V 522 1500 V 428 1488 a Ff(def)p 523 1480 42 2 v 523 1480 V 564 1480 V 564 1479 a Fh(-)p 604 1446 146 2 v 604 1512 2 67 v 748 1512 V 604 1514 146 2 v 629 1485 a Ff(name)p 748 1480 42 2 v 563 1546 2 67 v 564 1546 225 2 v 788 1546 2 67 v 789 1521 a Fh(6)p 789 1480 42 2 v 789 1480 V 789 1479 a(-)830 1447 y Fg(\017)830 1513 y(\016)901 1447 y(\014)901 1513 y(\015)p 864 1513 5 2 v 864 1447 V 854 1490 a Ff({)p 902 1480 42 2 v 902 1480 V 943 1480 V 943 1479 a Fh(-)p 983 1446 146 2 v 983 1512 2 67 v 1126 1512 V 983 1514 146 2 v 1008 1485 a Ff(name)p 1126 1480 42 2 v 1126 1480 V 1168 1480 V 1168 1479 a Fh(-)1209 1447 y Fg(\017)1209 1513 y(\016)1280 1447 y(\014)1280 1513 y(\015)p 1243 1513 5 2 v 1243 1447 V 1233 1485 a Ff(=)p 1280 1480 42 2 v 1280 1480 V 1280 1479 a Fh(-)p 1320 1446 146 2 v 1320 1512 2 67 v 1464 1512 V 1320 1514 146 2 v 1345 1485 a Ff(expr)p 1464 1480 42 2 v 1167 1546 2 67 v 1168 1546 338 2 v 1504 1546 2 67 v 1505 1521 a Fh(6)p 1505 1480 42 2 v 1209 1347 a Fg(\017)1209 1414 y(\016)1280 1347 y(\014)1280 1414 y(\015)p 1243 1414 5 2 v 1243 1347 V 1233 1385 a Ff(,)p 942 1479 2 100 v 943 1479 a Fh(?)p 1280 1380 267 2 v 943 1380 V 1546 1479 2 100 v 1547 1480 42 2 v 1547 1480 V 562 w(-)1587 1447 y Fg(\017)1587 1513 y(\016)1658 1447 y(\014)1658 1513 y(\015)p 1621 1513 5 2 v 1621 1447 V 1612 1490 a Ff(})p 1659 1480 42 2 v 363 1613 V 363 1612 a Fh(-)p 404 1646 9 2 v 421 1646 V 438 1646 V 454 1646 V 471 1646 V 488 1646 V 504 1646 V 521 1646 V 537 1646 V 404 1580 V 421 1580 V 438 1580 V 454 1580 V 471 1580 V 488 1580 V 504 1580 V 521 1580 V 537 1580 V 404 1645 2 5 v 545 1645 V 404 1583 V 545 1583 V 404 1600 2 9 v 404 1616 V 404 1633 V 545 1600 V 545 1616 V 545 1633 V 428 1621 a Ff(dekl)p 546 1613 42 2 v 546 1613 V 546 1612 a Fh(-)p 586 1579 146 2 v 586 1645 2 67 v 730 1645 V 586 1647 146 2 v 611 1618 a Ff(name)p 730 1613 42 2 v 771 1613 930 2 v 1700 1612 2 133 v 1701 1612 a Fh(?)p 362 1612 V 1701 1613 42 2 v -42 w(-)571 1743 y Fo(Diagram)g(5:)h Fd(<)p Fo(dekl,)h(def)p Fd(>)g Fo(en)o(umeration)72 1934 y Fq(3)66 b(Ho)n(w)22 b(to)g(read)f(syntax)h(diagrams)72 2036 y Fo(The)15 b(rules)g(for)f (reading)i(syn)o(tax)d(diagrams)i(are)f(sho)o(wn)g(language)h(indep)q (enden)o(t)i(in)f(the)f(follo)o(wing)72 2092 y(p)q(oin)o(ts.)p 72 2172 18 18 v 143 2172 a(Ev)o(ery)j(diagram)g(represen)o(ts)g(one)h (language)g(elemen)o(t)g(or)f(a)g(group)g(of)g(them.)30 b(If)18 b(a)h(group)f(is)143 2229 y(giv)o(en,)d(the)g(diagram)g(is)h (parameterized)g(with)f(the)g(individual)k(elemen)o(ts.)p 72 2321 V 143 2321 a(Non-terminals)i(are)f(represen)o(ted)h(b)o(y)g (rectangular)f(b)q(o)o(xes,)i(terminals)f(b)o(y)g(o)o(v)m(al)f(b)q(o)o (xes)h(and)143 2377 y(parameters)14 b(are)h(enclosed)h(in)g(dashed)g(b) q(o)o(xes.)p 72 2470 V 143 2470 a(The)f(run)h(through)e(the)i(diagram)f (starts)e(at)i(the)g(leftmost)g(p)q(oin)o(t.)p 72 2562 V 143 2562 a(The)g(direction)i(of)d(reading)i(is)g(giv)o(en)f(b)o(y)h (the)f(arro)o(ws)f(on)h(the)g(end)h(of)f(ev)o(ery)g(line.)929 2760 y(8)p eop %%Page: 9 9 9 8 bop 835 109 a Fn(References)p 72 117 1737 2 v 72 248 18 18 v 143 248 a Fo(The)15 b(run)h(stops,)e(if)h(the)h(righ)o (tmost)e(p)q(oin)o(t)i(of)e(the)i(diagram)f(has)g(reac)o(hed.)p 72 341 V 143 341 a(If)e(a)h(parameter)e(elemen)o(t)i(app)q(ears)g(on)f (the)h(w)o(a)o(y)f(through)g(the)g(diagram,)g(then)h(this)g(p)q(oin)o (t)g(can)143 398 y(only)h(b)q(e)h(passed)g(while)g(pro)q(ducing)h(the)e (corresp)q(onding)h(language)g(elemen)o(t.)72 541 y Fq(References)72 643 y Fo([1])22 b(Martin)12 b(Reiser)i(and)f(Niklaus)h(Wirth.)i Fm(Pr)n(o)n(gr)n(amming)e(in)f(Ob)n(er)n(on:)19 b(Steps)13 b(b)n(eyond)h(Pasc)n(al)f(and)143 699 y(Mo)n(dula)p Fo(.)20 b(Addison-W)l(esley)l(,)d(W)l(okingham,)e(1992.)72 793 y([2])22 b(P)o(eter)11 b(Thiemann.)k Fm(Grund)r(lagen)e(der)g (funktionalen)f(Pr)n(o)n(gr)n(ammierung)p Fo(.)i(T)l(eubner,)f (Stuttgart,)143 849 y(1994.)72 943 y([3])22 b(J.)15 b(W)l(ol\013)h(v)o (on)f(Guden)o(b)q(erg.)22 b Fm(Objektorientiert)16 b(pr)n(o)n(gr)n (ammier)n(en)g(von)g(A)o(nfang)g(an)p Fo(.)21 b(BI-Wiss.-)143 999 y(V)l(erl.,)15 b(Mannheim,)h(1993.)72 1093 y([4])22 b(J.)k(W)l(ol\013)h(v)o(on)f(Guden)o(b)q(erg.)54 b Fm(A)o(lgorithmen,) 29 b(Datenstruktur)n(en,)g(F)m(unktionale)c(Pr)n(o)n(gr)n(am-)143 1150 y(mierung.)d(Eine)g(pr)n(aktische)h(Einf)q(\177)-24 b(uhrung)23 b(mit)f Fl(CAML)f(LIGHT)p Fo(.)40 b(Addison-W)l(esley)l(,) 26 b(Bonn,)143 1206 y(1996.)929 2760 y(9)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF