summaryrefslogtreecommitdiff
path: root/doc/history.ps
blob: 1866d925a5b25076b355e951d1cab670baa32d1a (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
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
%!PS (but not EPSF; comments have been disabled)
%DVIPSCommandLine: dvips -D 300 -o history.ps history.dvi
%DVIPSParameters: dpi=300, compressed, comments removed
%DVIPSSource:  TeX output 1997.06.03:1139
/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
TeXDict begin 40258431 52099146 1000 300 300 (history.dvi)
@start /Fa 1 47 df<127012F8A212F012E005057B840E>46 D
E /Fb 1 47 df<1238127C12FCA212F8127006067A8512>46 D E
/Fc 25 123 df<EA1FC0EA7FF0EA7078EA2018EA001CA2EA07FC121FEA3C1C127012E0A3
EA707C383FFF80EA0F8F11107E8F14>97 D<12FCA2121CA513F8EA1DFEEA1F07EA1E0300
1C1380EB01C0A6EB0380001E1300EA1F0EEA1DFCEA0CF81217809614>I<EA03F8EA0FFE
EA1C0EEA3804EA7000126012E0A412601270EA380EEA1C1EEA0FFCEA03F00F107E8F14>
I<137EA2130EA5EA07CEEA0FFEEA1C3EEA301EEA700E12E0A61270EA301EEA383E381FEF
C0EA07CF12177F9614>I<EA07E0EA0FF0EA1C38EA301CEA700CEAE00EA2EAFFFEA2EAE0
0012601270EA380EEA1C1EEA0FFCEA03F00F107E8F14>I<13FCEA01FEEA038EEA070413
00A3EA7FFE12FFEA0700ACEAFFF8A20F177F9614>I<EA07CF381FFF80EA383B38301800
EA701CA3EA3018EA3838EA3FF0EA37C00070C7FCA2EA3FF86C7E487EEA700F38E00380A4
38700700EA3C1EEA1FFCEA07F011197F8F14>I<12FCA2121CA51378EA1DFEEA1F86EA1E
07121CAA38FF8FE0A21317809614>I<1206120FA21206C7FCA4B4FCA21207ACEAFFF8A2
0D187C9714>I<12FCA2121CA5EBFF80A2EB1C005B5B5BEA1DC0EA1FE0A2EA1E70EA1C38
133C131C7F38FF1F80A21117809614>107 D<EAFF80A21203B3EAFFFEA20F177E9614>I<
EAFB8EEAFFDF383CF380A2EA38E3AA38FEFBE013791310808F14>I<EAFC78EAFDFEEA1F
86EA1E07121CAA38FF8FE0A21310808F14>I<EA07C0EA1FF0EA3C78EA701CA2EAE00EA6
EA701CEA783CEA3C78EA1FF0EA07C00F107E8F14>I<EAFCF8EAFDFEEA1F07EA1E03001C
1380EB01C0A6EB0380001E1300EA1F0EEA1DFCEA1CF890C7FCA6B47EA21218808F14>I<
EA03E7EA0FF7EA1C1FEA300F1270487EA6EA700F1230EA1C3FEA0FF7EA07C7EA0007A6EB
3FE0A213187F8F14>I<EAFE1FEB7F80EA0EE3380F810090C7FCA2120EA8EAFFF0A21110
7F8F14>I<EA0FD8EA3FF8EA603812C0A2EAF000EA7F80EA3FF0EA07F8EA001CEA600612
E012F0EAF81CEAFFF8EACFE00F107E8F14>I<1206120EA4EA7FFC12FFEA0E00A8130EA3
131CEA07F8EA01F00F157F9414>I<EAFC3FA2EA1C07AB131F380FFFE0EA03E71310808F
14>I<38FE3F80A2383C1E00EA1C1CA36C5AA3EA0630EA0770A36C5AA311107F8F14>I<38
FE3F80A238700700EA380EA3EA39CEA3EA1B6C121AA3EA1E7CA2EA0E3811107F8F14>I<
EA7E3FA2EA1E3CEA0E78EA07705B12036C5A12037FEA0770EA0E781338487E38FE3F80A2
11107F8F14>I<38FE3F80A2381C0E005BA2120E5BA212071330A2EA0370A25B1201A25B
A3485A12730077C7FC127E123C11187F8F14>I<EA3FFF5AEA700E131C1338EA007013E0
EA01C0EA0380EA0700120EEA1C0712381270B5FCA210107F8F14>I
E /Fd 1 47 df<1270A212F0126004047D830B>46 D E /Fe 25
122 df<EA07E0EA1C38EA381CEA300CEA700EEA6006A2EAE007AAEA6006A2EA700EEA30
0CEA381CEA1C38EA07E010187F9713>48 D<12035AB4FC1207B3A2EA7FF80D187D9713>
I<EA0F80EA1060EA2030EA4038EA803CEAC01C12E01240EA003C1338A21370136013C0EA
018013001202EA040412081210EA3008EA3FF8127F12FF0E187E9713>I<EA01F8EA0704
EA0C06EA180E123013001270126012E0EAE3E0EAE418EAE80CEAF00EEAE0061307A31260
A2EA7006EA300EEA180CEA0C38EA07E010187F9713>54 D<1240EA7FFF13FEA2EA4004EA
80081310A2EA00201340A21380120113005AA25A1206A2120EA5120410197E9813>I<EA
07E0EA1818EA300CEA20061260A21270EA780CEA3E18EA1F30EA07C0EA03E0EA0CF8EA30
7CEA601E130FEAC0071303A3EA6002EA2004EA1818EA07E010187F9713>I<EA07E0EA1C
30EA3018EA700CEA600EEAE006A21307A31260EA700FEA3017EA1827EA07C7EA00071306
130E130C12701318EA6030EA3060EA0F8010187F9713>I<39FFE1FFC0390E001C00AB38
0FFFFC380E001CAC39FFE1FFC01A1A7F991D>72 D<EA0FC2EA1836EA200EEA600612C013
02A3EAE0001270127EEA3FE0EA1FF8EA03FCEA007E130E130713031280A3EAC0021306EA
E004EAD818EA87E0101A7E9915>83 D<EA1FC0EA38707FEA101C1200A2EA03FCEA1E1C12
38127012E01480A2133CEA705F381F8F0011107F8F13>97 D<EA07F8EA1C1C1238EA7008
13005AA612701304EA3808EA1C18EA07E00E107F8F11>99 D<133F1307A9EA03E7EA0C17
EA180F487E127012E0A6126012706C5AEA1C373807C7E0131A7F9915>I<EA07C0EA1C30
EA30181270EA600C12E0EAFFFCEAE000A41260EA7004EA3808EA1C18EA07E00E107F8F11
>I<EA0FCF3818718038303000EA7038A4EA30306C5AEA2FC00060C7FCA21270EA3FF013
FC6C7EEA600FEAC003A4EA6006EA381CEA07E011187F8F13>103
D<12FC121CA9137CEA1D87381E0380A2121CAB38FF9FF0141A809915>I<1218123CA212
181200A612FC121CAE12FF081A80990A>I<EAFC7CEA1D87381E0380A2121CAB38FF9FF0
1410808F15>110 D<EA07E0EA1C38EA300CEA700EEA6006EAE007A6EA6006EA700EEA38
1CEA1C38EA07E010107F8F13>I<EAFCFCEA1D07381E0380381C01C0A2EB00E0A6EB01C0
1480381E0300EA1D06EA1CF890C7FCA6B47E1317808F15>I<EAFC78EA1D9CEA1E1C1308
EA1C00ABEAFF800E10808F0F>114 D<EA1F20EA60E0EA402012C0A2EAF000127FEA3FC0
EA1FE0EA00F0EA8070133012C01320EAF040EA8F800C107F8F0F>I<1208A41218A21238
EAFFC0EA3800A81320A41218EA1C40EA07800B177F960F>I<38FF0F80383C0700EA1C06
1304A26C5AA26C5AA3EA03A0A2EA01C0A36C5A11107F8F14>118
D<38FE3F80383C1E00EA1C086C5AEA0F306C5A6C5A12017F1203EA0270487E1208EA181C
EA381E38FC3FC012107F8F14>120 D<38FF0F80383C0700EA1C061304A26C5AA26C5AA3
EA03A0A2EA01C0A36C5AA248C7FCA212E112E212E4127811177F8F14>I
E /Ff 2 42 df<13E0EA01C0EA0380120713005A121EA2121C123CA212381278A3127012
F0AE12701278A31238123CA2121C121EA27E7E13801203EA01C0EA00E00B2E7CA112>40
D<12E012707E123C121C121E7EA27E1380A2120313C0A3120113E0AE13C01203A3138012
07A213005AA2121E121C123C12385A5A0B2E7EA112>I E /Fg 27
123 df<EB07F8EB7FFC3801FC0E3803F01F48485AEA0FC0A3141E140C91C7FCA2ECFF80
B6FCA2380FC01FB2397FF8FFF0A21C237FA220>12 D<90380FFF80137F3801FC1F3803F0
3FEA07E0EA0FC0141FA7B6FCA2380FC01FB2397FF8FFF0A21C237FA220>I<EA07FE381F
FF80383F07E06D7E130180121E1200A2133FEA03FDEA1F81EA3E01127C12F8A4EA7C02EA
7E0C391FF87F803807E03F19167E951C>97 D<B47EA2121FABEB87F0EBBFFCEBF03EEBC0
1F9038800F8015C0140715E0A715C0A2140F15809038C01F00381E707E381C3FFC38180F
E01B237EA220>I<EBFF80000713E0380F83F0EA1F03123E127E387C01E090C7FC12FCA6
127C127EA2003E13186C1330380FC0603807FFC0C6130015167E9519>I<49B4FCA2EB00
3FAB13FE3807FFBF380FC1FF48C67E003E7F127E127CA212FCA7127C127E123E6C5B380F
81FF3907FF3FE0EA01FC1B237EA220>I<13FE3807FF80380F83C0381E01E0383E00F012
7E007C13F8147812FCB512F8A200FCC7FCA3127CA26C1318A26C1330380F80E03803FFC0
C6130015167E951A>I<EB1F80EBFFE03801F1F0EA03E31207EA0FC3EBC1E0EBC000A6EA
FFFEA2EA0FC0B2EA7FFCA214237EA212>I<9038FE0F803903FF9FC0380F83E3381F01F3
391E00F000003E7FA5001E5BEA1F01380F83E0380BFF80D808FEC7FC0018C8FCA2121C38
1FFFE014FC6C13FF7E001F1480397C001FC00078130F00F81307A3007CEB0F806CEB1F00
381F807E6CB45A000113E01A217F951D>I<B47EA2121FABEB83F0EB8FFCEB987EEBA03E
EBC03FA21380AE39FFF1FFE0A21B237DA220>I<121E123FEA7F80A4EA3F00121EC7FCA6
EAFF80A2121FB2EAFFF0A20C247EA30F>I<B47EA2121FABECFF80A2EC3C00143014E0EB
81C00183C7FC1386139E13BE13FFEBDF80EB8FC01307806D7E6D7E130080147E39FFE1FF
C0A21A237EA21E>107 D<EAFF80A2121FB3ADEAFFF0A20C237EA20F>I<3AFF03F803F890
390FFE0FFE3A1F183F183F9039201F201F014001C01380A201801380AE3BFFF0FFF0FFF0
A22C167D9531>I<38FF03F0EB0FFC381F187EEB203EEB403FA21380AE39FFF1FFE0A21B
167D9520>I<13FF000713E0380F81F0381F00F8003E137C48133EA300FC133FA7007C13
3E007E137E003E137C6C13F8380F81F03807FFE0C6130018167E951D>I<38FF87F0EBBF
FC381FF07EEBC01F9038800F8015C0A2EC07E0A715C0140FA2EC1F8001C01300EBF07EEB
BFFCEB8FE00180C7FCA8EAFFF0A21B207E9520>I<EBFE033807FF07380FC1CF381F00DF
48137F007E7FA2127C12FCA7127EA2003E5B6C5BEA0FC13807FF3FEA00FC1300A8903801
FFE0A21B207E951E>I<38FF0F80EB1FE0381F33F013631343A2EBC1E0EB8000ADEAFFF8
A214167E9518>I<3807F980EA1FFFEA3807EA7003EAF001A26CC7FCB4FC13F8EA7FFE6C
7E6C1380120738003FC0EAC007130312E0A200F0138038FC0F00EAEFFEEAC3F812167E95
17>I<487EA41203A21207A2120F123FB5FCA2EA1F80ABEB8180A5380F830013C3EA07FE
EA01F811207F9F16>I<38FF81FFA2381F803FAF5C5C380FC1BF3907FF3FE0EA01FC1B16
7D9520>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035BA26C6C5A
A26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA21B167F951E>I<3AFFF3FF83FC
A23A1F807C00E0D80FC014C08001E013010007017F1380A2D803F0EB0300ECCF8301F813
87D801F913C61487D800FD13ECEBFF0315FC017F5BEB7E01013E5BEB3C00A20118136026
167F9529>I<39FFF07FC0A2390FC01C006C6C5A6D5A00035B6C6C5A3800FD80137F91C7
FC7F6D7E497EEB37E0EB67F013C33801C1F8380380FC48487E000E137F39FF81FFE0A21B
167F951E>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035BA26C6C
5AA26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA2130CA25B1278EAFC3813305B
EA69C0EA7F80001FC8FC1B207F951E>I<387FFFF0A2387C07E038700FC0EA601F00E013
8038C03F005B137EC65A1201485AEBF030EA07E0120FEBC070EA1F80003F1360EB00E0EA
7E03B5FCA214167E9519>I E /Fh 24 119 df<13E0A538F0E1E0EAFCE7387EEFC0381F
FF00EA07FCEA01F0EA07FCEA1FFF387EEFC038FCE7E0EAF0E13800E000A513157D991A>
42 D<1338137CA2136C13EEA313C6A2EA01C7A438038380A4380701C0A213FFA24813E0
EA0E00A4481370387F01FC38FF83FE387F01FC171E7F9D1A>65 D<B512F8A3381C0038A5
1400A2130EA3EA1FFEA3EA1C0EA390C7FCA3141CA5B512FCA3161E7E9D1A>69
D<387FFFFCB5FC7E380E001CA51400A2EB0380A3EA0FFFA3EA0E03A390C7FCA8EA7FE012
FF127F161E7F9D1A>I<38FF83FEA3381C0070AA381FFFF0A3381C0070AB38FF83FEA317
1E7F9D1A>72 D<B51280A33801C000B3A6B51280A3111E7C9D1A>I<38FE03FE12FFA238
1D8070A213C0121CA213E0A213601370A213301338A21318131CA2130C130EA21306A213
071303A238FF81F0A21380171E7F9D1A>78 D<EA0FFE383FFF804813C0EA7C07EA700100
F013E0EAE000B1EAF001A2007013C0EA7C07EA7FFF6C1380380FFE00131E7D9D1A>I<EA
FFFC13FF1480381C07C0EB01E0EB00F01470A414F0EB01E0EB07C0381FFF801400148038
1C07C01301EB00E0A514E214E7A338FF807EA21438181E7F9D1A>82
D<3803F1C0EA0FFDEA3FFFEA7C0FEA700312E01301A390C7FC12701278123FEA1FF0EA07
FE3800FF80EB0FC0EB01E013001470A2126012E0A214E0EAF00138FC03C0B5128000EF13
00EAE3FC141E7D9D1A>I<387FFFFEB5FCA238E0380EA500001300B33803FF80A3171E7F
9D1A>I<38FF01FEA3381C00706C13E0A2380701C0A213830003138013C700011300A2EA
00EEA2137CA21338AA48B4FCA3171E7F9D1A>89 D<387FFFC0B512E0A26C13C013047D7E
1A>95 D<EA1FF0EA3FFC487EEA780FEA300738000380A2137FEA07FF121FEA3F83EA7803
127012E0A3EA7007EA780F383FFFFCEA1FFDEA07F016157D941A>97
D<EBFF80000313C0000F13E0EA1F01383C00C04813001270A25AA51270A2007813707E38
1F01F0380FFFE0000313C03800FE0014157D941A>99 D<EB1FC0A31301A6EA01F1EA07FD
EA0FFFEA1E0FEA3C07EA7803EA700112E0A7EA7003A2EA3807EA3E0F381FFFFCEA07FDEA
01F1161E7E9D1A>I<12FEA3120EA6133EEBFF80000F13C013C1EB80E01300120EAC38FF
E3FE13E713E3171E7F9D1A>104 D<EA01C0487EA36C5AC8FCA5EA7FE0A31200AF387FFF
80B512C06C1380121F7C9E1A>I<EAFE3EEBFF80B512C0EA0FC1EB80E01300120EAC38FF
E3FE13E713E317157F941A>110 D<EA01F0EA07FCEA1FFF383E0F80EA3C07387803C0EA
700138E000E0A6EAF001007013C0EA7803383C0780EA3E0F381FFF00EA07FCEA01F01315
7D941A>I<387F81F838FF8FFC387F9FFE3803FE1EEBF80CEBE000A25B5BAAEA7FFFB5FC
7E17157F941A>114 D<487E1203A6387FFFE0B5FCA238038000AA1470A43801C1E013FF
6C1380EB3F00141C7F9B1A>116 D<38FE0FE0A3EA0E00AD1301EA0F033807FFFE7EEA00
FC17157F941A>I<387FC7FC00FF13FE007F13FC380E00E0A3380701C0A338038380A338
01C700A3EA00EEA3137CA2133817157F941A>I E /Fi 41 123 df<EB07FCEB3FFF9038
FE0780D803F013C03807E00FA2EA0FC0A3EC030091C7FCA3EC7FE0B6FCA2380FC007B3A2
39FFFC7FFEA21F267FA522>12 D<123C127E12FFA4127E123C08087C8711>46
D<131C133C13FC12FFA21200B3AA387FFFFCA216237CA21F>49 D<48B4FC000713C0381E
07F0383803F8386001FC387C00FE12FE14FF147FA2127C003813FFC7FC14FEA2EB01FC14
F8EB03F0EB07E01480EB0F00131E5B1370EBE003EA01C038038007380700061206380FFF
FE5A5A4813FCB5FCA218237DA21F>I<48B4FC000713E0381E03F0383801F8003C13FC38
7E00FEA3123EEA1C01000013FCA2EB03F8EB07F0EB0FC03801FF00A2380007E0EB01F014
F8EB00FC14FE14FFA21210127C12FEA214FEA2387C01FC007013F8383E07F0380FFFC000
01130018237DA21F>I<14381478A214F81301130313071306130C131C13381330136013
E0EA01C01380EA03005A120E5A12185A12705AB612C0A2390001F800A790387FFFC0A21A
237EA21F>I<0018130C001F137CEBFFF814F014E014C01480EBFC000018C7FCA513FF00
1B13E0381F03F0381C00F8000813FCC7127EA3147FA2127812FCA3147E5A006013FC1270
383801F8381E07E03807FFC03801FE0018237DA21F>I<EB1FC0EB7FF03801F0383803E0
0C3807803E000F137EEA1F005AA2007E133C1400A338FE3FC0EB7FF0EB80F800FF13FCEB
007C147E5A147FA4127EA4003E137E123F6C137C380F80F83807C1F03803FFC038007F00
18237DA21F>I<1230123C003FB512C0A215804814005C5C38600018A200E05B485B5CC6
485AA249C7FC1306130EA25BA2133CA25BA213F8A41201A66C5A13601A257DA41F>I<14
1CA2143EA3147FA24A7EA39038019FC0A29038031FE0140F01077FEB0607A2010C7F1403
011C7FEB1801A2496C7EA2017FB5FCA29039E0007F8049133FA2484880151F00038190C7
120FA2486E7ED8FFF090B51280A229257EA42E>65 D<B612E015FC3903F800FFED1FC0ED
07E06F7E6F7E82150082A2167FA31780AA1700A316FEA24B5A5E4B5A4B5AED1FC0EDFF80
B648C7FC15E029257EA42F>68 D<B7FCA23903F8007FED0F8015071503A21501A3ED00C0
1406A21600A2140E141EEBFFFEA2EBF81E140E1406A21660A291C7FC16C0A415011503A2
ED0F80153FB7FCA223257EA428>I<B612FEA23803F800151F8181A281A3ED01801403A2
92C7FCA25C5C90B5FCA2EBF80F8080A491C8FCAAB512F0A221257EA427>I<B500E0B512
E0A23B03F80003F800AF90B6FCA29038F80003B0B500E0B512E0A22B257EA430>72
D<B512E0A23803F800B3AFB512E0A213257EA417>I<B512F0A2D803F8C7FCB3A31503A3
1506A3150EA2151E153E157CEC03FCB6FCA220257EA425>76 D<D8FFF8EDFFF86D5C0003
EEFE00017EEC037EA36D1406A26D6C130CA26D6C1318A26D6C1330A36D6C1360A26D6C13
C0A2903900FC0180A291387E0300A3EC3F06A2EC1F8CA2EC0FD8A2EC07F0A36E5AEA0780
3CFFFC01C01FFFF8A235257EA43A>I<01FF1380000713E3380F80F7381E001F48130F48
1307140312F81401A27E91C7FCB4FCEA7FE013FE383FFFE014F86C13FE00077F6C1480C6
7E010313C0EB003FEC0FE01407A200C01303A315C07E6C13076C14806CEB0F0038FFC03E
38E3FFF838803FE01B257DA422>83 D<B53B81FFFE01FFF0A23D07F0001FC0000F007013
066C6C010F5CA26F7E6C6C5EA26D496C1338000017304B7E017F01195CA291388030FE01
3F5E829139C0607F01011F5E03E0138190280FE0C03F83C7FCA29139F1801FC3010715C6
17E69139FB000FEE010315EC02FF14FC6D486D5AA24A130301005DA24A130102785CA202
306D5A3C257FA43F>87 D<EA07FF001F13E0383E03F0383F00F880147E121EC7FCA3EB1F
FE3803FE7EEA0FC0EA1F00123E127E5AA314BEEA7E01383F073E391FFE1FE03807F00F1B
187E971E>97 D<EAFFC0A2120FACEBC1FCEBCFFF9038FC0FC09038F007E09038C003F0A2
EC01F8A215FCA815F8A2EC03F013E09038F007E090381C1F80390E0FFF00380C03F81E26
7FA522>I<EB7FE03803FFF83807C07C381F80FC13005A007E1378140012FEA8127E127F
6C130CEA1F80EBC0183807E0703803FFE038007F0016187E971B>I<ECFFC0A2140FAC13
7F3803FFCF380FE0FF381F803F383F000FA2127EA212FEA8127EA27E141F381F803F380F
C0EF3903FFCFFC3800FE0F1E267EA522>I<137F3803FFC03807C1F0380F80F8EA1F0048
137C127E147E12FEA2B512FEA248C7FCA3127EA214067E6C130C380F80183807E0703803
FFE038007F8017187E971C>I<EB1FC0EB7FF0EA01F83803E1F8120713C1380FC0F01400
A7B5FCA2EA0FC0B3A2EAFFFEA215267EA513>I<3901FF07C00007EBDFE0380F83F1EA1F
01393E00F800007E7FA6003E5B6C485A380F83E0EBFFC0001190C7FC0030C8FCA2123812
3C383FFFE06C13FC806C7F481480383C003F48EB0FC000F81307A4007CEB0F806CEB1F00
381F807E3807FFF8C613C01B247E971F>I<EAFFC0A2120FAC14FE9038C3FF809038CE0F
C013D89038D007E013E0A213C0AF39FFFC7FFEA21F267EA522>I<120FEA1F80EA3FC0A4
EA1F80EA0F00C7FCA7EA7FC0A2120FB3A2EAFFF8A20D277EA611>I<EAFFC0A2120FB3B0
EAFFFCA20E267EA511>108 D<26FF80FE137F903A83FF81FFC03B0F8E0FC707E0019813
CC903A9007E803F001A013F0A201C013E0AF3BFFFC7FFE3FFFA230187E9733>I<38FF80
FE903883FF80390F8E0FC0139890389007E013A0A213C0AF39FFFC7FFEA21F187E9722>
I<EB7F803803FFF03807C0F8381F807E48487EA2007EEB1F80A200FE14C0A8007E1480A2
6CEB3F00A2381F807E6C6C5A3803FFF038007F801A187E971F>I<38FFC1FCEBCFFF390F
FC1FC09038F007E001C013F0140315F8140115FCA8EC03F8A215F0EBE0079038F00FE090
38DC1F809038CFFF00EBC3F801C0C7FCA9EAFFFCA21E237F9722>I<38FF83E0EB8FF838
0F8C7CEB90FC13B013A01478EBE0005BAEEAFFFEA216187F9719>114
D<3807F8C0EA1FFFEA3C07EA7001EAF000A300FC1300B47EEA7FFC7F383FFF80000F13C0
120338001FE01303EAC001A212E014C0EAF00338FC078038EFFF00EAC3FC13187E9718>
I<13C0A41201A312031207120F121FB512C0A2380FC000AC1460A63807E0C013E13801FF
8038007E0013237FA218>I<39FFC07FE0A2000F1307B0140FA200071317EBE0673903FF
C7FE38007F071F187E9722>I<39FFF80FF8A2390FC001C015803907E00300A26D5A0003
1306EBF80E0001130C13FC00005B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA21D
187F9720>I<39FFF83FF0A2390FC00F003807E00E6C6C5A6D5A6C6C5A00001360EB7EC0
6D5AA2131F6D7E497E80EB33F81361EBE0FC3801C07E3803807F3907003F8048131F39FF
C07FF8A21D187F9720>120 D<39FFF80FF8A2390FC001C015803907E00300A26D5A0003
1306EBF80E0001130C13FC00005B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA213
06A25B1230EA781CEAFC185B1370EA68E0EA7FC0001FC8FC1D237F9720>I<387FFFF8A2
387C03F0EA700738600FE000E013C0EB1F80EAC03F1400137EEA00FE5B485A0003130C13
F0EA07E0120FEBC01C381F8018003F1338387F0078387E01F8B5FCA216187E971B>I
E /Fj 31 122 df<903803F07C90381E0DC69038380F0FEB701E01E0130EEC0C003801C0
1CA548485A007FB512C03903803800A448485AA6000E5BA648485A001E7F38FF8FFC2020
7E9F1B>11 D<EB03E0EB1C181338EB703C13E014383801C000A5485A387FFFF038038070
A4380700E0A6380E01C0A6381C0380001E13C038FF0FF016207E9F19>I<903803F03F90
391E09E0809039380F80C09039701F01E0EBE03E021E13C02601C01CC7FCA548485A007F
B612803903803803A43A0700700700A6000EEBE00EA64848485A001EEBE01E3AFF8FF8FF
C023207E9F26>14 D<13201360A4383061C0383C4380380E4E00EA0778EA01E0A2EA07B8
EA1C9CEA708FEAE083EA0180A490C7FC12147AA117>42 D<EAFFF0A20C027E8A0F>45
D<13181338EA01F8EA0E701200A513E0A6EA01C0A6EA0380A6EA07001380EAFFFC0E1E7B
9D17>49 D<EB3F80EBC1E038010070000213785AA2000F137C1380A2EB00781206C712F8
14F0EB01E014C0EB0380EB0700130E5B5B13605B485A380300201206000813405A383FFF
C0481380B5FC161E7E9D17>I<13FFEA01FE1380A5EA0300A61206A65AA65AA65AA65AA6
B4FCA2102D7EA10D>91 D<13FFEA01FEEA0006A5130CA61318A61330A61360A613C0A6EA
0180A6EAFF00A2102D82A10D>93 D<EA07F8EA0C0CEA1E061307121C1200A313FFEA07C7
EA1E07EA3C0E127800F01310A3131EEB2E2038784F40381F878014147D9317>97
D<13FEEA0383380E0780121C0038130090C7FC12785AA45AA37E5BEA70026C5AEA1C18EA
07E011147D9314>99 D<1438EB01F8EB00781438A21470A614E013FCEA0382EA0601121C
EA3C00383801C0127812F0A438E00380A412F0EA700738380F00381C37803807C7E01520
7D9F19>I<13F8EA070EEA0E07121C383803801278127012F0A2B5FC00F0C7FC5AA46C5A
EA7002EA3004EA1C18EA07E011147D9314>I<EB07C0EB1C60EB30F01360EBE0E0EBC000
1201A5485AEA3FFCEA0380A448C7FCA6120EA65A121EEAFFC014207F9F0E>I<140EEB3E
11EBE1A33801C1C2380381E0EA07801301120FA3380703C01480EB8700EA04FC48C7FCA2
1218121CEA0FFF14C014E0381800F04813305A5AA3006013606C13C0381C0700EA07FC18
1F809417>I<13E0120712011200A2485AA6485AEB8F80EB90E013A0EBC0601380000713
E01300A5380E01C0A6381C0380001E13C038FF8FF014207E9F19>I<EA01C0EA03E0A213
C0EA0180C7FCA6EA0380121F12071203A2EA0700A6120EA65A121EEAFF800B1F7F9E0C>
I<13E0120712011200A2EA01C0A6EA0380A6EA0700A6120EA65A121EEAFF800B207F9F0C
>108 D<390387C07C391F9861863907A072073903C03403EB80380007EB7807EB0070A5
000EEBE00EA64848485A001EEBE01E3AFFCFFCFFC022147E9326>I<38038F80381F90E0
EA07A03803C0601380000713E01300A5380E01C0A6381C0380001E13C038FF8FF014147E
9319>I<13FCEA0387380E0180381C00C04813E0A24813F012F0A438E001E0A214C01303
00F0138038700700EA380E6C5AEA07E014147D9317>I<EBE3E03807EC383800F01C497E
140F48487E1580A53903800F00A2140E141E141C5C38074070EB61C0011FC7FC90C8FCA3
120EA4121EEAFFC0191D809319>I<EBFC2038038260EA0702381E01E0123C003813C012
7812F0A438E00380A212F0A21307127038380F00EA1C37EA07C7EA0007A3130EA4131EEB
FFC0131D7D9318>I<EA038E381FB380EA07C71203EB8300EA078090C7FCA5120EA65A12
1EEAFFC011147E9312>I<EA01F9EA0607EA080312181301EA3802EA3C00121F13F0EA07
FCEA01FEEA001FEA40071303A212601306EAF004EAC818EA87E010147F9312>I<1380EA
0100A35A5A5A121EEAFFF8EA0E00A45AA65A1310A41320A2EA1840EA0F800D1C7C9B12>
I<381C0380EAFC1FEA3C07EA1C03A238380700A6EA700EA4131EA25BEA305E381F9F8011
147B9319>I<38FF83F8381E00E0001C13C01480121E380E01005B13025B12075BA25BEA
039013A013E05B5B120190C7FC15147C9318>I<39FF9FE1FC393C078070391C03006014
8015401580EA0E0790380D81001309EB19C21311380F21C4EA0720EB40C814E8EB80F0A2
6C485A1460000213401E147C9321>I<381FF0FF3803C0780001137014403800E0C0EBE1
80EB73001376133CA2131C132E134E1387EA0107380203801204380C01C0383C03E038FE
07FC18147F9318>I<390FF83F803901E00E00EBC00C140813E000005B143014205C1370
5CA20171C7FC1339133A133E133C133813181310A25BA25BEA70C0EAF08000F1C8FC12E6
1278191D809318>I E /Fk 36 122 df<EB01C01303130F137FEA1FFFB5FC13BFEAE03F
1200B3B1007FB512F0A31C2E7AAD28>49 D<EB3FE03801FFFE0007EBFF80D80F8013C039
1E003FE00038EB1FF0007CEB0FF8007EEB07FCB4FC018013FEA21403A2EA7F00003E1307
C7FC15FCA2EC0FF8A215F0EC1FE015C0EC3F80EC7F00147E14F8495A495A495A49C7FC01
1E130E5B133849131E49131C485A48C7123C48B512FC5A5A5A4814F8B6FCA31F2E7CAD28
>I<1578A215FCA34A7EA24A7EA24A7FA34A7FEC0E7F021E7FEC1C3FA202387F151F0278
7FEC700FA202E07F1507010180ECC003A249486C7EA201078191C7FC498191B6FCA24981
011CC7123F013C810138141FA24981160F01F081491407A2484881486C1403B549B512FC
A336317DB03D>65 D<B712C016FC16FFD801FEC77FEE7FE0707E161F707EA2831607A416
0FA25FA24C5A4C5A4C5A4B485ADB1FFEC7FC90B65AEEFF8049C7EA3FE0EE0FF0EE07FCA2
707E83821880A718005E5F16074C5A4C5AEEFFF0B812C094C7FC16F831317DB039>I<91
3A03FF800180023FEBF00349B5EAFC0701079038003F0FD91FF8EB079FD93FC0EB01FFD9
FF807F4848C8127F4848153F0007161F49150F485A001F1607A2485A1703127FA24992C7
FCA212FFA9127FA27FEF0380123FA26C7E1707000F17006C7E6D150E0003161E6C6C151C
6C6C6C1478D93FC05CD91FF8EB03E0D907FFEB3F800101D9FFFEC7FCD9003F13F8020313
8031317CB03A>I<B812E0A3C6903880007FEE0FF016031601A21600A21770A31738A215
07A21700A35D5D5D91B5FCA3EC803F818181A592C8FCACB612C0A32D317EB033>70
D<DA03FF1303027FEBF00749B5EAFC0F01079038007E1FD91FF0EB0FBFD97FC0EB03FF49
487F4848C87E485A0007824848815B001F82A2484881A2127FA24992C7FC12FFAA0307B5
12F8127F7FDB00011300123FA26C7EA2120F7F6C7E12036C7E6C6C7E6D6C5BD91FF8497E
D907FFEB3E3F01019038FFFC1F6D6CEBF00F0203EB800335317CB03F>I<B6D8807FB512
C0A3C60180C7387FC000B391B7FCA30280C7127FB3A3B6D8807FB512C0A33A317EB03F>
I<B61280A3C6EB8000B3B3A7B61280A319317EB01E>I<B56C49B512C08080C66D903900
03E0006E6E5AEBEFFC13E780EBE3FF01E17F01E07F6E7E143F816E7E6E7E6E7E14036E7E
16806E13C0ED7FE0ED3FF0151F16F8ED0FFCED07FEED03FF6F13818117C1EE7FE1EE3FF1
EE1FF9EE0FFD160717FF828282177F173FA2171F170F486C1507B500E014031701A23A31
7EB03F>78 D<B712E016FEEEFF80C6D9800013E0EE3FF0EE0FF8EE07FCA2EE03FEA217FF
A717FEA2EE07FC17F8160FEE3FE0EEFFC091B6120016F80280C8FCB3A2B67EA330317EB0
37>80 D<007FB8FCA39039C00FF801D87E00EC003F007C82007882A200708200F01780A3
481603A5C792C7FCB3AA017FB6FCA331307DAF38>84 D<B6D88003B51280A3C60180C738
07C000715AB3AE137F4DC7FC80013F150EA26D6C5C6D6C5C6D6C5C6D6C495A903A00FF80
1FC0023FB55A020F49C8FC020013E039317EB03E>I<B500FC91B5FCA3000390C8EA03C0
6C17806E14076C170080017F150EA26E141E013F151C6E143C011F153880010F5D800107
5DA26E130101035D6E13036D5D15806D4AC7FCA26F5A027F130EEDE01E023F131CEDF03C
021F133815F8020F5BA2EDFCF002075B15FF6E5BA26E5BA26E90C8FCA3157EA2153CA238
317EB03D>I<EBFFF0000313FF390F803F809038C00FE0486C6C7EA26E7ED80FC07FEA07
80C7FCA414FF131FEBFFE33803FC03EA0FF0EA1FC0123FEA7F80A2EAFF00A31407A2387F
800D393FC01DFE3A1FE078FFF03907FFE07FC6EB803F24207E9F27>97
D<EA01F812FFA3120F1207ADEC3FE0ECFFFC9038FBE07F9039FF001F8049EB0FC04914E0
49EB07F016F8A2ED03FCA316FEA816FCA3ED07F8A216F06DEB0FE06D14C001E7EB3F8090
39C3C0FE00903880FFF89038003FC027327EB12D>I<EB0FFF017F13C03901FC01F03803
F0033907E007F8120FEA1FC0003FEB03F0EC01E04848C7FCA312FFA8127FA36C6C131CA2
001F14386C7E000714703903F001E03901FC07C039007FFF00EB0FF81E207D9F24>I<ED
0FC0EC07FFA3EC007F153FADEB07F8EB3FFF9038FE07BF3903F801FF3907E0007F120F48
48133F123FA2485AA312FFA8127FA36C7EA2121F6C6C137F000714FF2603F00313E03A01
FC0F3FFE38007FFEEB0FF027327DB12D>I<EB0FFC90387FFF803901FC0FC03903F003E0
3907E001F0000F14F8391FC000FC003F14FEA24848137E157FA212FFA290B6FCA20180C7
FCA4127FA36C6C1307121F150E6C7E6C6C131C6C6C13783900FE03E090383FFFC0903807
FE0020207E9F25>I<EB01FE90380FFF8090381FC3C090387F07E09038FE0FF0120113FC
1203EC07E0EC018091C7FCA8B512FCA3D803FCC7FCB3A8387FFFF0A31C327EB119>I<90
391FF007C09039FFFE3FE03A01F83F79F03907E00FC3000F14E19039C007E0E0001FECF0
00A2003F80A5001F5CA2000F5CEBE00F00075C2603F83FC7FC3806FFFE380E1FF090C9FC
121EA2121F7F90B57E6C14F015FC6C806C801680000F15C0003FC7127F007EEC1FE0007C
140F00FC1407A4007EEC0FC0003E1580003F141FD80FC0EB7E003907F803FC0001B512F0
D8001F90C7FC242F7E9F28>I<EA01F812FFA3120F1207ADEC07F8EC3FFEEC783F02C013
809039F9801FC0EBFB0001FE14E05BA35BB3B500C3B5FCA328327DB12D>I<EA03C0487E
487E487EA46C5A6C5A6C5AC8FCA9EA01F8127FA31207B3A7B51280A311337DB217>I<EA
01F812FFA3120F1207B3B3A6B512C0A312327DB117>108 D<2703F007F8EB1FE000FFD9
3FFEEBFFF8913A783F01E0FC02C090388300FE280FF1801FC6137F2607F30013CC01F602
F8148001FC5CA3495CB3B500C3B5380FFFFCA33E207D9F43>I<3903F007F800FFEB3FFE
EC783F02C013803A0FF1801FC03807F30001F614E013FCA35BB3B500C3B5FCA328207D9F
2D>I<EB07FC90387FFFC03901FC07F03903F001F848486C7E4848137E001F147F003F15
8049133F007F15C0A300FF15E0A8007F15C0A36C6CEB7F80A2001F15006C6C13FE00075C
3903F803F83901FE0FF039007FFFC0D907FCC7FC23207E9F28>I<3901F83FE000FFEBFF
FC9038FBE07F9039FF003F80D807FEEB1FC049EB0FE04914F0ED07F8A216FC1503A216FE
A816FC1507A216F8A2ED0FF06D14E06DEB1FC06DEB3F809039FBC0FE009038F8FFF8EC3F
C091C8FCABB512C0A3272E7E9F2D>I<3803F03F00FFEB7FC09038F1C3E01487390FF30F
F0EA07F6A29038FC07E0EC03C091C7FCA25BB2B512E0A31C207E9F21>114
D<3801FF86000713FEEA1F00003C133E48131E140E12F8A36C90C7FCB47E13FC387FFFC0
6C13F0806C7F00077F00017FEA003F01001380143F0060131F00E0130FA27E15007E6C13
1E6C131C38FF807838F3FFF038C07F8019207D9F20>I<131CA5133CA3137CA213FC1201
12031207381FFFFEB5FCA2D803FCC7FCB0EC0380A71201EC0700EA00FEEB7F0EEB3FFCEB
07F0192E7FAD1F>I<D801F8EB07E000FFEB03FFA3000FEB003F0007141FB3153FA20003
147FA26C6CEBDFF03A00FE039FFF90387FFF1FEB0FFC28207D9F2D>I<B5EB1FFCA3D80F
F8EB03C0000715806D1307000315007F0001140E7F6C5CA2EC803C017F1338ECC078013F
1370ECE0F0011F5B14F1010F5B14F9903807FB80A214FF6D90C7FCA26D5AA26D5AA21478
A226207E9F2B>I<B53A1FFFE03FF8A33C0FF000FE0007806D150300076EEB0700816D5D
00039138FF800EA26C6C486D5A15DF01FF153C6C9039038FE038A2D97F876D5A150702C7
14F0D93FCF6D5AECCE03D91FFEEBF9C09138FC01FD16FF010F5D4A7EA26D486DC7FCA201
03147E4A133EA26D48131C35207E9F3A>I<3A7FFF807FFCA33A03FC000F006C6C131E6C
6C5BEC803890387FC078013F5B90381FE1E090380FF3C0ECFF806D90C7FC6D5A13016D7E
81815B903803DFE09038078FF08190380F07FC90381E03FEEB3C01496C7E4914804848EB
7FC00003EC3FE026FFFC01B5FCA328207F9F2B>I<B5EB1FFCA3D80FF8EB03C000071580
6D1307000315007F0001140E7F6C5CA2EC803C017F1338ECC078013F1370ECE0F0011F5B
14F1010F5B14F9903807FB80A214FF6D90C7FCA26D5AA26D5AA21478A21470A214F05C13
01007C5BEAFE035C49C8FC5BEAFC1EEA787CEA3FF0EA0FC0262E7E9F2B>I
E /Fl 1 14 df<14FF010713E090381F00F80178131E01E01307D80180EB018048C812C0
00061560481530A248151848150CA2481506A4481503A900601506A46C150CA26C15186C
1530A26C15606C15C06C6CEB0180D800E0EB07000178131E011F13F8903807FFE0010090
C7FC282B7EA02D>13 D E /Fm 46 122 df<123C127FEAFF80A213C0A3127F123E1200A2
EA0180A3EA0300A21206120E5A5A12100A157B8813>44 D<121C127FA2EAFF80A3EA7F00
A2121C09097B8813>46 D<130E131E137EEA07FE12FFA212F81200B3ABB512FEA317277B
A622>49 D<EBFF80000713F04813FC381E03FE393800FF80007C133F00FE14C06C131F15
E0140FA2127E003C131FC7FC15C0A2EC3F801500147E5C5C495A495AEB078049C7FC131E
4913E013705B3901C001C0EA0380EA0600000FB5FC5A5A5AB61280A31B277DA622>I<EB
7F803803FFF04813FC380F81FE381F007FEA3F80EC3F80A3121F1300C7EA7F00A2147E5C
495AEB07F0EBFFC0A2EB01F8EB007E801580EC1FC0A215E0A2123C127EB4FCA215C0143F
481480007CEB7F00383F01FE6CB45A000713F0C613801B277DA622>I<140FA25C5C5C5C
5BA2EB03BFEB073F130E131C133C1338137013E0EA01C0EA038012071300120E5A5A5A12
F0B612F8A3C7EA7F00A890381FFFF8A31D277EA622>I<00181303381F801FEBFFFE5C5C
5C14C091C7FC001CC8FCA7EB7FC0381DFFF8381F80FC381E003F1208C7EA1F8015C0A215
E0A21218127C12FEA315C05A0078EB3F80A26CEB7F00381F01FE6CB45A000313F0C61380
1B277DA622>I<1238123E003FB512F0A34814E015C0158015003870000EA25C485B5C5C
C6485AA2495A130791C7FC5B5B131E133EA2137E137CA213FCA41201A76C5A13701C297C
A822>55 D<EC0780A24A7EA34A7EA24A7EA3EC77F8A2ECF7FC14E3A2903801C1FEA20103
7F1480A249486C7EA24980010E133FA2496D7EA2013FB57EA39039700007F8A201F08049
1303000181491301A2000381D8FFFE013F13FCA32E297EA833>65
D<B612F815FF16C03A03F8001FE0ED0FF0ED07F8150316FCA21501A3150316F8A2ED07F0
150FED1FC0EDFF8090B5EAFE00EDFFC09039F8000FF0ED03F8ED01FC16FE1500A216FFA6
16FE1501ED03FC1507ED1FF8B712E016C0EDFE0028297DA830>I<91387FE003903907FF
FC07011FEBFF0F90397FF00F9F9039FF0001FFD801FC7F4848147F4848143F4848141F48
5A160F485A1607127FA290C9FC5AA97E7F1607123FA26C7E160E6C7E6C6C141C6C6C143C
6C6C14786CB4EB01F090397FF007C0011FB512800107EBFE009038007FF028297CA831>
I<B712E0A33903FC001FED07F01501A215001670A3913801C0781638A302031300A2140F
90B5FCA3EBFC0F1403A20201130EA3161C91C7FCA3163C1638167816F815011503151FB7
12F0A327297EA82C>69 D<B712C0A33903FC003FED0FE015031501A21500A316F0913801
C070A316001403A2140F90B5FCA3EBFC0F1403A21401A491C8FCA9B512FCA324297EA82A
>I<91387FE003903907FFFC07011FEBFF0F90397FF00F9F9039FF0001FFD801FC7F4848
80484880484880485A82485A82127FA290CAFC5AA892B512F87E7F03001300123FA26C7E
A26C7E6C7E6C7E6C7E6CB45B90387FF007011FB5129F0107EBFE0F9039007FF0032D297C
A835>I<B5D8F00FB5FCA3D803FCC7EA3FC0AF90B7FCA301FCC7123FB1B5D8F00FB5FCA3
30297EA835>I<B512F0A33803FC00B3B1B512F0A314297EA819>I<D8FFFE92383FFF80A2
6D5D0003EFE000A2D9BF8014EFA2D99FC0EB01CFA2D98FE0EB038FA3D987F0EB070FA2D9
83F8130EA2D981FC131CA3D980FE1338A2027F1370A291383F80E0A391381FC1C0A29138
0FE380A2913807F700A3EC03FEA26E5AA26E5AD8FFFE0203B51280A2157039297DA840>
77 D<D8FFFCEC7FFF7F7F00036DEB01C080EBBFE0139F80EB8FF8EB87FCEB83FEEB81FF
01801380147F15C0EC3FE0EC1FF0EC0FF8EC07FC140315FEEC01FF6E1381ED7FC1ED3FE1
ED1FF1150F16F9ED07FDED03FF8181167FA2163F161F160F1607D8FFFE14031601A23029
7EA835>I<B612F815FF16C03A03FC003FE0ED07F0ED03F816FC150116FEA716FC150316
F8ED07F0ED3FE090B61280EDFE0001FCC8FCB0B512F0A327297EA82E>80
D<B612E015FE6F7E3A03FC003FE0ED0FF06F7E6F7E150182A65E4B5A1507ED0FE0ED3FC0
90B500FEC7FCA29039FC00FF80ED3FC06F7E6F7E6F7EA9170EA21503923801FC1CB538F0
00FEEE7FF8EE0FE02F297EA832>82 D<9038FF80600003EBF0E0000F13F8381F80FD383F
001F003E1307481303A200FC1301A214007EA26C140013C0EA7FFCEBFFE06C13F86C13FE
80000714806C14C0C6FC010F13E0EB007FEC1FF0140F140700E01303A46C14E0A26C1307
6C14C0B4EB0F80EBE03F39E3FFFE0000E15B38C01FF01C297CA825>I<B500F0EBFFFEA3
D803FCC7EA0380B3AA0001ED07007F0000150E137F6D143CD91FC05B90390FF003F06DB5
5A01001480DA1FFCC7FC2F297EA834>85 D<B500F0EB7FFFA3D803FEC7EA01C00001ED03
80A26D14076C16006E5B017F140E80013F5CA26E133C011F14386E1378010F1470800107
5CA26D6C485AA2ECFE0301015CECFF076D91C7FC1587EC7F8EA215DEEC3FDC15FC6E5AA2
6E5AA36E5AA26E5AA230297FA833>I<B53CE07FFFE01FFFC0A32803FC0003FCC7EA7000
A26D6D7E000160A26D6E13016C604B138002801503017F5F4B13C0D93FC0013F49C7FCA2
913AE00E1FE00F011F160E17F09126F01C0F131E010F161C033C13F8902707F838075BA2
037813FC902703FC70035BA2913AFEE001FEF001015E02FF14FF4B7E6D5EA26E486D5AA3
6EC76CC8FCA2023E80021E141EA242297FA845>I<3803FF80000F13F0381F01FC383F80
FE147F801580EA1F00C7FCA4EB3FFF3801FC3FEA0FE0EA1F80EA3F00127E5AA4145F007E
13DF393F839FFC381FFE0F3803FC031E1B7E9A21>97 D<EAFFE0A3120FACEBE1FE9038EF
FF809038FE07E09038F803F09038F001F89038E000FCA2157EA2157FA8157EA315FCA290
38F001F89038F803F090389C0FE090380FFF80390E01FC00202A7EA925>I<EB3FF03801
FFFC3803F03E380FC07FEA1F80EA3F00A248133E007E90C7FCA212FEA7127EA2127F6CEB
03801380001FEB0700380FE00E3803F83C3801FFF838003FC0191B7E9A1E>I<EC7FF0A3
1407ACEB3F873801FFF73807F03F380FC00F381F8007EA3F00A2127EA312FEA8127EA27E
A2381F800F380FC01F3907E07FFF3801FFE738007F87202A7EA925>I<EB3FC03801FFF0
3803E07C380F803E001F7F130048EB0F80127E15C0A200FE1307A2B6FCA248C8FCA3127E
A2127F6CEB01C07E390F8003803907C007003803F01E3800FFFCEB3FE01A1B7E9A1F>I<
EB07F8EB3FFCEB7E3E3801FC7FEA03F813F01207143E1400A7B512C0A33807F000B3A338
7FFF80A3182A7EA915>I<9038FF80F00003EBE3F8390FC1FE1C391F007C7C48137E003E
EB3E10007EEB3F00A6003E133E003F137E6C137C380FC1F8380BFFE00018138090C8FC12
38A2123C383FFFF814FF6C14C06C14E06C14F0121F383C0007007CEB01F8481300A4007C
EB01F0A2003FEB07E0390FC01F806CB5120038007FF01E287E9A22>I<EAFFE0A3120FAC
147E9038E1FF809038E30FC001E413E0EBE80701F813F013F0A213E0B039FFFE3FFFA320
2A7DA925>I<1207EA0F80EA1FC0EA3FE0A3EA1FC0EA0F80EA0700C7FCA7EAFFE0A3120F
B3A3EAFFFEA30F2B7EAA12>I<EAFFE0A3120FB3B2EAFFFEA30F2A7EA912>108
D<26FFC07FEB1FC0903AC1FFC07FF0903AC307E0C1F8D80FC49038F101FC9039C803F200
01D801FE7F01D05BA201E05BB03CFFFE3FFF8FFFE0A3331B7D9A38>I<38FFC07E9038C1
FF809038C30FC0D80FC413E0EBC80701D813F013D0A213E0B039FFFE3FFFA3201B7D9A25
>I<EB3FE03801FFFC3803F07E390FC01F80391F800FC0393F0007E0A2007EEB03F0A300
FE14F8A8007E14F0A26CEB07E0A2391F800FC0390FC01F803907F07F003801FFFC38003F
E01D1B7E9A22>I<38FFE1FE9038EFFF809038FE0FE0390FF803F09038F001F801E013FC
140015FEA2157FA8157E15FEA215FC140101F013F89038F807F09038FC0FE09038EFFF80
9038E1FC0001E0C7FCA9EAFFFEA320277E9A25>I<38FFC1F0EBC7FCEBC63E380FCC7F13
D813D0A2EBF03EEBE000B0B5FCA3181B7F9A1B>114 D<3803FE30380FFFF0EA3E03EA78
00127000F01370A27E00FE1300EAFFE06CB4FC14C06C13E06C13F0000713F8C6FCEB07FC
130000E0137C143C7E14387E6C137038FF01E038E7FFC000C11300161B7E9A1B>I<13E0
A41201A31203A21207120F381FFFE0B5FCA2380FE000AD1470A73807F0E0000313C03801
FF8038007F0014267FA51A>I<39FFE07FF0A3000F1307B2140FA2000713173903F067FF
3801FFC738007F87201B7D9A25>I<39FFFC03FFA3390FF000F0000714E07F0003EB01C0
A2EBFC0300011480EBFE070000140013FFEB7F0EA2149EEB3F9C14FC6D5AA26D5AA36D5A
A26D5AA2201B7F9A23>I<3BFFFC7FFC1FFCA33B0FE00FE001C02607F007EB0380A201F8
EBF00700031600EC0FF801FC5C0001150EEC1FFC2600FE1C5B15FE9039FF387E3C017F14
38EC787F6D486C5A16F0ECE01F011F5CA26D486C5AA2EC800701075CA22E1B7F9A31>I<
39FFFC1FFEA33907F003803803F8079038FC0F003801FE1E00005BEB7F3814F86D5A6D5A
130F806D7E130F497EEB3CFEEB38FFEB787F9038F03F803901E01FC0D803C013E0EB800F
39FFF03FFFA3201B7F9A23>I<39FFFC03FFA3390FF000F0000714E07F0003EB01C0A2EB
FC0300011480EBFE070000140013FFEB7F0EA2149EEB3F9C14FC6D5AA26D5AA36D5AA26D
5AA25CA21307003890C7FCEA7C0FEAFE0E131E131C5BEA74F0EA3FE0EA0F8020277F9A23
>I E /Fn 75 127 df<127012F8B012701200A5127012F8A31270051C779B18>33
D<EA4010EAE038EAF078EAE038AAEA60300D0E7B9C18>I<EA0306EA078FA6387FFFC0B5
12E0A26C13C0380F1E00A6387FFFC0B512E0A26C13C0381E3C00A6EA0C18131C7E9B18>
I<13C01201A3EA03F0EA0FFCEA3FFEEA7DCFEA71C738E1C38013C7A338F1C0001279123F
6C7EEA0FF8EA01FC13DE13CF13C73861C38012F1A212E1EBC7001271EA79DEEA3FFEEA1F
F8EA07E0EA01C0A3120011247D9F18>I<EA3803387C0780A2EAEE0F1400A25B131EA213
3EEA7C3CA2EA387CEA0078A213F85B12015BA212035BA21207EB8380EB87C0120FEB0EE0
A2121F121EA2123E383C07C0A23818038013247E9F18>I<EA01C0EA07E0487EEA0E7048
7EA4EB73F813F313E3380FC1C0EBC38013831303381F0700EA3F87EA7B8EEA71CEEAE1FC
12E0137CEB7870A2EA70FE387FFFE0EA3FC7380F03C0151C7F9B18>I<1238127CA2127E
123E120EA3121CA2123812F812F012C0070E789B18>I<137013F0EA01E0EA03C0EA0780
EA0F00121E121C5AA25AA45AA81270A47EA27E121E7EEA0780EA03C0EA01F0120013700C
24799F18>I<126012F012787E7E7EEA07801203EA01C0A2EA00E0A41370A813E0A4EA01
C0A2EA03801207EA0F00121E5A5A5A12600C247C9F18>I<EA01C0A4EA41C138F1C780EA
FDDF387FFF00EA1FFCEA07F0A2EA1FFCEA7FFF38FDDF80EAF1C73841C100EA01C0A41114
7D9718>I<136013F0A7387FFFC0B512E0A26C13C03800F000A7136013147E9718>I<121C
123E127E127F123F121F1207120E121E127C12F81260080C788518>I<387FFFC0B512E0
A26C13C013047E8F18>I<1230127812FCA2127812300606778518>I<1303EB0780A2130F
14005B131EA2133E133C137C1378A213F85B12015B12035BA212075B120F90C7FCA25A12
1E123E123CA2127C127812F85AA2126011247D9F18>I<EA01F0EA07FC487EEA1F1FEA1C
0738380380007813C0EA7001A238E000E0A9EAF001007013C0A2EA780300381380381C07
00EA1F1FEA0FFE6C5AEA01F0131C7E9B18>I<EA01801203A21207120F123F12FF12FB12
431203B0EA7FFCEAFFFEEA7FFC0F1C7B9B18>I<EA03F0EA0FFEEA3FFF387C0F80387003
C0EAE00138F000E0A21260C7FCA2EB01C0A21303EB0780EB0F00131E5B5B5B485AEA07C0
485A381E00E05AEA7FFFB5FC7E131C7E9B18>I<131F5B1377A213E7120113C7EA038712
071307120E121E123C1238127812F0B512F8A338000700A6EB7FF0A3151C7F9B18>52
D<137E48B4FC00071380380F83C0EA1E03121C3838018090C7FC5AA2EAE1F8EAE7FEB5FC
38FE078038F803C0EAF001EB00E05A7E1270A3383801C0EA3C03381E0780380FFF006C5A
EA01F8131C7E9B18>54 D<1230127812FCA2127812301200A81230127812FCA212781230
0614779318>58 D<1218123C127EA2123C12181200A81218123C127EA2123E121E120E12
1C123C127812F01260071A789318>I<14C0EB03E01307EB1FC0EB3F80EBFE00485AEA07
F0485AEA3F8048C7FC12FCA2127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07E013
03EB00C013187E9918>I<387FFFC0B512E0A3C8FCA4B512E0A36C13C0130C7E9318>I<12
6012F87E127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07E0A2EB1FC0EB3F80EBFE
00485AEA07F0485AEA3F8048C7FC12FC5A126013187E9918>I<EA0FF0EA3FFC48B4FCEA
700F38F00380A2EA600738000F00133E5BEA01F05B485AA55BC8FCA5EA0380487EA36C5A
111C7D9B18>I<137013F8A213D8A2EA01DCA3138CEA038EA4EA0707A5380FFF80A3EA0E
03381C01C0A3387F07F000FF13F8007F13F0151C7F9B18>65 D<EA7FF8EAFFFE6C7E381C
0F80EB03C0A2EB01E01300A214F01470A814F014E0A2130114C01303EB0F80387FFF0048
5AEA7FF8141C7F9B18>68 D<B512F0A3381C0070A41400A2130EA3EA1FFEA3EA1C0EA390
C7FCA21438A5B512F8A3151C7F9B18>I<B512F8A3381C0038A41400A21307A3EA1FFFA3
EA1C07A390C7FCA7EAFFC0A3151C7F9B18>I<387F07F038FF8FF8387F07F0381C01C0A9
EA1FFFA3EA1C01AA387F07F038FF8FF8387F07F0151C7F9B18>72
D<EA7FFFB512806C1300EA01C0B3A4EA7FFFB512806C1300111C7D9B18>I<EAFFC0A300
1CC7FCB114E0A5B5FCA3131C7E9B18>76 D<387E07F038FF0FF8387F07F0381D81C0A313
C1121CA213E1A313611371A213311339A31319A2131D130DA3EA7F07EAFF87EA7F03151C
7F9B18>78 D<EA0FFE383FFF804813C0EA7803EA700100F013E0EAE000B0EAF001007013
C0EA7C07EA7FFF6C1380380FFE00131C7E9B18>I<EAFFFEEBFF8014C0EA1C03EB01E013
001470A514E01301EB03C0EA1FFF1480EBFE00001CC7FCA8B47EA3141C7F9B18>I<EA7F
F8EAFFFE6C7E381C0F80130314C01301A313031480130F381FFF005BA2EA1C0F7FEB0380
A5149CA3387F01F8EAFF81387F00F0161C7F9B18>82 D<3803F1C0EA1FFF5AEA7C0FEA70
03EAE001A390C7FC12701278123FEA1FF0EA07FEC67EEB0F80EB03C01301EB00E0A21260
12E0130100F013C038F80780B5FCEBFE00EAE7F8131C7E9B18>I<387FFFF8B5FCA238E0
7038A400001300B2EA07FFA3151C7F9B18>I<38FF83FEA3381C0070B36C13E0EA0F0138
0783C03803FF806C1300EA007C171C809B18>I<38FE03F8EAFF07EAFE03381C01C0EA1E
03000E1380EA0F0700071300A2EA038EA2EA01DCA3EA00F8A21370A9EA01FC487E6C5A15
1C7F9B18>89 D<EAFFF8A3EAE000B3ACEAFFF8A30D24779F18>91
D<126012F0A27E1278127C123CA2123E121E121F7EA27F12077F1203A27F12017F12007F
1378A2137C133C133E131EA2131F7F14801307A2EB030011247D9F18>I<EAFFF8A3EA00
38B3ACEAFFF8A30D247F9F18>I<EA0180EA07C0EA1FF0EA7EFCEAF83EEAE00E0F067C9B
18>I<387FFFC0B512E0A26C13C013047E7F18>I<1206121E123E12381270A212E0A312F8
12FC127CA21238070E789E18>I<EA0FF0EA1FFC487EEA3C0FEA180738000380A213FF12
07121FEA7F03127812E0A3EAF007EA780F383FFFF8EA1FFDEA07F015147E9318>I<127E
12FE127E120EA5133EEBFF80000F13C0EBC1E01380EB0070120E1438A6000F1370A2EB80
E013C1EBFFC0000E138038063E00151C809B18>I<EA01FEEA07FF001F1380EA3E073838
030048C7FCA25AA61270EB01C01238EA3E03381FFF8000071300EA01FC12147D9318>I<
EB1F80133F131F1303A5EA03E3EA0FFBEA1FFFEA3C1FEA380FEA7007130312E0A6EA7007
A2EA380FEA3C1F381FFFF0380FFBF83803E3F0151C7E9B18>I<EA01F0EA07FCEA1FFEEA
3E0F38380780EA7003A238E001C0A2B5FCA300E0C7FC1270EB01C01238EA3E07381FFF80
00071300EA01F812147D9318>I<EB1F80EB7FC0EBFFE013E13801C0C01400A3387FFFC0
B5FCA23801C000AEEA7FFFA3131C7F9B18>I<3801E1F03807FFF85A381E1E30381C0E00
487EA5EA1C0EEA1E1EEA1FFC5BEA39E00038C7FC7EEA1FFEEBFFC04813E0387801F03870
0070481338A4007813F0EA7E03381FFFC06C13803801FC00151F7F9318>I<127E12FE12
7E120EA5133EEBFF80000F13C013C1EB80E01300120EAB387FC7FC38FFE7FE387FC7FC17
1C809B18>I<EA0380EA07C0A3EA0380C7FCA4EA7FC012FF127F1201AEB5FCA3101D7C9C
18>I<EAFFC0A31201B3A4B51280A3111C7D9B18>108 D<38F9C1C038FFF7F013FF383E3E
38EA3C3CA2EA3838AB38FE3E3EEB7E7EEB3E3E1714809318>I<EA7E3E38FEFF80007F13
C0EA0FC1EB80E01300120EAB387FC7FC38FFE7FE387FC7FC1714809318>I<EA01F0EA0F
FE487E383E0F80EA3803387001C0A238E000E0A5EAF001007013C0EA7803383C0780EA3E
0F381FFF006C5AEA01F013147E9318>I<EA7E3E38FEFF80007F13C0380FC1E01380EB00
70120E1438A6000F1370A2EB80E013C1EBFFC0000E1380EB3E0090C7FCA7EA7FC0487E6C
5A151E809318>I<3801F380EA07FBEA1FFFEA3E1FEA380FEA7007A2EAE003A6EA7007A2
EA380FEA3C1FEA1FFFEA0FFBEA03E3EA0003A7EB1FF0EB3FF8EB1FF0151E7E9318>I<38
FF0FC0EB3FE0EB7FF0EA07F0EBE060EBC0005BA290C7FCA9EAFFFC7F5B14147E9318>I<
EA07F7EA3FFF5AEA780FEAE007A3007CC7FCEA7FE0EA1FFCEA03FEEA001F38600780EAE0
03A212F038F80F00B5FC13FCEAE7F011147D9318>I<487E1203A4387FFFC0B5FCA23803
8000A9144014E0A33801C1C013FF6C1380EB3E0013197F9818>I<387E07E0EAFE0FEA7E
07EA0E00AC1301EA0F033807FFFC6C13FE3801FCFC1714809318>I<387F8FF000FF13F8
007F13F0381C01C0380E0380A338070700A3138FEA038EA3EA01DCA3EA00F8A213701514
7F9318>I<38FF07F8138F1307383800E0A4381C01C0137113F9A213D9EA1DDD000D1380
A3138DEA0F8FA23807070015147F9318>I<387F8FF0139F138F380F0700EA078EEA039E
EA01DC13F81200137013F07FEA01DCEA039E138EEA0707000E1380387F8FF000FF13F800
7F13F015147F9318>I<387F8FF000FF13F8007F13F0380E01C0EB0380A21207EB0700A2
EA0387A2138EEA01CEA213CC120013DC1378A31370A313F05B1279EA7BC0EA7F806CC7FC
121E151E7F9318>I<383FFFF05AA2387001E0EB03C0EB078038000F00131E5B13F8485A
EA03C0485A380F0070121E5A5AB512F0A314147F9318>I<EB07E0131F137FEB780013E0
AB1201EA7FC0485AA26C7EEA01E01200AB1378EB7FE0131F130713247E9F18>I<126012
F0B3B012600424769F18>I<127CB4FC13C01203C67EAB7FEB7FC0EB3FE0A2EB7FC0EBF0
005BABEA03C012FF90C7FC127C13247E9F18>I<EA060CEA1F1EEA3FBEEAFBF8EAF1F0EA
60C00F067C9B18>I E /Fo 74 123 df<90381F83E09038F06E303901C07878380380F8
903800F03048EB7000A7B612803907007000B2383FE3FF1D20809F1B>11
D<133FEBE0C0EA01C0380381E0EA0701A290C7FCA6B512E0EA0700B2383FC3FC1620809F
19>I<EB3FE013E0EA01C1EA0381EA0700A8B5FCEA0700B2383FE7FC1620809F19>I<9038
1F81F89038F04F043901C07C06390380F80FEB00F05A0270C7FCA6B7FC3907007007B23A
3FE3FE3FE02320809F26>I<EA7038EAF87CEAFC7EA2EA743AEA0402A3EA0804A2EA1008
A2EA2010EA40200F0E7F9F17>34 D<127012F812FCA212741204A31208A21210A2122012
40060E7C9F0D>39 D<13401380EA01005A12061204120C5AA212381230A212701260A412
E0AC1260A412701230A212381218A27E120412067E7EEA008013400A2E7BA112>I<7E12
407E12307E1208120C7EA212077EA213801201A413C0AC1380A412031300A25A1206A25A
120812185A12205A5A0A2E7EA112>I<127012F012F8A212781208A31210A31220A21240
050E7C840D>44 D<EAFFF0A20C02808A0F>I<127012F8A3127005057C840D>I<EA03F0EA
0E1C487EEA1806EA380738700380A400F013C0AD00701380A3EA780700381300EA1806EA
1C0E6C5AEA03F0121F7E9D17>48 D<13801203120F12F31203B3A6EA07C0EAFFFE0F1E7C
9D17>I<EA03F0EA0C1CEA100E487E00401380128000F013C0EAF803A3EA200712001480
A2EB0F00130E5B5B5B13605B485A48C7FC000613405A5A00101380EA3FFF5AB5FC121E7E
9D17>I<EA03F0EA0C1CEA100EEA200F007813801307A2EA380F12001400A2131E131C13
70EA07F0EA003C130E130FEB0780A214C0122012F8A300F013801240EB0F00EA200EEA18
3CEA07F0121F7E9D17>I<1306A2130EA2131E132EA2134E138EA2EA010E1202A2120412
08A212101220A2124012C0B512F038000E00A7EBFFE0141E7F9D17>I<EA1803EA1FFE5B
5B13E00010C7FCA6EA11F0EA161CEA180EEA10071480EA0003A214C0A3127012F0A200E0
13801240EB0700EA20066C5AEA0838EA07E0121F7E9D17>I<137CEA0182EA0701380E03
80EA0C0712183838030090C7FC12781270A2EAF1F0EAF21CEAF406EAF807EB0380A200F0
13C0A51270A214801238EB07001218EA0C0E6C5AEA01F0121F7E9D17>I<1240387FFFE0
14C0A23840008038800100A21302485AA25B5BA25BA21360A213E05B1201A41203A76C5A
131F7E9D17>I<EA03F0EA0C0CEA1006EA3003382001801260A3127038780300123EEA3F
06EA1FC8EA0FF0EA03F8487EEA0C7EEA103F38300F80EA6007EB01C012C01300A31480EA
600100201300EA1002EA0C0CEA03F0121F7E9D17>I<EA03F0EA0E18487E487E13071270
EB038012F0A214C0A5EA7007A21238EA180BEA0E13EA03E338000380A3EB07001230EA78
06130EEA700CEA2018EA1070EA0FC0121F7E9D17>I<127012F8A312701200AA127012F8
A3127005147C930D>I<127012F8A312701200AA127012F012F8A212781208A31210A312
20A21240051D7C930D>I<5B497EA3497EA3EB09E0A3EB10F0A3EB2078A3497EA2EBC03E
EB801EA248B5FCEB000FA20002EB0780A348EB03C0A2120C001E14E039FF801FFE1F207F
9F22>65 D<B512E0380F0078141EA2801580A515005C141E147CEBFFF0EB007C141FEC0F
80EC07C0140315E0A515C014071580EC0F00143EB512F01B1F7E9E20>I<90380FE01090
38381C309038E002703803C00139078000F048C71270121E15305A1510127C127800F814
00A91278007C1410123CA26C1420A27E6C6C13406C6C13803900E00300EB380CEB0FF01C
217E9F21>I<B512F83807801EEC0780EC03C0EC01E0EC00F015701578A2153CA3153EA8
153CA2157C1578A215F0EC01E0EC03C0EC0780EC1E00B512F81F1F7F9E23>I<B6128038
0F000F14031401140015C01540A314401500A214C0130113FF130113001440A3EC0020A3
1540A315C01401EC0380140FB6FC1B1F7E9E1F>I<B61280380780071401A2140015C015
40A4EC2000A3146014E013FF138014601420A391C7FCA87FEAFFFE1A1F7F9E1E>I<9038
0FE0109038381C309038E002703803C00139078000F048C71270121E15305A1510127C12
7800F81400A7EC3FFEEC01F000781300127C123CA27EA27E6C7E3903C001703900E00230
9038380C1090380FF0001F217E9F24>I<39FFF07FF8390F000780AD90B5FCEB0007AF39
FFF07FF81D1F7E9E22>I<EAFFF0EA0F00B3ABEAFFF00C1F7E9E10>I<EAFFF8EA0F8090C7
FCB21402A414061404A2140C141C147CB512FC171F7E9E1C>76 D<B46CEB07FE000715C0
A2D805C0130BA2D804E01313A301701323A26D1343A36D1383A290380E0103A3EB0702A3
EB0384A2EB01C8A3EB00F0A21460121FD8FFE0EB7FFE271F7F9E2A>I<B4EB0FF8390F80
03E0EC0080EA0BC0EA09E0A2EA08F01378A27F7FA27FEB0780A2EB03C0EB01E0A2EB00F0
1478A2143C141EA2140F1407A214031401123E38FF80001D1F7E9E22>I<EB1FE0EB7038
3801C00E48487E39070003804814C0001EEB01E048EB00F0A2007C14F8A20078147800F8
147CA900781478007C14F8A2003C14F0003E1301001E14E06CEB03C06C14803903800700
3801E01E38007038EB1FE01E217E9F23>I<B512E0380F007C141E80EC0780A215C0A415
80A2EC0F00141E147CEBFFE090C8FCAEEAFFF01A1F7E9E1F>I<EB1FE0EB70383801C00E
48487E39070003804814C0001EEB01E0003E14F0003C1300007C14F8A20078147800F814
7CA900781478007C14F8A2003C14F0383E0781391E0841E0390F1023C000071480390390
17003801D01E3900783804EB1FF8EB001CEC0C0CEC0E1CEC0FF8A2140715F0EC01E01E29
7E9F23>I<B57E380F00F0143C8080A21580A41500A2141E5C14F0EBFF80EB01C0EB0070
A280143CA3143EA31504143F141FEC0F0839FFF00788C7EA01F01E207E9E21>I<3803F0
40380C0CC0EA1803EA3001EA6000A212E01440A36C13007E127CEA7F80EA3FF86CB4FC00
071380C613C0EB1FE013031301EB00F014707EA46C136014E06C13C038F8018038C60300
EA81FC14217E9F19>I<007FB512E038780F010060EB006000401420A200C01430008014
10A400001400B3497E3803FFFC1C1F7E9E21>I<39FFF00FF8390F0003E0EC0080B3A46C
EB01001380120314026C6C5A6C6C5AEB3830EB0FC01D207E9E22>I<39FFF003FE391F80
00F86CC7126015206C6C1340A36C6C1380A2EBE00100011400A23800F002A213F8EB7804
A26D5AA36D5AA2131F6D5AA2EB07C0A36D5AA36DC7FC1F207F9E22>I<3BFFF07FF81FF0
3B1F000FC007C06C903907800180170015C001805C00071502EC09E013C000035DEC19F0
1410D801E05CA2EC2078D800F05CA2EC403C01785CA2EC801E017C1460013C144090383D
000F133F6D5CA2011E1307010E91C7FCA2010C7F010413022C207F9E2F>I<12FFA212C0
B3B3A512FFA2082D7CA10D>91 D<EA0804EA1008EA2010A2EA4020A2EA8040A3EAB85CEA
FC7EA2EA7C3EEA381C0F0E7A9F17>I<12FFA21203B3B3A512FFA2082D80A10D>I<120812
101220A21240A21280A312B812FCA2127C1238060E7D9F0D>96 D<EA1FE0EA3030EA7818
131CEA300E1200A313FEEA078EEA1E0E1238127800F01310A3131E127838386720380F83
C014147E9317>I<121C12FC121CAA137CEA1D87381E0180EB00C0001C13E01470A21478
A6147014F014E0001E13C0381A018038198700EA107C15207E9F19>I<EA01FCEA0706EA
1C0F123813060078C7FC127012F0A61270127800381380A2381C0100EA0706EA01F81114
7F9314>I<EB01C0130F1301AAEA01F1EA070DEA0C03EA180112381278127012F0A61270
A21238EA1803120CEA070D3801F1F815207F9F19>I<EA03F0EA0E1C487E487EA21270EB
038012F0A2B5FC00F0C7FCA31270A26C1380A2381C0100EA0706EA01F811147F9314>I<
137CEA01C6EA030F1207EA0E061300A7EAFFF0EA0E00B2EA7FE01020809F0E>I<14E038
03E330EA0E3CEA1C1C38380E00EA780FA5EA380E6C5AEA1E38EA33E00020C7FCA21230A2
EA3FFE381FFF8014C0383001E038600070481330A4006013606C13C0381C03803803FC00
141F7F9417>I<121C12FC121CAA137C1386EA1D03001E1380A2121CAE38FF8FF014207E
9F19>I<1238127CA31238C7FCA6121C12FC121CB1EAFF80091F7F9E0C>I<13E0EA01F0A3
EA00E01300A61370EA07F012001370B3A31260EAF06013C0EA6180EA3F000C28829E0E>
I<121C12FC121CAAEB1FE0EB0780EB060013045B5B5B136013E0EA1DF0EA1E70EA1C3813
3C131C7F130F7F148014C038FF9FF014207E9F18>I<121C12FC121CB3ABEAFF8009207F
9F0C>I<391C3E03E039FCC30C30391D039038391E01E01CA2001C13C0AE3AFF8FF8FF80
21147E9326>I<EA1C7CEAFC86EA1D03001E1380A2121CAE38FF8FF014147E9319>I<EA01
F8EA070E381C0380383801C0A2387000E0A200F013F0A6007013E0A2383801C0A2381C03
8038070E00EA01F814147F9317>I<EA1C7CEAFD87381E018014C0381C00E014F0147014
78A6147014F014E0381E01C0EB0380381D8700EA1C7C90C7FCA8B47E151D7E9319>I<38
01F04038070CC0EA0E02EA1C03EA38011278127012F0A6127012781238EA1C03EA0C05EA
0709EA01F1EA0001A8EB0FF8151D7F9318>I<EA1CF0EAFD18EA1E3CA21318EA1C00AEEA
FFC00E147E9312>I<EA0FC8EA3038EA6018EAC008A3EAE000127CEA3FE0EA1FF0EA07F8
EA003CEA800E130612C0A21304EAE00CEAD818EA87E00F147F9312>I<1202A31206A212
0EA2123EEAFFF8EA0E00AB1304A5EA07081203EA01F00E1C7F9B12>I<381C0380EAFC1F
EA1C03AE1307120CEA061B3803E3F014147E9319>I<38FF83F8383E00E0001C13C06C13
80A338070100A21383EA0382A2EA01C4A213E4EA00E8A21370A3132015147F9318>I<39
FF9FE1FC393C078070391C030060EC8020000E1440A214C0D80704138014E0A239038861
001471A23801D032143A143E3800E01CA2EB6018EB40081E147F9321>I<38FF87F8381E
03C0380E0180EB0300EA0702EA0384EA01C813D8EA00F01370137813F8139CEA010E1202
EA060738040380000C13C0003C13E038FE07FC16147F9318>I<38FF83F8383E00E0001C
13C06C1380A338070100A21383EA0382A2EA01C4A213E4EA00E8A21370A31320A25BA3EA
F080A200F1C7FC1262123C151D7F9318>I<EA7FFFEA700E1260EA401C133813781370EA
00E0120113C0EA038012071301120E121EEA1C03EA3802EA7006130EEAFFFE10147F9314
>I E /Fp 13 122 df<DB1FFC14C00203B5EAC001021FECF003027FECFC07903B01FFFC
00FE0F010701C0EB1F9F4948C7EA07FFD93FF880494814004948157F485B4A153F4890C9
121F485A000F170F5B001F1707A2485A1803A2127FA24993C8FCA212FFAA041FB6128012
7FA27FDC0001EBC000123FA36C7EA26C7EA26C7E7E6C7F806C7F6D6C5CEB3FFCD90FFF5C
6D01C0EB1FBF010101FCEBFF1F6D6CB5EAFE0F021FECF8030203ECE0009126001FFEC9FC
413D7BBB4C>71 D<B6D8F803B612E0A426007FF0C70001EBC000B3A491B8FCA402F0C712
01B3A7B6D8F803B612E0A4433B7CBA4C>I<B612FEA426007FF0C9FCB3ADEF03C0A51707
1880A3170FA3171FA2173F177F17FF5E04071300163FB9FCA4323B7DBA3A>76
D<B500F00207B512E0808080D8007F92390007E0006E6F5A81017B7F81137901787F6E7E
6E7E81141F6E7E6E7F6E7F82806E7F6F7E6F7E826F7E816F13806F13C017E06F13F081EE
7FF8EE3FFC17FEEE1FFF827013837013C318E37013F382EF7FFBEF3FFFA283838383A283
83187F183FA201FC161FB500FC150F18071803A2433B7CBA4C>78
D<B600F80107B512E0A426007FF0C83807E000725AB3B3A3013F4C5AA280011F4CC7FCA2
6D6C151E0107163E6E5D6D6C5D6D6D13019026007FE0EB0FE0DA3FFCEB7FC0020FB65A02
034AC8FCDA007F13F003071380433C7DBA4A>85 D<EB3FFE48B512E0000714F8390FE007
FC9038F001FE486C6C7E6F7E82153F6C48806C5A6C5AC8FCA491B5FC131F90387FF83F38
03FF803807FC00EA0FF0485A123F485AA2485AA4157F6C7E15DF3A3FE0039FF03B1FF80F
0FFFE03807FFFE0001497E39003FE0002B267DA52F>97 D<13FE12FFA412071203B04AB4
FC021F13F0027F13FC9138FC03FE9039FFF000FF02C0EB3F8091C7EA1FC04915E0EE0FF0
17F8A2EE07FCA317FEA917FCA3160F17F817F0161F6D15E06EEB3FC06EEB7F80D9F9E0EB
FF009039F0FC07FE91387FFFF8D9E01F13E09026C003FEC7FC2F3C7DBB36>I<EA01E0EA
07F8487EA2487EA46C5AA26C5AEA01E0C8FCAB13FE127FA412071203B3AAB512F0A4143D
7DBC1A>105 D<903801FFC0010F13F8017F13FFD9FF807F3A03FE003FE0D807F8EB0FF0
48486D7EA248486D7E003F81A248486D7EA400FF1680A9007F1600A36C6C495AA2001F5D
6D1307000F5D6C6C495AD803FEEB3FE03A00FF80FF806DB5C7FC010F13F8010113C02926
7DA530>111 D<3901FC03F000FFEB0FFC4AB4FC91383C3F80EC707F00079038E0FFC000
035BEBFD80A201FFEB7F809138003F00151E92C7FC5BB3A3B512FCA422267DA528>114
D<90383FF0383903FFFE7848EBFFF8381FC00F383F0003003E13005A157812FCA27E6C14
0013C013FC387FFFF06C13FEECFF806C14C06C14E0000314F0C614F8011F13FCEB007FEC
07FE0070130100F01300157E7EA27E157C6C14FC6C14F890388001F09038F00FE000F9B5
12C0D8F07F130038C01FF81F267DA526>I<130FA55BA45BA25BA25B5A5A5A001FEBFFF0
B6FCA3000190C7FCB3153CA86C14781480017F13F090383FC1E090381FFFC06D13809038
01FE001E377EB626>I<B500F0EBFFFCA4D803FEC7EA1F806D15006C151E806C5DA26E13
7C017F14786E13F8013F5CECF001011F5CECF803010F5CA2ECFC0701075CECFE0F010391
C7FC6E5A6D131E15BE6D13BC15FC6E5AA36E5AA26E5AA26E5AA26E5AA2140F92C8FC5C14
1E0008133E007F133C147C38FF807814F8EB81F0EB83E06C485A387C1F80D83FFFC9FCEA
1FFCEA07F02E377EA533>121 D E end
TeXDict begin

1 0 bop 0 693 a Fp(GNU)33 b(History)f(Library)p 0 743
1950 17 v 1035 791 a Fo(Edition)16 b(2.1,)e(for)h Fn(History)f(Library)
g Fo(V)l(ersion)i(2.1.)1718 845 y(Marc)o(h)e(1996)0 2467
y Fm(Brian)23 b(F)-6 b(o)n(x,)23 b(F)-6 b(ree)23 b(Soft)n(w)n(are)f(F)
-6 b(oundation)0 2534 y(Chet)22 b(Ramey)-6 b(,)23 b(Case)e(W)-6
b(estern)23 b(Reserv)n(e)f(Univ)n(ersit)n(y)p 0 2570
1950 9 v eop
2 1 bop 0 320 a Fo(This)16 b(do)q(cumen)o(t)g(describ)q(es)h(the)f(GNU)
f(History)g(library)l(,)h(a)g(programming)e(to)q(ol)i(that)f(pro)o
(vides)h(a)f(consisten)o(t)0 382 y(user)g(in)o(terface)h(for)e
(recalling)j(lines)g(of)e(previously)h(t)o(yp)q(ed)g(input.)0
519 y(Published)h(b)o(y)f(the)f(F)l(ree)g(Soft)o(w)o(are)f(F)l
(oundation)0 582 y(675)g(Massac)o(h)o(usetts)g(Av)o(en)o(ue,)0
644 y(Cam)o(bridge,)h(MA)g(02139)f(USA)0 781 y(P)o(ermission)f(is)g
(gran)o(ted)f(to)f(mak)o(e)h(and)h(distribute)h(v)o(erbatim)e(copies)h
(of)f(this)h(man)o(ual)g(pro)o(vided)g(the)f(cop)o(yrigh)o(t)0
843 y(notice)k(and)f(this)h(p)q(ermission)h(notice)e(are)g(preserv)o
(ed)h(on)f(all)h(copies.)0 980 y(P)o(ermission)f(is)f(gran)o(ted)f(to)h
(cop)o(y)g(and)g(distribute)h(mo)q(di\014ed)h(v)o(ersions)e(of)f(this)i
(man)o(ual)f(under)h(the)f(conditions)0 1043 y(for)e(v)o(erbatim)g(cop)
o(ying,)h(pro)o(vided)h(that)d(the)i(en)o(tire)g(resulting)h(deriv)o
(ed)f(w)o(ork)f(is)h(distributed)h(under)f(the)g(terms)0
1105 y(of)i(a)g(p)q(ermission)h(notice)g(iden)o(tical)h(to)e(this)g
(one.)0 1242 y(P)o(ermission)20 b(is)g(gran)o(ted)f(to)g(cop)o(y)h(and)
f(distribute)i(translations)f(of)f(this)h(man)o(ual)f(in)o(to)h
(another)f(language,)0 1304 y(under)c(the)f(ab)q(o)o(v)o(e)g
(conditions)h(for)e(mo)q(di\014ed)j(v)o(ersions,)e(except)g(that)g
(this)g(p)q(ermission)i(notice)e(ma)o(y)g(b)q(e)h(stated)0
1366 y(in)h(a)f(translation)g(appro)o(v)o(ed)g(b)o(y)g(the)g(F)l
(oundation.)0 2661 y(Cop)o(yrigh)o(t)226 2660 y(c)214
2661 y Fl(\015)g Fo(1989,)f(1991)g(F)l(ree)h(Soft)o(w)o(are)f(F)l
(oundation,)h(Inc.)p eop
1 2 bop 0 -58 a Fo(Chapter)15 b(1:)k(Using)d(History)f(In)o(teractiv)o
(ely)1157 b(1)0 183 y Fk(1)41 b(Using)14 b(History)h(In)n(teractiv)n
(ely)62 380 y Fo(This)i(c)o(hapter)e(describ)q(es)j(ho)o(w)d(to)h(use)g
(the)g(GNU)g(History)f(Library)i(in)o(teractiv)o(ely)l(,)g(from)e(a)g
(user's)h(stand-)0 442 y(p)q(oin)o(t.)23 b(It)16 b(should)h(b)q(e)f
(considered)i(a)d(user's)h(guide.)23 b(F)l(or)15 b(information)h(on)g
(using)h(the)f(GNU)g(History)f(Library)0 505 y(in)h(y)o(our)f(o)o(wn)f
(programs,)g(see)i(Chapter)e(2)h([Programming)f(with)i(GNU)f(History],)
f(page)h(5.)0 747 y Fm(1.1)33 b(In)n(teractiv)n(e)16
b(History)g(Expansion)62 886 y Fo(The)e(History)f(library)h(pro)o
(vides)g(a)f(history)g(expansion)h(feature)f(that)g(is)g(similar)i(to)d
(the)i(history)f(expansion)0 948 y(pro)o(vided)j(b)o(y)f
Fn(csh)p Fo(.)20 b(This)15 b(section)h(describ)q(es)h(the)e(syn)o(tax)g
(used)g(to)g(manipulate)h(the)g(history)f(information.)62
1087 y(History)h(expansions)g(in)o(tro)q(duce)g(w)o(ords)f(from)g(the)h
(history)f(list)i(in)o(to)e(the)h(input)g(stream,)f(making)g(it)h(easy)
0 1150 y(to)g(rep)q(eat)g(commands,)h(insert)g(the)f(argumen)o(ts)g(to)
g(a)g(previous)h(command)f(in)o(to)h(the)f(curren)o(t)h(input)g(line,)h
(or)0 1212 y(\014x)d(errors)g(in)h(previous)g(commands)f(quic)o(kly)l
(.)62 1351 y(History)c(expansion)i(tak)o(es)d(place)i(in)h(t)o(w)o(o)d
(parts.)18 b(The)11 b(\014rst)g(is)h(to)f(determine)h(whic)o(h)g(line)h
(from)e(the)g(previous)0 1413 y(history)h(should)h(b)q(e)f(used)h
(during)f(substitution.)20 b(The)12 b(second)g(is)h(to)e(select)h(p)q
(ortions)g(of)g(that)f(line)i(for)f(inclusion)0 1475
y(in)o(to)f(the)h(curren)o(t)f(one.)18 b(The)12 b(line)h(selected)f
(from)f(the)g(previous)h(history)g(is)f(called)i(the)e
Fj(ev)o(en)o(t)p Fo(,)h(and)f(the)h(p)q(ortions)0 1538
y(of)h(that)f(line)j(that)e(are)f(acted)i(up)q(on)g(are)e(called)j
Fj(w)o(ords)p Fo(.)k(V)l(arious)13 b Fj(mo)q(di\014ers)j
Fo(are)d(a)o(v)m(ailable)i(to)d(manipulate)j(the)0 1600
y(selected)i(w)o(ords.)23 b(The)16 b(line)i(is)f(brok)o(en)f(in)o(to)g
(w)o(ords)f(in)i(the)g(same)f(fashion)g(that)g(Bash)g(do)q(es,)g(so)g
(that)g(sev)o(eral)0 1662 y(English)g(\(or)e(Unix\))h(w)o(ords)e
(surrounded)j(b)o(y)e(quotes)h(are)f(considered)i(as)e(one)h(w)o(ord.)k
(History)14 b(expansions)h(are)0 1725 y(in)o(tro)q(duced)h(b)o(y)g(the)
f(app)q(earance)h(of)e(the)i(history)f(expansion)h(c)o(haracter,)e
(whic)o(h)i(is)g(`)p Fn(!)p Fo(')e(b)o(y)h(default.)0
1950 y Fi(1.1.1)30 b(Ev)n(en)n(t)16 b(Designators)62
2089 y Fo(An)g(ev)o(en)o(t)f(designator)g(is)g(a)g(reference)h(to)f(a)g
(command)g(line)i(en)o(try)d(in)i(the)g(history)f(list.)0
2243 y Fn(!)216 b Fo(Start)14 b(a)g(history)h(substitution,)g(except)h
(when)f(follo)o(w)o(ed)g(b)o(y)g(a)f(space,)h(tab,)f(the)h(end)g(of)g
(the)g(line,)240 2305 y Fn(=)g Fo(or)g Fn(\()p Fo(.)0
2396 y Fn(!)p Fj(n)191 b Fo(Refer)16 b(to)e(command)h(line)i
Fj(n)p Fo(.)0 2488 y Fn(!-)p Fj(n)167 b Fo(Refer)16 b(to)e(the)i
(command)f Fj(n)g Fo(lines)i(bac)o(k.)0 2579 y Fn(!!)192
b Fo(Refer)16 b(to)e(the)i(previous)f(command.)20 b(This)c(is)g(a)f
(synon)o(ym)g(for)f(`)p Fn(!-1)p Fo('.)0 2670 y Fn(!)p
Fj(string)102 b Fo(Refer)16 b(to)e(the)i(most)e(recen)o(t)h(command)g
(starting)g(with)g Fj(string)p Fo(.)p eop
2 3 bop 0 -58 a Fo(2)1497 b(GNU)15 b(History)g(Library)0
183 y Fn(!?)p Fj(string)t Fn([?])240 246 y Fo(Refer)h(to)f(the)g(most)g
(recen)o(t)g(command)g(con)o(taining)h Fj(string)p Fo(.)21
b(The)15 b(trailing)i(`)p Fn(?)p Fo(')d(ma)o(y)h(b)q(e)h(omitted)240
308 y(if)g(the)f Fj(string)k Fo(is)d(follo)o(w)o(ed)f(immediately)i(b)o
(y)e(a)g(newline.)0 395 y Fn(^)p Fj(string1)t Fn(^)p
Fj(string2)t Fn(^)240 457 y Fo(Quic)o(k)i(Substitution.)22
b(Rep)q(eat)16 b(the)g(last)f(command,)h(replacing)h
Fj(string1)h Fo(with)e Fj(string2)p Fo(.)21 b(Equiv-)240
520 y(alen)o(t)15 b(to)g Fn(!!:s/)p Fj(string1)t Fn(/)p
Fj(string2)t Fn(/)p Fo(.)0 607 y Fn(!#)192 b Fo(The)15
b(en)o(tire)h(command)f(line)i(t)o(yp)q(ed)f(so)e(far.)0
816 y Fi(1.1.2)30 b(W)-5 b(ord)15 b(Designators)62 953
y Fo(W)l(ord)k(designators)g(are)f(used)i(to)e(select)i(desired)g(w)o
(ords)e(from)h(the)g(ev)o(en)o(t.)31 b(A)19 b(`)p Fn(:)p
Fo(')f(separates)g(the)h(ev)o(en)o(t)0 1015 y(sp)q(eci\014cation)e
(from)d(the)h(w)o(ord)f(designator.)20 b(It)15 b(can)g(b)q(e)g(omitted)
g(if)g(the)g(w)o(ord)g(designator)f(b)q(egins)i(with)g(a)e(`)p
Fn(^)p Fo(',)0 1077 y(`)p Fn($)p Fo(',)i(`)p Fn(*)p Fo(',)g(`)p
Fn(-)p Fo(',)g(or)g(`)p Fn(\045)p Fo('.)24 b(W)l(ords)17
b(are)f(n)o(um)o(b)q(ered)i(from)e(the)h(b)q(eginning)i(of)d(the)h
(line,)i(with)e(the)g(\014rst)g(w)o(ord)f(b)q(eing)0
1139 y(denoted)g(b)o(y)f(0)g(\(zero\).)k(W)l(ords)c(are)g(inserted)h
(in)o(to)f(the)g(curren)o(t)g(line)i(separated)e(b)o(y)g(single)i
(spaces.)0 1289 y Fn(0)e(\(zero\))57 b Fo(The)15 b Fn(0)p
Fo(th)g(w)o(ord.)20 b(F)l(or)14 b(man)o(y)h(applications,)h(this)g(is)g
(the)f(command)g(w)o(ord.)0 1376 y Fj(n)215 b Fo(The)15
b Fj(n)p Fo(th)h(w)o(ord.)0 1464 y Fn(^)216 b Fo(The)15
b(\014rst)g(argumen)o(t;)f(that)h(is,)g(w)o(ord)g(1.)0
1551 y Fn($)216 b Fo(The)15 b(last)h(argumen)o(t.)0 1639
y Fn(\045)216 b Fo(The)15 b(w)o(ord)g(matc)o(hed)g(b)o(y)g(the)g(most)g
(recen)o(t)g(`)p Fn(?)p Fj(string)t Fn(?)p Fo(')f(searc)o(h.)0
1726 y Fj(x)p Fn(-)p Fj(y)168 b Fo(A)15 b(range)g(of)g(w)o(ords;)f(`)p
Fn(-)p Fj(y)t Fo(')g(abbreviates)i(`)p Fn(0-)p Fj(y)t
Fo('.)0 1813 y Fn(*)216 b Fo(All)16 b(of)f(the)g(w)o(ords,)f(except)h
(the)g Fn(0)p Fo(th.)k(This)d(is)f(a)g(synon)o(ym)g(for)f(`)p
Fn(1-$)p Fo('.)k(It)d(is)h(not)e(an)h(error)f(to)h(use)240
1876 y(`)p Fn(*)p Fo(')f(if)i(there)f(is)h(just)f(one)g(w)o(ord)g(in)h
(the)f(ev)o(en)o(t;)g(the)g(empt)o(y)g(string)g(is)h(returned)f(in)h
(that)f(case.)0 1963 y Fj(x)s Fn(*)189 b Fo(Abbreviates)16
b(`)p Fj(x)p Fn(-$)p Fo(')0 2050 y Fj(x)p Fn(-)192 b
Fo(Abbreviates)16 b(`)p Fj(x)p Fn(-$)p Fo(')e(lik)o(e)i(`)p
Fj(x)s Fn(*)p Fo(',)e(but)i(omits)f(the)g(last)g(w)o(ord.)62
2200 y(If)i(a)g(w)o(ord)f(designator)g(is)i(supplied)h(without)d(an)h
(ev)o(en)o(t)g(sp)q(eci\014cation,)h(the)f(previous)h(command)e(is)h
(used)0 2262 y(as)e(the)g(ev)o(en)o(t.)0 2471 y Fi(1.1.3)30
b(Mo)r(di\014ers)62 2608 y Fo(After)20 b(the)f(optional)i(w)o(ord)e
(designator,)h(y)o(ou)f(can)h(add)g(a)g(sequence)h(of)e(one)h(or)f
(more)g(of)g(the)h(follo)o(wing)0 2670 y(mo)q(di\014ers,)c(eac)o(h)f
(preceded)i(b)o(y)e(a)g(`)p Fn(:)p Fo('.)p eop
3 4 bop 0 -58 a Fo(Chapter)15 b(1:)k(Using)d(History)f(In)o(teractiv)o
(ely)1157 b(3)0 183 y Fn(h)216 b Fo(Remo)o(v)o(e)15 b(a)g(trailing)h
(pathname)f(comp)q(onen)o(t,)g(lea)o(ving)h(only)g(the)f(head.)0
270 y Fn(t)216 b Fo(Remo)o(v)o(e)15 b(all)h(leading)h(pathname)e(comp)q
(onen)o(ts,)g(lea)o(ving)h(the)f(tail.)0 358 y Fn(r)216
b Fo(Remo)o(v)o(e)15 b(a)g(trailing)h(su\016x)f(of)g(the)g(form)g(`)p
Fn(.)p Fj(su\016x)s Fo(',)f(lea)o(ving)i(the)f(basename.)0
445 y Fn(e)216 b Fo(Remo)o(v)o(e)15 b(all)h(but)g(the)f(trailing)h
(su\016x.)0 532 y Fn(p)216 b Fo(Prin)o(t)15 b(the)g(new)h(command)f
(but)g(do)g(not)g(execute)h(it.)0 619 y Fn(s/)p Fj(old)r
Fn(/)p Fj(new)t Fn(/)240 681 y Fo(Substitute)k Fj(new)k
Fo(for)19 b(the)g(\014rst)g(o)q(ccurrence)i(of)e Fj(old)j
Fo(in)e(the)f(ev)o(en)o(t)h(line.)34 b(An)o(y)19 b(delimiter)j(ma)o(y)
240 744 y(b)q(e)e(used)g(in)g(place)g(of)f(`)p Fn(/)p
Fo('.)31 b(The)19 b(delimiter)i(ma)o(y)e(b)q(e)h(quoted)f(in)h
Fj(old)h Fo(and)f Fj(new)j Fo(with)d(a)f(single)240 806
y(bac)o(kslash.)28 b(If)18 b(`)p Fn(&)p Fo(')f(app)q(ears)h(in)h
Fj(new)p Fo(,)f(it)h(is)f(replaced)h(b)o(y)f Fj(old)p
Fo(.)28 b(A)18 b(single)h(bac)o(kslash)g(will)g(quote)240
868 y(the)c(`)p Fn(&)p Fo('.)k(The)d(\014nal)g(delimiter)h(is)e
(optional)h(if)g(it)f(is)h(the)f(last)g(c)o(haracter)g(on)g(the)g
(input)i(line.)0 955 y Fn(&)216 b Fo(Rep)q(eat)16 b(the)f(previous)h
(substitution.)0 1043 y Fn(g)216 b Fo(Cause)17 b(c)o(hanges)g(to)f(b)q
(e)i(applied)g(o)o(v)o(er)e(the)h(en)o(tire)h(ev)o(en)o(t)e(line.)27
b(Used)17 b(in)h(conjunction)g(with)f(`)p Fn(s)p Fo(',)240
1105 y(as)e(in)h Fn(gs/)p Fj(old)r Fn(/)p Fj(new)t Fn(/)p
Fo(,)f(or)f(with)i(`)p Fn(&)p Fo('.)p eop
4 5 bop 0 -58 a Fo(4)1497 b(GNU)15 b(History)g(Library)p
eop
5 6 bop 0 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g
(History)1039 b(5)0 183 y Fk(2)41 b(Programming)16 b(with)f(GNU)h
(History)62 370 y Fo(This)e(c)o(hapter)f(describ)q(es)i(ho)o(w)d(to)h
(in)o(terface)g(programs)f(that)h(y)o(ou)g(write)g(with)g(the)h(GNU)f
(History)g(Library)l(.)0 432 y(It)j(should)g(b)q(e)g(considered)h(a)f
(tec)o(hnical)h(guide.)22 b(F)l(or)15 b(information)h(on)f(the)h(in)o
(teractiv)o(e)g(use)g(of)f(GNU)g(History)l(,)0 495 y(see)g(Chapter)g(1)
g([Using)h(History)f(In)o(teractiv)o(ely],)g(page)g(1.)0
719 y Fm(2.1)33 b(In)n(tro)r(duction)17 b(to)e(History)62
856 y Fo(Man)o(y)j(programs)g(read)h(input)h(from)e(the)g(user)h(a)g
(line)h(at)f(a)f(time.)31 b(The)19 b(GNU)g(History)f(library)i(is)f
(able)0 918 y(to)e(k)o(eep)g(trac)o(k)f(of)h(those)g(lines,)i(asso)q
(ciate)e(arbitrary)g(data)g(with)g(eac)o(h)g(line,)j(and)d(utilize)i
(information)f(from)0 980 y(previous)e(lines)h(in)f(comp)q(osing)f(new)
h(ones.)62 1117 y(The)i(programmer)f(using)h(the)g(History)g(library)g
(has)g(a)o(v)m(ailable)h(functions)g(for)e(remem)o(b)q(ering)h(lines)i
(on)d(a)0 1180 y(history)f(list,)g(asso)q(ciating)g(arbitrary)g(data)f
(with)h(a)f(line,)j(remo)o(ving)d(lines)j(from)d(the)h(list,)g(searc)o
(hing)g(through)0 1242 y(the)h(list)h(for)e(a)h(line)h(con)o(taining)g
(an)f(arbitrary)f(text)h(string,)g(and)g(referencing)h(an)o(y)f(line)h
(in)g(the)f(list)h(directly)l(.)0 1304 y(In)d(addition,)h(a)e(history)h
Fj(expansion)h Fo(function)g(is)f(a)o(v)m(ailable)h(whic)o(h)g(pro)o
(vides)f(for)f(a)h(consisten)o(t)g(user)g(in)o(terface)0
1366 y(across)f(di\013eren)o(t)i(programs.)62 1503 y(The)i(user)g
(using)g(programs)f(written)g(with)h(the)g(History)f(library)i(has)e
(the)h(b)q(ene\014t)h(of)e(a)g(consisten)o(t)h(user)0
1566 y(in)o(terface)d(with)g(a)f(set)h(of)f(w)o(ell-kno)o(wn)h
(commands)g(for)f(manipulating)i(the)f(text)f(of)g(previous)h(lines)h
(and)f(using)0 1628 y(that)g(text)g(in)i(new)e(commands.)22
b(The)15 b(basic)i(history)e(manipulation)j(commands)d(are)g(similar)i
(to)e(the)h(history)0 1690 y(substitution)g(pro)o(vided)g(b)o(y)f
Fn(csh)p Fo(.)62 1827 y(If)g(the)g(programmer)e(desires,)i(he)g(can)g
(use)g(the)f(Readline)j(library)l(,)e(whic)o(h)h(includes)g(some)f
(history)f(manip-)0 1889 y(ulation)i(b)o(y)f(default,)h(and)f(has)g
(the)g(added)h(adv)m(an)o(tage)f(of)g(command)g(line)h(editing.)0
2114 y Fm(2.2)33 b(History)15 b(Storage)62 2251 y Fo(The)h(history)f
(list)h(is)g(an)f(arra)o(y)f(of)g(history)i(en)o(tries.)k(A)15
b(history)g(en)o(try)g(is)h(declared)g(as)f(follo)o(ws:)120
2377 y Fn(typedef)23 b(struct)g(_hist_entry)f({)168 2429
y(char)h(*line;)168 2481 y(char)g(*data;)120 2533 y(})h(HIST_ENTRY;)62
2670 y Fo(The)16 b(history)f(list)h(itself)g(migh)o(t)f(therefore)g(b)q
(e)h(declared)g(as)p eop
6 7 bop 0 -58 a Fo(6)1497 b(GNU)15 b(History)g(Library)120
183 y Fn(HIST_ENTRY)22 b(**the_history_list;)62 327 y
Fo(The)16 b(state)e(of)h(the)g(History)g(library)h(is)g(encapsulated)g
(in)o(to)f(a)g(single)i(structure:)120 460 y Fn(/*)24
b(A)f(structure)g(used)g(to)h(pass)f(the)h(current)f(state)g(of)g(the)h
(history)f(stuff)g(around.)g(*/)120 512 y(typedef)g(struct)g
(_hist_state)f({)168 564 y(HIST_ENTRY)g(**entries;)214
b(/*)23 b(Pointer)g(to)h(the)f(entries)g(themselves.)f(*/)168
616 y(int)h(offset;)453 b(/*)23 b(The)h(location)e(pointer)h(within)g
(this)h(array.)f(*/)168 668 y(int)g(length;)453 b(/*)23
b(Number)g(of)h(elements)f(within)g(this)g(array.)g(*/)168
719 y(int)g(size;)501 b(/*)23 b(Number)g(of)h(slots)f(allocated)g(to)g
(this)h(array.)f(*/)168 771 y(int)g(flags;)120 823 y(})h
(HISTORY_STATE;)62 967 y Fo(If)16 b(the)f(\015ags)g(mem)o(b)q(er)g
(includes)j Fn(HS_STIFLED)p Fo(,)13 b(the)i(history)h(has)f(b)q(een)h
(sti\015ed.)0 1250 y Fm(2.3)33 b(History)15 b(F)-6 b(unctions)62
1394 y Fo(This)16 b(section)g(describ)q(es)h(the)e(calling)i(sequence)f
(for)f(the)g(v)m(arious)h(functions)g(presen)o(t)f(in)h(GNU)f(History)l
(.)0 1661 y Fi(2.3.1)30 b(Initializing)15 b(History)g(and)g(State)g
(Managemen)n(t)62 1805 y Fo(This)j(section)g(describ)q(es)h(functions)f
(used)g(to)e(initialize)21 b(and)c(manage)g(the)g(state)g(of)g(the)g
(History)g(library)0 1867 y(when)f(y)o(ou)f(w)o(an)o(t)f(to)g(use)i
(the)f(history)g(functions)h(in)g(y)o(our)f(program.)1725
2049 y(F)l(unction)-1899 b Fh(void)20 b Fg(using)p 258
2049 18 3 v 20 w(history)j Ff(\(\))120 2111 y Fo(Begin)g(a)f(session)g
(in)h(whic)o(h)g(the)f(history)g(functions)g(migh)o(t)g(b)q(e)h(used.)
40 b(This)23 b(initializes)i(the)120 2173 y(in)o(teractiv)o(e)16
b(v)m(ariables.)1725 2355 y(F)l(unction)-1899 b Fh(HISTORY_STATE)21
b(*)e Fg(history)p 582 2355 V 21 w(get)p 680 2355 V 21
w(history)p 876 2355 V 21 w(state)j Ff(\(\))120 2417
y Fo(Return)16 b(a)f(structure)g(describing)i(the)e(curren)o(t)g(state)
f(of)h(the)g(input)i(history)l(.)1725 2599 y(F)l(unction)-1899
b Fh(void)20 b Fg(history)p 302 2599 V 20 w(set)p 393
2599 V 21 w(history)p 589 2599 V 21 w(state)j Ff(\()p
Fn(HISTORY_STATE)13 b(*state)p Ff(\))120 2661 y Fo(Set)i(the)h(state)e
(of)h(the)g(history)g(list)h(according)g(to)e Fj(state)p
Fo(.)p eop
7 8 bop 0 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g
(History)1039 b(7)0 183 y Fi(2.3.2)30 b(History)15 b(List)g(Managemen)n
(t)62 322 y Fo(These)i(functions)h(manage)e(individual)k(en)o(tries)d
(on)f(the)h(history)g(list,)g(or)f(set)h(parameters)e(managing)i(the)0
384 y(list)f(itself.)1725 552 y(F)l(unction)-1899 b Fh(void)20
b Fg(add)p 219 552 18 3 v 20 w(history)j Ff(\()p Fn(char)14
b(*string)p Ff(\))120 614 y Fo(Place)j Fj(string)k Fo(at)16
b(the)g(end)i(of)e(the)g(history)h(list.)25 b(The)17
b(asso)q(ciated)g(data)f(\014eld)h(\(if)g(an)o(y\))f(is)h(set)g(to)120
677 y Fn(NULL)p Fo(.)1725 844 y(F)l(unction)-1899 b Fh(HIST_ENTRY)21
b(*)e Fg(remo)n(v)n(e)p 509 844 V 20 w(history)k Ff(\()p
Fn(int)14 b(which)p Ff(\))120 907 y Fo(Remo)o(v)o(e)d(history)g(en)o
(try)g(at)g(o\013set)f Fj(whic)o(h)i Fo(from)f(the)g(history)l(.)19
b(The)11 b(remo)o(v)o(ed)g(elemen)o(t)h(is)g(returned)120
969 y(so)j(y)o(ou)g(can)g(free)g(the)h(line,)g(data,)e(and)i(con)o
(taining)g(structure.)1725 1137 y(F)l(unction)-1899 b
Fh(HIST_ENTRY)21 b(*)e Fg(replace)p 505 1137 V 22 w(history)p
702 1137 V 20 w(en)n(try)24 b Ff(\()p Fn(int)14 b(which,)g(char)h
(*line,)f(char)208 1199 y(*data)p Ff(\))120 1261 y Fo(Mak)o(e)d(the)i
(history)f(en)o(try)g(at)f(o\013set)h Fj(whic)o(h)h Fo(ha)o(v)o(e)e
Fj(line)17 b Fo(and)12 b Fj(data)p Fo(.)19 b(This)12
b(returns)g(the)h(old)g(en)o(try)e(so)120 1324 y(y)o(ou)i(can)g(disp)q
(ose)h(of)e(the)h(data.)19 b(In)13 b(the)g(case)g(of)f(an)h(in)o(v)m
(alid)i Fj(whic)o(h)p Fo(,)f(a)f Fn(NULL)f Fo(p)q(oin)o(ter)i(is)f
(returned.)1725 1491 y(F)l(unction)-1899 b Fh(void)20
b Fg(clear)p 245 1491 V 21 w(history)j Ff(\(\))120 1554
y Fo(Clear)15 b(the)h(history)f(list)h(b)o(y)f(deleting)i(all)f(the)f
(en)o(tries.)1725 1721 y(F)l(unction)-1899 b Fh(void)20
b Fg(sti\015e)p 245 1721 V 21 w(history)j Ff(\()p Fn(int)14
b(max)p Ff(\))120 1784 y Fo(Sti\015e)i(the)f(history)h(list,)f(remem)o
(b)q(ering)h(only)g(the)f(last)g Fj(max)j Fo(en)o(tries.)1725
1951 y(F)l(unction)-1899 b Fh(int)20 b Fg(unsti\015e)p
283 1951 V 21 w(history)i Ff(\(\))120 2014 y Fo(Stop)13
b(sti\015ing)h(the)f(history)l(.)19 b(This)14 b(returns)f(the)g
(previous)h(amoun)o(t)e(the)h(history)g(w)o(as)g(sti\015ed.)20
b(The)120 2076 y(v)m(alue)c(is)g(p)q(ositiv)o(e)g(if)g(the)f(history)g
(w)o(as)g(sti\015ed,)h(negativ)o(e)f(if)g(it)h(w)o(asn't.)1725
2244 y(F)l(unction)-1899 b Fh(int)20 b Fg(history)p 276
2244 V 20 w(is)p 334 2244 V 21 w(sti\015ed)k Ff(\(\))120
2306 y Fo(Returns)16 b(non-zero)f(if)h(the)f(history)g(is)h(sti\015ed,)
g(zero)f(if)g(it)h(is)g(not.)0 2531 y Fi(2.3.3)30 b(Information)14
b(Ab)r(out)h(the)g(History)g(List)62 2670 y Fo(These)h(functions)g
(return)f(information)g(ab)q(out)g(the)h(en)o(tire)f(history)g(list)h
(or)f(individual)j(list)f(en)o(tries.)p eop
8 9 bop 0 -58 a Fo(8)1497 b(GNU)15 b(History)g(Library)1725
183 y(F)l(unction)-1899 b Fh(HIST_ENTRY)21 b(**)e Fg(history)p
530 183 18 3 v 21 w(list)24 b Ff(\(\))120 246 y Fo(Return)e(a)e
Fn(NULL)h Fo(terminated)g(arra)o(y)f(of)g Fn(HIST_ENTRY)g
Fo(whic)o(h)i(is)f(the)g(curren)o(t)g(input)h(history)l(.)120
308 y(Elemen)o(t)16 b(0)f(of)f(this)i(list)g(is)g(the)f(b)q(eginning)i
(of)e(time.)20 b(If)c(there)f(is)h(no)f(history)l(,)g(return)g
Fn(NULL)p Fo(.)1725 482 y(F)l(unction)-1899 b Fh(int)20
b Fg(where)p 250 482 V 20 w(history)j Ff(\(\))120 544
y Fo(Returns)16 b(the)f(o\013set)f(of)h(the)g(curren)o(t)g(history)g
(elemen)o(t.)1725 719 y(F)l(unction)-1899 b Fh(HIST_ENTRY)21
b(*)e Fg(curren)n(t)p 512 719 V 21 w(history)k Ff(\(\))120
781 y Fo(Return)14 b(the)g(history)g(en)o(try)f(at)h(the)g(curren)o(t)f
(p)q(osition,)i(as)e(determined)j(b)o(y)d Fn(where_history)h(\(\))p
Fo(.)120 843 y(If)h(there)h(is)f(no)h(en)o(try)e(there,)h(return)g(a)g
Fn(NULL)g Fo(p)q(oin)o(ter.)1725 1018 y(F)l(unction)-1899
b Fh(HIST_ENTRY)21 b(*)e Fg(history)p 504 1018 V 21 w(get)j
Ff(\()p Fn(int)15 b(offset)p Ff(\))120 1080 y Fo(Return)g(the)g
(history)f(en)o(try)g(at)g(p)q(osition)i Fj(o\013set)p
Fo(,)d(starting)h(from)g Fn(history_base)p Fo(.)k(If)c(there)h(is)g(no)
120 1142 y(en)o(try)g(there,)g(or)f(if)i Fj(o\013set)f
Fo(is)h(greater)e(than)h(the)h(history)f(length,)g(return)g(a)g
Fn(NULL)g Fo(p)q(oin)o(ter.)1725 1316 y(F)l(unction)-1899
b Fh(int)20 b Fg(history)p 276 1316 V 20 w(total)p 412
1316 V 22 w(b)n(ytes)j Ff(\(\))120 1379 y Fo(Return)17
b(the)f(n)o(um)o(b)q(er)g(of)g(b)o(ytes)g(that)f(the)h(primary)g
(history)g(en)o(tries)h(are)e(using.)23 b(This)17 b(function)120
1441 y(returns)e(the)g(sum)h(of)e(the)i(lengths)f(of)g(all)h(the)g
(lines)g(in)g(the)g(history)l(.)0 1686 y Fi(2.3.4)30
b(Mo)n(ving)15 b(Around)h(the)f(History)g(List)62 1827
y Fo(These)h(functions)g(allo)o(w)f(the)g(curren)o(t)h(index)g(in)o(to)
f(the)h(history)f(list)h(to)e(b)q(e)i(set)f(or)g(c)o(hanged.)1725
2001 y(F)l(unction)-1899 b Fh(int)20 b Fg(history)p 276
2001 V 20 w(set)p 367 2001 V 21 w(p)r(os)h Ff(\()p Fn(int)15
b(pos)p Ff(\))120 2063 y Fo(Set)g(the)h(p)q(osition)g(in)g(the)f
(history)g(list)h(to)f Fj(p)q(os)p Fo(,)g(an)g(absolute)g(index)i(in)o
(to)e(the)g(list.)1725 2238 y(F)l(unction)-1899 b Fh(HIST_ENTRY)21
b(*)e Fg(previous)p 540 2238 V 20 w(history)k Ff(\(\))120
2300 y Fo(Bac)o(k)16 b(up)h(the)g(curren)o(t)f(history)h(o\013set)e(to)
h(the)h(previous)g(history)g(en)o(try)l(,)f(and)h(return)f(a)g(p)q(oin)
o(ter)120 2362 y(to)f(that)f(en)o(try)l(.)20 b(If)15
b(there)g(is)h(no)f(previous)h(en)o(try)l(,)f(return)g(a)g
Fn(NULL)g Fo(p)q(oin)o(ter.)1725 2537 y(F)l(unction)-1899
b Fh(HIST_ENTRY)21 b(*)e Fg(next)p 439 2537 V 21 w(history)k
Ff(\(\))120 2599 y Fo(Mo)o(v)o(e)c(the)h(curren)o(t)g(history)f
(o\013set)g(forw)o(ard)g(to)g(the)h(next)g(history)g(en)o(try)l(,)g
(and)g(return)g(the)g(a)120 2661 y(p)q(oin)o(ter)c(to)e(that)h(en)o
(try)l(.)k(If)d(there)f(is)h(no)f(next)g(en)o(try)l(,)g(return)g(a)g
Fn(NULL)g Fo(p)q(oin)o(ter.)p eop
9 10 bop 0 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g
(History)1039 b(9)0 183 y Fi(2.3.5)30 b(Searc)n(hing)15
b(the)h(History)f(List)62 320 y Fo(These)e(functions)g(allo)o(w)f
(searc)o(hing)h(of)f(the)g(history)g(list)h(for)f(en)o(tries)h(con)o
(taining)g(a)f(sp)q(eci\014c)i(string.)19 b(Searc)o(h-)0
382 y(ing)e(ma)o(y)g(b)q(e)g(p)q(erformed)g(b)q(oth)g(forw)o(ard)f(and)
h(bac)o(kw)o(ard)f(from)g(the)h(curren)o(t)f(history)h(p)q(osition.)26
b(The)17 b(searc)o(h)0 445 y(ma)o(y)d(b)q(e)i Fj(anc)o(hored)p
Fo(,)f(meaning)h(that)f(the)g(string)g(m)o(ust)g(matc)o(h)f(at)h(the)g
(b)q(eginning)i(of)e(the)h(history)f(en)o(try)l(.)1725
600 y(F)l(unction)-1899 b Fh(int)20 b Fg(history)p 276
600 18 3 v 20 w(searc)n(h)j Ff(\()p Fn(char)14 b(*string,)g(int)h
(direction)p Ff(\))120 662 y Fo(Searc)o(h)k(the)g(history)g(for)f
Fj(string)p Fo(,)i(starting)e(at)g(the)h(curren)o(t)g(history)g
(o\013set.)30 b(If)19 b Fj(direction)h Fn(<)f Fo(0,)120
724 y(then)14 b(the)f(searc)o(h)g(is)h(through)e(previous)i(en)o
(tries,)g(else)g(through)f(subsequen)o(t.)20 b(If)13
b Fj(string)k Fo(is)d(found,)120 786 y(then)f(the)g(curren)o(t)g
(history)g(index)i(is)e(set)g(to)f(that)h(history)g(en)o(try)l(,)f(and)
i(the)f(v)m(alue)h(returned)f(is)h(the)120 849 y(o\013set)h(in)i(the)f
(line)i(of)d(the)h(en)o(try)g(where)g Fj(string)k Fo(w)o(as)c(found.)22
b(Otherwise,)17 b(nothing)f(is)h(c)o(hanged,)120 911
y(and)e(a)g(-1)g(is)h(returned.)1725 1066 y(F)l(unction)-1899
b Fh(int)20 b Fg(history)p 276 1066 V 20 w(searc)n(h)p
452 1066 V 21 w(pre\014x)i Ff(\()p Fn(char)15 b(*string,)f(int)g
(direction)p Ff(\))120 1128 y Fo(Searc)o(h)22 b(the)h(history)f(for)f
Fj(string)p Fo(,)j(starting)e(at)f(the)i(curren)o(t)f(history)g
(o\013set.)40 b(The)22 b(searc)o(h)g(is)120 1190 y(anc)o(hored:)i(matc)
o(hing)18 b(lines)h(m)o(ust)d(b)q(egin)j(with)f Fj(string)p
Fo(.)26 b(If)17 b Fj(direction)i Fn(<)e Fo(0,)g(then)h(the)f(searc)o(h)
g(is)120 1253 y(through)e(previous)h(en)o(tries,)f(else)i(through)d
(subsequen)o(t.)21 b(If)16 b Fj(string)j Fo(is)d(found,)f(then)h(the)f
(curren)o(t)120 1315 y(history)20 b(index)i(is)e(set)g(to)g(that)f(en)o
(try)l(,)i(and)f(the)g(return)h(v)m(alue)g(is)g(0.)34
b(Otherwise,)22 b(nothing)e(is)120 1377 y(c)o(hanged,)15
b(and)h(a)e(-1)h(is)h(returned.)1725 1532 y(F)l(unction)-1899
b Fh(int)20 b Fg(history)p 276 1532 V 20 w(searc)n(h)p
452 1532 V 21 w(p)r(os)h Ff(\()p Fn(char)15 b(*string,)f(int)g
(direction,)g(int)h(pos)p Ff(\))120 1594 y Fo(Searc)o(h)d(for)f
Fj(string)k Fo(in)d(the)g(history)f(list,)i(starting)e(at)g
Fj(p)q(os)p Fo(,)h(an)f(absolute)h(index)h(in)o(to)e(the)h(list.)19
b(If)12 b Fj(di-)120 1656 y(rection)g Fo(is)h(negativ)o(e,)f(the)g
(searc)o(h)g(pro)q(ceeds)h(bac)o(kw)o(ard)e(from)g Fj(p)q(os)p
Fo(,)i(otherwise)f(forw)o(ard.)17 b(Returns)120 1719
y(the)e(absolute)h(index)g(of)f(the)g(history)h(elemen)o(t)f(where)h
Fj(string)j Fo(w)o(as)14 b(found,)h(or)g(-1)g(otherwise.)0
1912 y Fi(2.3.6)30 b(Managing)14 b(the)i(History)f(File)62
2049 y Fo(The)f(History)g(library)h(can)f(read)g(the)g(history)g(from)f
(and)i(write)f(it)g(to)f(a)h(\014le.)20 b(This)15 b(section)g(do)q
(cumen)o(ts)f(the)0 2111 y(functions)i(for)f(managing)g(a)f(history)i
(\014le.)1725 2266 y(F)l(unction)-1899 b Fh(int)20 b
Fg(read)p 211 2266 V 20 w(history)i Ff(\()p Fn(char)15
b(*filename)p Ff(\))120 2328 y Fo(Add)i(the)f(con)o(ten)o(ts)g(of)g
Fj(\014lename)k Fo(to)c(the)h(history)f(list,)h(a)f(line)i(at)e(a)g
(time.)24 b(If)17 b Fj(\014lename)j Fo(is)d Fn(NULL)p
Fo(,)120 2391 y(then)f(read)f(from)f(`)p Fn(~/.history)p
Fo('.)k(Returns)e(0)e(if)i(successful,)g(or)f(errno)g(if)h(not.)1725
2545 y(F)l(unction)-1899 b Fh(int)20 b Fg(read)p 211
2545 V 20 w(history)p 406 2545 V 20 w(range)i Ff(\()p
Fn(char)15 b(*filename,)e(int)i(from,)g(int)f(to)p Ff(\))120
2608 y Fo(Read)j(a)e(range)h(of)f(lines)j(from)d Fj(\014lename)p
Fo(,)i(adding)f(them)g(to)f(the)h(history)g(list.)23
b(Start)15 b(reading)i(at)120 2670 y(line)f Fj(from)f
Fo(and)g(end)g(at)f Fj(to)p Fo(.)19 b(If)d Fj(from)e
Fo(is)h(zero,)f(start)g(at)g(the)h(b)q(eginning.)22 b(If)15
b Fj(to)i Fo(is)e(less)g(than)g Fj(from)p Fo(,)p eop
10 11 bop 0 -58 a Fo(10)1474 b(GNU)15 b(History)g(Library)120
183 y(then)i(read)g(un)o(til)h(the)f(end)g(of)g(the)g(\014le.)25
b(If)17 b Fj(\014lename)k Fo(is)c Fn(NULL)p Fo(,)f(then)i(read)e(from)g
(`)p Fn(~/.history)p Fo('.)120 246 y(Returns)g(0)f(if)g(successful,)h
(or)f Fn(errno)g Fo(if)g(not.)1725 410 y(F)l(unction)-1899
b Fh(int)20 b Fg(write)p 229 410 18 3 v 22 w(history)i
Ff(\()p Fn(char)15 b(*filename)p Ff(\))120 472 y Fo(W)l(rite)20
b(the)g(curren)o(t)f(history)h(to)f Fj(\014lename)p Fo(,)i(o)o(v)o
(erwriting)f Fj(\014lename)j Fo(if)d(necessary)l(.)34
b(If)20 b Fj(\014lename)120 534 y Fo(is)d Fn(NULL)p Fo(,)g(then)g
(write)g(the)g(history)g(list)h(to)e(`)p Fn(~/.history)p
Fo('.)23 b(V)l(alues)18 b(returned)g(are)e(as)h(in)h
Fn(read_)120 596 y(history)c(\(\))p Fo(.)1725 760 y(F)l(unction)-1899
b Fh(int)20 b Fg(app)r(end)p 285 760 V 19 w(history)j
Ff(\()p Fn(int)14 b(nelements,)g(char)h(*filename)p Ff(\))120
823 y Fo(App)q(end)i(the)e(last)g Fj(nelemen)o(ts)j Fo(of)d(the)g
(history)g(list)h(to)f Fj(\014lename)p Fo(.)1725 987
y(F)l(unction)-1899 b Fh(int)20 b Fg(history)p 276 987
V 20 w(truncate)p 507 987 V 21 w(\014le)k Ff(\()p Fn(char)14
b(*filename,)g(int)h(nlines)p Ff(\))120 1049 y Fo(T)l(runcate)g(the)h
(history)f(\014le)h Fj(\014lename)p Fo(,)g(lea)o(ving)g(only)g(the)f
(last)g Fj(nlines)k Fo(lines.)0 1263 y Fi(2.3.7)30 b(History)15
b(Expansion)62 1401 y Fo(These)h(functions)g(implemen)o(t)g
Fn(csh)p Fo(-lik)o(e)g(history)g(expansion.)1725 1565
y(F)l(unction)-1899 b Fh(int)20 b Fg(history)p 276 1565
V 20 w(expand)j Ff(\()p Fn(char)14 b(*string,)g(char)h(**output)p
Ff(\))120 1627 y Fo(Expand)20 b Fj(string)p Fo(,)f(placing)i(the)e
(result)h(in)o(to)f Fj(output)p Fo(,)h(a)f(p)q(oin)o(ter)h(to)e(a)h
(string)h(\(see)f(Section)h(1.1)120 1689 y([History)15
b(In)o(teraction],)f(page)h(1\).)20 b(Returns:)120 1840
y Fn(0)216 b Fo(If)21 b(no)g(expansions)h(to)q(ok)e(place)h(\(or,)g(if)
h(the)f(only)g(c)o(hange)g(in)h(the)f(text)f(w)o(as)g(the)360
1902 y(de-slashifying)d(of)e(the)g(history)h(expansion)g(c)o
(haracter\);)120 1991 y Fn(1)216 b Fo(if)16 b(expansions)g(did)g(tak)o
(e)e(place;)120 2080 y Fn(-1)192 b Fo(if)16 b(there)f(w)o(as)f(an)h
(error)g(in)h(expansion;)120 2168 y Fn(2)216 b Fo(if)14
b(the)f(returned)h(line)h(should)f(only)g(b)q(e)f(displa)o(y)o(ed,)i
(but)e(not)g(executed,)h(as)f(with)h(the)360 2231 y Fn(:p)h
Fo(mo)q(di\014er)h(\(see)f(Section)h(1.1.3)e([Mo)q(di\014ers],)h(page)g
(2\).)120 2381 y(If)g(an)h(error)e(o)q(curred)i(in)g(expansion,)f(then)
h Fj(output)g Fo(con)o(tains)f(a)g(descriptiv)o(e)i(error)d(message.)
1725 2545 y(F)l(unction)-1899 b Fh(char)20 b(*)f Fg(history)p
347 2545 V 21 w(arg)p 449 2545 V 19 w(extract)24 b Ff(\()p
Fn(int)14 b(first,)h(int)g(last,)f(char)h(*string)p Ff(\))120
2608 y Fo(Extract)10 b(a)h(string)g(segmen)o(t)g(consisting)h(of)f(the)
g Fj(\014rst)h Fo(through)f Fj(last)h Fo(argumen)o(ts)e(presen)o(t)h
(in)h Fj(string)p Fo(.)120 2670 y(Argumen)o(ts)j(are)g(brok)o(en)g(up)g
(as)g(in)h(Bash.)p eop
11 12 bop 0 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g
(History)1017 b(11)1725 183 y(F)l(unction)-1899 b Fh(char)20
b(*)f Fg(get)p 249 183 18 3 v 21 w(history)p 445 183
V 20 w(ev)n(en)n(t)25 b Ff(\()p Fn(char)14 b(*string,)g(int)h(*cindex,)
f(int)h(qchar)p Ff(\))120 246 y Fo(Returns)e(the)f(text)f(of)h(the)g
(history)g(ev)o(en)o(t)f(b)q(eginning)k(at)c Fj(string)16
b Fn(+)c Fj(*cindex)p Fo(.)20 b Fj(*cindex)c Fo(is)d(mo)q(di\014ed)120
308 y(to)h(p)q(oin)o(t)h(to)f(after)h(the)f(ev)o(en)o(t)h(sp)q
(eci\014er.)21 b(A)o(t)15 b(function)g(en)o(try)l(,)f
Fj(cindex)20 b Fo(p)q(oin)o(ts)15 b(to)f(the)h(index)h(in)o(to)120
370 y Fj(string)h Fo(where)d(the)f(history)h(ev)o(en)o(t)f(sp)q
(eci\014cation)i(b)q(egins.)20 b Fj(qc)o(har)d Fo(is)c(a)g(c)o
(haracter)g(that)g(is)h(allo)o(w)o(ed)120 432 y(to)h(end)g(the)h(ev)o
(en)o(t)f(sp)q(eci\014cation)i(in)f(addition)g(to)f(the)g(\\normal")g
(terminating)g(c)o(haracters.)1725 587 y(F)l(unction)-1899
b Fh(char)20 b(**)f Fg(history)p 373 587 V 21 w(tok)n(enize)25
b Ff(\()p Fn(char)14 b(*string)p Ff(\))120 649 y Fo(Return)k(an)f(arra)
o(y)f(of)h(tok)o(ens)f(parsed)i(out)e(of)h Fj(string)p
Fo(,)g(m)o(uc)o(h)h(as)e(the)i(shell)g(migh)o(t.)26 b(The)17
b(tok)o(ens)120 711 y(are)c(split)h(on)f(white)g(space)h(and)f(on)g
(the)g(c)o(haracters)f Fn(\(\)<>;&|$)p Fo(,)g(and)h(shell)i(quoting)e
(con)o(v)o(en)o(tions)120 774 y(are)i(ob)q(ey)o(ed.)0
983 y Fm(2.4)33 b(History)15 b(V)-6 b(ariables)62 1120
y Fo(This)16 b(section)g(describ)q(es)h(the)e(externally)h(visible)i(v)
m(ariables)e(exp)q(orted)g(b)o(y)f(the)g(GNU)g(History)g(Library)l(.)
1736 1275 y(V)l(ariable)-1899 b Fh(int)20 b Fg(history)p
276 1275 V 20 w(base)120 1337 y Fo(The)15 b(logical)i(o\013set)d(of)h
(the)g(\014rst)g(en)o(try)g(in)h(the)f(history)g(list.)1736
1491 y(V)l(ariable)-1899 b Fh(int)20 b Fg(history)p 276
1491 V 20 w(length)120 1554 y Fo(The)15 b(n)o(um)o(b)q(er)h(of)f(en)o
(tries)g(curren)o(tly)h(stored)f(in)h(the)f(history)g(list.)1736
1708 y(V)l(ariable)-1899 b Fh(int)20 b Fg(max)p 208 1708
V 19 w(input)p 360 1708 V 21 w(history)120 1771 y Fo(The)12
b(maxim)o(um)g(n)o(um)o(b)q(er)g(of)f(history)h(en)o(tries.)19
b(This)12 b(m)o(ust)f(b)q(e)h(c)o(hanged)g(using)h Fn(stifle_history)
120 1833 y(\(\))p Fo(.)1736 1987 y(V)l(ariable)-1899
b Fh(char)20 b Fg(history)p 302 1987 V 20 w(expansion)p
569 1987 V 21 w(c)n(har)120 2050 y Fo(The)15 b(c)o(haracter)g(that)f
(starts)g(a)h(history)g(ev)o(en)o(t.)20 b(The)15 b(default)h(is)g(`)p
Fn(!)p Fo('.)1736 2204 y(V)l(ariable)-1899 b Fh(char)20
b Fg(history)p 302 2204 V 20 w(subst)p 454 2204 V 20
w(c)n(har)120 2266 y Fo(The)13 b(c)o(haracter)e(that)h(in)o(v)o(ok)o
(es)g(w)o(ord)g(substitution)h(if)g(found)g(at)e(the)i(start)e(of)h(a)g
(line.)21 b(The)12 b(default)120 2329 y(is)k(`)p Fn(^)p
Fo('.)1736 2483 y(V)l(ariable)-1899 b Fh(char)20 b Fg(history)p
302 2483 V 20 w(commen)n(t)p 552 2483 V 19 w(c)n(har)120
2545 y Fo(During)12 b(tok)o(enization,)h(if)f(this)h(c)o(haracter)e(is)
i(seen)f(as)g(the)g(\014rst)f(c)o(haracter)g(of)h(a)g(w)o(ord,)f(then)i
(it)f(and)120 2608 y(all)19 b(subsequen)o(t)g(c)o(haracters)e(up)h(to)g
(a)f(newline)j(are)e(ignored,)h(suppressing)g(history)f(expansion)120
2670 y(for)d(the)g(remainder)h(of)f(the)g(line.)21 b(This)16
b(is)g(disabled)h(b)o(y)e(default.)p eop
12 13 bop 0 -58 a Fo(12)1474 b(GNU)15 b(History)g(Library)1736
183 y(V)l(ariable)-1899 b Fh(char)20 b(*)f Fg(history)p
347 183 18 3 v 21 w(no)p 429 183 V 20 w(expand)p 629
183 V 20 w(c)n(hars)120 246 y Fo(The)f(list)g(of)g(c)o(haracters)e
(whic)o(h)j(inhibit)h(history)d(expansion)i(if)f(found)g(immediately)h
(follo)o(wing)120 308 y Fj(history)p 261 308 14 2 v 16
w(expansion)p 472 308 V 18 w(c)o(har)p Fo(.)g(The)d(default)f(is)h
(whitespace)g(and)g(`)p Fn(=)p Fo('.)1736 469 y(V)l(ariable)-1899
b Fh(char)20 b(*)f Fg(history)p 347 469 18 3 v 21 w(searc)n(h)p
524 469 V 20 w(delimiter)p 768 469 V 23 w(c)n(hars)120
532 y Fo(The)d(list)g(of)f(additional)i(c)o(haracters)d(whic)o(h)i(can)
g(delimit)h(a)e(history)g(searc)o(h)h(string,)f(in)h(addition)120
594 y(to)f(whitespace,)g(`)p Fn(:)p Fo(')f(and)i(`)p
Fn(?)p Fo(')e(in)i(the)f(case)h(of)e(a)h(substring)h(searc)o(h.)k(The)
15 b(default)h(is)g(empt)o(y)l(.)1736 755 y(V)l(ariable)-1899
b Fh(int)20 b Fg(history)p 276 755 V 20 w(quotes)p 458
755 V 21 w(inhibit)p 642 755 V 23 w(expansion)120 818
y Fo(If)e(non-zero,)f(single-quoted)i(w)o(ords)e(are)g(not)g(scanned)h
(for)e(the)i(history)f(expansion)h(c)o(haracter.)120
880 y(The)d(default)h(v)m(alue)h(is)e(0.)1736 1041 y(V)l(ariable)-1899
b Fh(Function)20 b(*)g Fg(history)p 452 1041 V 20 w(inhibit)p
635 1041 V 23 w(expansion)p 905 1041 V 21 w(function)120
1104 y Fo(This)f(should)h(b)q(e)f(set)f(to)g(the)h(address)f(of)g(a)h
(function)g(that)f(tak)o(es)f(t)o(w)o(o)h(argumen)o(ts:)25
b(a)19 b Fn(char)14 b(*)120 1166 y Fo(\()p Fj(string)t
Fo(\))c(and)i(an)f(in)o(teger)g(index)h(in)o(to)f(that)g(string)g(\()p
Fj(i)r Fo(\).)19 b(It)11 b(should)h(return)f(a)g(non-zero)g(v)m(alue)h
(if)g(the)120 1228 y(history)17 b(expansion)h(starting)e(at)h
Fj(string[i])h Fo(should)g(not)f(b)q(e)h(p)q(erformed;)f(zero)g(if)h
(the)f(expansion)120 1290 y(should)i(b)q(e)f(done.)28
b(It)18 b(is)g(in)o(tended)h(for)e(use)h(b)o(y)g(applications)h(lik)o
(e)g(Bash)f(that)f(use)h(the)g(history)120 1353 y(expansion)e(c)o
(haracter)f(for)f(additional)j(purp)q(oses.)j(By)c(default,)f(this)h(v)
m(ariable)g(is)g(set)f(to)f(NULL.)0 1576 y Fm(2.5)33
b(History)15 b(Programming)h(Example)62 1713 y Fo(The)g(follo)o(wing)g
(program)e(demonstrates)g(simple)j(use)e(of)g(the)g(GNU)g(History)g
(Library)l(.)120 1840 y Fn(main)23 b(\(\))120 1892 y({)168
1944 y(char)g(line[1024],)f(*t;)168 1995 y(int)h(len,)g(done)h(=)g(0;)
168 2099 y(line[0])f(=)g(0;)168 2203 y(using_history)f(\(\);)168
2255 y(while)h(\(!done\))215 2307 y({)263 2359 y(printf)g(\("history$)g
("\);)263 2411 y(fflush)g(\(stdout\);)263 2462 y(t)h(=)g(fgets)f
(\(line,)g(sizeof)g(\(line\))g(-)h(1,)f(stdin\);)263
2514 y(if)h(\(t)f(&&)h(*t\))311 2566 y({)359 2618 y(len)f(=)h(strlen)f
(\(t\);)359 2670 y(if)g(\(t[len)g(-)h(1])g(==)f('\\n'\))p
eop
13 14 bop 0 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g
(History)1017 b(13)406 183 y Fn(t[len)24 b(-)f(1])h(=)g('\\0';)311
235 y(})263 339 y(if)g(\(!t\))311 391 y(strcpy)f(\(line,)g("quit"\);)
263 495 y(if)h(\(line[0]\))311 546 y({)359 598 y(char)f(*expansion;)359
650 y(int)g(result;)359 754 y(result)g(=)g(history_expand)f(\(line,)h
(&expansion\);)359 806 y(if)g(\(result\))406 858 y(fprintf)g(\(stderr,)
g("\045s\\n",)g(expansion\);)359 962 y(if)g(\(result)g(<)h(0)g(||)f
(result)g(==)h(2\))406 1013 y({)454 1065 y(free)f(\(expansion\);)454
1117 y(continue;)406 1169 y(})359 1273 y(add_history)f(\(expansion\);)
359 1325 y(strncpy)h(\(line,)g(expansion,)f(sizeof)h(\(line\))g(-)h
(1\);)359 1377 y(free)f(\(expansion\);)311 1429 y(})263
1532 y(if)h(\(strcmp)f(\(line,)g("quit"\))g(==)g(0\))311
1584 y(done)g(=)h(1;)263 1636 y(else)f(if)h(\(strcmp)f(\(line,)g
("save"\))g(==)h(0\))311 1688 y(write_history)e(\("history_file"\);)263
1740 y(else)h(if)h(\(strcmp)f(\(line,)g("read"\))g(==)h(0\))311
1792 y(read_history)e(\("history_file"\);)263 1844 y(else)h(if)h
(\(strcmp)f(\(line,)g("list"\))g(==)h(0\))311 1896 y({)359
1947 y(register)e(HIST_ENTRY)h(**the_list;)359 1999 y(register)f(int)i
(i;)359 2103 y(the_list)e(=)i(history_list)e(\(\);)359
2155 y(if)h(\(the_list\))406 2207 y(for)h(\(i)f(=)h(0;)g(the_list[i];)e
(i++\))454 2259 y(printf)h(\("\045d:)g(\045s\\n",)g(i)h(+)g
(history_base,)e(the_list[i]->line\);)311 2311 y(})263
2363 y(else)h(if)h(\(strncmp)f(\(line,)g("delete",)g(6\))g(==)h(0\))311
2414 y({)359 2466 y(int)f(which;)359 2518 y(if)g(\(\(sscanf)g(\(line)g
(+)h(6,)f("\045d",)h(&which\)\))e(==)i(1\))406 2570 y({)454
2622 y(HIST_ENTRY)f(*entry)g(=)g(remove_history)f(\(which\);)p
eop
14 15 bop 0 -58 a Fo(14)1474 b(GNU)15 b(History)g(Library)454
183 y Fn(if)24 b(\(!entry\))502 235 y(fprintf)f(\(stderr,)f("No)i(such)
f(entry)g(\045d\\n",)g(which\);)454 287 y(else)502 339
y({)550 391 y(free)g(\(entry->line\);)550 443 y(free)g(\(entry\);)502
495 y(})406 546 y(})359 598 y(else)406 650 y({)454 702
y(fprintf)g(\(stderr,)g("non-numeric)f(arg)h(given)h(to)f
(`delete'\\n"\);)406 754 y(})311 806 y(})215 858 y(})120
910 y(})p eop
15 16 bop 0 -58 a Fo(App)q(endix)17 b(A:)e(Concept)g(Index)1346
b(15)0 183 y Fk(App)r(endix)13 b(A)41 b(Concept)15 b(Index)0
430 y Fm(A)0 496 y Fe(anc)o(hored)f(searc)o(h)5 b Fd(.)i(.)f(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)18
b Fe(9)0 604 y Fm(E)0 670 y Fe(ev)o(en)o(t)13 b(designators)g
Fd(.)6 b(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g
(.)23 b Fe(1)1015 430 y Fm(H)1015 496 y Fe(history)15
b(ev)o(en)o(ts)5 b Fd(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)18 b Fe(1)1015 554
y(history)d(expansion)8 b Fd(.)h(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)21 b Fe(1)1015 612 y(History)14
b(Searc)o(hing)7 b Fd(.)h(.)e(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)20 b Fe(9)p eop
16 17 bop 0 -58 a Fo(16)1474 b(GNU)15 b(History)g(Library)p
eop
17 18 bop 0 -58 a Fo(App)q(endix)17 b(B:)e(F)l(unction)h(and)g(V)l
(ariable)g(Index)1069 b(17)0 183 y Fk(App)r(endix)13
b(B)41 b(F)-7 b(unction)15 b(and)g(V)-7 b(ariable)14
b(Index)0 430 y Fm(A)0 496 y Fc(add)p 62 496 12 2 v 13
w(history)8 b Fd(.)s(.)e(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)20 b Fe(7)0 554 y
Fc(append)p 122 554 V 12 w(history)9 b Fd(.)d(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)24 b Fe(10)0
679 y Fm(C)0 745 y Fc(clear)p 102 745 V 12 w(history)5
b Fd(.)t(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)18 b Fe(7)0 803 y Fc(current)p 142 803
V 11 w(history)9 b Fd(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)24 b Fe(8)0 928 y Fm(G)0 994 y Fc(get)p
62 994 V 13 w(history)p 215 994 V 11 w(event)9 b Fd(.)d(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)23 b Fe(11)0 1119
y Fm(H)0 1185 y Fc(history)p 142 1185 V 11 w(arg)p 213
1185 V 13 w(extract)8 b Fd(.)t(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)21 b Fe(10)0 1243 y Fc(history)p 142 1243 V 11 w(base)e
Fd(.)6 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)20 b Fe(11)0 1301 y Fc(history)p 142 1301
V 11 w(comment)p 293 1301 V 12 w(char)g Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)h(.)21 b Fe(11)0 1359 y Fc(history)p 142 1359
V 11 w(expand)10 b Fd(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
h(.)f(.)g(.)g(.)g(.)24 b Fe(10)0 1418 y Fc(history)p
142 1418 V 11 w(expansion)p 333 1418 V 11 w(char)17 b
Fd(.)7 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)19 b Fe(11)0 1476
y Fc(history)p 142 1476 V 11 w(get)8 b Fd(.)d(.)h(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)20
b Fe(8)0 1534 y Fc(history)p 142 1534 V 11 w(get)p 213
1534 V 13 w(history)p 366 1534 V 12 w(state)t Fd(.)t(.)6
b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)17 b Fe(6)0 1592 y Fc(history)p
142 1592 V 11 w(inhibit)p 293 1592 V 12 w(expansion)p
484 1592 V 10 w(function)k Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)23 b Fe(12)0 1650 y Fc(history)p 142 1650 V 11
w(is)p 193 1650 V 14 w(stifled)7 b Fd(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)23 b Fe(7)0 1708 y Fc(history)p
142 1708 V 11 w(length)16 b Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)18 b Fe(11)0 1766 y Fc(history)p
142 1766 V 11 w(list)7 b Fd(.)t(.)g(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)19 b Fe(8)0 1824
y Fc(history)p 142 1824 V 11 w(no)p 193 1824 V 14 w(expand)p
327 1824 V 12 w(chars)f Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)20
b Fe(12)0 1883 y Fc(history)p 142 1883 V 11 w(quotes)p
273 1883 V 12 w(inhibit)p 425 1883 V 12 w(expansion)14
b Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)17
b Fe(12)0 1941 y Fc(history)p 142 1941 V 11 w(search)t
Fd(.)t(.)6 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)17 b Fe(9)0 1999 y Fc(history)p 142 1999 V
11 w(search)p 273 1999 V 12 w(delimiter)p 465 1999 V
11 w(chars)h Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
(.)g(.)g(.)g(.)20 b Fe(12)0 2057 y Fc(history)p 142 2057
V 11 w(search)p 273 2057 V 12 w(pos)9 b Fd(.)d(.)g(.)g(.)g(.)h(.)f(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)23 b Fe(9)0 2115 y Fc(history)p
142 2115 V 11 w(search)p 273 2115 V 12 w(prefix)6 b Fd(.)t(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)19 b Fe(9)0 2173 y Fc(history)p
142 2173 V 11 w(set)p 213 2173 V 13 w(history)p 366 2173
V 12 w(state)t Fd(.)t(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)17 b Fe(6)1015
430 y Fc(history)p 1157 430 V 12 w(set)p 1229 430 V 13
w(pos)5 b Fd(.)g(.)h(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)19 b Fe(8)1015 488 y Fc(history)p 1157
488 V 12 w(subst)p 1269 488 V 12 w(char)k Fd(.)6 b(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)25 b Fe(11)1015 546 y Fc(history)p
1157 546 V 12 w(tokenize)9 b Fd(.)s(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)22 b Fe(11)1015 604 y Fc(history)p
1157 604 V 12 w(total)p 1269 604 V 12 w(bytes)9 b Fd(.)t(.)d(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h
(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)22 b Fe(8)1015 662
y Fc(history)p 1157 662 V 12 w(truncate)p 1329 662 V
11 w(file)5 b Fd(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)19
b Fe(10)1015 770 y Fm(M)1015 836 y Fc(max)p 1077 836
V 13 w(input)p 1190 836 V 13 w(history)14 b Fd(.)6 b(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)17 b Fe(11)1015 944
y Fm(N)1015 1011 y Fc(next)p 1097 1011 V 13 w(history)7
b Fd(.)s(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)20 b Fe(8)1015 1119 y Fm(P)1015 1185
y Fc(previous)p 1177 1185 V 12 w(history)7 b Fd(.)f(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)23 b Fe(8)1015
1293 y Fm(R)1015 1359 y Fc(read)p 1097 1359 V 13 w(history)7
b Fd(.)s(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)20 b Fe(9)1015 1418 y Fc(read)p 1097
1418 V 13 w(history)p 1250 1418 V 11 w(range)9 b Fd(.)d(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)23 b Fe(9)1015 1476
y Fc(remove)p 1137 1476 V 12 w(history)t Fd(.)t(.)6 b(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)17
b Fe(7)1015 1534 y Fc(replace)p 1157 1534 V 12 w(history)p
1309 1534 V 11 w(entry)6 b Fd(.)f(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)
f(.)19 b Fe(7)1015 1642 y Fm(S)1015 1708 y Fc(stifle)p
1137 1708 V 12 w(history)t Fd(.)t(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)17 b Fe(7)1015 1816
y Fm(U)1015 1883 y Fc(unstifle)p 1177 1883 V 12 w(history)7
b Fd(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)23
b Fe(7)1015 1941 y Fc(using)p 1117 1941 V 13 w(history)5
b Fd(.)s(.)h(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)h(.)f(.)g(.)18 b Fe(6)1015 2049 y Fm(W)1015 2115 y
Fc(where)p 1117 2115 V 13 w(history)5 b Fd(.)s(.)h(.)g(.)h(.)f(.)g(.)g
(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)18
b Fe(8)1015 2173 y Fc(write)p 1117 2173 V 13 w(history)t
Fd(.)s(.)6 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g
(.)g(.)h(.)17 b Fe(10)p eop
18 19 bop 0 -58 a Fo(18)1474 b(GNU)15 b(History)g(Library)p
eop
-1 20 bop 1937 -58 a Fo(i)0 183 y Fk(T)-7 b(able)15 b(of)g(Con)n(ten)n
(ts)0 358 y Fm(1)67 b(Using)22 b(History)h(In)n(teractiv)n(ely)15
b Fb(.)e(.)c(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)f(.)h(.)g(.)g(.)g(.)g(.)
g(.)g(.)g(.)g(.)f(.)h(.)g(.)37 b Fm(1)149 435 y Fo(1.1)45
b(In)o(teractiv)o(e)15 b(History)g(Expansion)9 b Fa(.)g(.)e(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)23 b
Fo(1)299 498 y(1.1.1)44 b(Ev)o(en)o(t)14 b(Designators)d
Fa(.)d(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f
(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)
f(.)h(.)26 b Fo(1)299 560 y(1.1.2)44 b(W)l(ord)15 b(Designators)t
Fa(.)7 b(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)19 b Fo(2)299 622 y(1.1.3)44 b(Mo)q(di\014ers)15
b Fa(.)8 b(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f
(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)29 b Fo(2)0
747 y Fm(2)67 b(Programming)23 b(with)g(GNU)f(History)11
b Fb(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)f(.)h(.)g(.)g(.)g(.)g(.)g(.)
g(.)33 b Fm(5)149 825 y Fo(2.1)45 b(In)o(tro)q(duction)16
b(to)f(History)9 b Fa(.)e(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)
f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)24 b Fo(5)149
887 y(2.2)45 b(History)15 b(Storage)c Fa(.)c(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)h(.)f(.)h(.)26 b Fo(5)149 949 y(2.3)45 b(History)15
b(F)l(unctions)c Fa(.)e(.)e(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)26
b Fo(6)299 1011 y(2.3.1)44 b(Initializing)18 b(History)d(and)h(State)e
(Managemen)o(t)g Fa(.)7 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)29 b Fo(6)299 1074 y(2.3.2)44 b(History)15 b(List)h(Managemen)o
(t)d Fa(.)7 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f
(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)28
b Fo(7)299 1136 y(2.3.3)44 b(Information)15 b(Ab)q(out)g(the)h(History)
f(List)c Fa(.)d(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)g(.)f(.)h(.)f(.)h(.)25 b Fo(7)299 1198 y(2.3.4)44
b(Mo)o(ving)15 b(Around)g(the)g(History)g(List)10 b Fa(.)f(.)e(.)h(.)f
(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)25 b Fo(8)299 1260 y(2.3.5)44 b(Searc)o(hing)16
b(the)f(History)g(List)7 b Fa(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
f(.)h(.)21 b Fo(9)299 1323 y(2.3.6)44 b(Managing)15 b(the)g(History)g
(File)5 b Fa(.)k(.)e(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)20
b Fo(9)299 1385 y(2.3.7)44 b(History)15 b(Expansion)8
b Fa(.)g(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)
f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f
(.)h(.)23 b Fo(10)149 1447 y(2.4)45 b(History)15 b(V)l(ariables)5
b Fa(.)k(.)e(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)
f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)20 b Fo(11)149
1510 y(2.5)45 b(History)15 b(Programming)f(Example)6
b Fa(.)j(.)e(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)
h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)21
b Fo(12)0 1634 y Fm(App)r(endix)j(A)67 b(Concept)22 b(Index)7
b Fb(.)k(.)f(.)g(.)g(.)g(.)g(.)f(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)f(.)
h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)29 b Fm(15)0 1774 y(App)r(endix)24
b(B)67 b(F)-6 b(unction)25 b(and)e(V)-6 b(ariable)24
b(Index)13 b Fb(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)35
b Fm(17)p eop
-2 21 bop 0 -58 a Fo(ii)1496 b(GNU)15 b(History)g(Library)p
eop end
userdict /end-hook known{end-hook}if