summaryrefslogtreecommitdiff
path: root/support/syngen/doc/manual.ps
blob: 0cffb075adfb113c6797876d4131a3d42543cae9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
%!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 df<EA7FC0487EA2127F1203A9EBE1FE9038E7FF8001EF7F90B512F0EC
07F89038FC01FC496C7E157E497FA2497F1680150FA6151FA26D14005DA26D137E6D5B14
019038FF07F8ECFFF001EF13C001E790C7FC3801C1FC212C7FAB25>98
D<EB1FE0EBFFF84813FE00077F390FF07F80391FC01FC0383F800F90380007E0007E1303
15F0127C00FC1301A2B6FCA315E000F8C8FC7EA2127C127E15E06CEB01F0381F8003EBC0
07390FF81FE00003B512C06C148039007FFE00EB1FF81C1F7C9E25>101
D<EB3FC0EBFFF0000313FC487F380FE07F391F801F80EB000F003EEB07C0A248EB03E0A2
48EB01F0A86C1303007C14E0A26CEB07C0003F130F391F801F80EBC03F390FE07F003807
FFFE6C5BC613F0EB3FC01C1F7C9E25>111 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 D<EBF180380389C038070780EA0E03121C123C383807001278A3EAF00EA3
1410EB1C20A2EA703CEB5C40EA308C380F078014147E9318>97 D<137CEA01C338070080
EA0E07121E001C1300EA3C0248C7FCA35AA5EA70011302EA3004EA1838EA0FC011147E93
14>99 D<147C14CEEB019E1303140CEB0700A4130EA3EBFFF0EB0E00A25BA55BA55BA55B
A45B1201EA3180127948C7FC1262123C17297E9F16>102 D<EA01E0120FEA01C0A4485A
A448C7FCA2131FEB6180380E80C0EA0F00000E13E0A2381C01C0A438380380A3EB070400
701308130E1410130600E01320386003C016207E9F1A>104 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 D<EA03C0487E487EEA1E78EA1C38A4EB7BF813F3EA1EE3000F13C0
EBC38013831307001F1300EA3F87EA7BCFEA71CEEAF1FEEAE0FCA2EB7870EAF07CEA71FE
387FFFF0383FCFE0381F03C0151C7F9B18>38 D<1238127C127EA2123E120EA3121E123C
127812F812F012C0070E789B18>I<137013F01201EA03C0EA0780EA0F00121E121C123C
123812781270A212F05AA87E1270A212781238123C121C121E7EEA0780EA03C0EA01F012
0013700C24799F18>I<126012F012787E7E7EEA0780120313C0120113E01200A213F013
70A813F013E0A2120113C0120313801207EA0F00121E5A5A5A12600C247C9F18>I<1360
13F0A7387FFFC0B512E0A26C13C03800F000A7136013147E9718>43
D<123C127E127FA3123F120F120E121E127C12F81270080C788518>I<387FFFC0B512E0
A26C13C013047E8F18>I<127812FCA412780606778518>I<EA01F0EA07FC487EEA1F1FEA
1C0738380380007813C0EA7001A238E000E0A9EAF001007013C0A2EA780300381380381C
0700EA1F1FEA0FFE6C5AEA01F0131C7E9B18>48 D<EA018012031207A2120F123F12FF12
FB12631203B0EA7FFCEAFFFEEA7FFC0F1C7B9B18>I<131F5B1377A213E7120113C7EA03
8712071307120E121E123C1238127812F0B512F8A338000700A6EB7FF0A3151C7F9B18>
52 D<383FFF80A30038C7FCA8EA3BFCEA3FFE7F383E0780383803C0380001E01300A212
6012F0130100E013C0EAF003387C0F80383FFF006C5AEA07F8131C7E9B18>I<137E48B4
FC00071380380FC3C0EA1F03123C383801800078C7FC1270A2EAF3F8EAEFFEB5FC38FE0F
8038F803C0EAF00114E01300A312701301007813C0EA3C03381E0F80380FFF006C5AEA03
F8131C7E9B18>I<EA03F8EA0FFC487EEA3E0F3878078038F003C0EAE001A214E0A312F0
EA7803EA3E0FEA1FFFEA0FFEEA03F8EA000114C0A2130300301380EA7807EB0F00133EEA
3FFC6C5AEA0FE0131C7E9B18>57 D<123C127EA4123C1200A81238127C127EA3123E120E
121E123C127812F01260071A789318>59 D<14C0EB03E01307EB1FC0EB3F80EBFE00485A
EA07F0485AEA3F8048C7FC12FCA2127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07
E01303EB00C013187E9918>I<387FFFC0B512E0A26C13C0C8FCA4387FFFC0B512E0A26C
13C0130C7E9318>I<126012F87E127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07
E0A2EB1FC0EB3F80EBFE00485AEA07F0485AEA3F8048C7FC12FC5A126013187E9918>I<
EA0FF8EA3FFE487E38F80F80EAF003A2130738001F00133E13FCEA01F05B485AA55BC8FC
A5EA0380487EA36C5A111C7D9B18>I<137013F8A213D8A2EA01DCA3138CEA038EA4EA07
07A5380FFF80A3EA0E03381C01C0A3387F07F000FF13F8007F13F0151C7F9B18>65
D<EA7FF8EAFFFE6C7E381C0F80130314C01301A313031480130F381FFF005BA2EA1C0FEB
07801303A5149CA3007F13FC38FF81F8387F00F0161C7F9B18>82
D<383FFFE05AA2387001C01303EB07801400C65A131E131C133C5B137013F0485A5B1203
485A90C7FC5A001E13E0121C123C5A1270B5FCA3131C7E9B18>90
D<EAFFF8A3EAE000B3ACEAFFF8A30D24779F18>I<126012F07EA21278127CA27EA2121E
121FA26C7EA212077FA26C7EA26C7EA212007FA2137CA2133C133EA27FA27F1480A21307
EB030011247D9F18>I<EAFFF8A3EA0038B3ACEAFFF8A30D247F9F18>I<387FFFC0B512E0
A26C13C013047E7F18>95 D<EA0FF0EA1FFC487EEA3C1F38180780EA0003A213FF120F5A
EA7F83EA780312F012E0A2EAF007EA7C1F383FFFF8EA1FFDEA07F015147E9318>97
D<127E12FE127E120EA5133EEBFF80000F13C0EBE3E0EB80F0EB00701478000E1338A512
0F14781470EB80F0EBC3E0EBFFC0000E138038067E00151C809B18>I<EA01FEEA07FF00
1F1380EA3F07383C030048C7FC127012F05AA47E1270387801C0123CEA3F07381FFF8000
071300EA01FC12147D9318>I<EB1F80133F131F1303A5EA03F3EA0FFBEA1FFFEA3E1FEA
780FEA700712F0EAE003A5130712F01270EA780FEA3E3F381FFFF0380FFBF83803E3F015
1C7E9B18>I<EA03F0EA0FFC487EEA3E1F38780780EA700300F013C0EAE001A2B5FCA300
F0C7FC1270387801C0123CEA3F07381FFF8000071300EA01FC12147D9318>I<EB1FC0EB
7FE013FFEA01F1EBC0C01400A3387FFFC0B5FCA23801C000AEEA7FFFA3131C7F9B18>I<
3803F1F03807FFF85A381E1F30383C0F00EA3807A5EA3C0FEA1E1EEA1FFC485AEA3BF000
38C7FC123CEA1FFF14C04813E0387801F038F00078481338A36C1378007813F0EA7E0338
3FFFE0000F13803803FE00151F7F9318>I<127E12FE127E120EA5133FEBFF80000F13C0
EBE1E013801300A2120EAA387FC7FC38FFE7FE387FC7FC171C809B18>I<EA0380EA07C0
A3EA0380C7FCA4EA7FC012FF127F1201AEB5FCA3101D7C9C18>I<127E12FE127E120EA5
EB3FF0A3EB0780EB0F00131E5B5B5BEA0FF87F139C131EEA0E0FEB0780130314C0387FC7
F812FF127F151C7F9B18>107 D<EAFFC0A31201B3A4B51280A3111C7D9B18>I<38FBE3E0
38FFF7F0EBFFF8383E3E38EA3C3CA2EA3838AB38FE3E3EEB7E7EEB3E3E1714809318>I<
EA7E3F38FEFF80007F13C0380FE1E013801300A2120EAA387FC7FC38FFE7FE387FC7FC17
14809318>I<EA01F0EA0FFE487E383E0F80EA3803387001C0A238E000E0A5EAF0010070
13C0EA7803383C0780EA3E0F381FFF006C5AEA01F013147E9318>I<EA7E3E38FEFF8000
7F13C0380FE3E0EB80F0EB00701478000E1338A5120F14781470EB80F0EBC3E0EBFFC000
0E1380EB7E0090C7FCA7EA7FC0487E6C5A151E809318>I<38FF0FC0EB3FF0137FEA07F8
EBE060EBC0005BA390C7FCA8EAFFFC7F5B14147E9318>114 D<EA0FF7EA3FFF5AEAF81F
EAE007A212F0007CC7FCEA7FF0EA1FFCEA07FEEA001F38600780EAE00312F0130738FC0F
00B5FC5BEAE7F811147D9318>I<487E1203A4387FFFC0B5FCA238038000A9144014E0A2
1381EBC3C0EA01FF6C1380EB7E0013197F9818>I<387E07E0EAFE0FEA7E07EA0E00AC13
01EA0F073807FFFC6C13FE3801FCFC1714809318>I<387F8FF000FF13F8007F13F0381C
01C0380E0380A338070700A3138FEA038EA3EA01DCA3EA00F8A2137015147F9318>I<38
7F8FF0139F138F380F0700EA078EEA039EEA01DC13F81200137013F07FEA01DCEA039E13
8EEA0707000E1380387F8FF000FF13F8007F13F015147F9318>120
D<387F8FF000FF13F8007F13F0380E01C0EB0380A21207EB0700A2EA0387A2138EEA01CE
A213CC120013DC1378A31370A313F05B1279EA7BC0EA7F806CC7FC121E151E7F9318>I<
383FFFF05AA2387001E0EB03C0EB078038000F00131E137C5B485A485AEA0780380F0070
121E5A5AB512F0A314147F9318>I<EB07E0133F137FEBFC0013E0AB1201EA7FC0485AA2
6C7EEA01E01200AB13FCEB7FE0133F130713247E9F18>I<126012F0B3B012600424769F
18>I<127CB47E7FEA07E01200AB7FEB7FC0EB3FE0A2EB7FC0EBF0005BAB1207B45A5B00
7CC7FC13247E9F18>I<EA0E0CEA1F1EEA3FBEEAFBF8EAF1F0EA60E00F067C9B18>I
E /Fg 4 16 df<12FEEAFFE0EA01FCEA001FEB03C0EB00F01438141E14076E7E6E7E6E7E
1570811518151C150C150E150615078116801501A216C01500A316E01660A62323A18142
>12 D<1660A616E016C0A415011680150316005D1506150E150C151C151815385D5D4A5A
4A5A4AC7FC141E143814F0EB03C0011FC8FCEA01FCEAFFE048C9FC2323A1A242>I<12C0
A67E1260A41270123012381218121C120C120E120612077E7F6C7E6C7E13707F7F130FEB
0380EB01E0EB0078141FEC07F0913800FFE0150F232380A242>I<ED0FE015FF913807F0
00021FC7FC1478EB01E0EB0380010FC8FC131C5B5B5B485A485A90C9FC5A1206120E120C
121C1218123812301270A21260A312E05AA62323808142>I E /Fh
4 64 df<1302131E137EEA01FE120F12FFA2120F1201EA007E131E13020F0C7E852A>27
D<7E12F012FCB4FC13E013FEA213E0130012FC12F012800F0C67852A>45
D<1206A4120FA3EA1F80A2EA3FC0A2EA7FE0A3EAFFF00C0F86A72A>54
D<EAFFF0EA7FE0A3EA3FC0A2EA1F80A2EA0F00A31206A40C0F86902A>63
D E /Fi 24 121 df<12FEA707077C860F>46 D<137013F81203127F12FFA312431203B3
A6387FFFC0B5FCA27E12247CA31B>49 D<EA01FCEA07FF001F13804813C04813E0EA7E0F
38FC07F012F8387803F81238123012101200A3EB07F0A2EB0FE014C0131F1480EB3F0013
7E5B5B485A485A485A485AA248C7FC383FFFF04813F8A36C13F015247EA31B>I<EA01FC
3807FF804813C04813E0EA3F0F387C07F01238123012101200A214E0130F14C0131F3801
FF80140014C014E0380007F0EB03F8130114FCA612401260387803F8EAFE07B512F06C13
E06C13C0000F13803801FE0016257EA31B>I<EB1FC0EB3FE0A2137FA213F7A2120113E7
1203A2EA07C7A2120F1387121F1307123F123E127E127C12FCB512FE14FFA36C13FE3800
07E0A7EB03C018237FA21B>I<EB0FF0497E497EA3497E137E147EEBFE7FA213FC0001EB
3F80A33903F81FC0A3D807F013E0140FA2D80FE013F01407A248B512F8A34814FCEB8001
A2D87F0013FE1400A200FE14FF157F007C143E20237EA225>65 D<387FFFF0B512FC14FF
158039FE007FC0141FEC0FE0A21407A2140FA2EC1FC0143FECFF80B6120014FC14FF15C0
39FE003FE0EC0FF01407EC03F8A6EC07F0140F143FB612E015C015006C13F81D237CA225
>I<EB0FF8EB7FFF48B512C0000714F0390FF80FF8391FE003FCEBC00148486C7EA248C7
127FA3007E8000FE1580AC007FEC7F00A36C6C13FEA26C6C485AEBE003390FF80FF86CB5
5A000114C06C5CD90FF8C7FC21257DA328>79 D<48B4FC000F13C04813E014F0381E07F8
EA180312101200A2137FEA07FFEA1FE3EA3F83EA7F0312FEA31307EA7F0F13FB123FEA1F
E33807C1F015177F961A>97 D<EA01FE3807FFC0001F13E05A1383387F00C0007E134000
FE1300A9007F13101470383F81F013FF7E000713C03801FE0014177E9618>99
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>I<EA
7C1CEAFE3C137C13FC12FF13E013801300A25AAD127C0E177D9613>114
D<EA07F848B4FC003F1380A2EA7C0FEB03007F007EC7FCEA7FE0EA3FFC7F6C7E6C138000
0313C0EA003FEA400712601270EAFC0FB512801400EA3FFEEA07F812177F9615>I<EA0F
80487EA5EA7FFEB5FCA26C5AEA1FC0AD13C113E3380FFF80A23807FE00EA03F0111D7F9C
14>I<387C01F038FE03F8B01307A2130FEA7FFBEA3FF3380FC1F015177D961C>I<387C01
F8EA7E03007F13F0383F87E0EA1F8F380FCFC0EBFF806C13007E6C5A6C5AA2487E12037F
3807DF80380FCFC0381F87E0123FEB03F0387E01F800FE13FC387C00F816177F9619>
120 D E /Fj 1 66 df<13101338A3135CA3138EA3EA0107A238020380A33807FFC0EA04
01A2380800E0A2001813F0123838FE03FE17177F961A>65 D E /Fk
16 90 df<1306A3130FA3EB1780A2EB37C01323A2EB43E01341A2EB80F0A338010078A2
EBFFF83802003CA3487FA2000C131F80001E5BB4EBFFF01C1D7F9C1F>65
D<B512C0380F00788080140E140FA4140E141E5C14F8EBFFF0EB003C8080801580A5EC0F
00A2141E1478B512E0191C7F9B1D>I<90381F8080EBE0613801801938070007000E1303
5A14015A00781300A2127000F01400A8007014801278A212386CEB0100A26C13026C5B38
0180083800E030EB1FC0191E7E9C1E>I<B512FC380F003C140C1404A214061402A21301
1400A35B13FF13037FA3140113001402A31406A2140C143CB512FC181C7E9B1C>69
D<B512F8380F007814181408A2140C1404A213011400A35B13FF13037FA490C7FCA8EAFF
F8161C7E9B1B>I<90381F8080EBE0613801801938070007000E13035A14015A00781300
A2127000F01400A6ECFFF0EC0F80007013071278A212387EA27E6C130B380180113800E0
6090381F80001C1E7E9C21>I<39FFF0FFF0390F000F00AC90B5FCEB000FAD39FFF0FFF0
1C1C7F9B1F>I<EAFFF0EA0F00B3A8EAFFF00C1C7F9B0F>I<EAFFF8EA0F8090C7FCB01408
A31418A2141014301470EB01F0B5FC151C7E9B1A>76 D<B46CEBFF80000FECF800A2390B
C00178A33809E002A23808F004A3EB7808A3EB3C10A3EB1E20A3EB0F40A2EB0780A3EB03
00121C3AFF8307FF80211C7E9B26>I<B4EB1FF0390F8003809038C00100120BEA09E0EA
08F0A21378133C133E131E130F14811307EB03C1EB01E114F113001479147D143D141FA2
808080121CB46C7E1C1C7F9B1F>I<EB3F80EBE0E03803803848487E000E7F487F003C14
8000381303007814C0A20070130100F014E0A8007014C000781303A200381480003C1307
001C14006C130E6C5B6C6C5A3800E0E0EB3F801B1E7E9C20>I<B5FC380F01E0EB007880
141C141EA4141C143C5CEB01E001FFC7FCEB01E0EB0070147880A61510A2141CA239FFF0
0E20C7EA03C01C1D7E9B1F>82 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>I<EA03FFEA00781370
A413E0A4EA01C0A4EA0380A4EA0700A4120EA4121EEAFFC0101C7D9B10>I<3801FFC038
003C001338A45BA45BA4485AA438038002A31404EA0700140C14181438000E13F0B5FC17
1C7E9B1A>76 D<D801FEEB01FED8003E14E0012EEB03C01505A21509014EEB0B80151315
2313470187EB4700A21587EC0107D80107130E14021404A20002495AEB0388149014A000
045C14C0A2000C1380001CEB007839FF8307FF271C7E9B25>I<D801FCEBFF80D8001CEB
1C00012E13181510A2132701475B13431480A2903881C040A3EB80E0D801005B1470A300
020139C7FCA3141D48131E140EA2120C001C1304EAFF80211C7E9B1F>I<001FB512C038
1C070138300E0000201480126012405B1280A2000014005BA45BA45BA4485AA41203EA7F
FE1A1C799B1E>84 D E /Fm 39 128 df<121C123CA41204A21208A212101220A2124012
80060E7D840E>44 D<EA7FF0EAFFE0127F0C037D8A10>I<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>I<D801FEEC7FC0D8001EECFC005E0117EB0178A201
27EB02F01504A215080147EB09E015111521A20187495AEB83801583A23A010381078014
82A2148400024AC7FC14881490A2390401E01EA214C0000C1380001C143E3AFF8103FFC0
2A1F7D9E29>77 D<01FFEB3FE0011FEB0F001504EB1780A201275BEB23C0A3903841E010
A214F0134001805B1478A348486C5AA3141E00025CA2140FA24891C7FC80A2120C001C13
02EAFF80231F7D9E22>I<EB01FCEB070790381C01C090383000E001E013604848137048
5A0007143890C7FC120E121E121C123CA2481478A44814F0A215E0140115C01403007014
80EC070000785B0038131E5C6C13706C5B38078380D801FCC7FC1D217A9F23>I<48B512
8039001E00E015701538153C5BA4491378A215F015E09038F003C0EC0F00EBFFFC01F0C7
FC485AA4485AA4485AA4120FEAFFF01E1F7D9E1F>I<903807E04090381C18C090383005
80EB600313C000011301018013001203A391C7FC7FA213F86CB47E14E06C6C7E131FEB01
F8EB0078A21438A21220A2143000601370146014E000705B38E80380D8C606C7FCEA81F8
1A217D9F1A>83 D<EBF180380389C038070780EA0E03121C123C383807001278A3EAF00E
A31420EB1C40A2EA703C135C38308C80380F070013147C9317>97
D<EA0780123FEA0700A4120EA45AA213F0EA1D0CEA3A0E123CEA380FA21270A4EAE01EA3
131C133C1338EA607013E0EA31C0EA1F0010207B9F15>I<137EEA01C138030080EA0E07
121E001C1300EA3C0248C7FCA35AA5EA70011302EA3004EA1838EA07C011147C9315>I<
1478EB03F8EB0070A414E0A4EB01C0A213F1EA038938070780EA0E03121C123C38380700
1278A3EAF00EA31420EB1C40A2EA703C135C38308C80380F070015207C9F17>I<137CEA
01C2EA0701120E121C123CEA3802EA780CEA7BF0EA7C0012F0A4127013011302EA3804EA
1838EA07C010147C9315>I<1478EB019CEB033CA2EB07181400A2130EA5EBFFE0EB1C00
A45BA55BA55BA5485AA35B1231007BC7FC12F31266123C1629829F0E>I<EB1E30EB7138
EBE0F03801C070EA03801207EB00E05AA3381E01C0A4EB0380A2EA0E07130B38061700EA
01E7EA0007A2130EA21230EA781C485AEA6070EA3FC0151D7F9315>I<EA01E0120FEA01
C0A4485AA448C7FCA2131E1363380E8180380F01C0120EA2381C0380A438380700A3EB0E
1000701320A2131CEB0C4000E013803860070014207D9F17>I<13C0EA01E0A213C0C7FC
A7120E12131223EA4380EA4700A21287120EA35AA3EA38401380A21270EA31001232121C
0B1F7C9E0E>I<EB0180EB03C0A2148090C7FCA7133C13461387A2EA0107A2EA020E1200
A35BA45BA45BA45BA21230EA79C0EAF1800063C7FC123C1228829E0E>I<EA01E0120FEA
01C0A4485AA448C7FCA2EB03C0EB0420380E08E013111321EB40C0381C8000001DC7FC12
1EEA1FC0EA38E01370A2EB384038707080A3EB310012E0EA601E13207D9F15>I<EA03C0
121FEA0380A4EA0700A4120EA45AA45AA45AA3127112E2A4126412380A207C9F0C>I<39
1C0F80F0392630C318394740640C903880680EEB0070A2008E495A120EA34848485AA3ED
70803A3803807100A215E115623970070064D83003133821147C9325>I<381C0F803826
30C0384740601380EB0070A2008E13E0120EA3381C01C0A3EB038400381388A2EB0708EB
031000701330383001C016147C931A>I<137CEA01C338030180000E13C0121E001C13E0
123C1278A338F003C0A3EB07801400EA700F130EEA3018EA1870EA07C013147C9317>I<
3801C1E0380262183804741C1378EB701EA2EA08E01200A33801C03CA314383803807814
7014E0EBC1C038072380EB1E0090C7FCA2120EA45AA2B47E171D809317>I<EA1C1EEA26
6138278380EA47871307EB0300008EC7FC120EA35AA45AA45A123011147C9313>114
D<13FCEA0302EA0601EA0C03130713061300EA0F8013F0EA07F8EA03FCEA003E130E1270
EAF00CA2EAE008EA4010EA2060EA1F8010147D9313>I<EA018013C0EA0380A4EA0700A2
EAFFF0EA0700120EA45AA45AA31320EA7040A21380A2EA3100121E0C1C7C9B0F>I<000E
13C0001313E0382301C0EA4381EA4701A238870380120EA3381C0700A31410EB0E201218
A2381C1E40EA0C263807C38014147C9318>I<380E0380EA1307002313C0EA4383EA4701
130000871380120EA3381C0100A31302A25BA25BEA0E30EA03C012147C9315>I<380383
80380CC440381068E013711220EB70C03840E0001200A3485AA314403863808012F3EB81
0012E5EA84C6EA787813147D9315>120 D<000E13C0001313E0382301C0EA4381EA4701
A238870380120EA3381C0700A4130E1218A2EA1C1EEA0C3CEA07DCEA001CA25B12F05BEA
E060485AEA4380003EC7FC131D7C9316>I<EA7070EAF8F013F8EAF0F0EA60E00D05749E
17>127 D E /Fn 24 122 df<EB3F80EBC1E038010070000213785AA2000F137C1380A2
EB00781206C712F814F0EB01E014C0EB0380EB0700130E5B5B13605B485A380300201206
000813405A383FFFC0481380B5FC161E7E9D17>50 D<137F380183C0380201E0EA040000
0713F05A1301A2000013E0A2EB03C0EB07801400131CEA01F8EA000E7F148014C0130313
071230127812F8A200F0138038800F00EA400E6C5AEA1078EA0FE0141F7D9D17>I<0007
B512FC3900F8007C0178131C150C5B1504A414043901E00800A31438EBFFF8EBE0383803
C010A4EC00081510485AA21520A2156015C0380F00011407B612801E1F7E9E1F>69
D<3A07FF83FFC03A00F8007C000178133CA2495BA648485BA490B5FCEBE0004848485AA6
4848485AA64848485A01807F39FFF07FF8221F7E9E22>72 D<3807FFFE3900F807809038
7801E0EC00F05B15F8A415F03801E00115E0EC03C0EC0780EC1E00EBFFF03803C0388014
1E140EA2140F48485AA51502D80F001304EB800F39FFF00788C7EA01F01F207E9E21>82
D<EA07F8EA0C0CEA1E061307121C1200A313FFEA07C7EA1E07EA3C0E127800F01310A313
1EEB2E2038784F40381F878014147D9317>97 D<13FEEA0383380E0780121C0038130090
C7FC12785AA45AA37E5BEA70026C5AEA1C18EA07E011147D9314>99
D<1438EB01F8EB00781438A21470A614E013FCEA0382EA0601121CEA3C00383801C01278
12F0A438E00380A412F0EA700738380F00381C37803807C7E015207D9F19>I<13F8EA07
0EEA0E07121C383803801278127012F0A2B5FC00F0C7FC5AA46C5AEA7002EA3004EA1C18
EA07E011147D9314>I<EB07C0EB1C60EB30F01360EBE0E0EBC0001201A5485AEA3FFCEA
0380A448C7FCA6120EA65A121EEAFFC014207F9F0E>I<140EEB3E11EBE1A33801C1C238
0381E0EA07801301120FA3380703C01480EB8700EA04FC48C7FCA21218121CEA0FFF14C0
14E0381800F04813305A5AA3006013606C13C0381C0700EA07FC181F809417>I<EA01C0
EA03E0A213C0EA0180C7FCA6EA0380121F12071203A2EA0700A6120EA65A121EEAFF800B
1F7F9E0C>105 D<13E0120712011200A2485AA6485AEB81FCEB80F014C0EB81801400EA
07045B13181338137C131C120E7FA2130F7F1480EA1C03381E07C038FF8FF016207E9F18
>107 D<13E0120712011200A2EA01C0A6EA0380A6EA0700A6120EA65A121EEAFF800B20
7F9F0C>I<390387C07C391F9861863907A072073903C03403EB80380007EB7807EB0070
A5000EEBE00EA64848485A001EEBE01E3AFFCFFCFFC022147E9326>I<38038F80381F90
E0EA07A03803C0601380000713E01300A5380E01C0A6381C0380001E13C038FF8FF01414
7E9319>I<13FCEA0387380E0180381C00C04813E0A24813F012F0A438E001E0A214C013
0300F0138038700700EA380E6C5AEA07E014147D9317>I<EBE3E03807EC383800F01C49
7E140F48487E1580A53903800F00A2140E141E141C5C38074070EB61C0011FC7FC90C8FC
A3120EA4121EEAFFC0191D809319>I<EA038E381FB380EA07C71203EB8300EA078090C7
FCA5120EA65A121EEAFFC011147E9312>114 D<EA01F9EA0607EA080312181301EA3802
EA3C00121F13F0EA07FCEA01FEEA001FEA40071303A212601306EAF004EAC818EA87E010
147F9312>I<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 D<EA7038EAF87CEAFC7EA2EA743AEA0402A3EA0804A2EA1008A2EA2010EA40200F
0E7F9F17>34 D<127012F812FCA212741204A31208A21210A212201240060E7C9F0D>39
D<13401380EA01005A12061204120C5AA212381230A212701260A412E0AC1260A4127012
30A212381218A27E120412067E7EEA008013400A2E7BA112>I<7E12407E12307E120812
0C7EA212077EA213801201A413C0AC1380A412031300A25A1206A25A120812185A12205A
5A0A2E7EA112>I<1303AFB612FCA2D80003C7FCAF1E207E9A23>43
D<127012F012F8A212781208A31210A31220A21240050E7C840D>I<EAFFF0A20C02808A
0F>I<127012F8A3127005057C840D>I<EA03F0EA0E1C487EEA1806EA380738700380A400
F013C0AD00701380A3EA780700381300EA1806EA1C0E6C5AEA03F0121F7E9D17>48
D<13801203120F12F31203B3A6EA07C0EAFFFE0F1E7C9D17>I<EA03F0EA0C1CEA100E48
7E00401380128000F013C0EAF803A3EA200712001480A2EB0F00130E5B5B5B13605B485A
48C7FC000613405A5A00101380EA3FFF5AB5FC121E7E9D17>I<EA03F0EA0C1CEA100EEA
200F007813801307A2EA380F12001400A2131E131C1370EA07F0EA003C130E130FEB0780
A214C0122012F8A300F013801240EB0F00EA200EEA183CEA07F0121F7E9D17>I<1306A2
130EA2131E132EA2134E138EA2EA010E1202A212041208A212101220A2124012C0B512F0
38000E00A7EBFFE0141E7F9D17>I<EA1803EA1FFE5B5B13E00010C7FCA6EA11F0EA161C
EA180EEA10071480EA0003A214C0A3127012F0A200E013801240EB0700EA20066C5AEA08
38EA07E0121F7E9D17>I<137CEA0182EA0701380E0380EA0C0712183838030090C7FC12
781270A2EAF1F0EAF21CEAF406EAF807EB0380A200F013C0A51270A214801238EB070012
18EA0C0E6C5AEA01F0121F7E9D17>I<1240387FFFE014C0A23840008038800100A21302
485AA25B5BA25BA21360A213E05B1201A41203A76C5A131F7E9D17>I<EA03F0EA0C0CEA
1006EA3003382001801260A3127038780300123EEA3F06EA1FC8EA0FF0EA03F8487EEA0C
7EEA103F38300F80EA6007EB01C012C01300A31480EA600100201300EA1002EA0C0CEA03
F0121F7E9D17>I<EA03F0EA0E18487E487E13071270EB038012F0A214C0A5EA7007A212
38EA180BEA0E13EA03E338000380A3EB07001230EA7806130EEA700CEA2018EA1070EA0F
C0121F7E9D17>I<127012F8A312701200AA127012F8A3127005147C930D>I<5B497EA349
7EA3EB09E0A3EB10F0A3EB2078A3497EA2EBC03EEB801EA248B5FCEB000FA20002EB0780
A348EB03C0A2120C001E14E039FF801FFE1F207F9F22>65 D<B512E0380F0078141EA280
1580A515005C141E147CEBFFF0EB007C141FEC0F80EC07C0140315E0A515C014071580EC
0F00143EB512F01B1F7E9E20>I<90380FE0109038381C309038E002703803C001390780
00F048C71270121E15305A1510127C127800F81400A91278007C1410123CA26C1420A27E
6C6C13406C6C13803900E00300EB380CEB0FF01C217E9F21>I<B512F83807801EEC0780
EC03C0EC01E0EC00F015701578A2153CA3153EA8153CA2157C1578A215F0EC01E0EC03C0
EC0780EC1E00B512F81F1F7F9E23>I<B61280380F000F14031401140015C01540A31440
1500A214C0130113FF130113001440A3EC0020A31540A315C01401EC0380140FB6FC1B1F
7E9E1F>I<B61280380780071401A2140015C01540A4EC2000A3146014E013FF13801460
1420A391C7FCA87FEAFFFE1A1F7F9E1E>I<90380FE0109038381C309038E002703803C0
0139078000F048C71270121E15305A1510127C127800F81400A7EC3FFEEC01F000781300
127C123CA27EA27E6C7E3903C001703900E002309038380C1090380FF0001F217E9F24>
I<39FFF07FF8390F000780AD90B5FCEB0007AF39FFF07FF81D1F7E9E22>I<EAFFF0EA0F
00B3ABEAFFF00C1F7E9E10>I<3807FFC038003E00131EB3A3122012F8A3EAF01CEA403C
EA6038EA1070EA0FC012207F9E17>I<EAFFF8EA0F8090C7FCB21402A414061404A2140C
141C147CB512FC171F7E9E1C>76 D<B46CEB07FE000715C0A2D805C0130BA2D804E01313
A301701323A26D1343A36D1383A290380E0103A3EB0702A3EB0384A2EB01C8A3EB00F0A2
1460121FD8FFE0EB7FFE271F7F9E2A>I<B4EB0FF8390F8003E0EC0080EA0BC0EA09E0A2
EA08F01378A27F7FA27FEB0780A2EB03C0EB01E0A2EB00F01478A2143C141EA2140F1407
A214031401123E38FF80001D1F7E9E22>I<EB1FE0EB70383801C00E48487E3907000380
4814C0001EEB01E048EB00F0A2007C14F8A20078147800F8147CA900781478007C14F8A2
003C14F0003E1301001E14E06CEB03C06C148039038007003801E01E38007038EB1FE01E
217E9F23>I<B512E0380F007C141E80EC0780A215C0A41580A2EC0F00141E147CEBFFE0
90C8FCAEEAFFF01A1F7E9E1F>I<B57E380F00F0143C8080A21580A41500A2141E5C14F0
EBFF80EB01C0EB0070A280143CA3143EA31504143F141FEC0F0839FFF00788C7EA01F01E
207E9E21>82 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>I<EA1FE0EA3030EA7818131CEA300E1200A3
13FEEA078EEA1E0E1238127800F01310A3131E127838386720380F83C014147E9317>97
D<121C12FC121CAA137CEA1D87381E0180EB00C0001C13E01470A21478A6147014F014E0
001E13C0381A018038198700EA107C15207E9F19>I<EA01FCEA0706EA1C0F1238130600
78C7FC127012F0A61270127800381380A2381C0100EA0706EA01F811147F9314>I<EB01
C0130F1301AAEA01F1EA070DEA0C03EA180112381278127012F0A61270A21238EA180312
0CEA070D3801F1F815207F9F19>I<EA03F0EA0E1C487E487EA21270EB038012F0A2B5FC
00F0C7FCA31270A26C1380A2381C0100EA0706EA01F811147F9314>I<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>I<EA01F8EA070E381C
0380383801C0A2387000E0A200F013F0A6007013E0A2383801C0A2381C038038070E00EA
01F814147F9317>I<EA1C7CEAFD87381E018014C0381C00E014F014701478A6147014F0
14E0381E01C0EB0380381D8700EA1C7C90C7FCA8B47E151D7E9319>I<3801F04038070C
C0EA0E02EA1C03EA38011278127012F0A6127012781238EA1C03EA0C05EA0709EA01F1EA
0001A8EB0FF8151D7F9318>I<EA1CF0EAFD18EA1E3CA21318EA1C00AEEAFFC00E147E93
12>I<EA0FC8EA3038EA6018EAC008A3EAE000127CEA3FE0EA1FF0EA07F8EA003CEA800E
130612C0A21304EAE00CEAD818EA87E00F147F9312>I<1202A31206A2120EA2123EEAFF
F8EA0E00AB1304A5EA07081203EA01F00E1C7F9B12>I<381C0380EAFC1FEA1C03AE1307
120CEA061B3803E3F014147E9319>I<38FF83F8383E00E0001C13C06C1380A338070100
A21383EA0382A2EA01C4A213E4EA00E8A21370A3132015147F9318>I<39FF9FE1FC393C
078070391C030060EC8020000E1440A214C0D80704138014E0A239038861001471A23801
D032143A143E3800E01CA2EB6018EB40081E147F9321>I<38FF87F8381E03C0380E0180
EB0300EA0702EA0384EA01C813D8EA00F01370137813F8139CEA010E1202EA0607380403
80000C13C0003C13E038FE07FC16147F9318>I<38FF83F8383E00E0001C13C06C1380A3
38070100A21383EA0382A2EA01C4A213E4EA00E8A21370A31320A25BA3EAF080A200F1C7
FC1262123C151D7F9318>I<EA7FFFEA700E1260EA401C133813781370EA00E0120113C0
EA038012071301120E121EEA1C03EA3802EA7006130EEAFFFE10147F9314>I<B512FC16
01808C17>I<B812F02C01808C2D>I<EA7038EAF87CA3EA70380E057C9E17>127
D E /Fp 38 122 df<EAFFF0A40C047F8C11>45 D<12FCA606067C850E>I<137013F012
03127F12FFA2127F1203B3A4387FFF8014C0A2148012217DA019>49
D<EA03F8EA0FFE487E481380387C1FC038780FE0EAF00714F01270EA6003122012001307
14E0A2EB0FC0A2EB1F80EB3F00133E5B5B485A485A485A485A48C7FC121E5A387FFFF0B5
FCA27E14217EA019>I<EA03FCEA0FFF481380383E1FC0EA3C0F007813E0EA30071210EA
000FA214C0A2EB1F80EB3F00EA03FE5B13FF38001F80EB0FC0EB07E014F0A6128000C013
E0EAF00FEAFC1F387FFFC06C1380000F1300EA03F814227EA019>I<EB1FC0A2133FA213
7F13F7A2EA01E7A2EA03C7A2EA0787A2EA0F07A2121E123E123C127C127812F8B512FCA4
380007C0A716207F9F19>I<383FFFC0A490C7FCA713FC13FF1480EB8FC0383E07E0123C
14F01200A612201260007013E0EAF80F387C1FC0EA7FFF6C1380380FFE00EA03F814217E
9F19>I<EA03FCEA0FFF481380383F0FC0EA3E07007E13E0A7003E13C0EA3F0F381FFF80
3807FE00487E383F0FC0387E07E0EA7C0300FC13F0A8387E07E0EA7F0F383FFFC06C1380
6C1300EA03FC14227EA019>56 D<387FFFC0B512F014FCA238FE01FE6D7E80A2805CA214
7E14FEEB03FCB55A5C14FC38FE01FEEB007F801580A6EC7F005CB55A5C5C6C13E019207C
9F21>66 D<EB1FF8EBFFFE0003EBFF805A380FF81F391FE0070048487E497E48C8FCA312
7E12FEAA127E127FA36C6C13406D13C0381FE001380FF80F6CB5FC6C1480C6EBFE00EB1F
F81A227DA020>I<EB1FF0EBFFFE0003EBFF805A380FF81F391FE0070048487E497E48C8
FCA312FEA6ECFFC0A4140FA2127FA3EA3F8013C0EA1FE0EA0FF86CB5FC7EC61400EB1FF8
1A227DA021>71 D<007EEB0FE012FEACB6FCA438FE000FAE127E1B207C9F24>I<127E12
FEB3AC127E07207C9F0F>I<007FEB03E0EAFF8013C0A213E0A2EAFBF0A2EAF9F8A2EAF8
FCA2137EA2133FA2EB1F83A2EB0FC3A2EB07E3A2EB03F3A2EB01FBA2EB00FFA2147FA214
3F0078131F1B207C9F24>78 D<EB3FE03801FFFC487F390FF07F80391FC01FC0EB800F00
3F14E0EB00074814F0A2007E130300FE14F8AC007E14F0007F1307A26C14E0EB800F001F
14C0EBC01F390FF07F806CB51200000113FC38003FE01D227DA024>I<387FFF80B512F0
14F814FC38FE01FE1300147FA814FE1301B512FC14F814E048C7FCAC127E18207C9F20>
I<387FFF80B512F0808038FE01FEEB007E147FA6147EEB01FEB55A14F014C0EAFE1F6D7E
A26D7EA26D7E130180130080147FA2EC3F80A2007E131F19207C9F20>82
D<007FB512F0B6FCA339001FC000B3A9130F1C207E9F21>84 D<EA03FE381FFF804813C0
EA3C0F383807E012201200A2133FEA07FFEA1FC7EA3F07127E12FCA3130FEA7E1FEA7FF7
EA3FE7EA0F8713157F9418>97 D<EA03FCEA0FFF481380EA3F07EA7E01007C130000FCC7
FCA9007E134014C0EA3F07EA1FFF6C13803803FC0012157E9416>99
D<EB03F0ABEA03E3EA0FFBEA1FFFEA3F07EA7E03A212FCA9127C127EEA3F0FEA1FFFEA0F
FBEA07E314207E9F1A>I<EA03FE380FFF804813C0383F87E0EA7E03EB01F012FCA3B5FC
A200FCC7FCA4007E13201460383F83E0EA1FFF6C13C03801FE0014157F9417>I<3803FC
3C380FFF7C4813FC383F0FC0EA3E07007E13E0A5003E13C0EA3F0F381FFF801400EA13FC
0030C7FC1238383FFF8014E06C13F014F8007F13FCEA780048133CA36C137C387E01F838
3FFFF06C13E000031300161F7F9419>103 D<127C12FCAA133FEBFF8000FD13C0EB8FE0
EAFE07A212FCAE127C13207D9F1A>I<127E12FEA61200A5123E127EB3123E07217FA00B>
I<127812F8AAEB07C0130FEB1F80EB3E005B5BEAF9F0EAFBE012FFA27F7F12FDEAF8FC13
7E137F7FEB1F8014C0130FEA780712207D9F18>107 D<127C12FCB3AC127C06207E9F0B>
I<397C3F01F839FCFF87FC00FDEBCFFE90388FEC7F39FE07F03FA200FC13E0AED87C0313
1F20157D9427>I<EA7C3F38FCFF8000FD13C0EB8FE0EAFE07A212FCAE127C13157D941A>
I<EA01FE380FFFC04813E0383F03F0387E01F8A2EA7C0000FC13FCA8387E01F8A2383F87
F0381FFFE06C13C03801FE0016157F9419>I<EA7C7E38FDFF80B512C0EAFE0F38FC07E0
A2EB03F0A9EB07E0A238FE1FC0B5128000FD1300EAFCFC90C7FCA8127C141E7D941A>I<
EA7C70EAFCF012FD12FFA21380EAFE00A25AAC127C0C157D9411>114
D<EA07FCEA1FFF5AEA3C0FEA78021300A2127F13F0EA3FF8EA1FFCEA0FFEEA03FFEA001F
EA400FA212F0EAFC1EEAFFFEEA3FFCEA0FF010157F9413>I<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>I<EBFF80000313F0000F7F4813FE5A387F81FFEA3E0000
1C148012180008137FC7FC14FFA21500A2495A495A1307EBFFF05C8014FCEB03FEEB00FF
1580147F15C0A7124012600070EBFF8012FCD8FF03130090B5FC6C5B6C5B6C5B000713E0
C613801A2C7DAA21>I<903801FFE0010F13FE017FEBFF8090B6FC5A00071500EC807F39
0FFE000FD81FF87F497F003F91C7FC5B485AA4485AAC6C7EA46C7E7F001F15806D1303D8
0FFE13073907FF803F91B512C012017E6D1400010F13FC010113E0222C7CAA2A>67
D<007FEC0FE0486CEB1FF0B090B6FCA6903880001FB26CC7EA0FE0242A7BA92F>72
D<127FEAFF80B3B3A4EA7F00092A7BA914>I<387FFFFCB612C08115F881EB800FEC03FE
140181A75DA21403EC0FFC90B55A5D15C04AC7FCEB81FF138081147F816E7EA26E7EA26E
7EA26E7E1403816E7EA26E1380A26CC7127F212A7BA92A>82 D<EBFFC0000713F0001F13
FC14FE1301381C00FF12181210C7FCA390B5FC1207EA1FF0EA3FC0485A5B5AA41381EA7F
8713FE6C5A6C5A3807E07E181B7E9A1F>97 D<EB7FE03803FFFC4813FF5A381FE03F383F
C00E387F8006140090C7FC5AA97EEB80011403383FC00F381FE03F6CB5FC7E6C13FC3800
7FE0181B7E9A1D>99 D<EC0FC0EC1FE0AE13FE3807FF9F4813DF4813FF383FF07FEBC01F
EA7F80A2EAFF00ABEA7F80A2383FC03FEBE07F6CB5FC6C13DF6C131F3900FC0FC01B2A7E
A922>I<EB7FE03803FFF8487F001F13FFEA3FE09038C03F80EA7F80EC1FC0EAFF00A390
B5FCA2158090C8FCA56C7E1540393FC001C0381FF01F6CB5FC7E0001140038007FF01A1B
7E9A1F>I<EB1FF813FF5A5A3807F838EBF008000F1300A9EA7FFFB51280A26C1300EA0F
F0B3A46C5A152A7FA914>I<9038FFC0780003EBF1FC000F13FF48EBFE1C393FC0FF0049
7E007F1480A7003F14006D5A6CB45A6C5B000B13F0001813C090C8FC121C121E381FFFFC
ECFF8015E06C14F04814F85A397E0007FC4813011400A36C1301007E14F8387FC00F6CB5
12F06C14E000071480C6EBFC001E287F9A21>I<127FEAFF80A7EA7F00C7FCA7123FEA7F
80B3A7EA3F00092B7EAA0F>105 D<127C12FEAE147F495A5BEB07FC495A495A495A495A
495AB5C7FC5BA27FA280806D7EEAFE3F6D7E6D7EA26D7E6D7E807F6D1380007C137F192A
7CA920>107 D<267E03FC13FF27FF0FFE031380496C4813C049018F13E0903A707FDC1F
F09039C03FF00F018013E0A2010013C0B2007E90391F8007E02C1B7C9A35>109
D<387E03F838FF0FFE497E5B01601380EBC07F1380A21300B2007EEB3F00191B7C9A22>
I<EB7FE03803FFFC487F001FEBFF80EBE07F393FC03FC0397F801FE0A2EB000F4814F0A9
6C14E0EB801FA2393FC03FC0EBE07F6CB512806C1400000313FC38007FE01C1B7E9A21>
I<387E0380EAFF0F131F133F137FA2EBF80013E05B5B90C7FCB0127E111B7D9A16>114
D<EA03FE381FFFC04813F05AEA7E0338FC00E0146014007EEAFFC013FC387FFF806C13C0
6C13E06C13F07E38007FF8EA400713011260127012F838FE03F0B5FC6C13E0001F138038
03FE00151B7E9A19>I<EA07E0487EA7387FFFC0B512E0A26C13C0380FF000B11420EBF8
E03807FFF0A26C13C03801FE0014237FA218>I<007E133FB4EB7F80B314FFA25B387F83
7FEA3FFEEA1FFC3907F83F00191B7C9A22>I<007C013EEB0F8000FE013FEB1FC0007F49
EB3F801580A2EB80FF003F9138C07F00A214EFD81FC1147E9138E7E0FEA213C33A0FE3C7
F1FCA214C313F70007903883FBF8A2EBFF816CECFFF01401A2806C485CA26C486D5A2A1B
7F9A2D>119 D<007FEB1F80EC3FC09038807F80393FC0FF006C6C5AEA0FF13807F3FC6C
B45A5C6C5B7E6D5A6D5AA2497E497E5A803803FBF83807F1FC380FE0FE121FEBC07F393F
803F80007F14C039FF001FE0007EEB0FC01B1B7F9A1E>I<00FCEB0F806CEB1FC0EC3F80
7E7E9038807F00123F13C0001F13FEA2EA0FE0EBE1FC13F112075CEA03FB5C1201A26CB4
5AA36D5AA2133F5C131FA249C7FCA3137EA2EAC0FC12FF5B5B5B13801A277E9A1E>I
E /Fr 14 116 df<1238127C12FEA3127C1238070774861F>46 D<EB1FC0EB7FF048487E
3803F0FC3807C03C48487EEA1F00381E03EF383E0FFFEA3C1F397C3E3F8038783C1FEB78
0F12F8EAF0F8EBF007A7EBF80FD8F87813001278EB3C1E387C3E3E383C1FFC383E0FF838
1E03E0001FC8FC390F8007803807C00F3803F07F3901FFFE006C6C5AEB1FE019257DA41F
>64 D<EB7FE03801FFF8000713FC380FC07CEA1F00003E1338003C13005AA212F85AA67E
1278A26C133C123E6C137C380FC1F83807FFF0000113E038007F80161A7C991F>99
D<EB01FE13031301EB001EA8137E3803FF9E4813DE380FC3FEEA1F00003E137E003C133E
5A141E12F85AA67E0078133EA2007C137E7E6C13FEEA0F833907FFDFE06CEB9FF03900FE
1FE01C257EA41F>I<137F3803FFC04813E0380FC1F0381F00F8003E137C003C133C5A14
1E12F85AB512FEA300F0C7FCA27E1278127C003C131E123E6C133E380FE0FC3807FFF800
0113F038007FC0171A7D991F>I<9038FE0FC03903FFBFE04813FF380F83F9391F01F1C0
391E00F000003E7F003C1378A4003E13F8001E5BEA1F01380F83E048B45A5CD83CFEC7FC
90C8FCA37E381FFFE06C13FC80487F393E003F800078130F00F8EB07C0481303A46C1307
007CEB0F806CEB1F00381FC0FE6CB45A6C5BC613C01B287E991F>103
D<137013F8A3137090C7FCA7EA7FF812FF127FEA0078B3A2B512F8A315267BA51F>105
D<EA7F8012FF127F1207A8903887FFC015E015C09038807E005CEB81F8EB83F0EB87E0EB
8FC0EB9F8001BFC7FC13FF808013F3EBE3E0EBC1F0EB80F8A2147C80A280397FF87FE039
FFFCFFF0397FF87FE01C257FA41F>107 D<EAFFF8A3EA0078B3ADB512FCA316257CA41F>
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
D<EB0FC0EB3FF0EBF018EA01C03803803C3807007C5A000E1338001E13005AA35AA3EAF8
3FEBC1C038F900E000FA1370143800FC133C141EA25A141FA41278A46C131EA2001C133C
121E000E13786C13703803C1E03801FFC038007E0018297EA71D>54
D<137E3801FF80380781C0380F00E0001E1370481338A248133CA200F8131EA4141FA412
78143FA27E001C135F7E6C139F3803831FEA00FCEB001EA3143E143CA21438001C137800
3E137014E0383C01C038180380381C0F00EA0FFEEA03F818297EA71D>57
D<3801FFFEA2380007E01303B3AA1230127812FCA214C0EAF8070040138038200F00EA30
0EEA0C3CEA03F0172A7DA81E>74 D<B538800FFEA23A07F00003F06C48EB01C016001502
5D5D5D5D5D5D4AC7FC14025C5C1418143C147E14BEEBE11F01E27FEBE40F9038E807C001
F07FEBE0036E7E811400157C157E153E81A2ED0F8016C0150716E0486C14F8B538803FFF
A228297EA82E>I<D8FFE0EB3FFE7FD803F8EB03E00002EC01C0017CEB0080137E133E7F
A26D7E8013076D7E8013016D7E80147C80143F80EC0F8015C01407EC03E015F01401EC00
F8A2157C157E153E151FA2150F1507A200071403486C1301EAFFF8150027297EA82C>78
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 D<EA700EEAF81FEAFC3FA2EAF81FEA700E10067AA81D>127
D E /Ft 5 90 df<B612C0380F80070007130114001540A215601520A314201500A31460
14E013FF138014601420A315081400A21510A31530A2157015E0000F1303B6FC1D227EA1
21>69 D<903807F00890383C0C18EBE0023901C001B839038000F848C71278481438121E
15185AA2007C14081278A200F81400A7EC1FFF0078EB00F81578127C123CA27EA27E7E6C
6C13B86C7E3900E0031890383C0C08903807F00020247DA226>71
D<39FF8007FF3907C000F81570D805E01320EA04F0A21378137C133C7F131F7FEB0780A2
EB03C0EB01E0A2EB00F014F81478143C143E141E140FA2EC07A0EC03E0A21401A2140000
0E1460121FD8FFE0132020227EA125>78 D<3803F020380C0C60EA1802383001E0EA7000
0060136012E0A21420A36C1300A21278127FEA3FF0EA1FFE6C7E0003138038003FC0EB07
E01301EB00F0A214707EA46C1360A26C13C07E38C8018038C60700EA81FC14247DA21B>
83 D<D8FFF0EB7FC0D81F80EB1F00000F140C000714087F00035C6C6C5B7F00005C6D13
C0017C5BD93C01C7FC133EEB1E02EB1F06EB0F84EB078814D8EB03D014E01301AC1303EB
3FFE22227FA125>89 D E /Fu 15 122 df<4AB41480021FEBE00191387F0078D901F8EB
0E03D903E0EB0707D90FC0EB018749C812CF013E156F49153F5B4848151F0003160F485A
491507120FA248481503A2123F90C91201A25AA2007E93C7FCA212FEAB007E92387FFFFE
A2007F9238007FC0EF1F807EA27F121FA26C7EA26C7EA26C7E12016C7E017C153F7F6D15
7FD90FC014E7D903E0EB01C7D901FCEB0783903A007F803E0191391FFFF8000201018013
00373D7CBB3F>71 D<EB3F803801C0F03803003C00047F000C7F486D7E001C80003E1303
003F80A3121EC7FCA3143FEB0FF3EB7E03EA01F8EA03E0EA0FC0EA1F80EA3F00123E127E
16605AA31407A2007C130B127E003E903811F0C06C13603A07C1807F803A00FE003E0023
257CA427>97 D<ED0F80EC03FFA2EC001F150FB3EB03F8EB1E07903870018F9038E0004F
D803C0132F4848131F120F90C7120F5A123EA2127E127CA212FCA9127CA2127E123EA212
1E121F6C141F6C6C133F6C6C136F6C6C13CF3A0070018FC090393C0E0FFEEB07F0273C7D
BB2C>100 D<EB07F8EB3C1E9038F007803901C003C00003EB01E039078000F048C712F8
481478001E147C123EA2007E143E127CA212FCA2B612FE00FCC8FCA6127CA2127E123E15
067E6C140C7F000714186C6C1330C66C1360017013C090381E0700EB03FC1F257EA423>
I<ED07C090390FE018609039383820709039F01E40F03901E00F802603C00713600007EC
C00048486C7EA3001F80A6000F5CA36C6C485A00035C6C6C48C7FC3802F01EEB38383806
0FE00004C9FCA2120CA2120EA27E7F6CB5FC15F06C14FC6C8039078000FF000EC7EA1F80
48EC07C048140312780070EC01E012F0A50078EC03C000381580003C14076CEC0F000007
141CD803C0137839007803C0D90FFEC7FC24387EA527>103 D<EA03E012FFA212071203
B3EC1FE0EC607CEC801E9038E3000F01E41480A201E8130716C013F0A25BB3A6486CEB0F
E0B50081B5FCA2283C7EBB2C>I<1207EA0F80EA1FC0A3EA0F80EA0700C7FCADEA07C012
FFA2120F1207B3ACEA0FE0EAFFFEA20F397DB815>I<2703E01FE0EB3FC000FFD9607CEB
C0F8913A801E01003C2807E3000F067FD803E40288131FA201E8D907907F04D0148001F0
14E0A2495CB3A6486C496CEB1FC0B50081B53803FFFEA23F257EA443>109
D<3903E01FE000FFEB607CEC801E3907E3000FD803E41480A201E8130716C013F0A25BB3
A6486CEB0FE0B50081B5FCA228257EA42C>I<3803E03E00FF13C39038E107803907E20F
C0EA03E413E8EC0780EC030001F0C7FCA35BB3A5487EB512C0A21A257EA41E>114
D<EBFF02380700C6000C132E0010131E123048130EA200E01306A37E7E6C90C7FC127FEA
3FF0EBFF80000F13E06C7F000113FC38003FFE1301EB003F00C07FEC0F8014076C1303A4
6C1400A26C5B140600E45B00E25B38C1807038807F8019257DA41F>I<1330A61370A413
F0A21201A212031207381FFFFEB5FCD801F0C7FCB3EC0180A9000014006D5AA2EB78026D
5AEB0E08EB03F019357FB41E>I<3CFFFE0FFFC03FFEA23C0FF000FE0007F06C48017CEB
03E0000317C0033CEB0180153E6C6CED0300A2153F6C6C1506156F1680017C5D15C716C0
D93E015C158316E0D91F035C150116F0D90F875CEC860016F8D907CE5C02CC1378167CD9
03FCEB7D804A133D163F010192C7FC4A7FA20100141E4A130EA237257FA439>119
D<D8FFFEEB3FFEA2D807FCEB1FF06C48EB0F80000192C7FC0000140E017C5B017E13186D
5B6D5B90380F80E0ECC1C0903807E180D903E3C8FC14F7EB01FE6D5A147C147E147FA2EC
CF8001017F90380387E0EB070390380601F0010C7F90381C00FC49137C01307F49133F01
E06D7E0001140F000781D81FF0EB1FF0B46C90387FFF80A229257FA42A>I<D8FFFEEB0F
FFA2D807F0EB07F86C48EB03E0ED01C06C7E16807F0000EC0300A2017C1306A2137E013E
5BA2013F131C6D1318A26D6C5AA2ECC07001071360A26D6C5AA214F101015BA2D900FBC7
FCA214FF147EA2143CA31418A25CA35CA214E05C1218383C0180127E49C8FCA2EA7C06EA
300CEA1C38EA07E028367FA42A>I 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(<def>)24 b([name])f('{')g(+)h(',')f({name)
g(['=')h(expr]})f('}')378 594 y(|)g(<dekl>)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