%!PS-Adobe-2.0 %%Creator: dvips(k) 5.82 Copyright 1998 Radical Eye Software %%Title: history.dvi %%Pages: 20 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -D 300 -t letter -o history.ps history.dvi %DVIPSParameters: dpi=300, compressed %DVIPSSource: TeX output 2000.01.19:1217 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] N/FBB[0 0 0 0]N/nn 0 N/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 A{/foo setfont}2 array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X 1000 div/DVImag X/IE 256 array N 2 string 0 1 255{IE S A 360 add 36 4 index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) (LaserWriter 16/600)]{A length product length le{A length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet TeXDict begin 40258431 52099146 1000 300 300 (history.dvi) @start %DVIPSBitmapFont: Fa cmti10 10.95 1 /Fa 1 47 df<127012F8A212F012E005057B840E>46 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fb cmbxti10 14.4 1 /Fb 1 47 df<120E123FEA7F80A212FFA21300127E123C0909798815>46 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fc cmtt9 9 26 /Fc 26 123 df95 D97 D<12FCA2121CA513F8EA1DFEEA1F07EA1E03001C1380EB01C0A6EB0380001E1300EA1F0E EA1DFCEA0CF81217809614>II<137EA2130EA5EA07CEEA0FFEEA1C3EEA 301EEA700E12E0A61270EA301EEA383E381FEFC0EA07CF12177F9614>II<13FCEA01FEEA038EEA07041300A3EA7FFE12FFEA0700ACEAFFF8A20F17 7F9614>II<12FCA2121CA51378EA1DFEEA1F86EA1E07121CAA38FF8FE0A21317809614>I<1206 120FA21206C7FCA4B4FCA21207ACEAFFF8A20D187C9714>I<12FCA2121CA5EBFF80A2EB 1C005B5B5BEA1DC0EA1FE0A2EA1E70EA1C38133C131C7F38FF1F80A21117809614>107 DII IIIII I<1206120EA4EA7FFC12FFEA0E00A8130EA3131CEA07F8EA01F00F157F9414>II<38FE3F80A2383C1E00EA1C1CA36C5A A3EA0630EA0770A36C5AA311107F8F14>I<38FE3F80A238700700EA380EA3EA39CEA3EA 1B6C121AA3EA1E7CA2EA0E3811107F8F14>II<38FE3F80A2381C0E005B A2120E5BA212071330A2EA0370A25B1201A25BA3485A12730077C7FC127E123C11187F8F 14>II E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fd cmsl9 9 1 /Fd 1 47 df<1270A212F0126004047D830B>46 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fe cmr9 9 24 /Fe 24 122 df48 D<12035AB4FC1207B3A2EA7FF80D187D 9713>I54 D<1240EA7FFF13FEA2EA4004EA80081310A2EA00201340A21380120113005AA25A1206A2 120EA5120410197E9813>II I<39FFE1FFC0390E001C00AB380FFFFC380E001CAC39FFE1FFC01A1A7F991D>72 D83 D97 D99 D<133F1307A9EA03E7EA0C17EA180F487E127012E0A6126012706C 5AEA1C373807C7E0131A7F9915>II103 D<12FC121CA9137CEA1D87381E0380A2121CAB38FF9FF014 1A809915>I<1218123CA212181200A612FC121CAE12FF081A80990A>I110 DII< EAFC78EA1D9CEA1E1C1308EA1C00ABEAFF800E10808F0F>114 DI<1208A41218A21238EAFFC0EA3800A81320A41218EA1C40EA07800B177F960F>I<38 FF0F80383C0700EA1C061304A26C5AA26C5AA3EA03A0A2EA01C0A36C5A11107F8F14> 118 D<38FE3F80383C1E00EA1C086C5AEA0F306C5A6C5A12017F1203EA0270487E1208EA 181CEA381E38FC3FC012107F8F14>120 D<38FF0F80383C0700EA1C061304A26C5AA26C 5AA3EA03A0A2EA01C0A36C5AA248C7FCA212E112E212E4127811177F8F14>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Ff cmss10 10.95 2 /Ff 2 42 df<13E0EA01C0EA0380120713005A121EA2121C123CA212381278A3127012F0 AE12701278A31238123CA2121C121EA27E7E13801203EA01C0EA00E00B2E7CA112>40 D<12E012707E123C121C121E7EA27E1380A2120313C0A3120113E0AE13C01203A3138012 07A213005AA2121E121C123C12385A5A0B2E7EA112>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fg cmbx10 12 27 /Fg 27 123 df12 D<90380FFF80137F3801FC1F 3803F03FEA07E0EA0FC0141FA7B6FCA2380FC01FB2397FF8FFF0A21C237FA220>I97 DII<49B4FC A2EB003FAB13FE3807FFBF380FC1FF48C67E003E7F127E127CA212FCA7127C127E123E6C 5B380F81FF3907FF3FE0EA01FC1B237EA220>I<13FE3807FF80380F83C0381E01E0383E 00F0127E007C13F8147812FCB512F8A200FCC7FCA3127CA26C1318A26C1330380F80E038 03FFC0C6130015167E951A>II<9038FE0F803903FF9FC0380F83E338 1F01F3391E00F000003E7FA5001E5BEA1F01380F83E0380BFF80D808FEC7FC0018C8FCA2 121C381FFFE014FC6C13FF7E001F1480397C001FC00078130F00F81307A3007CEB0F806C EB1F00381F807E6CB45A000113E01A217F951D>II<121E123FEA7F80A4EA3F00121E C7FCA6EAFF80A2121FB2EAFFF0A20C247EA30F>I107 DI<3AFF03F8 03F890390FFE0FFE3A1F183F183F9039201F201F014001C01380A201801380AE3BFFF0FF F0FFF0A22C167D9531>I<38FF03F0EB0FFC381F187EEB203EEB403FA21380AE39FFF1FF E0A21B167D9520>I<13FF000713E0380F81F0381F00F8003E137C48133EA300FC133FA7 007C133E007E137E003E137C6C13F8380F81F03807FFE0C6130018167E951D>I<38FF87 F0EBBFFC381FF07EEBC01F9038800F8015C0A2EC07E0A715C0140FA2EC1F8001C01300EB F07EEBBFFCEB8FE00180C7FCA8EAFFF0A21B207E9520>II<38FF0F80EB1FE0381F33F013631343A2EBC1E0EB8000AD EAFFF8A214167E9518>I<3807F980EA1FFFEA3807EA7003EAF001A26CC7FCB4FC13F8EA 7FFE6C7E6C1380120738003FC0EAC007130312E0A200F0138038FC0F00EAEFFEEAC3F812 167E9517>I<487EA41203A21207A2120F123FB5FCA2EA1F80ABEB8180A5380F830013C3 EA07FEEA01F811207F9F16>I<38FF81FFA2381F803FAF5C5C380FC1BF3907FF3FE0EA01 FC1B167D9520>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035BA2 6C6C5AA26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA21B167F951E>I<3AFFF3 FF83FCA23A1F807C00E0D80FC014C08001E013010007017F1380A2D803F0EB0300ECCF83 01F81387D801F913C61487D800FD13ECEBFF0315FC017F5BEB7E01013E5BEB3C00A20118 136026167F9529>I<39FFF07FC0A2390FC01C006C6C5A6D5A00035B6C6C5A3800FD8013 7F91C7FC7F6D7E497EEB37E0EB67F013C33801C1F8380380FC48487E000E137F39FF81FF E0A21B167F951E>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035B A26C6C5AA26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA2130CA25B1278EAFC38 13305BEA69C0EA7F80001FC8FC1B207F951E>I<387FFFF0A2387C07E038700FC0EA601F 00E0138038C03F005B137EC65A1201485AEBF030EA07E0120FEBC070EA1F80003F1360EB 00E0EA7E03B5FCA214167E9519>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fh cmtt10 12 24 /Fh 24 119 df<13E0A538F0E1E0EAFCE7387EEFC0381FFF00EA07FCEA01F0EA07FCEA1F FF387EEFC038FCE7E0EAF0E13800E000A513157D991A>42 D<1338137CA2136C13EEA313 C6A2EA01C7A438038380A4380701C0A213FFA24813E0EA0E00A4481370387F01FC38FF83 FE387F01FC171E7F9D1A>65 D69 D<387FFFFCB5FC7E380E001CA51400A2EB03 80A3EA0FFFA3EA0E03A390C7FCA8EA7FE012FF127F161E7F9D1A>I<38FF83FEA3381C00 70AA381FFFF0A3381C0070AB38FF83FEA3171E7F9D1A>72 DI<38FE03FE12FFA2381D8070A213C0121CA213E0A213601370A213 301338A21318131CA2130C130EA21306A213071303A238FF81F0A21380171E7F9D1A>78 DI82 D<3803F1C0EA0FFDEA3FFFEA7C0FEA700312E01301A390C7FC12 701278123FEA1FF0EA07FE3800FF80EB0FC0EB01E013001470A2126012E0A214E0EAF001 38FC03C0B5128000EF1300EAE3FC141E7D9D1A>I<387FFFFEB5FCA238E0380EA5000013 00B33803FF80A3171E7F9D1A>I<38FF01FEA3381C00706C13E0A2380701C0A213830003 138013C700011300A2EA00EEA2137CA21338AA48B4FCA3171E7F9D1A>89 D<387FFFC0B512E0A26C13C013047D7E1A>95 D97 D99 DI<12FEA3120EA6133EEBFF80000F 13C013C1EB80E01300120EAC38FFE3FE13E713E3171E7F9D1A>104 DI< EAFE3EEBFF80B512C0EA0FC1EB80E01300120EAC38FFE3FE13E713E317157F941A>110 DI<387F81F838FF8FFC38 7F9FFE3803FE1EEBF80CEBE000A25B5BAAEA7FFFB5FC7E17157F941A>114 D<487E1203A6387FFFE0B5FCA238038000AA1470A43801C1E013FF6C1380EB3F00141C7F 9B1A>116 D<38FE0FE0A3EA0E00AD1301EA0F033807FFFE7EEA00FC17157F941A>I<387F C7FC00FF13FE007F13FC380E00E0A3380701C0A338038380A33801C700A3EA00EEA3137C A2133817157F941A>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fi cmbx12 13.14 41 /Fi 41 123 df12 D<123C127E12FFA4127E123C08087C8711>46 D<131C133C13FC12FFA21200B3AA387FFF FCA216237CA21F>49 D<48B4FC000713C0381E07F0383803F8386001FC387C00FE12FE14 FF147FA2127C003813FFC7FC14FEA2EB01FC14F8EB03F0EB07E01480EB0F00131E5B1370 EBE003EA01C038038007380700061206380FFFFE5A5A4813FCB5FCA218237DA21F>I<48 B4FC000713E0381E03F0383801F8003C13FC387E00FEA3123EEA1C01000013FCA2EB03F8 EB07F0EB0FC03801FF00A2380007E0EB01F014F8EB00FC14FE14FFA21210127C12FEA214 FEA2387C01FC007013F8383E07F0380FFFC00001130018237DA21F>I<14381478A214F8 1301130313071306130C131C13381330136013E0EA01C01380EA03005A120E5A12185A12 705AB612C0A2390001F800A790387FFFC0A21A237EA21F>I<0018130C001F137CEBFFF8 14F014E014C01480EBFC000018C7FCA513FF001B13E0381F03F0381C00F8000813FCC712 7EA3147FA2127812FCA3147E5A006013FC1270383801F8381E07E03807FFC03801FE0018 237DA21F>II<1230123C003FB512C0A2 15804814005C5C38600018A200E05B485B5CC6485AA249C7FC1306130EA25BA2133CA25B A213F8A41201A66C5A13601A257DA41F>I<141CA2143EA3147FA24A7EA39038019FC0A2 9038031FE0140F01077FEB0607A2010C7F1403011C7FEB1801A2496C7EA2017FB5FCA290 39E0007F8049133FA2484880151F00038190C7120FA2486E7ED8FFF090B51280A229257E A42E>65 D68 DII72 DI76 D I<01FF1380000713E3380F80F7381E001F48130F481307140312F81401A27E91C7FCB4FC EA7FE013FE383FFFE014F86C13FE00077F6C1480C67E010313C0EB003FEC0FE01407A200 C01303A315C07E6C13076C14806CEB0F0038FFC03E38E3FFF838803FE01B257DA422>83 D87 D97 DIII<137F3803FFC03807C1F0380F80F8EA1F0048137C127E147E 12FEA2B512FEA248C7FCA3127EA214067E6C130C380F80183807E0703803FFE038007F80 17187E971C>II<3901FF07C00007EBDFE0380F83F1EA1F01393E00F800 007E7FA6003E5B6C485A380F83E0EBFFC0001190C7FC0030C8FCA21238123C383FFFE06C 13FC806C7F481480383C003F48EB0FC000F81307A4007CEB0F806CEB1F00381F807E3807 FFF8C613C01B247E971F>II<120FEA1F80EA3FC0A4EA1F80EA0F00 C7FCA7EA7FC0A2120FB3A2EAFFF8A20D277EA611>I108 D<26FF80FE137F903A83FF81FFC03B0F8E0FC707E0019813CC903A9007E8 03F001A013F0A201C013E0AF3BFFFC7FFE3FFFA230187E9733>I<38FF80FE903883FF80 390F8E0FC0139890389007E013A0A213C0AF39FFFC7FFEA21F187E9722>II<38FFC1FCEBCFFF390FFC1FC09038F0 07E001C013F0140315F8140115FCA8EC03F8A215F0EBE0079038F00FE09038DC1F809038 CFFF00EBC3F801C0C7FCA9EAFFFCA21E237F9722>I<38FF83E0EB8FF8380F8C7CEB90FC 13B013A01478EBE0005BAEEAFFFEA216187F9719>114 D<3807F8C0EA1FFFEA3C07EA70 01EAF000A300FC1300B47EEA7FFC7F383FFF80000F13C0120338001FE01303EAC001A212 E014C0EAF00338FC078038EFFF00EAC3FC13187E9718>I<13C0A41201A312031207120F 121FB512C0A2380FC000AC1460A63807E0C013E13801FF8038007E0013237FA218>I<39 FFC07FE0A2000F1307B0140FA200071317EBE0673903FFC7FE38007F071F187E9722>I< 39FFF80FF8A2390FC001C015803907E00300A26D5A00031306EBF80E0001130C13FC0000 5B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA21D187F9720>I<39FFF83FF0A239 0FC00F003807E00E6C6C5A6D5A6C6C5A00001360EB7EC06D5AA2131F6D7E497E80EB33F8 1361EBE0FC3801C07E3803807F3907003F8048131F39FFC07FF8A21D187F9720>120 D<39FFF80FF8A2390FC001C015803907E00300A26D5A00031306EBF80E0001130C13FC00 005B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA21306A25B1230EA781CEAFC185B 1370EA68E0EA7FC0001FC8FC1D237F9720>I<387FFFF8A2387C03F0EA700738600FE000 E013C0EB1F80EAC03F1400137EEA00FE5B485A0003130C13F0EA07E0120FEBC01C381F80 18003F1338387F0078387E01F8B5FCA216187E971B>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fj cmsl10 10.95 30 /Fj 30 122 df<903803F07C90381E0DC69038380F0FEB701E01E0130EEC0C003801C01C A548485A007FB512C03903803800A448485AA6000E5BA648485A001E7F38FF8FFC20207E 9F1B>11 DI<903803F03F9039 1E09E0809039380F80C09039701F01E0EBE03E021E13C02601C01CC7FCA548485A007FB6 12803903803803A43A0700700700A6000EEBE00EA64848485A001EEBE01E3AFF8FF8FFC0 23207E9F26>14 D<13201360A4383061C0383C4380380E4E00EA0778EA01E0A2EA07B8EA 1C9CEA708FEAE083EA0180A490C7FC12147AA117>42 D<13181338EA01F8EA0E701200A5 13E0A6EA01C0A6EA0380A6EA07001380EAFFFC0E1E7B9D17>49 DI<13 FFEA01FE1380A5EA0300A61206A65AA65AA65AA65AA6B4FCA2102D7EA10D>91 D<13FFEA01FEEA0006A5130CA61318A61330A61360A613C0A6EA0180A6EAFF00A2102D82 A10D>93 D97 D<13FEEA0383380E0780121C00 38130090C7FC12785AA45AA37E5BEA70026C5AEA1C18EA07E011147D9314>99 D<1438EB01F8EB00781438A21470A614E013FCEA0382EA0601121CEA3C00383801C01278 12F0A438E00380A412F0EA700738380F00381C37803807C7E015207D9F19>I<13F8EA07 0EEA0E07121C383803801278127012F0A2B5FC00F0C7FC5AA46C5AEA7002EA3004EA1C18 EA07E011147D9314>II<140EEB3E11EBE1A33801C1C238 0381E0EA07801301120FA3380703C01480EB8700EA04FC48C7FCA21218121CEA0FFF14C0 14E0381800F04813305A5AA3006013606C13C0381C0700EA07FC181F809417>I<13E012 0712011200A2485AA6485AEB8F80EB90E013A0EBC0601380000713E01300A5380E01C0A6 381C0380001E13C038FF8FF014207E9F19>II<13E0120712011200 A2EA01C0A6EA0380A6EA0700A6120EA65A121EEAFF800B207F9F0C>108 D<390387C07C391F9861863907A072073903C03403EB80380007EB7807EB0070A5000EEB E00EA64848485A001EEBE01E3AFFCFFCFFC022147E9326>I<38038F80381F90E0EA07A0 3803C0601380000713E01300A5380E01C0A6381C0380001E13C038FF8FF014147E9319> I<13FCEA0387380E0180381C00C04813E0A24813F012F0A438E001E0A214C0130300F013 8038700700EA380E6C5AEA07E014147D9317>IIIII<1380EA0100 A35A5A5A121EEAFFF8EA0E00A45AA65A1310A41320A2EA1840EA0F800D1C7C9B12>I<38 1C0380EAFC1FEA3C07EA1C03A238380700A6EA700EA4131EA25BEA305E381F9F8011147B 9319>I<38FF83F8381E00E0001C13C01480121E380E01005B13025B12075BA25BEA0390 13A013E05B5B120190C7FC15147C9318>I<39FF9FE1FC393C078070391C030060148015 401580EA0E0790380D81001309EB19C21311380F21C4EA0720EB40C814E8EB80F0A26C48 5A1460000213401E147C9321>I<381FF0FF3803C0780001137014403800E0C0EBE180EB 73001376133CA2131C132E134E1387EA0107380203801204380C01C0383C03E038FE07FC 18147F9318>I<390FF83F803901E00E00EBC00C140813E000005B143014205C13705CA2 0171C7FC1339133A133E133C133813181310A25BA25BEA70C0EAF08000F1C8FC12E61278 191D809318>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fk cmbx12 17.28 36 /Fk 36 122 df49 DI<1578A215FCA34A7E A24A7EA24A7FA34A7FEC0E7F021E7FEC1C3FA202387F151F02787FEC700FA202E07F1507 010180ECC003A249486C7EA201078191C7FC498191B6FCA24981011CC7123F013C810138 141FA24981160F01F081491407A2484881486C1403B549B512FCA336317DB03D>65 DI<913A03FF800180023F EBF00349B5EAFC0701079038003F0FD91FF8EB079FD93FC0EB01FFD9FF807F4848C8127F 4848153F0007161F49150F485A001F1607A2485A1703127FA24992C7FCA212FFA9127FA2 7FEF0380123FA26C7E1707000F17006C7E6D150E0003161E6C6C151C6C6C6C1478D93FC0 5CD91FF8EB03E0D907FFEB3F800101D9FFFEC7FCD9003F13F80203138031317CB03A>I< B812E0A3C6903880007FEE0FF016031601A21600A21770A31738A21507A21700A35D5D5D 91B5FCA3EC803F818181A592C8FCACB612C0A32D317EB033>70 DIII78 D80 D<007FB8FCA39039C00FF801D87E00EC003F007C82007882A200708200F01780A3481603 A5C792C7FCB3AA017FB6FCA331307DAF38>84 DII97 DIIIII<90391FF007C09039FFFE3F E03A01F83F79F03907E00FC3000F14E19039C007E0E0001FECF000A2003F80A5001F5CA2 000F5CEBE00F00075C2603F83FC7FC3806FFFE380E1FF090C9FC121EA2121F7F90B57E6C 14F015FC6C806C801680000F15C0003FC7127F007EEC1FE0007C140F00FC1407A4007EEC 0FC0003E1580003F141FD80FC0EB7E003907F803FC0001B512F0D8001F90C7FC242F7E9F 28>III108 D<2703F007F8EB1FE000FFD93FFEEBFFF8913A783F01 E0FC02C090388300FE280FF1801FC6137F2607F30013CC01F602F8148001FC5CA3495CB3 B500C3B5380FFFFCA33E207D9F43>I<3903F007F800FFEB3FFEEC783F02C013803A0FF1 801FC03807F30001F614E013FCA35BB3B500C3B5FCA328207D9F2D>II<3901F83FE000FFEBFFFC9038FBE07F9039FF00 3F80D80FFEEB1FC06C48EB0FE04914F0ED07F8A216FC1503A216FEA816FC1507A216F8A2 ED0FF06D14E06DEB1FC06DEB3F809039FBC0FE009038F8FFF8EC3FC091C8FCABB512C0A3 272E7E9F2D>I<3803F03F00FFEB7FC09038F1C3E01487390FF30FF0EA07F6A29038FC07 E0EC03C091C7FCA25BB2B512E0A31C207E9F21>114 D<3801FF86000713FEEA1F00003C 133E48131E140E12F8A36C90C7FCB47E13FC387FFFC06C13F0806C7F00077F00017FEA00 3F01001380143F0060131F00E0130FA27E15007E6C131E6C131C38FF807838F3FFF038C0 7F8019207D9F20>I<131CA5133CA3137CA213FC120112031207381FFFFEB5FCA2D803FC C7FCB0EC0380A71201EC0700EA00FEEB7F0EEB3FFCEB07F0192E7FAD1F>IIII<3A7FFF807FFCA33A03FC000F006C6C131E6C6C5BEC803890387FC078013F5B90 381FE1E090380FF3C0ECFF806D90C7FC6D5A13016D7E81815B903803DFE09038078FF081 90380F07FC90381E03FEEB3C01496C7E4914804848EB7FC00003EC3FE026FFFC01B5FCA3 28207F9F2B>II E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fl cmsy10 10.95 1 /Fl 1 14 df<14FF010713E090381F00F80178131E01E01307D80180EB018048C812C000 061560481530A248151848150CA2481506A4481503A900601506A46C150CA26C15186C15 30A26C15606C15C06C6CEB0180D800E0EB07000178131E011F13F8903807FFE0010090C7 FC282B7EA02D>13 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fm cmbx12 14.4 45 /Fm 45 122 df<123C127FEAFF80A213C0A3127F123E1200A2EA0180A3EA0300A2120612 0E5A5A12100A157B8813>44 D<121C127FA2EAFF80A3EA7F00A2121C09097B8813>46 D<130E131E137EEA07FE12FFA212F81200B3ABB512FEA317277BA622>49 DII<140FA25C5C5C5C5BA2EB03 BFEB073F130E131C133C1338137013E0EA01C0EA038012071300120E5A5A5A12F0B612F8 A3C7EA7F00A890381FFFF8A31D277EA622>I<00181303381F801FEBFFFE5C5C5C14C091 C7FC001CC8FCA7EB7FC0381DFFF8381F80FC381E003F1208C7EA1F8015C0A215E0A21218 127C12FEA315C05A0078EB3F80A26CEB7F00381F01FE6CB45A000313F0C613801B277DA6 22>I65 DI<91387FE003903907FFFC07011FEBFF0F90397FF0 0F9F9039FF0001FFD801FC7F4848147F4848143F4848141F485A160F485A1607127FA290 C9FC5AA97E7F1607123FA26C7E160E6C7E6C6C141C6C6C143C6C6C14786CB4EB01F09039 7FF007C0011FB512800107EBFE009038007FF028297CA831>I69 DI<91387FE003903907 FFFC07011FEBFF0F90397FF00F9F9039FF0001FFD801FC7F484880484880484880485A82 485A82127FA290CAFC5AA892B512F87E7F03001300123FA26C7EA26C7E6C7E6C7E6C7E6C B45B90387FF007011FB5129F0107EBFE0F9039007FF0032D297CA835>III77 DI80 D82 D<9038FF80600003EBF0E0000F13F8381F80FD383F 001F003E1307481303A200FC1301A214007EA26C140013C0EA7FFCEBFFE06C13F86C13FE 80000714806C14C0C6FC010F13E0EB007FEC1FF0140F140700E01303A46C14E0A26C1307 6C14C0B4EB0F80EBE03F39E3FFFE0000E15B38C01FF01C297CA825>I85 DII<3803FF80000F13F0381F01FC383F80 FE147F801580EA1F00C7FCA4EB3FFF3801FC3FEA0FE0EA1F80EA3F00127E5AA4145F007E 13DF393F839FFC381FFE0F3803FC031E1B7E9A21>97 DIIII< EB07F8EB3FFCEB7E3E3801FC7FEA03F813F01207143E1400A7B512C0A33807F000B3A338 7FFF80A3182A7EA915>I<9038FF80F00003EBE3F8390FC1FE1C391F007C7C48137E003E EB3E10007EEB3F00A6003E133E003F137E6C137C380FC1F8380BFFE00018138090C8FC12 38A2123C383FFFF814FF6C14C06C14E06C14F0121F383C0007007CEB01F8481300A4007C EB01F0A2003FEB07E0390FC01F806CB5120038007FF01E287E9A22>II<1207EA0F80EA1FC0EA3FE0A3EA1FC0EA0F80EA0700C7FCA7EAFFE0A3120F B3A3EAFFFEA30F2B7EAA12>I108 D<26FFC07FEB1FC0903AC1FFC07FF0903AC307E0C1F8D80FC49038F101FC9039C803F200 01D801FE7F01D05BA201E05BB03CFFFE3FFF8FFFE0A3331B7D9A38>I<38FFC07E9038C1 FF809038C30FC0D80FC413E0EBC80701D813F013D0A213E0B039FFFE3FFFA3201B7D9A25 >II<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 %EndDVIPSBitmapFont %DVIPSBitmapFont: Fn cmtt10 10.95 75 /Fn 75 127 df<127012F8B012701200A5127012F8A31270051C779B18>33 DI I<13C01201A3EA03F0EA0FFCEA3FFEEA7DCFEA71C738E1C38013C7A338F1C0001279123F 6C7EEA0FF8EA01FC13DE13CF13C73861C38012F1A212E1EBC7001271EA79DEEA3FFEEA1F F8EA07E0EA01C0A3120011247D9F18>III<1238127CA2127E 123E120EA3121CA2123812F812F012C0070E789B18>I<137013F0EA01E0EA03C0EA0780 EA0F00121E121C5AA25AA45AA81270A47EA27E121E7EEA0780EA03C0EA01F0120013700C 24799F18>I<126012F012787E7E7EEA07801203EA01C0A2EA00E0A41370A813E0A4EA01 C0A2EA03801207EA0F00121E5A5A5A12600C247C9F18>II<136013F0A7387FFFC0B512E0A26C13C03800F000A7136013147E9718>I<121C 123E127E127F123F121F1207120E121E127C12F81260080C788518>I<387FFFC0B512E0 A26C13C013047E8F18>I<1230127812FCA2127812300606778518>I<1303EB0780A2130F 14005B131EA2133E133C137C1378A213F85B12015B12035BA212075B120F90C7FCA25A12 1E123E123CA2127C127812F85AA2126011247D9F18>IIII<131F5B1377A213E7120113C7EA038712 071307120E121E123C1238127812F0B512F8A338000700A6EB7FF0A3151C7F9B18>52 D<137E48B4FC00071380380F83C0EA1E03121C3838018090C7FC5AA2EAE1F8EAE7FEB5FC 38FE078038F803C0EAF001EB00E05AA21270A3383801C0EA3C03381E0780380FFF006C5A EA01F8131C7E9B18>54 D<1230127812FCA2127812301200A81230127812FCA212781230 0614779318>58 D<1218123C127EA2123C12181200A81218123C127EA2123E121E120E12 1C123C127812F01260071A789318>I<14C0EB03E01307EB1FC0EB3F80EBFE00485AEA07 F0485AEA3F8048C7FC12FCA2127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07E013 03EB00C013187E9918>I<387FFFC0B512E0A26C13C0C8FCA4387FFFC0B512E0A26C13C0 130C7E9318>I<126012F87E127F6C7EEA0FE06C7EEA01FC6C7EEB3F80EB1FC0EB07E0A2 EB1FC0EB3F80EBFE00485AEA07F0485AEA3F8048C7FC12FC5A126013187E9918>II<137013F8A213D8A2EA01DCA3138CEA038EA4EA0707 A5380FFF80A3EA0E03381C01C0A3387F07F000FF13F8007F13F0151C7F9B18>65 D68 DII<387F07F038FF 8FF8387F07F0381C01C0A9EA1FFFA3EA1C01AA387F07F038FF8FF8387F07F0151C7F9B18 >72 DI76 D<387E07F038FF0FF8387F07F0381D81C0 A313C1121CA213E1A313611371A213311339A31319A2131D130DA3EA7F07EAFF87EA7F03 151C7F9B18>78 DII< EA7FF8EAFFFE6C7E381C0F80130314C01301A313031480130F381FFF005BA2EA1C0F7FEB 0380A5149CA3387F01F8EAFF81387F00F0161C7F9B18>82 D<3803F1C0EA1FFF5AEA7C0F EA7003EAE001A390C7FC12701278123FEA1FF0EA07FEC67EEB0F80EB03C01301EB00E0A2 126012E0130100F013C038F80780B5FCEBFE00EAE7F8131C7E9B18>I<387FFFF8B5FCA2 38E07038A400001300B2EA07FFA3151C7F9B18>I<38FF83FEA3381C0070B36C13E0EA0F 01380783C03803FF806C1300EA007C171C809B18>I<38FE03F8EAFF07EAFE03381C01C0 EA1E03000E1380EA0F0700071300A2EA038EA2EA01DCA3EA00F8A21370A9EA01FC487E6C 5A151C7F9B18>89 D91 D<126012F0A27E1278127C123CA2123E121E121F7EA27F12077F1203A27F12017F12007F 1378A2137C133C133E131EA2131F7F14801307A2EB030011247D9F18>III<387FFFC0B512E0A26C13C013047E7F18>I<1206121E123E12381270A212E0A312F8 12FC127CA21238070E789E18>II<127E 12FE127E120EA5133EEBFF80000F13C0EBC1E01380EB0070120E1438A6000F1370A2EB80 E013C1EBFFC0000E138038063E00151C809B18>II< EB1F80133F131F1303A5EA03E3EA0FFBEA1FFFEA3C1FEA380FEA7007130312E0A6EA7007 A2EA380FEA3C1F381FFFF0380FFBF83803E3F0151C7E9B18>III<3801E1F03807FFF85A381E1E30381C0E00 487EA5EA1C0EEA1E1EEA1FFC5BEA39E00038C7FC7EEA1FFEEBFFC04813E0387801F03870 0070481338A4007813F0EA7E03381FFFC06C13803801FC00151F7F9318>I<127E12FE12 7E120EA5133EEBFF80000F13C013C1EB80E01300120EAB387FC7FC38FFE7FE387FC7FC17 1C809B18>II108 D<38F9C1C038FFF7F013FF383E3E 38EA3C3CA2EA3838AB38FE3E3EEB7E7EEB3E3E1714809318>IIII<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>II<126012 F0B3B012600424769F18>I<127CB4FC13C01203C67EAB7FEB7FC0EB3FE0A2EB7FC0EBF0 005BABEA03C012FF90C7FC127C13247E9F18>II E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fo cmr10 10.95 75 /Fo 75 123 df<90381F83E09038F06E303901C07878380380F8903800F03048EB7000A7 B612803907007000B2383FE3FF1D20809F1B>11 D<133FEBE0C0EA01C0380381E0EA0701 A290C7FCA6B512E0EA0700B2383FC3FC1620809F19>II<90381F81F89038F04F043901C07C063903 80F80FEB00F05A0270C7FCA6B7FC3907007007B23A3FE3FE3FE02320809F26>I34 D<127012F812FCA212741204A31208A21210A212201240060E7C9F0D>39 D<13401380EA01005A12061204120C5AA212381230A212701260A412E0AC1260A4127012 30A212381218A27E120412067E7EEA008013400A2E7BA112>I<7E12407E12307E120812 0C7EA212077EA213801201A413C0AC1380A412031300A25A1206A25A120812185A12205A 5A0A2E7EA112>I<127012F012F8A212781208A31210A31220A21240050E7C840D>44 DI<127012F8A3127005057C840D>I48 D<13801203120F12F31203B3A6EA07C0EAFFFE0F1E7C9D17>III<1306A2130EA2131E132EA2134E138EA2EA010E1202A212041208A212101220A2 124012C0B512F038000E00A7EBFFE0141E7F9D17>II<137CEA0182EA0701380E0380EA0C07121838 38030090C7FC12781270A2EAF1F0EAF21CEAF406EAF807EB0380A200F013C0A51270A214 801238EB07001218EA0C0E6C5AEA01F0121F7E9D17>I<1240387FFFE014C0A238400080 38800100A21302485AA25B5BA25BA21360A213E05B1201A41203A76C5A131F7E9D17>I< EA03F0EA0C0CEA1006EA3003382001801260A3127038780300123EEA3F06EA1FC8EA0FF0 EA03F8487EEA0C7EEA103F38300F80EA6007EB01C012C01300A31480EA600100201300EA 1002EA0C0CEA03F0121F7E9D17>II<127012F8A312701200AA127012F8A3127005147C93 0D>I<127012F8A312701200AA127012F012F8A212781208A31210A31220A21240051D7C 930D>I<5B497EA3497EA3EB09E0A3EB10F0A3EB2078A3497EA2EBC03EEB801EA248B5FC EB000FA20002EB0780A348EB03C0A2120C001E14E039FF801FFE1F207F9F22>65 DI<90380FE0109038381C30 9038E002703803C00139078000F048C71270121E15305A1510127C127800F81400A91278 007C1410123CA26C1420A27E6C6C13406C6C13803900E00300EB380CEB0FF01C217E9F21 >IIII<90380FE01090 38381C309038E002703803C00139078000F048C71270121E15305A1510127C127800F814 00A7EC3FFEEC01F000781300127C123CA27EA27E6C7E3903C001703900E002309038380C 1090380FF0001F217E9F24>I<39FFF07FF8390F000780AD90B5FCEB0007AF39FFF07FF8 1D1F7E9E22>II<3807FFC038003E00131EB3A3 122012F8A3EAF01CEA403CEA6038EA1070EA0FC012207F9E17>I76 DIIIIII<3803F040 380C0CC0EA1803EA3001EA6000A212E01440A36C13007E127CEA7F80EA3FF86CB4FC0007 1380C613C0EB1FE013031301EB00F014707EA46C136014E06C13C038F8018038C60300EA 81FC14217E9F19>I<007FB512E038780F010060EB006000401420A200C0143000801410 A400001400B3497E3803FFFC1C1F7E9E21>I<39FFF00FF8390F0003E0EC0080B3A46CEB 01001380120314026C6C5A6C6C5AEB3830EB0FC01D207E9E22>I<39FFF003FE391F8000 F86CC7126015206C6C1340A36C6C1380A2EBE00100011400A23800F002A213F8EB7804A2 6D5AA36D5AA2131F6D5AA2EB07C0A36D5AA36DC7FC1F207F9E22>I<3BFFF07FF81FF03B 1F000FC007C06C903907800180170015C001805C00071502EC09E013C000035DEC19F014 10D801E05CA2EC2078D800F05CA2EC403C01785CA2EC801E017C1460013C144090383D00 0F133F6D5CA2011E1307010E91C7FCA2010C7F010413022C207F9E2F>I<12FFA212C0B3 B3A512FFA2082D7CA10D>91 DI<12FFA21203B3B3A512FFA2082D80A10D>I<12081210 1220A21240A21280A312B812FCA2127C1238060E7D9F0D>96 DI<121C12FC121CAA137CEA1D87381E0180EB00C0001C13E01470A21478A6 147014F014E0001E13C0381A018038198700EA107C15207E9F19>IIII<13 7CEA01C6EA030F1207EA0E061300A7EAFFF0EA0E00B2EA7FE01020809F0E>I<14E03803 E330EA0E3CEA1C1C38380E00EA780FA5EA380E6C5AEA1E38EA33E00020C7FCA21230A2EA 3FFE381FFF8014C0383001E038600070481330A4006013606C13C0381C03803803FC0014 1F7F9417>I<121C12FC121CAA137C1386EA1D03001E1380A2121CAE38FF8FF014207E9F 19>I<1238127CA31238C7FCA6121C12FC121CB1EAFF80091F7F9E0C>I<13E0EA01F0A3EA 00E01300A61370EA07F012001370B3A31260EAF06013C0EA6180EA3F000C28829E0E>I< 121C12FC121CAAEB1FE0EB0780EB060013045B5B5B136013E0EA1DF0EA1E70EA1C38133C 131C7F130F7F148014C038FF9FF014207E9F18>I<121C12FC121CB3ABEAFF8009207F9F 0C>I<391C3E03E039FCC30C30391D039038391E01E01CA2001C13C0AE3AFF8FF8FF8021 147E9326>IIII<3801 F04038070CC0EA0E02EA1C03EA38011278127012F0A6127012781238EA1C03EA0C05EA07 09EA01F1EA0001A8EB0FF8151D7F9318>III<1202A31206A2120E A2123EEAFFF8EA0E00AB1304A5EA07081203EA01F00E1C7F9B12>I<381C0380EAFC1FEA 1C03AE1307120CEA061B3803E3F014147E9319>I<38FF83F8383E00E0001C13C06C1380 A338070100A21383EA0382A2EA01C4A213E4EA00E8A21370A3132015147F9318>I<39FF 9FE1FC393C078070391C030060EC8020000E1440A214C0D80704138014E0A23903886100 1471A23801D032143A143E3800E01CA2EB6018EB40081E147F9321>I<38FF87F8381E03 C0380E0180EB0300EA0702EA0384EA01C813D8EA00F01370137813F8139CEA010E1202EA 060738040380000C13C0003C13E038FE07FC16147F9318>I<38FF83F8383E00E0001C13 C06C1380A338070100A21383EA0382A2EA01C4A213E4EA00E8A21370A31320A25BA3EAF0 80A200F1C7FC1262123C151D7F9318>I I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fp cmbx12 20.736 13 /Fp 13 122 df71 DI76 D78 D85 D97 D<13FE12FFA412071203B04AB4 FC021F13F0027F13FC9138FC03FE9039FFF000FF02C0EB3F8091C7EA1FC04915E0EE0FF0 17F8A2EE07FCA317FEA917FCA3160F17F817F0161F6D15E06EEB3FC06EEB7F80D9F9E0EB FF009039F0FC07FE91387FFFF8D9E01F13E09026C003FEC7FC2F3C7DBB36>I105 D<903801FFC0010F13F8017F13FFD9FF807F3A03FE003FE0D807F8EB0FF0 48486D7EA248486D7E003F81A248486D7EA400FF1680A9007F1600A36C6C495AA2001F5D 6D1307000F5D6C6C495AD803FEEB3FE03A00FF80FF806DB5C7FC010F13F8010113C02926 7DA530>111 D<3901FC03F000FFEB0FFC4AB4FC91383C3F80EC707F00079038E0FFC000 035BEBFD80A201FFEB7F809138003F00151E92C7FC5BB3A3B512FCA422267DA528>114 D<90383FF0383903FFFE7848EBFFF8381FC00F383F0003003E13005A157812FCA27E6C14 0013C013FC387FFFF06C13FEECFF806C14C06C14E0000314F0C614F8011F13FCEB007FEC 07FE0070130100F01300157E7EA27E157C6C14FC6C14F890388001F09038F00FE000F9B5 12C0D8F07F130038C01FF81F267DA526>I<130FA55BA45BA25BA25B5A5A5A001FEBFFF0 B6FCA3000190C7FCB3153CA86C14781480017F13F090383FC1E090381FFFC06D13809038 01FE001E377EB626>I121 D E %EndDVIPSBitmapFont end %%EndProlog %%BeginSetup %%Feature: *Resolution 300dpi TeXDict begin %%BeginPaperSize: Letter letter %%EndPaperSize %%EndSetup %%Page: 1 1 1 0 bop 75 693 a Fp(GNU)33 b(History)f(Library)p 75 743 1800 17 v 960 791 a Fo(Edition)16 b(4.1,)e(for)h Fn(History)f(Library)g Fo(V)l(ersion)i(4.1.)1609 845 y(Jan)o(uary)f(2000)75 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)75 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 75 2570 1800 9 v eop %%Page: 2 2 2 1 bop 75 250 a Fo(This)21 b(do)q(cumen)o(t)g(describ)q(es)h(the)f (GNU)f(History)g(library)l(,)j(a)d(programming)g(to)q(ol)g(that)g(pro)o (vides)h(a)75 305 y(consisten)o(t)15 b(user)h(in)o(terface)f(for)g (recalling)i(lines)f(of)f(previously)i(t)o(yp)q(ed)e(input.)75 373 y(Published)i(b)o(y)f(the)f(F)l(ree)g(Soft)o(w)o(are)f(F)l (oundation)75 427 y(59)h(T)l(emple)h(Place,)f(Suite)i(330,)75 482 y(Boston,)d(MA)h(02111)f(USA)75 549 y(P)o(ermission)j(is)f(gran)o (ted)g(to)f(mak)o(e)h(and)g(distribute)i(v)o(erbatim)d(copies)i(of)f (this)h(man)o(ual)f(pro)o(vided)h(the)75 604 y(cop)o(yrigh)o(t)e (notice)h(and)f(this)h(p)q(ermission)g(notice)g(are)f(preserv)o(ed)h (on)f(all)h(copies.)75 671 y(P)o(ermission)c(is)h(gran)o(ted)e(to)g (cop)o(y)h(and)g(distribute)h(mo)q(di\014ed)g(v)o(ersions)f(of)f(this)h (man)o(ual)g(under)h(the)f(con-)75 726 y(ditions)k(for)e(v)o(erbatim)h (cop)o(ying,)g(pro)o(vided)h(that)e(the)h(en)o(tire)h(resulting)g (deriv)o(ed)g(w)o(ork)e(is)h(distributed)75 781 y(under)h(the)f(terms)g (of)g(a)f(p)q(ermission)j(notice)f(iden)o(tical)h(to)e(this)g(one.)75 848 y(P)o(ermission)i(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)g(in)o(to)f(another) g(lan-)75 903 y(guage,)e(under)h(the)f(ab)q(o)o(v)o(e)g(conditions)i (for)d(mo)q(di\014ed)j(v)o(ersions,)e(except)h(that)f(this)h(p)q (ermission)g(notice)75 958 y(ma)o(y)f(b)q(e)i(stated)f(in)h(a)f (translation)g(appro)o(v)o(ed)g(b)o(y)g(the)g(F)l(ree)h(Soft)o(w)o(are) d(F)l(oundation.)75 2661 y(Cop)o(yrigh)o(t)301 2660 y(c)289 2661 y Fl(\015)i Fo(1988-1999)e(F)l(ree)i(Soft)o(w)o(are)f(F)l (oundation,)h(Inc.)p eop %%Page: 1 3 1 2 bop 75 -58 a Fo(Chapter)15 b(1:)k(Using)d(History)f(In)o(teractiv)o (ely)1007 b(1)75 183 y Fk(1)41 b(Using)26 b(History)h(In)n(teractiv)n (ely)137 317 y Fo(This)16 b(c)o(hapter)f(describ)q(es)i(ho)o(w)d(to)h (use)g(the)g(GNU)g(History)g(Library)h(in)o(teractiv)o(ely)l(,)g(from)e (a)h(user's)75 372 y(standp)q(oin)o(t.)35 b(It)20 b(should)g(b)q(e)h (considered)h(a)d(user's)h(guide.)35 b(F)l(or)19 b(information)h(on)g (using)h(the)f(GNU)75 427 y(History)d(Library)h(in)h(y)o(our)e(o)o(wn)g (programs,)f(see)i(Chapter)f(2)h([Programming)e(with)i(GNU)f(History],) 75 482 y(page)e(5.)75 625 y Fm(1.1)33 b(History)22 b(Expansion)137 727 y Fo(The)c(History)g(library)h(pro)o(vides)f(a)f(history)h (expansion)h(feature)e(that)h(is)g(similar)h(to)e(the)h(history)75 782 y(expansion)12 b(pro)o(vided)g(b)o(y)f Fn(csh)p Fo(.)18 b(This)11 b(section)h(describ)q(es)g(the)g(syn)o(tax)e(used)h(to)g (manipulate)h(the)f(history)75 836 y(information.)137 909 y(History)k(expansions)h(in)o(tro)q(duce)h(w)o(ords)d(from)g(the)i (history)f(list)h(in)o(to)f(the)h(input)g(stream,)e(making)75 964 y(it)h(easy)g(to)g(rep)q(eat)g(commands,)g(insert)h(the)f(argumen)o (ts)f(to)h(a)g(previous)h(command)f(in)o(to)g(the)g(curren)o(t)75 1019 y(input)h(line,)h(or)d(\014x)i(errors)e(in)i(previous)g(commands)f (quic)o(kly)l(.)137 1092 y(History)j(expansion)i(tak)o(es)d(place)i(in) h(t)o(w)o(o)d(parts.)28 b(The)19 b(\014rst)f(is)g(to)g(determine)i (whic)o(h)f(line)h(from)75 1147 y(the)h(history)f(list)i(should)g(b)q (e)f(used)g(during)h(substitution.)37 b(The)21 b(second)g(is)g(to)f (select)i(p)q(ortions)e(of)75 1202 y(that)15 b(line)i(for)d(inclusion)k (in)o(to)d(the)h(curren)o(t)f(one.)20 b(The)c(line)g(selected)h(from)e (the)g(history)g(is)h(called)h(the)75 1256 y Fj(ev)o(en)o(t)p Fo(,)c(and)h(the)g(p)q(ortions)g(of)f(that)g(line)i(that)e(are)g(acted) h(up)q(on)g(are)f(called)j Fj(w)o(ords)p Fo(.)i(V)l(arious)c Fj(mo)q(di\014ers)75 1311 y Fo(are)i(a)o(v)m(ailable)i(to)e(manipulate) i(the)e(selected)i(w)o(ords.)23 b(The)17 b(line)h(is)f(brok)o(en)f(in)o (to)h(w)o(ords)e(in)j(the)e(same)75 1366 y(fashion)c(that)e(Bash)i(do)q (es,)g(so)f(that)g(sev)o(eral)g(w)o(ords)g(surrounded)h(b)o(y)f(quotes) h(are)f(considered)h(one)g(w)o(ord.)75 1421 y(History)18 b(expansions)h(are)g(in)o(tro)q(duced)g(b)o(y)f(the)h(app)q(earance)g (of)f(the)g(history)h(expansion)g(c)o(haracter,)75 1475 y(whic)o(h)d(is)g(`)p Fn(!)p Fo(')e(b)o(y)h(default.)75 1599 y Fi(1.1.1)30 b(Ev)n(en)n(t)21 b(Designators)137 1701 y Fo(An)16 b(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.)75 1789 y Fn(!)216 b Fo(Start)16 b(a)g(history)h(substitution,)g(except)h (when)f(follo)o(w)o(ed)g(b)o(y)f(a)h(space,)g(tab,)f(the)h(end)g(of)315 1844 y(the)e(line,)i(`)p Fn(=)p Fo(')d(or)h(`)p Fn(\()p Fo('.)75 1929 y Fn(!)p Fj(n)191 b Fo(Refer)16 b(to)e(command)h(line)i Fj(n)p Fo(.)75 2015 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.)75 2100 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('.)75 2186 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(.)75 2271 y Fn(!?)p Fj(string)t Fn([?])315 2326 y Fo(Refer)i(to)f(the)h (most)f(recen)o(t)h(command)g(con)o(taining)g Fj(string)p Fo(.)25 b(The)17 b(trailing)g(`)p Fn(?)p Fo(')f(ma)o(y)g(b)q(e)315 2381 y(omitted)f(if)h(the)f Fj(string)k Fo(is)d(follo)o(w)o(ed)f (immediately)i(b)o(y)e(a)g(newline.)75 2466 y Fn(^)p Fj(string1)t Fn(^)p Fj(string2)t Fn(^)315 2521 y Fo(Quic)o(k)i (Substitution.)23 b(Rep)q(eat)17 b(the)f(last)f(command,)h(replacing)h Fj(string1)i Fo(with)e Fj(string2)p Fo(.)315 2576 y(Equiv)m(alen)o(t)g (to)d Fn(!!:s/)p Fj(string1)t Fn(/)p Fj(string2)t Fn(/)p Fo(.)75 2661 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.)p eop %%Page: 2 4 2 3 bop 75 -58 a Fo(2)1347 b(GNU)15 b(History)g(Library)75 183 y Fi(1.1.2)30 b(W)-5 b(ord)20 b(Designators)137 279 y Fo(W)l(ord)d(designators)g(are)g(used)h(to)f(select)h(desired)h(w)o (ords)d(from)h(the)g(ev)o(en)o(t.)26 b(A)18 b(`)p Fn(:)p Fo(')e(separates)h(the)75 334 y(ev)o(en)o(t)j(sp)q(eci\014cation)h (from)e(the)h(w)o(ord)f(designator.)34 b(It)20 b(ma)o(y)f(b)q(e)h (omitted)g(if)g(the)g(w)o(ord)f(designator)75 389 y(b)q(egins)f(with)g (a)e(`)p Fn(^)p Fo(',)h(`)p Fn($)p Fo(',)f(`)p Fn(*)p Fo(',)g(`)p Fn(-)p Fo(',)g(or)h(`)p Fn(\045)p Fo('.)24 b(W)l(ords)17 b(are)g(n)o(um)o(b)q(ered)g(from)g(the)g(b)q(eginning)i (of)e(the)g(line,)75 444 y(with)j(the)g(\014rst)f(w)o(ord)h(b)q(eing)h (denoted)f(b)o(y)g(0)f(\(zero\).)33 b(W)l(ords)20 b(are)f(inserted)i (in)o(to)f(the)g(curren)o(t)f(line)75 498 y(separated)c(b)o(y)g(single) i(spaces.)137 574 y(F)l(or)e(example,)75 653 y Fn(!!)192 b Fo(designates)18 b(the)g(preceding)i(command.)28 b(When)18 b(y)o(ou)g(t)o(yp)q(e)g(this,)h(the)f(preceding)h(com-)315 708 y(mand)c(is)h(rep)q(eated)g(in)g(toto.)75 787 y Fn(!!:$)144 b Fo(designates)12 b(the)f(last)g(argumen)o(t)f(of)h(the)g(preceding)i (command.)19 b(This)11 b(ma)o(y)g(b)q(e)h(shortened)315 842 y(to)j Fn(!$)p Fo(.)75 921 y Fn(!fi:2)120 b Fo(designates)15 b(the)g(second)g(argumen)o(t)f(of)g(the)h(most)f(recen)o(t)g(command)h (starting)f(with)h(the)315 976 y(letters)g Fn(fi)p Fo(.)137 1055 y(Here)h(are)f(the)g(w)o(ord)f(designators:)75 1134 y Fn(0)h(\(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.)75 1214 y Fj(n)215 b Fo(The)15 b Fj(n)p Fo(th)h(w)o(ord.)75 1293 y Fn(^)216 b Fo(The)15 b(\014rst)g(argumen)o(t;)f(that)h(is,)g(w)o (ord)g(1.)75 1372 y Fn($)216 b Fo(The)15 b(last)h(argumen)o(t.)75 1451 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.)75 1530 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('.)75 1610 y Fn(*)216 b Fo(All)15 b(of)f(the)f(w)o(ords,)g(except)i (the)f Fn(0)p Fo(th.)19 b(This)14 b(is)h(a)e(synon)o(ym)h(for)f(`)p Fn(1-$)p Fo('.)18 b(It)c(is)g(not)g(an)g(error)315 1664 y(to)g(use)h(`)p Fn(*)p Fo(')f(if)i(there)e(is)i(just)e(one)h(w)o(ord)f (in)i(the)f(ev)o(en)o(t;)f(the)h(empt)o(y)g(string)g(is)g(returned)g (in)315 1719 y(that)f(case.)75 1798 y Fj(x)s Fn(*)189 b Fo(Abbreviates)16 b(`)p Fj(x)p Fn(-$)p Fo(')75 1878 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.)137 1957 y(If)i(a)g(w)o(ord)f(designator)h(is)h(supplied)h (without)e(an)g(ev)o(en)o(t)f(sp)q(eci\014cation,)j(the)e(previous)h (command)75 2012 y(is)e(used)f(as)g(the)h(ev)o(en)o(t.)75 2123 y Fi(1.1.3)30 b(Mo)r(di\014ers)137 2219 y Fo(After)10 b(the)h(optional)g(w)o(ord)e(designator,)i(y)o(ou)f(can)h(add)f(a)g (sequence)i(of)e(one)g(or)g(more)g(of)g(the)g(follo)o(wing)75 2274 y(mo)q(di\014ers,)16 b(eac)o(h)f(preceded)i(b)o(y)e(a)g(`)p Fn(:)p Fo('.)75 2353 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.)75 2432 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.)75 2512 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.)75 2591 y Fn(e)216 b Fo(Remo)o(v)o(e)15 b(all)h(but)g(the)f (trailing)h(su\016x.)75 2670 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.)p eop %%Page: 3 5 3 4 bop 75 -58 a Fo(Chapter)15 b(1:)k(Using)d(History)f(In)o(teractiv)o (ely)1007 b(3)75 183 y Fn(s/)p Fj(old)r Fn(/)p Fj(new)t Fn(/)315 238 y Fo(Substitute)17 b Fj(new)j Fo(for)c(the)h(\014rst)e(o)q (ccurrence)j(of)e Fj(old)i Fo(in)f(the)g(ev)o(en)o(t)f(line.)25 b(An)o(y)16 b(delimiter)315 293 y(ma)o(y)c(b)q(e)h(used)g(in)g(place)g (of)f(`)p Fn(/)p Fo('.)18 b(The)13 b(delimiter)h(ma)o(y)e(b)q(e)h (quoted)f(in)i Fj(old)g Fo(and)f Fj(new)k Fo(with)12 b(a)315 348 y(single)j(bac)o(kslash.)20 b(If)15 b(`)p Fn(&)p Fo(')e(app)q(ears)h(in)h Fj(new)p Fo(,)f(it)g(is)h(replaced)g(b) o(y)f Fj(old)p Fo(.)20 b(A)14 b(single)i(bac)o(kslash)315 402 y(will)j(quote)e(the)h(`)p Fn(&)p Fo('.)25 b(The)17 b(\014nal)i(delimiter)g(is)f(optional)g(if)f(it)h(is)g(the)f(last)g(c)o (haracter)g(on)315 457 y(the)e(input)h(line.)75 537 y Fn(&)216 b Fo(Rep)q(eat)16 b(the)f(previous)h(substitution.)75 617 y Fn(g)216 b Fo(Cause)19 b(c)o(hanges)h(to)e(b)q(e)i(applied)h(o)o (v)o(er)e(the)g(en)o(tire)h(ev)o(en)o(t)f(line.)34 b(Used)20 b(in)g(conjunction)315 671 y(with)c(`)p Fn(s)p Fo(',)d(as)i(in)h Fn(gs/)p Fj(old)r Fn(/)p Fj(new)t Fn(/)p Fo(,)f(or)g(with)g(`)p Fn(&)p Fo('.)p eop %%Page: 4 6 4 5 bop 75 -58 a Fo(4)1347 b(GNU)15 b(History)g(Library)p eop %%Page: 5 7 5 6 bop 75 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g (History)889 b(5)75 183 y Fk(2)41 b(Programming)28 b(with)e(GNU)i (History)137 282 y Fo(This)16 b(c)o(hapter)e(describ)q(es)j(ho)o(w)d (to)g(in)o(terface)h(programs)e(that)h(y)o(ou)h(write)g(with)g(the)g (GNU)f(History)75 337 y(Library)l(.)24 b(It)17 b(should)g(b)q(e)g (considered)h(a)e(tec)o(hnical)i(guide.)25 b(F)l(or)15 b(information)i(on)f(the)h(in)o(teractiv)o(e)g(use)75 391 y(of)e(GNU)g(History)l(,)g(see)g(Chapter)g(1)g([Using)g(History)g (In)o(teractiv)o(ely],)h(page)f(1.)75 509 y Fm(2.1)33 b(In)n(tro)r(duction)24 b(to)e(History)137 602 y Fo(Man)o(y)c(programs) g(read)h(input)g(from)f(the)h(user)g(a)f(line)j(at)d(a)g(time.)31 b(The)19 b(GNU)g(History)f(library)75 656 y(is)k(able)g(to)e(k)o(eep)i (trac)o(k)e(of)h(those)g(lines,)j(asso)q(ciate)d(arbitrary)g(data)f (with)i(eac)o(h)f(line,)j(and)e(utilize)75 711 y(information)15 b(from)g(previous)h(lines)h(in)f(comp)q(osing)f(new)h(ones.)137 775 y(The)e(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)75 830 y(on)c(a)g(history)h(list,)g(asso)q(ciating)g(arbitrary)f(data)f (with)i(a)f(line,)j(remo)o(ving)d(lines)i(from)d(the)i(list,)h(searc)o (hing)75 884 y(through)17 b(the)h(list)g(for)f(a)h(line)h(con)o (taining)f(an)g(arbitrary)f(text)g(string,)h(and)g(referencing)h(an)o (y)e(line)i(in)75 939 y(the)c(list)i(directly)l(.)22 b(In)16 b(addition,)g(a)f(history)g Fj(expansion)h Fo(function)h(is)e (a)o(v)m(ailable)i(whic)o(h)g(pro)o(vides)f(for)e(a)75 994 y(consisten)o(t)h(user)h(in)o(terface)f(across)g(di\013eren)o(t)g (programs.)137 1058 y(The)f(user)h(using)f(programs)f(written)h(with)g (the)g(History)g(library)h(has)f(the)g(b)q(ene\014t)h(of)e(a)h (consisten)o(t)75 1112 y(user)20 b(in)o(terface)f(with)h(a)f(set)h(of)f (w)o(ell-kno)o(wn)h(commands)g(for)e(manipulating)k(the)d(text)g(of)g (previous)75 1167 y(lines)c(and)f(using)h(that)e(text)g(in)i(new)f (commands.)19 b(The)14 b(basic)h(history)e(manipulation)j(commands)d (are)75 1222 y(similar)j(to)f(the)g(history)g(substitution)h(pro)o (vided)g(b)o(y)g Fn(csh)p Fo(.)137 1286 y(If)f(the)g(programmer)f (desires,)h(he)g(can)g(use)g(the)g(Readline)i(library)l(,)f(whic)o(h)f (includes)j(some)c(history)75 1340 y(manipulation)j(b)o(y)e(default,)g (and)h(has)f(the)g(added)h(adv)m(an)o(tage)f(of)f(command)h(line)i (editing.)137 1404 y(Before)i(declaring)i(an)o(y)d(functions)i(using)g (an)o(y)f(functionalit)o(y)h(the)f(History)g(library)h(pro)o(vides)f (in)75 1459 y(other)14 b(co)q(de,)h(an)f(application)i(writer)e(should) i(include)g(the)f(\014le)g Fn()d Fo(in)j(an)o(y)f(\014le)75 1513 y(that)d(uses)h(the)h(History)e (library's)i(features.)18 b(It)12 b(supplies)i(extern)e(declarations)h (for)e(all)i(of)f(the)g(library's)75 1568 y(public)17 b(functions)f(and)g(v)m(ariables,)g(and)f(declares)h(all)g(of)f(the)h (public)h(data)d(structures.)75 1686 y Fm(2.2)33 b(History)22 b(Storage)137 1778 y Fo(The)16 b(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:)195 1839 y Fn(typedef)23 b(struct)g(_hist_entry)f({)243 1891 y(char)h(*line;)243 1943 y(char)g(*data;)195 1995 y(})h(HIST_ENTRY;)137 2058 y Fo(The)16 b(history)f(list)h(itself)g(migh)o(t)f(therefore)g(b)q(e)h (declared)g(as)195 2119 y Fn(HIST_ENTRY)22 b(**the_history_list;)137 2183 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:)195 2243 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(*/)p 2033 2253 21 42 v 195 2295 a(typedef)g(struct)g(_hist_state)f({)243 2347 y(HIST_ENTRY)g(**entries;)214 b(/*)23 b(Pointer)g(to)h(the)f (entries)g(themselves.)f(*/)243 2399 y(int)h(offset;)453 b(/*)23 b(The)h(location)e(pointer)h(within)g(this)h(array.)f(*/)p 2033 2409 V 243 2451 a(int)g(length;)453 b(/*)23 b(Number)g(of)h (elements)f(within)g(this)g(array.)g(*/)p 1985 2461 V 243 2503 a(int)g(size;)501 b(/*)23 b(Number)g(of)h(slots)f(allocated)g (to)g(this)h(array.)f(*/)p 2057 2513 V 243 2555 a(int)g(flags;)195 2606 y(})h(HISTORY_STATE;)137 2670 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.)p eop %%Page: 6 8 6 7 bop 75 -58 a Fo(6)1347 b(GNU)15 b(History)g(Library)75 183 y Fm(2.3)33 b(History)22 b(F)-6 b(unctions)137 278 y Fo(This)21 b(section)g(describ)q(es)h(the)f(calling)h(sequence)g(for) e(the)g(v)m(arious)h(functions)g(presen)o(t)g(in)g(GNU)75 333 y(History)l(.)75 441 y Fi(2.3.1)30 b(Initializing)20 b(History)h(and)f(State)g(Managemen)n(t)137 536 y Fo(This)e(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)75 591 y(library)f(when)g(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.)1650 679 y(F)l(unction)-1749 b Fh(void)20 b Fg(using)p 333 679 18 3 v 20 w(history)j Ff(\(\))195 734 y Fo(Begin)18 b(a)f(session)h(in)g(whic)o(h)g(the)g (history)f(functions)h(migh)o(t)f(b)q(e)h(used.)27 b(This)18 b(initializes)195 788 y(the)d(in)o(teractiv)o(e)h(v)m(ariables.)1650 877 y(F)l(unction)-1749 b Fh(HISTORY_STATE)21 b(*)e Fg(history)p 657 877 V 21 w(get)p 755 877 V 21 w(history)p 951 877 V 21 w(state)j Ff(\(\))195 931 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 (.)1650 1019 y(F)l(unction)-1749 b Fh(void)20 b Fg(history)p 377 1019 V 20 w(set)p 468 1019 V 21 w(history)p 664 1019 V 21 w(state)j Ff(\()p Fn(HISTORY_STATE)13 b(*state)p Ff(\))195 1074 y Fo(Set)i(the)h(state)e(of)h(the)g(history)g(list)h (according)g(to)e Fj(state)p Fo(.)75 1182 y Fi(2.3.2)30 b(History)20 b(List)h(Managemen)n(t)137 1277 y Fo(These)11 b(functions)h(manage)e(individual)k(en)o(tries)d(on)g(the)g(history)f (list,)i(or)f(set)f(parameters)g(managing)75 1332 y(the)15 b(list)h(itself.)1650 1420 y(F)l(unction)-1749 b Fh(void)20 b Fg(add)p 294 1420 V 20 w(history)j Ff(\()p Fn(char)14 b(*string)p Ff(\))195 1475 y Fo(Place)i Fj(string)j Fo(at)c(the)g(end)i (of)d(the)i(history)f(list.)22 b(The)15 b(asso)q(ciated)h(data)f (\014eld)h(\(if)g(an)o(y\))e(is)195 1530 y(set)h(to)g Fn(NULL)p Fo(.)1650 1618 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(remo)n(v)n(e)p 584 1618 V 20 w(history)k Ff(\()p Fn(int)14 b(which)p Ff(\))195 1673 y Fo(Remo)o(v)o(e)g(history)g(en)o (try)f(at)h(o\013set)f Fj(whic)o(h)h Fo(from)g(the)g(history)l(.)19 b(The)14 b(remo)o(v)o(ed)g(elemen)o(t)g(is)195 1727 y(returned)i(so)e (y)o(ou)h(can)h(free)f(the)g(line,)i(data,)d(and)h(con)o(taining)h (structure.)1650 1816 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(replace)p 580 1816 V 22 w(history)p 777 1816 V 20 w(en)n(try)24 b Ff(\()p Fn(int)14 b(which,)g(char)283 1870 y(*line,)g(char)g(*data)p Ff(\))195 1925 y Fo(Mak)o(e)f(the)h (history)f(en)o(try)g(at)g(o\013set)g Fj(whic)o(h)h Fo(ha)o(v)o(e)g Fj(line)k Fo(and)13 b Fj(data)p Fo(.)19 b(This)14 b(returns)g(the)f (old)195 1980 y(en)o(try)k(so)g(y)o(ou)g(can)g(disp)q(ose)i(of)d(the)i (data.)25 b(In)18 b(the)f(case)h(of)f(an)g(in)o(v)m(alid)i Fj(whic)o(h)p Fo(,)g(a)e Fn(NULL)195 2035 y Fo(p)q(oin)o(ter)f(is)f (returned.)1650 2123 y(F)l(unction)-1749 b Fh(void)20 b Fg(clear)p 320 2123 V 21 w(history)j Ff(\(\))195 2178 y Fo(Clear)15 b(the)h(history)f(list)h(b)o(y)f(deleting)i(all)f(the)f (en)o(tries.)1650 2266 y(F)l(unction)-1749 b Fh(void)20 b Fg(sti\015e)p 320 2266 V 21 w(history)j Ff(\()p Fn(int)14 b(max)p Ff(\))195 2321 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.)1650 2409 y(F)l(unction)-1749 b Fh(int)20 b Fg(unsti\015e)p 358 2409 V 21 w(history)i Ff(\(\))195 2463 y Fo(Stop)e(sti\015ing)i (the)f(history)l(.)36 b(This)21 b(returns)g(the)f(previous)i(amoun)o(t) e(the)g(history)h(w)o(as)195 2518 y(sti\015ed.)g(The)15 b(v)m(alue)i(is)e(p)q(ositiv)o(e)i(if)e(the)g(history)h(w)o(as)e (sti\015ed,)i(negativ)o(e)f(if)h(it)f(w)o(asn't.)1650 2606 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 2606 V 20 w(is)p 409 2606 V 21 w(sti\015ed)k Ff(\(\))195 2661 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.)p eop %%Page: 7 9 7 8 bop 75 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g (History)889 b(7)75 183 y Fi(2.3.3)30 b(Information)19 b(Ab)r(out)i(the)f(History)h(List)137 279 y Fo(These)13 b(functions)h(return)f(information)g(ab)q(out)f(the)h(en)o(tire)h (history)e(list)i(or)e(individual)k(list)e(en)o(tries.)1650 371 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(**)e Fg(history)p 605 371 18 3 v 21 w(list)24 b Ff(\(\))195 426 y Fo(Return)f(a)g Fn(NULL)f Fo(terminated)g(arra)o(y)g(of)g Fn(HIST_ENTRY)f Fo(whic)o(h)j(is)f(the)f(curren)o(t)h(input)195 481 y(history)l(.)j (Elemen)o(t)18 b(0)e(of)h(this)h(list)g(is)f(the)h(b)q(eginning)h(of)e (time.)26 b(If)17 b(there)g(is)h(no)f(history)l(,)195 535 y(return)e Fn(NULL)p Fo(.)1650 627 y(F)l(unction)-1749 b Fh(int)20 b Fg(where)p 325 627 V 20 w(history)j Ff(\(\))195 682 y Fo(Returns)16 b(the)f(o\013set)f(of)h(the)g(curren)o(t)g(history) g(elemen)o(t.)1650 773 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(curren)n(t)p 587 773 V 21 w(history)k Ff(\(\))195 828 y Fo(Return)g(the)f(history)g(en)o(try)g(at)f(the)h(curren)o(t)g(p) q(osition,)j(as)c(determined)j(b)o(y)e Fn(where_)195 883 y(history)14 b(\(\))p Fo(.)20 b(If)15 b(there)g(is)h(no)f(en)o(try) g(there,)g(return)g(a)g Fn(NULL)g Fo(p)q(oin)o(ter.)1650 975 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(history)p 579 975 V 21 w(get)j Ff(\()p Fn(int)15 b(offset)p Ff(\))195 1029 y Fo(Return)21 b(the)g(history)g(en)o(try)f(at)g(p)q(osition)i Fj(o\013set)p Fo(,)e(starting)g(from)g Fn(history_base)p Fo(.)35 b(If)195 1084 y(there)16 b(is)h(no)g(en)o(try)f(there,)g(or)g (if)g Fj(o\013set)h Fo(is)g(greater)e(than)h(the)h(history)f(length,)h (return)f(a)195 1139 y Fn(NULL)f Fo(p)q(oin)o(ter.)1650 1231 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 1231 V 20 w(total)p 487 1231 V 22 w(b)n(ytes)j Ff(\(\))195 1285 y Fo(Return)c(the)f(n)o(um)o(b)q(er)g(of)g(b)o(ytes)g(that)f(the)h (primary)h(history)f(en)o(tries)g(are)g(using.)29 b(This)195 1340 y(function)16 b(returns)f(the)g(sum)h(of)e(the)i(lengths)f(of)g (all)h(the)g(lines)g(in)g(the)g(history)l(.)75 1452 y Fi(2.3.4)30 b(Mo)n(ving)21 b(Around)f(the)h(History)g(List)137 1548 y Fo(These)16 b(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.) 1650 1640 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 1640 V 20 w(set)p 442 1640 V 21 w(p)r(os)h Ff(\()p Fn(int)15 b(pos)p Ff(\))195 1694 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.)1650 1786 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(previous)p 615 1786 V 20 w(history)k Ff(\(\))195 1841 y Fo(Bac)o(k)17 b(up)h(the)f(curren)o(t)g (history)g(o\013set)f(to)h(the)g(previous)h(history)f(en)o(try)l(,)g (and)g(return)g(a)195 1896 y(p)q(oin)o(ter)f(to)e(that)h(en)o(try)l(.)k (If)d(there)f(is)h(no)f(previous)h(en)o(try)l(,)f(return)g(a)g Fn(NULL)f Fo(p)q(oin)o(ter.)1650 1987 y(F)l(unction)-1749 b Fh(HIST_ENTRY)21 b(*)e Fg(next)p 514 1987 V 21 w(history)k Ff(\(\))195 2042 y Fo(Mo)o(v)o(e)17 b(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)195 2097 y(the)d(a)g(p)q(oin)o(ter)h(to)e(that)h(en)o (try)l(.)20 b(If)15 b(there)g(is)h(no)f(next)g(en)o(try)l(,)g(return)g (a)g Fn(NULL)g Fo(p)q(oin)o(ter.)75 2208 y Fi(2.3.5)30 b(Searc)n(hing)21 b(the)f(History)h(List)137 2304 y Fo(These)14 b(functions)g(allo)o(w)g(searc)o(hing)g(of)e(the)i(history)f(list)h (for)f(en)o(tries)h(con)o(taining)g(a)f(sp)q(eci\014c)i(string.)75 2359 y(Searc)o(hing)f(ma)o(y)g(b)q(e)g(p)q(erformed)g(b)q(oth)g(forw)o (ard)e(and)i(bac)o(kw)o(ard)f(from)g(the)h(curren)o(t)g(history)f(p)q (osition.)75 2414 y(The)j(searc)o(h)f(ma)o(y)g(b)q(e)i Fj(anc)o(hored)p Fo(,)e(meaning)h(that)f(the)h(string)g(m)o(ust)f(matc) o(h)g(at)g(the)h(b)q(eginning)i(of)d(the)75 2469 y(history)g(en)o(try)l (.)1650 2560 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 2560 V 20 w(searc)n(h)j Ff(\()p Fn(char)14 b(*string,)g(int)h (direction)p Ff(\))195 2615 y Fo(Searc)o(h)g(the)h(history)f(for)f Fj(string)p Fo(,)h(starting)f(at)h(the)g(curren)o(t)g(history)g (o\013set.)k(If)d Fj(direction)195 2670 y Fn(<)j Fo(0,)g(then)g(the)h (searc)o(h)e(is)i(through)e(previous)i(en)o(tries,)g(else)g(through)f (subsequen)o(t.)32 b(If)p eop %%Page: 8 10 8 9 bop 75 -58 a Fo(8)1347 b(GNU)15 b(History)g(Library)195 183 y Fj(string)k Fo(is)d(found,)f(then)h(the)f(curren)o(t)g(history)g (index)i(is)f(set)f(to)f(that)h(history)g(en)o(try)l(,)g(and)195 238 y(the)g(v)m(alue)h(returned)f(is)g(the)g(o\013set)f(in)h(the)g (line)h(of)e(the)h(en)o(try)g(where)g Fj(string)j Fo(w)o(as)c(found.) 195 293 y(Otherwise,)i(nothing)f(is)h(c)o(hanged,)f(and)h(a)e(-1)h(is)h (returned.)1650 396 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 396 18 3 v 20 w(searc)n(h)p 527 396 V 21 w(pre\014x)i Ff(\()p Fn(char)15 b(*string,)f(int)g(direction)p Ff(\))195 451 y Fo(Searc)o(h)i(the)f(history)g(for)g Fj(string)p Fo(,)g(starting)g(at)g(the)g(curren)o(t)h(history)f (o\013set.)k(The)d(searc)o(h)195 506 y(is)h(anc)o(hored:)23 b(matc)o(hing)17 b(lines)h(m)o(ust)e(b)q(egin)i(with)f Fj(string)p Fo(.)25 b(If)17 b Fj(direction)h Fn(<)e Fo(0,)h(then)g(the) 195 560 y(searc)o(h)f(is)g(through)f(previous)i(en)o(tries,)f(else)g (through)g(subsequen)o(t.)22 b(If)16 b Fj(string)k Fo(is)c(found,)195 615 y(then)i(the)g(curren)o(t)g(history)g(index)h(is)g(set)e(to)h(that) f(en)o(try)l(,)h(and)g(the)g(return)g(v)m(alue)h(is)g(0.)195 670 y(Otherwise,)d(nothing)f(is)h(c)o(hanged,)f(and)h(a)e(-1)h(is)h (returned.)1650 773 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 773 V 20 w(searc)n(h)p 527 773 V 21 w(p)r(os)h Ff(\()p Fn(char)15 b(*string,)f(int)g(direction,)g(int)283 828 y(pos)p Ff(\))195 883 y Fo(Searc)o(h)h(for)g Fj(string)k Fo(in)d(the)f(history)g(list,)g(starting)g(at)f Fj(p)q(os)p Fo(,)h(an)g(absolute)g(index)i(in)o(to)e(the)195 937 y(list.)21 b(If)15 b Fj(direction)h Fo(is)g(negativ)o(e,)f(the)g(searc) o(h)g(pro)q(ceeds)g(bac)o(kw)o(ard)g(from)f Fj(p)q(os)p Fo(,)h(otherwise)195 992 y(forw)o(ard.)27 b(Returns)18 b(the)g(absolute)g(index)h(of)f(the)g(history)f(elemen)o(t)i(where)f Fj(string)k Fo(w)o(as)195 1047 y(found,)15 b(or)g(-1)g(otherwise.)75 1170 y Fi(2.3.6)30 b(Managing)20 b(the)g(History)h(File)137 1272 y Fo(The)16 b(History)g(library)h(can)e(read)h(the)g(history)g (from)f(and)h(write)g(it)g(to)f(a)h(\014le.)22 b(This)17 b(section)f(do)q(cu-)75 1327 y(men)o(ts)f(the)g(functions)h(for)f (managing)g(a)g(history)g(\014le.)1650 1430 y(F)l(unction)-1749 b Fh(int)20 b Fg(read)p 286 1430 V 20 w(history)i Ff(\()p Fn(char)15 b(*filename)p Ff(\))195 1485 y Fo(Add)h(the)f(con)o(ten)o (ts)f(of)h Fj(\014lename)j Fo(to)d(the)g(history)g(list,)g(a)g(line)h (at)f(a)f(time.)21 b(If)15 b Fj(\014lename)j Fo(is)195 1539 y Fn(NULL)p Fo(,)c(then)i(read)f(from)f(`)p Fn(~/.history)p Fo('.)k(Returns)e(0)f(if)g(successful,)i(or)d(errno)h(if)h(not.)1650 1643 y(F)l(unction)-1749 b Fh(int)20 b Fg(read)p 286 1643 V 20 w(history)p 481 1643 V 20 w(range)i Ff(\()p Fn(char)15 b(*filename,)e(int)i(from,)g(int)f(to)p Ff(\))195 1697 y Fo(Read)21 b(a)f(range)g(of)g(lines)i(from)e Fj(\014lename)p Fo(,)i(adding)f(them)g(to)f(the)g(history)h(list.)36 b(Start)195 1752 y(reading)15 b(at)e(line)j Fj(from)e Fo(and)g(end)h(at)e Fj(to)p Fo(.)19 b(If)c Fj(from)e Fo(is)i(zero,)f(start)f(at)g(the)h(b)q(eginning.)22 b(If)15 b Fj(to)195 1807 y Fo(is)i(less)g(than)f Fj(from)p Fo(,)g(then)h(read)f (un)o(til)i(the)e(end)h(of)f(the)h(\014le.)24 b(If)17 b Fj(\014lename)j Fo(is)d Fn(NULL)p Fo(,)f(then)195 1862 y(read)f(from)g(`)p Fn(~/.history)p Fo('.)i(Returns)f(0)f(if)h (successful,)g(or)e Fn(errno)h Fo(if)h(not.)1650 1965 y(F)l(unction)-1749 b Fh(int)20 b Fg(write)p 304 1965 V 22 w(history)i Ff(\()p Fn(char)15 b(*filename)p Ff(\))195 2020 y Fo(W)l(rite)23 b(the)f(curren)o(t)g(history)h(to)f Fj(\014lename)p Fo(,)j(o)o(v)o(erwriting)d Fj(\014lename)k Fo(if)d(necessary)l(.)42 b(If)195 2074 y Fj(\014lename)20 b Fo(is)d Fn(NULL)p Fo(,)f(then)g(write)h(the)f(history)h(list)g(to)f (`)p Fn(~/.history)p Fo('.)21 b(V)l(alues)d(returned)195 2129 y(are)d(as)g(in)h Fn(read_history)d(\(\))p Fo(.)1650 2232 y(F)l(unction)-1749 b Fh(int)20 b Fg(app)r(end)p 360 2232 V 19 w(history)j Ff(\()p Fn(int)14 b(nelements,)g(char)h (*filename)p Ff(\))195 2287 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(.)1650 2390 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 2390 V 20 w(truncate)p 582 2390 V 21 w(\014le)k Ff(\()p Fn(char)14 b(*filename,)g(int)h(nlines)p Ff(\))195 2445 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.)75 2568 y Fi(2.3.7)30 b(History)20 b(Expansion)137 2670 y Fo(These)c(functions)g(implemen)o(t)g Fn(csh)p Fo(-lik)o(e)g(history)g(expansion.)p eop %%Page: 9 11 9 10 bop 75 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g (History)889 b(9)1650 183 y(F)l(unction)-1749 b Fh(int)20 b Fg(history)p 351 183 18 3 v 20 w(expand)j Ff(\()p Fn(char)14 b(*string,)g(char)h(**output)p Ff(\))195 238 y Fo(Expand)k Fj(string)p Fo(,)g(placing)h(the)e(result)h(in)o(to)g Fj(output)p Fo(,)g(a)f(p)q(oin)o(ter)h(to)f(a)g(string)h(\(see)f(Sec-) 195 293 y(tion)d(1.1)g([History)f(In)o(teraction],)h(page)g(1\).)k (Returns:)195 370 y Fn(0)216 b Fo(If)16 b(no)g(expansions)h(to)q(ok)e (place)i(\(or,)d(if)j(the)f(only)g(c)o(hange)g(in)h(the)e(text)h(w)o (as)435 425 y(the)f(de-slashifying)j(of)c(the)i(history)f(expansion)h (c)o(haracter\);)195 502 y Fn(1)216 b Fo(if)16 b(expansions)g(did)g (tak)o(e)e(place;)195 580 y Fn(-1)192 b Fo(if)16 b(there)f(w)o(as)f(an) h(error)g(in)h(expansion;)195 657 y Fn(2)216 b Fo(if)16 b(the)g(returned)f(line)j(should)e(b)q(e)g(displa)o(y)o(ed,)h(but)e (not)g(executed,)i(as)e(with)435 712 y(the)g Fn(:p)g Fo(mo)q(di\014er)h(\(see)f(Section)i(1.1.3)c([Mo)q(di\014ers],)i(page)g (2\).)195 789 y(If)g(an)g(error)f(o)q(curred)i(in)g(expansion,)f(then)h Fj(output)f Fo(con)o(tains)g(a)g(descriptiv)o(e)i(error)d(mes-)195 844 y(sage.)1650 932 y(F)l(unction)-1749 b Fh(char)20 b(*)f Fg(history)p 422 932 V 21 w(arg)p 524 932 V 19 w(extract)24 b Ff(\()p Fn(int)14 b(first,)h(int)g(last,)f(char)283 987 y(*string)p Ff(\))195 1042 y Fo(Extract)g(a)g(string)g(segmen)o(t)g (consisting)i(of)e(the)g Fj(\014rst)i Fo(through)e Fj(last)h Fo(argumen)o(ts)f(presen)o(t)195 1097 y(in)i Fj(string)p Fo(.)k(Argumen)o(ts)15 b(are)f(brok)o(en)i(up)f(as)g(in)h(Bash.)1650 1185 y(F)l(unction)-1749 b Fh(char)20 b(*)f Fg(get)p 324 1185 V 21 w(history)p 520 1185 V 20 w(ev)n(en)n(t)25 b Ff(\()p Fn(char)14 b(*string,)g(int)h(*cindex,)f(int)283 1240 y(qchar)p Ff(\))195 1295 y Fo(Returns)h(the)g(text)f(of)g(the)h (history)g(ev)o(en)o(t)f(b)q(eginning)j(at)d Fj(string)k Fn(+)d Fj(*cindex)p Fo(.)20 b Fj(*cindex)f Fo(is)195 1350 y(mo)q(di\014ed)e(to)e(p)q(oin)o(t)h(to)f(after)g(the)h(ev)o(en)o (t)f(sp)q(eci\014er.)23 b(A)o(t)16 b(function)g(en)o(try)l(,)f Fj(cindex)21 b Fo(p)q(oin)o(ts)195 1404 y(to)16 b(the)h(index)h(in)o (to)e Fj(string)21 b Fo(where)c(the)g(history)f(ev)o(en)o(t)h(sp)q (eci\014cation)h(b)q(egins.)26 b Fj(qc)o(har)19 b Fo(is)195 1459 y(a)h(c)o(haracter)g(that)g(is)h(allo)o(w)o(ed)f(to)g(end)h(the)g (ev)o(en)o(t)f(sp)q(eci\014cation)i(in)g(addition)f(to)f(the)195 1514 y(\\normal")15 b(terminating)g(c)o(haracters.)1650 1602 y(F)l(unction)-1749 b Fh(char)20 b(**)f Fg(history)p 448 1602 V 21 w(tok)n(enize)25 b Ff(\()p Fn(char)14 b(*string)p Ff(\))195 1657 y Fo(Return)j(an)g(arra)o(y)f(of)g(tok)o(ens)g(parsed)h (out)g(of)f Fj(string)p Fo(,)h(m)o(uc)o(h)g(as)f(the)h(shell)h(migh)o (t.)25 b(The)195 1712 y(tok)o(ens)d(are)g(split)i(on)f(white)g(space)g (and)f(on)h(the)g(c)o(haracters)f Fn(\(\)<>;&|$)p Fo(,)h(and)f(shell) 195 1767 y(quoting)15 b(con)o(v)o(en)o(tions)h(are)e(ob)q(ey)o(ed.)75 1892 y Fm(2.4)33 b(History)22 b(V)-6 b(ariables)137 1987 y Fo(This)23 b(section)f(describ)q(es)h(the)f(externally)h(visible)h(v) m(ariables)f(exp)q(orted)f(b)o(y)g(the)g(GNU)f(History)75 2042 y(Library)l(.)1661 2130 y(V)l(ariable)-1749 b Fh(int)20 b Fg(history)p 351 2130 V 20 w(base)195 2185 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.)1661 2274 y(V)l(ariable)-1749 b Fh(int)20 b Fg(history)p 351 2274 V 20 w(length)195 2329 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.)1661 2417 y(V)l(ariable)-1749 b Fh(int)20 b Fg(max)p 283 2417 V 19 w(input)p 435 2417 V 21 w(history)195 2472 y Fo(The)14 b(maxim)o(um)f(n)o(um)o(b)q(er)h(of)e(history)i(en)o (tries.)19 b(This)14 b(m)o(ust)f(b)q(e)h(c)o(hanged)g(using)g Fn(stifle_)195 2527 y(history)g(\(\))p Fo(.)1661 2615 y(V)l(ariable)-1749 b Fh(char)20 b Fg(history)p 377 2615 V 20 w(expansion)p 644 2615 V 21 w(c)n(har)195 2670 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('.)p eop %%Page: 10 12 10 11 bop 75 -58 a Fo(10)1324 b(GNU)15 b(History)g(Library)1661 183 y(V)l(ariable)-1749 b Fh(char)20 b Fg(history)p 377 183 18 3 v 20 w(subst)p 529 183 V 20 w(c)n(har)195 238 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)195 293 y(default)16 b(is)f(`)p Fn(^)p Fo('.)1661 388 y(V)l(ariable)-1749 b Fh(char)20 b Fg(history)p 377 388 V 20 w(commen)n(t)p 627 388 V 19 w(c)n(har)195 443 y Fo(During)e(tok)o(enization,)h(if)f(this)h(c)o(haracter)e(is)i(seen)f (as)g(the)g(\014rst)g(c)o(haracter)f(of)g(a)h(w)o(ord,)195 498 y(then)e(it)g(and)g(all)h(subsequen)o(t)g(c)o(haracters)e(up)h(to)g (a)f(newline)j(are)e(ignored,)g(suppressing)195 553 y(history)f (expansion)h(for)f(the)g(remainder)h(of)f(the)g(line.)22 b(This)15 b(is)h(disabled)h(b)o(y)e(default.)1661 648 y(V)l(ariable)-1749 b Fh(char)20 b(*)f Fg(history)p 422 648 V 21 w(no)p 504 648 V 20 w(expand)p 704 648 V 20 w(c)n(hars)195 703 y Fo(The)j(list)h(of)f(c)o(haracters)f(whic)o(h)i (inhibit)h(history)e(expansion)h(if)g(found)f(immediately)195 758 y(follo)o(wing)16 b Fj(history)p 528 758 14 2 v 16 w(expansion)p 739 758 V 18 w(c)o(har)p Fo(.)j(The)d(default)f(is)h (whitespace)g(and)g(`)p Fn(=)p Fo('.)1661 853 y(V)l(ariable)-1749 b Fh(char)20 b(*)f Fg(history)p 422 853 18 3 v 21 w(searc)n(h)p 599 853 V 20 w(delimiter)p 843 853 V 23 w(c)n(hars)195 908 y Fo(The)f(list)h(of)e(additional)i(c)o(haracters)e(whic)o(h)i(can) f(delimit)h(a)f(history)g(searc)o(h)f(string,)h(in)195 963 y(addition)c(to)d(whitespace,)j(`)p Fn(:)p Fo(')d(and)i(`)p Fn(?)p Fo(')f(in)h(the)f(case)h(of)f(a)g(substring)h(searc)o(h.)19 b(The)12 b(default)195 1018 y(is)k(empt)o(y)l(.)1661 1113 y(V)l(ariable)-1749 b Fh(int)20 b Fg(history)p 351 1113 V 20 w(quotes)p 533 1113 V 21 w(inhibit)p 717 1113 V 23 w(expansion)195 1168 y Fo(If)13 b(non-zero,)f(single-quoted)i(w)o (ords)e(are)g(not)g(scanned)h(for)f(the)g(history)h(expansion)g(c)o (har-)195 1223 y(acter.)19 b(The)d(default)g(v)m(alue)g(is)g(0.)1661 1318 y(V)l(ariable)-1749 b Fh(Function)20 b(*)g Fg(history)p 527 1318 V 20 w(inhibit)p 710 1318 V 23 w(expansion)p 980 1318 V 21 w(function)195 1373 y Fo(This)12 b(should)g(b)q(e)g(set)f (to)f(the)i(address)f(of)g(a)g(function)h(that)e(tak)o(es)h(t)o(w)o(o)f (argumen)o(ts:)17 b(a)11 b Fn(char)195 1428 y(*)j Fo(\()p Fj(string)t Fo(\))f(and)i(an)f(in)o(teger)g(index)h(in)o(to)f(that)g (string)g(\()p Fj(i)r Fo(\).)20 b(It)14 b(should)h(return)f(a)g (non-zero)195 1482 y(v)m(alue)g(if)e(the)h(history)f(expansion)h (starting)f(at)g Fj(string[i])i Fo(should)f(not)f(b)q(e)h(p)q (erformed;)g(zero)195 1537 y(if)g(the)h(expansion)f(should)h(b)q(e)g (done.)20 b(It)13 b(is)g(in)o(tended)i(for)d(use)h(b)o(y)g (applications)i(lik)o(e)f(Bash)195 1592 y(that)j(use)h(the)g(history)f (expansion)i(c)o(haracter)e(for)g(additional)i(purp)q(oses.)28 b(By)18 b(default,)195 1647 y(this)e(v)m(ariable)g(is)g(set)f(to)f (NULL.)75 1780 y Fm(2.5)33 b(History)22 b(Programming)h(Example)137 1878 y Fo(The)16 b(follo)o(wing)g(program)e(demonstrates)g(simple)j (use)e(of)g(the)g(GNU)g(History)g(Library)l(.)195 1944 y Fn(main)23 b(\(\))195 1995 y({)243 2047 y(char)g(line[1024],)f(*t;) 243 2099 y(int)h(len,)g(done)h(=)g(0;)243 2203 y(line[0])f(=)g(0;)243 2307 y(using_history)f(\(\);)243 2359 y(while)h(\(!done\))290 2411 y({)338 2462 y(printf)g(\("history$)g("\);)338 2514 y(fflush)g(\(stdout\);)338 2566 y(t)h(=)g(fgets)f(\(line,)g(sizeof)g (\(line\))g(-)h(1,)f(stdin\);)338 2618 y(if)h(\(t)f(&&)h(*t\))386 2670 y({)p eop %%Page: 11 13 11 12 bop 75 -58 a Fo(Chapter)15 b(2:)k(Programming)c(with)g(GNU)g (History)867 b(11)434 183 y Fn(len)23 b(=)h(strlen)f(\(t\);)434 235 y(if)g(\(t[len)g(-)h(1])g(==)f('\\n'\))481 287 y(t[len)h(-)f(1])h (=)g('\\0';)386 339 y(})338 443 y(if)g(\(!t\))386 495 y(strcpy)f(\(line,)g("quit"\);)338 598 y(if)h(\(line[0]\))386 650 y({)434 702 y(char)f(*expansion;)434 754 y(int)g(result;)434 858 y(result)g(=)g(history_expand)f(\(line,)h(&expansion\);)434 910 y(if)g(\(result\))481 962 y(fprintf)g(\(stderr,)g("\045s\\n",)g (expansion\);)434 1065 y(if)g(\(result)g(<)h(0)g(||)f(result)g(==)h (2\))481 1117 y({)529 1169 y(free)f(\(expansion\);)529 1221 y(continue;)481 1273 y(})434 1377 y(add_history)f(\(expansion\);) 434 1429 y(strncpy)h(\(line,)g(expansion,)f(sizeof)h(\(line\))g(-)h (1\);)434 1480 y(free)f(\(expansion\);)386 1532 y(})338 1636 y(if)h(\(strcmp)f(\(line,)g("quit"\))g(==)g(0\))386 1688 y(done)g(=)h(1;)338 1740 y(else)f(if)h(\(strcmp)f(\(line,)g ("save"\))g(==)h(0\))386 1792 y(write_history)e(\("history_file"\);)338 1844 y(else)h(if)h(\(strcmp)f(\(line,)g("read"\))g(==)h(0\))386 1896 y(read_history)e(\("history_file"\);)338 1947 y(else)h(if)h (\(strcmp)f(\(line,)g("list"\))g(==)h(0\))386 1999 y({)434 2051 y(register)e(HIST_ENTRY)h(**the_list;)434 2103 y(register)f(int)i (i;)434 2207 y(the_list)e(=)i(history_list)e(\(\);)434 2259 y(if)h(\(the_list\))481 2311 y(for)h(\(i)f(=)h(0;)g(the_list[i];)e (i++\))529 2363 y(printf)h(\("\045d:)g(\045s\\n",)g(i)h(+)g (history_base,)e(the_list[i]->line\);)386 2414 y(})338 2466 y(else)h(if)h(\(strncmp)f(\(line,)g("delete",)g(6\))g(==)h(0\))386 2518 y({)434 2570 y(int)f(which;)434 2622 y(if)g(\(\(sscanf)g(\(line)g (+)h(6,)f("\045d",)h(&which\)\))e(==)i(1\))p eop %%Page: 12 14 12 13 bop 75 -58 a Fo(12)1324 b(GNU)15 b(History)g(Library)481 183 y Fn({)529 235 y(HIST_ENTRY)23 b(*entry)g(=)g(remove_history)f (\(which\);)529 287 y(if)i(\(!entry\))577 339 y(fprintf)f(\(stderr,)f ("No)i(such)f(entry)g(\045d\\n",)g(which\);)529 391 y(else)577 443 y({)625 495 y(free)g(\(entry->line\);)625 546 y(free)g(\(entry\);) 577 598 y(})481 650 y(})434 702 y(else)481 754 y({)529 806 y(fprintf)g(\(stderr,)g("non-numeric)f(arg)h(given)h(to)f (`delete'\\n"\);)481 858 y(})386 910 y(})290 962 y(})195 1013 y(})p eop %%Page: 13 15 13 14 bop 75 -58 a Fo(App)q(endix)17 b(A:)e(Concept)g(Index)1196 b(13)75 183 y Fk(App)r(endix)25 b(A)41 b(Concept)27 b(Index)75 359 y Fm(A)75 417 y Fe(anc)o(hored)14 b(searc)o(h)s Fd(.)7 b(.)f(.)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(.)16 b Fe(7)75 517 y Fm(E)75 575 y Fe(ev)o(en)o(t)d(designators)c Fd(.)g(.)d(.)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(.)21 b Fe(1)1012 359 y Fm(H)1012 417 y Fe(history)15 b(ev)o(en)o(ts)s Fd(.)7 b(.)f(.)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 (.)16 b Fe(1)1012 467 y(history)f(expansion)6 b Fd(.)j(.)d(.)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(.)19 b Fe(1)1012 517 y(History)14 b(Searc)o(hing)5 b Fd(.)j(.)e(.)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(.)18 b Fe(7)p eop %%Page: 14 16 14 15 bop 75 -58 a Fo(14)1324 b(GNU)15 b(History)g(Library)p eop %%Page: 15 17 15 16 bop 75 -58 a Fo(App)q(endix)17 b(B:)e(F)l(unction)h(and)g(V)l (ariable)g(Index)919 b(15)75 183 y Fk(App)r(endix)25 b(B)41 b(F)-7 b(unction)26 b(and)h(V)-7 b(ariable)26 b(Index)75 359 y Fm(A)75 417 y Fc(add)p 137 417 12 2 v 13 w(history)6 b Fd(.)s(.)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(.)18 b Fe(6)75 467 y Fc(append)p 197 467 V 12 w(history)8 b Fd(.)e(.)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(8)75 567 y Fm(C)75 625 y Fc(clear)p 177 625 V 12 w(history)s Fd(.)t(.)6 b(.)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(.)16 b Fe(6)75 675 y Fc(current)p 217 675 V 11 w(history)7 b Fd(.)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(.)22 b Fe(7)75 774 y Fm(G)75 832 y Fc(get)p 137 832 V 13 w(history)p 290 832 V 11 w(event)8 b Fd(.)e(.)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(.)22 b Fe(9)75 932 y Fm(H)75 990 y Fc(history)p 217 990 V 11 w(arg)p 288 990 V 13 w(extract)7 b Fd(.)t(.)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(.)20 b Fe(9)75 1040 y Fc(history)p 217 1040 V 11 w(base)f Fd(.)6 b(.)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(.)g(.)19 b Fe(9)75 1090 y Fc(history_co)o(mm)o(ent)o(_c)o(har)g Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)23 b Fe(10)75 1139 y Fc(history)p 217 1139 V 11 w(expand)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(9)75 1189 y Fc(history)p 217 1189 V 11 w(expansion)p 408 1189 V 11 w(char)17 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(.)18 b Fe(9)75 1239 y Fc(history)p 217 1239 V 11 w(get)6 b Fd(.)f(.)h(.)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(.)18 b Fe(7)75 1289 y Fc(history)p 217 1289 V 11 w(get)p 288 1289 V 13 w(history)p 441 1289 V 12 w(state)9 b Fd(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)h(.)f(.)g(.)g(.)g(.)g(.)23 b Fe(6)75 1339 y Fc(history_in)o(hi)o (bit)o(_e)o(xpa)o(nsi)o(on)o(_fu)o(nc)o(tio)o(n)c Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)22 b Fe(10)75 1389 y Fc(history)p 217 1389 V 11 w(is)p 268 1389 V 14 w(stifled)8 b Fd(.)s(.)f(.)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(.)21 b Fe(6)75 1438 y Fc(history)p 217 1438 V 11 w(length)15 b Fd(.)6 b(.)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(.)17 b Fe(9)75 1488 y Fc(history)p 217 1488 V 11 w(list)5 b Fd(.)g(.)h(.)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(.)17 b Fe(7)75 1538 y Fc(history_no)o(_e)o(xpa)o(nd)o (_ch)o(ars)e Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)19 b Fe(10)75 1588 y Fc(history_qu)o(ot)o (es_)o(in)o(hib)o(it_)o(ex)o(pan)o(si)o(on)13 b Fd(.)6 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)16 b Fe(10)75 1638 y Fc(history)p 217 1638 V 11 w(search)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(7)75 1687 y Fc(history_se)o(ar)o (ch_)o(de)o(lim)o(ite)o(r_)o(cha)o(rs)15 b Fd(.)6 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)18 b Fe(10)75 1737 y Fc(history)p 217 1737 V 11 w(search)p 348 1737 V 12 w(pos)8 b Fd(.)d(.)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(.)21 b Fe(8)75 1787 y Fc(history)p 217 1787 V 11 w(search)p 348 1787 V 12 w(prefix)5 b Fd(.)t(.)h(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.) g(.)g(.)g(.)17 b Fe(8)75 1837 y Fc(history)p 217 1837 V 11 w(set)p 288 1837 V 13 w(history)p 441 1837 V 12 w(state)9 b Fd(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)23 b Fe(6)75 1887 y Fc(history)p 217 1887 V 11 w(set)p 288 1887 V 13 w(pos)t Fd(.)5 b(.)h(.)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(.)16 b Fe(7)1012 359 y Fc(history_sub)o(st)o(_ch)o(ar)d Fd(.)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(.) 17 b Fe(10)1012 409 y Fc(history)p 1154 409 V 12 w(tokenize)8 b Fd(.)s(.)e(.)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(9)1012 459 y Fc(history)p 1154 459 V 12 w(total)p 1266 459 V 12 w(bytes)7 b Fd(.)t(.)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(.)20 b Fe(7)1012 509 y Fc(history)p 1154 509 V 12 w(truncate)p 1326 509 V 11 w(file)5 b Fd(.)t(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)18 b Fe(8)1012 612 y Fm(M)1012 670 y Fc(max)p 1074 670 V 13 w(input)p 1187 670 V 13 w(history)13 b Fd(.)6 b(.)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(.)16 b Fe(9)1012 773 y Fm(N)1012 831 y Fc(next)p 1094 831 V 13 w(history)5 b Fd(.)s(.)h(.)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(.)g(.)g(.)g(.)g(.)18 b Fe(7)1012 934 y Fm(P)1012 992 y Fc(previous)p 1174 992 V 11 w(history)8 b Fd(.)t(.)e(.)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(7)1012 1096 y Fm(R)1012 1154 y Fc(read)p 1094 1154 V 13 w(history)5 b Fd(.)s(.)h(.)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(.)g(.)g(.)g(.)g(.)18 b Fe(8)1012 1204 y Fc(read)p 1094 1204 V 13 w(history)p 1247 1204 V 11 w(range)8 b Fd(.)d(.)h(.)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(.)21 b Fe(8)1012 1253 y Fc(remove)p 1134 1253 V 12 w(history)8 b Fd(.)e(.)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(.)24 b Fe(6)1012 1303 y Fc(replace)p 1154 1303 V 12 w(history)p 1306 1303 V 11 w(entry)5 b Fd(.)t(.)h(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)18 b Fe(6)1012 1406 y Fm(S)1012 1464 y Fc(stifle)p 1134 1464 V 12 w(history)8 b Fd(.)e(.)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(.)24 b Fe(6)1012 1568 y Fm(U)1012 1626 y Fc(unstifle)p 1174 1626 V 11 w(history)8 b Fd(.)t(.)e(.)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(6)1012 1676 y Fc(using)p 1114 1676 V 13 w(history)s Fd(.)s(.)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(.)g(.)17 b Fe(6)1012 1779 y Fm(W)1012 1837 y Fc(where)p 1114 1837 V 13 w(history)s Fd(.)s(.)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(.)g(.)17 b Fe(7)1012 1887 y Fc(write)p 1114 1887 V 13 w(history)s Fd(.)s(.)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(.)g(.)17 b Fe(8)p eop %%Page: 16 18 16 17 bop 75 -58 a Fo(16)1324 b(GNU)15 b(History)g(Library)p eop %%Page: -1 19 -1 18 bop 1862 -58 a Fo(i)75 183 y Fk(T)-7 b(able)27 b(of)f(Con)n(ten)n(ts)75 354 y Fm(1)67 b(Using)22 b(History)h(In)n (teractiv)n(ely)9 b Fb(.)k(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)h(.)31 b Fm(1)224 423 y Fo(1.1)45 b(History)15 b(Expansion)5 b Fa(.)j(.)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(.)19 b Fo(1)374 478 y(1.1.1)44 b(Ev)o(en)o(t)14 b(Designators)e Fa(.)7 b(.)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(.)26 b Fo(1)374 532 y(1.1.2)44 b(W)l(ord)15 b(Designators)5 b Fa(.)h(.)i(.)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 (.)19 b Fo(2)374 587 y(1.1.3)44 b(Mo)q(di\014ers)t Fa(.)8 b(.)g(.)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(.)19 b Fo(2)75 708 y Fm(2)67 b(Programming)23 b(with)g(GNU)f(History)16 b Fb(.)10 b(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)38 b Fm(5)224 777 y Fo(2.1)45 b(In)o(tro)q(duction)16 b(to)f(History)10 b Fa(.)d(.)g(.)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(.)24 b Fo(5)224 832 y(2.2)45 b(History)15 b(Storage)c Fa(.)d(.)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(.)f(.)h(.)26 b Fo(5)224 886 y(2.3)45 b(History)15 b(F)l(unctions)d Fa(.)c(.)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(6)374 941 y(2.3.1)44 b(Initializing)18 b(History)d(and)h(State)e (Managemen)o(t)g Fa(.)7 b(.)h(.)g(.)f(.)h(.)f(.)29 b Fo(6)374 996 y(2.3.2)44 b(History)15 b(List)h(Managemen)o(t)d Fa(.)7 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.) h(.)f(.)h(.)f(.)h(.)f(.)29 b Fo(6)374 1051 y(2.3.3)44 b(Information)15 b(Ab)q(out)g(the)h(History)f(List)c Fa(.)d(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)26 b Fo(7)374 1106 y(2.3.4)44 b(Mo)o(ving)15 b(Around)g(the)g(History)g (List)c Fa(.)d(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f (.)h(.)25 b Fo(7)374 1160 y(2.3.5)44 b(Searc)o(hing)16 b(the)f(History)g(List)7 b Fa(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f (.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)22 b Fo(7)374 1215 y(2.3.6)44 b(Managing)15 b(the)g(History)g(File)6 b Fa(.)i(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.) f(.)h(.)f(.)h(.)f(.)h(.)20 b Fo(8)374 1270 y(2.3.7)44 b(History)15 b(Expansion)9 b Fa(.)f(.)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(.)24 b Fo(8)224 1325 y(2.4)45 b(History)15 b(V)l(ariables)6 b Fa(.)j(.)e(.)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(.)21 b Fo(9)224 1380 y(2.5)45 b(History)15 b(Programming)f(Example)7 b Fa(.)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(.)22 b Fo(10)75 1501 y Fm(App)r(endix)i(A)67 b(Concept)22 b(Index)17 b Fb(.)10 b(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)38 b Fm(13)75 1636 y(App)r(endix)24 b(B)67 b(F)-6 b(unction)25 b(and)e(V)-6 b(ariable)24 b(Index)16 b Fb(.)10 b(.)g(.)g(.)38 b Fm(15)p eop %%Page: -2 20 -2 19 bop 75 -58 a Fo(ii)1346 b(GNU)15 b(History)g(Library)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF