]> git.ipfire.org Git - thirdparty/bash.git/blame - doc/bashref.ps
document new readline variables "active-region-start-color" and "active-region-end...
[thirdparty/bash.git] / doc / bashref.ps
CommitLineData
5e13499c 1%!PS-Adobe-2.0
e59452c7 2%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
5e13499c 3%%Title: bashref.dvi
3011048a 4%%CreationDate: Tue Jan 18 15:57:35 2022
5e6f45d9 5%%Pages: 195
5e13499c
CR
6%%PageOrder: Ascend
7%%BoundingBox: 0 0 612 792
c302751c 8%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10
50fc6e33 9%%+ CMTI10 CMSLTT10 SFRM1095 CMTT12 CMTT9 CMMI9 CMR9 SFRM1440
d3ad40de 10%%DocumentPaperSizes: Letter
5e13499c
CR
11%%EndComments
12%DVIPSWebPage: (www.radicaleye.com)
13%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
d3ad40de 14%DVIPSParameters: dpi=600
3011048a 15%DVIPSSource: TeX output 2022.01.18:1057
d3ad40de 16%%BeginProcSet: tex.pro 0 0
5e13499c
CR
17%!
18/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
19N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
20mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
210 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
22landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
23mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
24matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
25exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
26statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
27N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
28/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
29/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
30array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
31df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
32definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
33}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
34B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
d3ad40de
CR
351 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
36/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
37setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
38restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
5e13499c
CR
39/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
40}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
41bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
42mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
43SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
44userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
451000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
46index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
45c0f7f8
CR
47/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
48def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
49rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
50N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
51false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
52length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
53forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
54BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
55{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
56round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
57rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
58/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}
59B/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
60-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{
610 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
5e13499c 62
50fc6e33
CR
63%%EndProcSet
64%%BeginProcSet: cm-super-t1.enc 0 0
65% This file is generated from `T1uni.map' and `glyphlist.txt', `gl-other.txt'
66%
67% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ;
68% LIGKERN quoteleft quoteleft =: quotedblleft ;
69% LIGKERN quoteright quoteright =: quotedblright ;
70% LIGKERN comma comma =: quotedblbase ; less less =: guillemotleft ;
71% LIGKERN greater greater =: guillemotright ;
72% LIGKERN f f =: ff ; f i =: fi ; f l =: fl ; ff i =: ffi ; ff l =: ffl ;
73%
74% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ;
75% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ;
76% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ;
77% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ;
78% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ;
79% LIGKERN nine {} * ; * {} nine ;
80%
81/T1Encoding [
82% 0x00
83/grave
84/acute
85/circumflex
86/tilde
87/dieresis
88/hungarumlaut
89/ring
90/caron
91/breve
92/macron
93/dotaccent
94/cedilla
95/ogonek
96/quotesinglbase
97/guilsinglleft
98/guilsinglright
99% 0x10
100/quotedblleft
101/quotedblright
102/quotedblbase
103/guillemotleft
104/guillemotright
105/endash
106/emdash
107/afii61664
108/perthousandzero % PERTHOUSAND ZERO
109/dotlessi
110/dotlessj
111/ff
112/fi
113/fl
114/ffi
115/ffl
116% 0x20
117/uni2423
118/exclam
119/quotedbl
120/numbersign
121/dollar
122/percent
123/ampersand
124/quoteright
125/parenleft
126/parenright
127/asterisk
128/plus
129/comma
130/hyphen
131/period
132/slash
133% 0x30
134/zero
135/one
136/two
137/three
138/four
139/five
140/six
141/seven
142/eight
143/nine
144/colon
145/semicolon
146/less
147/equal
148/greater
149/question
150% 0x40
151/at
152/A
153/B
154/C
155/D
156/E
157/F
158/G
159/H
160/I
161/J
162/K
163/L
164/M
165/N
166/O
167% 0x50
168/P
169/Q
170/R
171/S
172/T
173/U
174/V
175/W
176/X
177/Y
178/Z
179/bracketleft
180/backslash
181/bracketright
182/asciicircum
183/underscore
184% 0x60
185/quoteleft
186/a
187/b
188/c
189/d
190/e
191/f
192/g
193/h
194/i
195/j
196/k
197/l
198/m
199/n
200/o
201% 0x70
202/p
203/q
204/r
205/s
206/t
207/u
208/v
209/w
210/x
211/y
212/z
213/braceleft
214/bar
215/braceright
216/asciitilde
217/hyphen.alt % HANGING HYPHEN
218% 0x80
219/Abreve
220/Aogonek
221/Cacute
222/Ccaron
223/Dcaron
224/Ecaron
225/Eogonek
226/Gbreve
227/Lacute
228/Lcaron
229/Lslash
230/Nacute
231/Ncaron
232/Eng
233/Ohungarumlaut
234/Racute
235% 0x90
236/Rcaron
237/Sacute
238/Scaron
239/Scedilla
240/Tcaron
241/Tcommaaccent
242/Uhungarumlaut
243/Uring
244/Ydieresis
245/Zacute
246/Zcaron
247/Zdotaccent
248/IJ
249/Idotaccent
250/dcroat
251/section
252% 0xA0
253/abreve
254/aogonek
255/cacute
256/ccaron
257/dcaron
258/ecaron
259/eogonek
260/gbreve
261/lacute
262/lcaron
263/lslash
264/nacute
265/ncaron
266/eng
267/ohungarumlaut
268/racute
269% 0xB0
270/rcaron
271/sacute
272/scaron
273/scedilla
274/tcaron
275/tcommaaccent
276/uhungarumlaut
277/uring
278/ydieresis
279/zacute
280/zcaron
281/zdotaccent
282/ij
283/exclamdown
284/questiondown
285/sterling
286% 0xC0
287/Agrave
288/Aacute
289/Acircumflex
290/Atilde
291/Adieresis
292/Aring
293/AE
294/Ccedilla
295/Egrave
296/Eacute
297/Ecircumflex
298/Edieresis
299/Igrave
300/Iacute
301/Icircumflex
302/Idieresis
303% 0xD0
304/Eth
305/Ntilde
306/Ograve
307/Oacute
308/Ocircumflex
309/Otilde
310/Odieresis
311/OE
312/Oslash
313/Ugrave
314/Uacute
315/Ucircumflex
316/Udieresis
317/Yacute
318/Thorn
319/SS % Germandbls
320% 0xE0
321/agrave
322/aacute
323/acircumflex
324/atilde
325/adieresis
326/aring
327/ae
328/ccedilla
329/egrave
330/eacute
331/ecircumflex
332/edieresis
333/igrave
334/iacute
335/icircumflex
336/idieresis
337% 0xF0
338/eth
339/ntilde
340/ograve
341/oacute
342/ocircumflex
343/otilde
344/odieresis
345/oe
346/oslash
347/ugrave
348/uacute
349/ucircumflex
350/udieresis
351/yacute
352/thorn
353/germandbls % or /germandbls.alt
354] def
355
5e13499c 356%%EndProcSet
d3ad40de 357%%BeginProcSet: texps.pro 0 0
37c41ab1
CR
358%!
359TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
360index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
361exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
362ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
363pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
364div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
365/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
366definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
367sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
368mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
369exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
370forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
8a9c66f6 371end
37c41ab1
CR
372
373%%EndProcSet
50fc6e33
CR
374%%BeginFont: SFRM1440
375%!FontType1-1.0: SFRM1440 0.3
376%%CreationDate: Wed Sep 12 2001
377% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>.
378% See the file COPYING (GNU General Public License) for license conditions.
379% Converted from METAFONT EC/TC and LH fonts:
380% ecrm1440, tcrm1440, larm1440, lbrm1440, lcrm1440, rxrm1440.
38111 dict begin
382/FontInfo 6 dict dup begin
383/version (0.3) def
384/FullName (Computer Modern Roman) def
385/FamilyName (Computer Modern) def
386/ItalicAngle 0 def
387/isFixedPitch false def
388/Weight (Medium) def
389end readonly def
390/FontName /SFRM1440 def
391/Encoding StandardEncoding def
392/PaintType 0 def
393/FontType 1 def
394/FontMatrix [0.001 0 0 0.001 0 0] def
395/FontBBox{-178 -319 1370 944}readonly def
396currentdict end
397currentfile eexec
398D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11
39969C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB
400CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89
401F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3
402F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C
403EF25195F68A2A98170E4875AA6B96583CD5632BAD9EB3D511DF934CD36447A31
404D420FA313B5721C37085F478B27E13191957AD30B8B082BCE733AF8402AA3B7D
405EC69807BBAA8142AF1CE151D99F5A59AD18798F94781EFAD48BEC8C62C05C56A
406336D71AB584F6DF014C56523108606FADE931125496247870E980A65AB33C0C6
407D5B074864D0F58CBE333EFA1201AF335FBDBFB1CC8B1294856C250F222BFB8BE
4085DE74F808904F7678552F213C674497F829E96812D340939F73737731D289801
40954E5A8F7F5067ACD9D768F4649B51E54513F2F7878141FC719627C23FC5FBBB6
4103F663343D902E95C56C559B588088227B22378FAAB29392FA62933283D2FB2EA
411FDAEC6C1A94ABA0B5BEFA1E728A2052434BFBF6D9759D02A2C6092D4EF794241
412CC28BC939A424AFA193F96530985EE89E2731F6A99BC84C6551A3FEA1342509D
413D389F786C8EAF972B8C98B79003B6C71E6696518BE4CAD2A317C5D29621031B4
41400A035445D8CFB67D6C136B3F6D82396E11A3679BC82498519C27601236F1FCA
415073DA7817B529424CAF49A0AEE8FF7520C0F204A3B1725F46C2C6953C20E93B6
4162F3EED0EEDF87A350CB841516107D9571503A3D62A2F81840070D43392160783
417D111F3463760EBE634515DA1A1B6C3A5D14FC475F277BAC792FB69B4219E9BF5
418E6F8520584096A7B7BFE439A1604C2BBBB9140A4F4728B4B553A27E1AF52181D
419701E90C4FBB16EA8DB39B562E5A2932D45893081D52E020A1FCBC44DC204F4A5
420BEE47F9D25876644CC856B1FC225B61124B89B896C39CDAB0ACCA8277F827382
4216F58A0C8456DC41217219D894B42968FB2EC75D5518B6C4413BAC889532F0B0B
422A8D728949CEA00D4A1FD757B3A2336D472842ACF8EB9869044947C67D9AC7BBF
4237386DDE209A8DC9F18085952818F67FDC6088D9C8BC51BA6DC0FA37A0F81EDB8
4246F259FA8C0FA3D55BC44529889E72E407C89ACF658631A0508FD7991088644B4
425C958031B52421F9CE73A0479A3175231EFD9E0F7A7B08380E9BAF015730B175B
42693C380D1D0F3EB929B7182691BE7E2116CE295CA4331ABD7ECAD7D2DD46FE3E0
4275D3893ED100135901FD42B4E11BEB2689A13E86F1E68635DD81E5A720082E802
42889B440A111B2CDC6BFE79E5B2EB0C528FA0E958F0E981EC29C3B02A9186D7907
429A0CC29251E567958BA95DE609A421581433DD50AF96A82A5ADEFD1C9540D87A8
430D74A7709AF84AD36753784ED8267D3C2521A32C7A9D5BE01E0AF3B349200639C
43190C8BF2E26920AC410A9C5D1EB85C0ADD16BAA83B6C0BFE82483D3B719DC19AC
43289155140691E3E37F861C53A6F39441B5F229828B198DF5BF6286060DCB64433
433F43499E4AB973F84655311A644ED0921B41B9AE7A8060CB1F45E824FB3497C63
4340A13CB5902294E66186E4496A825447734DF4AB581803488B912E7DCD6007527
435B4CFDC5AD5D1DB430007AE929F969EE332CCF235DAF977D387E47BE0EE337118
4368CFAAC0907E16B0BEAECC3B39221867AE6464BE9AB4CE591B2E24B45AD2C70E2
437A183065810D6AC3DE8EA9F66615113F1E683A4475CE5817491ECBDD4A4818AED
438EAFEAB8B93FBDB335D02FAF9276958EFAEE1057C45D313419D195068076D77B2
439C0FF6EA8D6F3F0A899D17E04B8B2141EE335
4400000000000000000000000000000000000000000000000000000000000000000
4410000000000000000000000000000000000000000000000000000000000000000
4420000000000000000000000000000000000000000000000000000000000000000
4430000000000000000000000000000000000000000000000000000000000000000
4440000000000000000000000000000000000000000000000000000000000000000
4450000000000000000000000000000000000000000000000000000000000000000
4460000000000000000000000000000000000000000000000000000000000000000
4470000000000000000000000000000000000000000000000000000000000000000
448cleartomark
449%%EndFont
37c41ab1 450%%BeginFont: CMR9
45c0f7f8
CR
451%!PS-AdobeFont-1.0: CMR9 003.002
452%%Title: CMR9
453%Version: 003.002
454%%CreationDate: Mon Jul 13 16:17:00 2009
455%%Creator: David M. Jones
456%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
457%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR9.
458% This Font Software is licensed under the SIL Open Font License, Version 1.1.
459% This license is in the accompanying file OFL.txt, and is also
460% available with a FAQ at: http://scripts.sil.org/OFL.
461%%EndComments
462FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
463/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse
464{save true}{false}ifelse}{false}ifelse
37c41ab1 46511 dict begin
45c0f7f8
CR
466/FontType 1 def
467/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
468/FontName /CMR9 def
469/FontBBox {-39 -250 1036 750 }readonly def
45c0f7f8
CR
470/PaintType 0 def
471/FontInfo 9 dict dup begin
472/version (003.002) readonly def
473/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR9.) readonly def
37c41ab1
CR
474/FullName (CMR9) readonly def
475/FamilyName (Computer Modern) readonly def
476/Weight (Medium) readonly def
477/ItalicAngle 0 def
478/isFixedPitch false def
45c0f7f8
CR
479/UnderlinePosition -100 def
480/UnderlineThickness 50 def
37c41ab1 481end readonly def
37c41ab1
CR
482/Encoding 256 array
4830 1 255 {1 index exch /.notdef put} for
d3ad40de
CR
484dup 12 /fi put
485dup 44 /comma put
486dup 48 /zero put
487dup 49 /one put
488dup 50 /two put
489dup 51 /three put
490dup 52 /four put
491dup 53 /five put
492dup 54 /six put
493dup 55 /seven put
494dup 56 /eight put
495dup 57 /nine put
496dup 65 /A put
497dup 66 /B put
d37a4722 498dup 67 /C put
d3ad40de 499dup 68 /D put
d3ad40de
CR
500dup 72 /H put
501dup 73 /I put
d37a4722 502dup 76 /L put
d3ad40de
CR
503dup 77 /M put
504dup 78 /N put
505dup 79 /O put
506dup 80 /P put
507dup 82 /R put
508dup 83 /S put
d3ad40de
CR
509dup 88 /X put
510dup 97 /a put
511dup 98 /b put
512dup 99 /c put
513dup 100 /d put
514dup 101 /e put
515dup 102 /f put
516dup 103 /g put
517dup 104 /h put
518dup 105 /i put
519dup 106 /j put
520dup 107 /k put
521dup 108 /l put
522dup 109 /m put
523dup 110 /n put
524dup 111 /o put
525dup 112 /p put
526dup 113 /q put
527dup 114 /r put
528dup 115 /s put
529dup 116 /t put
530dup 117 /u put
531dup 118 /v put
532dup 119 /w put
533dup 120 /x put
534dup 121 /y put
535dup 122 /z put
37c41ab1 536readonly def
37c41ab1
CR
537currentdict end
538currentfile eexec
45c0f7f8
CR
539D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
5400E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
54151BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
5427C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
543E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
5440FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
545C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9AF72336CC4AD340
54615A449513D5F74BFB9A68ABC471020464E3E6E33008238B123DEDE18557D712E
547ED5223722892A4DAC477120B8C9F3FE3FD334EACD3E8AABDC3C967C61FF003B4
548B10C56D6A490CE9594D57A2D431B9E5E10FE3D8832E227A7087611431ABCD029
54985F4865E17E17F8CFBD2CADC97E0A8820E3ACEC873F31464466A9545E967E53C
550DBDDB8478E69063FBB891566BAF88B7660A4405B16834761F041CCF7650AF955
551F9E853AA9F5F4382E1FE7D0C5BB4023818A2383F91249D48CE021250EC9EEB1D
5522835E18FB73026250B32A8849067D5E2258797C917F998F2D4121D96560C5FB5
553B5D3471216639A8671B6DFAC5E3554EC36D9A72518525A795590C74DD70DA3A7
55478BFC43E51D6F2BA52F17D4DD00D389D3983EC54912AFF73684A8A7E345537B7
555E62361C04A47859DA084BC72EA53512DC54132EB2EE671793603015652EAFDE3
55641C4B6B679BD60AEC5153EA0D2200CB1D097DAD770F5F31E6FC475A225995277
557B867B731D5401E2D02B85BA85158C80FF7E2BBCC42B98AC867E67D25DB656072
55855A0D32AB7AA483A5A9686CEA4E2B3031D90D84DB3E2DEE7706C91BA81CB8DAA
559700E5F61E07D6998C9552C81B66FD10A10033D49EF3BCB0FF22ED0A3737523C9
5608F851C61C4BF8A213BF6EC70C956AE48B5BD276CC0437C72BF6515B10739919A
561F00F6ADD2798CB211668842349171A5AEB0664D2C44397E55A4A9EBDF54A3EF4
562FBBCDAD9DAEF4B0CAEF7112FA828F2F8D9F633D37E5516AB5ECEA87342EF8DC4
5633A50548490F5BC9A8A1F98AC7AEAD9D913BFA10CA86D73AEB5BACC1FEEFDCC15
564B3655522CCA2C772E902FAB2A6FC153597D52763EB44AB7489FF061F7F58E8F2
565AEAAF4D17F36CBFC00D3C653F335D14240C87DB4339DA9D30A5BD1F502BC9013
566461B9DB2FBEEC01BB18990439A0E9CA6576BC9CF6B1A3DB9386C4A5D4AA6A5DC
567CFA45FB75F22E10ECB72565DB441A194902C91427B4F676E531C661F7A2C3C85
568CD534D1C89B6779B2EDC8E44667B992C20C70B663BFBF680A6CF4383EB7CA26C
5694D1F06B5EF4025BBE65795F1EDB5CCB97050872D6C07BC2974F905ACDB7A765F
570291365D6C8152153E7F017A25FB4476C60FD9EAF9A121633DBEAC32F62850223
571D6418566AB350F90F4B35F19598478F76B63E347D4C61E203D4DB8ECB9889181
572C387F4B663A502C638761D2782BB96EAC81A0108D7BD6938F67FEBB69218D115
573D8E89CFABCE15C6ACC7FEB983332A51A6A73CF4E341574F366713D7FB29956D9
5749BF238A87483D37E526A2EA2F101EDD34E34CB92730DCA7235AA0027189BE405
5752DAB4AA021A30C28B26C50808E1E965C02F6212EC7C72F5683339425A7739380
576A422E6191ED8453AF0CAAA424AE44DFA7CC5C2F6EAA8D73A5101D8E9517DBCFB
5772858D0E8ECB7DC430EF23A9E4428CB7DED8D035D6050251AC101A2D0E884721E
5782F21E573F948048BB8FF888911C508CC198BD750083B339500C426AFCD5634A6
579AAAC1C7E91249667B231BBFC64B4317192FE07FE9DA0DDB5E517D097AAE46577
5809555F29D45C67CDE9812CAD03F220B20519F2FF32DCA56A554D4296FE2D1F3FB
581B209B5270E0E695EA5A0EF1144957CE045881AEB8D05D72CE57F4D34617AED67
5820D3AF0472CD8D60933651626550366E300E72A9C89ACD475C2E2ED9BD44B472D
5839DAFE943F8E02A6DC38E447EED964624C37C3130E48211CA279BB6A0BD59466B
58442F3D89B5746F29E084E22CF58395AF0F29E55113F3A3F2F52CB3A6DF3D026D0
585C81754B8E2E4A15F6943BE9D0087D5166060734FD07C4C57D7C7D90E8C9C1F35
586623CEEE3ABAE75E1A18A1E3B50B7266BD2D8E812CFEB4A46B856885B185640D6
587B9C22179551002B94282F57FB433B7FF157D2F0D240836B72AF4A331668AE5D4
588E6B85415F4E8B9D2F9AF90FAFAA0A3866DF417CA5A31348CF9B41B8F5F4D2F97
589CCF7ADE851B5E2E2F6E319AAF5792EBB9DA2C6AA8B73D889F3CDAA42932CDA7D
59007A7E59183CD89520DDFC36E5D513BFD8AD0886046585F29B4D7F42CC0C27AA7
59153915AB1167D292FE91957E94A57FEE2D49C20C9070ECD736BDEE0F046E60350
592EA539DC298156A4E0D019E7D481FDDA6861E20678516AB80ABEC1F09B126BCB9
59352E8272A06BB6DD87ACFC423B4A4FC9A3DC8DCAEBB807C5F748F1FF8B17B8B88
594F426206BF1B7B7D239D26BC3CF0776C467A98CFBBCA5FB6145D5900137ED19DC
595D002F10704AA680EC753C22E29AAB15712EF22AF73D80820A1EEE953463D4EA3
59681FAF99518D4FD0F862A324FC44C4B9542A92C5B60CC983CC8F647CE5BDB4D6D
597B92B380E0E5F7208A9CD91FA9A469548162C761C1BA05AC9D60B766764D821B6
598B4E17F56CE455F06EA1EE2D38FE47581746C4C5FBA63AEE2B58E877D1A8FA83A
59931C972D53B64E92EEEA147426A92CFBF76FC614119C6E9C6476FD6A069C803BF
600E949FBE50B5AB1F1463F9747E8D353F7BBD991C4F90F920BC9407D8E24720293
601846D052214E60390C3CB926D38C83AF697425D80C2B4FC4706615B905516B733
60246ACA325CEA68FB21B2D17CF0B68BA4DF249368625CF83441EDBF2B86C957C1E
60344CD722BD2537CE84FBA07EC7AE15C840041B9F7F3040072E6084CD55B301C08
604A64A53BD4D3DC30DCAC6C152F316ABC59B8EE978793EBD568849DCC2A75A495A
605BC83470D503F8E389F54B4A4A31624E83C601B43AC1E52CB811FAA7CA6B644A5
6061AE0BFD4FC774C9C9DFC2769ABFA9C83F900BE2DD4010416053A1D4874E6ECF4
607D86E44B4CAB15D53E5630C144B0C15B58DAAD785BA298B1893D1B09BA5D40344
6086678FD2D17FF6674433C976D6DAC659175CED26139967C9B2B9CFFD78FC2570A
609E5142141C2888DBF2DC8503F9137CE7CB21A1EBC2D65BF33FCEFBC85C9CB736E
61024E8595CE934AB032CC70BD6A3B0F3BDBFBBE185512FDB7BE3D4A6620478453E
61175D044BF770B44C9741E31985E6DAF5A318D7BED12B02A4BCFE60D25EF12843D
612EFC9BAE2A3F2EFAD66D7858E83EB46BB09D2FF8AE9C43844A7001C86ED97AF51
613C511E3A89A1BE349FF5215D1A57843EF51456B9838133846F19BE79AAA5C1AB0
6145F400E5E8E7B0BF96EFCA3B8F0894BE589F2C9FB6C97BD16D38F0A237CD4F034
615099C41F85C7E2C7BEC8E02C4F327306A53B4B48B26A8926670CEEF96F6DF2281
6167C2DAD99EF8B81BBB777227C2475AE7400DC393D9C0445E925DB1E955950F7AE
61753E9AC4306794239346A419F7B5DF4168382EF5956B81F83BD4BB7635B3BCC84
6187D84D05AEDC02D14675D777CD19B08124001A4F4EA96990D96000C082A12F00F
6197FEF793A7FA69D56D3A38D012168C5458B667190AFE80E02C816CAFF0A71953C
620D80B085CD286027E2FDBB05452AA762FD7C813B2E19A79C74190E04E746C4933
621CE1E300CAF5DD53B08110509BDA404EF07FA1BC5224BF1205DE8E0C3276A13DD
622866675103B960C5F36644F96B4FAC16F5D6E91F74629B318FCCC8E8CB13EB76B
623B0B7B90718D913A52A04732EA3667674994A325A7973C601A7DDD50F658E0826
624ACB8E53D4914B0274AED98D7BC3B2B7F9D48A7ECC2F8ABEE05CF2C4F2B90360B
625B7DF779EAF3E103D1D83EDBE32DDA873768D8C37DC10A5354A94B4153049AD64
626FF3E0BB51AB91D7C0B4134D8731CD0270DAAF19BED9EAD800A14B65B68EEE89B
62740DD624111670DDC7C030DEFE0D1B96420E249332445C155BA96231C88E70643
628D526BDF3CA1E05FEE72CE2B881CFC01ED780C10E89F0828AD55FE29043BC56E8
6292750A6DD15AADD54492F6092618F4CC6A31766B17FC60766D18C307EFC9BB787
63039047DAD6B38419EFBA46B4E2C932F97451FE78AD75FA90DE409FC6DD46585D2
6311941F5ED47A8FBAEF5A917A240959E8D9F9917DEA3247D9CAE6BF7A88DB4C4A4
632F9F5A6DCE542420A032FF3392FE0F3357B51F884D6181583A554F75B1DF192E9
633253CC828FF06B0D992D5316435980B044BB191508C7C45CD90F797F88856424B
63414A5707459C50EDCF3E3D8D1667AAA83015405354CE744C66D9A5728F29E0085
6356DBF740717FA0799E3BCC4ED7841588B496A5E549B953A7FD288B4A045DB611E
636E3B2F35963FF18ACCB1C968BEEA2CBF52B3999AAF89A05320BB2E97F52CFE06B
6379F10E3A79865A3059A957F97972D80ADF678A36E2B586C101FC6AFA4D137C13E
638EE7102C9B8EF78CB057F8B7476F146E8FF5C897FD5503DD198128CFF7B5FB339
639FAD0AF0EA967F77B07B367A4AC9F668F8BED99B98E87FAC750EE045602D76C3F
640289FC9D97694C96AAC0AD1BD3FA94DF2CBCEA24B40F47B9B59E54EECEE7AC4C3
641A3F5D19160E4C1EA830D57FBE10D8D46AC5CA0260F22FAA45236F0F542BEA9C5
6425A88F878F68B36114E0573900C65E305462B22A3429A17C7A567694414DDDA46
6435F30542B8FD4F00F6C295B2E8D3A986B953D96822DB2ECD48E8BB1763434E652
644152EF3717F5E7FA10FF0B01D9F64E22C5DBD7254629658887BACEC0ABDE972EE
64567299FB84A05B3EFE22B6976DB4CCA384232DDAE38C31623A4E39EA2E82C1EA3
646BBB68F1A7DBF405DEC37CB7203A895C36A44BD2D63F45B3888AF91D37B510A59
6473C921BB44DA620892AD87B665F69F6FA510B071ECC403CB2BE2F54B3969C9E88
648713244BC97C1466DA8216DA7600C221E7E7EF5C789D2E12B36422023A03E11BF
6492790FD6062FE6BF62F5010A92F0A104B76E255A0975E04F6F20F760881BDA7F5
650D834D1D328B6EC19AA7D5E5678A84C74C82553DBE8BB5765E84F5A8789032143
6516020940B4B8D45FC3433D356E28C25F42D0C19F911213D85951B2B00D01B77BB
652A4C72E964F9D95422BEDE582A05CD52E03D28A996E6CC8FCD910CBAB728073F9
653F9FAEED5470FFA55930447C5BA816F826F983D53EC9941EC8364B3060FD74C95
65426D4F5CA753B574FD2FA4D1D333785241D8741B79E628BC852FDC35478C5ED9A
655C1BE88C5EE7302816E65C12B58EA16FEDD4672EB3E24B6EDAD5DCE263BA8A970
656350B651E5A9F3C281D85BC3F44EADD0D93402E36489BA5185E7D388974B0B700
65770575188BB610CCA20F081E2CBDA13DCC6F72567962ADB342E02C1E763B673C5
658F7384E24C6E1730A3A790D690A2103AEF88E0C1D4480DC9B25E5C8C9E1919C95
659F83320179B4C7C4A26D559BFB24D7D596FB73758C9990C451E77FCDDD17763B8
6609C30A9534E3CB6680D3D419D4B70B0B0A0D160FCCDE169714E373F65B7144CC2
661DB9A44E041211E1517D3148E65A2486CBE5E74E625261CCF65392FB4F3091473
662F9E8DF327D59A58558E5C9F7190DB577D5DC658F5E36258291C708B3D224653D
663064BB6079F91293FC733710893AD1C96169B30CBFE4E9D52E7EFAE4AFEE68FEF
6641AFD5E7E9DFCE8DE332B0FDC0514F9B3090AC85BBFB527FD8034DD33E9576325
665A8769AE09AF1BA792447DDD932B98FC9486B39E0B04DDB3EFB7A30DA0940B33E
666E27490E0E841E87B1C90E5248A91742ABEDC10F43A8AF0F9C5B4A4930B1AADAF
66701874B9AC3B8D0DBECCDA6CD7E96471FAA15CB7F8A599C5746327CE392224C3C
66840BD60AF97BCA6FF6FCAB2FEA114D7300B89E91C3BC92D5B3E2C83BB37992D8C
66972F661EFD0AA034C738C019DFB79BF40651A1A34BC1EB9F5AAF58F8B3DA32645
67024AFF8636486F08BC21533B5FF7391B0679A78DFDCB03DAF6BB7475A1D51DAC1
671EE4BE9B986655D1FDB6936445EF99B58B303FE79F11275EEA96A9F6808EA8775
672D873D1052FAC93769789C700F20EB2ED6D15676F6E563A769CA9298E463FC311
67383281483B1C953370D196727A6A0E66D32D9480AB1B6DCA77868C1A2D5DB6483
6745F31EB6B18EEFEF1CDC31533E69B0AFC6B30FC9912DC89BAAEEADC30BE14F448
6751A6B70D36A5D9B01799BEEA686066114910842D022EB464A9A1E8F0A5628BA69
676AA9A1925CCADD44703BC67A89F3B48E4680726DC4360274185CF3C8AB747A8FC
6774B928AD62B092EFE48B01E33ED756DB696171FDB775396BBA138E056F71EDAE3
6787A1E4CC272B8418114B0E81DE0BC43DB3C133167344488820A92DF10FFA26FB9
67965FCA2C87D302E956DE6B4FE145145440C83DB43A68F8B29A592B127BDF49063
680B7F11E155CD4CAE305525BEA56B7C412A6260426407BD892A3F2B444AC3421E6
681FB6E6425EB5C3053C5644666B80405530FA0012B54557327C98E0F4F064099A6
6824ACAAFC1870359C1B6FBE7606BB8A26026AE20C212210449905E628AF1B20490
6838CE908B7EF3E3DB551C85AEB0F7FEB6A8D215B97998E5DD9C7CCFB2A9402B8B6
6841770D4023777D4B45A73F471355353412C51D4CE71FAD1E0AFBD87B5F86307F3
68510D0B94F1194EFFB64AD5DA54A4200490F609CA8B912E149F8217ABB1E9EBB3B
686C4470E7365CF5E1E761AA1945044B225BD53D142F6588C50E0644740F7DD55E4
6878F73201E5354A8BC78339211AFC4935F44701FBA043AAC4BA4698E9D7700029A
688C79F992F62627C91EB855F64C4B251718FDA71EDAF082A0C7B00550949D617A0
6897071FB14F05620CCF2180941341D8E60FC88823438FD728A4042AFA8B853107F
690852F631518B61B234565291B5D5B89DA818DEE3AE3B68A2869DFA63255CC882C
6913B16BBA08FCE3632E57FF7A07F857A1F0FDCADAB39D77960BD827CCC8661A997
692648BF5BEBC0FD2286C2A112A8DEB9CCB6330A049170D5D68EEEEA011D3EF3EBD
693855236B9380087CBBB6BE24191F728B7EAC5B50F7A547AA0989B7C7D3437DBCE
6941669341264E290646F2C8C5A3ACAAC7CB63DC692FAAE13E9B40E8BD39FE16A0C
6951660CE66872D061056C04DDDC265C024BEF8B7E3C3AEE76FE5C9702002C28BE0
696B180295EE00E567FA2E5CD1638226D24A7C732E1BD8103B476EF5702768689C7
697D4FCD47F2AB94A2B1FBAE6ABF87B09E7713C773FB65CA83F7318035B332B9F99
69824A2C8897527021321D003AAD7C273E4BFA2710B9BB26C2CFD3D9A5D7ED1096C
699552D50028AE2476FCD6D12A5D0A897521313ED1A3A8456A70C16EAA50A3E6733
7006DC89FEC56AB54A579EF264377A103939D5EE00A90B4F2206D0023AF9491FBE0
701800C6540FC945199E20E945F46CEEA2E885F6800B9DF042BCEF4291A4B1A62C8
7026A7ACFF872B25FA3AE69E0093F3D0FF13A3313430C06F1AF94D500431566F659
703E8C859A5F80F5BD2E85C8E32603D3745628E8FE6FBC50FA68F9C3811A2BEFEA4
7045852CAE2AE5AAD3230ED050593BAD0A9581EB7B327C6916B8FC348F4C23E6FA2
70500FA28AAACCB3091C1D83F7BB88672A53A2EA3B8C7C24374E400C57F0F01019F
706E52D5C47F389D4C9AF126F4080F9AB8D1C8F470932BBECCEC72A9796F6E965A4
70782057DDB43D68298A00880D4C2E2496F26F015FD83C5549215753459310339B7
7086B2961EEEE74DA31FEC8E2BDDA42D4080A32372AC372524BDDA580EF6634ACE3
709128C69D04D890DCA337212B109585C665AA83EFE47D5BABC2627A86EAD11BF7D
710744176652C7F9497785A7A06A994ED8414BBE8B26E74D48CB83FA24AAFBDD507
71184A90195EA3D77BCE8C2BEDDD1DC52E8164DF15D65B916EBDF3A8A76849653DF
712AE3CAF9561AF3B705F75B9E5DFD6758DB65A2FD54683759912E0D0035CFBCD86
7135C7018E5F1DFB86B739C4749DDCFB2F40529E1F15174DF4AE9833958B66ED869
714920CFB9524F05AB2FA84A4AC41A02490699F277A3B4ECC3C31ACF79E884B979C
715AEFF660A8EEF118C79F8DA266F89F32078B1C333DFA5264D6B64371276ED4DBD
7165A2DF213D85A56B1CA85DEA53ED0299C1FA48D463B11FC9A0751C986CAABB184
717829B1133CA8422DC11C6CEAAD463FEB468FC7AA2DDBE2E708D27D89164B12BD8
718B9A71A1D06D2FA9ED0B02168B32F6CC0FE765F2AF8A19C7196EE55648E642184
719BDF993C99EF7C10AD2A7962DB9B7851E6EE24A0C53475186BB44083AE18254B9
720F1CEA0B66A6581C81DE19DA8EEC9330A030F3384C1DF8216E5A25FB38C1B94F3
721403C3541593A016CB5FD306F41F40E82D4561EBCBF76153BDFCF338284348755
7220208360C5842FCD6B2D614387575B6E49F4B5A4DA281A352ABE8B76CFCD94A00
7231C586D19B68D965BD8D7EF0DC87271478CB4D0D1633676A2FC51B36876002A9B
724F5D632ED778BA9EA1C3741FFCC15AEEC11C8E1544DA7358473325812E50C2135
72584ECE7DCE281956681179C09C0E8DBAC5E4424AAD00FDA269BCD6412F1D6DCE0
7262BC7CABF85AE803D620F5140C63DAC4B0E5F7896343973FBB99486B93B6DB58F
72738ACBE8868CC58B3918C1AB4406FBCC7BE8496C78C9D628716BF1E306AA802D4
7285FAC522B1EE90448387DB8E85235FFAAF3754E2317B693D567A488753993B8C5
729DA3C8FA50A35202958FD0BF2900A6CE175920C2EC7CD449D4DB189A50958BF17
730644345CC38250088A694CF0F482ECC55ADCD02E17B3CCE66213A6163B8B44C9A
73189068E3B5301D2364F85BF9DF7C77342796363A7B6B294CE26DBB9179DC15756
732E1B32CE919AF44BC79A3AA8FDF6118345B2AE03F3B11D57D9AF50EBCF7152E37
73315510FBF60F16756FC674E2BF58E88CAB2CA2E8B47F50096C51179684331FD61
7348B34520C9C7D01E1511C924FA76B3CAF79501E0AA2C6E1EC6F00CB6CE24B4123
735F493B149B5A5147EF6BF1EF3CD21A76945B95082E1FB3C5A150D8AF793348E8C
736A988354FA46E3775486A6999E022EBE293E8396C8F9416929607730606CFA772
737BC8388BA5D64B79E52DD2048ABF21661121A001E6A75731B5DC43CE040396BD7
738B85603C8A0F37E522FD0CBA63C454B12960451CE65A69F98FB2FDBAE725C0999
73905FB68B4C1D320F5F3D61FA8446BE6F8BC46AD9CFA5674A3EC73B8F3419AF9EF
7407A1A3C9EDE3BD6359902D4B5F3AB4E3FF9CB2E1937937AFA182C651985703F20
741FB70E37AADED6345EF4E83CB140FF92310BACFBDA11F2CD5AD93AA7563D7426B
7420D4B6CF9B669F9A702956CA845E3814E4B5491E58F8C89714229942165A6E8E6
74358982D89C4FA7BC557214BF9ACE2C63AD88F2D1B18A04F510211687C35AA1F7F
744D2003D4E60400B95E70422024A7111D926F1B5A77074910710594B95680CFC4D
745911FC16B928D9644340A9D2382767FE6AD453E8E4CBF19F77D3DA2934B11FC95
746A6900C3CA3F2B6AE4290A005F908305CB37700680D76C4999AFE509B18305D28
74788C36292D6DA208A8D42F8B81FDEA7E93EE59D6AF3F1A3522EE91BE71BC655B9
74879C49B033A036E1FCD94FC581AE732A224F055503CFC69FBCDEA39CB00DC8A0B
7494BEFED99CFC4E44ED51DEDF9EA825FF6BB97D316726531CB4BA083B033C0B69B
7508068D5D3E3E31DED5F6267439F149549A6E12B00BA85818AEB491978364D9F7D
7517375CBD6C5511CC846D0058BD2CE5467EBCEACE5CBEB2D33AC8E12A84CA620EA
75299A0ED916B7770A056F6A9C361CD5118B5DDB10A5A4E643FFB8FC5DCBACDCB28
753696E26D030C5918548AD8B87E21E1B4BAA91AF23663CDE350A21C2CEEFD28947
754BC07BB49404FA39F251E36B95B7338EF03F2E63FBE0E023452097F21931A2599
7554EBA7BFA669EBEDC0F5B33375DFE6DB1638D19D4B5112B5338B14C93F707D340
756056B2B75AFE418EAF9CD57ED842F7B5FFF037B3A4B369C63E4DF9F0BDB4E39C6
757C5BE8EDA628F1C6FEEBC9D9886DBE502CCAA86092646094118069757DAC25C38
7582CA53CBA27577BAF2C57196489CBA54B96C650A1C130184A4444CDE2D0CB1A49
759FADCAF1FE3A66334F85FAFB00F142F28AF2D8FEFC29FE8E0FDA448F181040BF1
76062EA7AE75100BA46B49EF30F596CD9091164AF70666E254938BF6A44F01BBD2C
7614160164FD89FCD358E48908BEFBAAC4411B52390CEED6B46D729698CCA8E164C
762F77CEBB50C5254F81570E414B1E9E79269D3B2575E161620CC732C0405A29ED7
7631E5A6597D35B11EE08DC09FC9C27F0126C22C73A0EED657D7F91790777E7D8B1
764EBAFB0EC9ADAEFEF7F6A91A1028E46D76289EB1BC15D3597CFCD78D88B633759
76593CB4477596E28A1E413BE25D513BA611757C994AE812C5A6D9AD3F770499252
d37a4722
CR
766C7F53E585E03B2FF056EECFB7ABAC474A981D757AB3B6F2815E7AA8AF8BBA42D
7674D83EF8A0FE21CA5EBC295042AE5D74E6D05BECCEFDC74ACDD0A59AFDAD3E94F
768141E4BFA04ABEF7E6C43418A5EC54C6E8CCEA1C34DDFAC9CC87DD5E9D4BEE705
769F11B003956DB37B145DDEF022C645C19329E6C04E1EDCDB5F6A33AF1EDB9A17F
77079066B1C3579E70B2D43DD89D1F5FD2B2015FA5009D612781CF4916DD8C7B1B5
77121FF0CFAFCE882A106D356D8851F73635A4E7C81FE0BF6378DC2219BC883E3A8
77223290969A2ACC06A77866A8AB83B39289EB14B4F67511FC97F3BE410B4DE91C3
77354876DEB96AB3C60D1FB17D29172F96E98D3FA77B772C69D17A757B6CE32D2C1
77467182DC41B5E19F31F669A886DD4D08092AFAE132C0E0FF810FCBF937EB3AF0F
7755AF1416C11508EBDE0C0EC1C618CB6F66658D9CA3793D523D224F8C9A8ADF6B8
77616CE7D210FD4771ADCFEF08809C0E9A37170F0C02A9C9907FE38DF8795C6093E
7770DD464FC59313CA7EEF4658A498CFDA9458AA1A86B2A0933182954BFEC58E9AB
7783BF65DEF9BE5289826A7AE0AB0E93D83178049CCF8BADDAA7BCBCCA47F983E22
7793CCBB9D2D522DA2A5EDF409A862A52297FAC35CE11176A8B89671BE758CEA324
7805BD245937C46D52F15241E22F803F77E7B5ED83B6395F5387EA7CA46E1DB1F8D
781239374BE3F4640A6FE06CE65A07123B722523AB913DA6EA385F524940432DC0D
782CE2A2A50539C42DC0942ACC30D372BACF8192645F9943391A602A019EDD69241
783BB0EF67C1C367344D82F5669A75D5234A3FE9312EB4C6BE310722AF8065835F7
784E55443034F04E4B41F321B7CF95EF163231979A8D7D2E7B982D6DE774E8F4CCD
785D846A38D9029028C50A99ECE834C67F7CA30F39F4D1803B3CDF4D19FBC3D1FED
786EA3F72427D13D6C51FB97E417D38E4AD86E93498AC245EA17317EEE503D11C60
787E6981F07798D11364ACCAA0F06E6D748584EEC92720F50B71157AB2887406B13
788491C79A0054F145417D7E4902CBB38AF4DFAB4F84E25985A6FBF308D974457D0
7898FACC57B056749382FD35F7D9CFC58B2616D205CA0328294C7F47AB9EB50E1D3
79056B4AA213B1605985939AA68DEBCA1F50407136AE16196EA910089D913A4DDA8
791079F046AAD1DFBBD36DF39C43CF356E40972D8AE3F044F31320A3567520331CD
79267227812DF611C31DF6C7B420A170B43A478D0678F615AE88B94646F0F1A400D
7933E6FE22E584B1197B373FF2A0CA5C90CCF064A5C8A08170269E967DA2833840B
794BE87A26B8A5C80F8460100D97C17B62BB62F5F4DDF270DCE6C4F08A733EE750F
7956FA75D57A96F5EA3D089D5634FE7C29D6A3DD8206FFAC31EFD273484042313DC
796406A646C898E7FCAB097C6E362CE13741CC04549691C6BC246D9FA598AD671DE
79781A05E8D011A838E3B9F984676E03BB77EAA1B1256C04028801748155A2B5082
79857E9BFA74C3C18BBBDB7458B5AA3D484CA516A265A9132CA6A16A1C6A1E8F600
7999F9368F4E22AC348EBB52736035A4A4524BCD4B2EF54314007FC9AF134754FD2
800C20294DA556EF82639E26A3014F597955B8766C1E317D21E978A2ACEBAAFD25B
8016D27E861E254230360B34431BB58A0037C3372CFDF13DD806DC6ED6B0CA4C96F
802B7018FE26AA64C1D23879F117F9969FCBD649805FE66D5B439F6531E5D841B0F
80343D110BFE886A11CE54869E036D6480F6C6E0DDE33B40D605671D99A6D297C82
80465B1F442602A026AB0B73BCBCE1B098C423CC623D40D679E45052492E5129675
805F1CA105AE94D7BBF162E8B3CFECC63429E866ED4CBB69F25687DB74A330C7F5F
8069727BD3DCF5890FA9BEE5A7BD997433CDD1315850B490DD4EF503BC1A4F30F93
807F032E761C9B4A099ECB96F1DDCE4262FBD75620EDD89659CBC70EE3FEF7C50AE
808CB47D9BD8BDDFB7D5ADFCE11EF6871AB41369A582211BB5680DEE2BC141259C3
80908B73E26815015B99AC3683EDD9EBC880A5A64EA728DE0AD8B038D666955E6C4
8100CB961183309835A70BE28AC86A0C90EBCDE36B2C2F9DCF6E61B27845C048932
8111D9CD3F5E7EE7157A478A9B624C46E044AA050942FF1E15C8553321D36EA7586
8123D4A7CB9D971063AF089F6B2A288A83513B4EE3A0F3CF537633604E31FD22B04
813A7A63C54535D31129C4713E5561100F41F596A2771E3399A84C7798C187AC61D
814359E2181B61DEC7EBB1E38A5B188A85B9E0A4CC22E0AE4FDFCFE8DD776C703DF
815D581E9F3F68DC63B91B7CC430EAE05D7451345EE9928B18947D1EF0907138FE8
816EC9F98CEECEABDB91CE0DC993391632A2993E0F23EDB138C388ED74AA061F4AB
817A9879A48EF233D72C2CC6A976212801677FF31818CAA227205687600362634E6
818380A6FE49F7A3E111B50DC40B97D58A7138BEF9BF2D58633643715D96F09568F
819D192E619E4DF5BAD6E934C3AA1E29579E85127024193F3866F235C58A9A097F1
82056158AEDDC8A1B66777C28E798DFFD2404507A1E793E990ABEA01D772343B3C8
8210258461306AB5112B36455E39B024D544BC723C61AE4756B78B97566546201F4
82277EF79F142297609B74AAF54FBB44473197E0B5A706FF921C1D7B80CBFF03524
823C6C9B37BF5FF366B0D60026FBE01D9A213905B384449F62FFC7F872114C64F01
8241BD76FF84899641A793D10A504F0B56A7500354C748A68EA4396296F0EE9448C
8251997C351D262E9055D2265E4C467FBA11F97E80B6A862D398D341E46212B0389
82608BFCB93BB7ED61C0E4D3BAB05C9A620E78E19342F02A9433B97CF7ACB027528
827E70EA97389D55DDA0FE4BAF2BA8205D3ECD294BC8EC81293C9A11F79C87EEFC6
828C18A8AEEA8F0987BC183C9EED25A91F77408952DDBA65BA715018CDF4145B64A
829393ABA54A176F8DCF83A5238D538B3E7B569229F5C4CFAC3CC9827661AF20F1B
83044A7930D1DA6688FC1B11BAF855E3E994751E9FE7BF4D588816618A022E25673
831F9C2D9D9AD9C6A16CCC923BD9E94E9A916C6561E692724C499F0A49E13762197
832DE52122CCBF93E3505209FF7F66A36780C7492650F4534E5984642BC7844C69C
8330DC60DD6145A5B1662884BB82E4A97EFF6541D10D8799707CA86591BD8CD4CB8
83459BFD8D36AF4D1DCCA1433F20CDD724F3550D88875CDF3FFD49C6F1EA956576B
835A1C64746D10C0EE07644371CD7FA3388C308B0E20918061607730E92A11057C2
83627303C387E163212DA3C5EE8952BD9F7F328E35D7AD3CC0FB84943ADB0BAD7E9
8376B4426FA53EEA4F2155359CD3F8E8DD5F0A1FB0B6C8F6A83F5B8BB179FB57256
83857A3DB758AE0F7B0D3A636F09AD0A86BE31303A6F48F2B925B6EF764DE59C3E7
839C995C5422BB61BDD691A5980CCC3639234A7A48A351E67E7ED9F0314B2074210
84036725D5306BBA32DB24BCDBE3F989EC1BB9CFFFDC156280BE9A7F7253F7F4516
8410F368A18CA6B1DCAA5C99693B6B0F593400D09AB18EC8F741091A32E5B5F9BE6
842B628F840E28643A9BF7E24D37E9C39A05BB70479AE6C9905E9B763F23E546A54
8438231D1A6009C658AEA37CA6FD5D2A36604370262583DE5CE3568999E594E5A3F
8444D665BBE80C7109A6FF96A856B511F4251555B7FCFA55FB1F739922F7E62F396
845482ED48EFC10B10E6D68148DE88308307BB7643999890BBBAAF2D11484425A43
846B41A4F2F076CA8D187074F3621C0E4326F7B48D5F582A91763A02CAA769947C6
847A424FA57F87E92EB9B199A540A05D4C65D121321BDD09F99EFFD4D43536EC180
8482A2DA1672CA05956D8737D514B088DCAB5D09C633A75BFD6CD35105A9DE88968
849F46E049EB38822AABEFC6EFC14A693555A7D35BD96764D7B915E6A1153A9F5B3
85084A79D547CA8DFFCC4D1F1C168EB6EF6450DC470DBE0A72D1264EDD2375C69AE
851554AB2DCC7F966F013F0A76F0FBEA1CAACBCE1B372F098EB069DC35688E6A4AD
8526F29454E371DA51CEA13A8E8ACFE916389DBCB162CC81964B4ABE791BB71A27C
85351E24E7571CD8FD16BB862199B562E1B9965AD602A77A644E687129A6980F2F0
854F6C1CB584BB8FD1D1A1F8BAA3812CE8D051D23014622A8A508E4296541EE9846
8554A2551A843B6977091E90E9006ED40E62D487ABF2B48633F09080C6C06B390BA
856CEF77C69E858E23547FBF6F22BC51C1C5ECF5430588F006EF7B3DC6DC0B0356E
857CC8F8099721A5E3475857C1F906A11BDADD1FB27B3A8683FBE50BAF54CD4F4F9
8589EB56147DDDE5B5D861CC8B89DFF9502E088AF20947AE7F72BD6F427F617A7C4
8596A3062AF9029071BE53A25E8C329CD0EE5FD191FA2CC3DFD4D623217C5F6C82D
8605FC9661900C111EAD81C6A88FDD47AF5D4B72B0FF9C658139FA478A05EE75DEB
86183AD2C79BF78D9CA975BE573AFAAB5E5F0F01E0DD9ED868BEFFACB15DEF79237
8626E685CEEC76F5884B37F94D8FF36D3FE25A771CE4523D4F4D7D53904683BBF91
86318996F3FA2090CDDAFF660AD63D9B5CABFEBD576C0F8ADA93B13EEB8147C1976
864C0172D637ED71C995EDA78AB85C3654D1441DCB41083C4EF1A123980F96FDD80
8656D4190183B4153BC8BE62232A0D6493D7A17C1644057A21E1AFE7322406F27C3
86694E714925202996554228981A8C39EF9AFB30F5EBCEDDF39DEEE3824D78C6437
867FA7FEE75F3B2280DAC4D76339F99F5848B0BB425B127DCC6EB20C1CA50A5233C
868793276BFA23F8B2CC4E061BD5797563ABCD7DDF79BF0957436A26D32723EE772
869AA63FC5F282FB238676439B1868946D59ABA007C5C5A2100A0878AE07DEA3CBB
870B14FF6E4F69F2A443D7551A6BEBA2C1654E3A8F3058DA2DC0A26CA05C8724013
87139D3B730E70893F0AB453F43DD2E802A46CF66A3E67CAAAB0C4357F167FFC174
872A9BF4E1BEBCF56DFAE9C5A76577FE0AEB09A738E6BED9E62BDF7BCF5B624312F
873E48B9DE428BAF38EF9AF8F450CF90E8BCF452D1888C42CEF8BBF2A75953E1F64
874AE35EE604F03199852323AFCCC72CCB2C20C489F2514BF347BBB5930BD425888
8756FF69321A007E21D77F57367F9D41E5D0E01171E96EECA01175F3F85A946C621
8769531EE5570189773AEC2E9D9F2AE5E4CEF742E80FBF22B0A3D4C56D825689D81
8776F6186E00B39E9054559F4C05D35EEA024C8B2AD71F0573BCD1B781F31BB44E6
878FDCE0787C66554093121FB5DCFBF83F06092DFF4E1FD10E6195ED375F9B4AF57
8790186238CFBC277EADC64675C7A9F2F2E17BB2652024C2E9AFBB0D9852D6D4B15
8802ED2EE3374436C58A78EAA552617F8694F123FDA2ED16E7E2D4C45593E0EB4B6
8813257A22F303D0D0AFF77A320967E5FBCCE40BA0FEBB14DCD0649B63A68C6F78E
88253DB018C87D8FF4FD1DD789159E76F50CAE880AAB7850FFD309B0B929A641DE0
883FBA51339C4ED5D050398A37EEAAF4D84EB7223D3557E846123462EB60CB8C35F
8848B5A628A16692B1EDDEF9ADA7C53FC1BFC1159A2290682ABA5888506482FC7C5
88526A27CDAE23C5D7079FCFE42CB1BCAF8358886B08585872528C6699442358D53
886FDA54CBF9A6D5AFA19450A5D394D209570C970679BB11806423E7A451D7811AD
8876284843A4CBB0B7591646B650BDB39E17C6344F846A2F3318CABA7BE6BEE67D4
888712AABD80A4623DB2D797B9D109B7403C46659EA299C8274CB49E9D31A0A9889
8895747621182A9986751141890719C900A785C4DD03C8476C2A3DDF1FC85441D6D
890089C7C126A72D8950A453C8C40CF92FBF4107DCC4653E836264BD29F584E1B73
89147B9234FDAEBF0768968BB1F75871DBC0C39CED01611F823B6A17742FF4C407F
8926E514DA20DAB72B53D3752B3F2CB8AA720A3F1A4E71938DEE47821E16E97E0F5
89332C9F57335B12B0CEF6B20917C1CC06F035E23F93B6376BE83467C23F0B3A687
89457D9616B932D6BBBF181B6DF116B3D88E5B6B4327F84A16DBABC9ECF4562A96E
895D89A445409AB5599175743E559E9C642361DA758611C0D56ADBEE0B686AF487A
896EF7EC4FA9CD87239886968B7FC3144313F5F9B90D1A76E45718DB65D2F44D123
89781189F26088D950335E085EB3BB1BDAC3AEE5F5A1AD7C44BD119D04693454422
898CFC2855C6667E64CD8FCC76088F3DB888DA386CB77A060B52930576B80E6CCE1
899D393E689AD64D9A3A3BB37C0EC3CF9286488CFAB18D656E1A0F1B078BC8F5D63
9004B56A82578844BE89201880C0863BBF7F35F1983FBC70C5D6372E298B877E6D9
90189B3A60FFCD876C5372605CF2B5C6E3EB4642D14C75DE75DB264111AD783D49E
902F63C3CA3B6D27A2BDA9C9593E6AA5C0A851CA1B8420249B8A3294664BB8025E1
903EF9246BA8D12186C6EBFF3EAE52B4169832CD1E95EFC52F70F0AC1C4AD47E661
90480997CAE243FD5F4B924C597F32E0FE4E32BE29C6063F4813DDCBB96F25955AE
9052E691AE1A7268B0592C934FF2AC5B6F7F54C8858406D1204EF17B09C3CFA171C
9065FD08034D00EF30FE2276F9E1C0788FF3CFA161EA1B9F233991B949E21942DA0
907B1026B5EF71B85BF1393E114FEDFD47189BA3DD480D3633A8A208DCA897150A3
908C47EAA87B8789E7D57543973497D119AD04F4E3FBFC5DC7741FD7645CEA76742
9098F2F551AD179A45C361D5B314692CE4C4E5A571583804F35D3A45A941C46E168
91068844DD4CD99284F2580E45DA23300B47C10B666E1F7B5C25B8BC054ACD1DC44
91112668056ED2E045E777D11836A5BFBF6B1C79AF48659C57910472C8232C37447
912328185C6FFF6CE1E24EB9D29D0B21E6F40BFA843E2FC6DB59A3A576EA7C26F0D
9139275663D03ED3AF206727909CF6E82B1916FED911C5390D4089E33E01D3A3580
914EE8A6D35421297812C7250FAFA6B333655B2A249BA8489146EF66CD31BB734F8
915EC289D5B6541A15D423BA486E7D173676282FA6A12DFAB03FB706DBF0A2C0332
916DAE3E859146D2ADCC1EEDF29AB5E98A4B4085F8F312CE94E5448F93653A44AEB
9171DB10210A1EA1597064BF3BDC2BF8BE227B8E0321884DC1B2C1F426370929D30
91822D72F8329C8DEF5D80E6DECD597158968F60F4B5F910537749E1963C161DBD8
91983D94CC3C7A334722545D617B9A8586489D5B866429D9130E785AFF3DB7F5AA6
920571A01DEF40E75570CC9F48C4BDD044C5D9412683C282406BF2C5DA0B0661528
9217834CECCAF019ACA31D27C4865A11BB664EA1BE6377A972E76A05F12E697569E
9222C400B018F1EB7BB747BD91DE1557E8B85F890A983D5459EEC773DC0CE99B403
923B15CBA9EED2EA4887C7961E8B62C566CAEE124F329F21BAD56E8CA6ECE16A249
9246256504DDF5C84F5D1222076B4DFA6FB430D2142ECD3765B65DF8A6C87278435
92545E4C826C1922E357DF688EB6F4A6AFB6438D94F7E3C444C0372B7C7CD26AAF5
9266C7B8A44EBE6DD58CE6F878747F7E59FFE8F680661EFDD36DFC4771EECE0403C
927F83B20412E006F32870ECF167167974906F99BA655BB23E5E26288535A4AE670
928D3D087F96E076E060AE6A3544570264FC780DA250805993A69D237712BFFE3AD
929E587B70D2970692918D3F80E38A769697E98EF5D034C9CFF6D8387D95E16AF89
9304B558561839DD96439349C745BA98D28DE129BA9334EF36994171DB9F358A41E
931C1E7CEE3DB6B8CA16E93ED1DABD8C89AB3BA454C20F201D24895D2F2186B9079
932B15430E6742BCD6DBF54A4915CA100B043B341B489F9AB72F5AAB8546E1B2704
933E4E8D752DC3E90B1B153A78CD30E00B87B9E812693BB5F8A72BE121FE861DEC2
934EFBC76D20201C0357C93662F6243AB7C003D51B1B3E4C94830361C81B606C747
9356FE16472E5FF087A25540E66BDB10A7B23641E893396A1BE38C102EB4C391648
936DD50D074BC2B3A10AE6E3A2732C5A94DE40547D21B7F9DC11635B8D6D6AC72AB
9374048758EA9F043295973B44B0917B14A8FDDB152D47E92731762B5FBE7E2D424
938A9BCEF2D296B3D8F41E724B6FA037540C465A087037AC77F1AA11A8AFA6B6E1C
9398960CDB46F764CED85F36A34D12AAB1B6722910A9233134C1544DFFB42B98D2F
94083A97B3898EC57DC07EC4BD53D01E467AAFE50DCFF7135DE13ABF0B826558D66
9415B4FC5862C48A5ED474B3F7BE7EFAB84D141BC92EA5AC299AAA26A6AB4C1DE9A
942AF8EF838CBB14C4959BEE5928DC77A84786A0DE55B91B86290651481CB528085
943AECE1722541CC470971F6A2DE7F4B116667189630CA8CBB78541807DBECDE55A
944D5CACBC8BF7AE4100130E499ADA3521C7D59FFF2ADC8826FB85A4B8A7F6A7B5B
945ED19E9C421D8873270FF623B39A4DB33ED21A32A6A282597595C1FF9E849CC85
946F7AEE01F8CBB21F75660B5520501226CD6B872E116BBB746FB9DDD3B3C545175
9470F4661041FA2A8F5EC7601C145AFE3DF783F676291A3BFE672C743CE2254677A
948646CCF082F592F8A2B074ED57BDD4AF9A5DD8D11C86694CFF16A0C67D1FA1C92
9496653A957054357BB9EAEA4C8988599D7B0EB635C03ACD63463EB8F449FDDEC80
950EA43FDD1B6CAB14E3D9B0C2AD3E118E0A0BEBACE1F893939E2DFABE6BD99BAC7
95196083DFF40B552F469AF20D34A434E48EA180BFC8E900F20992601761DA723C6
9521C37176DE8455D0D9D563CD165FF48348F3B5401A5F192F9FED4321E5E765DDD
953824ED3671F21A449D9A623264174B5D64904CC1B10C10AA482E25100F764D76E
954E73A630AC8A559DE6C260965DC16BA31B46517ABC20C5C3D89FC6FC187D0303A
955516C7A2C1C5462E313DAC0C11EAD5D7E771B42B468AB101F284BB94A82432278
956D77E799D2E8F968EA055EB2512EBB67607569173BD75F5154BD3E8BC74B1991E
9575224C3930CBE1E222A4568A043C508FDA7B3A9FC07C994D90DA667C78D28EDF5
9582CD2CE44DDBD236316CB70DFD53D179A78A01F3A0243A88B94B69CE85588A85C
959FFD9A23A0156293DF9A3F5FD01DB8E1674D691E7ECE78E5767271185C231EBC4
9605D91DE1ADFA89EC1A8FE743062D934120AEDB02006FE70DE82F5EE24B36E829B
9610BF2BB312BE578CC81F4F4DA811E6F25DA2D82173620AC20966C9AAEA2819AF9
9620EDE7FD2EA43F7C02A52DBC4E3E91F287D115B835646E53627A041F700D5B631
9631C9236501F2717B2BADA21C20CD9BA48F7BAC488913DF34E5B8679CC4BA71F87
9640FA9968E9D00C5D0CF8AA0FEE7DFF80131C8F5736361C016BDFCD85E28DF8239
9658DE792BC87B0886EFF1D313EFA13D6486478E6A52F5B6383CE563FF948DF4B8C
96633F95133650F966B3D38E9AC0C61C47527193CCFA54EC6368542691480DEF9EF
9670B74E4382CD2D7EAC72D0DDCF86F9FADED7F2E11C10F992BFD6C74A1AA8A1013
968D317438AFC7F22DD3C7EB64AEB8C8F267FA73F398BAA4434254B993FB12E1922
969EEF8515BE3CDF0BD57C1F0433F9ED466963E0136644C0A4280902C1BE9A86656
970729343D578E0E335407B7D73B9E6657E28675941D76836073E1BDF1768E657E8
9719A06266FED44EB127C0A20650528E3FB33D5771EE49F579C7A70E8231E093A59
9724B8390600524F0198C313F2E6AD936B382098C1BC7FB228F5A647E7EFC382F93
973AF398A0640C5999880057A5619AEAD4CD6BC34F70E7F8B9D5EA6BFCF432C6BBA
9748A23510A0C306C5EA0BB33407C56ADC76892EB7407110CD7D2B2B063F870AFE8
975B1ED86BF1593426FF9CFAB3082CB3ECE1BC3F103E0006B2BA846DEB0A0ADC549
9761AA0D92AA01094F8F5CEFA6C86FD432B40D010C148EFADCB035BEC296A4D6F38
97712406270DE9046C76E80FF56FEE665465BE12AC6FA74C2F4C648D29164248CE5
9788831C4BE49DABD324754CF75DCD125F59948B2B1D1F0E116DF84BD02A99E5803
9791D3309C72875BEF544DC1BD37F4AF566745A2BE93CAD7E55EEF5DB17BA290B5E
980DA86BFE145591C2034BF045006BB8D59AC0B1C585959AAD12B0B50C2A6175093
9813CB5F54B957712912FC0B2BEB6033012D928859F510312EEB5374ED10CFD5C19
9828749731A97AB9DA6A2A63C44A399A1FD09FF17AF1DFE301232A8383A6AC2F797
98340A188F69CD72FFC973B0BA64F7BA901DAFD00F28F986582D9AFE5DA387714E3
98441B60BF69D803539F0A1B0D3D42896D449DF4411348A00C05C38ED31265DD53B
985967427E22F0089F357B5A39B81C1281248214FDD1148F92E75761D4D7D5E8982
98695CDBFE275FE44399FF05DC34245C4BDC38C4F7D265A4F3C1E11717A6F3FCE2E
987720FC5142AF5CEAA75CC1868D172425A72253EE3EF7CB99A09D1E46609E3A935
9880F39505442E1A756FB0AAE7D30BA8D3DDD938D0AB9D746E65349D5705B36F60B
989335DBD91662CD5A12983EE0161F8C4338336575EF6C9C6842E0611331EBB34B4
990DC778CA9FE0CAB8839FD80D19AB95CF070A73CFB99467256F91D37BB669A470F
991C5E25FE5342423A2969CEAB12CCBA86DB276A8ABF9BCDBF377C187CA63BA2087
992FF862833B9F03FFF0132E790064B08913C625E7CEE675C1D4226AD06B75C49CD
993DB8CB63A2D32C57031959F177AC8720313569A540BFD5B31E92EB12A923B7329
994A128E58C06A6A0A056FF16F02B37270C9BC345B8459A7A66E1BBDBAAE72547A1
995D4D7571BD1D23FBA973C096C0ECB08E93EF56EAB20D009C7A1A9F396151964FA
99657DD810E1784731BDCFAC8868F84C666009FEBE9452934099E7DC25EBEDCA33E
997A81D7D49A1FFC7839AEC3A6F621C7170C6BB0F13A2FECBE5A1590A6EA8934E1F
9987396AB950A313852EE08A87B98F103C9E67AB7FBD9641DC4D63B0708B2401D9A
999D2A864D1DB420628B35A9908E9AD019245C30312E8E64819C1D221B964CEA54B
1000A195B12E517CF48AE685D2B50D34CB38B685370E762E95455ED521B4D2D9D441
1001AD04B19E87CEE1E101E0F6258B66E470A0068EA4ED6AC706D7BB0A4B7A9F56D7
1002E166CEB698465FFA3FDD7F63CB9C2F07AA7221BAF32E8066E1608D5CBBC0F1AC
1003D7A8460668E59A7C8DF2AD01851199D997CD10496D687413D05E934BBD028721
1004EDB1CBB81993265D6547FA78E7BD9D01FF60FA333F90AEAC3B6944D629F5E9FB
10055F8FD93E49E4DE564F9441B83BD8D93D6121C76F8AB0DFE84E62F21C34585514
1006CE0C80F8BBCA8E5472404DE3D990015828187F7BDA1D66C324F9217A3AE1C9D8
10076F5AAAA20A7F6AB652BA36971B40C4F0A90D762864F8E2AB4F5327CAB2CD70C6
1008F5020B01155F908799EE5B906487A3BAF15579C814D94BA8A38EC38515582A40
1009439F347A516379BB54F9770E1449D08F89717E1EC32C305C2D6CDDC35D0D5F8A
10108189D3378D09D6B333C6D5B83CA36C7029FA7795C9DF09EA6DE61362AF79A5FD
101138EA53024DD44FB8E53BDB29EB2BB60A7A284EA01B429DFC9BBD5421C8DF7EA1
101293665459A202289AB7217576CB845E2A1D83EC6693FD3CDE809A0AAB042E3778
1013F9506DBA544E1032F690F0C783CD4E7CAA58228247DB04F1FD4B90F3305B0B21
1014002737BF3F1DC28217AB98D7632B6F966D9CFDAEF72C2973FF3EFF17E02AD8B2
10151084C5E4DFBCC76B3E1EB7762B965D2D8844A771F08434253A0364120634AE38
101654CE24483F46388CD94601F361FF3FE78A304C549B82F178D204C5E4BE9B2485
10178A39D1D0CE1AF954AEC6B2982EEBDF8A0FADECC33733CBC144576FCA8F58D0EC
101877431B64BE9C9D3744E26BE5FEBF912DA0B16AF22EFDFD92526E9A65431D70DB
1019547D241269D266DE9EAF67A24B1EC9E329310DFC31E23EBCBE7FE8DBC78AB553
10206A257514969808E1E79E5AE3C6C24FA363E4F616F52B4724291996DEB52D8E74
1021391357477DFD2A594A0B1F10B2831579F4C526B234BEB990A4223F0E5AE15A59
1022ADD7112BDE6E257EA454C9E0D439D24E6412520CA5CDD3D5B85EB35934EE5E92
1023404C808346B7C97C61CB21908AC35347545F7F426B363175D50AEC231460BD2C
1024035BD4A94C40B213D13654E2C778277EE429444F098B2C81D37DF81EF898C799
1025E645375E86DE4F00D18B26F303C3102B4E8EFBA1DD6B64E49EA81FB5FF52E94A
1026281C8AD2733339FD58E207D80F6E225D53ED62F1BB2FFFE2764F35B80CDFF711
1027A3B84DBF388EADE65A4F7E38D6AFAE2DD00E3A161F85F68B79DE87CE4CD5D77A
102873641E1B8E6B355A84740D5CA4E74EB3B245C261F6F769E789C855BC6985090F
1029564FAECE25C11FC509D63C661A8E6A8FF1FBE8AAEEB3759CD25FAC35BBEF23BA
1030745FE0A1ABA7A477C8FB63968B8AD3F7DA8E248CDA0AD67445B9D6F6FC034B99
1031792BE166BBB0781BB3B5BE5B9EF6B3EBD02C01A4BB1AB7FC048A71F0C429B78A
1032182BF84D462645F2A11A2A41CB1C94CFEBF17ADBBB9063B4F5D0FA9CDEAEFD14
1033FB9E03BD6D5A7737FA1CBF6A7387F84178453B2419CCE7018184E0EAD5F40981
103455A1D215AEB571A861A1F12DFF84A17B142925582709DC5BFB6237C7D37D5ADB
1035706179768BB1EAA959137401AB9DF46CD54314F93E31A4CBEC0E1C589134F6D1
1036C3D3B273E947D09DEB0704A928571D1468C3CB347EB545040E07D3A670816D72
1037764998EC7988C5A25E6D2403382866FE5408037BEAEE7EA98BD8EE300B957965
10385B79E8F4BC6F84E4CB037270D4D9FCBC0008408485D855E67D3CB8ADCF7380A9
103909350593ED80A9BE9CF77DE6D1D4A170DAFE7583CF6851970B14219A3A2B4684
1040A8010B4F7B422DD699C167BEE110E3890699D710148550482CBF2BD5CEFBA8A5
1041C1B45320C9D0C8838546474830316E1E238CE2704C12D43211639333E9AEB018
104268C7068212A440912FB4E58124325DCC233A8BAE6D634C9E47DBDF449974F42D
10431D346C206E452F1C1AAF76852A3FD5F156AE0FE1DC777E460DFF136FB94A6879
104454F0E6D4825AC0C6F72A71DBCEBBE355BCF1D0A336043325BE80D780DD21992B
10455240312D13CD85C2C2C9F236CCED4F364ACEB22B8712BC0598B75E565BD05A9E
1046B579CD12D262FF8114D93BFE09D1EBE2B38C6856938C0224D6D900EA9E3C033E
104718F7C4E9D4954BBF699B4F7BF5424EFBC36C9DAD6A54C1304A425DA7BF3CC236
1048CC82139A00874BA953C4581ABC1B6B06567CDCDF78247C090644C8101E0454F7
104937B42EEAA2743D855C90D03A0DCE75EC28AE7765A5AC7888B477AEE2922C1121
1050FBAD4188E125B110C216A7AAF048F41AA81E7F32ABBF1A3F597069561BB6470C
10511FA96B179FED4D6781C6F70A343A9CA3D757AD37E73D062970AFC4DD6B54304E
1052A9D7F87154801D7DFD1C45E0717387EA331B8A5DB13DA5AFE56B341FE296A775
1053EACD862B7D6987BAF4B73B04455341B07BB91830868639DA3FD78C0E570E8CF0
10544E85BA82CADB689E7E5DE5777D0200DBF1691AF7A44D0E3ACB9700B1829AE038
105550566EDDE5A9FDA33AAABD737E5F73FD76FB021805406F8E525EEF4FE985B6ED
1056178570FA9B4453535E38C6D3472BD475A07DB82B0EAE3950D569F7D0C16C17B8
10573737B780DA66F50B7F678B8020527277E243001434176C6E8B9B9DAC87139FBC
105830F676E3621F59D2F8F0476FF8C528302C7748CBAEB2997645DC7724FA8588FF
1059C2969DD8921AFE6E1773AD1135775DEFA1EFD197C113AD53A656D4B7BC1613F3
10608C56B27578F856FDDA30652F7D6DB38B819D1E536B2745421DAB8F5E21932B7E
106120412937F8668163EA41BF6D7855B884943179FFE4F2C0C3340C86ECFF4B6DBB
1062F41CBF9DED39E7BFDABE6AD603FD6202A47536E5102E7181FD60166EB10D51EA
10635729F7FBDBCA979A65A8FE0A387F78A99CC7E41D87E0D791EEC0136BE1A077C0
106419FC4B16C601DED739DF6FE9CEFA9E48997624B7C768FD5259D0766A9C94B0BA
10659FC8336C05005DFEC39BF559A36962F16F21F208F2691705BB19FE25AA2FB0D1
1066DB727839FA045A900A0BCC2717A35A2FF401D10B7E504FCE43C58769563D8289
106703EB34FF2A2C34107C0D2F8984ED
37c41ab1
CR
10680000000000000000000000000000000000000000000000000000000000000000
10690000000000000000000000000000000000000000000000000000000000000000
10700000000000000000000000000000000000000000000000000000000000000000
10710000000000000000000000000000000000000000000000000000000000000000
10720000000000000000000000000000000000000000000000000000000000000000
10730000000000000000000000000000000000000000000000000000000000000000
10740000000000000000000000000000000000000000000000000000000000000000
10750000000000000000000000000000000000000000000000000000000000000000
1076cleartomark
45c0f7f8 1077{restore}if
37c41ab1 1078%%EndFont
c302751c 1079%%BeginFont: CMMI9
45c0f7f8
CR
1080%!PS-AdobeFont-1.0: CMMI9 003.002
1081%%Title: CMMI9
1082%Version: 003.002
1083%%CreationDate: Mon Jul 13 16:17:00 2009
1084%%Creator: David M. Jones
1085%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
1086%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
1087% This Font Software is licensed under the SIL Open Font License, Version 1.1.
1088% This license is in the accompanying file OFL.txt, and is also
1089% available with a FAQ at: http://scripts.sil.org/OFL.
1090%%EndComments
1091FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
1092/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
1093{save true}{false}ifelse}{false}ifelse
37c41ab1 109411 dict begin
45c0f7f8
CR
1095/FontType 1 def
1096/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
1097/FontName /CMMI9 def
1098/FontBBox {-29 -250 1075 750 }readonly def
45c0f7f8
CR
1099/PaintType 0 def
1100/FontInfo 10 dict dup begin
1101/version (003.002) readonly def
1102/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
c302751c 1103/FullName (CMMI9) readonly def
37c41ab1
CR
1104/FamilyName (Computer Modern) readonly def
1105/Weight (Medium) readonly def
1106/ItalicAngle -14.04 def
1107/isFixedPitch false def
45c0f7f8
CR
1108/UnderlinePosition -100 def
1109/UnderlineThickness 50 def
1110/ascent 750 def
37c41ab1 1111end readonly def
37c41ab1
CR
1112/Encoding 256 array
11130 1 255 {1 index exch /.notdef put} for
c302751c 1114dup 58 /period put
37c41ab1 1115readonly def
37c41ab1
CR
1116currentdict end
1117currentfile eexec
45c0f7f8
CR
1118D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
111945D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
11207934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
112172C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
1122BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
1123974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
112411453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
11257E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
11267A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
1127BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
112882DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
1129E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
113091564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
1131540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
11327BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
113393AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
1134EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
1135972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
11366F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
1137796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
1138DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
1139D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
1140E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
11410F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
1142F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
1143ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
114472A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
1145F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
11464DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
1147692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
1148BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
11494E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
1150CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
115141B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
11529198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
11535BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
11542E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
11558DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
115633809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
115703313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
1158749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
1159CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
11603C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
116164F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
116290B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
1163DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
1164F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
11654EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
116649D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
1167E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
116858619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
116988BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
1170B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
11717377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
117201794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
117319654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
1174194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
117553EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
1176F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
1177412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
1178C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
1179C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
11804FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
1181E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
1182AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
118300F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
1184E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
1185C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
1186B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
11872FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
1188F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
11890B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
119028352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
1191E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
1192C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
119320EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
11947014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
11955DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
119674ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
119790430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
11983EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
119998A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
120054799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
120193C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
120219CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
12039DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
1204E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
1205A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
1206107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
12075DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
120822013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
1209B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
1210403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
1211D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
121220781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
1213943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
1214AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
1215A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
1216B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
12172691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
12182FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
1219E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
1220E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
12218D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
122287326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
12232B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
1224D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
1225512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
12264D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
12276155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
12289CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
12290BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
12309718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
1231FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
1232430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
123356424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
1234718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
1235F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
123695F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
1237EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
12386B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
12396ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
1240630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
12416E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
124289950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
12433BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
124490777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
124538CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
1246EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
1247B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
12489B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
12491571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
12501B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
125162B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
125284B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
1253AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
1254D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
1255BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
12564ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
1257531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
1258FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
125943FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
1260D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
12610151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
1262E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
1263DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
126499D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
12658DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
12668A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
1267A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
1268362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
1269C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
1270E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
127107F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
12720ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
1273190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
12745B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
1275F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
1276005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
12776F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
1278D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
1279F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
1280F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
12812BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
1282F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
12830D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
128473CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
128562CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
12865F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
1287F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
12886BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
1289DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
1290EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
1291E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
1292536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
129336F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
1294B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
1295F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
1296431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB598E51CAE7E4900
12975CD570C914EFBA426BAFF7A56FC775ECF5BE13F2C42E51EF96784E5201C0B64C
1298074AC229FF0BFDF71E6D5E08D8755D2C12B770B6466A9C9C61C15582DCD2FF78
1299E9E74DC2B1CAA344EC0339EBFF92CD2CC1D62E2FA8FF15E7459A83C6CFA58A77
13002F1A40BD276E76B675FD6834052B33BF9190F04DF6AA5FA3BB7D77A88DD5B600
1301324C5E28216F47682EC29EABF35BA842BA2294A3D72B126EBB852AB741186C9F
1302FC84B12DC4A6CEC08F2D03EE61B65C845841EE17F1B765649A
37c41ab1
CR
13030000000000000000000000000000000000000000000000000000000000000000
13040000000000000000000000000000000000000000000000000000000000000000
13050000000000000000000000000000000000000000000000000000000000000000
13060000000000000000000000000000000000000000000000000000000000000000
13070000000000000000000000000000000000000000000000000000000000000000
13080000000000000000000000000000000000000000000000000000000000000000
13090000000000000000000000000000000000000000000000000000000000000000
13100000000000000000000000000000000000000000000000000000000000000000
1311cleartomark
45c0f7f8 1312{restore}if
37c41ab1
CR
1313%%EndFont
1314%%BeginFont: CMSLTT10
45c0f7f8
CR
1315%!PS-AdobeFont-1.0: CMSLTT10 003.002
1316%%Title: CMSLTT10
1317%Version: 003.002
1318%%CreationDate: Mon Jul 13 16:17:00 2009
1319%%Creator: David M. Jones
1320%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
1321%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
1322% This Font Software is licensed under the SIL Open Font License, Version 1.1.
1323% This license is in the accompanying file OFL.txt, and is also
1324% available with a FAQ at: http://scripts.sil.org/OFL.
1325%%EndComments
1326FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
1327/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
1328{save true}{false}ifelse}{false}ifelse
37c41ab1 132911 dict begin
45c0f7f8
CR
1330/FontType 1 def
1331/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
1332/FontName /CMSLTT10 def
1333/FontBBox {-20 -233 617 696 }readonly def
45c0f7f8
CR
1334/PaintType 0 def
1335/FontInfo 9 dict dup begin
1336/version (003.002) readonly def
1337/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
37c41ab1
CR
1338/FullName (CMSLTT10) readonly def
1339/FamilyName (Computer Modern) readonly def
1340/Weight (Medium) readonly def
1341/ItalicAngle -9.46 def
1342/isFixedPitch true def
45c0f7f8
CR
1343/UnderlinePosition -100 def
1344/UnderlineThickness 50 def
37c41ab1 1345end readonly def
37c41ab1
CR
1346/Encoding 256 array
13470 1 255 {1 index exch /.notdef put} for
d3ad40de 1348dup 39 /quoteright put
d3ad40de
CR
1349dup 45 /hyphen put
1350dup 48 /zero put
1351dup 49 /one put
1352dup 50 /two put
1353dup 51 /three put
1354dup 58 /colon put
1355dup 65 /A put
1356dup 67 /C put
1357dup 68 /D put
1358dup 69 /E put
1359dup 70 /F put
1360dup 72 /H put
1361dup 73 /I put
1362dup 74 /J put
1363dup 76 /L put
1364dup 77 /M put
1365dup 78 /N put
1366dup 80 /P put
1367dup 82 /R put
1368dup 84 /T put
1369dup 88 /X put
1370dup 92 /backslash put
1371dup 95 /underscore put
1372dup 97 /a put
1373dup 98 /b put
1374dup 99 /c put
1375dup 100 /d put
1376dup 101 /e put
1377dup 102 /f put
1378dup 103 /g put
1379dup 104 /h put
1380dup 105 /i put
1381dup 106 /j put
1382dup 107 /k put
1383dup 108 /l put
1384dup 109 /m put
1385dup 110 /n put
1386dup 111 /o put
1387dup 112 /p put
1388dup 113 /q put
1389dup 114 /r put
1390dup 115 /s put
1391dup 116 /t put
1392dup 117 /u put
1393dup 118 /v put
1394dup 119 /w put
1395dup 120 /x put
1396dup 121 /y put
37c41ab1 1397readonly def
37c41ab1
CR
1398currentdict end
1399currentfile eexec
45c0f7f8
CR
1400D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
14012E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
14026B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
1403979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
1404ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
1405B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
1406A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
14073D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
1408D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
14096B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
14103AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
14114345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
1412DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
1413753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
141454697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
1415107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
14167CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
1417328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
141885690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
14192C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
1420308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
1421CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
1422739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
1423FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
1424F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
14253F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
1426A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
142755673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
1428A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
142969E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
143082BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
14318DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
14320790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
14330F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
14341261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
1435D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
1436B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
1437170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
1438767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
1439EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
1440AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
1441826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
14428E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
1443345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
144467E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
1445802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
144620481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
14475B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
14480170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
144922D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
14504EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
1451CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
14524BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
14530473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
1454220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
14557AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
145627F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
1457B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
14587A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
1459A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
146045AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
1461F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
1462C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
1463AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
1464DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
1465FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
1466997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
14673C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
14682ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
146931C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
1470A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
147143BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
14724AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
147394A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
1474425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
1475FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
147651E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
1477859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
1478E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
14792A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
148082A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
148122D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
1482200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
1483892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
14840290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
1485437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
1486BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
1487E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
1488DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
1489CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
149080FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
1491FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
14929B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
1493031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
14949367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
14959BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
14964523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
149757E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
14982EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
14990E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
150003FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
150122412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
150206202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
150339EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
1504E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
1505A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
15069258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
1507B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
150879EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
15092FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
15108720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
15111C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
15120F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
1513BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
1514312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
1515B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
15169A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
1517A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
151891F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
15197CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
152078B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
15217595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
1522766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
1523016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
1524C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
15258176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
1526E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
15276A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
1528B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
152944FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
1530C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
15315125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
153242CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
1533F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
1534CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
15359F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
153682212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
15370B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
1538F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
1539EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
1540E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
1541D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
1542F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
154314F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
1544BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
15459A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
15466105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
15476647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
15484DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
1549C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
1550A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
15519DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
155242FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
15537389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
15541598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
15554D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
1556CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
1557D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
1558CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
15590B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
156092F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
156157E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
15625B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
156357729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
15648D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
1565C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
15667504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
1567B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
1568EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
1569D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
1570DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
1571F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
1572D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
157356B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
157446BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
157552DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
157619477F075ACF64D424279612DA5AE02B2A140048386D01B1F30EADF2050B71A7
1577993773D5B68C6FE65EAC53411AC6E7E26E49BE5FE1079A8BC565D2CEB7E3B896
1578593D720DBF66CDB26DA5D8E533A346845E31374A7C85FB6B06C3D54FE3408013
1579864CB0954A2FFC00ED17CC167AF714716376B789A71059DF2032E0E907761E81
1580F0C887810337F52662AF43FA1A7528923B0A30A217FA184ACB73207EB3018D5C
158109EA88CA0873AE690E94D43B360D9C1070D7CBAE9BBA72E82EF9914D3AED6D1A
15825539585EA969F0A1407C8FEDAB69BA3EEE3097D5B123C5770D5ACBCB0882F35A
1583E8A3E3B1FE3903A941EA2090266B60D218407AB99EEF38F18C9FA307D73E2F5C
158442F8C37E2F668BA6B0779791D8404E2B2CA52E28F0B34C85250B0D6AAF9D2DCA
1585A12133B5B601D971345EB6D892B85FB971DB8C4A4188ADA6575DC6DC42D2F0C8
15864EB946AB47F487B6B4C4C59B2FCEB1291C386805C5B62B61FD7310A13B4620BA
1587650DDF28FC1AF21FA124C16EE8ABB98904F03E7F49E54348B1AF2211A1768768
1588D62E35EA2EF7F2756B58168F9FFB5785DAEAB324C90FDF6207E670DF277D6AB5
1589F0924B26BCF52CDA2980680320314F41244B73DA6367C434B5DCDB96B6F0F454
9f178efb
CR
159089BE7553B58CB230BE71B2C7A7F1D63C3B1E80C159DD941027EA44D54767355C
15916EB30D38D407FA1189474C2F9D3FD92F5CC6CECC63CF6CA6B33D77F08D274A1B
15920AD7C2DCEE55F1B425BCB98F24D0BD431A5BAF6F42BF897BDE9198E6BB331C81
15936B5B63F3604235FB733A882BA5464A3E5415341C8E9A2E79A5896C8C334CCBB8
1594A2047CB4E6BB167BD586FFC4A1409B4C13DA0B84608126D10754D562A9812A79
1595F2B3078B7CD1D0A37A192E1D58623331B582E62291B6EF6FE3C92E8EC9A40C37
1596B251270944393FCF133426FBCE86A318E16141654DD7BB12AD46B60A05E86D3F
159714BDDE12FE3B17F9E2443E057FD0A25677D1F17C2BD87F84BA7D6AE3E7EF3EF9
15983DEB268B580A7823253430FF8D80FEFA0F9E4F66D0733E251E7F680B8B23B7B5
1599A614F4FAEFAB880843451E4D9840AF7B8BBB6333E010A169528748AFBAE9A6D9
1600499E221149C0AA19D536F3F121DF1AE056D3D0FF5C6D837BD8061153501F0209
160179076B4E0C63738C54BB31156F2273A327D3B6D0DDB5039D27D1C4020E90C94E
16024A4B156B32F28DD132D2AB4D9CFE18B7851A65BA965382B23CCC0915EB6847A0
1603B14492B0405395BDDAB36C2205F229891D989196608455629CB3CD67E07DEDB6
1604A09E68BE431182D6CE52CE41B8531FF111ECECA60A68E7E7BDB6B91C7B694688
160547786E04588AE7D21DC6F2309D492FC9795DD054C150ED94110A7F89CF3E92F7
16064649D3F4C778FBF02ADA9E577C5EBA24A1F0278E9D9DC5556A60EADEC068AC57
16075359E9FD0D2E3E7B0006127F95F333D2BE77C70EBB163EA9679207C76C999903
160850D76BDAB2DF0D6A506EEA9C952A3D28D419FB78CC64078CD91C39A5D4FCD9B9
1609D135A4E24E373E24047EF1180D3BF51DE4167F3945825B7124198FCDF7432E20
1610C35BE9B0C7C0CC194867C4CE9BCD27860826C14749B811E8FEE29015CD65E7F5
1611307300B316054B7914CB7464E6AA37DFF4BD0AFC04C0E8BFD1269E2D4CB5A201
1612785C32B6B5656A7F6CA6AD8F7C77DF8F70B8F99C88BD8D548E78986096C917F1
1613C0C195F4CE7972F1354B95D1BD84934D80CFD09FA14F3DF37300B5E8C208C66B
1614C544BFBF9B18AA7E27AC4E8567CB7188C20B1807BE56BB2B348C551767F40A07
1615022EBCBE0749DE0D8FF1E2792A0BF2B84C940A127203E2216EA4F8689C84C739
161658D5693082E057B67C9BD80FBCA6463D9EFBA2B9F4D3C8F239C1A70D8A4A824C
1617B045489E1C6BCD28DA4F1BEA2BD80D424722479D0E8A1A99A8B2FE26822D3198
1618722E2D276A123A95128EB6C5C6AF9AAD213D088EE92917E0870179888296F4D1
16190FFB87A340D7F052B07C6274027559A8B3843F2422C3640848CD8BF664645EA7
162020EBCB14E9B15F552E9E793B2F5D7BFE849817CCDD9BAF7DBA26BEED536DF80B
1621E250F831A12EC703AEE5ED6F5C688849B00C85AF124451A29CB67398FD3D4015
1622C5D8824B7EC81F85CE9170560BEACD43ABF5EB5329A4E38431F243099B8F88F6
162358E8F6A7DF8AED9153CA90F9C941320750E5C26262BD14CE3CDBA9AED2270546
162424917E378761B5A96F0689511C12A0E598E7BD54A6ABD40AA4FE651AAB9DE733
162588677F863423C714476E797F4A22B94AF646819D91F9612E6E5CCFD9F7D11AB2
1626DBDD3C8ED9D257E5A8BE4B7DF9997EB2ED23EBF4BFCBA1993796E34AD93C8CAD
1627DDEE75EC199BF642C34BA24E323A7099C4B7D232328ED3C7A3BD476FC0B3D921
16288E773970ED221BFD47FC656BD14FEE47F06834C55C0EF960DF0265E847EA4421
1629CF81FDFB40A4C997B1EDA3556FCD8BB4EB141EAF4DF853FD353120BBD37D4B44
16302CA1C1D5D8A5626870AAFD925B461A65FA0E2924A197F27B224E53A7140A83C3
163110A7F3868E4801C216EBFC5F8391A1576C69537686DB1CF7F2AE299FB03CF222
16326A38A57466A9C0DC13E9A8200649DA837A6C40E002C25114F0CFB3D2C0A9AF20
1633C7B387856AEEE008AD60FA1B26179D95B3486DD3E5BBD096D4B105117418F60B
163426AEFDF53A815F712956AFAE0585B243D5A2B4AF5B517023867F57ECE2D538D3
163589804EFA77C0D9CE905A3303F19A9AB3B228A03B88CB26631814A36C27D09E56
1636E965514293048ACF6BBAC80329F0422591F06637A274F2582A6BC59ECE5DBB7B
16377CB5056822A2426E4359DE632F89734AEB6F783952B007EA1D2EBB7CFB1C1D78
16387EADDF28CA76CE34F78E568B11AA69FAB64D8B0FC933FAD372B9EF19D5F31A25
163935BAF075193980F69141538B7E7586E8DB534762CBD9E95442AD17C8C2F438D4
1640DAC23C5F5D772D1809ECEB13809662C6C8B97DCFA5AFD46C6CF3FC6F07BDD604
16415A4C473C7FF3ED34462A79487EB47D5BD4580E98BD44CFF016DCC942E831F7BC
1642759A345622F5C65C067C83F7474EBEEF62E63F5B49519E0E1A7BA279784977DB
1643C646DFE8D0AC7D78CD27B8F9D8E18A3A1C1AD427A85401543B0CE4F4469FE14F
1644BFD02FEBB2050BD06558FEBA3F61D35AE7A0E49639DF68910174F41A20F5C839
164579545CB64FA870FA9AAB20B80CE7D85DB8A0F64915E1742E5835B5152BCD4B89
16464E7BC34E8D8CC93F5DE675090B7BDAD2728022F29D6A7D0F5508A189B8E0CCBB
164787AB29B9680978381252A9A37AD5CEBA8E4F8CA2C06D7A2133FF94B3AF05EA7B
16480C1497955A4E04183092871E66A7386E063B58764B62C33B6997F2E0D7F4AB76
16496093F606DF3C4E5F8A06E9D602E36F2DF4CA2E8C59EA6F8537A8269EEE427271
1650E1FFFFEC053811328AB1FC60821F4C13D277EC66F56F27E0208726C915CBF178
1651D2DFBEB767FE08AF1DEF4219F6C97BA5505DA3CF06BCE02E8E5013872DDB0E9B
165201103E8F7213F1A00C473349820BA7F202C9F8632B9D7AC4FCC98287175CB2EC
16537800B05D4A7617335D1CCC2094F70BA6556A99F2B9365409971DA4BA1913B7E8
1654D6D84BBF1CB40FFCBC9B1C6306E9A148F39874A1E2A8FC677EB621FB46304D59
1655B982A381886E99BE387640FAEFCE8182A2CC9AC76C1078D9E03CEAFA0747AACE
165616F9A95F5A97265A208ABD10C3BF49C1856461B710A29887CB6D57B61D24DDC1
16575DBBFEE1DD43EA93F9B0B70276253A89546A4E3918B5C93A991AD372606F091F
1658EC35362E95CAAC00280DB8BA15DFA28F9AF7A6F9EC51FB2ADE3D15599AF01627
1659B4D96F3D35FC4995EB18DA916FB6D24B56D60084E0CD8A32AB934845FF24B689
166067883D3EAB40BAB8FEBC3C17F6145CE0B96BA50A9ABEC6F1FF955C9FF80DF500
1661BEEC7AEEA8C2FAA50968A57FFA5E9AFBAFF08451A63625918621B8FE9A46255C
166286B9E145C2526E4D27F974D74221FC90BC691454D7CC6413AEE3321D64E57F58
166381DF5C5954C794492D4135F130855678C8BB7C4A3E3551D2E89F3DF6B049D857
16649115B3697E07024C34985FDAF5EF24210B2864F9471879835FBFED10D7535002
1665E806CE05BEC90ACF31E49AA6C62D9E169196A7C358E1AA5C886C1E1544568C2B
1666500F208319AFCB37CBE4A568136B1791844DB5B627F66C75DBB7FCAAC4EA4620
1667323DD1FC501727D74CEEA2C3D1B4D63779120AE0B0843FC978E1EAA6FE4FC337
166846F12F90D6168313CA077B85990EF9C6EB27F71D3B8C262FDBB297B1B88625E4
166962143BD515F6FEFEBAAF35ADF8B57486A14DC57614488C332E2B81B946397168
16701069CE21C21E8F44B2DB9EFC2F4160F17ADC55DA7218DBE64FBD5BABCA4C5718
16719748B61B8F7F9573847E7BB62DCA710100AD39FA555C2C3B3800BCE7C78BA404
16723DBEE48BA6328F47B1E72A507432BE4A7EA3F0AF034B2E29A4CFFAE8B30AF806
1673F71936B5FE86F73F9C4B81123E1AE017B60EB2EB108EAC9579F3EF142CEEC861
1674EAECCABA38C637306D8379C02548B4B33FB5D8A6169B3899A2D0499899946371
1675BCD7D8D37924B66E4DFDF25ECD17408AA78A9A1D1C8A3615E428EDAE3E56017A
16760C2CD79A0D92E6DDC54746E5095B4659D73A251F3B7FD7625CE7EAC3EFB61409
1677C1463D4015619BA3746F278188E2F30F997D477491D39625C2B829845D4EA97E
167856D7F3883CDD5938BF1BDCA2DF5BBD0E3D495554A01840E7E7A081A736DF6D7E
16796BDD580F717261F6A3953157DA05AA3B57FBB1E977C6A43555F7BDFCB35C8B8E
1680B6356A4F1B01317B029918AB1C0400CD32A41515CA55E59CDC9C4641A570DA65
168196FA304094735B8B070FCDBA01DABC55C493A390F3A0B60D31C6EE3176BD5257
1682F6CFCD17682833155B9DE734CE94A232BF9FD8AA45C35DCC0B16FEE6EC241BC1
1683E944B183ACFFCBA57219D6BD9132E9610780D4AB07FB2F77428114E800CB5855
16840C26502E4B09AD0EC8A4B342DA732E24CBCBC7BEB15322BC3A4B004CB9652D27
1685B85525C0E59DF15D972EE00D5D6DCDDE1A141DEDF0BF9309463C7D5D0D95077C
1686F41EACAFA40CBA65004AC680983DB2CC892C1089A58514051E2C0FC16D74056B
168734151DCA72FADD08765BF73139A2A15A46067064490DAC5AB5039C545DE452F7
168835416482DD79C77BD0256D6BE9005C80902D9BE36F06FA4431F1DFBA7C982C66
1689E141DA88A07902D83D1A83C0538DF2F8F8719409259196EC46B9D7815E17F836
16904F06E024C1A05A594BCC8C7489B3DE9E9C3B9D2D15B8149F6D09A35A8444CE1C
1691704E2B8F273FAD8128A6033E871F1A36B95969EF3EA5EE8DE9B2720FED92D43A
1692B894DFB54E6F3E4D92E18AFD7B4D72FD675AB7447729F4F618FAC4938ABBE9BF
169329045FD578CFEDE3BAFA55419C564CE39F324592304FF7B339DC2D889C157BE3
1694A182E42DBCB6BEA7773CE2A058EE2076C77CC98F0C37CE8128E1671D8BD8AEB3
16951E724BE5297AEF6F8F90719D75E2218470034C970C7C3BC4CE46234CF25F3092
1696526AD39838F4DD2399A4DE9BE341EA932FC616B02FBFE7EC68AD6E98F5AB3040
1697C00C615ED7C7D427387D5AA99594EAFD54D3CE88DEEAB0A408C14B48217D73B7
1698AAFF60D219FC71262E05BF9D15DA7739FAB52683D27A3E094B40D84E3C272D26
1699F9CC125000AADA491137363EEBDE57EF302943F26E7DE08EC71707B62E717F92
1700BE14CB7F5D4FF8A802030B10FA8AB4D93286AC064E0547032E2AAFA3E353F4A2
17014B3EA80EF4221C81BA5698D58A460C0412B1C1BF143E547DCA6CCA584011B55F
1702526742925DBE8300564D621015796CD280DE573A0A733C5F6B2D4AD811EE4778
1703FE60F46ACF6B6943B07B0EB0E4636823430A301B06BE688CC24785A8896BCD42
170439B97D9963BB74BD8BF05217B615983E27994FBEDB0577010E46BCAA04DB1A72
170577F4ED8257D145EC44B2B65B408BC71239F1C2E8434C1C2FEE4642BEA1C60C7A
1706F02BF44140D0DA3E94D7658312A212FABFC0AA74F3512D513E82248BACD86A15
1707B5A2C71F3692C8D702FA11B262ECE33B382C681D54BC275FBAB326D928A6A327
1708AB2ABFF6C4A65339D945A671AD839DEACA7412ACA3253B399BA17E363B213FCC
1709962725E0BD8CCE55985438700204353C507E4DB96C1B57DD7A071124476A5095
1710BDA4C678F514AA63CADCF7003C73F0C505590526C0D1BCD7DAC0236243AEE48A
17115F351E12194DE6754336416227A63FE6C37D472EA1688AFD88FC94922094E799
1712930F9952B2B1B86D1436C843A90AA230139B82449E16EA8B29108AA624933D1F
17135BB7E1EC1E7F570BD1DC0D2A9C338F4590D590AFE417D289B103E11156D66DEF
1714F9E1F1F3A68DF07D69FB9CF4D09F2E2D47C2168E0BCECB8BA1CF856826B51D23
1715D440D7EE177DC922BA367BC69871D037A508B80E75F43C331F7BB5FC96493932
17160B3CA39DB05BB29C08348C3F0FAC71ADA5C07BCFD160FE677A8A030BDE2C4A6C
1717A866D89CAFBFE647B36F7931664F82997CBFDECB6F88C795609D1C94DC80F09A
171887221FDA3A699D0748F97E682B5B8C7B1EBA75BD44070DDBECB03824F9EA4E1B
1719BC66A08A1A0F8AA3DC482D408C83B469315A2ABA685726CEA99BC3D15799D28D
1720F81E0BB958E34A1670C23FCEE68A0DADD2BE3CFCC1914A9FA1B1A661693ADFC6
1721378969C2E400E5D4AB0CB7DC0FA364893D2484DA98264CB50205B7B9A2532492
172281A2697B7FA4FC77E71D3117608ED7C474AA2FFEE8B3F1DD942CB16A1FF06C6F
17233741AF6972D09A5EDA91B4EDE291A7B3E3D481005BB578DC5AF13C88EEE51380
172478E57D8E073FA46B89A1DD73D51AB11B44048CE2F031031018697B2DA15BB05E
1725B69E9E54F85E09EE3EBCFF390A9CF28B6F0932A46C9306911F2F36B8CA3ABC14
1726022697A6BC560C0A688BD1E49AA9F9CF4917130ECF08F8C500E0096A8BE65E01
1727EE5A2618E3C9DDD1D227EB584EB0763C6294B91DADC65AA8F1DB42BA25E77B9B
1728AAAABEC083135CC61C18987128961505D602E409C3DB90F301CE2C792AB7ABD8
17291B7442AB1C8D5B1FB5AB30444752254A530B227A1E7CBC615B045031FB07468D
1730DADBE63C9D1AC6F9742738FCF2896ECE73C131063E6FB3B954A77D1CD1F5764E
17313D65A43B627E8E7E10C5966C93E9794A3211D8B349D7F82427A65DA39B4AD1AE
1732A98733594453F400B9841AD3207DF9A908372B8B7F8EAC363D0DDFB90411A468
17331F3F0E7A8DE83F3CEC745BF43D341A20F53BD0667B70613FDB9B1379FA61BC9E
1734516118F7B1DC7A7B049E116A7A254F0A363694920EA156DF045038B14C229E6D
173519417309B6DFF125580B5279D6CAE9AACA31A1D21AAEA8DE32180F3456AF61E8
1736AE8011BFA62D7B5A8123A02131D2F622211D74F104CD729CBE44EBC70672C064
17376D8CE2956C78B8CAF172B77E78F715DDA875A492CDD8357CB3AA3ED817043631
17380D278C6AB079AEC3C765D5E0267BD01C1D3F7AAACD0CF34EF8DD2FC5FF8FE85D
1739E410CBDCE53C792C0ED5092162DB85E6465C058D95816008077E22EB8A98B8D2
17405A4069933FD3F3DE33926152C7DC712807784C17863EC78F9FD11A335BF8C700
1741F4963F7C1A72505DB453012507A3EE51F7F2E814CB77769356C7654B9569B68D
174236C1EBCFACDF5C8D91D664820758BA73A83EA9660E33D4589C6950CC5C612710
1743E9E97BEB5CB43F4109FC0F9E5EA126C1A9F2C4617CA146013F01E810EED40041
17445D09159A5B53FAF73B151499CF4BA3B79A19034CE461298D1B805E161CE837C1
1745AE9A7298DB9DD9E54C347E64772AF100A5C736173D5D9EF4C45B8FF6B0ECA17D
1746C1ED7FA96FAC530778D72CAB4D9920BC6C137EB3187B1DEE669419753B6472C4
1747D29CF8ECD1D43AC03DB1413FE6D4A883857E2574C68AEC9AC7F7D3173E9EA7AD
17481A8762EB2841D29BA98B8C59BF52ADB41A1C06A50FA66C169605BF950AFFFED3
17496CF7FEE0126C0AF7DD7A85796BE7D93A124581EF530AA62DF4CB06A15A17D5E3
1750F6B6B72CD7481D238B2EF97123EE55872A43599ADCD48443DD9DFBFD469C71D2
1751624FE39A15FB5CC331E29B20DD1994FDBADF7E2843ADFEFFB38AF6E727638848
17524BB02352C312A363C3920604853550205484499FE4B1D8A29A4913F440E37CBA
17539CFE762651749B33BA532DDFEBA257869BE4585699ED7E918FF72D25F3EC0C71
1754FC49EF6C38DD1105AE50D5DC13F6F1AE2FC3264C549FB4D8D1A959F25DFE913C
17551ABC41ECBB5B538BA1C4870E73599BA518FF41B6445D40C9B9BDAC2D552E4533
1756670DE0C40C155E46AEDF4B74BD44A521815B69981F4F33EBB774391320D8B6DB
1757AD9C9545557E21A90EA55CFA69B967F3E136CCA7A1E4C9D312D9D08940DECDC9
17581CF646FB7704DFDF783BBB1739DA1D2EF502B7B3A1FBEAD958DC99F086E6B623
1759F33ADC3A758138E47EA3DE1FEC42EBC6D675C658B9AAA4C4054B1F81CCC4D216
17609559BDFD542140F2A101095F2B3FFEA124F407A8B650032265A48F065C3C5BD9
176166D843E3A2BA4CD7BF56A6A10D90345B51969A03DF45C91EBC2F3023A3E71B4A
1762B6A7DADD9E3EC5C70207F743157A9A0ECE23A7A95798C2174281A7900919878D
1763955EBCA90D02F07876BC3F5EB1252A82D891FB3E0FB9FC032080E6F700981030
17640E81FC3E75AC8623405CCAFA66161D5D471EA952F0FD4021754CB61A7B1445AC
17650547EBD4D78F141651A5DEA6262F0A05559DEFD434C5485FFBEEE7DA647AFECD
17666468D4D3905576FC4F670BA39F9956149CC371A31ACA929CAF0668B667DC2CF1
17678810C6CF9EA23CD5576C110183155DBF15F24CF0973532800274127C6C5C9C79
1768EB121C5F0B74D824DDFA3EC4BD7BBB8799875B8A4776B60F840AE96A8F65724F
1769AAC3BB862EA6F8697D935C60C2DF962F042521BB1D3EB9C064F2CBFD84208D94
17700E9DD9242157F4D3DB05194E82FAD5EF8C09092055463620D1B4ACE3BF9CFDC4
1771989840A2CE7BF62D69BBC387D0184EBD87755E4DCEB8296D1005E79779A19B14
1772354345A8A0324F1E61D88A22BC423D3DB4686ACB6CCA3CC515B6A5CCA6C888FD
1773EC2CCB767778AE3FFD7ECBD8BF1828E5BDDF119247F11B299D5272C475C67113
17748F124D25A87AD26E8B7713A5189FDD920EAFC2D9069664744B6E7DE1AB20E798
17758BF9B8885BED5CBAB904032F6245AC752F392524C2FE09F636B59B17ACCE1E56
1776ECDE4533FEE75C6ACA81D3FD7F6032B865D8B6F34DF1A99E01FB6534659921FB
177781631346B4530CC2E6B15389D7D494A4851C5F7CB502B394E840ECB67D359B77
1778E940F25E96B3AA4DBFB0689C0C8D41EBFB5A9ABF7B817AC487093BA1013E345F
1779B42647E031C22B77A319062324A7BBFDC9DAB8D5B1E0FA4FBF8036AD46E554F9
17806B925144323B7A79B103E808A43954DB3A03120EE5BF48438C0ED2807DE82FF1
17816800AA8EEEA5C70DE747B76246A437B09F402C8E1B545636E0860F670D10E42D
17829A579DEFDAFC447917E0AE0AD49F49EFEEAD72A83149A22A82F909670FDF4A9A
1783B106147A6CD6D9CA4FD64191B7883E89C30FFC30D3262B9B09CD7D2440D85F28
1784983B191CEDBCDBC06375195625EB247DAF10FC3F01259E59184F462B79592181
1785DF37D70E698785E55E0810FC9A5094CA115B2067FBEE8ECB004856C68A18AE7C
17869BB1186342D173068A4BD0020FC703BC1AE0D6C8EF419288D7D0F09042C5CAC3
17876DDFFAF9A79B811C55F41AC87F93DF99604165A6D6E5938016C155EC65393512
1788EF633ED422AD5BF8C66AD82B3B2B0FC59F40ACA8B62B2195D84478F920C39EFC
1789328C9EEAB999D28CB365ABA1A99475D57D5BE151E107BCA6C65D535D8E83EF91
179035EC4BBDC0C5A124CE24ED6438F2103FA03BC103F899CC0E12428A807763DDC6
1791CD11E4E11749145810B387906A7B3065BCF1E29A1815ED266DB7A429C3FB2860
1792AF3305E4FE74E02626385FAB8833954B803CFF6231810CA8CE55EDB2DC2B1548
179382CFD8F105CC916B0A55E3955BEF60680B544501937E9A6FBDFF46E12B114967
17942066512D019B1D727D3759A708E5D8D8FCD99AEB82B3F660602F8BAF091A7AE9
1795ECBF15E7720F671E85C5FE0F2871CE1EC0A7B8E923EDD845F6C8F8CEACC70DDD
1796B2F87D25890FF1DB39BFF89A3A35B8B14742B4571F412CDF868177E406C9D07D
1797B759D6D32A7CE22D9E9FD13802A170F20E9FD757B9DA76B12712FF6DD0E8F4E7
17984A296ED2795FFA5A0C3CE468C7A9CCA440C599C207BB084B1DEE83817A7F23EA
17991A4ECF72B3786D72D12FE3123D33559793046B7773C9E93AC1172026014A1917
18004B66A90C5AF50072C231F0B633F00EFED86156FF0FBD451C161DD06EDF438A38
180191FA7FFBA022A4468296A7132A3D88AC243B69C70F21B7AEB32BB5AA21800620
1802BE6C8116466BB843FEBE361D1DE93F7C38033C95EBFA922FCC45E812B48B1A23
1803C33DE814EE885A2354B37C05E405D27A0D3870E19CC718284FDD45F7926758DC
180462D79AC3C0EAF56B6812049148970442ABD34E0C0F49A6711A134C5568004C24
1805F92B455E8085D77F48ECE5FE9F27FA91379C939919E78B60A54E235B0936B3F0
1806E1300BB4CBFD05A18DBBBD76524B4084D54D990F5EA51E5670906E358B4977C1
180783A7124F6BC09AEC282DB90C2FCCD9D909B57959E6E68D2E50344100EB1B6BD0
18081A1FF2C2F0B250AC9B1FFB4A4EF3F28C022F7F873C7B3AF76E1830C9B039154F
1809B3C3BD97DB32958B718D53B552A7A0B033E84EE515B42184A22A10D77FFE32EC
18100E1CD1708021D7931DC73448FB098A61C93B7D03F98465BA42D4B927AB115C49
1811C0CB10C0BD55B16E6BA017306506D3D610ABECFA480D8840DAAF23CA03AFD9CF
18121075C8E9B821499DE23D4882C081D51649E5C9BBFF1431057D95D61351287B03
18130C9A6BD89F33C02555E1D3DA7F03CC395C1E3633FC902F060DF903FC96C19719
1814A5B6A39E
37c41ab1
CR
18150000000000000000000000000000000000000000000000000000000000000000
18160000000000000000000000000000000000000000000000000000000000000000
18170000000000000000000000000000000000000000000000000000000000000000
18180000000000000000000000000000000000000000000000000000000000000000
18190000000000000000000000000000000000000000000000000000000000000000
18200000000000000000000000000000000000000000000000000000000000000000
18210000000000000000000000000000000000000000000000000000000000000000
18220000000000000000000000000000000000000000000000000000000000000000
1823cleartomark
45c0f7f8 1824{restore}if
37c41ab1
CR
1825%%EndFont
1826%%BeginFont: CMTT9
45c0f7f8
CR
1827%!PS-AdobeFont-1.0: CMTT9 003.002
1828%%Title: CMTT9
1829%Version: 003.002
1830%%CreationDate: Mon Jul 13 16:17:00 2009
1831%%Creator: David M. Jones
1832%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
1833%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
1834% This Font Software is licensed under the SIL Open Font License, Version 1.1.
1835% This license is in the accompanying file OFL.txt, and is also
1836% available with a FAQ at: http://scripts.sil.org/OFL.
1837%%EndComments
1838FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
1839/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
1840{save true}{false}ifelse}{false}ifelse
37c41ab1 184111 dict begin
45c0f7f8
CR
1842/FontType 1 def
1843/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
1844/FontName /CMTT9 def
1845/FontBBox {-6 -233 542 698 }readonly def
45c0f7f8
CR
1846/PaintType 0 def
1847/FontInfo 9 dict dup begin
1848/version (003.002) readonly def
1849/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
37c41ab1
CR
1850/FullName (CMTT9) readonly def
1851/FamilyName (Computer Modern) readonly def
1852/Weight (Medium) readonly def
1853/ItalicAngle 0 def
1854/isFixedPitch true def
45c0f7f8
CR
1855/UnderlinePosition -100 def
1856/UnderlineThickness 50 def
37c41ab1 1857end readonly def
37c41ab1
CR
1858/Encoding 256 array
18590 1 255 {1 index exch /.notdef put} for
d3ad40de
CR
1860dup 33 /exclam put
1861dup 35 /numbersign put
1862dup 36 /dollar put
1863dup 38 /ampersand put
1864dup 39 /quoteright put
1865dup 40 /parenleft put
1866dup 41 /parenright put
1867dup 42 /asterisk put
1868dup 44 /comma put
1869dup 45 /hyphen put
1870dup 46 /period put
1871dup 47 /slash put
1872dup 48 /zero put
1873dup 49 /one put
1874dup 50 /two put
1875dup 51 /three put
1876dup 52 /four put
1877dup 58 /colon put
1878dup 59 /semicolon put
1879dup 60 /less put
1880dup 62 /greater put
1881dup 63 /question put
1882dup 64 /at put
1883dup 65 /A put
1884dup 66 /B put
1885dup 67 /C put
1886dup 68 /D put
1887dup 69 /E put
1888dup 70 /F put
1889dup 71 /G put
1890dup 72 /H put
1891dup 73 /I put
1892dup 75 /K put
1893dup 76 /L put
1894dup 77 /M put
1895dup 78 /N put
1896dup 79 /O put
1897dup 80 /P put
1898dup 82 /R put
1899dup 83 /S put
1900dup 84 /T put
1901dup 85 /U put
1902dup 86 /V put
1903dup 87 /W put
1904dup 88 /X put
1905dup 89 /Y put
1906dup 90 /Z put
1907dup 91 /bracketleft put
1908dup 93 /bracketright put
1909dup 94 /asciicircum put
1910dup 95 /underscore put
1911dup 96 /quoteleft put
1912dup 97 /a put
1913dup 98 /b put
1914dup 99 /c put
1915dup 100 /d put
1916dup 101 /e put
1917dup 102 /f put
1918dup 103 /g put
1919dup 104 /h put
1920dup 105 /i put
1921dup 106 /j put
1922dup 107 /k put
1923dup 108 /l put
1924dup 109 /m put
1925dup 110 /n put
1926dup 111 /o put
1927dup 112 /p put
1928dup 113 /q put
1929dup 114 /r put
1930dup 115 /s put
1931dup 116 /t put
1932dup 117 /u put
1933dup 118 /v put
1934dup 119 /w put
1935dup 120 /x put
1936dup 121 /y put
1937dup 122 /z put
1938dup 123 /braceleft put
1939dup 125 /braceright put
1940dup 126 /asciitilde put
37c41ab1 1941readonly def
37c41ab1
CR
1942currentdict end
1943currentfile eexec
45c0f7f8
CR
1944D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
19450E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
194651BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
19477C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
1948E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
19490FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
1950C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
195142D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
19524B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
1953689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
19540DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
1955610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
19563667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
1957C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
1958995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
1959EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
19602CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
19614CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
1962B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
1963D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
1964510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
1965BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
196693714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
1967F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
196845EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
19694345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
1970088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
19719D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
197209B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
1973E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
19740EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
1975FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
197694744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
197703F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
1978409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
197945B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
198039E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
198158F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
198284747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
19830CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
1984F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
1985B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
1986D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
19873306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
19887047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
19898CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
1990712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
1991C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
1992E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
1993A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
19942479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
1995757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
199654B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
1997DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
199808977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
19996AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
2000A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
2001336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
2002E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
20033C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
2004E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
20051B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
2006FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
2007A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
2008465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
20093E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
2010CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
2011573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
20129F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
201315BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
2014D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
201515491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
201664B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
2017D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
2018D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
2019576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
2020ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
2021EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
20229A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
20233C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
20241ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
2025FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
2026C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
20274343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
2028CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
20293C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
2030D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
2031BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
20321188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
20334E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
2034C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
203580C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
2036AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
203759175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
20383E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
203914D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
2040B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
2041F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
204254FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
204334D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
2044825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
2045BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
20464743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
204766536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
20482356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
2049F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
20501BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
205137F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
2052741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
205339C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
2054887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
2055B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
205615B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
20575E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
205880B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
2059A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
2060BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
20612A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
2062B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
2063F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
20649A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
2065CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
2066DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
20676314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
20687C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
2069D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
20709E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
2071EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
20720E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
20731FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
207485AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
2075EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
2076D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
2077E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
207888C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
2079E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
208001D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
208154CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
208297871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
2083B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
2084D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
208518F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
2086A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
20871D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
208831DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
2089408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
20901D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
209129C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
2092BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
2093AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
20940042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
209599B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
2096480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
2097D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
2098FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
2099587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
2100A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
2101C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
2102AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
2103AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
210448B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
2105385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
21068B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
21074B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
2108839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
2109320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
21107CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
2111DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
2112DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
2113461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
2114BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
21151BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
21163B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
21170ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
2118EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
2119AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
2120F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
2121097C4995B2C3BAB2DD04B1A7097DE16DFDD76465E79ADEEBA90489ADD0914EBA
212253E11A43ECB11D072C68D2131BE1C7C43CB9DD5FBA0A67BA43D6851AD4CD3BC7
212339AE2E22CCC183A56CEB71D4F9F578518E376426E42B6390426A8434B5A83E78
212477A5B9963BAECD5FA5521C2A29418764E4EC1A72462B04957F823E2817A7F8D0
21251512919889500024B1C42EC107E8B8533C0B314EE4E23313A4C1BDB009A2073F
21269BAB479A3F9DA76CCD65629CCEF78015ADBC2D0D124B3BB2D322FC4D209E417D
212784BC3C758B6AB64A01E25C9C7B71D741AF90A19A339F99A0BE9FC39622F04C6F
2128737474CFEC19C890A657BCE192B9DCD8F273CDC5294875DD4507DC5723EBB357
212973DB0933927DC21081E67E5DCF4E41FAA6E00E8DF04128F86348FB0718068FA9
2130918319C4EE9D090CDF348153B6CC48648C55E889B4FFD3D75466F1B50C437546
21317DD9CF20980B148F60BB146402DC0732A27F255DCB859CFB6F9D329C12FB14A6
21327824D6DE27B03FF85BC59703A5D6C5B7D1CEBCF3C3FCD71D6D6F0311E41BF8BF
21330609D23C84720FA9EAC961C9D49C2E962D9618C32BAFBAA8CAB0B2F616E57DA6
21348CB44C5595A22377B28599F7D34A3BEA4173E1D31A2A6C5670D1F026EE2092A1
2135DD0D2BBACAB46E5B0A7113B1BC379709C5870981E482E01EE3D16AF9ACF1A5D8
21367ABDB4BA5C3B13AF047826F360C8892642B482C3C61FAC97F332888AE156B35C
21375C8415A75B4F0F25F8E95BC4102FEB4A8287C544C99778EB0C163C22481F615B
21380004F764FB7CCB01AE01A614AFC9650D3934F748E8785416BBC89F66C696AF5B
2139B5F6F125F115241728D85E7159FCDBB10B64598249BB0E6FF1AF845B0A2370AE
2140E6A973023FCAC4BB6158D48B0C928ABC4E29A0DD611D0F5266AAC8239064C266
214182D4D33B032418967406BC98156CFCE1F091F733D8BAB9523690B4D6765DBADC
2142210E814DB8715A269474EC0501CF66FA0D8FD224EDDE93AF243032E73714F730
2143FB382372C0F9B9372450FA6F13689C9429EDE1A105F234B216263A7D0A917A15
2144D1FC128580A16B5572436E398C353A0EC62539CAA188901FC30DF7511C1BF6E3
2145B462203AE937653C4562FFFF03078EE7A184F554E6F01932AFD07722A00E50BB
21462D2BB785961F76273A16CEEB0EE833DFE14BBA539CC7E48F67A9D20C94283137
2147BE84025E86C714DC9C6FD7CE4D1D0C50B6EDC79E066521FDFAB6285C83A68B4E
2148B1A119875B4E45BF5403950A25286214CB4183C345173F72E6ACFEA5C13B4D2D
2149FD12BD235193EE6BB66519B553CD963EDD68E7EF9439DF0411C8193ACB183C09
21504143657304B1BE2AB8D2D0203E677FA1DD01152D2ECF9D987B16C3FE0B3F5F12
21515C920243E1CB5FDCBE97DF55102EDED12811F3F7165F4FE1F6FD5A6BA809824C
2152041FF9441529509EF4442EA873E8E7FF507607D526DD27315859B31D0AC11475
215353C573EBF9DC37A4667133E99D8AA608ACB729F90B736395211043CCA3272AD1
2154470F1EB485629AA8B9DCB56479F734703D859F1E4EE8789FD6F739D0122348F5
21551D487FAF1F24EF7A14CF69ADE7A87550F55F394506BC7627A5E319B30F362528
21568AB497EC03B69B58736A5EE0AD63743E7F22125536104674EA63F9AC5286A746
215747C73EE8E0320E7DC098CF43F23EDEF32D213523125110140F46202435EA8E79
2158E285C7F3AA0C5877F75FE0F16BDF478A00A6F380C7B677BE479FE900ED3C4A0C
2159832966F634C63211B58E9AAC3A3346ACACBD040164B491287B45E0131479046F
2160B430EDCF59B0DB6B0594775AA57CE029EE8DC445463169EA976945A5765AC390
2161CA615933FD05173C47D30DD5CCBD56D89B4557C7192C31D7B500B779D7DD3707
2162BD4B64980767B6C9A1BC9A948DFB8518AEF581A1D888C6F767F3315EE99F57E8
21634EAA54D04A3A9E34B100024AA7C49DFE273231E3DF17073CCAF5B0EF20566755
21646831F85C57454D1B0A5A8438EFC7F4E396F09CC200643564BADECD2208915FEC
216578E94025CEC8ED965EEE5F6B8BA081478231547355F93491915CFC4DBD619862
21660F99133CE7F44756C593C8DF1874E973237ACB17F9614B79D45672CF62AFE009
2167EC61B395BD96B0081DE750421A41E9D474F0E030C6B8591D364F29A6D7246EF1
21686B4CF9B931A9A474011C62D504F408651692921AE83116CA0E4E6F41AF877FC3
2169CE77764197719291E68B01570AB7038D91B8B81EA501DCB5ECB6083B6764BE3D
2170DF21B4B3A1E1A5C917F324A1CE5AF92BE3B2F8634A140637425F9BDFBD21FF33
2171CBA42069981B230D211602FEF410EFDC199B6DF283343FA5E6B4FF2804DE56A1
217261DDC684579F82C65DAC3A4F92B34FFB6273EF4F4591317B8D2250850BBA236B
2173C1E36185BC3C8C7A7654B24D7A10A489BDF675F6EFE7B4253F14CB3B5ECD1756
21741882F3D139EB5EC7860D70A176D1536F5119A6C23EE9AE9AB21B586DA19B483C
21756BEBA87C457B9DE3D7C71DD7F97E352B642D84455E44EFC54417ADBE7E190F7B
21767ABF6FA0EA84A394C8316BF420D6E2DE5B867E6D602365925C3ACFC69ED653A1
2177DA30FF3B49D407237196B9401B1EDB7EF2260E582D02B18EDD38AC0016F28896
21780A61CA720216012D0FE2B58D5D675D25A679B1D70FAC10A4EB38060C0BB1AD1D
2179D1C59BD5F44FDD8768EFBE75B6795543533C02198E21A4B8A5430C2C432E45AA
21800C0937D6CED532EE6714C58ADFE2B15B117E9AEDFFC1E172716C756260BA9931
218123AB837CCC7C36BD6B86B628BAA7D6002720AF00411E9D039E435EE479D5015E
218223DC9F3993546E50A442CD9D0429F7AF22D9F14064CADF2A3062F218582CA520
21833FD8E0F30B224408594EC426C8DEA57ED60FAB24461611E86302C421BA600CDF
2184D4EDBF4044F0E2893143D4BABF0A6AA09F28FB4190B779B82A61C65264A199D7
2185C2F50BD82837F08970F630E1CC74B4EF421B1032967FEF552DF3C1C83ED995BC
2186CB9192ED8AAA906CD9708A4882150B27B1E75FFC0D1383C50BB3E6C36F5CBF28
2187C0572BD2F01AFFEE5927EBE3B6CB8FE778ED2B524E252F59AF00A3F8F880116B
21888EA655D9C6A68CAA28DB7A75003D0C3B653C7587BD1A7D93BE73CA6219024EA1
218907C31E7F7BC9B874183C9337538C925226CDC48FA25D51A6A0677A2BFF699AE1
2190E28D9E58369BD6AD73ABA706531DE565E1984A9C89D0C1EC6FC030A93D3D863F
2191C45EA66F195CFEFF9A03A1673BC544FB4F491AE5E50ECFF7F34B095DA96288F4
219231C02347DCB6792ABE9DE684A1A92318A2BDA38C2D8DDEF29B8FED450DCDCC7A
21935C5D124FF0DA047D37E8874370D5537AEE869E771835EA607E1634BC0707C0FF
219475D5764B867BEDD8FA075F0CBBA7191B3CBAFC9EF8DFE79E9D7FD5A58916101A
2195A920F37BC5EC845621EFE3A953C19853C2989FD31952FC4876A8F7C58C4F21C1
219631E6ECE0389BFDC8D6E391B04D443EDEFAEB77985808C398583BC4D8C9979A38
21979842C4FCB7A4E84BD67BE72551A43B2B330293D8655A3D6655A2358E014F5686
2198613D19B474AE0A92A80E6E701F4B63EDAF59C3E12DD961A5B413FD1CB5400743
219991F673B3502C6FD90A1349D649EBA4F5D8A6E5AA41F1A4DE1C387E22C9CC2733
2200D542291D5B2E5CCD0E1FC1835BD6A74F5DB97FC174730AF33CFE5E68349BEFB6
2201F2C76171C578412F075F9730567BE7A2644B17012DDA04D681018CBE09BDFCA6
22021BB460699CBD6006C031A02634BE0B16375FDB9C582EBE6683B60768BC3901E7
22034388A7E058B61713E3046F28F5ABF58417DA878E1870787C472FA08C2FAC7517
22044CE71727BB69D19BB40AEB50F1BD66704EA37D2A0B82F60D72E15440BD27064C
2205E67CA41D97349309151DA28E1A7850587569A794E9FE46848A4611066291973C
2206A6CD19857B92F0E36B271F24D54ED663A7C64DE3534B0989D41E21E01469AD69
2207916AE35C5177C6BA8CEDA45C92694077DF3EBB0377269619F9925876919A472D
220814751E6515118EF9B84A5DD8C92695818BA4C959485EE1EDB6C6D3553B6FBD27
2209A0FC42DDF20BB335F7D46F0951C51E9BB69FA6E7C76A8C960FB6A4305FDD2A30
2210234A5EFA64C34948422255C14C2A0D8A57174AFB7DF3DB2F520EBB401CA2DD79
2211FDF6C624654DFFCEA8FCF5B34C34CAA7C6EAEBA6DC98E8557042126E49E51C3E
2212BB7C91497A44A69E4EBCBDC0656AA5A7F419D0443576F530C8136AE8612589CE
2213781205654730006F3A39B4F3E5301784F164A2C87C2F86C894EAFB5E79D7231B
2214E410219BED0210BADEFCF27EEF683A01FE01DAB70AC8DC4E82ACCF6B5BFB4DAC
2215A42AEF344755A06DE8A6BF6F2786435E2EB1D103C8FA4306573BE699571880DA
221653548A1FC1F24E50B3C2BACE9261C0245F671694A0FBFB4ADAD535AB9949C020
2217DEFE36F7EA12B3F8D80E3E3D7B3CBBD8B6EB0AD2573DD5DD0B4FABBC790C9F28
2218428B33CA533D5A6348D1A64D868863F4385A3F19D9F4766B6B81CF634981090D
2219AF0D763F09A2919A9DABC0DC4602D72F8747176F947A92077956FF59FD0D88CF
2220FE224B9B16C5DD710E6DE3B94D47DED695BCE5414A3794E4CEB7845915272ECF
2221E4A657C7B53DE7DE96A8C901DA24D54A467EE083181CEE606E5917FED2C97728
222257887C7D19EEA950AADF6E8A99798789757BA126D925E330BB7D931FDF4EE14A
222304F58858CE09DCB1F57B8F780DABEDD1C26D72C9A5287C9DD30365693C5DD06D
22247365B309AF1C97BD3443B393309929F6D1AE27A1CB55C2F5085EE81928E138F4
22254FA21E90C89F0397C9CDB4D707780F2418B38D8A8D76793C868D4BBF10AFBCD2
22269BBB8202DCC02C37BE63D3CD22208A23743025921A54307A72037E6356EF807F
2227B2E7DF2B94C51F19895C3C059DB4C42C2DBF4E08E27E31A294B580E2367D2F63
22280C074F03DB73EEC7293AB98DEF387B3C18761C716EE02C95315A36D42BC5334D
2229984E6E35587BC0711D1B7F8EA8656C8059683C49CA41B0520D6FE1952A1991DC
2230659D83269307EAAF5A9CA8000FA086B55587FCD0C798FD93905B1CD88A9AA33E
22319DBC2FE2A89CC800565567422052BCF5BAA443EB441E3B7B6AF0322014458764
22327AAEF162D0E03F28F1D0A0EEED8714442E9DC41FD4B90436DB8A7E3A9431E726
2233FAC0CB7151B6236B2438DCE9EE814A358DC10699244FAFB932C928E0E878D91E
223436E840135A9F372A0DC2EECA730E8490F4D42DE218150497C5EE87A5FF5C2282
22353AA9D4B71996F86F8BDA700EBC01E3054459AA3F87CAB9C3A230551D4534C3AD
223618F6C76C41E10DB9DD67D19614A516BDD39C432005676C78B36C53BDB3646934
22373AE6BC84D339851BD4D07CEC26129467C7181760DE58D0A288FF1F0DEE52D68A
22388423FEA92D3D9331F75E3B062BDB37BEE45D5C338BFC462612D1CA5CFF432D7D
223989D34ABEB9F42CB40A63BBECECACC033538136B3F9B81F1230453A52549B648F
2240E8AA9EE2B0AE82A1904FB78A6237247DD96B906B82945AAA772DA058B85494B5
2241DBF53ADE76C1013C1DCC7A19AA3ADD198E3EEDE3269C4F3A6DFE54CBD17C7608
22423BF7513E37D9C8D688087E2A09B863882D46454A5B99CBFF538C008FA9BADC2C
2243004ED4ECE65C4301862323B134BA11C6D4E691AA899C0E83CEA6A625AED13F65
224478D330A389A6D6EC23CD82D70D53D4F571C9D872E1A09679444FE686A12647B1
22456BB67C8AA4D500F6DACCB2E0C682C835D24C646A51259A72ED3E281C93743832
2246A51B3B89D38E575B8521A39D87F8105F892AE9BE53FD758B8DBE2021716ACFB7
2247350D5408C621CDEDC04E63DC4468C301435C2C2D61F3B2C24117F9ACBCD9E3A6
2248BEA36A9A4227287DCACA0EBB1C6267F23BC0C3E0F28A89184FACFB919D49843B
2249AEA30EDC40944FFE38FFBD7B33B6B05F5AE1D0E168E924AC698B7200D2E86C14
2250E79E6768E27E848768A75DD694B48FE4839058824A9F5C472081962020B96FE8
225145DBD7153E2086C2DECB97B99850286211660573EB090E315BD727C989B8FE41
2252D25635F195218A2F15FE8A5C5FAD2857F75969D1257158EE5C52055C1E11D18A
22538770E2DE895D7118B3886FD549441424F56DCB3820D5709B9D838435AAE4D64B
22546F49CB37B640BD905D6C3FC1E53C8304B0EB694269D6C48D81300DD537373040
225565B95EF64F81AEE581FFAFFF8B32DBFC16B4F1F7FF9DDCE9CF5D6A8A6D79E4C4
2256209E47E16C32343B7D8B65D863F33717FC01CEF14A0F012805FAA46552535809
225714126B88CCC2F0E276F5EB42E0C7628CB2397645DD951E31566B9D80F4379A57
22588D10288DD980E93AD47F7F5EB41C4E0DE8AFC5118CFE87A804F309C6A9D1E126
2259C0912E55D9B1FA95611FE7FD22C722610746316AA8703953AEE8D52F4B67F0E8
22601C12A3A1A38B3AFC87E78B29AB79174E1CB09880DED63F5EE28AE6916E9BDF2D
22613DBBF6F8A09A229BCFE45B37D0E28A3A519DD20CD8B7AFAABCF0EEE058EC5BEC
226298CA3FF46CDB8324A5CFD9985AFD545B1425BA1B1F8A3209D159925194C2C7B4
2263F353F587F1CEC839996FB9761DA1343F24A17BBE4206324041E9DB6DC5CFB21E
2264789DCC82093269E3D2894773C8BCD25DB0D6B3DBF7A799276936132C262C2F0C
2265980D6689EBC8459C62E19C91EF5169439185F8DB0946D7156108A689F9B0A52D
226610E02422207CDF2CEF1C2B5D3D50E4D458B4A6C936CE9E6A6C4975AFD8790E5D
2267057FACE7B96263BAE67A549B42F8CA016C5EF42B55C2FDF20D3A25A68B13FA44
226899D57478B9FFB6BACF69CABEA3C64B559A0D0897176CE2BE218396DD2CB25D70
226959BB599060F97D2CA6422F46D28D3FED8AA36FE161A91DADE4B621EC24BEB0DB
227031FAB9F4B67209C5DA12F4AC49B8BADD510C8226962D4657A80DD7DD49104E88
2271A0287F75C8784516C98BD7BD15D91F4513384B46BB097291EF6D6229A529BF62
22720A5F4AF3C21150A058B08D0B47DAF540DB98EAAFC88E117BC9DBA9AC19DDD756
22739A90C45BA3E8C37368C7E44BD6BDFD96619ED819CB067ECBC13BE325409987C6
2274CB804C705C040AE82EEA129A1A7AD4B7B362E799F2CE5C0390722A16FC60B1E8
227544B0B85D097AE0D5E08DEC18C3E576E22268D7F0CDA46D9469019C20EAE9BA74
22767B49EA6166F5AC94672063D25C4C0E8FCE359712939ACEDFFF9AB5E7442A2A00
2277A7E7A05E9E10A209672155C03EB12CD5E80155A5DEE3D503BA08D71E423C472B
2278A74CD26E15A200FBAB8E94086928E73860E50BB7389B3A8E0E833ABAC5FF8C62
2279B894E007E5C220FAE6D53ADE85C747BD84D88BD0F40132A0D1FE51ECDCE1BE9B
2280BD89734A56C3577515520025A7743F45B01D74588DAED6FCC209CC819CE0DC65
2281B590337F93D92D71615422728C6A8AA4D357A4E350BF6CE2480D4E1A818EFD9C
2282E6243B96F72EF5C5E88645A73189D9772E97911A0713A03201A69D78A98F743C
2283C0C8562CD876F8DE0A488CCAA3EC11142190BC32B2D8FFBEE6E155EFD20BB003
2284055C74D843F2AB34D9552E5620FACE9E40C04DD84E29A602151B7C3352798963
228594674A8246B77CECFCC9A896B64F296EBD891E669A538343C0394E6634D9BDB7
2286AB6D9C584DC7DEDF6AEB695FF83953653CED9E2B7F6E5D2A965B60F1FD3DC752
22873FE4EBD010AD47E0A9FD989B15559783B429F50B3A70A1D8CFCBC150A492A8C6
22884F570111E78A66DB463BB2EA226890FC25BD5CCFAEDAB7DEB2D081480821426B
228945EDFD5C048A41F295415C43E86930C53961D954B54F6886044A1C5F6D2526EF
2290F6521BFA9BCEA510AB3E1731719DA2E83729BD08AA2814663532756B1AC5E199
2291329025C143B47106919977514AC51B681FBBF5B115AB82A15E24C7315091DFD4
2292CD11E813DCFB89355F4CFAFBBD54822018E7EA7ACB3A06DE7B571267E0C66BD5
22936DEFA8A8AED615B9A7F40B138841D094D5BEB32197BF5213BA572AED3C87AC6F
22946ED6356BA2A2B9A3E26E43B3E6780BB66CC93A1A2CE94C90D48ADCA2BE608B64
22957C0C0410A9134B81EF24CCDC7426E5096CAE44EE96D666A4F3F72774105AB03E
2296320FC752F294CA8A537BE8EB6FA85F069E6809553D3A9CB3384E132275D2028A
2297DC6CE52E75DE9142E8D19C656F7A74D985BEC5367F151A151E5D41346AF70ED3
229814D68F0C83E4EC225E6F60A48200AAA0FAC3725551B8859AF513FFBE2AB3C205
2299DCD56B1177021C5D819DC38BA8A042DB92A0A34224E37250AA0F65707C2786C6
2300189F518C2E635D327D999949C4358402F4EFB6237C8A0A8BBC01E9B01F58A83E
23013BF161E39EF504F2E31BB62F27B4830EAE9B05977DA47EF338817109E0BA1059
23026DFFC6426DBBCE33297E6D36D3492B098C1691DEA31FDF967BE80808199760C8
230346E9D075B01F433DD5A43A2AD872061B3852B74BB421B3564E57C44ED0DE500B
2304D976E02B51C656974673846B1B5E31F7F9EB5FAB81F92F62ED34EA0715950780
23056F5674E2D6120A4B9B89F749120921EE65043A66F0272B75C05BDDD09217A10F
2306E9E93E647617CA513F52252556D23F34248D0EBDB3FFCA6BD7C31E3369CB1F0C
230720BF53BDF7C4F7A1C37BAD112254C227FACDFD40CA33EDF4688600E16586A5B1
2308D53C2AFEEAA2416B29948B4FA677FC1EAC94B4A7A2AA4EFFA901F90B56BC2F04
2309921AAC33FA46982497BD267EC185F64A2C6F51C48691908568A4F9814175AC6B
2310E1B34565EF12D99AD27B74481FCBA29E4C58C8D031DAC1E58E24AE5E432C74E4
2311CFDA7278C66FE60C11D9501EE25CFB8F816F06D1427D8A8A119F7E9A66471847
231290BEA16129627D6E12463C9DB6E4CBF9AC20F51EEFC808ED48D41F334115616C
2313FC0F037AAEAB996F754FA6A8653B8912BA0A9BD0D0EA381B3A54A86155156D1E
2314BF1BFF694F9EEA20EBE388D4F01CE5117C0EA6E061B807AD4B53270006E6CC45
23155016272BB7FE8540070D51A260A018E09D9A1C7CB3E3C6409BC1993E59667A42
2316049F2393C872D0E8EC41FBC2671D0F5E4B99BDC5AD13F7B0930B881CC049FC39
2317938DD4D270BA8FD68DFF2ADCC21C7C24ABD1391C947142F1C7CC6E7EE5D31252
2318F84B92C304757C0B8394E9E2C2D4DCEBD7709FA645B883D8A5F9657FE6116F2C
2319891F3DB3BD7DEA5922EE488678297C5A043720DDD777451AB916FA664519A6A8
23209BE9214DC67D68FAF516E19E1F65F162C246B6C010911220978C2FAEEA7023CD
2321E2C2A175D2C79817AD4E4364090B9C6B95CE86840857599448EA77982CDEE30D
2322F4E739DE78F7C1831B2FAD322EB48FCA0ED8FE56A0BE9E26E6921171C31F8E79
2323D5A59BC6225A0AA217FEB684D1CCF1B12E21DBEF1F1315C920EB46163B5C2F46
232480669943D09CD519256D5A4DE9144FD5103B52774A530D2A4318E9ABFFEF15A0
232524F0590F23BA7612351FC0BD9E5F9A5A8D6ECB677978C4E2AFC4560986B7A8DD
23260CC30A82C2CBD2707A18D988C164F2B8CED74B1C12991E705F005E3A8D10BB25
2327F5A45974096ED5C5F8A09ADA293175C763CDF9C3484C4B9ABA9839BB9028425F
2328DD34E700820CA4B2BAF969C1DEEE659A6FF568EDE7B58400C07BDA06310B92EE
232917FEF247A7FAFBB56044FAD23EB2933D8F313A161767FE211FC103F392A9A1E8
2330B633A259920A15D19A4F5780C09071ED04C83FBAB9ABF344A1B0F1FBD2A96A87
2331E03F2785DD00CFD5B3B95736CFE6315E86E8A5E838F4C02B36859AB4CA203FED
23324AB0D43E2964FEF26993ACA619F1CF12D3DCFBD8E50AD02A72A6593EB876E244
2333D5CDFEE1128408A5C10B5E70D680299E8A33489E1179FA0F753B7FABBB826BD1
233439D7F7A8E7C15C359E24B6569640123700FF628B2D76E2B7B2DE7C2F098A7A46
23358309CCDEA49CD277E96366EF221C4DBCCF17882C4565340EA41EBE83998AC89F
2336D66825F75F751395FACA772DFCEDA5E3368094CF378C31DF2B405D92690F2546
2337AA982FE7F32660E0FB33BF253F632FE978DDAFEECCF840997558C607ECF0CD57
23385CDB3EE71642ADAC37D462F7A23541F850382BC1140C8437FC62C34CD9BE7002
23390C136657F2ED4AF914AD3AEC860B2E873A77C818E491440EEE98075FBD7EE393
2340B68FAB94C574EC914FAE259B065C8666CBB2D3604F9FFAA52DEB5F157079D53D
23413FBBCC93C598FD83769A8C039EFA0C7BDC027A34721E437E548F120137EC099B
234215D65CF68B5F2E5ACBD11A46A6E2168F6E38DACB52D0AF949B8BFC8AA92A6C1B
2343E5A362B1B05A46F3E58921F6A1CD4C97730B14D31F0C1E2C132D25B2A63D631D
2344C65813C00332FB695789D21D9903B3CD1425CC36C25C18C7D49014F85BB771C8
2345D0D18204492ECCBF69D97B2342457C95A7CBD46C489690CE6B4A4363653B9D46
2346A5A03BB8BC675B56A1CDFC8E0C3BC7DD7E4804E61DD27EB6D25119887EEF49DE
2347905543AEA98A60471A3D512D63CFA12F8768CBDCF8F9EDD9AF084027DBF313DD
2348059EC75136FC08C22D280B76F1A4AE628CF21DB9A6E567085DCEF55E68812A8D
2349F72DFBF59786430216884E02416419FEC67428E36B62093250EE61EDA4E9FDC9
235008F01063F9841E1A5FC54F34A65F738A9E330E8074930BD9E85F05AB0E9DDCF1
23512CCC343C8BA7619FA512292B53F37BC95635A3EE07C3E4E91B123E2CC34EA9F9
2352123C38F41B1DF9C2A7034BD05D83CFC2B86D69639B8C34940F53F44D5F549305
2353F196464989975EF35F33B2B4B52CA9EDC6B32033B63BB03462CC58BBED662365
23542F36F7A46A371A60B245D53F9A7DAA64428EECD40A8F4C93D460490B092558CB
2355647E53E34771DC04DEEB2C285965F4DCF2CCB8669ADB238CC12897F7DF46E6DB
2356FD9D5BFBEA1DD262C4CC1B24E681643FAB80B34D057BC920ABAED5B39D2ACFE7
23574CA3A1999ACF8C9AD0F99B12922D37C03D06B77985EF38B3FBCBD6AFD21572BF
235884A7BB8C4ED5C3BE657673F8E9F3A1655C0179A4CA565D3B6F0949B2CBBEC189
2359B0B46D5727EA5EDB274B66C9FD872C00969B9C6B7CDC3A8CEC053A443CB847F2
2360540FAE81CBE3F6B306D1B8B913919D1B9FC029CD5D414DB2E16C7EC97F0BC73C
23611BDCD5F3FB0695EB84873FA73629005D7CE48A9A1374CD2A0DAC7F507D3F04EA
2362A8F71F37B65C4D5F5928C7A59BDB73E1702D4E9508519508DF62DD29AE1209FA
23638766D6311A78B12C830AC0D870CB02DAC0D6434801CB48972C196E0CC92BDDEA
2364398622BAA5B384FB8A0396777CF517A08F646774EFD5C6CAB81C37ED7AF68276
2365C86AD81C3C41476A6398A6A22D65421526EEC405F6CC9F2520FAD97FFDDBA3EF
23669E8DD5295CE2390650C5B19930B45A410083442196A24413ED58BC3994D003EE
2367F13DA0A43E7D99C70365FE768AADD61628BDF66FFC0D4195AE0CB7FF33EE475E
23682B0EB97F66B2FE63D3436568729519B2639BF5AD17F7061BF9F8A2EADDC7F806
236950C1EBC0AF0BAB233868B10EC7711A0C2FFAACDCE3C49D3A0301C49B82A2DD78
237092BD6740EC601CBD20D460B90EED562B2AE48E55A7C28C8643B4DACAE95AD33F
237127F2CB34AC65A0E62BE71CDC3D05361D1F07584945E4E89514C40D8A3132C707
2372A4D56B054572CAF5F12E40406C26E5077C9E255516000F1733B136CA5C58961D
2373A9B22F6FEE7B57DA278A3F8F2B8A2B52B5E2E1FED54F14AFC9F13B18734E42C5
2374C04846F7CEE4700920DAC45D381100CF7D5DF4E601D3B933998D86D5FDFDF666
2375CC4ECF675477D74327EAB256DC1727A44C3F7A6A970D9598EB46A5C38E81F3C5
237610D8307C19D849BBEB0C962BFBB37409195756E505278D619A73140B2C661235
23772091B4C6A3C81A3F532B8168E69EB1DA998C84834C2C87A910A2A65B264A20AD
237850F7B5B8DDA82DC3F45F394BAAE1BAAF5FE217BB95A30E2164C3193083013EDB
2379950B9F2F8559B483BD35507E77A8C59CE5E6571EF07AA5ADFC51C4E54346AE1E
23806E22EE5A58C7B31687B936299B29547E214971677A0D5FDC566E61EA08E86BC6
2381976077F73FBC8EA0CFCA796D37DDF0977130FF25C4791DC6CD5B7450A594BD1B
2382291A8650DFFFAB3154F4129AEBE08C3A0F76A61F23A6662795F20B096772DA49
2383FDC818E8F431C8D7488139A55443B81474F5D80D63E1CC6B1AA2241C0AEE0169
23849077ED92D2CB61C71F765AEB0A26665F2677D214B6C5EF0111171B165531D3E4
23857E9E43F1659A4F3E96BFE53F74D902BCCB2557013D900D19B86DBEE27F12CE31
2386A94697D4DA12D98DF2F197BF7B7F6380E1CD7D1F9E13B65D5841A990642DE6F8
23870F86E9C087D82FD2A903B7C5191D7D87CB2797C3B24432F7D29BB50DE05D37A5
2388B9090F2D26B1AF1EF3DF11645E317BBAD8136611F64885A3D635C3C1F1F42995
238983BB3D6719766FE2D016B42753A30887C1D57DF9CB860FAC2F95BF993EB7DC4B
2390F61EA29CCCA247F2728D4504648A8EE0B7FA0A766282E63511F89CAD7B612348
23917E83A9D8F233757716321B251D122D9793FCC20090AB7BE19B1575A3AD6CB93B
23929FED5A9A6CDD855A1F09FCBE5C9DD97F93C49FAD92D3DAB4B32DFAE82E36165D
23935A6BFCE2AEA0F568A481C480D75C1F32ABA8FB904CCBF3FA6AAF58C02B501A62
23944D6C1F8F690BB4B7325A31B13A712549AFA18174BDFDA6010BBFECCCDFDB06B9
2395406732F56AA41EFBC80266EBF0B9852EE08E76EEB14A276935114FAD24214CB5
2396D177262C90AB93798A00D55A152D635C96846D70395C7EAC49F7A750027F9024
23973781BEE23D56131397B4B241BC6976A4F2B04C8C64EFD55E801D833664019765
23987A22B810889C096B55AD2B4D8963CE240D5DF0FDAB71E9091A167A80F5A3418F
2399DF87AA78FFB1EFEBD8A2C97E8E7667B289BC23CFC16F0B138CE179402015CC4D
2400F36912CAE318490F6A050B56B778DCEDA7AD335FBB6F3F05C526C8B5EF0B7BD2
2401DFBCF5FD5C40F39B6A3455B86B34E89060AB0E6AB96C3914019CEE49EED033F2
2402EE547725E1EDD60358DDF57F9EC734134515949C482D52079316D9A2481A1547
240394B4CA6724EFABBE3DE13F07951329A119D84A07CA8CDB199704694F4B3AF26B
240495DABE0B18F99025A88898EDE46BB3C314FDDA77018279B5DC8C854096F3C7F5
24054DE88F3BE84881A03C5E19A77B769EC57B4F6E5BB885485CF242A23C6E5FC322
240604511A00F27AB274232A97A2E5C45188538013667C552E804283C579F1700DD8
2407B3C70F6D22FE133C15FA6D5095582333F9B4495282BAD0537B90BC6548427F7E
240812C9D744869A3F5F133CB2CA078C83B80F95AAEE5D64203110CA1AF12E5E0273
2409298B2EB72DBB5FBC3F6A6D7004FAA17AEFB086870C83E8D742EE560DEAA5F727
2410CD7BA16A4D6FAB7ED191AB92BA39300BFB73EE31B7820D85DAE74DE35B2E3FF5
24118879D9D02B251D7903CA30DA07E2B5694F23631CFB5EB08656AECE21A93DA6B9
2412EB6CE1A290631B795A55CA75A5EFBC99BD1E21C40D7374181C96B43B696F9079
2413E7BC8BCC96044E09E48EAA625B9D5C53CAF79C84E8032A0F976EC2FEEA9583AC
241425DCC02DEC8D4798E0C145CC523E5EEE82A1A73AE0EFBB08876278A7983FFF86
2415527052AC0100CB273390888702DA5C62889808C3DC427BCC5B0A8D787102E641
24162ABFCA74C325F26A74AE2CC7637C9996547B34F33CE355165910F2C0E6445E7E
241770DE25D7D187EF97902D4D535956A4ADA1F1FA0CE9881399477A0B72CFB5F841
24181893157F662F071419B5AAB14EE66E1D478AA9DDA4E4DCDAFB7060EC629ADFAF
24195C779DE9AB8A65A65722109954599B931C42DE431F5A988459BE94F48F7D2539
24201A8D09133020EA37FA9C7CF8A32C9C1BAE51E112CFCF59CD7FA6E9676BAFD4D8
2421093CBF4FCC3BB2E468ED55E28D75DF47CCF621662632E2087A8227945723823C
242202629CCDF94D5168A3810B815522588487CD8AD69EDE6D7FA593E638F603D808
24230E2DC9278B63534E63D22876BDEE3A7CAB88C637DC55C9D1C4F3309C01DF68F0
24243919523B2CE7CA52961AA3C2E618EFE1BBCD2C8DC65EC648CD380E3421F287C7
24256F7308C13F6D857C74522BE6A0B09E15420CFAAE8DE28CFE6350217DA9DB5083
2426D15B0CA455D343119E3C1D25F1CA143D5568D63CE32856F21328D5AAD69236BD
2427208BEC83099D6652E91253440A613155EBE7F2D902CAC765F5049FB5433AD361
24287C7EF2BF062877DB1981B9481F961A097D0402CD89E0BFA180027E29B990C2EF
2429138AACF0D146CE117990CB9561FA6C0A8D1929D5B8BA4C4D9168D6A744ED4B4F
2430457EFD4B36189371E60DCE4D2D97EDE139145241DFB26394A142D4457AFC0E04
2431990DBBF7E40FF9CC5B0624E9B898CEED3A63865690D1CA256330F472EFA9059E
243281920A9D365AD4CF9618E64AF8FE19DEFEFAAABF8B878C42C07490AA600C0E56
243376E6C97F5B0038169395855E4338C84108D1ACB59E5482AF5FA034769A116EF2
2434F408FDFAF2205DAD5AE5324EE9F1AC7192E070EA40EF350817F8A69D680DCEE2
24351B30277FDCE432D5541D27536E9086C2C74B2B0D5AB976C3E188EBED10777172
243676F7D7F73E38D15D03809B350C2F55E80AB7EB7D4C4C9B7DD97179F36DB5E4F0
24371140662023CA3C389A8B168A68303117179A4AF84A64B2C2A56ACCBECD6A98AA
243814CD43B8CD3FB79202D957E0D5BFFB49967E5421426205FE24C9608E5F591854
2439DF895083505CD0A4F53DA06D931AFE3BB68F3FC3DCEC7059D3FF5218BF5F1082
2440CDEA29587E7E9E357EC1329411FCCA0C3078E9787A12EA78D59B2E8CF2AF09C8
2441DA12B2B0EA4A43283C8FC9AC945EB0E63CCFE272BE758B0F8B2C9BAC46F3BA97
2442D05C0E720C584E805589D2804EFEFEDA9962B4CD5B145FF7305FA959B660FC9B
244337C79503EBC2D1639D2593B0A9F24EE3CC07352614C0B6C531585F27CFB6EFCF
2444044F2F2A261B0C2D79FF78899DB6B1F2FB06BFAFEB488504D2FD579F55980DFE
24459D15DBCCC176E41EA7AD6364D40D931CE561E0AB57F5FEA21549290E539A3C7F
2446DCE12F4ED93538385B2D30DFA578BAC6DC92A144A72D1C2CEA334ACA6F6C2133
2447D1996B97AE8B102EC56426ED5D59DBBA11BA7D6FD39A8692F0931B64538975F5
244861B79F8640773407E873FB4714516037A5C6FFA8C796A9B01898CDFDC2A3F2A1
24495D3BD4C09165F6AFA9EEA3E0C84DB1D058A4C54EC0673860170038CC318DCCF7
24501F3960F12AA2C9447090D91B0EF8A320E933FC8E89FDA5D5897266A4D156BDB4
2451077745CC076FB9A12F9D3BE989E2F8ABF44F4BF842DF548111DE129B36B535ED
2452E5ECF8AB96D94EDB9E0484E00BF942491ED250EA8E062FC59F223A85F26649CC
2453AB1AF18824045625756CE044529471B253B1F3B5FA2BBC3DCEDC457C0A42E29D
24547A152AE14C8D60122C5AEAF5D4360E51BE81A84F3A6CB164181DD1B62AB204E2
24553F078794D9FE570D6115B1C9DEA193996CEBDC5A32D8EF3EA3C309B9F87C726C
24565F2957494663A92639A418C450D42D027053DE7342921EEFD3CCF162DBD32E16
24579C8FF39084FE1117958230EF168E6FA9B48590EDC108D7FDCEBD76BAAAFFBD0A
24584EBBA485DEA8C89778456A1A36F420FE78B0A8F854CFDE7E26E76CDC2270C983
24591D5D914F3EEEC7E4105228ADD1646013CAE11C03108C6971EAD9C13524537A4C
24602CC3D193CE5CF0FED9939AF23E241FF6C82FCBE73CACA6B4B6F88C17A18CE4D3
24614F49BEFCF830777A1B26CF228DA61EA5177A826645B18F21C10E06C748E113C9
246203402DFE318270EAA54F518FF635C340FF581055C1529CD6976951F6819D5A45
2463A4DD081C55E7597D257DB9E2E3DBD46B0878895155DB0C4D859B1E61291EAFFA
24647F2816E365A5D6AF6EACFD49362833DE3ECA447871D071BEACE9EB8591F31EC7
2465CBCE3C2EA428301FCEB42ED2E082F89476F39F7EB993044B8DC23832B25DD3AB
2466FD6E0A199A3CF03A79F323FF826682C8FEC47BB2B74C22A92D01F0E0CD8CEBB5
2467C59ECEE83A7B02E949225EDEE26D5D11521DB381A26E30CEAC4D8E2FFB87E0F1
246844ED94C0E3C022D4B2DC2922321EEF1BB71DE6C221535B0EB6A9837C8A775440
2469BDC58FAA05C859F05A654242BBB4620D92E5E8B3C5A937B98064BF97549E68B8
24708FD29B4E57EE27055217C910A199900E2A465051AE0573E3D46E5CD541BBBA59
24715062CF9444E95536CAB30FDCD35A56AF4F5038E65690633DA9890CE8229F6EB9
2472E5BAA68E54F9AF6590B4FDAD42B7BC0A6708A1C2E809B743A5767ED46FCB9847
24738274E288E9B2A49803D238ED5FAEFBDE3863B29D55118E3ADC937E4B02287439
2474B452DD41CE8298B10AE99AE275D45C5E0EB5680DDDE9F449855FF97B28AD1A9B
2475BE728BC56C8B4632938A4337D794EFDB56050F5459C031DCCBB1CFAEBBA79348
2476F5514685F1F16FADF390B55DB5B671D0E020C03C8D301683FDA4BE8CDB3C7948
24772F5648A2E049A495608CE414857236A70AAEF5EBAABAF1A0950A2B0B814AFD0D
2478443CD6D2E0365332CEBFD557DD16FE1E3342A85057C5C8337ECEE5466406A324
2479B7A5F881BBB2E442C9775A1C33B5321887E3A8E8001ABAA65B1B2BD1191D6659
24803BBD32F2B01A37BBFE2A3964BF37646262E4D667BEBCAF970226BE5AFFB86A1A
248121CC0D74E7376B9634EC8BCC46D551FAA67603D4B707DCBF6C65D932FC76C2B4
24828B2D03F5E29C4E2327F5791CCE1E42395319739422607AFC0B6962680A04A5CE
2483B9FCA10C3EA7F9B1CFEA675F44029F68E3C9C0B90CD7751040239137508E1E3F
24841FFCA19DA7B0933ACEB8239703097AFA4DBEC0FD8F94AA7854F83DF191A44326
2485EA23CB5F18E342A9110D30A1D9427492564E7CA82FA80CDE8B7ADD8787B3FCDF
2486A5D52B14B6147262461F3563101CD20A457672F78F9BCB7F996D7699975C018C
248707ABAE4E0987AEB32A45577BA6157B51E9BBC37839FCBB886B8987389D8C82C2
24880281A89F98874003140328866916A547FF0B47F24982E346FEC11458EF35C95B
2489033F35334E2956A631F7192A
37c41ab1
CR
24900000000000000000000000000000000000000000000000000000000000000000
24910000000000000000000000000000000000000000000000000000000000000000
24920000000000000000000000000000000000000000000000000000000000000000
24930000000000000000000000000000000000000000000000000000000000000000
24940000000000000000000000000000000000000000000000000000000000000000
24950000000000000000000000000000000000000000000000000000000000000000
24960000000000000000000000000000000000000000000000000000000000000000
24970000000000000000000000000000000000000000000000000000000000000000
2498cleartomark
45c0f7f8 2499{restore}if
37c41ab1 2500%%EndFont
c302751c 2501%%BeginFont: CMR10
45c0f7f8
CR
2502%!PS-AdobeFont-1.0: CMR10 003.002
2503%%Title: CMR10
2504%Version: 003.002
2505%%CreationDate: Mon Jul 13 16:17:00 2009
2506%%Creator: David M. Jones
2507%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
2508%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
2509% This Font Software is licensed under the SIL Open Font License, Version 1.1.
2510% This license is in the accompanying file OFL.txt, and is also
2511% available with a FAQ at: http://scripts.sil.org/OFL.
2512%%EndComments
2513FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
2514/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
2515{save true}{false}ifelse}{false}ifelse
37c41ab1 251611 dict begin
45c0f7f8
CR
2517/FontType 1 def
2518/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
2519/FontName /CMR10 def
2520/FontBBox {-40 -250 1009 750 }readonly def
45c0f7f8
CR
2521/PaintType 0 def
2522/FontInfo 9 dict dup begin
2523/version (003.002) readonly def
2524/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
c302751c 2525/FullName (CMR10) readonly def
37c41ab1
CR
2526/FamilyName (Computer Modern) readonly def
2527/Weight (Medium) readonly def
2528/ItalicAngle 0 def
2529/isFixedPitch false def
45c0f7f8
CR
2530/UnderlinePosition -100 def
2531/UnderlineThickness 50 def
37c41ab1 2532end readonly def
37c41ab1
CR
2533/Encoding 256 array
25340 1 255 {1 index exch /.notdef put} for
d3ad40de
CR
2535dup 11 /ff put
2536dup 12 /fi put
c302751c
CR
2537dup 13 /fl put
2538dup 14 /ffi put
d3ad40de 2539dup 33 /exclam put
c302751c 2540dup 34 /quotedblright put
6e51e0d0 2541dup 35 /numbersign put
d3ad40de 2542dup 36 /dollar put
c302751c 2543dup 37 /percent put
a8fd3f3e 2544dup 38 /ampersand put
d3ad40de 2545dup 39 /quoteright put
c302751c
CR
2546dup 40 /parenleft put
2547dup 41 /parenright put
9f178efb 2548dup 42 /asterisk put
d3ad40de
CR
2549dup 44 /comma put
2550dup 45 /hyphen put
2551dup 46 /period put
c302751c 2552dup 47 /slash put
d3ad40de
CR
2553dup 48 /zero put
2554dup 49 /one put
2555dup 50 /two put
2556dup 51 /three put
2557dup 52 /four put
2558dup 53 /five put
2559dup 54 /six put
2560dup 55 /seven put
2561dup 56 /eight put
2562dup 57 /nine put
2563dup 58 /colon put
c302751c
CR
2564dup 59 /semicolon put
2565dup 61 /equal put
d3ad40de 2566dup 63 /question put
6e51e0d0 2567dup 64 /at put
d3ad40de
CR
2568dup 65 /A put
2569dup 66 /B put
2570dup 67 /C put
2571dup 68 /D put
2572dup 69 /E put
2573dup 70 /F put
2574dup 71 /G put
2575dup 72 /H put
2576dup 73 /I put
2577dup 74 /J put
2578dup 75 /K put
2579dup 76 /L put
2580dup 77 /M put
2581dup 78 /N put
2582dup 79 /O put
2583dup 80 /P put
2584dup 81 /Q put
2585dup 82 /R put
2586dup 83 /S put
2587dup 84 /T put
2588dup 85 /U put
2589dup 86 /V put
2590dup 87 /W put
2591dup 88 /X put
2592dup 89 /Y put
c302751c 2593dup 90 /Z put
d3ad40de 2594dup 91 /bracketleft put
c302751c 2595dup 92 /quotedblleft put
d3ad40de
CR
2596dup 93 /bracketright put
2597dup 96 /quoteleft put
2598dup 97 /a put
2599dup 98 /b put
2600dup 99 /c put
2601dup 100 /d put
2602dup 101 /e put
2603dup 102 /f put
2604dup 103 /g put
2605dup 104 /h put
2606dup 105 /i put
2607dup 106 /j put
2608dup 107 /k put
2609dup 108 /l put
2610dup 109 /m put
2611dup 110 /n put
2612dup 111 /o put
2613dup 112 /p put
2614dup 113 /q put
2615dup 114 /r put
2616dup 115 /s put
2617dup 116 /t put
2618dup 117 /u put
2619dup 118 /v put
2620dup 119 /w put
2621dup 120 /x put
2622dup 121 /y put
c302751c
CR
2623dup 122 /z put
2624dup 123 /endash put
2625dup 124 /emdash put
37c41ab1 2626readonly def
37c41ab1
CR
2627currentdict end
2628currentfile eexec
45c0f7f8
CR
2629D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
26300E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
263151BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
26327C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
2633E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
26340FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
2635C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
2636569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
263724A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
26382255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
26398FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
26403FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
2641D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
2642D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
264303EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
2644767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
26458B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
2646DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
264794FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
264822466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
264972FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
26508B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
2651344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
265264B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
265307A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
26541E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
265578B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
2656CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
26577E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
2658BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
26594E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
26605A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
2661EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
2662EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
26634DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
26640F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
2665C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
2666314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
2667DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
2668EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
2669DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
2670DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
26717517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
26721A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
267369BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
2674EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
26757F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
2676CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
267738DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
267822F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
26790D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
2680BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
26814BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
26823625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
2683B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
268415B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
2685849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
2686FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
26874C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
26881FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
268984857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
26907F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
2691CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
26924FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
26933C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
2694F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
2695F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
2696DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
2697D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
269856F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
26998DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
270059344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
270149C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
270287A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
27038D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
2704C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
2705D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
2706D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
2707F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
27080A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
27095CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
2710229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
271117D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
271201B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
2713F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
27143347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
2715689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
27164E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
2717A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
2718DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
2719364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
27207AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
272126EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
272243CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
27238716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
2724C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
272594B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
2726C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
2727B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
27284E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
27297F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
2730204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
2731B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
27327E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
2733279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
2734E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
2735CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
273665E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
2737BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
27386DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
2739B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
274063C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
27414D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
2742A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
274367423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
2744DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
27455DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
2746C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
27479C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
2748B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
2749963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
2750D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
2751B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
275272D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
2753B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
27548C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
27553706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
2756668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
2757ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
275869273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
2759C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
27603274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
2761407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
276211D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
27632620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
27644DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
27652C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
27669FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
2767CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
2768DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
27690CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
27705B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
27719D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
2772EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
277309C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
27742B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
2775AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
2776324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
2777486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
2778EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
277952B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
27809F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
27814B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
2782B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
2783BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
27846EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
2785B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
278616CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
2787E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
2788546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
27896E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
2790559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
2791C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
2792ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
279304B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
27947F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
27958165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
2796A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
279794892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
2798C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
279941CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
28007AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
280118CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
28029F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
2803E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
28045620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
28054DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
2806E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
28079F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
280889D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
28097EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
2810AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
28113141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
281261A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
2813F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
2814D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
2815652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
281607912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
28176744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
2818EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
2819BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
28202CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDC250E2AC3
28219A160EC8C9654FCEB36AC2B586E978D54744FC8A0E963D8EF6E228ADD22D093B
2822B889C940206F504F14DD921D909BE06EC9BACBC23EB9E9D137FBC983570FFD2E
2823CC5D2EB5D2A4A8604A4AD418B800EDC6B89809E0009760E9470F037FDD15E649
282493E9C8FCD9436AF02447C7F5AC380FBE69D1405189E8DBFDACF0E7DAECFA095F
2825E6AE1A2E9ACFC032BA9A5DEDE9DDEE22A88D9A1F1E0FD9BAE2D88FA168386D43
28264B93EFF3AD84A9C05A80462BB3A940B2F7311CF7054F501BDD4F1347213C9327
28275653B73E9D78866901235C66B0C49CBDE3A1BA3A11991E6B8443117745D96020
9f178efb
CR
282838F4A74D9676E4E99291D4420C57ADE4A8D5214D07B14916D83DF15114393048
2829FBE0DB83223F609ABE120AB877FEF549B6E2389487BB7ECF1979BCB0785DAD1A
28302916961A1DA60AB491FC90BCD6578571226B4DFD204E75FF18FB5E72DFE8A028
2831C66F8576254930567A877DBD22F8372E7BA4F23F9497ED653906F5F67A66A1B2
283251957AEB8D443550161075E5523F3D2AFF386E2640B276C3EC5EDAB74AC0DC94
28337D975D7F5781A652BD13AA7F97ADDBE68847167997ACDD038E74E930D8248F0C
28342CCBC094031C7147BD8D4DD664184695CF8C474845692540FE2B8A72CDF9DB62
2835BE05E15A05F59D56E5EDBE7C371BE5CB3B276FC7A03B5942057EC3136591A1B9
283615E504DC497B663A9DD1729EFD1478C233B9317351D000DC0982F061BFF25A3A
28378983E560AE31E321DFB137C77C0AEC704F8DA99024232F26AA6920D58CB17DE3
2838C1BC8E20988FBC4705E594569BEFC3F6666785B2FFA49367E3CC695F2A1EB846
2839DEB37E120B0F4C0783C0D54655C143C4F74DA0690C6D08D07ED225F361BC0F86
2840572D79540730791DCAC15823991FD5DF1AB8F25F84EF40C085B17C9070C59EE6
284131DCE45AFA78440BDE4C69A4D954C2006070A2C310179851F2D39B1B5D3EDBAA
2842289570BE80F25D75116BBDA61F002B832F9EF2C32B53258B15A1174225168B28
2843EC3324C6EC61E5711811E658A1BA65C8D2D47CEC6071CD88DBCDE9CFD2BC34DF
28441ECD2226AD588B50AF2399D171E99D8086DDE33E24640A767F249797B1B742CC
2845F4E95A64E1AF8D88FB128194673CDEFD6A1672DD1D03B6749E729587C0CB7C6D
284613BFC785759F35578D611E924CD89FF87DFBC5C93FA7BE150624825F7D137CBB
2847FBFB1238C1A397826B8D1DF0A39EBDABA5F10B37FE8C27568E1C088F279A0E28
2848020DFD377694024FA154AB5C06EDC3CAAC3CB5A69297E1079F5C2F351D81614C
2849D73ED708907A96F6F8FB0994D3247045E8D41028432E91C7ADB2F22066D6F8D2
2850701298CC9FDA7928F99CA135B69808AF6FA1E0A3CCE1BFDE234E9218A565FE28
285196541CB9381E887182873FD7866F5F8415EBE92E51E7FF064D6CEB7BDBEE4DF9
285297633E53488AB11EE93137AA185AA7E4AA043BC73DF1739C92B4D3A8C46BA689
2853B9F8FA73BE010D7C4F9007937AD0EE3EE4E3041C72A2C4DB92C6C5433DF33A10
2854700F9E891885DAFDA44A00781BD019A9FFFDB6FDF9361520D50AA5037E654C8A
2855ACD179511AF61BA10DB29A0535972DDE8B838091B5EC3F6C3408E02B8CBB3FD1
2856E213E2C53DB7AB14D465CB0E4FE2A2CAFA20E74BF4601CC23687FA7921CB1B86
28576DB57E04C99BF7F56FED75A052362016840676DE91888490B4A1DFE0C079C88D
2858C8C3BD3527F7C006E1403DABB47C3F9174208A379C221931724F06270985BDE6
2859A53263227EDB00124C5677613BEA94BA029F9D6F8BD1F7B87C4426210AE554C0
28607BC707199BF6DB673E40D55741CE1F0853504A414099BA8E0BC7F5EBA5392684
286179552A5D4F7C0CD3A6D80B18014008AB011C8C66C74D32AAD748EF30C1AD484D
2862B56BFB090C5BB937E81189912665F332911E11E83CCE75A79DEC2838E811D5B7
2863DA85AD6ACB7D8A98D15DEC66504CF2131FF06AC9A8A4FBC4CF34EFB8455C231D
28640F73A50052AC8FCFB2B2ACB95033AF04078E9CB99551FBB1C46EE6C413D86C90
2865AE8BD7FBDB7BA6E9087658C79C4758E242256C0546DB76A3857BC89F26A4DD9A
2866F4A848104BF1ADB2DCDA25C79BBBDB66CE1C1A45C7427FE7CE5BDDA7CB599B4D
2867B5D346B15414DC9688A9D00F0372DB98FD33E6164E5D78D6CCEEF0FEA60A7F5A
28689873AA7E2A7F98893AC5A9598B71BD06D13D2766489248190A262E5EAA459888
28696D0A38261697EBFA55180F3D416C2190B36C309202D1619A405764612BAA3506
28707D157F49FA1E0A7F252FCB0B8459A30975E02748AE1A891FD6BB288E0D7C144A
28711D348F1DDD145912678DAE1906796591E35012373AE01E18515F5CC3BB29A629
2872F8B28B54376A9E10D0CFB29B81981E66F27B6AF44DDE0A3621B9ADADA9588201
287311A0362FEF840B200C84480177C9E3F0777350BE92707BA916A90AA81160D498
28746417DB6C7E15766EC5C9058CD51879041BDF2D2514B0D6B968CA0A300EE2E30B
28756AE41238D76DF324B0502BF79D58C2DA1FF7E384891182AA59918DC8EDF92299
2876BA162134FC3DADB6FA5CEABB94D1CA9BE1635F769EAA88377AD96510A4DA8F8C
28775319E0C06CDBDA1BA9845302F716DECFF7B965BE413A7BCFF3C4EADC91626070
28789A5776EC64C67DDBDBBC66F16962306631D70E62616DE4997ECFE39DC6BC9A75
2879D2297C2159066195F43B7002138456AE7EF69220925877C87405D06144D250E3
288055EEF1575DE8564BF98E2ED403591F2EA4F6AD71A126A9B1F5D350819058FE4A
2881949B8C3A7907A725B463B752EB3B44B090C731EBB86FAFE24340D1A89D3FC0A6
2882B89E64C3FA480C91DFCCE4922C000B0533A052FB9305EA3B58A38A3AC2688715
2883A7C7418637C393439725F0509B3B08E07DE5E0350A005E4C5DB815CD317EDACF
28846460DADCF9281BC6523DC8FFFFE18CFFB2EC61884E7B324806851A91F7E0336C
2885F86AF2C88F1EA1EAF0F87013AFC7DAB6F6BE426D92A406437E38C75614AAC461
28864EDBD8F129D985A1385B0F9F1A4E6D9936FEC600F4E431C653DFD1D56F694471
2887FABDCEC7BAAA0C266D35D7380AEE587F61DA5CD1229D99F82BFA7B1A45A165FB
2888658A4E7A741E11931D6E5C1358CF76056CC0DCF4B623C2A8CCED91694E46661F
2889BCBA0225541BA9A58EA1F2E2B2402299EF2B691C39A87AB3D5C722DB2738EDC6
28908ADEB09750D714286EB392D198A55784AD908470517724B92849D539ACAE89E7
2891A8E37CF20CA87635FF92F1140DDBAA76CD52BFC0B40FBFCA768F837D0AFBC7E9
2892BBC89422CBD6429B284F67AD2DF917AF69346A5BFE8DA3DA8F9597C2265F3BC5
2893A90CCE79572DB45176AED6E1A5FBADC98816F0E29BF58DBCEF62EF76A8D8C845
28944C7E9AB94A0EA43D2FA271BEA800890613D8247171938596CE4948BCBC7960AD
28955B2BA3E0A4384749A7D88F3DD515CC1DA7292EE9775B67F621E156020419D0D2
28961A6AF5B51E64D3EA7D182AA65AD1F663FB28739B86F9EE5880A5A96C3AE1C563
28977A002FD0ECE3AEE80AF18A0FBCA3EDD496C18C8974E856BA39226C382CF8541F
2898F7E2C35B3CEB1DEE3BA8F346199944BE2F350E4C3DC89D789250C3C5192236AC
2899513D1A3058230470BBA11E0B39141F48065B808B6FC459A897C304B749B5A656
290038B55950D6F379A535CE2816498DE36D03747FD07514C2DA1764217BF2DE17BF
2901C8FB2F06382136D301953DC42EA0B429489275571F6B86AAF496E6A2EB196547
2902B76BD6DFF6054DAFC9CDC11FBC541426DF0351ED027FE76128411F6F62DAD159
2903C116B43AC59C885B3308B158EB74405541F2BD247BEED5D3B35554EABCC133F1
2904B71EA3C7C7876661EEDC141818A3E8A9C519E7054E26DC023320A0166FED1C19
2905DB1C3044D23E5BA7F039D86ACFBCB5F881A6FF9135E1F5DCF910A873E6F7DF8F
290611372C039D09A875DDACA3FFADB73504C1749932C3792CA80D78979CE0269AD7
290747CBE7CA39E26FCE1E71DB711D176644423FB964CF8CCDF16FBB686877B1B99B
2908FC570BBEE55DC7F2AED8E81FF38DFD61322F1FB69E5CD6EEB8135128A35FC23A
29095ADD95D4F873B2EFD14A1FF76CD20454BD3BD2752C9A5F0C21F1E5F39C5865C6
2910D4874580E6224B22FAB9240E0346C843AF0C495E7FD5B3310D90A6308D47E882
2911EAF80772C87D3F7FB9DDA52F253FE4E3D1E56EBFCBDB9BB9A977DC7E9772428C
291247EDCE4D4F793F4DB9C66E65827109E83723E50424A87B36D6E74DD05B327128
2913E407252F937ABE315B18312C8BE965E84ED9C895D275A331EBA6E872DBCEE1BB
2914C6254960940B95F46CAB4F8469E7412F546E62683AA356366F454308367A789E
2915B1E6F3A07B87829111DD17856727E948E0FAECA4EB00192F125C2331011AABA8
2916F4067FD01D56853FA445ADEAE5901242DF460ED8AEF939332F87D81DBE9A30A4
291718884AFF8A7F00530BC7DDD3A1E6C40549BE3E567B225E7C8844F0AF3E19A4A7
2918E61F818A5F1BC836012FBB9AC4A5AE737FFA908EBFC88B2EAA62877B05B1B1BB
291965062420B89BC4C3C4B7CFAD1148C6A373F26ABA9A8DDC74DBFE47937035DB49
292020F0B8E788C0AD02381732BEB2B9587D6B50E6F7B4E9DAD171B8C64B60A04776
2921F70BDD9C6C8831AE39561701FB54D68810E4C3249C32E4D39BB40C500C8A735D
2922F316A68985E3A0338D8CF730881326E2B76D75BD2566D7387C0DD8C5724592D5
29231FEE9798B269DE09387D3A1EDAB20063BA852726BC7EF07CED98E2DD1957F94F
29247E336F6047A935E128444DA8F525FF1E458ADBCB1B6D910B68955DCC59512591
29252F1228007F9524A0AA6113FC6805AC4ED806D5CE6E03AC9EB6830EA9A7AE975D
292699A4FDA50B92FB6977BCE8BCBE2D8EA44BCE9B39718584A452205C4349561CBC
29277B1E281C058D0BE636CDDE883E1C1AE3802A35C5426443AEB6FF705EC26AF94A
29282A7BC536F373C0EBAB41C780E56F5BD1CA645DCED5090CF32D4F0E5A780651A0
2929477CB27558B2D0E2AE3D0A02565EE38D5F437D01308A6BEF55E80422F5B5B56F
29306DD11ED717B034083F9BB1536D76E321255A137E618B398875B5BB8F5AF02B6E
6e51e0d0
CR
2931B4DFFB173C424B24BCAF3C9271A54166A65927519C9770B0DC44CE276ED0C20C
29328EF41AC3AEBEB0996DEE664E8F872023710D0BA81DD3A3EBF79BC24717BA1280
29339E9CEE362F5BBADAF6D8200835311B1063FAE4D6EC8325A694EC516AFD24FF99
2934EEE758AC14E76FA1573462BCAA75D246AC363C412185D20CDF1539011C35D1C9
2935B3B3717F6A37DE522943CF9B3D8CF284B4C0068A1ABD9B58FDFC20CFDC45BCA3
2936DD054AF00C18CD7EAF8DFFD45C28A82C7B417AB7188BDB49A5871320B2EFE0B0
293725CE25F3BEFB53856689A44D365C55218190B407B7BF9855ADCBEC5C0094CA63
293811E014EAFA0D1BB324D3B1D94DA4A7AAE9D29C71E2D5F122F1C79726731FD066
29396545816A5E05DE1F8DEF865DDAE0D80E9AD0120A0C81384AFA5BCAED3F8FF80B
2940B9F8C8A7517A3863034C312BE64AEABAD77A5269253883D460DCB2F0A3B28700
2941255BB96397D1D613A14C3368C9F27F3E42B887108793F4B12E2233E5A3620BC4
2942F886F124503FE64421C1A40C37B25127094476713D39EB73004CB56E877935BF
2943BA0C7B095414A1FD59CA11573B86EA32E297BA38B907938B3A25992F0563022D
2944CF54FD863B8792EFB58A27DC2CA6C4DF48B9388F5676CD462C1AC745488F6BA4
29452B923427A7D29935417E010099FEB69B16BE5A2AF7B4883BBA80815A09693AD3
29462B78D3A939FF18798043F7C88A76BDD527B554BEBAEF922FDC9B381D72C7CD3C
294749698A1444FC33E276D3B9263CAFA375F1E64C8B39C89D4A65FC42A7183E41F4
29481C3F0CF7EBBE5260F862EBBA059765497817B8597DECFCDDDA5C1D15AFD3C3D1
29496F1A8E43709540948B1E3B41E32AC13B469222867483B0E765FB427300AE9BB5
29504CED17DE5C45EC8391687036EF43D57835CFE689B99FA0B860E3FAA6471417AB
2951BD505F23013DBD726BB5645F3006BDAFFD5ED0CAA7428EAFB448E0A30F8B7858
2952311E3FC16FAF9FAC5E86998E4954AC4C9E32FBE6E9DF280B457BE80DDA2959A4
29530A874282A7F9AE5236843298C26D5D4160A4554ADBD3EF0254C4F2D108D49DAD
2954E1D1B996D5147560D574FC238DD005D18CB32A6CD73C265F05E0AEA17C73E3F7
29552FAA00290D1A6361CF67EEAA68800D9212BB5B8F0259FC8D133A21E6BD375FF0
29564BB0FB1E78F065E51298E97164C1FF241336428932D1AB97E1D0ADEE93BA8903
2957A8124A3169AE0B905465D7E8DF132D903C9B4C64074147F2BDB1F722BC261E10
2958D366C246E8D664CB57A92883CD7174218655BA68D9919D0C8678DC4E7A7E66B5
2959DD7DA4E011769991DA9D93311A06A623B680DDCA32B287104A1D7BBD05AA061E
2960019BE06684F9BF987FA635B9764DCEC3A3286340A7D50355663D5556103267CF
29618CD9DDB4DAF109C47176A1E9443F3E2703788B85B6FDC8951783D08F02DF72AB
2962DB5F8739B2B9B38CC813796F48FCC21B0CFEBC8F074E464989AE5EDDEE5CC3EA
296369C281CC4CC295360FC11F67AF3746CE3598A215FA109709A4B193BFEA270261
29648ACB9B7081A9D60CC49AB3F25B0B6F922672E58708BD707AF7DF35E32E7CB939
2965CC25BE8392B3DF687FB67F25342671FA831264230CA39D189AB6267095B7CBE5
296609DDBFD5512A8831DFDCF53CDA45E3F0C097C0C4DA1F12589F7AB3D83178E9FB
29672E9B5236ABD35A872EB9A37ED9545C6ADAF8FF2000E67AA8C8A8E61C9829F29C
29685555FA19BF6949AE81487EBA68E8ACB6244ED2EE8CD537155B68BD1305FCE20D
2969710147B9AB3CCF6BBC0F2C3D8D77D783ADFA68B208829F05522211E28432729E
2970AE8A8C09C04174BAEF8D560D62733BBAF506D2EBA030AA77F18A38EA8E98B38B
2971C03B5A3C33A7B36EBFD1D55D503FC06F19056EEF9D1D01CE279D2BF23B04E880
2972D6873E16AAA583ABBEF1EA8E5D6C3D038738573081E264C01DFBEEEF02B8844B
297319BB8D27BAD7354AD310ED720DE2D4240F3106275AEF6F7ED61735D799306DB6
29744A3BECE20525769A0D99EB90D957297D5913CC48A98EEE84FEE5D02B30651CA3
2975B7573DE50F1B9D8D50E5746394DA8C5BA5D71CF1647F80BC9337F00EC31476E3
29761019B41BD01DE7FD55886402565F688D1E09810DD8AF982032B048548D87AEBF
2977B20C6B938C6D8F96C2D7B42A1E69DBFE6AC28D166804E03AC698B180A48503D0
29780549D2DD2EBA5C601841A711DBE9D7019E5DE56CF78457F412E42CEEC248DC5A
2979C0F349903F745E40897D0331124749D0F9F9C71B704E4CB0898AC7120A880215
2980236800020AC60B1E5682656534F3332C2DB06A7510AEA061D9206B4C033A80F8
298177DC8EAF7D32A7B791FA3930647CB1A29228DE62A9733C6AE072144BEFF15651
2982791C8F99508DA1E3F8B451985DC68251044FEF9F91C7578A2F3956D97D544D3D
29830E6A3F7719F9561B47D76612D833BDB64780728A6456E8CF273BB708FFFEF743
2984CF069E55B1A871718E02778CA80A5D21597D597246C260AD390E5F4A285A5CCD
2985E55AE1C37589EE307C6D2E1DEFC605C9BC33511968CC8AA7E61F5390951087AC
2986F4376C5BC48DCB22D8F0CA6CABF25383616DADD012FAD655FF4198245209E305
2987274D18A98D760203C8AB09F7204A967D07B75E7650BE0A0595742F821F74193D
2988CA0AF1A4875F50D1F3F2786C5532EA3913B3589215386E78157D6F38C4860698
29897DC51E51908A7AA304DF1233ABAE2B3C9B03F2496B320DCA5B7DE98FFBFD6FF6
2990EFD2FFECDCEA32D0A7F799382366C6325B89C94B37CED9A1A1BC88602AC5D9BD
29911BEDB8D5CD2D38FD1FA33703C41F979BC24F1609B3B35295CF756551F9F2D770
2992ADC3D23C5B7C6A777CB33A06791EE8481BF577A94016A061D8AF8882466F7499
2993E66E7E93F104E599C79CB6F76D42608B9BC1171A9AFAAD93E846008330DC3C0B
29946E8BC7623E8693C1E7E8B5B8BC426B1EF8EE705D2E806486775BAC15660BDB75
299566BD708939D23762BFB8628A863C4F9978F83733049F63709066CD4203476CF4
2996575DB5CA5B5F01D8E4DF345D78C2A938B5EEEE618507B2AC9EB9C4BC9B64CFBD
2997AECF052FA5D93B306C075AA8A645E5B93D1005C252F0DAB540243C7E3C3EE52C
29980886A5D89A30DAAB4ED8F38ECE11217F0198347E62BDA7A1BEB6D46482BE3726
299933CFBB23A78756BA63741693D764467273078167DA48362985CCEA2889133C7F
3000A5B0BA827E92333BB02221F6757E4ACB8C2198BD7A976A29387CFB9B7F51C65C
30012E151D1D1F73470B14587A6F11AAD77465975961CB77306E7793EDAC65EA7AD5
3002E562F2673FBE78794C9D38659647EF5189F6ADD9B4250085A59F84C0448EE47A
3003A073B712B6B1CE984DDE3125960C16AC77098424004666BA6116A042551B48E7
3004507FA464B21209D31C506D1DAFB628FC2AB30279E6148F3A2DFDD183FD770551
30050CD3FE854FD619E7D2B62A8888C300838E41744BA759EA4E4F19AD5CD249E8DF
300674E81BFBFBEE42B2F67370B748B1B3FD5C6201866D8CFFF8D9ED127F43F4009A
3007CB5D9651587B54ACB8C6D410128362A74EB358437D0CEBB9E0FEA7FFC27A5509
3008E799762B27F30B5FAA4ED3B492752B04702E48B1D0C55155157FD7B4E578A560
30095C0343A472546826E9B9B80E91867D2D4C3EEC02133BC338954AC6B58499AA9D
301024CC3CBD2023E962D147618C08BBDDCDF36E91EC2D51D6DEB97A1477D8156707
30119C1B858385FBA45CF0FE74563A5D5A51ACCC3EFE991429A8CE57131AD56F352C
3012E95401BEE11B310C96E9C3CFACACA00114625BA7B4400FFBC5947574317E8699
301390BD8678107AAFFE1516A59027E9907359B61C6B8A97B4F99A338BEFDA2C25DC
3014D6413A0CAC46051E76BF732CFFCCD0FF1408DD26C76DFFB54F7745C79F3A7ED3
30151D9F8BED7C6977067E6C8E46EFEC63AE0D3953175A6E51DA38EFA2DEF475DD93
30161C34376F5C6C6218DF78EB84773361B9339FA58A88E96C646F291CEEF398D281
3017E0DEB2EE21C3EDE0996427EDA0CA0A44247B1A0E03BD9366E75F763C9B1D2BD8
301800D2066BEF933DC6AB3586EEBD04E6D750A22978ABE902200200B468135B690F
3019B840BEAD5EF80E068F6F87442D93848684A127EA79F4A8A24DE737A373ECCA3B
3020B405847430C138E51DC18C367702E868CBAAEF6890FEE68A75C5781F32B96D86
3021BF5A0C99F04DF2B7FE968B6566BD816C96D7EE35A863C0D4635047FF09F68302
3022EF62B9293BBB8BADCFA64C6CD9024C4F739C8C730BD62F2B613C6E1923F04BD5
302362C556E3927411C2655045B9744C9DCB7F1DA9C1B5C70A145E9A35DACF1B68A8
3024B5DAE1C62DF9220483F1DC721D559B87D7CD802AB539AF1BF3E434EBCB796A8E
3025378B1139CB3DD3134DE8F40C716BA87185D3E406E3C941D336A1436D891803E3
3026D2C8E627204A343811FA82FD1A232FFD6915501C1B158E890C534CB94FCD9ABA
3027F64EAF649056C1198F0F58F56D3E1C91C167D4D9B4481D48A12CE297D5DCD0BB
30288BE16BF18DE1D58F7D2587B70FF5734EF8391DC5F709BC39E729713CDCFC2EC4
30295E7AA863CBEE1CE8185E657E7FA6565EBD6868F478554E96FA808A708B48E463
3030AACC817DF43EB9A5233606A402F3A83FCE99F73B8DD819A4D014FB435BA7F23D
3031F2AC40C473A34FEAF0A5DE457AB5A18A6CEEE95A55FF604AB5225C5C1DB6C6C7
30320C7647F075E5FD3CBA9F3B316887B4A01F1C2FE09719B4BD09A84C5A3DCB82BF
3033F5EE9FD0133F987FCF77098E0CB919CA7FB8468059FD35088B97705F180D5A19
3034CDEFA29A02C5D3EC4893985A2478B0BE83B18FABD32654040A2F2A9BF7BB4F7B
30355781D2A6B5E416BA14BDBB481B3D619B0C885CB392111E32B2AD6C8BA13E9F93
303649CC4B5A35B1F93B68A5ACCA4823DE44BA8979181E50A3804E43D6245488A15A
3037BD51999A729A20B9DE927F728E59312ABCF89176C35BDED4BEBEC14636B19989
3038CB8BF2927C1BDF5460BBB09BA81FB83020BE4D4B69179C8E3B838D6763946166
3039B328ED82B448CAB5EC2331CE7601EE8B39B334BCE11038B0EBD8437E5463C640
304073C5FACEA06A219AE83515674CEF03AA2F5FEACF656ADBAB944CBB237813CDC5
304106C303EA518CC59486410D65F5E5395DE84D0EBF8EA37633BECF5A08851B4758
30421BAE6460B2B67D29A8F88FBE52A26DE7A6E6D859CA00BF437837DC123C459B9E
304343FB6DA6B79DC16C60F9035EE3B10E2CCEA9F7ED4FE29667E0559A3A34F6B550
3044E4184ED8E953247B104DE7D912C5BF66F3259214FF091096DAD710C9F4EF531B
3045B4C6B3BFBB4715F3654587A5EAC63C917E100F37862B03EC240E762F2DF72CCC
30469CBF233ED204EB966F6A34519C0A169EA6130D18CB8E53EE96B7A63C828CFB28
304745CDBBF7FD775137119B7C7BB2A665074691199B387ECF452A3DC5F859D4248F
30483A02D4D65167A9E6C92E0A16D293ACE234C049D98E961D14D070DF2A7F55C232
3049B2CBF0378ED83686DF80E05DD417153A3FB34A7B2F0DEFA69A34E19CBFF56D1F
305014EB4CEFE99DE9CABC5F0FDDEDED79A50F29151294E2576CE97CA00F734702C7
3051B94243299D8080957B7102AB370D5448226870CBB5DEA5A295D3D5C8F7D1B5C9
305244E6F16F703E4CD3F74B37AD19BB53635CC4801A317C953F2A131F82DBF39694
3053FE552FC18B94EEFC490A579F263DCF470D2AF1336C166F0FC69D84800CB1765D
305485937598431461E7B5DB95839BFA81D51ADE49E4242E2DEA4560DF41D27C7733
30552D1F036614FA1AB505537197F419E6722D4EBAF5DB087FCFF838E782D239BE68
305643AB130B26003747C36CFFE7A96CF8522F3F369E1E6443C923C4EF6616241DC2
30575366259FA9FB2559B5B797ECFA474D491E96F2CF07DFCB0765A1A7B0FA8EB181
30580A82708A93C8C8C2EC711CEB46D4A4D51ED42E6D023932F6C29F7E4D9735A5D5
3059269481F9A92673E88970CD15DD2F532A2D96C48150C10854F3A98B200612EED5
3060C2074848780E53C5E086AB78EBD0444A064C5377945680900997D1739E93EABB
3061520519269E2516C7757FFACF312E6725805BB2261552C760CB68A7BCDDA0438E
30620BD4E6DD87C204039396684FDFC4398421E1D94B110F2831AC0DA589822357AD
3063A78CEF72FAB2EFCC848DE7C5486AC56D56DBD0BCB39D608F40E0981572B9FB0E
306451F11778CDE7A9DCE029ACD63D61C22135CA5AC9DA490C29FF12165AE20F3127
30659D57AF7441F31659BDA2872A720100F3F63D9CBEB596FCC23FE1BDC7DAB26FD8
306600182A4EB8C9ED92B3BB9971AD01063CA67ABE06F51F66232545EA42AC145113
30671BB165ED65DCC3A1C0E288FED14706BD7FA08D3D4F143B8B3BA68BEABE09225D
30682D0524B51E2D7ECDFAC0F8D66C7D96D885D0D87B7657F6134B3E7D0493E4BA5A
30696DD7591027A957EF7E04AD08B10D93205A5F268E65B30242AD7D07C2EF59238F
3070F5B6FB46BAFB04D0E354072DD934FC5C63A4FD47541A4BA4B68E531E4614BEF5
307115AC43BEB87A1204B9BC873E9E79BAE958F4622077B7F7C2EBC0FFB7F7B6EA39
3072C9D47152C26BC4A41188B367569A22762B8800E715416B7B396BB3B5ABC11A19
3073C427DA9CC6EFAB2450C54030DC95A775422AF14156388FC0DB8901D3D13CB248
3074B774DC8E8E36C7FEB216ECD93288F0520FDA6FCAC443C62347D680CFE38039F4
30751D15F56B06632BB1E91AA8E098EF73D8A054AF1A8E327BC6E7D37EF19166633D
30761714371B2E916869E420A69BFC9AF4CCD3F1DA4569D3542AA43722748E5079E6
3077EBDAD7306314586BB17C9C7FF0825D865AF14F0FB03EA08F5E2D22A97B9702A4
30788A169602A94B3F08ED7A0CF6B9288E35FD989F2D0020411EE777702C408920E2
30797A7F37E36734BA4937FEC3B14FB1FCC92BE0944C9D893929A63DEA8030DFD9BF
308086C40A4E5421C663BEE7F2C29248B4839E441AD9D04F051AA0991A6D6EC47280
308110CEF96A41D329CB263A566A2D0C993FB918C6356C1249BC14BBE3B39596F7FE
3082DF719A7A9175B271E37F0C3B46B6F1A53ED40E6C3EA4313A7C90B65997EBD308
3083E2F08EA3B7038E0694294BE05E9583BC74306255DE19846A692C0D0D64506C30
3084F1E7B83EE2090F0B0C9A1DE01474DF9DC7D618193149E95DB2F6BD8C0DDE48C9
3085625313BC0C265A6A4BF5FC9598EF8E16477DD19068CD1AB4C52777E9CBD2EF5F
308699E28F5A2CE31E2924C196492A8E3319B1024C84CBD4FC175BE286F1F0829E3C
30877628AA9FFFB1810C93336E3749A818E46206A3E415139064C9C7D004D0CEC1F1
3088FAB611B672C0EB951AB9CEFE67BEB2817BE9248F887836DB614BD26A59CCA79F
308904CA82700DDD8D792E89EA14D0B90FB3F8D6648090A39C99894C8CB638EADAEB
3090D9BC62555D36EBED36A39AD7601BCE938D26C84EB1A6302CA1111B0C362C7718
30913791067E2B506460D1BE71A13D02451036C4FAD7B917CC9CB347E8FC30EDE59E
30928BF9874561A4B0E4235BBA799471EFBAAA64DC644958D1695526A86D56DAA3B6
30938AFA3A1AA7B66C840DDA7860072BF4C937B37FDA41922388FF8B4E3C305335BB
3094ED114714115CFE1385261C6EF0EC27CE200A0B2434BE519CF064FD5860CB7395
3095C934A9D7B06DAA01F039DCF3318F393E22AA8CCEA80F58094F5129B06A5856C6
30969DB2EEB9B377135ACDD04876012CFCE0CAEFA831CDDE6B3ABF574573EB6D72D6
3097F03D294CE59A42D5348781C90D1F0D8BDCF770E6989A939E3FD42A68D34E6B0E
3098A0AE88E2B52577B1BAA36EEA23071FCFB8FC4C41A8FCB9F8871F265D78B274B2
3099D0D8F92D55011A124E037B5254162E7956465E96DC76D0CD96643AF172BD33A9
3100DD48C30161EF717BA3AE6C7231F05DC4E330964C01F6BE6EE652AEE0AA41086A
3101B2FB3DEE6697965BF24EFDEB87D49BB4D617A10480CC29C978C953A0B826E470
3102BC73AB39F4A8A94306CAC840DE844C60F650537E695C6323991AB9038DB838DC
31030264EDB30E27E3F38B9073C8F7FAEEEF4B8285FDFEFF1C7CB16E43C712D78345
3104813848FC335ACBA0768BCA0A9D57E99026CF04808F002FD842AF9DDD4E72BC61
31054997B2B39E28E971F60F8D96B66D8EB5911B8856287E3CC2D24D662312C238F3
3106777745B73A30CF91BCAF4C6205808A2286285462580052DE31EC1EDB0BBDE46E
31075DBA461A815EEDCA60F8D64F7A2A84613DEB4C4745EBD6C04DAE969BF4681B5A
3108F95ABFAFD2E9FB49A8504348551E67EB6EED4F87362FF9A5CC9BF06478E815E9
3109EB946FBAC21430CF51569E331E0060BABFC7B21535D987B480FE1264A3738EB9
3110F67197E54D9C2B032A06AAACD80FEEE298763DF5CFD00E2814F58A69A8643AB3
31113902057079A36C46D8ABE38C48ECCC6F7491D4D4A581A452C48CFC961DD8E85A
31125929131DD9543262E81C96631C7FD7B94C724102DE9C365AD97D6ABAF44AEFEC
3113BFFCB5DB96D395117A665FD30A70E8090C3883FCF7ABE76954BFC07E4467E5D6
3114262D9C949ADA532E94F9676D15DE90911D34BA384081A789D304584C688025BA
31154F6EABB4ABBD427CD00FF823773B11F283241BAA9B9719808D7FC5E77FCFFFA4
3116F95DAA339D4843AD99133A1DE37103F386B4092343814923FCC22A87D8A91F98
31173E72139EA419D61789C36D99A207600C188477278887467F15D6A6635BC18D38
311853FC280A6AF75015E003E2C80F312FC1D967203234583FF829FF13890D62FDAD
311969DBF4D1AA69AB22A11A64662AFA11952042294C55F890EC1805936402B7C229
3120F0A33C29453754544D92CB1E338AB7F3337BAFDC535CC93DCA0A049368B91FB7
312107670DEC8F84592CA1B4B8CF94E0D6A64A0DF9C0C239382D283AB166206B1893
3122510E6320866A16450FBC2B0F82A38E460689EB07AD663A0785971D53E42EDD4A
31234BA81BAECF10B93B346B20FBAA70E4D15AFEFBE7CCA040D982A92E7853D055E2
3124065A09DEBCFA1B2ECAE26C38F8DBD378E976FF597397C27828EE0E6791B8641A
312595CEAAEE1849027B06DA878994B70F94C835444F6B69A2DFBD6E4FECA5160C53
31267F12F395CBB410A6C92DFF74F8CDDAF64EFCF4F8ED9B832AD75E48B3F01DBFA8
312786D7ABCC22CA3C13603580C64B639948E2B74654FC8AF03B4F56BC8302645BB3
3128B682950933DF6086F8641FEA62CC01F451312D22F4CC5804EDCDF981F6DEE997
3129BB777110A8E8ACADFAF6428096108F535472D856AF4165C255A1B43342202F3B
3130A72C931CD8A966D1898B78B12B14DBC0D3663983A9E2153CBC23184A4FDA6A0F
3131779AF83DB6FA36FF6258473B17FB452EA4AB02F0D34C0B8C8E1FBBB35B680D94
31320201AB0D0F0637DDE7031FDD239BCD083FF5A28AC9AAB7271D9179A8AE589B26
3133A897659AA8E9CA50ADCECF5D5F4D21C7142D4A85678466CBF033D883ADF819FD
3134CD27E3A6046F3EAEF987DD9171440DE702ECFD3AA51C12AEAB971FB8E3128291
3135592A3619A00A4DDE933F960CF460C31AB712D12AE4A37357E42CAA235672926B
313600FF510B7686F013ED7841FD01805D2496293CC262F80E730D2FB94EF320314B
31372E9BFC65A17A0BCC2233F53ACCC3ADFFAE00F19277AFABBBE4D2E377BE54EC2D
313882038A9D3A35D7B13744E468A1AB3D0231D394EBEFF06BC1D52F18430F7F77E8
3139DB47FE2A958D86452CB7FB6FAB65198AC7507BAC92FF4F46B97A265BB80E99EE
3140B2211B9989BBF73B1753B4BD6730271DB7679FAF4D3B223839094C1C980C15D3
31412C9E74DC9DCE7CE0D48B1E2A8E2E3DEBE2DCF6FF7B8407FA88F59A8D572E818F
31420C6AEF5B4A99F83398F97B162429D82A62E2377361853F630E7D0A7D728DFEC6
3143EE39A9DAD89967BF1579C57AB99CD78DE820C407CAE52C2D7E65C97A594FCE3D
3144378AC8FF6F8867E8953FBE91D2D8131AF97821F28D6EAA5A9F025DF790FA0967
31452C0A1339E953EEE5FC75F76FEEEE780F332A1C0C08DD80EEF52F1CB7E02DFE52
314686F148A998753B27CB823FA9B4907B37007A5FDB8395AB3FEE7CCD947D1F6CFE
3147E81CD88BC9690E2F89F7CB130C9A2834F938B3D562A42CEFDC45A38E6BF62ADA
31481517974E61F6D35267795C7A9E945856824329B14E70EB350C997756A8FC0A8F
31497CBABC48C4AAF0A5D6A8F58AC190AC3F980C00D93FEFF1539D417AF2DFBE1021
31502882782C625D2BD323B9E0D53F1494F8CEF84ABEE30CA90C251887075A697386
315189F38001C3B2FDA9991D9A5EDA186C37DFBD0A77D47E24204981DC0A45B3AC66
3152DD14D43A8A9826A0BBD96FE2279638F5AF12F010474075C381BE0243E3217199
3153ABF00214D7D13F66411A6AB4FDBFDDF295163DEF72E788302F63FA8225F08ECE
31541F32D71BDBCC1ECBBC067187C9713C686E3EDF304BD3C58981C76B6943E66F34
31552BE57CB3145FE9A286F570074DC259CDAB2A415DCFDCAF46FA3E195FD43C38F5
3156A612D653E3F178E16D9FCCB637CAC9AFEA648AF52B945B9BFE37F241DF9DDD61
31575425B37F903B079F337E8E15B70CCDB8920F15AF89538608A573E7C9008BE814
3158FFAD305F0B94C7AE5F3DB35D34C04C1A250E89C252759581AD933896B468547F
3159BF0AFC136FEC40C7436120A944979C9DB4D492A52B0FD658E8083E0EACBC60DE
316067DCC01E3F87F04754223A34732D211B43248A5A5BDB19992CAF481A564DC9DE
3161B16CABD3BBF40BB4F84D67015773F7261FB175806DBA97597A0A8AF8920596A1
31623C77C728F23CDA310161CC8573ADE490419AE08CEB622DB6883CF0B75D43F0B8
3163B37715EB9AFD9CBA33DEC10BD2D78E541499738D77A6450B93B795EBAD5F44C7
3164311134D264B1881069ED3422281C15D1822DE565FF7768B80B58096D5B03D168
31650158B52A52B7B5B94609793DB02F8EA785A2E0A039FE4F8CBA3CD0C2A934F2D0
3166A2F862F75093FFB2743748EAE9947B5D9F56CA0D67ABCC01E4432BE67E22DE05
316739664D8D7E9D732A897F03DF889A0D3C09E60C4F3A3996AED7293B8743353739
3168DE1D41C5FEDC2BBF6662BFC35660CF8EA4F2C0DA06AE90AE91A9E0A8BC94D43A
3169B79F3778BB68BB937032EE09062E1C4611EF8E86CB7007F2AA7DD3E46A31AC00
31708CC36771023DE9E9BB5483C051FFEF412A14A65F30DF95C91990408BBB8A1E6E
3171FE801BA15666D3C270F045A8178BE9E424998653471706D0D86D49967771961C
31723F62F1B6F36652DE97526AD89E748221893C9B6E5915C1504FF46B6CD09D85F5
317357F881284D70C35BEA64731C99C0D865E2E9C9FFBD50806164157CE198DF009F
3174B560FA76FD75CF742308B01F8ABF13E7F9DF82298FE454C1F709387B6F23C306
317561FD8651CA2F51C5F28786D6766B4339928115601BB265F6895712C39D4EB75E
31761E1EBE9BD2E808299CAD5092397B7AFC8B386E992AF8A47FB618101925514570
31772CF7F3D9418ECDF120DE0D9B14BA35A19312BB4C87C9A1862E7AC946AAF7E0DB
31789126282D6813095178325D6F7510550788D387CC3F7936E5BDFC55543FC2AD73
31790A47BF75CB6B625FE8F087C3E53330DA3EDA69BEB3601FE3223BF111C6235FC6
31808ACA71E69693779A68F93DB849000C3915225B007E9F1A64211A66634F67247D
3181CB39A389107705AD40B0EE4D1E1AFB6B6F6E7F1D59D12847F748BAA026367172
318261FB9E0FF8EAD4609047340623E92C4954683F777B761B09A1B6E06E13977B66
3183B7D5B557C9E0682A0E4EB4B04EC5191E68ED14DB179A9E167389023CEBD2F046
318405B7B10F352B91FBC1D499BC63A8B63A782692732DD2C49C0532E0D98BF9B5B9
3185F1EDF5A5E00EA42DF50F9FF5700FA06DE26B5EFDBD15375BFB87068ABFD6101E
31864DCFB11A4F6CE0A126B1AF08A0DD21B487FCE447DB919FB215BF614D5027E67C
3187CBDD8B631B0755EF9B2F6E261D4EE7D892285D1579F3027F9B04BCB1DB28A8E3
3188BB0E83592AB3BF25CB92A3BA038A91C5854402DD5C47E1F535750D1090DEE1BB
3189A5AB0785C67806FE7A4D1C7DA3A8D40E5F8EECD2DB7F5221ECC3AAE50BC607A5
31906B91C718E2092102B2958EEE11B3FAA96868D425513142D1C374886E63A705EE
31916D996AE31AC5F89456AD296DD490CA6E63BA98B78E4E9FC2AB540F27D47BAA6D
3192C8BA9D2F10FB380F3C37575FDCAFC69F42E83301FCFA1DC31DEE29087614B306
3193F158970D92374D7435EF08EFB3B32BECBC3C6C9FBD42951801B86C715A7FB306
319465B90CFF9FDE5AA20F20BC8DA696E5FE7214E98F39D2EE60185F926027A6CD5B
3195960579744D143C1A7BC8BDF10C70003858B2A6EE72F854CD35ECCEC8E92BD664
3196F9734FEBD981C41DAA2A42AE83697E3B030C9E2C6C3969293D324A7D68274044
3197487004C3F6FAC5B64BA149DF711EDF2F17881864AEDE3E1E4C3147BB3DDB4ED0
31982F79305B402E76F974CD56CB04A4B562DFF36B40DBED2F35D38DBCA5CE8DDD12
319970C28A19C891D126927DAAECF16B2DF41802882956716BDBB442E9F062DAF65F
32006E3808CF58F9A4912209644195F04B4A5B209314017E96A700903AF6F4A8E8EA
32016CE36F67EA9139F816CC75A806C3585BBFD882F14028770670FEA22F34358E0D
3202CD9626705BEDEB3A0965697647220C1962FCE67D0D3E2B9FC5DA3C3861F84209
3203C56B90CC792B95076CD73D35974433DF6567FCE72A24162B434208A79117055E
320453BE3CDCA527E33638F940BED805EE57A3526186F80ADC5B6ACAEE25E2081A63
32053E6D985A8A6256F923B971E34BDA04D21EA99D34095AB201BF44B62258B19ECC
320645149754F896F64FBBBA939E41A11082C307165C5EA32F7C8CDEB80851B5219B
32077A680F7A8D02C9BAB72FE3B941E324F554E34F5DD5E4936250A82DB846F5966B
3208779F29A9A4E53BCEA49CB4C6CC7D0034515E9F7B357B6AFC0FCC6FCDA1A34B5B
3209103062647367EB77762F6B47773264536E40536C5DB2985C3048969F9D6C698A
3210EEB959112EC964BDB8DC3C6F307477C2615BB536C03E9C9B346A7916D1C69C0E
3211116DD955FEE0B8F6A0B476DDF245B7C901473A96C2C53DFB5BF4833F984F4D42
3212C06B6751BFA6D96E9493139AEE7BE7839B8CB2290735C80542C40D266283CF68
32134DE60FABB54F29A930357CD2AAA60F5E85D1E674610F2E7C280401061AD47B55
32145A1EA0B0196423DD4DC994CD41094818332B99FC9218B2D628E86983DBC5B842
3215AEDB7362D479C940452A947973C8BCCD46588808F0F9FFC55EF2D75C1C075BF7
3216FE6C21DF51E5F6B00D807B033ACD1C7C6A8B3CCB7332E5ADC93433422095C0C3
32178CBDC619DC8EAC0382428C88443B16ED0DF49CD042D38082CDA4DFB035CE50C3
32189271344F46D3765ACA3E1B2942215F559EF1E308DBC2AF0659DC980F5DCEC6DA
3219B33D596CB3F26EDD5A11D6647DB7AC5AC4FD41B62BC353356CD12DA5FC6EC2ED
322086DB312ED5C8323E1C766A0108ECE43C11D2BA0A63F1BE2B0A9D40EB995647C1
322182D5C9FC55169F50121ECA94D1953CFBF9F38B1FE0C7DD8B786902A841F24A23
3222B8762B929FB5AF021414A5321C7288BCA19A240EE15D106043DA19354C4EE1B2
3223434A967968C29B9125BE84A907D22B0BC2A2CD09AED00F3CC3C5C7C9AE7C906A
32247050756D4E67E11F2F2C14DE59A92C013849CAD0A1B6CD32C0CEAD2A4B20AD3E
3225ACF8CE2AA125F1EE154B79690659E1B90563E3884B47699AE1F7A71579C3C4CD
3226B66E6FA9BF98769452C5A2BD8B54112351F05BB77D3D3E3EE9250953BBA94EC9
3227C0DAF20B0606C3CFCE4815A876F9CAB8A9A2E5662F7764050A0F5A7852B9AE4B
32285799C95B8718D481452AB4262A843E01CCE943DBB8377B7052FB397600962A01
322925E5FA112149DF197FD9C8F16BE5819096B87CB3555969026B8A5F4FCDBF3171
3230BB1D5F36E7CF89D94457F4CFFFECFD8BB3E009655D799C4F262FBEF937E5107A
3231511677585FE4D4560C34F03183E6293EC2BDECF5DB400CD1A29BA1678083CBDF
3232EAFE8D078B72B42BC1CEF9FB5FAB5B2EAA044F5E98D99D9B907A3FE4E1BD4E0A
32332B845C58D7D0119C323AAC85463968D97A651A087DF3B6866EE0D09BA5583D8A
32348DB9837B487DF5FA27624BE3C7F17E6C734D294A1D200D971EAECF983A0A2378
3235BC2FF6B206A5121EC01229C14E0C22CFE7371AE1007ED8F556B54347ED545D05
3236EB488D7DBD5F668F45986703122FFF97A19523731B7D3CDFF8FE45ECCF2B91A2
32370907AB03E8698E0E3F6D846A4417B9F66703DEC16AB8DE158431D3424BF6462A
323870085CD88F8BD3DF2023F0738FA6E3F36E752DBE7590F6BBFE1BA8092CB69B54
3239BA30D871F6200BB9CEAAD3D6A5AD721FD4A48D002BDFD8E339483D6E32ABE379
3240914BE6B673F6FF3CC20BB2A971184433A714E802CBAFE2C85DD5F0E29B5F9459
324116AFA7D594B373139006786FB5B8594D50C91217D49ECE8E684C292946D79658
3242A9BC010ACED5F757796BB9C32F98409ECA6511351E340C2C9E3CE2AC1007A52E
324395E6DA9F56E11D4B0586F88A149FA8A2BE78DD25F89BF504A99140A7453E4C3B
3244EC9F94B300E4F6AB24C4528E029DBC0C61E116BDA8F0AE3108E3269A76927509
324595B41AAF17DB3759D04E9F0E7CA4863A9A771A49293B1EE6CB38E33A125342D0
32466C63AB27F308D08F60F4DEB8C0A335B115D25683F8AFF549598A3B1E88BBCBFB
32477C418723054B346E748DB987ADF0EB40FD0B8FAAFE5871EDDF9D68821C8C9643
32487A3EF4FD3BDE591022C83EECE829BE8189C6D819708103BB96A29CD107F416FE
32493230C3E7E358722AFD9469FFF2C7FD9DEC35BE527B99BAFF00C799B99080BE0E
3250C88272197BFDEE472E29D1A197083F1BF10324E834C9D76190223E095487AB37
325150BB4FC92179754DD1138F9A55269137543FDE3173BB57BF3E5A2C42F5C58536
3252BF4FE748D9033B0E319E3061A7044883A795BFF107E9C12F2449197FD29A2BD4
3253C5B7DBC42C28596D43CA57E4184250213D3EE5D447A0D8023E2BDCA6B095DAB2
32543094B07797FA4AD49A4BC874F462D46F9DB4A21773BA0181B3482CF9235D9C78
3255B967B280FF82EF3938F51211D5822F527127A5B4D7D643A443581EC8599C62A9
3256A91D57B358D8787A39DFC4AD363869F6002E1EE878EC3573521ABBA11B6FAA80
32572F73E889DE675B42463A8488C72AF383482D6509F49786ADA521F76D93C4A91B
32587A5B23417305F5F89FB34261C2FF16B3BF983B19DBAB9BB6B1A2EBA3C2AF80C7
3259450248EFADA22E1F8D18CBEE599C8D210498432C47CA067449143710A73DA7C1
326038C859665D0D88FF0E4ACB573E954655B5DD4B8C7DBE9B8A3B2C4526872CEB80
326145CB40C3D53F89ACEF33BF54BA05439AB4137D9F6A5F7CC983CC0344216AEE0E
32622BCED1790BF4506A8908E1D7AC441366E9938551A962C6AF4BF5E2E6B706CB0D
32638572EC4AC8CA0714A5EF6D4861932F42509F217477AC1547A3F96CCD15787A6B
3264B7DFFA17B0F44E83A08486E779A1E36B7748B17F2D09FE6D7717E1CD3E306004
3265F69F2EE47DD0A9FEDA1D43558C8217FC810C109B8E55446B6F151D44C08FC996
326663530C24C7F0B8A59AE9FB7ECD212902BD8E4115A6F6411266A57CA3F7532E2F
3267C631F18FAAEE1F1B7224B598AC585A4279155501B1BE29E06893A8C56DE80D66
32684D5586C74C54B88D1B61602D44CAC618E21F447A3A17123F9032AE7B7854C08E
3269E63B5335540A7F4B36DCD11A47FC8E672E8EDBD9BE813702927FA8B0E0715943
3270E1AD81AFDA2350A8D9C05295A208EAB36592672ED05E16C4D9392B3CDC1EAC2C
3271526F600BACC7C2F6E0AD1283259B1388E83880DF85DC9790DCED3EE2CB06245C
32723FA795567CF8F6E63059D974D5E2DA8B5262CBEAE15984ED2D6FBE0C5580CD20
327305640AC7C4D28C5692D3F814A1A90A7BA2633A68A7A9752AE74761AD428B19DB
327479133438C8E0CACA1624A5780A14DF07A74003E6EF75F75662EF6E817223BACB
32750B0B47C05B22016F6EC2E518EA8AF4DA0BDC4B02EBBA5D746CCD8F698E5F25CC
327647184CA13E1670BC214C44C27A70CE6DFBFA31B6C82B015C1A4F64F2C767960D
3277E2E40BC61F84B19C6F874381488053602966F43AE5058C0FAD7FCD563D01DC11
327809C7252BD1FC94D7975F72047395F685A7FABA083130F64B8DEA9029F14C6AC6
3279874B97B05248E3D6A435711263526F395BA49D30A21D4AE548141E399FBAB5B1
32806EE081015FE3C5663CCC484B8B4183EFB92E69EFFDD7F01F518569E03A72C4FB
32816772A0644FA922FC56B0B99B1F35832A11D929CAEC8280793D062109E3BC57B9
328243E01331FCA8548A573FEB914F916BE1D06D2561296972C28F6AB92BD7C739FB
3283B1D5251FC46E2ACA742585DA6C13ABF373F66B51B45B44DB1471220A3C5AC33D
3284B1CBEA5B541B8C1AAEE38ED30735CB1C12D02DF0F6770979AE08BA566887CFF7
328554C4AF9ACC382793D4BF251D09A088691EDF51E72BD9BF9F2455A8380D40723B
32861D90B78C210ED9972BA6BEAD25A7B240219C012E3757353802DA6183C365F51D
3287D94C2C57373A44EC5C422D3959C140BD87F1271405B33BB9747A78E5460A96DE
32882C1E98D4B4FD3A15E10989FAFBBA5C57644D6206CDB81493667B3E4FD684F3F5
32898FAEC6F36B47625DAC46AF37D9A04536EB5D64B84D17FA194BA862BADF76E107
3290548B078BD5DEAFEC764E789E6CC8E78039801CC4716FFF5E7857B0FA3BC31CA7
3291E1AB37C519A9EFC58DD1D3926226A3AB147EEDF10D63CBCDAF2DE66E4356711D
3292EFB9601764562A81D21D943A01AAA3D814DA167531C164BDE763F6E3D619FE40
32934705A2A03672929945500B4D11F01ECB2B09CED1927029D49A9ABC19B23463EB
32940FAB85297CE11F97C1D560C5CFD27691E39FAAA95B468A502988BA484664EF88
32952630187E829EAFC67146942DAFE5DD566A72FD6BF32B33F27B383ABF99F9E438
3296C30F7CF8513F209A6B4E76F16BEA603005E8F71C817BA98D25B415B930988A1D
32974EFC4CC7BA7801869D53863261CCAF234BBC398FFC8D7F736F231E77DC9C0EA3
32981AA359D0A1962649825F59DBBA3B5975D70B2D6FBEE024FEBB2908E47858568D
32994BF000D59D21F549FBC46726878B0123BC5F2450F60B092AB46065DDC9BB7D41
33008E3CDB9982369E2CED9B88B58D47A94A108324E6BC009395CB656230FD9C5EC3
33018631D1F70F5B29CBABA91706687A4EC238AADFD7BC3B43166134AC044E72007B
33028BB28A578560F256B2C9F818D948CD3CB57E351BA8F34834C164F3AF6F544B64
33030DA5FF8D23E70669BE37DDD66EDD81132EE4AC92607D6309C5CDFC6D800FA012
3304BEDEF9E53F5F3DE3B0955FF6D7F6AFAF7C5026F2B989F8103E4FD2E39176E5C7
3305A50333B89EC266B1C39E2534EA4AB75B62B90962065D26D8958DE43A879FB0A6
3306316D86559080C6048BF798AAB878E578673FF67A92741F60CADD40265C658184
3307A42E9B85997CC8BB4696F50CB08AA5F0F1A658041F6C32A0859B99E9B41A0141
3308E9EC90FDA5A358995A7FE0F8E7D5B74F1CEE7C6EE8272B35BD242B5219AC103B
3309CDD20FB4F83F7BC30E2D0DC150B036CEB93C92908D53C6FD6D2D5BE1A1EB1596
3310CD9374A4F388507EB1624048C79366F13C1319E410B9EEF4F33C5BC5BA7392CE
3311852B8F2F649AF0781AD969BA91CE623BAAE3A45626D4A6D98F210C30C60DFB30
331272C19559C54ECD9FBE406551B0B3C8B1833A8834E1BFECD87A20D90B25F4859A
33133A7A21054BD82BD20A3E2112F447ADAD7BDE83EE87ED04683DAB283627AEC13E
3314450DA15C25855BC4ADA345C1D92CB5880AD4466DDA84568FF703A824A8EE8E29
3315F0E221661D6BCF20BF046F80C044A860A2925E96063CCE02D044DAA35923E5FF
33166DAEFA7845ECDA7EB4D3145F0436EB4850AB3A65120C32BD2AFAFF65518A7529
3317AF8B2E8F5DB78B7F789ED6144D3EE5588A64DC1709E64C69B3907A8B4872AAC2
3318896172C0119889060CFC265751C8A781208282157BA8F925BFDFE72E4AE0BB4C
3319D472F838F9FD40E229A3B36F18D96C99FE8D88CA44BD2702C5723D7BD75CA5E7
3320E606909DC6EF9550DC7866C54E6F08F6993E6AC0E78CA0FDB60DB16AFE9149D9
3321CE9E29E6461C1FDCAC59B0CA7814F7CB663BD335998F2B946407D92791AB32CA
3322BC3FAF02A19178205981B654FBC761D3316337936BB9C02F4435E9FF33A93228
3323CDCB3DBD347E15779CEB58473E78A5AF2F234F2FF350FF5F2589FD2A3F38EA2A
33240411507AE1ED51B550AD45D561344D3A6470C9449E25522F261E9F861A87F272
3325250144D4A7FF42EFE2F53F262B4D50A9296958A5FCCAB2A72192C87AA4D7163E
3326F5C23005FB2BFDDBB7696A39A987822C4D71A1BCFFF58FCE32435CE6580DC9FF
3327F02B40A04772837D1C090B31D98E73E79D6E63D973AF32C762643D50575E99B2
3328D2944583F89A5C23DB7BC78F34E2A23079DFE9CE9E9AD70C5EA9AC910B721861
33299CD2CF56C2E9F92311D2F4319C4E55411BCE3D593188E4324A653B730C2435DA
33303D2839B68C3919AF4DFE343C1F1BE951985F50F264253552CC514B6962EA363D
3331CA92F7AFF2A2F64B14194F69137D3EE3E4854B0BE9E9D9400EF10A9F1B40A01F
33320AB88A7542A3F40A29B012ACD52C644EBE181CD24FBAA9A2687A182BDC142695
33336013E51C2A8E561A067760B4696EC55E2DF1D6A04CEE65E74A11F712BCB2F8A6
33349994358EC86660EC04F7DA6C7A133CAB415B034B567F36DC71EDD3DEF8F0802D
3335437DC1488532EDEC290E147FC9279F4821F0EA2F5BA6E2A43B64CAF0B1942F33
3336215C18ED620C928F1EA7D0452613927FE3A78377C01542FBA8A397D0C6D6D26B
3337AEE8F0A3C15AE5CC927CA38E4C0CD2AB9C71B6780E5EE878523177130C291C70
333875D865FD73B3A875F450331C332ED0205F74355A07C528AA047568789CE16005
3339A3CDB32578707DFABCA888B476BDB2FBC69425F9157AE29C0E807B4D996DA7E0
334075C8F714F2EF2803C456E2EE318F6111C286CC7305D2C1E270643BAD7587DC7D
33414030E32069D4CB84C8F07D0DF1E492E4F4C9AC6C71ADC174925CECA25FE6878C
33424C2BD2D4E3A3CFF16E0FCD8C308B759C2A4FEEDF484BEB0F5BB9B7895DC641D2
3343922631FD2E23257128523B31B369AEC4D3A63E3AB3DBE2F649BA1C2E4BB4F8FA
33447CC579D3C6FBF2B045EAEC3E5522802DF1E107179B98CDB9F0A9D400CC5DC89C
3345561A93455644ECF841E34C28FD690062504AEF2D5E09E9E84230E93B56B741D1
33461AC88BDB4E77B90D49DAFF1333758F9E72CC153F4F1823407E9EA929067E180B
3347989D5B459D867D3B242CECABDA3439BA08BE3F96155B62E3323FFD874DB7897B
3348CC139739546D83739C5C1665F6CCD89F74CB7C07138891E23DACABD4B67AD04A
33491DA2D547378B8E77D1D6CF3A89295BC499F383FEE55EA8359544EF60ACF1F750
33501C607FFAA1AA10A361DDDE23B2858E77C71F0FD2D47ECDE5E77CEE1DA878A8B1
335140211679D7691011B81246ACFF2B487F106FEFF52E79B7B7B05442D846FA7381
335298E1EE04940FD3446A516B47C815943870C9CA9C1B1BDA2894AD89DEA6E1B96E
335360C94BE49C89A0FC4B009AEAA8B9E658798B79AB404EB06515D23D0C83465473
33544833AFB6B56761858EDBC5E125891D58DE477CD512943AEFCFCCA741D39CFA02
3355E0CBD9045ED5FAF2580C39A1102196A85E1CBC67A1C56A7CDFA12BE2AD351D9F
335637D4783CD6A8B0EA717B5FE28D7B39000712E37E622A821D040AC927726402E3
335763345131FE928E3147B83D619DA8F212E144B19EDA829C7F6CBDE636F76ABEB7
335882658AE7276C2F8BEFD02188598DC592E05666984DA2BC8C9F3549E96DF45D44
33599FC713AF972127020E99F95AF3904EAA898F4B67D19BA296AA36FBC14C4DC5AB
3360C88DCCE567002214C7518098D015FA37AF02BEA5D9F5845FE3FF9037C15EBC79
33614CDCB7D79129ACBFD2573A884EDEAF3939E2D3D6967F1A0117A0DC6C8597FD47
336201813A0B01D60D7709BC55D5DDFCB08F53B441D7EEC6544FF96638CF1ED431EC
3363794A0E716F63233C0D80E8B4123F30E632AD427857EF57A6CF6A106F5382EF74
3364F9088615AF05E3362609E86DC9CB58CD2F709F8196FB61FB4F82F9B1F0792B09
3365D6AD2F194A9353F60EDE331B84B7704F0C797415FAC6F5DBD56D39B44A45D1DE
3366B6A2319784AF1B2A9573DB75B573926AFC074627FAA9E8B4BF773A802896CC96
336765B535DDA172851A2F052934E7D7D593D3E2644444F7C635179D00536099420E
3368CC56526A9FBCA1B2DDFC48D479DD9A928197AE138735926D72737FE8EF7D1B21
33696425B94AF20B5EE8BC00FD87705DB8DF11ADF16715177FE917C2AAE6DC1CE5EC
3370EBFA2BBC044398B8F85DF05D50BA8A53E97F44D6CCE9690F901A50B844416408
337191F0DA30C55BC25008122D9A08EE92A8C84F6CEACF40591E4320A114E2B62F15
337292971E5DD0613D6D323245F1DE0C5397802E88C79D9C8C7719F4A13902828BDB
337334D6E8D8B68BEEF5A4AB6A4DFCD93AF6ACE8C60A16A593474CB17982F611D6B1
33743294A28699B8E8E73C27C68910AB90B2CC147944323A5F339A5844B674AD75EE
33757BA8094D3BFA4FBE6D1EFBBF7603607E38B920BF9CE43E418452E4D61A6D28C1
3376F91CC04699210332A1555931106ECB43AC1FE2D08882F0E9180E5924C0335693
3377AA13697E9F7F1091D71360D373661CBAA631992B3B2627DA5340DC655F712572
3378FD675340127A1CBEFE3656AB4009BCD1BAE64048275146C32E79F031EEC428A2
33790B786601B1B44D5BF9E464CAF224E5636B0D2D83EF07E81A545EE9A5F9A531D2
3380064EC94A90714E13760440450A6ACF3DD244C32A9ED0A65C546BA46C27FD7801
3381C94F5C0735A1E9E6934D30AD680799FB3A761896C9E1F1BC0422CEEDDE021770
33821837B9A79B0F8775340CE0C2A18E260F6C471E98A3C6E4AC73A148CAB6EFAB3C
3383E50F14240785645FEE335349C9B8D59B99FD884EA4A1C878A5AB6934511DA544
33847D009675FD5B62F999ED528C3B70D337A7D93D4D14522D1270B5C345B5ADE5ED
3385518AB80590221630B0E66A85B1DC67A6CDC6B3694F8EE53BF90223FD68ACF7D9
3386A4106D543E16EA756EC3CF9C96FAD7E45A8966B8BBBD5B1E5E9509F2DDA57EC1
3387AB2B457D495F9C8452376C11C649FE4015844D876967666AF9824AE5E3ED033C
3388D3DE8808897B223FB36CC42BF7867775B8B97610CAD61760B48C7F3F2DE23908
3389035EA9A89551B4AC734DEFF55D121AA9D365BFE4C621AC78344A11360E042213
3390EE8F7EB0EEC8BEC6C9294D22467B5D6DB1A0B0E03F371E1AE162C5DD46DD127F
3391F8F75142EA07F5F5E3B4848E9F4B884F0257D4FCBA87797839A716CAAF03EE52
3392FF4479EB9FA912146C609AD0784C7EBC41CD480FB7B3CBA7D5BB91BEBA43B5BC
3393AA5E4A9CEDB68B34B4EF7A15AE58EEBD677D7D2ACB6570A569F79AA9F8C08334
33942575F0AD37AD980DECA14BD61D6D0F38DA4C8F5E4350778BE866AB63AA8260F0
33953D9105FD3738B1C5417EBC9BE27027718016DAB611E3D06529A5F9C2C0A05371
33963A7B87144805AE4E317F26B518FAC096F5A9BAA8EA45D77BE19CDD1E352FC955
33971ADDD93B080C6E95DE94CE3CC6AE60E797B09EB9FF1EA0B5C60822953F8612A5
339893923E7D7FA07A86AD52B23D3D0B88630B88D6E8C62D009DEF41CC7D95EAC8EB
3399B26AC8E3DCF0929016378EC4841E1C4F951059105BB7F4D9D827ABA155102A09
34000242EDC57D050CBB9A0B6C5302B1534EC041093CF0C05C0E30F0B3513F3F5356
340175E913640AE066B795197E009D880CF19ED6C92FBE4D9CD3C96C88A59F2097E3
3402D9F0F923CF7537FC69D5C714DA5E53CBEF307D8BA7FEB8CAF2DC63B9B07D4556
3403CF751C7AA7CB1268BEE3591838C5DA625BDD22B4748A2118B7073C7AC7A885A1
34044996A7900CE4F42B19383E12F0BFBF0862E3A539F952038E1149B57D3B92DD18
3405FC33B2AEFF202D53D5212300869B57A104AD5640DDE1A5E3F1240482EA9CC7DD
3406A63BE8B6DB82A2FBB5DFD31E72A6CED413ABA65C6DD3674A76E547A4CC9C1C5A
3407504992A649C7F2AC469A9BCA5E9C84333AA74C686A863A05FB73110E466A34C1
34083E3AE5E21B912282BEDAE14864E420B05F9E2EE8B1C523B362A4237929BF2D06
3409A0D398D91ADCFD021113D4489736B4D8E703D77F2BB92973874EE461E76ECFE3
3410D114EEB3F611531FF20CE6310C338C6C426F2CDE535C69E3F14CBFE16F48C7E7
34117420777D9A175710174DD5E23B2BA6FFEC521907939AD66488857BE8021B385B
3412D6E1162BFD8BB36174E0D5C238BFD778BA5817BF31B2624429080A5B93AC98E3
3413B6C5E9C792F9B1CBA7BBDF63277A28B6891DDCD36D0CF656C4F510C77AA08991
34140545717C76D2289D77C79DB34F2FF22E29AFB3F5E9B6313A2F582E4DDD2373CE
34156064843D24FBC35B1A08AAD4A9B408541301166DBE585317FF2A8E15C25DA94F
34165A5B9D11F5F0B1A658648C529717151A96623F590FD41908A5CA20CDC0D75D84
34176DBFD25E5D4739177AF9
37c41ab1
CR
34180000000000000000000000000000000000000000000000000000000000000000
34190000000000000000000000000000000000000000000000000000000000000000
34200000000000000000000000000000000000000000000000000000000000000000
34210000000000000000000000000000000000000000000000000000000000000000
34220000000000000000000000000000000000000000000000000000000000000000
34230000000000000000000000000000000000000000000000000000000000000000
34240000000000000000000000000000000000000000000000000000000000000000
34250000000000000000000000000000000000000000000000000000000000000000
3426cleartomark
45c0f7f8 3427{restore}if
37c41ab1 3428%%EndFont
c302751c 3429%%BeginFont: CMCSC10
45c0f7f8
CR
3430%!PS-AdobeFont-1.0: CMCSC10 003.002
3431%%Title: CMCSC10
3432%Version: 003.002
3433%%CreationDate: Mon Jul 13 16:17:00 2009
3434%%Creator: David M. Jones
3435%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
3436%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
3437% This Font Software is licensed under the SIL Open Font License, Version 1.1.
3438% This license is in the accompanying file OFL.txt, and is also
3439% available with a FAQ at: http://scripts.sil.org/OFL.
3440%%EndComments
3441FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
3442/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
3443{save true}{false}ifelse}{false}ifelse
c302751c 344411 dict begin
45c0f7f8
CR
3445/FontType 1 def
3446/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
3447/FontName /CMCSC10 def
3448/FontBBox {14 -250 1077 750 }readonly def
45c0f7f8
CR
3449/PaintType 0 def
3450/FontInfo 10 dict dup begin
3451/version (003.002) readonly def
3452/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
c302751c
CR
3453/FullName (CMCSC10) readonly def
3454/FamilyName (Computer Modern) readonly def
3455/Weight (Medium) readonly def
3456/ItalicAngle 0 def
3457/isFixedPitch false def
45c0f7f8
CR
3458/UnderlinePosition -100 def
3459/UnderlineThickness 50 def
3460/ascent 750 def
c302751c 3461end readonly def
c302751c
CR
3462/Encoding 256 array
34630 1 255 {1 index exch /.notdef put} for
3464dup 45 /hyphen put
3465dup 47 /slash put
3466dup 50 /two put
3467dup 97 /a put
3468dup 98 /b put
3469dup 99 /c put
3470dup 100 /d put
3471dup 101 /e put
3472dup 102 /f put
3473dup 103 /g put
3474dup 105 /i put
3475dup 108 /l put
3476dup 109 /m put
3477dup 110 /n put
3478dup 111 /o put
3479dup 112 /p put
3480dup 114 /r put
3481dup 115 /s put
3482dup 117 /u put
3483dup 120 /x put
3484readonly def
c302751c
CR
3485currentdict end
3486currentfile eexec
45c0f7f8
CR
3487D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
348845D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
34897934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
349072C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
3491BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
3492974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
349311453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
3494048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
3495CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
34960723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
3497D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
3498567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
3499DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
3500435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
35012B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
3502D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
3503DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
35048A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
3505DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
35069D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
35071CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
350859CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
3509A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
351090CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
35113E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
35123B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
3513736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
3514E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
351517FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
3516FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
35171677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
351835D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
35193E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
35205D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
3521658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
35228E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
3523CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
3524D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
3525606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
352664B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
3527F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
3528C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
3529072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
35307A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
35311DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
35325E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
35332FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
3534491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
3535B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
35368984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
35379B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
35384F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
3539AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
354036E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
354188C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
35425E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
35435E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
3544AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
35457726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
3546CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
3547E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
354853C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
3549FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
355094479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
3551E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
35524FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
3553D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
3554F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
35555F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
35567021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
3557361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
35585F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
355983F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
35608615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
3561F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
3562F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
3563EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
3564B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
3565F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
35668B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
356707CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
35688E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
356912506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
3570E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
3571EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
3572EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
3573A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
35740FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
3575AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
35763331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
35772DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
3578215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
3579E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
358070A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
358137B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
3582BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
3583EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
3584AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
35850753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
35867E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
35879051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
358828811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
3589962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
3590F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
35913AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
35923F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
359315A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
3594DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
359572F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
3596D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
3597462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
3598465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
35996BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
36008AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
3601AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
360253FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
3603E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
3604E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
36058EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
3606CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
360746526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
3608AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
3609391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
361055EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
36110D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
36120D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
36133AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
361422F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
36155DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
361620A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
3617B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
3618AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
3619CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
36207277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
3621B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
3622A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
3623213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
362457CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
3625DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
36269438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
3627C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
3628F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
362954EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
3630C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
36311D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
36327BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
363372A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
3634DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
36355C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
36367D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
3637EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
363862FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
36390DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
364094E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
36415380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
3642D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
364374CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
3644159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
36452884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
3646D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
364740AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
3648DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
3649CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
3650C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
36511B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
36527B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
3653D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
365437F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
3655357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
36566393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
36576129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
3658686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
3659D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
3660EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
36613088F8D19CF2364A329162D39E166AC728B15800222E54C40FDA8B73C48CE82B
3662B2B3E7EF15157FB4510BCDD7EEBBE3FDDF708EA08540D94827AF3EA1B210446C
3663DEA9EE0EE9B4758863AA33FC296740F0DD9B42A45861516AAE6208F189D8CB8E
3664BBBDDBCC34B65A7D17B8BE932148C39084A9C71516582BCE25EBF7C1E0D84314
366545B273AF903055D53313DBD159BB698038A397AEF418B4446739318E8D273642
3666095B1E04CC60718A2DC2BCD99B34202878786A58AE7C2F43D985874AB8A3F204
36674DBD4B9240EE96F0487CB687830972BF302F262C6381B2C79773EEB152B712E9
366834E8229E0B59788EB9B9FC1AC1E123751D1FF032610410F0847E6B9B9A575306
d37a4722
CR
366953FC00ED82D0BDA8EB008F2380FDBA06D2F8C0210A261508BA95DD600436E0BF
36705E8A00CE3C92859961557763D413E79CDD37FDB07131FDC420EF525CC0B5377F
36719772D3876DBFDB57FE6275D187832F2B7A635967B201E70B532E85838ED3874B
367282B36AB9EAB7DD4D2B5C4140419CA04E87316E802CC93DE6336C22FEBE80C3A5
3673D43A0F808E5E6A17F7BCF812FF5EE5AC1959E07F36B24C9192E375FCA3C0A84C
36741D1DD2093D4F151B9FEFBA90DB4E94A1D68E49DF5A715A5BE04E7B7D8C384D61
36755DDD71F057FEF51DE7D002AB3BFE0096C47EB3AAC7B89EEEB9E2F9CFC6BCDFD9
3676A438C1097D5253E49DC0DE5B6E8F976AE8894914BF8CAB5236C8A3BB2A437CE6
3677374D96AFC592F1238357817E1F2836EA763A3C0DEA2DD3F7D758BA61307C21F4
3678796A18638504797DD9A5131EC48DB0D23FC9A3E069B2FECA5B36A2260C6FED2E
36796EBDE3AED119EDFA96B837C56202ADF7F7747291A43CDDED6EB7DB5B9373CB78
3680F6FA0B92BB2C17AD8DA549E878D8DEA681028539E5E2A223E2F9BA4CA09A6FF4
3681EA195F1EAE62CC33F2282888962B9032D1C83EC4EDD832866A472426EBA6080A
368275E02F39CE0421C5C06B9D593022C23D675D7BE879FCE0B20A9CBB394F9D3815
36839C847518BB8DDBF3A89D699C1FA84E704B02BC85D61ADA5E548CD8DBE269A3E7
368403626A0FEE75E116F95B5D31C73BC852C5FDCF524542BFD9D05D8EB4B2A114E0
3685C2FFCE282CBD87D82C1D4E64772B0492068B139B1795E287899CED7791EF5C8F
3686E77391C51552FF08DAA85BC8B9896CB5C792C3E1C4D44E3CAC1EAEC02E4B986F
3687E5059463613DD3643F8DCE2264FA66D712A0DACCF86DDAB315393219F5EBD18E
3688E220AD61CE3C67664615A5F9734421152382E8EA9CBED8269ACFFC37873BA329
368920649A6F684D31BF37194952496E8B962B75B83CEDE72F0DAAB761120B710677
3690F3AECF2A67F512F7C423B1DA012D0D0D44F009346C4953447950F514731830D1
369159D01BFF4511CD0257D5ECC2CC4A859E0ED92627F659547C8F137DC0F49F06D6
369202F624EEBDBC779FBECB1816A88F02B3565A9C3D42E919F755F3D80F6FAB681B
3693585B5A49F62581EDE1D1DF1906007A8926932FE74FA2A94B92026DE9D678EA3B
3694ABC3C2EE5A3757317AD5F5CD361A511F4019CAF77C46C8FFE4615CD6CFDF7F8C
36958CD06F1A2DDBD3BBA03FBBF8DCC898EE71E7D19CDE66971150359310D0BB68B8
369665F3E41D34C8D063A71C27B6C0F27753A9E35D291477858E5B734D72C40C4573
3697203C5529340CB56BC00EA0E02B3DB54173E6480D29D957E6735146163980F0A8
3698CA4086192E6095F411939DD3FF19854F8F58B39A23D3ABA22BEAE05C4B6B6845
369998968C08559A037DE955F77359FC39249C1149BC4634D10DAABB086A23D9A37A
370073A61EAB63BE3B1A8D8E76ED94E731169E892B469056757EC885D8AC4FF50E5C
37011D80EFE20E40E26006953C53D765B3BCB4C5396646DB3AEF01F939BD163ADD87
3702FEB1E55A73722A0866DEC922EFF8B06AFDF2FC742EB1CA422822BB378310A994
3703794062BE62D5BC4D44C25655C902F4FB4FA63CE21E095E4DF3723CFE7D2D961F
370410A715B194ED855942588BDA460A28F1B5D849A34D85756CC8CE874E2384AD9F
37053A1C348996EA94927BCE9715A8B229C0D7FCC2C07592052796D7BAE23DF895DA
37061CF991E912EAC97601FD79F35616A1F23D82647BCB49C360740CF010CA4E8ADF
370797A9CAC032D12919CC167CA4C2E6C60EBB4AB87C8F2BDF71E28E91A9BC96056F
37085D905902AE964E5336CFDACC8C5CFC5607D75CA5F364AB8E9A65FD372BF15FA9
37090CE1519CD7DBF31F92D2A078754E4BF90F3121F6F698DEC238404EDDD4EEA153
37100335941E4EB8F08DE0104FD8633BE277E9ED26FC65D28FC1D604D8504B2F788A
371111E2206ACE8AB33D14CE9D4CFC917008D44AFA2B1877C3D42455593889867784
37127CE696EABDEF95872F065DAFEFAC253F367D47127CE76FCB85BBF0684DD1663C
3713876E68EC35B21593A10EA5553311880B8EF744014CD1ACFC067FDFD46978BA23
3714C86FBA05CEB66E67621680BEE0ABF82364D4E3235A20033437C6B84A71FB34E6
3715F8A160AC477A1302B4F98D00FDDB2A35ED9B315700669D9D8A3D254F786316AF
3716882CAC6555A766281A0836CD45D8CD8245CA69729260D54C11DB43032A0FAC0B
371705869ED0A432CEF854FE665BACB0F780C9123B4DA1E1895F8717DDE4A58BD3FD
3718D214195066D4587463E839EDF667E475BC04EEDAEC41422AC9BC27C238E88318
37197DFFED5D04AAFB1F63AC651B1A4113B7CE9838ABAF75632EDA8B5EE0C8474678
372058898AD595ACD99029DC34EB4BADE834C04444941C3D8280B93951A9E8554EF9
37215F0FAA218DD8224B94807CE2D8DF7E4A5E2B28C44A551DB0708B5D6D5F000B96
37220422A8E953233296B6E5EA698921F1EEEBDF0C5CC72263663895940B4C1EA28E
3723E0E3AF21698D5430D6495E32E0D5F5E538EF835FBCF4A96DAD8F011B145584EF
37241C33809372DF602D1FB3D80A4EAB65897F672642E4317926DF178BAB6F9851C7
372563613B3DB11FF07F9C7582592B620C7767D005D7B0C28AF2D309E6CAC222055F
37262C20A58AC1B407641B483D571B9E959A3AE0DEF316EFF7A4514D5313C47AAFBE
372782CC583BEB32F20E4C3A5650B58812EF357B68F26882D30A6BBEBDE64E2FD910
3728AB8D974CE5C968C7D34390529F4714A9F1D2373DB1D912D418225932541FB250
37299C74346749DE9C5662B1C40437E783A78A283AD6EF43B2C111DEFBEECEB17ED7
37303630AE404B310F1148C82F4969A794D945CA5E1C18F39BB6F9C46EDC8BC3C88B
3731FAC2116B2338E1AF9C975ECC8474BCA351E3FDF89ED4352FF6A3D6C7EF7A7BDC
3732DD4B2DA9E7C77F8A6623B670963D2B9B9A80F8445E17B85194AD45E02FF10484
373385E0A700BDE9F574487F9494B424646D48999EA67D469A22B9CB72123F31EA5E
373451C07370BFB1C5EDB4ADE75E7111A0116C212920F1362353BF58F33D7E8EE680
3735DBF8085B46AFC40ED9FFD7AE756CB267D0F321FDB71F2DD35FBD3003E91E2758
37363DED65748BE5CD0D2D244E8FA187749FED44ED0C71056AD954FCF656DE28E70B
373793A79EB4D7BD59E92911EC64EA794732A79B9908B7C6DD42C99BDF07AAA06E07
37385CD6497C489BC56B09E44D22D0FE69521A9BA20ACBFDAB8EE718625711BF479E
3739512FEC4A8F9EC7CF66D4CC44E2D0EA1235BF17C3D0AD6859385CECA3D4A640B0
3740762D325D3A449BF7115CE8469A493C494721D6636BCB9C55ACF1D0F3489E5534
37414A76A8F3E3AD6252D8CBD3EDFDAC890A7B497286241AFE35B2261B66018A1523
37424B9FD31AE07A6CCA6B91A176BC38BC03F97D71F80270E14B83B012FA5270B7B4
374373F889DED2D4BFB24536E495F96BDF408E3840AF1567E9960A4F22F0B749749B
3744C156336BD7F349F2F82CE54B459462CB7C9846CC090E752DCDC871FF0873076E
37458885B0AEF490DB0C9FA98A8FDF84EDFD52AB0F992EEB236A79FB8FB52718EBA6
3746E0D586512F81079D468A75336540163B966670B437304F3272CF6E49252662C6
3747419E8B2B14D240A1DB0CF6EF14E024F9D8C6882F865D7E007B46DB65E2E6AB1A
374822C5F096B255E91CABA7C441A3149FFB4E19BA97E5D43779C2A80208E279A91E
37498B8A281C079B819BBB6A5B1A62F34D59B7223D9FBB5F5E96F0D9AFEBD3CE3D57
3750A4C4D2345776FCA140EA95242C8AF1EE7B93D2676209B750ABFCFC8CAF50F578
37514C364CF8BC46839A4379624D56B7B917743E9D6A284E7B315D461ED66B262413
3752A9AE1741C633A92061DF92AAF78A18586CDCA41248C586F7D272378F9CA76980
3753202A391CC9FD46794140F06CC75AF2F4986D690939E083CDF9B96D066B1EC8F3
3754DE3B68AC8FAB84970B1A199B3F3AA5BE27ED8119F306CC5F26230C16E9D9FB31
37551EE9D3F5175E4D4D7A8A2945000C37BC73816AEDE6F2AC0F09B788C9988BA69B
375682CF336482F490F05725696EB080E460FC03B3E28C1B3613C8E5FE3DEA048D97
37574AC72C9955FDE282FA8C8385B30E3A7EFE247B48B370DCB439FA721BED19AF4C
3758FDC3D3543A25A4E0273419B6CDD7209FB336C1542BA56257E5D31B70529C12D7
3759524617868F4F3B49799322EDF504750D1BAAE307ABC4843704B64ED8AD4996B7
37605193CEA660390527734BF1448AC09998E70FF15BD70F8B6388B0A987CBC783FC
3761990F7A5EA016EBC024F12BC9812C7C4DD6E991DB89415A49D0B265E453732F4D
37622B6BB50E995E719B00DEBE74E7D1E291A739C4EAB39B5A61763DDB65BDA6E1C9
376317C49BF1A76546BE0EDAAA17310AB2D01BDF059B066263C8FFBDA53281C882DA
3764E2DA35ECE5B4454C8031DBECD8675B60E54261A7D1F70560C6D8CBAB436EF058
37655A0189426AF00AD7EB43FBD13976D8D769ED2639ACBF613A308C941CDB5A632F
3766F76E14224909A8E7E45B9B5A47BDC9B7B3E3616AEC4DEEAF2899A59B6E144802
3767534109EB0E3ECD270E417B2E9CD8D27DE637AC798ED5CCF791061297A0B218A6
37681188C03BAC8DD8DD783BBBF8C4C9AE98E8F1EFC4684CA4BEE6D533458BB229ED
37694E31392DC4591DF2D2D07632EBEC0A5FA2C4508C1FD48D56EE871EAF4A84AC07
3770A1E34CA2CD81ED369043998A23DD01301D41C582963F07EC3417F09ABF45844E
3771A74F386BA813F0AC462FE268407B9D2A8813FFCA604C342CE82493DAF631B2B3
3772B6D3E9F3398761C4B958569F0D833D27973B07F9DA9D84AC512C284844C04866
377374A325E4ED894F640B8F802097B7C6C4F04BBBC8A7BC6EAECC60EBBF4E676A30
37744A5D0DE4AB45D0C913CCEEB8032D1946A35928BFB0FD76AE324E7E3CEB5B99C9
37750A0A6EBAA6F6D8E4292F9C5408D3859CFDEBFC9413032FA1A6E194C5F616A3D6
3776FB0FEB8966534CCC9E6D67DFCA105E8994810D8EE414DAFC80B8A95CAFA254CA
3777CCAA72B84130B5E485529013A35040074072A8A63B2F4384D976BBFA0A743C5A
37780A079A2CD15E598801AD121303CC37A2FD3942776FD1AA0805BED2B646D4D1CD
37799DE65CB859735EDC177C5A4D1A54C3E8BE7A91BCA91AB93A9DACAC90204CC207
37808432E95B2C47654DA02EC1664566E2137860F16F798E0A1EFFC819F4304B0FE2
3781AA54AFE0AF6CC26D417B0CC9E3F5F6B9BD6DDDE6A2D7FC4C840E4AEF73452D16
3782241FF01413DF2125BA3563B3A49EECC8EC4D0BF06283B3C8242F362A546E71B6
378321F3C6DA63882992A14E295926387D66EA6D9F296455276D4FEF0CDC706FBC25
378457169AAF546A1BC72114A3A6DC3A1A76CE001962D771C267864A987188BF6087
3785183573E3E9DED10D7023965D29F19C8950B6B9B83E680010995360E54911AAAB
378644D07524518EE59F58E49485E885F56FF2CF8D30FC5779770685C305AEC4262C
3787B8C0C194C26F5E122DF5E4153316C971460C3B3B336C1B72
c302751c
CR
37880000000000000000000000000000000000000000000000000000000000000000
37890000000000000000000000000000000000000000000000000000000000000000
37900000000000000000000000000000000000000000000000000000000000000000
37910000000000000000000000000000000000000000000000000000000000000000
37920000000000000000000000000000000000000000000000000000000000000000
37930000000000000000000000000000000000000000000000000000000000000000
37940000000000000000000000000000000000000000000000000000000000000000
37950000000000000000000000000000000000000000000000000000000000000000
3796cleartomark
45c0f7f8 3797{restore}if
c302751c 3798%%EndFont
037a8b7f
CR
3799%%BeginFont: CMTT12
3800%!PS-AdobeFont-1.0: CMTT12 003.002
3801%%Title: CMTT12
3802%Version: 003.002
3803%%CreationDate: Mon Jul 13 16:17:00 2009
3804%%Creator: David M. Jones
3805%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
3806%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT12.
3807% This Font Software is licensed under the SIL Open Font License, Version 1.1.
3808% This license is in the accompanying file OFL.txt, and is also
3809% available with a FAQ at: http://scripts.sil.org/OFL.
3810%%EndComments
3811FontDirectory/CMTT12 known{/CMTT12 findfont dup/UniqueID known{dup
3812/UniqueID get 5000833 eq exch/FontType get 1 eq and}{pop false}ifelse
3813{save true}{false}ifelse}{false}ifelse
381411 dict begin
3815/FontType 1 def
3816/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
3817/FontName /CMTT12 def
3818/FontBBox {-1 -234 524 695 }readonly def
3819/PaintType 0 def
3820/FontInfo 9 dict dup begin
3821/version (003.002) readonly def
3822/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT12.) readonly def
3823/FullName (CMTT12) readonly def
3824/FamilyName (Computer Modern) readonly def
3825/Weight (Medium) readonly def
3826/ItalicAngle 0 def
3827/isFixedPitch true def
3828/UnderlinePosition -100 def
3829/UnderlineThickness 50 def
3830end readonly def
3831/Encoding 256 array
38320 1 255 {1 index exch /.notdef put} for
3833dup 45 /hyphen put
3834dup 103 /g put
3835dup 104 /h put
3836dup 105 /i put
3837dup 108 /l put
3838dup 110 /n put
3839dup 111 /o put
3840dup 115 /s put
3841readonly def
3842currentdict end
3843currentfile eexec
3844D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
38455182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
38468B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
3847EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
384802CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
384946E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
38504B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57D05DA0555DF933BB0
38517B42D264831116C06C79335D519461E7B0E870A6715E3D74A08D1BCF86E3BCC3
3852A43FC6BAD1C68BD9D4AFCC06D845FD1F1E70D7A47F0BBCAECE8396E04591E5E3
38534797F646AFEEB7DB548183F0B74C9BB6BA2AA04E7F5950EC8AE97C741D4B2C5C
3854A8E7A8DF5A36A30B5A7592D95E1DBC63EF33C92FE459792CED29E2B8B6919251
385575EF62089BD7D44A6E1F9B62EC802FBE62B821DA1C3B2DDED45D27964AD29ED0
38569FB7868F3A8FEADA87A8E42D52C1EB7229D7C79B60BDA263F2BDB025AE14A507
3857098FA274206BACFB4A0A7257D5998EE8F0FDCA79CB61DD1FC59DADD11E16BF02
3858ECDFD706CDA1E72054D4EB55AF7BA9F19955886BC0BD6E0E3FE3769C94AF3581
3859DFB2BCD67FE2892AF07E858A01280194D8DD7332B3D0A585C87FAB056C2EAA9B
38605AD48D1C9F00CEF8EF0D1408DBE1C03D04B231D7B8D5D998FE0CD7EE19828EF2
3861F988EBF6DDBFEE00F04A4A1F4E1A55DED7EF3AACEAB5005F1962C724A017C914
38622936E2E0DF26A55ACD7DD836C6035CBF07981C1BCE3615064F0540A1034C69B4
3863E3908E76EF8925D486DF0B4A8E1F02D8AA99585A7C31847AB9382F83880C1C21
3864C496AB2DF8E7BD4643B28B704B5F6B53429D3EE940A79135F5BF0396E5B46F23
386542AF406C26D12BEA7A41F332AEB75DF43C15334CF4651A99F602036946B1B91D
38664BB0D2E51C20216D892C8173241AC8FD15A37C3CDD8AB4FB67D8565AFA61C068
386795E3D6E46D7C09BBD09428207D506AD43C693F3C3D787F6A5C39084AE45E81C9
3868830900DB50DAD10A17E118FB5E9680B5194716A788FF7514A1167DD1A305FBE5
38695925388A2E95AE46E8806E0F7B954D1A9F70EE29B069A9FEB0349298CE5311BB
3870CAB039C21AEB714781BBCDBF2FFCBE7C4750D7693ED142ED0475EE9DB5D5F94F
38714D4613E2C379E494464447C4167C625D70B9DBE4756DEF299974B704A3C238DC
3872FCD3AD96645559ACA5056F7FD695D2AA709960E30F055ADBDCC7FDF641920A9F
3873A279AAB98424E76D01937F9CFE3CF4E3779650D7C2DC38AB27FB81EB16C19B13
3874D47E0AC60C83641CCC1A00136625FE274C6AC706B516CBF14C54000BC2B7BD20
3875A28D40FCD6D9B321855BDA608E23BD365208DAB23983C0D8A7C9DDC28ED62216
387612A20A3068D843B5FA016B8C6B9BBD36356BF85A128F96F0CE861FB9C998BB21
3877E8624E3DE453C686D41DA7B72ABD919C5BE2F24440D11962C77742A8C0115A72
38789E974E71247FCD58318A4347813D4D5A73CF882A7513E2EFE05CE8C7195BDDC7
3879DF250B59AD14D02D2991E2D0CF2D0022EF52D78F043D6D7FEEC3E77B6982B1C0
38808CE51E4D3C8342C08ABD84EFCC8239883D8E66CB0FB0BFE8699155B179CCD63E
3881884C502F7F0496A01360C67D7A9BFC8533346485646AF058A743472B3276FB96
3882EC4C82188A4A67763ABCE6AF7898C3B924A01118DCE34C77F22E62BB4C4CB561
388375C93226142D43D5ECB9F43C3A275A52F9E5AE4C9BB9E614082AAEAC5E7453DE
3884B3F71F9FB747033E227E84E853E75E79771B71495CACE8F911329274CE752AFC
388546C993132BA8CF6B9DA2CFC11A0BD57C9A4BC11B7A6D68A4C346D9768E6A6204
38864227F51932162DA350878EF80D0F4084C82CC61F3223010D771EBE7DEC1B80CF
3887327393AAD4C689BF6A791CA2925878C51069C4F06ABFA42B66860082301FCA71
3888EA52BED540116A9B12D9741A4C078F207F92B78923C7965A47A3130CCAEF480F
38896B4AD58077FBECC4F99F53BC1F4F24CF3777182A7ADC32FE3260C774E5244912
3890470697609A0726EECB72390E6C5C5A1204521D45316989E3C0B4D398958D4363
38913C7A4524B500241161C55C4D8C4CB06034BD825AA2CF2A6895BB9A30BFF00422
3892553E4346A53B271C70DE5D0A5AEB92F81CAC1A0E75E47229AA80C8DB09EE3B19
38936E9D3EC0E7ECAB7B879C652282A376C52E5BBF5D4BAF051A0A995460B7F427E9
3894521743E74783312E8D7100DE1F31C1C7C85DA33D8D0A626E6E6184DDD538EA7F
389546D50247225E036DB3E6072395C88026D429659DFCFC6416D22A9BE285EEA910
3896F7B1B74275B8B043721A829F2D4FE6140E5AFB78F0CFCC27FF27ACE773131462
389748B271781695D31C909FED024B2F3220C206B63601A1B02DBBE2C5D94D027982
3898F9E7EA6D4B0A812D28855CF62D372A040F138069F7C28BE3344262EA72795CAC
38992CC8E21D1A666ABFED384875FD2D098066FF0CD902AD6725AECFE61B2CD83860
390082E587B8893F5E09B155EBD813030499E534C050D6902E5F8BA296030512ACCE
3901BF19933ECDDA6DAAA1848686DAC81EC429CA7AB1A73B7DFEC0750B404F601F1E
39026755F07C0784A56E403C5962905E9147E44E8042C3858E4A91F7B8A71143263C
390321DC47E481DF1A38EC4A9F682FE059FE80F257576FEF3A3300A36BC27273152A
390478019783D0BC34AB29353EDAEDF48FF6C5DC27C1633CE1CE2C03509992549B87
390575AE1100939A6A2F5AA2BC7C534357687DA72129B9C9F2E511BD95452F10DF8C
3906A698CEE0BCAF726111B63C4838F05AC5B2EB43D04115145CDBF2EDCC1EFAB612
39075E35EF5CCC5F4296536DC96F1326B86C65DE657BA06E5B97BB7C4F8ED11DF9CD
3908969FA4302F06A5D43B48D40D3DE360F6A7B8F329022CF5B13A33980E8BE54325
390917FE37C9D78E73A74B5734231ADF0594A2E5F2DAD9BCB682A0F5C59507032DE3
3910AD0C62E50C258F1F820ADF788D6611CBE6D1988D09D07F8813D6A3EDEBE034C8
391105F7EDC5DD2E4C15B60FE9284E267C8F7DF53F3CC13C131201DE819049324E53
3912499FE93874A92EF07AD0121B8FDA88F7D60DE52E2B20AF958A77421F221F8B29
3913B2188307F484E1832988059E5A68C52AA7E840D805E646F17DFFDCE1A2A8C0B5
39142CF6F218A06EE1E2543461030E9697624B086FC6619205C04230CC8DADA60721
3915F5C4622673ACA45BEABBE3941E7F40080D652567DED98AA3404A4384DA3006A4
3916E8A9298AC3FEF04C92A273
39170000000000000000000000000000000000000000000000000000000000000000
39180000000000000000000000000000000000000000000000000000000000000000
39190000000000000000000000000000000000000000000000000000000000000000
39200000000000000000000000000000000000000000000000000000000000000000
39210000000000000000000000000000000000000000000000000000000000000000
39220000000000000000000000000000000000000000000000000000000000000000
39230000000000000000000000000000000000000000000000000000000000000000
39240000000000000000000000000000000000000000000000000000000000000000
3925cleartomark
3926{restore}if
3927%%EndFont
50fc6e33
CR
3928%%BeginFont: SFRM1095
3929%!FontType1-1.0: SFRM1095 0.3
3930%%CreationDate: Wed Sep 12 2001
3931% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>.
3932% See the file COPYING (GNU General Public License) for license conditions.
3933% Converted from METAFONT EC/TC and LH fonts:
3934% ecrm1095, tcrm1095, larm1095, lbrm1095, lcrm1095, rxrm1095.
393511 dict begin
3936/FontInfo 6 dict dup begin
3937/version (0.3) def
3938/FullName (Computer Modern Roman) def
3939/FamilyName (Computer Modern) def
3940/ItalicAngle 0 def
3941/isFixedPitch false def
3942/Weight (Medium) def
3943end readonly def
3944/FontName /SFRM1095 def
3945/Encoding StandardEncoding def
3946/PaintType 0 def
3947/FontType 1 def
3948/FontMatrix [0.001 0 0 0.001 0 0] def
3949/FontBBox{-188 -320 1445 942}readonly def
3950currentdict end
3951currentfile eexec
3952D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11
395369C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB
3954CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89
3955F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3
3956F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C
3957EF25195F68A2A98170E48759F33528B839DFD4B92DF0482493852D12053A7904
3958BF6E144B9488970F220C299E80886366662C1276120E72472BF84082B9EEC729
3959F7007ECDC5A850C88810EA679DABE81714004E65D938DA9ABDF29C949A52EF02
3960EDA8451563235D51286E9133FFC7A27067DF0332ED614AC2D4FAB88EC84E6CB9
3961FAB41C933E84B88097BA8742BC30A81416D1CAA3545F08E2554B28362B99B79E
3962FC42281922B94604AABAF5F7A9B8E2D9A4358F38F2382EF9544B859D098DF243
3963034CC475CEDEBF0EDD0A60C907127BB32F7D85A62A44E90B4056D9B4B2FF3A49
3964786032C6B25794E2C0003C7852C6B0688351FBFC43300FB0B72880BB7B58BB61
39653D1064E7D4DDB128A9B38EF7510B7E5F82BDE39489E2D1DF08816781B13836E4
396689390F84577F31776FE43A5F94F817A4AA4A698AA4AE84B178FCB65F1B5A5CE1
3967334417595F6E40849041565BAA497F6E4B8F4305D849128C9A26A98B909EABE9
39688F2659189ED27C588ADC7C744712B4D9AD0C5DD25D1233E979DE7F53C5F1C47C
3969E9DF254086E5EC70EBC6B7E080060BA72F15E6BB75C75011B15B7ABB6BF761DD
3970428FF1BD688938C75BEABA7DEE2AF49364D2E198FDC7F8FA2313BBE598ED3703
39717ECAAA4670BE3A85C693ACA829A5936778BCDCDB38A5981D4CAC8994E2B2F086
397226D8793AC1393D49A8F2FE391F0EF8899F63CFA5A77BC739C867C6CFB9A226B4
3973620AED34573F068052604331B7E8E1F0C3BC0BD7DF733F056DB8C3F57E3035BB
3974EC82DF5B511453A952D429AC721A4F94D5C9BA5B83545948643D0596F4C6C9C5
3975796BEC7B26EB9D729F337E0FDFA91E5955585C330D0C4F193FAC870A28CE054C
39768942BDA170717B7AE9927C936DF0076507F55CA2979BADD3EFACC0A599933EB6
3977F148BB7C3D61066CCC93A5856D253D759F30E37534743210743F0D53F58D0B45
3978463F053E19A16E5A1B111915D1E664802F8C6C3ACA0F1BFCF3E209D1FD6C79D1
39795D867E142AD6E69933768274F4E2AB57CC518AD5A1C120887EEDDDF18C291BE7
3980B3DB17E8FDB124B11B6142DC60F560DDD668D700614732F3FBAC4637B9F41361
398154CD2D8757A9D9BEDD1EC72FDAAED3CE4A1144F1E919FDB952BA7CA1E3D31C3E
39829E434E2E44E7A83AE3480EBE89E0881584045E4AA5814897382EEE5FB5C9410C
39832DC7A2136551DE2AA713487A77B911A7E7AEE41F0BEA1FDAC1950473B1394479
3984513741DE60091BFB9751C780D99F2DADD5AD8283DC9CD1C81B902C9F3C9C3EB9
398555608E09D6DD423540BCF72394A24F81135C9D9063C0F4441BFE0120E03558D3
39864A16744457EC281AB2A60432C97DEDD16B2F1FF4C1A90D72D46C9F9BE984C6E3
3987E239F98B59A938C2A6490889B437CFC21D923572530E41B7567A9C7E2464DB2B
398818FAF3EB7CBFE7BED6E77219C0366A7D54D469CE3FF62E75FCA2ED6A46F3E5C4
3989489992EE1A42C19DA52F0CB2B1A6956BB3F1767B97FDF225685FF7C9E9243497
3990144D31ECF634CABABB79E323CFD483BD7A7B0C2679A9C3DFF0D44F09F084CF3E
3991886CBC91C5386A266730CE2AF3863534E2450583F6ABB520C27C4EFEA01EBC8A
3992F019D25B7BDB40CD6712D7DF2DEBF0BC70A92D3B64D1FDF723DBF3D4AE939E96
3993D93646BAAE0BC57BB244AAF47ADE59A5228F057192D917E2BBBF588335E09095
39941CD4AA406C1D10C8EE6812DA676A8FD166461064BE4150CB95C41FC055FF8FA1
399589A4BAACB0B978A58EDDDB0CBEBF6566D47CC0AFC93110751B59EA33AB5D6EAB
39960DB9A65CB16A053495F06B0D49A70BA8A7826EB571B8428AFE5EBB99AB9B56C6
3997F69DCC77C25BBBB53FF25C5DB5CB8E742E3C0BFC25098B4CAEF12D299C886881
39980D4EB71D637BC0CD4D63BD6B4F5FEF9B083D95C34FB9E7BC9FCCAC0B9C7D8AB1
39991816B17AFBFE1DA146662723887E435E17AD2E2315AD800EBEE700B3C12B50EF
40004A48C2839AB4BB367E908F59BB5AB88635C3E1B89948BE9F32EFEDC2E439CC79
4001BD9754280477F7C982850438092D309C213D70F8D476728119E8FA03762C22B8
400289AC2A2A7C0BEBB0C91CAA95BCCDF91AA918766C82A978B7313870327F89107E
400311A44FF02F597C8D4B085F6D7A098233ADADA521CDF34A78081F8965DCA615FB
400455DB12C1E3459E49C273ABD2663B13447365C9C1C52E192282E96049FD58506F
4005FBC9507DDD77014C29275D1352CD5FC765853E858A5781F2DA41360D32FB5A54
4006D04E088FD99F8C01DF740E587AACB0E431E03E170CBDA9FF1FCDE8D9FF5E43A5
400773166AF5990B238122AB322F709FEF2F0E2FA7C04FBB62C5383997BC9CFAC8EE
40083FAD26E788DB37ECB388CD80A7D861AA9E9199E7BD065BD7A4D21A0D56DA9323
40092AFAE158CBB662283EA7310D32FB5A54D04E088FD99F8C01DF7535A5156B8344
4010F1CCDE84A46AB2CC7F0CFD113074A1C4D90758EE58F61589051A0150121A7BAB
4011A636171E6814A1398DCB9F13FE9B11ED5A5F2EEAC14E0C831B2540D10BC0EDAE
4012833A83965A33180B0AEA361848DF8FE8E50DF6856F1D10C8EE6BB5198CFB7607
4013B6B044160CBE8D4CFF067DF3579918B19B9128C2A83512FC0567CF47B38961BD
4014CC60FB8C6330A30AFEA9B276DA89313D6A83343298F34461B13C382575BE392E
4015F94E3EA3004D6D37C025DA3F1846E41606DD510D2C7D0BE9DD194E46BE7CAAF7
4016A60D496CE85D2393457C50B2D586E010C7C4C7272F496F0CED0084EA956455F6
40172EE57D13B6485B968190360A3E30210D2664BF91C73AD1A811651CAC09A9DC0E
40183A328E1DCA16082699B41A3D533703E58E366E871C982F262478E41DA3483028
40196BDBF03E444C6F0F4DA2CE9AB049F324F887732D21C4BF9C5365C603C9971CFA
40207E45249203329FB9B4054B163C166E1322DED12CAAE39E289C126301D25076D0
40212FD409FABA5247D7A25945AD5881E18C2DAEC09606228CF925557DDFA155400F
40228D446CFB8AD19704B6C544CFCE47ACCB854A74DEB5C646318679DD738987F800
402396844722729076811B5054DA998F9AEBE37DE5068418F41A007E645599C0BC21
40248363573C695B3F68111CE4A6199C8BD40D61E46A153C3C25D0C7DC125415D125
4025D0C6130BB6B603ED78153E0CFE7384F7481FD4EDA141C27898B3636398EFBBC1
40269E81060816655B2F7052016A4C72A6A1CDB83BCCB2EB475A9BE17EB08A5ADA04
4027CA8AACF6FE68BBDE580243B111BE76EC06E70CB7751A8B206143D0134BF52670
4028BB3F44DD8AA7D26283A483CB46286EE0A9BB4FDB0337342BBF362C236C30A120
4029D85812760265E3B283F48C05E78F47CF5C678F54658A30EBD7AAD5840F3C7B9E
403021D8CA390CFD164792FF2040E07FA087FDA110A93430C7FAD65C951AEEF79D91
4031FC25EC950E250511BB22156C2886A249CD442575934D385554B2B4534AC28C31
403243A657DC937CFAF3F6C87EF4F2826BB02C41DB634D91B70BCCC4F83F4C32796F
4033C5664490597DA5F2CAC7C0013B18373EF51520DFE081F95E0C1693D02E39AA2B
4034E356FD312C233285B2A8C8C337504C1EA7E9E1F6BD250B5874842F68C92DA11D
4035F74E6068495709EDCC6E4BB3A96AA3A4C89411FF06B66DA03FCBB052CF5DE837
40364834FDB84E2248DBC10CD7454636E97E399A7AC5A16A2191D763AFC09588F5EE
403757E80130CBDAF18FE2F530BDBD2CFC21D684AF84A8CA37BF2258C80CA61485BB
403827EFEBB52E5FDDA77E57AC8EEB3811BE2BC948A926FBBBAE974D9CE89333C945
4039A9DFE37E5F34BA68EE97019BDBDAC7482826B8F71EC51A777B64C52B1C37326D
40401172F83F6E4DF93B37E66CDD6344810758B10B2EA8C68918DBDBC72F8821F1E1
404196AB78288A2E00C2E03FA05640009DD0EB0D0D318C6A726DE5D8F2B1B035C658
4042D09053A4B27B18F18BE4396C900A730908D832F3E8A21C36E32F2D603D0263C0
40438EADB43290CC59C43AD57D357057B13C9ABE55F11DAAA8D78574C430939CEF9E
4044FB36B462DA71CFB6E86C72ACAA04D5FE4732AC386F52D4AC92C47F9B11FC32E5
4045B188AF2890EE3786AE2772D2FBC5D75A7FC59B0519F32D930B71AAEC8B88F1F5
4046DCBACC2CBB9951DCC8F21A26F197A309C26ABBC4C25E3FF22B2A511A96F0BFF1
40472BD9AA37DA5DDDF261EAB0E48C62DE0885B8D074A7642D59C8E216B5F0A8B327
40481794E0BA5B672E41832562DE119AC5DA1AFB74AA66885ADB605AF60B44C1D904
4049EF85F00E1F143A19DAC00F751E77EE62D394ACD26B463F7C7EBE4EFD40DD93F8
405081C2956C4250F5F28207671D7AFB3AC09FDD0126533384CF1B2004F31E053135
405144EDCAD0114140E52B7E153C354CF3F2BF37A15E2D19A2ED688710B6F9F83C5B
4052BA14795934112F7963FFD217F016DE82353B915549CECBDF7BDFC6FA4F7B74BE
4053E202170C9F25C7448970684BC555C8390E34A5098F55E0B003B841CAE775D48C
40541603730AF8C091C0622640AC5A0B46757165B44F0AE1EC1072DA26A8EE0DA335
4055A6BC8AF994F5508921F3D9E4E09B375A58ACBB9E6B0448903E19A5CF2A51F619
405681D2A539A4556B9C25722D4DFAAB480586C90874DCDFC2D70716B18572557BE9
4057E9CAB7F5A3959D5419DD9FEC22D015EBB5D4BB5CABE110D76E8A76D6EF3513DB
40585C23D3AE05BEFA77BF6B4ED5C413E8DB87B5ABD1B2FA9B3BF37A81C784ABC42B
40591FEFDE6DF012974241B33B67AA67FA38798336F7354F0984D612DBB455D0662B
4060C8F15F12DA07E391480C1A150213ABBBB0F2927D223D5752B69C930053655C34
4061FC487DD271A8AF594F457F6A083C4150686FBCBD60832E4E7D0D4987CAE5484B
4062CA81A230A21F9C49DFBEB24C94C93ADC954B9B3B3EC484C502BD0DFD605F6D5E
406313158237535FA2EADA044ADCC1E1AD42918C8C67320F6621369C250D5335FC05
4064AFEA1B294EA5D2A6F335FADB80CB26FCE9EBC0A4EBF72DD47806EBA23C3BCD77
40657F175E2041EA03E2F0B2BD2B81E9A6DD43BA3486375883C30B8606D917C678B6
40666E567A92A0E0DE89BEE5E5AC45C9202D46EED5E045302B71EABAC5FD997A9A7D
40678F522B2CA316B7FDF16CE4981DBC25E4E2FCE3981324B16A18236476FE242584
4068AE70C683199B7647325D295528EB7CB15A7E3940FE2D248945015E9DEEB9EB26
40697012041740F5A2A6C7DB7B2358EBC0358E9385E734D208957ADFC7DEF83F5E5F
40704EDE55E2F078E994312214EEAF63F8D0B481C3D523E712901AD838AF2D840055
4071E57D34F8FDD4C842D64D3D94B1CA46CEADF497A2FC75A45AC59F8696DE49672E
4072E33773AEB31A204F01793262E820E813949115DB90A7C798BDDEA0D5D1E699ED
4073753593F2B6373BD24D4647CF35A448037ED5E72DF3175DD6744ABAA0E2E0864A
40742F4EFF3B07B035520A598CDF1AA97D7DC3057414513DDDDE40C2A9DEFB23631C
4075B2291ECEEF4D18652CEA451BB1559C0743FE3205BFB6711F1026A613D244BB07
4076DB3830F07F32EA637775BCC1B2CEF0C6B0D119AF6CCA17DB1B03AB1E9281C568
407733502239B067013D261BBF33358AAB8803C451B2F570EC34BBA052170AB42F95
4078F9386DA11A2C7BB9C05E8C9FDC96111549EAC90DFD8DC906C03F0281C40EC1BF
4079EB6B15455CF32FCE5C7DF6F55C91132223FD13FBD62A787EB15CF3E4E6E59AB7
4080A529DA186B178CC6E8A4D876794527F3AD72FA86B7C2BAE14D3E5A41D8F90754
4081AA28185D92C9ECBBDE4EE53E2BBDF05AB4C9700C1367B3D81FFC1AA34A79CEC1
40821CA7D422CB58C8E21870F680E48EB1B2D5A30D974A7E9B24DE13958976C76225
408345415635E32FF316DC4A69B3CD5EFC6EF5F845C8E24C92166C9076691817FA6E
4084AA5D1F1CE12235DEA3902F3C355CBDA5CC344376A5394AAA7C2CB50BCF32DB50
40854B6D9BED63F0A8928C0C06829558B714FD54F355501EEBE29882185A6CA1703F
40866AE65F03CB07406324CCDF00093EBC76627A11A84B5EDB688D20DF49616D8D3F
40877491719761E7627CF8FDCFC0DD2265160BEB33ADBE3AD01E7464370E3E0F9D45
408851FC9A87C678EAE5B16A564333DB11687FCB4D1D82C75A2F551FB4F940E0C71D
408974CFDDA0974D787BE959B2B87FE13DC290C53819DBDC2081CCD16F34F0A61AF4
40903CF53914B713820BF8F2243C0679345EFD56307165AEDF16E3BC771EFBFF595E
4091C6B1DB8B028342D5DA1E8CF3FF4269126B48BDDE9BEEF7896CBA70EC77063CFB
40920EB3C6FF697509736BCACAA7F03C4C326875396F0499B198DAF7842384C36C2F
409336B17A65A1D9FB77649DD78499592C817679F344E0B88D80B8D78EEF9EC6A9FF
409441F4D635520B2269035CEDDCB3B5518D63DEBAD4F365A70533AE119F11323AB2
4095EF07047536DA6370C07B2215C3A82BFDB44DA593C6B3A33BACC38A105BEA2109
409606DC63737E3EB362A122FE90CE8EF37B9C73FA6933BF27C39EBDE137F15AC495
40977F58F6549759FFD86C2BD3A09490AB47B60E204B16910AFB0C18E4F2361AA033
40989BE5EF972F4B52F18548E3CB947F083768C7254FC019CBD8C4DE7E01DFA456A1
4099065EF834C7B146FD395ADBB9FB72B8EABF58EE9E2B2276C87FB83CEAD49BBA55
41007DA56ECA50BE1AE4819EA3C72DBE30F363D43C75287945B0DE47D1FF0283C494
4101EA65527E8708279B3B2437BF1CA2456E260020E4FC0A85BA18562CDB8261FDBE
41020B928EF40F0DD40E215B8BBD40BB5B5DCF2FD9AB4D5AF64F82EC77BFF8C37BE3
410374BB9B2E44C819E84CE2C634D55A9EEB4F6DA28025C3831B601AD254108178F3
41043EC068E78ED8C72AFC5C3BE0BFE17F31A23B55E7158FFC40381F36DFEB6612EF
410533A54D2004D92F0A44B3468DBAC0ED5E34F70561F5E77DA369754685B7F6B04F
4106233454A59AFDF45F28383B05B6120717744B58D2A96BA706CC9317B5E7FD0848
410756665EB38E31C7F8C87B0C65041A5D2E349CB4264523AABF9C10CA95CDD3BE1D
41089923C1A11D046FFC2E82A09E36ED0146978DC383AC6D70EABB20327360CF7EE1
4109DC4DE736760F5CF3B47F7BA082DCBF881ED8DEBC1A4580C287418295CFEBFB01
411051B09DFC98C8A8C9C5F9AAA6971CA95D96A23166E5931F7E464B288F4E357112
41114111BB33FB7F0E042448478D3ED7AAEA57D1B0B4E237F919152F8D9E86229BFC
4112B8D59BF9FB9E0062A3ED67A367669D0F2F8EFEB2219E5FFE7400A9DC725ADA62
4113706D4D1860BC04D4432F49D7F4271376678D381B148D72DAD9012173FF3779A1
41147C4D92B28D3117888C864440902499FF0F9BEAB0C83FBD788E26B0BA47484188
4115FC01B0349E045421E7D912E1BD329A536F61169344F16D65F6B90DB87E22F72D
41168E6F486F8D21E6DAE282C35A2723464F560CAD8B31A931CCA7A2FDB9530769FC
4117BE0A5F66F1D4DBC0EAF834D078CFAFA415F43DC87AC62A1D8913334016B3FF37
411820902A7E5644848A57346228A13D7B1C757DFA9B5FC4E9E1DCB2C2AA2FD37386
411987E6B350662256D158D8C7DCD2F7AB1E02D6C5C8E3ECB1C6055A6C0B807B8FF7
4120997E562EDBEDF7646B64165A55DED91178BF13FD30ADC1A6B6D621B1A7AEE1F4
41212E30D49CF3BD0656F584CECE76A17151913D7ADB223727B47EB3D7F491385112
4122D36848973526DDAD7C1C1C0FB672EC627172D10DD33ADF2445483470F28AF65F
412329CB086189B3FFA31E0CDA710B6DE2B0EE515A46A3FCFC354AF01AF5C5D0B301
4124C8FDEADC6DB9D492554777965E2751A715F8FFB6E0248AC51928DD65CA4F6574
4125BB1E01B3ED95D736691EBEA8ADFCD8265F128A67C372720840A206056F66A7A4
412610E1722E4C1BDEA8C980250F9E034C29FE0F7D2F5DAACAE3173C865CA9C4C240
412749B6D4D0CD90B75D3BC68B8C84605923075A9A2D5D6F7008365E52796975CCA5
412802770D168EAF28C337D45762A08817666907C68142CFAB9D75C4F6D6A73FB4C0
4129748F038F140CB009A24A80270037C9B5E514E04AEAD7CA8468C4D22E1059F2D2
4130EA0E7CA2979C7066F1629B49FDB893DBECF6620FF9C48132297E81F717820A90
4131BDB45E16CA1D0D9C152B12D50AF4E1B2519FBB2B779218C5E42E31FDF82448E3
41325AFC5F90AA018902EFFC4D5A14D4326911F7055F9B7AC5B592E2E2D3A198E2C7
4133F476CB49DBA0FFB2CAAF494DAD087639203084CEA25DED422E0F8A30634FF1DF
4134EE5C61FEEC33D547A17961534B3535AA673AE15F560DDFF08EA7AC126882B57F
4135A1AE8A5313E6D21F67FB6D16AD32690FCE021616D0DB89C51001090A4A7FB515
4136139B751F6137DFEA833004F4689474DE3A8FF64D98EF09D25802C3B35DD2DED9
4137FB5300E4F50E5CC70FAD3A21917D15D5DAAFE30DC1CCF79A359B81AA3F21359D
4138297B9795636C03E483A80D47A4826930854329FAC093193AEE3A19BA91063421
4139988EA0ACD987862A716C42F071140254B72AC91B91911CD6A9D275FD7F6636B7
41404B1B0A47FD39120411E1D5442E711A6C1EB0741C67B0A44C1A2F98C9FF245A9D
41415AE4A04B529CC5FDBABB1C6E8C1590B3CE658EB77B58F4D04803DC351C5645D0
41424DB49D76906E068C3FB553AE91FDFF5F22F734DC4BF8E9D019B06D3A1BB7CDCE
41439101E9D2276CCACFB36B9EC74AD213BCE896FAC45D08EBE43E676816DDA135EA
41448B78003042DA8581975D4C14CBDECE0B027AE87DF28611F387E64B951812C848
4145B661FCC0DF91B39DEF14976D7D00609DE2DB8195C186E376F4029CBACE3AF24D
4146AABB788FB1AC87D58BF341F95EC2DBD14BFF27D3DAD9A06569FD4EEE40C516AC
4147D809E761BFCA049DCD6F8E43E60A0BFE64BCB922D1989CC14EAC1987147A5559
41484F1CA14635DF029AC387BE36036BAEA8AE7DD09D090EBE271FE59FD806894A72
414961C714D6D08322726CAAF168C08CE31F26CDF6613C06CC50DBD59B70DA211B44
41501BFA22AD62D56AD098FFB998E25FABBD89A2C17EB7A3AE81F79C05AA4677D744
41517F412484C16CFB322FABEACF98AF9F152E3217D0F2593D6863E7872C5B6F82BB
4152FDFD09B13FA639680E972DC7B086D7DAAB076CF346814556119BDFBDC3A16374
4153E7B92CE50B3BEE8B7C26856BDD3C2ED98337C2B877ED5EE4878C50F06A64F750
4154E9C8CA83B7FE6C91E10FA717CCEC0D2F8E21CB5A2367B5C90A81897B6973FAD7
4155D4D95F6BEDE4E1EBE6D852A937D5D814AA6BA62324C08AC12FC09C5037588F7B
41561B043BC503D725EC657F47DE02CBA939ECD8418F4B7C705EDA3E9AF1E623A989
4157074165DB0DDD59B7ECF513C714B7D0A1013E4E3F2B071F6A6DB89B7BBC2774B8
415887ADA7C572B0AA702156B715159829BA38A9EC28E1CF3494B0CEC876A97B4617
41592CC9162F204C36850CA9188B0B97300CDB1AB4F57B55D39BC539BFA5047B032F
416002A88CDF11D098FD30F6A6B82B98AB9D288570FE18E4E6A707179D96287D438F
41612D5D3C2305C5FAF075E0979EAB1DB645AD9DC87A621219C260FF67C2DB8D541F
41628BE9E20ACDCF64C4C721AEF5B2B65761D0310CEF36B1A3E57092DEFB978A43F8
4163B553169F523517518CA0618E31F9A5940EDA42D8B9D851AD1E77BC1C0C8EED23
4164F469B0568B5A556A5FD5A20F5F4E00FA6F030ECC5E711865F1549E409792F7DA
4165D1FFD1BE1E6DD22619163B98EB0425319E738254ADA0AE57FE29E121B0D8F172
4166DD717E0B59842BE9F6B37FEC3F1BBECE15664851EDA3DA3A1848191C38F2CF60
41677A262D4440322C26150C605AADAD4EC3EF0CA22D6A2F63BE63C9C08EA643B68B
41689C88ED95D2F2F0868CC40278DC2752A1E61C793FB87EE69A6D348F98A0174B09
41695AE09E214EDA066174A6823347B831ADF2619281E43A71D549FE194D5AD4ED5B
41701DE112CA90BB9D92C57FC3D89F1A57F7CEF2ACE8E944B8B725557F567D9DFC72
41713D28B0E11DA3F81633C042B5FD05513542A2B431B3744E2E9581ED828F5F8A8A
4172C600F526EA874274FEB94E64F0AD787F47C98899DAA4552E447D4B97B3774334
41738DF26A38D7CD36EA79B64CB31DB0302BFD0DD2280E10FFDEF59E2D1F6452FB09
4174E2A7015523BC1A46AC2F816135FD4EC198D30E95203ECD2623E83FFC1436FF74
4175068CFF87C1ABDE2D31AD1FEEE6031D889A25B9F2C05036F16BBDC143705545D8
41764D14A2467639644AFF1D239BB08AA769BB5476DD4FE9974DC01E85C02F82958C
417712C3AAE071BF1E57C358F72290F15A2655C1C79DB5E5264133AD0139F9F9B540
4178972A3FD82BF0377FDB8711A746B9F4C6016172C30CB33CEC0B327DA0DE2668BB
4179CD41
41800000000000000000000000000000000000000000000000000000000000000000
41810000000000000000000000000000000000000000000000000000000000000000
41820000000000000000000000000000000000000000000000000000000000000000
41830000000000000000000000000000000000000000000000000000000000000000
41840000000000000000000000000000000000000000000000000000000000000000
41850000000000000000000000000000000000000000000000000000000000000000
41860000000000000000000000000000000000000000000000000000000000000000
41870000000000000000000000000000000000000000000000000000000000000000
4188cleartomark
4189%%EndFont
c302751c 4190%%BeginFont: CMBX12
45c0f7f8
CR
4191%!PS-AdobeFont-1.0: CMBX12 003.002
4192%%Title: CMBX12
4193%Version: 003.002
4194%%CreationDate: Mon Jul 13 16:17:00 2009
4195%%Creator: David M. Jones
4196%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
4197%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
4198% This Font Software is licensed under the SIL Open Font License, Version 1.1.
4199% This license is in the accompanying file OFL.txt, and is also
4200% available with a FAQ at: http://scripts.sil.org/OFL.
4201%%EndComments
4202FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
4203/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
4204{save true}{false}ifelse}{false}ifelse
c302751c 420511 dict begin
45c0f7f8
CR
4206/FontType 1 def
4207/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
4208/FontName /CMBX12 def
4209/FontBBox {-53 -251 1139 750 }readonly def
45c0f7f8
CR
4210/PaintType 0 def
4211/FontInfo 9 dict dup begin
4212/version (003.002) readonly def
4213/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
c302751c
CR
4214/FullName (CMBX12) readonly def
4215/FamilyName (Computer Modern) readonly def
4216/Weight (Bold) readonly def
4217/ItalicAngle 0 def
4218/isFixedPitch false def
45c0f7f8
CR
4219/UnderlinePosition -100 def
4220/UnderlineThickness 50 def
c302751c 4221end readonly def
c302751c
CR
4222/Encoding 256 array
42230 1 255 {1 index exch /.notdef put} for
4224dup 11 /ff put
4225dup 12 /fi put
4226dup 33 /exclam put
4227dup 35 /numbersign put
4228dup 36 /dollar put
c302751c
CR
4229dup 42 /asterisk put
4230dup 44 /comma put
4231dup 45 /hyphen put
4232dup 46 /period put
4233dup 48 /zero put
4234dup 49 /one put
4235dup 50 /two put
4236dup 51 /three put
4237dup 52 /four put
4238dup 53 /five put
4239dup 54 /six put
4240dup 55 /seven put
4241dup 56 /eight put
4242dup 57 /nine put
4243dup 58 /colon put
4244dup 63 /question put
4245dup 64 /at put
4246dup 65 /A put
4247dup 66 /B put
4248dup 67 /C put
4249dup 68 /D put
4250dup 69 /E put
4251dup 70 /F put
4252dup 71 /G put
4253dup 72 /H put
4254dup 73 /I put
4255dup 74 /J put
4256dup 75 /K put
4257dup 76 /L put
4258dup 77 /M put
4259dup 78 /N put
4260dup 79 /O put
4261dup 80 /P put
4262dup 81 /Q put
4263dup 82 /R put
4264dup 83 /S put
4265dup 84 /T put
4266dup 85 /U put
4267dup 86 /V put
4268dup 87 /W put
4269dup 88 /X put
4270dup 89 /Y put
4271dup 91 /bracketleft put
4272dup 93 /bracketright put
c302751c
CR
4273dup 97 /a put
4274dup 98 /b put
4275dup 99 /c put
4276dup 100 /d put
4277dup 101 /e put
4278dup 102 /f put
4279dup 103 /g put
4280dup 104 /h put
4281dup 105 /i put
4282dup 106 /j put
4283dup 107 /k put
4284dup 108 /l put
4285dup 109 /m put
4286dup 110 /n put
4287dup 111 /o put
4288dup 112 /p put
4289dup 113 /q put
4290dup 114 /r put
4291dup 115 /s put
4292dup 116 /t put
4293dup 117 /u put
4294dup 118 /v put
4295dup 119 /w put
4296dup 120 /x put
4297dup 121 /y put
037a8b7f 4298dup 123 /endash put
c302751c 4299readonly def
c302751c
CR
4300currentdict end
4301currentfile eexec
45c0f7f8
CR
4302D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
43030E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
430451BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
43057C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
4306E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
43070FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
4308C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
43090CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
43102D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
43111BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
431242E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
4313FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
431478EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
431522C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
4316A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
43174B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
43184A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
431995F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
43209F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
43215E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
43229253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
4323CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
4324BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
43259BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
4326EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
4327D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
43282EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
4329947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
43300138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
43314EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
4332BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
4333F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
43346AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
4335D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
4336F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
4337481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
4338FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
4339419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
43407F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
434170A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
43422858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
43430203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
43449A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
4345C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
43461F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
4347A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
434821265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
43497662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
435017B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
435130EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
43523289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
435396B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
4354B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
43551D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
435657397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
4357B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
43588E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
43598F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
4360B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
4361BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
436221B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
4363D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
4364FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
4365A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
4366A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
4367A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
4368DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
43697D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
437007AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
4371BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
43728C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
4373E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
4374B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
437545C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
43762AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
43775A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
4378A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
43795C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
4380E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
43815D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
43826E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
43838D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
4384BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
43859C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
4386B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
4387B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
43888C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
4389595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
4390FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
439113F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
4392FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
4393DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
4394313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
4395C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
4396F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
4397DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
43988FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
4399E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
4400A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
4401C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
4402417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
440319598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
44049D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
440512666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
44063F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
4407A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
440890E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
44093AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
4410B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
441182C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
44121BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
4413AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
44149B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
44152D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
441699F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
441731ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
44183C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
4419F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
442070C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
44215E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
442284EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
4423BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
44248C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
44255625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
44269C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
4427F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
442894D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
44290CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
4430E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
44317B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
4432596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
4433F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
44347F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
44351CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
4436AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
44374E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
4438744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
443967598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
4440054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
44416C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
44428B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
4443CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
4444EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
4445C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
444657449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
44475BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
4448C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
4449CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
4450848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
4451B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
445277492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
445387BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
44543EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
4455409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
4456A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
445772E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
445899D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
44598FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
4460E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
446182B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
4462C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
4463EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
446423C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
446559F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
4466C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
44671C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
4468403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
44691DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
447075EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
44710DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
447282FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
4473C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
4474A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
44759512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
6e51e0d0
CR
44760693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
44775ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
447862B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
44796E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
44801ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
4481648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
4482FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
4483754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
4484E124929876488AFA97FAD262BE3D172E2F03F564F1325C9F1E050C83C12E0CE3
4485C7F58270B5C40B46B3F592FB41FFB7F59EBD69B2F489441E398FEF7F84C85055
4486531D95FD21629B0E509C2FCEE995D025BAD5D3F28CDBA5CD414405ACBD936C3F
4487AA4CB2620D7426002161F983AE95E542EB8553AFF7E57B82E05FDD5FC433E1DB
4488BBCFFB1ED92299DB0291CAB10A84529B7FE279C62628A24A2FC36B01976E13A9
4489C528A198B8EC8654AD69CCB5C209964A2B25D6DA9BA0FFB366D19D8C69701D7E
44908ECBEA88569601C80ACCC2D5487DDBDC27DC463A53A8E59F9EC17D0ECB7D2188
4491B6CEC6BBCEE631DBB9959A9855B997481B5D88B8BA29995053CF42C5518A3E8C
4492AD21553A0F6BC3483624B013D3537F7C85D7C558A9C772554CFC1C3FE7A70633
037a8b7f
CR
4493318A99508F5D2FB656B5A91E94F80F74C7472F507428AADC375AB9F18CCED8EE
44949DD57456CA8DB8D3B133596CFF2D510746BFA00B23F4001A3D0E8A24476C497F
4495A14422160995F3378EC9A74A5D72D776BF8BF91146E73518E61C94AC5C7ACEE7
4496783E29B29962E638F75366A0C0235475327F024CC6C824A52A6C25E669546A39
4497C3459E06945AF250269C9F7B541B1EDA04DF9B9C7B442CC7484595E7B1A860C2
4498EE36E1F845BC6E79C445E11925A881A0D3A9849030954BC5FBFED8D254AB3307
4499A399E20BC127C05EC76D54C928A3CE1F99F672A8F47C8520C5D444D1EACEE114
4500A71EBF58CA1088DEF117A723C391F62C0AF3985BCFD5526503360C33B1DB957C
4501039360854589686E27DCA9375B709FF2F8F5EAED9564F979A245AE2498556344
450269E2A27804B51D5C52844E3582CFA648E82492354EE0A312AFCC4E90866F63CD
4503173E4CC6A74D82568D0CD88E078BEB0A5232202C7F74C3A8C80DA4CA4BE6C421
450415B80B4A2A50F91F7841F60C5EBB4DC67ABB15A3A285214E20B5090E25EC9C7A
45052A8F1C9F2FD755368F61370634A37A2EBDC4B8728D2439D55B73596A2D5B28BB
4506A83A38BFCE4B84AA3D8D373C53DCF5DBB5A327D9364288907C0ABC0D5E6B1D1F
45077E57E3E21ECD67DD9E3F0E86E00BAE52ABF645D6FE70EEBAD9C853FE34801A46
45088F6BAB6A2C22BAE5DED459A3F06096ECBA2D20C707A5F47FA067FCEC8C8D6466
45099E478B07712A577400F5FFC65EC107578C4E6F28961509BB7C41E49F5E45FC1F
4510ED4AF951E8BF1B261E06E4D8AC3B4CD60AA0FC495E73E6203605E5473047818A
451146C98482D55F198EFECEA05092BF11A982798FACA6AC540293AA90208B56E2B4
451205A05AA45B2F8A67CA109A6987A670340523EAABC230E0034454E773C31543EB
4513C1C2A99CBD1DC7532E2D2169C3C25B5853E2F0148E4AB501112B8BF210A5B39C
45141C4E8991DD2DDCC634D3D63415B5C7DFC564102751C1BCA38AEAA8F4E69D603C
451513A5B5A81BAACDBF724AAF76189BF3DB6239A7E19A1B2D6DB4943910A0FEC76B
4516233994CDB5A903872A55E51561F06A6B999E0F91C9FEA20E0176612E869FC157
4517CA648E8C2C4859D3C17905352F1E950675D8C56369B50BC8C75413021319BE2D
4518C982926A6CFC9FDFD4BD728E8FC1B6FA1074FD7271C136B260C013A9A33CDFED
4519A82DB154C0423B391E7BDD9C5B35D92D3C4F5CA5C773AD3712840EF3BD5F3C0C
45209BF19092B9296CFDA740566999ABF31B92E8AA5A92D29840D33625338A3E7C02
45215854A6B272591E3B581BFCFC1620C9C0F0B128B0B69CF0FE34E56B191FF65DD0
452259BB27457FB4CAE161551620278082F048A6BE2B9073ACF7A6BFAC7D1F9F7F0B
45233DBB05CBA5BE5424E1A07BA58458074101EB3731E775802C97133C9FEAE5494F
4524C0EAA6D6CF2DDBC064CE7696F610A3DD93024161BFF27FA1D8075A295BE3B80F
4525CC225A257619628F07D9D740349854CBF43BD72E25F63249470C6AD3E171C6AE
4526149931C1434F22B467BC377604669C077F5806E9193F9E16A737C19BD3FD5C3B
45277420A718C022EF57CFC7D7BDFE22C3FE896EF34BFDC09A6D5A6E559D6E1F4D31
45288A6B69C544385C1CB338D352749ED74FD1A051ED6579D5F1673522CB02BC25D4
45295A9A51D740B3A9B6AA52F2B9532A32F4C22FECE7BE96873ACFA2836063BABD50
4530D4D0647FCF2FC9975A2ADAB86FE1AB14A5FB4C3A576387A993E9EAD3D401D3B9
4531F231F890215B7192A71327BE72F2405E94E47EB82C9A7479B00C6122A94DFEB3
4532293F1F328765B0AB7A2D4B51C48E5E2B6E7C96C765EFB49FEBCB593DF1A90284
45334C0723CBD625288D62D821F47FC3C28473B3C5DD3322C8D16C4EBEA14523376A
4534844F4E51F255B2C1FEFDE840EF9F3E5812411FDB55185100403155B295C63B3A
4535DBC92BAC9D6973F0D609CD11CC3C3BE89C92CDB21B6C976164FCE64C78C7DCFC
4536DC64B362067DB28BA59ECB57C2A5880EDCE8DF84606B2A87979DB086E06ABE21
45372663D35368F31CE867F91BF71FF831CE0E38084F98D501095CD4706C2B82FD59
45384E1501EDA7B03CCA974AA84EE5B39FED998FFC3D641B2634D72D92AE5B8BE9BF
453964FBCA1B8A80969285372EBCF24A27AE19B48009B144376992058FC36C23CC5A
45406E4A0CF12337A9EB8AF4EB6694621877CAD1C713A85940DCCE4FA1EFB2CAC5A1
45415FC3CBB1E61418DE140D044900F52A6BACC68CECF39C9491756BD3153D07768E
45429D271FDF798A9BE772E9D6203CB03206020B45BF76810C0315448861A5A2030F
4543DA8EC1254C22D7CC89684B5AAA2141B7FE3AA4EA3BF55D907B8AD5FDD7488DF2
4544A92B28261638A4862130B2EDC13E78F97B9E61B0E933F0AA0EDF58A66BE288FE
454584C209CC1881C5E57ACB026EE9EEA1CBCD4A4B02E7FDEE62BF76D885E26B2297
45462C274B7FB21A9B660E934FEA1471473999B90DF953DCFB6D68DF5D2E021349D3
454714314662237C892EE094D4735D2858FFCD6DD748530645E493C98D80A8285CE5
45486715A6328533B1397C3705CD56E0C75387838B370112A8B235ADC17A0A56E03C
4549D175FB1AC49115DF3A8068BFAE58E8CBBCE530216BBBD0F9F3944427571544F2
45508C62339695952397AB33C31BB14D2B0C9F3ADA35ADFA8E4C4B60412A4ED03363
45517EB00119980897F8FAD36DD39AAEB4D841CB7FD8A232A277AF527D50DE49C5BD
4552936E0784FA8D2E9820110C5BA10584B294B2791FD0E49A687753DEE31EA923DE
4553BBD92D8C08FBACD88FE0677BCAB4938C5902229AE85756DA918D1EAAC6290FF7
4554D9F6060953B2BEF26E8C07CC430D70EB307F1C727A57F3D46BD6267A03FF3437
4555E1D2A9716E3C4054FC42D3C0246721BDC61D4A5BDD65016F90D55BE8FB63BFD7
455606B527A49F84B91FB321607879A9669EDFBA9668D1B4DBD407A7D53F7EF6CC40
455783B4F1A930BA2432BF2C984C4EA14CBFB7030CD0BC1DE50473BE03E04BE50DD1
45587FB991971A7410A7EE4118F6FE4198835C448B709D612075D0187F1D064A55D0
4559BF3AEBDEAC29A16EB33EB458F44B0664E74A58EA5BDD24B9EE38374F68E2A923
45608E6EF9E9F26315A22BFE353D875F5ADDF0821009F568476C9642BD3B942090F9
456139B7902DA57E8C13BDD10ED0E137F3521D1B29F287FD6CDFA7D26E2EAF839C7A
456238F06ACD6D713FCBFF0510C4C35038553E463A0761F0A23DC9030F6CC4FF96BF
456399AF97F7D9267593812BE751607032E736626FAE21BA2912CB67547A5624F9FF
45643253923D889FEADC594F8975A032E566CEB10E876AF5047937881C262732BFB8
45651F73C6FD56077C00902C6EBB852D1747B8FFFB1468E8204A9400C4AAF7F7504B
456689244B5317C1DB608BAF91FABC56827754D6AB01EB4188C1DD73EB4258F962F6
4567D18B5C14089225B509D23D5CD4C1DC4EBDEAD354A1B108466BDC3DD86535C7D5
45689DC062AC8F099821864264F13C4AB2441E7ACD2C47AF331AAEE509B0BA31A92F
456918CCEE565B5CE02FF94D635AAAFD9497FD00E8CFD213D22F06BE684D43369131
457024DA92CD0D50373B137892A8B6A9D619094621247B06BE1E433FDB25CBEDDE0C
4571A7DBFF7A6CCD6DD55186F56A089E3901136B014C0F5AC86C819D5824292E6FBB
457217704445C90AC7BE8252FEB750B78804B33B2CDA000073A5530C7A7F2A4AE279
45734D627939E1DF094EFFD5FCE391C4CF81949BF45203819647EDEC018D18CC1D5A
4574C0C1B1FE3D2BCBABEA21861E2F2FE5DA884F134A93F17F001DE4D595014F3E76
4575D4ABF5249A652CA8B53ECE9461924FD87EA819F5F68893EED1A7A1FE4F231514
45763E69D4993A48F014F7E4FAAFF2D8685DF2FF50A41F309F5626E6328EBE3D7793
45776B8EB46F10997C63901343326BC91D6945666C8B3362A1A94A73AAD158E38E2D
45781436AF6B3AD32B064A6FFFBEAE70AD11ABCE5ACBF810974EED6623FF916F947E
45798897C2171970FE02EF18874092950F75632A916FC6EE77883AF461597245F0AE
45808C9C7005217A59C63F192A57B8CB74D07048E7A25F294418AAAB0ED28B0229D4
45812571A21B6B46570EC066319191D8B155B903598F4942F692E3547AFE51D76191
45823A16F163FCB3A73C36471EE438FD549754C91190553CAD1FCC0BA3B1C1921470
458378784DBF40B54294F9EC7EC7F5A8D574CF9CF9D22B5AFA790BA5659631FA3059
4584E2E1953F58FB83780B1C99407D48B75A13999CC536089B8AED30485E52DC4985
458582D1A5790B451407C982AD06399DABB46A1A4AFAB1FB85F11B558723706CA227
458637FA6429311FC4A178800ED5DAFFE353929EE385E7AC9E04E4FC63C66296C1E6
45873C5E2DEDD62975D7743C6D35155A5A8367EF7395E4092F095745C3192A5A66A9
45887AE6B45029753FB2230B881A5F7B0A393AB2193B15C06535458598458618C70A
4589CA5EAAA28AAFE895B5D4CF0A6B2E3C2573F790EB4E0B91C69E1E17FA78B77CC1
4590376510918CDF6E955F231BD7DBE1D4B0C1B663DDDBBCD1D95024181273D58215
4591A7455285B8DE11E9795DC15B579EA328D21E9E2F8F276D3D7DD7DD69A5BED0A9
4592351216C84EBFDB27DA7A3E151B42BFD9165B491D670014B3FA0274F15863F51C
459354C322A69313804D6960AA6F0CD14A970F28182796656266DF384B25F627CF3B
45945D51F9831719A33AE20EB9CD0511871B416E3DDD76916219B7C93431CF22C76B
4595DBBF4D6E85432A920C532D8EED18515C4352A52E0B3CECCBADFC1C1133267F2E
4596D66668799BCCA45FB84FEC96E1BE5F9F62784043B71C05383C353CC53F04162A
45979D8419FF16DF736F4CEDF9EC973C501587145DB5E1F1ED63838CD8312011F19F
459894F8BDA1CF1225204B9510B972ABAA4F6E9A92A86787127AD97A42BD3952C5D5
45993C588E96FBC8B48C088979F3881BE01C85B53BD456E0EAC91B8A899BFE0E5C1B
4600D6E38EB78BBA172D26B7F1F6E90F029AFD3CCC6E3B101777F6E045D8892C2005
460112CEE278F85797C382624E847BDC406BDFC013F099F6236C6B4C21D85F205D3E
46026FFE140165D3176467E7B241E4BCEDCB0850B03E2810045E79E3190BC6D251C9
46038A2D9CA4314B334868DD0B63DB9D00CCE4D80B4D359E54E9E81F01799905F8A5
4604FC2860201F49F53045CAF0D9DDF9EEA4B00221BE2EEEB189D5E1CB6B15DC91E2
4605DA3C7A24A571BB9517F8FAC84F7DD0A41F53148D61BC69C6BA042714A69340D2
460686F5874B6653A43EFFD735CBAF59B539B91C1B05E6699A74B1995D5E6AB5601F
46079A606A94F85F32DE43ACF78E3E2B75411565BCD9A90491E29E22DB3596F92BA6
4608F7C2DE622841483492295376FCE5EE8BA0B13D54740109D82F686810A03CED91
4609CA7442086B0E3A5DCC22F11FAADA1474AE0B6A893B3CA6065343D21B834F7239
461048B88675A71B046352293E2FA73932485BFFE08C8CF502F6BE95E999660D8B2A
46110FA634AB11C8C4765CB478F19595D5AC0EEAC22E20BD6F30B1A1E3B10805CE25
4612FA694E5DEA8DC007C05D654BA6593C846B1FB7548A7ADB2579811D5785EAD68B
4613AD679E1B61F5FF45E4F8684C7EB447EBB9C9F19C1D346A1D321F2D49E84FD923
46145C54CAA7F85B97232B8CEE6BD06F88F71755AFBD86D0CD6FA10ACF67CE92B40C
4615605C488E397A2CC9C206C3D96133EF0CCBAEA910F86DD04D645AB8D40F440439
46163D5F0DE8C89DD451C007793ACB6592E65441A9F49BAADB4C33EEF1BB685A74A1
461725BFB78143CF48AE6E4220532452C6437E8FA281C961C9D205DB1B9ECE54A7B2
461802128113842C8454CDD922610DEDEC6AFA3605F800A2C66B1E014EE0520FA2EC
4619E033F8E7BA6C6A64334D877426070CC64F4A30CF382F2FA2511FCC4E8F32B68B
462010D7EEC8A2D3FEB524B64E1ACC9A5D888916D1C52CB3358E4064926E46A0E80A
4621D7D379A531BE1B3679CD227B51E6D6C02FF46437C0689E7E5346D47AF8694844
46228DD0BA48D36677A4E612DF41F5109385E07B96AE023621BEEFA0A691E2AA2B90
4623E8CADEA34F5570B8B23BC40420ED1D6B2561C28A147E099EEDA54721E38D48EF
46244C685E67F4228E94F657486A8066269822E58B38B3BC343F9D5F57987579C683
46251568DB43597420CE2BACAC2BB30614464BA2D6CD239CAA21F4CABD42E0025967
4626017314B488D7E5EE80E110F82477CCEE750ED06A76054A57FEA3E58EDA4E3C3E
4627E420DAF021E8ED0D4EF74864A7A1E824C4FF703ECE2C7A1E6BBEDCF03E07B370
46284E1165A4EDD682BE80FFB57B031CF2F1AA3A087FD8F0097423DD6C5CB7534B5D
4629657B06513CBA6B7003EEF17DE1694B408603A07E466032CE47A12D891803588E
4630B1C2A4654A823859C31F6A9C1E43A6CD1BC33ED401C057ACF6226FB683A81D5A
46319275BE95DC05E58600D03387859171860B5CC021542EC0F9A1D09564CD5D1AB9
4632AB4D7912746DB575690193F7AF9F1E8796C9D768C36CC1E7881B7DAF0B577A49
46333120506D2C28E487509CE32C3AF08DDAD24E3661C510A118B1E6532BBF715A0D
46346823411E2F423322A0AE1278664A2A391525C51407FC44082FA112B052D18241
4635C4BD149FD298430464B8805A392636365F16B552C3A8C85FB4391779C219E8C8
46367666533C8173D05FBD8380AF078D402E8ECD110D8211100B61C2B3AD289F2ED8
463706513E48847DEC3265DDA8589CE2D08462D88BC1DE42C42C7B85C5814FDE1A22
4638185627E533C6D6FEF2F08829E4308401F9A3688E43966F682E008CBCEA1FAA78
4639AF167872B047977087BABE9CBD0D32C5BEE00DBA8FB601CA91632BCBCF931FB2
46406A7545A1B85240B4CC322AB87215F7FD0861E2E15D6610793D37343DDD37CFE2
4641DA8FE76F21F89D36681AA6A43DC0A18AEE2B8890A7888DEBDC7706B0950C5941
46421B4E0DA58D126082D077CDED69545AEC02608232764F1BD76E619096084F6A40
4643E2C90B7DCC3EC1B44B0A9D57CF9A26175839B5E794DDF3D971A66BD17066F96B
46448F5BCD802920130F76E434A76F8FAE8CE36A682B88013043CD4FC58F0E43957E
46456BAD3CD19DA0CDDC20A1A59232EBA4B3D7BFBDFB03B340476C88C8D1E2610162
4646AFA87AE597856905EA9E3BF9A9F876708E4EE74EA2B873CD6334EF39934E82EF
464757FED286EC865B17F0458D8C80EEA530A48AE583D90327BEF4D5572C2D6302B7
46482826CDC8273D472681AADF689B1C35468B4BD921176E2E6110B701CEE8849057
46491308F271EB8865D933305FAC772D81DBB57AB63B9FE4A099FC5C12A3D0C3B53E
46505734D8F9A6363E7A495DA00171614BB09EAC3DBDF70FF4BE66A1B7CBDB0EE947
4651A66EFB7FE439A044014FE080B3456E6882885826AB7F7607B83420EB3F1938BC
4652CD256A898830737E39B674A2AA18FFEF4A5060294EB206535C95C56EBDE03FC6
465358A99B4F468DFA4BE4F63E1355C57B9365CFC853D4DA74774E8C6EC887F1BA26
46545D1850271128267EAD0C2B707BC18382C8F1C30F45DE1BA668B694AA78AFBB5D
4655C8948DA576469BA18204F616F978E606BE2B07BD972F3247351D3F8119EFA501
46567C471171B70EF45ED3557A26501F599B7606A1F3D3F543C840B38AB2A9AE7D3F
46579AA1633E6DE860AB2378329FB9513F1B479B9C553EE43B4565E49D4FB7E39CD2
4658998D5FC63EEDA03C1CFB5CC07F3203AACA07C853B69DABD3B48FF745B79AE1F4
4659E6013DA04F13E069648104D5A38A2678F31BB1DD166D07578DA08A3476E773E0
46609C23D8E05016ED76A0CCA6BC01BF814996AAF260249389C47CC8CE66B454A5E9
46612643DC04C42CFB12FBB9ADB0E78C79C982D7F24B2FB4E5D32EE804FFEDC9FDC0
4662B9984261D8124B3086B2303636C1DCD552AB7CD18AE2E6BFE248D02882014F5D
4663659C48DB8AE75DD1C5589272EC3D33A552089E26F80142AD0CC676F70A94E2A8
466470BD0F2DE0F1BEAA038C6EE73CF58AA15BE408EFFDE8BC1B2645E1C13272EEB2
466545E63EC4B4E34DE3F1BF7E8530DDDCAD1DB9477E253BB0CDD7DB76423668F37B
46666D8CF668643783F562D1A88F831885F92165158476A408B5891AE6583B10E0A8
46672DC1178398D7DDD886B05FEEEF6505C499EAE9A4ED51099D3D424879E7BBD4AA
466861C14D18B0239F63C1E6A3D559D232C4833E09C36B5E7A22ADC68E1963610666
46691A6BDFB86A6693CC2CB647A4E339C09BF17FDD40BF22CD952491A5F5A66B9732
4670017B68D7961C360A317C013F335CD54FAED7A0F75C75C25C575DE3E65E3F0FDE
4671C30C7FA545BAA0A3A1A22BB859C16F58E93FB0CA74E98E3899D7923C055AE485
4672E75FE2C05DFF8874F452796F95BAB9CBD271423DB40C6087626C5122454C6A9C
4673BBF205BC00D07D9830F8AD3A76A5A228E9911583358D2122F959B233A8F590FE
4674BB916539D2AF54A10C52AC6541B1C1CE997480908E02A722256EDB75BEC4E962
46751CE8BDDABF01A673F31775C408EAA2A5FED6AAC014B05C36F3C54D9AD2DCD025
4676BB70733EA2185F9FD618788854DF25427E870D37224C6B6617E3FA0C251C3FB0
46776B358CA539D752088A0945DF665D6488E37017EBCC6502CABE9CE267BA87A6DA
4678E48B1F12FAA0BF3C12FA2E860259C6586FA7843F584CDA55404C88D283141685
467941812C6FEFA7A66AE6C731929D09CE093EC6712749285DC2FD2512F40EC1B114
468070B7613B43D761CB6A02F570A059331ADFA10921C3A3C4E6BE9637FC8B690F23
4681138A098D8E1EC01EFF56C86D246BE7270FFAA7C512C6FBD96E3C472F939C1893
4682C8A3394C34045B700CF10355913744AF99463D6E2573106B2FB9ED07B79ECEDA
4683F9F6D041B6061CFD8E02887E5C5B0194243F3DCB40909C3C03333A279E0D9A9B
4684037B84BD6F7300D0E5EAF980EE53B7FD883886528D521DDE4F74536C7F1C5BA8
46856CF279C90DDBB82DDD1EED77FDB05E8350DA91080BCEE5E3C84F003325433D10
4686D03C08B43EF95318EA3748DB9BF84D57A712C0308E80F5A54A38F0B2F7AA403B
4687C57BD4BB6243F7A0B09AB0C885735D9861115ACA7567ADEA6FEC6F59973584BD
468843B3AFD18824327CD6C21D4FE1F16F6C67D01B97FBB6F70DB5D7D6E46FDE0D09
4689DBC1E45DCF82E9FB3D465175DCBBF254C59447D3C3DF1F66E0EF8CB6653EA52E
46904C1D346D33499D2CF129D9704D74AC399DA2A23092216969B5B8D8B520F05DB0
4691345E1BE31E211BE01A1B1FEDCD9F2699E9533385D29F0C80F990CA5A874EC60D
46928CDBC045FC2E2F6E7A2E426C485DD04C4052A80568951B7C5B7A7FDF8DD163A3
4693CA1D6A36A80B7CB4401674E6E1B9E8F2DEF2ACBF87879AF5131DBDF6A0458B01
46943243CAFB8284DF8C4F946C328B453A363103665491D387CB40A493B9159F46F1
4695E95207F8E71D827A15A895EB17899D2C0FD610B9C3D3F8378310602034DA6BB4
46966131CE208D659FD3AEB590D2CA5918ABD2C10E16DC378CC922D605C66850C6FF
46972CA7BB0A1538BE6DD5CCBE51CA7509A995F2FBA6D2813AFFFB625604D25D5BE3
46984B677D6CC459FED33F0A58E740A1EF93455D2B7CD3B6D7ABEE83D3BC3823F2AA
4699FA77DA4784BB1DBDA4083D991F9104BB62EFE168D1BA37A2E3EA54BFE6FC2C94
470047078B5E340D2237B312258AA715FE854291D40061B6AA9F9907146EB2FA3B1E
4701A1CCF2C8D2FB8230406FEBA3D184317B4F7F777410261D500F55751A0A445DCF
47028B100FE5B149B2D2880C3390422BBB8E8C6B8A8B773072A0091C1BBF8415B329
4703D16FE300AD05CB4B62C90ED22ECCE09B5786547455213BDCA572889B926E3DC2
47046FCA839E42D5519C1C2CDCF412755B645AF3BC38897CE7750B8E47F6E352702C
47059C554B0E2ADB99F2A0CDF93DCF419AA331BA310ACD315C11912F4F8898EE964D
4706C1E9B8606981B25AEB7E411114D74B37952C0528E51447675CD888D80A0F15C6
470721A42FC33BB3346D51B6BA20B726EC79F582A90EC43EE690F0A83B83D2E23F3E
47084F5C12E8BD48F1CFD04A189937925596C040562F4DA681B185BEABB00F7EEF7E
47091E44F8ADFC6792AFC7C3C809338A6B1C046917289139040D382F60652624775E
47106C6214AF5BE1D81A2A23CF2380BF6A13E88E87E2F1095B60798AB4F657A26671
4711FE1C598578506C804FD43FFBFB76DF8D4C8E647F9D021C46011E70880A8AEDA8
4712CBF3F181533340999B7620066A460E564C3C23FA8B29CC1BC8D337E2B1E49ED6
47139D10EAD96A52AB4D06982F4C48873C6F4872054695F253B592B83A1BC90A4BA9
47148371C4D319DD261B9A0AB13F74274E5B376A3288FF60C93421F114B51355E725
4715FB265D39C00AABB2DE4300968FBE7F652C4EC71A7EBD58A20F2B4C1E2D1E3646
4716902A0F815E9D67B50861D6CC2AE3AB45BDDF3782D685ED8E41C0D8F1FA37F238
471700A8A3ACAD22D898CF8E95855558179BC84D199C6C79A3EE2651167A4067A9A3
471849109AE7F53B59EEB1F57DFD4A00077DFC2BD2CB1E3169F0A348D4DDD2D9BFDB
4719A31951065B0230504FEC2975FB5015838759745EEA1347DE8591A58783F1EA48
4720C7A7456E94BD2ECB916B85160277F98FDEC95DEFA7FC19532AF90C6AB3399C55
472186BF03B871A4C4386714AC62E44857919EEB2658D1AD72570D70F1F9926D6B3A
4722D12988299F620196898ADC3125C5A7D11765025B237983BA1DB66418B484B022
4723EA1018CB14150269A089EE9CB3EAF08D4F7E15E29048F729B9D39A15C00B8715
4724F030F927C8AC027A3B040CCD0CA1FFC5C6BCBD00457BDDB418BA3805C30AC43B
4725A8DAAE706D404E22DFEB24AF9874D741C9DA45B3163C259E8DBFFB6ECECE2B97
47266BD4335015222631F5D86490C0F9BD7C22ABD32D6DD412DF772548B38399EC08
47270E28700A2ADAE8F0D50EFC4CA8642E0E996D72BFCDEE1CFB252A6F4D8E03347E
4728F6328BF18282ECBC88DE3FF382726F910FAC2DD599E63EF7C3068C1CD785D101
472916B7671ECE1E0D30CCA1C6F2D3AB5E81E309696DBE4973F71D240C207CF73CAA
4730D620DBE563AC9B2000A628E8657A45A24030432AC74B5ABDD022CCF6AB855E1A
473161619EB4DBB848A6C2ED5745005938EC8F516979806AF5E714704027A0CECE87
47324C44DAE80608392EE0EE0E39555ACADF1D3A873D35CA84D87ECC2AC41937CB62
4733B250E3C1AB878BA32AE2E161D13FA536A305B352E3E0210636A81C6655CFED25
4734A2B75AAA6FB0D2FCF696358223E78DBC2B9BCA15271F7612769ADC00BA66A2FA
47358E38ACEB99E18B7B4A5C2B7977169EC141121F0664EAD87EDDA372BE22988222
473627D477A6A4715C71091CB2F01C6B3176160BEE79CC8FC854166DBB093A49DCF5
4737E45AB3B20EF3223684E83C8FFB2D5DE9CB49754799E038B748E75C99EBA6D69B
473836E162CC3860E33896371D0164C14138181F2E00FFC08E2A3619E1820A560C7F
473963B054216AC8CBA7B034AEEA8E735705AEBB0D78F17856E1A0476DA6E543E985
47404F7AAD98E3ABB2D7B4B1629FB0E24B9FF10F06192AC8475CF8C35EE3E635BEF6
4741ACA79F1847FB84C4B20E6067BC0593C7C39657E08A3CFF64915F887D5B99356D
474291C0722A917B347945E1A867B062C016EBB7D924F11C74873EB4656B61A41CCE
4743DA1780D204D28B6F0CDCB1E059B3517A5AB44D45B43221DC53FC699BBDC4F2D2
4744865C697EAA3B49D2AF5A4CBB66244196A3D8A09C8815FFDA307DA47760CFAD34
4745434D00946C23BE41A6292220F0CC19CED3277801C9C1C3CBFC755A261B4ADA4A
47460C9C3E7F8ADB77A5C68021775619D9CE770B4FE975CD468BC5CED173CE1356CD
4747A26E6AE273197511E50A014B19A5B79C7B75A57B08185B20AED966A4C9DB4426
47481294A5BF040A05A4FE60FB202C7CD2BE018DA7702CDE728193B72F03C3C0F1EE
474958CEF81EF167CE9F8967B4DB7A3A3BC0868B8542DFF05D46DA08CA79F62ABDC4
475039373C66A08D536491CCB5EE828E410576057488E85A47D5D9F99F748E19AC88
4751E207C21EB573B9429A7086A93CA63467B3EDFE08931BF575DB82B76AA9C05E00
475229C7D4F53CA16E6DD53BF23A0991B1C5B4902E4DDD5178E55C2BAEA308C5877A
47533A21D1184FDAF68ADF993920AAD2EDB045E98C990584EFED9250A332BBC01217
4754DD58CCBF7DB9C0E51473CA37655DECE639C28E04EB47E5B52DCA10E92BF83F08
4755AF3EC395D0A74BCD4377EB7AFBD1F0B521F6D8F0741A07BE28D6A8C235B90B7E
4756B448354C9FD450F98270B3083515004B56718E81C4C6654E40B692780D83695C
47573F456A401A6D24740C67A485AA8B616B94B23EB889AE93CE66F5CD6916E32C66
4758809F5D3C4D52195D1335F89D1AEA6C07A1AC8E8F30AC662E11541536C50A6763
47595D8C71FA8E0EA2BB0141FCADA7AF9CA0A69AC758DF87159707038D81DD706B6D
4760123D53212F77FBF6AC06A7771FE86D254F9E6B29045CB60628EF491A26226D02
4761D799A4B2E1E4DC25BB157BBDFD0958E1A4617EFF11145D3EB94A389F514D1247
47624B6A4CDE1DDF18A826C0BA8FBDCA2045C3BD3465C371248428A4CE147069B2DE
476363E85D5F92038E8986DF08510C6FF1DCD615A7164A287A8C8C869C4B1151820C
47648BE898107D19E768E66125C6A6BCA28D1A99BD7E6F58F60DA14E77ABA2001B54
4765899B488C4DE7DA167A762CA3CAB0E8D157F6BED3679F019546F0322A7F6ED7E0
4766D6AB34BF0F646E07A4C08EABC1DC40062E17386A406F88FF43C3AD322E8A85B3
47679EC8C24C751ECCA65BC7A2ABC5BC0E8C883ED0FE37DC111181650CC6DF943495
47685F0DEE475D1CFED3C23655E6053A884DC41E8A4D194A02051E5F7F38C625FF89
47695894F611575CF75A533095881952BAB2C81BD8C303C903C81D937E4D72A28261
47702167382EB3632D975CADB689A7DD5419F12E32DE2345CFAD7A85A9ACE0E63BB5
47713C49A690274EBCC5CDE015218223D2FAE1A1E7344932BD8CD076FE564F523B92
47726B50380301C36A67A264AC735C9B038CFD7D897ADAEC00EC65E174F47EF1EF0E
4773F4A1C83EAEC77CD415ADBFF5E3AF7769661AD8506C356C20595B1BBB7BFF1808
477492015E73FEBB58376DB5368C54BD47B486330BD22F9E1804A05B350671BA373D
4775737BD0BBF7E78ECE5C76FCE2B1DA10BDC7074164DCE3D2940F1CDBD02A996EB9
47767F4227B2446C7BDC11AA79B727696467941A4C2E3D51E3EAF366EAC7857F8180
4777AB05461898B99098E955BFA09A8371FCF1EB671DE86C89776B7C90AFB9A4EE02
477839B35FFDE25BE1585476BDE88912D1E2D4C1083BA56BA4346B90EE84E6CE5BDD
4779A7CB599B4D716F7F25668D8C559E2347F20311D49CC7D3D4AA0117D017F065D6
4780E43EB82320EEE8B29B7C7B83A6CF79D3A20B16393235FCE7F9D0D5592A80B33C
4781E664FD2F2B0FFDF29C89F7F5A5B0EA96456CC42DE1C2BC36E791BDEE54293D48
4782BAD9DFA71606A78B5C2B8120A45F17A394F417C60CC181EB7ACA7D461A1A8095
47832372E368C1869D19E4A1A23607B6C2B0FAEF474C703492E7C1D68A3248CB8F77
4784FB17BDF28A502BACFB2E4601BE018D24EC2CEAA4537271B2B9BB7807CF447BDF
47855A7DF27A00D96C481ABE0B02EC0B61606505E357FBC1BF8F1A198A184BFC8B88
47861ECCF1EEAFADC8D299F72370BF10AF53EDCA219DBBE145E0F1FF317515BEC422
4787623045574C79B689412F5E7E5B66FB463E11C507DCFAF31AC1AC380F35CB7DA3
4788FF9A0B82402DE0696CA50B4CAF93667A489C1640867AD454CB797645710D9929
47894857D74A887D7E458109B90202A50ED46F0375F71482C7C6BC14E5CA6B001206
479062A44754C351B56B41AA8324EECF26A80E7D3FD85086741E70FD33C8BBD546C6
47913AA832DD5BDB976D17B28481B7DAF12DEF348DDFAAC53E3455F82DEB8056C13E
4792931F9159178FF1C744AA7882E7D49D88398EB3D023A272B8A89FB5659AF715D3
47930809BB26F3EF80A788CF54449988A73B416219862845F904E091951992A279F8
479433FF4A4CC37F9AFD5521E41F6FF1F12B1D9C7C0482BB38D1BE007DDCCCC37C9E
47951F7F34B5ECEC3E6DDF6F6EDFD95605BF60F55F2B1D345430A89813FE189F391E
4796844C44571502F66FC3A56B222DFEF0D676041A660E6D741D8F72967DDE8C0A3E
479796BC0FE3243DC07CBC1F0E99619BEA04EE85039B404122E496AA7BE34A4775AD
4798E4A310C1C020AFC6E74279DBDD0F6F374691D8E3B6EEC90B11AABD20E59F8595
47993397C7E9BA2052454250585469A67EF40741A9F09BA2A2A04885CED6AAAC081D
48000475A63CA91BFA5D6A3770C1CF80F9D01521A51D815ABB1F31A89EA13412BA42
48017F1916165E012C0A94135C485E42A5161C7B94A02724B5E6D196D42BE3F408A1
4802C11D207F5EA2CC3F2DEDBACF246719BD222861389AAC1ACFB94496CDFC5F3348
48034ED4336E52D03342822CC7E267C2C9694D9C07448ED043C56C57123B08124AB6
48048EC0700E42478E6F0FEFBB0549B2BE787570D2AED16C44AACBD6933A925055A2
4805022517A427181398FF7ADAAF7910954360EB4403E16A92D7203A4587ADB06169
4806EADDEBC7EA4AD684C2FCB0C1008CA92508C4B755E93401568145C5555C8B794E
4807F9FE03CDD2D904FF6B3C4429188DE0ACA011BC44D0ADAC60939EEDBAB25AD69D
480848A5E171F88DC43B1511C6883DA9AEA734590F09FB58793D0BA23CC46DFE5FE8
4809A9C82D1411002EC457793FE7DA76D29FB65F026587DB905A1EE651AF6E4F2122
4810A8561A524984E0FA2FBDFEB7A8A4935DF29E126C1CF41ED66412FCDA7D07053F
4811EEDB110E865CED746D2530704C3D906DA828873B6AF2FC2D9E9EFD835D71BEB4
4812A0C889B6156AE539B48E0D8026F5A8FD0DEB71FF8EAFC66BEA2130B9005645C7
48136FCA01DE45783C2D7B75EE9A9A6A8F5BA5F1B13EBDAF2F246D701507DADB5518
4814CA8E75918A1975617EDD5F5701AC7FDD1365F9408E3BA2171D4903A78D223BB8
48150CA0E842DDBBA3C6B41D2339A7C620692F10C4FA9E8C950AAC4E86607955BD81
4816A4E3B0131984BEF21770B436B286B93456646004854BA2055C3DE31CDF212205
4817883E2D4DDF58152F192E50B4663F0F9779B455C665ACD6F40E7948351BD9F78F
481824550832F18950ED308B402D5FC6327CFE094F1090871431A59C7238CF1AA562
48193A976BCD5808405E7BCC3DED691D332C9B279C849936CD65A6FEBCF58CC2311A
4820054CBD1D630459B59071379C3865C3C6A14E22B5B0381F44372DF1DBC8727B1C
482159A733C294C4322E243223A986FB8D2BF832755B5CEED304E6B3699998B223E8
4822E28EA70BEA1358C2CEB7AB07112D30B83197B263E56937CDD0F074EC29FAE7BC
48238D6A89133CE8F837D64B703BC40EB64F2DCC73C763A0D31F3C058B5E9443EEB7
482452874573C500ACAE072071AF89FB9C4F4641AECCD14F7315150E5947731C8963
482555403D9A4A92EFAAAC4F5F6E95B4751351C4177271712F85495397CCFCCEE992
482698E7DBADAE9D3C1F273AA78F75012CA5AA357DB035655B3D98ACC2988169E894
4827C573D80D60010DFE08394A6D05932944E07BAF050AEC00E45E04A424C6C351C1
4828511DB1E856616281570F6DB61D75078B2D1DB18629731358D8663C615782D63D
4829E6D7D9464CD95D8B446E563D684D16914B0CA2978C473CB514A5A06D25522569
48309CD74C4E46C95DCA19C8AE79ECF576A677BBEE3510F93C4176A4B5F1A4F24E36
4831E0C5CEB30DCED55B7B051C01AB5251CB839AC2E371944C169D9CA4AE4B91450C
48325503BFFCEBFE1AFE8574E2020D3DF2BC16BEDEEEB76C7FBE3FEF7F085BBF4BCF
48332513333E3A01DCA64322049010D1802D1E50B50E39768F960BA243AE4A79C12A
483454D8F7CB63476916E634273F76663E4496466DB6BC16CE9E74727C9EE9FE79FD
4835B27EF3DF0E46EA9C028AA3FE5470E983BB251AC803FC07164644F385B6BA347F
48363FC80E540BB262BB5E0CA619CBED3C8A4311B9C2B0EB70DAAAB4DBD04CA642A9
483753FA5B77D48384A8FE1F706DAE7DC478145A2F97FE5075092149C536F32A83C8
483832DEB9CBF5177AB311222565F16AAC5109F31F7C84321824ED15CF558D65BCA4
48399A73C570753D325F081EE9A3A78AA2F18258C5DFB32739242C0297C185C22200
484034C6F979B51240A7B1A3326677929904B567550051B4D548F3AAA253111F7316
4841D3C84FC22E64F65882773C7AC585041DFFE3A6A15F365D825FA0C43DE16DB215
4842243E53975DFAB3C1FA30D6CB8B52B9C55FEF96526624D5D8807AA901B16293F3
4843AE0C4E03E6E22ABD78342AF9837A380BB99B68ADF493C1FB18CC4B968D707AB7
4844B744D296FFEB8F2178B7C47D94DEDEAA916AABF76FA32BC0B86E2526F66ECF17
48456FE4A289C2571DE0F86B9B44459726C41C6C648838F928A8E6FA682A43DEA7FC
48463C724137DAEBD60591A73E72F2A92373103808D3973501F08647028F83F2A9FF
4847400344095BCEC1EDA8A93325FDD58769ECB58511436843AFC403B5ACA14B7F22
4848AD9D64C888F1A8F4E2FAD374804A72E16C0DCC0F2F56B91B3908FAF52A2C6DAD
4849EB9BF87C40FE29015B6E655F40FAC45FEE240C5DE731CF7B54C0F48027697146
48503A6FF6ADE84F6CC90E3799331799DA11AA92F445929BF4A95E9C5F4BD4D63CA1
4851C84FE7BE3CDCA2ADF4DCEA99EBCD25D7724760516259D45DDC9D6CDF7E538128
4852F3D92F8676AC2D0CFC3687AFB29E8BAE8671ADE209AECC9CED20037759EAB6AE
485342E1B41111C9BB92D422CD344E7CB85A7403788C7765AAFA62CBA09A5522A6A5
48540EBE06D0ACD23E77BEF1A15A9E99A4713E67E7C08467C6B2890EEE9AA1F0558F
4855EC24065FBFB04573E13C52137EACC7A931791A5D5F675AB42E9B716DECB6308D
4856EF96E59E36E8D40B99A1E6D9F2DA7F32C1E47091733341D89DD109FCA2AFD4B6
48572D65D6366EAFE4A5BB0891B9344557DB94F065B3CD7D75874AD92F24454C2B21
4858C4D2600AAD92684996A07B4DBC73BF4A3A01620373202E31B7495DCA42DA4B50
48596464003C1431AF808D30E08C4AF67E5CAE26F78188000AA0E8C97151491BF1C4
486094B1CDD72126412E0673ACD9B9322C3EBAA2AA1D039EFB53BD2C708873BF77A4
48617C89B9A48EFAB9E55ABE4FBB6FE868A9B2D86F96A5DB527514C6361DEAB44B53
4862BC93CE3D3546324D72B13FDCB33F519812C1D9D66ECC126F8C3724F4D194DCD6
48633FA6E6F06B2509FCEF85C6A80F9C2ADC3D15A9562D2A65C4D1392FF915679CA4
486436E048D8C93D540DFE0265952094E7E6C8CB33BDCD517247FB81D564670F3964
4865E65AD1F253EC49752D8ABF2CE12B2425551E7F03D5AFF08A7AF854E99322B8AD
48664C2A300672CB3A06B668A11B752BBE824C07531EB46698EE6C6B65112CB77F0A
4867FEFA9A531F51D29EE7F45E8D0C73ADA57B32099FE3F0DD59BB97BCEF2CBA4E84
4868D892E8B6880397808D46E78E05F42AACF717A2DDEC317BE5E5FFCAEA963032AE
4869515B76D34F880C049F3DF624FB85DAAFE31882A2D7CC9C29E7EF28E2AA4C46A2
4870FE2B035FF8303879C436EA4A2BC67DF287FF0C3430E9566857F0CAF38CDFD955
4871559249751A61BB9ABB4946A31881ADED4F938C6468318A97B9F1D60A59C996C9
4872C8154F002185DDE6063E67449A6E0A9D9155EF95A7EEC84568EC8DEC4E3E9D6D
48735E3E37F01FA5CD500715E0777C0B8FC6940C4BB4E6BE1CBFF8D7F461CCEF1641
48749FBBE9EF79801121137F5336350701ECC4A2ED838874BA412944545B2395C1CC
48756873816AFAB5F4B71E978EBA442C309799F81E66312BD6585FDF500075CCD649
4876DA023880E008D9E046660FEE0C93B5FF18722BDF423C5D820DCE694C6803B83B
4877101E61412650B945C63348D5053C3F97B6D38821A262600A8231E151718268DE
48784DCB22329C49DF12D9135872A03CD900DAF07D8F3A396A39FC9A5FD04C8AD26D
48794A41211D509B31D9032418D372A90CA0AF2E16DB8996E659CF103EC725BC4820
48809ACFB3C8D5155D87A2AFCE311BA6A18F95E37A9218BB5A45620FA20FD485FBC6
4881DFBA5A3FA163833657572CC295C5BE868D584046555006623FAACB6602F612B5
4882E6DA8CF67C8C7664992B8062C25E877B578194A33F29039ABD44B3DF14980E77
488318F51B2AC035CF9CC17F6C6C3D75D2FF145B14CBC4F9A551D5050B7E52C855E7
4884B5D02F32D2807518958AF87E7380B6968C51A54C735000F02DD66B2E837EE0FD
4885BAD9D9603E517B55B8A9765B5C6301040A83E56AE013786CB760C98DB9537966
48868D9AE205EE938ACEAE707397C3BE2980B090C3B50C814A247F82B3267FD63506
4887A21E253CA1FE7DA323C9AEE3F8BFAB2D9DF4A01F18DD530E3C618C889B219610
4888E313775F33870ED4791EAFA21B649142534100060E28CA081A2391F1458F3ECD
4889CAB0BB41419C90D0C9CA95C5A4631A01DF76F52DDE04C6570F22578D556AB841
4890A38FFC5A97300AAAB48177442755D76247F84BF57284B05E5D8DE15D0F69D689
48910264FCC502E5A8D8FC2DE3F7823A0363F1BDEC4B694282D0850CCCBFFD84F4AC
489206CEB968973837652E674C1F953725039933EB7988BA490D4D8567EE3BAE7BD0
489321CC586C3CDD38F79B0A3A94FB81FACD7D9ED04B4007345A4C7A47860E38F965
48948CB23565121D1E7A0D0F3F3B7DA86BC3BDF2B4CF412BEBE667E6C427F3F86E63
4895DCF7920FECF73F2E421E54F6F0A8E84A8BDE2D0B9C5E441F4C428CE8622360CF
48966D319385106B2590E0D1A8B6C56DFDE8874A3F30D6DC25C1ECB02356D488BAA8
4897C2BA0E8CFF8EF6DA75E2EEA6D27E822F511BBA288F7AB46B3C519FA75B676B55
489872E553764D23EC460CB17BAB327FACE33450E14D8329F2339600F0366869153A
4899D775A0F12471286F485A65054859B96A00723E1C451C6A8A05C88B32D10AB013
490094D834F675EE8DE2A26910F924583509BBAB4B1DCC5B1FC8781D80E8CF024EAE
4901BED6FE0FBBE088F73987477FCE10B4055C28199A91BFDCE080B5F52A1DD5EF9E
49028506B78DE1DAAA88DCDE13C048AAC003735970A5A74E469EA21D2078FF721966
4903FEC29EB8D667540184E3CE37797EBA575CFE7F484C71F16D84ACFCC11A769250
4904585B7E825E70BC5AF10B9DA5D4E0D7661B486DE2B1357259D473A57598E257B3
4905993F51D3FC6E6EEB9F4792150179796020914877D26AEB07C527CAA4468AC50B
490656D8BF2F137F59E55AF7E778DB993EA55FF446CEE4E8E5D87852F211CC342557
4907D2F3647F6BC423260E2AC6398D
c302751c
CR
49080000000000000000000000000000000000000000000000000000000000000000
49090000000000000000000000000000000000000000000000000000000000000000
49100000000000000000000000000000000000000000000000000000000000000000
49110000000000000000000000000000000000000000000000000000000000000000
49120000000000000000000000000000000000000000000000000000000000000000
49130000000000000000000000000000000000000000000000000000000000000000
49140000000000000000000000000000000000000000000000000000000000000000
49150000000000000000000000000000000000000000000000000000000000000000
4916cleartomark
45c0f7f8 4917{restore}if
c302751c
CR
4918%%EndFont
4919%%BeginFont: CMTI10
45c0f7f8
CR
4920%!PS-AdobeFont-1.0: CMTI10 003.002
4921%%Title: CMTI10
4922%Version: 003.002
4923%%CreationDate: Mon Jul 13 16:17:00 2009
4924%%Creator: David M. Jones
4925%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
4926%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI10.
4927% This Font Software is licensed under the SIL Open Font License, Version 1.1.
4928% This license is in the accompanying file OFL.txt, and is also
4929% available with a FAQ at: http://scripts.sil.org/OFL.
4930%%EndComments
4931FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
4932/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse
4933{save true}{false}ifelse}{false}ifelse
c302751c 493411 dict begin
45c0f7f8
CR
4935/FontType 1 def
4936/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
4937/FontName /CMTI10 def
4938/FontBBox {-35 -250 1124 750 }readonly def
45c0f7f8
CR
4939/PaintType 0 def
4940/FontInfo 9 dict dup begin
4941/version (003.002) readonly def
4942/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI10.) readonly def
c302751c
CR
4943/FullName (CMTI10) readonly def
4944/FamilyName (Computer Modern) readonly def
4945/Weight (Medium) readonly def
4946/ItalicAngle -14.04 def
4947/isFixedPitch false def
45c0f7f8
CR
4948/UnderlinePosition -100 def
4949/UnderlineThickness 50 def
c302751c 4950end readonly def
c302751c
CR
4951/Encoding 256 array
49520 1 255 {1 index exch /.notdef put} for
4953dup 12 /fi put
4954dup 45 /hyphen put
4955dup 97 /a put
4956dup 99 /c put
4957dup 100 /d put
4958dup 101 /e put
4959dup 103 /g put
4960dup 105 /i put
e6983002 4961dup 107 /k put
c302751c
CR
4962dup 108 /l put
4963dup 109 /m put
4964dup 110 /n put
4965dup 111 /o put
4966dup 112 /p put
4967dup 114 /r put
4968dup 115 /s put
4969dup 116 /t put
4970dup 118 /v put
4971dup 120 /x put
4972readonly def
c302751c
CR
4973currentdict end
4974currentfile eexec
45c0f7f8
CR
4975D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
49765182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
49778B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
4978EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
497902CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
498046E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
49814B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5FD29DA32D34C95E
49822AB2ADB3F60EEB0600C8ADE15A2380DE10AC5AAD585FBD13097B1A7E8E210D4A
4983EE96785449E07F0C8EBC2EC5EFBFD0897DFDC15E5BFAC9584D8DE95C5AB288CD
49848AD8B9BEF0B8E5F887B3B0B331542FC8184DCCB753DB6ACEEF98B85756B988DF
4985CAF1AE0DBE7D37D5F44A2E760AAE3A5197C27B15E32275A64946C3E4D0476FD2
49867FDE148C788DD2106F7C825E270588AC05B57E625AB17BDD02306F9E5FC851DC
498732A5A6EDC43C770A71419B2C0C8074EF3F222C8A2097CD81A91F333A521B3A09
4988482A4FE1CB231CE344AD126AA284C3280AAC3AD162CF0EE241BFB4C8F20502FF
4989118507F5D1B5FD898571015E73E5CF2281085072E00D401F6F59761EEC3E8381
49901F26F75DB66C504AB6BABA87D121B1E7040A07AA2FE01F80DBC246CC03C4B2DC
4991C2A715980C52B7F96BC1A78FCC7F4F52EEED5F705E08FC1E5BBFCAD121FA88AA
49928EBE58172C162AF409DBB0728F14923ED02A65EA24E5D52B6AD07777455A70A4
499361833D3789C719BA92E901232599767E423D5AD9C807670BE0E7B5CFF8256A20
4994C7BF7214FFE0342809570F5966A2C43E784F35015D9040BA34FEAB6A6F089504
49953A40A9E9D711A2721D3F4998371430FB3C94BFC619559B97D49627BB630F4B70
49969D0A8FE4E916235335C3962F3CFDB04C4A3CF714DB5E260F4E66FFF2F27CEF2A
4997D4AA26BBCAED23B8BDC98F8F453BA27AD7758537561E766B82DC3032E92A9EB0
4998125D98A22C5466AF069BF72A9BFA052A8628FEC6A6AD0B711DFFEDE3AA2D7CE8
499934EA487038EF50F953B8B4471CBA6FC3C53877EC1BC94582B1123EDF44B4056A
500030F49394BDE22CDAD7F01951C7013D26979277D18EFA594E8F4F2B5E615187D9
500139E842EC28461B9ABA52020A127D2CB9002A673A435B13C10602EEFDBBA6BD49
50029DDEAB9E68D655443A5C2492BA061C1391A51592BA8C353A6F6A0708E8860184
50032B5D031D2CAB87D618E9F6F7A0BF3F66B3FD5A25BB91F7F1F5F99CFF56EFF4FF
50040A35C55658001ED2E97B26C869292F6274D433A5443179DBB8EE987196306348
50053F9E87C6422AFFDD30080C9AC4EE7FE5E2DCBFEE4974331F4AAE479FD8806D4D
50069C2B85FC69EB0453AD827A1E767E5C484BDFBF5C8D6E2B3C96298B390F22D757
5007802643A79D5E29CF3AEDF0E12CFBECA4663444FC87F2027571DBA9ECF688BF28
5008FF0DDB3AEDBA0FB28447CB4B5D5205F40C1E7A525FD7373392EEFFD910AC82D0
500998E71660A1B3227C4A2592F3E853CA4CDF64DF19A52582E167234F4036FAAAB9
50105446BE102DE2BF43E82F0112C2A20F15A3F92C6571AC761665A905362C4F8BDF
5011AC8705519C99862CD9C0D75113C4AB5FBB83C880E46B82715B5628890D9103AD
5012A2329638B95D93C4DECDC5E6C588C9D5183EE6FC28FAF9825F02DCA567306D93
50135440987A81B51EE7291107A08F201C609FEF91A8F0587E8B13D4BAF74A5A6815
5014DE9E4441F46AF8E1DDDFA2D611C889614040B144A5EC064DEE4638C04EAB2E37
50154CA8F50FB8C4D65BB296DCCCD39F1F554CFBED96670A91F515CA10EF896874BC
50168EF48C6447752C70FF5A06F928DB55586354076773BFF7E94C4C3A7A1C1F421B
5017A9B4E3936EC26E0C19BBBFC90F021E877F54B62108F6DD1C7F6D5B8E64FC9362
5018E173F01BF2904B7E5A08B3543611562C2714099DE7D4FA330DB148B560A9601F
501942A84452811CE213DCE782A0D7809CFD954D6BC1EBF2BA4D1B18F50FA8174C96
50203E0120E266AD5DDB40B3F6798AC28CDC5C3C4BC34583528F5B5DC8A222B80B59
5021A3A93DC715D061EC6915E6E6E21A25425C25E8747C60F170D61047108826F96F
50227830E220C108B441B6EA3198E33C49BAD8D43086E49F5A2BC7958A1A8CD011C4
502349045193394696EC3DDD0BE084E8F2E9F0B9496F035C0DEC1CE11409DF566428
5024D50043CFF5CDD1092F6E0807E660B68163BCA738E8D98FC6EE3F713164CD204C
50250BA84FFF4F33F47BC31750B448603D7ADB9AE92FA91AEBBBEC0DCD66980E6955
5026CEB425ED07115B24E40F53B29B9D840842EAC691B4F591F866DF27556474B485
50271C6F53DD72499847109B16C7093984A6B8487D4F3870DD517945CD90E648C1BB
50288A6861E540FCF9D75B984B5009B5CC760CBE297042C240DD624111670B703388
50296FE6FC0E89C6B4C88F51DFF3913D0CC1FB4770C8CBEADD4B86393605C0B6C468
503083CA5594754411B6FC331EF56D7CD6D247FAE42E966583C29239A8F862348D29
503160B177984B6B957E733DB4D275015691D91443BBB13C2DA96097A29733CDB284
503242F89C85A7A743338C9DD3BBC4EE53F695E5163E6E1ABE5791ABF100B198B9B2
50331C21E2FA2FB4AFE7F9BB2D381260CDD3A2CC05BF513AA1E80ED69FA27BC5ED5A
503421445BF00BC2F997B356D94AF13736C6D3B0613EB6F4CD96A685FEB672661DCA
5035206105EDC3CA07900676EB2FAB37F48D2E8207BDE1463894DA3C5B1488AC1EE9
5036D39DAF691648048F5D7A384B8927F8DA2BE3602669F71D80686E427F395134E7
50377ADCC611BA91AD4B7A0237213C60CF2C905359C90795230344FC3C50A22BD44B
503855B2044792509F50F5C21F53D9F9E9F063ADBED3AB99E2613B23334FE8DF70B4
50396120F2EDF69F50BE793EE145B9FF9C73179DE640FC2ACEB5C6617F918CEEB762
50404CD81E665B2E544864D13230B058717B207D3CC5D6647D5343DB4D0356082392
5041871EFFA896631A7E0D6477942B632074A9A4EF7B09D4701B1639BAAB4E03A40E
50429B54A7A4F845CD63F88831EBFA4FB847847CB98F3455CB5957F2E0A0F5623645
5043DBB5C5564C7F8B117D6E27E65C0F3EA81AE67B4AE4B201E7C4FB0A8364FE53F5
504441A7CE8F834C2C4B322809B353A5E63BBA7BF3B7DC1A85EA700BD287C2BD3FC8
50452832B0BB4695FC937FF5EF06FCD87DCE6DE793C2B1EE10E6450352C17726155F
5046220D550B1759E15AB2C1D5968E52C8080CD280E99D3CCC0E80C2EF8BBFD96001
5047A226FEED7311EFB4B67F424B557A877379A15BCA54780F0CD2CCA00400B9B39D
5048981C6B552AFD2506D1B23618FA9AE6D8143CD7198A8482CB416CCE62B992347F
5049337D505A4078713BBD91E5535BD58EF0351EBDCD749CC24D4AD39F8CECD7D6C8
5050139756680A4C03A58B3374CEC658D30160AE4863A3938A891BB59CBE02BB451B
50511BA4B2B6E68AB61DEB85F95E3C909B8B66E220B9F18280161C279F10F7093CDC
5052100A53D542F071CC0A5AF834DC1D18738F5DD62A5573E884E1FFD22BD810828A
50531EA47F8218C15A2E97CBC609927DA3CC2B802EA4A0D7EB57627C135E3B065905
5054F97597D818A2C5CC6F328AD25AD11FA50F1E4FE637980B7474D6F85A521892FB
505572989AABEBE02A2D0EFE88A6F67AC29F5D8DDFEDAAF465C439983C6B84389FF7
5056A6434462BEB7B07DBE4BBA61ACD4A60C55B5C0AAE527DE381DFECA2E6BAFDC8D
5057310364ECB42CAFF72BA93C067B2F02D1CA7C34AE7CDC46787A0E234C8BE8A928
50587A6F3DDE0338FAD532A9886E8E3525B85DD39364AB03EC4C0DD25DC179CC1989
50591BE232E387E857C78332D834679195E10F1E7B87B7966DA3B2238F53D1E13FE2
50608F55ED6A92A750C7250C9B91E29796621E7E9520373214D7DA81B2875A986D33
506180382AFF6DE1F829F048E57664D9C4ACE91E4684A51023943A4964AB5657D610
50623A5405EFD4CFD1EBA684243E15093C9667797BB47617B66054EE02C41FFEC45C
5063C1BAE8AD56B00D323FCB1D2744F061FA16E161988741A319B1564E04BA210996
50644F9F02A3268CABE450D166A763F5284954564A1C86B76544C5F5ACDFE0D758DB
5065865A1CFCF9FE8CD5F9C3B2998C56468FD52DF8EE60C6935A3D221EAEC7714E3B
5066301371C7DDA0B03A2416238F2B47BAD3A2C5021C886DF51C695AF9C87A864B48
50673BB3FE0B355EED5454B59B25A0D8A1B8CBD356C24F64D9B55E16C30C011365C9
50681E0380753BA3EDC0868788D5F50B9353D0227BCEE1BE36998B2622C0759BD66B
5069E4444250589F9CEDE766D8B940770CB6B89503E925B35C00CBEC2873D2DC4A29
50700823FB7A3717B69A7DEDBAAECC067949932728E89BEECAA91DE3AF9BF070B9C0
507130EEFA8C0A55C8388CAA2F0515915C98E67FA095BB98967D14B0DCAFA9622E4E
50722E0EBFC768D80585ACDF28D8A5C2B6EE2FE7AAF62FFB90F569F84A0903996DF0
5073C1D5723366C436E4088F3E2BB9B47F9789052A71CF5C49908CDC1DDA194BFB89
507414D7E3D7D4D72A150FD6FFD8303E9DE5A97A71B808B8BDF2AE466F31BF5D7A4A
507544F81230BBE2B456A221E2F72A8B59F8FEA8D31F8A005A5BD93B9F49CFDC3DCC
5076CE2B67090460F632271C7157BDC2F05BC2749FD562FC28682A616A52D1B67654
5077DF78B7843A9EC26A7DE2EB168F874904C2915B97534B2D4D9F74A9573A771D34
50789F7BC855E8F794621BF6AD471BCC347E2DF5F620F5C209E33A4CBF1EA85AEA87
50794492A77342DD33EF615FF34037D660B713C908786D9022051B825226545827A3
50802AD1B05D654DB6E6D261B4E8AF0933AD1F0FCFC7201E1A7C1B4199F160C38676
508121ABA2DDF1CEB655B3EC3226E0B122976EEA998F7A5241F062E54AD1DFD6ED26
508247C99A439E0AE95415059179867CDD3F0FF751F3141309F40E00A6C7C28433E4
5083F649BCD5DAA64177580E05C495EE7BCBCC5FBF104DAF360CC2711386655B26F9
5084D349D887EEB32ADE595241560FD5924A1745A22E6A01DB9C285EF14596EBFF0F
508503F36EB2E0A7C3864F819EF7B0855121292D49482F046A55CD7271FE03F02EA5
5086886864D9D8EC22A68C23089EAEFFF03DED6484D8C341861EF8B6FD3C5BDF5AC8
5087352DA4E13A1E30D0CB71E090E9CFB9AB2CAFD0CA7C34AE7D8E3B2EB4666834BD
50889CCD1AC2108348AFEF6071796F4BB2FFA4A67ED917E76A109FA2DC2A30D744A0
50899AE653A748C1D18FB52595D84E87F1C1FB6B2F32667FE203262C66627AEFFED3
509092B23861E5EB238BB4EDCE09DAE1C65BAFC198CDD1B45D42CDF93E16BB82D35F
5091821E9E49067E966AFAB2AB52928F8DD6359984071FC37AA652FB834A09E5BD93
50923AFAE161140E74C6531E413E8FBBFC42BFE8A464B71EB1D8CAA93B33D7BCC3B0
509347C7EEFCD3E9FCF26FF9441DD9BDE68D77AD7251C06BBB9A2103049E8827CAF0
5094F26BEF33F656A690235DEEC623CC519AFA82DE2AE16FB99F780FD7D8290DA40B
50959B604AEF36B529FD184239E7D50561A07428D28E51B55546590A1AEAD4B7F2B1
5096AB8C5B9022C1FA03E33F8F409B24911AB8BFCF6EF4A8E415263C789F89063E71
5097C0910DC20347469380B7FC1EEB87D4CED7F4A361E58B61C91AFCABA35C03F978
5098B9FB5257C31657EE48504C355CE893FE3C553274C641DBC4004F5D5B879CC5ED
5099D3F21F867F6DF054127067DE86189F0B59A1B90FDABCDFEE61423609D888EEFD
5100F4A1367129962110C651D9481CEDDB8C5C2576A59AED64E95F7ED042AEAE2F7E
510181AC0C408E593DC30DCAC334EDE9EE27D932B98F040DDCD195D6155607DD2038
5102970EB78221A94C52BD4F0EAC65F1FC10E5DAA93C17266F351669CAE56F42B68C
51036D01E1EA03AE554D63CE76D800FDD9CFD89F80A241EAEFF7EDFA41794EA25CE7
510497BD5028464D2CD45B53834B4AEF8BF0B9E7C6ECDEACEC887E8790A47A93F668
5105A9095E5FA1116A122C0E5B74E2226C654D3187C6CFD8807917820423DA3EC1DE
5106AA020EEEF2280C44A15209EE2F3FC1776875308CEAD38571E7BF889F287E4594
5107971A83605E0B4169D4A23EE790515223DF8724054EDAD905F57918FC0BC64F96
5108514B4BF7DC9BA79E763C22C977FB6146B10D26FEA1BAA7BAF21312F78D1625A7
51098E242D743471DB5821408AB786E4A7EA9D35E30E85533C617689F95758FB2C7C
5110392E759C299DCCE36689686DE0C4DCE32649493650BA194A6208C5EAB670B170
51113F2C70BF0EF0E3BE2FB0A79224FF4ECECD6BB3388C6D06867A0E5E3DB93C1B2F
5112464C23E44D3132E7D4086E3B59B1D13F49EB4772DEDF8EDC4F603217233FB7BE
5113C13C28648E9AA51D53F11FB896839F97AEDD8834BCA53CB0021AE91FD8E95E2E
5114F8A094093AF556B9639F508A401542B06821FF9DE1A745FE9AC5CACD5E8E1053
5115911442FC15CA5333751ABFE2C617D38FA1DC332BFEF44AE569DC631C93EC54D6
5116261583A695F5A392867A57F59B741EFCD2DCFECBC55D1EA5F2317601C9DFE9ED
5117D1EA466210FFA905A8F85BD58B98991BEA58DFD1CDED5C9B086D42CCE632DADA
5118147941917B879139E016B0DDEB8446BA017FC8EE5A354533D667B0835F5D027D
5119C2D580C16B80B3D05CC92C0465CAE077729F0A15B2DAFC89DCD349B3F81D0516
5120C65526EB5C10E45A8A85D716EE35FB9AB201FD7C89ADE5AD925A174169DA20FB
512161E96C73A143DF964C20589EF24A0FCFE6195317F2FA0D2249C0D8E649C3D9AD
5122FF13332EA2E4C9CD36D8443EC8F027B61CEF92C6A6B72DD4ACBACC16E429A9A3
5123F5F29C1631360E32F8C1C93ACB22F810B86D2969A7480F486F62F8488BEEC74C
51242C1AF13BB92BC578E8CD30BEA6BC8CB68ED730F54CED0167605FA76AD7B7E88C
51257AE7688E598F91C471BD65A542E96D64B1EAF19FB4F1234308C48C2DC86E2193
512611ABDB4C6189C6F201627C693691A86DD07FF55C30FDB3F72381E09C6080FD7C
51279182762E5001E30F52A216E0B71E4D2D4E2F3B20F95DF3A11FDB2D2B5B5FAA66
5128C46226D5E0C77066349770514E5675550FAC9394FB27CD2C2F974F1FD58C04A3
51291EF53A8AB3B2202CCA1CEFA66228E1480A0709436C44BD3319C40CF888AE4692
51305DBBB52B15CF3A518F627F672135A24D5DB9B2EBEF04C860AECF231EBB5A3BF5
51316DCCD5E72FE4B6DD29E896691868A7DE4120AD06AC573F5608B8449B38E71CA0
5132EB5CDA3F942482EA7973661170F81DC88D54DD5B92323F46F833DFA757107E9E
5133F62A47CC50FAA1B68ED535C3E0E1073532A05ED339C8D70B3B9864808ABACD23
5134AA95E9FDA43D54C66A675FA074E0A5B8777D3C07850A09087F36852B5351F35D
51358BC4DDFCA35CF29CD5E3DE118A741FAC4DED36847F2E2C6CFE08669301722D94
5136376F540982958074E7F1383C409652F6C99DA39FE90B38221E75BC1ECB93ABF6
5137B00F410A0C5651DB418566AB350FDA1789AFD88286AF3BCB42B98386F7BC144B
513802DEB8940D20A6B3062F0C4244EABC50923390064F1D027A8BACC3DE45156E56
51394A942D1B87F1C4A76B0D4D6801AE792CCAE3009BF25368B31B6AD5476FBD3BFF
51409759EF463EF5E78E10B7BF64005B2ABE0E8813950A08A1808587A98E0021D0DD
5141751AD515E8278F1A0759E85D8A084490BBB0F8206484AA36388B1013643D3198
51423509078847BDAE08E76FA5BF3E3A73C323CE093DCC148E3C02C2DE1E26C94D5A
514340EC8308ECB02FF7DD04EC1005A2A0DC74D4E587F10A3EF349E828F69FD38962
51442F0C74D5DAB3ED6CC9F97008ACCE74C086A503948DEF1AAF58FC8BEC703CD360
5145D32098A56AC776B1BD08442052A2A4EF6C8798F7CDC102AF1A2009657254762A
51460793F79A39DCD6ADBAA5EC84A7ED6018BBE727E5D477893D84F157074B24C13E
51478D4881C7DF8ADC13EBA0D89745EF93B7616EC5355600BB0D2B630AABA3CF2946
5148AFFD0B2B724EF0F28393F2034B2E69DA5061426805353EB4D80E20739BC4C510
51496C45275B8261DCBA10DE1D104B12F46ACD230977EE7D7D1D35D2814139E38C4B
5150CA6937CCFA653349B1EF64A98457F7B4B5D8F2978F16ECCEF7054905863AA46E
5151DD524CB33459220C71E9EFA7845A3A760A507B3D3ABC525B35930B613710A13D
5152098832C58EBBC8B0CA6AD516E6385792C59220331D0922A1F6F838A8DE13C337
5153900462F952EABBDC2EB1FBF94A66186C177501453CD3FE3582073DD86F04406B
515441B6AEB440DA475E13240445D46726A6D45185D56BAB8807CEC8A8F7CE1AD149
51557CE2E1BB5DE4E5B9592241DD136479A65905FD0062C91DFF7349874BFEA5D9EA
51562F610ADB9AE7757B2307A1BB9D6797D9F9C4844A59841C7C7682105E23A374BC
5157A91885E7410F56F60C29AB8B417E2D6092F8BB70A2DD5DEDD4BA1077D7CC62FD
5158EA43428C6F79C332342E15F75B08A1ED360B3511F823E75AD49BA7AE63B19238
51592AFE8FAC2715E2FDC895E95036D23127557837506A3B542B0E4651CE2B89C252
516031EE8ADC26E2C04E8E30A9CA12F066CE01953BE7867171FF6C7E834742C36C3B
516158E74E4B482CB85FD4D24DB03D753F260A585D552CDC9E1941446F2F5B45FF24
51622DA4932B973139F328E7E92828B900BFD398B6F41DAA0D6861C66AA7F5E3299C
516387A5925CE0E0F9E09AAE0792954A1F2C0AAA8288DEEFFE579E38A3CE8A943EB4
516455322A87C1634074EBEC25F724DC1BCC1BC10458CA6C4395659B0DB6B612C151
5165557CC669D8DC37769E59A5AC6BF061C79FEE265DBB59520EB8FFEA273601D1E8
51662984B8AE31AE343F37D03E2BF97DC48AFE50BB6138C7B9F9B5E28672A37BD8F5
51678F8C98DC43DB22C6537028798198E2D3B0453ED72487267D653DD50F1BBBDA92
5168833A987A95FC1F275B90B581B4BB62B6863A4CFAE37F715EDF3EA5A33679FEB6
51694847ABB4B3D170C275B9F1AC3156D731198DACE0B051674E85B758500AC9FBEE
5170ECC75EBBD85F8D62AAA328FB09C6526F853077AEF7EFBFC2B6A29D6D508B1E19
5171EAFA4C67EEE44045B9F15B9762B3DDF5CE5C18B23A5C2F73A1F6DF7F8679AB78
5172843AA41FD2A7DC02B45B729EB76C66A89F5F76E5C4A0C0563B1EC5E75D72EE35
5173A7F1FC89216B60D82F6F2B8DBE85E4FF4D63712C689E696F60B52AB622C2A4F9
517437C380775EDB72638D3F81F61D8D74C76D813DDFFF35ABD9A502F2BC7FF65754
51752A8660A5A53E0CDC2E8A95B6E33CA153EB711DC796D313C8183D707D3F0E3EE8
5176BA65E0FCE3F1C07F3D93F77056688B5496AE35A6BA0B59619DE78640A8C3F7D9
51777DC5E94894E1E63A7D80600B945B1CCA50F1B85F57673C6CE09EFC4E229D4635
517848AB466118D273BAF7C1B52A067A88C00EBFA7FCB378F1575BC0145F294E6F7F
51798007602C6560476FA20BDB91831B22404DB1C4C167594B1216C25226D262FEC6
5180F5D0DBAC4B8D743C669CFF2068CB9BCD2DAE8CD6EE1B33BBF7514C4E5EA79D46
518111AAEEA72B791C22A1822E686F3858E95A37D9CEF904EDEC7EBFB0E60995CF64
518257CF0EAAE6D4925126349DE06E101868BED82BB51E911852E6780772912570AF
5183CD5690C6DA70110DD9903BAA3BAD581D206571D1E57712C75D112254C7A3DC8C
5184892B66CA346EE682E7D910343C1CCD07465D9E49489839BEDA6174FB2E0DB935
51852D2CBA6B67ADDA1BAA6A51690A10C819692C9BD35BDC689F9DEFEA78BFE79C47
5186C9CCFB3D04D20F1D3E0B73498FC0BDC50A3BA6DDB3FAB9458803BB26487C1397
5187511717CA3493A7590E27B34C2E2E1BE2ED884CAFD5F7C185CD6EDA68951673D6
5188384E6CD12944F86D178E73C8D78D9048A5B1E2FCB489E723F8178F842B362BC9
5189F3E4D511B369670908B2C8087AA29F8B592B8AF7018311C0F12A8D45A3625096
5190D4C88B19890571C60821F38310685F8DEE7A7A5D209265986F92AAF11143DC85
5191F435BC210621851001B6A402E3A07D0F204A3B0D75DA3CD7FF6637D1F434B962
5192F404DB3C6BC318EF517AA0836A975C5196976250B5D6B21DF528FB47181F5279
5193E1EEBBA0F344D7EABE71904B5C1DB0FD07694C469085D50DF4990E294334E785
51945E5BCC4ADCD38685147CE535B23F3027AAC01A0D65AC751D9CA289B4A8906A64
e6983002
CR
5195165427976FE6FD699442196B0C247C960C9086AB2E440885D11BDD314A3FFD40
51969C5FFF29B40110381ED22F58CA53CB2407E5B993930DE5E32CBC4CDB2FC46604
5197AE51C1375F9A41D7B5CB2B2FA52F65CB925BDA5CE18BDCFC46933071789E3F20
5198C08FC64F367F409C38279E5F88EDFBEE38105A2469CF009344F9E846419519E5
51998A5EC45DE2F6837C65A883C524305D18769A563691F5887D920CAA8EF0D9D56F
5200F208395E7390570C6DBBE5AF515BF64478059F922068F0E473C020E54CEBF22D
5201495D5E843839912C58FDE0A61D4E390E4502E9973562BCA49B3A17BCAC0352AE
52025C27DA44578C4FA5821B9A3B03FFAA97E15E83CE09AE155BE919EA42301E6195
5203F59C0A9131C4089E97223BF614A37B5C7603190DD465105AD86DFEB74E65479B
5204BBCEC9EF93508604339454483E244A348A78F29EC4A60554E77136749A4A74BE
5205F4DE4955FFDB6AEEBE19705EA184605994D2A5284C05A479A33D56FF398DDF3C
52065B474F53743255BD5F42DADADD7F71BAC446A10084DE15876FF74765654405C3
5207470144E2902EF213A594FB721D0B0FD823DAC347777B7AA58688EA834514299F
520875A3C80BCF2FD24D19650B7D2C21ED664D290EFB9122C125F5DE1B2C4A817905
520906C27E7188C9BF3965A6A25A5A9C0353A53D05BF64FD4C226837AF6D9599BE70
521004142CC78E03626BF10D68CE17C2D081B3A4248FF392E985A6946D89BE97AF1B
5211C6BE7E9820405D06F5FFC06D6304028E5697E8AE15225A8FE19CDF3DFA2079A8
5212BA537833DDBEB6106BAADD45E9ABD1C7B5157C5CB26F971B0E7EE8069E3C8FD4
5213A7A1833B19CB43DE4E7497D505AE0B7BFEBB3E489315842DCB3D6CB7E6E43AEE
5214E215D011B2854A3CEE5AADB34A9CB5AE595F2F02CC5CAEA9AB28161FD93F3FD5
521587D17D564939ED05A5055029D1AAAD21726C1AEFA777EFEDF8D687D9F2FCA607
5216CE3B585E044A8CFFBD6E93849467378BAE5AB8C02615AA974546C3D7AD70AF26
521755C62A9C4EFE256B5303BBD0B9E13544F408F8AFD7265425BE1421FE6B1E41E3
5218B6D9C509B4EB820507F2B41A92F93A584AF62987450095DCE78F9862284F0C53
5219F46B02549CA9EA57C9C4CA8A0BC1EBE947AFE73B8F7958853BEAF81D78E23C25
52203BEB6EC3823E1DC7524E38CD63577795EC3DDE03027369957906C85A22F9D805
52212EBD287C2CAEE0D3985264AE614380E421EF23453A68F6E616B3191B506113AD
5222F6D569E4A20D3B23961DFB3ECE07B382AFD2CCB1F2BC4F3C1974C06C8652682B
5223EE7ED59D4B2F9EB8492FF978747AB12E123932B34C0F9F3335587C7B8B8E13A4
52240E1EE5212AB1671DD7A2AB5AF2373B60B3353C22FF8128198A5245F9C701B6E9
522580E92AB14A77AE7BA217D33ABDED222EEE9B5888AC6653459EA8738703FF7423
52268391380AF83E56A3BDFD3AD43F2F00E87DB9153D99A3B358A38313A7E6D6B43B
522707804A9929FE01EE112C0B1960B286C97E7F563D552250DEB189F3467ADE8491
52289C25A473EC8D590BC6EE6E7F340991D4317F1F0E29737ED93D18BA4DEF6A6C0C
5229F9A71EFDDBE489F1A5E27699F8C120DDBC96C4F3F3F2F90AC5014F78AF6517F3
52303C8E2B548C7BD7CA91ABC4E71930761D5C609CCB41B7CE490389C7CA6B1A7B34
52317130074DADA12806475998153EC604A5FD7A04AF35D00DA9564123A384E39126
5232B228353532842504229FD646A0FA1C24AC462A75A119743C17071D0F3C370D04
52332FBBB8155EC868014066C6EFEA257752846195C4158AF9DF215C8B20AE276F50
523467AB636CF7A49D34B26435233460DFF6F728E91F1FC4224A7AB1C991C94D3224
5235E75B5764642BF2972C9F72A347861CA23B78BD37E0902CE7E3776E347AB20388
52362F97386F31D1D41B43B5A1F52C11C908155E7C3AD9C818BD5F8AB022FE979EFC
5237695DB2B79BE6264EF7DEBC936048FF17E81408CC701C0B1C742B11F6D9442E4D
52382BE899B3D354D07CDD71FB19ED3972363ACB918BF229ECDF8C5D6F9ABD5263A1
523981A0BB786D0A859C53BBEEF61872E24BB550FDEF14A66FB0C09836F4677DD4FF
524026FB82FFD120F2F8947B51B0A38F47E65A8019C88A1C343E144F7CCDD1E9C541
5241640452BFC800ACD27D181077E8F59E12CFFD7C67DF26CD9DE94B87A16BCA14D5
52429EC57D1963A82E2E1667BA64E7C10015A22C4C6FA06B9D76A9CF591FBD2003C9
5243116043C62347D68F99214E90E01E80D140B1D3E8AF7526C17AC8A2056B63E192
5244031101D44760E5679C4FFA2FF739CBA5A80AE9F95DDD80973F32D0411F9A43A3
5245887CB08E116C823DF5921C157390E1568C76B82DD9A7C69FC76501712D2F24DE
52467478B1FF5F7C648754860E394340F17D90865DF0D75A1A7770C177ED1052E10A
52472A60B370A9DE3A6876B9E102A6706E464A91DFF642F498162C9BDB4F0827AA54
52480D1F36557B76DC6FAB62E52078C40F608CBE6C447CCD32A29C9751C53ED48951
52493E2466B2BC8C28CF21A439CF54B50E6DEA50761A23333E8E96233215BE86B870
5250461D46D227790B1E65198B0C32C44F9861B94EDC731836D157B0B3419AB6AA9F
525141BEF201D3637F1F6C3F7DCB71BD670EC111B24C411D0AE3310DFC4C9279BCB8
5252F5D936F0211B5FC10B7957259D2C3874724EDF11A646D951E79CD958B60EB6E8
5253071CD06657B15B5D0BF492312911076FA5E74F7DD94729A1A17393FE5891280B
5254D0BA2F31DFA6B3E01C0C0F662D02EF94590EDA84EDEFE9F28F5E7DE75B79D8F9
52554178ACBA78D1F147820EF76DB4850910C3249DCE6EA13C1161DA6EC36BC129FF
5256E9C97EFAF481A1605F788CDD66DAC83A95BF09FA47850FA0D7A844AB7014D9C4
525795A1C6AF0D3AA8A0DBE08FAF4E4FF7D6039F6115845EF41EEBC31D1D6B2CA95C
5258FB29A10E77935F79EC66A5D14FA898CF1347CA2502496BFC44DC1057AD6B00D9
5259E22C8A982C04B48494C7B1C630FFB2FD1701F65B0558C5A2BE9C5A017B3788A4
5260B9A22CA8E87600A54D570A6391D814FB95FCCA3631B123AD03A9EE0ECF9A8B6B
5261A5C050A34767371D99220A3395B8EEE63067AD64C93F4323A1C33BAAB8ED8B85
5262FB1F71CCB36B381463157A5F19F0CD76CA14C77839BE94271264F5B454044D8F
52634458AF7DC8A85ACD3EC014E424D102D2FED460A7AC342E23B960846056031213
526425CAE1315149CC2069E8963AB540265026F4B11BABD9C4711875217188D5B5DB
52656E9CC8E436A56D53B37809295276DC0A21F0CF2D50CD5FEA1AD417F1098A8999
5266F4163AEA50ACBF468E0863C901DC518029692C076C5BBD7954DEE6504EBB39CE
52678F680420CEE573D8338DB67A5BB2B5361734D36D029812BF3AF22AE71CC4BE7C
52688C0E047CA409DA46AA3EF4E6B345A3E1A53A9892A1943BB32ECFD340439C1D52
526914BC35A77EE696CF792BC25DE49B75F3B04F09704B64C8B1EA9FF39E6E8D9B4C
5270A39ADDE4B5B49E3FBE3A7F0AC51988057E46379173D5D3AB9E786EDF308B5F0A
52715B2DA6D030F881DFA0D479D8D6D97D66F3D25ED946128B38DECFD701E607221D
5272EE1069CADB078D3434253AA89970029EADFE217FF24C825718F68575379A653A
52730024F720B6355DB4C7EA81077DC68DD6DC61F85C2AE59E28FE04234E7887A9DA
5274E4E9E36FB0012C49B48F057C1E98380639744B5EF0B135596964BB2F020ADF92
5275812966653E399B2EF9D5044A6F8E2C788EAEF6108AEB70166157E322EB549002
527612A5FC7F4DB295C0DC64BE331D154D07E49DB9090DA8194B941117326D763EA0
52774CCC8B7F97881190EA60F9D0B33BD2DFF04BA5AC81143068D66DBA61A08D3930
5278439A0A87540C2CD06F56A3D732CA041DCA2F74DFB4CD05FBD76455E389095AEB
52794CE5ED7BE40BFE6003C9D6534F19D150FF8AF8DA936D0739EBE9128BCAD016BE
528070EAC25338227E83963F81AD1466C3618B8044AFA276879B9E621F00B96B0B67
52812E8C2D95E222EA6F4586EC05BE9768957AC121965B9BBF9481EA4C513BC092F9
5282A4D44F4F949E5537C1F59F74B48AFAFA371F62823286B5E005EADCC936729DAC
52834817750D66C15D3508DAEF758FDFB5C84245DF6C040EC0A91B207A1377DEEC10
52845387A82D27199E8826C00B44A5C2A4DC784B1A8288769428FD632D7AF1C3508C
5285C42FC3ECAE21E060637D961D448568FBF539B8E85B7AD60F1A573995C7857AD9
52869755535F9D04B4ADD5DF7EAAAA0819A5F21F111D9D9821089D071907307025F9
5287B6E4C4DCB3E7F6F06492BA6EEF4F32B38393CB787BA9E00D8F60A8B4CC91B228
52880FADC305AC966F9C2547DAE80B4F60959658AEFBFF9F63B95F106EA226978D84
5289C7863BEA1C71B13A5FDAC35FE9D7037758574081CB58AF6DDE2C80E90ABC48E6
5290DC0716B13DD52ECE01079EE01A114E444C1F09AA1788356432E51806D996A99A
5291BF169DFBE02DF5728D88FEC214B3B272CB1A7C9B9168F302B505C54584A0B428
529217CBA6046E0319FB5041FB9319E75E7F805232DBE8312E63C639F35CD679638A
529360E1B0BAE1F1F9D359A2786AB8838694270C368D7BC92E9D65D119BF317B8909
52947BFD7AF55533BCA289460558977CFC99E3E89D0C4A3B50C17DE43E2A7D7210E0
529596F0B6BA7A4C654A8C59DF2DD5881BE5AFACB64489FEC5B129ABFB10FA17B3A7
5296426E2445778B53336CE63969C5F3567DC66DEF49A7D1A6C19C84EDE1C2FDDA4D
52974FA5854F4F15C7FC1AC8175587087D068E2150D05141970845D173E5312CAC9F
52988B9CAA28EC46FBDDF610B9371BAC2F577ACFF2F7CE3634CB13941BD437390F84
5299ED894384E3130E663F5C0EE25C2C8096B7BF90F7783FE1B00F6EB78D92DC41D6
5300BADF384149742D6B9CCF1BA890446599FD957258E9E3041201B958C2E5BA6842
530132176AB1367690BF1AE79B6075315D538C7D6634117A20DD82FD8067F5237B5C
5302C93F4989D054A45FEA482AA961738EF0B9CA8D6711DA94A512BA132038866CF6
5303E59012950C870598644FC143CB205494BB65EB649FDD6157FACC5814014C5B46
53041153221D8F2D3B3FAFEB01DFF0BEAA0C00353668793379A88FD7C9827277860C
5305516724161906BE5B164E
c302751c
CR
53060000000000000000000000000000000000000000000000000000000000000000
53070000000000000000000000000000000000000000000000000000000000000000
53080000000000000000000000000000000000000000000000000000000000000000
53090000000000000000000000000000000000000000000000000000000000000000
53100000000000000000000000000000000000000000000000000000000000000000
53110000000000000000000000000000000000000000000000000000000000000000
53120000000000000000000000000000000000000000000000000000000000000000
53130000000000000000000000000000000000000000000000000000000000000000
5314cleartomark
45c0f7f8 5315{restore}if
c302751c
CR
5316%%EndFont
5317%%BeginFont: CMMI10
45c0f7f8
CR
5318%!PS-AdobeFont-1.0: CMMI10 003.002
5319%%Title: CMMI10
5320%Version: 003.002
5321%%CreationDate: Mon Jul 13 16:17:00 2009
5322%%Creator: David M. Jones
5323%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
5324%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
5325% This Font Software is licensed under the SIL Open Font License, Version 1.1.
5326% This license is in the accompanying file OFL.txt, and is also
5327% available with a FAQ at: http://scripts.sil.org/OFL.
5328%%EndComments
5329FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
5330/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
5331{save true}{false}ifelse}{false}ifelse
c302751c 533211 dict begin
45c0f7f8
CR
5333/FontType 1 def
5334/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
5335/FontName /CMMI10 def
5336/FontBBox {-32 -250 1048 750 }readonly def
45c0f7f8
CR
5337/PaintType 0 def
5338/FontInfo 10 dict dup begin
5339/version (003.002) readonly def
5340/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
c302751c
CR
5341/FullName (CMMI10) readonly def
5342/FamilyName (Computer Modern) readonly def
5343/Weight (Medium) readonly def
5344/ItalicAngle -14.04 def
5345/isFixedPitch false def
45c0f7f8
CR
5346/UnderlinePosition -100 def
5347/UnderlineThickness 50 def
5348/ascent 750 def
c302751c 5349end readonly def
c302751c
CR
5350/Encoding 256 array
53510 1 255 {1 index exch /.notdef put} for
5352dup 58 /period put
5353readonly def
c302751c
CR
5354currentdict end
5355currentfile eexec
45c0f7f8
CR
5356D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
535745D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
53587934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
535972C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
5360BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
5361974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
536211453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
53631EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
53647B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
53650D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
5366EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
5367404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
536878CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
5369A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
537088BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
5371C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
5372BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
537398C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
5374E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
5375143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
5376981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
537788A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
53784BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
5379FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
5380347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
5381FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
5382C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
5383B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
5384F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
538529F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
538636C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
5387048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
538880814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
53899B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
539075ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
53914AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
539274616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
5393D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
5394E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
5395EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
5396543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
5397710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
5398EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
53997F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
540003CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
540101CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
5402500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
5403F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
5404AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
54051EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
540685C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
54074DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
54086A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
540955809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
5410085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
5411BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
54122E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
5413CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
5414BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
5415D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
5416991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
54176BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
5418E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
5419E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
5420B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
54214DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
54221DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
5423B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
54248172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
5425FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
5426AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
5427BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
5428E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
542938944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
54307622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
54312A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
5432DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
543322B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
54348D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
543544F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
5436D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
543742926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
5438C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
54390C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
544066579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
5441E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
54426943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
54431854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
5444B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
5445897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
5446EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
5447A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
5448F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
5449A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
54502AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
545151779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
5452598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
545387B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
5454178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
54554B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
54567B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
5457AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
54583DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
5459337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
5460C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
5461DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
54627DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
54636F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
546498907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
5465821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
5466C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
54677D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
5468B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
5469A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
547023C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
5471C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
5472969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
54733A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
54749C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
54751976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
5476B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
547795F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
5478FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
547944AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
5480FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
5481E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
5482633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
54836F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
5484FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
5485375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
54866CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
5487EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
5488E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
5489F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
5490DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
5491D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
5492D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
54939588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
54949F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
5495B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
5496D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
54978FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
5498FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
5499B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
550000D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
5501909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
55025661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
55037F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
5504BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
5505C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
5506BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
5507BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
55084B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
550994B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
5510F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
5511E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
551292C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
551363553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
5514CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
5515B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
55165EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
551786F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
5518AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
55193950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
552035F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
5521155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
5522AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
5523E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
5524226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
55259E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
55268B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
5527919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
5528A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
55299C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
5530523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
553188D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
55322C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
5533AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
5534B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916672480464F7E22
5535CA6E431FE38D3FC019BDD229E064B72C545C61C6EA55984565CCA88ACB01F744
55363B4593CC8944C70F30925FB48A16342CC26D444F54CA15E5A624C4A2DAA2AEF8
5537404145BBA339F2A2D6FC2F3ECE54387761CA1213C8D56FF96E37C6147CA44B84
5538262EA87E7CC10D931E6B5B80D7F09813498497AA84ACB4AC69BC6C8481ED2953
5539084F560D7B1CF90555E69BD2AF7C5D944E8E3506165014652462BE1BC81CA341
5540E1B0725159D36DA0FFF3577D1DEBC5D91AE683FB0384
c302751c
CR
55410000000000000000000000000000000000000000000000000000000000000000
55420000000000000000000000000000000000000000000000000000000000000000
55430000000000000000000000000000000000000000000000000000000000000000
55440000000000000000000000000000000000000000000000000000000000000000
55450000000000000000000000000000000000000000000000000000000000000000
55460000000000000000000000000000000000000000000000000000000000000000
55470000000000000000000000000000000000000000000000000000000000000000
55480000000000000000000000000000000000000000000000000000000000000000
5549cleartomark
45c0f7f8 5550{restore}if
c302751c
CR
5551%%EndFont
5552%%BeginFont: CMMI12
45c0f7f8
CR
5553%!PS-AdobeFont-1.0: CMMI12 003.002
5554%%Title: CMMI12
5555%Version: 003.002
5556%%CreationDate: Mon Jul 13 16:17:00 2009
5557%%Creator: David M. Jones
5558%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
5559%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
5560% This Font Software is licensed under the SIL Open Font License, Version 1.1.
5561% This license is in the accompanying file OFL.txt, and is also
5562% available with a FAQ at: http://scripts.sil.org/OFL.
5563%%EndComments
5564FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
5565/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
5566{save true}{false}ifelse}{false}ifelse
c302751c 556711 dict begin
45c0f7f8
CR
5568/FontType 1 def
5569/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
5570/FontName /CMMI12 def
5571/FontBBox {-31 -250 1026 750 }readonly def
45c0f7f8
CR
5572/PaintType 0 def
5573/FontInfo 10 dict dup begin
5574/version (003.002) readonly def
5575/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
c302751c
CR
5576/FullName (CMMI12) readonly def
5577/FamilyName (Computer Modern) readonly def
5578/Weight (Medium) readonly def
5579/ItalicAngle -14.04 def
5580/isFixedPitch false def
45c0f7f8
CR
5581/UnderlinePosition -100 def
5582/UnderlineThickness 50 def
5583/ascent 750 def
c302751c 5584end readonly def
c302751c
CR
5585/Encoding 256 array
55860 1 255 {1 index exch /.notdef put} for
5587dup 58 /period put
5588readonly def
c302751c
CR
5589currentdict end
5590currentfile eexec
45c0f7f8
CR
5591D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
559245D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
55937934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
559472C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
5595BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
5596974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
559711453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
5598882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
55992274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
56007FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
56010B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
5602987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
5603609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
5604182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
5605CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
56061B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
5607C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
56083AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
5609D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
5610E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
5611761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
56128799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
561368BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
561410B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
5615262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
5616922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
561756CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
561832FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
56197DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
56207B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
562146F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
5622754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
562388505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
5624CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
56257844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
56268B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
5627BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
5628CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
56298F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
5630D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
5631135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
5632C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
56331115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
563407D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
563514C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
56367031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
56372E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
5638639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
5639D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
564090044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
564110104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
56421A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
56438C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
5644D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
56451A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
56469229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
5647EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
5648DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
564960CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
5650FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
5651203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
5652FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
5653DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
56542D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
5655244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
565631134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
5657724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
5658F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
5659D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
5660AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
5661CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
566201FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
5663CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
5664287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
56658E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
56669AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
56676BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
56687854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
5669192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
5670AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
5671A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
567250D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
5673A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
56743B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
5675CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
56765F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
56778D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
5678084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
567992A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
5680AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
568197EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
568292BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
56837F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
56845BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
568513E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
56866DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
56875800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
56886030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
5689F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
5690A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
56917CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
56929FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
5693E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
5694AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
5695F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
56960B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
56971918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
56987CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
569938238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
57005D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
57013026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
5702B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
570315B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
5704AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
57056FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
5706CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
5707EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
5708A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
5709806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
5710461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
57114DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
57129AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
5713172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
571469888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
5715ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
5716356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
5717E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
57187C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
5719B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
572031F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
5721EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
572298A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
5723C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
5724AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
5725E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
572676F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
57278FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
5728CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
5729761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
57302BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
573189883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
5732D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
5733C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
5734D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
5735B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
5736AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
5737D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
5738866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
5739207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
5740756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
574160E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
5742A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
57431D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
5744A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
5745C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
574603BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
57471A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
574897F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
5749D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
57504B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
575194F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
5752201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
57539ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
5754CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
575529603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
57564799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
575766CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
575814755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
575984BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
57606AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
576149779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
5762224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
57635F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
5764A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
57651F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
57665FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
576740EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
5768E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
5769C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
5770CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
57712B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
5772710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
5773FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
5774FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
57755F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
c302751c
CR
57760000000000000000000000000000000000000000000000000000000000000000
57770000000000000000000000000000000000000000000000000000000000000000
57780000000000000000000000000000000000000000000000000000000000000000
57790000000000000000000000000000000000000000000000000000000000000000
57800000000000000000000000000000000000000000000000000000000000000000
57810000000000000000000000000000000000000000000000000000000000000000
57820000000000000000000000000000000000000000000000000000000000000000
57830000000000000000000000000000000000000000000000000000000000000000
5784cleartomark
45c0f7f8 5785{restore}if
c302751c 5786%%EndFont
0fcb3344
CR
5787%%BeginFont: CMSY10
5788%!PS-AdobeFont-1.0: CMSY10 003.002
5789%%Title: CMSY10
45c0f7f8
CR
5790%Version: 003.002
5791%%CreationDate: Mon Jul 13 16:17:00 2009
5792%%Creator: David M. Jones
5793%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
0fcb3344 5794%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
45c0f7f8
CR
5795% This Font Software is licensed under the SIL Open Font License, Version 1.1.
5796% This license is in the accompanying file OFL.txt, and is also
5797% available with a FAQ at: http://scripts.sil.org/OFL.
5798%%EndComments
0fcb3344
CR
5799FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
5800/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
45c0f7f8 5801{save true}{false}ifelse}{false}ifelse
c302751c 580211 dict begin
45c0f7f8
CR
5803/FontType 1 def
5804/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
0fcb3344
CR
5805/FontName /CMSY10 def
5806/FontBBox {-29 -960 1116 775 }readonly def
5807/PaintType 0 def
5808/FontInfo 9 dict dup begin
5809/version (003.002) readonly def
5810/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
5811/FullName (CMSY10) readonly def
5812/FamilyName (Computer Modern) readonly def
5813/Weight (Medium) readonly def
5814/ItalicAngle -14.04 def
5815/isFixedPitch false def
5816/UnderlinePosition -100 def
5817/UnderlineThickness 50 def
5818end readonly def
5819/Encoding 256 array
58200 1 255 {1 index exch /.notdef put} for
5821dup 0 /minus put
5822dup 13 /circlecopyrt put
5823dup 15 /bullet put
5824dup 33 /arrowright put
5825dup 55 /mapsto put
5826readonly def
5827currentdict end
5828currentfile eexec
5829D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
58307B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
5831DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
5832511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
58331021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
5834028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
58351319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
58363D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
583791AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
5838E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
583911EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
5840C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
5841D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
5842B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
584393BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
584410FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
58457E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
5846B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
5847491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
5848F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
5849019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
5850915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
5851356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
58525DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
58539C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
58543C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
5855FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
5856720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
5857D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
5858BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
58597DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
5860DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
5861AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
5862A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
58630F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
5864AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
5865CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
58660AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
58675EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
58685CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
5869E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
587054DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
5871E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
5872A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
58734CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
58744DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
5875038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
5876B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
58775CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
5878B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
5879A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
58802F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
5881CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
5882455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
5883FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
588416294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
588516840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
5886483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
588767626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
58883FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
58891E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
589093F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
5891051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
58928765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
58938643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
58946E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
589506F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
589684BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
5897D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
5898DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
58990A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
59008020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
5901C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
5902754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
59031E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
5904CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
59051FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
5906153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
5907905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
5908617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
59098666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
591098AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
591153FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
5912888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
5913052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
5914CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
5915A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
591607337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
5917B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
591810D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
5919CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
59203F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
5921D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
5922849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
5923648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
592484708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
59252BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
59262709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
59279768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
5928B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
5929D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
5930135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
5931EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
5932C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
59337519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
59344ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
59359E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
5936050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
59373F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
5938C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
5939843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
5940CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
5941B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
59423478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
594319A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
5944FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
594517C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
59468BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
5947CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
5948F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
59491F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
59504069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
59512D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
59529B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
5953E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
59548671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
5955BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
595604DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
5957C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
5958ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
59594D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
596084E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
5961C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
596209C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
5963D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
596456BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
5965035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
5966FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
5967CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
5968B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
5969F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
5970CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
59710BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
5972B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
597333484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
59744B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
5975F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
59762024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
5977CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
597888E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
597917B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
598055086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
5981A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
59822075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
5983406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
5984AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
598560E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
5986C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
59875FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
5988822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
598994EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
5990D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
5991343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
5992894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
5993DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
5994DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
59958E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
5996A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
5997DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
5998E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
5999DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
60004D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
60015BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
600202B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
600388D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70B15A0
6004657F5ED27D204449A841ED19E01432CFFE928E921321113780D036D34F2797DE
6005D4459CFD15BB117B5C9745EF3CD2B296D91FAD48C80B136D94476967E255F808
6006AD2B5D522ADEC64176833756510391815A1D4A8DA1D0AEE7CAD36A1D161889F2
60073347D5B6BC503300FDDD48F594F391D5FB42C42113C538E707C16EE24A3F375E
60087C506E8F49CE50FF9DEF3B4A4C1BEB3848EAA3477349833BA22D2A9012287D8B
6009A8C4CB4307A1188ACC0E6E9338E1559BE5FAFF381BD82A6C71C267409468B3C0
60102C1A29F4281D565836EAE57F680490FEA4A952FF64C8CD11C377C294DCD1EC25
6011CEFB2B6DCE959D0208F85B6E32E9B44FD455F9B134A5306D95EA29F37BB8B86D
60129E592159338E1293F449380E13C21AE42E6D6952083BFD432F72DFB7B6F9257F
60135784C683A6E9ACD72334E0EA8060A81E14EE32300055040E24B49810DFA1468D
6014A962DE1D1AEE09B49109257898F155A63A83D514996DCD2F96BC0F52796267DD
6015DA6229F5E9024F78B02154C27EFDB9B6E09B131C9E9E4DB41A0FAEDD93A05512
6016A919AC8869C09FC929682B51174D816B85DADE28C00F6391429BA98327848AA8
6017C52FEFEBB2296BB78F06BC1950A8E0405EDBA2D8C51F1F607E73F5A2173E5469
6018BEB7918844D450B652DCFBC4C0D0C4AC2AD678B7165AA8F053B717C1D417ECF2
60193A2909E864E503059135C05EA8F7CF185DA45CE17FA40B4076ABDD8B167B6F02
60203C8962F09CE07257495ECE5357F755C48E49F4385DB5CE4FBACA3AD4D18E39B8
6021F7057F4BF581ED26ADAEE218CE130B0CCCA0C7B273E51D7F314F53EC8EC84100
60228292750A37A4D4551A5C2A65D2382DB0941409D83FE1005752BAD1980307F153
6023BD7C92FC12AEBC7C04839FD7F01BC85F0880DB22FE524204FB924445B6B3DF6E
60241B657353086539BF4E60909524FFC4CCFBC8E0139F65F53ACF3EEC572C673CD0
602564AB1C29253049B26888A322E0FFCF7DF8871F701CAF5BE7B509E090C43B4755
6026B100C929D5A8A4B9646E8EB39F2E705006AD23EEC58E0E1CD0C18A346D8ED66B
6027D0D2E215F637D25EC4F05C449FF8E25250211635C9D5121EE0D51E712B7A8699
602819E96ED8451ECBE97A7197337C65CCB44FA2522EF6735BFB60CD053EFAC10381
6029C70053C2DB3B6DB8DAD720DA6DA25069131FD9759EC2182D1B649AE67FE4181D
6030B223BA15F5FEB0BBA498F9993F6A9C8DB9088DFACF064ECCB56FC4951EC8F9
60310000000000000000000000000000000000000000000000000000000000000000
60320000000000000000000000000000000000000000000000000000000000000000
60330000000000000000000000000000000000000000000000000000000000000000
60340000000000000000000000000000000000000000000000000000000000000000
60350000000000000000000000000000000000000000000000000000000000000000
60360000000000000000000000000000000000000000000000000000000000000000
60370000000000000000000000000000000000000000000000000000000000000000
60380000000000000000000000000000000000000000000000000000000000000000
6039cleartomark
6040{restore}if
6041%%EndFont
6042%%BeginFont: CMSL10
6043%!PS-AdobeFont-1.0: CMSL10 003.002
6044%%Title: CMSL10
6045%Version: 003.002
6046%%CreationDate: Mon Jul 13 16:17:00 2009
6047%%Creator: David M. Jones
6048%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
6049%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
6050% This Font Software is licensed under the SIL Open Font License, Version 1.1.
6051% This license is in the accompanying file OFL.txt, and is also
6052% available with a FAQ at: http://scripts.sil.org/OFL.
6053%%EndComments
6054FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
6055/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
6056{save true}{false}ifelse}{false}ifelse
605711 dict begin
6058/FontType 1 def
6059/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
6060/FontName /CMSL10 def
6061/FontBBox {-62 -250 1123 750 }readonly def
45c0f7f8
CR
6062/PaintType 0 def
6063/FontInfo 9 dict dup begin
6064/version (003.002) readonly def
037a8b7f
CR
6065/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
6066/FullName (CMSL10) readonly def
c302751c
CR
6067/FamilyName (Computer Modern) readonly def
6068/Weight (Medium) readonly def
037a8b7f 6069/ItalicAngle -9.46 def
c302751c 6070/isFixedPitch false def
45c0f7f8
CR
6071/UnderlinePosition -100 def
6072/UnderlineThickness 50 def
c302751c 6073end readonly def
c302751c
CR
6074/Encoding 256 array
60750 1 255 {1 index exch /.notdef put} for
037a8b7f
CR
6076dup 11 /ff put
6077dup 12 /fi put
6078dup 14 /ffi put
f6029107 6079dup 33 /exclam put
037a8b7f
CR
6080dup 36 /dollar put
6081dup 45 /hyphen put
6082dup 49 /one put
6083dup 50 /two put
6084dup 51 /three put
037a8b7f
CR
6085dup 65 /A put
6086dup 66 /B put
6087dup 67 /C put
6088dup 68 /D put
6089dup 69 /E put
6090dup 70 /F put
6091dup 71 /G put
6092dup 72 /H put
6093dup 73 /I put
6094dup 75 /K put
6095dup 76 /L put
6096dup 77 /M put
6097dup 78 /N put
6098dup 79 /O put
6099dup 80 /P put
6100dup 82 /R put
6101dup 83 /S put
6102dup 84 /T put
6103dup 85 /U put
6104dup 87 /W put
6105dup 88 /X put
6106dup 89 /Y put
6107dup 97 /a put
6108dup 98 /b put
6109dup 99 /c put
6110dup 100 /d put
6111dup 101 /e put
6112dup 102 /f put
6113dup 103 /g put
6114dup 104 /h put
6115dup 105 /i put
6116dup 106 /j put
6117dup 107 /k put
6118dup 108 /l put
6119dup 109 /m put
6120dup 110 /n put
6121dup 111 /o put
6122dup 112 /p put
6123dup 113 /q put
6124dup 114 /r put
6125dup 115 /s put
6126dup 116 /t put
6127dup 117 /u put
6128dup 118 /v put
6129dup 119 /w put
6130dup 120 /x put
6131dup 121 /y put
b729dac1 6132dup 122 /z put
c302751c 6133readonly def
c302751c
CR
6134currentdict end
6135currentfile eexec
45c0f7f8
CR
6136D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
61375182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
61388B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
6139EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
614002CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
614146E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
61424B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
6143DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
61447FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
6145C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
614625E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
61477872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
6148299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
614980A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
61505A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
61518B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
61525D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
6153F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
6154966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
6155A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
61569EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
6157A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
615894ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
6159DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
6160E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
61615F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
61628A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
6163155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
61644482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
616544D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
61668C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
616704495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
6168A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
6169F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
6170111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
61718A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
6172567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
6173C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
6174C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
617551B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
617666F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
61779F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
61782853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
61794D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
61805D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
61810A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
6182233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
6183BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
618462E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
6185B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
6186DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
6187C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
6188CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
618938D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
6190FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
6191303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
61928248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
61938E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
6194C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
61959C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
61964FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
619703066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
619893E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
619991CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
6200FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
620106E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
620295149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
62039DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
62047EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
62056C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
62065C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
62073F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
6208CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
6209797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
6210DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
6211CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
62128D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
621304CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
621478AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
6215730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
6216021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
6217CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
621890C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
621997FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
6220F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
62214C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
622240ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
62233A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
6224362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
6225DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
62267DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
622704C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
6228DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
6229C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
6230B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
62319B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
62323C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
6233D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
6234B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
623574BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
623644652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
6237A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
62383D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
6239BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
624001159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
62416D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
6242DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
6243CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
6244683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
624587D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
6246550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
62472E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
624817D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
62493FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
6250F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
6251B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
62521A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
625361154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
6254124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
6255ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
62560B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
6257D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
6258F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
6259BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
626075DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
62618593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
6262B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
62637DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
6264F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
6265F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
6266322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
6267523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
62686C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
626966C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
6270B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
62715648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
6272093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
6273B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
62746D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
6275EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
6276A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
62778B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
6278144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
62797287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
6280172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
6281254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
62825912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
6283011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
6284B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
62850A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
62863975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
6287E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
6288993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
62890D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
629018946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
6291ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
6292CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
62931072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
6294A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
62956F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
6296BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
6297DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
62981D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
629993EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
6300E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
63014FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
6302F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
63034912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
6304361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
630595B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
6306AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
630750ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
630888475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
6309AB7916D44EC2210CB941B1455867E510E9D8A0B83CB645BCABDCDBFCD51A4E12
631060CFFEF0CCA548F654037D01CD631FC4E1F97B4F65DA9AE79D99F13A726E93DC
6311BBB027B7D175FD17A704C4668F6F8428262959DACA9F8C687C923CFA053804C9
63129B2005FA7E0F07D81E52A9A37AD5CEBA8EA63929093ED0DAB9F7C99C82A50E6C
63136440387049A0C359218F5268C9A28F581783BB9D29E08772D7252FAFA6739687
631422570150178893C418531769CB3D96F799BF1C6415820F96B6EFAB5344E82796
631538A0DF66609F5EA332C1065274EC93027D264B84B52AA8AD82E13E2A41AED340
6316B240D1888CB89FBB748FD10B214773D466A44AA2AF44371CA8B9A4450DA76EDC
f6029107
CR
63170167B4015A270B9983B89EFFA023A3DFFDE181B90C51D70557B08444263B84F8
6318A2A807C55D74265931B553F6D7F132B110DDDD3361BC9563803C888B89881DD5
631909E1A623957F074F5B3644BB3F93D7F96770C73499AC0AFC3D7157EA08BF9D15
6320DA7739FAB528A8BC30C0EA7899A3193CB9E8EB51EF67DF4F97D36005EC228B30
d37a4722
CR
6321E54D14471A6ADD6DFC0A9E18243743457F55C92DC10202632F8ED3DA25B4EC18
6322A8602DA1E1AB8DEA6778893BA825CD9DE6E52089AACB336885882690FFE504C6
63237C0098265EDD8DCF06F07452CC311A8B516C61EBE50214B11B72132EE0033528
632413181B4280F37E2CDE07919B43D2120C22971BAE4821E799143EE8E2726D21A5
6325E8728B8F0768597285E8420B583BF7E84B02BAC1991ABC1A5917039DF9EF3B8C
632686C9A3CB4F1666755BBFC2E5623339D0ADDF433A6845728195D58C7AE4C04487
6327F42B90E877B053AE9A6DD19B8910851CDBBB0702EAA0294506CBBC0A9A1049AE
6328CB08948CBFA5E8F07D51336C68A034893B6D146B0897024D482176B14FC63C97
63291F08988DDA2846BAA3E4EA0084642063BD71B165479641E15AB05BE6D9598891
6330B18215FFF0BF4BF195D34703919C1DFB595F52568E46ECCC2855F69A375C25D5
633110718CE804ABB8C07763C09D9FF6A363C6210E108AC351864AFB17CB5A4AE336
6332B582016781DE6A38EF6BEBA595FF4AE88B8C995D96417152176B66F9180FB6FB
63335F6D7C6CFF01901E954BBA64CDDD83A0ADA2FF7CD6DD1EC365080E5159E51E66
6334E2B32369F28D845BE68AAE8C67C30D2CD4E6ACB627A8DC9568CCCD414D85A2FD
6335CAFE36BD8991420E3672E2812D9ADFB4B7FA0C0E027503B6FDFC245B725D7EC6
63368AE43F6C8B168111F7E25DEDFD64AAC0BC8776F2D257A3AA8A74FA883092E4A2
6337A887EFBD80EE15DF491C5D43D0CFABA834C11583ABC8D549E1DDEDD1A1A3CD5D
63385659FC5808D20FF87DC95BEC80CD71B9E5BE3F304A1A03C2F666597072DE657F
633975A1AB1193B5EADB81D92C4E4E41648666F0AC8AEBCD484D30FBDEBDD87E6BB5
634006265B9C04BA54625207A13FE4B6F292D27C3014F20FA77588CEC44C3F67DC59
63417F9A77E3CB226C5CC7167A33C006AF85B806097DA22428AF5F2AC68413EF5F44
6342A29A02773A2E0C3116B0A016E5D1F5B212896772ECDA058AAB5FE55C60C89AF1
63430ADFAC6A1EEBB828671CC95C7604D4CCB1CCD89FC758131645522626D280A8D3
6344B40E343B18EB52ABCF3511C9DE75D9D10E91FD5D780D5D36E484206EE99BBBD7
6345FA03A5526800EAECA69F8B9B62E25017576CFB81783F420DCAED6C94CE71E8E7
6346CD158B8F7DCA917ACDC5CBAECC9E0DDBF21BFB63DE462B810031D61B385EDBA3
63475FAC4BE68B0442575E0FB9FAB7113797A7EDE04BB699EAE0A23A47009ED0EE95
634858637EF6A5C077B9A0ABDDC9267290F878E80CF79DC2E65842879F2A7AB9D6E3
63490E296776CBDE5DEB9EDEF38BD020DFBD31379A6FED182FB3A0DCCB340A70DB0D
635081280D3A0D373A2E672C68D2B2F08AF6061917779FE33419F77A5CA2ECF6E46F
6351E11D9803E4BAF5A7D0971F6708931CE92B5F83C998FA4716B73AE9A29E6F732D
6352A89F2A3E686DF93E5DBB6BC6C45C30736081395456D16E25AF42B0F8064DEB21
63532A9E1E4BC599A18E08955209F5195DAE5217F8189CEC5550C1491EE792B7F6B9
6354BA2EF22477B92F0F9F6FE8AB9EAD6D6206377D202660FD7FB4BBB21C9F9E289D
6355D8F6AABC3862D7CAFE7AE4AA3E02B154749C029337C30E0E6452A8FCCB32B0D3
6356E8FB74DC71D0874777F5E78D71E8C3D9FE33939CB3A910651438ABC55BDA1906
63574432BA1EA0366DB8B07247E4D1E5EEAF6AA804350D319AF66CCCDEB1104541BE
63584C621C23CF07173F423D277173989655AE4EC72786203E00B223F19A4A1FEBBF
63597C48EDEF9252AE6330304B5A92DFD8B3BEEEAC5CA058A9F8562E1D016CFFBC02
6360539B46123685E87FDCEFFEC42D0106DAFFA86835667DAF47212A9B715DA7A446
6361FDE048EC64661262495A7A9D01EF11109EDDB180C43EB9DB662963265EBCFAF9
63625470DD411214CCAEC8AC7F182DF8BD93FE984E1BFA8A1171F4619D213EA9810C
636344C65998F3639A7278966684A56FD3A83060A36416430CB1CAADD42112E4302B
6364E3331562F5CCF6B5B68B60851AF7EC86B534CE1963A2149D9582820E4360870F
63658FB29E163121459FACE85EB665765E6455A2D719C9619D55D60DCA65D46F1EB7
63663A5FCDE0284F82FAA0A49ED106D226D7C0052F647F0904556C4729D50455DBFE
63677CFD9F8503FF76A117DFDD2B28BD444DD1B0EFDA48D1F6C2B26D805BF4506D7F
6368167850D37D16FD07CB5AFCA2C78769292AE449D53AFABBDAB026162AA850F133
636996D2213EEB37C3CBD535554FA70AA75964F357A5E847E63936740D9AB95B13D2
637090F334D8FEDA273BA84C7B370FB27D4701598BD6FD563DBD3A5F7B98FA97A9B3
63713E1F87D9664D7AF53A3B7CBFECE3A57856D03C766F8E1552EB33E441AC3AA6DF
63721DCA2B9B577B646BEF8F0B25C3AA843939CD0AD20E0659885C7F8E488D2E8E4C
6373437ED072CCF065697FAEAF59D6D9E83592121D9B40A202003126983D7E169094
6374F7FFF67C8F1F0B9F5F48C616BDA5C100804F8B9E6B4824949DC26B4634AA6C21
6375E2B1B891A55E5B954D7987B7E6E3CB5E0FC645D7D0B8F7C627F5C642F4DC0453
63765A8E6494B9F4005D2E5F3432D7418111F730707FA9A0623AE971BAD1AB5FB931
63775EDDAC1DB70CDC151BF085D241202D7F1692A45BFA18EAEE8E8F79D5828C9592
63788D945F5177DDF3AF5062AE044BB523CA31378DAC15E19675497988764781797E
63792EF746525D1857B45A0FDA679076ADBB5C4C2644A29225CD1E15744B1635B21A
6380D64C21EAB13BB8EE8B2759504217D8A06DCB690080DA7CDB2D9BC5BCA23017DF
63813C73811C1840B092E3AFF36E3F322E3FD4B6E8A6CFF25BFC2EFA25940FDD4985
6382F3D447E20960EA675B7CDC617974772691DEB833CED5F18D98FAC99B1F00CDB6
6383EBD9E77A98413284C98E4CFB3726987F80B8A82DEC86085943750ABAF974BFF4
63845348BFF04DA5B9DE8238C13D8937427F03C1CDEE994B0C6ECA9D6ABF474DA97D
6385F34ABCC065173765858424E545421E38E79CE216F4FD5791FB51DB485D1467DB
63860EF3A6DB914F763E3B0FC6BF0AF856A0C2BEC44E875C6D6D5A6AD777DA3B17A9
638791A9825B4C3C0AF1ED5D5F43036FE58CF48106D42825AF00D193BBF3B8465BED
638800A2267AED6A07EAD4F5747E1EC018D2645FC78EBFE8D5C49FE792F33DFD8CB8
6389CEDE83AE62B5A3112C6F5693A6CA7850D01F2F6582B00E7F9F20672C460A3B80
639009F6C9BBA22780BBA997534DAB7B0FD5DBE4003E3FFE8539900458CB905FB0D1
63918E76029048C7E070D2C24E8840A3269EB340B2394D37B3628EC608366FB2A695
63927FDBE02249D82AB905AD105804B6D8E912F2BB7C9625F4B09A7F99325CD7EBA9
6393E7083842781FD5746AAF7AEBD6AB5ECCA4D5928B9913D360AEA835FF9379A782
63947B47DC824CB51E77317540378971D2AACDBBE242BAF561128AF71E639F67ACD0
6395B04251C644C9C9B26C6D1AF06AC685B5A0D008EC6FD0105F64976613BFAAD28D
639683AB4F5D1CB5C570AD134575EBB95781C701BF4C9FF8C344251773C12E1C0859
6397119108448094F41E3EA84BA93A582FFBF33CD086F1FB78AC26E44858863AE3F2
639815DDBE2B9C27D8484C480EC74C1847E4DAF520E507A6B5BDC786145EAD85FACB
639966900381C821444834B653F6D511AF6553FB221112A438BCC8193B330881027A
6400908CFAA18E86A2D326326FFC25457C9041BB23701584BAE3FC9185B4B5AB6956
6401D8F2BA841F98B0B93F8144B35234067B12FFFDD274DE40183837AAFFEE380CD7
640228DC181C76DA7A4AF637197F53A931D2666E751A2B899F20FFF9FA312A1A79DF
6403E04432E4D4591C525B67D008DB6FB611CE089A96D25457291663FA9F264576B0
640474A5AF80BDEA1D411DC027775EB5F1A1B135B5E5ACFACE7EF66A2EDBE90771D7
64055D52FD964D4DDE1C419EF7812B15EFBF7481F90F44C276CB3AB69FD5C16EDD5D
640641A3F665C6B86CAA2F7C832AEDE7CE813DE65EB0424D45A721CF7CC7E2E2ACA2
64072F0FB88F1D61B60F5B7557BB94A88B94CC15BB89B9E67B1C93156586703EA237
6408398EF6F454C70B7F93AD86E1CA3A722BAE4EB6912D19B56DA223484ABFB4C863
6409AE40A43BCA384B6FA642B5FDC1877D993BEB7DC9C572B096F15F33A5C95F66EE
64108DD97A03EAA53F319C3BC9D2F12F0AEF079256604C6DF649E264EDE6E30E7828
64117B74BB86578FB903BA583C955B1A4CAD417073145D7B2405F03AA98F989D1C90
64128C3F625B28B2B5A8BB5C3E97DF05017B0DF1C7E32F8203556EC952BB2FA045FD
641376A9903FEA605A8F03BC4025B4737BBF8C35DA55D0DC2E2DCFD8B9D6C1310AFD
6414481FCB0AE96095FF7E54BE72F713E00C5553B95EB23247C8F17CBCF9D76CD146
641586543993C53CD843B2284EDF996A0014140A2BC3D6B7CF1883541F932CF17A68
641609030CB936AE925C6CEDE67B053BDA271A427CAC85EADBEEB559E50FE1983DA5
641769476CEAE07BEF681CF40593806F3766189536EBDF92AC72270EBAA9DEC38C82
64188E27F56DC72BB45C38BDEF1E809B69E8C9A787FA37E636C678B7684A74B718B3
6419CEF980C3214631C7E89947CC1577259B3E7ED37BCEC9622538B3E21677C48974
6420A1F687EB3BB9662F88E6A3D387C9A30C30EB4E206F586B4A90B61729A84A612B
6421395975B134FEAE92AA05AF675A9D995F60BFA37FCA4D098F91B9D0854B0D1992
64228A3DBA87301552C291F404FA4F590243B24E3D4C6F23CD9874D4EBEDCD51C1E2
6423BAF3EB9B690ADE288031FD6481D5C40044F71CEC3AE50F6704D9236839EF9B1C
64247FDA3F6E4039FBD2E5B99BB31573BDDA7236FED53D49CF51E3D4B1EECC9F530E
642541E5FD3099C5BBDE367D1ABA42A476DC8C7015E1E028595994748D526E2E1D78
6426D8DEE2625BD9EBA9A23BD4FAC1BD00DC3C08B078F96F4252843A566B22718B8D
64270D4A3B7FFF310A76ED12B345A3AEE2F6C8A1AD394665A6F8C9EBD044A4AB0706
6428958E404F955C4E46DF196E1C9BD16E47D60D4EC935864D1A922A5F08DDFCFD34
642921285BADA201BE83254B4A817F7372B64481B3929F1292E12BC91667763E382D
643066720076AC19BF952A5B6A7A36D50338F256119F85E44093EE26D7EEA0DB0A6A
64312D11DEDFC942EA5E22F4202359C91C65F4B7623EBC539EBA75815866CC964AFA
64326369952AB12AF0F7D0F3BADACE96BCC865B4C246D392F6D118CAD444A97E6F89
64333100F3D786EE03431E1B3F1F45E2BC45AD0EF659667E757BAB0E7182DE558C8F
64344CF615B2B286B2EDAA9B8A28312DDC1E586CC1225FF6435465A4AF56CCB2694E
6435B131A72BA2650689E03239761A264AA922FB6544395D991C3DB620F50006C140
64364258D85225E8013155B4531A6FA2017EA450F77F91AC191C50C1A2FAE77B1B05
6437F40339270FF24D91BD842CCADBF9DFEA5AA13CA2C8EA069A242C93A73B9BF6CB
64385C01247F02AE06329464E02C5A3F6835C3B2A1F110E0E72D907C8629DC0219E0
64394BD43EAD38454B8100021E55FA294C53188B6323F64C0042CC2F9728F776C99F
644066B34990B279FD59B4AE356D1DB317F18DA66AF2E12EB5C9553D58BD075424A3
644100BFA49F981FBC0733F388710A62EE9216A96A959B700B02FD79E2174093D6EE
644230E5CA22AD61E0563AA18865E47A4DF8FFD40FCAAF36FA72136533B3184BA684
644387E2C88C4A8F119F1DCC5B7CC8BCA31CD23806E08CB77530038FB09CABC6A035
6444E21971E5088665D46747FC3D66B0626295252642C833862FCEF1C749CA6B6199
6445738198327FBCD7DA364D6F0AE000DC56AA44D8A7D3E74BB7A7C91B117203257C
64461ED384C741B14E526571B06E3665865D89A494F32D78674BB62063DF2A48989E
644712293072B16049DBC1AAD7EDEBE0DF69F69FAC857D950BD962E17C8BF097DD63
6448DA98E41A07C1C299FF834D41D6B075C8802E1081764B017809361A4C1043D141
6449C340AA469642D10EAD0ED5F01314CDC9024EBE21924D5488B9FF775934B1B563
6450591AF1D8973CF814A987637E8C8231653036AC5714B74680F23D2A41770C1E02
645122659A92D305AFCE2AFC973776939095B142E60375D5CC0AA54CE490BDE293A9
6452F19DBD653D7BA4D9C968FDDEBB95A0B6035016FE534D438DD0BF26336F83C555
64531BF5AD6CA8F02CD063CC67D2929D2B6ABB42DFE5FCEE51D583155BD8FE72AB28
6454BD423808157195E0293F75818ED5ECD68294C8B6866948084078D83246E9ED70
645538667D6B3398710C5ABC172F446AA0C5AF3F4023F08CC22D02E51D804299A12B
64569503C2AA055914AA5DD5481A1B92CF8F70BFED758B447EEB256272CE393FAB8C
645708F090E434EA61838AAA3CF02356D5EA8A8323881E413579C55123F64E817D51
64587504A8A473E7D6C39662B665556F9C5CF0F3DF9D42C0C03AA3FBD95DEAF4DA64
6459B41FF342092A5445E96FCC6CC910DD9EDF8DAABDF255814A0D0D874B03D3687B
64601441639C03FE3176093361CFF731478E609E4A86AF8810832EF983C5EACE4CF1
6461AB8419AE0655F8DD18DE8E68F320BC1C1FA89DF622A03866E8AC8EBCBC336E76
64628AF4E24D9D53E0003E4FEE40D4386BC59E6FE3FB13AB6FB94D28FBBD95576A20
64638F8ECFC0952959796BE533D4867224DFC44D079FB8166AEF46F118CFC1B114DD
6464C87AA0156DFA28A10D8599B40588E1F84907CE0300C7A8CF3C6DB63505A79D04
64651AE29BB896A6B2266FEFB1CA6799CF384B1113F54ECE96FB5C8C90E0B36367AF
64665E580A75E1EA2278CFBD60956D333FA75BCAFBEB7FA767EB960097BD38D4F4F3
6467E16F00AB29674C802F1EBE7291B4452664260992AF6F834C1D02273BF1B3EA24
64685D6CB3D611F1A99F27300035ED706E6C3D18F56C7CFC472134A96690FCF476D0
64696843014794534851A4CAAA547D5DC4AADC3D94A03BE478FCDCE19CB05BC7CF54
64708B88D9698141D2309327680139F05275D56D025ECA13A25B3211A0F07AFEFFAF
64712FB4A48CD4CC4915F988A619C6410A2E16B031EC19B7FDB904D149467F1D295D
64726777FDC0712AA90E529D4768339EF966B5907B41CB1258BE514B39C8F853D28A
64738951224C1FD0EA80D19D0BEF548A23E70E9D172A2FC6E6BAE3900D81D4E6C530
64741317BBAC68FFE952F47EDFDE434966B89B9E6DB348C6D3D8D10EF6254AAD9B9E
6475427FCA129A3867C5A0CA1723D4828F8DB1D99774606CC00BEBDB15E02A88F7AA
64762B3F47F420E12A5104A09D6AC903E0C9C715BB99A87DBC453829F2ED8CC6A934
6477FE875D5947EB0B7C5FBF193769C209CFB55AB5E331DA007C22517035295F7833
6478C5F54040629BFE9CF0FD9FA9FF10A7DA143138CE41689004557E0DA6A51349BB
64799530B852DBB52EC7FAFA39FCF8381CE3419AF0E9E6D69B14E5020C8DECFB66CA
64807071451B87A1FDD2789736E5A3DAB0644CC9727B58529B5A807388CF904C1BEB
64818CD7B322676FF8B7CC6A25F887CBCA97DE6A7CC53DD7142BBBD1FB447634E2A5
6482E52158C7CA2951E87722298B50ACCD1A381F3FCEA2B8669026C751898DFBE999
648349B86879D78B50F5CBB3FFF59FB9CC55D6C0AFD190C521C9D087B8F0C34B11BE
64847F5C705FCED255F6376E3A86A49B49E8059406A6A387FA711478EAC4007E5D80
6485C907C72BCB7DF583F76B6685ED9B4262F607D69B23554D1D275A03692D5DFE85
64865002120CD7786263ACDE7CA7158644D8D8D78A757182C03620DC5112538E66F1
648761B30CC11B60AAA0B1873A846DB6281D7AE2420A76E6F66FA5D5B288B8888666
6488F707AA8F77363AE3C2B0BBF0577D0131F0F7FAB358AB10A0511605B28C5402B5
6489C5EA4466ABBAC85601CF8E61101D80F84D7FD7629620B931302E14E7A89B8955
649041D7A89413A906399D5E375665A4C24DEBA6DFFBC751E23F4D17642D391A4626
6491F8397EC5553572023B0F57D5430E35163156F76CFE24442D041B6FA0B44AF48C
649215FE0C8C9CBC300AF3A8BBB79B5BA6D2D1F45A294E201DC327BCFFBB5CBCF384
6493CF4FDE8C9B07874E8C954603C4A4F0EE585610B19976F6682B41FE2EB56299BA
649425EFC2604FBD73F7DE1AF858F325DB0D1FD2A3F8965A1DB71CB68C23ECFFE678
6495E08C34E52C0E0B4F61B2CBAF3E765ABABDBE364B31C5C7AD94BB7CD5C92AB012
649643DDCD9A83C43F021176F69945AE6A702FCCACEBF5DBCBA63A92D82453DE824B
6497B240CFF9B29DF6677D635BCDB3A22DE9F1C0172F32136BC107A1CF2C614897F5
6498D6D1C35B2ECDE7E0C8D8BDBF30944D46DEDBCF50E9C45D49A4AECDD5E079BA5E
64994866856A603494B605E4E5BE811E626B6A5F54938324785CF96240C12CF83F2A
65005302D5588F54E27486A9BB00BAA9262145DA0B7A1DA5E514DD6789692290109C
65013F6C8C1C63E49C74BBCDF5FD1D7CC7CBBDEE68BDEED59DAA8BF185044C159365
65020CE5077F69F99A1368365057527484D54BE5461BE90AD66334149EDB5EE3317A
6503E9070F453CC27111F223C18081AE540DEB5F17E1978E28FB47C5033AA48E55E1
6504AD0574F400E446499C63C0937ECBC03CD00E75355E2C41BCC160FB1D793D0407
6505355BE741FF520F35C41C0EE6F7FE36065F33B4E30C6DCE227B4B514A575D09A0
650647A0BB2C03240393E73A976A06C6FAF22B9EB30619149F05E9B65F651F8E6199
6507634F9485E2AAB2BDED709E56126111165A08D0171538BA37E325A173E4982BE2
650855023BBA920F46060883183231565C764196AFB26DEA93056F0FB140630E9725
65091EE72FB4374FF43A2A8E0807B8F77EB429B7B9D5ABBDC04072836F7EFB4DEE53
651026C1CEC5F6CF13334B84F47EBD1975A83FAE789C309A9243919104C844B6220C
6511F0FF4E9C6E693A6E4EB2D260D7DA96FDB956216E30C5EAC29AA568894361FAB2
6512F9EEEDBFD197B278BAB7F2AD3DEBF46B0B1EE58F005132844C96171806BCD864
65132FD40897CC3E719856A9D137B772AFEEDDAB2D2B353C0705EFEDDC42D169818F
6514A2D0404F7C84DC9F9CB7527A36F7D8555FAC44AF8A91E872985FA0D758D1C898
651535BE8560D6B584ED66CF9D834C9EA63434575FBB33E54554D9E4B127EC94F55E
65167B761616E717A84216C8BC656F79B0E567553932D9F30D3355A30BCB9DC8BC80
65171779D6995E35B3D97D019601BFB970E3CBE8483FF168860909534621D8873D37
65180073F48FEE38F40A8468FC016F7F76E6E1F09D33DD992FEDCFB2ED3860472E84
65196204643E41699ADF19440FDD4F0DCEEEEF52351B782DD90583361B7B8B5541BB
652061D25A5AF18FA9F70C599F424C8F9DCFB47420CF4104120FC6F9EF03DF7133FB
652127ECF4D848F5E067A27377985CCD10DF85D1E517B813DAD36E8A40664B352FAA
6522184A8DA90C0DE095DBEF531A2481BB31996107FC057A9D6263514089FA589C0E
6523AFD82DD4EFEF08B80F0F5D91B22E47A0474E27A0EE54755D6280AF36D52E0938
6524C57614778147BEB2E89B4236B540457C7FF03BDB6C6978BB69584FCB58AE4625
6525CE733497EC0DF25BEDB7E116C6C5D3FEEEB88D771D616AF3D050B3FA5568F6BB
65260752DD30E42B427CB6E6065CD968C6257F2B325F94CC09F5729FD6FD3797E1B6
6527C403A0F1B8F3784A856226E64EC3FDE9F4837B512BA76F78F781E44888186DC9
6528C2CABDCD59EC4145F6A70B539A55941E830E6237C72AA0B9BF6EFBA37C0DA4B1
6529CB4A72627A658600CEA384EC9C5B0CCD3C1ED49530A29C6A6091529CD8D6B2B7
6530027E5759C87D353F4090802F13CCB8BBADF1AB157AA24310AA275F0A4FFDA93E
653100E05E4E534735CF2E575DD02FCA3CFA96A9896451E9C0365CFB4952667E2CFD
6532D46D3ABC40FA8F73EC68072FB5AE920E14B37C19FF936649DF5E8A978E9DC653
6533FC7DADD3C2DCB18A1839CDA3653470E56E62230A148304BFD323CB1D39F6B50E
6534D5444C8608AB03D73183210E6F4AAA2EB97005E0824AA42A2ACA2732A58B1D36
6535B1EC88C9C5E2848AADED90D2F1BDA936C84263BE055793C553B986B73FE8A22C
65361AD099E1D845D5AA1106670C003D889E169ED1877DC454B7601112DC539F56A4
6537E936C65227E657BE26FEB41C8E950BCF54224805D9FD6D2516C4DEC09FAA3753
6538262B0A82357EBA2978E80C291B267EE5FC19FB8B6BD509DEE723E032FBCAD28A
6539658F6516D60AE9498A14E1B0AD1FDDC65025EE114FD73EB506992C1FCA660041
654098B6C72AB28D643BFFE1160F600543585524AD00C04BA1C54335536D65B7C471
6541FC823F7AEF385E4A013C4924750DC2DC8F12388029D0D958368C15B9C19D718A
6542AC77E9831E75A330583871159AB63A0332984FDF9D0498AFFD678ABA43FB885D
6543EB0662034DCEB9576F66174254B26CC515DDAF9EDFFADA446BB02E356E2B6499
6544C6B7F4BADF5F949F6E50CD85E869646102F2E5222E62405A4798955E7F4D8018
6545050125F9F5F1D8B2AD8F4A6472C2661DF0BBC6B669868C6CB8B52D528F389911
6546CD58F5AA9592027BE25DB1946ED1216F2E915B4333AF69C8C0CCAEA467A46376
6547D0AC46F291251D3B09883EFCF8EDA7386BBE03A5DA3B5F2FEDE4EC516FDCD92F
654812D72BF6C7E690AE3FFCD13C587D2A48574653F562526B0ADCA0B701BE848951
65493A281BE4957189FC236B8CD68FD182FDE918E5C7FE2EFE91C4E6573BD9D0F0C6
65502DDA5F477152DBF21676DEAB763F441C7984F7650920CE6EF3DC77D707F8E03F
6551622F8E97AA3E7749D080FF7CC0FD1CC561B84714BB4BEFF4628DDC90711AA7DD
65526EDA62DF8F73B9829904E802D8E0D60AF8F06A0DAB973B4C6A89020D3030B61A
6553D8C92ED9D14E29AA92C5305FC4687061998CF71056FE50AEA39BB265E6DF72F5
6554F6EF4287D4DB779617F1CFFB3AB1E9D9DF73512C86CF2A82354749586EC9F273
65558CD928A02590A5C51CFB2FBD5F5CF25488800090376519E4A5CF5F0D1FC98BDB
6556101ED47F36A3678FBE57A31C09FBDBE605F0E9CBCD3254D415061AB3B9E668C2
65574CF41E833517AC0A07C3A0AD412E608CB5F0996D27E7341A2C637931B1BFD660
65581C330898C707F7323B1A47A6E6794AA94EF07C99D9BCD106108EEB903549140F
655931D5E0DE52FA3FCDE78C9DB6F202940E69F86DA4AFFC8974D669A8802E6D5C49
6560D60E640E5433F7474BD623580D24432927E6919E575FEC9FD044398D6174DA64
65617E6B7B042777003E55C4DF4981DC0A45B3AC04B1512380CE39B97544D3420C4C
6562B926016CDC82F5CD160FE7106DB362DDACEDAECEBD20464513AFA156038414C7
6563DAECA2AE5D517DC2BE95B0E4707E0B191B3730EFB539CC0D3B80E1CC7B6ADCC9
65641F142222BE572124CFAA7246975BD131748A110B0362874FB61D91EA94A4E330
6565B88C30A9CC1F7EA5AEAA12018A02EC5681D000A889B19641609A6E712116B7D2
6566C7A04AA207CFE9A619290044CC4BDB7979502B5E7182D742DB646A923973EC3D
656704382E589C9FDB590D5B25A1D414060802E1251E1F0DBED3B2674DE3FEB7ED96
656850AC23B0E3D9E44F2904B064D06A002AB11A44813BBE243F907681F6A5B7E4B4
65692BBB1D15AA391977FC0D644B9E4EDDEA1F6593F9D6D64F30F1F8DD238E762E53
6570CC5B588DA5014CFDF4E281A34CC875656BF31B1ABE80617C269D3C32EDC40CA8
6571E354DD255A369C4DF775C35EC9FFA8941D71FA984261AC1BE8C09C5B656658CC
6572CC2AD41D7CCE283A5530AE8DD2B8D03BCBB3B6B3696FD601C563289526310DBA
6573FFA90463815A687ECF1D69F69F7B449AEDA02A15E1A9227B0FEBC29F6E16866E
65749E0FF502CB87D973ACC8D1BD08B5B76798CAB1A5D8A17DA7CC244EF085F080AC
657596CB5CF0F0B2DCE2A1DB769A8777C971A7A4550C759071440654E195A7DC4044
6576F60BD207C81295CA20A54903E0E2EBA0726C82DE70F2880A52198CFF2AECC6FF
65770DC562A031D56847F6B8E3FEDBEC86862162F3E982169743CBA32DCEF2DFEA24
6578D548A862DACE88B14677B0657420CF60E9E186B35AF3863BE4A9E5455BDAE62D
6579D39E6C7DE4B3E079BEB082842A1486DB5F8E759204926F146037DA7A77CE50B6
65808C29BC9B5299739FE52778D232B44833033A7DFB300429DD002E14F37EF31D08
6581069B7D94E70BD31F90495D237B4F175540B12675874396FC75F9D005497F0424
6582F68BED0F8CE28AFCCCDE87BF0D0F5301DADCF69980812F989CA9A7642FC5D50E
65830632D79277781F3CD9E014E9DA160B2A56CA7EB621EE3D89018774B34E943F8E
6584EAC217CB05EB834B562B03CCEE6E457C681692C54339506BC7447B943D151012
658593F026765C80712D5398D3EC320BD4864BBA9C4F7242FD066CEBA54390D119BA
6586C3A15E45CF70E4999BCD0BA14FBA7C6480DA52D9900CC36DDE18693DD1FDDCC7
6587FB5BCB5328E5304C0B3189166A2D7F3F3EFA16A4D8C8EAA30CDA83EC1BA519CD
6588C6CDF954A680DC9487D5397201A20B1530AC427F0DD32A17B8823428E4D1AD8C
65898C512FF0F9576EBB8639852BF36E043E302D19A3B559F5F43D4077AC0F9CCDC4
65901A0B6BF5A5F657CB0378772D7476027E060D592492534DA6CFDC84639FDCF136
6591036EAB94BBF6AE2A3302A6640EB48A537B579532A557C69240B5BE6DCB609E65
6592B248336A2F7A326E85B9651659AD493245223EA204DC2ABBF33007DFA9307E34
659390F924B657395F3622C5449CB9965988E90A9B840FBC2F8B74BB2151B50467FB
65940478F1423A776F79DF8AC78E999B1D6081A9B83F714ADABB5C548CD2AF4E9EF5
6595A631BD50FC51817AED8EBC6BF7A46767E562BA211561347D89308D28FBC7C04C
659661A1324C22E2352DF95EAABCE7EC3ADF40B863589557962D4330F443D0A14F5C
6597F3DE678CC2C45E6582F47F4EB36EBB12A73B395149CCDBD9A92E3E7A9EFAC658
659813AF608A3BF637A36A7318A342FCC9804352E361AF67436E7B4E6361FEB8656E
65996FC5328E38D8C855BB6994E602481654E5372BEBBCBF48C63F6CFACC9F3D4FD3
660095B963ABCCD595D90C427ABE71671BC690DB170494938B4A9B8C0B329C4B0F65
660128B3BBB68584C7CEC9975566FFBF29EA166441185340639DD0FB38BA355A969B
66021460753D46ADC2B94315E08A56E5023BA5473DA1933EAF6CF46C1C6413966EB6
6603246A6F259FB72738C4DF24F91061764EDCCB4B1834F6EEB9BD80AB12CCBB6BAE
66043E9715FC068386456612014DC8457AC3EA92D3140C7E9901856FBF9406F5FEEC
6605C4814CB0CEB13A44908644A5B6D69DDCACE742080D4A41A70D93705433D8B1D7
660651C782D483FE38BD619D1E0E863BD24AF8D1ED22CCFD1DDC63E481DD1D525BD3
6607A69323974D440E4C676A8480ADA8BEDB2F8D7B82DF7E8CF71E9BFB6594A59055
6608A50BF0B479C6D1E62E1C25E9BF89C898F815558AA20DB908210E6156A3C0C98C
6609DB0215DC67BEE211C018E82F504DA56DC959DE82E9467C9889CFC353D379E8D3
661008B40C015840E9EA9F9B11AEB3B1690F7B51E00181EAFC769C32A0EB57EDB2CB
6611B8304C16B1E391D9C83496A99F765A2F593AE9E60170F93E68D99414A71B2298
6612F869CC5617669A5842F10170D8C73BE732CFCE2A2803B1ED4CC582817356A304
66132E80D38F53DB04091D403F76E9648FE51BD4CD3728FE0E27C563DDBA778D2B57
66148B9082ED2A2EA10C0A9EC44DC8695E1B930F408604FC497BB411F34718535925
6615A8C763ABD12D21129E018416D6A7F3B85010642706F63E9109CA68AC84FF543F
66165CE4ACEA6680A279A54A7E0A83F28B661684AB955DDFBCF3483D2255986F8CC5
66172141404DA424CE7C0F45AC2938AD5A9908B18259FD2C7865B242C3A6427DFC53
6618B2AB4291DDA1CD7484AADAEEBEAEE1F6D9AFD997644C576E703F9588338E7DC3
66193E8BF6265048FD288DABEB790875CB83D7102EE1EF1ADEBD252146F5F1C34CA9
6620270577C4D71EE41705F6A2F76A17463C8E553BF1E09C06CE00A600B907F36611
6621464B9D2974D1C9C8BCB589AC5BB056FA8502E4CDB65B7FD34F5FDC2108915465
6622E92B246505C67119DFB1E0A251ED432409F6674195B591E704B029E40E2AA827
66238D8C6A1E2E6E8A0FFEBEFB75896E0943E394F90F03A0DF61ED23E57A24E0C2D2
662479F9977AAA33E6AA211B48720A1D0AD4789608A29ED895DAA0D4A2428654EFFD
6625F5EA4087E6F727DE7C5EA25C15FA2A6A967FD0A240E890997D78AF8466EEB7DF
66268D8BE4552E1996C4684BCE3E853E1C541C7D9C2333ED357D179E4E92A44518B1
662706D92F646AE65F7A27F746EC366EF4921D088CC6CDFD723838AE89648D6B6EAF
6628824C08B6AFC9D8439DAA5CCC862FFA61AC4B0EEFB2453C972B1A64FE31C071FA
6629A2DCF66B9CEED757FE42B9DCAE3302F807F7CB2C779F7441EC5F11C776036719
6630427F1799BEF7CDFAB114B7C30F27C43CE3D71A71C7BA87C4FC34B711FFCCF892
663123450E5CB964642AE0E4638FF80A913FB7BEDF489DA43E315E8CB8506A4AE884
6632BC0832A6B83CB4B390519DA862769AEEF454D3C4CAC6CD3899238A044718FEBB
663359F5D7C79EE547269AAEF1ADB1DB7A97E5A01435D957413FF0FB229527025DFB
6634E1BC87C4198E5EFCFEFA3ACB877B1370D222C1CC30D0AA411440B6A59D545D53
66357D72D4D98337E08107FE636E3F25932D57108A8E3BA3F72006744D1B2E33EE8B
6636CABD44AEEA44A3307ABF8AC6B68F8D83CD6EDA68951673D6984DC6E2FE260C16
6637A8673467A85E727DF7D5F2E5909BD2D22D272F87C945B0E93B4EC1A759393A9B
663875F7C462B34542FA02DF5548CAB66E75B88A834354AB7439DDE480C6068A214F
6639D3748CE5C2B2F1693DE0EA5162771F7FBD17F5A1A7467667CAAAD0610F38CADD
664089102E1351F7B5DB870DD9A3CEA56863C249263A102E649FD16FD827BD60BD19
6641E680DAB90D235E5BF75D5315B2BE376EA7C1FC97D709FA12CCD937CDAC17845D
6642C373FDDBB0533C37169A34CF072F187E5661FE60DB1285920E3AD01EE806C874
664348BF676D73DCE4A919E3BD19B6A6DF8C4A23BA65A599774CF0E45F2F20410EAD
66445A9E43CE85B335F953A0879CC8327B903C0F24CBDF65AE01836745EC4946749C
6645DC9810CEC0A4868C3356DE8D6447547785EEBD102E069C2DB83EB107696C8EAA
6646EB71EDB076E924F27351293F26EEE77DE1ED19EEF02EFF9DC8AD8827BFD0E10F
6647E3301ED3500E006F4898D0FA373F902A40DEAFD33850059A0EDBCC4FB23B7BFA
66485087714FF84D9D987933D86D6533C0784BC72A32DE5E26A4CAEAC39715A19360
664979DAAFB08C7097553749CC993001EF6C17100AEDAF505DB97CE45372632F5CEC
6650A48C77B21F9E50E81EDE28E19D604ED0D7398D9621B7428F729FFA20F9DA8847
6651F83FE50721CCF7260F38E1DF313C9D545D237A28C15934B1018C513F0AE93D72
6652F0F22E8F2385686BCE5435122C3EB067F4AA14FDCFB812E7DEB5BA9ADECFBC44
6653BA562AAF8AAAC463FC0B2E04A4BA98460A16C49B8AF7B9D624012D432E29FE9C
665444836E970CCD5900BA3C2E7A9F4FA98E4AC8DCDD503162CEF4C0CF1598EF607B
6655E11D60FA839D420207FF3B46E1F432A69C99722BD77535A5A1827C0370BFDB83
66565EA905F8EBD42B427A38FAA2CF4E819C9FD74BF27F548875248AB6D00D2E29FC
66576060F2F151C48B758F2C85C1EBF5868A18A1B747D324F7DB49855024F213092E
6658FF0BA46976813383A25196A4BF30EB1D2214362C75603407488823D2869ED813
66592D84E759F25F9BAB59629C2AB691076AA9BE254A27B49652B05E9AF71865E5E7
6660BC324DDD2A1400F4B2888620E60EB08A9EFABB287CA0E52575A364CB0F22380F
6661E27FC8A0DD537BC0959413A2657AE6FE12936A61EA31ACA64F08523AD9B21514
66620F352F2EF3DDC159795F83E9E12870C13D1D9B98D3E152CED06D3BBEF27B9531
6663000CE08D0B280C2C37C8D295557F1BA92C8233259A007E1F0FA0D54762E7A6C4
666428AA751CB4E4D6AB5466D8A04E4AE9F64A3781B730A0BCC6108C9D5198810D35
6665CC353F1E76DD3C78D33772F3B3245716DC623F4177418224AC4A5F3E2CA59D03
666695BD0C240231093AB97FD553194ED4B63856045E23D72F67BB6D6A4D6CBC0FA6
6667B62BBDF0AABB66C36DACD73A99801E813C6F3BBEE1AFA053BFC3530F2699D2CD
666831F66636514A088710DD1DB370BEAFC47470A122381AB4F374BBFBD2AB39A953
6669DD0FC82DEDEA60A99C9EB07EC0F702547C9ADF01164D5B22D6A41059984F347F
6670CAFE7146B3626AC97EC8AFB2614D085CD5FEDDA92EC73D7EC86FC0DD5BC9E912
6671D68AFBC4DD321E00B6954F14D5CD9D6580C8DDDDB34ECC92B16BE8953B035AEF
66720523D929EF5A086E7064E1117DD2AE2CFC346889116731CF431A2E22C6FE34B7
66736B7535EBAD4AE760956837944EAAF4F001120CB784D249E6CACCE4E0E0FFD8F0
6674330C57C7A6E27545825F36189476B887BD56A72802D8947A42323C36114FBD24
6675B47F11B3B0F7C5498463F54EA557574F1A8EAAD4D47964B9B244D75FEF37327E
66766096D66FCA9E617E441978D58AD792A93E3C37FDB5FDE506AFE0BC0588FDDEA1
66772E64D54283E22364267A5B499EB52F623FFA9CB11DE74FC33715AF2ACFE57C25
6678A621B07E7D39E56F4ED2AC442C1B85B412DFA95C574BBDE5111A09F2F70F46CD
6679FF84965EE534CC63034A2E579FA7928906DD2E64560CA3405B7B5247ACE33391
6680F24669DB56F6BD022BBFA47934547003902ED8344277AE5761DBF7604D69C02A
668133A7F20EE06494669AAE3403BDAB6E4C4373DD56DF66F9700A06FA86B030F3F1
66823B8210C9948A6EEF8400C952C4A81159316390109680E5C9C22595D8E6FA6717
6683B0D6803E850AA03F2E854F0A39F819B64357D53B3FA73AE0981ABFEE4352353B
6684E5A31D3C3672F07FC2AB8FCA25E5B047F2AEABA8A658ECE9E35579E4214A9834
6685C6EEA901E3A72FB1521D22FF6F117C6E80396CF1FAB02A8597F2407BF6CAE3BA
6686976537E118C6E84C69C76889DEEAFAD6D658CD83381C8CAF989C52BFC59334DC
66877ED97D2741940291B677BB4AB0F02D45CD63379DA8F02F35658F13AF64F9D6AA
6688A42A77A6D2A1653BB1A0FBB7A52249D8133440827678AC81A66FC3DAB5A55F25
6689B821E7B5153C6FACED54C203E5FA9F6DFDDFAF54C9C870B719EB0EA4C1131C98
66905DE4047C1862E71FCAD3E4FD982FAC9CC900FC22F6770712FF82BD27683CC442
66919B684AAB15FB663A04001D434E26690056EC7EE8EF3D3E4AF36DFDACEBF21B2D
6692681A134805B6D34D639782170DAFEBF22C888757E4BBAED1F72F2AEA9ED6CFF2
6693C477430514D06ACD1E2AB0BF1EB27EA4DEE773DD77D140F02D2F4D5DB55B07D8
669423AEDB701A2885BD8AC950E8DD285172BBC6CC90A000EE8D5FB6C4D2693C70C3
6695B90F94B7F806D4584935D69257CA0CB3F72BCFF88087865C9326F94BD3FAB401
66966C89D92242195DBE02F2437F6A96170F1D0C28623D6921EC424B6222838D18FA
6697E07B02189A3A79B317770FF5ABAA3D8EC721A5AF14B5276651930AED5B20CACC
669834128430F8D6AE1BB7A52DCC22A9796792C926528C0DAC4FD652906A43D695B8
6699267B1E89FC1B96628CD003FC2A3E8890E68655532146DC927D36C60E98E956C7
6700F86DC4B803247084EF8014C3711867EB692B06F90E1B099501F4CD9AE0EEE694
67015A2B34E927E5239DEA54A8E9BD542DA437CD7928C67AFB661A72B9A2914416FB
67026441889C6316F0D4045E09419F5D507152644126C4B614013B868D9F7631EB98
670346A5979176C2E3F9F6463BE83908141553E90F523420FDA7ED53F711C27A4517
67041052685F33B23C9A3D34288073B7FE4AC7796A0C3D7669531B4A4CD47C8BA1BC
67059179E425B3C5C004A93ADE699B521F798B9AAE48753028A9F95F68ABB41792E8
6706D067F9819247E7D81AFA10D72D0A7B3EFB3C202DE67ADEF30EFF42B4FA14DFE8
6707573AFA45CF40E34AEE040ED718C7A37604E898F79184D346AFA0299ACE9BE973
670890B606F0B88DB4336292577439829D202B8BC881559868C2D32DACB708DC7EEC
670959632D3E618D37B284780AF2666CC81BADB341C10C9745A1437015AA91AF676E
671036741DEA9046B9EE93C70CDE6E5BE30C1574E295A592B03B951137A5443F980D
6711C36ED9B52125EB8A71078F51FC10BB49CFB048A54824A6911D945641933857D0
6712A9DC80654384B562FA3F5AB575ACFFBC53B493A0FB579DC9DE1231A49FDF4375
6713865FAB1BA20E74E4B314211692DD359441E47068397D57E608871CA05FB89BCF
6714E0D46BB5F84BF354BE90BDDE0ED7C565B84C32CF953F2BE1136D9C651891A894
6715FC786EC9FACBB8E3F0ABFFE37463BEB48D313D59BAB7210BA2B6CFAE1B2A8BE1
6716ED6B45CC9E251C4E8003E5F562EC048B69CF13A634680A2C67550CC94CEF59A1
6717F217EE7665184E18D63DC0C91F5C606AD52F2987D379088B39E217C33CA14538
6718DF3FF835551D339BF2B836957217D3ABB4DC57BDCEBBCCE14B70DAB6821FAF0E
6719FE68781DAB924B6966569A4FE5134ED14A74F72FCCEC988EEC4868DCD443A503
67200974EAE6F07E8311C1979A3B2B586188EB5BBABE38017D31FE9685EA852AD59D
67218CD75108CDD566599D06B611AEDE7C492B3E82186980527C9281DE79D7449BB9
6722660A8353E924B4DB1B9F6166553F436409A93BD5C603021AC613D5C470EFB743
6723A6ABA267B872D32B531399BF9ECB63364379CFC3D1804CA7BFDDC19D8AB9560C
672466B7D20F94E6AB76722D02E681D3E4561DEE24E21977A4C76967FD8D6499B435
672518BC23E58ABAEB635A8683C4D13551CCFE2B2179661992E3AE95EED9F0470693
6726D09152B40DFBBB0298A9429F8B2300676D0353522265ECF91369F3A9888A26
c302751c
CR
67270000000000000000000000000000000000000000000000000000000000000000
67280000000000000000000000000000000000000000000000000000000000000000
67290000000000000000000000000000000000000000000000000000000000000000
67300000000000000000000000000000000000000000000000000000000000000000
67310000000000000000000000000000000000000000000000000000000000000000
67320000000000000000000000000000000000000000000000000000000000000000
67330000000000000000000000000000000000000000000000000000000000000000
67340000000000000000000000000000000000000000000000000000000000000000
6735cleartomark
45c0f7f8 6736{restore}if
c302751c
CR
6737%%EndFont
6738%%BeginFont: CMTT10
45c0f7f8
CR
6739%!PS-AdobeFont-1.0: CMTT10 003.002
6740%%Title: CMTT10
6741%Version: 003.002
6742%%CreationDate: Mon Jul 13 16:17:00 2009
6743%%Creator: David M. Jones
6744%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
6745%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
6746% This Font Software is licensed under the SIL Open Font License, Version 1.1.
6747% This license is in the accompanying file OFL.txt, and is also
6748% available with a FAQ at: http://scripts.sil.org/OFL.
6749%%EndComments
6750FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
6751/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
6752{save true}{false}ifelse}{false}ifelse
c302751c 675311 dict begin
45c0f7f8
CR
6754/FontType 1 def
6755/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
6756/FontName /CMTT10 def
6757/FontBBox {-4 -233 537 696 }readonly def
45c0f7f8
CR
6758/PaintType 0 def
6759/FontInfo 9 dict dup begin
6760/version (003.002) readonly def
6761/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
c302751c
CR
6762/FullName (CMTT10) readonly def
6763/FamilyName (Computer Modern) readonly def
6764/Weight (Medium) readonly def
6765/ItalicAngle 0 def
6766/isFixedPitch true def
45c0f7f8
CR
6767/UnderlinePosition -100 def
6768/UnderlineThickness 50 def
c302751c 6769end readonly def
c302751c
CR
6770/Encoding 256 array
67710 1 255 {1 index exch /.notdef put} for
6772dup 33 /exclam put
6773dup 34 /quotedbl put
6774dup 35 /numbersign put
6775dup 36 /dollar put
6776dup 37 /percent put
6777dup 38 /ampersand put
6778dup 39 /quoteright put
6779dup 40 /parenleft put
6780dup 41 /parenright put
6781dup 42 /asterisk put
6782dup 43 /plus put
6783dup 44 /comma put
6784dup 45 /hyphen put
6785dup 46 /period put
6786dup 47 /slash put
6787dup 48 /zero put
6788dup 49 /one put
6789dup 50 /two put
6790dup 51 /three put
6791dup 52 /four put
6792dup 53 /five put
6793dup 54 /six put
6794dup 55 /seven put
6795dup 56 /eight put
6796dup 57 /nine put
6797dup 58 /colon put
6798dup 59 /semicolon put
6799dup 60 /less put
6800dup 61 /equal put
6801dup 62 /greater put
6802dup 63 /question put
6803dup 64 /at put
6804dup 65 /A put
6805dup 66 /B put
6806dup 67 /C put
6807dup 68 /D put
6808dup 69 /E put
6809dup 70 /F put
6810dup 71 /G put
6811dup 72 /H put
6812dup 73 /I put
6813dup 75 /K put
6814dup 76 /L put
6815dup 77 /M put
6816dup 78 /N put
6817dup 79 /O put
6818dup 80 /P put
6819dup 81 /Q put
6820dup 82 /R put
6821dup 83 /S put
6822dup 84 /T put
6823dup 85 /U put
6824dup 86 /V put
6825dup 87 /W put
6826dup 88 /X put
6827dup 89 /Y put
6828dup 90 /Z put
6829dup 91 /bracketleft put
6830dup 92 /backslash put
6831dup 93 /bracketright put
6832dup 94 /asciicircum put
6833dup 95 /underscore put
6834dup 96 /quoteleft put
6835dup 97 /a put
6836dup 98 /b put
6837dup 99 /c put
6838dup 100 /d put
6839dup 101 /e put
6840dup 102 /f put
6841dup 103 /g put
6842dup 104 /h put
6843dup 105 /i put
6844dup 106 /j put
6845dup 107 /k put
6846dup 108 /l put
6847dup 109 /m put
6848dup 110 /n put
6849dup 111 /o put
6850dup 112 /p put
6851dup 113 /q put
6852dup 114 /r put
6853dup 115 /s put
6854dup 116 /t put
6855dup 117 /u put
6856dup 118 /v put
6857dup 119 /w put
6858dup 120 /x put
6859dup 121 /y put
6860dup 122 /z put
6861dup 123 /braceleft put
6862dup 124 /bar put
6863dup 125 /braceright put
6864dup 126 /asciitilde put
6865readonly def
c302751c
CR
6866currentdict end
6867currentfile eexec
45c0f7f8
CR
6868D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
68690E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
687051BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
68717C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
6872E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
68730FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
6874C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
68757A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
68766C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
687714A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
68780EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
68793F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
6880BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
6881D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
6882FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
6883556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
68848A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
6885F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
6886B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
6887125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
6888A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
68894EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
689056D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
6891E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
689215E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
68932014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
689405D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
68956C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
689604E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
6897C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
689870D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
68994EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
6900A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
690162CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
6902240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
690369E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
6904ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
6905121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
69060C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
6907D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
69080C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
6909D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
6910550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
6911CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
69129D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
6913FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
69147B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
6915E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
691650F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
69172E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
69189986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
691944D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
692049DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
6921385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
69228F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
69236F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
6924EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
6925E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
6926C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
6927484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
69284594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
69290AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
69306BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
69315D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
69321B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
6933909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
6934BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
6935CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
69362A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
6937CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
6938EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
69390EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
69409402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
6941D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
694221D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
69437C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
694452DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
6945FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
6946AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
6947F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
6948067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
6949E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
6950C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
69515CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
69520D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
6953CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
69542226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
6955E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
695656C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
6957F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
6958E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
69590513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
696067C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
6961EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
6962CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
69639A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
69649CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
6965C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
6966327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
6967F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
696860B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
6969A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
6970B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
69710CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
69721C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
6973DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
697455753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
69757A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
697675B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
6977E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
69788CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
6979F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
69808CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
6981D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
698254397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
698349949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
6984CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
698534900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
69861CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
69876EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
6988DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
6989E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
69904ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
69912B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
6992ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
69933DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
699497033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
6995FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
6996A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
6997639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
6998D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
6999E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
70001CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
7001A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
7002F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
70035E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
70044EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
7005664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
70064F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
700735A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
70081DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
700901374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
70105D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
70112C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
7012DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
7013BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
701439C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
7015C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
701699F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
70177BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
7018D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
70196D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
70205C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
70216BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
7022F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
7023E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
702439FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
70257BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
7026ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
70276626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
70282F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
70291580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
703006969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
70315EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
7032288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
70337901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
7034759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
7035E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
703603BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
70376AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
7038314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
703974A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
7040906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
7041673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
7042A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
7043931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
7044CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
7045E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
70464C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
70472CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
7048F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
7049E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
7050E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
7051251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
70527329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
705346342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
7054E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
7055DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A27D3813
7056F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
7057507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
705846D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
70592E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
7060C4A879C0C7596E61997B972E8A55E57B17F802C738E5C7A8FBF6424F8B131B23
7061CEE3EA3747DB066246C250EAD335A76FA166ABF75120CECB59076AB31A51F176
706257176CBE8C802A97B0542A5CFD6D5E6D7EC848B923012E45D9F065BFFA0D03E6
7063788B68BA4DE51DA37994948F859D41C28BA939C3A82BFDB44DA585AE80B8CD7B
7064A6EEA79B70BFB4864E06F06A9751BD2D2A209D150D7135E0A25D67263EDD2A7C
7065C63B5B76ADB05D44BD5BC0BB3EBCE2E74E1AE5F7DE07A59D90C932DAA2553505
706627F2AFC05F7CEB39E1C7E54F69FB0BBB069959F2FBD11709F8E81F6E7CA06DBA
70671CBDD8E7A78487462596DA288B50B295E46F4C3D9BA862688C68859734B232A7
70684B371D2BD786924F186524765E789EEAA30B20C069322D42C893A30BF1BD2C46
7069F8F3732DDFE80B8FC1789239345944D8B457824FD80D11184E73FBA30EB80A9F
70702FD466826D4E666E3A835B98A1D4AE5D17053A6A648E26E77BD08F9A3E02956A
7071AE82C4929E9666F539079846527D0E326FE7CBBF86E3722BA3E53F8A5121080B
7072ACF8D3C67A2A1DF624B9DB92105D3C833F5A6ECEC108E026E1D3D968967A1447
707315CEFDD09123D56606134BC3449404ADAB1330C9238DE48F3CDFBC91EB86D7B3
70748B85B5BA97376A0673E434DBFF19798EA90BFBD94493E2D21976F8106FC0C276
7075C81C9B9F7D4A68120DDA56FC6EC65FFA40DB78A60A05EC270A106DEEBD2CB92B
7076F0622BD2B1D43771DF39AAD3ECB655F317AB483F7290C148690903AAA636583C
707799DE3DBA99EFE20773D3D8DDD816A28D7BD8881DE570BAF5C7A30679179E1214
7078FCFED81605FE56AEA21C1894167F93D648B474352A65C0756F812F97AB435ADD
707922C031A21714A626DE35308AC51CD676DB1748DD2773532294FA77CFB2AAFD32
7080A72BB7A045F12B4934A768F89217233DBBD69B900B28492A26713CA5D61A9042
7081A982CB071F1F875718FAC168E4E275860DB6369B8114E1BDD4801110B62C3E3E
7082CF140554C826967A99F4E9726526E87D57BF845CE38E33893E5F9788769B6A4B
7083A4577C38C8D45AF2EDC9F4FA7DD9979AB8E14FF5D8956233AB4C02982BE8E561
7084C63B7BC314793F634DB6F086E1A60D9FC3B69D3A7C20A99FBF3CB028CDBCEB60
7085E803C8DC3C5F0CCAC030905E72BBAC052520CB0E40E23B46B2150DE67F61E4B1
70868C4D55904B7F90DDE4A4A78B11AE1009DE46DA396791B1C0EA63FB6897FDFA0F
708742474042E7E9B06A703A7C6E672AC6705506F3C0B6861BC85CEBB9DC9BCFDE0D
708843F5248CD7CAD4B89835BACABBCE6C791BC35FE7211E775C009844FC75CBF6CA
7089DA6A6B7B488270BFAFFA3E9950914CB0F88C8AB7CDEFD2FDE11ADA7073037EF3
70901A5CEEE37090F3A56D06FBC70597907A26498593783878C02722ECFD5D65903C
70917D421CAFA78924DD27756853568535B02533C3393183D6E30DA6ED4BD6582E09
7092A5A4B4404EC452E91CB44515AC6124EBADAAE8A98D8A95E7D14DA39951EBC461
7093D426490071462F246794023DE1BDC04AB0F1834D50F748C3C60A07E1FB8EF400
709478DBAB90B59500BD1232A872ED51928329CC8F06E83164FBB2D0B24222223EE5
7095992241E8E00D5DCCD6DB9A8E2325ADBE12FC8512AC127BBEABDA739672C1644B
7096554850CD75724E6779A7E76424CAF89E9455860E0AE2679231F4A535C0ED4336
7097313717D6F7A4A4DA833847A1BCFC7BF99234FA645F2B85C9A9AAF7108931E3CB
7098077A9C571E57B0D7EFD92B56C3AA4FCEC0BCAA96005E649AE8012366BE6E62CD
70999E742F8F45AE4C96BCD73AD80AFB6F061D629ABEAEC3018CFF45E41F46751953
710044E490B1355DC49C1E10BF343307263584091D122ABB1E3892E532B6DBAA105F
7101CD48375C112331EC5DB49E4D4CE2D126C9274B21E678E5E3EAAD4EA0CAAA29A7
710286FD8819217B195EC6E40AF23ABCD71156656DAD38C931C8730715A2773DC44C
71034DEF14D92C2A054739F27D7EF349A0EB76D952BD9BA169B4F85C09D80984D232
71042CB4A3812BDE539DC79E2EDC7C221739D16B10246A5F57151C210878556D4176
710531EFF3AB6C4D78C4F0DF81692B3C9BDE4F85242BF0E84BACBFA39688BB222A81
7106E85E9CB332868ED5B64E140C66E242B97A90C13B6DFBC3D285A49BA9D4BA1A47
710764D83577FFB50BF974D953F42A249ADF9AC228CC4D8E82213FD463BC757AFF26
7108DF4D1678FBCD55AFD5FB3014C0380B2F8CA9D6400DF2AA041580A6FA5694ADBA
7109674286F00E531693DB28F7C996D5A66F80AAAF53001EDFBC065C72FA5BE3F114
71101FA3354376AEF7374AE1D0A8E9B06C58FD029922164DC9FA09343FB6652232E2
71112EE34C662F0092BE479D739ACE775C6F589775DD768B736F7391B9AEBDE7F760
7112727702E145CF749DC457B2E98A36C52416107B1E59084B5F777B61511B8D17AC
711388386A7933CAF852CA23FE179B67DF8DCF15800755605847ECC0FD77873727FC
71141AF2BA8BC75D30E26C40913771E528724FD7C5DE284A8B58AE55A5C48AF26AC8
711502E155B8FCD6755D8F7F5A6F1AE66E4D24A13567B6463B18E65972BD75ABF732
7116FB41F87A62FECE9A50C697BCEA1E3B3DF1E3DC961DCA598220CC746326F85F83
711772E803A4E69106EC5BCA01139F92171DBF9964BBEC8D3370039623CA1F927CBF
7118FE7DA71B04B4321EB4D3FCB27F8404994CC7DE5F26AB8FC019A203D6DF2F449D
711985A4F103F7604986A1AC1F7D05D239E728FD6AD1DB5024B0A0542130D2B0E7EA
71204432F910F9FD75568F5732EAC95F7A87CEBC359949C26595741533E952327791
712187E42DF84E1064E1BDD3F5A6455087B8E9C783AB9ABBCAF032E9FA32C27ED7E6
7122CA7E3D1D76CD1905166090BD81A85485B9B4E976DB2E19A8E62EFB795FD6298C
71239ADA57D5BDA2FEBB227F0EFEC59E4B51E06B8358006F9D79C1EFE92510D6046B
71246AFEEDC793137DE622A8B3F5C9E3B21F29A98A589D9CEE75E348FD4D206415CE
7125508AB95A7496236AF1F6F5ED6B3ADFBAF1E35B51484F9B1E0C11C5AEAB9336F5
7126A8861ACE1EC74C4A145A64E4FC8F6BEB3A16B021AFF4AEDA59B06326A8D7FCB3
71273B75F9729BFB7EEEDA8A1774728C80AED40BC35D42045E5CEEBBBEFAD2566CB1
7128AD69A9A972826DF0F2303BB232367E611C115E8955DC97779B1AF269B84574C0
71299D816C88BAE3AACA6428CFC648FCF0869AD9236591E3B8FA326BD2EDE7F97286
7130511C75F4EE4F7B4DA33BA2CE7F778D92AE7C1B4844CAB3ED8FCA285454D78469
71311639D24729E8002E4507A114407DF51543CF7DFFDB7E05ADB2D36E139F2DBACF
7132D90AF274AFB3E5AB5B38918A28EDFCF6EACA78248BEFDC2FAC0E041AD35B130F
71338A91E20251CE976680FCE3F8B65B33118EF7C138CA1260D3CA855C94FCC02CC2
7134B29C94A3FFD38056ACE512DE680DA29D97BCFC35FB2A85057E484FC9F72C9A7D
713508AFAFCA705335C6E9AEDAFA97D884E0E463E79D8AB45DDF86C56EC922283C4B
7136777EAABC0D57BEE30D4D47FFA16FEAE2FA972E36516480E1FCAFFA5CE692B7E8
71378F887C5AE573B96643F10BC62FAFA4BC6CD04F5353C0D40CBCEFBBA4DE7B8960
7138352E7F6497C9C4489779028934084522336B5E5DF6FF84A78158ED5035FFFC9F
7139F199AFD543D5D81C0155F3EE0E7F6FAF7898F7F26941D417F7AB37703FE67D37
7140C263078FDC85C5430CF379E657FF9ADA0C00DBD605386F5494459C63D4AC057B
71412E061B06E17B54AEF38A9EB401FD4C76C6755F2AB651473DA2F19E28C89229E3
7142FD385D8559EFFEEE5D0CEF127A8A6CF9017459466E0FAC341DE1994C03A0CA5A
7143799CCD03DD2B41A05F7B36493638AAF8D7CD380E03726B0A18B02A46A0BCA027
71449BF16ED75AE0494C36161ED2C22DD7036FBBA2E319106B9A56FECC732B87E2F2
7145596167125221D42DE9D4435DAD321F878FDA68B9E72DBC2E31178621327BAC50
714672148C123D4C8568DE822169839906B9F0ACAF3B4DCEB9352C8A9E246A9A5EA7
714731E04981D0A53F44B6905704CFFB9F0463518C02538DEF2DBDABE936D1213FBB
7148FCD28F833C5872057CAA92536B8E8EBA129745E2E2B5A9F07086A1212D466785
7149EE640432A0E47C91CCFF3FED5669C8ABC2B43551AD04E7A2FEE2F3C16511F7D4
7150048A8207351E83AD32A72360A2DB1AA8F78C5D2630D770F5E13D5C49BE166475
715179483B2F7FEBC1D73B04E0E5D9B8243DBEF7E5D201D9F644B150A230B5CF9B90
7152CA34BB8474BCF408E37757B8CE5B33FE7400A68C70F542C7E2A22B8C0AB1EF9F
71532BBA7A646A4C872C43C0A748F078AA98A13E882085B460050CB3F5B09B62EC01
7154AB87AF8DFCA6823ED6CF8426EC115C5E4DA335FE416E1D37311B7FD56793CCA0
7155BF90B579B0FD4E4E1D0A26FB0C1D490D99CF4994693630FA343960E15AFFC596
715649BB7297BFB82FD56BBCB36DC1597F94A157AEDFC53419BA867CC02C26464BC0
71572875127C688DA6902567716A908153DB4CBF710CDBCE50AB98E0CCF1DF5CC571
715800027F6582CF6AB4E584436471D3C8DA2D780E5B02A9B1717364899D51EC679D
7159CF5F4A4981EDC24F710E892772E4F891AD02B7B98A113FB1AD2B5A51046693A4
716019D03A75A3140C19791C85A0DDD173BB3618E9498CDDC8696CCA6EF81729AD1E
7161EFE4F3D6242E1766A3079371D1D1833841F46F04F2F8029D8C1943F6986A95E4
71629E77806F221CECAFB3EAE0F979DADC5D2E4715BFB5C64245CBD2300E59030B99
71630885F08417E1A0C57C3746230F9EF4E968C0F41F67706BDA2E983012BF317612
716438E9C0178F027EDA0E679F306AF71F0D8985C712C4B4BBBFC57A86AE052CC2FE
71655C1BDFD948801509ADFD4FF9FA7A25E30D6CCC7C7E418EEAB34C4ECC6AC8FADA
7166637B5CC70136EA5A57B727EB11075755A7840215CE2B9939BBB6C3A7E22DE42E
7167B3725C1AD0BEE0A54C0B57CB93E6A20E319E2FE4515D80D09972E0A742D20DE0
716855117C1B9F3C181456406FCA70A7E3B757A813F7CF9E3562EB8CAE1CFB65DAA2
7169B384C17AE103C20851906846AA4AA5EEE5EE989F292D42B11EB4C4FC057EE4BB
7170B09A4D81E8AF0CE1C851B2E328E977207A6989F13F7FF039A4E295507CF0A53F
717110A345A516EDB7C5FD5763CC27543452249D229BC22099C6FC1DFCC07A35144C
71726267BE8D5BDCE57F9C7C65F6A64A74DC2207C8601231477DD57BC8259B26C683
717322FD4DBF0E3BD814E31C9E194CE2EB212268A249216DB084226802B79DC72AAB
7174FAC4ED3AF6BC51E2D9A1D5A37F5124BEBB1E0B010C34A1B7FBCED45414AD2285
717543BE684BC7BB56C5036D182AFECC061F749522456B4DCD80E3315F48E7E8AB98
717640C4FBDE71DA957C8FD860C4AB02C97578BC8299EF448A526CFC585F27EA14E8
717788F9928CBF87C8E46F69100F0CB43E2720B0BC8DCA50D59FEFBB84383B4036A3
71780ED89F67B433AB4BF686487194107C63BF989A80D761EF3FB20146A0A496E5E9
717926375866581146F3537156051C61F82AA5C68B6E8418297DDA7704EA50262775
7180B96E1E1D7643370288780188ABCF25B9B23BBE408EC5DE254F51469D5FB06FF6
71812EA926F94CF1730E014F34822ED267643B773B7CADF967D431B6F3DDC998E56A
7182243880E9F772F3BAB3702C19C5DC92ACF864D6A771783E178F4A7BFBAD36008A
7183F0A61C5B437A69E31235DDA9898B4B081F1176C197C0834CAA25FDC9BEB696AA
71848ABD1FDBE17E30070690EDA533E2EBC19180DCE4CA8146D6657BDDB765DDFB21
7185D0CDB86912E49DB109F66DBB9226E297945BCE9073E724EBABB58E42AD94CDA4
7186C9DAEC40F79F3A3D36777B18C61DC9D22EC351324FAC3426917C893E36C8D953
71874ACFACA05F8764BC61A17F6B40D3A97177B97CF88C2B0023ECB3F29F9CB347DC
7188E686012FB31904DCA042679776108D9D611EEE971D341ABCEACBD0866DA21DCC
7189270D3DBBBC9CD438F4F651B58D1405A82960CA991CF690B8B564033154645D8D
7190ED5E4E059D9DFAF3A5C2BA1C1AFE1B865901C8D117262CAB210A3C7A03443544
7191E22EA5577AEF1378A9A4528592F32A8AEBCB1CB6A7E4948FF78C6FD230A5892B
7192D8953ED89392929FB91C042D31E7E8A4912FC701E722D7FAF0308625B3B748F2
719326DE427383236E131022A95395C72B3DEBB139C81811582FA4E9C7F970FA605D
7194C8DBB3ED8B141428ACE6DF426B2567B10C5D68A4060F25D5D64BA262101CF5C3
71954B7948CDEB6CAC66FFFA0F1795C5F3174F7D319D252DC2D22BD08FAB54CEA742
719664C0C6B94BDF182DC0942C0C82E82A0B04654A7C2E6BE685EC3DAF1D5FE48790
7197DA815DBBD0A176BB4D4424ED7F893B4CED54C2EF94D73CBB154E547CD33D874A
7198E754A17AD1F10C23BC5FA4E709330A10A73C93B843D8CD8A65D5A4241B35CD19
7199938F2BA2FA95551F0C2FEF1CB8B056D9A9120F7607BD4C497762C577B66B2DF6
72008F3F661EBD7F3E73E3A0032790ED80F774423A026F8ADE2FA82129E1FF27DB3A
72011B6E603479668FD783735606F7AC6BE9D65C17F7ECCA3B622C13F0FC95F8259D
7202DA4801A7EE18656AAC3D730CF2E17FCE8657AD6289850DC06E897A759F7B53CA
7203502E764B07FDDBE6E99D25ECF1600D6646622334871C57133A8AFD03FBBC2368
72041BCDABFA9FF4C4A9EF150045F694A3AA487BE461BDD2BF1BBB38BBC365837063
720570963C7C1E7E4809797F4E497DBF6D5A90A71D6E89BEEDD5D16B31ADCAD67A81
7206A9A3085B4CA7BD93E1A9591BD4A7C88FF930EE7A131C5F3338817D88AE31813A
7207C09D5E7120AFA6565B0A647A40CA94B78F20905B7110FE44A90794F7F0CD63DB
7208E99675C781255B7BA257CEB14DFDF9C13A02701B0FE41C6A6F50CC62C028A3BA
7209E9A918549B7F9F206DA0909F2009CC87BBB565F281F24D0ACBCB71F12709DB31
72105D355415D97F66DB25CAC37E90BEDB51F2FA97E0A61EF85E845F702D0B3AF935
721114F3EB201323209D76C7C5970AEFCE4225FFB4A1477B177BB52332AA0539291B
72129B8004F23CE4E055F7AB6D6F2A8E74C2994306A407A4FC831D1C887C42FFD0DF
7213EF07891681C7F4AA914AECC427057A8D73261E25F82DC3EEE7295C0870E91523
7214E15187584B32B8F8B0F2E9BF4E67E5A2858F00B0C59DA1B1B59B00374C6C6AD9
7215741E0998EE0DCC6F5ACD1925CC40807D5B66E971CDCFA4651BBF2490FADD15EF
7216C8A7EA3ECD078D34D875C3EC5EDAB74AC0DCA00F2329184455C24C97EB0AD4C5
721740B8E4AA2CE6E7816580F9DBCDAE7F01AF0533397CD37C401D4841B60CB976EB
7218E3093FC863F368C85AECE6E6CF7D9ADABDF628D9806C1269A0EE06FEC90948E5
7219CBE40C0A2C72E08D9AD94F07470692D571F595E465CB32BF486AE9C3971B6F7B
7220FBBDE2699E1FC9DACB156D880DA379262A98C6708A9850FF8EE36C35FF636E46
7221D8D00FB3550786C1D73E6B91F9B35D6998F33BC953E0C8AFF996F4C707F8DBAA
7222AFD76432E45605D5E703C2569856A0BD8C8ACB29BCAC87F1A72F859D20205328
72236272929343C1CBCB053D7E19AEC4B2EFAA765B2002F43E7F62ED5281C94ABDAE
7224750B2C88B3801559FC6DF0D66E55952FD67AD41718D49D35DBF2B7CCBC1E755E
7225800ABB45EA4D7547756CE9E6D3AE0B80D8D97D681DFFCF4D5D5330F0FD6AA729
72265BCB1475F18E9612197D6F5F7C7AE8FB931C242993D385AAE7829391D370819A
7227496B9518C6F913E666C27F0896C7684AA1DB1A335C7B50762B4F8445D45C907B
72289E30F7FD84E403DACCB0A8DFF2940312386C315FFA700B0E42242EEE04042E2A
72293F4840E719A42FAC426870CC20DF083537010550A6B43A02A330D92CE15222FB
7230BE6A9F6EFA44F7987224533983D96BD2E1E536437F89E2E43884AE09FF5C7902
7231A284704F78AC067C332EA207F53CAB61ED51EF3FE79A9B7A373C3DF72A4F3A5D
723267B4F60BB470E5D093FD880AD32809160E550CC1EE67E01CFA80318C03E6FDAD
7233A8E744FEA593E2761C60D2CE83F3F6D3A2B203739C62A69D4E271FA12372C45F
72346C378E4CC21B9B0CBFCF43233562E4BD4D52F7A634D1F0493F8DE445D140EA4A
7235D3956E9971263B7C3CAEC8AC83E541D58F52E00C1C80EBD9A31F0A9D17FA2D63
7236E5E0D22CA28D51E39A055C40AB769EF224AEFE2AF714E322FDCB9770EB00686B
7237208AAEE2160D059DEED823FF4F9769359C183A6A6398F9E4ED55397F02C68FB1
7238016CB495A0599DED25BF1006343DF9AB7C3BAEBD1EB2F99F4FCB07E84AD2D959
7239D1D573B89C220DAD815D9EBA41CEF4D664630082DB97645AEA6779A8F0D7765E
7240B76A4B8B429CF95F22474EEF2FF1C792DD525E50E1EE0A1ECD78570970B62293
724143DBE6E9B97585B754AEFE28E960B5F8B3F549EC7F168FFFC5EBB52C7CDDACCB
7242DF9E1FD89F2F8CEE44285E79724FDDFED021AAD2025006239EE5CA8543B86200
7243C7E8522668B07608615F6F102E295003B1B89264810A2BFC3DAFECFF126B1807
72442388839274203BEEC2B319C7F263ABBE6B181FECB5FDB9516E8F0456B6A1BEAD
72457F45DB0F95F4943B2ACF52CB30DFDC6EC936A6292DC2AD0BD67164900CECF3DC
7246097528073246A88607DDEE1DE4BCFC298892F3B73E897734D7001A466170F60E
72475F2948ED36A6AC13975086A2D68B6CD8B033CD14C1B85EEE4AD3679D74DEB998
7248AF62D045BF1102FB3927E5B9078F8AF93A0ADDF1937276C423CD346F30D17D3C
7249C57CE052053EC21A2991D063B157FD535850DD63E55890427BC2C883785DFBA2
7250436BDED247251001AB1AE56EA19880B88B3F1BFA6C232876E6C002E9EA850700
7251517C80537C27033737A162B10B179624F869FEC056F339D5A292E6E945E7BB31
7252A271CA30990B4AA5874CAD851C1154275BBA868EDA5D156F4663E2D436DE6DD2
725374E6579AB19EC803927046D9130BD9E735D64248A6FA78F1DD6B51DF0B1DD553
7254316D96795355878C426BDA09F052D54880E5F3E5C1F29786DA0A8084D81A5849
7255B2A301BFF171446EEB4DAECAF40D8C4F6C489BEA6C592F8257E68C514180756D
7256A13569A03827561348B73584D69626B3175247018DB9DFAA9E989E55C97F9A32
7257B02423EA16FADA78FE1E3C56EF4122C640EB8D77C5E957B5E425A2FBFD173423
7258E8AA1758A91E1B5B85D174D7DA1F11B3AA76761346D2464BDBA290435A6DA50C
72591F14E14FE29396C918E3E4C388E93D1C3F7A7161FC61DFA1543D4CA86B6A3A5D
7260B64FC69BADC3F3E0F7DA2AA5FD6C39700C2CB8A6C823D2620D39FBB0B507003B
72616D28C8D67F57C019DE3D8A4B6BD01CF0B305163BB1229F470AAD7436D13C326C
72625D205B4C818D0F765E2B9FDDE26B033D1060EBEEAD6E5C49EC8C6F395B54C259
72634E24E89DB787773423E358A1C64C3FDEE4CCBAAC4AC652012A0CD7269A062643
72640F52A1BD1DEE9401B5835752C48CD0B705476B00458D31E70599761C793987D1
72651A14288D5EB2C9452C2C4524202A40A8C773AA8A3B9D10ABFF457478532B2C58
72660DA8776E116853B77D1A8EE320C87B23A693BB5D3E77A9C419772675690DD75C
72677AC5BC3ACF97BB11C70C0261EB5DECD96577D755B03EECBC66B3B8FAFAD87950
726894AA617A40E4CFE88939F28D0D36C5C6FB5B4F6E4321BDBF12DCD428BDEC76DC
7269192AD968A9699084DBFFA3FE06D5F79D336DD6CFCA4C9E1F427A29DB1F4F0492
7270A29F5F052310D455E8AE1847083B70EE57C4799FF4B470655D855B8298FD3694
727166E00CF5D04415601598C0ABD6802FA0DC4C12965546076E46C2DE87467CCC8D
7272F9ED9FE429CDE1DB2AFE61363327B4D11F46C678B59E74F8F09D8B9C14C48004
7273CEC93F33A4A6906CD71B2414C05B3599E4D1FC1EB839D4B5E5968711359D3BB2
72748E6E262896409C7EE86DF7A8CF1DCA1EDCB2BE723CAAF5B1D7DC94F093864855
72757FB08EF776FDCF9DD8342ECB7F7B307542880A7C04D3BD09D65BE13F80E36120
727624BBE4C422F1CC0DC956CE53261B903ABA0E0CF1CB0AA8895C0DA8127DE3DC9D
72774B491926B5408AC8D29D2FE62CC3CEF548C0A57A1DA202EAEA8F4584D8B64E49
7278A3D11A48600CC0913B744180AFB6873BE72DCDFF8EA2203E34082E011C87C3F8
7279EE91457705ED0BD4E2C193B7E818B50DDDD734F2BA1B876D262C39D94B0FC27F
72800B5A87423EAE91BDAB38BE457EB0309D05FA5E458109305C03295FC39B0D06BD
7281BFA2B4520DD610E12C3AF842A94296108FB67495B300991C3491F0983B5A0403
728268A8D19218D9429EE400C3B91DDE2A9F163684D9F28120B584FEC88628EAA60F
728379F5988BE7BE31153A675BC7B344E7F62CE85E8850361D1996D57E71690472BB
72848055755DE965D795E6D2424F7D76AE7F249AEF4BFD75103B2CE4D62FECCD2FAE
72853702A57A3320C54D19D5015ABA5AF39B237C53D38DBD80773C0B9D6406574BFA
728648BA4EE71769AD140E202D24D9F1691BA072E1AF182FD6DC06C2FD25E3437E38
7287ED1D0033E77D2B188F3A84EAE17787110EC5462EF5CD0FEBBE5CE39976B5CDA4
72888206BE5EB8A06C7698C5E6A45EC7F59CAD3D6ED3AC19FABF3D29C9AEBEFDD74A
72896B7261D349FE509BD769D9A24B16C276C917F0CBE8B25FFE19BF8528E1C46D38
72903738E3CEE8170E3EE323A464A3C8FF30B3DAD0BE87518E008E37F60DB471E3EC
7291110E9B8AAA5C875AF759126B39B90A8E7BCB25FA3EFA783AF7B069AED1887A19
72926A75C799940E5352C34A93F125DE82A7387CFDD7073A28C1026C9E06A1D8163B
7293E66DC3BAAEBBDF96B7B3143B9414AB45643D022294C2AF8C87EBFF1276EF991B
72947A1C720C1A7CFD392F211A190A530A19012EB117670AFAE4CF700048D901A5BE
7295074F9B05AA555FA4ED6D0A92C08E4B795279F9BE48887886B5121DDD857E8A86
7296A2885B9A672C72BAB990E0AF6DCCC769A7E18E65A86B3E1482D8297FD98E0510
729730B27AFCB9B261771A1AFC298F96E272E779A8B6AB6B03410ECE32B7B69369C7
72985597FDD08BF2E6CA29E093428DBB0BC53C64E5ECBF216111AC90E82822E7604B
7299A9AF479BE9FD2FB2ED27EBF4027C22357DB27A5A6FBC6B14607DC26F95A81BA5
73001737D6C406B19857FFF2903F966DCD56BB73B06F5F74C917517DF95D8D5E5108
7301350AB839CBDFD7D1F3C687D0B6B576FFE108AE8708B967C29F9840A0D6784789
7302DDD7A0D76E92082162603CC916ADAD75BB205E7C9B7A72D286C5411F3771EB6B
73039F9022BB24AC9EE7700907280F52862F1D542605F3D3AB06679252DB9A8A4E41
7304FD9740AE35473A9FD025F364B863DDD063AF91A114EB529A38F28C4B4551E276
7305F76C254669B81BD3CA8479F0C7208AFE5A1927F2AB12FBEC47FE0BF9AC3DBF3C
7306340DC67125FA0D65B245260B32FB74F90CCA6D327874BDB6C252614C75425F20
73072AD8C9ADD15733715B9281DB9D73C66B9664491416643C04165C64F5939CA73F
7308F8D7652592F391E59B82EF0BEDA9DC7F42713005E4AEAA1111EAB4E74BD99119
7309D86490DEE3DA6C021B36D7AFDF9EEDBB1E3253176EF0607469E0982034AF57A8
731083F024DD4B42B99BBA110514E52498F6BE463B3053DF5114F2D6644FA27702D3
731115DB327F632E3750171BDAD75F0B7D2A84267C712132373A2FE740BB086D53B5
7312C3E9A68583159E46FE46ED3B645B0FD505D206E09D438052E27B75EFE7F5D83F
7313BC153E4BAD47FF241AD46BE13605E1840C5C2CE3492C29EA5FFF5550AA3986E4
7314FF28A404908C88269D821EB2FBB193DC311750F6163D75872603A254B949C756
7315CB97829F0BE3AD796D52969E483A0A53CA650CFB9AD57E0F4DED89C7746341EB
73163D3333F06556BC61BABC3553C7B0D83DDC5B3BFDC77DBD9B6DE41680DD6439E9
73174C9FA49DF62830C86E7A4B1CBD37F2794EB6DAFC3F1676697392A6A635E626DD
73183A3BC9E2378C152F9895178C694596191B37BE3DD8C0FF34C82C386289EBD7CC
7319B63139A3243F193EA10211A8E390B4C4046663CEC373928556F5CC99FE094ED2
7320841DDF013CAA6CA5C48CD9382CB776964B38BC24BB009DF203DB81D4EE3A4463
7321C5F2BD876E0C9B9B226FF39C0CE6E67589A38388A02A81D3DEA72CC031BB8B2F
732266C481F00167DC0BEEE6740A78D736F429B44B82A3B01ED2127052646DB442FC
7323C1EC78B100F11D42512810F26EEABFFDEE3E46DD584FCC2194896F7BB5670634
7324480771223C1E2641A253CE2490AD75591FD94F19B2DBA95F0CD64EE4BA03D3B2
7325BB0C7A6437B610004CA4F1B914D9075051F7CBB6CDA305F6337307F317CC05C7
73268BA5A409ED6D915263680852670F8A474AB0646ACF77FA3AC35332DFE2B00CEA
7327FA99D25DAC950B173DB84ACD9DD99AB23973390FE32E384C6003FEB9A4D3FB1A
7328CA17FE87AD558921F203432EC00D0BD9E0294A0364048A9743516F46EAC01B7A
7329AF23DACE21FC2D26692D8F1A85F1B0AA8156D6360B322724C4804FAE55DFA814
7330ACCE2F8508335CD775539E7931007A73DFDEEF7695487B10BB0D95FCA66D0F53
73316E86DD15234A025709C4F7DD08761711D05655EAD8122D8BA2F7177E820B48C2
73325EC82CD16644832ADF374ACF193975B4635FB374451D0AED47030807CFDCF240
7333783160D79230AAC1F2E5066F09C327ACE24CA2D712D08749FC63C3D8EDADCE22
7334B81A7E03350AE88F30BE8222B6954ED0D2910AECBA460EC21BB032C4D5DC1B12
733539F1EB91215B384CDE3F1FBDABA298E37D4460D0B07B0493053444AC73654815
7336376ADD2F64BDE78BF59CD75D93A3A3BC730562E9A1F2A730A2F766AA19DE458F
733706DD501B215E0C2070CD64DDE13E99719671FA4809FBCB6623E206253081A50F
73385329F16F1B0F0F69276852A7A0AC023A821B8E7880F9D7AE5DA74D0483AACB4F
7339FF09D975ABF439500ADEADA4990CA29A50D82C0A7704F11DDE0C9C8E4DA21382
7340C4F7289719D9A4A44BF2735CCAA2BCA698A5FAEC9A3BCCDDA1C88CCE18510733
73415A88B88A193C9DF15ACD00F20A965C11DD8A35CE316EF3E4716AB3FB4EC6288A
734291C0F824FC9933315C9A71CA786C9305A9A30F407777F0AEA7D341D1D9605378
734372CF445A4A2E3666C0075E2F9AAC3F452811EF7E60E6C04F37F3808FE8BD39F2
7344346F5E25757E3ED2232F1B9B4DADF83DA45F7F302809251973F705CF71E34C18
73457C452C4B5D29E0CB74CD6EA67637FFF0E9D9B211FF96E04FFFE9A27BE5E13BF6
7346B51EF214FF4F0A58C5D5734E6BCB0ECD419AE3CF79AB67D1B3EAE70FC1E83691
7347095D0C370C9CF847C2A914F0B810124D763A972464C5F2C1F69914A8672D46EE
734830F9EFFA7E9628D667E5DB582C123160BF28E77DBBD77598F14A32DD74F67032
7349B4A0537D0FF938CC61BB0F9798B600FFB1AD7AE6AEE67E0FC6557FC3FBAA1E4E
7350C793B0D207EE0395913818CB2446E9B82B880537C1625C70ACBC87F97CEA8C77
735182E6229E1734F80FBF8477F062F3836FA9DCF83A4BA49703FE3DCB5F2CF6266F
73524480EDFA91B1D98FAB8BE14DA6E84B9D58B46DE5D034734496474241F59317F4
73534AE4AFFABA7CA3FA149A26CF5050B83BDCB1C56B529900AA20EE6098D135E65E
735461026EF0852D497B3799DA044CB378332924CA360A1C62E24B5A0628813829AF
7355A1236DD728559DAA01188D6EBBF3CEF983C5201904D03A46B62A41E9C5F494DB
7356135F6B62BD5F3745625E96E1B401848BFD935AD1FE128507866FB807693E8376
7357634F1B39763087EE7E454069D5CED93DAE8BE9D1366669A152968E2DF13EFA54
7358D1A631CCCA33D914CC1DA8C0DF8ECE2FABD18641FFB43BB5E82DD0A56CC20DCC
735964EC0A7A04709085C80C2A1477CF85A29D0C11F204CEA455072DFBA6F5F5C693
7360CB2B56EA189926EB51E92D2B5D89F25AB94E1F7FA208916FFE89601B616B41EB
7361EFA70F4C8CFC3FAD1D056E4076E8CDC2C3058A2B35B34FA0A29A2ED3746060AD
73621A6B6988B1B0986DE495FDE9A8C45119DA7EC756E1C83C89842C8744AC4B80DC
7363264792E2E8D5AE4120BC57C170C742EEB0EAE8C9C4537AE432654DA4DF89FD45
7364AE0DBDD92D0DDFA0C90C4FB90FD5A7ABB522A193117153CF578A584447FCD674
7365548ECB9250DA4669DDC8CDBEBBA49999F2519DE29B0CE693DEB2F420D4B0CE02
7366D9AA3C2C15A6DC98495E1EA54C7670482E2B1034B91692285AC47EFD6271659E
7367400D6D7DC137A904647FD092B1B4D59170F1EED8E29FCD584FEA2C77642AB839
73680A44403D75504E8DDF1BDBBA6B51B7F9F64B63676B6FBDE514701B9333312126
73694D8AC19B638254A4BFDEACA80AB2CBC4DD12AB48BC34771E210FB576FA0DE013
73705C49E765028D57C056BD7C14E6941B0A92A2073CA3CCA67E9A18F18BE4934550
7371EFB984B486B9036B8E3221F63D8642E2C71E6547A8E4B25FC3EC3C42D27DFD85
7372E85F2D08C69CDCF3174A09E363E92A8B3D75BFD57CA37144D5267BA4D1750988
73738FA3A9B9100838AA7DFFA97C5E4D2516F5649CA756C97C5A3D500A60D2AC5039
7374812B603639C2E3CE36F26CC0AFCB385A5BBD582E7BD1B5920F67DBAF9ABF9EE5
7375FCF66EECB566DD87F0618AB73199C230034DE379CAC1F6BD17526305D6B6ECD5
73768C5C57FA76FA775B2A25C7F5C83C27A1F4C71DCA93487469004EDFF855A156C0
73778C8EE1972CEB91B9292F5619118F7DA38B1FCDD069D71D0DAE61BE55AF0E255B
73783B8D2DE974592BCA7D92F0DE92538C74A801CF16A424621627BEE5BEC2CC5E68
73799B88BE0ADDB7C8125F7C35D74A52779C6D5D87143506EAB799765589617D08F3
73801305B15752D134A97F7D872CF330F4B3BB62946570C5EA7DB77612DF9B7F91E9
738122321623627FEC40FA04FDC1AA21DECC7AE531510375D6F68A68C6B8BD649A67
7382A3E24B30E04ACC2171A510DCD77F7688E2ABD7D3346BD84E8363BCDB2EABBE0E
73835BC87A595CE80F977190EF06D3D0BE12DA50EA0C33D25617A9DA8940967906B5
7384F5317F4CDCE1DCC7ED48B4AC4DA131EBCCD11F7D241551AF8A2A723A5C634EAC
7385575113186D3B83F8B6E2E50796481B6CA50D440D5B20C5206A85F539FB7D52B8
7386B831EF10B784D195BF7EFF05A9125A3B90CE131D84ADBBE6E47AAC2FBE51DDDF
73871286C0DCCA8343F7803FCB25CD690EF9FB49C1C3B91BB7FCE5D330C781744502
7388AE46FEC050B4C695101F3B86ACE09D502572DFF5F8534DBE6DEAE838B4000712
73894B21697BA3FCDCCB3B858251438F05B3EA1F8CABC08A502C5324D1315214E7DA
73906B62576C10E6EE9A69FDB9D424FE1C7BC32CF37EE9EFC42B9F6726C486762574
739103913F9B3F5A20B1EFA8D4E072EA2F641D7AF64403C4EC76E3A81185B976499D
7392C78FAD546598AB094B628942EBA51C11FD572264BFC7B0E97A1715D7443F29EB
73937BB4E6848383836F99850E22316C73B76B0E6848008B832E49B7373A94DADEE4
7394E7EB32C428F531FFA2067E3316A47C08068D93E27525A9A2A915CD9F204AB4DE
739501EF65ECE8167C184DFA747930AA322FC136DE0D412E99E6F37ACF87A788141B
73963043A3B0D20DDE8C2137EF0DA77A899A581A51AC4CD5A1031F84BD428D0A17A9
7397989877277917D07CB806DF051C23F1AB0049FBDE843B34CFC9DEC4147D97759E
7398983C395F0C9DC2832139DFDE0455002BEBC392E7617156400301F76441347A3E
7399E94D2FB65A31DA189BCC3CE94AFC1613B546D424A36EB2F83F3444DDAB0F03A0
7400F3C270A9B8BC62465F46D83929DB7F0240E52CAC458194BFD50645F825D0C41C
7401773B1D6757625906C7643BDCE990E24467C011ACDAF6D4A26A62D71FAF1F475C
7402F14CA4D545E9E4F80BB01F3AC573D046DA7356FB9884CAE3A29DC357BC8CB255
7403E5108AB355F0E087902C9BB458DCE8F341F1AEB79E468EE9A45855FE037780E7
74049EA9ADC1CFA141A3F976DFEF51A428D237F234BF5C694DAD4CCF2AE84FFAB574
7405A25C1FBA2F38110C305D962420A310FE93301B8677478BDBBBDC518B8C94E819
740626BD2529D0EBF0E770CB3A1E107440D135848D2F90CE8F37693EDAF6071B79F4
7407FEA5ABF4D9F2DC67F2468F2BDA3FA968EED4CAF8D7A22CB28AA43804F72F56B9
7408545DBD0E3F27DD5617329305CD8577AF38CD4C472CB181CF3DBEA07CD42C6C1C
740951E819286FFFC75E38F5EFF96C763F51A31A78B0848CF56DE1A2CBE2F39B0C41
7410FC7C0D42D48D6C75516316B27F6C34AE6D5F5873233914790ECE044C014E9796
741120E200F53FC51ABFEC15C1E08D36E9A4DA7E58DAC014E2C0627EE8ACC6AD021A
7412D2E2C431ACE954602EB99D4584250637F807507A17DA18521B6820E066058B09
74138C2B4609FDEA9E02007A097F833C7A9854D74B38DC81016759DD8FC6F98071FE
7414620AFA1A8DE5AA974C281A1DEC9C8B866E7E350BE5EF3C7C53F82280790CF239
7415C847E4C7F74BCEBED8BCC57D4C01BC4394F0E9EC5AD01852B3B06B93A477A1AB
7416AA97B588415A03C1984B0C9619C899DFD4766A2CE91CD6A65120E07756100696
7417297345CACCE1551A2CB549077A292B73ECD47C3A098049BC49F2125BBF004DAA
74188827C407B06A07E5F39CC17843FE876FB2DC6CA2ADC0A4D8812901FC82913ECF
7419BD04C66B3647B7A698B4BC6C2F136C04AF4792F10C31231F2A04E4B55538CC17
7420AFE4B47BA2F575BB4E7E222E9F6A4F904F11CBBC6DF6C2F3C15DCF268A39D6AB
7421DEB9D091EFE6ECD5DF61ED23E570D484A6AFD5F8D34B7D484F76F150D3D97EBE
74225E91D7A458FAB380BE167E7F2FAAC82BC2C7F3C14BDFD06D9665F5AB2CE34800
7423E779AC43B70E22199D3BC4A2A14EFD5D20AF12D8CC26BCE54762ECCA9D9F5FDE
742484B43104575B2D6533FD3BD245AAAA4B82314EAEC2E6E566EB32AE367D2F2BBE
74258F6DF9D63F56693D701E259ED828A3E27561A5901B87F606AADBEDDD7E846AC1
7426F07D1ACCEC90CF6AB18114A140FE4BC918EDC9B06284B40E2C82D4BE3C1EAB92
7427E2E2F0DE115737561F7ACA173B81C9AF7EFCD6797BC1AE6366646C8F1ADC38A9
7428F1928933BFB6AB474FA81D8C006AA11B76461ED98DB4DCB95D7772E3D15C2A29
7429F116DF0437225E8EA1FC5C3997633CD63539069F7788AAB84BC9FA8A1A61316D
74302C0F07D2914A61B0418912B276561540BE5DBC1F7A20241E85ED95BB775E16D4
74311F22262C8128967F53031EBA86D0A2184DEB01D51D4F7E15BADE50B7DE246C05
743238B9B49D264A4B29A372FCBF57323308C71A0E14748850B56D51BB932B1DCAA3
7433A1469E84536A42B0D8B55A0292C8050D6CD1BFDCC4D287B15082801EA40AB8DE
7434CD8628D0E1252DBC57333D74841246D7A6392F158EAA9FD5BC6CB2E535DDBEAB
7435F16FF32617952596187203D41342DF7FC1E0CAEA2EE8F012236DAB0208A626E4
74365FC5EC819580727F7890BF2B114523A3006CFE3B67F19419A009826C635C4B2C
743710CED88293D753A6FC63C5C17A424E911169E316DAC022EE37A5F93A6D7BB446
74385402EDB1F758FFCCBE83F7842CF09E84DAC17CC8A5D0521CDBCA8B320D90F24F
743932AA9B86DAFD068FB0D234C94EC0889134DCCF83F8B0C89F67D660EC4D6E2B34
7440D4CC5E094049ACFA09767E7C0AFD789767D0660825FC94878BFCA40105597194
7441BDF88A8636D180BAFEF635601218B47E1242497D1E90E7A0F1098FE4161E6C7D
7442D1E920DBECEDE54FD9D8EA40E25881F0E31C3FECCA22ED507DF496122D25AF56
7443E6E690952EC746BE46F4D228D54C634B04D036DD33252E5A5B6309E559EB9CF9
7444DD17101EF262D5FEBE9C207007A2E7F3BCCCE3243333F0A79C1779E727414D60
7445B451BDC14BA3FFCBB9D49641DE51BE92C7D136C2C910559A6EE106DC05CB4890
7446322BC12FD592C4789FD8368DFB7827A67FF8FADE351646D0B4B35F74A924E229
7447DDCBE1B5D24D049CBD4424B123B6AAE7F5AF8AEEC7F862431541F6B755A272CE
7448177CAB058D297A35041646435664056644B2422B2CB890080C3BEC3C52C6363C
7449B843F24977C482C7A37CF18DEDE4E8FECB280E86263BBB5BD413A9BE19329817
7450EC424B1AEEEF713A52D68143AF0DC2B02F293425F041A616D148ABED9E7FA7A0
7451AE99B5762A52E38BE8E7148EF22808632CBDEA8613948D8E3D576580FA3F4B3E
74520B5F9E1B240BC7D0744FB1D121E3231994DEDE24B919A72869C15B839DDD9917
7453D3BF2466E673B142E4B527B17893D3405603E1271E2D005A6318DC98CFA3D25C
74543A7B59A16B1D6C5C31F267B964E951DFDB1143F8D9005E378A3D4F5B072911CC
7455814C191A806A989BC176544E45BA9A5CB16281394572CC6275A96865BEAB6F9D
745606DD94701FB30DEAC86652473C182379F43877528F28AB0B5FD9669347003055
74572E6169601690053E00E18BE7FA7143DA61EA74326BE8122E56485E65B0572821
7458BBE05576C1D9706EE219A8377338E93DFFFEE5E37E6054412A9B875A092C948C
7459C4663F161AEBAFBB964859E9056D42B76A806A2B1C435318459E272DD51339B6
7460B16BC73787ADF1D7A2CD630CA98F8B6C479693BA427D7096E83AAC35B6D1CCAE
7461B5879B03B706C6AA3FC1A1D180315A2252DE59C45E9429E107D7A73A645AB182
74626FCD53B44907874A1B286BC50D9051160CBFB374856E59C961C376C3B553454B
7463108BC5FFAC60EB8C7426A70A1FFC2CE80D8989A3EEC43A9AD51771D48884BB32
74641749E328FDCCD4FDD104E80EB6813FB98D83139791DD2A2C9ED7A70BC458DB09
74655D73B21DAF0FFC110324B8F2BC145FA61962C5D78B4D6C8D014D6938AF09F36A
74662A3E5634A140A1A525BFCAA00616AA1D8195A8A68E4260B8ADDDF789B131C074
746701EF325E06AEA94A459CE1F51F312C3C19142528AC941551F324BE2653BBCF38
746846DDC6BDF7EF77D68C32F4DE7D8604E63A632AB2108086C77B94DC31D926D1E7
74691D3653D8B35CC5AC431368B7B2D7C3A565FEE9D9B2E366F265A627FE7B4378C4
747081A0C4DBDDE6F7DD940F08764D307A5B09097320431AA76A41C4ADE92C260588
7471522B197B802DC488FA2169BC2E13AE36A98591E1673C1CAC29B4E0E15D2227E7
747280928CA4C060FECE89B014C3FB6A42313FC438E448DDD73CB66ADEF1FACF2E2A
74734601F76ECFF658D97BC22C765C0B1B04B03EE08A41E2C778A8E5954CABE7B386
7474BFC2DC7C60E720BAB2B1A726D8AF4933355F21731FD7C930F31720C1E16F6C01
7475C0C8B6747961B605CDFFB02FD6D6A7758B1097AA1D47C6DA9DBF0F87E55672AD
7476FE93D17DA6FE7B2E3A5360C5BF0C3F4715165CC6748BC95CFA74D4AD57B481B9
74773784040A6B1BB028CA9F69B6AE52CFF8FF3FD169FDE1A85B52651D99B4042E72
7478D5E952BD9F976EFA21C935F2ECBF5C8D4D8BA0AA97DD1458650F6DB9C80B3B21
7479F60761C150944567DE98E9DED3BB831A57DE2A5C8CC4417D0D02BF24EB09C2A7
7480B8262EFB223FDEDB45E75E2559190060C676B43721B5894EA52440AAAF72B77D
748142138ABF062B92255DCE006EC18492D4CC0CA6FE753E8851305B967B4B01D481
748285D8A1B78CAEBEB99ED44E5BD7B0CD242B46F8C3C4B1DCE6B103497A89D0C48A
7483FCA2DDB3CBEF2CC076673FE28DD397F4975BF03EABF542C8ECAE8311822A6564
748414C20DE022F9AFBF672B31D124F96E2475073E6B53F8032685A45AC7181B0158
7485A6FDBF2DFCC9D842D42E098BC02AEFABA6D571821604BBDC389E80931BC8A767
7486A92DC7CE49EDDC3C89521CD3AF5AEFF121EAA27B74A37BF043B1AC045A0D9A38
74878767D85D15DBF0F5ABC495207AA3AD05BE201642206044F470EFDF4A8D52C050
7488D600F04B97ACED3F7FC8A56E7640A6A4AAAE1816F3A77D887A378AA0B130B509
748972A8ADBD5808E9BBB7F83216D995EC74FD168D5A3D171AB9C52A0E21169172A2
74909C680D926D2327A314835700D399CE25A8311D22D1127B43CB8A9D900133C4D1
7491CA1F71C4331F37DBE7F26650B4D512C5E192635CD8CF4C560AB5BFFE0671424D
7492456BA00271A643AA2477DAB650F682D89B932BEBB5A66EBC9072A469EE78E0B3
749386F58B1BA76F31B978C167A0E5CE18889C4DA968CEF94EFA70060960E1D53535
749417230FC0C8AA0E878AD3D6E306533800DB46BF785219872DBCAAEC33A236A8AA
7495E86D9C9316CEE8D75888217824D56420EF7AFE70E18C6AC6E7E71161373D574A
7496D399548B201868F2D1B2DEC136ECFEFE25C307630331F2F893FE36E0CCC8113F
74979D7A6DE87881BC713E6B438F1E804B2C6F00DAA4FF0A33F2B051EE2655BD8583
74989AA5BB2F7A4AD400F34963FA1BD28D5AB933EAE84C047D636122BE431DB097BC
749985D7CB6C30B09333A567F7DFC0A0482E4373512294562297BACC2F53E2BF1718
75004E23AA470CB1879235832D66846522B8EC1536E17172B8DA9DEB14877C9405D4
7501531E548E8ACEBE66D41992C0D0A25CE7FE2641DC2F06A1399C864A7C1155DDD4
750220A2D292688E6426B147572C2CD3706C96C22C977A4A6C4A30A54C7DDD50DCB9
75037BBC5C0B744CD85DF88166B916C0F1909A38742C6BCB58045C4223B70F4B3BAD
750474EBBE8395A3F64A14D6838554EB6AB7CE417DD7448EBB4F3EE10B13B454C4EA
7505949AF16A87E72ED21159408171A4847199C5E403FADCC67D0FFA5A58452ADC67
7506FC3C597826B20BD85A1AC7BFA715531D99DDA5155185E3FBF29DDF559A103F75
7507538AC8CC0B4C4041288E89B387F6ABE04F90E8CEB2099293D1DC4FE00647C80C
75085DBE532282708D050BC6A226F45DBC314D109554BB25CF04770ED4874EED1B1F
7509E18E006F254BB4297C435B416A9AFC6FC51568D89317BCDD9885E2D1ED15F4F7
7510AF253B5FAEE5CC44BF9D860982B7F4706C8B8018E6488E337B773A4A7AAF9998
75116796B30721736F7AB66CE22EBEF616FE5847929A2E08D64DA7E912F4CA899F73
75126A0A1F1F2163886A7C5E6999D98AB9708EADE2030050B2D05AEF0AA9447F8698
75137C191DD81DB9131D0DC19BB7CD0CD9A60AEBBA3FAD203CA51B6FECB75EC91C14
7514EE75CBB49420594C7B9A56EDE29343B5D1817AFF27B71F0BF2B8D59D8198C2B7
7515A9F4091A085C973412051D6ACCD3F0B37D502D8FE193CD5E42769D1F497847CF
7516B986233F0DE24FE2F4ED03BFA105DD04182887D3C6CB827A1D5B00170B8DFA5E
7517EB1BE4FEEACCC82A5BB4BCE2C8320CBCF6EEBFC955025F3980763F51170EA440
7518C2144AD36893326E5A3DC214AF59FF505E8168593AB9543FC6690F0D63262FBB
7519978B833906430E5D2DC99D729D1CCE7A0A91725537BCF91DFBF8073EEE494A2B
7520E38F1AA3D81C602D05FAD3CA3A8A5A7E1F0A7F7CA736B561F3C29275E68D01E1
7521FA253D089243988C475ABF8077C71DD93F1414E69FAEE565F42C863C61BE554B
752244C92919D78D898E70510D9EA1FCAB702FD53337263606A777A001224390AA6C
7523D8CA04FE8F34D61F03E083D0A050EA3985ED026479142A7184494C615A7AC675
752497B6196C56F2034850A77938B7585B18AEEA2D249E41D25302DFF2416FCADC13
7525E69030FD907778821C66F93220A31991386640AC2315A5B7DB80B4AE91A6A4D7
75268BC19E632295CFECA8D65B4045C5A7614852CD48686A27D61F6DC6ED6120D30D
752792C97F4D0B5135823FA4A59DFB7633
c302751c
CR
75280000000000000000000000000000000000000000000000000000000000000000
75290000000000000000000000000000000000000000000000000000000000000000
75300000000000000000000000000000000000000000000000000000000000000000
75310000000000000000000000000000000000000000000000000000000000000000
75320000000000000000000000000000000000000000000000000000000000000000
75330000000000000000000000000000000000000000000000000000000000000000
75340000000000000000000000000000000000000000000000000000000000000000
75350000000000000000000000000000000000000000000000000000000000000000
7536cleartomark
45c0f7f8 7537{restore}if
c302751c 7538%%EndFont
37c41ab1 7539TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi)
50fc6e33
CR
7540@start /Fa 130[55 1[55 123[{ T1Encoding ReEncodeFont }2
7541116.231 /SFRM1440 rf /Fb 133[34 41 41 55 41 43 30 30
754230 41 43 38 43 64 21 41 23 21 43 38 23 34 43 34 43 38
75438[58 4[43 57 1[52 60 58 70 48 2[28 58 3[59 55 54 58 7[38
754438 38 38 38 38 38 38 38 38 3[21 31[43 12[{}52 74.7198
7545/CMR9 rf /Fc 197[21 58[{}1 74.7198 /CMMI9 rf /Fd 134[39
754639 2[39 39 39 39 2[39 39 39 39 2[39 39 1[39 39 39 2[39
754719[39 27[39 39 2[39 45[{}20 74.7198 /CMSLTT10 rf /Fe
7548129[39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 39 39
754939 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39
755039 39 39 39 39 39 39 39 39 1[39 39 39 39 39 39 1[39 39
755139 39 39 39 39 39 39 39 39 39 1[39 39 39 5[39 39 39 39
755239 39 39 39 39 1[39 39 39 39 39 1[39 39 1[39 33[{}81
755374.7198 /CMTT9 rf /Ff 167[62 3[60 46 2[57 1[62 76 52
75541[43 1[62 65 54 1[63 60 67[{}13 83.022 /CMR10 rf /Fg
7555135[67 2[67 1[50 2[61 69 5[33 1[70 2[68 52[60 47[{}9
7556109.174 /CMCSC10 rf /Fh 140[56 3[56 56 1[56 2[56 56 56
755757[56 45[{}8 109.091 /CMTT12 rf /Fi 130[45 1[45 123[{
7558 T1Encoding ReEncodeFont }2 91.3242 /SFRM1095 rf /Fj
7559134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
756048 48 48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 1[48
75611[48 48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48
756248 48 2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fk 134[65
0fcb3344
CR
756365 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61
756437 56 68 55 68 60 7[93 1[127 1[94 85 68 92 92 84 92 96
7565116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61 61
756661 61 61 61 61 61 61 1[34 41 34 31[68 72 11[{}62 109.091
7567/CMBX12 rf /Fl 135[42 1[42 1[30 37 38 1[46 46 51 74 23
e6983002 756842 1[28 1[42 1[42 46 42 1[46 51[33 32[51 12[{}19 90.9091
0fcb3344 7569/CMTI10 rf /Fm 135[56 2[56 1[42 55 1[51 58 56 68 47 2[27
d37a4722
CR
75701[58 49 51 57 54 53 56 46[50 2[50 1[34 45[{}20 90.9091
7571/CMCSC10 rf /Fn 197[25 58[{}1 90.9091 /CMMI10 rf /Fo
7572197[33 58[{}1 119.552 /CMMI12 rf /Fp 134[85 85 1[85 90
757363 64 66 1[90 81 90 134 45 1[49 45 90 81 49 74 90 72
757490 78 10[122 124 112 90 120 3[126 153 97 1[83 60 126
7575127 101 106 124 117 115 122 7[81 81 81 81 81 81 81 81
757681 81 35[90 94 11[{}52 143.462 /CMBX12 rf /Fq 200[0 21[91
757717[45 1[91 12[71{}5 90.9091 /CMSY10 rf /Fr 133[40 48
757848 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45
757928 40 51 40 51 45 7[68 68 93 1[68 66 51 67 1[62 71 68
758083 57 71 1[33 68 71 59 62 69 66 64 68 13[45 45 45 3[30
75818[45 2[25 18[76 1[51 53 11[{}57 90.9091 /CMSL10 rf /Fs
7582132[67 1[71 71 97 71 75 52 53 55 1[75 67 75 112 37 71
758341 37 75 67 41 61 75 60 75 65 3[37 1[37 1[102 102 139
7584102 103 94 75 100 101 92 101 105 128 81 105 69 50 105
7585106 85 88 103 97 96 102 105 64 4[37 67 67 67 67 67 67
758667 67 67 67 1[37 1[37 1[67 5[67 112 1[41 20[75 78 11[{}73
7587119.552 /CMBX12 rf /Ft 129[48 48 48 48 48 48 48 48 48
258e3d46 758848 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
37c41ab1 758948 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
d37a4722 759048 48 48 48 48 48 48 1[48 48 48 48 48 48 48 48 48 48
37c41ab1 759148 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
d37a4722
CR
759248 48 48 48 48 48 48 48 48 48 48 48 48 33[{}93 90.9091
7593/CMTT10 rf /Fu 131[91 45 40 48 48 66 48 51 35 36 36 48
759451 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25
759545 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71
759647 33 68 71 59 62 69 66 64 68 71 43 1[71 1[25 25 45 45
759745 45 45 45 45 45 45 45 45 25 30 25 1[45 35 35 25 71
759876 45 76 45 25 18[76 51 51 53 11[{}91 90.9091 /CMR10
7599rf /Fv 138[108 1[76 79 3[108 1[54 3[108 1[59 88 1[86
76001[94 14[144 4[184 10[138 66[{}13 172.154 /CMBX12 rf end
5e13499c
CR
7601%%EndProlog
7602%%BeginSetup
7603%%Feature: *Resolution 600dpi
7604TeXDict begin
7605%%BeginPaperSize: Letter
45c0f7f8
CR
7606/setpagedevice where
7607{ pop << /PageSize [612 792] >> setpagedevice }
7608{ /letter where { pop letter } if }
7609ifelse
5e13499c 7610%%EndPaperSize
37c41ab1 7611 end
5e13499c
CR
7612%%EndSetup
7613%%Page: 1 1
6e51e0d0
CR
7614TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
7615b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
fffe80d4 7616b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.2,)g(for)f
3011048a
CR
7617Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.2.)3218 1697 y(Jan)m(uary)f(2022)150
76184927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
7619b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
7620b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
9128f932 7621b(oundation)p 150 5141 3600 17 v eop end
5e13499c 7622%%Page: 2 2
6e51e0d0 7623TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f
37c41ab1 7624(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
3011048a
CR
7625(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.2,)c(17)f(Jan)m(uary)f
7626(2022\).)150 4523 y(This)35 b(is)h(Edition)f(5.2,)k(last)d(up)s(dated)f
7627(17)h(Jan)m(uary)f(2022,)k(of)d Fr(The)f(GNU)i(Bash)e(Reference)i(Man)m
7628(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p Fu(,)g(V)-8
7629b(ersion)31 b(5.2.)150 4767 y(Cop)m(yrigh)m(t)602 4764
7630y(c)577 4767 y Fq(\015)f Fu(1988{2021)35 b(F)-8 b(ree)31
7631b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 4902
7632y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
d514a087
CR
7633b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
7634(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
aaf6036e 7635b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
ad4aef08 7636b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
aaf6036e
CR
7637b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
7638b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
ad4aef08 7639b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
aaf6036e 7640b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
9f178efb 7641b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
ad4aef08
CR
76425340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
7643b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
5e13499c 7644%%Page: -1 3
6e51e0d0 7645TeXDict begin -1 2 bop 3725 -116 a Fu(i)150 299 y Fp(T)-13
967625cd 7646b(able)53 b(of)h(Con)l(ten)l(ts)150 649 y Fs(1)135 b(In)l(tro)t
037a8b7f
CR
7647(duction)31 b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7648(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
7649f(:)h(:)f(:)h(:)f(:)g(:)44 b Fs(1)275 786 y Fu(1.1)92
7650b(What)31 b(is)f(Bash?)10 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7651(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7652h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7653(:)f(:)h(:)f(:)g(:)h(:)23 b Fu(1)275 896 y(1.2)92 b(What)31
7654b(is)f(a)h(shell?)22 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7655f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f
CR
7656(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7657g(:)h(:)35 b Fu(1)150 1147 y Fs(2)135 b(De\014nitions)31
7658b Fo(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7659(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
7660f(:)h(:)f(:)g(:)h(:)43 b Fs(3)150 1425 y(3)135 b(Basic)45
7661b(Shell)g(F)-11 b(eatures)19 b Fo(:)h(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7662(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7663h(:)f(:)32 b Fs(5)275 1562 y Fu(3.1)92 b(Shell)30 b(Syn)m(tax)13
7664b Fn(:)j(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7665g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7666(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
037a8b7f
CR
766727 b Fu(5)399 1671 y(3.1.1)93 b(Shell)30 b(Op)s(eration)14
7668b Fn(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7669h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
7670(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(5)399
76711781 y(3.1.2)93 b(Quoting)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7672h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 7673(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
037a8b7f
CR
7674f(:)g(:)h(:)f(:)h(:)f(:)g(:)37 b Fu(6)524 1890 y(3.1.2.1)93
7675b(Escap)s(e)30 b(Character)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7676(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7677h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)33 b Fu(6)524
76782000 y(3.1.2.2)93 b(Single)31 b(Quotes)16 b Fn(:)g(:)f(:)g(:)h(:)f(:)h
7679(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7680h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30
7681b Fu(6)524 2110 y(3.1.2.3)93 b(Double)31 b(Quotes)14
7682b Fn(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7683g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7684(:)h(:)f(:)g(:)h(:)f(:)28 b Fu(6)524 2219 y(3.1.2.4)93
7685b(ANSI-C)30 b(Quoting)15 b Fn(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7686(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
037a8b7f
CR
7687h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29 b Fu(6)524
76882329 y(3.1.2.5)93 b(Lo)s(cale-Sp)s(eci\014c)32 b(T)-8
7689b(ranslation)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7690f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)30
7691b Fu(7)399 2438 y(3.1.3)93 b(Commen)m(ts)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)
c302751c
CR
7692h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7693(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7694h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(9)275 2548 y(3.2)92
037a8b7f
CR
7695b(Shell)30 b(Commands)9 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7696(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7697g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e59452c7 7698(:)h(:)f(:)23 b Fu(9)399 2658 y(3.2.1)93 b(Reserv)m(ed)31
d37a4722 7699b(W)-8 b(ords)27 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
220537f2 7700h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
d37a4722 7701(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)40
e59452c7 7702b Fu(9)399 2767 y(3.2.2)93 b(Simple)30 b(Commands)15
d37a4722
CR
7703b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7704f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e59452c7
CR
7705(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b Fu(9)399 2877 y(3.2.3)93
7706b(Pip)s(elines)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7707(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7708h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7709(:)f(:)h(:)36 b Fu(10)399 2986 y(3.2.4)93 b(Lists)30
7710b(of)h(Commands)20 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7711(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7712f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(10)399
d37a4722
CR
77133096 y(3.2.5)93 b(Comp)s(ound)28 b(Commands)9 b Fn(:)14
7714b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7715(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 771622 b Fu(11)524 3205 y(3.2.5.1)93 b(Lo)s(oping)30 b(Constructs)16
d37a4722
CR
7717b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7718f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)29
e59452c7 7719b Fu(11)524 3315 y(3.2.5.2)93 b(Conditional)31 b(Constructs)25
d37a4722
CR
7720b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7721(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39
e59452c7 7722b Fu(12)524 3425 y(3.2.5.3)93 b(Grouping)30 b(Commands)22
037a8b7f
CR
7723b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7724(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)36
e59452c7 7725b Fu(17)399 3534 y(3.2.6)93 b(Copro)s(cesses)26 b Fn(:)15
037a8b7f
CR
7726b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7727(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 7728g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(18)399
d37a4722 77293644 y(3.2.7)93 b(GNU)31 b(P)m(arallel)13 b Fn(:)k(:)f(:)f(:)h(:)f(:)h
037a8b7f 7730(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
c302751c 7731h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e59452c7 7732(:)f(:)g(:)h(:)26 b Fu(19)275 3753 y(3.3)92 b(Shell)30
037a8b7f
CR
7733b(F)-8 b(unctions)16 b Fn(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7734(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7735g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e59452c7 7736(:)h(:)29 b Fu(19)275 3863 y(3.4)92 b(Shell)30 b(P)m(arameters)c
037a8b7f 7737Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7738(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
037a8b7f 7739h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38 b
e59452c7 7740Fu(21)399 3973 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)8
037a8b7f
CR
7741b Fn(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7742(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e59452c7 7743h(:)f(:)h(:)21 b Fu(22)399 4082 y(3.4.2)93 b(Sp)s(ecial)30
037a8b7f
CR
7744b(P)m(arameters)c Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7745(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
e59452c7 7746g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37 b Fu(23)275 4192
037a8b7f 7747y(3.5)92 b(Shell)30 b(Expansions)24 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h
c302751c 7748(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
037a8b7f 7749f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e59452c7 7750(:)g(:)h(:)f(:)38 b Fu(24)399 4301 y(3.5.1)93 b(Brace)31
037a8b7f
CR
7751b(Expansion)9 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7752(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7753h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b
e59452c7 7754Fu(24)399 4411 y(3.5.2)93 b(Tilde)30 b(Expansion)18 b
037a8b7f
CR
7755Fn(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7756(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
e59452c7 7757f(:)h(:)f(:)g(:)h(:)f(:)h(:)31 b Fu(25)399 4521 y(3.5.3)93
037a8b7f 7758b(Shell)30 b(P)m(arameter)i(Expansion)26 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)
c302751c 7759f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e59452c7 7760(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)39 b Fu(26)399 4630 y(3.5.4)93
037a8b7f 7761b(Command)29 b(Substitution)20 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7762(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
3011048a 7763g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(34)399 4740
037a8b7f
CR
7764y(3.5.5)93 b(Arithmetic)31 b(Expansion)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
7765(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7766g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b
e59452c7 7767Fu(34)399 4849 y(3.5.6)93 b(Pro)s(cess)30 b(Substitution)15
037a8b7f
CR
7768b Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7769h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e59452c7 7770(:)f(:)g(:)h(:)28 b Fu(34)399 4959 y(3.5.7)93 b(W)-8
037a8b7f
CR
7771b(ord)31 b(Splitting)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7772g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7773(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41
3011048a 7774b Fu(35)399 5068 y(3.5.8)93 b(Filename)32 b(Expansion)22
037a8b7f
CR
7775b Fn(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7776(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
e59452c7 7777f(:)h(:)f(:)g(:)35 b Fu(35)524 5178 y(3.5.8.1)93 b(P)m(attern)31
037a8b7f 7778b(Matc)m(hing)14 b Fn(:)k(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7779(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7780h(:)f(:)g(:)h(:)f(:)h(:)27 b Fu(36)399 5288 y(3.5.9)93
037a8b7f
CR
7781b(Quote)31 b(Remo)m(v)-5 b(al)17 b Fn(:)g(:)e(:)h(:)f(:)h(:)f(:)g(:)h
7782(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7783f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)30
e59452c7 7784b Fu(37)p eop end
5e13499c 7785%%Page: -2 4
d37a4722
CR
7786TeXDict begin -2 3 bop 3699 -116 a Fu(ii)275 83 y(3.6)92
7787b(Redirections)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7788(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7789f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e59452c7 7790(:)h(:)f(:)g(:)27 b Fu(37)399 193 y(3.6.1)93 b(Redirecting)31
d37a4722
CR
7791b(Input)11 b Fn(:)j(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7792(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e59452c7 7793h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(39)399 302
d37a4722 7794y(3.6.2)93 b(Redirecting)31 b(Output)15 b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)
037a8b7f 7795h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
d37a4722 7796(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)28
e59452c7 7797b Fu(39)399 412 y(3.6.3)93 b(App)s(ending)28 b(Redirected)k(Output)20
d37a4722 7798b Fn(:)14 b(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e59452c7 7799(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(39)399
d37a4722
CR
7800521 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h(and)f(Standard)h
7801(Error)16 b Fn(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)29 b
e59452c7 7802Fu(39)399 631 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)h
d37a4722 7803(Standard)f(Error)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40
3011048a 7804b Fu(40)399 741 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)15
037a8b7f
CR
7805b Fn(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7806h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e59452c7 7807(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)27 b Fu(40)399 850 y(3.6.7)93
037a8b7f 7808b(Here)31 b(Strings)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 7809(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
037a8b7f 7810f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29
e59452c7 7811b Fu(40)399 960 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)25
037a8b7f
CR
7812b Fn(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7813(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37
e59452c7 7814b Fu(40)399 1069 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)d
6e51e0d0 7815Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
037a8b7f 7816(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e59452c7 781740 b Fu(41)399 1179 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
037a8b7f 7818(for)f(Reading)h(and)f(W)-8 b(riting)29 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
e59452c7 7819(:)41 b Fu(41)275 1289 y(3.7)92 b(Executing)31 b(Commands)24
037a8b7f
CR
7820b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7821(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 7822g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Fu(41)399 1398 y(3.7.1)93
037a8b7f
CR
7823b(Simple)30 b(Command)f(Expansion)11 b Fn(:)k(:)g(:)h(:)f(:)g(:)h(:)f
7824(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7825h(:)f(:)g(:)h(:)f(:)24 b Fu(41)399 1508 y(3.7.2)93 b(Command)29
037a8b7f
CR
7826b(Searc)m(h)i(and)f(Execution)15 b Fn(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7827(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 782828 b Fu(42)399 1617 y(3.7.3)93 b(Command)29 b(Execution)i(En)m
037a8b7f 7829(vironmen)m(t)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e59452c7 7830(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30 b Fu(42)399
d37a4722 78311727 y(3.7.4)93 b(En)m(vironmen)m(t)26 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h
037a8b7f 7832(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
c302751c 7833h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
3011048a 7834(:)f(:)g(:)h(:)39 b Fu(44)399 1836 y(3.7.5)93 b(Exit)31
037a8b7f 7835b(Status)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7836f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f 7837(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29
e59452c7 7838b Fu(44)399 1946 y(3.7.6)93 b(Signals)23 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)
037a8b7f
CR
7839g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7840(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
3011048a 7841h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)36 b Fu(45)275
d37a4722 78422056 y(3.8)92 b(Shell)30 b(Scripts)12 b Fn(:)i(:)i(:)f(:)h(:)f(:)h(:)f
c302751c
CR
7843(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7844f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
3011048a 7845(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)25 b Fu(46)150 2306
037a8b7f
CR
7846y Fs(4)135 b(Shell)45 b(Builtin)g(Commands)14 b Fo(:)20
7847b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e59452c7 7848(:)h(:)f(:)h(:)f(:)27 b Fs(47)275 2443 y Fu(4.1)92 b(Bourne)30
037a8b7f
CR
7849b(Shell)g(Builtins)16 b Fn(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7850(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7851h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29
e59452c7 7852b Fu(47)275 2553 y(4.2)92 b(Bash)30 b(Builtin)h(Commands)13
037a8b7f
CR
7853b Fn(:)h(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7854h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e59452c7 7855(:)f(:)g(:)h(:)f(:)26 b Fu(54)275 2663 y(4.3)92 b(Mo)s(difying)30
037a8b7f
CR
7856b(Shell)g(Beha)m(vior)18 b Fn(:)f(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7857(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7858h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)31 b Fu(66)399
d37a4722 78592772 y(4.3.1)93 b(The)30 b(Set)g(Builtin)14 b Fn(:)i(:)f(:)h(:)f(:)g(:)
037a8b7f
CR
7860h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7861(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e59452c7 7862f(:)g(:)27 b Fu(66)399 2882 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)21
037a8b7f
CR
7863b Fn(:)16 b(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7864(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e59452c7 7865h(:)f(:)h(:)f(:)g(:)h(:)34 b Fu(70)275 2991 y(4.4)92
037a8b7f
CR
7866b(Sp)s(ecial)30 b(Builtins)9 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7867f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7868(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e59452c7 7869f(:)g(:)h(:)f(:)22 b Fu(76)150 3242 y Fs(5)135 b(Shell)45
037a8b7f
CR
7870b(V)-11 b(ariables)11 b Fo(:)20 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7871(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
e59452c7 7872f(:)h(:)f(:)g(:)h(:)f(:)24 b Fs(77)275 3379 y Fu(5.1)92
037a8b7f
CR
7873b(Bourne)30 b(Shell)g(V)-8 b(ariables)10 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)
7874h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7875(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 787623 b Fu(77)275 3489 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)26
037a8b7f
CR
7877b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7878(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7879f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
e59452c7 7880b Fu(77)150 3739 y Fs(6)135 b(Bash)44 b(F)-11 b(eatures)32
037a8b7f
CR
7881b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7882(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 788344 b Fs(90)275 3876 y Fu(6.1)92 b(In)m(v)m(oking)31 b(Bash)16
037a8b7f 7884b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7885f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f 7886(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)29
e59452c7 7887b Fu(90)275 3986 y(6.2)92 b(Bash)30 b(Startup)g(Files)f
037a8b7f
CR
7888Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7889(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 7890g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fu(92)275
d37a4722 78914095 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)19 b Fn(:)d(:)f(:)h(:)f
037a8b7f 7892(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
c302751c 7893g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e59452c7 7894(:)h(:)f(:)g(:)h(:)f(:)h(:)32 b Fu(93)399 4205 y(6.3.1)93
037a8b7f
CR
7895b(What)31 b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)25 b
7896Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7897(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
e59452c7 7898b Fu(94)399 4315 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m
037a8b7f 7899(e?)22 b Fn(:)d(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7900(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7901h(:)35 b Fu(94)399 4424 y(6.3.3)93 b(In)m(teractiv)m(e)33
037a8b7f
CR
7902b(Shell)d(Beha)m(vior)11 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7903f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e59452c7 7904(:)h(:)f(:)g(:)h(:)f(:)24 b Fu(94)275 4534 y(6.4)92 b(Bash)30
037a8b7f
CR
7905b(Conditional)h(Expressions)10 b Fn(:)k(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7906(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e59452c7 7907h(:)f(:)h(:)f(:)g(:)h(:)f(:)23 b Fu(95)275 4643 y(6.5)92
037a8b7f 7908b(Shell)30 b(Arithmetic)13 b Fn(:)k(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7909(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
037a8b7f 7910g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
e59452c7 7911(:)h(:)26 b Fu(97)275 4753 y(6.6)92 b(Aliases)20 b Fn(:)d(:)e(:)h(:)f
037a8b7f
CR
7912(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7913f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7914(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33
e59452c7 7915b Fu(99)275 4863 y(6.7)92 b(Arra)m(ys)25 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)
037a8b7f
CR
7916h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7917(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7918h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)38
e59452c7
CR
7919b Fu(99)275 4972 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)14
7920b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7921f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7922(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)27 b Fu(101)399 5082 y(6.8.1)93
7923b(Directory)32 b(Stac)m(k)f(Builtins)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)
7924g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7925(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)33 b Fu(101)275 5191
7926y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)10 b Fn(:)15
7927b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
037a8b7f 7928(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e59452c7
CR
7929h(:)f(:)h(:)23 b Fu(103)275 5301 y(6.10)92 b(The)30 b(Restricted)h
7930(Shell)9 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7931g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7932(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22 b Fu(104)p
7933eop end
8e1a6eaa 7934%%Page: -3 5
d37a4722
CR
7935TeXDict begin -3 4 bop 3674 -116 a Fu(iii)275 83 y(6.11)92
7936b(Bash)31 b(POSIX)e(Mo)s(de)14 b Fn(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7937(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7938h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)28
e59452c7 7939b Fu(105)275 193 y(6.12)92 b(Shell)30 b(Compatibilit)m(y)i(Mo)s(de)25
d37a4722
CR
7940b Fn(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7941(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 7942h(:)38 b Fu(109)150 443 y Fs(7)135 b(Job)45 b(Con)l(trol)35
d37a4722
CR
7943b Fo(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
7944(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
fffe80d4 7945g(:)48 b Fs(112)275 580 y Fu(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)23
d37a4722
CR
7946b Fn(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7947(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
fffe80d4 7948g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36 b Fu(112)275 690
d37a4722
CR
7949y(7.2)92 b(Job)30 b(Con)m(trol)h(Builtins)11 b Fn(:)k(:)g(:)h(:)f(:)h
7950(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
9f178efb 7951h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
fffe80d4 7952(:)f(:)24 b Fu(113)275 800 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8
037a8b7f
CR
7953b(ariables)26 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7954(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 7955f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fu(115)150
d37a4722 79561050 y Fs(8)135 b(Command)45 b(Line)g(Editing)11 b Fo(:)20
037a8b7f 7957b(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
fffe80d4 7958(:)g(:)h(:)f(:)h(:)k Fs(116)275 1187 y Fu(8.1)92 b(In)m(tro)s(duction)
d37a4722
CR
795930 b(to)h(Line)f(Editing)12 b Fn(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7960f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
fffe80d4 7961(:)h(:)f(:)g(:)h(:)f(:)h(:)25 b Fu(116)275 1297 y(8.2)92
037a8b7f
CR
7962b(Readline)31 b(In)m(teraction)14 b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g
7963(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7964h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)27
fffe80d4 7965b Fu(116)399 1406 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)13
037a8b7f
CR
7966b Fn(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7967h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)26
fffe80d4 7968b Fu(117)399 1516 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
037a8b7f
CR
7969(Commands)13 b Fn(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7970(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)27
fffe80d4 7971b Fu(117)399 1626 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)24
037a8b7f
CR
7972b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7973(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
fffe80d4 7974b Fu(118)399 1735 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)17
037a8b7f
CR
7975b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7976h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
fffe80d4 7977(:)f(:)h(:)30 b Fu(118)399 1845 y(8.2.5)93 b(Searc)m(hing)31
037a8b7f 7978b(for)f(Commands)f(in)h(the)h(History)15 b Fn(:)g(:)h(:)f(:)h(:)f(:)h
fffe80d4 7979(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)28 b Fu(118)275
d37a4722 79801954 y(8.3)92 b(Readline)31 b(Init)f(File)8 b Fn(:)17
037a8b7f
CR
7981b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7982(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 7983f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b Fu(119)399 2064
037a8b7f
CR
7984y(8.3.1)93 b(Readline)31 b(Init)f(File)i(Syn)m(tax)21
7985b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7986(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)34
fffe80d4 7987b Fu(119)399 2174 y(8.3.2)93 b(Conditional)31 b(Init)f(Constructs)14
037a8b7f
CR
7988b Fn(:)h(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7989f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)27
fffe80d4 7990b Fu(127)399 2283 y(8.3.3)93 b(Sample)30 b(Init)g(File)20
037a8b7f
CR
7991b Fn(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7992g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
fffe80d4 7993(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(129)275 2393 y(8.4)92
037a8b7f 7994b(Bindable)30 b(Readline)h(Commands)19 b Fn(:)c(:)g(:)h(:)f(:)h(:)f(:)g
9f178efb 7995(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
fffe80d4 7996h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(132)399 2502 y(8.4.1)93
037a8b7f
CR
7997b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)16 b Fn(:)h(:)e(:)h(:)f(:)g(:)
7998h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
fffe80d4 7999(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29 b Fu(132)399
d37a4722 80002612 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f
037a8b7f 8001(History)c Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 8002f(:)39 b Fu(133)399 2721 y(8.4.3)93 b(Commands)29 b(F)-8
037a8b7f
CR
8003b(or)31 b(Changing)f(T)-8 b(ext)9 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g
8004(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 8005h(:)f(:)23 b Fu(135)399 2831 y(8.4.4)93 b(Killing)31
037a8b7f 8006b(And)e(Y)-8 b(anking)10 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
9f178efb 8007h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
fffe80d4 8008(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(136)399
d37a4722 80092941 y(8.4.5)93 b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)25
037a8b7f 8010b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
fffe80d4 8011(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b Fu(137)399
d37a4722 80123050 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
037a8b7f
CR
8013b(or)31 b(Y)-8 b(ou)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
8014(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)33
fffe80d4 8015b Fu(138)399 3160 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)9
6e51e0d0 8016b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8017(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 8018h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(139)399 3269 y(8.4.8)93
037a8b7f 8019b(Some)30 b(Miscellaneous)j(Commands)14 b Fn(:)f(:)j(:)f(:)h(:)f(:)g(:)
c302751c 8020h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
fffe80d4 8021(:)f(:)27 b Fu(140)275 3379 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)e
037a8b7f 8022Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
c302751c 8023(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 8024f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b Fu(142)275
d37a4722 80253489 y(8.6)92 b(Programmable)30 b(Completion)25 b Fn(:)15
037a8b7f
CR
8026b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
8027(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37
fffe80d4 8028b Fu(142)275 3598 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14
037a8b7f 8029b Fn(:)i(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 8030h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(145)275
d37a4722 80313708 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)8
037a8b7f 8032b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
fffe80d4 8033(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)22 b Fu(149)150 3958 y
037a8b7f
CR
8034Fs(9)135 b(Using)45 b(History)h(In)l(teractiv)l(ely)28
8035b Fo(:)22 b(:)d(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
fffe80d4 8036(:)h(:)41 b Fs(151)275 4095 y Fu(9.1)92 b(Bash)30 b(History)h(F)-8
037a8b7f 8037b(acilities)9 b Fn(:)19 b(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 8038(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
fffe80d4 8039f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(151)275
d37a4722 80404205 y(9.2)92 b(Bash)30 b(History)h(Builtins)d Fn(:)16
037a8b7f
CR
8041b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
8042(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
fffe80d4 8043h(:)f(:)h(:)f(:)41 b Fu(151)275 4315 y(9.3)92 b(History)31
037a8b7f
CR
8044b(Expansion)10 b Fn(:)k(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8045(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
8046f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)23
fffe80d4 8047b Fu(153)399 4424 y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)19
037a8b7f
CR
8048b Fn(:)e(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
8049g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
fffe80d4 8050(:)h(:)f(:)g(:)h(:)32 b Fu(154)399 4534 y(9.3.2)93 b(W)-8
037a8b7f
CR
8051b(ord)31 b(Designators)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8052(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 8053f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(155)399
d37a4722 80544643 y(9.3.3)93 b(Mo)s(di\014ers)15 b Fn(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)
037a8b7f 8055h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8056(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 8057h(:)f(:)h(:)f(:)g(:)29 b Fu(155)p eop end
967625cd
CR
8058%%Page: -4 6
8059TeXDict begin -4 5 bop 3677 -116 a Fu(iv)150 83 y Fs(10)135
037a8b7f
CR
8060b(Installing)46 b(Bash)16 b Fo(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
8061(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
fffe80d4 8062f(:)h(:)f(:)29 b Fs(157)275 220 y Fu(10.1)92 b(Basic)32
037a8b7f 8063b(Installation)8 b Fn(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
c302751c 8064h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
037a8b7f 8065(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22
fffe80d4 8066b Fu(157)275 330 y(10.2)92 b(Compilers)30 b(and)g(Options)17
037a8b7f
CR
8067b Fn(:)d(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
8068f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
fffe80d4 8069(:)f(:)h(:)f(:)30 b Fu(158)275 439 y(10.3)92 b(Compiling)30
037a8b7f
CR
8070b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)10 b Fn(:)16
8071b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
fffe80d4 8072(:)g(:)h(:)f(:)h(:)f(:)23 b Fu(158)275 549 y(10.4)92
037a8b7f
CR
8073b(Installation)32 b(Names)22 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
8074f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8075(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)35
fffe80d4 8076b Fu(159)275 658 y(10.5)92 b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s
037a8b7f 8077(e)21 b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8078(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
fffe80d4 8079h(:)34 b Fu(159)275 768 y(10.6)92 b(Sharing)30 b(Defaults)24
037a8b7f 8080b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 8081(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
fffe80d4 8082f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37 b Fu(159)275
037a8b7f 8083878 y(10.7)92 b(Op)s(eration)30 b(Con)m(trols)12 b Fn(:)k(:)f(:)h(:)f
c302751c 8084(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
037a8b7f 8085f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
fffe80d4 8086(:)h(:)f(:)25 b Fu(160)275 987 y(10.8)92 b(Optional)31
037a8b7f
CR
8087b(F)-8 b(eatures)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
8088h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
8089(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)32
fffe80d4 8090b Fu(160)150 1238 y Fs(App)t(endix)44 b(A)119 b(Rep)t(orting)46
037a8b7f 8091b(Bugs)21 b Fo(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
5e6f45d9 8092(:)f(:)g(:)h(:)f(:)35 b Fs(166)150 1498 y(App)t(endix)44
037a8b7f
CR
8093b(B)125 b(Ma)7 b(jor)46 b(Di\013erences)g(F)-11 b(rom)284
80941639 y(The)45 b(Bourne)f(Shell)35 b Fo(:)19 b(:)h(:)f(:)h(:)f(:)h(:)f
8095(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)
5e6f45d9 8096f(:)g(:)h(:)f(:)h(:)47 b Fs(167)275 1776 y Fu(B.1)92
037a8b7f
CR
8097b(Implemen)m(tation)31 b(Di\013erences)h(F)-8 b(rom)31
8098b(The)e(SVR4.2)j(Shell)22 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h
5e6f45d9 8099(:)35 b Fu(171)150 2027 y Fs(App)t(endix)44 b(C)124 b(GNU)36
037a8b7f 8100b(F)-11 b(ree)35 b(Do)t(cumen)l(tation)i(License)25 b
5e6f45d9 8101Fo(:)20 b(:)29 b Fs(173)150 2305 y(App)t(endix)44 b(D)118
037a8b7f
CR
8102b(Indexes)27 b Fo(:)20 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
8103h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)40
5e6f45d9 8104b Fs(181)275 2442 y Fu(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h
037a8b7f
CR
8105(Commands)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
8106g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38
5e6f45d9 8107b Fu(181)275 2552 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8
037a8b7f
CR
8108b(ords)20 b Fn(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
8109(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)34
5e6f45d9 8110b Fu(182)275 2661 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
037a8b7f
CR
8111b(ariable)32 b(Index)27 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
8112(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
5e6f45d9 8113h(:)f(:)g(:)42 b Fu(183)275 2771 y(D.4)92 b(F)-8 b(unction)31
037a8b7f
CR
8114b(Index)24 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8115(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
8116f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
5e6f45d9 8117b Fu(185)275 2880 y(D.5)92 b(Concept)30 b(Index)15 b
037a8b7f
CR
8118Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
8119(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
8120h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b
5e6f45d9 8121Fu(187)p eop end
5e13499c 8122%%Page: 1 7
037a8b7f
CR
8123TeXDict begin 1 6 bop 3705 -116 a Fu(1)150 299 y Fp(1)80
8124b(In)l(tro)t(duction)150 604 y Fs(1.1)68 b(What)45 b(is)g(Bash?)150
8125763 y Fu(Bash)38 b(is)g(the)g(shell,)i(or)d(command)h(language)h(in)m
6e51e0d0 8126(terpreter,)h(for)e(the)g Fm(gnu)f Fu(op)s(erating)h(system.)63
967625cd 8127b(The)150 873 y(name)33 b(is)g(an)g(acron)m(ym)g(for)g(the)g(`)p
6e51e0d0 8128Ft(Bourne-Again)27 b(SHell)p Fu(',)32 b(a)i(pun)d(on)i(Stephen)f
967625cd 8129(Bourne,)h(the)g(author)150 983 y(of)f(the)f(direct)h(ancestor)h(of)e
6e51e0d0 8130(the)h(curren)m(t)f(Unix)g(shell)h Ft(sh)p Fu(,)f(whic)m(h)g(app)s
967625cd 8131(eared)g(in)g(the)h(Sev)m(en)m(th)g(Edition)150 1092
37c41ab1 8132y(Bell)g(Labs)e(Researc)m(h)h(v)m(ersion)g(of)f(Unix.)275
967625cd 81331221 y(Bash)f(is)g(largely)i(compatible)f(with)f Ft(sh)g
6e51e0d0
CR
8134Fu(and)g(incorp)s(orates)g(useful)g(features)g(from)g(the)g(Korn)g
8135(shell)150 1330 y Ft(ksh)37 b Fu(and)h(the)g(C)g(shell)g
8136Ft(csh)p Fu(.)64 b(It)38 b(is)g(in)m(tended)g(to)h(b)s(e)f(a)g
8137(conforman)m(t)h(implemen)m(tation)h(of)e(the)g Fm(ieee)150
967625cd 81381440 y(posix)c Fu(Shell)g(and)g(T)-8 b(o)s(ols)35 b(p)s(ortion)f(of)g
6e51e0d0 8139(the)h Fm(ieee)f(posix)f Fu(sp)s(eci\014cation)j(\()p
967625cd 8140Fm(ieee)e Fu(Standard)f(1003.1\).)56 b(It)150 1550 y(o\013ers)31
6e51e0d0
CR
8141b(functional)f(impro)m(v)m(emen)m(ts)i(o)m(v)m(er)g Ft(sh)d
8142Fu(for)i(b)s(oth)e(in)m(teractiv)m(e)k(and)d(programming)g(use.)275
967625cd 81431678 y(While)h(the)g Fm(gnu)f Fu(op)s(erating)h(system)g(pro)m(vides)f
37c41ab1 8144(other)h(shells,)g(including)f(a)h(v)m(ersion)g(of)g
6e51e0d0
CR
8145Ft(csh)p Fu(,)f(Bash)150 1788 y(is)j(the)h(default)f(shell.)49
8146b(Lik)m(e)34 b(other)g Fm(gnu)f Fu(soft)m(w)m(are,)i(Bash)f(is)f(quite)
37c41ab1 8147h(p)s(ortable.)49 b(It)33 b(curren)m(tly)g(runs)f(on)150
967625cd 81481897 y(nearly)c(ev)m(ery)g(v)m(ersion)g(of)f(Unix)h(and)e(a)i(few)f
6e51e0d0 8149(other)h(op)s(erating)g(systems)f Fq(\000)g Fu(indep)s(enden)m
967625cd 8150(tly-supp)s(orted)150 2007 y(p)s(orts)j(exist)h(for)f
6e51e0d0 8151Fm(ms-dos)p Fu(,)f Fm(os/2)p Fu(,)i(and)f(Windo)m(ws)g(platforms.)150
967625cd 81522236 y Fs(1.2)68 b(What)45 b(is)g(a)h(shell?)150 2395
6e51e0d0 8153y Fu(A)m(t)32 b(its)f(base,)h(a)f(shell)g(is)h(simply)e(a)h(macro)h
c302751c 8154(pro)s(cessor)f(that)g(executes)i(commands.)42 b(The)30
967625cd 8155b(term)h(macro)150 2505 y(pro)s(cessor)25 b(means)g(functionalit)m(y)i
c302751c 8156(where)d(text)j(and)d(sym)m(b)s(ols)h(are)h(expanded)e(to)i(create)h
967625cd 8157(larger)f(expres-)150 2615 y(sions.)275 2743 y(A)34 b(Unix)h(shell)g
c302751c 8158(is)f(b)s(oth)g(a)h(command)g(in)m(terpreter)g(and)f(a)h(programming)f
967625cd 8159(language.)55 b(As)35 b(a)g(com-)150 2853 y(mand)30 b(in)m(terpreter,)i
37c41ab1 8160(the)g(shell)f(pro)m(vides)g(the)h(user)e(in)m(terface)j(to)f(the)f
6e51e0d0 8161(ric)m(h)h(set)g(of)f Fm(gnu)g Fu(utilities.)44 b(The)150
967625cd 81622962 y(programming)30 b(language)h(features)f(allo)m(w)h(these)g
d3ad40de 8163(utilities)g(to)g(b)s(e)e(com)m(bined.)41 b(Files)31
967625cd 8164b(con)m(taining)g(com-)150 3072 y(mands)e(can)i(b)s(e)e(created,)j(and)
37c41ab1 8165d(b)s(ecome)i(commands)f(themselv)m(es.)42 b(These)30
967625cd 8166b(new)f(commands)h(ha)m(v)m(e)i(the)150 3182 y(same)j(status)g(as)g
6e51e0d0
CR
8167(system)g(commands)f(in)g(directories)i(suc)m(h)e(as)h
8168Ft(/bin)p Fu(,)g(allo)m(wing)h(users)e(or)g(groups)g(to)150
967625cd
CR
81693291 y(establish)d(custom)f(en)m(vironmen)m(ts)h(to)g(automate)h(their)
8170f(common)f(tasks.)275 3420 y(Shells)j(ma)m(y)h(b)s(e)f(used)g(in)m
37c41ab1
CR
8171(teractiv)m(ely)k(or)d(non-in)m(teractiv)m(ely)-8 b(.)54
8172b(In)33 b(in)m(teractiv)m(e)j(mo)s(de,)f(they)e(accept)150
967625cd 81733529 y(input)21 b(t)m(yp)s(ed)h(from)g(the)h(k)m(eyb)s(oard.)37
37c41ab1 8174b(When)22 b(executing)i(non-in)m(teractiv)m(ely)-8 b(,)27
967625cd
CR
8175b(shells)c(execute)g(commands)150 3639 y(read)30 b(from)g(a)h(\014le.)
8176275 3768 y(A)41 b(shell)g(allo)m(ws)h(execution)h(of)e
6e51e0d0 8177Fm(gnu)g Fu(commands,)i(b)s(oth)e(sync)m(hronously)f(and)h(async)m
967625cd 8178(hronously)-8 b(.)150 3877 y(The)29 b(shell)g(w)m(aits)i(for)e(sync)m
d3ad40de 8179(hronous)f(commands)h(to)h(complete)h(b)s(efore)e(accepting)i(more)e
967625cd 8180(input;)g(asyn-)150 3987 y(c)m(hronous)22 b(commands)h(con)m(tin)m(ue)h
37c41ab1 8181(to)f(execute)h(in)e(parallel)i(with)f(the)f(shell)h(while)g(it)g
967625cd 8182(reads)g(and)f(executes)150 4096 y(additional)35 b(commands.)50
6e51e0d0 8183b(The)33 b Fr(redirection)h Fu(constructs)g(p)s(ermit)f(\014ne-grained)
967625cd 8184g(con)m(trol)i(of)f(the)g(input)150 4206 y(and)40 b(output)f(of)i
37c41ab1
CR
8185(those)f(commands.)70 b(Moreo)m(v)m(er,)45 b(the)c(shell)f(allo)m(ws)h
8186(con)m(trol)h(o)m(v)m(er)g(the)e(con)m(ten)m(ts)i(of)150
967625cd 81874316 y(commands')30 b(en)m(vironmen)m(ts.)275 4444 y(Shells)k(also)i
37c41ab1 8188(pro)m(vide)g(a)f(small)h(set)f(of)g(built-in)g(commands)g(\()p
6e51e0d0 8189Fr(builtins)t Fu(\))g(implemen)m(ting)h(function-)150
967625cd 81904554 y(alit)m(y)i(imp)s(ossible)e(or)g(incon)m(v)m(enien)m(t)j(to)e
37c41ab1 8191(obtain)g(via)g(separate)g(utilities.)61 b(F)-8 b(or)37
967625cd 8192b(example,)i Ft(cd)p Fu(,)e Ft(break)p Fu(,)150 4663
6e51e0d0 8193y Ft(continue)p Fu(,)28 b(and)i Ft(exec)f Fu(cannot)i(b)s(e)f(implemen)
74d0116b 8194m(ted)h(outside)g(of)f(the)h(shell)f(b)s(ecause)h(they)f(directly)h
967625cd 8195(ma-)150 4773 y(nipulate)d(the)g(shell)g(itself.)41 b(The)27
6e51e0d0 8196b Ft(history)p Fu(,)g Ft(getopts)p Fu(,)f Ft(kill)p Fu(,)i(or)g
967625cd 8197Ft(pwd)f Fu(builtins,)h(among)g(others,)h(could)150 4883
74d0116b
CR
8198y(b)s(e)34 b(implemen)m(ted)g(in)g(separate)h(utilities,)i(but)d(they)g
8199(are)g(more)h(con)m(v)m(enien)m(t)h(to)f(use)f(as)g(builtin)g(com-)150
967625cd 82004992 y(mands.)40 b(All)31 b(of)f(the)h(shell)f(builtins)g(are)h
74d0116b
CR
8201(describ)s(ed)e(in)h(subsequen)m(t)g(sections.)275 5121
8202y(While)39 b(executing)h(commands)e(is)g(essen)m(tial,)43
c302751c
CR
8203b(most)c(of)g(the)g(p)s(o)m(w)m(er)f(\(and)g(complexit)m(y\))j(of)e
8204(shells)150 5230 y(is)34 b(due)f(to)i(their)f(em)m(b)s(edded)f
8205(programming)h(languages.)52 b(Lik)m(e)35 b(an)m(y)f(high-lev)m(el)i
8206(language,)h(the)d(shell)150 5340 y(pro)m(vides)c(v)-5
8207b(ariables,)32 b(\015o)m(w)e(con)m(trol)i(constructs,)f(quoting,)g(and)
8208f(functions.)p eop end
5e13499c 8209%%Page: 2 8
6e51e0d0 8210TeXDict begin 2 7 bop 150 -116 a Fu(Chapter)30 b(1:)41
ad4aef08
CR
8211b(In)m(tro)s(duction)2592 b(2)275 299 y(Shells)21 b(o\013er)i(features)
8212f(geared)h(sp)s(eci\014cally)g(for)f(in)m(teractiv)m(e)j(use)d(rather)g
c302751c
CR
8213(than)g(to)h(augmen)m(t)g(the)f(pro-)150 408 y(gramming)32
8214b(language.)48 b(These)32 b(in)m(teractiv)m(e)j(features)d(include)g
8215(job)g(con)m(trol,)j(command)c(line)i(editing,)150 518
8216y(command)d(history)g(and)g(aliases.)42 b(Eac)m(h)31
37c41ab1
CR
8217b(of)g(these)g(features)f(is)h(describ)s(ed)e(in)h(this)g(man)m(ual.)p
8218eop end
5e13499c 8219%%Page: 3 9
037a8b7f
CR
8220TeXDict begin 3 8 bop 3705 -116 a Fu(3)150 299 y Fp(2)80
8221b(De\014nitions)150 552 y Fu(These)30 b(de\014nitions)g(are)h(used)e
8222(throughout)h(the)h(remainder)f(of)g(this)h(man)m(ual.)150
8223720 y Ft(POSIX)240 b Fu(A)27 b(family)g(of)g(op)s(en)f(system)g
8224(standards)g(based)g(on)h(Unix.)39 b(Bash)27 b(is)g(primarily)f
8225(concerned)630 830 y(with)k(the)h(Shell)f(and)g(Utilities)i(p)s(ortion)
8226e(of)h(the)f Fm(posix)g Fu(1003.1)j(standard.)150 995
8227y Ft(blank)240 b Fu(A)30 b(space)h(or)g(tab)f(c)m(haracter.)150
82281161 y Ft(builtin)144 b Fu(A)35 b(command)g(that)g(is)g(implemen)m(ted)
8229g(in)m(ternally)h(b)m(y)f(the)g(shell)g(itself,)i(rather)d(than)h(b)m
8230(y)630 1271 y(an)30 b(executable)i(program)e(somewhere)h(in)f(the)g
8231(\014le)h(system.)150 1436 y Ft(control)d(operator)630
82321546 y Fu(A)20 b Ft(token)f Fu(that)i(p)s(erforms)e(a)i(con)m(trol)g
6e51e0d0
CR
8233(function.)37 b(It)21 b(is)f(a)h Ft(newline)d Fu(or)j(one)f(of)h(the)f
8234(follo)m(wing:)630 1655 y(`)p Ft(||)p Fu(',)31 b(`)p
8235Ft(&&)p Fu(',)f(`)p Ft(&)p Fu(',)h(`)p Ft(;)p Fu(',)g(`)p
71574d7e
CR
8236Ft(;;)p Fu(',)f(`)p Ft(;&)p Fu(',)h(`)p Ft(;;&)p Fu(',)f(`)p
8237Ft(|)p Fu(',)h(`)p Ft(|&)p Fu(',)f(`)p Ft(\()p Fu(',)h(or)f(`)p
8238Ft(\))p Fu('.)150 1821 y Ft(exit)f(status)630 1931 y
8239Fu(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h(its)g
8240(caller.)41 b(The)28 b(v)-5 b(alue)29 b(is)f(restricted)h(to)h(eigh)m
8241(t)630 2040 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5 b(alue)31
8242b(is)f(255.)150 2206 y Ft(field)240 b Fu(A)27 b(unit)g(of)g(text)h
8243(that)g(is)f(the)g(result)g(of)g(one)h(of)f(the)g(shell)g(expansions.)
824440 b(After)27 b(expansion,)630 2315 y(when)e(executing)h(a)g(command,)h
8245(the)f(resulting)f(\014elds)g(are)h(used)f(as)h(the)g(command)f(name)
8246630 2425 y(and)30 b(argumen)m(ts.)150 2591 y Ft(filename)96
8247b Fu(A)30 b(string)h(of)f(c)m(haracters)i(used)e(to)h(iden)m(tify)g(a)f
8248(\014le.)150 2756 y Ft(job)336 b Fu(A)31 b(set)h(of)f(pro)s(cesses)g
8249(comprising)g(a)g(pip)s(eline,)g(and)g(an)m(y)g(pro)s(cesses)g
8250(descended)g(from)f(it,)630 2866 y(that)h(are)g(all)g(in)f(the)h(same)f
8251(pro)s(cess)g(group.)150 3031 y Ft(job)f(control)630
82523141 y Fu(A)22 b(mec)m(hanism)g(b)m(y)f(whic)m(h)h(users)f(can)h
8253(selectiv)m(ely)i(stop)e(\(susp)s(end\))e(and)h(restart)i(\(resume\))
8254630 3251 y(execution)32 b(of)e(pro)s(cesses.)150 3416
8255y Ft(metacharacter)630 3526 y Fu(A)23 b(c)m(haracter)h(that,)h(when)d
8256(unquoted,)h(separates)h(w)m(ords.)37 b(A)23 b(metac)m(haracter)i(is)e
8257(a)g Ft(space)p Fu(,)630 3635 y Ft(tab)p Fu(,)29 b Ft(newline)p
8258Fu(,)e(or)i(one)h(of)f(the)h(follo)m(wing)g(c)m(haracters:)42
8259b(`)p Ft(|)p Fu(',)29 b(`)p Ft(&)p Fu(',)h(`)p Ft(;)p
8260Fu(',)g(`)p Ft(\()p Fu(',)g(`)p Ft(\))p Fu(',)g(`)p Ft(<)p
8261Fu(',)f(or)h(`)p Ft(>)p Fu('.)150 3801 y Ft(name)288
d7935593
CR
8262b Fu(A)37 b Ft(word)f Fu(consisting)i(solely)h(of)e(letters,)j(n)m(um)m
8263(b)s(ers,)e(and)f(underscores,)h(and)f(b)s(eginning)630
82643910 y(with)23 b(a)g(letter)h(or)f(underscore.)38 b Ft(Name)p
8265Fu(s)22 b(are)h(used)f(as)i(shell)f(v)-5 b(ariable)24
8266b(and)e(function)h(names.)630 4020 y(Also)31 b(referred)f(to)h(as)f(an)
8267h Ft(identifier)p Fu(.)150 4186 y Ft(operator)96 b Fu(A)38
8268b Ft(control)28 b(operator)36 b Fu(or)h(a)i Ft(redirection)27
8269b(operator)p Fu(.)61 b(See)38 b(Section)g(3.6)h([Redirec-)630
e59452c7 82704295 y(tions],)f(page)f(37,)i(for)d(a)g(list)h(of)f(redirection)h(op)s
d7935593
CR
8271(erators.)58 b(Op)s(erators)35 b(con)m(tain)j(at)f(least)630
82724405 y(one)31 b(unquoted)e Ft(metacharacter)p Fu(.)150
82734570 y Ft(process)f(group)630 4680 y Fu(A)i(collection)k(of)c(related)h
8274(pro)s(cesses)g(eac)m(h)g(ha)m(ving)g(the)g(same)f(pro)s(cess)g(group)g
6e51e0d0
CR
8275Fm(id)p Fu(.)150 4846 y Ft(process)e(group)h(ID)630 4955
8276y Fu(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g
8277Ft(process)d(group)h Fu(during)g(its)i(lifetime.)150
82785121 y Ft(reserved)d(word)630 5230 y Fu(A)h Ft(word)e
8279Fu(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h(the)g(shell.)40
ed35cb4a 8280b(Most)30 b(reserv)m(ed)e(w)m(ords)g(in)m(tro)s(duce)630
a9fac3b2 82815340 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as)g
6e51e0d0 8282Ft(for)g Fu(and)g Ft(while)p Fu(.)p eop end
5e13499c 8283%%Page: 4 10
6e51e0d0
CR
8284TeXDict begin 4 9 bop 150 -116 a Fu(Chapter)30 b(2:)41
8285b(De\014nitions)2662 b(4)150 299 y Ft(return)29 b(status)630
8286408 y Fu(A)h(synon)m(ym)g(for)g Ft(exit)g(status)p Fu(.)150
8287568 y Ft(signal)192 b Fu(A)40 b(mec)m(hanism)h(b)m(y)e(whic)m(h)h(a)h
a9fac3b2
CR
8288(pro)s(cess)e(ma)m(y)i(b)s(e)e(noti\014ed)h(b)m(y)g(the)h(k)m(ernel)f
8289(of)g(an)g(ev)m(en)m(t)630 677 y(o)s(ccurring)30 b(in)g(the)h(system.)
6e51e0d0 8290150 837 y Ft(special)d(builtin)630 946 y Fu(A)j(shell)f(builtin)g
a9fac3b2 8291(command)h(that)g(has)f(b)s(een)g(classi\014ed)h(as)g(sp)s(ecial)g(b)m
6e51e0d0
CR
8292(y)f(the)h Fm(posix)f Fu(stan-)630 1056 y(dard.)150 1215
8293y Ft(token)240 b Fu(A)38 b(sequence)h(of)f(c)m(haracters)h(considered)f
a9fac3b2 8294(a)h(single)g(unit)e(b)m(y)h(the)h(shell.)64 b(It)38
6e51e0d0
CR
8295b(is)g(either)h(a)630 1325 y Ft(word)29 b Fu(or)i(an)f
8296Ft(operator)p Fu(.)150 1484 y Ft(word)288 b Fu(A)28 b(sequence)g(of)g
a9fac3b2
CR
8297(c)m(haracters)h(treated)g(as)f(a)g(unit)f(b)m(y)h(the)g(shell.)40
8298b(W)-8 b(ords)28 b(ma)m(y)g(not)g(include)630 1594 y(unquoted)i
6e51e0d0 8299Ft(metacharacters)p Fu(.)p eop end
5e13499c 8300%%Page: 5 11
037a8b7f
CR
8301TeXDict begin 5 10 bop 3705 -116 a Fu(5)150 299 y Fp(3)80
8302b(Basic)54 b(Shell)e(F)-13 b(eatures)150 601 y Fu(Bash)21
8303b(is)g(an)f(acron)m(ym)i(for)e(`)p Ft(Bourne-Again)27
6e51e0d0 8304b(SHell)p Fu('.)37 b(The)20 b(Bourne)g(shell)h(is)g(the)g(traditional)h
967625cd 8305(Unix)f(shell)150 710 y(originally)h(written)f(b)m(y)f(Stephen)g
c302751c 8306(Bourne.)38 b(All)21 b(of)g(the)g(Bourne)f(shell)h(builtin)f(commands)g
967625cd 8307(are)i(a)m(v)-5 b(ailable)150 820 y(in)26 b(Bash,)h(The)f(rules)f(for)h
c302751c 8308(ev)-5 b(aluation)28 b(and)d(quoting)h(are)h(tak)m(en)g(from)f(the)g
967625cd
CR
8309Fm(posix)f Fu(sp)s(eci\014cation)i(for)f(the)150 929
8310y(`standard')k(Unix)g(shell.)275 1086 y(This)h(c)m(hapter)i(brie\015y)e
c302751c 8311(summarizes)h(the)h(shell's)f(`building)g(blo)s(c)m(ks':)45
967625cd 8312b(commands,)32 b(con)m(trol)i(struc-)150 1196 y(tures,)k(shell)e
6e51e0d0
CR
8313(functions,)h(shell)g Fl(p)-5 b(ar)g(ameters)p Fu(,)41
8314b(shell)36 b(expansions,)i Fl(r)-5 b(e)g(dir)g(e)g(ctions)p
967625cd 8315Fu(,)40 b(whic)m(h)c(are)h(a)f(w)m(a)m(y)h(to)150 1306
c302751c
CR
8316y(direct)31 b(input)e(and)h(output)g(from)g(and)g(to)h(named)f
8317(\014les,)g(and)g(ho)m(w)g(the)h(shell)g(executes)g(commands.)150
967625cd 83181580 y Fs(3.1)68 b(Shell)45 b(Syn)l(tax)150 1740 y Fu(When)40
c302751c
CR
8319b(the)h(shell)g(reads)f(input,)i(it)f(pro)s(ceeds)f(through)g(a)h
8320(sequence)g(of)g(op)s(erations.)71 b(If)40 b(the)h(input)150
967625cd 83211849 y(indicates)31 b(the)f(b)s(eginning)f(of)h(a)g(commen)m(t,)h(the)f
c302751c 8322(shell)g(ignores)g(the)g(commen)m(t)h(sym)m(b)s(ol)f(\(`)p
967625cd
CR
8323Ft(#)p Fu('\),)h(and)e(the)150 1959 y(rest)i(of)f(that)h(line.)275
83242116 y(Otherwise,)h(roughly)f(sp)s(eaking,)i(the)f(shell)g(reads)g(its)
c302751c 8325g(input)f(and)h(divides)f(the)i(input)e(in)m(to)h(w)m(ords)150
967625cd 83262225 y(and)23 b(op)s(erators,)j(emplo)m(ying)e(the)g(quoting)h(rules)e
37c41ab1 8327(to)h(select)i(whic)m(h)d(meanings)h(to)h(assign)f(v)-5
967625cd
CR
8328b(arious)23 b(w)m(ords)150 2335 y(and)30 b(c)m(haracters.)275
83292492 y(The)38 b(shell)h(then)f(parses)g(these)h(tok)m(ens)h(in)m(to)f
37c41ab1 8330(commands)g(and)f(other)h(constructs,)i(remo)m(v)m(es)f(the)150
967625cd 83312602 y(sp)s(ecial)31 b(meaning)f(of)g(certain)h(w)m(ords)f(or)g(c)m
37c41ab1 8332(haracters,)i(expands)d(others,)h(redirects)h(input)e(and)g(output)150
967625cd 83332711 y(as)d(needed,)g(executes)g(the)g(sp)s(eci\014ed)e(command,)j(w)m
37c41ab1 8334(aits)f(for)f(the)g(command's)g(exit)i(status,)f(and)f(mak)m(es)150
967625cd 83352821 y(that)31 b(exit)g(status)g(a)m(v)-5 b(ailable)33
37c41ab1 8336b(for)d(further)f(insp)s(ection)h(or)h(pro)s(cessing.)150
967625cd 83373043 y Fk(3.1.1)63 b(Shell)41 b(Op)s(eration)150 3190
6e51e0d0 8338y Fu(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g
c302751c 8339(shell's)h(op)s(eration)f(when)f(it)i(reads)f(and)f(executes)j(a)150
967625cd
CR
83403299 y(command.)h(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the)h
8341(follo)m(wing:)199 3456 y(1.)61 b(Reads)42 b(its)h(input)e(from)h(a)g
3011048a 8342(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(46\),)k
967625cd 8343(from)41 b(a)i(string)330 3566 y(supplied)30 b(as)h(an)g(argumen)m(t)h
6e51e0d0 8344(to)g(the)f Ft(-c)g Fu(in)m(v)m(o)s(cation)i(option)f(\(see)g(Section)g
e59452c7 8345(6.1)g([In)m(v)m(oking)g(Bash],)330 3675 y(page)f(90\),)h(or)e(from)g
967625cd 8346(the)h(user's)f(terminal.)199 3821 y(2.)61 b(Breaks)43
37c41ab1 8347b(the)g(input)f(in)m(to)h(w)m(ords)f(and)g(op)s(erators,)k(ob)s(eying)d
967625cd 8348(the)g(quoting)g(rules)f(describ)s(ed)f(in)330 3931 y(Section)27
37c41ab1 8349b(3.1.2)i([Quoting],)f(page)f(6.)40 b(These)26 b(tok)m(ens)i(are)f
6e51e0d0 8350(separated)g(b)m(y)f Ft(metacharacters)p Fu(.)36 b(Alias)330
967625cd 83514040 y(expansion)30 b(is)h(p)s(erformed)d(b)m(y)j(this)f(step)g(\(see)i
e59452c7 8352(Section)f(6.6)g([Aliases],)i(page)e(99\).)199 4186 y(3.)61
37c41ab1
CR
8353b(P)m(arses)35 b(the)g(tok)m(ens)g(in)m(to)h(simple)e(and)g(comp)s
8354(ound)f(commands)h(\(see)h(Section)h(3.2)f([Shell)g(Com-)330
e59452c7 83554296 y(mands],)30 b(page)h(9\).)199 4442 y(4.)61 b(P)m(erforms)40
37c41ab1 8356b(the)h(v)-5 b(arious)40 b(shell)h(expansions)f(\(see)h(Section)g(3.5)g
e59452c7 8357([Shell)g(Expansions],)h(page)f(24\),)330 4551 y(breaking)35
37c41ab1 8358b(the)g(expanded)g(tok)m(ens)h(in)m(to)g(lists)f(of)g(\014lenames)h
967625cd 8359(\(see)g(Section)f(3.5.8)i([Filename)g(Ex-)330 4661 y(pansion],)30
e59452c7 8360b(page)h(35\))h(and)e(commands)g(and)g(argumen)m(ts.)199
967625cd 83614807 y(5.)61 b(P)m(erforms)36 b(an)m(y)i(necessary)f(redirections)g
e59452c7 8362(\(see)h(Section)f(3.6)h([Redirections],)i(page)e(37\))g(and)e(re-)330
967625cd 83634916 y(mo)m(v)m(es)c(the)e(redirection)h(op)s(erators)g(and)f(their)g
c302751c 8364(op)s(erands)f(from)h(the)h(argumen)m(t)f(list.)199 5062
37c41ab1 8365y(6.)61 b(Executes)31 b(the)g(command)f(\(see)h(Section)g(3.7)h
e59452c7 8366([Executing)f(Commands],)f(page)h(41\).)199 5208 y(7.)61
37c41ab1
CR
8367b(Optionally)40 b(w)m(aits)g(for)f(the)g(command)g(to)h(complete)g(and)
8368f(collects)i(its)f(exit)g(status)f(\(see)h(Sec-)330 5317
e59452c7 8369y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(44\).)p
37c41ab1 8370eop end
5e13499c 8371%%Page: 6 12
6e51e0d0 8372TeXDict begin 6 11 bop 150 -116 a Fu(Chapter)30 b(3:)41
ad4aef08 8373b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(6)150 299
6e51e0d0 8374y Fk(3.1.2)63 b(Quoting)150 446 y Fu(Quoting)32 b(is)h(used)e(to)i
ad4aef08
CR
8375(remo)m(v)m(e)h(the)e(sp)s(ecial)h(meaning)f(of)h(certain)g(c)m
8376(haracters)g(or)f(w)m(ords)g(to)h(the)f(shell.)150 555
8377y(Quoting)c(can)f(b)s(e)g(used)f(to)j(disable)e(sp)s(ecial)h(treatmen)m
8378(t)h(for)e(sp)s(ecial)h(c)m(haracters,)i(to)e(prev)m(en)m(t)g(reserv)m
8379(ed)150 665 y(w)m(ords)i(from)g(b)s(eing)g(recognized)h(as)g(suc)m(h,)f
8380(and)g(to)h(prev)m(en)m(t)g(parameter)g(expansion.)275
e59452c7 8381799 y(Eac)m(h)22 b(of)g(the)g(shell)g(metac)m(haracters)i(\(see)f
ad4aef08 8382(Chapter)e(2)i([De\014nitions],)h(page)f(3\))g(has)e(sp)s(ecial)i
e59452c7 8383(meaning)150 908 y(to)40 b(the)g(shell)f(and)g(m)m(ust)g(b)s(e)g
ad4aef08 8384(quoted)g(if)h(it)g(is)f(to)h(represen)m(t)g(itself.)68
e59452c7 8385b(When)39 b(the)h(command)f(history)150 1018 y(expansion)i(facilities)j
01ed5ba4 8386(are)e(b)s(eing)f(used)g(\(see)h(Section)h(9.3)f([History)h(In)m
fffe80d4 8387(teraction],)j(page)c(153\),)47 b(the)150 1127 y Fr(history)30
6e51e0d0
CR
8388b(expansion)h Fu(c)m(haracter,)h(usually)f(`)p Ft(!)p
8389Fu(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g
e59452c7 8390(expansion.)41 b(See)150 1237 y(Section)22 b(9.1)g([Bash)f(History)h(F)
fffe80d4 8391-8 b(acilities],)26 b(page)c(151,)j(for)20 b(more)h(details)h
e59452c7 8392(concerning)g(history)f(expansion.)275 1370 y(There)37
6e51e0d0
CR
8393b(are)h(three)f(quoting)h(mec)m(hanisms:)56 b(the)38
8394b Fr(escap)s(e)g(c)m(haracter)p Fu(,)j(single)d(quotes,)i(and)d(double)
e59452c7
CR
8395150 1480 y(quotes.)150 1677 y Fk(3.1.2.1)63 b(Escap)s(e)41
8396b(Character)150 1824 y Fu(A)36 b(non-quoted)f(bac)m(kslash)h(`)p
6e51e0d0 8397Ft(\\)p Fu(')g(is)f(the)h(Bash)g(escap)s(e)f(c)m(haracter.)58
c302751c 8398b(It)36 b(preserv)m(es)f(the)h(literal)h(v)-5 b(alue)36
e59452c7 8399b(of)150 1934 y(the)27 b(next)g(c)m(haracter)h(that)f(follo)m(ws,)i
6e51e0d0 8400(with)d(the)h(exception)g(of)g Ft(newline)p Fu(.)38 b(If)26
e59452c7 8401b(a)h Ft(\\newline)d Fu(pair)i(app)s(ears,)150 2043 y(and)k(the)h(bac)m
6e51e0d0
CR
8402(kslash)g(itself)g(is)g(not)g(quoted,)g(the)f Ft(\\newline)f
8403Fu(is)h(treated)i(as)f(a)g(line)g(con)m(tin)m(uation)h(\(that)150
e59452c7
CR
84042153 y(is,)f(it)g(is)f(remo)m(v)m(ed)h(from)f(the)h(input)e(stream)i
8405(and)f(e\013ectiv)m(ely)j(ignored\).)150 2350 y Fk(3.1.2.2)63
8406b(Single)42 b(Quotes)150 2497 y Fu(Enclosing)24 b(c)m(haracters)h(in)e
6e51e0d0 8407(single)h(quotes)g(\(`)p Ft(')p Fu('\))g(preserv)m(es)g(the)f(literal)i
c302751c 8408(v)-5 b(alue)24 b(of)g(eac)m(h)g(c)m(haracter)h(within)150
e59452c7 84092607 y(the)31 b(quotes.)42 b(A)31 b(single)h(quote)f(ma)m(y)g(not)g(o)s
c302751c 8410(ccur)g(b)s(et)m(w)m(een)g(single)h(quotes,)f(ev)m(en)h(when)d
e59452c7
CR
8411(preceded)i(b)m(y)g(a)150 2717 y(bac)m(kslash.)150 2914
8412y Fk(3.1.2.3)63 b(Double)42 b(Quotes)150 3061 y Fu(Enclosing)24
6e51e0d0
CR
8413b(c)m(haracters)h(in)f(double)f(quotes)h(\(`)p Ft(")p
8414Fu('\))g(preserv)m(es)g(the)g(literal)h(v)-5 b(alue)24
e59452c7 8415b(of)g(all)g(c)m(haracters)h(within)150 3170 y(the)34
6e51e0d0
CR
8416b(quotes,)h(with)f(the)g(exception)h(of)f(`)p Ft($)p
8417Fu(',)h(`)p Ft(`)p Fu(',)g(`)p Ft(\\)p Fu(',)g(and,)f(when)f(history)g
e59452c7 8418(expansion)h(is)g(enabled,)h(`)p Ft(!)p Fu('.)150 3280
602eae4d 8419y(When)c(the)g(shell)g(is)g(in)f Fm(posix)h Fu(mo)s(de)f(\(see)i
e59452c7
CR
8420(Section)g(6.11)g([Bash)f(POSIX)f(Mo)s(de],)i(page)g(105\),)h(the)e(`)p
8421Ft(!)p Fu(')150 3390 y(has)d(no)g(sp)s(ecial)h(meaning)g(within)f
967625cd 8422(double)g(quotes,)h(ev)m(en)g(when)f(history)g(expansion)g(is)g
e59452c7 8423(enabled.)40 b(The)150 3499 y(c)m(haracters)h(`)p Ft($)p
967625cd
CR
8424Fu(')e(and)g(`)p Ft(`)p Fu(')g(retain)h(their)f(sp)s(ecial)h(meaning)f
8425(within)g(double)g(quotes)h(\(see)g(Section)g(3.5)150
e59452c7 84263609 y([Shell)29 b(Expansions],)g(page)h(24\).)41 b(The)28
967625cd 8427b(bac)m(kslash)i(retains)f(its)h(sp)s(ecial)f(meaning)g(only)g(when)f
e59452c7 8428(follo)m(w)m(ed)150 3718 y(b)m(y)41 b(one)f(of)h(the)g(follo)m(wing)h
967625cd
CR
8429(c)m(haracters:)63 b(`)p Ft($)p Fu(',)43 b(`)p Ft(`)p
8430Fu(',)h(`)p Ft(")p Fu(',)g(`)p Ft(\\)p Fu(',)f(or)e Ft(newline)p
e59452c7 8431Fu(.)69 b(Within)41 b(double)f(quotes,)150 3828 y(bac)m(kslashes)25
967625cd
CR
8432b(that)h(are)f(follo)m(w)m(ed)h(b)m(y)e(one)h(of)g(these)g(c)m
8433(haracters)h(are)f(remo)m(v)m(ed.)40 b(Bac)m(kslashes)26
e59452c7 8434b(preceding)150 3938 y(c)m(haracters)35 b(without)e(a)h(sp)s(ecial)f
967625cd 8435(meaning)h(are)f(left)h(unmo)s(di\014ed.)47 b(A)34 b(double)f(quote)g
e59452c7 8436(ma)m(y)h(b)s(e)f(quoted)150 4047 y(within)h(double)h(quotes)g(b)m(y)g
967625cd 8437(preceding)g(it)g(with)g(a)g(bac)m(kslash.)55 b(If)35
e59452c7 8438b(enabled,)h(history)f(expansion)g(will)150 4157 y(b)s(e)f(p)s
967625cd
CR
8439(erformed)g(unless)g(an)h(`)p Ft(!)p Fu(')g(app)s(earing)f(in)h(double)
8440f(quotes)i(is)f(escap)s(ed)g(using)f(a)h(bac)m(kslash.)55
e59452c7
CR
8441b(The)150 4266 y(bac)m(kslash)31 b(preceding)f(the)h(`)p
8442Ft(!)p Fu(')f(is)h(not)g(remo)m(v)m(ed.)275 4400 y(The)41
967625cd
CR
8443b(sp)s(ecial)h(parameters)f(`)p Ft(*)p Fu(')h(and)f(`)p
8444Ft(@)p Fu(')h(ha)m(v)m(e)g(sp)s(ecial)g(meaning)g(when)f(in)g(double)g
e59452c7
CR
8445(quotes)h(\(see)150 4509 y(Section)31 b(3.5.3)h([Shell)f(P)m(arameter)h
8446(Expansion],)e(page)h(26\).)150 4707 y Fk(3.1.2.4)63
8447b(ANSI-C)40 b(Quoting)150 4854 y Fu(Character)g(sequences)h(of)f(the)g
8448(form)g($')p Fr(string)8 b Fu(')40 b(are)h(treated)g(as)f(a)h(sp)s
8449(ecial)f(kind)f(of)i(single)f(quotes.)150 4963 y(The)e(sequence)i
8450(expands)e(to)i Fr(string)p Fu(,)h(with)e(bac)m(kslash-escap)s(ed)h(c)m
8451(haracters)g(in)f Fr(string)46 b Fu(replaced)40 b(as)150
84525073 y(sp)s(eci\014ed)32 b(b)m(y)h(the)g(ANSI)f(C)h(standard.)47
8453b(Bac)m(kslash)34 b(escap)s(e)g(sequences,)g(if)e(presen)m(t,)i(are)f
8454(deco)s(ded)g(as)150 5182 y(follo)m(ws:)150 5340 y Ft(\\a)384
8455b Fu(alert)31 b(\(b)s(ell\))p eop end
5e13499c 8456%%Page: 7 13
6e51e0d0 8457TeXDict begin 7 12 bop 150 -116 a Fu(Chapter)30 b(3:)41
37c41ab1 8458b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(7)150 299
e59452c7
CR
8459y Ft(\\b)384 b Fu(bac)m(kspace)150 466 y Ft(\\e)150 576
8460y(\\E)g Fu(an)30 b(escap)s(e)h(c)m(haracter)h(\(not)f(ANSI)f(C\))150
8461743 y Ft(\\f)384 b Fu(form)30 b(feed)150 911 y Ft(\\n)384
8462b Fu(newline)150 1078 y Ft(\\r)g Fu(carriage)32 b(return)150
84631245 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)150 1413
8464y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)150 1580 y Ft(\\\\)384
8465b Fu(bac)m(kslash)150 1747 y Ft(\\')g Fu(single)31 b(quote)150
84661915 y Ft(\\")384 b Fu(double)30 b(quote)150 2082 y Ft(\\?)384
8467b Fu(question)31 b(mark)150 2249 y Ft(\\)p Fj(nnn)288
8468b Fu(the)36 b(eigh)m(t-bit)h(c)m(haracter)g(whose)f(v)-5
8469b(alue)36 b(is)f(the)h(o)s(ctal)h(v)-5 b(alue)36 b Fr(nnn)e
8470Fu(\(one)i(to)h(three)f(o)s(ctal)630 2359 y(digits\))150
84712526 y Ft(\\x)p Fj(HH)288 b Fu(the)36 b(eigh)m(t-bit)i(c)m(haracter)f
8472(whose)f(v)-5 b(alue)36 b(is)g(the)g(hexadecimal)h(v)-5
8473b(alue)36 b Fr(HH)46 b Fu(\(one)37 b(or)f(t)m(w)m(o)630
84742636 y(hex)30 b(digits\))150 2803 y Ft(\\u)p Fj(HHHH)192
8475b Fu(the)33 b(Unico)s(de)f(\(ISO/IEC)g(10646\))j(c)m(haracter)f(whose)e
8476(v)-5 b(alue)33 b(is)g(the)g(hexadecimal)g(v)-5 b(alue)630
84772913 y Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)f(hex)g(digits\))150
84783080 y Ft(\\U)p Fj(HHHHHHHH)630 3190 y Fu(the)j(Unico)s(de)f(\(ISO/IEC)
8479g(10646\))j(c)m(haracter)f(whose)e(v)-5 b(alue)33 b(is)g(the)g
8480(hexadecimal)g(v)-5 b(alue)630 3299 y Fr(HHHHHHHH)42
8481b Fu(\(one)31 b(to)g(eigh)m(t)g(hex)g(digits\))150 3467
8482y Ft(\\c)p Fj(x)336 b Fu(a)31 b(con)m(trol-)p Fr(x)38
8483b Fu(c)m(haracter)150 3638 y(The)30 b(expanded)f(result)i(is)f
984a1947 8484(single-quoted,)i(as)f(if)f(the)g(dollar)h(sign)g(had)e(not)i(b)s(een)f
e59452c7
CR
8485(presen)m(t.)150 3845 y Fk(3.1.2.5)63 b(Lo)s(cale-Sp)s(eci\014c)41
8486b(T)-10 b(ranslation)150 3992 y Fu(Pre\014xing)38 b(a)h(double-quoted)g
8487(string)f(with)g(a)h(dollar)g(sign)g(\(`)p Ft($)p Fu('\),)j(suc)m(h)c
8488(as)h Ft($"hello,)45 b(world")p Fu(,)40 b(will)150 4102
8489y(cause)33 b(the)f(string)h(to)g(b)s(e)f(translated)h(according)g(to)g
8490(the)g(curren)m(t)f(lo)s(cale.)48 b(The)32 b Ft(gettext)e
8491Fu(infrastruc-)150 4211 y(ture)41 b(p)s(erforms)e(the)i(lo)s(okup)g
8492(and)f(translation,)45 b(using)40 b(the)i Ft(LC_MESSAGES)p
8493Fu(,)e Ft(TEXTDOMAINDIR)p Fu(,)h(and)150 4321 y Ft(TEXTDOMAIN)34
8494b Fu(shell)i(v)-5 b(ariables,)39 b(as)e(explained)f(b)s(elo)m(w.)60
8495b(See)36 b(the)h(gettext)i(do)s(cumen)m(tation)e(for)f(addi-)150
84964430 y(tional)24 b(details)g(not)f(co)m(v)m(ered)i(here.)38
8497b(If)23 b(the)g(curren)m(t)f(lo)s(cale)j(is)e Ft(C)g
8498Fu(or)g Ft(POSIX)p Fu(,)g(if)g(there)g(are)g(no)g(translations)150
84994540 y(a)m(v)-5 b(ailable,)32 b(of)c(if)h(the)f(string)h(is)g(not)f
8500(translated,)i(the)f(dollar)g(sign)f(is)h(ignored.)40
8501b(Since)29 b(this)f(is)h(a)g(form)f(of)150 4650 y(double)d(quoting,)j
8502(the)e(string)g(remains)f(double-quoted)h(b)m(y)g(default,)h(whether)e
8503(or)h(not)g(it)g(is)g(translated)150 4759 y(and)i(replaced.)41
8504b(If)28 b(the)h Ft(noexpand_translation)23 b Fu(option)29
8505b(is)g(enabled)f(using)h(the)f Ft(shopt)g Fu(builtin)g(\(see)150
85064869 y(Section)33 b(4.3.2)h([The)e(Shopt)f(Builtin],)j(page)f(70\),)h
8507(translated)f(strings)e(are)i(single-quoted)g(instead)g(of)150
85084978 y(double-quoted.)275 5121 y(The)39 b(rest)i(of)g(this)f(section)h
8509(is)g(a)g(brief)f(o)m(v)m(erview)i(of)e(ho)m(w)h(y)m(ou)f(use)g
8510(gettext)j(to)e(create)h(transla-)150 5230 y(tions)33
8511b(for)f(strings)g(in)g(a)h(shell)f(script)h(named)f Fr(scriptname)p
8512Fu(.)46 b(There)32 b(are)h(more)g(details)g(in)f(the)h(gettext)150
85135340 y(do)s(cumen)m(tation.)p eop end
c302751c 8514%%Page: 8 14
6e51e0d0 8515TeXDict begin 8 13 bop 150 -116 a Fu(Chapter)30 b(3:)41
e59452c7
CR
8516b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(8)275 299
8517y(Once)34 b(y)m(ou'v)m(e)i(mark)m(ed)f(the)f(strings)h(in)f(y)m(our)g
8518(script)h(that)g(y)m(ou)g(w)m(an)m(t)g(to)g(translate)h(using)e($)p
8519Ft(")p Fu(...)p Ft(")p Fu(,)150 408 y(y)m(ou)d(create)h(a)e(gettext)j
8520Ft(")p Fu(template)p Ft(")e Fu(\014le)g(using)f(the)g(command)390
8521540 y Ft(bash)47 b(--dump-po-strings)c Fj(scriptname)i
8522Ft(>)i Fj(domain)p Ft(.pot)150 671 y Fu(The)36 b Fr(domain)g
8523Fu(is)g(y)m(our)h Fr(message)g(domain)p Fu(.)58 b(It's)37
8524b(just)e(an)i(arbitrary)f(string)g(that's)h(used)e(to)i(iden)m(tify)150
8525781 y(the)32 b(\014les)g(gettext)i(needs,)f(lik)m(e)g(a)f(pac)m(k)-5
8526b(age)35 b(or)d(script)f(name.)46 b(It)32 b(needs)g(to)h(b)s(e)e
8527(unique)g(among)i(all)g(the)150 891 y(message)41 b(domains)f(on)f
8528(systems)h(where)g(y)m(ou)g(install)h(the)f(translations,)j(so)d
8529(gettext)i(kno)m(ws)e(whic)m(h)150 1000 y(translations)27
8530b(corresp)s(ond)e(to)i(y)m(our)f(script.)39 b(Y)-8 b(ou'll)28
8531b(use)d(the)i(template)g(\014le)g(to)f(create)i(translations)f(for)150
85321110 y(eac)m(h)32 b(target)f(language.)43 b(The)29 b(template)j(\014le)
8533f(con)m(v)m(en)m(tionally)i(has)d(the)h(su\016x)e(`)p
8534Ft(.pot)p Fu('.)275 1241 y(Y)-8 b(ou)23 b(cop)m(y)g(this)g(template)h
8535(\014le)f(to)h(a)f(separate)h(\014le)f(for)g(eac)m(h)h(target)g
8536(language)g(y)m(ou)f(w)m(an)m(t)h(to)g(supp)s(ort)150
85371351 y(\(called)39 b Ft(")p Fu(PO)p Ft(")e Fu(\014les,)i(whic)m(h)f
8538(use)f(the)h(su\016x)e(`)p Ft(.po)p Fu('\).)63 b(PO)37
8539b(\014les)g(use)h(v)-5 b(arious)37 b(naming)h(con)m(v)m(en)m(tions,)150
85401461 y(but)31 b(when)g(y)m(ou)i(are)f(w)m(orking)g(to)h(translate)g(a)f
8541(template)i(\014le)e(in)m(to)h(a)f(particular)g(language,)i(y)m(ou)f
8542(\014rst)150 1570 y(cop)m(y)k(the)g(template)h(\014le)e(to)h(a)g
8543(\014le)f(whose)h(name)f(is)g(the)h(language)h(y)m(ou)f(w)m(an)m(t)g
8544(to)g(target,)j(with)c(the)150 1680 y(`)p Ft(.po)p Fu(')29
8545b(su\016x.)39 b(F)-8 b(or)30 b(instance,)g(the)f(Spanish)f
8546(translations)i(of)f(y)m(our)g(strings)g(w)m(ould)g(b)s(e)f(in)h(a)g
8547(\014le)g(named)150 1789 y(`)p Ft(es.po)p Fu(',)h(and)f(to)j(get)f
8548(started)g(using)f(a)h(message)g(domain)f(named)g Ft(")p
8549Fu(example,)p Ft(")h Fu(y)m(ou)g(w)m(ould)f(run)390 1921
8550y Ft(cp)47 b(example.pot)e(es.po)150 2052 y Fu(Ultimately)-8
8551b(,)42 b(PO)37 b(\014les)g(are)h(often)g(named)f Fr(domain)p
8552Fu(.p)s(o)g(and)g(installed)h(in)f(directories)i(that)f(con)m(tain)150
85532162 y(m)m(ultiple)31 b(translation)g(\014les)g(for)f(a)h(particular)f
8554(language.)275 2293 y(Whic)m(hev)m(er)k(naming)f(con)m(v)m(en)m(tion)i
8555(y)m(ou)e(c)m(ho)s(ose,)i(y)m(ou)e(will)g(need)g(to)g(translate)h(the)f
8556(strings)g(in)g(the)150 2403 y(PO)d(\014les)g(in)m(to)i(the)e
8557(appropriate)h(languages.)42 b(This)29 b(has)h(to)h(b)s(e)f(done)g(man)
8558m(ually)-8 b(.)275 2534 y(When)35 b(y)m(ou)h(ha)m(v)m(e)g(the)g
8559(translations)g(and)f(PO)g(\014les)g(complete,)k(y)m(ou'll)d(use)g(the)
8560f(gettext)j(to)s(ols)e(to)150 2644 y(pro)s(duce)26 b(what)g(are)i
8561(called)g Ft(")p Fu(MO)p Ft(")e Fu(\014les,)i(whic)m(h)e(are)h
8562(compiled)h(v)m(ersions)f(of)g(the)g(PO)f(\014les)h(the)g(gettext)150
85632754 y(to)s(ols)42 b(use)f(to)h(lo)s(ok)g(up)e(translations)j
8564(e\016cien)m(tly)-8 b(.)75 b(MO)42 b(\014les)f(are)g(also)i(called)f
8565Ft(")p Fu(message)g(catalog)p Ft(")150 2863 y Fu(\014les.)k(Y)-8
8566b(ou)33 b(use)f(the)g Ft(msgfmt)f Fu(program)h(to)h(do)f(this.)46
8567b(F)-8 b(or)33 b(instance,)g(if)f(y)m(ou)h(had)f(a)g(\014le)h(with)e
8568(Spanish)150 2973 y(translations,)g(y)m(ou)g(could)g(run)390
85693104 y Ft(msgfmt)46 b(-o)h(es.mo)g(es.po)150 3236 y Fu(to)31
8570b(pro)s(duce)e(the)i(corresp)s(onding)e(MO)i(\014le.)275
85713367 y(Once)21 b(y)m(ou)h(ha)m(v)m(e)i(the)e(MO)f(\014les,)j(y)m(ou)e
8572(decide)g(where)g(to)g(install)h(them)f(and)f(use)h(the)g
8573Ft(TEXTDOMAINDIR)150 3477 y Fu(shell)32 b(v)-5 b(ariable)33
8574b(to)g(tell)h(the)e(gettext)i(to)s(ols)f(where)f(they)g(are.)47
8575b(Mak)m(e)34 b(sure)d(to)i(use)f(the)g(same)h(message)150
85763587 y(domain)d(to)h(name)g(the)f(MO)h(\014les)f(as)h(y)m(ou)f(did)g
8577(for)g(the)h(PO)e(\014les)i(when)e(y)m(ou)i(install)g(them.)275
85783718 y(Y)-8 b(our)21 b(users)f(will)h(use)g(the)g Ft(LANG)f
8579Fu(or)h Ft(LC_MESSAGES)d Fu(shell)j(v)-5 b(ariables)21
8580b(to)h(select)h(the)e(desired)f(language.)275 3850 y(Y)-8
8581b(ou)29 b(set)g(the)g Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable)30
8582b(to)f(the)g(script's)g(message)h(domain.)40 b(As)29
8583b(ab)s(o)m(v)m(e,)h(y)m(ou)f(use)g(the)150 3959 y(message)i(domain)g
8584(to)g(name)f(y)m(our)h(translation)g(\014les.)275 4091
8585y(Y)-8 b(ou,)31 b(or)g(p)s(ossibly)f(y)m(our)g(users,)h(set)g(the)g
8586Ft(TEXTDOMAINDIR)c Fu(v)-5 b(ariable)31 b(to)h(the)f(name)f(of)h(a)g
8587(directory)150 4200 y(where)d(the)h(message)h(catalog)i(\014les)d(are)g
8588(stored.)40 b(If)28 b(y)m(ou)i(install)f(the)g(message)h(\014les)f(in)m
8589(to)h(the)f(system's)150 4310 y(standard)h(message)h(catalog)i
8590(directory)-8 b(,)32 b(y)m(ou)e(don't)h(need)f(to)h(w)m(orry)f(ab)s
8591(out)g(this)g(v)-5 b(ariable.)275 4441 y(The)31 b(directory)h(where)g
8592(the)g(message)h(catalog)h(\014les)e(are)g(stored)g(v)-5
8593b(aries)32 b(b)s(et)m(w)m(een)h(systems.)45 b(Some)150
85944551 y(use)24 b(the)h(message)g(catalog)j(selected)e(b)m(y)e(the)h
8595Ft(LC_MESSAGES)c Fu(shell)k(v)-5 b(ariable.)39 b(Others)24
8596b(create)i(the)f(name)150 4661 y(of)i(the)h(message)g(catalog)i(from)d
8597(the)g(v)-5 b(alue)27 b(of)h(the)f Ft(TEXTDOMAIN)e Fu(shell)i(v)-5
8598b(ariable,)29 b(p)s(ossibly)d(adding)h(the)150 4770 y(`)p
8599Ft(.mo)p Fu(')32 b(su\016x.)47 b(If)33 b(y)m(ou)g(use)f(the)h
8600Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable,)35 b(y)m(ou)e(ma)m(y)g(need)g(to)g
8601(set)h(the)f Ft(TEXTDOMAINDIR)150 4880 y Fu(v)-5 b(ariable)26
8602b(to)g(the)g(lo)s(cation)h(of)e(the)h(message)h(catalog)h(\014les,)e
8603(as)g(ab)s(o)m(v)m(e.)40 b(It's)26 b(common)g(to)g(use)f(b)s(oth)f(v)-5
8604b(ari-)150 4989 y(ables)31 b(in)f(this)g(fashion:)41
8605b Ft($TEXTDOMAINDIR)p Fu(/)p Ft($LC_MESSAG)o(ES)p Fu(/LC)p
86062474 4989 28 4 v 34 w(MESSA)m(GES/)p Ft($TEXTDOMAIN)p
8607Fu(.mo.)275 5121 y(If)i(y)m(ou)h(used)f(that)h(last)g(con)m(v)m(en)m
8608(tion,)50 b(and)43 b(y)m(ou)h(w)m(an)m(ted)g(to)h(store)f(the)g
8609(message)h(catalog)h(\014les)150 5230 y(with)28 b(Spanish)f(\(es\))i
8610(and)f(Esp)s(eran)m(to)h(\(eo\))g(translations)h(in)m(to)f(a)g(lo)s
8611(cal)h(directory)f(y)m(ou)f(use)g(for)h(custom)150 5340
8612y(translation)i(\014les,)g(y)m(ou)g(could)f(run)p eop
8613end
8614%%Page: 9 15
8615TeXDict begin 9 14 bop 150 -116 a Fu(Chapter)30 b(3:)41
8616b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)390 299
8617y Ft(TEXTDOMAIN=example)390 408 y(TEXTDOMAINDIR=/usr/local)o(/sha)o
8618(re/l)o(oca)o(le)390 628 y(cp)47 b(es.mo)g(${TEXTDOMAINDIR}/es/LC_)o
8619(MES)o(SAGE)o(S/${)o(TEX)o(TDOM)o(AIN})o(.mo)390 737
8620y(cp)g(eo.mo)g(${TEXTDOMAINDIR}/eo/LC_)o(MES)o(SAGE)o(S/${)o(TEX)o
8621(TDOM)o(AIN})o(.mo)275 868 y Fu(When)30 b(all)i(of)f(this)f(is)h(done,)
8622g(and)f(the)h(message)h(catalog)h(\014les)e(con)m(taining)h(the)f
8623(compiled)g(transla-)150 977 y(tions)c(are)g(installed)h(in)e(the)h
8624(correct)h(lo)s(cation,)h(y)m(our)e(users)f(will)h(b)s(e)f(able)h(to)h
8625(see)f(translated)h(strings)e(in)150 1087 y(an)m(y)k(of)f(the)h(supp)s
8626(orted)d(languages)k(b)m(y)e(setting)h(the)g Ft(LANG)e
8627Fu(or)h Ft(LC_MESSAGES)d Fu(en)m(vironmen)m(t)k(v)-5
8628b(ariables)150 1197 y(b)s(efore)30 b(running)f(y)m(our)h(script.)150
86291388 y Fk(3.1.3)63 b(Commen)m(ts)150 1535 y Fu(In)21
8630b(a)i(non-in)m(teractiv)m(e)h(shell,)g(or)e(an)g(in)m(teractiv)m(e)j
8631(shell)d(in)g(whic)m(h)g(the)g Ft(interactive_comments)16
8632b Fu(option)150 1645 y(to)40 b(the)f Ft(shopt)e Fu(builtin)h(is)h
8633(enabled)g(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)e
8634(70\),)i(a)d(w)m(ord)150 1754 y(b)s(eginning)26 b(with)g(`)p
8635Ft(#)p Fu(')g(causes)h(that)f(w)m(ord)g(and)g(all)h(remaining)g(c)m
8636(haracters)g(on)f(that)h(line)g(to)g(b)s(e)f(ignored.)150
86371864 y(An)43 b(in)m(teractiv)m(e)j(shell)e(without)f(the)g
d37a4722 8638Ft(interactive_comments)38 b Fu(option)44 b(enabled)f(do)s(es)g(not)g
e59452c7
CR
8639(allo)m(w)150 1973 y(commen)m(ts.)56 b(The)34 b Ft
8640(interactive_comments)c Fu(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g
8641(in)m(teractiv)m(e)j(shells.)55 b(See)150 2083 y(Section)30
8642b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(93,)g(for)e(a)i
8643(description)e(of)h(what)g(mak)m(es)h(a)f(shell)g(in)m(teractiv)m(e.)
8644150 2316 y Fs(3.2)68 b(Shell)45 b(Commands)150 2476 y
8645Fu(A)d(simple)g(shell)g(command)f(suc)m(h)h(as)g Ft(echo)29
8646b(a)h(b)g(c)41 b Fu(consists)i(of)f(the)f(command)h(itself)h(follo)m(w)
8647m(ed)g(b)m(y)150 2585 y(argumen)m(ts,)31 b(separated)g(b)m(y)f(spaces.)
8648275 2716 y(More)h(complex)h(shell)f(commands)g(are)g(comp)s(osed)g(of)g
8649(simple)g(commands)g(arranged)g(together)h(in)150 2825
8650y(a)f(v)-5 b(ariet)m(y)32 b(of)f(w)m(a)m(ys:)41 b(in)31
8651b(a)g(pip)s(eline)f(in)g(whic)m(h)g(the)h(output)f(of)h(one)f(command)h
8652(b)s(ecomes)f(the)h(input)f(of)150 2935 y(a)h(second,)f(in)h(a)f(lo)s
8653(op)h(or)f(conditional)i(construct,)f(or)f(in)g(some)h(other)g
8654(grouping.)150 3126 y Fk(3.2.1)63 b(Reserv)m(ed)40 b(W)-10
8655b(ords)150 3273 y Fu(Reserv)m(ed)33 b(w)m(ords)g(are)g(w)m(ords)g(that)
d37a4722 8656g(ha)m(v)m(e)h(sp)s(ecial)g(meaning)f(to)h(the)f(shell.)49
e59452c7
CR
8657b(They)32 b(are)h(used)g(to)g(b)s(egin)150 3383 y(and)d(end)f(the)i
8658(shell's)g(comp)s(ound)e(commands.)275 3514 y(The)k(follo)m(wing)i(w)m
d37a4722 8659(ords)e(are)h(recognized)i(as)e(reserv)m(ed)f(when)g(unquoted)g(and)g
e59452c7
CR
8660(the)h(\014rst)f(w)m(ord)h(of)g(a)150 3623 y(command)c(\(see)h(b)s(elo)
8661m(w)g(for)f(exceptions\):)150 3754 y Ft(if)364 b(then)168
8662b(elif)g(else)g(fi)336 b(time)150 3863 y(for)316 b(in)264
8663b(until)120 b(while)g(do)336 b(done)150 3973 y(case)268
8664b(esac)168 b(coproc)72 b(select)g(function)150 4083 y({)412
8665b(})312 b([[)264 b(]])g(!)150 4213 y(in)33 b Fu(is)h(recognized)h(as)f
d37a4722 8666(a)g(reserv)m(ed)f(w)m(ord)h(if)f(it)h(is)g(the)g(third)f(w)m(ord)g(of)
e59452c7 8667h(a)g Ft(case)e Fu(or)i Ft(select)e Fu(command.)150 4323
d37a4722
CR
8668y Ft(in)e Fu(and)g Ft(do)f Fu(are)i(recognized)h(as)e(reserv)m(ed)h(w)m
8669(ords)f(if)g(they)h(are)f(the)h(third)f(w)m(ord)g(in)g(a)g
e59452c7
CR
8670Ft(for)g Fu(command.)150 4514 y Fk(3.2.2)63 b(Simple)41
8671b(Commands)150 4661 y Fu(A)29 b(simple)f(command)g(is)h(the)g(kind)e
d37a4722 8672(of)i(command)f(encoun)m(tered)h(most)g(often.)40 b(It's)29
e59452c7 8673b(just)f(a)h(sequence)g(of)150 4771 y(w)m(ords)22 b(separated)i(b)m(y)e
d37a4722 8674Ft(blank)p Fu(s,)i(terminated)f(b)m(y)g(one)g(of)g(the)g(shell's)g(con)
e59452c7 8675m(trol)h(op)s(erators)f(\(see)h(Chapter)f(2)150 4881
d37a4722
CR
8676y([De\014nitions],)37 b(page)e(3\).)54 b(The)35 b(\014rst)e(w)m(ord)i
8677(generally)g(sp)s(eci\014es)g(a)g(command)f(to)h(b)s(e)f(executed,)j
e59452c7
CR
8678(with)150 4990 y(the)31 b(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)
8679h(command's)f(argumen)m(ts.)275 5121 y(The)h(return)h(status)g(\(see)i
8680(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(44\))g(of)g(a)g(simple)f
8681(command)g(is)h(its)150 5230 y(exit)38 b(status)f(as)g(pro)m(vided)f(b)
6e51e0d0 8682m(y)h(the)g Fm(posix)f Fu(1003.1)j Ft(waitpid)c Fu(function,)j(or)f
e59452c7
CR
8683(128)p Ft(+)p Fr(n)g Fu(if)g(the)g(command)150 5340 y(w)m(as)31
8684b(terminated)g(b)m(y)f(signal)h Fr(n)p Fu(.)p eop end
8685%%Page: 10 16
8686TeXDict begin 10 15 bop 150 -116 a Fu(Chapter)30 b(3:)41
8687b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(10)150 299
8688y Fk(3.2.3)63 b(Pip)s(elines)150 446 y Fu(A)21 b Ft(pipeline)d
fc527055
CR
8689Fu(is)j(a)g(sequence)g(of)g(one)g(or)g(more)g(commands)f(separated)h(b)
8690m(y)g(one)g(of)g(the)g(con)m(trol)h(op)s(erators)150
e59452c7
CR
8691555 y(`)p Ft(|)p Fu(')31 b(or)f(`)p Ft(|&)p Fu('.)275
8692683 y(The)f(format)i(for)f(a)h(pip)s(eline)f(is)390 810
8693y Ft([time)46 b([-p]])h([!])g Fj(command1)e Ft([)j(|)f(or)g(|&)g
8694Fj(command2)f Ft(])h(...)150 938 y Fu(The)25 b(output)f(of)i(eac)m(h)g
6e51e0d0 8695(command)f(in)f(the)i(pip)s(eline)e(is)i(connected)g(via)f(a)h(pip)s(e)
e59452c7 8696e(to)i(the)f(input)f(of)h(the)h(next)150 1047 y(command.)40
6e51e0d0 8697b(That)29 b(is,)h(eac)m(h)h(command)e(reads)g(the)h(previous)f
e59452c7 8698(command's)g(output.)40 b(This)29 b(connection)150 1157
6e51e0d0 8699y(is)h(p)s(erformed)f(b)s(efore)h(an)m(y)h(redirections)g(sp)s
e59452c7 8700(eci\014ed)f(b)m(y)g Fr(command1)p Fu(.)275 1284 y(If)k(`)p
6e51e0d0
CR
8701Ft(|&)p Fu(')h(is)f(used,)i Fr(command1)7 b Fu('s)35
8702b(standard)f(error,)i(in)e(addition)h(to)h(its)f(standard)f(output,)i
e59452c7 8703(is)e(con-)150 1394 y(nected)h(to)g Fr(command2)7 b Fu('s)35
6e51e0d0 8704b(standard)f(input)f(through)h(the)g(pip)s(e;)i(it)f(is)g(shorthand)e
e59452c7 8705(for)h Ft(2>&1)29 b(|)p Fu(.)53 b(This)150 1504 y(implicit)41
6e51e0d0 8706b(redirection)f(of)g(the)g(standard)f(error)g(to)h(the)g(standard)f
e59452c7
CR
8707(output)g(is)h(p)s(erformed)e(after)j(an)m(y)150 1613
8708y(redirections)31 b(sp)s(eci\014ed)f(b)m(y)g Fr(command1)p
8709Fu(.)275 1741 y(The)36 b(reserv)m(ed)g(w)m(ord)g Ft(time)g
8710Fu(causes)h(timing)g(statistics)h(to)f(b)s(e)f(prin)m(ted)g(for)g(the)h
8711(pip)s(eline)f(once)h(it)150 1850 y(\014nishes.)51 b(The)34
8712b(statistics)i(curren)m(tly)e(consist)h(of)f(elapsed)h(\(w)m(all-clo)s
8713(c)m(k\))i(time)e(and)f(user)f(and)h(system)150 1960
8714y(time)e(consumed)e(b)m(y)h(the)g(command's)g(execution.)44
8715b(The)31 b Ft(-p)f Fu(option)i(c)m(hanges)g(the)f(output)g(format)g(to)
8716150 2069 y(that)j(sp)s(eci\014ed)e(b)m(y)h Fm(posix)p
8717Fu(.)49 b(When)33 b(the)g(shell)g(is)h(in)e Fm(posix)h
8718Fu(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150
87192179 y(Mo)s(de],)j(page)e(105\),)j(it)e(do)s(es)e(not)i(recognize)g
602eae4d 8720Ft(time)e Fu(as)h(a)h(reserv)m(ed)f(w)m(ord)f(if)h(the)g(next)g(tok)m
e59452c7 8721(en)h(b)s(egins)150 2289 y(with)d(a)g(`)p Ft(-)p Fu('.)49
6e51e0d0 8722b(The)33 b Ft(TIMEFORMAT)d Fu(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set)
9ec5ed66 8723g(to)h(a)g(format)f(string)g(that)h(sp)s(eci\014es)f(ho)m(w)g(the)150
e59452c7 87242398 y(timing)38 b(information)g(should)e(b)s(e)h(displa)m(y)m(ed.)62
9ec5ed66 8725b(See)38 b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)41
e59452c7 8726b(page)d(77,)i(for)e(a)150 2508 y(description)27 b(of)g(the)h(a)m(v)-5
6e51e0d0
CR
8727b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Ft(time)f
8728Fu(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150
e59452c7 87292617 y(of)38 b(shell)g(builtins,)i(shell)e(functions,)i(and)d(pip)s
6e51e0d0 8730(elines.)63 b(An)38 b(external)h Ft(time)e Fu(command)h(cannot)g(time)
e59452c7 8731150 2727 y(these)31 b(easily)-8 b(.)275 2854 y(When)26
602eae4d 8732b(the)h(shell)g(is)g(in)g Fm(posix)f Fu(mo)s(de)g(\(see)i(Section)f
e59452c7
CR
8733(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(105\),)h Ft(time)150
87342964 y Fu(ma)m(y)d(b)s(e)f(follo)m(w)m(ed)j(b)m(y)d(a)h(newline.)39
9ec5ed66 8735b(In)25 b(this)h(case,)i(the)d(shell)h(displa)m(ys)g(the)g(total)h
e59452c7 8736(user)e(and)g(system)h(time)150 3073 y(consumed)33 b(b)m(y)h(the)h
6e51e0d0
CR
8737(shell)f(and)f(its)i(c)m(hildren.)51 b(The)34 b Ft(TIMEFORMAT)d
8738Fu(v)-5 b(ariable)35 b(ma)m(y)g(b)s(e)e(used)g(to)i(sp)s(ecify)150
e59452c7
CR
87393183 y(the)c(format)f(of)h(the)f(time)h(information.)275
87403311 y(If)36 b(the)h(pip)s(eline)g(is)g(not)g(executed)h(async)m
8741(hronously)f(\(see)h(Section)g(3.2.4)g([Lists],)i(page)e(10\),)i(the)
8742150 3420 y(shell)31 b(w)m(aits)g(for)f(all)h(commands)f(in)g(the)h(pip)
8743s(eline)f(to)h(complete.)275 3548 y(Eac)m(h)e(command)g(in)g(a)g(pip)s
8744(eline)g(is)g(executed)h(in)e(its)i(o)m(wn)f Fr(subshell)p
8745Fu(,)f(whic)m(h)h(is)g(a)g(separate)h(pro)s(cess)150
87463657 y(\(see)g(Section)g(3.7.3)h([Command)e(Execution)h(En)m(vironmen)m
8747(t],)g(page)g(42\).)41 b(If)29 b(the)g Ft(lastpipe)e
8748Fu(option)j(is)150 3767 y(enabled)35 b(using)g(the)g
8749Ft(shopt)f Fu(builtin)g(\(see)i(Section)g(4.3.2)h([The)e(Shopt)f
8750(Builtin],)j(page)f(70\),)i(the)d(last)150 3876 y(elemen)m(t)d(of)e(a)h
8751(pip)s(eline)f(ma)m(y)h(b)s(e)f(run)f(b)m(y)h(the)h(shell)f(pro)s(cess)
8752g(when)f(job)h(con)m(trol)i(is)f(not)f(activ)m(e.)275
87534004 y(The)24 b(exit)i(status)f(of)h(a)f(pip)s(eline)g(is)g(the)g(exit)
8754h(status)f(of)h(the)f(last)h(command)f(in)f(the)i(pip)s(eline,)g
8755(unless)150 4113 y(the)31 b Ft(pipefail)d Fu(option)j(is)g(enabled)f
8756(\(see)i(Section)f(4.3.1)i([The)d(Set)h(Builtin],)g(page)h(66\).)42
8757b(If)30 b Ft(pipefail)150 4223 y Fu(is)f(enabled,)g(the)f(pip)s
8758(eline's)g(return)g(status)h(is)f(the)h(v)-5 b(alue)29
8759b(of)f(the)h(last)g(\(righ)m(tmost\))i(command)d(to)h(exit)150
87604333 y(with)34 b(a)h(non-zero)g(status,)i(or)d(zero)i(if)e(all)i
8761(commands)e(exit)h(successfully)-8 b(.)54 b(If)34 b(the)h(reserv)m(ed)g
8762(w)m(ord)f(`)p Ft(!)p Fu(')150 4442 y(precedes)e(the)f(pip)s(eline,)h
8763(the)f(exit)i(status)f(is)f(the)h(logical)i(negation)f(of)e(the)h(exit)
8764g(status)g(as)g(describ)s(ed)150 4552 y(ab)s(o)m(v)m(e.)63
8765b(The)38 b(shell)f(w)m(aits)i(for)e(all)i(commands)e(in)g(the)h(pip)s
8766(eline)f(to)h(terminate)h(b)s(efore)e(returning)g(a)150
87674661 y(v)-5 b(alue.)150 4846 y Fk(3.2.4)63 b(Lists)41
8768b(of)h(Commands)150 4993 y Fu(A)37 b Ft(list)e Fu(is)i(a)g(sequence)g
8769(of)g(one)g(or)f(more)h(pip)s(elines)f(separated)h(b)m(y)g(one)g(of)f
8770(the)h(op)s(erators)g(`)p Ft(;)p Fu(',)i(`)p Ft(&)p Fu(',)150
87715103 y(`)p Ft(&&)p Fu(',)31 b(or)f(`)p Ft(||)p Fu(',)g(and)g
8772(optionally)i(terminated)f(b)m(y)f(one)h(of)f(`)p Ft(;)p
8773Fu(',)h(`)p Ft(&)p Fu(',)g(or)f(a)h Ft(newline)p Fu(.)275
87745230 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p Ft(&&)p
8775Fu(')d(and)g(`)p Ft(||)p Fu(')h(ha)m(v)m(e)h(equal)f(precedence,)i
8776(follo)m(w)m(ed)f(b)m(y)f(`)p Ft(;)p Fu(')g(and)f(`)p
8777Ft(&)p Fu(',)i(whic)m(h)150 5340 y(ha)m(v)m(e)32 b(equal)e(precedence.)
8778p eop end
8779%%Page: 11 17
8780TeXDict begin 11 16 bop 150 -116 a Fu(Chapter)30 b(3:)41
8781b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)275 299
8782y(A)29 b(sequence)h(of)g(one)g(or)g(more)g(newlines)f(ma)m(y)h(app)s
8783(ear)f(in)h(a)g Ft(list)e Fu(to)j(delimit)f(commands,)g(equiv-)150
8784408 y(alen)m(t)i(to)f(a)g(semicolon.)275 548 y(If)c(a)h(command)f(is)h
8785(terminated)g(b)m(y)g(the)g(con)m(trol)h(op)s(erator)f(`)p
6e51e0d0 8786Ft(&)p Fu(',)h(the)e(shell)h(executes)h(the)f(command)150
e59452c7 8787658 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28
6e51e0d0 8788b(is)h(kno)m(wn)f(as)h(executing)h(the)f(command)g(in)f(the)h
e59452c7
CR
8789Fr(bac)m(kground)p Fu(,)150 767 y(and)42 b(these)i(are)f(referred)g(to)
8790g(as)h Fr(async)m(hronous)i Fu(commands.)78 b(The)43
8791b(shell)g(do)s(es)g(not)g(w)m(ait)h(for)f(the)150 877
68701259
CR
8792y(command)34 b(to)h(\014nish,)f(and)f(the)h(return)f(status)i(is)f(0)g
8793(\(true\).)53 b(When)34 b(job)g(con)m(trol)h(is)f(not)h(activ)m(e)h
fffe80d4 8794(\(see)150 986 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(112\),)h
e59452c7
CR
8795(the)d(standard)g(input)f(for)i(async)m(hronous)f(commands,)h(in)f(the)
8796150 1096 y(absence)k(of)f(an)m(y)h(explicit)h(redirections,)f(is)f
8797(redirected)h(from)f Ft(/dev/null)p Fu(.)275 1236 y(Commands)19
68701259
CR
8798b(separated)j(b)m(y)f(a)g(`)p Ft(;)p Fu(')g(are)h(executed)g(sequen)m
8799(tially;)k(the)21 b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150
e59452c7 88001345 y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i
68701259 8801(is)f(the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275
e59452c7 88021485 y Fm(and)g Fu(and)h Fm(or)g Fu(lists)h(are)g(sequences)f(of)h(one)
6a8fd0ed 8803g(or)f(more)h(pip)s(elines)e(separated)i(b)m(y)g(the)f(con)m(trol)i(op)
e59452c7 8804s(er-)150 1594 y(ators)e(`)p Ft(&&)p Fu(')f(and)g(`)p
6e51e0d0
CR
8805Ft(||)p Fu(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fm(and)30
8806b Fu(and)f Fm(or)h Fu(lists)h(are)g(executed)g(with)f(left)h(asso)s
e59452c7
CR
8807(ciativit)m(y)-8 b(.)275 1734 y(An)30 b Fm(and)f Fu(list)i(has)f(the)h
8808(form)390 1874 y Fj(command1)46 b Ft(&&)h Fj(command2)150
88092013 y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
8810Fr(command1)38 b Fu(returns)29 b(an)h(exit)h(status)g(of)g(zero)g
8811(\(success\).)275 2153 y(An)f Fm(or)f Fu(list)i(has)f(the)h(form)390
88122293 y Fj(command1)46 b Ft(||)h Fj(command2)150 2432
8813y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
8814Fr(command1)38 b Fu(returns)29 b(a)i(non-zero)g(exit)g(status.)275
88152572 y(The)h(return)g(status)i(of)f Fm(and)f Fu(and)h
8816Fm(or)f Fu(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h
8817(command)f(executed)150 2681 y(in)d(the)h(list.)150 2886
8818y Fk(3.2.5)63 b(Comp)s(ound)42 b(Commands)150 3033 y
8819Fu(Comp)s(ound)29 b(commands)h(are)i(the)f(shell)g(programming)f
8820(language)j(constructs.)42 b(Eac)m(h)32 b(construct)f(b)s(e-)150
88213142 y(gins)25 b(with)f(a)i(reserv)m(ed)f(w)m(ord)f(or)h(con)m(trol)h
8822(op)s(erator)f(and)g(is)g(terminated)g(b)m(y)g(a)g(corresp)s(onding)f
8823(reserv)m(ed)150 3252 y(w)m(ord)i(or)g(op)s(erator.)40
8824b(An)m(y)26 b(redirections)g(\(see)i(Section)f(3.6)g([Redirections],)h
8825(page)f(37\))h(asso)s(ciated)f(with)150 3361 y(a)k(comp)s(ound)f
8826(command)h(apply)f(to)i(all)g(commands)f(within)f(that)i(comp)s(ound)d
8827(command)i(unless)f(ex-)150 3471 y(plicitly)i(o)m(v)m(erridden.)275
88283611 y(In)20 b(most)h(cases)g(a)g(list)h(of)f(commands)f(in)g(a)h(comp)
8829s(ound)f(command's)g(description)h(ma)m(y)g(b)s(e)f(separated)150
88303720 y(from)30 b(the)h(rest)g(of)g(the)g(command)g(b)m(y)f(one)h(or)g
1a5fa30b 8831(more)g(newlines,)g(and)f(ma)m(y)i(b)s(e)e(follo)m(w)m(ed)i(b)m(y)f(a)g
e59452c7
CR
8832(newline)150 3830 y(in)f(place)h(of)g(a)g(semicolon.)275
88333969 y(Bash)45 b(pro)m(vides)h(lo)s(oping)g(constructs,)j(conditional)e
ad4aef08 8834(commands,)j(and)44 b(mec)m(hanisms)i(to)g(group)150
e59452c7
CR
88354079 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)150
88364283 y Fk(3.2.5.1)63 b(Lo)s(oping)43 b(Constructs)150
88374430 y Fu(Bash)31 b(supp)s(orts)d(the)j(follo)m(wing)g(lo)s(oping)g
8838(constructs.)275 4570 y(Note)k(that)f(wherev)m(er)g(a)g(`)p
6e51e0d0 8839Ft(;)p Fu(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's)
e59452c7
CR
8840g(syn)m(tax,)i(it)e(ma)m(y)h(b)s(e)150 4680 y(replaced)c(with)f(one)h
8841(or)f(more)g(newlines.)150 4847 y Ft(until)240 b Fu(The)30
6e51e0d0 8842b(syn)m(tax)h(of)f(the)h Ft(until)e Fu(command)h(is:)870
e59452c7
CR
88434984 y Ft(until)46 b Fj(test-commands)p Ft(;)e(do)j Fj
8844(consequent-commands)p Ft(;)c(done)630 5121 y Fu(Execute)f
6e51e0d0 8845Fr(consequen)m(t-commands)k Fu(as)41 b(long)h(as)f Fr(test-commands)46
e59452c7 8846b Fu(has)41 b(an)g(exit)h(status)630 5230 y(whic)m(h)c(is)h(not)g
6e51e0d0 8847(zero.)67 b(The)38 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)g
e59452c7
CR
8848(the)g(last)g(command)630 5340 y(executed)31 b(in)f Fr(consequen)m
8849(t-commands)p Fu(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)p
8850eop end
8851%%Page: 12 18
8852TeXDict begin 12 17 bop 150 -116 a Fu(Chapter)30 b(3:)41
8853b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(12)150 299
8854y Ft(while)240 b Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(while)e
8855Fu(command)h(is:)870 436 y Ft(while)46 b Fj(test-commands)p
8856Ft(;)e(do)j Fj(consequent-commands)p Ft(;)c(done)630
8857573 y Fu(Execute)f Fr(consequen)m(t-commands)k Fu(as)41
8858b(long)h(as)f Fr(test-commands)46 b Fu(has)41 b(an)g(exit)h(status)630
8859683 y(of)34 b(zero.)53 b(The)34 b(return)f(status)h(is)h(the)f(exit)h
8860(status)g(of)f(the)g(last)h(command)f(executed)h(in)630
8861792 y Fr(consequen)m(t-commands)p Fu(,)c(or)g(zero)g(if)f(none)g(w)m
8862(as)h(executed.)150 957 y Ft(for)336 b Fu(The)30 b(syn)m(tax)h(of)f
8863(the)h Ft(for)e Fu(command)i(is:)870 1094 y Ft(for)47
8864b Fj(name)g Ft([)g([in)g([)p Fj(words)f Ft(...)o(])i(])f(;)h(])f(do)g
8865Fj(commands)p Ft(;)e(done)630 1231 y Fu(Expand)30 b Fr(w)m(ords)k
8866Fu(\(see)d(Section)h(3.5)g([Shell)f(Expansions],)g(page)g(24\),)i(and)d
8867(execute)i Fr(com-)630 1341 y(mands)43 b Fu(once)e(for)g(eac)m(h)g(mem)
1a5fa30b 8868m(b)s(er)f(in)g(the)h(resultan)m(t)g(list,)j(with)c Fr(name)46
e59452c7 8869b Fu(b)s(ound)39 b(to)i(the)630 1450 y(curren)m(t)34
1a5fa30b
CR
8870b(mem)m(b)s(er.)53 b(If)35 b(`)p Ft(in)30 b Fj(words)p
8871Fu(')j(is)i(not)g(presen)m(t,)h(the)f Ft(for)e Fu(command)i(executes)h
e59452c7 8872(the)630 1560 y Fr(commands)j Fu(once)e(for)f(eac)m(h)h(p)s(ositional)g
1a5fa30b 8873(parameter)f(that)h(is)f(set,)i(as)e(if)g(`)p Ft(in)30
e59452c7
CR
8874b("$@")p Fu(')36 b(had)630 1670 y(b)s(een)30 b(sp)s(eci\014ed)f(\(see)j
8875(Section)f(3.4.2)h([Sp)s(ecial)f(P)m(arameters],)h(page)f(23\).)630
88761807 y(The)c(return)f(status)h(is)g(the)h(exit)g(status)f(of)g(the)h
1a5fa30b 8877(last)g(command)e(that)i(executes.)41 b(If)27 b(there)630
e59452c7 88781916 y(are)38 b(no)f(items)g(in)g(the)h(expansion)f(of)g
1a5fa30b 8879Fr(w)m(ords)p Fu(,)i(no)e(commands)g(are)g(executed,)j(and)d(the)630
e59452c7
CR
88802026 y(return)29 b(status)i(is)f(zero.)630 2163 y(An)g(alternate)i
8881(form)e(of)h(the)f Ft(for)g Fu(command)g(is)g(also)h(supp)s(orted:)870
88822300 y Ft(for)47 b(\(\()g Fj(expr1)f Ft(;)i Fj(expr2)e
1a5fa30b 8883Ft(;)i Fj(expr3)e Ft(\)\))h(;)h(do)f Fj(commands)e Ft(;)j(done)630
e59452c7 88842437 y Fu(First,)38 b(the)f(arithmetic)h(expression)e
1a5fa30b 8885Fr(expr1)43 b Fu(is)36 b(ev)-5 b(aluated)38 b(according)f(to)g(the)g
e59452c7
CR
8886(rules)f(de-)630 2547 y(scrib)s(ed)41 b(b)s(elo)m(w)h(\(see)h(Section)g
8887(6.5)g([Shell)g(Arithmetic],)j(page)d(97\).)77 b(The)42
8888b(arithmetic)630 2656 y(expression)33 b Fr(expr2)41 b
1a5fa30b 8889Fu(is)34 b(then)f(ev)-5 b(aluated)35 b(rep)s(eatedly)f(un)m(til)g(it)g
e59452c7 8890(ev)-5 b(aluates)35 b(to)g(zero.)51 b(Eac)m(h)630 2766
1a5fa30b
CR
8891y(time)23 b Fr(expr2)30 b Fu(ev)-5 b(aluates)25 b(to)e(a)g(non-zero)h
8892(v)-5 b(alue,)25 b Fr(commands)h Fu(are)d(executed)g(and)g(the)g
e59452c7 8893(arith-)630 2876 y(metic)29 b(expression)f Fr(expr3)36
1a5fa30b 8894b Fu(is)28 b(ev)-5 b(aluated.)41 b(If)28 b(an)m(y)h(expression)f(is)g
e59452c7 8895(omitted,)i(it)f(b)s(eha)m(v)m(es)g(as)630 2985 y(if)i(it)h(ev)-5
37c41ab1
CR
8896b(aluates)32 b(to)g(1.)44 b(The)30 b(return)g(v)-5 b(alue)32
8897b(is)f(the)g(exit)h(status)g(of)f(the)g(last)h(command)f(in)630
e59452c7 88983095 y Fr(commands)j Fu(that)d(is)f(executed,)i(or)e(false)h(if)f(an)m
9ec5ed66 8899(y)h(of)g(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275
e59452c7
CR
89003262 y(The)26 b Ft(break)g Fu(and)h Ft(continue)e Fu(builtins)i(\(see)h
8901(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i(page)f(47\))g(ma)m(y)
8902150 3372 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150
89033576 y Fk(3.2.5.2)63 b(Conditional)42 b(Constructs)150
89043751 y Ft(if)384 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
8905Ft(if)f Fu(command)g(is:)870 3888 y Ft(if)47 b Fj(test-commands)p
8906Ft(;)d(then)965 3997 y Fj(consequent-commands)p Ft(;)870
89074107 y([elif)i Fj(more-test-commands)p Ft(;)d(then)965
89084217 y Fj(more-consequents)p Ft(;])870 4326 y([else)j
8909Fj(alternate-consequents)p Ft(;])870 4436 y(fi)630 4573
1a5fa30b 8910y Fu(The)53 b Fr(test-commands)58 b Fu(list)c(is)g(executed,)60
74d0116b 8911b(and)53 b(if)g(its)h(return)e(status)i(is)f(zero,)61
e59452c7 8912b(the)630 4682 y Fr(consequen)m(t-commands)44 b Fu(list)d(is)f
6e51e0d0 8913(executed.)70 b(If)40 b Fr(test-commands)k Fu(returns)39
e59452c7 8914b(a)h(non-zero)630 4792 y(status,)45 b(eac)m(h)e Ft(elif)d
6e51e0d0 8915Fu(list)i(is)g(executed)h(in)e(turn,)j(and)d(if)g(its)h(exit)h(status)f
e59452c7 8916(is)f(zero,)46 b(the)630 4902 y(corresp)s(onding)37 b
6e51e0d0 8917Fr(more-consequen)m(ts)42 b Fu(is)c(executed)g(and)f(the)h(command)g
e59452c7 8918(completes.)63 b(If)630 5011 y(`)p Ft(else)29 b Fj
6e51e0d0 8919(alternate-consequents)p Fu(')c(is)30 b(presen)m(t,)h(and)f(the)g
e59452c7 8920(\014nal)g(command)g(in)g(the)g(\014nal)630 5121 y Ft(if)44
6e51e0d0 8921b Fu(or)g Ft(elif)f Fu(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
e59452c7 8922(then)c Fr(alternate-consequen)m(ts)51 b Fu(is)630 5230
ed35cb4a 8923y(executed.)k(The)34 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)
e59452c7
CR
8924g(the)g(last)g(command)g(executed,)630 5340 y(or)30 b(zero)i(if)e(no)g
8925(condition)h(tested)g(true.)p eop end
8926%%Page: 13 19
8927TeXDict begin 13 18 bop 150 -116 a Fu(Chapter)30 b(3:)41
8928b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)150 299
8929y Ft(case)288 b Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(case)e
8930Fu(command)h(is:)870 425 y Ft(case)47 b Fj(word)f Ft(in)1061
8931535 y([)h([\(])g Fj(pattern)f Ft([|)h Fj(pattern)p Ft(]...)m(\))h
8932Fj(command-list)c Ft(;;]...)870 645 y(esac)630 771 y(case)20
8933b Fu(will)i(selectiv)m(ely)j(execute)e(the)e Fr(command-list)k
8934Fu(corresp)s(onding)20 b(to)i(the)g(\014rst)f Fr(pattern)630
8935881 y Fu(that)h(matc)m(hes)h Fr(w)m(ord)p Fu(.)38 b(The)21
8936b(matc)m(h)h(is)g(p)s(erformed)e(according)j(to)f(the)g(rules)g
8937(describ)s(ed)e(b)s(e-)630 990 y(lo)m(w)25 b(in)e(Section)i(3.5.8.1)h
8938([P)m(attern)f(Matc)m(hing],)i(page)e(36.)39 b(If)23
8939b(the)h Ft(nocasematch)d Fu(shell)j(op-)630 1100 y(tion)j(\(see)g(the)f
8940(description)g(of)g Ft(shopt)f Fu(in)g(Section)i(4.3.2)h([The)e(Shopt)f
8941(Builtin],)j(page)f(70\))630 1209 y(is)40 b(enabled,)i(the)e(matc)m(h)h
8942(is)e(p)s(erformed)g(without)g(regard)h(to)h(the)f(case)g(of)g(alphab)s
8943(etic)630 1319 y(c)m(haracters.)48 b(The)32 b(`)p Ft(|)p
8944Fu(')g(is)h(used)e(to)i(separate)h(m)m(ultiple)f(patterns,)g(and)f(the)
8945g(`)p Ft(\))p Fu(')h(op)s(erator)630 1428 y(terminates)f(a)f(pattern)g
8946(list.)43 b(A)31 b(list)g(of)g(patterns)g(and)f(an)h(asso)s(ciated)h
8947(command-list)g(is)630 1538 y(kno)m(wn)e(as)g(a)h Fr(clause)p
8948Fu(.)630 1665 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g(terminated)h
6e51e0d0
CR
8949(with)e(`)p Ft(;;)p Fu(',)45 b(`)p Ft(;&)p Fu(',)f(or)d(`)p
8950Ft(;;&)p Fu('.)73 b(The)41 b Fr(w)m(ord)j Fu(under-)630
e59452c7
CR
89511774 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g(expansion,)g
8952(command)f(substitution,)h(arithmetic)630 1884 y(expansion,)g(and)f
8953(quote)g(remo)m(v)-5 b(al)36 b(\(see)f(Section)g(3.5.3)h([Shell)e(P)m
8954(arameter)h(Expansion],)630 1993 y(page)i(26\))g(b)s(efore)e(matc)m
8955(hing)i(is)f(attempted.)59 b(Eac)m(h)36 b Fr(pattern)g
8956Fu(undergo)s(es)f(tilde)i(expan-)630 2103 y(sion,)e(parameter)g
8957(expansion,)g(command)f(substitution,)h(arithmetic)h(expansion,)f(pro-)
8958630 2212 y(cess)c(substitution,)f(and)g(quote)h(remo)m(v)-5
8959b(al.)630 2339 y(There)30 b(ma)m(y)g(b)s(e)f(an)h(arbitrary)g(n)m(um)m
8960(b)s(er)f(of)h Ft(case)f Fu(clauses,)i(eac)m(h)g(terminated)g(b)m(y)e
8961(a)i(`)p Ft(;;)p Fu(',)630 2449 y(`)p Ft(;&)p Fu(',)c(or)e(`)p
8962Ft(;;&)p Fu('.)39 b(The)25 b(\014rst)g(pattern)h(that)g(matc)m(hes)h
8963(determines)e(the)h(command-list)g(that)630 2558 y(is)35
8964b(executed.)55 b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p
8965Ft(*)p Fu(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
89662668 y(default)d(case,)g(since)g(that)g(pattern)f(will)h(alw)m(a)m(ys)h
8967(matc)m(h.)630 2794 y(Here)j(is)g(an)g(example)h(using)e
d37a4722 8968Ft(case)g Fu(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
e59452c7
CR
8969(describ)s(e)g(one)630 2904 y(in)m(teresting)d(feature)f(of)f(an)g
8970(animal:)870 3030 y Ft(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
8971(animal:)f(")870 3140 y(read)h(ANIMAL)870 3249 y(echo)g(-n)g("The)f
8972($ANIMAL)g(has)h(")870 3359 y(case)g($ANIMAL)e(in)965
89733469 y(horse)i(|)g(dog)g(|)h(cat\))e(echo)h(-n)g("four";;)965
89743578 y(man)g(|)h(kangaroo)d(\))j(echo)e(-n)i("two";;)965
89753688 y(*\))g(echo)e(-n)h("an)g(unknown)f(number)g(of";;)870
89763797 y(esac)870 3907 y(echo)h(")g(legs.")630 4050 y Fu(If)40
e230f997 8977b(the)i(`)p Ft(;;)p Fu(')e(op)s(erator)i(is)f(used,)i(no)e(subsequen)m
e59452c7 8978(t)f(matc)m(hes)i(are)f(attempted)h(after)g(the)630 4160
e230f997
CR
8979y(\014rst)c(pattern)h(matc)m(h.)67 b(Using)39 b(`)p Ft(;&)p
8980Fu(')g(in)f(place)i(of)f(`)p Ft(;;)p Fu(')g(causes)g(execution)h(to)g
e59452c7 8981(con)m(tin)m(ue)630 4269 y(with)34 b(the)g Fr(command-list)j
e230f997 8982Fu(asso)s(ciated)f(with)e(the)h(next)f(clause,)i(if)f(an)m(y)-8
e59452c7 8983b(.)53 b(Using)34 b(`)p Ft(;;&)p Fu(')g(in)630 4379 y(place)c(of)f(`)p
e230f997
CR
8984Ft(;;)p Fu(')g(causes)h(the)f(shell)h(to)g(test)g(the)f(patterns)g(in)g
8985(the)g(next)h(clause,)g(if)f(an)m(y)-8 b(,)31 b(and)630
e59452c7 89864489 y(execute)26 b(an)m(y)f(asso)s(ciated)h Fr(command-list)h
e230f997 8987Fu(on)e(a)f(successful)h(matc)m(h,)i(con)m(tin)m(uing)e(the)g(case)630
e59452c7
CR
89884598 y(statemen)m(t)32 b(execution)g(as)e(if)h(the)f(pattern)h(list)g
8989(had)f(not)g(matc)m(hed.)630 4725 y(The)c(return)f(status)h(is)g(zero)h
e230f997 8990(if)f(no)g Fr(pattern)g Fu(is)g(matc)m(hed.)40 b(Otherwise,)27
e59452c7
CR
8991b(the)g(return)e(status)630 4834 y(is)30 b(the)h(exit)g(status)g(of)f
8992(the)h Fr(command-list)i Fu(executed.)150 4977 y Ft(select)630
89935104 y Fu(The)g Ft(select)f Fu(construct)i(allo)m(ws)h(the)f(easy)g
1a5fa30b 8994(generation)h(of)e(men)m(us.)50 b(It)34 b(has)f(almost)i(the)630
e59452c7
CR
89955214 y(same)c(syn)m(tax)g(as)f(the)h Ft(for)e Fu(command:)870
89965340 y Ft(select)46 b Fj(name)h Ft([in)g Fj(words)f Ft(...)o(];)h(do)h
8997Fj(commands)p Ft(;)d(done)p eop end
d37a4722
CR
8998%%Page: 14 20
8999TeXDict begin 14 19 bop 150 -116 a Fu(Chapter)30 b(3:)41
9000b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(14)630 299
e59452c7
CR
9001y(The)25 b(list)h(of)f(w)m(ords)g(follo)m(wing)i Ft(in)d
9002Fu(is)h(expanded,)h(generating)h(a)e(list)h(of)g(items.)39
9003b(The)25 b(set)h(of)630 408 y(expanded)i(w)m(ords)h(is)g(prin)m(ted)f
9004(on)h(the)g(standard)f(error)h(output)f(stream,)i(eac)m(h)g(preceded)
9005630 518 y(b)m(y)21 b(a)g(n)m(um)m(b)s(er.)37 b(If)20
9006b(the)i(`)p Ft(in)30 b Fj(words)p Fu(')20 b(is)h(omitted,)j(the)d(p)s
9007(ositional)h(parameters)g(are)f(prin)m(ted,)630 628 y(as)28
9008b(if)f(`)p Ft(in)j("$@")p Fu(')d(had)f(b)s(een)h(sp)s(eci\014ed.)39
9009b(The)27 b Ft(PS3)g Fu(prompt)f(is)i(then)f(displa)m(y)m(ed)h(and)f(a)h
9010(line)630 737 y(is)h(read)f(from)h(the)f(standard)g(input.)39
9011b(If)29 b(the)g(line)g(consists)g(of)g(a)g(n)m(um)m(b)s(er)e(corresp)s
9012(onding)630 847 y(to)36 b(one)f(of)h(the)f(displa)m(y)m(ed)h(w)m(ords,)
9013g(then)f(the)g(v)-5 b(alue)36 b(of)f Fr(name)40 b Fu(is)35
9014b(set)h(to)g(that)g(w)m(ord.)54 b(If)630 956 y(the)37
9015b(line)h(is)f(empt)m(y)-8 b(,)39 b(the)e(w)m(ords)g(and)f(prompt)g(are)
9016i(displa)m(y)m(ed)f(again.)62 b(If)37 b Ft(EOF)f Fu(is)h(read,)630
90171066 y(the)c Ft(select)e Fu(command)i(completes.)50 b(An)m(y)33
9018b(other)g(v)-5 b(alue)33 b(read)g(causes)g Fr(name)38
9019b Fu(to)c(b)s(e)e(set)630 1176 y(to)f(n)m(ull.)41 b(The)30
9020b(line)g(read)h(is)f(sa)m(v)m(ed)h(in)g(the)f(v)-5 b(ariable)31
9021b Ft(REPLY)p Fu(.)630 1310 y(The)42 b Fr(commands)j Fu(are)d(executed)h
9022(after)g(eac)m(h)g(selection)h(un)m(til)e(a)h Ft(break)d
9023Fu(command)i(is)630 1420 y(executed,)32 b(at)f(whic)m(h)f(p)s(oin)m(t)g
9024(the)h Ft(select)d Fu(command)i(completes.)630 1555 y(Here)39
9025b(is)g(an)g(example)h(that)f(allo)m(ws)i(the)e(user)f(to)i(pic)m(k)f(a)
9026g(\014lename)h(from)e(the)h(curren)m(t)630 1665 y(directory)-8
9027b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f(index)f(of)i(the)g
9028(\014le)f(selected.)870 1799 y Ft(select)46 b(fname)g(in)i(*;)870
90291909 y(do)870 2019 y(echo)f(you)g(picked)f($fname)g(\\\($REPLY\\\))870
90302128 y(break;)870 2238 y(done)150 2398 y(\(\(...)o(\)\))870
90312533 y(\(\()h Fj(expression)e Ft(\)\))630 2668 y Fu(The)33
9032b(arithmetic)i Fr(expression)f Fu(is)f(ev)-5 b(aluated)35
9033b(according)g(to)f(the)g(rules)f(describ)s(ed)g(b)s(elo)m(w)630
90342777 y(\(see)22 b(Section)f(6.5)h([Shell)f(Arithmetic],)j(page)d(97\).)
903539 b(The)20 b Fr(expression)h Fu(undergo)s(es)f(the)h(same)630
90362887 y(expansions)35 b(as)h(if)f(it)h(w)m(ere)g(within)f(double)f
9037(quotes,)k(but)d(double)f(quote)i(c)m(haracters)h(in)630
90382996 y Fr(expression)29 b Fu(are)h(not)f(treated)h(sp)s(ecially)g(are)g
9039(remo)m(v)m(ed.)41 b(If)29 b(the)h(v)-5 b(alue)29 b(of)h(the)f
9040(expression)630 3106 y(is)h(non-zero,)i(the)e(return)f(status)i(is)g
9041(0;)g(otherwise)f(the)h(return)e(status)i(is)f(1.)150
90423266 y Ft([[...)o(]])870 3401 y([[)47 b Fj(expression)e
9043Ft(]])630 3536 y Fu(Return)25 b(a)h(status)f(of)h(0)g(or)g(1)g(dep)s
9044(ending)e(on)h(the)h(ev)-5 b(aluation)27 b(of)e(the)h(conditional)h
9045(expres-)630 3646 y(sion)j Fr(expression)p Fu(.)41 b(Expressions)29
9046b(are)i(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s(elo)m
9047(w)h(in)630 3755 y(Section)37 b(6.4)g([Bash)f(Conditional)h
9048(Expressions],)g(page)g(95.)58 b(The)36 b(w)m(ords)f(b)s(et)m(w)m(een)i
9049(the)630 3865 y Ft([[)h Fu(and)g Ft(]])g Fu(do)g(not)h(undergo)f(w)m
9050(ord)g(splitting)h(and)f(\014lename)h(expansion.)65 b(The)38
9051b(shell)630 3974 y(p)s(erforms)26 b(tilde)j(expansion,)f(parameter)g
9052(and)g(v)-5 b(ariable)28 b(expansion,)h(arithmetic)g(expan-)630
90534084 y(sion,)j(command)g(substitution,)g(pro)s(cess)g(substitution,)g
9054(and)f(quote)i(remo)m(v)-5 b(al)33 b(on)e(those)630 4194
9055y(w)m(ords)k(\(the)h(expansions)g(that)g(w)m(ould)f(o)s(ccur)h(if)g
9056(the)f(w)m(ords)h(w)m(ere)g(enclosed)g(in)f(double)630
90574303 y(quotes\).)41 b(Conditional)28 b(op)s(erators)g(suc)m(h)f(as)i(`)
9058p Ft(-f)p Fu(')e(m)m(ust)h(b)s(e)f(unquoted)g(to)h(b)s(e)g(recognized)
9059630 4413 y(as)j(primaries.)630 4548 y(When)k(used)f(with)h
9060Ft([[)p Fu(,)h(the)f(`)p Ft(<)p Fu(')g(and)g(`)p Ft(>)p
9061Fu(')g(op)s(erators)g(sort)g(lexicographically)j(using)d(the)630
90624657 y(curren)m(t)30 b(lo)s(cale.)630 4792 y(When)22
9063b(the)h(`)p Ft(==)p Fu(')f(and)g(`)p Ft(!=)p Fu(')g(op)s(erators)h(are)
9064g(used,)g(the)g(string)f(to)i(the)e(righ)m(t)h(of)g(the)g(op)s(erator)
9065630 4902 y(is)31 b(considered)g(a)h(pattern)f(and)g(matc)m(hed)h
9066(according)g(to)g(the)g(rules)f(describ)s(ed)f(b)s(elo)m(w)h(in)630
90675011 y(Section)d(3.5.8.1)h([P)m(attern)f(Matc)m(hing],)h(page)f(36,)g
9068(as)f(if)g(the)g Ft(extglob)d Fu(shell)j(option)g(w)m(ere)630
90695121 y(enabled.)46 b(The)31 b(`)p Ft(=)p Fu(')h(op)s(erator)h(is)f
9070(iden)m(tical)h(to)g(`)p Ft(==)p Fu('.)46 b(If)31 b(the)h
9071Ft(nocasematch)d Fu(shell)j(option)630 5230 y(\(see)42
9072b(the)f(description)g(of)h Ft(shopt)d Fu(in)i(Section)h(4.3.2)h([The)e
9073(Shopt)f(Builtin],)45 b(page)d(70\))630 5340 y(is)e(enabled,)i(the)e
9074(matc)m(h)h(is)e(p)s(erformed)g(without)g(regard)h(to)h(the)f(case)g
9075(of)g(alphab)s(etic)p eop end
fc35c477
CR
9076%%Page: 15 21
9077TeXDict begin 15 20 bop 150 -116 a Fu(Chapter)30 b(3:)41
9078b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)630 299
e59452c7
CR
9079y(c)m(haracters.)41 b(The)28 b(return)e(v)-5 b(alue)28
9080b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h(\(`)p Ft(==)p
9081Fu('\))f(or)g(do)s(es)f(not)h(matc)m(h)630 408 y(\(`)p
9082Ft(!=)p Fu('\))j(the)g(pattern,)f(and)g(1)h(otherwise.)630
9083543 y(If)20 b(y)m(ou)h(quote)g(an)m(y)f(part)h(of)f(the)h(pattern,)h
9084(using)e(an)m(y)h(of)f(the)h(shell's)g(quoting)g(mec)m(hanisms,)630
9085653 y(the)43 b(quoted)g(p)s(ortion)g(is)g(matc)m(hed)h(literally)-8
9086b(.)81 b(This)42 b(means)h(ev)m(ery)h(c)m(haracter)h(in)e(the)630
9087763 y(quoted)34 b(p)s(ortion)f(matc)m(hes)i(itself,)h(instead)e(of)f
9088(ha)m(ving)i(an)m(y)f(sp)s(ecial)g(pattern)g(matc)m(hing)630
9089872 y(meaning.)630 1007 y(An)f(additional)i(binary)e(op)s(erator,)i(`)p
9090Ft(=~)p Fu(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g
9091(precedence)h(as)630 1117 y(`)p Ft(==)p Fu(')40 b(and)g(`)p
9092Ft(!=)p Fu('.)70 b(When)40 b(y)m(ou)g(use)g(`)p Ft(=~)p
9093Fu(',)j(the)d(string)h(to)f(the)h(righ)m(t)g(of)f(the)g(op)s(erator)h
9094(is)630 1226 y(considered)36 b(a)g Fm(posix)f Fu(extended)g(regular)h
9095(expression)g(pattern)f(and)g(matc)m(hed)i(accord-)630
90961336 y(ingly)k(\(using)f(the)h Fm(posix)f Ft(regcomp)f
9097Fu(and)h Ft(regexec)e Fu(in)m(terfaces)k(usually)f(describ)s(ed)e(in)
9098630 1445 y Fl(r)-5 b(e)g(gex)11 b Fu(\(3\)\).)56 b(The)34
9099b(return)g(v)-5 b(alue)35 b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h
9100(the)f(pattern,)h(and)e(1)i(if)e(it)630 1555 y(do)s(es)39
9101b(not.)66 b(If)38 b(the)h(regular)g(expression)g(is)g(syn)m(tactically)
9102i(incorrect,)i(the)c(conditional)630 1665 y(expression)e(returns)e(2.)
910361 b(If)37 b(the)g Ft(nocasematch)d Fu(shell)j(option)h(\(see)g(the)f
9104(description)g(of)630 1774 y Ft(shopt)d Fu(in)h(Section)h(4.3.2)h([The)
9105e(Shopt)f(Builtin],)k(page)e(70\))g(is)g(enabled,)g(the)g(matc)m(h)g
9106(is)630 1884 y(p)s(erformed)29 b(without)h(regard)h(to)g(the)f(case)i
9107(of)e(alphab)s(etic)h(c)m(haracters.)630 2019 y(Y)-8
9108b(ou)23 b(can)g(quote)g(an)m(y)g(part)g(of)g(the)g(pattern)f(to)i
9109(force)f(the)g(quoted)g(p)s(ortion)f(to)h(b)s(e)f(matc)m(hed)630
91102128 y(literally)33 b(instead)f(of)g(as)f(a)h(regular)g(expression)f
9111(\(see)h(ab)s(o)m(v)m(e\).)46 b(If)31 b(the)h(pattern)f(is)h(stored)630
91122238 y(in)h(a)i(shell)f(v)-5 b(ariable,)35 b(quoting)f(the)g(v)-5
9113b(ariable)35 b(expansion)e(forces)i(the)f(en)m(tire)g(pattern)g(to)630
91142347 y(b)s(e)c(matc)m(hed)h(literally)-8 b(.)630 2482
9115y(The)25 b(pattern)h(will)g(matc)m(h)h(if)e(it)i(matc)m(hes)f(an)m(y)h
9116(part)e(of)h(the)g(string.)39 b(If)25 b(y)m(ou)h(w)m(an)m(t)h(to)f
9117(force)630 2592 y(the)j(pattern)h(to)g(matc)m(h)g(the)f(en)m(tire)h
9118(string,)g(anc)m(hor)g(the)f(pattern)h(using)e(the)i(`)p
9119Ft(^)p Fu(')f(and)g(`)p Ft($)p Fu(')630 2701 y(regular)i(expression)f
9120(op)s(erators.)630 2836 y(F)-8 b(or)31 b(example,)g(the)f(follo)m(wing)
9121h(will)f(matc)m(h)h(a)g(line)f(\(stored)g(in)g(the)g(shell)g(v)-5
9122b(ariable)31 b Ft(line)p Fu(\))630 2946 y(if)42 b(there)h(is)g(a)f
9123(sequence)h(of)g(c)m(haracters)h(an)m(ywhere)e(in)g(the)h(v)-5
9124b(alue)43 b(consisting)g(of)g(an)m(y)630 3055 y(n)m(um)m(b)s(er,)26
9125b(including)g(zero,)i(of)f(c)m(haracters)g(in)f(the)h
9126Ft(space)e Fu(c)m(haracter)j(class,)g(immediately)630
91273165 y(follo)m(w)m(ed)k(b)m(y)e(zero)h(or)g(one)f(instances)h(of)g(`)p
9128Ft(a)p Fu(',)g(then)f(a)h(`)p Ft(b)p Fu(':)870 3300 y
9129Ft([[)47 b($line)g(=~)g([[:space:]]*\(a\)?b)c(]])630
91303435 y Fu(That)f(means)g(v)-5 b(alues)42 b(for)g Ft(line)f
9131Fu(lik)m(e)i(`)p Ft(aab)p Fu(',)i(`)31 b Ft(aaaaaab)p
9132Fu(',)43 b(`)p Ft(xaby)p Fu(',)i(and)c(`)31 b Ft(ab)p
9133Fu(')42 b(will)g(all)630 3544 y(matc)m(h,)32 b(as)e(will)h(a)g(line)f
9134(con)m(taining)i(a)f(`)p Ft(b)p Fu(')g(an)m(ywhere)f(in)g(its)h(v)-5
9135b(alue.)630 3679 y(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(a)e(c)
9136m(haracter)j(that's)e(sp)s(ecial)g(to)g(the)g(regular)f(expression)g
9137(gram-)630 3789 y(mar)g(\(`)p Ft(^$|[]\(\)\\.*+?)p Fu('\),)e(it)j(has)f
9138(to)h(b)s(e)e(quoted)h(to)h(remo)m(v)m(e)g(its)g(sp)s(ecial)g(meaning.)
913940 b(This)630 3898 y(means)24 b(that)h(in)f(the)h(pattern)f(`)p
9140Ft(xxx.txt)p Fu(',)g(the)h(`)p Ft(.)p Fu(')f(matc)m(hes)i(an)m(y)f(c)m
9141(haracter)g(in)f(the)h(string)630 4008 y(\(its)34 b(usual)f(regular)g
9142(expression)g(meaning\),)i(but)e(in)g(the)g(pattern)h(`)p
9143Ft("xxx.txt")p Fu(',)e(it)i(can)630 4118 y(only)c(matc)m(h)i(a)f
9144(literal)g(`)p Ft(.)p Fu('.)630 4253 y(Lik)m(ewise,)i(if)f(y)m(ou)g(w)m
9145(an)m(t)g(to)h(include)e(a)h(c)m(haracter)h(in)e(y)m(our)h(pattern)g
9146(that)g(has)f(a)h(sp)s(ecial)630 4362 y(meaning)21 b(to)h(the)g
9147(regular)f(expression)g(grammar,)i(y)m(ou)f(m)m(ust)f(mak)m(e)h(sure)e
9148(it's)i(not)g(quoted.)630 4472 y(If)44 b(y)m(ou)g(w)m(an)m(t)h(to)g
9149(anc)m(hor)f(a)h(pattern)f(at)h(the)f(b)s(eginning)f(or)h(end)g(of)g
9150(the)g(string,)k(for)630 4581 y(instance,)e(y)m(ou)d(cannot)g(quote)g
9151(the)f(`)p Ft(^)p Fu(')h(or)f(`)p Ft($)p Fu(')g(c)m(haracters)i(using)e
9152(an)m(y)g(form)g(of)h(shell)630 4691 y(quoting.)630 4826
9153y(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(`)p Ft(initial)e
9154(string)p Fu(')f(at)i(the)g(start)g(of)g(a)g(line,)g(the)g(follo)m
9155(wing)h(will)630 4935 y(w)m(ork:)870 5070 y Ft([[)47
9156b($line)g(=~)g(^"initial)e(string")h(]])630 5205 y Fu(but)30
9157b(this)g(will)h(not:)870 5340 y Ft([[)47 b($line)g(=~)g("^initial)e
9158(string")h(]])p eop end
9159%%Page: 16 22
9160TeXDict begin 16 21 bop 150 -116 a Fu(Chapter)30 b(3:)41
9161b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(16)630 299
9162y(b)s(ecause)42 b(in)h(the)f(second)h(example)g(the)g(`)p
9163Ft(^)p Fu(')f(is)h(quoted)g(and)f(do)s(esn't)g(ha)m(v)m(e)i(its)e
9164(usual)630 408 y(sp)s(ecial)31 b(meaning.)630 540 y(It)h(is)f
9165(sometimes)h(di\016cult)g(to)g(sp)s(ecify)f(a)h(regular)g(expression)f
9166(prop)s(erly)f(without)h(using)630 650 y(quotes,)c(or)f(to)g(k)m(eep)h
9167(trac)m(k)g(of)e(the)h(quoting)g(used)f(b)m(y)h(regular)f(expressions)h
9168(while)f(pa)m(ying)630 759 y(atten)m(tion)40 b(to)f(shell)f(quoting)h
9169(and)e(the)h(shell's)h(quote)f(remo)m(v)-5 b(al.)65 b(Storing)38
9170b(the)h(regular)630 869 y(expression)45 b(in)g(a)g(shell)h(v)-5
9171b(ariable)46 b(is)f(often)g(a)h(useful)e(w)m(a)m(y)i(to)g(a)m(v)m(oid)h
9172(problems)d(with)630 978 y(quoting)35 b(c)m(haracters)g(that)g(are)g
9173(sp)s(ecial)g(to)g(the)f(shell.)53 b(F)-8 b(or)35 b(example,)h(the)e
9174(follo)m(wing)i(is)630 1088 y(equiv)-5 b(alen)m(t)32
9175b(to)f(the)f(pattern)h(used)f(ab)s(o)m(v)m(e:)870 1219
9176y Ft(pattern='[[:space:]]*\(a\))o(?b')870 1329 y([[)47
9177b($line)g(=~)g($pattern)e(]])630 1461 y Fu(Shell)29 b(programmers)f
9178(should)f(tak)m(e)k(sp)s(ecial)e(care)g(with)g(bac)m(kslashes,)h(since)
9179f(bac)m(kslashes)630 1570 y(are)22 b(used)f(b)m(y)h(b)s(oth)f(the)h
9180(shell)g(and)f(regular)h(expressions)f(to)i(remo)m(v)m(e)g(the)f(sp)s
9181(ecial)h(meaning)630 1680 y(from)j(the)g(follo)m(wing)i(c)m(haracter.)
918241 b(This)25 b(means)h(that)h(after)g(the)f(shell's)g(w)m(ord)g
9183(expansions)630 1789 y(complete)i(\(see)f(Section)g(3.5)h([Shell)e
9184(Expansions],)h(page)g(24\),)i(an)m(y)d(bac)m(kslashes)i(remain-)630
91851899 y(ing)44 b(in)f(parts)g(of)h(the)g(pattern)f(that)h(w)m(ere)g
9186(originally)h(not)f(quoted)g(can)g(remo)m(v)m(e)h(the)630
91872008 y(sp)s(ecial)29 b(meaning)g(of)g(pattern)f(c)m(haracters.)42
9188b(If)28 b(an)m(y)h(part)g(of)f(the)h(pattern)g(is)f(quoted,)i(the)630
91892118 y(shell)h(do)s(es)f(its)g(b)s(est)g(to)i(ensure)d(that)i(the)g
9190(regular)f(expression)h(treats)g(those)g(remaining)630
91912228 y(bac)m(kslashes)g(as)g(literal,)h(if)e(they)h(app)s(eared)f(in)g
9192(a)g(quoted)h(p)s(ortion.)630 2359 y(The)f(follo)m(wing)i(t)m(w)m(o)f
9193(sets)g(of)g(commands)f(are)h Fl(not)39 b Fu(equiv)-5
9194b(alen)m(t:)870 2491 y Ft(pattern='\\.')870 2710 y([[)47
9195b(.)h(=~)f($pattern)e(]])870 2819 y([[)i(.)h(=~)f(\\.)g(]])870
91963039 y([[)g(.)h(=~)f("$pattern")e(]])870 3148 y([[)i(.)h(=~)f('\\.')f
9197(]])630 3280 y Fu(The)28 b(\014rst)h(t)m(w)m(o)h(matc)m(hes)g(will)f
9198(succeed,)h(but)f(the)g(second)g(t)m(w)m(o)h(will)f(not,)h(b)s(ecause)f
9199(in)g(the)630 3389 y(second)e(t)m(w)m(o)i(the)e(bac)m(kslash)h(will)f
9200(b)s(e)g(part)g(of)g(the)g(pattern)g(to)h(b)s(e)f(matc)m(hed.)40
9201b(In)26 b(the)i(\014rst)630 3499 y(t)m(w)m(o)33 b(examples,)f(the)g
9202(pattern)f(passed)g(to)h(the)g(regular)f(expression)h(parser)e(is)i(`)p
9203Ft(\\.)p Fu('.)43 b(The)630 3608 y(bac)m(kslash)35 b(remo)m(v)m(es)g
9204(the)g(sp)s(ecial)f(meaning)h(from)e(`)p Ft(.)p Fu(',)j(so)e(the)h
9205(literal)g(`)p Ft(.)p Fu(')g(matc)m(hes.)53 b(In)630
92063718 y(the)35 b(second)h(t)m(w)m(o)g(examples,)h(the)f(pattern)f
9207(passed)g(to)h(the)f(regular)h(expression)f(parser)630
92083828 y(has)26 b(the)g(bac)m(kslash)g(quoted)g(\(e.g.,)j(`)p
9209Ft(\\\\\\.)p Fu('\),)e(whic)m(h)e(will)h(not)g(matc)m(h)h(the)f
9210(string,)h(since)f(it)630 3937 y(do)s(es)31 b(not)g(con)m(tain)h(a)g
9211(bac)m(kslash.)43 b(If)31 b(the)g(string)g(in)g(the)g(\014rst)f
9212(examples)i(w)m(ere)g(an)m(ything)630 4047 y(other)f(than)f(`)p
9213Ft(.)p Fu(',)h(sa)m(y)g(`)p Ft(a)p Fu(',)g(the)f(pattern)h(w)m(ould)f
9214(not)h(matc)m(h,)g(b)s(ecause)g(the)f(quoted)h(`)p Ft(.)p
9215Fu(')f(in)630 4156 y(the)h(pattern)f(loses)h(its)g(sp)s(ecial)g
9216(meaning)g(of)f(matc)m(hing)i(an)m(y)e(single)h(c)m(haracter.)630
92174288 y(Brac)m(k)m(et)d(expressions)d(in)g(regular)h(expressions)f(can)h
9218(b)s(e)e(sources)i(of)f(errors)g(as)h(w)m(ell,)i(since)630
92194398 y(c)m(haracters)43 b(that)f(are)g(normally)g(sp)s(ecial)g(in)f
9220(regular)h(expressions)f(lose)i(their)e(sp)s(ecial)630
92214507 y(meanings)24 b(b)s(et)m(w)m(een)g(brac)m(k)m(ets.)40
9222b(Ho)m(w)m(ev)m(er,)27 b(y)m(ou)e(can)f(use)f(brac)m(k)m(et)i
9223(expressions)f(to)g(matc)m(h)630 4617 y(sp)s(ecial)31
9224b(pattern)g(c)m(haracters)h(without)f(quoting)g(them,)f(so)h(they)g
9225(are)g(sometimes)h(useful)630 4726 y(for)e(this)g(purp)s(ose.)630
92264858 y(Though)f(it)i(migh)m(t)g(seem)f(lik)m(e)i(a)e(strange)h(w)m(a)m
9227(y)g(to)g(write)f(it,)h(the)g(follo)m(wing)g(pattern)g(will)630
92284967 y(matc)m(h)g(a)g(`)p Ft(.)p Fu(')g(in)f(the)g(string:)870
92295099 y Ft([[)47 b(.)h(=~)f([.])g(]])630 5230 y Fu(The)30
9230b(shell)g(p)s(erforms)f(an)m(y)i(w)m(ord)f(expansions)g(b)s(efore)g
9231(passing)g(the)g(pattern)h(to)g(the)f(reg-)630 5340 y(ular)44
9232b(expression)g(functions,)k(so)d(y)m(ou)f(can)h(assume)f(that)h(the)g
9233(shell's)g(quoting)f(tak)m(es)p eop end
9234%%Page: 17 23
9235TeXDict begin 17 22 bop 150 -116 a Fu(Chapter)30 b(3:)41
9236b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)630 299
9237y(precedence.)63 b(As)37 b(noted)h(ab)s(o)m(v)m(e,)j(the)d(regular)f
9238(expression)h(parser)f(will)h(in)m(terpret)g(an)m(y)630
9239408 y(unquoted)30 b(bac)m(kslashes)h(remaining)g(in)g(the)g(pattern)f
9240(after)i(shell)e(expansion)h(according)630 518 y(to)40
9241b(its)g(o)m(wn)f(rules.)68 b(The)39 b(in)m(ten)m(tion)i(is)e(to)h(a)m
9242(v)m(oid)h(making)f(shell)f(programmers)g(quote)630 628
9243y(things)31 b(t)m(wice)h(as)f(m)m(uc)m(h)f(as)h(p)s(ossible,)g(so)g
9244(shell)g(quoting)g(should)f(b)s(e)g(su\016cien)m(t)h(to)g(quote)630
9245737 y(sp)s(ecial)g(pattern)f(c)m(haracters)i(where)e(that's)h
9246(necessary)-8 b(.)630 878 y(The)39 b(arra)m(y)h(v)-5
9247b(ariable)40 b Ft(BASH_REMATCH)c Fu(records)j(whic)m(h)g(parts)g(of)g
9248(the)h(string)f(matc)m(hed)630 987 y(the)34 b(pattern.)51
9249b(The)33 b(elemen)m(t)i(of)f Ft(BASH_REMATCH)d Fu(with)i(index)g(0)h
9250(con)m(tains)h(the)f(p)s(ortion)630 1097 y(of)39 b(the)g(string)g(matc)
9251m(hing)h(the)g(en)m(tire)f(regular)h(expression.)66 b(Substrings)37
9252b(matc)m(hed)j(b)m(y)630 1207 y(paren)m(thesized)k(sub)s(expressions)e
9253(within)i(the)g(regular)g(expression)g(are)g(sa)m(v)m(ed)h(in)f(the)630
92541316 y(remaining)33 b Ft(BASH_REMATCH)c Fu(indices.)49
9255b(The)32 b(elemen)m(t)i(of)f Ft(BASH_REMATCH)d Fu(with)i(index)g
9256Fr(n)630 1426 y Fu(is)e(the)h(p)s(ortion)f(of)g(the)h(string)f(matc)m
9257(hing)i(the)e Fr(n)p Fu(th)g(paren)m(thesized)h(sub)s(expression.)630
92581567 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f(the)h
d37a4722 9259(follo)m(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630
e59452c7
CR
92601676 y(order)30 b(of)g(precedence:)630 1848 y Ft(\()g
9261Fj(expression)e Ft(\))1110 1957 y Fu(Returns)i(the)h(v)-5
9262b(alue)31 b(of)g Fr(expression)p Fu(.)42 b(This)30 b(ma)m(y)i(b)s(e)e
9263(used)g(to)i(o)m(v)m(erride)g(the)1110 2067 y(normal)e(precedence)h(of)
9264g(op)s(erators.)630 2239 y Ft(!)f Fj(expression)1110
92652348 y Fu(T)-8 b(rue)30 b(if)g Fr(expression)g Fu(is)h(false.)630
92662520 y Fj(expression1)c Ft(&&)j Fj(expression2)1110 2630
9267y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expression1)38
9268b Fu(and)29 b Fr(expression2)38 b Fu(are)31 b(true.)630
92692801 y Fj(expression1)c Ft(||)j Fj(expression2)1110 2911
9270y Fu(T)-8 b(rue)30 b(if)g(either)h Fr(expression1)38
6e51e0d0 9271b Fu(or)30 b Fr(expression2)38 b Fu(is)30 b(true.)630
e59452c7 92723083 y(The)24 b Ft(&&)h Fu(and)f Ft(||)g Fu(op)s(erators)h(do)g(not)g
6e51e0d0 9273(ev)-5 b(aluate)27 b Fr(expression2)32 b Fu(if)25 b(the)g(v)-5
e59452c7 9274b(alue)25 b(of)g Fr(expression1)630 3192 y Fu(is)30 b(su\016cien)m(t)h
6e51e0d0 9275(to)g(determine)g(the)f(return)g(v)-5 b(alue)31 b(of)f(the)h(en)m(tire)
e59452c7
CR
9276g(conditional)h(expression.)150 3404 y Fk(3.2.5.3)63
9277b(Grouping)43 b(Commands)150 3551 y Fu(Bash)30 b(pro)m(vides)g(t)m(w)m
d37a4722 9278(o)h(w)m(a)m(ys)f(to)h(group)e(a)h(list)g(of)g(commands)f(to)i(b)s(e)e
e59452c7 9279(executed)h(as)g(a)h(unit.)40 b(When)29 b(com-)150 3661
d37a4722
CR
9280y(mands)h(are)i(group)s(ed,)f(redirections)h(ma)m(y)g(b)s(e)e(applied)i
9281(to)g(the)f(en)m(tire)h(command)g(list.)44 b(F)-8 b(or)32
e59452c7 9282b(example,)150 3770 y(the)f(output)f(of)g(all)h(the)g(commands)f(in)g
d37a4722 9283(the)h(list)g(ma)m(y)g(b)s(e)e(redirected)i(to)g(a)g(single)g(stream.)
e59452c7
CR
9284150 3948 y Ft(\(\))870 4089 y(\()47 b Fj(list)g Ft(\))630
92854229 y Fu(Placing)42 b(a)g(list)g(of)f(commands)g(b)s(et)m(w)m(een)h
9286(paren)m(theses)f(forces)h(the)f(shell)h(to)g(create)h(a)630
92874339 y(subshell)33 b(\(see)h(Section)g(3.7.3)i([Command)c(Execution)j
9288(En)m(vironmen)m(t],)g(page)f(42\),)i(and)630 4449 y(eac)m(h)g(of)f
9289(the)h(commands)e(in)h Fr(list)i Fu(is)e(executed)h(in)f(that)h
9290(subshell)e(en)m(vironmen)m(t.)55 b(Since)630 4558 y(the)33
9291b Fr(list)j Fu(is)e(executed)g(in)f(a)g(subshell,)h(v)-5
9292b(ariable)34 b(assignmen)m(ts)g(do)f(not)g(remain)g(in)g(e\013ect)630
92934668 y(after)e(the)f(subshell)g(completes.)150 4839 y
9294Ft({})870 4980 y({)47 b Fj(list)p Ft(;)g(})630 5121 y
9295Fu(Placing)30 b(a)g(list)g(of)g(commands)f(b)s(et)m(w)m(een)h(curly)f
037a8b7f 9296(braces)g(causes)h(the)f(list)h(to)g(b)s(e)f(executed)630
e59452c7 92975230 y(in)d(the)h(curren)m(t)g(shell)f(con)m(text.)42
037a8b7f 9298b(No)27 b(subshell)f(is)g(created.)41 b(The)26 b(semicolon)i(\(or)f
e59452c7
CR
9299(newline\))630 5340 y(follo)m(wing)32 b Fr(list)h Fu(is)d(required.)p
9300eop end
9301%%Page: 18 24
9302TeXDict begin 18 23 bop 150 -116 a Fu(Chapter)30 b(3:)41
9303b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(18)275 299
9304y(In)44 b(addition)h(to)h(the)f(creation)i(of)e(a)g(subshell,)j(there)e
9305(is)f(a)g(subtle)g(di\013erence)h(b)s(et)m(w)m(een)f(these)150
9306408 y(t)m(w)m(o)f(constructs)f(due)g(to)g(historical)i(reasons.)78
9307b(The)42 b(braces)i(are)f(reserv)m(ed)g(w)m(ords,)j(so)d(they)g(m)m
9308(ust)150 518 y(b)s(e)36 b(separated)h(from)f(the)g Fr(list)j
9309Fu(b)m(y)e Ft(blank)p Fu(s)e(or)h(other)h(shell)f(metac)m(haracters.)62
9310b(The)36 b(paren)m(theses)h(are)150 628 y(op)s(erators,)29
9311b(and)e(are)i(recognized)g(as)g(separate)g(tok)m(ens)g(b)m(y)f(the)g
9312(shell)g(ev)m(en)h(if)f(they)h(are)f(not)g(separated)150
9313737 y(from)i(the)g Fr(list)j Fu(b)m(y)e(whitespace.)275
9314865 y(The)e(exit)j(status)e(of)h(b)s(oth)f(of)g(these)h(constructs)g
9315(is)f(the)h(exit)g(status)f(of)h Fr(list)p Fu(.)150 1050
9316y Fk(3.2.6)63 b(Copro)s(cesses)150 1197 y Fu(A)37 b Ft(coprocess)c
9317Fu(is)k(a)g(shell)f(command)h(preceded)f(b)m(y)g(the)h
9318Ft(coproc)d Fu(reserv)m(ed)j(w)m(ord.)59 b(A)36 b(copro)s(cess)h(is)150
93191307 y(executed)g(async)m(hronously)g(in)f(a)h(subshell,)g(as)g(if)g
9320(the)f(command)h(had)f(b)s(een)f(terminated)i(with)g(the)150
93211416 y(`)p Ft(&)p Fu(')d(con)m(trol)h(op)s(erator,)g(with)f(a)g(t)m(w)m
d37a4722 9322(o-w)m(a)m(y)i(pip)s(e)d(established)h(b)s(et)m(w)m(een)h(the)f
e59452c7
CR
9323(executing)h(shell)f(and)f(the)150 1526 y(copro)s(cess.)275
93241653 y(The)c(syn)m(tax)i(for)f(a)h(copro)s(cess)g(is:)390
93251781 y Ft(coproc)46 b([)p Fj(NAME)p Ft(])g Fj(command)g
9326Ft([)p Fj(redirections)p Ft(])150 1909 y Fu(This)33 b(creates)i(a)f
9327(copro)s(cess)g(named)f Fr(NAME)p Fu(.)51 b Fr(command)37
9328b Fu(ma)m(y)d(b)s(e)f(either)h(a)g(simple)g(command)f(\(see)150
93292018 y(Section)44 b(3.2.2)i([Simple)d(Commands],)k(page)d(9\))g(or)g(a)
9330g(comp)s(ound)e(command)h(\(see)i(Section)f(3.2.5)150
93312128 y([Comp)s(ound)e(Commands],)47 b(page)e(11\).)83
9332b Fr(NAME)50 b Fu(is)44 b(a)g(shell)g(v)-5 b(ariable)45
9333b(name.)82 b(If)44 b Fr(NAME)50 b Fu(is)44 b(not)150
93342237 y(supplied,)29 b(the)i(default)f(name)h(is)f Ft(COPROC)p
9335Fu(.)275 2365 y(The)f(recommended)h(form)g(to)h(use)f(for)h(a)f(copro)s
9336(cess)h(is)390 2492 y Ft(coproc)46 b Fj(NAME)h Ft({)g
9337Fj(command)p Ft(;)f(})150 2620 y Fu(This)31 b(form)g(is)h(recommended)f
9338(b)s(ecause)h(simple)g(commands)f(result)h(in)f(the)h(copro)s(cess)g
9339(alw)m(a)m(ys)h(b)s(eing)150 2730 y(named)45 b Ft(COPROC)p
9340Fu(,)i(and)e(it)h(is)f(simpler)g(to)h(use)f(and)g(more)g(complete)i
9341(than)e(the)h(other)f(comp)s(ound)150 2839 y(commands.)275
93422967 y(There)29 b(are)i(other)g(forms)f(of)g(copro)s(cesses:)390
93433094 y Ft(coproc)46 b Fj(NAME)h(compound-command)390
93443204 y Ft(coproc)f Fj(compound-command)390 3313 y Ft(coproc)g
9345Fj(simple-command)150 3441 y Fu(If)41 b Fr(command)46
9346b Fu(is)41 b(a)i(comp)s(ound)d(command,)45 b Fr(NAME)i
9347Fu(is)42 b(optional.)77 b(The)41 b(w)m(ord)g(follo)m(wing)j
9348Ft(coproc)150 3551 y Fu(determines)27 b(whether)f(that)i(w)m(ord)f(is)g
9349(in)m(terpreted)g(as)g(a)h(v)-5 b(ariable)28 b(name:)39
9350b(it)27 b(is)g(in)m(terpreted)h(as)f Fr(NAME)150 3660
9351y Fu(if)i(it)h(is)g(not)f(a)h(reserv)m(ed)f(w)m(ord)g(that)h(in)m(tro)s
9352(duces)f(a)h(comp)s(ound)e(command.)40 b(If)29 b Fr(command)k
9353Fu(is)c(a)h(simple)150 3770 y(command,)36 b Fr(NAME)k
9354Fu(is)35 b(not)f(allo)m(w)m(ed;)39 b(this)34 b(is)h(to)g(a)m(v)m(oid)h
9355(confusion)f(b)s(et)m(w)m(een)g Fr(NAME)40 b Fu(and)34
9356b(the)h(\014rst)150 3879 y(w)m(ord)30 b(of)h(the)f(simple)g(command.)
9357275 4007 y(When)42 b(the)i(copro)s(cess)f(is)g(executed,)48
9358b(the)43 b(shell)g(creates)i(an)e(arra)m(y)g(v)-5 b(ariable)44
9359b(\(see)g(Section)g(6.7)150 4117 y([Arra)m(ys],)49 b(page)c(99\))h
9360(named)e Fr(NAME)51 b Fu(in)44 b(the)h(con)m(text)h(of)f(the)g
9361(executing)h(shell.)84 b(The)44 b(standard)150 4226 y(output)32
9362b(of)h Fr(command)i Fu(is)e(connected)g(via)g(a)g(pip)s(e)f(to)h(a)g
9363(\014le)f(descriptor)h(in)f(the)g(executing)i(shell,)g(and)150
93644336 y(that)d(\014le)g(descriptor)g(is)g(assigned)f(to)i
9365Fr(NAME)5 b Fu([0].)43 b(The)31 b(standard)f(input)f(of)i
9366Fr(command)j Fu(is)d(connected)150 4445 y(via)40 b(a)g(pip)s(e)f(to)h
9367(a)g(\014le)g(descriptor)f(in)g(the)h(executing)h(shell,)h(and)d(that)h
9368(\014le)g(descriptor)f(is)h(assigned)150 4555 y(to)f
9369Fr(NAME)5 b Fu([1].)65 b(This)38 b(pip)s(e)f(is)h(established)g(b)s
9370(efore)g(an)m(y)g(redirections)h(sp)s(eci\014ed)e(b)m(y)h(the)g
9371(command)150 4664 y(\(see)33 b(Section)f(3.6)h([Redirections],)g(page)g
9372(37\).)45 b(The)31 b(\014le)h(descriptors)f(can)h(b)s(e)f(utilized)i
9373(as)f(argumen)m(ts)150 4774 y(to)42 b(shell)g(commands)f(and)g
fc35c477 9374(redirections)h(using)f(standard)g(w)m(ord)g(expansions.)74
e59452c7 9375b(Other)41 b(than)g(those)150 4884 y(created)27 b(to)g(execute)g
fc35c477 9376(command)f(and)f(pro)s(cess)h(substitutions,)h(the)f(\014le)g
e59452c7
CR
9377(descriptors)g(are)g(not)h(a)m(v)-5 b(ailable)150 4993
9378y(in)30 b(subshells.)275 5121 y(The)d(pro)s(cess)h(ID)h(of)f(the)h
fc35c477 9379(shell)f(spa)m(wned)g(to)h(execute)h(the)e(copro)s(cess)h(is)f(a)m(v)-5
e59452c7
CR
9380b(ailable)31 b(as)d(the)h(v)-5 b(alue)29 b(of)150 5230
9381y(the)k(v)-5 b(ariable)33 b Fj(NAME)p Ft(_PID)p Fu(.)44
9382b(The)32 b Ft(wait)g Fu(builtin)f(command)i(ma)m(y)g(b)s(e)e(used)h(to)
9383h(w)m(ait)h(for)e(the)h(copro)s(cess)150 5340 y(to)e(terminate.)p
9384eop end
9385%%Page: 19 25
9386TeXDict begin 19 24 bop 150 -116 a Fu(Chapter)30 b(3:)41
9387b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)275 299
9388y(Since)20 b(the)g(copro)s(cess)h(is)g(created)g(as)g(an)f(async)m
9389(hronous)g(command,)i(the)f Ft(coproc)d Fu(command)i(alw)m(a)m(ys)150
9390408 y(returns)29 b(success.)41 b(The)30 b(return)f(status)i(of)f(a)h
9391(copro)s(cess)g(is)f(the)h(exit)g(status)g(of)f Fr(command)p
9392Fu(.)150 609 y Fk(3.2.7)63 b(GNU)41 b(P)m(arallel)150
9393756 y Fu(There)30 b(are)h(w)m(a)m(ys)g(to)g(run)f(commands)g(in)g
9394(parallel)h(that)h(are)e(not)h(built)g(in)m(to)g(Bash.)41
9395b(GNU)31 b(P)m(arallel)i(is)150 866 y(a)e(to)s(ol)g(to)g(do)f(just)g
9396(that.)275 1001 y(GNU)e(P)m(arallel,)i(as)e(its)g(name)f(suggests,)j
9397(can)d(b)s(e)g(used)g(to)h(build)f(and)g(run)f(commands)h(in)h
9398(parallel.)150 1111 y(Y)-8 b(ou)41 b(ma)m(y)g(run)e(the)h(same)h
9399(command)f(with)g(di\013eren)m(t)h(argumen)m(ts,)j(whether)39
9400b(they)i(are)g(\014lenames,)150 1221 y(usernames,)27
9401b(hostnames,)h(or)e(lines)h(read)f(from)h(\014les.)39
9402b(GNU)27 b(P)m(arallel)i(pro)m(vides)d(shorthand)g(references)150
94031330 y(to)38 b(man)m(y)g(of)g(the)g(most)g(common)g(op)s(erations)g
9404(\(input)f(lines,)j(v)-5 b(arious)38 b(p)s(ortions)f(of)h(the)g(input)e
9405(line,)150 1440 y(di\013eren)m(t)f(w)m(a)m(ys)h(to)f(sp)s(ecify)f(the)h
9406(input)f(source,)i(and)e(so)h(on\).)54 b(P)m(arallel)36
9407b(can)f(replace)h Ft(xargs)d Fu(or)i(feed)150 1549 y(commands)30
9408b(from)g(its)h(input)e(sources)h(to)i(sev)m(eral)f(di\013eren)m(t)g
9409(instances)g(of)g(Bash.)275 1685 y(F)-8 b(or)28 b(a)h(complete)g
9410(description,)g(refer)f(to)g(the)h(GNU)f(P)m(arallel)i(do)s(cumen)m
9411(tation,)g(whic)m(h)e(is)g(a)m(v)-5 b(ailable)150 1795
9412y(at)31 b Ft(https://www.gnu.org/softw)o(are)o(/par)o(alle)o(l/p)o
9413(aral)o(lel_)o(tut)o(oria)o(l.ht)o(ml)p Fu(.)150 2038
9414y Fs(3.3)68 b(Shell)45 b(F)-11 b(unctions)150 2197 y
9415Fu(Shell)35 b(functions)h(are)g(a)g(w)m(a)m(y)g(to)h(group)e(commands)g
9416(for)h(later)g(execution)h(using)e(a)h(single)g(name)g(for)150
94172307 y(the)f(group.)55 b(They)35 b(are)g(executed)h(just)f(lik)m(e)h(a)
9418g Ft(")p Fu(regular)p Ft(")f Fu(command.)54 b(When)35
9419b(the)h(name)f(of)g(a)h(shell)150 2416 y(function)j(is)g(used)f(as)h(a)
9420h(simple)f(command)g(name,)i(the)e(list)h(of)f(commands)g(asso)s
9421(ciated)i(with)d(that)150 2526 y(function)25 b(name)h(is)g(executed.)40
9422b(Shell)25 b(functions)g(are)i(executed)f(in)f(the)h(curren)m(t)g
9423(shell)g(con)m(text;)j(no)c(new)150 2635 y(pro)s(cess)30
9424b(is)g(created)i(to)f(in)m(terpret)g(them.)275 2771 y(F)-8
9425b(unctions)30 b(are)h(declared)g(using)f(this)g(syn)m(tax:)390
94262907 y Fj(fname)46 b Ft(\(\))i Fj(compound-command)43
9427b Ft([)k Fj(redirections)e Ft(])275 3043 y Fu(or)390
94283179 y Ft(function)h Fj(fname)g Ft([\(\)])h Fj(compound-command)c
9429Ft([)k Fj(redirections)e Ft(])275 3315 y Fu(This)37 b(de\014nes)h(a)h
9430(shell)f(function)g(named)g Fr(fname)p Fu(.)65 b(The)38
9431b(reserv)m(ed)h(w)m(ord)f Ft(function)e Fu(is)j(optional.)150
94323424 y(If)33 b(the)g Ft(function)e Fu(reserv)m(ed)i(w)m(ord)g(is)g
9433(supplied,)g(the)g(paren)m(theses)h(are)f(optional.)50
9434b(The)33 b Fr(b)s(o)s(dy)39 b Fu(of)34 b(the)150 3534
9435y(function)41 b(is)h(the)g(comp)s(ound)e(command)h Fr(comp)s
9436(ound-command)j Fu(\(see)e(Section)h(3.2.5)g([Comp)s(ound)150
94373644 y(Commands],)30 b(page)h(11\).)42 b(That)30 b(command)g(is)g
9438(usually)h(a)f Fr(list)j Fu(enclosed)e(b)s(et)m(w)m(een)g
9439Fi({)g Fu(and)f Fi(})p Fu(,)h(but)e(ma)m(y)150 3753 y(b)s(e)k(an)m(y)h
9440(comp)s(ound)f(command)g(listed)i(ab)s(o)m(v)m(e.)52
9441b(If)33 b(the)i Ft(function)c Fu(reserv)m(ed)j(w)m(ord)g(is)f(used,)i
9442(but)e(the)150 3863 y(paren)m(theses)22 b(are)g(not)f(supplied,)h(the)g
9443(braces)g(are)f(recommended.)38 b Fr(comp)s(ound-command)24
9444b Fu(is)d(executed)150 3972 y(whenev)m(er)29 b Fr(fname)35
9445b Fu(is)29 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)h(a)f(simple)h
9446(command.)40 b(When)29 b(the)h(shell)f(is)h(in)f Fm(posix)150
94474082 y Fu(mo)s(de)i(\(see)h(Section)g(6.11)h([Bash)f(POSIX)e(Mo)s(de],)
9448i(page)g(105\),)i Fr(fname)i Fu(m)m(ust)31 b(b)s(e)g(a)h(v)-5
9449b(alid)31 b(shell)h(name)150 4192 y(and)h(ma)m(y)h(not)f(b)s(e)g(the)h
9450(same)f(as)h(one)g(of)f(the)h(sp)s(ecial)g(builtins)e(\(see)j(Section)f
9451(4.4)g([Sp)s(ecial)g(Builtins],)150 4301 y(page)d(76\).)43
9452b(In)29 b(default)i(mo)s(de,)g(a)f(function)h(name)f(can)h(b)s(e)f(an)m
9453(y)h(unquoted)e(shell)i(w)m(ord)f(that)h(do)s(es)g(not)150
94544411 y(con)m(tain)k(`)p Ft($)p Fu('.)52 b(An)m(y)34 b(redirections)g
9455(\(see)h(Section)g(3.6)g([Redirections],)h(page)f(37\))g(asso)s(ciated)
9456g(with)f(the)150 4520 y(shell)g(function)f(are)h(p)s(erformed)e(when)h
9457(the)g(function)h(is)f(executed.)51 b(A)34 b(function)f(de\014nition)g
9458(ma)m(y)i(b)s(e)150 4630 y(deleted)i(using)e(the)i Ft(-f)e
9459Fu(option)i(to)f(the)h Ft(unset)d Fu(builtin)i(\(see)h(Section)g(4.1)g
9460([Bourne)f(Shell)g(Builtins],)150 4739 y(page)31 b(47\).)275
94614875 y(The)26 b(exit)i(status)g(of)f(a)h(function)f(de\014nition)g(is)g
9462(zero)h(unless)f(a)g(syn)m(tax)h(error)f(o)s(ccurs)g(or)g(a)h(readonly)
9463150 4985 y(function)k(with)f(the)i(same)f(name)g(already)h(exists.)46
602eae4d 9464b(When)32 b(executed,)h(the)f(exit)h(status)g(of)f(a)g(function)150
e59452c7
CR
94655095 y(is)e(the)h(exit)g(status)g(of)f(the)h(last)g(command)f(executed)
9466i(in)e(the)g(b)s(o)s(dy)-8 b(.)275 5230 y(Note)22 b(that)f(for)f
602eae4d 9467(historical)i(reasons,)h(in)e(the)g(most)g(common)g(usage)g(the)g
e59452c7 9468(curly)f(braces)h(that)g(surround)150 5340 y(the)38 b(b)s(o)s(dy)d(of)j
602eae4d 9469(the)f(function)g(m)m(ust)g(b)s(e)g(separated)h(from)f(the)g(b)s(o)s
e59452c7
CR
9470(dy)f(b)m(y)h Ft(blank)p Fu(s)f(or)h(newlines.)62 b(This)p
9471eop end
9472%%Page: 20 26
9473TeXDict begin 20 25 bop 150 -116 a Fu(Chapter)30 b(3:)41
9474b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(20)150 299
9475y(is)38 b(b)s(ecause)g(the)h(braces)f(are)h(reserv)m(ed)f(w)m(ords)g
9476(and)f(are)i(only)f(recognized)i(as)e(suc)m(h)g(when)f(they)i(are)150
9477408 y(separated)26 b(from)f(the)h(command)f(list)i(b)m(y)e(whitespace)h
9478(or)g(another)g(shell)g(metac)m(haracter.)41 b(Also,)28
9479b(when)150 518 y(using)i(the)g(braces,)h(the)g Fr(list)i
9480Fu(m)m(ust)d(b)s(e)g(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p
9481Ft(&)p Fu(',)h(or)g(a)f(newline.)275 658 y(When)i(a)i(function)f(is)g
9482(executed,)i(the)e(argumen)m(ts)h(to)g(the)f(function)g(b)s(ecome)g
9483(the)h(p)s(ositional)g(pa-)150 767 y(rameters)42 b(during)e(its)i
ac18b312 9484(execution)h(\(see)f(Section)g(3.4.1)h([P)m(ositional)h(P)m
e59452c7 9485(arameters],)i(page)c(22\).)75 b(The)150 877 y(sp)s(ecial)37
037a8b7f 9486b(parameter)f(`)p Ft(#)p Fu(')g(that)h(expands)e(to)i(the)f(n)m(um)m(b)
e59452c7
CR
9487s(er)f(of)h(p)s(ositional)h(parameters)f(is)g(up)s(dated)f(to)150
9488986 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35
037a8b7f 9489b(parameter)h Ft(0)f Fu(is)g(unc)m(hanged.)54 b(The)35
e59452c7 9490b(\014rst)f(elemen)m(t)j(of)e(the)g Ft(FUNCNAME)150 1096
037a8b7f
CR
9491y Fu(v)-5 b(ariable)31 b(is)g(set)f(to)i(the)e(name)h(of)f(the)h
9492(function)f(while)g(the)h(function)f(is)g(executing.)275
e59452c7
CR
94931235 y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)g(execution)h(en)
9494m(vironmen)m(t)g(are)f(iden)m(tical)h(b)s(et)m(w)m(een)g(a)f(function)g
9495(and)150 1345 y(its)35 b(caller)i(with)d(these)i(exceptions:)50
037a8b7f 9496b(the)36 b Ft(DEBUG)d Fu(and)h Ft(RETURN)g Fu(traps)g(are)i(not)f
e59452c7
CR
9497(inherited)f(unless)h(the)150 1455 y(function)26 b(has)g(b)s(een)f(giv)
9498m(en)i(the)g Ft(trace)d Fu(attribute)j(using)f(the)g
9499Ft(declare)e Fu(builtin)i(or)g(the)h Ft(-o)i(functrace)150
95001564 y Fu(option)f(has)e(b)s(een)h(enabled)g(with)g(the)g
9501Ft(set)f Fu(builtin,)i(\(in)f(whic)m(h)f(case)j(all)f(functions)e
9502(inherit)h(the)g Ft(DEBUG)150 1674 y Fu(and)33 b Ft(RETURN)f
9503Fu(traps\),)j(and)e(the)h Ft(ERR)f Fu(trap)h(is)g(not)g(inherited)f
9504(unless)g(the)h Ft(-o)c(errtrace)h Fu(shell)j(option)150
95051783 y(has)h(b)s(een)f(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f
9506(Shell)g(Builtins],)i(page)f(47,)i(for)c(the)i(description)f(of)150
95071893 y(the)c Ft(trap)e Fu(builtin.)275 2032 y(The)38
9508b Ft(FUNCNEST)f Fu(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)
9509f(v)-5 b(alue)39 b(greater)h(than)f(0,)j(de\014nes)d(a)g(maxim)m(um)150
95102142 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
220537f2 9511b(in)m(v)m(o)s(cations)i(that)e(exceed)g(the)g(limit)g(cause)g(the)g
e59452c7
CR
9512(en)m(tire)g(command)150 2252 y(to)31 b(ab)s(ort.)275
95132391 y(If)37 b(the)g(builtin)g(command)h Ft(return)d
6e51e0d0 9514Fu(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
e59452c7 9515(and)150 2501 y(execution)25 b(resumes)e(with)h(the)g(next)g(command)f
220537f2 9516(after)i(the)f(function)f(call.)40 b(An)m(y)24 b(command)f(asso)s
e59452c7 9517(ciated)150 2610 y(with)36 b(the)h Ft(RETURN)d Fu(trap)i(is)h(executed)
d37a4722 9518g(b)s(efore)f(execution)i(resumes.)57 b(When)37 b(a)f(function)g
e59452c7 9519(completes,)150 2720 y(the)h(v)-5 b(alues)38 b(of)f(the)g(p)s
d37a4722 9520(ositional)h(parameters)f(and)g(the)g(sp)s(ecial)h(parameter)f(`)p
e59452c7 9521Ft(#)p Fu(')g(are)h(restored)f(to)h(the)150 2829 y(v)-5
d37a4722
CR
9522b(alues)26 b(they)f(had)g(prior)f(to)i(the)g(function's)f(execution.)40
9523b(If)25 b(a)h(n)m(umeric)f(argumen)m(t)h(is)f(giv)m(en)h(to)g
e59452c7 9524Ft(return)p Fu(,)150 2939 y(that)j(is)g(the)f(function's)h(return)e
d37a4722 9525(status;)j(otherwise)f(the)f(function's)h(return)e(status)i(is)f(the)h
e59452c7
CR
9526(exit)h(status)150 3049 y(of)h(the)f(last)h(command)f(executed)i(b)s
9527(efore)e(the)g Ft(return)p Fu(.)275 3188 y(V)-8 b(ariables)31
d37a4722
CR
9528b(lo)s(cal)g(to)f(the)g(function)f(ma)m(y)i(b)s(e)e(declared)h(with)f
9529(the)h Ft(local)f Fu(builtin.)40 b(These)29 b(v)-5 b(ariables)150
e59452c7 95303298 y(are)25 b(visible)h(only)f(to)g(the)g(function)g(and)f(the)i
d37a4722 9531(commands)e(it)i(in)m(v)m(ok)m(es.)40 b(This)24 b(is)h(particularly)h
e59452c7
CR
9532(imp)s(ortan)m(t)150 3407 y(when)j(a)i(shell)g(function)f(calls)h
9533(other)g(functions.)275 3547 y(Lo)s(cal)41 b(v)-5 b(ariables)42
d37a4722
CR
9534b Ft(")p Fu(shado)m(w)p Ft(")e Fu(v)-5 b(ariables)42
9535b(with)f(the)g(same)g(name)g(declared)h(at)f(previous)g(scop)s(es.)150
e59452c7 95363656 y(F)-8 b(or)41 b(instance,)j(a)d(lo)s(cal)h(v)-5
d37a4722 9537b(ariable)41 b(declared)g(in)f(a)h(function)f(hides)g(a)h(global)h(v)-5
e59452c7 9538b(ariable)41 b(of)g(the)g(same)150 3766 y(name:)59 b(references)40
d37a4722
CR
9539b(and)f(assignmen)m(ts)h(refer)f(to)i(the)f(lo)s(cal)g(v)-5
9540b(ariable,)43 b(lea)m(ving)f(the)d(global)i(v)-5 b(ariable)150
e59452c7 95413875 y(unmo)s(di\014ed.)39 b(When)30 b(the)g(function)g(returns,)g(the)
d37a4722 9542g(global)i(v)-5 b(ariable)31 b(is)g(once)g(again)g(visible.)275
e59452c7 95434015 y(The)f(shell)h(uses)g Fr(dynamic)g(scoping)39 b
d37a4722 9544Fu(to)32 b(con)m(trol)g(a)f(v)-5 b(ariable's)32 b(visibilit)m(y)h
e59452c7 9545(within)d(functions.)42 b(With)150 4125 y(dynamic)31
fc35c477
CR
9546b(scoping,)i(visible)e(v)-5 b(ariables)32 b(and)f(their)h(v)-5
9547b(alues)32 b(are)f(a)h(result)g(of)f(the)h(sequence)g(of)f(function)150
e59452c7 95484234 y(calls)37 b(that)g(caused)g(execution)g(to)g(reac)m(h)g(the)g
e230f997 9549(curren)m(t)f(function.)58 b(The)36 b(v)-5 b(alue)36
e59452c7 9550b(of)h(a)g(v)-5 b(ariable)37 b(that)g(a)150 4344 y(function)24
e230f997
CR
9551b(sees)g(dep)s(ends)f(on)h(its)g(v)-5 b(alue)25 b(within)e(its)i
9552(caller,)i(if)d(an)m(y)-8 b(,)26 b(whether)e(that)g(caller)i(is)e(the)g
e59452c7 9553Ft(")p Fu(global)p Ft(")150 4453 y Fu(scop)s(e)41 b(or)g(another)g
e230f997
CR
9554(shell)g(function.)73 b(This)40 b(is)h(also)h(the)f(v)-5
9555b(alue)41 b(that)h(a)f(lo)s(cal)i(v)-5 b(ariable)41 b(declaration)150
e59452c7 95564563 y Ft(")p Fu(shado)m(ws)p Ft(")p Fu(,)30 b(and)g(the)g(v)-5
e230f997 9557b(alue)31 b(that)g(is)f(restored)h(when)e(the)i(function)f(returns.)275
e59452c7
CR
95584702 y(F)-8 b(or)38 b(example,)h(if)f(a)f(v)-5 b(ariable)38
9559b Ft(var)f Fu(is)g(declared)h(as)f(lo)s(cal)i(in)e(function)g
9560Ft(func1)p Fu(,)g(and)g Ft(func1)f Fu(calls)150 4812
9561y(another)29 b(function)g Ft(func2)p Fu(,)f(references)i(to)f
9562Ft(var)g Fu(made)g(from)f(within)h Ft(func2)f Fu(will)h(resolv)m(e)i
9563(to)e(the)h(lo)s(cal)150 4922 y(v)-5 b(ariable)31 b Ft(var)f
9564Fu(from)g Ft(func1)p Fu(,)f(shado)m(wing)h(an)m(y)h(global)h(v)-5
9565b(ariable)31 b(named)f Ft(var)p Fu(.)275 5061 y(The)f(follo)m(wing)j
9566(script)f(demonstrates)f(this)h(b)s(eha)m(vior.)40 b(When)31
9567b(executed,)g(the)g(script)f(displa)m(ys)390 5200 y Ft(In)47
9568b(func2,)f(var)h(=)h(func1)e(local)390 5340 y(func1\(\))p
d37a4722
CR
9569eop end
9570%%Page: 21 27
9571TeXDict begin 21 26 bop 150 -116 a Fu(Chapter)30 b(3:)41
e59452c7
CR
9572b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)390 299
9573y Ft({)581 408 y(local)46 b(var='func1)f(local')581 518
9574y(func2)390 628 y(})390 847 y(func2\(\))390 956 y({)581
95751066 y(echo)i("In)f(func2,)h(var)f(=)i($var")390 1176
9576y(})390 1395 y(var=global)390 1504 y(func1)275 1636 y
9577Fu(The)32 b Ft(unset)g Fu(builtin)g(also)i(acts)g(using)e(the)i(same)f
9578(dynamic)g(scop)s(e:)46 b(if)33 b(a)g(v)-5 b(ariable)34
9579b(is)f(lo)s(cal)h(to)g(the)150 1745 y(curren)m(t)i(scop)s(e,)h
9580Ft(unset)e Fu(will)h(unset)g(it;)j(otherwise)e(the)f(unset)f(will)h
9581(refer)g(to)h(the)f(v)-5 b(ariable)37 b(found)d(in)150
95821855 y(an)m(y)j(calling)h(scop)s(e)f(as)g(describ)s(ed)f(ab)s(o)m(v)m
9583(e.)61 b(If)36 b(a)h(v)-5 b(ariable)38 b(at)f(the)g(curren)m(t)g(lo)s
9584(cal)h(scop)s(e)e(is)h(unset,)h(it)150 1965 y(will)27
9585b(remain)h(so)f(un)m(til)g(it)h(is)f(reset)h(in)f(that)g(scop)s(e)h(or)
9586f(un)m(til)g(the)h(function)e(returns.)39 b(Once)27 b(the)g(function)
9587150 2074 y(returns,)34 b(an)m(y)h(instance)g(of)f(the)g(v)-5
9588b(ariable)35 b(at)g(a)g(previous)e(scop)s(e)i(will)f(b)s(ecome)h
9589(visible.)52 b(If)34 b(the)g(unset)150 2184 y(acts)e(on)f(a)h(v)-5
9590b(ariable)32 b(at)g(a)f(previous)g(scop)s(e,)h(an)m(y)f(instance)h(of)f
9591(a)h(v)-5 b(ariable)32 b(with)f(that)h(name)f(that)h(had)150
95922293 y(b)s(een)e(shado)m(w)m(ed)g(will)h(b)s(ecome)g(visible.)275
95932425 y(F)-8 b(unction)51 b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s
9594(e)e(listed)h(with)f(the)h Ft(-f)f Fu(option)h(to)g(the)g
9595Ft(declare)150 2535 y Fu(\()p Ft(typeset)p Fu(\))43 b(builtin)h
9596(command)g(\(see)h(Section)g(4.2)g([Bash)g(Builtins],)j(page)d(54\).)83
9597b(The)44 b Ft(-F)f Fu(option)150 2644 y(to)e Ft(declare)e
9598Fu(or)i Ft(typeset)e Fu(will)i(list)g(the)g(function)f(names)h(only)g
9599(\(and)f(optionally)i(the)f(source)g(\014le)150 2754
9600y(and)g(line)h(n)m(um)m(b)s(er,)h(if)f(the)g Ft(extdebug)d
9601Fu(shell)j(option)g(is)g(enabled\).)75 b(F)-8 b(unctions)42
9602b(ma)m(y)g(b)s(e)f(exp)s(orted)150 2863 y(so)i(that)g(c)m(hild)g(shell)
9603g(pro)s(cesses)g(\(those)g(created)h(when)e(executing)i(a)f(separate)h
9604(shell)f(in)m(v)m(o)s(cation\))150 2973 y(automatically)34
9605b(ha)m(v)m(e)e(them)e(de\014ned)g(with)g(the)h Ft(-f)f
9606Fu(option)i(to)f(the)g Ft(export)e Fu(builtin)i(\(see)g(Section)h(4.1)
9607150 3083 y([Bourne)e(Shell)h(Builtins],)g(page)g(47\).)275
96083214 y(F)-8 b(unctions)33 b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48
9609b(The)32 b Ft(FUNCNEST)f Fu(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g
9610(to)i(limit)g(the)f(depth)f(of)150 3324 y(the)27 b(function)f(call)i
9611(stac)m(k)h(and)d(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f
9612(in)m(v)m(o)s(cations.)42 b(By)27 b(default,)g(no)g(limit)150
96133433 y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
9614(calls.)150 3668 y Fs(3.4)68 b(Shell)45 b(P)l(arameters)150
96153827 y Fu(A)39 b Fr(parameter)45 b Fu(is)39 b(an)g(en)m(tit)m(y)h(that)
9616f(stores)g(v)-5 b(alues.)66 b(It)39 b(can)g(b)s(e)f(a)h
9617Ft(name)p Fu(,)h(a)f(n)m(um)m(b)s(er,)g(or)g(one)g(of)g(the)150
96183937 y(sp)s(ecial)c(c)m(haracters)h(listed)g(b)s(elo)m(w.)53
9619b(A)35 b Fr(v)-5 b(ariable)41 b Fu(is)34 b(a)h(parameter)h(denoted)e(b)
9620m(y)h(a)g Ft(name)p Fu(.)52 b(A)35 b(v)-5 b(ariable)150
96214047 y(has)41 b(a)h Ft(value)d Fu(and)i(zero)h(or)f(more)g
9622Ft(attributes)p Fu(.)71 b(A)m(ttributes)42 b(are)f(assigned)h(using)f
9623(the)g Ft(declare)150 4156 y Fu(builtin)29 b(command)g(\(see)h(the)g
9624(description)f(of)g(the)h Ft(declare)d Fu(builtin)i(in)g(Section)h(4.2)
9625g([Bash)g(Builtins],)150 4266 y(page)h(54\).)275 4397
9626y(A)d(parameter)h(is)g(set)g(if)f(it)h(has)f(b)s(een)g(assigned)h(a)g
9627(v)-5 b(alue.)40 b(The)28 b(n)m(ull)h(string)f(is)h(a)g(v)-5
9628b(alid)28 b(v)-5 b(alue.)41 b(Once)150 4507 y(a)31 b(v)-5
9629b(ariable)31 b(is)f(set,)i(it)e(ma)m(y)h(b)s(e)f(unset)g(only)h(b)m(y)f
9630(using)g(the)g Ft(unset)f Fu(builtin)h(command.)275 4639
9631y(A)g(v)-5 b(ariable)31 b(ma)m(y)g(b)s(e)f(assigned)g(to)i(b)m(y)e(a)h
9632(statemen)m(t)h(of)e(the)h(form)390 4770 y Fj(name)p
9633Ft(=[)p Fj(value)p Ft(])150 4902 y Fu(If)43 b Fr(v)-5
9634b(alue)49 b Fu(is)43 b(not)h(giv)m(en,)k(the)c(v)-5 b(ariable)44
9635b(is)f(assigned)h(the)f(n)m(ull)h(string.)80 b(All)44
9636b Fr(v)-5 b(alue)5 b Fu(s)43 b(undergo)g(tilde)150 5011
9637y(expansion,)25 b(parameter)f(and)f(v)-5 b(ariable)25
9638b(expansion,)g(command)e(substitution,)i(arithmetic)g(expansion,)150
96395121 y(and)i(quote)i(remo)m(v)-5 b(al)29 b(\(see)g(Section)f(3.5.3)i
9640([Shell)e(P)m(arameter)h(Expansion],)f(page)h(26\).)41
9641b(If)27 b(the)h(v)-5 b(ariable)150 5230 y(has)35 b(its)h
9642Ft(integer)e Fu(attribute)i(set,)i(then)d Fr(v)-5 b(alue)42
9643b Fu(is)35 b(ev)-5 b(aluated)37 b(as)f(an)f(arithmetic)i(expression)f
9644(ev)m(en)g(if)150 5340 y(the)i Ft($\(\(...)n(\)\))f Fu(expansion)g(is)g
9645(not)h(used)e(\(see)j(Section)f(3.5.5)h([Arithmetic)f(Expansion],)h
9646(page)f(34\).)p eop end
9647%%Page: 22 28
9648TeXDict begin 22 27 bop 150 -116 a Fu(Chapter)30 b(3:)41
9649b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(22)150 299
9650y(W)-8 b(ord)26 b(splitting)h(and)e(\014lename)h(expansion)g(are)g(not)
9651h(p)s(erformed.)37 b(Assignmen)m(t)27 b(statemen)m(ts)g(ma)m(y)g(also)
9652150 408 y(app)s(ear)22 b(as)h(argumen)m(ts)g(to)h(the)f
9653Ft(alias)p Fu(,)g Ft(declare)p Fu(,)f Ft(typeset)p Fu(,)h
9654Ft(export)p Fu(,)g Ft(readonly)p Fu(,)f(and)g Ft(local)f
9655Fu(builtin)150 518 y(commands)31 b(\()p Fr(declaration)j
9656Fu(commands\).)44 b(When)32 b(in)f Fm(posix)g Fu(mo)s(de)g(\(see)h
9657(Section)h(6.11)g([Bash)f(POSIX)150 628 y(Mo)s(de],)h(page)f(105\),)i
9658(these)e(builtins)f(ma)m(y)h(app)s(ear)f(in)g(a)h(command)f(after)h
9659(one)g(or)g(more)g(instances)g(of)150 737 y(the)f Ft(command)d
9660Fu(builtin)i(and)g(retain)h(these)f(assignmen)m(t)i(statemen)m(t)g
9661(prop)s(erties.)275 867 y(In)d(the)h(con)m(text)i(where)d(an)h
9662(assignmen)m(t)h(statemen)m(t)h(is)e(assigning)g(a)h(v)-5
9663b(alue)30 b(to)h(a)f(shell)g(v)-5 b(ariable)31 b(or)150
9664977 y(arra)m(y)38 b(index)e(\(see)i(Section)g(6.7)h([Arra)m(ys],)g
9665(page)f(99\),)j(the)c(`)p Ft(+=)p Fu(')g(op)s(erator)g(can)h(b)s(e)e
9666(used)h(to)h(app)s(end)150 1086 y(to)e(or)g(add)e(to)j(the)e(v)-5
9667b(ariable's)36 b(previous)f(v)-5 b(alue.)57 b(This)34
9668b(includes)h(argumen)m(ts)h(to)g(builtin)f(commands)150
96691196 y(suc)m(h)29 b(as)g Ft(declare)e Fu(that)i(accept)h(assignmen)m(t)
9670g(statemen)m(ts)h(\(declaration)f(commands\).)41 b(When)28
9671b(`)p Ft(+=)p Fu(')h(is)150 1305 y(applied)36 b(to)h(a)f(v)-5
9672b(ariable)37 b(for)f(whic)m(h)f(the)i Ft(integer)d Fu(attribute)i(has)g
9673(b)s(een)g(set,)i Fr(v)-5 b(alue)41 b Fu(is)36 b(ev)-5
9674b(aluated)38 b(as)150 1415 y(an)28 b(arithmetic)h(expression)f(and)f
9675(added)h(to)h(the)f(v)-5 b(ariable's)29 b(curren)m(t)e(v)-5
9676b(alue,)30 b(whic)m(h)d(is)i(also)f(ev)-5 b(aluated.)150
96771525 y(When)43 b(`)p Ft(+=)p Fu(')g(is)h(applied)f(to)h(an)f(arra)m(y)h
9678(v)-5 b(ariable)44 b(using)f(comp)s(ound)e(assignmen)m(t)j(\(see)h
9679(Section)f(6.7)150 1634 y([Arra)m(ys],)j(page)e(99\),)j(the)43
9680b(v)-5 b(ariable's)44 b(v)-5 b(alue)44 b(is)g(not)f(unset)g(\(as)h(it)g
9681(is)f(when)g(using)f(`)p Ft(=)p Fu('\),)48 b(and)42 b(new)150
96821744 y(v)-5 b(alues)27 b(are)g(app)s(ended)f(to)h(the)g(arra)m(y)h(b)s
9683(eginning)e(at)h(one)g(greater)i(than)d(the)h(arra)m(y's)h(maxim)m(um)e
9684(index)150 1853 y(\(for)32 b(indexed)g(arra)m(ys\),)i(or)e(added)f(as)i
9685(additional)g(k)m(ey-v)-5 b(alue)34 b(pairs)d(in)h(an)g(asso)s(ciativ)m
9686(e)j(arra)m(y)-8 b(.)47 b(When)150 1963 y(applied)27
9687b(to)h(a)f(string-v)-5 b(alued)28 b(v)-5 b(ariable,)29
9688b Fr(v)-5 b(alue)32 b Fu(is)c(expanded)e(and)h(app)s(ended)e(to)j(the)f
9689(v)-5 b(ariable's)28 b(v)-5 b(alue.)275 2093 y(A)28 b(v)-5
9690b(ariable)28 b(can)h(b)s(e)e(assigned)h(the)h Ft(nameref)d
9691Fu(attribute)i(using)g(the)g Ft(-n)f Fu(option)i(to)g(the)f
9692Ft(declare)e Fu(or)150 2202 y Ft(local)f Fu(builtin)h(commands)g(\(see)
9693i(Section)f(4.2)h([Bash)f(Builtins],)h(page)f(54\))h(to)f(create)i(a)e
9694Fr(nameref)p Fu(,)g(or)g(a)150 2312 y(reference)f(to)g(another)f(v)-5
1a5fa30b
CR
9695b(ariable.)40 b(This)24 b(allo)m(ws)j(v)-5 b(ariables)26
9696b(to)g(b)s(e)e(manipulated)h(indirectly)-8 b(.)40 b(Whenev)m(er)150
e59452c7 96972422 y(the)31 b(nameref)g(v)-5 b(ariable)32 b(is)f(referenced,)g
1a5fa30b 9698(assigned)h(to,)g(unset,)f(or)g(has)f(its)i(attributes)f(mo)s(di\014ed)
e59452c7 9699f(\(other)150 2531 y(than)c(using)g(or)h(c)m(hanging)g(the)g(nameref)f
1a5fa30b 9700(attribute)i(itself)7 b(\),)29 b(the)d(op)s(eration)h(is)g(actually)h
e59452c7 9701(p)s(erformed)d(on)150 2641 y(the)31 b(v)-5 b(ariable)31
1a5fa30b 9702b(sp)s(eci\014ed)f(b)m(y)g(the)h(nameref)f(v)-5 b(ariable's)31
d37a4722 9703b(v)-5 b(alue.)42 b(A)30 b(nameref)g(is)h(commonly)g(used)e(within)150
e59452c7 97042750 y(shell)h(functions)g(to)h(refer)f(to)h(a)f(v)-5
d37a4722 9705b(ariable)31 b(whose)f(name)h(is)f(passed)g(as)g(an)g(argumen)m(t)h(to)
e59452c7 9706g(the)f(function.)150 2860 y(F)-8 b(or)31 b(instance,)g(if)g(a)g(v)-5
d85b4caf 9707b(ariable)31 b(name)f(is)h(passed)e(to)j(a)e(shell)h(function)f(as)h
e59452c7
CR
9708(its)f(\014rst)g(argumen)m(t,)h(running)390 2990 y Ft(declare)46
9709b(-n)h(ref=$1)150 3120 y Fu(inside)30 b(the)g(function)g(creates)h(a)g
9710(nameref)f(v)-5 b(ariable)30 b Ft(ref)g Fu(whose)g(v)-5
9711b(alue)30 b(is)g(the)g(v)-5 b(ariable)31 b(name)f(passed)150
97123229 y(as)c(the)h(\014rst)e(argumen)m(t.)40 b(References)26
9713b(and)g(assignmen)m(ts)h(to)g Ft(ref)p Fu(,)f(and)f(c)m(hanges)i(to)g
9714(its)g(attributes,)h(are)150 3339 y(treated)j(as)f(references,)g
0fcb3344 9715(assignmen)m(ts,)h(and)e(attribute)i(mo)s(di\014cations)f(to)h(the)f(v)
e59452c7
CR
9716-5 b(ariable)30 b(whose)g(name)150 3448 y(w)m(as)h(passed)f(as)g
9717Ft($1)p Fu(.)275 3578 y(If)h(the)g(con)m(trol)i(v)-5
fc35c477
CR
9718b(ariable)32 b(in)g(a)f Ft(for)g Fu(lo)s(op)h(has)f(the)g(nameref)h
9719(attribute,)g(the)g(list)g(of)g(w)m(ords)f(can)h(b)s(e)150
e59452c7 97203688 y(a)h(list)h(of)f(shell)g(v)-5 b(ariables,)34 b(and)e(a)i(name)f
fc35c477 9721(reference)g(will)g(b)s(e)f(established)h(for)g(eac)m(h)h(w)m(ord)e(in)
e59452c7 9722h(the)g(list,)150 3798 y(in)c(turn,)g(when)g(the)h(lo)s(op)g(is)g
fc35c477 9723(executed.)41 b(Arra)m(y)30 b(v)-5 b(ariables)30 b(cannot)h(b)s(e)e
e59452c7 9724(giv)m(en)h(the)g(nameref)g(attribute.)150 3907 y(Ho)m(w)m(ev)m(er,)39
e230f997
CR
9725b(nameref)d(v)-5 b(ariables)36 b(can)g(reference)g(arra)m(y)g(v)-5
9726b(ariables)37 b(and)e(subscripted)f(arra)m(y)i(v)-5 b(ariables.)150
e59452c7 97274017 y(Namerefs)36 b(can)f(b)s(e)g(unset)g(using)g(the)h
e230f997 9728Ft(-n)e Fu(option)i(to)g(the)g Ft(unset)e Fu(builtin)h(\(see)h(Section)
e59452c7 9729g(4.1)h([Bourne)150 4126 y(Shell)43 b(Builtins],)j(page)e(47\).)79
fc527055 9730b(Otherwise,)45 b(if)e Ft(unset)e Fu(is)i(executed)h(with)e(the)h(name)
e59452c7 9731g(of)g(a)g(nameref)150 4236 y(v)-5 b(ariable)31 b(as)g(an)f(argumen)m
fc527055 9732(t,)h(the)g(v)-5 b(ariable)31 b(referenced)f(b)m(y)g(the)h(nameref)f(v)
e59452c7
CR
9733-5 b(ariable)31 b(will)g(b)s(e)f(unset.)150 4426 y Fk(3.4.1)63
9734b(P)m(ositional)41 b(P)m(arameters)150 4573 y Fu(A)28
037a8b7f
CR
9735b Fr(p)s(ositional)h(parameter)35 b Fu(is)28 b(a)g(parameter)g(denoted)
9736g(b)m(y)g(one)g(or)g(more)g(digits,)h(other)g(than)e(the)h(single)150
e59452c7 97374682 y(digit)34 b Ft(0)p Fu(.)48 b(P)m(ositional)36 b(parameters)d(are)
e230f997 9738g(assigned)h(from)e(the)i(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)
e59452c7 9739m(v)m(ok)m(ed,)150 4792 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)
e230f997 9740e(the)h Ft(set)g Fu(builtin)f(command.)67 b(P)m(ositional)41
e59452c7 9741b(parameter)e Ft(N)g Fu(ma)m(y)h(b)s(e)150 4902 y(referenced)34
6e51e0d0
CR
9742b(as)h Ft(${N})p Fu(,)g(or)f(as)h Ft($N)e Fu(when)h Ft(N)g
9743Fu(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
e59452c7 9744b(parameters)d(ma)m(y)150 5011 y(not)j(b)s(e)f(assigned)h(to)g(with)f
6e51e0d0
CR
9745(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Ft(set)g
9746Fu(and)g Ft(shift)f Fu(builtins)h(are)h(used)f(to)150
e59452c7
CR
97475121 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
9748(Builtin)g(Commands],)h(page)f(47\).)68 b(The)39 b(p)s(ositional)150
97495230 y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h
124d67cd 9750(shell)g(function)g(is)g(executed)g(\(see)h(Section)g(3.3)150
e59452c7
CR
97515340 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(19\).)p
9752eop end
9753%%Page: 23 29
9754TeXDict begin 23 28 bop 150 -116 a Fu(Chapter)30 b(3:)41
9755b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(23)275 299
9756y(When)27 b(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
879213c6 9757(than)g(a)g(single)h(digit)g(is)f(expanded,)g(it)h(m)m(ust)150
e59452c7
CR
9758408 y(b)s(e)h(enclosed)h(in)f(braces.)150 596 y Fk(3.4.2)63
9759b(Sp)s(ecial)41 b(P)m(arameters)150 743 y Fu(The)d(shell)g(treats)h
12beeabf
CR
9760(sev)m(eral)g(parameters)f(sp)s(ecially)-8 b(.)65 b(These)38
9761b(parameters)h(ma)m(y)f(only)g(b)s(e)g(referenced;)150
e59452c7
CR
9762853 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
97631000 y Ft(*)432 b Fu(\($*\))38 b(Expands)d(to)i(the)f(p)s(ositional)h
6e51e0d0 9764(parameters,)h(starting)f(from)f(one.)59 b(When)36 b(the)g(ex-)630
e59452c7
CR
97651110 y(pansion)h(is)h(not)g(within)f(double)g(quotes,)j(eac)m(h)f(p)s
9766(ositional)f(parameter)g(expands)f(to)i(a)630 1220 y(separate)23
fc35c477
CR
9767b(w)m(ord.)38 b(In)21 b(con)m(texts)j(where)e(it)g(is)h(p)s(erformed,)f
9768(those)h(w)m(ords)e(are)i(sub)5 b(ject)22 b(to)h(fur-)630
e59452c7 97691329 y(ther)k(w)m(ord)g(splitting)i(and)e(\014lename)g(expansion.)40
fc35c477 9770b(When)27 b(the)h(expansion)f(o)s(ccurs)g(within)630
e59452c7 97711439 y(double)37 b(quotes,)k(it)d(expands)f(to)h(a)g(single)h(w)m(ord)e
fc35c477 9772(with)h(the)f(v)-5 b(alue)39 b(of)f(eac)m(h)g(parameter)630
e59452c7 97731548 y(separated)g(b)m(y)g(the)f(\014rst)g(c)m(haracter)i(of)f(the)g
fc35c477 9774Ft(IFS)f Fu(sp)s(ecial)h(v)-5 b(ariable.)63 b(That)38
e59452c7 9775b(is,)h Ft("$*")e Fu(is)630 1658 y(equiv)-5 b(alen)m(t)39
fc35c477
CR
9776b(to)g Ft("$1)p Fj(c)p Ft($2)p Fj(c)p Ft(...)m(")p Fu(,)h(where)d
9777Fr(c)44 b Fu(is)38 b(the)g(\014rst)g(c)m(haracter)h(of)f(the)g(v)-5
e59452c7 9778b(alue)39 b(of)f(the)630 1767 y Ft(IFS)29 b Fu(v)-5 b(ariable.)41
595e3e69 9779b(If)29 b Ft(IFS)g Fu(is)h(unset,)f(the)h(parameters)g(are)g(separated)
e59452c7 9780g(b)m(y)g(spaces.)41 b(If)29 b Ft(IFS)g Fu(is)630 1877
595e3e69 9781y(n)m(ull,)i(the)f(parameters)h(are)g(joined)f(without)g(in)m(terv)m
e59452c7 9782(ening)i(separators.)150 2025 y Ft(@)432 b Fu(\($@\))43
12beeabf 9783b(Expands)f(to)h(the)g(p)s(ositional)g(parameters,)k(starting)c(from)f
e59452c7 9784(one.)78 b(In)42 b(con)m(texts)630 2134 y(where)35 b(w)m(ord)h
12beeabf 9785(splitting)g(is)g(p)s(erformed,)g(this)g(expands)e(eac)m(h)j(p)s
e59452c7 9786(ositional)g(parameter)f(to)630 2244 y(a)d(separate)h(w)m(ord;)g(if)f
12beeabf 9787(not)g(within)g(double)f(quotes,)j(these)e(w)m(ords)g(are)g(sub)5
e59452c7 9788b(ject)33 b(to)g(w)m(ord)630 2354 y(splitting.)60 b(In)36
12beeabf 9789b(con)m(texts)j(where)d(w)m(ord)g(splitting)h(is)g(not)g(p)s(erformed,)
e59452c7 9790g(this)f(expands)g(to)630 2463 y(a)c(single)h(w)m(ord)e(with)h(eac)m(h)
12beeabf 9791h(p)s(ositional)g(parameter)f(separated)g(b)m(y)g(a)g(space.)46
e59452c7 9792b(When)32 b(the)630 2573 y(expansion)i(o)s(ccurs)h(within)e(double)i
d37a4722 9793(quotes,)h(and)e(w)m(ord)g(splitting)h(is)g(p)s(erformed,)f(eac)m(h)630
e59452c7 97942682 y(parameter)23 b(expands)f(to)i(a)f(separate)h(w)m(ord.)37
fc35c477 9795b(That)23 b(is,)i Ft("$@")c Fu(is)i(equiv)-5 b(alen)m(t)24
e59452c7 9796b(to)g Ft("$1")29 b("$2")630 2792 y(...)o Fu(.)39 b(If)26
fc35c477 9797b(the)g(double-quoted)g(expansion)f(o)s(ccurs)h(within)f(a)h(w)m(ord,)h
e59452c7 9798(the)f(expansion)g(of)g(the)630 2902 y(\014rst)31 b(parameter)h(is)g
fc35c477 9799(joined)f(with)g(the)h(b)s(eginning)f(part)h(of)f(the)h(original)h(w)m
e59452c7 9800(ord,)f(and)f(the)630 3011 y(expansion)25 b(of)g(the)h(last)g
d37a4722 9801(parameter)f(is)h(joined)f(with)g(the)g(last)h(part)f(of)g(the)h
e59452c7 9802(original)g(w)m(ord.)630 3121 y(When)i(there)g(are)g(no)g(p)s
d37a4722 9803(ositional)g(parameters,)h Ft("$@")e Fu(and)g Ft($@)h
e59452c7
CR
9804Fu(expand)f(to)h(nothing)g(\(i.e.,)630 3230 y(they)j(are)f(remo)m(v)m
9805(ed\).)150 3378 y Ft(#)432 b Fu(\($#\))31 b(Expands)e(to)i(the)g(n)m
d37a4722 9806(um)m(b)s(er)e(of)h(p)s(ositional)i(parameters)e(in)g(decimal.)150
e59452c7 98073526 y Ft(?)432 b Fu(\($?\))88 b(Expands)45 b(to)h(the)g(exit)h(status)
d37a4722 9808f(of)g(the)g(most)h(recen)m(tly)g(executed)g(foreground)630
e59452c7 98093635 y(pip)s(eline.)150 3783 y Ft(-)432 b Fu(\($-,)24
d37a4722
CR
9810b(a)e(h)m(yphen.\))37 b(Expands)20 b(to)i(the)f(curren)m(t)h(option)f
9811(\015ags)h(as)f(sp)s(eci\014ed)g(up)s(on)f(in)m(v)m(o)s(cation,)630
e59452c7 98123893 y(b)m(y)38 b(the)h Ft(set)f Fu(builtin)g(command,)j(or)d(those)i
d37a4722 9813(set)f(b)m(y)f(the)h(shell)g(itself)g(\(suc)m(h)g(as)g(the)g
e59452c7
CR
9814Ft(-i)630 4002 y Fu(option\).)150 4150 y Ft($)432 b Fu(\($$\))39
9815b(Expands)c(to)j(the)f(pro)s(cess)g Fm(id)g Fu(of)g(the)g(shell.)61
9816b(In)36 b(a)h(subshell,)h(it)g(expands)e(to)i(the)630
98174260 y(pro)s(cess)30 b Fm(id)g Fu(of)h(the)g(in)m(v)m(oking)g(shell,)g
9818(not)g(the)f(subshell.)150 4407 y Ft(!)432 b Fu(\($!\))51
e230f997
CR
9819b(Expands)32 b(to)i(the)g(pro)s(cess)f Fm(id)h Fu(of)f(the)h(job)f
9820(most)h(recen)m(tly)h(placed)f(in)m(to)g(the)g(bac)m(k-)630
e59452c7 98214517 y(ground,)26 b(whether)g(executed)g(as)h(an)f(async)m(hronous)f
e230f997 9822(command)h(or)g(using)g(the)g Ft(bg)f Fu(builtin)630
e59452c7 98234627 y(\(see)31 b(Section)h(7.2)f([Job)f(Con)m(trol)h(Builtins],)g
fffe80d4 9824(page)h(113\).)150 4774 y Ft(0)432 b Fu(\($0\))46 b(Expands)d(to)i(the)
e230f997 9825g(name)g(of)f(the)h(shell)g(or)f(shell)h(script.)83 b(This)44
e59452c7 9826b(is)g(set)h(at)h(shell)630 4884 y(initialization.)d(If)27
e230f997 9827b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e(a)i(\014le)e(of)h(commands)g
3011048a 9828(\(see)g(Section)h(3.8)g([Shell)630 4994 y(Scripts],)g(page)g(46\),)h
e230f997 9829Ft($0)e Fu(is)h(set)g(to)g(the)f(name)h(of)f(that)h(\014le.)41
e59452c7 9830b(If)28 b(Bash)g(is)h(started)g(with)f(the)630 5103 y
e230f997 9831Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)g
e59452c7
CR
9832(page)f(90\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630
98335213 y(argumen)m(t)g(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i
e230f997 9834(if)f(one)g(is)f(presen)m(t.)42 b(Otherwise,)31 b(it)g(is)f(set)630
e59452c7
CR
98355322 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f
9836(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)p eop end
9837%%Page: 24 30
9838TeXDict begin 24 29 bop 150 -116 a Fu(Chapter)30 b(3:)41
9839b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(24)150 299
9840y Fs(3.5)68 b(Shell)45 b(Expansions)150 458 y Fu(Expansion)27
e230f997
CR
9841b(is)i(p)s(erformed)d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)
9842s(een)f(split)h(in)m(to)i Ft(token)p Fu(s.)38 b(There)28
e59452c7
CR
9843b(are)150 568 y(sev)m(en)j(kinds)e(of)i(expansion)f(p)s(erformed:)225
9844701 y Fq(\017)60 b Fu(brace)31 b(expansion)225 834 y
9845Fq(\017)60 b Fu(tilde)31 b(expansion)225 967 y Fq(\017)60
e230f997 9846b Fu(parameter)31 b(and)f(v)-5 b(ariable)31 b(expansion)225
e59452c7
CR
98471100 y Fq(\017)60 b Fu(command)30 b(substitution)225
98481233 y Fq(\017)60 b Fu(arithmetic)32 b(expansion)225
98491366 y Fq(\017)60 b Fu(w)m(ord)30 b(splitting)225 1499
9850y Fq(\017)60 b Fu(\014lename)31 b(expansion)275 1655
9851y(The)24 b(order)h(of)h(expansions)f(is:)39 b(brace)25
9852b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
9853b(ariable)26 b(ex-)150 1765 y(pansion,)j(arithmetic)i(expansion,)f(and)
9854f(command)g(substitution)g(\(done)g(in)h(a)f(left-to-righ)m(t)k
9855(fashion\);)150 1874 y(w)m(ord)d(splitting;)h(and)f(\014lename)h
9856(expansion.)275 2007 y(On)c(systems)h(that)h(can)g(supp)s(ort)e(it,)i
9857(there)g(is)f(an)g(additional)i(expansion)e(a)m(v)-5
9858b(ailable:)42 b Fr(pro)s(cess)28 b(sub-)150 2117 y(stitution)p
9859Fu(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h(time)h(as)e
9860(tilde,)i(parameter,)f(v)-5 b(ariable,)32 b(and)e(arithmetic)150
98612226 y(expansion)g(and)g(command)g(substitution.)275
98622359 y(After)g(these)h(expansions)f(are)g(p)s(erformed,)f(quote)i(c)m
4d63a619 9863(haracters)h(presen)m(t)e(in)g(the)g(original)i(w)m(ord)e(are)150
e59452c7 98642469 y(remo)m(v)m(ed)h(unless)f(they)h(ha)m(v)m(e)g(b)s(een)f(quoted)g
d37a4722 9865(themselv)m(es)i(\()p Fr(quote)f(remo)m(v)-5 b(al)t Fu(\).)275
e59452c7 98662602 y(Only)31 b(brace)i(expansion,)h(w)m(ord)e(splitting,)i(and)e
e230f997 9867(\014lename)h(expansion)f(can)h(increase)g(the)g(n)m(um)m(b)s(er)150
e59452c7 98682711 y(of)24 b(w)m(ords)g(of)g(the)h(expansion;)h(other)e(expansions)g
e230f997 9869(expand)g(a)g(single)h(w)m(ord)f(to)h(a)f(single)h(w)m(ord.)38
e59452c7 9870b(The)24 b(only)150 2821 y(exceptions)i(to)f(this)g(are)g(the)g
e230f997 9871(expansions)g(of)g Ft("$@")f Fu(and)g Ft($*)g Fu(\(see)i(Section)f
e59452c7
CR
9872(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 2931 y(page)31
9873b(23\),)h(and)e Ft("${)p Fj(name)p Ft([@]}")d Fu(and)i
e230f997 9874Ft(${)p Fj(name)p Ft([*]})f Fu(\(see)j(Section)h(6.7)f([Arra)m(ys],)g
e59452c7 9875(page)g(99\).)275 3064 y(After)41 b(all)i(expansions,)h
e230f997 9876Ft(quote)29 b(removal)40 b Fu(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m
e59452c7
CR
9877(v)-5 b(al],)47 b(page)42 b(37\))h(is)150 3173 y(p)s(erformed.)150
98783369 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150 3516 y
e230f997
CR
9879Fu(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h
9880(arbitrary)f(strings)h(ma)m(y)g(b)s(e)f(generated.)43
e59452c7 9881b(This)30 b(mec)m(h-)150 3626 y(anism)35 b(is)h(similar)f(to)h
e230f997 9882Fr(\014lename)g(expansion)f Fu(\(see)i(Section)f(3.5.8)h([Filename)g
e59452c7 9883(Expansion],)f(page)g(35\),)150 3736 y(but)26 b(the)h(\014lenames)g
e230f997
CR
9884(generated)h(need)f(not)g(exist.)40 b(P)m(atterns)28
9885b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f(form)g(of)150
e59452c7 98863845 y(an)j(optional)h Fr(pream)m(ble)p Fu(,)g(follo)m(w)m(ed)g(b)m(y)f
e230f997 9887(either)g(a)h(series)f(of)g(comma-separated)i(strings)d(or)h(a)h
e59452c7 9888(sequence)150 3955 y(expression)36 b(b)s(et)m(w)m(een)g(a)h(pair)e(of)i
e230f997 9889(braces,)g(follo)m(w)m(ed)h(b)m(y)e(an)g(optional)h Fr(p)s(ostscript)p
e59452c7 9890Fu(.)57 b(The)36 b(pream)m(ble)g(is)150 4064 y(pre\014xed)28
037a8b7f
CR
9891b(to)h(eac)m(h)h(string)f(con)m(tained)h(within)e(the)h(braces,)g(and)g
9892(the)g(p)s(ostscript)f(is)h(then)f(app)s(ended)f(to)150
e59452c7
CR
98934174 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ)
9894m(t.)275 4307 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
37c41ab1 9895b(The)36 b(results)g(of)h(eac)m(h)g(expanded)f(string)g(are)h(not)g
e59452c7
CR
9896(sorted;)150 4416 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
9897(ed.)41 b(F)-8 b(or)31 b(example,)390 4549 y Ft(bash$)46
9898b(echo)h(a{d,c,b}e)390 4659 y(ade)g(ace)g(abe)275 4792
124d67cd 9899y Fu(A)23 b(sequence)g(expression)g(tak)m(es)i(the)e(form)g
6e51e0d0
CR
9900Ft({)p Fj(x)p Ft(..)p Fj(y)p Ft([..)p Fj(incr)p Ft(]})p
9901Fu(,)e(where)i Fr(x)29 b Fu(and)23 b Fr(y)30 b Fu(are)24
e59452c7
CR
9902b(either)g(in)m(tegers)150 4902 y(or)34 b(letters,)i(and)d
9903Fr(incr)p Fu(,)h(an)g(optional)g(incremen)m(t,)i(is)d(an)h(in)m(teger.)
990452 b(When)33 b(in)m(tegers)i(are)f(supplied,)g(the)150
99055011 y(expression)f(expands)f(to)i(eac)m(h)g(n)m(um)m(b)s(er)e(b)s(et)m
9906(w)m(een)i Fr(x)39 b Fu(and)33 b Fr(y)p Fu(,)h(inclusiv)m(e.)50
9907b(Supplied)31 b(in)m(tegers)k(ma)m(y)f(b)s(e)150 5121
9908y(pre\014xed)h(with)h(`)p Ft(0)p Fu(')g(to)h(force)g(eac)m(h)h(term)e
9909(to)h(ha)m(v)m(e)g(the)g(same)g(width.)57 b(When)36 b(either)h
9910Fr(x)42 b Fu(or)37 b Fr(y)43 b Fu(b)s(egins)150 5230
9911y(with)37 b(a)h(zero,)j(the)c(shell)h(attempts)h(to)f(force)g(all)g
9912(generated)h(terms)e(to)i(con)m(tain)g(the)e(same)h(n)m(um)m(b)s(er)150
99135340 y(of)30 b(digits,)h(zero-padding)f(where)f(necessary)-8
9914b(.)41 b(When)30 b(letters)g(are)h(supplied,)d(the)i(expression)g
9915(expands)p eop end
9916%%Page: 25 31
9917TeXDict begin 25 30 bop 150 -116 a Fu(Chapter)30 b(3:)41
9918b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)150 299
9919y(to)34 b(eac)m(h)g(c)m(haracter)h(lexicographically)h(b)s(et)m(w)m
9920(een)e Fr(x)40 b Fu(and)32 b Fr(y)p Fu(,)i(inclusiv)m(e,)i(using)c(the)
9921i(default)f(C)g(lo)s(cale.)150 408 y(Note)f(that)f(b)s(oth)f
9922Fr(x)37 b Fu(and)30 b Fr(y)38 b Fu(m)m(ust)31 b(b)s(e)f(of)h(the)g
9923(same)g(t)m(yp)s(e)g(\(in)m(teger)h(or)f(letter\).)43
9924b(When)30 b(the)h(incremen)m(t)150 518 y(is)e(supplied,)g(it)h(is)f
9925(used)f(as)i(the)f(di\013erence)h(b)s(et)m(w)m(een)g(eac)m(h)g(term.)41
9926b(The)29 b(default)g(incremen)m(t)h(is)f(1)h(or)f(-1)150
9927628 y(as)i(appropriate.)275 764 y(Brace)36 b(expansion)g(is)f(p)s
9928(erformed)f(b)s(efore)h(an)m(y)h(other)g(expansions,)h(and)e(an)m(y)g
9929(c)m(haracters)i(sp)s(ecial)150 873 y(to)32 b(other)g(expansions)g(are)
9930g(preserv)m(ed)f(in)h(the)f(result.)45 b(It)32 b(is)g(strictly)g
9931(textual.)46 b(Bash)32 b(do)s(es)f(not)h(apply)150 983
9932y(an)m(y)27 b(syn)m(tactic)i(in)m(terpretation)g(to)f(the)f(con)m(text)
9933i(of)e(the)g(expansion)g(or)g(the)h(text)g(b)s(et)m(w)m(een)f(the)h
9934(braces.)275 1119 y(A)h(correctly-formed)i(brace)f(expansion)f(m)m(ust)
9935h(con)m(tain)h(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
99361228 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
4d63a619 9937b(alid)33 b(sequence)g(expression.)48 b(An)m(y)33 b(incorrectly)h
e59452c7
CR
9938(formed)150 1338 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
99391474 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
091c6bc4 9940h(with)f(a)g(bac)m(kslash)h(to)g(prev)m(en)m(t)g(its)g(b)s(eing)f
e59452c7 9941(considered)g(part)g(of)h(a)g(brace)150 1583 y(expression.)51
091c6bc4
CR
9942b(T)-8 b(o)34 b(a)m(v)m(oid)i(con\015icts)e(with)g(parameter)g
9943(expansion,)h(the)f(string)g(`)p Ft(${)p Fu(')g(is)g(not)g(considered)
e59452c7 9944150 1693 y(eligible)e(for)e(brace)h(expansion,)f(and)g(inhibits)g
091c6bc4 9945(brace)h(expansion)f(un)m(til)g(the)h(closing)h(`)p Ft(})p
e59452c7 9946Fu('.)275 1829 y(This)e(construct)h(is)g(t)m(ypically)i(used)d(as)h
091c6bc4 9947(shorthand)f(when)g(the)h(common)g(pre\014x)f(of)h(the)g(strings)g(to)
e59452c7
CR
9948150 1939 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m
9949(v)m(e)i(example:)390 2074 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o
9950(ew,)o(dist)o(,bug)o(s})275 2210 y Fu(or)390 2346 y Ft(chown)g(root)h
d37a4722 9951(/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
e59452c7 99522547 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 2694 y
d37a4722 9953Fu(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
e230f997 9954(haracter)h(\(`)p Ft(~)p Fu('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
e59452c7 9955d(to)j(the)f(\014rst)150 2804 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
e230f997 9956(haracters,)h(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g
e59452c7 9957(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 2913 y(If)38
e230f997
CR
9958b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f(are)h
9959(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
e59452c7 99603023 y(follo)m(wing)28 b(the)g(tilde)f(are)h(treated)g(as)f(a)g(p)s
4d63a619 9961(ossible)g Fr(login)h(name)p Fu(.)39 b(If)27 b(this)g(login)h(name)f
e59452c7 9962(is)g(the)g(n)m(ull)g(string,)150 3132 y(the)35 b(tilde)g(is)g
d37a4722
CR
9963(replaced)g(with)f(the)h(v)-5 b(alue)35 b(of)g(the)g
9964Ft(HOME)e Fu(shell)i(v)-5 b(ariable.)54 b(If)34 b Ft(HOME)g
e59452c7 9965Fu(is)h(unset,)g(the)g(home)150 3242 y(directory)e(of)g(the)f(user)g
d37a4722 9966(executing)i(the)e(shell)h(is)f(substituted)g(instead.)47
e59452c7 9967b(Otherwise,)33 b(the)g(tilde-pre\014x)150 3352 y(is)d(replaced)h(with)
d37a4722 9968f(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)
e59452c7 9969e(login)j(name.)275 3487 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
4d63a619
CR
9970Ft(~+)p Fu(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
9971b(ariable)34 b Ft(PWD)d Fu(replaces)j(the)f(tilde-pre\014x.)47
e59452c7 9972b(If)150 3597 y(the)31 b(tilde-pre\014x)f(is)g(`)p Ft(~-)p
4d63a619
CR
9973Fu(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
9974b(ariable)31 b Ft(OLDPWD)p Fu(,)e(if)h(it)h(is)g(set,)g(is)f
e59452c7 9975(substituted.)275 3733 y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the)
4d63a619 9976e(tilde)g(in)g(the)g(tilde-pre\014x)g(consist)g(of)g(a)h(n)m(um)m(b)s
e59452c7 9977(er)d Fr(N)p Fu(,)j(optionally)150 3843 y(pre\014xed)22
4d63a619
CR
9978b(b)m(y)h(a)h(`)p Ft(+)p Fu(')f(or)h(a)f(`)p Ft(-)p Fu(',)j(the)d
9979(tilde-pre\014x)g(is)h(replaced)f(with)g(the)h(corresp)s(onding)e
e59452c7 9980(elemen)m(t)j(from)e(the)150 3952 y(directory)36 b(stac)m(k,)i(as)e(it)
4d63a619
CR
9981g(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)g(the)f
9982Ft(dirs)g Fu(builtin)g(in)m(v)m(ok)m(ed)i(with)e(the)g(c)m(haracters)
e59452c7 9983150 4062 y(follo)m(wing)40 b(tilde)f(in)g(the)f(tilde-pre\014x)h(as)g
4d63a619 9984(an)f(argumen)m(t)h(\(see)h(Section)f(6.8)h([The)e(Directory)i(Stac)m
e59452c7
CR
9985(k],)150 4171 y(page)34 b(101\).)50 b(If)32 b(the)h(tilde-pre\014x,)h
9986(sans)e(the)h(tilde,)i(consists)e(of)g(a)h(n)m(um)m(b)s(er)d(without)i
9987(a)g(leading)h(`)p Ft(+)p Fu(')f(or)150 4281 y(`)p Ft(-)p
9988Fu(',)e(`)p Ft(+)p Fu(')f(is)h(assumed.)275 4417 y(If)e(the)i(login)g
9989(name)g(is)f(in)m(v)-5 b(alid,)31 b(or)g(the)f(tilde)h(expansion)f
124d67cd 9990(fails,)i(the)e(w)m(ord)g(is)h(left)g(unc)m(hanged.)275
e59452c7 99914553 y(Eac)m(h)38 b(v)-5 b(ariable)38 b(assignmen)m(t)h(is)e(c)m(hec)m
124d67cd 9992(k)m(ed)j(for)d(unquoted)g(tilde-pre\014xes)h(immediately)g(follo)m
e59452c7 9993(wing)150 4662 y(a)d(`)p Ft(:)p Fu(')g(or)g(the)g(\014rst)f(`)p
4d63a619
CR
9994Ft(=)p Fu('.)54 b(In)34 b(these)h(cases,)i(tilde)e(expansion)g(is)g
9995(also)h(p)s(erformed.)52 b(Consequen)m(tly)-8 b(,)37
e59452c7 9996b(one)150 4772 y(ma)m(y)29 b(use)e(\014lenames)h(with)g(tildes)g(in)g
879213c6
CR
9997(assignmen)m(ts)g(to)h Ft(PATH)p Fu(,)f Ft(MAILPATH)p
9998Fu(,)e(and)h Ft(CDPATH)p Fu(,)g(and)h(the)g(shell)150
e59452c7 99994882 y(assigns)j(the)f(expanded)g(v)-5 b(alue.)275 5018
879213c6 10000y(The)29 b(follo)m(wing)j(table)g(sho)m(ws)e(ho)m(w)g(Bash)h(treats)g
e59452c7
CR
10001(unquoted)e(tilde-pre\014xes:)150 5179 y Ft(~)432 b Fu(The)30
10002b(v)-5 b(alue)31 b(of)f Ft($HOME)150 5340 y(~/foo)240
10003b($HOME/foo)p eop end
10004%%Page: 26 32
10005TeXDict begin 26 31 bop 150 -116 a Fu(Chapter)30 b(3:)41
10006b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(26)150 299
10007y Ft(~fred/foo)630 408 y Fu(The)30 b(sub)s(directory)f
10008Ft(foo)h Fu(of)g(the)h(home)f(directory)h(of)g(the)f(user)g
10009Ft(fred)150 576 y(~+/foo)192 b($PWD/foo)150 744 y(~-/foo)g
10010(${OLDPWD-'~-'}/foo)150 912 y(~)p Fj(N)384 b Fu(The)30
10011b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p
10012Ft(dirs)g(+)p Fj(N)p Fu(')150 1080 y Ft(~+)p Fj(N)336
879213c6 10013b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m
e59452c7 10014(y)f(`)p Ft(dirs)g(+)p Fj(N)p Fu(')150 1248 y Ft(~-)p
879213c6 10015Fj(N)336 b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m
e59452c7
CR
10016(ed)h(b)m(y)f(`)p Ft(dirs)g(-)p Fj(N)p Fu(')275 1421
10017y(Bash)40 b(also)h(p)s(erforms)e(tilde)h(expansion)g(on)h(w)m(ords)e
10018(satisfying)i(the)f(conditions)h(of)f(v)-5 b(ariable)41
10019b(as-)150 1530 y(signmen)m(ts)f(\(see)h(Section)g(3.4)g([Shell)f(P)m
10020(arameters],)k(page)d(21\))g(when)e(they)h(app)s(ear)f(as)i(argumen)m
10021(ts)150 1640 y(to)c(simple)f(commands.)57 b(Bash)36 b(do)s(es)f(not)h
10022(do)g(this,)i(except)f(for)e(the)h(declaration)i(commands)d(listed)150
100231749 y(ab)s(o)m(v)m(e,)d(when)d(in)h Fm(posix)g Fu(mo)s(de.)150
100241957 y Fk(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)150
100252104 y Fu(The)g(`)p Ft($)p Fu(')h(c)m(haracter)i(in)m(tro)s(duces)d
10026(parameter)h(expansion,)j(command)d(substitution,)i(or)e(arithmetic)150
100272214 y(expansion.)d(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)
10028g(b)s(e)e(expanded)h(ma)m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m
10029(h)150 2323 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g
10030(v)-5 b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
10031(immediately)150 2433 y(follo)m(wing)g(it)f(whic)m(h)f(could)g(b)s(e)g
10032(in)m(terpreted)h(as)f(part)h(of)f(the)h(name.)275 2576
10033y(When)44 b(braces)i(are)f(used,)j(the)e(matc)m(hing)g(ending)f(brace)g
10034(is)g(the)g(\014rst)g(`)p Ft(})p Fu(')g(not)g(escap)s(ed)h(b)m(y)f(a)
10035150 2686 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,)j(and)c
10036(not)i(within)e(an)h(em)m(b)s(edded)f(arithmetic)j(expansion,)150
100372795 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275
100382938 y(The)40 b(basic)i(form)f(of)g(parameter)h(expansion)f(is)h($)p
b52e30b8 10039Fi({)p Fr(parameter)7 b Fi(})p Fu(.)74 b(The)41 b(v)-5
e59452c7 10040b(alue)42 b(of)g Fr(parameter)48 b Fu(is)150 3048 y(substituted.)43
b52e30b8
CR
10041b(The)31 b Fr(parameter)39 b Fu(is)31 b(a)h(shell)f(parameter)h(as)g
10042(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)h([Shell)150
e59452c7
CR
100433157 y(P)m(arameters],)e(page)f(21\))h(or)e(an)g(arra)m(y)h(reference)f
10044(\(see)i(Section)f(6.7)g([Arra)m(ys],)g(page)g(99\).)42
10045b(The)29 b(braces)150 3267 y(are)j(required)g(when)f
d37a4722 10046Fr(parameter)39 b Fu(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
e59452c7 10047(more)g(than)g(one)g(digit,)i(or)e(when)150 3377 y Fr(parameter)37
d37a4722
CR
10048b Fu(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
10049(not)h(to)g(b)s(e)f(in)m(terpreted)g(as)h(part)f(of)h(its)f(name.)275
e59452c7 100503520 y(If)k(the)h(\014rst)f(c)m(haracter)i(of)f Fr(parameter)42
8a0829e9 10051b Fu(is)35 b(an)g(exclamation)i(p)s(oin)m(t)e(\(!\),)i(and)d
e59452c7
CR
10052Fr(parameter)42 b Fu(is)34 b(not)i(a)150 3629 y(nameref,)c(it)f(in)m
10053(tro)s(duces)h(a)f(lev)m(el)i(of)f(indirection.)44 b(Bash)31
10054b(uses)g(the)g(v)-5 b(alue)32 b(formed)f(b)m(y)g(expanding)g(the)150
100553739 y(rest)c(of)f Fr(parameter)33 b Fu(as)27 b(the)g(new)f
10056Fr(parameter)7 b Fu(;)28 b(this)e(is)g(then)g(expanded)g(and)g(that)h
10057(v)-5 b(alue)27 b(is)f(used)g(in)g(the)150 3848 y(rest)33
10058b(of)f(the)h(expansion,)g(rather)g(than)f(the)h(expansion)f(of)h(the)g
10059(original)g Fr(parameter)p Fu(.)48 b(This)32 b(is)g(kno)m(wn)150
100603958 y(as)42 b Ft(indirect)28 b(expansion)p Fu(.)71 b(The)41
10061b(v)-5 b(alue)41 b(is)h(sub)5 b(ject)41 b(to)h(tilde)g(expansion,)i
10062(parameter)e(expansion,)150 4068 y(command)31 b(substitution,)g(and)g
10063(arithmetic)h(expansion.)43 b(If)31 b Fr(parameter)38
10064b Fu(is)32 b(a)f(nameref,)h(this)f(expands)150 4177 y(to)d(the)g(name)g
10065(of)f(the)h(v)-5 b(ariable)28 b(referenced)g(b)m(y)f
10066Fr(parameter)35 b Fu(instead)27 b(of)h(p)s(erforming)e(the)i(complete)h
10067(in-)150 4287 y(direct)e(expansion.)39 b(The)25 b(exceptions)i(to)g
10068(this)f(are)h(the)f(expansions)g(of)g($)p Fi({)p Fu(!)p
10069Fr(pre\014x)6 b Fu(*)p Fi(})28 b Fu(and)d($)p Fi({)p
10070Fu(!)p Fr(name)5 b Fu([@])p Fi(})150 4396 y Fu(describ)s(ed)28
10071b(b)s(elo)m(w.)41 b(The)28 b(exclamation)j(p)s(oin)m(t)f(m)m(ust)f
10072(immediately)h(follo)m(w)g(the)g(left)f(brace)h(in)f(order)f(to)150
100734506 y(in)m(tro)s(duce)i(indirection.)275 4649 y(In)39
10074b(eac)m(h)i(of)g(the)f(cases)h(b)s(elo)m(w,)i Fr(w)m(ord)h
10075Fu(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j(parameter)e
10076(expansion,)150 4759 y(command)30 b(substitution,)g(and)g(arithmetic)i
10077(expansion.)275 4902 y(When)h(not)h(p)s(erforming)e(substring)h
10078(expansion,)h(using)g(the)f(form)h(describ)s(ed)e(b)s(elo)m(w)i
10079(\(e.g.,)i(`)p Ft(:-)p Fu('\),)150 5011 y(Bash)d(tests)h(for)e(a)i
9f178efb 10080(parameter)f(that)h(is)e(unset)h(or)g(n)m(ull.)48 b(Omitting)33
e59452c7 10081b(the)h(colon)f(results)g(in)g(a)g(test)h(only)150 5121
9f178efb
CR
10082y(for)c(a)i(parameter)f(that)g(is)g(unset.)41 b(Put)31
10083b(another)f(w)m(a)m(y)-8 b(,)33 b(if)e(the)f(colon)i(is)f(included,)f
e59452c7 10084(the)h(op)s(erator)g(tests)150 5230 y(for)36 b(b)s(oth)g
879213c6
CR
10085Fr(parameter)7 b Fu('s)37 b(existence)h(and)e(that)i(its)f(v)-5
10086b(alue)37 b(is)g(not)f(n)m(ull;)k(if)d(the)g(colon)h(is)e(omitted,)k
e59452c7
CR
10087(the)150 5340 y(op)s(erator)31 b(tests)g(only)f(for)g(existence.)p
10088eop end
10089%%Page: 27 33
10090TeXDict begin 27 32 bop 150 -116 a Fu(Chapter)30 b(3:)41
10091b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)150 299
10092y Ft(${)p Fj(parameter)p Ft(:)p Fq(\000)p Fj(word)p Ft(})630
10093408 y Fu(If)30 b Fr(parameter)37 b Fu(is)30 b(unset)g(or)h(n)m(ull,)f
10094(the)h(expansion)f(of)g Fr(w)m(ord)k Fu(is)c(substituted.)40
10095b(Otherwise,)630 518 y(the)31 b(v)-5 b(alue)30 b(of)h
10096Fr(parameter)37 b Fu(is)31 b(substituted.)870 661 y Ft($)47
10097b(v=123)870 771 y($)g(echo)g(${v-unset})870 881 y(123)150
100981058 y(${)p Fj(parameter)p Ft(:=)p Fj(word)p Ft(})630
100991167 y Fu(If)33 b Fr(parameter)40 b Fu(is)33 b(unset)f(or)h(n)m(ull,)h
10100(the)f(expansion)g(of)g Fr(w)m(ord)j Fu(is)d(assigned)g(to)h
10101Fr(parameter)p Fu(.)630 1277 y(The)c(v)-5 b(alue)32 b(of)f
595e3e69 10102Fr(parameter)38 b Fu(is)31 b(then)g(substituted.)42 b(P)m(ositional)33
e59452c7
CR
10103b(parameters)e(and)f(sp)s(ecial)630 1386 y(parameters)h(ma)m(y)g(not)f
10104(b)s(e)g(assigned)h(to)g(in)f(this)g(w)m(a)m(y)-8 b(.)870
101051530 y Ft($)47 b(var=)870 1639 y($)g(:)h(${var:=DEFAULT})870
101061749 y($)f(echo)g($var)870 1858 y(DEFAULT)150 2035 y(${)p
10107Fj(parameter)p Ft(:?)p Fj(word)p Ft(})630 2145 y Fu(If)26
10108b Fr(parameter)33 b Fu(is)26 b(n)m(ull)g(or)g(unset,)h(the)f(expansion)
10109g(of)g Fr(w)m(ord)k Fu(\(or)c(a)h(message)g(to)g(that)f(e\013ect)630
101102255 y(if)i Fr(w)m(ord)j Fu(is)d(not)g(presen)m(t\))h(is)f(written)g
10111(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)h(is)f(not)
10112630 2364 y(in)m(teractiv)m(e,)33 b(exits.)42 b(Otherwise,)30
10113b(the)h(v)-5 b(alue)31 b(of)f Fr(parameter)38 b Fu(is)30
10114b(substituted.)870 2508 y Ft($)47 b(var=)870 2617 y($)g(:)h(${var:?var)
10115d(is)i(unset)f(or)i(null})870 2727 y(bash:)e(var:)h(var)g(is)g(unset)f
10116(or)i(null)150 2904 y(${)p Fj(parameter)p Ft(:+)p Fj(word)p
10117Ft(})630 3013 y Fu(If)35 b Fr(parameter)42 b Fu(is)36
10118b(n)m(ull)f(or)h(unset,)g(nothing)g(is)f(substituted,)i(otherwise)e
10119(the)h(expansion)630 3123 y(of)31 b Fr(w)m(ord)i Fu(is)e(substituted.)
10120870 3266 y Ft($)47 b(var=123)870 3376 y($)g(echo)g(${var:+var)e(is)i
10121(set)g(and)g(not)g(null})870 3485 y(var)g(is)g(set)g(and)g(not)g(null)
10122150 3662 y(${)p Fj(parameter)p Ft(:)p Fj(offset)p Ft(})150
101233772 y(${)p Fj(parameter)p Ft(:)p Fj(offset)p Ft(:)p
10124Fj(lengt)o(h)p Ft(})630 3882 y Fu(This)30 b(is)h(referred)f(to)h(as)g
10125(Substring)f(Expansion.)41 b(It)31 b(expands)f(to)h(up)f(to)h
10126Fr(length)g Fu(c)m(harac-)630 3991 y(ters)k(of)g(the)h(v)-5
10127b(alue)35 b(of)g Fr(parameter)42 b Fu(starting)36 b(at)g(the)f(c)m
10128(haracter)i(sp)s(eci\014ed)d(b)m(y)h Fr(o\013set)p Fu(.)55
10129b(If)630 4101 y Fr(parameter)32 b Fu(is)26 b(`)p Ft(@)p
10130Fu(',)g(an)f(indexed)g(arra)m(y)h(subscripted)e(b)m(y)h(`)p
10131Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(or)g(an)f(asso)s(ciativ)m(e)j
10132(ar-)630 4210 y(ra)m(y)g(name,)h(the)f(results)g(di\013er)g(as)g
10133(describ)s(ed)f(b)s(elo)m(w.)40 b(If)28 b Fr(length)g
10134Fu(is)g(omitted,)i(it)f(expands)630 4320 y(to)e(the)g(substring)f(of)g
d37a4722
CR
10135(the)h(v)-5 b(alue)27 b(of)g Fr(parameter)33 b Fu(starting)28
10136b(at)f(the)g(c)m(haracter)h(sp)s(eci\014ed)e(b)m(y)630
e59452c7 101374430 y Fr(o\013set)37 b Fu(and)d(extending)g(to)h(the)f(end)g(of)g(the)
d37a4722 10138g(v)-5 b(alue.)53 b Fr(length)34 b Fu(and)g Fr(o\013set)j
e59452c7
CR
10139Fu(are)e(arithmetic)630 4539 y(expressions)30 b(\(see)h(Section)g(6.5)h
10140([Shell)e(Arithmetic],)i(page)f(97\).)630 4682 y(If)39
d37a4722
CR
10141b Fr(o\013set)k Fu(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m(b)s(er)f
10142(less)h(than)f(zero,)k(the)d(v)-5 b(alue)40 b(is)g(used)e(as)i(an)g
e59452c7 10143(o\013set)630 4792 y(in)33 b(c)m(haracters)i(from)f(the)f(end)g(of)h
d37a4722 10144(the)g(v)-5 b(alue)34 b(of)g Fr(parameter)p Fu(.)51 b(If)33
e59452c7 10145b Fr(length)h Fu(ev)-5 b(aluates)35 b(to)g(a)630 4902
d37a4722
CR
10146y(n)m(um)m(b)s(er)23 b(less)h(than)g(zero,)j(it)d(is)h(in)m(terpreted)f
10147(as)g(an)h(o\013set)g(in)f(c)m(haracters)h(from)f(the)g(end)g(of)630
e59452c7 101485011 y(the)31 b(v)-5 b(alue)31 b(of)g Fr(parameter)38
d37a4722 10149b Fu(rather)30 b(than)h(a)g(n)m(um)m(b)s(er)f(of)g(c)m(haracters,)j
e59452c7 10150(and)d(the)h(expansion)630 5121 y(is)39 b(the)g(c)m(haracters)i(b)s(et)
d37a4722 10151m(w)m(een)f Fr(o\013set)i Fu(and)c(that)i(result.)67
e59452c7 10152b(Note)40 b(that)g(a)g(negativ)m(e)h(o\013set)630 5230
d37a4722
CR
10153y(m)m(ust)27 b(b)s(e)g(separated)g(from)g(the)g(colon)i(b)m(y)e(at)h
10154(least)g(one)f(space)h(to)g(a)m(v)m(oid)h(b)s(eing)e(confused)630
e59452c7
CR
101555340 y(with)j(the)h(`)p Ft(:-)p Fu(')f(expansion.)p eop
10156end
10157%%Page: 28 34
10158TeXDict begin 28 33 bop 150 -116 a Fu(Chapter)30 b(3:)41
10159b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(28)630 299
10160y(Here)43 b(are)g(some)f(examples)h(illustrating)g(substring)f
10161(expansion)g(on)g(parameters)h(and)630 408 y(subscripted)29
10162b(arra)m(ys:)630 628 y Ft($)47 b(string=01234567890abcdefgh)630
10163737 y($)g(echo)g(${string:7})630 847 y(7890abcdefgh)630
10164956 y($)g(echo)g(${string:7:0})630 1176 y($)g(echo)g(${string:7:2})630
101651285 y(78)630 1395 y($)g(echo)g(${string:7:-2})630 1504
10166y(7890abcdef)630 1614 y($)g(echo)g(${string:)e(-7})630
101671724 y(bcdefgh)630 1833 y($)i(echo)g(${string:)e(-7:0})630
101682052 y($)i(echo)g(${string:)e(-7:2})630 2162 y(bc)630
101692271 y($)i(echo)g(${string:)e(-7:-2})630 2381 y(bcdef)630
101702491 y($)i(set)g(--)h(01234567890abcdefgh)630 2600 y($)f(echo)g(${1:7})
10171630 2710 y(7890abcdefgh)630 2819 y($)g(echo)g(${1:7:0})630
101723039 y($)g(echo)g(${1:7:2})630 3148 y(78)630 3258 y($)g(echo)g
10173(${1:7:-2})630 3367 y(7890abcdef)630 3477 y($)g(echo)g(${1:)g(-7})630
101743587 y(bcdefgh)630 3696 y($)g(echo)g(${1:)g(-7:0})630
101753915 y($)g(echo)g(${1:)g(-7:2})630 4025 y(bc)630 4134
10176y($)g(echo)g(${1:)g(-7:-2})630 4244 y(bcdef)630 4354
10177y($)g(array[0]=01234567890abcdef)o(gh)630 4463 y($)g(echo)g
10178(${array[0]:7})630 4573 y(7890abcdefgh)630 4682 y($)g(echo)g
10179(${array[0]:7:0})630 4902 y($)g(echo)g(${array[0]:7:2})630
101805011 y(78)630 5121 y($)g(echo)g(${array[0]:7:-2})630
101815230 y(7890abcdef)630 5340 y($)g(echo)g(${array[0]:)e(-7})p
10182eop end
10183%%Page: 29 35
10184TeXDict begin 29 34 bop 150 -116 a Fu(Chapter)30 b(3:)41
10185b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)630 299
10186y Ft(bcdefgh)630 408 y($)47 b(echo)g(${array[0]:)e(-7:0})630
10187628 y($)i(echo)g(${array[0]:)e(-7:2})630 737 y(bc)630
10188847 y($)i(echo)g(${array[0]:)e(-7:-2})630 956 y(bcdef)630
101891084 y Fu(If)22 b Fr(parameter)30 b Fu(is)23 b(`)p Ft(@)p
b52e30b8 10190Fu(',)i(the)e(result)g(is)g Fr(length)h Fu(p)s(ositional)f(parameters)h
e59452c7 10191(b)s(eginning)e(at)i Fr(o\013set)p Fu(.)630 1194 y(A)36
b52e30b8
CR
10192b(negativ)m(e)j Fr(o\013set)g Fu(is)e(tak)m(en)g(relativ)m(e)i(to)e
10193(one)g(greater)g(than)f(the)h(greatest)h(p)s(ositional)630
e59452c7 101941303 y(parameter,)29 b(so)f(an)g(o\013set)h(of)f(-1)g(ev)-5
b52e30b8 10195b(aluates)30 b(to)e(the)g(last)h(p)s(ositional)g(parameter.)40
e59452c7 10196b(It)28 b(is)g(an)630 1413 y(expansion)i(error)g(if)h
12beeabf 10197Fr(length)f Fu(ev)-5 b(aluates)32 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i
e59452c7 10198(than)f(zero.)630 1541 y(The)i(follo)m(wing)i(examples)f(illustrate)h
12beeabf 10199(substring)d(expansion)i(using)f(p)s(ositional)h(param-)630
e59452c7
CR
102001650 y(eters:)630 1778 y Ft($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f
10201(7)h(8)f(9)h(0)f(a)h(b)f(c)g(d)h(e)f(f)h(g)f(h)630 1888
10202y($)g(echo)g(${@:7})630 1998 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h
10203(g)f(h)630 2107 y($)g(echo)g(${@:7:0})630 2326 y($)g(echo)g(${@:7:2})
10204630 2436 y(7)g(8)630 2545 y($)g(echo)g(${@:7:-2})630
102052655 y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630
102062765 y($)g(echo)g(${@:)g(-7:2})630 2874 y(b)g(c)630 2984
10207y($)g(echo)g(${@:0})630 3093 y(./bash)f(1)i(2)f(3)g(4)h(5)f(6)h(7)f(8)h
10208(9)f(0)h(a)f(b)h(c)f(d)g(e)h(f)f(g)h(h)630 3203 y($)f(echo)g(${@:0:2})
10209630 3313 y(./bash)f(1)630 3422 y($)h(echo)g(${@:)g(-7:0})630
102103660 y Fu(If)36 b Fr(parameter)43 b Fu(is)36 b(an)g(indexed)g(arra)m(y)
1a5fa30b 10211g(name)g(subscripted)f(b)m(y)h(`)p Ft(@)p Fu(')g(or)h(`)p
e59452c7 10212Ft(*)p Fu(',)h(the)e(result)g(is)630 3769 y(the)j Fr(length)g
6e51e0d0
CR
10213Fu(mem)m(b)s(ers)f(of)h(the)f(arra)m(y)i(b)s(eginning)d(with)i
10214Ft(${)p Fj(parameter)p Ft([)p Fj(offset)p Ft(]})p Fu(.)60
e59452c7 10215b(A)630 3879 y(negativ)m(e)33 b Fr(o\013set)g Fu(is)e(tak)m(en)h
6e51e0d0 10216(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f(maxim)m(um)h(index)f
e59452c7 10217(of)h(the)630 3988 y(sp)s(eci\014ed)38 b(arra)m(y)-8
d37a4722
CR
10218b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i Fr(length)f
10219Fu(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
e59452c7 102204098 y(than)30 b(zero.)630 4226 y(These)23 b(examples)i(sho)m(w)e(ho)m
d37a4722 10221(w)h(y)m(ou)g(can)g(use)f(substring)f(expansion)i(with)f(indexed)g
e59452c7
CR
10222(arra)m(ys:)630 4354 y Ft($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)
10223f(8)h(9)f(0)h(a)f(b)g(c)h(d)f(e)h(f)f(g)h(h\))630 4463
10224y($)f(echo)g(${array[@]:7})630 4573 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h
10225(e)f(f)h(g)f(h)630 4682 y($)g(echo)g(${array[@]:7:2})630
102264792 y(7)g(8)630 4902 y($)g(echo)g(${array[@]:)e(-7:2})630
102275011 y(b)i(c)630 5121 y($)g(echo)g(${array[@]:)e(-7:-2})630
102285230 y(bash:)h(-2:)h(substring)f(expression)f(<)i(0)630
102295340 y($)g(echo)g(${array[@]:0})p eop end
10230%%Page: 30 36
10231TeXDict begin 30 35 bop 150 -116 a Fu(Chapter)30 b(3:)41
10232b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(30)630 299
10233y Ft(0)47 b(1)h(2)f(3)h(4)f(5)h(6)f(7)h(8)f(9)h(0)f(a)g(b)h(c)f(d)h(e)f
10234(f)h(g)f(h)630 408 y($)g(echo)g(${array[@]:0:2})630 518
10235y(0)g(1)630 628 y($)g(echo)g(${array[@]:)e(-7:0})630
10236902 y Fu(Substring)25 b(expansion)g(applied)h(to)h(an)f(asso)s(ciativ)m
10237(e)j(arra)m(y)d(pro)s(duces)f(unde\014ned)f(results.)630
102381066 y(Substring)32 b(indexing)i(is)f(zero-based)i(unless)e(the)h(p)s
10239(ositional)g(parameters)g(are)g(used,)g(in)630 1176 y(whic)m(h)29
fc527055
CR
10240b(case)i(the)f(indexing)g(starts)g(at)g(1)g(b)m(y)g(default.)41
10241b(If)29 b Fr(o\013set)k Fu(is)d(0,)g(and)f(the)h(p)s(ositional)630
e59452c7
CR
102421285 y(parameters)h(are)f(used,)g Ft($0)g Fu(is)g(pre\014xed)g(to)h
10243(the)f(list.)150 1504 y Ft(${!)p Fj(prefix)p Ft(*})150
102441614 y(${!)p Fj(prefix)p Ft(@})630 1724 y Fu(Expands)24
879213c6
CR
10245b(to)h(the)g(names)g(of)g(v)-5 b(ariables)26 b(whose)f(names)f(b)s
10246(egin)h(with)f Fr(pre\014x)p Fu(,)i(separated)f(b)m(y)630
e59452c7 102471833 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Ft(IFS)f
879213c6 10248Fu(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Ft(@)p
e59452c7 10249Fu(')g(is)g(used)f(and)h(the)g(expan-)630 1943 y(sion)35
879213c6
CR
10250b(app)s(ears)g(within)f(double)h(quotes,)i(eac)m(h)f(v)-5
10251b(ariable)36 b(name)f(expands)g(to)g(a)h(separate)630
e59452c7
CR
102522052 y(w)m(ord.)150 2271 y Ft(${!)p Fj(name)p Ft([@]})150
102532381 y(${!)p Fj(name)p Ft([*]})630 2491 y Fu(If)26 b
10254Fr(name)32 b Fu(is)27 b(an)f(arra)m(y)h(v)-5 b(ariable,)29
10255b(expands)d(to)h(the)g(list)g(of)g(arra)m(y)g(indices)g(\(k)m(eys\))h
10256(assigned)630 2600 y(in)c Fr(name)p Fu(.)39 b(If)24 b
10257Fr(name)30 b Fu(is)24 b(not)h(an)f(arra)m(y)-8 b(,)27
10258b(expands)c(to)j(0)f(if)f Fr(name)30 b Fu(is)24 b(set)h(and)f(n)m(ull)g
10259(otherwise.)630 2710 y(When)39 b(`)p Ft(@)p Fu(')h(is)f(used)g(and)f
10260(the)i(expansion)f(app)s(ears)g(within)f(double)h(quotes,)k(eac)m(h)d
10261(k)m(ey)630 2819 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150
102623039 y Ft(${#)p Fj(parameter)p Ft(})630 3148 y Fu(The)40
10263b(length)g(in)g(c)m(haracters)i(of)e(the)h(expanded)e(v)-5
10264b(alue)41 b(of)f Fr(parameter)47 b Fu(is)40 b(substituted.)630
102653258 y(If)i Fr(parameter)50 b Fu(is)43 b(`)p Ft(*)p Fu(')g(or)g(`)p
6e51e0d0 10266Ft(@)p Fu(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m
e59452c7 10267(b)s(er)f(of)h(p)s(ositional)630 3367 y(parameters.)i(If)32
6e51e0d0
CR
10268b Fr(parameter)38 b Fu(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m
10269(y)g(`)p Ft(*)p Fu(')h(or)g(`)p Ft(@)p Fu(',)g(the)g(v)-5
e59452c7 10270b(alue)630 3477 y(substituted)30 b(is)h(the)g(n)m(um)m(b)s(er)e(of)i
ad4aef08 10271(elemen)m(ts)i(in)d(the)h(arra)m(y)-8 b(.)43 b(If)30
e59452c7 10272b Fr(parameter)38 b Fu(is)31 b(an)f(indexed)630 3587
091c6bc4
CR
10273y(arra)m(y)37 b(name)g(subscripted)f(b)m(y)h(a)g(negativ)m(e)i(n)m(um)m
10274(b)s(er,)f(that)f(n)m(um)m(b)s(er)f(is)g(in)m(terpreted)i(as)630
e59452c7 102753696 y(relativ)m(e)47 b(to)g(one)e(greater)i(than)e(the)h(maxim)m(um)f
1a5fa30b 10276(index)g(of)g Fr(parameter)p Fu(,)50 b(so)c(negativ)m(e)630
e59452c7 102773806 y(indices)30 b(coun)m(t)h(bac)m(k)g(from)f(the)h(end)e(of)i(the)f
1a5fa30b 10278(arra)m(y)-8 b(,)32 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)630
e59452c7
CR
102793915 y(last)g(elemen)m(t.)150 4134 y Ft(${)p Fj(parameter)p
10280Ft(#)p Fj(word)p Ft(})150 4244 y(${)p Fj(parameter)p
10281Ft(##)p Fj(word)p Ft(})630 4354 y Fu(The)43 b Fr(w)m(ord)k
d37a4722 10282Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h(pattern)g(and)f(matc)m(hed)i
e59452c7 10283(according)f(to)h(the)630 4463 y(rules)31 b(describ)s(ed)g(b)s(elo)m(w)
d37a4722 10284h(\(see)h(Section)g(3.5.8.1)h([P)m(attern)g(Matc)m(hing],)g(page)f
e59452c7 10285(36\).)46 b(If)32 b(the)630 4573 y(pattern)37 b(matc)m(hes)h(the)f(b)s
d37a4722 10286(eginning)f(of)h(the)g(expanded)f(v)-5 b(alue)38 b(of)f
e59452c7 10287Fr(parameter)p Fu(,)i(then)e(the)630 4682 y(result)f(of)h(the)f
d37a4722 10288(expansion)h(is)f(the)h(expanded)e(v)-5 b(alue)37 b(of)g
e59452c7 10289Fr(parameter)43 b Fu(with)36 b(the)h(shortest)630 4792
d37a4722
CR
10290y(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(#)p Fu(')g(case\))h(or)e
10291(the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p
e59452c7 10292Ft(##)p Fu(')g(case\))630 4902 y(deleted.)49 b(If)32
d37a4722 10293b Fr(parameter)40 b Fu(is)33 b(`)p Ft(@)p Fu(')g(or)g(`)p
f602026a 10294Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5 b(al)34 b(op)s(eration)g(is)
e59452c7 10295f(applied)f(to)630 5011 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f
f602026a 10296(turn,)h(and)e(the)h(expansion)g(is)h(the)f(resultan)m(t)h(list.)61
e59452c7 10297b(If)630 5121 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5
f602026a 10298b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
e59452c7 10299Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 5230
f602026a
CR
10300y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m(b)s(er)e(of)h
10301(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g(is)630
e59452c7
CR
103025340 y(the)h(resultan)m(t)g(list.)p eop end
10303%%Page: 31 37
10304TeXDict begin 31 36 bop 150 -116 a Fu(Chapter)30 b(3:)41
10305b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)150 299
10306y Ft(${)p Fj(parameter)p Ft(\045)p Fj(word)p Ft(})150
10307408 y(${)p Fj(parameter)p Ft(\045\045)p Fj(word)p Ft(})630
10308518 y Fu(The)43 b Fr(w)m(ord)k Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h
e230f997 10309(pattern)g(and)f(matc)m(hed)i(according)f(to)h(the)630
e59452c7
CR
10310628 y(rules)f(describ)s(ed)g(b)s(elo)m(w)h(\(see)h(Section)g(3.5.8.1)h
10311([P)m(attern)f(Matc)m(hing],)51 b(page)45 b(36\).)85
10312b(If)630 737 y(the)43 b(pattern)g(matc)m(hes)h(a)g(trailing)g(p)s
e230f997 10313(ortion)e(of)h(the)g(expanded)g(v)-5 b(alue)43 b(of)g
e59452c7 10314Fr(parameter)p Fu(,)630 847 y(then)c(the)g(result)g(of)h(the)f
e230f997 10315(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f Fr(parameter)46
e59452c7 10316b Fu(with)39 b(the)h(shortest)630 956 y(matc)m(hing)31
e230f997
CR
10317b(pattern)e(\(the)h(`)p Ft(\045)p Fu(')g(case\))h(or)e(the)h(longest)h
10318(matc)m(hing)f(pattern)g(\(the)g(`)p Ft(\045\045)p Fu(')g(case\))630
e59452c7 103191066 y(deleted.)49 b(If)32 b Fr(parameter)40 b Fu(is)33
e230f997 10320b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5
e59452c7 10321b(al)34 b(op)s(eration)g(is)f(applied)f(to)630 1176 y(eac)m(h)38
e230f997 10322b(p)s(ositional)g(parameter)g(in)f(turn,)h(and)e(the)h(expansion)g(is)h
e59452c7 10323(the)f(resultan)m(t)h(list.)61 b(If)630 1285 y Fr(parameter)38
e230f997
CR
10324b Fu(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h
10325(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5
e59452c7 10326b(al)630 1395 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m
e230f997 10327(b)s(er)e(of)h(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g
e59452c7 10328(is)630 1504 y(the)h(resultan)m(t)g(list.)150 1677 y
e230f997 10329Ft(${)p Fj(parameter)p Ft(/)p Fj(pattern)p Ft(/)p Fj(stri)o(ng)p
e59452c7
CR
10330Ft(})150 1786 y(${)p Fj(parameter)p Ft(//)p Fj(pattern)p
10331Ft(/)p Fj(str)o(ing)p Ft(})150 1896 y(${)p Fj(parameter)p
10332Ft(/#)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p Ft(})150 2005
10333y(${)p Fj(parameter)p Ft(/\045)p Fj(pattern)p Ft(/)p
10334Fj(str)o(ing)p Ft(})630 2115 y Fu(The)37 b Fr(pattern)g
10335Fu(is)g(expanded)g(to)h(pro)s(duce)e(a)h(pattern)g(just)g(as)h(in)e
10336(\014lename)i(expansion.)630 2225 y Fr(P)m(arameter)46
10337b Fu(is)38 b(expanded)f(and)g(the)i(longest)g(matc)m(h)g(of)f
10338Fr(pattern)g Fu(against)h(its)f(v)-5 b(alue)39 b(is)630
103392334 y(replaced)30 b(with)e Fr(string)p Fu(.)41 b Fr(string)c
10340Fu(undergo)s(es)28 b(tilde)i(expansion,)f(parameter)h(and)e(v)-5
10341b(ariable)630 2444 y(expansion,)25 b(arithmetic)g(expansion,)g(command)
10342e(and)g(pro)s(cess)g(substitution,)i(and)e(quote)630
103432553 y(remo)m(v)-5 b(al.)54 b(The)33 b(matc)m(h)j(is)e(p)s(erformed)f
10344(according)i(to)g(the)f(rules)g(describ)s(ed)f(b)s(elo)m(w)i(\(see)630
103452663 y(Section)c(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(36\).)
10346630 2804 y(In)45 b(the)g(\014rst)g(form)g(ab)s(o)m(v)m(e,)50
10347b(only)c(the)f(\014rst)g(matc)m(h)h(is)f(replaced.)86
10348b(If)45 b(there)h(are)g(t)m(w)m(o)630 2913 y(slashes)28
10349b(separating)g Fr(parameter)35 b Fu(and)27 b Fr(pattern)g
10350Fu(\(the)i(second)e(form)g(ab)s(o)m(v)m(e\),)j(all)f(matc)m(hes)630
103513023 y(of)d Fr(pattern)g Fu(are)g(replaced)g(with)f Fr(string)p
10352Fu(.)40 b(If)25 b Fr(pattern)h Fu(is)f(preceded)h(b)m(y)f(`)p
10353Ft(#)p Fu(')h(\(the)h(third)d(form)630 3133 y(ab)s(o)m(v)m(e\),)32
10354b(it)e(m)m(ust)f(matc)m(h)i(at)f(the)g(b)s(eginning)e(of)i(the)g
10355(expanded)f(v)-5 b(alue)30 b(of)f Fr(parameter)p Fu(.)41
10356b(If)630 3242 y Fr(pattern)28 b Fu(is)g(preceded)g(b)m(y)g(`)p
10357Ft(\045)p Fu(')g(\(the)h(fourth)e(form)h(ab)s(o)m(v)m(e\),)i(it)f(m)m
10358(ust)f(matc)m(h)h(at)g(the)f(end)g(of)630 3352 y(the)i(expanded)e(v)-5
10359b(alue)30 b(of)g Fr(parameter)p Fu(.)41 b(If)28 b(the)i(expansion)f(of)
10360h Fr(string)37 b Fu(is)29 b(n)m(ull,)h(matc)m(hes)h(of)630
103613461 y Fr(pattern)d Fu(are)g(deleted.)41 b(If)28 b Fr(string)35
10362b Fu(is)28 b(n)m(ull,)h(matc)m(hes)g(of)f Fr(pattern)g
10363Fu(are)h(deleted)f(and)g(the)g(`)p Ft(/)p Fu(')630 3571
10364y(follo)m(wing)k Fr(pattern)e Fu(ma)m(y)h(b)s(e)f(omitted.)630
103653712 y(If)f(the)h Ft(patsub_replacement)25 b Fu(shell)30
10366b(option)g(is)f(enabled)h(using)f Ft(shopt)p Fu(,)g(an)m(y)h(unquoted)
3011048a
CR
10367630 3821 y(instances)40 b(of)g(`)p Ft(&)p Fu(')g(in)f
10368Fr(string)48 b Fu(are)40 b(replaced)g(with)g(the)g(matc)m(hing)g(p)s
10369(ortion)g(of)g Fr(pattern)p Fu(.)630 3931 y(This)30 b(is)g(in)m(tended)
10370g(to)h(duplicate)g(a)g(common)g Ft(sed)e Fu(idiom.)630
103714072 y(Quoting)g(an)m(y)f(part)h(of)f Fr(string)36 b
10372Fu(inhibits)28 b(replacemen)m(t)i(in)e(the)g(expansion)h(of)f(the)h
10373(quoted)630 4181 y(p)s(ortion,)j(including)g(replacemen)m(t)h(strings)f
10374(stored)g(in)g(shell)g(v)-5 b(ariables.)46 b(Bac)m(kslash)34
10375b(will)630 4291 y(escap)s(e)k(`)p Ft(&)p Fu(')g(in)f
10376Fr(string)8 b Fu(;)42 b(the)c(bac)m(kslash)g(is)g(remo)m(v)m(ed)g(in)g
10377(order)f(to)h(p)s(ermit)f(a)i(literal)g(`)p Ft(&)p Fu(')630
103784401 y(in)31 b(the)h(replacemen)m(t)h(string.)44 b(Users)32
10379b(should)e(tak)m(e)k(care)e(if)g Fr(string)39 b Fu(is)32
10380b(double-quoted)f(to)630 4510 y(a)m(v)m(oid)37 b(un)m(w)m(an)m(ted)f
10381(in)m(teractions)i(b)s(et)m(w)m(een)e(the)g(bac)m(kslash)h(and)e
10382(double-quoting,)j(since)630 4620 y(bac)m(kslash)31 b(has)f(sp)s(ecial)
10383h(meaning)f(within)g(double)f(quotes.)42 b(P)m(attern)31
10384b(substitution)f(p)s(er-)630 4729 y(forms)e(the)h(c)m(hec)m(k)i(for)d
10385(unquoted)g(`)p Ft(&)p Fu(')h(after)g(expanding)g Fr(string)p
10386Fu(,)g(so)g(users)f(should)g(ensure)630 4839 y(to)33
10387b(prop)s(erly)e(quote)i(an)m(y)f(o)s(ccurrences)g(of)h(`)p
10388Ft(&)p Fu(')f(they)g(w)m(an)m(t)h(to)g(b)s(e)f(tak)m(en)h(literally)h
10389(in)e(the)630 4949 y(replacemen)m(t)k(and)e(ensure)g(an)m(y)h
10390(instances)g(of)g(`)p Ft(&)p Fu(')f(they)h(w)m(an)m(t)g(to)h(b)s(e)e
10391(replaced)h(are)g(un-)630 5058 y(quoted.)630 5199 y(F)-8
10392b(or)31 b(instance,)870 5340 y Ft(var=abcdef)p eop end
e59452c7
CR
10393%%Page: 32 38
10394TeXDict begin 32 37 bop 150 -116 a Fu(Chapter)30 b(3:)41
10395b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(32)870 299
3011048a
CR
10396y Ft(rep='&)46 b(')870 408 y(echo)h(${var/abc/&)d(})870
10397518 y(echo)j("${var/abc/&)d(}")870 628 y(echo)j(${var/abc/$rep})870
10398737 y(echo)g("${var/abc/$rep}")630 867 y Fu(will)31 b(displa)m(y)f
10399(four)g(lines)h(of)f Ft(")p Fu(ab)s(c)g(def)p Ft(")p
10400Fu(,)g(while)870 996 y Ft(var=abcdef)870 1106 y(rep='&)46
10401b(')870 1215 y(echo)h(${var/abc/\\&)d(})870 1325 y(echo)j
10402("${var/abc/\\&)d(}")870 1435 y(echo)j(${var/abc/"&)d("})870
104031544 y(echo)j(${var/abc/"$rep"})630 1674 y Fu(will)34
10404b(displa)m(y)g(four)g(lines)g(of)g Ft(")p Fu(&)f(def)p
10405Ft(")p Fu(.)51 b(Lik)m(e)35 b(the)f(pattern)g(remo)m(v)-5
10406b(al)35 b(op)s(erators,)g(double)630 1783 y(quotes)23
10407b(surrounding)c(the)k(replacemen)m(t)g(string)f(quote)h(the)f(expanded)
10408f(c)m(haracters,)26 b(while)630 1893 y(double)43 b(quotes)i(enclosing)f
10409(the)g(en)m(tire)h(parameter)f(substitution)f(do)h(not,)k(since)c(the)
10410630 2002 y(expansion)e(is)h(p)s(erformed)e(in)h(a)h(con)m(text)h(that)f
10411(do)s(esn't)f(tak)m(e)i(an)m(y)f(enclosing)g(double)630
104122112 y(quotes)31 b(in)m(to)g(accoun)m(t.)630 2242 y(Since)24
10413b(bac)m(kslash)i(can)e(escap)s(e)h(`)p Ft(&)p Fu(',)h(it)f(can)g(also)h
10414(escap)s(e)f(a)f(bac)m(kslash)i(in)e(the)g(replacemen)m(t)630
104152351 y(string.)39 b(This)26 b(means)g(that)h(`)p Ft(\\\\)p
10416Fu(')g(will)f(insert)h(a)f(literal)i(bac)m(kslash)f(in)m(to)h(the)e
10417(replacemen)m(t,)630 2461 y(so)31 b(these)f(t)m(w)m(o)i
10418Ft(echo)d Fu(commands)870 2590 y Ft(var=abcdef)870 2700
10419y(rep='\\\\&xyz')870 2809 y(echo)47 b(${var/abc/\\\\&xyz})870
104202919 y(echo)g(${var/abc/$rep})630 3049 y Fu(will)31 b(b)s(oth)e(output)
10421h(`)p Ft(\\abcxyzdef)p Fu('.)630 3178 y(It)g(should)g(rarely)g(b)s(e)g
10422(necessary)h(to)g(enclose)h(only)e Fr(string)38 b Fu(in)30
10423b(double)g(quotes.)630 3308 y(If)j(the)h Ft(nocasematch)d
10424Fu(shell)i(option)h(\(see)h(the)f(description)f(of)h
10425Ft(shopt)e Fu(in)i(Section)g(4.3.2)630 3417 y([The)23
10426b(Shopt)g(Builtin],)j(page)e(70\))h(is)e(enabled,)i(the)f(matc)m(h)g
10427(is)g(p)s(erformed)e(without)h(regard)630 3527 y(to)31
10428b(the)f(case)h(of)g(alphab)s(etic)f(c)m(haracters.)42
e59452c7 10429b(If)30 b Fr(parameter)37 b Fu(is)30 b(`)p Ft(@)p Fu(')g(or)g(`)p
3011048a 10430Ft(*)p Fu(',)h(the)f(substitution)630 3636 y(op)s(eration)g(is)f
e59452c7 10431(applied)g(to)h(eac)m(h)g(p)s(ositional)g(parameter)g(in)e(turn,)h(and)
3011048a 10432g(the)g(expansion)g(is)630 3746 y(the)i(resultan)m(t)h(list.)45
e59452c7
CR
10433b(If)30 b Fr(parameter)39 b Fu(is)31 b(an)g(arra)m(y)h(v)-5
10434b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
3011048a 10435Ft(*)p Fu(',)630 3856 y(the)e(substitution)g(op)s(eration)h(is)f
e59452c7 10436(applied)g(to)h(eac)m(h)h(mem)m(b)s(er)e(of)g(the)g(arra)m(y)h(in)f
3011048a
CR
10437(turn,)g(and)630 3965 y(the)h(expansion)f(is)g(the)h(resultan)m(t)g
10438(list.)150 4115 y Ft(${)p Fj(parameter)p Ft(^)p Fj(pattern)p
10439Ft(})150 4224 y(${)p Fj(parameter)p Ft(^^)p Fj(pattern)p
10440Ft(})150 4334 y(${)p Fj(parameter)p Ft(,)p Fj(pattern)p
10441Ft(})150 4443 y(${)p Fj(parameter)p Ft(,,)p Fj(pattern)p
10442Ft(})630 4553 y Fu(This)36 b(expansion)g(mo)s(di\014es)g(the)g(case)i
e59452c7 10443(of)f(alphab)s(etic)g(c)m(haracters)h(in)e Fr(parameter)p
3011048a 10444Fu(.)59 b(The)630 4663 y Fr(pattern)33 b Fu(is)g(expanded)e(to)j(pro)s
e59452c7 10445(duce)d(a)j(pattern)e(just)g(as)h(in)g(\014lename)g(expansion.)47
3011048a 10446b(Eac)m(h)630 4772 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
e59452c7 10447b(alue)31 b(of)f Fr(parameter)37 b Fu(is)30 b(tested)h(against)h
3011048a 10448Fr(pattern)p Fu(,)e(and,)g(if)630 4882 y(it)j(matc)m(hes)h(the)g
091c6bc4 10449(pattern,)f(its)h(case)g(is)f(con)m(v)m(erted.)49 b(The)33
3011048a
CR
10450b(pattern)g(should)f(not)h(attempt)630 4991 y(to)e(matc)m(h)g(more)g
10451(than)f(one)h(c)m(haracter.)630 5121 y(The)f(`)p Ft(^)p
e59452c7
CR
10452Fu(')g(op)s(erator)g(con)m(v)m(erts)i(lo)m(w)m(ercase)g(letters)g(matc)
10453m(hing)f Fr(pattern)f Fu(to)h(upp)s(ercase;)f(the)630
3011048a 104545230 y(`)p Ft(,)p Fu(')25 b(op)s(erator)f(con)m(v)m(erts)i(matc)m(hing)
e59452c7 10455g(upp)s(ercase)d(letters)j(to)f(lo)m(w)m(ercase.)41 b(The)24
3011048a 10456b(`)p Ft(^^)p Fu(')g(and)g(`)p Ft(,,)p Fu(')630 5340
e59452c7
CR
10457y(expansions)31 b(con)m(v)m(ert)i(eac)m(h)g(matc)m(hed)f(c)m(haracter)h
10458(in)e(the)h(expanded)f(v)-5 b(alue;)32 b(the)g(`)p Ft(^)p
3011048a
CR
10459Fu(')g(and)p eop end
10460%%Page: 33 39
10461TeXDict begin 33 38 bop 150 -116 a Fu(Chapter)30 b(3:)41
10462b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)630 299
10463y(`)p Ft(,)p Fu(')24 b(expansions)f(matc)m(h)i(and)e(con)m(v)m(ert)j
10464(only)d(the)h(\014rst)f(c)m(haracter)j(in)d(the)h(expanded)f(v)-5
10465b(alue.)630 408 y(If)30 b Fr(pattern)g Fu(is)h(omitted,)g(it)g(is)g
10466(treated)g(lik)m(e)h(a)f(`)p Ft(?)p Fu(',)f(whic)m(h)g(matc)m(hes)i(ev)
10467m(ery)f(c)m(haracter.)630 539 y(If)23 b Fr(parameter)31
10468b Fu(is)24 b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(case)h(mo)
10469s(di\014cation)f(op)s(eration)g(is)g(applied)g(to)g(eac)m(h)h(p)s(osi-)
10470630 649 y(tional)h(parameter)e(in)h(turn,)f(and)g(the)h(expansion)f(is)
10471g(the)h(resultan)m(t)g(list.)40 b(If)23 b Fr(parameter)32
10472b Fu(is)630 758 y(an)e(arra)m(y)g(v)-5 b(ariable)31 b(subscripted)d
10473(with)i(`)p Ft(@)p Fu(')g(or)f(`)p Ft(*)p Fu(',)i(the)f(case)g(mo)s
10474(di\014cation)h(op)s(eration)f(is)630 868 y(applied)d(to)g(eac)m(h)h
10475(mem)m(b)s(er)e(of)h(the)g(arra)m(y)g(in)g(turn,)g(and)f(the)h
10476(expansion)f(is)h(the)g(resultan)m(t)630 977 y(list.)150
104771129 y Ft(${)p Fj(parameter)p Ft(@)p Fj(operator)p Ft(})630
104781239 y Fu(The)h(expansion)h(is)f(either)h(a)g(transformation)g(of)g
10479(the)g(v)-5 b(alue)29 b(of)g Fr(parameter)35 b Fu(or)29
10480b(informa-)630 1348 y(tion)e(ab)s(out)f Fr(parameter)33
e59452c7
CR
10481b Fu(itself,)28 b(dep)s(ending)c(on)i(the)h(v)-5 b(alue)26
10482b(of)h Fr(op)s(erator)p Fu(.)39 b(Eac)m(h)27 b Fr(op)s(erator)630
3011048a 104831458 y Fu(is)j(a)h(single)g(letter:)630 1610 y Ft(U)432
e59452c7
CR
10484b Fu(The)31 b(expansion)g(is)g(a)g(string)h(that)f(is)h(the)f(v)-5
10485b(alue)32 b(of)f Fr(parameter)38 b Fu(with)31 b(lo)m(w-)1110
3011048a
CR
104861719 y(ercase)g(alphab)s(etic)g(c)m(haracters)h(con)m(v)m(erted)g(to)f
10487(upp)s(ercase.)630 1871 y Ft(u)432 b Fu(The)34 b(expansion)g(is)g(a)h
10488(string)f(that)h(is)g(the)f(v)-5 b(alue)35 b(of)f Fr(parameter)42
10489b Fu(with)34 b(the)1110 1981 y(\014rst)c(c)m(haracter)i(con)m(v)m
10490(erted)f(to)h(upp)s(ercase,)d(if)i(it)g(is)f(alphab)s(etic.)630
104912132 y Ft(L)432 b Fu(The)33 b(expansion)h(is)g(a)g(string)g(that)h(is)f
10492(the)g(v)-5 b(alue)34 b(of)g Fr(parameter)41 b Fu(with)34
10493b(up-)1110 2242 y(p)s(ercase)c(alphab)s(etic)h(c)m(haracters)h(con)m(v)
10494m(erted)g(to)f(lo)m(w)m(ercase.)630 2394 y Ft(Q)432 b
10495Fu(The)30 b(expansion)h(is)g(a)g(string)f(that)i(is)f(the)g(v)-5
d37a4722 10496b(alue)31 b(of)g Fr(parameter)37 b Fu(quoted)31 b(in)1110
3011048a
CR
104972503 y(a)g(format)f(that)h(can)g(b)s(e)f(reused)f(as)i(input.)630
104982655 y Ft(E)432 b Fu(The)27 b(expansion)g(is)g(a)g(string)h(that)f(is)h
d37a4722 10499(the)f(v)-5 b(alue)28 b(of)f Fr(parameter)34 b Fu(with)27
3011048a 10500b(bac)m(k-)1110 2765 y(slash)e(escap)s(e)h(sequences)f(expanded)g(as)g
d37a4722 10501(with)g(the)h Ft($'...)o(')e Fu(quoting)i(mec)m(h-)1110
3011048a 105022874 y(anism.)630 3026 y Ft(P)432 b Fu(The)22 b(expansion)h(is)g(a)g
e59452c7 10503(string)g(that)g(is)g(the)g(result)g(of)g(expanding)f(the)h(v)-5
3011048a 10504b(alue)24 b(of)1110 3136 y Fr(parameter)31 b Fu(as)24
e59452c7 10505b(if)f(it)h(w)m(ere)g(a)g(prompt)f(string)h(\(see)g(Section)h(6.9)g
3011048a
CR
10506([Con)m(trolling)1110 3245 y(the)31 b(Prompt],)f(page)h(103\).)630
105073397 y Ft(A)432 b Fu(The)24 b(expansion)g(is)g(a)h(string)f(in)g(the)g
e59452c7 10508(form)g(of)h(an)f(assignmen)m(t)h(statemen)m(t)h(or)1110
3011048a
CR
105093506 y Ft(declare)h Fu(command)i(that,)h(if)f(ev)-5 b(aluated,)31
10510b(will)e(recreate)i Fr(parameter)36 b Fu(with)1110 3616
10511y(its)31 b(attributes)g(and)e(v)-5 b(alue.)630 3768 y
e59452c7
CR
10512Ft(K)432 b Fu(Pro)s(duces)33 b(a)i(p)s(ossibly-quoted)e(v)m(ersion)i
10513(of)f(the)h(v)-5 b(alue)34 b(of)h Fr(parameter)p Fu(,)g(ex-)1110
3011048a 105143877 y(cept)46 b(that)h(it)f(prin)m(ts)f(the)h(v)-5 b(alues)47
e59452c7 10515b(of)f(indexed)f(and)g(asso)s(ciativ)m(e)k(arra)m(ys)1110
3011048a 105163987 y(as)37 b(a)g(sequence)f(of)h(quoted)g(k)m(ey-v)-5
e59452c7 10517b(alue)38 b(pairs)e(\(see)h(Section)h(6.7)f([Arra)m(ys],)1110
3011048a 105184097 y(page)31 b(99\).)630 4248 y Ft(a)432 b Fu(The)30
e59452c7 10519b(expansion)g(is)g(a)h(string)f(consisting)h(of)g(\015ag)g(v)-5
3011048a
CR
10520b(alues)30 b(represen)m(ting)h Fr(pa-)1110 4358 y(rameter)7
10521b Fu('s)31 b(attributes.)630 4510 y Ft(k)432 b Fu(Lik)m(e)29
e59452c7 10522b(the)g(`)p Ft(K)p Fu(')g(transformation,)g(but)f(expands)g(the)g(k)m
3011048a 10523(eys)i(and)d(v)-5 b(alues)29 b(of)g(in-)1110 4619 y(dexed)c(and)f(asso)
e59452c7 10524s(ciativ)m(e)k(arra)m(ys)d(to)h(separate)f(w)m(ords)g(after)g(w)m(ord)g
3011048a 10525(splitting.)630 4771 y(If)k Fr(parameter)37 b Fu(is)30
e59452c7
CR
10526b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)g(the)g(op)s(eration)g(is)g
10527(applied)f(to)i(eac)m(h)g(p)s(ositional)f(parameter)630
3011048a 105284881 y(in)24 b(turn,)g(and)f(the)h(expansion)g(is)g(the)g(resultan)m(t)
e59452c7 10529h(list.)39 b(If)23 b Fr(parameter)31 b Fu(is)24 b(an)g(arra)m(y)g(v)-5
3011048a 10530b(ariable)630 4990 y(subscripted)24 b(with)h(`)p Ft(@)p
e59452c7 10531Fu(')h(or)g(`)p Ft(*)p Fu(',)h(the)e(op)s(eration)h(is)g(applied)f(to)h
3011048a 10532(eac)m(h)h(mem)m(b)s(er)e(of)h(the)f(arra)m(y)630 5100
e59452c7 10533y(in)30 b(turn,)g(and)f(the)i(expansion)f(is)h(the)f(resultan)m(t)h
3011048a 10534(list.)630 5230 y(The)c(result)h(of)g(the)f(expansion)h(is)g(sub)5
e59452c7 10535b(ject)27 b(to)h(w)m(ord)g(splitting)g(and)f(\014lename)h(expansion)630
3011048a
CR
105365340 y(as)j(describ)s(ed)e(b)s(elo)m(w.)p eop end
10537%%Page: 34 40
10538TeXDict begin 34 39 bop 150 -116 a Fu(Chapter)30 b(3:)41
10539b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(34)150 299
10540y Fk(3.5.4)63 b(Command)41 b(Substitution)150 446 y Fu(Command)f
10541(substitution)h(allo)m(ws)i(the)e(output)g(of)h(a)f(command)g(to)h
10542(replace)g(the)g(command)f(itself.)150 555 y(Command)29
10543b(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)g(enclosed)h(as)g
10544(follo)m(ws:)390 691 y Ft($\()p Fj(command)p Ft(\))150
10545827 y Fu(or)390 962 y Ft(`)p Fj(command)p Ft(`)150 1098
10546y Fu(Bash)20 b(p)s(erforms)f(the)i(expansion)f(b)m(y)g(executing)i
091c6bc4 10547Fr(command)h Fu(in)d(a)h(subshell)e(en)m(vironmen)m(t)i(and)f
3011048a 10548(replacing)150 1207 y(the)40 b(command)g(substitution)f(with)h(the)g
091c6bc4 10549(standard)f(output)g(of)h(the)g(command,)i(with)e(an)m(y)g(trailing)150
3011048a 105501317 y(newlines)e(deleted.)64 b(Em)m(b)s(edded)37 b(newlines)h(are)g
091c6bc4 10551(not)g(deleted,)j(but)d(they)g(ma)m(y)h(b)s(e)e(remo)m(v)m(ed)i(during)
3011048a 10552150 1427 y(w)m(ord)30 b(splitting.)42 b(The)30 b(command)g
091c6bc4 10553(substitution)h Ft($\(cat)e Fj(file)p Ft(\))g Fu(can)h(b)s(e)g
3011048a
CR
10554(replaced)h(b)m(y)g(the)f(equiv)-5 b(alen)m(t)150 1536
10555y(but)30 b(faster)g Ft($\(<)g Fj(file)p Ft(\))p Fu(.)275
105561672 y(When)j(the)i(old-st)m(yle)h(bac)m(kquote)f(form)f(of)g
091c6bc4 10557(substitution)g(is)g(used,)h(bac)m(kslash)f(retains)h(its)f(literal)150
3011048a 105581781 y(meaning)k(except)h(when)e(follo)m(w)m(ed)j(b)m(y)e(`)p
091c6bc4
CR
10559Ft($)p Fu(',)j(`)p Ft(`)p Fu(',)f(or)e(`)p Ft(\\)p Fu('.)64
10560b(The)38 b(\014rst)f(bac)m(kquote)j(not)e(preceded)g(b)m(y)g(a)150
3011048a 105611891 y(bac)m(kslash)k(terminates)f(the)h(command)e(substitution.)72
091c6bc4 10562b(When)41 b(using)f(the)i Ft($\()p Fj(command)p Ft(\))c
3011048a
CR
10563Fu(form,)43 b(all)150 2000 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)
10564f(paren)m(theses)h(mak)m(e)g(up)f(the)g(command;)h(none)f(are)h
10565(treated)g(sp)s(ecially)-8 b(.)275 2136 y(Command)22
10566b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39 b(T)-8
10567b(o)23 b(nest)g(when)f(using)h(the)g(bac)m(kquoted)h(form,)g(escap)s(e)
10568150 2246 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m(kslashes.)275
105692381 y(If)e(the)i(substitution)e(app)s(ears)h(within)g(double)f
10570(quotes,)i(w)m(ord)f(splitting)h(and)f(\014lename)g(expansion)150
105712491 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150
105722691 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150 2838
10573y Fu(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5
fc527055 10574b(aluation)26 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g
3011048a
CR
10575(substitution)150 2948 y(of)31 b(the)f(result.)41 b(The)30
10576b(format)g(for)g(arithmetic)i(expansion)e(is:)390 3083
10577y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 3219 y Fu(The)34
e59452c7 10578b Fr(expression)h Fu(undergo)s(es)f(the)h(same)h(expansions)e(as)i(if)f
3011048a 10579(it)g(w)m(ere)h(within)e(double)h(quotes,)i(but)150 3328
e59452c7
CR
10580y(double)g(quote)g(c)m(haracters)i(in)d Fr(expression)h
10581Fu(are)g(not)g(treated)h(sp)s(ecially)g(and)f(are)g(remo)m(v)m(ed.)61
3011048a 10582b(All)38 b(to-)150 3438 y(k)m(ens)c(in)f(the)h(expression)f(undergo)g
e59452c7 10583(parameter)h(and)f(v)-5 b(ariable)34 b(expansion,)h(command)e
3011048a 10584(substitution,)150 3548 y(and)41 b(quote)i(remo)m(v)-5
e59452c7 10585b(al.)76 b(The)41 b(result)h(is)g(treated)h(as)f(the)g(arithmetic)h
3011048a 10586(expression)f(to)g(b)s(e)f(ev)-5 b(aluated.)150 3657
e59452c7 10587y(Arithmetic)31 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)275
3011048a 105883793 y(The)k(ev)-5 b(aluation)37 b(is)f(p)s(erformed)e(according)i(to)g
e59452c7 10589(the)g(rules)f(listed)h(b)s(elo)m(w)g(\(see)g(Section)g(6.5)h([Shell)
3011048a 10590150 3902 y(Arithmetic],)32 b(page)f(97\).)42 b(If)30
e59452c7 10591b(the)h(expression)f(is)g(in)m(v)-5 b(alid,)32 b(Bash)e(prin)m(ts)g(a)h
3011048a
CR
10592(message)g(indicating)h(failure)150 4012 y(to)f(the)g(standard)e(error)
10593h(and)g(no)g(substitution)g(o)s(ccurs.)150 4212 y Fk(3.5.6)63
10594b(Pro)s(cess)42 b(Substitution)150 4359 y Fu(Pro)s(cess)33
e59452c7
CR
10595b(substitution)g(allo)m(ws)i(a)e(pro)s(cess's)g(input)f(or)h(output)g
10596(to)h(b)s(e)f(referred)f(to)i(using)f(a)g(\014lename.)150
3011048a
CR
105974469 y(It)d(tak)m(es)i(the)f(form)f(of)390 4604 y Ft(<\()p
10598Fj(list)p Ft(\))150 4740 y Fu(or)390 4876 y Ft(>\()p
10599Fj(list)p Ft(\))150 5011 y Fu(The)e(pro)s(cess)h Fr(list)j
e59452c7
CR
10600Fu(is)d(run)e(async)m(hronously)-8 b(,)30 b(and)e(its)i(input)e(or)h
10601(output)f(app)s(ears)h(as)g(a)g(\014lename.)41 b(This)150
3011048a 106025121 y(\014lename)25 b(is)g(passed)g(as)g(an)g(argumen)m(t)h(to)g(the)f
e59452c7 10603(curren)m(t)g(command)g(as)g(the)g(result)g(of)g(the)h(expansion.)38
3011048a 10604b(If)150 5230 y(the)28 b Ft(>\()p Fj(list)p Ft(\))d Fu(form)i(is)g
e59452c7
CR
10605(used,)h(writing)f(to)h(the)g(\014le)f(will)h(pro)m(vide)g(input)e(for)
10606h Fr(list)p Fu(.)41 b(If)26 b(the)i Ft(<\()p Fj(list)p
3011048a 10607Ft(\))d Fu(form)150 5340 y(is)g(used,)g(the)f(\014le)h(passed)f(as)h
e59452c7 10608(an)f(argumen)m(t)h(should)e(b)s(e)h(read)h(to)g(obtain)g(the)f(output)
3011048a
CR
10609g(of)h Fr(list)p Fu(.)40 b(Note)25 b(that)p eop end
10610%%Page: 35 41
10611TeXDict begin 35 40 bop 150 -116 a Fu(Chapter)30 b(3:)41
10612b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)150 299
10613y(no)33 b(space)g(ma)m(y)g(app)s(ear)f(b)s(et)m(w)m(een)i(the)f
e59452c7 10614Ft(<)f Fu(or)h Ft(>)f Fu(and)g(the)h(left)h(paren)m(thesis,)f
3011048a 10615(otherwise)h(the)f(construct)150 408 y(w)m(ould)j(b)s(e)g(in)m
e59452c7 10616(terpreted)g(as)h(a)f(redirection.)59 b(Pro)s(cess)36
d37a4722 10617b(substitution)g(is)h(supp)s(orted)d(on)i(systems)g(that)150
3011048a 10618518 y(supp)s(ort)29 b(named)h(pip)s(es)f(\()p Fm(fif)n(o)p
d37a4722 10619Fu(s\))h(or)h(the)f Ft(/dev/fd)f Fu(metho)s(d)h(of)g(naming)g(op)s(en)g
3011048a 10620(\014les.)275 647 y(When)36 b(a)m(v)-5 b(ailable,)40
d37a4722 10621b(pro)s(cess)c(substitution)h(is)f(p)s(erformed)f(sim)m(ultaneously)i
3011048a
CR
10622(with)g(parameter)g(and)150 757 y(v)-5 b(ariable)31 b(expansion,)g
10623(command)f(substitution,)g(and)g(arithmetic)i(expansion.)150
10624945 y Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150 1092
10625y Fu(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
f602026a 10626(expansion,)g(command)g(substitution,)g(and)f(arithmetic)150
3011048a
CR
106271201 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h
10628(quotes)h(for)f(w)m(ord)g(splitting.)275 1330 y(The)e(shell)g(treats)i
6e51e0d0 10629(eac)m(h)g(c)m(haracter)g(of)f Ft($IFS)e Fu(as)i(a)g(delimiter,)h(and)e
3011048a 10630(splits)g(the)h(results)f(of)h(the)g(other)150 1440 y(expansions)22
1101193a 10631b(in)m(to)i(w)m(ords)e(using)h(these)g(c)m(haracters)h(as)f(\014eld)f
6e51e0d0 10632(terminators.)39 b(If)22 b Ft(IFS)g Fu(is)h(unset,)h(or)e(its)h(v)-5
3011048a 10633b(alue)150 1549 y(is)36 b(exactly)j Ft(<space><tab><newline>)p
6e51e0d0 10634Fu(,)32 b(the)37 b(default,)h(then)e(sequences)h(of)67
3011048a 10635b Ft(<space>)p Fu(,)36 b Ft(<tab>)p Fu(,)h(and)150 1659
6e51e0d0 10636y Ft(<newline>)28 b Fu(at)k(the)f(b)s(eginning)f(and)h(end)f(of)h(the)g
e230f997 10637(results)g(of)g(the)g(previous)g(expansions)f(are)i(ignored,)150
3011048a 106381769 y(and)k(an)m(y)h(sequence)h(of)f Ft(IFS)f Fu(c)m(haracters)i(not)f
1101193a 10639(at)h(the)f(b)s(eginning)f(or)h(end)f(serv)m(es)h(to)h(delimit)f(w)m
3011048a
CR
10640(ords.)150 1878 y(If)43 b Ft(IFS)f Fu(has)h(a)h(v)-5
10641b(alue)43 b(other)h(than)f(the)g(default,)k(then)c(sequences)h(of)f
10642(the)h(whitespace)f(c)m(haracters)150 1988 y Ft(space)p
10643Fu(,)29 b Ft(tab)p Fu(,)h(and)g Ft(newline)e Fu(are)j(ignored)g(at)g
10644(the)f(b)s(eginning)g(and)g(end)g(of)g(the)h(w)m(ord,)f(as)h(long)g(as)
10645g(the)150 2097 y(whitespace)c(c)m(haracter)h(is)f(in)f(the)g(v)-5
967625cd 10646b(alue)27 b(of)g Ft(IFS)e Fu(\(an)i Ft(IFS)e Fu(whitespace)i(c)m
3011048a 10647(haracter\).)42 b(An)m(y)26 b(c)m(haracter)i(in)150 2207
967625cd
CR
10648y Ft(IFS)c Fu(that)h(is)g(not)f Ft(IFS)g Fu(whitespace,)j(along)f(with)
10649e(an)m(y)h(adjacen)m(t)h Ft(IFS)e Fu(whitespace)h(c)m(haracters,)i
3011048a 10650(delimits)150 2317 y(a)k(\014eld.)40 b(A)31 b(sequence)g(of)f
967625cd 10651Ft(IFS)g Fu(whitespace)h(c)m(haracters)h(is)e(also)h(treated)h(as)f(a)f
3011048a 10652(delimiter.)42 b(If)30 b(the)g(v)-5 b(alue)150 2426 y(of)31
b52e30b8 10653b Ft(IFS)e Fu(is)h(n)m(ull,)h(no)f(w)m(ord)g(splitting)h(o)s(ccurs.)275
3011048a 106542555 y(Explicit)21 b(n)m(ull)g(argumen)m(ts)g(\()p Ft("")g
037a8b7f 10655Fu(or)g Ft('')p Fu(\))f(are)h(retained)h(and)e(passed)g(to)i(commands)e
3011048a 10656(as)i(empt)m(y)f(strings.)150 2665 y(Unquoted)37 b(implicit)i(n)m(ull)f
037a8b7f 10657(argumen)m(ts,)i(resulting)d(from)g(the)h(expansion)g(of)g(parameters)f
3011048a 10658(that)i(ha)m(v)m(e)150 2774 y(no)32 b(v)-5 b(alues,)33
037a8b7f
CR
10659b(are)f(remo)m(v)m(ed.)47 b(If)32 b(a)g(parameter)h(with)e(no)h(v)-5
10660b(alue)33 b(is)f(expanded)f(within)h(double)f(quotes,)j(a)150
3011048a 106612884 y(n)m(ull)c(argumen)m(t)g(results)g(and)f(is)h(retained)g(and)f
037a8b7f 10662(passed)g(to)i(a)f(command)g(as)g(an)f(empt)m(y)i(string.)40
3011048a 10663b(When)150 2993 y(a)f(quoted)f(n)m(ull)g(argumen)m(t)h(app)s(ears)e(as)
b52e30b8 10664i(part)f(of)g(a)g(w)m(ord)g(whose)g(expansion)g(is)h(non-n)m(ull,)h
3011048a 10665(the)e(n)m(ull)150 3103 y(argumen)m(t)i(is)f(remo)m(v)m(ed.)69
d345f817
CR
10666b(That)39 b(is,)j(the)e(w)m(ord)f Ft(-d'')f Fu(b)s(ecomes)i
10667Ft(-d)e Fu(after)i(w)m(ord)f(splitting)h(and)f(n)m(ull)150
3011048a 106683213 y(argumen)m(t)31 b(remo)m(v)-5 b(al.)275 3342 y(Note)31
e59452c7 10669b(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h(splitting)g(is)f(p)s
3011048a
CR
10670(erformed.)150 3530 y Fk(3.5.8)63 b(Filename)41 b(Expansion)150
106713677 y Fu(After)30 b(w)m(ord)f(splitting,)i(unless)d(the)i
e59452c7 10672Ft(-f)f Fu(option)h(has)f(b)s(een)g(set)h(\(see)g(Section)h(4.3.1)g
3011048a 10673([The)e(Set)h(Builtin],)150 3786 y(page)d(66\),)i(Bash)d(scans)h(eac)m
e59452c7
CR
10674(h)h(w)m(ord)e(for)g(the)h(c)m(haracters)g(`)p Ft(*)p
10675Fu(',)h(`)p Ft(?)p Fu(',)g(and)e(`)p Ft([)p Fu('.)39
3011048a 10676b(If)26 b(one)h(of)g(these)f(c)m(haracters)150 3896 y(app)s(ears,)34
fc35c477
CR
10677b(and)f(is)g(not)h(quoted,)h(then)e(the)h(w)m(ord)f(is)h(regarded)f(as)
10678h(a)g Fr(pattern)p Fu(,)h(and)e(replaced)h(with)f(an)150
3011048a 106794006 y(alphab)s(etically)41 b(sorted)e(list)h(of)g(\014lenames)f(matc)m
fc35c477 10680(hing)i(the)e(pattern)g(\(see)i(Section)f(3.5.8.1)i([P)m(attern)150
3011048a 106814115 y(Matc)m(hing],)e(page)e(36\).)60 b(If)36 b(no)h(matc)m(hing)g
fc35c477 10682(\014lenames)g(are)g(found,)g(and)f(the)g(shell)h(option)g
3011048a 10683Ft(nullglob)150 4225 y Fu(is)k(disabled,)i(the)f(w)m(ord)e(is)h(left)h
fc35c477 10684(unc)m(hanged.)72 b(If)40 b(the)h Ft(nullglob)e Fu(option)i(is)g(set,)k
3011048a 10685(and)40 b(no)h(matc)m(hes)150 4334 y(are)c(found,)g(the)g(w)m(ord)f(is)
fc35c477 10686g(remo)m(v)m(ed.)60 b(If)36 b(the)h Ft(failglob)d Fu(shell)j(option)g
3011048a 10687(is)g(set,)i(and)c(no)i(matc)m(hes)h(are)150 4444 y(found,)e(an)g
fc35c477 10688(error)f(message)i(is)f(prin)m(ted)f(and)h(the)g(command)f(is)h(not)g
3011048a 10689(executed.)58 b(If)35 b(the)h(shell)g(option)150 4553
fc35c477
CR
10690y Ft(nocaseglob)e Fu(is)j(enabled,)i(the)e(matc)m(h)h(is)f(p)s
10691(erformed)e(without)i(regard)g(to)h(the)f(case)h(of)f(alphab)s(etic)150
3011048a 106924663 y(c)m(haracters.)275 4792 y(When)23 b(a)h(pattern)f(is)h(used)f
fc35c477
CR
10693(for)g(\014lename)h(expansion,)h(the)e(c)m(haracter)i(`)p
10694Ft(.)p Fu(')f(at)g(the)g(start)g(of)g(a)g(\014lename)150
3011048a 106954902 y(or)f(immediately)i(follo)m(wing)g(a)f(slash)f(m)m(ust)h(b)s(e)f
fc35c477 10696(matc)m(hed)h(explicitly)-8 b(,)27 b(unless)c(the)g(shell)h(option)g
3011048a 10697Ft(dotglob)150 5011 y Fu(is)36 b(set.)58 b(In)35 b(order)g(to)i(matc)m
e59452c7
CR
10698(h)f(the)g(\014lenames)g(`)p Ft(.)p Fu(')g(and)g(`)p
10699Ft(..)p Fu(',)h(the)f(pattern)g(m)m(ust)g(b)s(egin)f(with)h(`)p
3011048a 10700Ft(.)p Fu(')g(\(for)150 5121 y(example,)42 b(`)p Ft(.?)p
5e6f45d9
CR
10701Fu('\),)f(ev)m(en)f(if)f Ft(dotglob)d Fu(is)j(set.)67
10702b(If)38 b(the)h Ft(globskipdots)d Fu(shell)j(option)g(is)g(enabled,)i
3011048a 10703(the)150 5230 y(\014lenames)33 b(`)p Ft(.)p Fu(')g(and)f(`)p
5e6f45d9
CR
10704Ft(..)p Fu(')h(are)g(nev)m(er)g(matc)m(hed,)h(ev)m(en)g(if)e(the)h
10705(pattern)g(b)s(egins)f(with)h(a)g(`)p Ft(.)p Fu('.)48
3011048a 10706b(When)33 b(not)150 5340 y(matc)m(hing)e(\014lenames,)g(the)g(`)p
5e6f45d9 10707Ft(.)p Fu(')f(c)m(haracter)i(is)f(not)f(treated)i(sp)s(ecially)-8
3011048a
CR
10708b(.)p eop end
10709%%Page: 36 42
10710TeXDict begin 36 41 bop 150 -116 a Fu(Chapter)30 b(3:)41
10711b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(36)275 299
10712y(When)30 b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f(c)m(haracter)
10713j(m)m(ust)d(alw)m(a)m(ys)j(b)s(e)d(matc)m(hed)h(explicitly)i(b)m(y)e(a)
10714150 408 y(slash)d(in)f(the)h(pattern,)h(but)e(in)h(other)g(matc)m(hing)
10715h(con)m(texts)h(it)e(can)g(b)s(e)g(matc)m(hed)g(b)m(y)g(a)g(sp)s(ecial)
10716h(pattern)150 518 y(c)m(haracter)j(as)f(describ)s(ed)e(b)s(elo)m(w)h
10717(\(see)i(Section)f(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i(page)e
10718(36\).)275 647 y(See)d(the)g(description)g(of)g Ft(shopt)e
10719Fu(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g(70,)g(for)f
10720(a)g(descrip-)150 757 y(tion)j(of)f(the)h Ft(nocaseglob)p
10721Fu(,)d Ft(nullglob)p Fu(,)g Ft(globskipdots)p Fu(,)f
10722Ft(failglob)p Fu(,)i(and)h Ft(dotglob)e Fu(options.)275
10723886 y(The)36 b Ft(GLOBIGNORE)d Fu(shell)k(v)-5 b(ariable)37
e59452c7 10724b(ma)m(y)g(b)s(e)f(used)g(to)h(restrict)g(the)g(set)g(of)g(\014le)f
3011048a 10725(names)h(matc)m(hing)150 995 y(a)42 b(pattern.)74 b(If)41
e59452c7 10726b Ft(GLOBIGNORE)e Fu(is)i(set,)k(eac)m(h)e(matc)m(hing)f(\014le)g(name)
3011048a 10727f(that)h(also)h(matc)m(hes)f(one)g(of)g(the)150 1105
e59452c7
CR
10728y(patterns)34 b(in)g Ft(GLOBIGNORE)d Fu(is)k(remo)m(v)m(ed)g(from)f
10729(the)g(list)h(of)f(matc)m(hes.)54 b(If)33 b(the)i Ft(nocaseglob)c
3011048a 10730Fu(option)k(is)150 1214 y(set,)c(the)e(matc)m(hing)i(against)g(the)f
e59452c7 10731(patterns)f(in)h Ft(GLOBIGNORE)c Fu(is)k(p)s(erformed)e(without)i
3011048a 10732(regard)f(to)i(case.)150 1324 y(The)d(\014lenames)h Ft(.)g
e59452c7
CR
10733Fu(and)f Ft(..)h Fu(are)g(alw)m(a)m(ys)h(ignored)f(when)f
10734Ft(GLOBIGNORE)f Fu(is)i(set)g(and)f(not)h(n)m(ull.)41
3011048a 10735b(Ho)m(w)m(ev)m(er,)150 1433 y(setting)30 b Ft(GLOBIGNORE)d
e59452c7 10736Fu(to)j(a)f(non-n)m(ull)g(v)-5 b(alue)30 b(has)f(the)g(e\013ect)i(of)f
3011048a
CR
10737(enabling)f(the)h Ft(dotglob)d Fu(shell)i(option,)150
107381543 y(so)j(all)h(other)f(\014lenames)g(b)s(eginning)f(with)h(a)g(`)p
5e6f45d9 10739Ft(.)p Fu(')g(will)h(matc)m(h.)46 b(T)-8 b(o)32 b(get)h(the)f(old)g(b)s
3011048a 10740(eha)m(vior)g(of)h(ignoring)150 1653 y(\014lenames)c(b)s(eginning)f
5e6f45d9
CR
10741(with)h(a)h(`)p Ft(.)p Fu(',)f(mak)m(e)h(`)p Ft(.*)p
10742Fu(')f(one)h(of)f(the)g(patterns)g(in)g Ft(GLOBIGNORE)p
3011048a
CR
10743Fu(.)37 b(The)29 b Ft(dotglob)150 1762 y Fu(option)i(is)f(disabled)g
10744(when)g Ft(GLOBIGNORE)d Fu(is)k(unset.)150 1950 y Fk(3.5.8.1)63
10745b(P)m(attern)40 b(Matc)m(hing)150 2097 y Fu(An)m(y)24
5e6f45d9
CR
10746b(c)m(haracter)h(that)f(app)s(ears)f(in)g(a)h(pattern,)i(other)e(than)f
10747(the)h(sp)s(ecial)g(pattern)g(c)m(haracters)h(describ)s(ed)150
3011048a 107482207 y(b)s(elo)m(w,)31 b(matc)m(hes)g(itself.)42 b(The)29
5e6f45d9 10749b Fm(nul)h Fu(c)m(haracter)i(ma)m(y)e(not)h(o)s(ccur)f(in)g(a)h
3011048a 10750(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s(es)150 2317
5e6f45d9
CR
10751y(the)38 b(follo)m(wing)g(c)m(haracter;)43 b(the)37 b(escaping)i(bac)m
10752(kslash)e(is)h(discarded)f(when)f(matc)m(hing.)63 b(The)36
3011048a 10753b(sp)s(ecial)150 2426 y(pattern)30 b(c)m(haracters)i(m)m(ust)f(b)s(e)e
5e6f45d9 10754(quoted)i(if)f(they)h(are)f(to)i(b)s(e)d(matc)m(hed)i(literally)-8
3011048a
CR
10755b(.)275 2555 y(The)29 b(sp)s(ecial)i(pattern)g(c)m(haracters)h(ha)m(v)m
10756(e)f(the)g(follo)m(wing)h(meanings:)150 2703 y Ft(*)432
5e6f45d9
CR
10757b Fu(Matc)m(hes)31 b(an)m(y)e(string,)h(including)f(the)g(n)m(ull)g
10758(string.)41 b(When)29 b(the)g Ft(globstar)e Fu(shell)i(option)630
3011048a 107592813 y(is)37 b(enabled,)h(and)e(`)p Ft(*)p Fu(')h(is)g(used)f(in)g(a)h
e230f997 10760(\014lename)g(expansion)g(con)m(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p
3011048a 10761Ft(*)p Fu('s)630 2923 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)
e230f997 10762m(h)i(all)f(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)630
3011048a 107633032 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p
6e51e0d0 10764Ft(/)p Fu(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Ft(*)p Fu('s)e(will)g
3011048a
CR
10765(matc)m(h)h(only)f(directories)630 3142 y(and)k(sub)s(directories.)150
107663290 y Ft(?)432 b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)
10767150 3438 y Ft([...)o(])241 b Fu(Matc)m(hes)27 b(an)m(y)e(one)g(of)g
e59452c7 10768(the)g(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters)
3011048a 10769i(separated)e(b)m(y)g(a)630 3548 y(h)m(yphen)k(denotes)i(a)g
6e51e0d0 10770Fr(range)g(expression)p Fu(;)f(an)m(y)h(c)m(haracter)h(that)f(falls)g
3011048a 10771(b)s(et)m(w)m(een)g(those)g(t)m(w)m(o)630 3657 y(c)m(haracters,)d
ad4aef08 10772(inclusiv)m(e,)f(using)d(the)h(curren)m(t)f(lo)s(cale's)j(collating)g
3011048a 10773(sequence)e(and)f(c)m(haracter)630 3767 y(set,)31 b(is)f(matc)m(hed.)42
ad4aef08 10774b(If)30 b(the)g(\014rst)g(c)m(haracter)i(follo)m(wing)g(the)e(`)p
6e51e0d0 10775Ft([)p Fu(')h(is)f(a)h(`)p Ft(!)p Fu(')f(or)g(a)h(`)p
3011048a 10776Ft(^)p Fu(')g(then)f(an)m(y)630 3877 y(c)m(haracter)c(not)f(enclosed)g
6e51e0d0 10777(is)g(matc)m(hed.)40 b(A)25 b(`)p Fq(\000)p Fu(')f(ma)m(y)i(b)s(e)e
3011048a 10778(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 3986
ad4aef08 10779y(\014rst)32 b(or)h(last)h(c)m(haracter)h(in)e(the)g(set.)50
6e51e0d0 10780b(A)33 b(`)p Ft(])p Fu(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f
3011048a 10781(including)g(it)g(as)h(the)630 4096 y(\014rst)25 b(c)m(haracter)i(in)e
ad4aef08 10782(the)h(set.)40 b(The)25 b(sorting)h(order)f(of)h(c)m(haracters)h(in)f
3011048a 10783(range)g(expressions)f(is)630 4205 y(determined)h(b)m(y)h(the)g(curren)
fc527055 10784m(t)f(lo)s(cale)j(and)d(the)h(v)-5 b(alues)27 b(of)g(the)g
3011048a
CR
10785Ft(LC_COLLATE)d Fu(and)i Ft(LC_ALL)630 4315 y Fu(shell)31
10786b(v)-5 b(ariables,)31 b(if)f(set.)630 4444 y(F)-8 b(or)34
74d0116b 10787b(example,)g(in)f(the)g(default)g(C)f(lo)s(cale,)k(`)p
6e51e0d0 10788Ft([a-dx-z])p Fu(')31 b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p
3011048a 10789Ft([abcdxyz])p Fu('.)630 4554 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
74d0116b 10790(haracters)h(in)e(dictionary)i(order,)76 b(and)67 b(in)g(these)h(lo)s
3011048a 10791(cales)630 4663 y(`)p Ft([a-dx-z])p Fu(')36 b(is)i(t)m(ypically)i(not)e
12beeabf 10792(equiv)-5 b(alen)m(t)39 b(to)g(`)p Ft([abcdxyz])p Fu(';)g(it)g(migh)m
3011048a 10793(t)f(b)s(e)f(equiv)-5 b(alen)m(t)630 4773 y(to)34 b(`)p
12beeabf
CR
10794Ft([aBbCcDdxXyYz])p Fu(',)c(for)j(example.)49 b(T)-8
10795b(o)33 b(obtain)h(the)f(traditional)h(in)m(terpretation)h(of)630
3011048a 107964882 y(ranges)e(in)f(brac)m(k)m(et)i(expressions,)g(y)m(ou)f(can)g
12beeabf 10797(force)g(the)g(use)f(of)h(the)g(C)f(lo)s(cale)i(b)m(y)f(setting)630
3011048a 107984992 y(the)c Ft(LC_COLLATE)e Fu(or)i Ft(LC_ALL)f Fu(en)m(vironmen)m(t)i
12beeabf 10799(v)-5 b(ariable)30 b(to)g(the)f(v)-5 b(alue)30 b(`)p
3011048a
CR
10800Ft(C)p Fu(',)g(or)f(enable)h(the)630 5101 y Ft(globasciiranges)c
10801Fu(shell)31 b(option.)630 5230 y(Within)23 b(`)p Ft([)p
12beeabf
CR
10802Fu(')h(and)e(`)p Ft(])p Fu(',)j Fr(c)m(haracter)g(classes)j
10803Fu(can)c(b)s(e)e(sp)s(eci\014ed)h(using)f(the)i(syn)m(tax)f
3011048a 10804Ft([:)p Fr(class)t Ft(:])p Fu(,)630 5340 y(where)30 b
12beeabf 10805Fr(class)35 b Fu(is)30 b(one)h(of)f(the)h(follo)m(wing)h(classes)f
3011048a
CR
10806(de\014ned)e(in)h(the)h Fm(posix)f Fu(standard:)p eop
10807end
10808%%Page: 37 43
10809TeXDict begin 37 42 bop 150 -116 a Fu(Chapter)30 b(3:)41
10810b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(37)870 299
091c6bc4 10811y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g(lower)
3011048a
CR
10812870 408 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630
10813543 y Fu(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h(an)m(y)f(c)m
d37a4722 10814(haracter)h(b)s(elonging)f(to)g(that)g(class.)75 b(The)41
3011048a
CR
10815b Ft(word)630 653 y Fu(c)m(haracter)32 b(class)f(matc)m(hes)h(letters,)
10816f(digits,)h(and)d(the)i(c)m(haracter)h(`)p Ft(_)p Fu('.)630
10817788 y(Within)25 b(`)p Ft([)p Fu(')f(and)g(`)p Ft(])p
10818Fu(',)i(an)e Fr(equiv)-5 b(alence)26 b(class)j Fu(can)24
10819b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h
10820Ft([=)p Fr(c)6 b Ft(=])p Fu(,)630 897 y(whic)m(h)29 b(matc)m(hes)i(all)
10821f(c)m(haracters)h(with)e(the)h(same)g(collation)h(w)m(eigh)m(t)g(\(as)f
10822(de\014ned)e(b)m(y)i(the)630 1007 y(curren)m(t)g(lo)s(cale\))j(as)d
10823(the)h(c)m(haracter)h Fr(c)p Fu(.)630 1142 y(Within)22
10824b(`)p Ft([)p Fu(')f(and)g(`)p Ft(])p Fu(',)j(the)d(syn)m(tax)h
10825Ft([.)p Fr(sym)m(b)s(ol)t Ft(.])e Fu(matc)m(hes)i(the)g(collating)i
10826(sym)m(b)s(ol)d Fr(sym)m(b)s(ol)p Fu(.)275 1303 y(If)i(the)g
10827Ft(extglob)f Fu(shell)h(option)h(is)g(enabled)f(using)g(the)h
10828Ft(shopt)e Fu(builtin,)i(the)g(shell)f(recognizes)j(sev)m(eral)150
108291412 y(extended)i(pattern)f(matc)m(hing)i(op)s(erators.)40
e59452c7 10830b(In)26 b(the)i(follo)m(wing)h(description,)g(a)e Fr(pattern-list)k
3011048a
CR
10831Fu(is)d(a)g(list)g(of)150 1522 y(one)23 b(or)f(more)h(patterns)g
10832(separated)g(b)m(y)f(a)h(`)p Ft(|)p Fu('.)38 b(When)22
10833b(matc)m(hing)i(\014lenames,)g(the)f Ft(dotglob)e Fu(shell)h(option)150
108341631 y(determines)h(the)h(set)g(of)g(\014lenames)f(that)h(are)g
10835(tested,)i(as)d(describ)s(ed)g(ab)s(o)m(v)m(e.)39 b(Comp)s(osite)24
10836b(patterns)f(ma)m(y)150 1741 y(b)s(e)30 b(formed)g(using)f(one)i(or)f
10837(more)h(of)g(the)f(follo)m(wing)i(sub-patterns:)150 1901
10838y Ft(?\()p Fj(pattern-list)p Ft(\))630 2011 y Fu(Matc)m(hes)g(zero)f
10839(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m(en)g(patterns.)150
108402171 y Ft(*\()p Fj(pattern-list)p Ft(\))630 2281 y Fu(Matc)m(hes)h
10841(zero)f(or)g(more)f(o)s(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)
10842150 2441 y Ft(+\()p Fj(pattern-list)p Ft(\))630 2551
10843y Fu(Matc)m(hes)h(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m
10844(en)i(patterns.)150 2711 y Ft(@\()p Fj(pattern-list)p
10845Ft(\))630 2820 y Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.)
10846150 2981 y Ft(!\()p Fj(pattern-list)p Ft(\))630 3090
10847y Fu(Matc)m(hes)h(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g
10848(patterns.)275 3251 y(When)26 b(matc)m(hing)i(\014lenames,)g(the)f
10849Ft(dotglob)e Fu(shell)i(option)h(determines)f(the)g(set)g(of)g
10850(\014lenames)g(that)150 3360 y(are)34 b(tested:)47 b(when)33
e59452c7 10851b Ft(dotglob)e Fu(is)i(enabled,)i(the)e(set)h(of)g(\014lenames)f
3011048a 10852(includes)g(all)h(\014les)g(b)s(eginning)e(with)150 3470
e59452c7
CR
10853y(`)p Ft(.)p Fu(',)d(but)e(the)g(\014lenames)h(`)p Ft(.)p
10854Fu(')g(and)f(`)p Ft(..)p Fu(')g(m)m(ust)h(b)s(e)f(matc)m(hed)h(b)m(y)g
10855(a)g(pattern)g(or)f(sub-pattern)g(that)h(b)s(egins)150
3011048a 108563580 y(with)33 b(a)g(dot;)j(when)c(it)h(is)h(disabled,)f(the)h(set)g
e59452c7 10857(do)s(es)e(not)i(include)f(an)m(y)g(\014lenames)g(b)s(eginning)g(with)g
3011048a 10858(\\.")150 3689 y(unless)24 b(the)g(pattern)h(or)f(sub-pattern)g(b)s
e59452c7
CR
10859(egins)g(with)g(a)g(`)p Ft(.)p Fu('.)39 b(As)25 b(ab)s(o)m(v)m(e,)i(`)p
10860Ft(.)p Fu(')d(only)h(has)f(a)h(sp)s(ecial)g(meaning)150
3011048a 108613799 y(when)k(matc)m(hing)j(\014lenames.)275 3934 y(Complicated)41
e59452c7 10862b(extended)f(pattern)g(matc)m(hing)h(against)h(long)f(strings)f(is)g
3011048a 10863(slo)m(w,)k(esp)s(ecially)d(when)150 4044 y(the)29 b(patterns)g(con)m
e59452c7 10864(tain)i(alternations)f(and)f(the)g(strings)g(con)m(tain)h(m)m(ultiple)g
3011048a 10865(matc)m(hes.)42 b(Using)29 b(separate)150 4153 y(matc)m(hes)38
e59452c7 10866b(against)g(shorter)e(strings,)i(or)f(using)f(arra)m(ys)h(of)g(strings)
3011048a
CR
10867f(instead)h(of)g(a)g(single)g(long)h(string,)150 4263
10868y(ma)m(y)31 b(b)s(e)f(faster.)150 4463 y Fk(3.5.9)63
10869b(Quote)41 b(Remo)m(v)-7 b(al)150 4610 y Fu(After)32
e59452c7
CR
10870b(the)g(preceding)g(expansions,)h(all)f(unquoted)f(o)s(ccurrences)h(of)
10871g(the)h(c)m(haracters)g(`)p Ft(\\)p Fu(',)g(`)p Ft(')p
3011048a 10872Fu(',)f(and)g(`)p Ft(")p Fu(')150 4719 y(that)f(did)f(not)g(result)g
e59452c7 10873(from)g(one)h(of)g(the)f(ab)s(o)m(v)m(e)i(expansions)e(are)h(remo)m(v)m
3011048a 10874(ed.)150 4961 y Fs(3.6)68 b(Redirections)150 5121 y Fu(Before)32
d37a4722
CR
10875b(a)f(command)f(is)h(executed,)h(its)f(input)e(and)h(output)h(ma)m(y)g
10876(b)s(e)f Fr(redirected)k Fu(using)c(a)i(sp)s(ecial)f(no-)150
3011048a 108775230 y(tation)d(in)m(terpreted)f(b)m(y)f(the)h(shell.)40
e59452c7 10878b Fr(Redirection)27 b Fu(allo)m(ws)h(commands')f(\014le)f(handles)g(to)
3011048a 10879i(b)s(e)e(duplicated,)150 5340 y(op)s(ened,)i(closed,)i(made)e(to)h
e59452c7 10880(refer)f(to)h(di\013eren)m(t)f(\014les,)h(and)f(can)g(c)m(hange)h(the)g
3011048a
CR
10881(\014les)f(the)g(command)g(reads)p eop end
10882%%Page: 38 44
10883TeXDict begin 38 43 bop 150 -116 a Fu(Chapter)30 b(3:)41
10884b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(38)150 299
10885y(from)39 b(and)g(writes)h(to.)69 b(Redirection)40 b(ma)m(y)g(also)h(b)
10886s(e)e(used)g(to)h(mo)s(dify)f(\014le)g(handles)g(in)g(the)h(curren)m(t)
10887150 408 y(shell)e(execution)h(en)m(vironmen)m(t.)65 b(The)37
d37a4722 10888b(follo)m(wing)j(redirection)f(op)s(erators)f(ma)m(y)g(precede)h(or)f
3011048a 10889(app)s(ear)150 518 y(an)m(ywhere)30 b(within)f(a)h(simple)f(command)h
d37a4722 10890(or)f(ma)m(y)i(follo)m(w)g(a)f(command.)40 b(Redirections)30
3011048a
CR
10891b(are)g(pro)s(cessed)150 628 y(in)g(the)h(order)f(they)g(app)s(ear,)g
10892(from)g(left)h(to)g(righ)m(t.)275 767 y(Eac)m(h)45 b(redirection)h
d37a4722 10893(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)m(y)h(a)h(\014le)f(descriptor)f
3011048a
CR
10894(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)s(e)150 877 y(preceded)41
10895b(b)m(y)g(a)h(w)m(ord)f(of)g(the)h(form)f Fi({)p Fr(v)-5
10896b(arname)5 b Fi(})p Fu(.)74 b(In)41 b(this)g(case,)k(for)c(eac)m(h)i
10897(redirection)f(op)s(erator)150 986 y(except)37 b Ft(>)p
10898Fu(&-)e(and)g Ft(<)p Fu(&-,)i(the)f(shell)g(will)g(allo)s(cate)j(a)d
10899(\014le)g(descriptor)f(greater)i(than)f(10)g(and)f(assign)h(it)150
109001096 y(to)e Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)52
10901b(If)33 b Ft(>)p Fu(&-)g(or)h Ft(<)p Fu(&-)f(is)g(preceded)h(b)m(y)f
10902Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(,)36 b(the)e(v)-5
e6983002 10903b(alue)34 b(of)f Fr(v)-5 b(arname)39 b Fu(de\014nes)33
3011048a 10904b(the)150 1206 y(\014le)e(descriptor)g(to)h(close.)43
e6983002
CR
10905b(If)31 b Fi({)p Fr(v)-5 b(arname)5 b Fi(})32 b Fu(is)f(supplied,)f
10906(the)h(redirection)g(p)s(ersists)f(b)s(ey)m(ond)h(the)g(scop)s(e)150
3011048a
CR
109071315 y(of)42 b(the)f(command,)j(allo)m(wing)f(the)f(shell)g(programmer)
10908f(to)h(manage)g(the)g(\014le)f(descriptor's)h(lifetime)150
109091425 y(man)m(ually)-8 b(.)41 b(The)29 b Ft(varredir_close)c
e59452c7 10910Fu(shell)k(option)g(manages)h(this)f(b)s(eha)m(vior)g(\(see)h(Section)f
3011048a
CR
10911(4.3.2)i([The)150 1534 y(Shopt)f(Builtin],)h(page)g(70\).)275
109121674 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g
e59452c7 10913(descriptor)f(n)m(um)m(b)s(er)g(is)g(omitted,)i(and)f(the)f(\014rst)g
3011048a 10914(c)m(har-)150 1784 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g
e59452c7 10915(is)g(`)p Ft(<)p Fu(',)i(the)e(redirection)g(refers)g(to)g(the)g
3011048a 10916(standard)f(input)f(\(\014le)150 1893 y(descriptor)33
e59452c7
CR
10917b(0\).)49 b(If)33 b(the)g(\014rst)f(c)m(haracter)i(of)g(the)f
10918(redirection)g(op)s(erator)h(is)f(`)p Ft(>)p Fu(',)h(the)f(redirection)
3011048a
CR
10919g(refers)150 2003 y(to)e(the)g(standard)e(output)h(\(\014le)h
10920(descriptor)f(1\).)275 2142 y(The)h(w)m(ord)h(follo)m(wing)i(the)f
e59452c7 10921(redirection)g(op)s(erator)f(in)g(the)h(follo)m(wing)h(descriptions,)f
3011048a 10922(unless)e(other-)150 2252 y(wise)21 b(noted,)i(is)e(sub)5
e59452c7 10923b(jected)21 b(to)h(brace)f(expansion,)i(tilde)f(expansion,)h(parameter)
3011048a 10924e(expansion,)i(command)150 2362 y(substitution,)31 b(arithmetic)h
e59452c7 10925(expansion,)f(quote)h(remo)m(v)-5 b(al,)33 b(\014lename)e(expansion,)g
3011048a 10926(and)f(w)m(ord)h(splitting.)150 2471 y(If)f(it)h(expands)e(to)i(more)g
e59452c7 10927(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)275
3011048a 109282611 y(Note)h(that)g(the)g(order)f(of)g(redirections)h(is)g
e59452c7 10929(signi\014can)m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390
3011048a 109302751 y Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 2890 y
e59452c7
CR
10931Fu(directs)28 b(b)s(oth)f(standard)g(output)g(\(\014le)h(descriptor)f
10932(1\))i(and)e(standard)f(error)i(\(\014le)g(descriptor)f(2\))h(to)h(the)
3011048a
CR
10933150 3000 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390
109343139 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 3279 y Fu(directs)28
e230f997
CR
10935b(only)f(the)h(standard)e(output)i(to)g(\014le)f Fr(dirlist)p
10936Fu(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)h(made)f(a)h(cop)m
3011048a 10937(y)150 3389 y(of)j(the)f(standard)g(output)g(b)s(efore)g(the)g
e230f997 10938(standard)g(output)g(w)m(as)g(redirected)h(to)g Fr(dirlist)p
3011048a 10939Fu(.)275 3528 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s
e230f997 10940(ecially)h(when)f(they)g(are)g(used)g(in)g(redirections,)i(as)e
3011048a 10941(describ)s(ed)150 3638 y(in)38 b(the)h(follo)m(wing)h(table.)66
e230f997 10942b(If)38 b(the)h(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)h(is)f
3011048a 10943(running)f(pro)m(vides)h(these)150 3747 y(sp)s(ecial)27
e230f997
CR
10944b(\014les,)g(bash)e(will)i(use)f(them;)h(otherwise)g(it)f(will)h(em)m
10945(ulate)h(them)e(in)m(ternally)h(with)f(the)g(b)s(eha)m(vior)150
3011048a
CR
109463857 y(describ)s(ed)j(b)s(elo)m(w.)150 4024 y Ft(/dev/fd/)p
10947Fj(fd)630 4134 y Fu(If)h Fr(fd)j Fu(is)d(a)h(v)-5 b(alid)31
e59452c7 10948b(in)m(teger,)h(\014le)e(descriptor)h Fr(fd)i Fu(is)d(duplicated.)150
3011048a
CR
109494298 y Ft(/dev/stdin)630 4408 y Fu(File)i(descriptor)e(0)h(is)f
10950(duplicated.)150 4573 y Ft(/dev/stdout)630 4682 y Fu(File)i(descriptor)
10951e(1)h(is)f(duplicated.)150 4847 y Ft(/dev/stderr)630
109524956 y Fu(File)i(descriptor)e(2)h(is)f(duplicated.)150
109535121 y Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 5230
e59452c7
CR
10954y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 b(hostname)h(or)f(In)
10955m(ternet)h(address,)i(and)c Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s
3011048a 10956(ort)630 5340 y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f
e6983002 10957(attempts)h(to)f(op)s(en)f(the)h(corresp)s(onding)f(TCP)g(so)s(c)m(k)m
3011048a 10958(et.)p eop end
e59452c7
CR
10959%%Page: 39 45
10960TeXDict begin 39 44 bop 150 -116 a Fu(Chapter)30 b(3:)41
10961b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(39)150 299
3011048a
CR
10962y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630 408 y Fu(If)41
10963b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 b(hostname)h(or)f(In)m(ternet)h
10964(address,)i(and)c Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s(ort)630
10965518 y(n)m(um)m(b)s(er)23 b(or)h(service)h(name,)h(Bash)e(attempts)h(to)
10966g(op)s(en)f(the)g(corresp)s(onding)f(UDP)i(so)s(c)m(k)m(et.)275
10967684 y(A)30 b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e(\014le)h
10968(causes)g(the)f(redirection)h(to)g(fail.)275 822 y(Redirections)f
10969(using)e(\014le)i(descriptors)f(greater)h(than)f(9)h(should)e(b)s(e)h
10970(used)f(with)h(care,)h(as)g(they)f(ma)m(y)150 932 y(con\015ict)i(with)f
10971(\014le)h(descriptors)f(the)g(shell)h(uses)f(in)m(ternally)-8
10972b(.)150 1135 y Fk(3.6.1)63 b(Redirecting)40 b(Input)150
109731282 y Fu(Redirection)35 b(of)f(input)f(causes)i(the)f(\014le)g(whose)g
10974(name)g(results)g(from)g(the)g(expansion)g(of)g Fr(w)m(ord)k
10975Fu(to)d(b)s(e)150 1392 y(op)s(ened)d(for)g(reading)g(on)g(\014le)h
10976(descriptor)f Ft(n)p Fu(,)h(or)f(the)g(standard)g(input)f(\(\014le)i
10977(descriptor)f(0\))h(if)f Ft(n)g Fu(is)h(not)150 1501
10978y(sp)s(eci\014ed.)275 1640 y(The)c(general)j(format)e(for)h
10979(redirecting)g(input)e(is:)390 1778 y Ft([)p Fj(n)p Ft(]<)p
10980Fj(word)150 1982 y Fk(3.6.2)63 b(Redirecting)40 b(Output)150
109812129 y Fu(Redirection)31 b(of)g(output)f(causes)h(the)f(\014le)h(whose)
10982f(name)g(results)h(from)e(the)i(expansion)f(of)h Fr(w)m(ord)i
10983Fu(to)f(b)s(e)150 2238 y(op)s(ened)d(for)g(writing)g(on)g(\014le)h
10984(descriptor)f Fr(n)p Fu(,)g(or)g(the)h(standard)e(output)h(\(\014le)h
10985(descriptor)f(1\))h(if)g Fr(n)e Fu(is)i(not)150 2348
10986y(sp)s(eci\014ed.)40 b(If)30 b(the)g(\014le)h(do)s(es)f(not)h(exist)g
10987(it)g(is)f(created;)i(if)e(it)h(do)s(es)f(exist)h(it)g(is)g(truncated)f
10988(to)h(zero)g(size.)275 2486 y(The)e(general)j(format)e(for)h
10989(redirecting)g(output)f(is:)390 2625 y Ft([)p Fj(n)p
10990Ft(]>[|])p Fj(word)275 2764 y Fu(If)g(the)h(redirection)g(op)s(erator)g
10991(is)g(`)p Ft(>)p Fu(',)g(and)f(the)h Ft(noclobber)d Fu(option)j(to)g
10992(the)g Ft(set)f Fu(builtin)g(has)h(b)s(een)150 2873 y(enabled,)h(the)g
d37a4722
CR
10993(redirection)h(will)f(fail)h(if)e(the)i(\014le)e(whose)h(name)g
10994(results)g(from)f(the)h(expansion)g(of)g Fr(w)m(ord)150
3011048a 109952983 y Fu(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
e230f997
CR
10996b(If)30 b(the)h(redirection)g(op)s(erator)g(is)f(`)p
10997Ft(>|)p Fu(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150
3011048a 109983092 y(`)p Ft(>)p Fu(')36 b(and)f(the)g Ft(noclobber)e
e230f997 10999Fu(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g
3011048a
CR
11000(ev)m(en)h(if)e(the)h(\014le)150 3202 y(named)30 b(b)m(y)g
11001Fr(w)m(ord)k Fu(exists.)150 3405 y Fk(3.6.3)63 b(App)s(ending)42
11002b(Redirected)e(Output)150 3552 y Fu(Redirection)23 b(of)e(output)h(in)f
e230f997 11003(this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f
3011048a 11004(from)g(the)h(expansion)g(of)150 3662 y Fr(w)m(ord)28
e230f997
CR
11005b Fu(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g
11006(descriptor)g Fr(n)p Fu(,)g(or)g(the)g(standard)f(output)h(\(\014le)g
3011048a 11007(descriptor)150 3771 y(1\))31 b(if)f Fr(n)g Fu(is)h(not)f(sp)s
e230f997 11008(eci\014ed.)40 b(If)30 b(the)h(\014le)f(do)s(es)g(not)h(exist)g(it)g
3011048a
CR
11009(is)f(created.)275 3910 y(The)f(general)j(format)e(for)h(app)s(ending)e
11010(output)h(is:)390 4049 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)150
110114252 y Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g
11012(Standard)g(Error)150 4399 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s
e59452c7 11013(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f
3011048a 11014(the)g(standard)f(error)150 4508 y(output)d(\(\014le)h(descriptor)f
e59452c7 11015(2\))h(to)g(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is)
3011048a 11016f(the)g(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 4647 y(There)f(are)i(t)m
e59452c7 11017(w)m(o)h(formats)e(for)h(redirecting)g(standard)e(output)h(and)g
3011048a
CR
11018(standard)f(error:)390 4786 y Ft(&>)p Fj(word)150 4924
11019y Fu(and)390 5063 y Ft(>&)p Fj(word)150 5201 y Fu(Of)h(the)g(t)m(w)m(o)
e59452c7
CR
11020i(forms,)e(the)h(\014rst)e(is)i(preferred.)39 b(This)30
11021b(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 b(to)390
3011048a 110225340 y Ft(>)p Fj(word)46 b Ft(2>&1)p eop end
e59452c7
CR
11023%%Page: 40 46
11024TeXDict begin 40 45 bop 150 -116 a Fu(Chapter)30 b(3:)41
11025b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(40)275 299
3011048a
CR
11026y(When)41 b(using)g(the)h(second)f(form,)k Fr(w)m(ord)f
11027Fu(ma)m(y)e(not)g(expand)f(to)h(a)g(n)m(um)m(b)s(er)f(or)g(`)p
11028Ft(-)p Fu('.)75 b(If)41 b(it)h(do)s(es,)150 408 y(other)27
11029b(redirection)g(op)s(erators)f(apply)h(\(see)g(Duplicating)h(File)f
11030(Descriptors)h(b)s(elo)m(w\))f(for)f(compatibilit)m(y)150
11031518 y(reasons.)150 711 y Fk(3.6.5)63 b(App)s(ending)42
11032b(Standard)f(Output)g(and)g(Standard)g(Error)150 858
11033y Fu(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g(standard)g
11034(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g(standard)f(error)
11035150 968 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g(b)s(e)f(app)s
11036(ended)f(to)i(the)f(\014le)h(whose)f(name)g(is)h(the)f(expansion)h(of)f
11037Fr(w)m(ord)p Fu(.)275 1099 y(The)f(format)i(for)f(app)s(ending)f
11038(standard)h(output)g(and)f(standard)h(error)g(is:)390
110391231 y Ft(&>>)p Fj(word)150 1362 y Fu(This)g(is)g(seman)m(tically)j
11040(equiv)-5 b(alen)m(t)32 b(to)390 1493 y Ft(>>)p Fj(word)46
11041b Ft(2>&1)275 1625 y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g
11042(b)s(elo)m(w\).)150 1818 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
110431965 y Fu(This)26 b(t)m(yp)s(e)g(of)h(redirection)g(instructs)f(the)g
11044(shell)h(to)g(read)f(input)g(from)g(the)g(curren)m(t)h(source)f(un)m
11045(til)h(a)g(line)150 2074 y(con)m(taining)h(only)e Fr(w)m(ord)k
d37a4722
CR
11046Fu(\(with)c(no)g(trailing)h(blanks\))f(is)g(seen.)40
11047b(All)27 b(of)f(the)g(lines)h(read)f(up)f(to)i(that)g(p)s(oin)m(t)150
3011048a 110482184 y(are)k(then)f(used)f(as)i(the)g(standard)e(input)h(\(or)g(\014le)
d37a4722 11049h(descriptor)f Fr(n)g Fu(if)g Fr(n)g Fu(is)g(sp)s(eci\014ed\))g(for)h
3011048a
CR
11050(a)f(command.)275 2315 y(The)f(format)i(of)g(here-do)s(cumen)m(ts)f
11051(is:)390 2447 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p Ft(])p
11052Fj(word)772 2556 y(here-document)390 2666 y(delimiter)275
110532797 y Fu(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h
d37a4722 11054(command)f(substitution,)h(arithmetic)g(expansion,)g(or)150
3011048a 110552907 y(\014lename)26 b(expansion)g(is)g(p)s(erformed)e(on)i
b729dac1
CR
11056Fr(w)m(ord)p Fu(.)39 b(If)25 b(an)m(y)i(part)e(of)h Fr(w)m(ord)j
11057Fu(is)d(quoted,)i(the)e Fr(delimiter)33 b Fu(is)26 b(the)150
3011048a 110583017 y(result)33 b(of)g(quote)g(remo)m(v)-5 b(al)34 b(on)f
b729dac1 11059Fr(w)m(ord)p Fu(,)g(and)f(the)h(lines)g(in)g(the)g(here-do)s(cumen)m(t)
3011048a 11060g(are)g(not)g(expanded.)47 b(If)150 3126 y Fr(w)m(ord)26
b729dac1
CR
11061b Fu(is)c(unquoted,)h(all)g(lines)g(of)g(the)f(here-do)s(cumen)m(t)g
11062(are)h(sub)5 b(jected)22 b(to)h(parameter)g(expansion,)h(com-)150
3011048a 110633236 y(mand)30 b(substitution,)g(and)g(arithmetic)h(expansion,)g(the)f
b729dac1 11064(c)m(haracter)i(sequence)f Ft(\\newline)d Fu(is)j(ignored,)150
3011048a 110653345 y(and)f(`)p Ft(\\)p Fu(')g(m)m(ust)h(b)s(e)e(used)h(to)h(quote)g
b729dac1 11066(the)g(c)m(haracters)g(`)p Ft(\\)p Fu(',)g(`)p Ft($)p
3011048a 11067Fu(',)g(and)f(`)p Ft(`)p Fu('.)275 3477 y(If)21 b(the)i(redirection)g
e230f997
CR
11068(op)s(erator)g(is)f(`)p Ft(<<-)p Fu(',)i(then)e(all)h(leading)g(tab)g
11069(c)m(haracters)h(are)e(stripp)s(ed)f(from)h(input)150
3011048a 110703586 y(lines)33 b(and)f(the)h(line)h(con)m(taining)g
e230f997 11071Fr(delimiter)p Fu(.)49 b(This)32 b(allo)m(ws)i(here-do)s(cumen)m(ts)f
3011048a
CR
11072(within)f(shell)i(scripts)e(to)150 3696 y(b)s(e)e(inden)m(ted)g(in)g(a)
11073h(natural)f(fashion.)150 3889 y Fk(3.6.7)63 b(Here)41
11074b(Strings)150 4036 y Fu(A)30 b(v)-5 b(arian)m(t)32 b(of)e(here)h(do)s
11075(cumen)m(ts,)f(the)g(format)h(is:)390 4167 y Ft([)p Fj(n)p
11076Ft(]<<<)46 b Fj(word)275 4299 y Fu(The)29 b Fr(w)m(ord)k
e59452c7 11077Fu(undergo)s(es)c(tilde)i(expansion,)f(parameter)h(and)e(v)-5
3011048a 11078b(ariable)31 b(expansion,)f(command)g(sub-)150 4408 y(stitution,)f
e59452c7 11079(arithmetic)f(expansion,)g(and)f(quote)h(remo)m(v)-5
fc35c477 11080b(al.)41 b(Filename)29 b(expansion)e(and)f(w)m(ord)h(splitting)150
3011048a 110814518 y(are)35 b(not)g(p)s(erformed.)51 b(The)34 b(result)h(is)g
e230f997 11082(supplied)e(as)i(a)f(single)i(string,)f(with)g(a)g(newline)f(app)s
3011048a 11083(ended,)g(to)150 4628 y(the)d(command)f(on)g(its)h(standard)e(input)h
e230f997 11084(\(or)g(\014le)h(descriptor)f Fr(n)g Fu(if)g Fr(n)g Fu(is)h(sp)s
3011048a
CR
11085(eci\014ed\).)150 4821 y Fk(3.6.8)63 b(Duplicating)41
11086b(File)g(Descriptors)150 4968 y Fu(The)30 b(redirection)h(op)s(erator)
11087390 5099 y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 5230 y
e230f997
CR
11088Fu(is)k(used)e(to)j(duplicate)f(input)f(\014le)g(descriptors.)53
11089b(If)34 b Fr(w)m(ord)k Fu(expands)c(to)h(one)g(or)g(more)g(digits,)h
3011048a 11090(the)f(\014le)150 5340 y(descriptor)e(denoted)h(b)m(y)f
e230f997 11091Fr(n)g Fu(is)g(made)h(to)g(b)s(e)f(a)g(cop)m(y)h(of)g(that)g(\014le)f
3011048a
CR
11092(descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fr(w)m(ord)p
11093eop end
e59452c7
CR
11094%%Page: 41 47
11095TeXDict begin 41 46 bop 150 -116 a Fu(Chapter)30 b(3:)41
11096b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(41)150 299
3011048a
CR
11097y(do)29 b(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g(for)g
11098(input,)g(a)h(redirection)g(error)f(o)s(ccurs.)40 b(If)29
11099b Fr(w)m(ord)j Fu(ev)-5 b(aluates)150 408 y(to)31 b(`)p
11100Ft(-)p Fu(',)g(\014le)g(descriptor)g Fr(n)f Fu(is)g(closed.)43
11101b(If)30 b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f
11102(input)g(\(\014le)h(descriptor)f(0\))150 518 y(is)g(used.)275
11103652 y(The)f(op)s(erator)390 786 y Ft([)p Fj(n)p Ft(]>&)p
11104Fj(word)150 920 y Fu(is)40 b(used)g(similarly)h(to)g(duplicate)f
11105(output)g(\014le)h(descriptors.)70 b(If)40 b Fr(n)f Fu(is)i(not)f(sp)s
11106(eci\014ed,)i(the)f(standard)150 1030 y(output)30 b(\(\014le)g
11107(descriptor)g(1\))h(is)f(used.)39 b(If)30 b(the)g(digits)h(in)e
11108Fr(w)m(ord)34 b Fu(do)29 b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g
11109(op)s(en)150 1139 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s
11110(ccurs.)55 b(If)35 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)37
11111b(to)f(`)p Ft(-)p Fu(',)h(\014le)e(descriptor)g Fr(n)g
11112Fu(is)g(closed.)150 1249 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e
11113Fr(n)f Fu(is)h(omitted,)i(and)e Fr(w)m(ord)j Fu(do)s(es)d(not)g(expand)
11114f(to)i(one)f(or)g(more)g(digits)h(or)f(`)p Ft(-)p Fu(',)150
111151359 y(the)d(standard)e(output)h(and)g(standard)f(error)h(are)h
11116(redirected)g(as)g(describ)s(ed)e(previously)-8 b(.)150
111171557 y Fk(3.6.9)63 b(Mo)m(ving)41 b(File)h(Descriptors)150
111181704 y Fu(The)30 b(redirection)h(op)s(erator)390 1838
11119y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150 1972 y Fu(mo)m(v)m(es)i
11120(the)f(\014le)g(descriptor)f Fr(digit)k Fu(to)d(\014le)g(descriptor)g
11121Fr(n)p Fu(,)f(or)h(the)g(standard)f(input)f(\(\014le)j(descriptor)e
11122(0\))150 2082 y(if)f Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)40
11123b Fr(digit)33 b Fu(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
11124Fr(n)p Fu(.)275 2216 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
11125(erator)390 2350 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p
11126Ft(-)150 2484 y Fu(mo)m(v)m(es)e(the)g(\014le)f(descriptor)f
6e51e0d0 11127Fr(digit)k Fu(to)e(\014le)f(descriptor)g Fr(n)p Fu(,)g(or)g(the)g
abe2eb5b 11128(standard)f(output)h(\(\014le)g(descriptor)g(1\))150
3011048a
CR
111292593 y(if)i Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150
111302792 y Fk(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
11131(Reading)e(and)h(W)-10 b(riting)150 2939 y Fu(The)30
11132b(redirection)h(op)s(erator)390 3073 y Ft([)p Fj(n)p
11133Ft(]<>)p Fj(word)150 3207 y Fu(causes)39 b(the)g(\014le)g(whose)g(name)
6e51e0d0 11134g(is)g(the)g(expansion)g(of)g Fr(w)m(ord)j Fu(to)d(b)s(e)g(op)s(ened)f
3011048a 11135(for)g(b)s(oth)h(reading)g(and)150 3316 y(writing)33
6e51e0d0
CR
11136b(on)f(\014le)h(descriptor)f Fr(n)p Fu(,)h(or)g(on)f(\014le)h
11137(descriptor)g(0)g(if)f Fr(n)g Fu(is)h(not)g(sp)s(eci\014ed.)47
3011048a
CR
11138b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 3426 y(exist,)e(it)g(is)g
11139(created.)150 3666 y Fs(3.7)68 b(Executing)46 b(Commands)150
111403890 y Fk(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150
111414037 y Fu(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g
e59452c7 11142(shell)f(p)s(erforms)e(the)i(follo)m(wing)i(expansions,)e(assign-)150
3011048a
CR
111434146 y(men)m(ts,)e(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t,)g
11144(in)f(the)h(follo)m(wing)h(order.)199 4280 y(1.)61 b(The)38
e59452c7
CR
11145b(w)m(ords)f(that)i(the)g(parser)e(has)h(mark)m(ed)g(as)h(v)-5
11146b(ariable)39 b(assignmen)m(ts)g(\(those)g(preceding)f(the)330
3011048a
CR
111474390 y(command)30 b(name\))h(and)f(redirections)h(are)f(sa)m(v)m(ed)i
11148(for)e(later)h(pro)s(cessing.)199 4524 y(2.)61 b(The)39
e59452c7
CR
11149b(w)m(ords)g(that)i(are)f(not)g(v)-5 b(ariable)40 b(assignmen)m(ts)h
11150(or)e(redirections)i(are)f(expanded)f(\(see)h(Sec-)330
3011048a 111514633 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g(24\).)61
e59452c7 11152b(If)37 b(an)m(y)g(w)m(ords)f(remain)h(after)h(expansion,)h(the)e
3011048a 11153(\014rst)330 4743 y(w)m(ord)31 b(is)g(tak)m(en)h(to)g(b)s(e)f(the)g
e59452c7 11154(name)h(of)f(the)h(command)f(and)f(the)i(remaining)f(w)m(ords)g(are)g
3011048a 11155(the)h(argu-)330 4853 y(men)m(ts.)199 4987 y(3.)61 b(Redirections)25
e59452c7 11156b(are)f(p)s(erformed)f(as)h(describ)s(ed)f(ab)s(o)m(v)m(e)i(\(see)g
3011048a 11157(Section)g(3.6)g([Redirections],)i(page)d(37\).)199 5121
e59452c7
CR
11158y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Ft(=)p Fu(')h(in)e(eac)m(h)
11159j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)e(tilde)i
3011048a 11160(expansion,)g(parameter)330 5230 y(expansion,)49 b(command)d
e59452c7 11161(substitution,)j(arithmetic)d(expansion,)k(and)45 b(quote)h(remo)m(v)-5
3011048a
CR
11162b(al)46 b(b)s(efore)330 5340 y(b)s(eing)30 b(assigned)h(to)g(the)f(v)-5
11163b(ariable.)p eop end
e59452c7
CR
11164%%Page: 42 48
11165TeXDict begin 42 47 bop 150 -116 a Fu(Chapter)30 b(3:)41
11166b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(42)275 299
3011048a
CR
11167y(If)32 b(no)i(command)f(name)g(results,)h(the)g(v)-5
11168b(ariable)34 b(assignmen)m(ts)g(a\013ect)h(the)f(curren)m(t)f(shell)h
11169(en)m(viron-)150 408 y(men)m(t.)68 b(In)38 b(the)h(case)i(of)e(suc)m(h)
11170g(a)g(command)g(\(one)h(that)g(consists)g(only)f(of)g(assignmen)m(t)h
11171(statemen)m(ts)150 518 y(and)27 b(redirections\),)i(assignmen)m(t)g
11172(statemen)m(ts)g(are)f(p)s(erformed)e(b)s(efore)h(redirections.)41
11173b(Otherwise,)28 b(the)150 628 y(v)-5 b(ariables)27 b(are)g(added)e(to)i
11174(the)g(en)m(vironmen)m(t)g(of)f(the)h(executed)g(command)f(and)g(do)g
11175(not)h(a\013ect)h(the)e(cur-)150 737 y(ren)m(t)32 b(shell)f(en)m
11176(vironmen)m(t.)44 b(If)31 b(an)m(y)g(of)h(the)f(assignmen)m(ts)h
11177(attempts)g(to)g(assign)g(a)f(v)-5 b(alue)32 b(to)g(a)g(readonly)150
11178847 y(v)-5 b(ariable,)31 b(an)g(error)f(o)s(ccurs,)g(and)g(the)g
11179(command)g(exits)i(with)e(a)g(non-zero)h(status.)275
11180980 y(If)i(no)g(command)g(name)h(results,)g(redirections)g(are)g(p)s
e59452c7 11181(erformed,)f(but)g(do)h(not)f(a\013ect)i(the)f(curren)m(t)150
3011048a 111821090 y(shell)d(en)m(vironmen)m(t.)41 b(A)30 b(redirection)h(error)f
e59452c7 11183(causes)h(the)g(command)f(to)h(exit)g(with)f(a)h(non-zero)g(status.)275
3011048a 111841223 y(If)26 b(there)i(is)f(a)h(command)f(name)h(left)g(after)g
e59452c7 11185(expansion,)g(execution)h(pro)s(ceeds)e(as)g(describ)s(ed)f(b)s(elo)m
3011048a 11186(w.)150 1333 y(Otherwise,)39 b(the)e(command)g(exits.)62
e59452c7 11187b(If)37 b(one)g(of)g(the)h(expansions)f(con)m(tained)h(a)g(command)f
3011048a
CR
11188(substitu-)150 1442 y(tion,)i(the)d(exit)h(status)g(of)f(the)h(command)
11189f(is)h(the)f(exit)h(status)g(of)f(the)h(last)g(command)f(substitution)
11190150 1552 y(p)s(erformed.)55 b(If)35 b(there)g(w)m(ere)h(no)g(command)f
e59452c7 11191(substitutions,)i(the)e(command)h(exits)g(with)f(a)h(status)g(of)150
3011048a
CR
111921661 y(zero.)150 1858 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h
11193(Execution)150 2005 y Fu(After)i(a)h(command)f(has)g(b)s(een)f(split)h
e59452c7 11194(in)m(to)h(w)m(ords,)j(if)c(it)g(results)g(in)g(a)h(simple)f(command)g
3011048a
CR
11195(and)f(an)150 2115 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g
11196(follo)m(wing)g(actions)h(are)f(tak)m(en.)199 2248 y(1.)61
e59452c7
CR
11197b(If)24 b(the)g(command)g(name)g(con)m(tains)i(no)e(slashes,)i(the)e
11198(shell)h(attempts)g(to)g(lo)s(cate)h(it.)39 b(If)24 b(there)g(exists)
3011048a 11199330 2357 y(a)h(shell)g(function)f(b)m(y)g(that)h(name,)h(that)f
e59452c7 11200(function)f(is)h(in)m(v)m(ok)m(ed)h(as)e(describ)s(ed)g(in)g(Section)h
3011048a
CR
11201(3.3)h([Shell)330 2467 y(F)-8 b(unctions],)31 b(page)h(19.)199
112022600 y(2.)61 b(If)41 b(the)g(name)h(do)s(es)f(not)g(matc)m(h)i(a)e
e59452c7 11203(function,)j(the)e(shell)f(searc)m(hes)i(for)e(it)h(in)f(the)g(list)h
3011048a
CR
11204(of)g(shell)330 2710 y(builtins.)e(If)30 b(a)h(matc)m(h)g(is)f(found,)g
11205(that)h(builtin)f(is)g(in)m(v)m(ok)m(ed.)199 2843 y(3.)61
e59452c7
CR
11206b(If)40 b(the)g(name)h(is)f(neither)h(a)f(shell)h(function)f(nor)g(a)g
11207(builtin,)j(and)d(con)m(tains)h(no)g(slashes,)i(Bash)330
3011048a 112082953 y(searc)m(hes)c(eac)m(h)g(elemen)m(t)g(of)g Ft($PATH)d
e59452c7 11209Fu(for)i(a)g(directory)h(con)m(taining)g(an)f(executable)h(\014le)f(b)m
3011048a 11210(y)g(that)330 3062 y(name.)56 b(Bash)36 b(uses)f(a)h(hash)e(table)j(to)
e59452c7 11211f(remem)m(b)s(er)f(the)h(full)f(pathnames)g(of)h(executable)h(\014les)e
3011048a 11212(to)330 3172 y(a)m(v)m(oid)e(m)m(ultiple)f Ft(PATH)f
e59452c7 11213Fu(searc)m(hes)i(\(see)f(the)g(description)g(of)f Ft(hash)g
3011048a 11214Fu(in)g(Section)i(4.1)f([Bourne)g(Shell)330 3281 y(Builtins],)37
e59452c7
CR
11215b(page)f(47\).)55 b(A)35 b(full)g(searc)m(h)g(of)g(the)g(directories)h
11216(in)f Ft($PATH)e Fu(is)i(p)s(erformed)f(only)h(if)g(the)330
3011048a 112173391 y(command)24 b(is)h(not)g(found)e(in)i(the)g(hash)f(table.)39
e59452c7 11218b(If)25 b(the)f(searc)m(h)i(is)e(unsuccessful,)h(the)g(shell)g(searc)m
3011048a 11219(hes)330 3501 y(for)e(a)h(de\014ned)e(shell)h(function)h(named)e
e59452c7 11220Ft(command_not_found_handle)p Fu(.)32 b(If)23 b(that)h(function)f
3011048a 11221(exists,)330 3610 y(it)33 b(is)f(in)m(v)m(ok)m(ed)i(in)e(a)h(separate)h
e59452c7 11222(execution)f(en)m(vironmen)m(t)g(with)f(the)h(original)h(command)e(and)
3011048a 11223g(the)330 3720 y(original)26 b(command's)e(argumen)m(ts)h(as)g(its)g
e59452c7 11224(argumen)m(ts,)h(and)e(the)h(function's)f(exit)i(status)f(b)s(ecomes)
3011048a 11225330 3829 y(the)j(exit)g(status)g(of)f(that)h(subshell.)39
d37a4722 11226b(If)27 b(that)h(function)f(is)h(not)g(de\014ned,)f(the)g(shell)h(prin)
3011048a
CR
11227m(ts)f(an)g(error)330 3939 y(message)k(and)f(returns)f(an)i(exit)g
11228(status)g(of)f(127.)199 4072 y(4.)61 b(If)33 b(the)g(searc)m(h)h(is)g
d37a4722 11229(successful,)g(or)f(if)g(the)h(command)f(name)g(con)m(tains)i(one)f(or)
3011048a 11230f(more)g(slashes,)i(the)330 4182 y(shell)g(executes)h(the)f(named)f
d37a4722 11231(program)g(in)h(a)g(separate)h(execution)f(en)m(vironmen)m(t.)55
3011048a 11232b(Argumen)m(t)35 b(0)330 4291 y(is)30 b(set)h(to)h(the)e(name)h(giv)m
d37a4722 11233(en,)g(and)f(the)h(remaining)f(argumen)m(ts)h(to)g(the)g(command)f(are)
3011048a
CR
11234h(set)g(to)g(the)330 4401 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8
11235b(.)199 4534 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g
74d0116b 11236(the)f(\014le)h(is)g(not)g(in)f(executable)j(format,)f(and)e(the)h
3011048a 11237(\014le)g(is)g(not)330 4644 y(a)d(directory)-8 b(,)34
6e51e0d0
CR
11238b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fr(shell)g(script)h
11239Fu(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330
3011048a
CR
112404753 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(46.)199
112414887 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async)
8a0829e9 11242m(hronously)-8 b(,)42 b(the)c(shell)h(w)m(aits)h(for)e(the)h(command)f
3011048a
CR
11243(to)330 4996 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150
112445193 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
112455340 y Fu(The)30 b(shell)g(has)h(an)f Fr(execution)h(en)m(vironmen)m(t)
11246p Fu(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)p
e59452c7
CR
11247eop end
11248%%Page: 43 49
11249TeXDict begin 43 48 bop 150 -116 a Fu(Chapter)30 b(3:)41
11250b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(43)225 299
3011048a
CR
11251y Fq(\017)60 b Fu(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f
11252(shell)h(at)g(in)m(v)m(o)s(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g
11253(redirections)h(supplied)e(to)330 408 y(the)g Ft(exec)e
11254Fu(builtin)225 547 y Fq(\017)60 b Fu(the)28 b(curren)m(t)g(w)m(orking)h
11255(directory)g(as)f(set)h(b)m(y)f Ft(cd)p Fu(,)g Ft(pushd)p
11256Fu(,)g(or)g Ft(popd)p Fu(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at)
11257330 656 y(in)m(v)m(o)s(cation)225 795 y Fq(\017)60 b
11258Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f
11259Ft(umask)f Fu(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225
11260933 y Fq(\017)60 b Fu(curren)m(t)30 b(traps)g(set)h(b)m(y)f
11261Ft(trap)225 1071 y Fq(\017)60 b Fu(shell)30 b(parameters)f(that)h(are)g
602eae4d 11262(set)g(b)m(y)g(v)-5 b(ariable)30 b(assignmen)m(t)g(or)g(with)f
3011048a
CR
11263Ft(set)f Fu(or)i(inherited)f(from)g(the)330 1181 y(shell's)i(paren)m(t)
11264f(in)g(the)h(en)m(vironmen)m(t)225 1319 y Fq(\017)60
11265b Fu(shell)44 b(functions)f(de\014ned)f(during)h(execution)i(or)e
602eae4d 11266(inherited)h(from)f(the)h(shell's)g(paren)m(t)f(in)h(the)330
3011048a 112671429 y(en)m(vironmen)m(t)225 1567 y Fq(\017)60 b Fu(options)33
602eae4d 11268b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m(y)f(default)g(or)
3011048a
CR
11269g(with)g(command-line)g(argumen)m(ts\))h(or)330 1676
11270y(b)m(y)c Ft(set)225 1815 y Fq(\017)60 b Fu(options)31
d37a4722 11271b(enabled)f(b)m(y)g Ft(shopt)f Fu(\(see)j(Section)f(4.3.2)h([The)e
3011048a 11272(Shopt)g(Builtin],)h(page)g(70\))225 1953 y Fq(\017)60
d37a4722 11273b Fu(shell)31 b(aliases)g(de\014ned)f(with)g Ft(alias)f
e59452c7 11274Fu(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(99\))225
3011048a 112752091 y Fq(\017)60 b Fu(v)-5 b(arious)50 b(pro)s(cess)f
6e51e0d0 11276Fm(id)p Fu(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f
3011048a 11277(\(see)i(Section)g(3.2.4)g([Lists],)330 2201 y(page)31
e59452c7 11278b(10\),)h(the)f(v)-5 b(alue)30 b(of)h Ft($$)p Fu(,)f(and)g(the)g(v)-5
3011048a 11279b(alue)31 b(of)g Ft($PPID)275 2372 y Fu(When)j(a)g(simple)h(command)f
abe2eb5b 11280(other)g(than)g(a)h(builtin)f(or)g(shell)h(function)f(is)g(to)h(b)s(e)f
3011048a 11281(executed,)i(it)f(is)150 2481 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g
d37a4722 11282(separate)h(execution)g(en)m(vironmen)m(t)g(that)f(consists)g(of)h(the)
3011048a 11283f(follo)m(wing.)40 b(Unless)24 b(otherwise)150 2591 y(noted,)31
a8fd3f3e 11284b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225
3011048a 112852733 y Fq(\017)60 b Fu(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
4a8bb13f 11286(an)m(y)h(mo)s(di\014cations)h(and)e(additions)h(sp)s(eci\014ed)g(b)m
3011048a 11287(y)g(redirections)g(to)330 2842 y(the)g(command)225 2981
6e51e0d0 11288y Fq(\017)60 b Fu(the)31 b(curren)m(t)f(w)m(orking)g(directory)225
3011048a
CR
112893119 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
112903257 y Fq(\017)60 b Fu(shell)32 b(v)-5 b(ariables)33
122f603c 11291b(and)e(functions)h(mark)m(ed)g(for)g(exp)s(ort,)g(along)h(with)f(v)-5
3011048a 11292b(ariables)32 b(exp)s(orted)g(for)g(the)330 3367 y(command,)e(passed)g
122f603c 11293(in)g(the)h(en)m(vironmen)m(t)g(\(see)g(Section)g(3.7.4)i([En)m
3011048a 11294(vironmen)m(t],)e(page)g(44\))225 3505 y Fq(\017)60 b
6e51e0d0 11295Fu(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the)
122f603c 11296f(v)-5 b(alues)32 b(inherited)e(from)h(the)g(shell's)h(paren)m(t,)g
3011048a
CR
11297(and)330 3615 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)
11298275 3785 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g
e59452c7 11299(en)m(vironmen)m(t)g(cannot)g(a\013ect)h(the)f(shell's)g(execution)150
3011048a 113003895 y(en)m(vironmen)m(t.)275 4037 y(A)30 b Fr(subshell)j
e59452c7 11301Fu(is)d(a)h(cop)m(y)g(of)g(the)f(shell)h(pro)s(cess.)275
3011048a
CR
113024179 y(Command)k(substitution,)j(commands)e(group)s(ed)f(with)i(paren)m
11303(theses,)h(and)e(async)m(hronous)g(com-)150 4289 y(mands)c(are)h(in)m
e59452c7
CR
11304(v)m(ok)m(ed)i(in)d(a)i(subshell)e(en)m(vironmen)m(t)h(that)h(is)f(a)g
11305(duplicate)h(of)f(the)g(shell)g(en)m(vironmen)m(t,)150
3011048a 113064398 y(except)i(that)g(traps)f(caugh)m(t)h(b)m(y)f(the)h(shell)f(are)g
e59452c7 11307(reset)h(to)g(the)f(v)-5 b(alues)35 b(that)g(the)f(shell)h(inherited)e
3011048a 11308(from)150 4508 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
122f603c 11309b(Builtin)32 b(commands)g(that)h(are)g(in)m(v)m(ok)m(ed)h(as)e(part)g
3011048a 11310(of)h(a)f(pip)s(eline)g(are)h(also)150 4618 y(executed)41
122f603c
CR
11311b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40
11312b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150
3011048a
CR
113134727 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
113144869 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions)
6e51e0d0 11315g(inherit)g(the)g(v)-5 b(alue)31 b(of)f(the)h Ft(-e)e
3011048a 11316Fu(option)150 4979 y(from)23 b(the)i(paren)m(t)f(shell.)38
6e51e0d0 11317b(When)24 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)f(clears)h(the)f
3011048a 11318Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 5121
8a0829e9 11319y(If)f(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
6e51e0d0 11320Ft(&)p Fu(')g(and)f(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)k(the)c
3011048a 11321(default)g(standard)f(input)150 5230 y(for)35 b(the)g(command)g(is)g
6e51e0d0 11322(the)g(empt)m(y)h(\014le)f Ft(/dev/null)p Fu(.)52 b(Otherwise,)37
3011048a 11323b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 5340
6e51e0d0 11324y(the)c(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
3011048a 11325(di\014ed)g(b)m(y)g(redirections.)p eop end
e59452c7
CR
11326%%Page: 44 50
11327TeXDict begin 44 49 bop 150 -116 a Fu(Chapter)30 b(3:)41
11328b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(44)150 299
3011048a
CR
11329y Fk(3.7.4)63 b(En)m(vironmen)m(t)150 446 y Fu(When)29
11330b(a)g(program)f(is)h(in)m(v)m(ok)m(ed)h(it)g(is)f(giv)m(en)g(an)g(arra)
11331m(y)g(of)g(strings)g(called)h(the)f Fr(en)m(vironmen)m(t)p
11332Fu(.)41 b(This)28 b(is)h(a)150 555 y(list)i(of)g(name-v)-5
11333b(alue)31 b(pairs,)f(of)h(the)f(form)g Ft(name=value)p
11334Fu(.)275 683 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)m(a)m(ys)g(to)f
11335(manipulate)f(the)h(en)m(vironmen)m(t.)69 b(On)38 b(in)m(v)m(o)s
11336(cation,)44 b(the)c(shell)150 792 y(scans)g(its)h(o)m(wn)f(en)m
11337(vironmen)m(t)h(and)f(creates)i(a)f(parameter)f(for)g(eac)m(h)i(name)e
11338(found,)i(automatically)150 902 y(marking)23 b(it)h(for)f
11339Ft(export)f Fu(to)i(c)m(hild)g(pro)s(cesses.)38 b(Executed)24
11340b(commands)f(inherit)g(the)g(en)m(vironmen)m(t.)39 b(The)150
113411012 y Ft(export)c Fu(and)i(`)p Ft(declare)29 b(-x)p
11342Fu(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g(to)h(b)s
11343(e)e(added)h(to)h(and)150 1121 y(deleted)21 b(from)f(the)h(en)m
e59452c7
CR
11344(vironmen)m(t.)38 b(If)20 b(the)h(v)-5 b(alue)21 b(of)g(a)g(parameter)g
11345(in)f(the)g(en)m(vironmen)m(t)i(is)e(mo)s(di\014ed,)i(the)150
3011048a 113461231 y(new)31 b(v)-5 b(alue)32 b(b)s(ecomes)f(part)h(of)f(the)h(en)m
e59452c7 11347(vironmen)m(t,)g(replacing)h(the)e(old.)44 b(The)31 b(en)m(vironmen)m
3011048a 11348(t)h(inherited)150 1340 y(b)m(y)f(an)m(y)g(executed)h(command)f
e59452c7 11349(consists)g(of)g(the)g(shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f
3011048a 11350(v)-5 b(alues)31 b(ma)m(y)h(b)s(e)150 1450 y(mo)s(di\014ed)26
595e3e69
CR
11351b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m(v)m(ed)i(b)m(y)f
11352(the)g Ft(unset)e Fu(and)h(`)p Ft(export)j(-n)p Fu(')e(commands,)g
3011048a
CR
11353(plus)150 1560 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d
11354Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 1687
595e3e69 11355y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g
220537f2 11356(function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150
3011048a 113571797 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
220537f2 11358(as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150
3011048a 113591906 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
220537f2 11360(a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h
3011048a 11361(command.)275 2034 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g
e59452c7 11362(Section)g(4.3.1)g([The)f(Set)g(Builtin],)h(page)g(66\),)h(then)e(all)g
3011048a 11363(parameter)150 2143 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m
d37a4722 11364(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i(that)f
3011048a 11365(precede)g(the)150 2253 y(command)g(name.)275 2380 y(When)h(Bash)h(in)m
d37a4722
CR
11366(v)m(ok)m(es)i(an)e(external)h(command,)f(the)g(v)-5
11367b(ariable)33 b(`)p Ft($_)p Fu(')f(is)g(set)h(to)f(the)g(full)g
3011048a
CR
11368(pathname)150 2490 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
11369(command)f(in)g(its)h(en)m(vironmen)m(t.)150 2675 y Fk(3.7.5)63
11370b(Exit)40 b(Status)150 2822 y Fu(The)23 b(exit)i(status)f(of)h(an)e
e59452c7 11371(executed)i(command)f(is)g(the)g(v)-5 b(alue)24 b(returned)f(b)m(y)h
3011048a 11372(the)g Ft(waitpid)e Fu(system)i(call)h(or)150 2932 y(equiv)-5
e59452c7
CR
11373b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g(b)s(et)m(w)m
11374(een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s(elo)m(w,)h(the)
3011048a 11375150 3041 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g
e59452c7 11376(125)h(sp)s(ecially)-8 b(.)54 b(Exit)35 b(statuses)g(from)f(shell)h
3011048a 11377(builtins)f(and)f(comp)s(ound)150 3151 y(commands)j(are)g(also)h
e59452c7 11378(limited)g(to)g(this)f(range.)58 b(Under)36 b(certain)h(circumstances,)
3011048a 11379h(the)e(shell)h(will)f(use)150 3260 y(sp)s(ecial)31 b(v)-5
e59452c7 11380b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)f(failure)h(mo)s(des.)275
3011048a 113813388 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s(oses,)e(a)j(command)e
e59452c7 11382(whic)m(h)h(exits)g(with)g(a)g(zero)g(exit)h(status)f(has)f(succeeded.)
3011048a 11383150 3497 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40
e59452c7 11384b(This)28 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e(is)f
3011048a 11385(used)g(so)150 3607 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m
e59452c7
CR
11386(y)g(to)h(indicate)g(success)f(and)f(a)h(v)-5 b(ariet)m(y)35
11387b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)150
3011048a 113883716 y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i
e59452c7 11389(on)e(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i
3011048a 11390Fr(N)p Fu(,)i(Bash)150 3826 y(uses)30 b(the)g(v)-5 b(alue)31
091c6bc4 11391b(128)p Ft(+)p Fr(N)42 b Fu(as)30 b(the)h(exit)g(status.)275
3011048a 113923954 y(If)k(a)h(command)g(is)g(not)g(found,)g(the)g(c)m(hild)h(pro)s
091c6bc4 11393(cess)e(created)i(to)g(execute)g(it)g(returns)d(a)j(status)f(of)150
3011048a 113944063 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)f(but)h(is)g(not)h
091c6bc4 11395(executable,)h(the)f(return)e(status)i(is)f(126.)275
3011048a 113964191 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f
e59452c7 11397(during)g(expansion)h(or)g(redirection,)i(the)f(exit)g(status)150
3011048a 113984300 y(is)c(greater)i(than)e(zero.)275 4428 y(The)38
e59452c7 11399b(exit)h(status)g(is)g(used)f(b)m(y)g(the)h(Bash)g(conditional)h
3011048a 11400(commands)e(\(see)h(Section)h(3.2.5.2)h([Con-)150 4537
e59452c7
CR
11401y(ditional)i(Constructs],)h(page)f(12\))g(and)e(some)i(of)f(the)g(list)
11402g(constructs)g(\(see)h(Section)f(3.2.4)i([Lists],)150
3011048a 114034647 y(page)31 b(10\).)275 4774 y(All)40 b(of)g(the)h(Bash)f(builtins)f
e59452c7 11404(return)g(an)h(exit)h(status)g(of)f(zero)h(if)f(they)g(succeed)g(and)g
3011048a 11405(a)g(non-zero)150 4884 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m
e59452c7 11406(y)g(b)s(e)f(used)g(b)m(y)g(the)h(conditional)h(and)e(list)h
3011048a 11407(constructs.)50 b(All)35 b(builtins)150 4993 y(return)e(an)i(exit)g
e59452c7 11408(status)g(of)f(2)h(to)g(indicate)h(incorrect)f(usage,)h(generally)g(in)
3011048a
CR
11409m(v)-5 b(alid)35 b(options)g(or)f(missing)150 5103 y(argumen)m(ts.)275
114105230 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5
e59452c7 11411b(ailable)36 b(in)e(the)g(sp)s(ecial)h(parameter)f($?)52
3011048a
CR
11412b(\(see)35 b(Sec-)150 5340 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m
11413(arameters],)h(page)f(23\).)p eop end
e59452c7
CR
11414%%Page: 45 51
11415TeXDict begin 45 50 bop 150 -116 a Fu(Chapter)30 b(3:)41
11416b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(45)150 299
3011048a
CR
11417y Fk(3.7.6)63 b(Signals)150 446 y Fu(When)36 b(Bash)g(is)h(in)m
11418(teractiv)m(e,)j(in)c(the)h(absence)f(of)h(an)m(y)f(traps,)i(it)e
11419(ignores)h Ft(SIGTERM)d Fu(\(so)j(that)g(`)p Ft(kill)150
11420555 y(0)p Fu(')c(do)s(es)g(not)g(kill)g(an)g(in)m(teractiv)m(e)j
11421(shell\),)f(and)d Ft(SIGINT)f Fu(is)i(caugh)m(t)h(and)f(handled)f(\(so)
11422h(that)h(the)f Ft(wait)150 665 y Fu(builtin)24 b(is)h(in)m
11423(terruptible\).)39 b(When)24 b(Bash)g(receiv)m(es)j(a)d
11424Ft(SIGINT)p Fu(,)h(it)g(breaks)f(out)h(of)f(an)m(y)h(executing)h(lo)s
11425(ops.)150 775 y(In)31 b(all)h(cases,)h(Bash)f(ignores)g
11426Ft(SIGQUIT)p Fu(.)42 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h
11427(\(see)f(Chapter)f(7)h([Job)g(Con)m(trol],)150 884 y(page)f(112\),)h
11428(Bash)f(ignores)g Ft(SIGTTIN)p Fu(,)d Ft(SIGTTOU)p Fu(,)h(and)h
11429Ft(SIGTSTP)p Fu(.)275 1043 y(Non-builtin)h(commands)g(started)g(b)m(y)g
091c6bc4 11430(Bash)h(ha)m(v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5
3011048a 11431b(alues)31 b(inherited)150 1153 y(b)m(y)37 b(the)h(shell)g(from)f(its)h
091c6bc4 11432(paren)m(t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f
3011048a 11433(e\013ect,)k(async)m(hronous)c(commands)150 1262 y(ignore)f
091c6bc4
CR
11434Ft(SIGINT)e Fu(and)h Ft(SIGQUIT)e Fu(in)j(addition)f(to)i(these)f
11435(inherited)f(handlers.)55 b(Commands)35 b(run)f(as)i(a)150
3011048a
CR
114361372 y(result)27 b(of)h(command)f(substitution)h(ignore)g(the)g(k)m
11437(eyb)s(oard-generated)g(job)g(con)m(trol)h(signals)f
11438Ft(SIGTTIN)p Fu(,)150 1482 y Ft(SIGTTOU)p Fu(,)h(and)g
11439Ft(SIGTSTP)p Fu(.)275 1641 y(The)h(shell)i(exits)g(b)m(y)f(default)g
11440(up)s(on)f(receipt)i(of)f(a)h Ft(SIGHUP)p Fu(.)42 b(Before)32
11441b(exiting,)h(an)e(in)m(teractiv)m(e)j(shell)150 1750
11442y(resends)41 b(the)i Ft(SIGHUP)e Fu(to)i(all)g(jobs,)i(running)c(or)h
11443(stopp)s(ed.)76 b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g
11444Ft(SIGCONT)d Fu(to)150 1860 y(ensure)32 b(that)h(they)g(receiv)m(e)i
11445(the)e Ft(SIGHUP)p Fu(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)
11446g(from)g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 1969
11447y(to)i(a)g(particular)g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h
11448(from)g(the)f(jobs)g(table)i(with)e(the)h Ft(disown)e
11449Fu(builtin)h(\(see)150 2079 y(Section)c(7.2)g([Job)e(Con)m(trol)i
11450(Builtins],)g(page)g(113\))h(or)e(mark)m(ed)g(to)g(not)g(receiv)m(e)i
11451Ft(SIGHUP)c Fu(using)i Ft(disown)150 2189 y(-h)p Fu(.)275
114522348 y(If)38 b(the)h Ft(huponexit)e Fu(shell)i(option)g(has)g(b)s(een)f
11453(set)i(with)f Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150
114542457 y(Builtin],)31 b(page)g(70\),)h(Bash)f(sends)e(a)i
595e3e69 11455Ft(SIGHUP)e Fu(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i(login)
3011048a 11456e(shell)g(exits.)275 2616 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g
595e3e69 11457(command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic)
3011048a 11458m(h)h(a)g(trap)150 2726 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g
595e3e69 11459(not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f(completes.)55
3011048a 11460b(When)35 b(Bash)g(is)150 2835 y(w)m(aiting)j(for)f(an)g(async)m
595e3e69 11461(hronous)g(command)g(via)h(the)f Ft(wait)f Fu(builtin,)i(the)g
3011048a 11462(reception)g(of)f(a)g(signal)h(for)150 2945 y(whic)m(h)d(a)g(trap)g
6e51e0d0
CR
11463(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f
11464Fu(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
3011048a
CR
114653055 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
11466f(the)h(trap)f(is)g(executed.)275 3214 y(When)41 b(job)g(con)m(trol)h
e59452c7 11467(is)g(not)f(enabled,)k(and)40 b(Bash)i(is)f(w)m(aiting)i(for)e(a)h
3011048a 11468(foreground)e(command)h(to)150 3323 y(complete,)35 b(the)e(shell)h
e59452c7 11469(receiv)m(es)g(k)m(eyb)s(oard-generated)g(signals)g(suc)m(h)e(as)i
3011048a 11470Ft(SIGINT)d Fu(\(usually)i(generated)150 3433 y(b)m(y)e(`)p
e59452c7
CR
11471Ft(^C)p Fu('\))h(that)g(users)e(commonly)i(in)m(tend)g(to)g(send)e(to)j
11472(that)f(command.)43 b(This)31 b(happ)s(ens)e(b)s(ecause)j(the)150
3011048a 114733542 y(shell)23 b(and)g(the)h(command)f(are)g(in)g(the)h(same)f(pro)s
e59452c7 11474(cess)g(group)g(as)h(the)f(terminal,)i(and)e(`)p Ft(^C)p
3011048a 11475Fu(')g(sends)g Ft(SIGINT)150 3652 y Fu(to)35 b(all)g(pro)s(cesses)f(in)
e59452c7 11476g(that)g(pro)s(cess)g(group.)51 b(See)35 b(Chapter)e(7)i([Job)f(Con)m
3011048a
CR
11477(trol],)i(page)f(112,)h(for)e(a)h(more)150 3762 y(in-depth)30
11478b(discussion)f(of)i(pro)s(cess)f(groups.)275 3921 y(When)35
e59452c7
CR
11479b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i(enabled)f(and)g
11480(receiv)m(es)h Ft(SIGINT)e Fu(while)h(w)m(aiting)150
3011048a 114814030 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g
e59452c7 11482(that)g(foreground)f(command)g(terminates)h(and)f(then)150
3011048a
CR
114834140 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h
11484Ft(SIGINT)p Fu(:)199 4299 y(1.)61 b(If)29 b(the)h(command)f(terminates)
e59452c7 11485i(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g
3011048a 11486(user)f(mean)m(t)h(to)330 4408 y(end)25 b(the)h(en)m(tire)h(script,)g
e59452c7 11487(and)f(acts)h(on)e(the)i Ft(SIGINT)d Fu(\(e.g.,)k(b)m(y)e(running)f(a)h
3011048a
CR
11488Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 4518 y(itself)7
11489b(\);)199 4665 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h
e59452c7 11490(terminate)g(due)f(to)h Ft(SIGINT)p Fu(,)g(the)g(program)f(handled)f
3011048a 11491(the)i Ft(SIGINT)330 4774 y Fu(itself)35 b(and)e(did)h(not)g(treat)h
e59452c7 11492(it)g(as)f(a)g(fatal)i(signal.)52 b(In)33 b(that)i(case,)h(Bash)e(do)s
3011048a 11493(es)g(not)g(treat)i Ft(SIGINT)330 4884 y Fu(as)41 b(a)g(fatal)g
e59452c7
CR
11494(signal,)j(either,)g(instead)d(assuming)f(that)h(the)g
11495Ft(SIGINT)d Fu(w)m(as)j(used)f(as)h(part)f(of)h(the)330
3011048a 114964994 y(program's)32 b(normal)g(op)s(eration)h(\(e.g.,)h
e59452c7 11497Ft(emacs)d Fu(uses)g(it)i(to)g(ab)s(ort)f(editing)h(commands\))f(or)g
3011048a 11498(delib-)330 5103 y(erately)41 b(discarded.)69 b(Ho)m(w)m(ev)m(er,)45
e59452c7 11499b(Bash)40 b(will)h(run)d(an)m(y)j(trap)e(set)i(on)f Ft(SIGINT)p
3011048a 11500Fu(,)h(as)f(it)h(do)s(es)e(with)330 5213 y(an)m(y)31
e59452c7
CR
11501b(other)f(trapp)s(ed)f(signal)i(it)g(receiv)m(es)h(while)e(it)h(is)f(w)
11502m(aiting)h(for)f(the)h(foreground)e(command)h(to)330
3011048a
CR
115035322 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)p eop
11504end
e59452c7
CR
11505%%Page: 46 52
11506TeXDict begin 46 51 bop 150 -116 a Fu(Chapter)30 b(3:)41
11507b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(46)150 299
3011048a
CR
11508y Fs(3.8)68 b(Shell)45 b(Scripts)150 458 y Fu(A)30 b(shell)f(script)h
11509(is)f(a)h(text)h(\014le)f(con)m(taining)h(shell)f(commands.)40
11510b(When)29 b(suc)m(h)g(a)h(\014le)g(is)f(used)g(as)h(the)g(\014rst)150
11511568 y(non-option)c(argumen)m(t)h(when)e(in)m(v)m(oking)i(Bash,)g(and)f
11512(neither)g(the)g Ft(-c)g Fu(nor)f Ft(-s)h Fu(option)g(is)g(supplied)f
11513(\(see)150 677 y(Section)39 b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f
11514(90\),)i(Bash)d(reads)g(and)f(executes)i(commands)f(from)f(the)i
11515(\014le,)150 787 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s
11516(eration)f(creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46
11517b(The)31 b(shell)i(\014rst)e(searc)m(hes)150 897 y(for)d(the)g(\014le)g
11518(in)g(the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e
11519(the)i(directories)g(in)e Ft($PATH)g Fu(if)h(not)g(found)e(there.)275
115201031 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
e59452c7 11521(sp)s(ecial)i(parameter)f Ft(0)f Fu(to)h(the)g(name)g(of)g(the)g
3011048a 11522(\014le,)150 1141 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
e59452c7 11523(and)d(the)h(p)s(ositional)g(parameters)f(are)h(set)g(to)g(the)g
3011048a
CR
11524(remain-)150 1250 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
11525(en.)67 b(If)39 b(no)g(additional)g(argumen)m(ts)h(are)f(supplied,)h
11526(the)f(p)s(ositional)150 1360 y(parameters)31 b(are)f(unset.)275
115271494 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
6e51e0d0 11528(y)e(using)g(the)h Ft(chmod)e Fu(command)h(to)h(turn)e(on)i(the)150
3011048a 115291604 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
6e51e0d0 11530(\014le)f(while)g(searc)m(hing)h(the)f Ft($PATH)f Fu(for)h(a)h
3011048a 11531(command,)h(it)150 1714 y(creates)32 b(a)f(new)e(instance)i(of)g
e59452c7 11532(itself)g(to)g(execute)h(it.)41 b(In)30 b(other)h(w)m(ords,)f
3011048a
CR
11533(executing)390 1848 y Ft(filename)46 b Fj(arguments)150
115341983 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390
115352117 y Ft(bash)47 b(filename)e Fj(arguments)150 2252
e59452c7
CR
11536y Fu(if)30 b Ft(filename)d Fu(is)j(an)f(executable)j(shell)e(script.)40
11537b(This)29 b(subshell)g(reinitializes)i(itself,)g(so)f(that)h(the)e
3011048a 11538(e\013ect)150 2361 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)
e59452c7 11539g(in)m(v)m(ok)m(ed)h(to)h(in)m(terpret)e(the)h(script,)h(with)e(the)h
3011048a 11540(exception)h(that)f(the)150 2471 y(lo)s(cations)25 b(of)g(commands)e
e59452c7
CR
11541(remem)m(b)s(ered)h(b)m(y)g(the)g(paren)m(t)g(\(see)h(the)f
11542(description)g(of)g Ft(hash)f Fu(in)h(Section)h(4.1)150
3011048a
CR
115432580 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(47\))h(are)e(retained)h
11544(b)m(y)f(the)h(c)m(hild.)275 2715 y(Most)36 b(v)m(ersions)g(of)g(Unix)f
e59452c7 11545(mak)m(e)h(this)g(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f
3011048a 11546(command)h(execution)150 2824 y(mec)m(hanism.)50 b(If)33
e59452c7
CR
11547b(the)g(\014rst)g(line)h(of)f(a)h(script)f(b)s(egins)g(with)g(the)g(t)m
11548(w)m(o)i(c)m(haracters)g(`)p Ft(#!)p Fu(',)f(the)g(remainder)150
3011048a 115492934 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for)
e59452c7 11550g(the)g(program)g(and,)g(dep)s(ending)e(on)i(the)g(op)s(erating)h
3011048a 11551(system,)150 3044 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g
e59452c7 11552(that)g(in)m(terpreter.)40 b(Th)m(us,)26 b(y)m(ou)g(can)g(sp)s(ecify)g
3011048a 11553(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 3153 y(or)k(some)h(other)g(in)m
e59452c7 11554(terpreter)g(and)e(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h
3011048a 11555(in)f(that)h(language.)275 3288 y(The)k(argumen)m(ts)h(to)h(the)f(in)m
e59452c7 11556(terpreter)h(consist)f(of)h(one)f(or)g(more)g(optional)h(argumen)m(ts)f
3011048a 11557(follo)m(wing)150 3397 y(the)e(in)m(terpreter)g(name)g(on)g(the)g
e59452c7 11558(\014rst)g(line)g(of)g(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)
3011048a 11559e(the)g(name)g(of)g(the)g(script)150 3507 y(\014le,)k(follo)m(w)m(ed)g
e59452c7
CR
11560(b)m(y)e(the)g(rest)g(of)g(the)h(argumen)m(ts)f(supplied)f(to)i(the)f
11561(script.)58 b(The)35 b(details)i(of)g(ho)m(w)f(the)150
3011048a 115623616 y(in)m(terpreter)26 b(line)g(is)g(split)g(in)m(to)h(an)f(in)m
e59452c7 11563(terpreter)g(name)g(and)f(a)h(set)h(of)e(argumen)m(ts)i(v)-5
3011048a 11564b(ary)25 b(across)i(systems.)150 3726 y(Bash)j(will)f(p)s(erform)g
e59452c7 11565(this)g(action)i(on)e(op)s(erating)h(systems)g(that)g(do)f(not)h
3011048a 11566(handle)f(it)h(themselv)m(es.)42 b(Note)150 3836 y(that)e(some)g(older)
e59452c7 11567g(v)m(ersions)g(of)g(Unix)f(limit)i(the)f(in)m(terpreter)g(name)g(and)f
3011048a 11568(a)h(single)g(argumen)m(t)g(to)h(a)150 3945 y(maxim)m(um)21
e59452c7
CR
11569b(of)g(32)h(c)m(haracters,)j(so)c(it's)h(not)g(p)s(ortable)f(to)h
11570(assume)e(that)i(using)f(more)g(than)g(one)g(argumen)m(t)150
3011048a 115714055 y(will)31 b(w)m(ork.)275 4189 y(Bash)h(scripts)g(often)g(b)s(egin)
e59452c7 11572g(with)g Ft(#!)e(/bin/bash)g Fu(\(assuming)i(that)h(Bash)f(has)g(b)s
3011048a 11573(een)f(installed)i(in)150 4299 y Ft(/bin)p Fu(\),)26
e59452c7
CR
11574b(since)h(this)f(ensures)f(that)i(Bash)f(will)h(b)s(e)f(used)f(to)i(in)
11575m(terpret)f(the)h(script,)g(ev)m(en)g(if)f(it)h(is)f(executed)150
3011048a 115764408 y(under)h(another)h(shell.)41 b(It's)28 b(a)h(common)g(idiom)f(to)
e59452c7 11577h(use)f Ft(env)g Fu(to)h(\014nd)e Ft(bash)g Fu(ev)m(en)i(if)f(it's)i(b)
3011048a 11578s(een)d(installed)150 4518 y(in)h(another)g(directory:)40
e59452c7 11579b Ft(#!/usr/bin/env)27 b(bash)f Fu(will)j(\014nd)d(the)j(\014rst)e(o)s
d37a4722
CR
11580(ccurrence)h(of)g Ft(bash)f Fu(in)h Ft($PATH)p Fu(.)p
11581eop end
e59452c7
CR
11582%%Page: 47 53
11583TeXDict begin 47 52 bop 3659 -116 a Fu(47)150 299 y Fp(4)80
967625cd 11584b(Shell)53 b(Builtin)f(Commands)150 499 y Fu(Builtin)34
c302751c
CR
11585b(commands)f(are)h(con)m(tained)g(within)f(the)h(shell)g(itself.)50
11586b(When)34 b(the)f(name)h(of)f(a)h(builtin)f(com-)150
967625cd 11587608 y(mand)26 b(is)i(used)e(as)i(the)g(\014rst)e(w)m(ord)h(of)h(a)f
d37a4722 11588(simple)h(command)f(\(see)h(Section)g(3.2.2)h([Simple)f(Commands],)150
e59452c7 11589718 y(page)21 b(9\),)j(the)d(shell)g(executes)h(the)f(command)f
37c41ab1 11590(directly)-8 b(,)24 b(without)d(in)m(v)m(oking)h(another)f(program.)37
967625cd 11591b(Builtin)150 828 y(commands)f(are)h(necessary)g(to)g(implemen)m(t)g
37c41ab1 11592(functionalit)m(y)h(imp)s(ossible)e(or)h(incon)m(v)m(enien)m(t)h(to)f
967625cd
CR
11593(obtain)150 937 y(with)30 b(separate)h(utilities.)275
115941065 y(This)c(section)j(brie\015y)e(describ)s(es)g(the)h(builtins)f
ac18b312 11595(whic)m(h)g(Bash)h(inherits)f(from)g(the)h(Bourne)g(Shell,)g(as)150
967625cd 115961174 y(w)m(ell)i(as)g(the)g(builtin)e(commands)h(whic)m(h)h(are)f
ac18b312 11597(unique)g(to)h(or)f(ha)m(v)m(e)i(b)s(een)d(extended)i(in)f(Bash.)275
967625cd 115981302 y(Sev)m(eral)45 b(builtin)e(commands)h(are)h(describ)s(ed)e(in)h
ac18b312 11599(other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150
967625cd 116001412 y(pro)m(vide)23 b(the)h(Bash)f(in)m(terface)i(to)f(the)g(job)f
37c41ab1 11601(con)m(trol)i(facilities)g(\(see)f(Section)h(7.2)f([Job)f(Con)m(trol)h
fffe80d4 11602(Builtins],)150 1521 y(page)33 b(113\),)i(the)e(directory)g(stac)m(k)h
e59452c7
CR
11603(\(see)f(Section)h(6.8.1)g([Directory)g(Stac)m(k)g(Builtins],)g(page)f
11604(101\),)i(the)150 1631 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
fffe80d4 11605([Bash)f(History)g(Builtins],)h(page)g(151\),)h(and)d(the)h
967625cd 11606(programmable)150 1740 y(completion)32 b(facilities)g(\(see)g(Section)f
fffe80d4 11607(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(145\).)275
967625cd
CR
116081868 y(Man)m(y)f(of)f(the)h(builtins)e(ha)m(v)m(e)j(b)s(een)e(extended)
11609g(b)m(y)g Fm(posix)g Fu(or)g(Bash.)275 1996 y(Unless)20
d7935593 11610b(otherwise)h(noted,)h(eac)m(h)g(builtin)e(command)g(do)s(cumen)m(ted)g
560db36b
CR
11611(as)h(accepting)h(options)e(preceded)150 2105 y(b)m(y)42
11612b(`)p Ft(-)p Fu(')g(accepts)h(`)p Ft(--)p Fu(')f(to)h(signify)f(the)g
11613(end)f(of)h(the)g(options.)76 b(The)41 b Ft(:)p Fu(,)k
11614Ft(true)p Fu(,)f Ft(false)p Fu(,)g(and)d Ft(test)p Fu(/)p
11615Ft([)150 2215 y Fu(builtins)32 b(do)g(not)h(accept)h(options)f(and)f
11616(do)g(not)h(treat)g(`)p Ft(--)p Fu(')g(sp)s(ecially)-8
11617b(.)48 b(The)32 b Ft(exit)p Fu(,)g Ft(logout)p Fu(,)f
11618Ft(return)p Fu(,)150 2325 y Ft(break)p Fu(,)38 b Ft(continue)p
11619Fu(,)f Ft(let)p Fu(,)i(and)d Ft(shift)g Fu(builtins)h(accept)i(and)e
11620(pro)s(cess)g(argumen)m(ts)h(b)s(eginning)e(with)150
116212434 y(`)p Ft(-)p Fu(')h(without)f(requiring)g(`)p Ft(--)p
11622Fu('.)59 b(Other)36 b(builtins)g(that)h(accept)h(argumen)m(ts)f(but)f
11623(are)h(not)g(sp)s(eci\014ed)f(as)150 2544 y(accepting)28
11624b(options)f(in)m(terpret)g(argumen)m(ts)g(b)s(eginning)e(with)i(`)p
11625Ft(-)p Fu(')f(as)h(in)m(v)-5 b(alid)27 b(options)g(and)f(require)g(`)p
11626Ft(--)p Fu(')150 2653 y(to)31 b(prev)m(en)m(t)g(this)f(in)m
11627(terpretation.)150 2880 y Fs(4.1)68 b(Bourne)45 b(Shell)g(Builtins)150
116283040 y Fu(The)22 b(follo)m(wing)j(shell)d(builtin)h(commands)f(are)h
11629(inherited)g(from)f(the)h(Bourne)g(Shell.)38 b(These)22
11630b(commands)150 3149 y(are)31 b(implemen)m(ted)g(as)f(sp)s(eci\014ed)g
11631(b)m(y)g(the)h Fm(posix)e Fu(standard.)150 3295 y Ft(:)h
11632Fu(\(a)h(colon\))870 3405 y Ft(:)47 b([)p Fj(arguments)p
11633Ft(])630 3532 y Fu(Do)c(nothing)f(b)s(ey)m(ond)g(expanding)f
11634Fr(argumen)m(ts)46 b Fu(and)c(p)s(erforming)f(redirections.)76
11635b(The)630 3642 y(return)29 b(status)i(is)f(zero.)150
967625cd 116363788 y Ft(.)g Fu(\(a)h(p)s(erio)s(d\))870 3897 y Ft(.)47
bce12dd7 11637b Fj(filename)f Ft([)p Fj(arguments)p Ft(])630 4025 y
6e51e0d0
CR
11638Fu(Read)34 b(and)f(execute)i(commands)e(from)g(the)h
11639Fr(\014lename)39 b Fu(argumen)m(t)34 b(in)f(the)h(curren)m(t)g(shell)
bce12dd7 11640630 4134 y(con)m(text.)45 b(If)31 b Fr(\014lename)37
6e51e0d0
CR
11641b Fu(do)s(es)31 b(not)g(con)m(tain)i(a)e(slash,)h(the)g
11642Ft(PATH)e Fu(v)-5 b(ariable)32 b(is)f(used)f(to)i(\014nd)630
e59452c7
CR
116434244 y Fr(\014lename)p Fu(,)38 b(but)e Fr(\014lename)41
11644b Fu(do)s(es)36 b(not)h(need)f(to)h(b)s(e)e(executable.)60
11645b(When)36 b(Bash)g(is)h(not)f(in)630 4354 y Fm(posix)25
11646b Fu(mo)s(de,)i(the)f(curren)m(t)g(directory)g(is)g(searc)m(hed)h(if)e
11647Fr(\014lename)32 b Fu(is)26 b(not)g(found)e(in)i Ft($PATH)p
11648Fu(.)630 4463 y(If)39 b(an)m(y)h Fr(argumen)m(ts)j Fu(are)d(supplied,)h
11649(they)e(b)s(ecome)h(the)g(p)s(ositional)g(parameters)g(when)630
116504573 y Fr(\014lename)i Fu(is)36 b(executed.)60 b(Otherwise)36
11651b(the)h(p)s(ositional)g(parameters)g(are)g(unc)m(hanged.)58
11652b(If)630 4682 y(the)33 b Ft(-T)g Fu(option)g(is)g(enabled,)h
11653Ft(.)f Fu(inherits)g(an)m(y)g(trap)g(on)g Ft(DEBUG)p
11654Fu(;)g(if)g(it)h(is)f(not,)h(an)m(y)f Ft(DEBUG)630 4792
11655y Fu(trap)f(string)g(is)g(sa)m(v)m(ed)h(and)f(restored)g(around)f(the)i
11656(call)g(to)g Ft(.)p Fu(,)f(and)g Ft(.)g Fu(unsets)f(the)h
11657Ft(DEBUG)630 4902 y Fu(trap)f(while)h(it)g(executes.)46
11658b(If)31 b Ft(-T)g Fu(is)g(not)h(set,)h(and)d(the)i(sourced)f(\014le)h
11659(c)m(hanges)h(the)e Ft(DEBUG)630 5011 y Fu(trap,)e(the)f(new)g(v)-5
11660b(alue)29 b(is)f(retained)h(when)e Ft(.)h Fu(completes.)42
11661b(The)27 b(return)h(status)g(is)h(the)f(exit)630 5121
11662y(status)k(of)f(the)h(last)g(command)f(executed,)i(or)f(zero)g(if)f(no)
11663h(commands)f(are)h(executed.)44 b(If)630 5230 y Fr(\014lename)d
11664Fu(is)36 b(not)g(found,)h(or)e(cannot)i(b)s(e)e(read,)j(the)e(return)f
11665(status)h(is)g(non-zero.)58 b(This)630 5340 y(builtin)30
11666b(is)g(equiv)-5 b(alen)m(t)32 b(to)f Ft(source)p Fu(.)p
11667eop end
11668%%Page: 48 54
11669TeXDict begin 48 53 bop 150 -116 a Fu(Chapter)30 b(4:)41
11670b(Shell)30 b(Builtin)h(Commands)2069 b(48)150 299 y Ft(break)870
11671433 y(break)46 b([)p Fj(n)p Ft(])630 568 y Fu(Exit)f(from)f(a)g
bce12dd7
CR
11672Ft(for)p Fu(,)k Ft(while)p Fu(,)e Ft(until)p Fu(,)h(or)d
11673Ft(select)f Fu(lo)s(op.)83 b(If)44 b Fr(n)g Fu(is)g(supplied,)j(the)e
e59452c7 11674Fr(n)p Fu(th)630 677 y(enclosing)c(lo)s(op)f(is)h(exited.)70
bce12dd7 11675b Fr(n)40 b Fu(m)m(ust)g(b)s(e)f(greater)j(than)d(or)i(equal)f(to)h(1.)
e59452c7 1167670 b(The)40 b(return)630 787 y(status)31 b(is)f(zero)h(unless)f
bce12dd7 11677Fr(n)g Fu(is)g(not)h(greater)g(than)g(or)f(equal)h(to)g(1.)150
e59452c7
CR
11678946 y Ft(cd)870 1081 y(cd)47 b([-L|[-P)f([-e]])g([-@])h([)p
11679Fj(directory)p Ft(])630 1215 y Fu(Change)27 b(the)g(curren)m(t)f(w)m
bce12dd7 11680(orking)h(directory)g(to)h Fr(directory)p Fu(.)40 b(If)26
e59452c7
CR
11681b Fr(directory)35 b Fu(is)27 b(not)g(supplied,)630 1325
11682y(the)k(v)-5 b(alue)31 b(of)g(the)g Ft(HOME)e Fu(shell)i(v)-5
11683b(ariable)32 b(is)f(used.)40 b(If)31 b(the)g(shell)g(v)-5
11684b(ariable)31 b Ft(CDPATH)e Fu(exists,)630 1435 y(it)44
11685b(is)f(used)g(as)h(a)f(searc)m(h)h(path:)67 b(eac)m(h)45
11686b(directory)f(name)f(in)g Ft(CDPATH)f Fu(is)h(searc)m(hed)h(for)630
116871544 y Fr(directory)p Fu(,)k(with)c(alternativ)m(e)i(directory)f(names)
11688e(in)h Ft(CDPATH)e Fu(separated)j(b)m(y)f(a)g(colon)630
116891654 y(\(`)p Ft(:)p Fu('\).)e(If)30 b Fr(directory)38
11690b Fu(b)s(egins)30 b(with)g(a)h(slash,)f Ft(CDPATH)f Fu(is)h(not)h
11691(used.)630 1788 y(The)g Ft(-P)h Fu(option)g(means)g(to)h(not)f(follo)m
11692(w)h(sym)m(b)s(olic)g(links:)44 b(sym)m(b)s(olic)32 b(links)g(are)g
11693(resolv)m(ed)630 1898 y(while)41 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)h
6e51e0d0 11694Fr(directory)49 b Fu(and)40 b(b)s(efore)g(pro)s(cessing)h(an)f
e59452c7
CR
11695(instance)i(of)f(`)p Ft(..)p Fu(')f(in)630 2007 y Fr(directory)p
11696Fu(.)630 2142 y(By)34 b(default,)h(or)e(when)g(the)g
6e51e0d0 11697Ft(-L)g Fu(option)h(is)g(supplied,)f(sym)m(b)s(olic)h(links)f(in)h
e59452c7 11698Fr(directory)42 b Fu(are)630 2252 y(resolv)m(ed)31 b(after)g
6e51e0d0 11699Ft(cd)f Fu(pro)s(cesses)g(an)g(instance)h(of)g(`)p Ft(..)p
e59452c7 11700Fu(')f(in)g Fr(directory)p Fu(.)630 2386 y(If)35 b(`)p
6e51e0d0
CR
11701Ft(..)p Fu(')f(app)s(ears)h(in)f Fr(directory)p Fu(,)j(it)f(is)f(pro)s
11702(cessed)f(b)m(y)h(remo)m(ving)h(the)f(immediately)h(pre-)630
e59452c7 117032496 y(ceding)31 b(pathname)f(comp)s(onen)m(t,)h(bac)m(k)g(to)g(a)g
6e51e0d0 11704(slash)f(or)h(the)f(b)s(eginning)g(of)g Fr(directory)p
e59452c7 11705Fu(.)630 2630 y(If)i(the)i Ft(-e)e Fu(option)h(is)g(supplied)f(with)g
6e51e0d0 11706Ft(-P)h Fu(and)f(the)h(curren)m(t)g(w)m(orking)g(directory)g(cannot)630
e59452c7 117072740 y(b)s(e)k(successfully)g(determined)g(after)i(a)e(successful)h
6e51e0d0 11708(directory)g(c)m(hange,)i Ft(cd)d Fu(will)h(return)630
e59452c7 117092849 y(an)30 b(unsuccessful)f(status.)630 2984 y(On)41
6e51e0d0
CR
11710b(systems)h(that)h(supp)s(ort)d(it,)46 b(the)c Ft(-@)g
11711Fu(option)g(presen)m(ts)g(the)g(extended)g(attributes)630
e59452c7
CR
117123093 y(asso)s(ciated)32 b(with)e(a)h(\014le)f(as)h(a)f(directory)-8
11713b(.)630 3228 y(If)41 b Fr(directory)49 b Fu(is)41 b(`)p
6e51e0d0 11714Ft(-)p Fu(',)j(it)e(is)f(con)m(v)m(erted)h(to)g Ft($OLDPWD)d
e59452c7
CR
11715Fu(b)s(efore)i(the)g(directory)h(c)m(hange)g(is)630 3337
11716y(attempted.)630 3472 y(If)33 b(a)h(non-empt)m(y)g(directory)g(name)f
6e51e0d0 11717(from)g Ft(CDPATH)f Fu(is)h(used,)h(or)g(if)f(`)p Ft(-)p
e59452c7 11718Fu(')h(is)f(the)h(\014rst)f(argu-)630 3582 y(men)m(t,)28
d76edd30 11719b(and)e(the)h(directory)g(c)m(hange)h(is)f(successful,)h(the)f
e59452c7 11720(absolute)g(pathname)g(of)f(the)h(new)630 3691 y(w)m(orking)k
d76edd30 11721(directory)g(is)f(written)g(to)i(the)e(standard)g(output.)630
e59452c7
CR
117223826 y(If)i(the)i(directory)f(c)m(hange)h(is)f(successful,)h
11723Ft(cd)e Fu(sets)h(the)h(v)-5 b(alue)33 b(of)g(the)g Ft(PWD)f
11724Fu(en)m(vironmen)m(t)630 3935 y(v)-5 b(ariable)32 b(to)g(the)f(new)g
11725(directory)g(name,)h(and)e(sets)i(the)f Ft(OLDPWD)e Fu(en)m(vironmen)m
11726(t)j(v)-5 b(ariable)630 4045 y(to)31 b(the)g(v)-5 b(alue)31
11727b(of)f(the)h(curren)m(t)f(w)m(orking)g(directory)h(b)s(efore)f(the)h(c)
11728m(hange.)630 4179 y(The)e(return)g(status)h(is)f(zero)i(if)e(the)h
11729(directory)g(is)g(successfully)g(c)m(hanged,)g(non-zero)g(oth-)630
117304289 y(erwise.)150 4448 y Ft(continue)870 4583 y(continue)46
11731b([)p Fj(n)p Ft(])630 4717 y Fu(Resume)32 b(the)g(next)g(iteration)i
6e51e0d0 11732(of)e(an)g(enclosing)h Ft(for)p Fu(,)f Ft(while)p Fu(,)f
e59452c7 11733Ft(until)p Fu(,)g(or)h Ft(select)f Fu(lo)s(op.)630 4827
6e51e0d0
CR
11734y(If)f Fr(n)h Fu(is)g(supplied,)e(the)j(execution)g(of)f(the)g
11735Fr(n)p Fu(th)f(enclosing)i(lo)s(op)f(is)f(resumed.)42
e59452c7 11736b Fr(n)30 b Fu(m)m(ust)h(b)s(e)630 4936 y(greater)39
37c41ab1 11737b(than)f(or)g(equal)g(to)h(1.)63 b(The)38 b(return)e(status)j(is)e
e59452c7
CR
11738(zero)i(unless)e Fr(n)h Fu(is)g(not)g(greater)630 5046
11739y(than)30 b(or)g(equal)h(to)g(1.)150 5205 y Ft(eval)870
117405340 y(eval)47 b([)p Fj(arguments)p Ft(])p eop end
11741%%Page: 49 55
11742TeXDict begin 49 54 bop 150 -116 a Fu(Chapter)30 b(4:)41
11743b(Shell)30 b(Builtin)h(Commands)2069 b(49)630 299 y(The)25
6e51e0d0 11744b(argumen)m(ts)h(are)g(concatenated)i(together)f(in)m(to)f(a)g(single)h
e59452c7 11745(command,)f(whic)m(h)g(is)f(then)630 408 y(read)35 b(and)g(executed,)j
6e51e0d0 11746(and)d(its)h(exit)g(status)g(returned)e(as)h(the)h(exit)g(status)g(of)g
e59452c7 11747Ft(eval)p Fu(.)54 b(If)630 518 y(there)31 b(are)f(no)h(argumen)m(ts)f
6e51e0d0 11748(or)h(only)f(empt)m(y)h(argumen)m(ts,)g(the)f(return)g(status)g(is)h
e59452c7
CR
11749(zero.)150 679 y Ft(exec)870 815 y(exec)47 b([-cl])f([-a)h
11750Fj(name)p Ft(])f([)p Fj(command)g Ft([)p Fj(arguments)p
11751Ft(]])630 950 y Fu(If)36 b Fr(command)k Fu(is)c(supplied,)h(it)g
11752(replaces)h(the)e(shell)h(without)f(creating)i(a)f(new)f(pro)s(cess.)
11753630 1060 y(If)k(the)h Ft(-l)e Fu(option)i(is)g(supplied,)h(the)e(shell)
11754h(places)g(a)g(dash)f(at)h(the)f(b)s(eginning)g(of)h(the)630
117551169 y(zeroth)36 b(argumen)m(t)h(passed)e(to)h Fr(command)p
11756Fu(.)57 b(This)35 b(is)h(what)f(the)h Ft(login)e Fu(program)i(do)s(es.)
11757630 1279 y(The)i Ft(-c)g Fu(option)g(causes)h Fr(command)j
11758Fu(to)d(b)s(e)f(executed)h(with)f(an)g(empt)m(y)h(en)m(vironmen)m(t.)
11759630 1388 y(If)c Ft(-a)g Fu(is)h(supplied,)f(the)h(shell)g(passes)f
11760Fr(name)41 b Fu(as)36 b(the)f(zeroth)i(argumen)m(t)f(to)g
11761Fr(command)p Fu(.)630 1498 y(If)c Fr(command)j Fu(cannot)e(b)s(e)f
45c0f7f8 11762(executed)h(for)f(some)g(reason,)h(a)g(non-in)m(teractiv)m(e)i(shell)d
e59452c7 11763(exits,)630 1608 y(unless)27 b(the)g Ft(execfail)e Fu(shell)i(option)h
45c0f7f8 11764(is)f(enabled.)40 b(In)27 b(that)g(case,)j(it)d(returns)f(failure.)40
e59452c7 11765b(An)630 1717 y(in)m(teractiv)m(e)35 b(shell)d(returns)f(failure)h(if)g
560db36b 11766(the)g(\014le)g(cannot)h(b)s(e)e(executed.)47 b(A)32
e59452c7 11767b(subshell)f(exits)630 1827 y(unconditionally)j(if)g
560db36b 11768Ft(exec)f Fu(fails.)52 b(If)33 b(no)h Fr(command)j Fu(is)d(sp)s
e59452c7 11769(eci\014ed,)h(redirections)f(ma)m(y)h(b)s(e)630 1936
560db36b
CR
11770y(used)30 b(to)i(a\013ect)g(the)f(curren)m(t)g(shell)g(en)m(vironmen)m
11771(t.)43 b(If)30 b(there)i(are)f(no)g(redirection)g(errors,)630
e59452c7
CR
117722046 y(the)g(return)e(status)i(is)f(zero;)h(otherwise)g(the)g(return)e
11773(status)i(is)f(non-zero.)150 2207 y Ft(exit)870 2342
11774y(exit)47 b([)p Fj(n)p Ft(])630 2478 y Fu(Exit)30 b(the)g(shell,)h
560db36b 11775(returning)d(a)j(status)f(of)g Fr(n)f Fu(to)h(the)g(shell's)g(paren)m
e59452c7 11776(t.)41 b(If)30 b Fr(n)f Fu(is)h(omitted,)h(the)630 2587
560db36b
CR
11777y(exit)c(status)g(is)g(that)g(of)g(the)g(last)g(command)f(executed.)41
11778b(An)m(y)26 b(trap)h(on)f Ft(EXIT)f Fu(is)i(executed)630
e59452c7
CR
117792697 y(b)s(efore)j(the)h(shell)f(terminates.)150 2858
11780y Ft(export)870 2993 y(export)46 b([-fn])g([-p])h([)p
11781Fj(name)p Ft([=)p Fj(value)p Ft(]])630 3129 y Fu(Mark)40
560db36b
CR
11782b(eac)m(h)h Fr(name)k Fu(to)40 b(b)s(e)f(passed)g(to)i(c)m(hild)f(pro)s
11783(cesses)f(in)g(the)h(en)m(vironmen)m(t.)70 b(If)39 b(the)630
e59452c7 117843238 y Ft(-f)33 b Fu(option)h(is)g(supplied,)f(the)h
6e51e0d0 11785Fr(name)5 b Fu(s)33 b(refer)g(to)i(shell)e(functions;)i(otherwise)f
e59452c7 11786(the)g(names)630 3348 y(refer)c(to)h(shell)g(v)-5 b(ariables.)41
6e51e0d0 11787b(The)30 b Ft(-n)f Fu(option)i(means)f(to)h(no)f(longer)h(mark)f(eac)m
e59452c7
CR
11788(h)i Fr(name)j Fu(for)630 3458 y(exp)s(ort.)51 b(If)34
11789b(no)g Fr(name)5 b Fu(s)34 b(are)g(supplied,)g(or)g(if)g(the)g
11790Ft(-p)f Fu(option)i(is)f(giv)m(en,)i(a)e(list)h(of)f(names)630
117913567 y(of)d(all)h(exp)s(orted)e(v)-5 b(ariables)31 b(is)g(displa)m(y)m
6e51e0d0 11792(ed.)43 b(The)30 b Ft(-p)g Fu(option)i(displa)m(ys)e(output)h(in)f(a)h
e59452c7 11793(form)630 3677 y(that)25 b(ma)m(y)g(b)s(e)f(reused)g(as)h(input.)38
6e51e0d0
CR
11794b(If)24 b(a)h(v)-5 b(ariable)25 b(name)g(is)g(follo)m(w)m(ed)h(b)m(y)e
11795(=)p Fr(v)-5 b(alue)p Fu(,)27 b(the)d(v)-5 b(alue)630
e59452c7
CR
117963786 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g
11797Fr(v)-5 b(alue)p Fu(.)630 3922 y(The)29 b(return)e(status)j(is)f(zero)h
6e51e0d0 11798(unless)e(an)h(in)m(v)-5 b(alid)29 b(option)h(is)f(supplied,)f(one)i
e59452c7 11799(of)f(the)g(names)630 4031 y(is)k(not)g(a)h(v)-5 b(alid)33
6e51e0d0 11800b(shell)h(v)-5 b(ariable)33 b(name,)i(or)e Ft(-f)f Fu(is)h(supplied)f
e59452c7
CR
11801(with)h(a)g(name)g(that)h(is)f(not)h(a)630 4141 y(shell)d(function.)150
118024302 y Ft(getopts)870 4437 y(getopts)46 b Fj(optstring)f(name)i
11803Ft([)p Fj(arg)f Ft(...])630 4573 y(getopts)28 b Fu(is)i(used)g(b)m(y)g
6e51e0d0 11804(shell)g(scripts)g(to)g(parse)g(p)s(ositional)h(parameters.)41
e59452c7 11805b Fr(optstring)d Fu(con-)630 4682 y(tains)k(the)g(option)f(c)m
6e51e0d0 11806(haracters)i(to)g(b)s(e)d(recognized;)49 b(if)42 b(a)f(c)m(haracter)j
e59452c7 11807(is)d(follo)m(w)m(ed)i(b)m(y)f(a)630 4792 y(colon,)33
6e51e0d0 11808b(the)f(option)g(is)g(exp)s(ected)g(to)h(ha)m(v)m(e)g(an)e(argumen)m
e59452c7 11809(t,)i(whic)m(h)f(should)e(b)s(e)h(separated)630 4902
6e51e0d0
CR
11810y(from)40 b(it)g(b)m(y)g(whitespace.)70 b(The)40 b(colon)h(\(`)p
11811Ft(:)p Fu('\))g(and)e(question)h(mark)g(\(`)p Ft(?)p
e59452c7 11812Fu('\))h(ma)m(y)f(not)h(b)s(e)630 5011 y(used)d(as)g(option)h(c)m
6e51e0d0 11813(haracters.)67 b(Eac)m(h)39 b(time)g(it)g(is)f(in)m(v)m(ok)m(ed,)k
e59452c7 11814Ft(getopts)37 b Fu(places)i(the)g(next)630 5121 y(option)29
6e51e0d0
CR
11815b(in)f(the)h(shell)g(v)-5 b(ariable)30 b Fr(name)p Fu(,)f(initializing)
11816i Fr(name)j Fu(if)28 b(it)h(do)s(es)g(not)g(exist,)h(and)e(the)630
e59452c7 118175230 y(index)33 b(of)g(the)h(next)f(argumen)m(t)h(to)g(b)s(e)e(pro)s
6e51e0d0 11818(cessed)h(in)m(to)h(the)g(v)-5 b(ariable)34 b Ft(OPTIND)p
e59452c7 11819Fu(.)48 b Ft(OPTIND)630 5340 y Fu(is)41 b(initialized)i(to)f(1)f(eac)m
6e51e0d0 11820(h)h(time)g(the)f(shell)g(or)g(a)g(shell)g(script)g(is)g(in)m(v)m(ok)m
e59452c7
CR
11821(ed.)74 b(When)41 b(an)p eop end
11822%%Page: 50 56
11823TeXDict begin 50 55 bop 150 -116 a Fu(Chapter)30 b(4:)41
11824b(Shell)30 b(Builtin)h(Commands)2069 b(50)630 299 y(option)36
11825b(requires)e(an)h(argumen)m(t,)i Ft(getopts)c Fu(places)j(that)g
11826(argumen)m(t)g(in)m(to)g(the)f(v)-5 b(ariable)630 408
11827y Ft(OPTARG)p Fu(.)55 b(The)35 b(shell)g(do)s(es)h(not)g(reset)g
11828Ft(OPTIND)e Fu(automatically;)41 b(it)36 b(m)m(ust)f(b)s(e)g(man)m
11829(ually)630 518 y(reset)i(b)s(et)m(w)m(een)g(m)m(ultiple)h(calls)f(to)g
11830Ft(getopts)e Fu(within)h(the)h(same)g(shell)f(in)m(v)m(o)s(cation)j(if)
11831e(a)630 628 y(new)30 b(set)h(of)f(parameters)h(is)f(to)i(b)s(e)d(used.)
11832630 771 y(When)41 b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k
11833Ft(getopts)39 b Fu(exits)j(with)f(a)h(return)e(v)-5 b(alue)630
11834881 y(greater)32 b(than)e(zero.)41 b Ft(OPTIND)29 b Fu(is)h(set)h(to)g
11835(the)g(index)f(of)g(the)h(\014rst)f(non-option)g(argumen)m(t,)630
11836990 y(and)g Fr(name)35 b Fu(is)c(set)g(to)g(`)p Ft(?)p
11837Fu('.)630 1133 y Ft(getopts)c Fu(normally)j(parses)e(the)i(p)s
d76edd30 11838(ositional)g(parameters,)g(but)e(if)i(more)f(argumen)m(ts)h(are)630
e59452c7
CR
118391243 y(supplied)f(as)i Fr(arg)38 b Fu(v)-5 b(alues,)31
11840b Ft(getopts)e Fu(parses)h(those)h(instead.)630 1386
11841y Ft(getopts)h Fu(can)h(rep)s(ort)g(errors)g(in)h(t)m(w)m(o)h(w)m(a)m
fc35c477 11842(ys.)51 b(If)33 b(the)h(\014rst)e(c)m(haracter)k(of)d
e59452c7 11843Fr(optstring)42 b Fu(is)34 b(a)630 1496 y(colon,)g Fr(silen)m(t)h
6e51e0d0 11844Fu(error)d(rep)s(orting)f(is)i(used.)45 b(In)31 b(normal)h(op)s
e59452c7 11845(eration,)h(diagnostic)h(messages)630 1606 y(are)c(prin)m(ted)e(when)g
ad4aef08 11846(in)m(v)-5 b(alid)30 b(options)g(or)f(missing)g(option)g(argumen)m(ts)h
e59452c7 11847(are)f(encoun)m(tered.)630 1715 y(If)34 b(the)g(v)-5
6e51e0d0 11848b(ariable)35 b Ft(OPTERR)d Fu(is)i(set)h(to)f(0,)i(no)e(error)g
d76edd30 11849(messages)h(will)f(b)s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630
e59452c7
CR
118501825 y(the)c(\014rst)e(c)m(haracter)j(of)f Ft(optstring)d
11851Fu(is)i(not)h(a)f(colon.)630 1968 y(If)39 b(an)h(in)m(v)-5
6e51e0d0
CR
11852b(alid)41 b(option)f(is)g(seen,)i Ft(getopts)c Fu(places)j(`)p
11853Ft(?)p Fu(')f(in)m(to)h Fr(name)k Fu(and,)d(if)e(not)g(silen)m(t,)630
e59452c7 118542078 y(prin)m(ts)f(an)h(error)f(message)h(and)f(unsets)g
6e51e0d0 11855Ft(OPTARG)p Fu(.)67 b(If)39 b Ft(getopts)f Fu(is)i(silen)m(t,)j(the)c
e59452c7 11856(option)630 2187 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f
6e51e0d0 11857Ft(OPTARG)f Fu(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630
e59452c7 118582330 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f
6e51e0d0 11859Ft(getopts)f Fu(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630
e59452c7 118602440 y(\(`)p Ft(?)p Fu('\))h(is)g(placed)g(in)f Fr(name)p
6e51e0d0 11861Fu(,)h Ft(OPTARG)e Fu(is)h(unset,)h(and)f(a)g(diagnostic)i(message)g
e59452c7 11862(is)e(prin)m(ted.)39 b(If)630 2550 y Ft(getopts)28 b
6e51e0d0
CR
11863Fu(is)h(silen)m(t,)i(then)e(a)h(colon)h(\(`)p Ft(:)p
11864Fu('\))f(is)g(placed)g(in)f Fr(name)35 b Fu(and)29 b
e59452c7
CR
11865Ft(OPTARG)f Fu(is)h(set)h(to)h(the)630 2659 y(option)g(c)m(haracter)h
11866(found.)150 2836 y Ft(hash)870 2980 y(hash)47 b([-r])f([-p)h
11867Fj(filename)p Ft(])e([-dt])i([)p Fj(name)p Ft(])630 3123
6e51e0d0 11868y Fu(Eac)m(h)32 b(time)g Ft(hash)e Fu(is)h(in)m(v)m(ok)m(ed,)j(it)d
45c0f7f8 11869(remem)m(b)s(ers)g(the)g(full)g(pathnames)g(of)h(the)f(commands)630
e59452c7 118703232 y(sp)s(eci\014ed)i(as)i Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f
122f603c 11871(need)g(not)g(b)s(e)f(searc)m(hed)i(for)f(on)g(subsequen)m(t)630
e59452c7
CR
118723342 y(in)m(v)m(o)s(cations.)79 b(The)41 b(commands)h(are)h(found)e(b)m
11873(y)h(searc)m(hing)i(through)d(the)i(directories)630 3452
6e51e0d0
CR
11874y(listed)37 b(in)g Ft($PATH)p Fu(.)58 b(An)m(y)37 b(previously-remem)m
11875(b)s(ered)f(pathname)h(is)g(discarded.)59 b(The)37 b
e59452c7 11876Ft(-p)630 3561 y Fu(option)d(inhibits)f(the)h(path)g(searc)m(h,)h(and)e
6e51e0d0 11877Fr(\014lename)39 b Fu(is)34 b(used)f(as)h(the)f(lo)s(cation)j(of)e
e59452c7 11878Fr(name)p Fu(.)630 3671 y(The)42 b Ft(-r)g Fu(option)h(causes)f(the)h
6e51e0d0 11879(shell)g(to)g(forget)g(all)h(remem)m(b)s(ered)d(lo)s(cations.)79
e59452c7 11880b(The)42 b Ft(-d)630 3780 y Fu(option)31 b(causes)g(the)f(shell)h(to)g
6e51e0d0 11881(forget)h(the)f(remem)m(b)s(ered)e(lo)s(cation)j(of)f(eac)m(h)h
e59452c7 11882Fr(name)p Fu(.)41 b(If)30 b(the)630 3890 y Ft(-t)39 b
6e51e0d0 11883Fu(option)h(is)g(supplied,)g(the)g(full)f(pathname)h(to)g(whic)m(h)f
e59452c7 11884(eac)m(h)i Fr(name)k Fu(corresp)s(onds)38 b(is)630 4000
a2851804
CR
11885y(prin)m(ted.)i(If)28 b(m)m(ultiple)h Fr(name)34 b Fu(argumen)m(ts)29
11886b(are)g(supplied)f(with)g Ft(-t)p Fu(,)h(the)g Fr(name)34
e59452c7 11887b Fu(is)28 b(prin)m(ted)630 4109 y(b)s(efore)h(the)i(hashed)e(full)g
6e51e0d0 11888(pathname.)41 b(The)29 b Ft(-l)g Fu(option)i(causes)f(output)f(to)i(b)s
e59452c7 11889(e)e(displa)m(y)m(ed)630 4219 y(in)23 b(a)h(format)g(that)g(ma)m(y)g(b)
6e51e0d0 11890s(e)f(reused)f(as)i(input.)37 b(If)23 b(no)h(argumen)m(ts)f(are)h(giv)m
e59452c7 11891(en,)i(or)e(if)f(only)h Ft(-l)630 4328 y Fu(is)35 b(supplied,)f
6e51e0d0 11892(information)h(ab)s(out)g(remem)m(b)s(ered)f(commands)g(is)h(prin)m
e59452c7 11893(ted.)53 b(The)34 b(return)630 4438 y(status)d(is)f(zero)h(unless)f(a)h
6e51e0d0 11894Fr(name)k Fu(is)c(not)f(found)f(or)i(an)f(in)m(v)-5 b(alid)31
e59452c7
CR
11895b(option)g(is)f(supplied.)150 4615 y Ft(pwd)870 4758
11896y(pwd)47 b([-LP])630 4902 y Fu(Prin)m(t)29 b(the)g(absolute)h(pathname)
6e51e0d0 11897e(of)h(the)h(curren)m(t)e(w)m(orking)h(directory)-8 b(.)42
e59452c7 11898b(If)28 b(the)h Ft(-P)f Fu(option)630 5011 y(is)39 b(supplied,)h(the)f
6e51e0d0 11899(pathname)g(prin)m(ted)g(will)g(not)h(con)m(tain)g(sym)m(b)s(olic)f
e59452c7 11900(links.)67 b(If)38 b(the)i Ft(-L)630 5121 y Fu(option)k(is)g(supplied,)
6e51e0d0 11901i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h(sym)m(b)s(olic)f
e59452c7 11902(links.)80 b(The)630 5230 y(return)26 b(status)h(is)h(zero)g(unless)e
6e51e0d0 11903(an)h(error)g(is)g(encoun)m(tered)g(while)h(determining)f(the)g(name)
e59452c7
CR
11904630 5340 y(of)k(the)f(curren)m(t)g(directory)h(or)f(an)h(in)m(v)-5
11905b(alid)31 b(option)g(is)f(supplied.)p eop end
11906%%Page: 51 57
11907TeXDict begin 51 56 bop 150 -116 a Fu(Chapter)30 b(4:)41
11908b(Shell)30 b(Builtin)h(Commands)2069 b(51)150 299 y Ft(readonly)870
11909432 y(readonly)46 b([-aAf])g([-p])g([)p Fj(name)p Ft([=)p
11910Fj(value)p Ft(]])e(...)630 565 y Fu(Mark)33 b(eac)m(h)h
6e51e0d0
CR
11911Fr(name)39 b Fu(as)33 b(readonly)-8 b(.)49 b(The)32 b(v)-5
11912b(alues)34 b(of)f(these)g(names)g(ma)m(y)h(not)f(b)s(e)f(c)m(hanged)630
e59452c7 11913675 y(b)m(y)38 b(subsequen)m(t)g(assignmen)m(t.)65 b(If)38
6e51e0d0 11914b(the)h Ft(-f)f Fu(option)g(is)h(supplied,)g(eac)m(h)h
e59452c7
CR
11915Fr(name)j Fu(refers)38 b(to)630 784 y(a)f(shell)g(function.)59
11916b(The)36 b Ft(-a)g Fu(option)h(means)f(eac)m(h)i Fr(name)k
11917Fu(refers)36 b(to)h(an)f(indexed)g(arra)m(y)630 894 y(v)-5
11918b(ariable;)28 b(the)f Ft(-A)e Fu(option)h(means)g(eac)m(h)h
6e51e0d0 11919Fr(name)k Fu(refers)26 b(to)g(an)g(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5
e59452c7 11920b(ariable.)630 1003 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
6e51e0d0 11921Ft(-A)f Fu(tak)m(es)i(precedence.)58 b(If)35 b(no)h Fr(name)k
e59452c7 11922Fu(argumen)m(ts)d(are)630 1113 y(giv)m(en,)k(or)c(if)h(the)g
6e51e0d0 11923Ft(-p)f Fu(option)h(is)f(supplied,)i(a)f(list)g(of)g(all)g(readonly)g
e59452c7
CR
11924(names)f(is)h(prin)m(ted.)630 1223 y(The)32 b(other)g(options)g(ma)m(y)
11925h(b)s(e)f(used)f(to)i(restrict)g(the)f(output)g(to)h(a)f(subset)g(of)g
11926(the)g(set)h(of)630 1332 y(readonly)c(names.)41 b(The)28
6e51e0d0 11927b Ft(-p)h Fu(option)h(causes)g(output)e(to)j(b)s(e)d(displa)m(y)m(ed)i
e59452c7 11928(in)f(a)h(format)f(that)630 1442 y(ma)m(y)j(b)s(e)e(reused)g(as)i
6e51e0d0
CR
11929(input.)42 b(If)30 b(a)i(v)-5 b(ariable)31 b(name)h(is)f(follo)m(w)m
11930(ed)h(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)32 b(the)f(v)-5
e59452c7 11931b(alue)32 b(of)630 1551 y(the)i(v)-5 b(ariable)34 b(is)f(set)i(to)f
6e51e0d0 11932Fr(v)-5 b(alue)p Fu(.)50 b(The)33 b(return)g(status)g(is)h(zero)g
e59452c7 11933(unless)f(an)g(in)m(v)-5 b(alid)34 b(option)630 1661
6e51e0d0
CR
11934y(is)c(supplied,)f(one)h(of)g(the)g Fr(name)35 b Fu(argumen)m(ts)30
11935b(is)g(not)g(a)g(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)30
e59452c7 11936b(or)g(function)630 1771 y(name,)h(or)f(the)h Ft(-f)e
6e51e0d0 11937Fu(option)i(is)g(supplied)e(with)h(a)h(name)f(that)h(is)f(not)h(a)g
e59452c7
CR
11938(shell)f(function.)150 1927 y Ft(return)870 2060 y(return)46
11939b([)p Fj(n)p Ft(])630 2193 y Fu(Cause)37 b(a)g(shell)h(function)f(to)g
6e51e0d0 11940(stop)h(executing)g(and)e(return)h(the)g(v)-5 b(alue)37
e59452c7 11941b Fr(n)g Fu(to)h(its)f(caller.)630 2303 y(If)h Fr(n)h
6e51e0d0
CR
11942Fu(is)g(not)g(supplied,)h(the)f(return)e(v)-5 b(alue)40
11943b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
e59452c7 119442412 y(executed)i(in)f(the)g(function.)72 b(If)41 b Ft(return)e
fc527055 11945Fu(is)i(executed)h(b)m(y)f(a)h(trap)f(handler,)i(the)e(last)630
e59452c7
CR
119462522 y(command)d(used)f(to)i(determine)f(the)g(status)g(is)h(the)f
11947(last)h(command)e(executed)i(b)s(efore)630 2632 y(the)27
879213c6 11948b(trap)g(handler.)39 b(If)26 b Ft(return)g Fu(is)h(executed)h(during)d
e59452c7 11949(a)j Ft(DEBUG)d Fu(trap,)j(the)f(last)h(command)630 2741
fc527055 11950y(used)f(to)h(determine)g(the)f(status)h(is)g(the)f(last)i(command)e
e59452c7 11951(executed)h(b)m(y)g(the)f(trap)h(handler)630 2851 y(b)s(efore)e
fc527055
CR
11952Ft(return)f Fu(w)m(as)i(in)m(v)m(ok)m(ed.)41 b Ft(return)25
11953b Fu(ma)m(y)i(also)g(b)s(e)f(used)g(to)h(terminate)h(execution)g(of)630
e59452c7 119542960 y(a)34 b(script)g(b)s(eing)g(executed)g(with)g(the)g
6e51e0d0 11955Ft(.)g Fu(\()p Ft(source)p Fu(\))f(builtin,)h(returning)f(either)i
e59452c7 11956Fr(n)e Fu(or)h(the)630 3070 y(exit)j(status)f(of)g(the)g(last)h
d76edd30 11957(command)e(executed)i(within)e(the)h(script)g(as)g(the)g(exit)h(status)
e59452c7 11958630 3180 y(of)i(the)g(script.)65 b(If)38 b Fr(n)g Fu(is)h(supplied,)h
d76edd30 11959(the)f(return)e(v)-5 b(alue)39 b(is)g(its)g(least)h(signi\014can)m(t)g
e59452c7 11960(8)f(bits.)630 3289 y(An)m(y)g(command)f(asso)s(ciated)j(with)d(the)h
6e51e0d0 11961Ft(RETURN)e Fu(trap)i(is)g(executed)g(b)s(efore)g(execution)630
e59452c7 119623399 y(resumes)29 b(after)h(the)g(function)g(or)g(script.)40
6e51e0d0 11963b(The)29 b(return)g(status)h(is)g(non-zero)g(if)g Ft(return)e
e59452c7 11964Fu(is)630 3508 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
d76edd30 11965h(used)f(outside)h(a)g(function)f(and)g(not)h(during)630
e59452c7
CR
119663618 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Ft(.)g
11967Fu(or)g Ft(source)p Fu(.)150 3774 y Ft(shift)870 3907
11968y(shift)46 b([)p Fj(n)p Ft(])630 4041 y Fu(Shift)41 b(the)g(p)s
6e51e0d0 11969(ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g Fr(n)p
e59452c7 11970Fu(.)73 b(The)40 b(p)s(ositional)j(parameters)630 4150
6e51e0d0
CR
11971y(from)34 b Fr(n)p Ft(+)p Fu(1)39 b(.)22 b(.)h(.)45 b
11972Ft($#)34 b Fu(are)g(renamed)g(to)h Ft($1)k Fu(.)22 b(.)g(.)46
11973b Ft($#)p Fu(-)p Fr(n)p Fu(.)51 b(P)m(arameters)36 b(represen)m(ted)e
e59452c7 11974(b)m(y)g(the)630 4260 y(n)m(um)m(b)s(ers)d Ft($#)i Fu(do)m(wn)f(to)i
e6983002
CR
11975Ft($#)p Fu(-)p Fr(n)p Ft(+)p Fu(1)e(are)h(unset.)48 b
11976Fr(n)32 b Fu(m)m(ust)h(b)s(e)f(a)h(non-negativ)m(e)i(n)m(um)m(b)s(er)d
e59452c7 11977(less)630 4369 y(than)g(or)g(equal)h(to)g Ft($#)p Fu(.)46
e6983002 11978b(If)31 b Fr(n)h Fu(is)g(zero)h(or)f(greater)i(than)e
e59452c7 11979Ft($#)p Fu(,)g(the)h(p)s(ositional)g(parameters)630 4479
e6983002
CR
11980y(are)e(not)h(c)m(hanged.)43 b(If)31 b Fr(n)g Fu(is)g(not)g(supplied,)f
11981(it)i(is)f(assumed)f(to)i(b)s(e)f(1.)43 b(The)31 b(return)f(status)630
e59452c7 119824589 y(is)g(zero)i(unless)d Fr(n)h Fu(is)g(greater)i(than)e
e6983002 11983Ft($#)g Fu(or)g(less)h(than)f(zero,)i(non-zero)e(otherwise.)150
e59452c7
CR
119844745 y Ft(test)150 4855 y([)870 4988 y(test)47 b Fj(expr)630
119855121 y Fu(Ev)-5 b(aluate)43 b(a)f(conditional)h(expression)f
b729dac1 11986Fr(expr)48 b Fu(and)41 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f
e59452c7 11987(1)630 5230 y(\(false\).)g(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)
122f603c 11988g(m)m(ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
e59452c7
CR
119895340 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
11990(elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)p
11991eop end
11992%%Page: 52 58
11993TeXDict begin 52 57 bop 150 -116 a Fu(Chapter)30 b(4:)41
11994b(Shell)30 b(Builtin)h(Commands)2069 b(52)630 299 y(Expressions],)39
11995b(page)g(95.)64 b Ft(test)37 b Fu(do)s(es)g(not)h(accept)i(an)m(y)e
11996(options,)i(nor)e(do)s(es)f(it)h(accept)630 408 y(and)30
11997b(ignore)h(an)f(argumen)m(t)h(of)f Ft(--)g Fu(as)h(signifying)f(the)h
11998(end)f(of)g(options.)630 550 y(When)g(the)h Ft([)f Fu(form)g(is)g
11999(used,)g(the)g(last)i(argumen)m(t)e(to)i(the)e(command)g(m)m(ust)h(b)s
12000(e)e(a)i Ft(])p Fu(.)630 692 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m
12001(bined)i(using)f(the)h(follo)m(wing)h(op)s(erators,)g(listed)f(in)f
12002(decreasing)630 801 y(order)30 b(of)h(precedence.)43
12003b(The)30 b(ev)-5 b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)
12004s(er)f(of)h(argumen)m(ts;)g(see)630 911 y(b)s(elo)m(w.)41
12005b(Op)s(erator)30 b(precedence)h(is)f(used)g(when)f(there)i(are)f(\014v)
12006m(e)h(or)f(more)h(argumen)m(ts.)630 1084 y Ft(!)f Fj(expr)210
12007b Fu(T)-8 b(rue)30 b(if)g Fr(expr)37 b Fu(is)30 b(false.)630
120081258 y Ft(\()g Fj(expr)f Ft(\))133 b Fu(Returns)23 b(the)i(v)-5
12009b(alue)25 b(of)f Fr(expr)p Fu(.)38 b(This)24 b(ma)m(y)h(b)s(e)e(used)h
12010(to)h(o)m(v)m(erride)g(the)g(normal)1110 1367 y(precedence)31
12011b(of)f(op)s(erators.)630 1541 y Fj(expr1)f Ft(-a)h Fj(expr2)1110
120121650 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expr1)37
12013b Fu(and)30 b Fr(expr2)38 b Fu(are)30 b(true.)630 1824
12014y Fj(expr1)f Ft(-o)h Fj(expr2)1110 1934 y Fu(T)-8 b(rue)30
12015b(if)g(either)h Fr(expr1)38 b Fu(or)30 b Fr(expr2)37
12016b Fu(is)31 b(true.)630 2107 y(The)37 b Ft(test)f Fu(and)g
12017Ft([)h Fu(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f
12018(using)g(a)g(set)h(of)f(rules)630 2217 y(based)30 b(on)g(the)h(n)m(um)m
12019(b)s(er)e(of)h(argumen)m(ts.)630 2390 y(0)h(argumen)m(ts)1110
120202500 y(The)f(expression)g(is)g(false.)630 2673 y(1)h(argumen)m(t)1110
120212783 y(The)f(expression)g(is)g(true)h(if,)f(and)g(only)g(if,)h(the)g
12022(argumen)m(t)f(is)h(not)f(n)m(ull.)630 2956 y(2)h(argumen)m(ts)1110
120233066 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Ft(!)p
12024Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110
120253176 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33
12026b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)1110
120273285 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g
12028(Conditional)g(Expres-)1110 3395 y(sions],)34 b(page)f(95\),)i(the)e
12029(expression)f(is)h(true)g(if)g(the)g(unary)e(test)j(is)f(true.)47
12030b(If)1110 3504 y(the)33 b(\014rst)g(argumen)m(t)h(is)f(not)g(a)h(v)-5
12031b(alid)34 b(unary)e(op)s(erator,)i(the)g(expression)f(is)1110
120323614 y(false.)630 3787 y(3)e(argumen)m(ts)1110 3897 y(The)f(follo)m
12033(wing)i(conditions)f(are)f(applied)h(in)f(the)g(order)g(listed.)1159
120344039 y(1.)61 b(If)29 b(the)g(second)g(argumen)m(t)h(is)f(one)h(of)f
12035(the)h(binary)e(conditional)j(op)s(era-)1290 4148 y(tors)c(\(see)h
12036(Section)g(6.4)g([Bash)g(Conditional)f(Expressions],)h(page)f(95\),)
120371290 4258 y(the)d(result)g(of)f(the)h(expression)g(is)g(the)f(result)h
12038(of)g(the)g(binary)f(test)h(using)1290 4367 y(the)35
12039b(\014rst)e(and)h(third)g(argumen)m(ts)h(as)f(op)s(erands.)52
12040b(The)34 b(`)p Ft(-a)p Fu(')g(and)g(`)p Ft(-o)p Fu(')1290
120414477 y(op)s(erators)24 b(are)g(considered)g(binary)f(op)s(erators)h
12042(when)f(there)h(are)h(three)1290 4587 y(argumen)m(ts.)1159
120434728 y(2.)61 b(If)41 b(the)h(\014rst)e(argumen)m(t)i(is)f(`)p
a6ae8f35 12044Ft(!)p Fu(',)k(the)d(v)-5 b(alue)41 b(is)h(the)f(negation)i(of)f(the)
e59452c7
CR
120451290 4838 y(t)m(w)m(o-argumen)m(t)33 b(test)e(using)f(the)g(second)h
12046(and)e(third)h(argumen)m(ts.)1159 4979 y(3.)61 b(If)35
a6ae8f35 12047b(the)h(\014rst)e(argumen)m(t)i(is)g(exactly)h(`)p Ft(\()p
e59452c7 12048Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)1290 5089
a6ae8f35 12049y(exactly)i(`)p Ft(\))p Fu(',)g(the)f(result)f(is)h(the)f(one-argumen)m
e59452c7
CR
12050(t)i(test)f(of)f(the)h(second)1290 5198 y(argumen)m(t.)1159
120515340 y(4.)61 b(Otherwise,)30 b(the)h(expression)f(is)g(false.)p
12052eop end
12053%%Page: 53 59
12054TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41
12055b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y(4)31
12056b(argumen)m(ts)1110 408 y(The)f(follo)m(wing)i(conditions)f(are)f
12057(applied)h(in)f(the)g(order)g(listed.)1159 544 y(1.)61
12058b(If)39 b(the)i(\014rst)e(argumen)m(t)h(is)g(`)p Ft(!)p
12059Fu(',)j(the)d(result)f(is)h(the)g(negation)i(of)e(the)1290
12060653 y(three-argumen)m(t)k(expression)e(comp)s(osed)g(of)h(the)g
12061(remaining)g(argu-)1290 763 y(men)m(ts.)1159 898 y(2.)61
12062b(If)31 b(the)g(\014rst)f(argumen)m(t)i(is)f(exactly)i(`)p
12063Ft(\()p Fu(')e(and)g(the)g(fourth)f(argumen)m(t)i(is)1290
120641008 y(exactly)38 b(`)p Ft(\))p Fu(',)f(the)f(result)g(is)g(the)g(t)m
12065(w)m(o-argumen)m(t)i(test)f(of)f(the)g(second)1290 1118
12066y(and)30 b(third)f(argumen)m(ts.)1159 1253 y(3.)61 b(Otherwise,)26
12067b(the)f(expression)f(is)h(parsed)f(and)g(ev)-5 b(aluated)26
12068b(according)g(to)1290 1363 y(precedence)31 b(using)f(the)g(rules)g
12069(listed)h(ab)s(o)m(v)m(e.)630 1524 y(5)g(or)f(more)h(argumen)m(ts)1110
120701633 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5
12071b(aluated)45 b(according)f(to)f(precedence)1110 1743
12072y(using)30 b(the)g(rules)g(listed)h(ab)s(o)m(v)m(e.)630
120731904 y(When)40 b(used)f(with)g Ft(test)g Fu(or)h(`)p
12074Ft([)p Fu(',)j(the)d(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
12075Fu(')h(op)s(erators)g(sort)g(lexicographically)630 2014
12076y(using)30 b(ASCI)s(I)f(ordering.)150 2175 y Ft(times)870
120772310 y(times)630 2446 y Fu(Prin)m(t)37 b(out)h(the)g(user)e(and)h
12078(system)g(times)h(used)f(b)m(y)g(the)h(shell)f(and)g(its)h(c)m
12079(hildren.)61 b(The)630 2555 y(return)29 b(status)i(is)f(zero.)150
120802716 y Ft(trap)870 2852 y(trap)47 b([-lp])f([)p Fj(arg)p
12081Ft(])g([)p Fj(sigspec)g Ft(...)o(])630 2987 y Fu(The)d(commands)f(in)h
12082Fr(arg)51 b Fu(are)44 b(to)g(b)s(e)e(read)h(and)g(executed)h(when)e
12083(the)h(shell)g(receiv)m(es)630 3097 y(signal)36 b Fr(sigsp)s(ec)p
12084Fu(.)57 b(If)35 b Fr(arg)44 b Fu(is)36 b(absen)m(t)g(\(and)f(there)h
12085(is)g(a)f(single)i Fr(sigsp)s(ec)6 b Fu(\))35 b(or)h(equal)g(to)h(`)p
12086Ft(-)p Fu(',)630 3206 y(eac)m(h)k(sp)s(eci\014ed)e(signal's)h(disp)s
12087(osition)g(is)f(reset)i(to)f(the)g(v)-5 b(alue)40 b(it)g(had)f(when)g
12088(the)h(shell)630 3316 y(w)m(as)33 b(started.)47 b(If)32
12089b Fr(arg)41 b Fu(is)32 b(the)h(n)m(ull)f(string,)i(then)e(the)g(signal)
12090i(sp)s(eci\014ed)d(b)m(y)i(eac)m(h)g Fr(sigsp)s(ec)630
120913425 y Fu(is)g(ignored)h(b)m(y)f(the)g(shell)h(and)e(commands)h(it)h
12092(in)m(v)m(ok)m(es.)51 b(If)33 b Fr(arg)41 b Fu(is)33
12093b(not)h(presen)m(t)f(and)g Ft(-p)630 3535 y Fu(has)g(b)s(een)g
12094(supplied,)f(the)i(shell)f(displa)m(ys)h(the)f(trap)g(commands)g(asso)s
12095(ciated)i(with)e(eac)m(h)630 3645 y Fr(sigsp)s(ec)p Fu(.)47
12096b(If)31 b(no)i(argumen)m(ts)f(are)h(supplied,)e(or)i(only)f
12097Ft(-p)g Fu(is)g(giv)m(en,)i Ft(trap)d Fu(prin)m(ts)h(the)g(list)630
120983754 y(of)c(commands)f(asso)s(ciated)i(with)f(eac)m(h)h(signal)f(n)m
12099(um)m(b)s(er)e(in)i(a)g(form)f(that)h(ma)m(y)h(b)s(e)e(reused)630
121003864 y(as)f(shell)h(input.)38 b(The)26 b Ft(-l)f Fu(option)i(causes)f
12101(the)g(shell)h(to)g(prin)m(t)e(a)i(list)f(of)h(signal)g(names)f(and)630
121023973 y(their)33 b(corresp)s(onding)f(n)m(um)m(b)s(ers.)47
12103b(Eac)m(h)34 b Fr(sigsp)s(ec)39 b Fu(is)33 b(either)g(a)h(signal)g
12104(name)f(or)g(a)g(signal)630 4083 y(n)m(um)m(b)s(er.)39
12105b(Signal)31 b(names)f(are)h(case)h(insensitiv)m(e)f(and)f(the)g
12106Ft(SIG)g Fu(pre\014x)f(is)i(optional.)630 4218 y(If)k(a)g
12107Fr(sigsp)s(ec)41 b Fu(is)35 b Ft(0)g Fu(or)g Ft(EXIT)p
12108Fu(,)g Fr(arg)43 b Fu(is)35 b(executed)h(when)e(the)h(shell)h(exits.)55
12109b(If)35 b(a)g Fr(sigsp)s(ec)41 b Fu(is)630 4328 y Ft(DEBUG)p
12110Fu(,)32 b(the)g(command)g Fr(arg)40 b Fu(is)33 b(executed)g(b)s(efore)f
12111(ev)m(ery)h(simple)f(command,)h Ft(for)e Fu(com-)630
121124437 y(mand,)d Ft(case)g Fu(command,)h Ft(select)e Fu(command,)i(ev)m
12113(ery)h(arithmetic)g Ft(for)d Fu(command,)j(and)630 4547
12114y(b)s(efore)22 b(the)g(\014rst)f(command)h(executes)i(in)e(a)g(shell)h
12115(function.)37 b(Refer)22 b(to)h(the)g(description)f(of)630
121164657 y(the)i Ft(extdebug)d Fu(option)j(to)h(the)f Ft(shopt)e
12117Fu(builtin)h(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)630
121184766 y(page)33 b(70\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the)
12119g Ft(DEBUG)f Fu(trap.)46 b(If)31 b(a)i Fr(sigsp)s(ec)38
12120b Fu(is)32 b Ft(RETURN)p Fu(,)f(the)630 4876 y(command)h
6e51e0d0 12121Fr(arg)41 b Fu(is)33 b(executed)g(eac)m(h)h(time)f(a)g(shell)g
e59452c7 12122(function)g(or)f(a)h(script)g(executed)g(with)630 4985
6e51e0d0 12123y(the)e Ft(.)f Fu(or)g Ft(source)f Fu(builtins)g(\014nishes)h
e59452c7 12124(executing.)630 5121 y(If)20 b(a)i Fr(sigsp)s(ec)27 b
6e51e0d0
CR
12125Fu(is)21 b Ft(ERR)p Fu(,)h(the)f(command)g Fr(arg)29
12126b Fu(is)21 b(executed)h(whenev)m(er)e(a)i(pip)s(eline)e(\(whic)m(h)h
e59452c7 12127(ma)m(y)630 5230 y(consist)35 b(of)g(a)f(single)h(simple)g(command\),)h
ad4aef08 12128(a)e(list,)j(or)d(a)h(comp)s(ound)e(command)h(returns)630
e59452c7 121295340 y(a)41 b(non-zero)g(exit)h(status,)h(sub)5 b(ject)41
ad4aef08 12130b(to)g(the)g(follo)m(wing)h(conditions.)72 b(The)40 b
e59452c7
CR
12131Ft(ERR)f Fu(trap)i(is)p eop end
12132%%Page: 54 60
12133TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
12134b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y(not)37
12135b(executed)h(if)f(the)h(failed)f(command)g(is)g(part)g(of)h(the)f
12136(command)g(list)h(immediately)630 408 y(follo)m(wing)30
12137b(an)e Ft(until)f Fu(or)i Ft(while)e Fu(k)m(eyw)m(ord,)i(part)g(of)f
12138(the)h(test)g(follo)m(wing)h(the)f Ft(if)f Fu(or)g Ft(elif)630
12139518 y Fu(reserv)m(ed)45 b(w)m(ords,)j(part)c(of)h(a)g(command)g
12140(executed)g(in)g(a)g Ft(&&)f Fu(or)h Ft(||)f Fu(list)h(except)h(the)630
12141628 y(command)28 b(follo)m(wing)j(the)d(\014nal)h Ft(&&)f
6e51e0d0 12142Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f(in)h(a)g(pip)s(eline)f(but)g
e59452c7 12143(the)h(last,)630 737 y(or)d(if)g(the)f(command's)h(return)f(status)h
6e51e0d0 12144(is)g(b)s(eing)f(in)m(v)m(erted)i(using)e Ft(!)p Fu(.)39
e59452c7 12145b(These)25 b(are)i(the)f(same)630 847 y(conditions)31
6e51e0d0 12146b(ob)s(ey)m(ed)f(b)m(y)h(the)f Ft(errexit)f Fu(\()p Ft(-e)p
e59452c7 12147Fu(\))h(option.)630 974 y(Signals)37 b(ignored)f(up)s(on)f(en)m(try)i
6e51e0d0 12148(to)g(the)f(shell)h(cannot)g(b)s(e)f(trapp)s(ed)f(or)h(reset.)59
e59452c7 12149b(T)-8 b(rapp)s(ed)630 1084 y(signals)28 b(that)f(are)h(not)f(b)s(eing)
6e51e0d0 12150g(ignored)g(are)g(reset)h(to)g(their)f(original)h(v)-5
e59452c7
CR
12151b(alues)28 b(in)e(a)i(subshell)630 1194 y(or)i(subshell)g(en)m
12152(vironmen)m(t)h(when)e(one)i(is)f(created.)630 1321 y(The)g(return)f
6e51e0d0
CR
12153(status)i(is)f(zero)h(unless)f(a)h Fr(sigsp)s(ec)36 b
12154Fu(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31
e59452c7
CR
12155b(signal.)150 1467 y Ft(umask)870 1595 y(umask)46 b([-p])h([-S])g([)p
12156Fj(mode)p Ft(])630 1722 y Fu(Set)30 b(the)f(shell)h(pro)s(cess's)f
12157(\014le)h(creation)g(mask)g(to)g Fr(mo)s(de)p Fu(.)40
12158b(If)29 b Fr(mo)s(de)34 b Fu(b)s(egins)29 b(with)g(a)h(digit,)630
121591832 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s
12160(er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g(a)h(sym)m(b)s(olic)f
12161(mo)s(de)630 1942 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f
12162(the)g Ft(chmod)e Fu(command.)40 b(If)28 b Fr(mo)s(de)34
12163b Fu(is)28 b(omitted,)j(the)630 2051 y(curren)m(t)39
12164b(v)-5 b(alue)40 b(of)f(the)g(mask)g(is)h(prin)m(ted.)66
12165b(If)39 b(the)g Ft(-S)g Fu(option)g(is)h(supplied)d(without)j(a)630
121662161 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f
12167(in)g(a)g(sym)m(b)s(olic)h(format.)47 b(If)32 b(the)g
12168Ft(-p)g Fu(option)h(is)630 2270 y(supplied,)f(and)f Fr(mo)s(de)37
fc527055 12169b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g(a)g(form)g(that)h(ma)m
e59452c7 12170(y)g(b)s(e)e(reused)h(as)630 2380 y(input.)62 b(The)38
fc527055 12171b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s(de)g(is)g(successfully)
e59452c7
CR
12172g(c)m(hanged)g(or)g(if)g(no)630 2489 y Fr(mo)s(de)d Fu(argumen)m(t)c
12173(is)f(supplied,)g(and)f(non-zero)i(otherwise.)630 2617
a6ae8f35
CR
12174y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in)m(terpreted)h(as)f
12175(an)g(o)s(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um)m(b)s(er)d(of)630
e59452c7 121762727 y(the)f(umask)g(is)h(subtracted)f(from)f Ft(7)p
fc527055 12177Fu(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Ft(022)e Fu(results)h(in)g(p)s
e59452c7
CR
12178(ermissions)630 2836 y(of)d Ft(755)p Fu(.)150 2982 y
12179Ft(unset)870 3110 y(unset)46 b([-fnv])g([)p Fj(name)p
12180Ft(])630 3237 y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5 b(ariable)35
fc527055 12181b(or)f(function)f Fr(name)p Fu(.)52 b(If)33 b(the)i Ft(-v)e
e59452c7 12182Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e Fr(name)630 3347
b729dac1
CR
12183y Fu(refers)27 b(to)h(a)g(shell)f(v)-5 b(ariable)28 b(and)f(that)h(v)-5
12184b(ariable)28 b(is)f(remo)m(v)m(ed.)41 b(If)27 b(the)g
e59452c7 12185Ft(-f)g Fu(option)g(is)h(giv)m(en,)630 3457 y(the)37
abfcfa4e
CR
12186b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h(and)e(the)h
12187(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61 b(If)630
e59452c7
CR
121883566 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e
12189Fr(name)39 b Fu(is)33 b(a)h(v)-5 b(ariable)34 b(with)f(the)h
12190Ft(nameref)d Fu(attribute,)630 3676 y Fr(name)42 b Fu(will)37
12191b(b)s(e)f(unset)g(rather)g(than)h(the)g(v)-5 b(ariable)37
12192b(it)g(references.)60 b Ft(-n)36 b Fu(has)g(no)h(e\013ect)h(if)630
121933785 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39
12194b(no)g(options)h(are)f(supplied,)h(eac)m(h)h Fr(name)j
12195Fu(refers)39 b(to)h(a)630 3895 y(v)-5 b(ariable;)45 b(if)39
12196b(there)g(is)g(no)g(v)-5 b(ariable)40 b(b)m(y)f(that)h(name,)h(a)f
12197(function)f(with)g(that)g(name,)j(if)630 4004 y(an)m(y)-8
abfcfa4e
CR
12198b(,)34 b(is)e(unset.)46 b(Readonly)33 b(v)-5 b(ariables)33
12199b(and)f(functions)g(ma)m(y)h(not)f(b)s(e)g(unset.)46
e59452c7 12200b(Some)33 b(shell)630 4114 y(v)-5 b(ariables)29 b(lose)h(their)e(sp)s
abfcfa4e 12201(ecial)h(b)s(eha)m(vior)g(if)f(they)h(are)g(unset;)g(suc)m(h)f(b)s(eha)
e59452c7 12202m(vior)h(is)g(noted)f(in)630 4224 y(the)35 b(description)h(of)f(the)g
abfcfa4e 12203(individual)g(v)-5 b(ariables.)56 b(The)34 b(return)g(status)i(is)f
e59452c7
CR
12204(zero)h(unless)f(a)630 4333 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m
12205(y)g(not)f(b)s(e)g(unset.)150 4560 y Fs(4.2)68 b(Bash)45
12206b(Builtin)g(Commands)150 4720 y Fu(This)c(section)h(describ)s(es)f
12207(builtin)f(commands)h(whic)m(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h
12208(b)s(een)f(extended)g(in)150 4829 y(Bash.)g(Some)30 b(of)h(these)g
12209(commands)f(are)g(sp)s(eci\014ed)g(in)g(the)h Fm(posix)e
12210Fu(standard.)150 4975 y Ft(alias)870 5103 y(alias)46
12211b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p Ft(])d(...)o(])630
122125230 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f(the)h
12213Ft(-p)g Fu(option,)h Ft(alias)e Fu(prin)m(ts)g(the)h(list)h(of)f
12214(aliases)h(on)f(the)630 5340 y(standard)g(output)g(in)g(a)h(form)f
6e51e0d0 12215(that)h(allo)m(ws)h(them)e(to)h(b)s(e)f(reused)g(as)g(input.)39
e59452c7
CR
12216b(If)25 b(argumen)m(ts)p eop end
12217%%Page: 55 61
12218TeXDict begin 55 60 bop 150 -116 a Fu(Chapter)30 b(4:)41
12219b(Shell)30 b(Builtin)h(Commands)2069 b(55)630 299 y(are)28
12220b(supplied,)e(an)i(alias)g(is)f(de\014ned)f(for)h(eac)m(h)h
12221Fr(name)33 b Fu(whose)27 b Fr(v)-5 b(alue)33 b Fu(is)27
12222b(giv)m(en.)41 b(If)26 b(no)h Fr(v)-5 b(alue)630 408
12223y Fu(is)37 b(giv)m(en,)j(the)d(name)g(and)g(v)-5 b(alue)37
12224b(of)h(the)f(alias)h(is)f(prin)m(ted.)61 b(Aliases)38
12225b(are)f(describ)s(ed)f(in)630 518 y(Section)31 b(6.6)h([Aliases],)g
12226(page)f(99.)150 676 y Ft(bind)870 810 y(bind)47 b([-m)g
12227Fj(keymap)p Ft(])e([-lpsvPSVX])870 920 y(bind)i([-m)g
12228Fj(keymap)p Ft(])e([-q)i Fj(function)p Ft(])f([-u)g Fj(function)p
12229Ft(])g([-r)h Fj(keyseq)p Ft(])870 1029 y(bind)g([-m)g
12230Fj(keymap)p Ft(])e(-f)j Fj(filename)870 1139 y Ft(bind)f([-m)g
12231Fj(keymap)p Ft(])e(-x)j Fj(keyseq:shell-command)870 1249
12232y Ft(bind)f([-m)g Fj(keymap)p Ft(])e Fj(keyseq:function-name)870
122331358 y Ft(bind)i([-m)g Fj(keymap)p Ft(])e Fj(keyseq:readline-command)
12234870 1468 y Ft(bind)i Fj(readline-command-line)630 1602
12235y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g
fffe80d4 12236([Command)f(Line)h(Editing],)j(page)e(116\))g(k)m(ey)630
e59452c7
CR
122371711 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g
12238(to)h(a)f(Readline)g(function)f(or)h(macro,)630 1821
12239y(or)44 b(set)h(a)g(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45
abfcfa4e 12240b(non-option)g(argumen)m(t)f(is)g(a)h(command)f(as)g(it)630
e59452c7 122411931 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i
abfcfa4e 12242(\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init)630
fffe80d4 122432040 y(File],)c(page)d(119\),)j(but)c(eac)m(h)h(binding)f(or)g(command)
e59452c7 12244h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 2150
a6ae8f35 12245y(argumen)m(t;)31 b(e.g.,)h(`)p Ft("\\C-x\\C-r":re-read-init-f)o(ile)p
e59452c7
CR
12246Fu('.)630 2284 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m
12247(wing)h(meanings:)630 2442 y Ft(-m)e Fj(keymap)66 b Fu(Use)54
a6ae8f35 12248b Fr(k)m(eymap)j Fu(as)d(the)g(k)m(eymap)g(to)h(b)s(e)e(a\013ected)i(b)
e59452c7 12249m(y)f(the)g(subsequen)m(t)1110 2552 y(bindings.)46 b(Acceptable)34
fc527055 12250b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
e59452c7 12251Fu(,)1110 2661 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
fc527055 12252Fu(,)f Ft(vi)p Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p
e59452c7 12253Fu(,)f(and)1110 2771 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
037a8b7f 12254b Fu(is)h(equiv)-5 b(alen)m(t)46 b(to)g Ft(vi-command)c
e59452c7 12255Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 2880 y(synon)m(ym\);)30
037a8b7f 12256b Ft(emacs)f Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
e59452c7
CR
12257Fu(.)630 3039 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
12258(Readline)g(functions.)630 3197 y Ft(-p)384 b Fu(Displa)m(y)34
037a8b7f 12259b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m
e59452c7
CR
12260(a)m(y)f(that)1110 3306 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
12261(in)g(a)h(Readline)g(initialization)i(\014le.)630 3465
037a8b7f 12262y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
e59452c7 12263(and)g(bindings.)630 3623 y Ft(-v)384 b Fu(Displa)m(y)25
037a8b7f 12264b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24
e59452c7 12265b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 3733
037a8b7f 12266y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g
e59452c7 12267(initialization)j(\014le.)630 3891 y Ft(-V)384 b Fu(List)31
037a8b7f 12268b(curren)m(t)f(Readline)h(v)-5 b(ariable)31 b(names)f(and)g(v)-5
e59452c7 12269b(alues.)630 4049 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
ad4aef08 12270(sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g(strings)1110
e59452c7
CR
122714159 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
12272(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 4268
12273y(Readline)d(initialization)i(\014le.)630 4427 y Ft(-S)384
037a8b7f 12274b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
e59452c7
CR
12275(macros)g(and)f(the)g(strings)1110 4536 y(they)31 b(output.)630
122764695 y Ft(-f)f Fj(filename)1110 4804 y Fu(Read)h(k)m(ey)g(bindings)e
12277(from)h Fr(\014lename)p Fu(.)630 4963 y Ft(-q)g Fj(function)1110
122785072 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
12279(the)f(named)f Fr(function)p Fu(.)630 5230 y Ft(-u)g
12280Fj(function)1110 5340 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
12281(the)f(named)g Fr(function)p Fu(.)p eop end
12282%%Page: 56 62
12283TeXDict begin 56 61 bop 150 -116 a Fu(Chapter)30 b(4:)41
12284b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y Ft(-r)30
12285b Fj(keyseq)66 b Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f
12286(for)h Fr(k)m(eyseq)p Fu(.)630 452 y Ft(-x)g Fj(keyseq:shell-command)
122871110 562 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
6e51e0d0 12288(whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
e59452c7
CR
12289671 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51
12290b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 781
6e51e0d0 12291y(LINE)37 b Fu(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e
e59452c7
CR
12292(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 891
12293y Ft(READLINE_POINT)d Fu(and)j Ft(READLINE_MARK)d Fu(v)-5
12294b(ariables)39 b(to)f(the)g(curren)m(t)g(lo-)1110 1000
12295y(cation)46 b(of)f(the)g(insertion)g(p)s(oin)m(t)f(and)g(the)h(sa)m(v)m
12296(ed)h(insertion)f(p)s(oin)m(t)f(\(the)1110 1110 y Fr(mark)6
12297b Fu(\),)38 b(resp)s(ectiv)m(ely)-8 b(.)62 b(The)36 b(shell)h(assigns)g
12298(an)m(y)g(n)m(umeric)g(argumen)m(t)g(the)1110 1219 y(user)43
12299b(supplied)g(to)h(the)g Ft(READLINE_ARGUMENT)39 b Fu(v)-5
12300b(ariable.)82 b(If)44 b(there)g(w)m(as)1110 1329 y(no)39
12301b(argumen)m(t,)j(that)d(v)-5 b(ariable)40 b(is)f(not)g(set.)68
12302b(If)38 b(the)h(executed)h(command)1110 1439 y(c)m(hanges)e(the)e(v)-5
12303b(alue)37 b(of)g(an)m(y)g(of)g Ft(READLINE_LINE)p Fu(,)d
12304Ft(READLINE_POINT)p Fu(,)h(or)1110 1548 y Ft(READLINE_MARK)p
12305Fu(,)i(those)i(new)f(v)-5 b(alues)38 b(will)h(b)s(e)f(re\015ected)h(in)
12306f(the)g(editing)1110 1658 y(state.)630 1811 y Ft(-X)384
abfcfa4e 12307b Fu(List)27 b(all)i(k)m(ey)f(sequences)f(b)s(ound)e(to)j(shell)g
e59452c7 12308(commands)e(and)h(the)g(asso)s(ciated)1110 1921 y(commands)j(in)g(a)h
abfcfa4e 12309(format)g(that)f(can)h(b)s(e)f(reused)f(as)i(input.)630
e59452c7 123102074 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5
e2169ae9 12311b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150
e59452c7
CR
123122228 y Ft(builtin)870 2359 y(builtin)46 b([)p Fj(shell-builtin)e
12313Ft([)p Fj(args)p Ft(]])630 2491 y Fu(Run)35 b(a)i(shell)f(builtin,)i
e2169ae9 12314(passing)e(it)h Fr(args)p Fu(,)h(and)e(return)f(its)i(exit)g(status.)59
e59452c7 12315b(This)35 b(is)i(useful)630 2600 y(when)29 b(de\014ning)h(a)g(shell)h
a6ae8f35 12316(function)f(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g
e59452c7 12317(retaining)630 2710 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g
a6ae8f35 12318(within)g(the)h(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630
e59452c7
CR
123192819 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f
12320(builtin)g(command.)150 2973 y Ft(caller)870 3104 y(caller)46
12321b([)p Fj(expr)p Ft(])630 3236 y Fu(Returns)34 b(the)g(con)m(text)j(of)e
a6ae8f35 12322(an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f(or)h
e59452c7
CR
12323(a)g(script)630 3345 y(executed)c(with)f(the)h Ft(.)f
12324Fu(or)g Ft(source)f Fu(builtins\).)630 3477 y(Without)45
a6ae8f35 12325b Fr(expr)p Fu(,)j Ft(caller)43 b Fu(displa)m(ys)i(the)f(line)h(n)m(um)
e59452c7 12326m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 3587
a6ae8f35
CR
12327y(curren)m(t)35 b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i
12328(in)m(teger)f(is)f(supplied)e(as)i Fr(expr)p Fu(,)h Ft(caller)630
e59452c7 123293696 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d
6e51e0d0 12330(name,)44 b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630
e59452c7 123313806 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g
6e51e0d0 12332(stac)m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630
e59452c7 123333915 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m
d76edd30 12334(k)h(trace.)42 b(The)29 b(curren)m(t)i(frame)f(is)g(frame)h(0.)630
e59452c7 123354047 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g
6e51e0d0 12336(is)g(not)g(executing)h(a)f(subroutine)e(call)j(or)f
e59452c7 12337Fr(expr)630 4156 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5
37c41ab1 12338b(alid)30 b(p)s(osition)h(in)f(the)g(call)i(stac)m(k.)150
e59452c7
CR
123394310 y Ft(command)870 4441 y(command)46 b([-pVv])g Fj(command)g
12340Ft([)p Fj(arguments)f Ft(...)o(])630 4573 y Fu(Runs)32
6e51e0d0 12341b Fr(command)k Fu(with)d Fr(argumen)m(ts)k Fu(ignoring)c(an)m(y)g
e59452c7 12342(shell)h(function)e(named)h Fr(command)p Fu(.)630 4682
37c41ab1 12343y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y)
e59452c7 12344h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 4792 y(executed.)59
6e51e0d0
CR
12345b(If)36 b(there)h(is)f(a)h(shell)f(function)g(named)g
12346Ft(ls)p Fu(,)h(running)e(`)p Ft(command)29 b(ls)p Fu(')35
e59452c7 12347b(within)630 4902 y(the)c(function)f(will)h(execute)g(the)g(external)g
6e51e0d0 12348(command)g Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630
e59452c7 123495011 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b
6e51e0d0 12350Ft(-p)h Fu(option)g(means)g(to)h(use)f(a)g(default)h(v)-5
e59452c7 12351b(alue)35 b(for)g Ft(PATH)f Fu(that)i(is)630 5121 y(guaran)m(teed)f(to)
6e51e0d0 12352f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52
e59452c7 12353b(The)33 b(return)g(status)h(in)f(this)h(case)630 5230
6e51e0d0 12354y(is)29 b(127)g(if)g Fr(command)j Fu(cannot)d(b)s(e)e(found)h(or)g(an)g
45c0f7f8 12355(error)h(o)s(ccurred,)f(and)g(the)h(exit)g(status)g(of)630
e59452c7
CR
123565340 y Fr(command)34 b Fu(otherwise.)p eop end
12357%%Page: 57 63
12358TeXDict begin 57 62 bop 150 -116 a Fu(Chapter)30 b(4:)41
12359b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y(If)32
12360b(either)h(the)f Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f(supplied,)g
12361(a)h(description)f(of)h Fr(command)j Fu(is)c(prin)m(ted.)630
12362408 y(The)f Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f
12363(indicating)g(the)g(command)g(or)g(\014le)g(name)g(used)630
12364518 y(to)40 b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m
12365(y)m(ed;)44 b(the)39 b Ft(-V)f Fu(option)i(pro)s(duces)d(a)j(more)f(v)m
12366(erb)s(ose)630 628 y(description.)61 b(In)36 b(this)h(case,)j(the)e
12367(return)e(status)h(is)g(zero)h(if)f Fr(command)k Fu(is)c(found,)h(and)
12368630 737 y(non-zero)31 b(if)f(not.)150 897 y Ft(declare)870
123691031 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p
12370Ft([=)p Fj(value)p Ft(])d(...)o(])630 1166 y Fu(Declare)29
54a1fa7c 12371b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e(attributes.)40
6e51e0d0 12372b(If)27 b(no)g Fr(name)5 b Fu(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
e59452c7
CR
12373(y)630 1275 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
12374b(instead.)630 1410 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f
6e51e0d0 12375(the)h(attributes)g(and)e(v)-5 b(alues)36 b(of)f(eac)m(h)i
e59452c7 12376Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 1519 y Fu(is)i(used)g(with)g
6e51e0d0 12377Fr(name)43 b Fu(argumen)m(ts,)e(additional)e(options,)i(other)d(than)g
e59452c7
CR
12378Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 1629 y(ignored.)630
123791763 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k
12380Fu(argumen)m(ts,)f Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
123811873 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
abfcfa4e 12382b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s(eci\014ed)f(b)m(y)h
e59452c7
CR
12383(the)g(addi-)630 1983 y(tional)k(options.)52 b(If)34
12384b(no)g(other)g(options)g(are)g(supplied)f(with)h Ft(-p)p
12385Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 2092 y(the)e(attributes)h
12386(and)e(v)-5 b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50
12387b(The)32 b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630
123882202 y(displa)m(y)d(to)g(shell)f(functions.)630 2336
12389y(The)41 b Ft(-F)f Fu(option)i(inhibits)e(the)i(displa)m(y)f(of)g
12390(function)g(de\014nitions;)47 b(only)41 b(the)g(function)630
123912446 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
12392b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled)g(using)
12393630 2555 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
12394(Builtin],)k(page)e(70\),)i(the)d(source)h(\014le)f(name)h(and)630
123952665 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h
abfcfa4e 12396Fr(name)36 b Fu(is)30 b(de\014ned)f(are)i(displa)m(y)m(ed)g(as)g(w)m
e59452c7 12397(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 2800
abfcfa4e
CR
12398y(The)36 b Ft(-g)g Fu(option)h(forces)g(v)-5 b(ariables)37
12399b(to)g(b)s(e)f(created)i(or)e(mo)s(di\014ed)g(at)h(the)g(global)h(scop)
e59452c7 12400s(e,)630 2909 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f
abfcfa4e 12401(a)g(shell)h(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630
e59452c7 124023019 y(cases.)630 3153 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s
d37a4722 12403(cal)g(v)-5 b(ariables)51 b(to)h(inherit)f(the)g(attributes)g(\(except)
e59452c7
CR
12404i(the)630 3263 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5
12405b(alue)46 b(of)f(an)m(y)h(existing)g(v)-5 b(ariable)46
12406b(with)f(the)g(same)h Fr(name)630 3372 y Fu(at)40 b(a)f(surrounding)d
d37a4722
CR
12407(scop)s(e.)66 b(If)39 b(there)g(is)g(no)f(existing)i(v)-5
12408b(ariable,)42 b(the)d(lo)s(cal)h(v)-5 b(ariable)40 b(is)630
e59452c7 124093482 y(initially)32 b(unset.)630 3616 y(The)27 b(follo)m(wing)h
d37a4722 12410(options)g(can)f(b)s(e)g(used)f(to)i(restrict)g(output)e(to)i(v)-5
e59452c7 12411b(ariables)28 b(with)f(the)g(sp)s(ec-)630 3726 y(i\014ed)j(attributes)h
d37a4722 12412(or)f(to)h(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630
e59452c7 124133885 y Ft(-a)384 b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34
d37a4722 12414b(an)h(indexed)g(arra)m(y)g(v)-5 b(ariable)36 b(\(see)f(Section)h(6.7)g
e59452c7 12415([Arra)m(ys],)1110 3995 y(page)31 b(99\).)630 4154 y
d37a4722
CR
12416Ft(-A)384 b Fu(Eac)m(h)24 b Fr(name)k Fu(is)23 b(an)g(asso)s(ciativ)m
12417(e)j(arra)m(y)e(v)-5 b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m
e59452c7
CR
12418(ys],)1110 4264 y(page)31 b(99\).)630 4423 y Ft(-f)384
12419b Fu(Use)31 b(function)f(names)g(only)-8 b(.)630 4583
d37a4722
CR
12420y Ft(-i)384 b Fu(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f
12421(treated)h(as)g(an)f(in)m(teger;)41 b(arithmetic)c(ev)-5
e59452c7
CR
12422b(aluation)1110 4692 y(\(see)29 b(Section)f(6.5)h([Shell)f
12423(Arithmetic],)i(page)e(97\))h(is)f(p)s(erformed)e(when)h(the)1110
124244802 y(v)-5 b(ariable)31 b(is)g(assigned)f(a)h(v)-5 b(alue.)630
124254961 y Ft(-l)384 b Fu(When)26 b(the)g(v)-5 b(ariable)27
d37a4722 12426b(is)f(assigned)g(a)g(v)-5 b(alue,)28 b(all)f(upp)s(er-case)e(c)m
e59452c7 12427(haracters)j(are)1110 5071 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)
d37a4722 1242843 b(The)30 b(upp)s(er-case)g(attribute)h(is)g(disabled.)630
e59452c7
CR
124295230 y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k
12430Fu(the)27 b Ft(nameref)d Fu(attribute,)29 b(making)e(it)g(a)g(name)f
12431(reference)1110 5340 y(to)32 b(another)g(v)-5 b(ariable.)46
d85b4caf 12432b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g
e59452c7
CR
12433(v)-5 b(alue)32 b(of)p eop end
12434%%Page: 58 64
12435TeXDict begin 58 63 bop 150 -116 a Fu(Chapter)30 b(4:)41
12436b(Shell)30 b(Builtin)h(Commands)2069 b(58)1110 299 y
12437Fr(name)p Fu(.)54 b(All)35 b(references,)h(assignmen)m(ts,)h(and)d
12438(attribute)h(mo)s(di\014cations)g(to)1110 408 y Fr(name)p
12439Fu(,)27 b(except)f(for)f(those)h(using)f(or)g(c)m(hanging)h(the)f
12440Ft(-n)g Fu(attribute)h(itself,)i(are)1110 518 y(p)s(erformed)22
12441b(on)h(the)g(v)-5 b(ariable)25 b(referenced)e(b)m(y)g
12442Fr(name)5 b Fu('s)23 b(v)-5 b(alue.)39 b(The)23 b(nameref)1110
12443628 y(attribute)31 b(cannot)g(b)s(e)f(applied)g(to)h(arra)m(y)g(v)-5
12444b(ariables.)630 785 y Ft(-r)384 b Fu(Mak)m(e)25 b Fr(name)5
12445b Fu(s)23 b(readonly)-8 b(.)39 b(These)24 b(names)f(cannot)h(then)f(b)s
12446(e)g(assigned)h(v)-5 b(alues)1110 894 y(b)m(y)30 b(subsequen)m(t)g
12447(assignmen)m(t)h(statemen)m(ts)h(or)f(unset.)630 1052
12448y Ft(-t)384 b Fu(Giv)m(e)33 b(eac)m(h)h Fr(name)j Fu(the)32
12449b Ft(trace)f Fu(attribute.)46 b(T)-8 b(raced)32 b(functions)g(inherit)g
12450(the)1110 1161 y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g
12451(the)h(calling)h(shell.)40 b(The)27 b(trace)i(attribute)1110
124521271 y(has)h(no)g(sp)s(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630
124531428 y Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29
12454b(is)f(assigned)h(a)f(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m
12455(haracters)f(are)1110 1538 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40
12456b(The)30 b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630
124571695 y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
12458b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
124591805 y(ronmen)m(t.)630 1962 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g
12460(`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
12461(the)g(exceptions)h(that)630 2071 y(`)p Ft(+a)p Fu(')23
d37a4722
CR
12462b(and)f(`)p Ft(+A)p Fu(')h(ma)m(y)h(not)f(b)s(e)f(used)g(to)i(destro)m
12463(y)g(arra)m(y)f(v)-5 b(ariables)24 b(and)e(`)p Ft(+r)p
e59452c7 12464Fu(')h(will)g(not)g(remo)m(v)m(e)630 2181 y(the)36 b(readonly)h
d37a4722 12465(attribute.)59 b(When)36 b(used)f(in)h(a)h(function,)g
e59452c7 12466Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 2291
68701259
CR
12467y Fu(lo)s(cal,)e(as)d(with)h(the)f Ft(local)f Fu(command,)j(unless)d
12468(the)i Ft(-g)f Fu(option)h(is)f(used.)49 b(If)33 b(a)h(v)-5
e59452c7 12469b(ariable)630 2400 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p
68701259 12470Fr(v)-5 b(alue)p Fu(,)31 b(the)f(v)-5 b(alue)31 b(of)g(the)f(v)-5
abfcfa4e 12471b(ariable)32 b(is)e(set)h(to)g Fr(v)-5 b(alue)p Fu(.)630
e59452c7 124722534 y(When)41 b(using)g Ft(-a)g Fu(or)h Ft(-A)e Fu(and)h(the)h(comp)s
abfcfa4e 12473(ound)e(assignmen)m(t)i(syn)m(tax)g(to)g(create)h(arra)m(y)630
e59452c7 124742643 y(v)-5 b(ariables,)28 b(additional)f(attributes)g(do)f(not)h(tak)m
a6ae8f35 12475(e)h(e\013ect)g(un)m(til)e(subsequen)m(t)g(assignmen)m(ts.)630
e59452c7 124762777 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5
a6ae8f35 12477b(alid)36 b(option)g(is)g(encoun)m(tered,)h(an)f(attempt)630
e59452c7 124782886 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p
a6ae8f35 12479Ft(-f)f(foo=bar)p Fu(',)h(an)h(attempt)g(is)g(made)g(to)h(assign)630
e59452c7 124802996 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5
a6ae8f35 12481b(ariable,)47 b(an)42 b(attempt)h(is)f(made)g(to)h(assign)f(a)h(v)-5
e59452c7 12482b(alue)42 b(to)h(an)630 3105 y(arra)m(y)30 b(v)-5 b(ariable)30
fc527055 12483b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g
e59452c7
CR
12484(\(see)h(Section)f(6.7)630 3215 y([Arra)m(ys],)47 b(page)c(99\),)48
12485b(one)43 b(of)g(the)g Fr(name)5 b Fu(s)42 b(is)h(not)g(a)g(v)-5
fc527055 12486b(alid)43 b(shell)g(v)-5 b(ariable)44 b(name,)i(an)630
e59452c7 124873324 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
15baad62 12488(for)g(a)h(readonly)f(v)-5 b(ariable,)29 b(an)e(attempt)630
e59452c7 124893434 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
15baad62 12490(arra)m(y)h(v)-5 b(ariable,)30 b(or)e(an)g(attempt)i(is)e(made)g(to)630
e59452c7
CR
124913544 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
12492Ft(-f)p Fu(.)150 3701 y Ft(echo)870 3834 y(echo)47 b([-neE])f([)p
12493Fj(arg)g Ft(...])630 3968 y Fu(Output)31 b(the)i Fr(arg)8
15baad62 12494b Fu(s,)33 b(separated)g(b)m(y)g(spaces,)g(terminated)g(with)f(a)h
e59452c7 12495(newline.)47 b(The)32 b(return)630 4077 y(status)f(is)f(0)h(unless)f(a)
15baad62 12496h(write)g(error)f(o)s(ccurs.)41 b(If)30 b Ft(-n)g Fu(is)h(sp)s
e59452c7 12497(eci\014ed,)f(the)h(trailing)g(newline)g(is)630 4187
15baad62
CR
12498y(suppressed.)38 b(If)29 b(the)h Ft(-e)f Fu(option)h(is)f(giv)m(en,)i
12499(in)m(terpretation)g(of)e(the)h(follo)m(wing)h(bac)m(kslash-)630
e59452c7 125004296 y(escap)s(ed)43 b(c)m(haracters)h(is)e(enabled.)78
15baad62 12501b(The)42 b Ft(-E)g Fu(option)h(disables)g(the)g(in)m(terpretation)h(of)
e59452c7 12502630 4406 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g
15baad62 12503(systems)f(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f(default.)630
e59452c7 125044516 y(The)32 b Ft(xpg_echo)f Fu(shell)i(option)g(ma)m(y)h(b)s(e)e
1101193a 12505(used)g(to)h(dynamically)h(determine)f(whether)f(or)630
e59452c7 125064625 y(not)h Ft(echo)f Fu(expands)g(these)h(escap)s(e)h(c)m(haracters)g
6e51e0d0 12507(b)m(y)f(default.)48 b Ft(echo)32 b Fu(do)s(es)g(not)i(in)m(terpret)630
e59452c7
CR
125084735 y Ft(--)c Fu(to)h(mean)f(the)h(end)f(of)g(options.)630
125094868 y Ft(echo)f Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
12510(sequences:)630 5026 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
125115183 y Ft(\\b)384 b Fu(bac)m(kspace)630 5340 y Ft(\\c)g
12512Fu(suppress)28 b(further)h(output)p eop end
12513%%Page: 59 65
12514TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
12515b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y Ft(\\e)630
12516408 y(\\E)384 b Fu(escap)s(e)630 556 y Ft(\\f)g Fu(form)30
12517b(feed)630 703 y Ft(\\n)384 b Fu(new)30 b(line)630 851
12518y Ft(\\r)384 b Fu(carriage)32 b(return)630 998 y Ft(\\t)384
12519b Fu(horizon)m(tal)32 b(tab)630 1145 y Ft(\\v)384 b Fu(v)m(ertical)32
12520b(tab)630 1293 y Ft(\\\\)384 b Fu(bac)m(kslash)630 1440
6e51e0d0 12521y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
9f178efb 12522(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5
e59452c7
CR
12523b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 1550 y(three)e(o)s(ctal)g
12524(digits\))630 1697 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)
12525m(haracter)g(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
12526b(alue)39 b Fr(HH)1110 1807 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
12527(digits\))630 1954 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41
12528b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5
12529b(alue)41 b(is)g(the)g(hex-)1110 2064 y(adecimal)32 b(v)-5
12530b(alue)31 b Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)e(hex)h(digits\))630
125312211 y Ft(\\U)p Fj(HHHHHHHH)1110 2321 y Fu(the)41 b(Unico)s(de)g
12532(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41
12533b(is)g(the)g(hex-)1110 2430 y(adecimal)32 b(v)-5 b(alue)31
12534b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150
125352578 y Ft(enable)870 2706 y(enable)46 b([-a])h([-dnps])f([-f)g
12536Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 2835
12537y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
abfcfa4e 12538b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630
e59452c7
CR
125392944 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h
12540(builtin)e(to)i(b)s(e)f(executed)h(without)630 3054 y(sp)s(ecifying)27
abfcfa4e 12541b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g(shell)g(normally)g
e59452c7 12542(searc)m(hes)h(for)f(builtins)630 3163 y(b)s(efore)35
abfcfa4e
CR
12543b(disk)g(commands.)55 b(If)35 b Ft(-n)g Fu(is)g(used,)h(the)g
12544Fr(name)5 b Fu(s)35 b(b)s(ecome)h(disabled.)55 b(Otherwise)630
e59452c7 125453273 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8
abfcfa4e 12546b(or)45 b(example,)k(to)c(use)f(the)g Ft(test)f Fu(binary)h(found)f
e59452c7 12547(via)h Ft($PATH)630 3382 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g
abfcfa4e 12548(v)m(ersion,)h(t)m(yp)s(e)g(`)p Ft(enable)e(-n)h(test)p
e59452c7 12549Fu('.)630 3511 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or)
abfcfa4e 12550d(no)g Fr(name)51 b Fu(argumen)m(ts)46 b(app)s(ear,)k(a)c(list)h(of)f
e59452c7 12551(shell)630 3621 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38
6e51e0d0 12552b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h
e59452c7 12553(enabled)630 3730 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h
6e51e0d0 12554Fu(option)g(means)g(to)g(list)h(eac)m(h)g(builtin)f(with)f(an)h
e59452c7
CR
12555(indication)h(of)630 3840 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.)
12556630 3968 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g
6e51e0d0 12557(builtin)f(command)h Fr(name)27 b Fu(from)22 b(shared)f(ob)5
e59452c7
CR
12558b(ject)630 4078 y Fr(\014lename)p Fu(,)31 b(on)f(systems)g(that)h(supp)
12559s(ort)e(dynamic)h(loading.)41 b(Bash)31 b(will)f(use)g(the)h(v)-5
12560b(alue)31 b(of)630 4187 y(the)39 b Ft(BASH_LOADABLES_PATH)34
12561b Fu(v)-5 b(ariable)40 b(as)f(a)h(colon-separated)h(list)f(of)f
12562(directories)h(in)630 4297 y(whic)m(h)31 b(to)h(searc)m(h)g(for)f
12563Fr(\014lename)p Fu(.)44 b(The)31 b(default)g(is)h(system-dep)s(enden)m
12564(t.)43 b(The)31 b Ft(-d)f Fu(option)630 4407 y(will)h(delete)g(a)g
12565(builtin)f(loaded)h(with)f Ft(-f)p Fu(.)630 4535 y(If)j(there)i(are)f
12566(no)g(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m
12567(y)m(ed.)52 b(The)33 b Ft(-s)g Fu(option)630 4645 y(restricts)j
12568Ft(enable)d Fu(to)j(the)f Fm(posix)f Fu(sp)s(ecial)i(builtins.)54
6e51e0d0 12569b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630
e59452c7
CR
125704754 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i
12571(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(76\).)630
125724883 y(If)24 b(no)g(options)h(are)g(supplied)e(and)h(a)h
12573Fr(name)k Fu(is)c(not)f(a)h(shell)g(builtin,)g Ft(enable)e
12574Fu(will)i(attempt)630 4992 y(to)c(load)g Fr(name)26 b
12575Fu(from)20 b(a)g(shared)g(ob)5 b(ject)21 b(named)f Fr(name)p
12576Fu(,)j(as)d(if)h(the)f(command)h(w)m(ere)f(`)p Ft(enable)630
125775102 y(-f)30 b Fj(name)f(name)p Fu('.)630 5230 y(The)d(return)f(status)
12578h(is)g(zero)h(unless)e(a)i Fr(name)k Fu(is)26 b(not)g(a)h(shell)f
12579(builtin)g(or)g(there)g(is)g(an)g(error)630 5340 y(loading)31
12580b(a)g(new)f(builtin)g(from)g(a)g(shared)g(ob)5 b(ject.)p
12581eop end
12582%%Page: 60 66
12583TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
12584b(Shell)30 b(Builtin)h(Commands)2069 b(60)150 299 y Ft(help)870
12585435 y(help)47 b([-dms])f([)p Fj(pattern)p Ft(])630 571
12586y Fu(Displa)m(y)40 b(helpful)e(information)h(ab)s(out)g(builtin)f
12587(commands.)66 b(If)38 b Fr(pattern)h Fu(is)g(sp)s(eci\014ed,)630
12588681 y Ft(help)28 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h(commands)
12589e(matc)m(hing)i Fr(pattern)p Fu(,)g(otherwise)f(a)g(list)h(of)630
12590790 y(the)h(builtins)e(is)i(prin)m(ted.)630 926 y(Options,)f(if)h
12591(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
125921089 y Ft(-d)384 b Fu(Displa)m(y)32 b(a)e(short)g(description)h(of)f
12593(eac)m(h)i Fr(pattern)630 1251 y Ft(-m)384 b Fu(Displa)m(y)32
12594b(the)e(description)g(of)h(eac)m(h)h Fr(pattern)e Fu(in)g(a)h
12595(manpage-lik)m(e)h(format)630 1414 y Ft(-s)384 b Fu(Displa)m(y)32
12596b(only)e(a)h(short)f(usage)h(synopsis)e(for)i(eac)m(h)g
12597Fr(pattern)630 1576 y Fu(The)f(return)f(status)i(is)f(zero)h(unless)f
12598(no)g(command)h(matc)m(hes)g Fr(pattern)p Fu(.)150 1739
12599y Ft(let)870 1875 y(let)47 b Fj(expression)e Ft([)p Fj(expression)g
12600Ft(...)o(])630 2011 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i
12601(arithmetic)f(to)h(b)s(e)d(p)s(erformed)g(on)i(shell)g(v)-5
12602b(ariables.)74 b(Eac)m(h)630 2120 y Fr(expression)31
12603b Fu(is)g(ev)-5 b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)
12604h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 2230
12605y(Arithmetic],)51 b(page)46 b(97.)87 b(If)45 b(the)g(last)h
12606Fr(expression)g Fu(ev)-5 b(aluates)47 b(to)f(0,)k Ft(let)44
12607b Fu(returns)g(1;)630 2340 y(otherwise)31 b(0)g(is)f(returned.)150
126082502 y Ft(local)870 2638 y(local)46 b([)p Fj(option)p
12609Ft(])g Fj(name)p Ft([=)p Fj(value)p Ft(])e(...)630 2774
12610y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m(t,)g(a)f(lo)s(cal)h(v)-5
12611b(ariable)27 b(named)e Fr(name)31 b Fu(is)26 b(created,)i(and)d
12612(assigned)h Fr(v)-5 b(alue)p Fu(.)630 2884 y(The)37 b
12613Fr(option)h Fu(can)f(b)s(e)g(an)m(y)h(of)f(the)h(options)g(accepted)g
12614(b)m(y)g Ft(declare)p Fu(.)59 b Ft(local)36 b Fu(can)i(only)630
126152993 y(b)s(e)j(used)h(within)f(a)i(function;)48 b(it)42
12616b(mak)m(es)h(the)f(v)-5 b(ariable)43 b Fr(name)48 b Fu(ha)m(v)m(e)43
12617b(a)f(visible)h(scop)s(e)630 3103 y(restricted)h(to)f(that)h(function)e
12618(and)g(its)i(c)m(hildren.)78 b(If)42 b Fr(name)48 b Fu(is)43
12619b(`)p Ft(-)p Fu(',)j(the)d(set)h(of)f(shell)630 3212
12620y(options)34 b(is)f(made)g(lo)s(cal)i(to)f(the)f(function)g(in)g(whic)m
12621(h)g Ft(local)f Fu(is)h(in)m(v)m(ok)m(ed:)48 b(shell)34
12622b(options)630 3322 y(c)m(hanged)e(using)e(the)i Ft(set)e
12623Fu(builtin)h(inside)g(the)g(function)g(are)g(restored)h(to)g(their)f
12624(original)630 3432 y(v)-5 b(alues)36 b(when)e(the)i(function)f
7a257517 12625(returns.)54 b(The)35 b(restore)h(is)g(e\013ected)h(as)e(if)h(a)g
e59452c7 12626(series)f(of)h Ft(set)630 3541 y Fu(commands)j(w)m(ere)g(executed)h(to)
7a257517 12627f(restore)h(the)f(v)-5 b(alues)39 b(that)h(w)m(ere)f(in)f(place)i(b)s
e59452c7 12628(efore)f(the)630 3651 y(function.)j(The)30 b(return)g(status)h(is)g
7a257517 12629(zero)h(unless)e Ft(local)g Fu(is)h(used)f(outside)h(a)g(function,)g
e59452c7 12630(an)630 3760 y(in)m(v)-5 b(alid)31 b Fr(name)k Fu(is)c(supplied,)e(or)i
7a257517 12631Fr(name)k Fu(is)c(a)f(readonly)h(v)-5 b(ariable.)150
e59452c7
CR
126323923 y Ft(logout)870 4059 y(logout)46 b([)p Fj(n)p Ft(])630
126334195 y Fu(Exit)31 b(a)g(login)g(shell,)g(returning)e(a)i(status)g(of)f
12634Fr(n)g Fu(to)h(the)g(shell's)f(paren)m(t.)150 4357 y
12635Ft(mapfile)870 4493 y(mapfile)46 b([-d)h Fj(delim)p Ft(])f([-n)h
a6ae8f35 12636Fj(count)p Ft(])f([-O)h Fj(origin)p Ft(])f([-s)g Fj(count)p
e59452c7 12637Ft(])1061 4603 y([-t])h([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
a6ae8f35 12638Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p Ft(])630
e59452c7 126394739 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j
a6ae8f35 12640(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38 b Fr(arra)m(y)p
e59452c7 12641Fu(,)i(or)630 4849 y(from)28 b(\014le)h(descriptor)f
8a0829e9
CR
12642Fr(fd)k Fu(if)c(the)h Ft(-u)f Fu(option)h(is)g(supplied.)39
12643b(The)28 b(v)-5 b(ariable)29 b Ft(MAPFILE)e Fu(is)i(the)630
e59452c7 126444958 y(default)i Fr(arra)m(y)p Fu(.)41 b(Options,)30
8a0829e9 12645b(if)g(supplied,)g(ha)m(v)m(e)h(the)g(follo)m(wing)h(meanings:)630
e59452c7 126465121 y Ft(-d)384 b Fu(The)37 b(\014rst)g(c)m(haracter)i(of)f
8a0829e9 12647Fr(delim)g Fu(is)f(used)g(to)h(terminate)h(eac)m(h)g(input)d(line,)1110
e59452c7 126485230 y(rather)41 b(than)h(newline.)74 b(If)41 b Fr(delim)h
68d220cb 12649Fu(is)g(the)f(empt)m(y)h(string,)j Ft(mapfile)40 b Fu(will)1110
e59452c7
CR
126505340 y(terminate)31 b(a)g(line)g(when)e(it)i(reads)f(a)h(NUL)g(c)m
12651(haracter.)p eop end
12652%%Page: 61 67
12653TeXDict begin 61 66 bop 150 -116 a Fu(Chapter)30 b(4:)41
12654b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y Ft(-n)384
12655b Fu(Cop)m(y)30 b(at)h(most)g Fr(coun)m(t)i Fu(lines.)41
12656b(If)30 b Fr(coun)m(t)j Fu(is)d(0,)h(all)h(lines)e(are)h(copied.)630
12657446 y Ft(-O)384 b Fu(Begin)31 b(assigning)g(to)g Fr(arra)m(y)39
12658b Fu(at)31 b(index)f Fr(origin)p Fu(.)41 b(The)30 b(default)h(index)f
12659(is)g(0.)630 594 y Ft(-s)384 b Fu(Discard)31 b(the)f(\014rst)g
12660Fr(coun)m(t)j Fu(lines)e(read.)630 741 y Ft(-t)384 b
12661Fu(Remo)m(v)m(e)32 b(a)f(trailing)g Fr(delim)g Fu(\(default)g
12662(newline\))f(from)g(eac)m(h)i(line)f(read.)630 888 y
12663Ft(-u)384 b Fu(Read)31 b(lines)f(from)g(\014le)h(descriptor)f
12664Fr(fd)j Fu(instead)e(of)f(the)h(standard)e(input.)630
126651036 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b Fr(callbac)m(k)33
12666b Fu(eac)m(h)26 b(time)g Fr(quan)m(tum)f Fu(lines)g(are)g(read.)39
12667b(The)25 b Ft(-c)f Fu(option)1110 1145 y(sp)s(eci\014es)30
12668b Fr(quan)m(tum)p Fu(.)630 1293 y Ft(-c)384 b Fu(Sp)s(ecify)30
12669b(the)g(n)m(um)m(b)s(er)f(of)i(lines)f(read)h(b)s(et)m(w)m(een)g(eac)m
12670(h)g(call)h(to)f Fr(callbac)m(k)p Fu(.)630 1440 y(If)36
12671b Ft(-C)g Fu(is)g(sp)s(eci\014ed)g(without)g Ft(-c)p
12672Fu(,)h(the)g(default)f(quan)m(tum)g(is)h(5000.)60 b(When)36
12673b Fr(callbac)m(k)44 b Fu(is)630 1550 y(ev)-5 b(aluated,)30
12674b(it)e(is)g(supplied)f(the)h(index)f(of)i(the)f(next)g(arra)m(y)g
12675(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630 1659 y(the)39
12676b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i(as)e
12677(additional)h(argumen)m(ts.)66 b Fr(callbac)m(k)47 b
12678Fu(is)630 1769 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)g
12679(but)g(b)s(efore)g(the)h(arra)m(y)g(elemen)m(t)g(is)g(assigned.)630
126801897 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
6e51e0d0 12681Ft(mapfile)c Fu(will)j(clear)g Fr(arra)m(y)34 b Fu(b)s(efore)24
e59452c7 12682b(assigning)630 2007 y(to)31 b(it.)630 2135 y Ft(mapfile)41
6e51e0d0 12683b Fu(returns)g(successfully)i(unless)e(an)i(in)m(v)-5
1101193a 12684b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630
e59452c7 126852245 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5
6e51e0d0 12686b(alid)31 b(or)g(unassignable,)f(or)h Fr(arra)m(y)38
7a257517 12687b Fu(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150
e59452c7
CR
126882392 y Ft(printf)870 2521 y(printf)46 b([-v)h Fj(var)p
12689Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 2649
7a257517
CR
12690y Fu(W)-8 b(rite)27 b(the)g(formatted)f Fr(argumen)m(ts)k
12691Fu(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the)
e59452c7 12692630 2759 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g
7a257517 12693(the)g(output)g(to)g(b)s(e)f(assigned)h(to)h(the)f(v)-5
e59452c7
CR
12694b(ariable)39 b Fr(v)-5 b(ar)630 2869 y Fu(rather)30 b(than)g(b)s(eing)g
12695(prin)m(ted)g(to)h(the)g(standard)e(output.)630 2997
7a257517
CR
12696y(The)36 b Fr(format)i Fu(is)f(a)f(c)m(haracter)i(string)e(whic)m(h)g
12697(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
e59452c7 12698b(plain)630 3107 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
7a257517 12699(copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630
e59452c7
CR
127003216 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
12701g(the)g(standard)f(output,)i(and)f(format)630 3326 y(sp)s
7a257517
CR
12702(eci\014cations,)j(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m(ting)g(of)
12703h(the)f(next)h(successiv)m(e)g Fr(argumen)m(t)p Fu(.)630
e59452c7 127043435 y(In)24 b(addition)h(to)g(the)g(standard)f Ft(printf\(1\))e
7a257517 12705Fu(formats,)27 b Ft(printf)c Fu(in)m(terprets)i(the)f(follo)m(wing)630
e59452c7 127063545 y(extensions:)630 3692 y Ft(\045b)384 b Fu(Causes)38
7a257517 12707b Ft(printf)f Fu(to)j(expand)e(bac)m(kslash)h(escap)s(e)g(sequences)g
e59452c7 12708(in)f(the)h(cor-)1110 3802 y(resp)s(onding)31 b Fr(argumen)m(t)j
7a257517 12709Fu(in)e(the)h(same)f(w)m(a)m(y)h(as)g Ft(echo)c(-e)j
e59452c7
CR
12710Fu(\(see)h(Section)g(4.2)1110 3912 y([Bash)e(Builtins],)g(page)g(54\).)
12711630 4059 y Ft(\045q)384 b Fu(Causes)32 b Ft(printf)e
7a257517 12712Fu(to)i(output)g(the)g(corresp)s(onding)f Fr(argumen)m(t)j
e59452c7
CR
12713Fu(in)d(a)i(format)1110 4169 y(that)e(can)g(b)s(e)e(reused)h(as)h
12714(shell)f(input.)630 4316 y Ft(\045Q)384 b Fu(lik)m(e)34
12715b Ft(\045q)p Fu(,)f(but)f(applies)g(an)m(y)h(supplied)e(precision)i(to)
12716h(the)e Fr(argumen)m(t)j Fu(b)s(efore)1110 4425 y(quoting)c(it.)630
127174573 y Ft(\045\()p Fj(datefmt)p Ft(\)T)1110 4682 y Fu(Causes)e
12718Ft(printf)e Fu(to)j(output)f(the)g(date-time)i(string)e(resulting)h
12719(from)e(using)1110 4792 y Fr(datefm)m(t)45 b Fu(as)d(a)g(format)g
12720(string)g(for)g Ft(strftime)p Fu(\(3\).)74 b(The)41 b(corresp)s(onding)
127211110 4902 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)
12722e(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 5011
12723y(the)24 b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f
12724(v)-5 b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25
12725b(represen)m(ts)1110 5121 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i
12726(represen)m(ts)f(the)g(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)
127271110 5230 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m
ad4aef08 12728(ersion)f(b)s(eha)m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110
e59452c7
CR
127295340 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g
12730Ft(printf)f Fu(b)s(eha)m(vior.)p eop end
12731%%Page: 62 68
12732TeXDict begin 62 67 bop 150 -116 a Fu(Chapter)30 b(4:)41
12733b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y(The)26
12734b(\045b,)h(\045q,)h(and)e(\045T)g(directiv)m(es)j(all)e(use)g(the)g
12735(\014eld)f(width)g(and)h(precision)g(argumen)m(ts)630
12736408 y(from)f(the)g(format)h(sp)s(eci\014cation)g(and)e(write)i(that)f
12737(man)m(y)h(b)m(ytes)f(from)g(\(or)h(use)e(that)i(wide)630
12738518 y(a)42 b(\014eld)g(for\))g(the)h(expanded)e(argumen)m(t,)k(whic)m
12739(h)d(usually)g(con)m(tains)h(more)f(c)m(haracters)630
12740628 y(than)30 b(the)h(original.)630 760 y(Argumen)m(ts)d(to)h
12741(non-string)e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e
12742(language)j(constan)m(ts,)630 870 y(except)22 b(that)g(a)g(leading)g
12743(plus)e(or)h(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g
12744(leading)h(c)m(haracter)h(is)630 979 y(a)i(single)g(or)f(double)h
12745(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5
12746b(alue)25 b(of)f(the)h(follo)m(wing)h(c)m(haracter.)630
127471112 y(The)31 b Fr(format)i Fu(is)f(reused)e(as)i(necessary)f(to)i
12748(consume)e(all)h(of)f(the)h Fr(argumen)m(ts)p Fu(.)44
12749b(If)30 b(the)i Fr(for-)630 1222 y(mat)c Fu(requires)e(more)g
12750Fr(argumen)m(ts)k Fu(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
12751(sp)s(eci\014cations)630 1331 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g
12752(v)-5 b(alue)29 b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)
12753s(een)g(supplied.)38 b(The)630 1441 y(return)29 b(v)-5
12754b(alue)31 b(is)g(zero)g(on)f(success,)h(non-zero)g(on)f(failure.)150
127551597 y Ft(read)870 1729 y(read)47 b([-ers])f([-a)h Fj(aname)p
6e51e0d0 12756Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])f([-n)h
e59452c7 12757Fj(nchars)p Ft(])1061 1839 y([-N)g Fj(nchars)p Ft(])f([-p)h
6e51e0d0 12758Fj(prompt)p Ft(])e([-t)i Fj(timeout)p Ft(])f([-u)h Fj(fd)p
e59452c7 12759Ft(])g([)p Fj(name)f Ft(...)o(])630 1972 y Fu(One)38
71574d7e 12760b(line)g(is)g(read)g(from)g(the)g(standard)f(input,)j(or)e(from)f(the)i
e59452c7 12761(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 2081 y(plied)34
71574d7e
CR
12762b(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(-u)g Fu(option,)i(split)f(in)m
12763(to)g(w)m(ords)f(as)g(describ)s(ed)g(ab)s(o)m(v)m(e)h(in)630
3011048a 127642191 y(Section)j(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(35,)j
e59452c7
CR
12765(and)36 b(the)i(\014rst)f(w)m(ord)g(is)g(assigned)h(to)g(the)630
127662300 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the)
12767g(second)g Fr(name)p Fu(,)g(and)f(so)h(on.)47 b(If)32
12768b(there)h(are)g(more)630 2410 y(w)m(ords)39 b(than)g(names,)j(the)e
12769(remaining)f(w)m(ords)g(and)g(their)h(in)m(terv)m(ening)g(delimiters)h
12770(are)630 2519 y(assigned)29 b(to)h(the)g(last)g Fr(name)p
12771Fu(.)40 b(If)29 b(there)g(are)h(few)m(er)f(w)m(ords)g(read)g(from)g
12772(the)g(input)g(stream)630 2629 y(than)35 b(names,)i(the)e(remaining)h
12773(names)f(are)h(assigned)f(empt)m(y)h(v)-5 b(alues.)56
12774b(The)34 b(c)m(haracters)630 2739 y(in)e(the)h(v)-5 b(alue)33
12775b(of)g(the)g Ft(IFS)f Fu(v)-5 b(ariable)33 b(are)h(used)d(to)j(split)f
12776(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)630 2848
12777y(same)d(rules)f(the)g(shell)h(uses)f(for)g(expansion)g(\(describ)s(ed)
12778g(ab)s(o)m(v)m(e)i(in)e(Section)h(3.5.7)h([W)-8 b(ord)630
3011048a 127792958 y(Splitting],)38 b(page)f(35\).)60 b(The)35 b(bac)m(kslash)i(c)m
e59452c7
CR
12780(haracter)h(`)p Ft(\\)p Fu(')e(ma)m(y)h(b)s(e)f(used)f(to)i(remo)m(v)m
12781(e)h(an)m(y)630 3067 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m
12782(haracter)h(read)e(and)g(for)g(line)h(con)m(tin)m(uation.)630
127833200 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
12784(meanings:)630 3356 y Ft(-a)e Fj(aname)114 b Fu(The)34
7a257517 12785b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m(tial)h(indices)e(of)g(the)g
e59452c7 12786(arra)m(y)h(v)-5 b(ariable)1110 3465 y Fr(aname)p Fu(,)29
7a257517 12787b(starting)h(at)f(0.)40 b(All)29 b(elemen)m(ts)h(are)e(remo)m(v)m(ed)i
e59452c7 12788(from)d Fr(aname)34 b Fu(b)s(efore)1110 3575 y(the)d(assignmen)m(t.)41
abfcfa4e 12789b(Other)30 b Fr(name)36 b Fu(argumen)m(ts)30 b(are)h(ignored.)630
e59452c7 127903731 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f
8a0829e9 12791Fr(delim)g Fu(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110
e59452c7 127923840 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h
68d220cb 12793Fu(is)g(the)h(empt)m(y)f(string,)g Ft(read)f Fu(will)h(termi-)1110
e59452c7
CR
127943950 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.)
12795630 4106 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)
fffe80d4 12796f(Line)h(Editing],)50 b(page)45 b(116\))i(is)1110 4215
68d220cb
CR
12797y(used)37 b(to)i(obtain)g(the)f(line.)65 b(Readline)39
12798b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
e59452c7
CR
127994325 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k
12800(editing)d(settings,)j(but)c(uses)1110 4434 y(Readline's)31
12801b(default)g(\014lename)f(completion.)630 4590 y Ft(-i)g
68d220cb
CR
12802Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g
12803(the)g(line,)j Fr(text)f Fu(is)e(placed)h(in)m(to)g(the)1110
e59452c7
CR
128044700 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630
128054855 y Ft(-n)f Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j
68d220cb 12806(reading)f Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m
e59452c7
CR
12807(aiting)1110 4965 y(for)d(a)h(complete)h(line)f(of)g(input,)g(but)f
12808(honors)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 5075
68d220cb 12809y Fr(nc)m(hars)d Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g
e59452c7 12810(delimiter.)630 5230 y Ft(-N)g Fj(nchars)66 b Ft(read)39
68d220cb 12811b Fu(returns)f(after)j(reading)e(exactly)j Fr(nc)m(hars)h
e59452c7 12812Fu(c)m(haracters)f(rather)d(than)1110 5340 y(w)m(aiting)32
68d220cb 12813b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)f(EOF)h(is)g(encoun)
e59452c7
CR
12814m(tered)g(or)p eop end
12815%%Page: 63 69
12816TeXDict begin 63 68 bop 150 -116 a Fu(Chapter)30 b(4:)41
12817b(Shell)30 b(Builtin)h(Commands)2069 b(63)1110 299 y
12818Ft(read)30 b Fu(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f
12819(encoun)m(tered)g(in)f(the)g(input)g(are)1110 408 y(not)g(treated)h(sp)
12820s(ecially)f(and)f(do)h(not)g(cause)g Ft(read)e Fu(to)j(return)d(un)m
12821(til)i Fr(nc)m(hars)1110 518 y Fu(c)m(haracters)26 b(are)f(read.)38
12822b(The)24 b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e
12823Ft(IFS)p Fu(;)1110 628 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5
0385211b 12824b(ariable)23 b(is)f(assigned)g(exactly)i(the)e(c)m(haracters)i(read)
e59452c7
CR
128251110 737 y(\(with)30 b(the)h(exception)h(of)e(bac)m(kslash;)h(see)g
12826(the)g Ft(-r)f Fu(option)h(b)s(elo)m(w\).)630 894 y Ft(-p)f
12827Fj(prompt)66 b Fu(Displa)m(y)38 b Fr(prompt)p Fu(,)g(without)e(a)h
12828(trailing)h(newline,)h(b)s(efore)d(attempting)i(to)1110
128291004 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m(y)m
12830(ed)h(only)f(if)g(input)g(is)g(coming)1110 1114 y(from)30
12831b(a)h(terminal.)630 1271 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f
6e51e0d0 12832(giv)m(en,)k(bac)m(kslash)d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h
e59452c7 12833(c)m(haracter.)1110 1380 y(The)30 b(bac)m(kslash)i(is)f(considered)g
6e51e0d0 12834(to)h(b)s(e)e(part)h(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110
e59452c7
CR
128351490 y(bac)m(kslash-newline)26 b(pair)e(ma)m(y)h(not)g(then)g(b)s(e)f
12836(used)g(as)h(a)g(line)g(con)m(tin)m(uation.)630 1647
0712a90c
CR
12837y Ft(-s)384 b Fu(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i
12838(coming)g(from)f(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110
e59452c7 128391757 y(ec)m(ho)s(ed.)630 1914 y Ft(-t)i Fj(timeout)1110
fffe80d4
CR
128402024 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g
12841(failure)h(if)g(a)h(complete)g(line)g(of)f(input)1110
128422133 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m
12843(haracters\))h(is)e(not)h(read)f(within)g Fr(timeout)j
12844Fu(sec-)1110 2243 y(onds.)43 b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i
12845(decimal)g(n)m(um)m(b)s(er)e(with)h(a)h(fractional)g(p)s(ortion)1110
128462352 y(follo)m(wing)39 b(the)f(decimal)g(p)s(oin)m(t.)63
12847b(This)37 b(option)h(is)g(only)f(e\013ectiv)m(e)k(if)c
12848Ft(read)1110 2462 y Fu(is)c(reading)h(input)e(from)h(a)h(terminal,)h
12849(pip)s(e,)e(or)h(other)f(sp)s(ecial)h(\014le;)h(it)f(has)1110
128502572 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g(\014les.)50
12851b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110 2681
12852y Fu(sa)m(v)m(es)41 b(an)m(y)f(partial)h(input)e(read)g(in)m(to)i(the)f
12853(sp)s(eci\014ed)f(v)-5 b(ariable)40 b Fr(name)p Fu(.)69
12854b(If)1110 2791 y Fr(timeout)31 b Fu(is)c(0,)i Ft(read)d
12855Fu(returns)h(immediately)-8 b(,)30 b(without)d(trying)h(to)g(read)g(an)
12856m(y)1110 2900 y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g(if)g
12857(input)f(is)h(a)m(v)-5 b(ailable)36 b(on)c(the)i(sp)s(eci\014ed)e
12858(\014le)1110 3010 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e
12859(EOF,)h(non-zero)h(otherwise.)56 b(The)1110 3120 y(exit)31
12860b(status)g(is)f(greater)i(than)e(128)i(if)e(the)h(timeout)g(is)f
12861(exceeded.)630 3277 y Ft(-u)g Fj(fd)258 b Fu(Read)31
12862b(input)e(from)h(\014le)g(descriptor)h Fr(fd)p Fu(.)630
128633434 y(If)h(no)g Fr(name)5 b Fu(s)33 b(are)f(supplied,)g(the)h(line)g
12864(read,)g(without)f(the)h(ending)f(delimiter)h(but)e(oth-)630
128653544 y(erwise)36 b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5
12866b(ariable)36 b Ft(REPLY)p Fu(.)55 b(The)34 b(exit)j(status)e(is)h
12867(zero,)630 3653 y(unless)i(end-of-\014le)h(is)f(encoun)m(tered,)j
12868Ft(read)d Fu(times)h(out)f(\(in)h(whic)m(h)f(case)h(the)g(status)g(is)
12869630 3763 y(greater)31 b(than)f(128\),)i(a)e(v)-5 b(ariable)30
e6983002 12870b(assignmen)m(t)h(error)f(\(suc)m(h)f(as)i(assigning)f(to)h(a)f
e59452c7 12871(readonly)630 3872 y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m
e6983002 12872(v)-5 b(alid)29 b(\014le)g(descriptor)f(is)h(supplied)e(as)i(the)g
e59452c7
CR
12873(argumen)m(t)g(to)g Ft(-u)p Fu(.)150 4030 y Ft(readarray)870
128744139 y(readarray)45 b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p
e6983002 12875Ft(])f([-O)h Fj(origin)p Ft(])f([-s)h Fj(count)p Ft(])1061
e59452c7 128764249 y([-t])g([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
e6983002 12877Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p Ft(])630
e59452c7 128784382 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j
e6983002 12879(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38 b Fr(arra)m(y)p
e59452c7 12880Fu(,)i(or)630 4492 y(from)30 b(\014le)g(descriptor)h
e6983002 12881Fr(fd)i Fu(if)d(the)h Ft(-u)e Fu(option)i(is)g(supplied.)630
e59452c7
CR
128824625 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 4783
12883y Ft(source)870 4916 y(source)46 b Fj(filename)630 5049
e6983002 12884y Fu(A)30 b(synon)m(ym)g(for)g Ft(.)g Fu(\(see)i(Section)f(4.1)g
e59452c7
CR
12885([Bourne)g(Shell)f(Builtins],)h(page)g(47\).)150 5207
12886y Ft(type)870 5340 y(type)47 b([-afptP])e([)p Fj(name)i
12887Ft(...)o(])p eop end
12888%%Page: 64 70
12889TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
12890b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y(F)-8
12891b(or)42 b(eac)m(h)g Fr(name)p Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)
12892g(b)s(e)g(in)m(terpreted)g(if)g(used)f(as)i(a)f(command)630
12893408 y(name.)630 543 y(If)g(the)g Ft(-t)g Fu(option)h(is)f(used,)j
12894Ft(type)c Fu(prin)m(ts)h(a)h(single)g(w)m(ord)f(whic)m(h)g(is)g(one)h
12895(of)g(`)p Ft(alias)p Fu(',)630 653 y(`)p Ft(function)p
12896Fu(',)32 b(`)p Ft(builtin)p Fu(',)g(`)p Ft(file)p Fu(')g(or)h(`)p
12897Ft(keyword)p Fu(',)f(if)h Fr(name)38 b Fu(is)33 b(an)f(alias,)j(shell)e
12898(function,)630 762 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h
12899(reserv)m(ed)g(w)m(ord,)h(resp)s(ectiv)m(ely)-8 b(.)55
12900b(If)34 b(the)h Fr(name)40 b Fu(is)35 b(not)630 872 y(found,)29
12901b(then)h(nothing)h(is)f(prin)m(ted,)g(and)g Ft(type)f
12902Fu(returns)g(a)i(failure)g(status.)630 1007 y(If)25 b(the)g
12903Ft(-p)g Fu(option)h(is)f(used,)h Ft(type)e Fu(either)h(returns)g(the)g
12904(name)g(of)h(the)f(disk)g(\014le)g(that)h(w)m(ould)630
129051116 y(b)s(e)k(executed,)h(or)g(nothing)f(if)g Ft(-t)g
12906Fu(w)m(ould)g(not)h(return)e(`)p Ft(file)p Fu('.)630
129071251 y(The)h Ft(-P)g Fu(option)h(forces)g(a)g(path)f(searc)m(h)h(for)g
6e51e0d0 12908(eac)m(h)g Fr(name)p Fu(,)g(ev)m(en)g(if)g Ft(-t)f Fu(w)m(ould)g(not)h
e59452c7 12909(return)630 1360 y(`)p Ft(file)p Fu('.)630 1495 y(If)f(a)g(command)g
15baad62 12910(is)g(hashed,)f Ft(-p)h Fu(and)f Ft(-P)g Fu(prin)m(t)h(the)g(hashed)f
e59452c7 12911(v)-5 b(alue,)31 b(whic)m(h)f(is)g(not)g(neces-)630 1605
15baad62 12912y(sarily)h(the)f(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g
e59452c7 12913Ft($PATH)p Fu(.)630 1739 y(If)22 b(the)i Ft(-a)e Fu(option)h(is)g
15baad62 12914(used,)h Ft(type)e Fu(returns)f(all)j(of)f(the)g(places)h(that)f(con)m
e59452c7 12915(tain)i(an)d(executable)630 1849 y(named)32 b Fr(\014le)p
15baad62 12916Fu(.)49 b(This)32 b(includes)h(aliases)h(and)e(functions,)i(if)f(and)f
e59452c7
CR
12917(only)h(if)g(the)g Ft(-p)f Fu(option)i(is)630 1958 y(not)d(also)g
12918(used.)630 2093 y(If)f(the)g Ft(-f)g Fu(option)g(is)h(used,)e
15baad62 12919Ft(type)g Fu(do)s(es)h(not)h(attempt)g(to)g(\014nd)d(shell)j
e59452c7
CR
12920(functions,)f(as)g(with)630 2203 y(the)h Ft(command)d
12921Fu(builtin.)630 2337 y(The)j(return)e(status)j(is)f(zero)h(if)f(all)g
12922(of)h(the)f Fr(name)5 b Fu(s)31 b(are)g(found,)f(non-zero)i(if)f(an)m
12923(y)g(are)h(not)630 2447 y(found.)150 2607 y Ft(typeset)870
129242741 y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p
12925Ft([=)p Fj(value)p Ft(])d(...)o(])630 2876 y Fu(The)31
12926b Ft(typeset)e Fu(command)i(is)g(supplied)f(for)h(compatibilit)m(y)i
12927(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 2985
12928y(a)g(synon)m(ym)f(for)g(the)g Ft(declare)f Fu(builtin)h(command.)150
129293145 y Ft(ulimit)870 3280 y(ulimit)46 b([-HS])g(-a)870
129303389 y(ulimit)g([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p
12931Fj(limit)p Ft(])630 3524 y(ulimit)25 b Fu(pro)m(vides)h(con)m(trol)i(o)
50fc6e33 12932m(v)m(er)g(the)f(resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)
e59452c7 12933f(started)h(b)m(y)g(the)630 3634 y(shell,)i(on)f(systems)g(that)h(allo)
50fc6e33 12934m(w)h(suc)m(h)e(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i
e59452c7
CR
12935(it)e(is)h(in)m(terpreted)630 3743 y(as)i(follo)m(ws:)630
129363903 y Ft(-S)384 b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)
12937g(asso)s(ciated)h(with)e(a)h(resource.)630 4062 y Ft(-H)384
50fc6e33 12938b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h
e59452c7 12939(with)e(a)h(resource.)630 4222 y Ft(-a)384 b Fu(All)31
50fc6e33 12940b(curren)m(t)f(limits)h(are)g(rep)s(orted;)f(no)g(limits)h(are)g(set.)
e59452c7
CR
12941630 4382 y Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i
12942(bu\013er)e(size.)630 4542 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size)
12943h(of)g(core)g(\014les)f(created.)630 4701 y Ft(-d)384
50fc6e33 12944b Fu(The)30 b(maxim)m(um)g(size)h(of)g(a)g(pro)s(cess's)f(data)h
e59452c7 12945(segmen)m(t.)630 4861 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m
50fc6e33 12946(heduling)h(priorit)m(y)f(\()p Ft(")p Fu(nice)p Ft(")p
e59452c7 12947Fu(\).)630 5021 y Ft(-f)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g
50fc6e33 12948(\014les)f(written)h(b)m(y)f(the)g(shell)h(and)f(its)h(c)m(hildren.)630
e59452c7
CR
129495180 y Ft(-i)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s
12950(ending)e(signals.)630 5340 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m
12951(um)m(b)s(er)f(of)i(kqueues)f(that)h(ma)m(y)g(b)s(e)e(allo)s(cated.)p
12952eop end
12953%%Page: 65 71
12954TeXDict begin 65 70 bop 150 -116 a Fu(Chapter)30 b(4:)41
12955b(Shell)30 b(Builtin)h(Commands)2069 b(65)630 299 y Ft(-l)384
12956b Fu(The)30 b(maxim)m(um)g(size)h(that)g(ma)m(y)g(b)s(e)f(lo)s(c)m(k)m
12957(ed)i(in)m(to)f(memory)-8 b(.)630 467 y Ft(-m)384 b Fu(The)36
12958b(maxim)m(um)g(residen)m(t)h(set)g(size)g(\(man)m(y)g(systems)f(do)h
12959(not)f(honor)g(this)1110 576 y(limit\).)630 744 y Ft(-n)384
12960b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s(er)e(of)i(op)s(en)f(\014le)h
12961(descriptors)g(\(most)g(systems)g(do)1110 854 y(not)31
12962b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)630
129631022 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630
129641190 y Ft(-q)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m
12965(ytes)g(in)f Fm(posix)f Fu(message)j(queues.)630 1358
d37a4722 12966y Ft(-r)384 b Fu(The)30 b(maxim)m(um)g(real-time)i(sc)m(heduling)f
e59452c7
CR
12967(priorit)m(y)-8 b(.)630 1526 y Ft(-s)384 b Fu(The)30
12968b(maxim)m(um)g(stac)m(k)i(size.)630 1694 y Ft(-t)384
d37a4722 12969b Fu(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)h(in)f(seconds.)
e59452c7 12970630 1862 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
d37a4722 12971(pro)s(cesses)f(a)m(v)-5 b(ailable)33 b(to)e(a)f(single)i(user.)630
e59452c7 129722030 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f
d37a4722 12973(memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110
e59452c7
CR
129742140 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
129752308 y Ft(-x)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
12976(\014le)f(lo)s(c)m(ks.)630 2476 y Ft(-P)384 b Fu(The)30
12977b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(pseudoterminals.)630
129782643 y Ft(-R)384 b Fu(The)27 b(maxim)m(um)h(time)h(a)f(real-time)i(pro)
12979s(cess)d(can)i(run)d(b)s(efore)i(blo)s(c)m(king,)h(in)1110
129802753 y(microseconds.)630 2921 y Ft(-T)384 b Fu(The)30
12981b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 3089
12982y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h
12983Ft(-a)f Fu(option)h(is)f(not)h(used,)h Fr(limit)h Fu(is)e(the)g(new)f
12984(v)-5 b(alue)37 b(of)g(the)630 3199 y(sp)s(eci\014ed)c(resource.)51
12985b(The)34 b(sp)s(ecial)g Fr(limit)j Fu(v)-5 b(alues)34
12986b Ft(hard)p Fu(,)g Ft(soft)p Fu(,)g(and)f Ft(unlimited)e
12987Fu(stand)630 3308 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
12988(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h(resp)s(ectiv)m(ely)-8
12989b(.)48 b(A)630 3418 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b)
12990m(y)g(a)h(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)j(a)d(soft)g
12991(limit)h(ma)m(y)630 3527 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5
12992b(alue)38 b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39
12993b(the)f(curren)m(t)f(v)-5 b(alue)630 3637 y(of)39 b(the)g(soft)h(limit)
12994g(for)f(the)g(sp)s(eci\014ed)f(resource)h(is)g(prin)m(ted,)i(unless)e
12995(the)g Ft(-H)f Fu(option)i(is)630 3747 y(supplied.)47
12996b(When)33 b(more)g(than)g(one)g(resource)g(is)g(sp)s(eci\014ed,)g(the)g
12997(limit)h(name)f(and)f(unit,)630 3856 y(if)27 b(appropriate,)h(are)f
12998(prin)m(ted)g(b)s(efore)g(the)g(v)-5 b(alue.)40 b(When)27
12999b(setting)h(new)e(limits,)j(if)e(neither)630 3966 y Ft(-H)38
13000b Fu(nor)g Ft(-S)g Fu(is)h(supplied,)h(b)s(oth)e(the)h(hard)f(and)g
13001(soft)h(limits)g(are)g(set.)67 b(If)38 b(no)h(option)g(is)630
130024075 y(giv)m(en,)c(then)f Ft(-f)e Fu(is)i(assumed.)49
13003b(V)-8 b(alues)35 b(are)e(in)h(1024-b)m(yte)i(incremen)m(ts,)f(except)f
13004(for)f Ft(-t)p Fu(,)630 4185 y(whic)m(h)e(is)g(in)g(seconds;)h
13005Ft(-R)p Fu(,)g(whic)m(h)f(is)g(in)g(microseconds;)h Ft(-p)p
13006Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g(512-)630 4295
13007y(b)m(yte)k(blo)s(c)m(ks;)j Ft(-P)p Fu(,)e Ft(-T)p Fu(,)f
13008Ft(-b)p Fu(,)h Ft(-k)p Fu(,)f Ft(-n)g Fu(and)f Ft(-u)p
13009Fu(,)h(whic)m(h)g(are)g(unscaled)g(v)-5 b(alues;)37 b(and,)f(when)630
130104404 y(in)g Fm(posix)f Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g
13011(POSIX)d(Mo)s(de],)k(page)f(105\),)i Ft(-c)c Fu(and)g
13012Ft(-f)p Fu(,)630 4514 y(whic)m(h)30 b(are)h(in)f(512-b)m(yte)j
13013(incremen)m(ts.)630 4653 y(The)h(return)g(status)h(is)f(zero)i(unless)e
13014(an)g(in)m(v)-5 b(alid)36 b(option)f(or)f(argumen)m(t)i(is)e(supplied,)
13015h(or)630 4762 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
13016(limit.)150 4930 y Ft(unalias)870 5069 y(unalias)46 b([-a])g([)p
13017Fj(name)h Ft(...)g(])630 5208 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f
d37a4722 13018Fr(name)k Fu(from)39 b(the)i(list)f(of)g(aliases.)71
abfcfa4e 13019b(If)40 b Ft(-a)f Fu(is)h(supplied,)h(all)g(aliases)h(are)630
e59452c7
CR
130205317 y(remo)m(v)m(ed.)g(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section)
13021i(6.6)f([Aliases],)h(page)f(99.)p eop end
13022%%Page: 66 72
13023TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
13024b(Shell)30 b(Builtin)h(Commands)2069 b(66)150 299 y Fs(4.3)68
13025b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 520 y Fk(4.3.1)63
13026b(The)41 b(Set)g(Builtin)150 667 y Fu(This)35 b(builtin)h(is)g(so)g
abfcfa4e
CR
13027(complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59
13028b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
e59452c7 13029777 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
abfcfa4e 13030(p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h
e59452c7 13031(and)150 886 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
25e43d2c
CR
130321041 y Ft(set)870 1172 y(set)47 b([-abefhkmnptuvxBCEHPT])42
13033b([-o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
e59452c7 13034Ft(...)o(])870 1282 y(set)i([+abefhkmnptuvxBCEHPT])42
25e43d2c 13035b([+o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
e59452c7 13036Ft(...)o(])630 1414 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g
abfcfa4e 13037(are)g(supplied,)g Ft(set)f Fu(displa)m(ys)g(the)h(names)g(and)f(v)-5
e59452c7 13038b(alues)23 b(of)g(all)630 1523 y(shell)j(v)-5 b(ariables)27
abfcfa4e 13039b(and)e(functions,)h(sorted)g(according)h(to)g(the)f(curren)m(t)f(lo)s
e59452c7 13040(cale,)k(in)c(a)i(format)630 1633 y(that)i(ma)m(y)h(b)s(e)e(reused)g
abfcfa4e 13041(as)h(input)f(for)h(setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h
e59452c7 13042(v)-5 b(ariables.)630 1743 y(Read-only)37 b(v)-5 b(ariables)37
fc527055 13043b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fm(posix)g Fu(mo)s(de,)i(only)f
e59452c7
CR
13044(shell)f(v)-5 b(ariables)38 b(are)630 1852 y(listed.)630
130451984 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f
fc527055 13046(shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630
e59452c7
CR
130472094 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
130482248 y Ft(-a)384 b Fu(Eac)m(h)37 b(v)-5 b(ariable)36
13049b(or)g(function)g(that)g(is)g(created)h(or)f(mo)s(di\014ed)f(is)h(giv)m
13050(en)h(the)1110 2357 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for)
13051g(exp)s(ort)g(to)h(the)g(en)m(vironmen)m(t)f(of)h(sub-)1110
130522467 y(sequen)m(t)i(commands.)630 2621 y Ft(-b)384 b
13053Fu(Cause)44 b(the)h(status)g(of)f(terminated)h(bac)m(kground)g(jobs)f
13054(to)h(b)s(e)f(rep)s(orted)1110 2730 y(immediately)-8
13055b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g(the)g(next)g
13056(primary)g(prompt.)630 2885 y Ft(-e)384 b Fu(Exit)65
13057b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g(3.2.3)h([Pip)s
13058(elines],)1110 2994 y(page)51 b(10\),)58 b(whic)m(h)50
13059b(ma)m(y)h(consist)h(of)e(a)i(single)f(simple)g(command)f(\(see)1110
130603104 y(Section)30 b(3.2.2)i([Simple)d(Commands],)g(page)h(9\),)h(a)f
13061(list)g(\(see)h(Section)f(3.2.4)1110 3213 y([Lists],)60
13062b(page)55 b(10\),)60 b(or)54 b(a)g(comp)s(ound)e(command)h(\(see)i
13063(Section)f(3.2.5)1110 3323 y([Comp)s(ound)60 b(Commands],)70
13064b(page)63 b(11\))g(returns)e(a)i(non-zero)f(status.)1110
130653432 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
13066(that)h(fails)f(is)g(part)g(of)h(the)1110 3542 y(command)g(list)h
50fc6e33 13067(immediately)g(follo)m(wing)g(a)g Ft(while)e Fu(or)h
e59452c7 13068Ft(until)e Fu(k)m(eyw)m(ord,)1110 3652 y(part)61 b(of)g(the)g(test)h
50fc6e33 13069(in)e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
e59452c7 13070(command)1110 3761 y(executed)50 b(in)e(a)h Ft(&&)f Fu(or)h
50fc6e33 13071Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
e59452c7 130723871 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f
7a257517 13073(in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110
e59452c7 130743980 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
7a257517 13075(with)e Ft(!)p Fu(.)48 b(If)33 b(a)g(comp)s(ound)1110
e59452c7
CR
130764090 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
13077(status)f(b)s(ecause)1110 4200 y(a)k(command)g(failed)g(while)g
7a257517 13078Ft(-e)f Fu(w)m(as)i(b)s(eing)e(ignored,)j(the)e(shell)g(do)s(es)g(not)
e59452c7 130791110 4309 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g
7a257517 13080(is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110
e59452c7
CR
130814441 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
13082(and)f(eac)m(h)h(subshell)f(en-)1110 4551 y(vironmen)m(t)j(separately)i
7a257517 13083(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
e59452c7
CR
130844660 y(vironmen)m(t],)i(page)f(42\),)i(and)d(ma)m(y)h(cause)f
13085(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 4770 y(cuting)d(all)g
13086(the)g(commands)f(in)g(the)g(subshell.)1110 4902 y(If)41
7a257517 13087b(a)g(comp)s(ound)e(command)i(or)g(shell)g(function)g(executes)h(in)f
e59452c7 13088(a)g(con)m(text)1110 5011 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g
7a257517 13089(ignored,)h(none)f(of)h(the)f(commands)g(executed)h(within)1110
e59452c7
CR
130905121 y(the)j(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g(will)
13091h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 5230 y Ft(-e)25
7a257517 13092b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f Fu(is)h(set)g(and)f(a)h(command)
e59452c7 13093g(returns)e(a)i(failure)g(status.)1110 5340 y(If)32 b(a)i(comp)s(ound)d
7a257517 13094(command)i(or)g(shell)g(function)f(sets)i Ft(-e)e Fu(while)h(executing)
e59452c7
CR
13095p eop end
13096%%Page: 67 73
13097TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
13098b(Shell)30 b(Builtin)h(Commands)2069 b(67)1110 299 y(in)40
13099b(a)h(con)m(text)i(where)d Ft(-e)g Fu(is)h(ignored,)j(that)d(setting)h
13100(will)f(not)g(ha)m(v)m(e)h(an)m(y)1110 408 y(e\013ect)g(un)m(til)e(the)
13101h(comp)s(ound)e(command)h(or)g(the)g(command)g(con)m(taining)1110
13102518 y(the)31 b(function)f(call)h(completes.)630 682 y
13103Ft(-f)384 b Fu(Disable)31 b(\014lename)g(expansion)f(\(globbing\).)630
13104847 y Ft(-h)384 b Fu(Lo)s(cate)33 b(and)e(remem)m(b)s(er)h(\(hash\))g
13105(commands)f(as)h(they)g(are)g(lo)s(ok)m(ed)h(up)e(for)1110
13106956 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
13107(default.)630 1121 y Ft(-k)384 b Fu(All)34 b(argumen)m(ts)g(in)f(the)h
13108(form)f(of)g(assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110
131091230 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
13110(those)i(that)f(precede)g(the)1110 1340 y(command)30
13111b(name.)630 1504 y Ft(-m)384 b Fu(Job)28 b(con)m(trol)h(is)f(enabled)g
fffe80d4 13112(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(112\).)41
e59452c7 13113b(All)1110 1614 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
fc527055 13114(cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
e59452c7
CR
131151724 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
13116(taining)i(its)f(exit)g(status.)630 1888 y Ft(-n)384
fc527055 13117b Fu(Read)38 b(commands)f(but)f(do)i(not)f(execute)i(them.)62
e59452c7 13118b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 1998 y(c)m(hec)m(k)d(a)e
fc527055 13119(script)g(for)g(syn)m(tax)h(errors.)42 b(This)30 b(option)i(is)f
e59452c7
CR
13120(ignored)g(b)m(y)g(in)m(terac-)1110 2107 y(tiv)m(e)h(shells.)630
131212271 y Ft(-o)e Fj(option-name)1110 2381 y Fu(Set)h(the)f(option)h
13122(corresp)s(onding)e(to)i Fr(option-name)5 b Fu(:)1110
131232545 y Ft(allexport)1590 2655 y Fu(Same)30 b(as)h Ft(-a)p
13124Fu(.)1110 2819 y Ft(braceexpand)1590 2929 y Fu(Same)f(as)h
13125Ft(-B)p Fu(.)1110 3093 y Ft(emacs)240 b Fu(Use)25 b(an)f
13126Ft(emacs)p Fu(-st)m(yle)h(line)f(editing)h(in)m(terface)h(\(see)g
13127(Chapter)e(8)1590 3203 y([Command)33 b(Line)g(Editing],)h(page)h
fffe80d4 13128(116\).)51 b(This)32 b(also)i(a\013ects)1590 3313 y(the)d(editing)g(in)
e59452c7
CR
13129m(terface)h(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3477
13130y Ft(errexit)144 b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110
131313641 y Ft(errtrace)96 b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110
131323806 y Ft(functrace)1590 3915 y Fu(Same)f(as)h Ft(-T)p
13133Fu(.)1110 4080 y Ft(hashall)144 b Fu(Same)30 b(as)h Ft(-h)p
13134Fu(.)1110 4244 y Ft(histexpand)1590 4354 y Fu(Same)f(as)h
13135Ft(-H)p Fu(.)1110 4518 y Ft(history)144 b Fu(Enable)39
13136b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h(Section)h(9.1)
fffe80d4 131371590 4628 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(151.)60
e59452c7
CR
13138b(This)36 b(option)h(is)f(on)1590 4737 y(b)m(y)30 b(default)h(in)f(in)m
13139(teractiv)m(e)j(shells.)1110 4902 y Ft(ignoreeof)1590
131405011 y Fu(An)d(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on)
13141e(reading)i(EOF.)1110 5176 y Ft(keyword)144 b Fu(Same)30
13142b(as)h Ft(-k)p Fu(.)1110 5340 y Ft(monitor)144 b Fu(Same)30
13143b(as)h Ft(-m)p Fu(.)p eop end
13144%%Page: 68 74
13145TeXDict begin 68 73 bop 150 -116 a Fu(Chapter)30 b(4:)41
13146b(Shell)30 b(Builtin)h(Commands)2069 b(68)1110 299 y
13147Ft(noclobber)1590 408 y Fu(Same)30 b(as)h Ft(-C)p Fu(.)1110
5e6f45d9
CR
13148570 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p Fu(.)1110
13149731 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p Fu(.)1110
13150892 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110
131511053 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110
131521214 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110
131531375 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110
131541537 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110
131551698 y Ft(pipefail)96 b Fu(If)44 b(set,)k(the)d(return)e(v)-5
d37a4722 13156b(alue)45 b(of)f(a)h(pip)s(eline)e(is)i(the)f(v)-5 b(alue)45
5e6f45d9
CR
13157b(of)1590 1807 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
13158(exit)g(with)f(a)g(non-zero)1590 1917 y(status,)28 b(or)f(zero)g(if)f
d37a4722 13159(all)i(commands)e(in)g(the)h(pip)s(eline)f(exit)i(suc-)1590
5e6f45d9
CR
131602027 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
13161(default.)1110 2188 y Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m
e59452c7 13162(vior)h(of)f(Bash)g(where)g(the)g(default)h(op)s(era-)1590
5e6f45d9
CR
131632297 y(tion)25 b(di\013ers)f(from)g(the)h Fm(posix)f
13164Fu(standard)f(to)i(matc)m(h)h(the)f(stan-)1590 2407 y(dard)h(\(see)j
e59452c7 13165(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)f(105\).)1590
5e6f45d9
CR
131662516 y(This)37 b(is)g(in)m(tended)g(to)h(mak)m(e)g(Bash)g(b)s(eha)m(v)m
13167(e)g(as)g(a)f(strict)h(su-)1590 2626 y(p)s(erset)30 b(of)h(that)f
13168(standard.)1110 2787 y Ft(privileged)1590 2897 y Fu(Same)g(as)h
13169Ft(-p)p Fu(.)1110 3058 y Ft(verbose)144 b Fu(Same)30
13170b(as)h Ft(-v)p Fu(.)1110 3219 y Ft(vi)384 b Fu(Use)36
e59452c7 13171b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g(editing)g(in)m(terface.)58
5e6f45d9
CR
13172b(This)35 b(also)h(a\013ects)1590 3329 y(the)31 b(editing)g(in)m
13173(terface)h(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3490
e59452c7 13174y Ft(xtrace)192 b Fu(Same)30 b(as)h Ft(-x)p Fu(.)630
5e6f45d9 131753651 y Ft(-p)384 b Fu(T)-8 b(urn)33 b(on)h(privileged)h(mo)s(de.)51
e59452c7 13176b(In)34 b(this)g(mo)s(de,)h(the)f Ft($BASH_ENV)e Fu(and)h
5e6f45d9 13177Ft($ENV)1110 3761 y Fu(\014les)23 b(are)h(not)f(pro)s(cessed,)h(shell)g
e59452c7 13178(functions)e(are)i(not)f(inherited)g(from)f(the)i(en-)1110
5e6f45d9 131793870 y(vironmen)m(t,)h(and)e(the)g Ft(SHELLOPTS)p Fu(,)f
50fc6e33 13180Ft(BASHOPTS)p Fu(,)h Ft(CDPATH)e Fu(and)i Ft(GLOBIGNORE)1110
5e6f45d9 131813980 y Fu(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m
50fc6e33 13182(vironmen)m(t,)i(are)e(ignored.)38 b(If)20 b(the)h(shell)1110
5e6f45d9 131834089 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d
50fc6e33 13184(\(group\))g(id)g(not)g(equal)h(to)g(the)f(real)1110
5e6f45d9
CR
131854199 y(user)h(\(group\))h(id,)i(and)d(the)h Ft(-p)f Fu(option)i(is)e
13186(not)i(supplied,)f(these)h(actions)1110 4309 y(are)32
50fc6e33 13187b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f
5e6f45d9 13188(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 4418 y
50fc6e33 13189Ft(-p)i Fu(option)h(is)g(supplied)f(at)h(startup,)h(the)f(e\013ectiv)m
5e6f45d9 13190(e)i(user)d(id)g(is)h(not)g(reset.)1110 4528 y(T)-8 b(urning)35
50fc6e33 13191b(this)i(option)g(o\013)g(causes)g(the)g(e\013ectiv)m(e)i(user)d(and)g
5e6f45d9
CR
13192(group)g(ids)g(to)1110 4637 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f
13193(and)g(group)g(ids.)630 4798 y Ft(-r)384 b Fu(Enable)32
fffe80d4 13194b(restricted)h(shell)f(mo)s(de.)45 b(This)31 b(option)i(cannot)g(b)s(e)
5e6f45d9
CR
13195e(unset)h(once)g(it)1110 4908 y(has)e(b)s(een)g(set.)630
131965069 y Ft(-t)384 b Fu(Exit)31 b(after)g(reading)f(and)g(executing)h
13197(one)g(command.)630 5230 y Ft(-u)384 b Fu(T)-8 b(reat)25
fffe80d4 13198b(unset)e(v)-5 b(ariables)25 b(and)e(parameters)h(other)h(than)e(the)h
5e6f45d9
CR
13199(sp)s(ecial)h(param-)1110 5340 y(eters)32 b(`)p Ft(@)p
13200Fu(')f(or)h(`)p Ft(*)p Fu(',)g(or)f(arra)m(y)h(v)-5 b(ariables)32
13201b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p
13202Fu(',)f(as)h(an)p eop end
e59452c7
CR
13203%%Page: 69 75
13204TeXDict begin 69 74 bop 150 -116 a Fu(Chapter)30 b(4:)41
5e6f45d9
CR
13205b(Shell)30 b(Builtin)h(Commands)2069 b(69)1110 299 y(error)24
13206b(when)g(p)s(erforming)g(parameter)h(expansion.)39 b(An)24
13207b(error)h(message)h(will)1110 408 y(b)s(e)37 b(written)h(to)h(the)f
13208(standard)f(error,)i(and)f(a)g(non-in)m(teractiv)m(e)j(shell)d(will)
132091110 518 y(exit.)630 667 y Ft(-v)384 b Fu(Prin)m(t)30
13210b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630
13211817 y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f(commands,)
fffe80d4 13212i Ft(for)e Fu(commands,)i Ft(case)d Fu(commands,)1110
5e6f45d9
CR
13213927 y Ft(select)29 b Fu(commands,)j(and)e(arithmetic)j
13214Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 1036
13215y(men)m(ts)h(or)f(asso)s(ciated)i(w)m(ord)e(lists)h(after)g(they)f(are)
13216h(expanded)f(and)f(b)s(efore)1110 1146 y(they)i(are)g(executed.)49
13217b(The)32 b(v)-5 b(alue)33 b(of)g(the)g Ft(PS4)f Fu(v)-5
13218b(ariable)34 b(is)f(expanded)f(and)1110 1255 y(the)24
13219b(resultan)m(t)h(v)-5 b(alue)24 b(is)g(prin)m(ted)g(b)s(efore)f(the)h
13220(command)g(and)f(its)i(expanded)1110 1365 y(argumen)m(ts.)630
132211514 y Ft(-B)384 b Fu(The)41 b(shell)g(will)g(p)s(erform)f(brace)h
13222(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110 1624
13223y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g(b)m
13224(y)h(default.)630 1773 y Ft(-C)384 b Fu(Prev)m(en)m(t)25
13225b(output)e(redirection)h(using)f(`)p Ft(>)p Fu(',)i(`)p
13226Ft(>&)p Fu(',)g(and)e(`)p Ft(<>)p Fu(')g(from)h(o)m(v)m(erwriting)1110
132271883 y(existing)31 b(\014les.)630 2032 y Ft(-E)384 b
13228Fu(If)39 b(set,)j(an)m(y)e(trap)f(on)g Ft(ERR)g Fu(is)g(inherited)g(b)m
13229(y)g(shell)h(functions,)h(command)1110 2142 y(substitutions,)35
13230b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.)
132311110 2252 y(The)d Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g
13232(in)g(suc)m(h)g(cases.)630 2401 y Ft(-H)384 b Fu(Enable)38
13233b(`)p Ft(!)p Fu(')h(st)m(yle)h(history)e(substitution)g(\(see)h
13234(Section)h(9.3)f([History)g(In-)1110 2511 y(teraction],)g(page)d
13235(153\).)57 b(This)34 b(option)i(is)f(on)g(b)m(y)h(default)f(for)g(in)m
13236(teractiv)m(e)1110 2620 y(shells.)630 2770 y Ft(-P)384
13237b Fu(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g
13238(when)f(p)s(erforming)g(commands)1110 2879 y(suc)m(h)29
13239b(as)h Ft(cd)f Fu(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory)
13240-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 2989 y(tory)j(is)g(used)
13241f(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i
13242(c)m(hain)f(of)1110 3098 y(directories)j(when)d(p)s(erforming)h
13243(commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110
132443208 y(directory)-8 b(.)1110 3337 y(F)g(or)42 b(example,)i(if)d
13245Ft(/usr/sys)e Fu(is)i(a)g(sym)m(b)s(olic)g(link)g(to)h
13246Ft(/usr/local/sys)1110 3447 y Fu(then:)1350 3577 y Ft($)47
13247b(cd)h(/usr/sys;)d(echo)i($PWD)1350 3686 y(/usr/sys)1350
132483796 y($)g(cd)h(..;)f(pwd)1350 3905 y(/usr)1110 4035
13249y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 4164
13250y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4274 y(/usr/local/sys)
132511350 4384 y($)g(cd)h(..;)f(pwd)1350 4493 y(/usr/local)630
132524643 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g
13253Ft(DEBUG)e Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i
13254(func-)1110 4752 y(tions,)k(command)d(substitutions,)h(and)f(commands)g
13255(executed)h(in)f(a)h(sub-)1110 4862 y(shell)33 b(en)m(vironmen)m(t.)49
13256b(The)32 b Ft(DEBUG)g Fu(and)g Ft(RETURN)f Fu(traps)h(are)i(normally)f
13257(not)1110 4971 y(inherited)d(in)g(suc)m(h)g(cases.)630
132585121 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e
13259(option,)k(then)c(the)h(p)s(ositional)g(parame-)1110
132605230 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional)
13261i(parameters)f(are)f(set)h(to)h(the)1110 5340 y Fr(argumen)m(ts)p
13262Fu(,)f(ev)m(en)g(if)f(some)h(of)g(them)f(b)s(egin)g(with)g(a)h(`)p
13263Ft(-)p Fu('.)p eop end
e59452c7
CR
13264%%Page: 70 76
13265TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(4:)41
5e6f45d9
CR
13266b(Shell)30 b(Builtin)h(Commands)2069 b(70)630 299 y Ft(-)432
13267b Fu(Signal)45 b(the)g(end)f(of)h(options,)k(cause)c(all)h(remaining)e
13268Fr(argumen)m(ts)49 b Fu(to)d(b)s(e)1110 408 y(assigned)33
13269b(to)h(the)g(p)s(ositional)g(parameters.)49 b(The)33
13270b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)1110 518
13271y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m(ts,)j(the)e
13272(p)s(ositional)g(parameters)1110 628 y(remain)30 b(unc)m(hanged.)630
13273775 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)p Ft(-)p
fffe80d4 13274Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g(o\013.)40
5e6f45d9 13275b(The)27 b(options)h(can)630 884 y(also)36 b(b)s(e)f(used)f(up)s(on)g
fffe80d4
CR
13276(in)m(v)m(o)s(cation)j(of)e(the)g(shell.)56 b(The)34
13277b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g(b)s(e)630
5e6f45d9
CR
13278994 y(found)29 b(in)h Ft($-)p Fu(.)630 1122 y(The)43
13279b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g
13280(parameters)g(and)f(are)h(assigned,)j(in)630 1232 y(order,)30
13281b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42
13282b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f
13283Fu(is)g(set)h(to)g(N.)630 1360 y(The)f(return)f(status)i(is)f(alw)m(a)m
13284(ys)i(zero)f(unless)f(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
13285(supplied.)150 1548 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
132861695 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
13287(additional)f(shell)f(optional)i(b)s(eha)m(vior.)150
132881842 y Ft(shopt)870 1970 y(shopt)46 b([-pqsu])g([-o])h([)p
13289Fj(optname)e Ft(...])630 2099 y Fu(T)-8 b(oggle)37 b(the)e(v)-5
13290b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g(shell)f(b)s
13291(eha)m(vior.)55 b(The)34 b(settings)630 2208 y(can)24
13292b(b)s(e)g(either)h(those)f(listed)h(b)s(elo)m(w,)h(or,)f(if)g(the)f
13293Ft(-o)f Fu(option)i(is)f(used,)h(those)g(a)m(v)-5 b(ailable)26
13294b(with)630 2318 y(the)k Ft(-o)f Fu(option)i(to)f(the)g
13295Ft(set)f Fu(builtin)h(command)f(\(see)i(Section)g(4.3.1)g([The)f(Set)g
13296(Builtin],)630 2427 y(page)i(66\).)45 b(With)32 b(no)f(options,)h(or)g
13297(with)f(the)g Ft(-p)g Fu(option,)h(a)g(list)g(of)f(all)i(settable)g
13298(options)630 2537 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h
13299(of)f(whether)g(or)g(not)g(eac)m(h)h(is)g(set;)h(if)e
13300Fr(optname)5 b Fu(s)34 b(are)630 2647 y(supplied,)25
13301b(the)g(output)g(is)g(restricted)g(to)h(those)g(options.)39
13302b(The)24 b Ft(-p)h Fu(option)g(causes)g(output)630 2756
13303y(to)30 b(b)s(e)f(displa)m(y)m(ed)g(in)g(a)h(form)f(that)g(ma)m(y)h(b)s
13304(e)f(reused)f(as)i(input.)39 b(Other)29 b(options)g(ha)m(v)m(e)i(the)
13305630 2866 y(follo)m(wing)h(meanings:)630 3013 y Ft(-s)384
13306b Fu(Enable)30 b(\(set\))i(eac)m(h)f Fr(optname)p Fu(.)630
133073160 y Ft(-u)384 b Fu(Disable)31 b(\(unset\))g(eac)m(h)h
13308Fr(optname)p Fu(.)630 3307 y Ft(-q)384 b Fu(Suppresses)28
13309b(normal)h(output;)h(the)g(return)e(status)i(indicates)h(whether)e(the)
133101110 3417 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43
13311b(If)31 b(m)m(ultiple)h Fr(optname)37 b Fu(argumen)m(ts)31
13312b(are)h(giv)m(en)1110 3527 y(with)d Ft(-q)p Fu(,)f(the)i(return)d
13313(status)j(is)f(zero)g(if)g(all)h Fr(optname)5 b Fu(s)29
13314b(are)h(enabled;)f(non-)1110 3636 y(zero)i(otherwise.)630
133153784 y Ft(-o)384 b Fu(Restricts)22 b(the)f(v)-5 b(alues)22
13316b(of)f Fr(optname)27 b Fu(to)22 b(b)s(e)e(those)i(de\014ned)e(for)h
13317(the)g Ft(-o)f Fu(option)1110 3893 y(to)31 b(the)g Ft(set)e
13318Fu(builtin)h(\(see)h(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f
13319(66\).)630 4040 y(If)e(either)i Ft(-s)e Fu(or)h Ft(-u)f
13320Fu(is)h(used)f(with)g(no)h Fr(optname)35 b Fu(argumen)m(ts,)c
13321Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630 4150 y(options)h(whic)m(h)f
13322(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m(ely)-8 b(.)630
133234278 y(Unless)30 b(otherwise)h(noted,)g(the)g Ft(shopt)d
13324Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32 b(b)m(y)e(default.)630
133254407 y(The)d(return)f(status)i(when)e(listing)j(options)e(is)h(zero)g
13326(if)f(all)i Fr(optname)5 b Fu(s)27 b(are)h(enabled,)g(non-)630
133274516 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f(unsetting)g
13328(options,)i(the)e(return)f(status)h(is)g(zero)630 4626
13329y(unless)30 b(an)g Fr(optname)36 b Fu(is)30 b(not)h(a)g(v)-5
13330b(alid)30 b(shell)h(option.)630 4754 y(The)f(list)h(of)f
13331Ft(shopt)f Fu(options)i(is:)630 4902 y Ft(assoc_expand_once)1110
133325011 y Fu(If)h(set,)i(the)e(shell)h(suppresses)e(m)m(ultiple)i(ev)-5
13333b(aluation)34 b(of)e(asso)s(ciativ)m(e)j(arra)m(y)1110
133345121 y(subscripts)24 b(during)h(arithmetic)h(expression)g(ev)-5
13335b(aluation,)28 b(while)e(executing)1110 5230 y(builtins)c(that)i(can)f
13336(p)s(erform)f(v)-5 b(ariable)24 b(assignmen)m(ts,)h(and)e(while)g
13337(executing)1110 5340 y(builtins)30 b(that)h(p)s(erform)e(arra)m(y)i
13338(dereferencing.)p eop end
e59452c7
CR
13339%%Page: 71 77
13340TeXDict begin 71 76 bop 150 -116 a Fu(Chapter)30 b(4:)41
fffe80d4
CR
13341b(Shell)30 b(Builtin)h(Commands)2069 b(71)630 299 y Ft(autocd)192
13342b Fu(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h
13343(a)f(directory)h(is)f(executed)1110 408 y(as)j(if)f(it)h(w)m(ere)f(the)
13344h(argumen)m(t)g(to)g(the)f Ft(cd)g Fu(command.)40 b(This)29
13345b(option)g(is)h(only)1110 518 y(used)g(b)m(y)g(in)m(teractiv)m(e)j
13346(shells.)630 682 y Ft(cdable_vars)1110 792 y Fu(If)h(this)h(is)g(set,)i
13347(an)e(argumen)m(t)g(to)h(the)f Ft(cd)f Fu(builtin)h(command)f(that)i
13348(is)f(not)1110 902 y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h
13349(name)f(of)h(a)g(v)-5 b(ariable)31 b(whose)g(v)-5 b(alue)31
13350b(is)1110 1011 y(the)g(directory)f(to)i(c)m(hange)f(to.)630
133511176 y Ft(cdspell)144 b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g
13352(sp)s(elling)h(of)f(a)g(directory)h(comp)s(onen)m(t)f(in)g(a)h
13353Ft(cd)1110 1285 y Fu(command)i(will)h(b)s(e)f(corrected.)43
13354b(The)30 b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110
133551395 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
8e1a6eaa 13356b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74
fffe80d4
CR
13357b(If)42 b(a)1110 1504 y(correction)25 b(is)e(found,)g(the)h(corrected)g
13358(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 1614
220537f2 13359y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m
fffe80d4
CR
13360(teractiv)m(e)k(shells.)630 1778 y Ft(checkhash)1110
133611888 y Fu(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
13362(command)f(found)g(in)g(the)h(hash)f(table)1110 1998
8a0829e9 13363y(exists)k(b)s(efore)f(trying)h(to)h(execute)g(it.)48
fffe80d4 13364b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 2107
e59452c7 13365y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630
fffe80d4 133662271 y Ft(checkjobs)1110 2381 y Fu(If)d(set,)i(Bash)e(lists)h(the)g
e59452c7 13367(status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore)
fffe80d4 133681110 2491 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72
e59452c7 13369b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110
fffe80d4
CR
133702600 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h
13371(exit)g(is)g(attempted)h(without)e(an)1110 2710 y(in)m(terv)m(ening)d
13372(command)f(\(see)h(Chapter)e(7)h([Job)g(Con)m(trol],)i(page)f(112\).)40
13373b(The)1110 2819 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h
13374(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 2984 y Ft(checkwinsize)1110
133753093 y Fu(If)23 b(set,)j(Bash)e(c)m(hec)m(ks)h(the)f(windo)m(w)f(size)h
13376(after)h(eac)m(h)f(external)h(\(non-builtin\))1110 3203
50fc6e33 13377y(command)55 b(and,)60 b(if)55 b(necessary)-8 b(,)62
7a257517 13378b(up)s(dates)54 b(the)h(v)-5 b(alues)55 b(of)g Ft(LINES)f
fffe80d4
CR
13379Fu(and)1110 3313 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g
13380(enabled)f(b)m(y)g(default.)630 3477 y Ft(cmdhist)144
d37a4722 13381b Fu(If)33 b(set,)j(Bash)e(attempts)h(to)g(sa)m(v)m(e)g(all)g(lines)f
fffe80d4 13382(of)g(a)h(m)m(ultiple-line)g(command)1110 3587 y(in)c(the)g(same)g
d37a4722 13383(history)g(en)m(try)-8 b(.)42 b(This)30 b(allo)m(ws)i(easy)g
fffe80d4 13384(re-editing)g(of)f(m)m(ulti-line)1110 3696 y(commands.)79
68d220cb 13385b(This)43 b(option)g(is)h(enabled)f(b)m(y)g(default,)k(but)c(only)g
fffe80d4 13386(has)g(an)1110 3806 y(e\013ect)30 b(if)e(command)g(history)g(is)h
68d220cb 13387(enabled)f(\(see)h(Section)g(9.1)h([Bash)e(History)1110
fffe80d4
CR
133883915 y(F)-8 b(acilities],)34 b(page)d(151\).)630 4080
13389y Ft(compat31)630 4189 y(compat32)630 4299 y(compat40)630
133904408 y(compat41)630 4518 y(compat42)630 4628 y(compat43)630
133914737 y(compat44)96 b Fu(These)39 b(con)m(trol)i(asp)s(ects)f(of)f(the)h
d37a4722 13392(shell's)g(compatibilit)m(y)h(mo)s(de)e(\(see)h(Sec-)1110
fffe80d4
CR
133934847 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g
13394(109\).)630 5011 y Ft(complete_fullquote)1110 5121 y
d37a4722 13395Fu(If)g(set,)g(Bash)h(quotes)f(all)h(shell)f(metac)m(haracters)i(in)e
fffe80d4 13396(\014lenames)g(and)g(direc-)1110 5230 y(tory)g(names)f(when)g(p)s
a2851804 13397(erforming)f(completion.)43 b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m
fffe80d4
CR
13398(es)1110 5340 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
13399(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)p eop end
e59452c7
CR
13400%%Page: 72 78
13401TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(4:)41
fffe80d4
CR
13402b(Shell)30 b(Builtin)h(Commands)2069 b(72)1110 299 y(that)36
13403b(will)g(b)s(e)f(quoted)g(in)g(completed)i(\014lenames)e(when)f(these)i
13404(metac)m(har-)1110 408 y(acters)29 b(app)s(ear)e(in)g(shell)h(v)-5
13405b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e(completed.)
134061110 518 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)-5
13407b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
13408628 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)g
13409(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 737
13410y(\014lenames)j(will)h(not)f(b)s(e)g(quoted,)h(either.)41
13411b(This)28 b(is)i(activ)m(e)h(only)e(when)g(bash)1110
13412847 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
13413(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 956
13414y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
13415(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 1066 y(through)30
13416b(4.2.)630 1244 y Ft(direxpand)1110 1354 y Fu(If)k(set,)i(Bash)f
13417(replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
13418(ex-)1110 1463 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
13419(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 1573
13420y(con)m(ten)m(ts)29 b(of)e(the)g(readline)h(editing)g(bu\013er.)38
13421b(If)27 b(not)g(set,)i(Bash)e(attempts)h(to)1110 1682
13422y(preserv)m(e)j(what)f(the)g(user)g(t)m(yp)s(ed.)630
134231861 y Ft(dirspell)96 b Fu(If)26 b(set,)i(Bash)f(attempts)g(sp)s
fc527055 13424(elling)g(correction)g(on)g(directory)g(names)f(during)1110
fffe80d4
CR
134251970 y(w)m(ord)36 b(completion)h(if)f(the)g(directory)g(name)g
13426(initially)h(supplied)e(do)s(es)h(not)1110 2080 y(exist.)630
134272258 y Ft(dotglob)144 b Fu(If)36 b(set,)i(Bash)e(includes)g
e59452c7 13428(\014lenames)g(b)s(eginning)f(with)h(a)g(`.')58 b(in)36
fffe80d4 13429b(the)g(results)1110 2367 y(of)f(\014lename)f(expansion.)53
e59452c7 13430b(The)33 b(\014lenames)i(`)p Ft(.)p Fu(')f(and)g(`)p
fffe80d4 13431Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 2477
50fc6e33 13432y(matc)m(hed)31 b(explicitly)-8 b(,)33 b(ev)m(en)e(if)f
fffe80d4 13433Ft(dotglob)f Fu(is)h(set.)630 2655 y Ft(execfail)96 b
50fc6e33 13434Fu(If)24 b(this)h(is)f(set,)j(a)e(non-in)m(teractiv)m(e)i(shell)e(will)
fffe80d4 13435f(not)h(exit)h(if)e(it)h(cannot)h(execute)1110 2765 y(the)i(\014le)g
e59452c7 13436(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the)f
fffe80d4 13437Ft(exec)f Fu(builtin)h(command.)39 b(An)1110 2874 y(in)m(teractiv)m(e)
e59452c7 1343833 b(shell)e(do)s(es)f(not)g(exit)i(if)e Ft(exec)f Fu(fails.)630
fffe80d4 134393052 y Ft(expand_aliases)1110 3162 y Fu(If)j(set,)h(aliases)g(are)g
50fc6e33 13440(expanded)e(as)h(describ)s(ed)f(b)s(elo)m(w)h(under)f(Aliases,)i(Sec-)
fffe80d4 134411110 3271 y(tion)38 b(6.6)h([Aliases],)j(page)d(99.)64
50fc6e33 13442b(This)37 b(option)h(is)g(enabled)g(b)m(y)g(default)g(for)1110
fffe80d4 134433381 y(in)m(teractiv)m(e)33 b(shells.)630 3559 y Ft(extdebug)96
e230f997
CR
13444b Fu(If)35 b(set)i(at)f(shell)g(in)m(v)m(o)s(cation,)k(or)c(in)f(a)h
13445(shell)h(startup)e(\014le,)i(arrange)g(to)f(ex-)1110
fffe80d4
CR
134463669 y(ecute)h(the)f(debugger)g(pro\014le)g(b)s(efore)g(the)g(shell)h
13447(starts,)h(iden)m(tical)g(to)f(the)1110 3778 y Ft(--debugger)32
e230f997 13448b Fu(option.)56 b(If)35 b(set)h(after)g(in)m(v)m(o)s(cation,)j(b)s(eha)
fffe80d4
CR
13449m(vior)c(in)m(tended)g(for)1110 3888 y(use)30 b(b)m(y)g(debuggers)g(is)
13450h(enabled:)1159 4032 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g
e230f997 13451Ft(declare)d Fu(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290
fffe80d4
CR
134524141 y(Builtins],)29 b(page)g(54\))g(displa)m(ys)f(the)g(source)h
13453(\014le)f(name)g(and)f(line)h(n)m(um-)1290 4251 y(b)s(er)h(corresp)s
e230f997 13454(onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i(an)f(argu-)
fffe80d4 134551290 4361 y(men)m(t.)1159 4504 y(2.)61 b(If)20 b(the)h(command)g(run)e
e230f997 13456(b)m(y)i(the)f Ft(DEBUG)g Fu(trap)g(returns)g(a)h(non-zero)g(v)-5
fffe80d4
CR
13457b(alue,)1290 4614 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
13458(not)i(executed.)1159 4758 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
e230f997 13459(y)i(the)f Ft(DEBUG)f Fu(trap)h(returns)f(a)i(v)-5 b(alue)38
fffe80d4
CR
13460b(of)f(2,)1290 4867 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
13461(subroutine)e(\(a)i(shell)g(function)f(or)1290 4977 y(a)h(shell)g
71574d7e 13462(script)f(executed)h(b)m(y)g(the)f Ft(.)h Fu(or)f Ft(source)f
fffe80d4
CR
13463Fu(builtins\),)i(the)g(shell)1290 5087 y(sim)m(ulates)d(a)g(call)h(to)f
13464Ft(return)p Fu(.)1159 5230 y(4.)61 b Ft(BASH_ARGC)34
71574d7e 13465b Fu(and)i Ft(BASH_ARGV)e Fu(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
fffe80d4
CR
13466g(their)1290 5340 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
13467(V)-8 b(ariables],)32 b(page)f(77\).)p eop end
e59452c7
CR
13468%%Page: 73 79
13469TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(4:)41
fffe80d4
CR
13470b(Shell)30 b(Builtin)h(Commands)2069 b(73)1159 299 y(5.)61
13471b(F)-8 b(unction)57 b(tracing)g(is)g(enabled:)93 b(command)56
13472b(substitution,)63 b(shell)1290 408 y(functions,)32 b(and)e(subshells)h
13473(in)m(v)m(ok)m(ed)i(with)e Ft(\()f Fj(command)e Ft(\))j
13474Fu(inherit)h(the)1290 518 y Ft(DEBUG)d Fu(and)h Ft(RETURN)e
5e6f45d9
CR
13475Fu(traps.)1159 662 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63
13476b(command)42 b(substitution,)i(shell)f(func-)1290 772
fffe80d4
CR
13477y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i(with)e
13478Ft(\()g Fj(command)f Ft(\))h Fu(inherit)h(the)g Ft(ERR)1290
5e6f45d9 13479881 y Fu(trap.)630 1060 y Ft(extglob)144 b Fu(If)26 b(set,)i(the)f
fffe80d4 13480(extended)f(pattern)h(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m
5e6f45d9
CR
13481(v)m(e)j(\(see)1110 1170 y(Section)j(3.5.8.1)i([P)m(attern)f(Matc)m
13482(hing],)g(page)f(36\))h(are)f(enabled.)630 1349 y Ft(extquote)96
fffe80d4
CR
13483b Fu(If)51 b(set,)58 b Ft($')p Fj(string)p Ft(')49 b
13484Fu(and)i Ft($")p Fj(string)p Ft(")e Fu(quoting)k(is)e(p)s(erformed)f
5e6f45d9 13485(within)1110 1458 y Ft(${)p Fj(parameter)p Ft(})31 b
fffe80d4 13486Fu(expansions)k(enclosed)g(in)g(double)f(quotes.)55 b(This)33
5e6f45d9
CR
13487b(option)1110 1568 y(is)d(enabled)h(b)m(y)f(default.)630
134881747 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d(whic)m(h)g(fail)h
e59452c7 13489(to)h(matc)m(h)f(\014lenames)f(during)g(\014lename)g(ex-)1110
5e6f45d9
CR
134901856 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630
134912035 y Ft(force_fignore)1110 2145 y Fu(If)43 b(set,)k(the)d(su\016xes)f
abfcfa4e 13492(sp)s(eci\014ed)f(b)m(y)i(the)f Ft(FIGNORE)f Fu(shell)h(v)-5
5e6f45d9 13493b(ariable)44 b(cause)1110 2254 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h
e59452c7 13494(when)f(p)s(erforming)f(w)m(ord)h(completion)i(ev)m(en)f(if)g(the)1110
5e6f45d9
CR
134952364 y(ignored)37 b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g
13496(completions.)62 b(See)37 b(Section)h(5.2)1110 2473 y([Bash)24
e59452c7 13497b(V)-8 b(ariables],)27 b(page)e(77,)h(for)d(a)h(description)g(of)g
5e6f45d9
CR
13498Ft(FIGNORE)p Fu(.)37 b(This)22 b(option)1110 2583 y(is)30
13499b(enabled)h(b)m(y)f(default.)630 2762 y Ft(globasciiranges)1110
135002871 y Fu(If)j(set,)h(range)f(expressions)g(used)f(in)h(pattern)g(matc)
13501m(hing)h(brac)m(k)m(et)h(expres-)1110 2981 y(sions)28
e59452c7 13502b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)g(Matc)m(hing],)h(page)e
5e6f45d9 13503(36\))g(b)s(eha)m(v)m(e)g(as)g(if)1110 3091 y(in)i(the)g(traditional)i
e59452c7 13504(C)d(lo)s(cale)j(when)d(p)s(erforming)g(comparisons.)44
5e6f45d9 13505b(That)31 b(is,)1110 3200 y(the)d(curren)m(t)g(lo)s(cale's)i(collating)
e59452c7 13506h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g(accoun)m(t,)i(so)1110
5e6f45d9 135073310 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p
e59452c7 13508Ft(A)p Fu(')g(and)f(`)p Ft(B)p Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m
5e6f45d9
CR
13509(w)m(er-)1110 3419 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i
13510(together.)630 3598 y Ft(globskipdots)1110 3708 y Fu(If)38
13511b(set,)k(\014lename)d(expansion)f(will)h(nev)m(er)g(matc)m(h)h(the)f
13512(\014lenames)g(`)p Ft(.)p Fu(')g(and)1110 3817 y(`)p
13513Ft(..)p Fu(',)c(ev)m(en)g(if)g(the)f(pattern)g(b)s(egins)g(with)g(a)h
13514(`)p Ft(.)p Fu('.)52 b(This)34 b(option)h(is)f(enabled)1110
135153927 y(b)m(y)c(default.)630 4106 y Ft(globstar)96 b Fu(If)38
13516b(set,)j(the)e(pattern)f(`)p Ft(**)p Fu(')h(used)e(in)i(a)f(\014lename)
13517h(expansion)f(con)m(text)j(will)1110 4215 y(matc)m(h)36
13518b(all)g(\014les)f(and)f(zero)i(or)f(more)g(directories)h(and)e(sub)s
13519(directories.)54 b(If)1110 4325 y(the)30 b(pattern)g(is)g(follo)m(w)m
13520(ed)i(b)m(y)d(a)i(`)p Ft(/)p Fu(',)f(only)g(directories)h(and)f(sub)s
13521(directories)1110 4434 y(matc)m(h.)630 4613 y Ft(gnu_errfmt)1110
135224723 y Fu(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)
13523h(the)g(standard)f Fm(gnu)g Fu(error)1110 4832 y(message)c(format.)630
135245011 y Ft(histappend)1110 5121 y Fu(If)c(set,)j(the)e(history)g(list)g
71574d7e 13525(is)g(app)s(ended)e(to)j(the)f(\014le)g(named)f(b)m(y)h(the)g(v)-5
5e6f45d9 13526b(alue)29 b(of)1110 5230 y(the)d Ft(HISTFILE)d Fu(v)-5
71574d7e 13527b(ariable)26 b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m
5e6f45d9 13528(erwriting)1110 5340 y(the)31 b(\014le.)p eop end
e59452c7
CR
13529%%Page: 74 80
13530TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(4:)41
5e6f45d9
CR
13531b(Shell)30 b(Builtin)h(Commands)2069 b(74)630 299 y Ft(histreedit)1110
13532408 y Fu(If)33 b(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
13533(user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110
13534518 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
13535682 y Ft(histverify)1110 792 y Fu(If)35 b(set,)i(and)e(Readline)h(is)f
13536(b)s(eing)g(used,)h(the)f(results)g(of)g(history)h(substitu-)1110
13537902 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
13538(parser.)59 b(Instead,)38 b(the)1110 1011 y(resulting)i(line)f(is)h
13539(loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h(allo)m(wing)
135401110 1121 y(further)29 b(mo)s(di\014cation.)630 1285
13541y Ft(hostcomplete)1110 1395 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f
13542(b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110
135431504 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
13544(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 1614 y(pleted)g(\(see)h
fffe80d4 13545(Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g
5e6f45d9
CR
13546(138\).)1110 1724 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
13547630 1888 y Ft(huponexit)1110 1998 y Fu(If)i(set,)i(Bash)f(will)h(send)d
fffe80d4 13548Ft(SIGHUP)h Fu(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
5e6f45d9 135491110 2107 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
3011048a 13550(page)f(45\).)630 2271 y Ft(inherit_errexit)1110 2381
fffe80d4 13551y Fu(If)e(set,)h(command)g(substitution)f(inherits)g(the)g(v)-5
5e6f45d9 13552b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110 2491
fffe80d4 13553y(tion,)33 b(instead)g(of)f(unsetting)g(it)h(in)f(the)g(subshell)f(en)m
5e6f45d9
CR
13554(vironmen)m(t.)46 b(This)32 b(op-)1110 2600 y(tion)f(is)f(enabled)h
13555(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 2765
13556y Ft(interactive_comments)1110 2874 y Fu(Allo)m(w)d(a)g(w)m(ord)e(b)s
fffe80d4 13557(eginning)g(with)h(`)p Ft(#)p Fu(')g(to)h(cause)f(that)h(w)m(ord)f(and)
5e6f45d9 13558f(all)i(remain-)1110 2984 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g
fffe80d4 13559(to)g(b)s(e)f(ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110
5e6f45d9
CR
135603093 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
135613258 y Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
fc527055 13562(not)f(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
5e6f45d9
CR
135633367 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
13564(kground)g(in)g(the)g(curren)m(t)g(shell)1110 3477 y(en)m(vironmen)m
13565(t.)630 3641 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h
50fc6e33 13566Ft(cmdhist)e Fu(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
5e6f45d9
CR
135673751 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
13568(edded)g(newlines)h(rather)g(than)f(using)1110 3861 y(semicolon)32
13569b(separators)f(where)e(p)s(ossible.)630 4025 y Ft(localvar_inherit)1110
135704134 y Fu(If)j(set,)h(lo)s(cal)g(v)-5 b(ariables)33 b(inherit)f(the)g
50fc6e33 13571(v)-5 b(alue)32 b(and)g(attributes)h(of)f(a)g(v)-5 b(ariable)1110
5e6f45d9
CR
135724244 y(of)36 b(the)g(same)g(name)g(that)h(exists)f(at)h(a)f(previous)g
13573(scop)s(e)g(b)s(efore)f(an)m(y)h(new)1110 4354 y(v)-5
e59452c7 13574b(alue)31 b(is)f(assigned.)41 b(The)30 b Ft(nameref)e
5e6f45d9
CR
13575Fu(attribute)k(is)e(not)h(inherited.)630 4518 y Ft(localvar_unset)1110
135764628 y Fu(If)i(set,)i(calling)g Ft(unset)d Fu(on)i(lo)s(cal)g(v)-5
e59452c7 13577b(ariables)35 b(in)e(previous)g(function)g(scop)s(es)1110
5e6f45d9
CR
135784737 y(marks)26 b(them)g(so)g(subsequen)m(t)g(lo)s(okups)f(\014nd)g
13579(them)h(unset)f(un)m(til)i(that)g(func-)1110 4847 y(tion)40
e59452c7 13580b(returns.)68 b(This)39 b(is)g(iden)m(tical)j(to)e(the)g(b)s(eha)m
5e6f45d9
CR
13581(vior)g(of)g(unsetting)g(lo)s(cal)1110 4956 y(v)-5 b(ariables)31
13582b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 5121
13583y Ft(login_shell)1110 5230 y Fu(The)35 b(shell)h(sets)g(this)f(option)h
e59452c7 13584(if)g(it)g(is)f(started)h(as)g(a)g(login)g(shell)g(\(see)g(Sec-)1110
5e6f45d9
CR
135855340 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(90\).)41
13586b(The)28 b(v)-5 b(alue)29 b(ma)m(y)g(not)f(b)s(e)g(c)m(hanged.)p
13587eop end
e59452c7
CR
13588%%Page: 75 81
13589TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(4:)41
5e6f45d9
CR
13590b(Shell)30 b(Builtin)h(Commands)2069 b(75)630 299 y Ft(mailwarn)96
13591b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g(Bash)f(is)h(c)m(hec)m
13592(king)h(for)f(mail)g(has)f(b)s(een)g(accessed)1110 408
13593y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m(ed,)k(the)
13594c(message)h Ft("The)k(mail)h(in)f Fj(mail-)1110 518 y(file)g
13595Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630
13596701 y Ft(no_empty_cmd_completion)1110 810 y Fu(If)g(set,)g(and)g
13597(Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e
13598(searc)m(h)1110 920 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f
13599(completions)j(when)d(completion)i(is)f(attempted)h(on)1110
136001029 y(an)k(empt)m(y)h(line.)630 1212 y Ft(nocaseglob)1110
136011322 y Fu(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
13602(case-insensitiv)m(e)j(fashion)c(when)1110 1431 y(p)s(erforming)29
13603b(\014lename)i(expansion.)630 1614 y Ft(nocasematch)1110
136041724 y Fu(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
13605(case-insensitiv)m(e)i(fashion)d(when)1110 1833 y(p)s(erforming)31
e59452c7 13606b(matc)m(hing)i(while)f(executing)i Ft(case)d Fu(or)h
5e6f45d9 13607Ft([[)g Fu(conditional)h(com-)1110 1943 y(mands)25 b(\(see)i(Section)f
e59452c7 13608(3.2.5.2)j([Conditional)e(Constructs],)f(page)h(12,)h(when)1110
5e6f45d9
CR
136092052 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h
13610(or)f(when)g(\014ltering)1110 2162 y(p)s(ossible)j(completions)h(as)g
13611(part)f(of)h(programmable)f(completion.)630 2345 y Ft
13612(noexpand_translation)1110 2454 y Fu(If)23 b(set,)j(Bash)d(encloses)i
e59452c7 13613(the)e(translated)h(results)g(of)f($)p Ft(")p Fu(...)p
5e6f45d9 13614Ft(")h Fu(quoting)g(in)f(single)1110 2564 y(quotes)k(instead)g(of)g
e59452c7 13615(double)f(quotes.)40 b(If)26 b(the)h(string)f(is)h(not)g(translated,)h
5e6f45d9 13616(this)1110 2673 y(has)i(no)g(e\013ect.)630 2856 y Ft(nullglob)96
e59452c7 13617b Fu(If)23 b(set,)j(Bash)e(allo)m(ws)g(\014lename)g(patterns)g(whic)m
5e6f45d9 13618(h)f(matc)m(h)h(no)g(\014les)f(to)i(expand)1110 2966
e59452c7 13619y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630
5e6f45d9 136203148 y Ft(patsub_replacement)1110 3258 y Fu(If)38 b(set,)k(Bash)d
e59452c7 13621(expands)e(o)s(ccurrences)i(of)g(`)p Ft(&)p Fu(')g(in)f(the)h
5e6f45d9 13622(replacemen)m(t)h(string)1110 3367 y(of)47 b(pattern)g(substitution)g
e59452c7 13623(to)h(the)f(text)h(matc)m(hed)g(b)m(y)f(the)g(pattern,)52
5e6f45d9
CR
13624b(as)1110 3477 y(describ)s(ed)45 b(ab)s(o)m(v)m(e)i(\(see)f(Section)h
13625(3.5.3)g([Shell)f(P)m(arameter)h(Expansion],)1110 3587
e59452c7 13626y(page)31 b(26\).)42 b(This)30 b(option)g(is)h(enabled)f(b)m(y)g
5e6f45d9 13627(default.)630 3769 y Ft(progcomp)96 b Fu(If)25 b(set,)i(the)f
e59452c7 13628(programmable)g(completion)g(facilities)i(\(see)f(Section)f(8.6)h
5e6f45d9
CR
13629([Pro-)1110 3879 y(grammable)45 b(Completion],)k(page)c(142\))h(are)f
13630(enabled.)82 b(This)44 b(option)h(is)1110 3988 y(enabled)30
13631b(b)m(y)h(default.)630 4171 y Ft(progcomp_alias)1110
136324281 y Fu(If)23 b(set,)j(and)d(programmable)h(completion)h(is)f
13633(enabled,)h(Bash)f(treats)h(a)f(com-)1110 4390 y(mand)34
50fc6e33 13634b(name)h(that)g(do)s(esn't)f(ha)m(v)m(e)i(an)m(y)g(completions)f(as)g
5e6f45d9 13635(a)g(p)s(ossible)g(alias)1110 4500 y(and)40 b(attempts)i(alias)h
50fc6e33 13636(expansion.)72 b(If)41 b(it)g(has)g(an)g(alias,)k(Bash)c(attempts)1110
5e6f45d9
CR
136374609 y(programmable)28 b(completion)h(using)e(the)h(command)f(w)m(ord)h
13638(resulting)f(from)1110 4719 y(the)k(expanded)e(alias.)630
136394902 y Ft(promptvars)1110 5011 y Fu(If)50 b(set,)56 b(prompt)49
50fc6e33 13640b(strings)h(undergo)g(parameter)h(expansion,)k(command)1110
5e6f45d9
CR
136415121 y(substitution,)35 b(arithmetic)g(expansion,)g(and)e(quote)i(remo)
13642m(v)-5 b(al)35 b(after)f(b)s(eing)1110 5230 y(expanded)53
50fc6e33 13643b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)f(6.9)h([Con)m
5e6f45d9
CR
13644(trolling)g(the)1110 5340 y(Prompt],)30 b(page)h(103\).)43
13645b(This)29 b(option)i(is)g(enabled)f(b)m(y)g(default.)p
13646eop end
e59452c7
CR
13647%%Page: 76 82
13648TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(4:)41
5e6f45d9
CR
13649b(Shell)30 b(Builtin)h(Commands)2069 b(76)630 299 y Ft
13650(restricted_shell)1110 408 y Fu(The)40 b(shell)h(sets)g(this)g(option)g
13651(if)g(it)h(is)e(started)i(in)e(restricted)i(mo)s(de)e(\(see)1110
13652518 y(Section)32 b(6.10)h([The)d(Restricted)j(Shell],)e(page)h(104\).)
1365345 b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110 628
13654y(b)s(e)g(c)m(hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f(the)h
13655(startup)g(\014les)f(are)i(executed,)1110 737 y(allo)m(wing)k(the)e
13656(startup)f(\014les)h(to)g(disco)m(v)m(er)h(whether)f(or)f(not)i(a)f
13657(shell)g(is)g(re-)1110 847 y(stricted.)630 1006 y Ft(shift_verbose)1110
136581116 y Fu(If)g(this)g(is)g(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m
13659(ts)f(an)h(error)g(message)i(when)d(the)1110 1225 y(shift)30
13660b(coun)m(t)h(exceeds)g(the)g(n)m(um)m(b)s(er)e(of)h(p)s(ositional)i
13661(parameters.)630 1385 y Ft(sourcepath)1110 1494 y Fu(If)40
13662b(set,)45 b(the)c Ft(.)f Fu(\()p Ft(source)p Fu(\))g(builtin)g(uses)h
13663(the)g(v)-5 b(alue)41 b(of)g Ft(PATH)f Fu(to)h(\014nd)f(the)1110
136641604 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h
13665(an)g(argumen)m(t.)44 b(This)30 b(option)1110 1714 y(is)g(enabled)h(b)m
13666(y)f(default.)630 1873 y Ft(varredir_close)1110 1983
13667y Fu(If)i(set,)h(the)f(shell)h(automatically)i(closes)e(\014le)f
13668(descriptors)g(assigned)g(using)1110 2092 y(the)40 b
13669Ft({varname})c Fu(redirection)k(syn)m(tax)g(\(see)h(Section)f(3.6)g
13670([Redirections],)1110 2202 y(page)h(37\))f(instead)h(of)e(lea)m(ving)j
13671(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 2311
13672y(pletes.)630 2471 y Ft(xpg_echo)96 b Fu(If)31 b(set,)h(the)g
e59452c7 13673Ft(echo)e Fu(builtin)h(expands)f(bac)m(kslash-escap)s(e)j(sequences)f
5e6f45d9
CR
13674(b)m(y)f(de-)1110 2580 y(fault.)150 2821 y Fs(4.4)68
13675b(Sp)t(ecial)45 b(Builtins)150 2980 y Fu(F)-8 b(or)35
e59452c7
CR
13676b(historical)h(reasons,)g(the)e Fm(posix)g Fu(standard)f(has)i
13677(classi\014ed)f(sev)m(eral)i(builtin)e(commands)g(as)h
5e6f45d9 13678Fl(sp)-5 b(e-)150 3090 y(cial)p Fu(.)47 b(When)33 b(Bash)f(is)h
e59452c7 13679(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g(sp)s(ecial)g(builtins)
5e6f45d9
CR
13680e(di\013er)i(from)f(other)g(builtin)150 3200 y(commands)e(in)g(three)h
13681(resp)s(ects:)199 3334 y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i
e59452c7 13682(found)e(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s(okup.)
5e6f45d9 13683199 3469 y(2.)61 b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h
e59452c7 13684(error)g(status,)h(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199
5e6f45d9 136853603 y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f
e59452c7 13686(command)g(sta)m(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m
5e6f45d9
CR
13687(t)330 3713 y(after)i(the)f(command)h(completes.)275
136883872 y(When)36 b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f
e59452c7 13689Fu(mo)s(de,)j(these)f(builtins)f(b)s(eha)m(v)m(e)h(no)f(di\013eren)m
5e6f45d9 13690(tly)h(than)150 3982 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e
e59452c7 13691(commands.)41 b(The)30 b(Bash)g Fm(posix)g Fu(mo)s(de)g(is)g(describ)s
5e6f45d9
CR
13692(ed)f(in)h(Section)h(6.11)150 4091 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g
13693(105.)275 4226 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h
13694(builtins:)390 4360 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h
13695(exit)g(export)f(readonly)f(return)h(set)390 4470 y(shift)g(trap)h
e59452c7
CR
13696(unset)p eop end
13697%%Page: 77 83
13698TeXDict begin 77 82 bop 3659 -116 a Fu(77)150 299 y Fp(5)80
091c6bc4 13699b(Shell)53 b(V)-13 b(ariables)150 504 y Fu(This)21 b(c)m(hapter)i
c302751c
CR
13700(describ)s(es)e(the)i(shell)f(v)-5 b(ariables)23 b(that)f(Bash)h(uses.)
1370137 b(Bash)23 b(automatically)h(assigns)f(default)150
091c6bc4
CR
13702614 y(v)-5 b(alues)31 b(to)g(a)g(n)m(um)m(b)s(er)e(of)h(v)-5
13703b(ariables.)150 843 y Fs(5.1)68 b(Bourne)45 b(Shell)g(V)-11
13704b(ariables)150 1003 y Fu(Bash)30 b(uses)g(certain)h(shell)g(v)-5
c302751c 13705b(ariables)31 b(in)f(the)g(same)h(w)m(a)m(y)g(as)g(the)f(Bourne)g
091c6bc4 13706(shell.)41 b(In)30 b(some)g(cases,)i(Bash)150 1112 y(assigns)f(a)f
c302751c 13707(default)h(v)-5 b(alue)31 b(to)g(the)f(v)-5 b(ariable.)150
091c6bc4 137081260 y Ft(CDPATH)192 b Fu(A)39 b(colon-separated)i(list)e(of)g
c302751c 13709(directories)h(used)f(as)g(a)g(searc)m(h)h(path)e(for)h(the)g
091c6bc4 13710Ft(cd)f Fu(builtin)630 1370 y(command.)150 1518 y Ft(HOME)288
6e51e0d0
CR
13711b Fu(The)23 b(curren)m(t)h(user's)f(home)g(directory;)k(the)d(default)g
13712(for)f(the)h Ft(cd)f Fu(builtin)g(command.)38 b(The)630
091c6bc4 137131628 y(v)-5 b(alue)37 b(of)f(this)g(v)-5 b(ariable)37
37c41ab1 13714b(is)g(also)g(used)e(b)m(y)h(tilde)h(expansion)f(\(see)i(Section)f
e59452c7 13715(3.5.2)h([Tilde)630 1737 y(Expansion],)30 b(page)h(25\).)150
091c6bc4 137161885 y Ft(IFS)336 b Fu(A)25 b(list)i(of)e(c)m(haracters)i(that)f
37c41ab1 13717(separate)g(\014elds;)h(used)e(when)f(the)i(shell)f(splits)h(w)m(ords)e
091c6bc4 13718(as)i(part)630 1995 y(of)31 b(expansion.)150 2143 y Ft(MAIL)288
6e51e0d0 13719b Fu(If)44 b(this)g(parameter)h(is)g(set)g(to)g(a)f(\014lename)h(or)f
091c6bc4 13720(directory)h(name)g(and)f(the)g Ft(MAILPATH)630 2252
6e51e0d0 13721y Fu(v)-5 b(ariable)32 b(is)e(not)h(set,)h(Bash)f(informs)f(the)h(user)
e05be32d 13722f(of)h(the)g(arriv)-5 b(al)31 b(of)g(mail)g(in)g(the)g(sp)s(eci\014ed)
091c6bc4
CR
13723630 2362 y(\014le)f(or)h(Maildir-format)g(directory)-8
13724b(.)150 2510 y Ft(MAILPATH)96 b Fu(A)33 b(colon-separated)i(list)f(of)f
37c41ab1 13725(\014lenames)h(whic)m(h)f(the)g(shell)g(p)s(erio)s(dically)h(c)m(hec)m
091c6bc4 13726(ks)g(for)f(new)630 2619 y(mail.)60 b(Eac)m(h)37 b(list)g(en)m(try)g
37c41ab1 13727(can)g(sp)s(ecify)f(the)h(message)h(that)f(is)g(prin)m(ted)f(when)f
091c6bc4 13728(new)h(mail)630 2729 y(arriv)m(es)31 b(in)g(the)g(mail)g(\014le)g(b)m
122f603c 13729(y)g(separating)h(the)f(\014lename)g(from)f(the)h(message)h(with)e(a)i
091c6bc4 13730(`)p Ft(?)p Fu('.)630 2839 y(When)g(used)f(in)h(the)g(text)i(of)e(the)g
6e51e0d0 13731(message,)i Ft($_)e Fu(expands)f(to)i(the)f(name)g(of)h(the)f(curren)m
091c6bc4 13732(t)630 2948 y(mail)f(\014le.)150 3096 y Ft(OPTARG)192
6e51e0d0
CR
13733b Fu(The)30 b(v)-5 b(alue)31 b(of)f(the)h(last)g(option)g(argumen)m(t)g
13734(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f Fu(builtin.)150
091c6bc4 137353244 y Ft(OPTIND)192 b Fu(The)30 b(index)g(of)g(the)h(last)g(option)g
6e51e0d0 13736(argumen)m(t)g(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f
091c6bc4 13737Fu(builtin.)150 3392 y Ft(PATH)288 b Fu(A)32 b(colon-separated)i(list)f
37c41ab1 13738(of)f(directories)h(in)e(whic)m(h)h(the)g(shell)g(lo)s(oks)h(for)f
091c6bc4 13739(commands.)45 b(A)630 3502 y(zero-length)e(\(n)m(ull\))g(directory)f
6e51e0d0 13740(name)g(in)g(the)g(v)-5 b(alue)42 b(of)g Ft(PATH)f Fu(indicates)i(the)f
091c6bc4 13741(curren)m(t)630 3611 y(directory)-8 b(.)49 b(A)33 b(n)m(ull)f
37c41ab1 13742(directory)i(name)e(ma)m(y)i(app)s(ear)e(as)h(t)m(w)m(o)h(adjacen)m(t)g
091c6bc4
CR
13743(colons,)g(or)f(as)g(an)630 3721 y(initial)f(or)e(trailing)h(colon.)150
137443869 y Ft(PS1)336 b Fu(The)35 b(primary)f(prompt)h(string.)55
6e51e0d0 13745b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Ft(\\s-\\v\\$)28
e59452c7
CR
13746b Fu('.)56 b(See)36 b(Section)g(6.9)630 3979 y([Con)m(trolling)i(the)e
13747(Prompt],)i(page)f(103,)i(for)d(the)h(complete)h(list)e(of)h(escap)s(e)
13748g(sequences)630 4088 y(that)31 b(are)g(expanded)e(b)s(efore)h
13749Ft(PS1)g Fu(is)g(displa)m(y)m(ed.)150 4236 y Ft(PS2)336
124d67cd
CR
13750b Fu(The)28 b(secondary)g(prompt)g(string.)40 b(The)28
13751b(default)g(v)-5 b(alue)29 b(is)g(`)p Ft(>)h Fu('.)40
091c6bc4 13752b Ft(PS2)28 b Fu(is)g(expanded)g(in)g(the)630 4346 y(same)j(w)m(a)m(y)g
124d67cd 13753(as)g Ft(PS1)e Fu(b)s(efore)h(b)s(eing)g(displa)m(y)m(ed.)150
091c6bc4 137544575 y Fs(5.2)68 b(Bash)45 b(V)-11 b(ariables)150 4734
6e51e0d0 13755y Fu(These)45 b(v)-5 b(ariables)46 b(are)g(set)g(or)f(used)f(b)m(y)h
c302751c 13756(Bash,)50 b(but)44 b(other)i(shells)f(do)h(not)f(normally)h(treat)g
091c6bc4 13757(them)150 4844 y(sp)s(ecially)-8 b(.)275 4973 y(A)24
c302751c
CR
13758b(few)g(v)-5 b(ariables)24 b(used)g(b)m(y)f(Bash)i(are)f(describ)s(ed)f
13759(in)h(di\013eren)m(t)g(c)m(hapters:)38 b(v)-5 b(ariables)25
091c6bc4 13760b(for)f(con)m(trolling)150 5082 y(the)31 b(job)f(con)m(trol)h
37c41ab1 13761(facilities)i(\(see)e(Section)g(7.3)h([Job)e(Con)m(trol)h(V)-8
fffe80d4 13762b(ariables],)32 b(page)g(115\).)150 5230 y Ft(_)432 b
d37a4722
CR
13763Fu(\($)p 716 5230 28 4 v 41 w(,)34 b(an)g(underscore.\))49
13764b(A)m(t)35 b(shell)f(startup,)g(set)g(to)g(the)g(pathname)f(used)g(to)h
13765(in)m(v)m(ok)m(e)i(the)630 5340 y(shell)e(or)g(shell)h(script)f(b)s
13766(eing)f(executed)j(as)e(passed)g(in)f(the)i(en)m(vironmen)m(t)f(or)g
13767(argumen)m(t)p eop end
e59452c7
CR
13768%%Page: 78 84
13769TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(5:)41
13770b(Shell)30 b(V)-8 b(ariables)2459 b(78)630 299 y(list.)55
d37a4722
CR
13771b(Subsequen)m(tly)-8 b(,)35 b(expands)f(to)i(the)f(last)g(argumen)m(t)h
13772(to)f(the)g(previous)f(simple)h(com-)630 408 y(mand)21
13773b(executed)i(in)e(the)i(foreground,)g(after)f(expansion.)38
13774b(Also)22 b(set)h(to)f(the)g(full)g(pathname)630 518
13775y(used)h(to)i(in)m(v)m(ok)m(e)h(eac)m(h)g(command)e(executed)h(and)f
13776(placed)g(in)g(the)g(en)m(vironmen)m(t)h(exp)s(orted)630
13777628 y(to)33 b(that)g(command.)45 b(When)32 b(c)m(hec)m(king)i(mail,)g
13778(this)e(parameter)g(holds)g(the)g(name)g(of)h(the)630
13779737 y(mail)e(\014le.)150 920 y Ft(BASH)288 b Fu(The)30
13780b(full)g(pathname)g(used)g(to)h(execute)h(the)e(curren)m(t)g(instance)h
13781(of)g(Bash.)150 1103 y Ft(BASHOPTS)96 b Fu(A)31 b(colon-separated)h
13782(list)f(of)g(enabled)f(shell)h(options.)41 b(Eac)m(h)31
13783b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5 b(alid)630
137841212 y(argumen)m(t)37 b(for)g(the)g Ft(-s)f Fu(option)i(to)f(the)g
13785Ft(shopt)f Fu(builtin)g(command)h(\(see)g(Section)h(4.3.2)630
e59452c7 137861322 y([The)e(Shopt)g(Builtin],)i(page)f(70\).)60 b(The)36
091c6bc4
CR
13787b(options)h(app)s(earing)f(in)g Ft(BASHOPTS)e Fu(are)i(those)630
137881431 y(rep)s(orted)e(as)h(`)p Ft(on)p Fu(')f(b)m(y)h(`)p
13789Ft(shopt)p Fu('.)53 b(If)34 b(this)g(v)-5 b(ariable)36
13790b(is)f(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)630
137911541 y(starts)25 b(up,)f(eac)m(h)i(shell)e(option)h(in)e(the)i(list)g
8f714a7c 13792(will)f(b)s(e)g(enabled)g(b)s(efore)g(reading)g(an)m(y)g(startup)630
091c6bc4
CR
137931650 y(\014les.)41 b(This)29 b(v)-5 b(ariable)31 b(is)g(readonly)-8
13794b(.)150 1833 y Ft(BASHPID)144 b Fu(Expands)35 b(to)i(the)f(pro)s(cess)f
e05be32d 13795(ID)i(of)f(the)g(curren)m(t)g(Bash)g(pro)s(cess.)58 b(This)35
091c6bc4 13796b(di\013ers)h(from)g Ft($$)630 1943 y Fu(under)31 b(certain)j
8f714a7c 13797(circumstances,)h(suc)m(h)e(as)g(subshells)f(that)i(do)f(not)g(require)
091c6bc4 13798g(Bash)g(to)h(b)s(e)630 2052 y(re-initialized.)57 b(Assignmen)m(ts)35
7e92fb35 13799b(to)h Ft(BASHPID)d Fu(ha)m(v)m(e)j(no)f(e\013ect.)56
091c6bc4 13800b(If)34 b Ft(BASHPID)f Fu(is)i(unset,)h(it)630 2162 y(loses)31
7e92fb35 13801b(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
091c6bc4
CR
13802(subsequen)m(tly)f(reset.)150 2345 y Ft(BASH_ALIASES)630
138032454 y Fu(An)40 b(asso)s(ciativ)m(e)j(arra)m(y)d(v)-5
7e92fb35 13804b(ariable)41 b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m
091c6bc4 13805(ternal)h(list)630 2564 y(of)c(aliases)h(as)f(main)m(tained)g(b)m(y)g
7e92fb35 13806(the)g Ft(alias)e Fu(builtin.)59 b(\(see)37 b(Section)h(4.1)f([Bourne)g
e59452c7 13807(Shell)630 2673 y(Builtins],)31 b(page)g(47\).)42 b(Elemen)m(ts)31
7e92fb35 13808b(added)e(to)i(this)f(arra)m(y)h(app)s(ear)f(in)g(the)g(alias)h(list;)h
091c6bc4 13809(ho)m(w-)630 2783 y(ev)m(er,)k(unsetting)f(arra)m(y)g(elemen)m(ts)g
7e92fb35 13810(curren)m(tly)g(do)s(es)f(not)g(cause)h(aliases)h(to)f(b)s(e)f(remo)m
091c6bc4 13811(v)m(ed)630 2892 y(from)25 b(the)h(alias)h(list.)40 b(If)25
7e92fb35 13812b Ft(BASH_ALIASES)d Fu(is)k(unset,)g(it)g(loses)h(its)f(sp)s(ecial)g
091c6bc4
CR
13813(prop)s(erties,)g(ev)m(en)630 3002 y(if)k(it)h(is)g(subsequen)m(tly)f
13814(reset.)150 3185 y Ft(BASH_ARGC)630 3294 y Fu(An)39 b(arra)m(y)g(v)-5
7e92fb35 13815b(ariable)40 b(whose)f(v)-5 b(alues)39 b(are)h(the)f(n)m(um)m(b)s(er)f
091c6bc4 13816(of)h(parameters)g(in)g(eac)m(h)h(frame)630 3404 y(of)i(the)g(curren)m
7e92fb35 13817(t)g(bash)f(execution)i(call)g(stac)m(k.)76 b(The)42
091c6bc4 13818b(n)m(um)m(b)s(er)e(of)i(parameters)g(to)h(the)630 3513
7e92fb35 13819y(curren)m(t)38 b(subroutine)f(\(shell)i(function)e(or)i(script)f
037a8b7f 13820(executed)h(with)e Ft(.)h Fu(or)g Ft(source)p Fu(\))f(is)h(at)630
091c6bc4 138213623 y(the)27 b(top)g(of)g(the)g(stac)m(k.)41 b(When)27
037a8b7f 13822b(a)g(subroutine)f(is)h(executed,)i(the)e(n)m(um)m(b)s(er)f(of)h
091c6bc4 13823(parameters)630 3733 y(passed)44 b(is)h(pushed)e(on)m(to)j
037a8b7f 13824Ft(BASH_ARGC)p Fu(.)81 b(The)44 b(shell)h(sets)g Ft(BASH_ARGC)e
091c6bc4 13825Fu(only)i(when)e(in)630 3842 y(extended)34 b(debugging)f(mo)s(de)g
e59452c7 13826(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g(70,)g(for)
091c6bc4 13827630 3952 y(a)e(description)g(of)f(the)h Ft(extdebug)d
a2851804 13828Fu(option)j(to)h(the)e Ft(shopt)g Fu(builtin\).)47 b(Setting)33
091c6bc4 13829b Ft(extdebug)630 4061 y Fu(after)c(the)g(shell)g(has)g(started)g(to)g
8d125d8b 13830(execute)i(a)e(script,)g(or)g(referencing)g(this)f(v)-5
091c6bc4 13831b(ariable)30 b(when)630 4171 y Ft(extdebug)e Fu(is)j(not)f(set,)h(ma)m
8d125d8b 13832(y)g(result)g(in)f(inconsisten)m(t)h(v)-5 b(alues.)150
091c6bc4 138334354 y Ft(BASH_ARGV)630 4463 y Fu(An)24 b(arra)m(y)g(v)-5
8d125d8b 13834b(ariable)25 b(con)m(taining)h(all)f(of)f(the)h(parameters)f(in)g(the)g
091c6bc4 13835(curren)m(t)g(bash)g(execution)630 4573 y(call)35 b(stac)m(k.)53
8d125d8b 13836b(The)34 b(\014nal)g(parameter)g(of)g(the)g(last)h(subroutine)e(call)i
091c6bc4 13837(is)f(at)h(the)f(top)h(of)f(the)630 4682 y(stac)m(k;)28
8d125d8b 13838b(the)c(\014rst)f(parameter)i(of)f(the)g(initial)i(call)f(is)f(at)h
091c6bc4 13839(the)f(b)s(ottom.)39 b(When)24 b(a)g(subroutine)630 4792
8d125d8b 13840y(is)40 b(executed,)j(the)d(parameters)h(supplied)d(are)i(pushed)f(on)m
091c6bc4 13841(to)i Ft(BASH_ARGV)p Fu(.)66 b(The)40 b(shell)630 4902
8d125d8b 13842y(sets)28 b Ft(BASH_ARGV)e Fu(only)i(when)f(in)h(extended)g(debugging)g
091c6bc4 13843(mo)s(de)g(\(see)h(Section)f(4.3.2)i([The)630 5011 y(Shopt)g(Builtin],)
e59452c7 13844h(page)g(70,)g(for)g(a)f(description)h(of)f(the)h Ft(extdebug)d
091c6bc4 13845Fu(option)j(to)g(the)f Ft(shopt)630 5121 y Fu(builtin\).)64
8d125d8b 13846b(Setting)38 b Ft(extdebug)e Fu(after)j(the)f(shell)g(has)g(started)g
091c6bc4 13847(to)h(execute)g(a)g(script,)h(or)630 5230 y(referencing)35
8d125d8b 13848b(this)f(v)-5 b(ariable)35 b(when)e Ft(extdebug)f Fu(is)j(not)f(set,)j
091c6bc4
CR
13849(ma)m(y)e(result)f(in)g(inconsisten)m(t)630 5340 y(v)-5
13850b(alues.)p eop end
e59452c7
CR
13851%%Page: 79 85
13852TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(5:)41
13853b(Shell)30 b(V)-8 b(ariables)2459 b(79)150 299 y Ft(BASH_ARGV0)630
091c6bc4
CR
13854408 y Fu(When)31 b(referenced,)g(this)g(v)-5 b(ariable)32
13855b(expands)e(to)h(the)h(name)f(of)g(the)g(shell)g(or)g(shell)g(script)
13856630 518 y(\(iden)m(tical)42 b(to)e Ft($0)p Fu(;)j(See)d(Section)g
e59452c7 13857(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)j(page)d(23,)j(for)c(the)h(de-)
091c6bc4
CR
13858630 628 y(scription)32 b(of)g(sp)s(ecial)g(parameter)g(0\).)45
13859b(Assignmen)m(t)32 b(to)h Ft(BASH_ARGV0)c Fu(causes)j(the)f(v)-5
13860b(alue)630 737 y(assigned)34 b(to)h(also)g(b)s(e)e(assigned)h(to)g
13861Ft($0)p Fu(.)51 b(If)33 b Ft(BASH_ARGV0)f Fu(is)h(unset,)i(it)f(loses)h
13862(its)f(sp)s(ecial)630 847 y(prop)s(erties,)c(ev)m(en)h(if)f(it)h(is)g
d37a4722
CR
13863(subsequen)m(tly)f(reset.)150 1048 y Ft(BASH_CMDS)630
138641157 y Fu(An)k(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
091c6bc4 13865b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m(ternal)h
d37a4722 13866(hash)630 1267 y(table)c(of)g(commands)f(as)g(main)m(tained)h(b)m(y)g
091c6bc4 13867(the)f Ft(hash)f Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
e59452c7 138681377 y(Shell)42 b(Builtins],)k(page)d(47\).)77 b(Elemen)m(ts)43
8d125d8b 13869b(added)e(to)i(this)f(arra)m(y)h(app)s(ear)f(in)f(the)i(hash)630
d37a4722 138701486 y(table;)k(ho)m(w)m(ev)m(er,)e(unsetting)c(arra)m(y)g(elemen)m(ts)
091c6bc4 13871i(curren)m(tly)d(do)s(es)h(not)g(cause)g(command)630
d37a4722 138721596 y(names)36 b(to)g(b)s(e)f(remo)m(v)m(ed)i(from)e(the)h(hash)f
091c6bc4 13873(table.)58 b(If)36 b Ft(BASH_CMDS)d Fu(is)j(unset,)h(it)f(loses)h(its)
d37a4722
CR
13874630 1705 y(sp)s(ecial)31 b(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
13875(subsequen)m(tly)f(reset.)150 1906 y Ft(BASH_COMMAND)630
138762016 y Fu(The)39 b(command)h(curren)m(tly)g(b)s(eing)f(executed)i(or)e
8d125d8b 13877(ab)s(out)h(to)g(b)s(e)f(executed,)44 b(unless)39 b(the)630
d37a4722 138782125 y(shell)g(is)g(executing)g(a)g(command)g(as)g(the)f(result)h(of)g
8d125d8b 13879(a)g(trap,)i(in)d(whic)m(h)g(case)i(it)f(is)g(the)630
d37a4722 138802235 y(command)30 b(executing)i(at)g(the)f(time)g(of)g(the)g(trap.)41
e2169ae9 13881b(If)30 b Ft(BASH_COMMAND)e Fu(is)i(unset,)h(it)g(loses)630
d37a4722
CR
138822345 y(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)f
13883(subsequen)m(tly)g(reset.)150 2545 y Ft(BASH_COMPAT)630
138842655 y Fu(The)i(v)-5 b(alue)33 b(is)g(used)f(to)h(set)g(the)g(shell's)g
13885(compatibilit)m(y)i(lev)m(el.)49 b(See)33 b(Section)h(6.12)g([Shell)630
fffe80d4 138862765 y(Compatibilit)m(y)j(Mo)s(de],)h(page)e(109,)i(for)e(a)g
d37a4722
CR
13887(description)g(of)f(the)h(v)-5 b(arious)36 b(compatibilit)m(y)630
138882874 y(lev)m(els)g(and)f(their)g(e\013ects.)55 b(The)34
13889b(v)-5 b(alue)36 b(ma)m(y)f(b)s(e)f(a)i(decimal)f(n)m(um)m(b)s(er)f
13890(\(e.g.,)k(4.2\))e(or)f(an)630 2984 y(in)m(teger)44 b(\(e.g.,)j(42\))d
13891(corresp)s(onding)d(to)i(the)g(desired)e(compatibilit)m(y)k(lev)m(el.)
1389278 b(If)42 b Ft(BASH_)630 3093 y(COMPAT)28 b Fu(is)j(unset)e(or)h(set)h
13893(to)g(the)f(empt)m(y)h(string,)f(the)h(compatibilit)m(y)h(lev)m(el)g
13894(is)e(set)h(to)g(the)630 3203 y(default)39 b(for)g(the)g(curren)m(t)g
13895(v)m(ersion.)67 b(If)38 b Ft(BASH_COMPAT)e Fu(is)j(set)h(to)f(a)h(v)-5
13896b(alue)39 b(that)h(is)f(not)630 3313 y(one)31 b(of)f(the)h(v)-5
13897b(alid)31 b(compatibilit)m(y)i(lev)m(els,)f(the)f(shell)f(prin)m(ts)g
13898(an)h(error)f(message)i(and)e(sets)630 3422 y(the)i(compatibilit)m(y)j
13899(lev)m(el)e(to)g(the)g(default)f(for)g(the)g(curren)m(t)g(v)m(ersion.)
1390047 b(The)31 b(v)-5 b(alid)33 b(v)-5 b(alues)630 3532
13901y(corresp)s(ond)31 b(to)i(the)g(compatibilit)m(y)i(lev)m(els)f(describ)
13902s(ed)d(b)s(elo)m(w)i(\(see)g(Section)h(6.12)g([Shell)630
fffe80d4 139033641 y(Compatibilit)m(y)d(Mo)s(de],)f(page)g(109\).)42
d37a4722
CR
13904b(F)-8 b(or)30 b(example,)h(4.2)f(and)f(42)h(are)g(v)-5
13905b(alid)30 b(v)-5 b(alues)29 b(that)630 3751 y(corresp)s(ond)d(to)i(the)
13906f Ft(compat42)e(shopt)g Fu(option)j(and)e(set)i(the)f(compatibilit)m(y)
13907i(lev)m(el)g(to)f(42.)630 3861 y(The)i(curren)m(t)g(v)m(ersion)h(is)f
13908(also)i(a)e(v)-5 b(alid)31 b(v)-5 b(alue.)150 4061 y
13909Ft(BASH_ENV)96 b Fu(If)28 b(this)g(v)-5 b(ariable)30
967625cd 13910b(is)e(set)h(when)f(Bash)g(is)h(in)m(v)m(ok)m(ed)h(to)f(execute)h(a)e
d37a4722 13911(shell)h(script,)g(its)g(v)-5 b(alue)29 b(is)630 4171
967625cd 13912y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)g(a)h(startup)f(\014le)g
d37a4722 13913(to)h(read)f(b)s(efore)g(executing)i(the)630 4281 y(script.)41
e59452c7 13914b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(92.)150
d37a4722 139154482 y Ft(BASH_EXECUTION_STRING)630 4591 y Fu(The)f(command)g(argumen)m
967625cd 13916(t)h(to)g(the)g Ft(-c)e Fu(in)m(v)m(o)s(cation)k(option.)150
e59452c7
CR
139174792 y Ft(BASH_LINENO)630 4902 y Fu(An)38 b(arra)m(y)g(v)-5
13918b(ariable)39 b(whose)f(mem)m(b)s(ers)f(are)i(the)f(line)h(n)m(um)m(b)s
13919(ers)d(in)i(source)g(\014les)g(where)630 5011 y(eac)m(h)h(corresp)s
13920(onding)e(mem)m(b)s(er)g(of)h Ft(FUNCNAME)d Fu(w)m(as)k(in)m(v)m(ok)m
13921(ed.)64 b Ft(${BASH_LINENO[$i]})630 5121 y Fu(is)74 b(the)g(line)h(n)m
13922(um)m(b)s(er)e(in)g(the)i(source)f(\014le)g(\()p Ft
13923(${BASH_SOURCE[$i+1]})p Fu(\))69 b(where)630 5230 y Ft(${FUNCNAME[$i]})
1392432 b Fu(w)m(as)37 b(called)g(\(or)g Ft(${BASH_LINENO[$i-1]})31
13925b Fu(if)36 b(referenced)g(within)630 5340 y(another)31
13926b(shell)f(function\).)41 b(Use)31 b Ft(LINENO)d Fu(to)j(obtain)g(the)g
13927(curren)m(t)f(line)h(n)m(um)m(b)s(er.)p eop end
13928%%Page: 80 86
13929TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(5:)41
13930b(Shell)30 b(V)-8 b(ariables)2459 b(80)150 299 y Ft
d37a4722
CR
13931(BASH_LOADABLES_PATH)630 408 y Fu(A)39 b(colon-separated)i(list)f(of)f
13932(directories)h(in)f(whic)m(h)g(the)g(shell)h(lo)s(oks)f(for)g
13933(dynamically)630 518 y(loadable)32 b(builtins)d(sp)s(eci\014ed)h(b)m(y)
13934g(the)h Ft(enable)e Fu(command.)150 673 y Ft(BASH_REMATCH)630
13935783 y Fu(An)43 b(arra)m(y)i(v)-5 b(ariable)44 b(whose)g(mem)m(b)s(ers)f
091c6bc4 13936(are)h(assigned)g(b)m(y)f(the)h(`)p Ft(=~)p Fu(')g(binary)f(op)s
d37a4722
CR
13937(erator)630 892 y(to)37 b(the)f Ft([[)g Fu(conditional)i(command)e
13938(\(see)h(Section)g(3.2.5.2)i([Conditional)e(Constructs],)630
e59452c7 139391002 y(page)e(12\).)52 b(The)33 b(elemen)m(t)j(with)d(index)g(0)i(is)f
091c6bc4 13940(the)g(p)s(ortion)f(of)h(the)g(string)g(matc)m(hing)h(the)630
d37a4722 139411112 y(en)m(tire)29 b(regular)f(expression.)40 b(The)27
091c6bc4 13942b(elemen)m(t)j(with)d(index)h Fr(n)f Fu(is)h(the)g(p)s(ortion)g(of)g
d37a4722
CR
13943(the)g(string)630 1221 y(matc)m(hing)j(the)g Fr(n)p Fu(th)f(paren)m
13944(thesized)h(sub)s(expression.)150 1377 y Ft(BASH_SOURCE)630
139451486 y Fu(An)40 b(arra)m(y)h(v)-5 b(ariable)41 b(whose)f(mem)m(b)s(ers)
091c6bc4 13946g(are)h(the)g(source)f(\014lenames)h(where)f(the)g(corre-)630
d37a4722 139471596 y(sp)s(onding)27 b(shell)i(function)f(names)g(in)g(the)h
8d125d8b 13948Ft(FUNCNAME)d Fu(arra)m(y)j(v)-5 b(ariable)30 b(are)f(de\014ned.)38
d37a4722 13949b(The)630 1705 y(shell)26 b(function)g Ft(${FUNCNAME[$i]})c
8d125d8b 13950Fu(is)k(de\014ned)f(in)g(the)h(\014le)h Ft(${BASH_SOURCE[$i]})21
d37a4722
CR
13951b Fu(and)630 1815 y(called)32 b(from)d Ft(${BASH_SOURCE[$i+1]})150
139521970 y(BASH_SUBSHELL)630 2080 y Fu(Incremen)m(ted)24
091c6bc4 13953b(b)m(y)f(one)h(within)f(eac)m(h)i(subshell)d(or)i(subshell)e(en)m
d37a4722 13954(vironmen)m(t)i(when)f(the)h(shell)630 2189 y(b)s(egins)j(executing)i
091c6bc4
CR
13955(in)e(that)h(en)m(vironmen)m(t.)41 b(The)27 b(initial)i(v)-5
13956b(alue)28 b(is)f(0.)40 b(If)28 b Ft(BASH_SUBSHELL)630
d37a4722 139572299 y Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)
091c6bc4 13958f(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)150
d37a4722 139592454 y Ft(BASH_VERSINFO)630 2564 y Fu(A)36 b(readonly)g(arra)m(y)g(v)-5
e59452c7 13960b(ariable)37 b(\(see)f(Section)h(6.7)g([Arra)m(ys],)h(page)e(99\))h
d37a4722 13961(whose)f(mem)m(b)s(ers)630 2673 y(hold)c(v)m(ersion)h(information)f
091c6bc4 13962(for)g(this)g(instance)h(of)g(Bash.)46 b(The)32 b(v)-5
d37a4722
CR
13963b(alues)32 b(assigned)h(to)g(the)630 2783 y(arra)m(y)e(mem)m(b)s(ers)e
13964(are)i(as)g(follo)m(ws:)630 2938 y Ft(BASH_VERSINFO[0])1110
139653048 y Fu(The)f(ma)5 b(jor)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
13966Fr(release)5 b Fu(\).)630 3203 y Ft(BASH_VERSINFO[1])1110
139673313 y Fu(The)30 b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
13968Fr(v)m(ersion)p Fu(\).)630 3468 y Ft(BASH_VERSINFO[2])1110
139693577 y Fu(The)f(patc)m(h)h(lev)m(el.)630 3733 y Ft(BASH_VERSINFO[3])
139701110 3842 y Fu(The)f(build)f(v)m(ersion.)630 3998 y Ft
13971(BASH_VERSINFO[4])1110 4107 y Fu(The)h(release)i(status)e(\(e.g.,)j
e59452c7
CR
13972Ft(beta1)p Fu(\).)630 4262 y Ft(BASH_VERSINFO[5])1110
139734372 y Fu(The)d(v)-5 b(alue)31 b(of)f Ft(MACHTYPE)p Fu(.)150
139744527 y Ft(BASH_VERSION)630 4637 y Fu(The)g(v)m(ersion)h(n)m(um)m(b)s
13975(er)e(of)h(the)h(curren)m(t)f(instance)h(of)g(Bash.)150
d37a4722 139764792 y Ft(BASH_XTRACEFD)630 4902 y Fu(If)f(set)h(to)h(an)e(in)m(teger)i
8f714a7c 13977(corresp)s(onding)e(to)h(a)g(v)-5 b(alid)31 b(\014le)g(descriptor,)g
d37a4722 13978(Bash)g(will)g(write)g(the)630 5011 y(trace)37 b(output)f(generated)h
6e51e0d0 13979(when)f(`)p Ft(set)29 b(-x)p Fu(')36 b(is)g(enabled)h(to)g(that)f
d37a4722 13980(\014le)h(descriptor.)58 b(This)630 5121 y(allo)m(ws)29
8f714a7c 13981b(tracing)h(output)d(to)i(b)s(e)f(separated)g(from)g(diagnostic)h(and)f
d37a4722 13982(error)f(messages.)41 b(The)630 5230 y(\014le)31 b(descriptor)f(is)h
6e51e0d0 13983(closed)g(when)f Ft(BASH_XTRACEFD)d Fu(is)k(unset)f(or)g(assigned)h(a)g
d37a4722 13984(new)f(v)-5 b(alue.)630 5340 y(Unsetting)45 b Ft(BASH_XTRACEFD)40
6e51e0d0 13985b Fu(or)k(assigning)g(it)g(the)g(empt)m(y)h(string)e(causes)i(the)f
d37a4722 13986(trace)p eop end
e59452c7
CR
13987%%Page: 81 87
13988TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(5:)41
13989b(Shell)30 b(V)-8 b(ariables)2459 b(81)630 299 y(output)33
d37a4722
CR
13990b(to)i(b)s(e)d(sen)m(t)j(to)f(the)g(standard)e(error.)50
13991b(Note)35 b(that)g(setting)f Ft(BASH_XTRACEFD)c Fu(to)630
13992408 y(2)39 b(\(the)h(standard)e(error)g(\014le)h(descriptor\))h(and)e
13993(then)h(unsetting)g(it)g(will)g(result)g(in)g(the)630
13994518 y(standard)30 b(error)g(b)s(eing)f(closed.)150 664
13995y Ft(CHILD_MAX)630 774 y Fu(Set)35 b(the)h(n)m(um)m(b)s(er)e(of)h
13996(exited)h(c)m(hild)g(status)f(v)-5 b(alues)36 b(for)f(the)g(shell)g(to)
13997h(remem)m(b)s(er.)55 b(Bash)630 883 y(will)37 b(not)g(allo)m(w)i(this)e
13998(v)-5 b(alue)37 b(to)h(b)s(e)e(decreased)i(b)s(elo)m(w)f(a)g
13999Fm(posix)p Fu(-mandated)f(minim)m(um,)630 993 y(and)30
091c6bc4
CR
14000b(there)g(is)g(a)h(maxim)m(um)f(v)-5 b(alue)30 b(\(curren)m(tly)h
14001(8192\))h(that)f(this)f(ma)m(y)g(not)h(exceed.)41 b(The)630
d37a4722
CR
140021103 y(minim)m(um)30 b(v)-5 b(alue)30 b(is)h(system-dep)s(enden)m(t.)
14003150 1249 y Ft(COLUMNS)144 b Fu(Used)32 b(b)m(y)f(the)h
14004Ft(select)e Fu(command)h(to)i(determine)f(the)f(terminal)i(width)d
14005(when)h(prin)m(ting)630 1358 y(selection)39 b(lists.)63
14006b(Automatically)41 b(set)d(if)f(the)h Ft(checkwinsize)d
14007Fu(option)j(is)f(enabled)h(\(see)630 1468 y(Section)44
e59452c7 14008b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d(70\),)k(or)43
d37a4722
CR
14009b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630 1577
14010y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 1724 y
14011Ft(COMP_CWORD)630 1833 y Fu(An)38 b(index)g(in)m(to)h
8d125d8b 14012Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
d37a4722 14013(curren)m(t)g(cursor)g(p)s(o-)630 1943 y(sition.)72 b(This)40
8d125d8b
CR
14014b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)43 b(only)e(in)f(shell)h
14015(functions)f(in)m(v)m(ok)m(ed)i(b)m(y)e(the)h(pro-)630
d37a4722 140162052 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g
fffe80d4 14017([Programmable)g(Completion],)630 2162 y(page)31 b(142\).)150
d37a4722 140182308 y Ft(COMP_LINE)630 2418 y Fu(The)38 b(curren)m(t)h(command)f
8d125d8b 14019(line.)66 b(This)37 b(v)-5 b(ariable)40 b(is)f(a)m(v)-5
d37a4722 14020b(ailable)41 b(only)d(in)h(shell)f(functions)630 2527
8d125d8b 14021y(and)25 b(external)h(commands)f(in)m(v)m(ok)m(ed)h(b)m(y)f(the)h
d37a4722 14022(programmable)f(completion)i(facilities)g(\(see)630 2637
fffe80d4 14023y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(142\).)150
d37a4722 140242783 y Ft(COMP_POINT)630 2892 y Fu(The)25 b(index)g(of)h(the)g(curren)m
7e92fb35 14025(t)f(cursor)g(p)s(osition)h(relativ)m(e)i(to)e(the)g(b)s(eginning)f(of)
d37a4722 14026g(the)h(curren)m(t)630 3002 y(command.)40 b(If)27 b(the)h(curren)m(t)g
7e92fb35 14027(cursor)g(p)s(osition)g(is)g(at)g(the)g(end)g(of)g(the)g(curren)m(t)g
d37a4722 14028(command,)630 3112 y(the)i(v)-5 b(alue)30 b(of)g(this)g(v)-5
7e92fb35
CR
14029b(ariable)31 b(is)f(equal)g(to)h Ft(${#COMP_LINE})p Fu(.)37
14030b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630
d37a4722
CR
140313221 y(only)36 b(in)f(shell)h(functions)f(and)g(external)h(commands)g
14032(in)m(v)m(ok)m(ed)h(b)m(y)e(the)h(programmable)630 3331
7e92fb35 14033y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g
fffe80d4 14034(Completion],)h(page)f(142\).)150 3477 y Ft(COMP_TYPE)630
d37a4722 140353587 y Fu(Set)c(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
7e92fb35 14036b(corresp)s(onding)e(to)h(the)h(t)m(yp)s(e)f(of)g(completion)h
e59452c7
CR
14037(attempted)g(that)630 3696 y(caused)j(a)g(completion)h(function)e(to)h
14038(b)s(e)f(called:)43 b Ft(TAB)p Fu(,)30 b(for)g(normal)h(completion,)h
14039(`)p Ft(?)p Fu(',)f(for)630 3806 y(listing)k(completions)h(after)f
14040(successiv)m(e)g(tabs,)h(`)p Ft(!)p Fu(',)g(for)e(listing)h(alternativ)
14041m(es)i(on)d(partial)630 3915 y(w)m(ord)22 b(completion,)k(`)p
14042Ft(@)p Fu(',)f(to)e(list)g(completions)h(if)f(the)g(w)m(ord)f(is)h(not)
14043g(unmo)s(di\014ed,)f(or)h(`)p Ft(\045)p Fu(',)h(for)630
140444025 y(men)m(u)i(completion.)41 b(This)25 b(v)-5 b(ariable)27
14045b(is)g(a)m(v)-5 b(ailable)28 b(only)f(in)f(shell)g(functions)g(and)g
14046(external)630 4134 y(commands)32 b(in)m(v)m(ok)m(ed)i(b)m(y)e(the)g
14047(programmable)h(completion)g(facilities)i(\(see)e(Section)g(8.6)630
fffe80d4 140484244 y([Programmable)e(Completion],)h(page)f(142\).)150
d37a4722 140494390 y Ft(COMP_KEY)96 b Fu(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
d3ad40de 14050(of)f(a)g(k)m(ey)h(sequence\))g(used)e(to)i(in)m(v)m(ok)m(e)h(the)e
d37a4722
CR
14051(curren)m(t)g(completion)630 4500 y(function.)150 4646
14052y Ft(COMP_WORDBREAKS)630 4756 y Fu(The)f(set)i(of)e(c)m(haracters)j
d3ad40de 14053(that)e(the)g(Readline)g(library)g(treats)g(as)g(w)m(ord)g(separators)g
d37a4722 14054(when)630 4865 y(p)s(erforming)i(w)m(ord)h(completion.)51
6e51e0d0 14055b(If)33 b Ft(COMP_WORDBREAKS)c Fu(is)34 b(unset,)g(it)f(loses)i(its)e
d37a4722
CR
14056(sp)s(ecial)630 4975 y(prop)s(erties,)d(ev)m(en)h(if)f(it)h(is)g
14057(subsequen)m(tly)f(reset.)150 5121 y Ft(COMP_WORDS)630
140585230 y Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(consisting)g(of)f(the)
d3ad40de 14059g(individual)f(w)m(ords)h(in)f(the)h(curren)m(t)g(command)630
d37a4722
CR
140605340 y(line.)94 b(The)47 b(line)i(is)f(split)g(in)m(to)h(w)m(ords)e(as)
14061h(Readline)h(w)m(ould)f(split)g(it,)53 b(using)47 b Ft(COMP_)p
091c6bc4 14062eop end
e59452c7
CR
14063%%Page: 82 88
14064TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(5:)41
14065b(Shell)30 b(V)-8 b(ariables)2459 b(82)630 299 y Ft(WORDBREAKS)34
d37a4722
CR
14066b Fu(as)i(describ)s(ed)g(ab)s(o)m(v)m(e.)60 b(This)36
14067b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39 b(only)e(in)f(shell)h
14068(func-)630 408 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)m(y)d(the)i
14069(programmable)f(completion)h(facilities)h(\(see)f(Section)g(8.6)g
fffe80d4 14070([Pro-)630 518 y(grammable)e(Completion],)g(page)g(142\).)150
d37a4722
CR
14071676 y Ft(COMPREPLY)630 786 y Fu(An)37 b(arra)m(y)h(v)-5
14072b(ariable)38 b(from)f(whic)m(h)g(Bash)g(reads)g(the)h(p)s(ossible)e
14073(completions)j(generated)630 896 y(b)m(y)33 b(a)g(shell)h(function)f
14074(in)m(v)m(ok)m(ed)h(b)m(y)f(the)g(programmable)h(completion)g(facilit)m
14075(y)h(\(see)f(Sec-)630 1005 y(tion)g(8.6)g([Programmable)g(Completion],)
fffe80d4 14076h(page)f(142\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
d37a4722
CR
14077630 1115 y(one)c(p)s(ossible)f(completion.)150 1273 y
14078Ft(COPROC)192 b Fu(An)27 b(arra)m(y)g(v)-5 b(ariable)28
14079b(created)g(to)f(hold)g(the)g(\014le)g(descriptors)g(for)g(output)f
14080(from)h(and)f(input)630 1383 y(to)31 b(an)f(unnamed)f(copro)s(cess)i
e59452c7 14081(\(see)g(Section)h(3.2.6)g([Copro)s(cesses],)f(page)g(18\).)150
d37a4722
CR
140821541 y Ft(DIRSTACK)96 b Fu(An)26 b(arra)m(y)h(v)-5 b(ariable)28
14083b(con)m(taining)g(the)f(curren)m(t)f(con)m(ten)m(ts)j(of)e(the)f
14084(directory)i(stac)m(k.)41 b(Direc-)630 1650 y(tories)33
14085b(app)s(ear)f(in)g(the)h(stac)m(k)h(in)e(the)h(order)f(they)h(are)g
14086(displa)m(y)m(ed)g(b)m(y)f(the)h Ft(dirs)e Fu(builtin.)630
140871760 y(Assigning)f(to)h(mem)m(b)s(ers)f(of)g(this)g(arra)m(y)g(v)-5
14088b(ariable)31 b(ma)m(y)g(b)s(e)e(used)h(to)h(mo)s(dify)e(directories)630
140891870 y(already)41 b(in)f(the)h(stac)m(k,)k(but)40 b(the)h
14090Ft(pushd)e Fu(and)h Ft(popd)f Fu(builtins)h(m)m(ust)h(b)s(e)e(used)h
14091(to)i(add)630 1979 y(and)37 b(remo)m(v)m(e)h(directories.)63
14092b(Assignmen)m(t)37 b(to)h(this)f(v)-5 b(ariable)38 b(will)g(not)f(c)m
14093(hange)i(the)e(cur-)630 2089 y(ren)m(t)c(directory)-8
14094b(.)47 b(If)32 b Ft(DIRSTACK)e Fu(is)i(unset,)g(it)h(loses)g(its)g(sp)s
14095(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)630
140962198 y(subsequen)m(tly)d(reset.)150 2357 y Ft(EMACS)240
14097b Fu(If)31 b(Bash)h(\014nds)d(this)j(v)-5 b(ariable)32
14098b(in)f(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)f(starts)h(with)f
14099(v)-5 b(alue)630 2466 y(`)p Ft(t)p Fu(',)36 b(it)f(assumes)f(that)h
14100(the)g(shell)f(is)h(running)e(in)h(an)g(Emacs)h(shell)g(bu\013er)e(and)
14101h(disables)630 2576 y(line)d(editing.)150 2734 y Ft(ENV)336
d514a087
CR
14102b Fu(Expanded)30 b(and)h(executed)h(similarlt)m(y)g(to)g
14103Ft(BASH_ENV)d Fu(\(see)k(Section)f(6.2)g([Bash)g(Startup)630
e59452c7 141042844 y(Files],)39 b(page)e(92\))h(when)d(an)h(in)m(teractiv)m(e)j
d514a087
CR
14105(shell)d(is)h(in)m(v)m(ok)m(ed)g(in)f Fm(posix)g Fu(Mo)s(de)g(\(see)h
14106(Sec-)630 2953 y(tion)31 b(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g
e59452c7 14107(105\).)150 3112 y Ft(EPOCHREALTIME)630 3221 y Fu(Eac)m(h)38
d514a087
CR
14108b(time)f(this)g(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)
14109f(n)m(um)m(b)s(er)f(of)h(seconds)630 3331 y(since)f(the)g(Unix)f(Ep)s
14110(o)s(c)m(h)g(as)h(a)g(\015oating)h(p)s(oin)m(t)f(v)-5
14111b(alue)36 b(with)f(micro-second)i(gran)m(ularit)m(y)630
e59452c7
CR
141123440 y(\(see)k(the)g(do)s(cumen)m(tation)h(for)e(the)h(C)f(library)g
14113(function)g Ft(time)g Fu(for)g(the)h(de\014nition)f(of)630
d514a087
CR
141143550 y(Ep)s(o)s(c)m(h\).)82 b(Assignmen)m(ts)44 b(to)h
14115Ft(EPOCHREALTIME)c Fu(are)j(ignored.)83 b(If)43 b Ft(EPOCHREALTIME)e
14116Fu(is)630 3660 y(unset,)30 b(it)h(loses)g(its)g(sp)s(ecial)g(prop)s
14117(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
141183818 y Ft(EPOCHSECONDS)630 3927 y Fu(Eac)m(h)38 b(time)f(this)g
d37a4722 14119(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)f(n)m(um)m(b)s
e59452c7
CR
14120(er)f(of)h(seconds)630 4037 y(since)d(the)g(Unix)g(Ep)s(o)s(c)m(h)f
14121(\(see)i(the)f(do)s(cumen)m(tation)h(for)e(the)i(C)e(library)h
14122(function)f Ft(time)630 4147 y Fu(for)41 b(the)g(de\014nition)g(of)h
d514a087
CR
14123(Ep)s(o)s(c)m(h\).)73 b(Assignmen)m(ts)41 b(to)h Ft(EPOCHSECONDS)c
14124Fu(are)k(ignored.)73 b(If)630 4256 y Ft(EPOCHSECONDS)27
14125b Fu(is)j(unset,)g(it)g(loses)h(its)g(sp)s(ecial)f(prop)s(erties,)g(ev)
14126m(en)h(if)f(it)g(is)g(subsequen)m(tly)630 4366 y(reset.)150
141274524 y Ft(EUID)288 b Fu(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d
14128(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5
14129b(ariable)31 b(is)f(readonly)-8 b(.)150 4682 y Ft(EXECIGNORE)630
141304792 y Fu(A)29 b(colon-separated)h(list)f(of)g(shell)g(patterns)f
14131(\(see)i(Section)f(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)630
e59452c7 141324902 y(page)j(36\))g(de\014ning)e(the)h(list)g(of)g(\014lenames)g(to)g
d514a087
CR
14133(b)s(e)g(ignored)g(b)m(y)f(command)h(searc)m(h)g(using)630
141345011 y Ft(PATH)p Fu(.)k(Files)22 b(whose)f(full)g(pathnames)g(matc)m(h)
14135h(one)f(of)g(these)h(patterns)e(are)i(not)f(considered)630
141365121 y(executable)j(\014les)e(for)g(the)h(purp)s(oses)d(of)j
14137(completion)h(and)d(command)i(execution)g(via)g Ft(PATH)630
141385230 y Fu(lo)s(okup.)56 b(This)35 b(do)s(es)g(not)h(a\013ect)i(the)d(b)
14139s(eha)m(vior)h(of)g(the)g Ft([)p Fu(,)h Ft(test)p Fu(,)f(and)f
14140Ft([[)g Fu(commands.)630 5340 y(F)-8 b(ull)42 b(pathnames)e(in)h(the)g
14141(command)g(hash)f(table)i(are)g(not)f(sub)5 b(ject)41
14142b(to)g Ft(EXECIGNORE)p Fu(.)p eop end
e59452c7
CR
14143%%Page: 83 89
14144TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(5:)41
14145b(Shell)30 b(V)-8 b(ariables)2459 b(83)630 299 y(Use)30
d514a087
CR
14146b(this)f(v)-5 b(ariable)30 b(to)g(ignore)g(shared)f(library)g(\014les)g
14147(that)h(ha)m(v)m(e)h(the)f(executable)h(bit)e(set,)630
14148408 y(but)36 b(are)h(not)g(executable)i(\014les.)60 b(The)36
14149b(pattern)h(matc)m(hing)h(honors)e(the)h(setting)h(of)f(the)630
14150518 y Ft(extglob)28 b Fu(shell)j(option.)150 679 y Ft(FCEDIT)192
14151b Fu(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f
14152Ft(-e)g Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)150
14153840 y Ft(FIGNORE)144 b Fu(A)35 b(colon-separated)i(list)f(of)g
d37a4722 14154(su\016xes)e(to)i(ignore)g(when)e(p)s(erforming)g(\014lename)i(comple-)
d514a087 14155630 950 y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i
d37a4722 14156(one)f(of)g(the)g(en)m(tries)g(in)g Ft(FIGNORE)d Fu(is)j(excluded)630
d514a087 141571060 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
091c6bc4 14158b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Ft(.o:~)p
d514a087 14159Fu(')150 1221 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
091c6bc4 14160b(ariable)36 b(con)m(taining)h(the)f(names)g(of)g(all)g(shell)g
d514a087 14161(functions)g(curren)m(tly)f(in)h(the)630 1330 y(execution)g(call)h
d37a4722 14162(stac)m(k.)57 b(The)34 b(elemen)m(t)j(with)e(index)g(0)h(is)f(the)g
d514a087 14163(name)h(of)f(an)m(y)h(curren)m(tly-)630 1440 y(executing)f(shell)f
d37a4722 14164(function.)51 b(The)34 b(b)s(ottom-most)h(elemen)m(t)g(\(the)g(one)f
d514a087 14165(with)g(the)g(highest)630 1549 y(index\))e(is)h Ft("main")p
d37a4722 14166Fu(.)44 b(This)32 b(v)-5 b(ariable)33 b(exists)g(only)g(when)e(a)i
d514a087 14167(shell)f(function)g(is)g(executing.)630 1659 y(Assignmen)m(ts)23
091c6bc4
CR
14168b(to)f Ft(FUNCNAME)e Fu(ha)m(v)m(e)k(no)e(e\013ect.)39
14169b(If)22 b Ft(FUNCNAME)e Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)
d514a087
CR
14170630 1769 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m
14171(tly)f(reset.)630 1904 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)
091c6bc4 14172g(with)g Ft(BASH_LINENO)d Fu(and)j Ft(BASH_SOURCE)p Fu(.)40
d514a087 14173b(Eac)m(h)32 b(elemen)m(t)630 2014 y(of)g Ft(FUNCNAME)d
091c6bc4 14174Fu(has)j(corresp)s(onding)e(elemen)m(ts)j(in)f Ft(BASH_LINENO)c
d514a087 14175Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 2123 y(describ)s(e)39
091c6bc4
CR
14176b(the)h(call)h(stac)m(k.)70 b(F)-8 b(or)41 b(instance,)i
14177Ft(${FUNCNAME[$i]})35 b Fu(w)m(as)41 b(called)f(from)g(the)630
d514a087 141782233 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27
091c6bc4 14179b(line)h(n)m(um)m(b)s(er)d Ft(${BASH_LINENO[$i]})p Fu(.)34
d514a087 14180b(The)27 b Ft(caller)630 2342 y Fu(builtin)j(displa)m(ys)g(the)h
091c6bc4 14181(curren)m(t)f(call)i(stac)m(k)g(using)d(this)i(information.)150
d514a087 141822504 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5
d7935593 14183b(alue)36 b(greater)g(than)e(0,)j(de\014nes)d(a)h(maxim)m(um)g
d514a087 14184(function)g(nesting)630 2613 y(lev)m(el.)42 b(F)-8 b(unction)29
9ec5ed66 14185b(in)m(v)m(o)s(cations)h(that)f(exceed)h(this)e(nesting)h(lev)m(el)h
d514a087
CR
14186(will)f(cause)g(the)f(curren)m(t)630 2723 y(command)i(to)h(ab)s(ort.)
14187150 2884 y Ft(GLOBIGNORE)630 2993 y Fu(A)k(colon-separated)i(list)f(of)
a2851804 14188f(patterns)g(de\014ning)f(the)i(set)f(of)g(\014le)h(names)f(to)g(b)s(e)
d514a087 14189g(ignored)630 3103 y(b)m(y)28 b(\014lename)h(expansion.)40
7e92fb35 14190b(If)28 b(a)h(\014le)g(name)g(matc)m(hed)g(b)m(y)g(a)g(\014lename)f
d514a087 14191(expansion)h(pattern)630 3213 y(also)k(matc)m(hes)g(one)f(of)g(the)g
6e51e0d0 14192(patterns)g(in)f Ft(GLOBIGNORE)p Fu(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
d514a087 14193e(the)h(list)h(of)630 3322 y(matc)m(hes.)41 b(The)27
967625cd 14194b(pattern)g(matc)m(hing)h(honors)f(the)g(setting)i(of)e(the)h
d514a087 14195Ft(extglob)d Fu(shell)i(option.)150 3483 y Ft(GROUPS)192
6e51e0d0 14196b Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)
ad4aef08 14197h(of)f(groups)g(of)g(whic)m(h)f(the)i(curren)m(t)e(user)h(is)g(a)630
d514a087 141983593 y(mem)m(b)s(er.)41 b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d
d7935593 14199Fu(ha)m(v)m(e)i(no)g(e\013ect.)42 b(If)30 b Ft(GROUPS)f
d514a087 14200Fu(is)i(unset,)f(it)h(loses)h(its)630 3703 y(sp)s(ecial)f(prop)s
d7935593 14201(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
d514a087 142023864 y Ft(histchars)630 3973 y Fu(Up)c(to)g(three)g(c)m(haracters)i
d7935593 14203(whic)m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g
d514a087 14204(substitution,)g(and)630 4083 y(tok)m(enization)k(\(see)f(Section)f
fffe80d4 14205(9.3)h([History)f(In)m(teraction],)i(page)f(153\).)41
d514a087 14206b(The)29 b(\014rst)e(c)m(harac-)630 4193 y(ter)j(is)f(the)g
6e51e0d0 14207Fr(history)g(expansion)g Fu(c)m(haracter,)j(that)e(is,)f(the)h(c)m
d514a087 14208(haracter)h(whic)m(h)d(signi\014es)i(the)630 4302 y(start)25
b729dac1
CR
14209b(of)f(a)h(history)f(expansion,)i(normally)e(`)p Ft(!)p
14210Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m(haracter)630
d514a087 142114412 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h(substitution')f(when)f
b729dac1 14212(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e(a)g(line,)630
d514a087 142134521 y(normally)27 b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d
b729dac1 14214(c)m(haracter)j(is)e(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that)
d514a087 14215630 4631 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h
9ec5ed66 14216(when)e(found)f(as)i(the)g(\014rst)f(c)m(haracter)i(of)f(a)630
d514a087 142174740 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34
9ec5ed66 14218b(history)h(commen)m(t)h(c)m(haracter)h(causes)e(history)g
d514a087 14219(substitution)630 4850 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f
9ec5ed66 14220(remaining)h(w)m(ords)f(on)h(the)f(line.)40 b(It)27 b(do)s(es)f(not)h
d514a087 14221(necessarily)g(cause)630 4960 y(the)k(shell)f(parser)g(to)h(treat)g
7e92fb35 14222(the)g(rest)g(of)f(the)h(line)f(as)h(a)g(commen)m(t.)150
d37a4722
CR
142235121 y Ft(HISTCMD)144 b Fu(The)44 b(history)h(n)m(um)m(b)s(er,)j(or)d
14224(index)g(in)f(the)h(history)g(list,)50 b(of)45 b(the)g(curren)m(t)g
14225(command.)630 5230 y(Assignmen)m(ts)37 b(to)h Ft(HISTCMD)d
14226Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e Fu(is)i(unset,)h(it)g
14227(loses)g(its)f(sp)s(ecial)630 5340 y(prop)s(erties,)30
14228b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)p
14229eop end
e59452c7
CR
14230%%Page: 84 90
14231TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(5:)41
14232b(Shell)30 b(V)-8 b(ariables)2459 b(84)150 299 y Ft(HISTCONTROL)630
d37a4722
CR
14233408 y Fu(A)40 b(colon-separated)i(list)f(of)f(v)-5 b(alues)40
14234b(con)m(trolling)i(ho)m(w)e(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)630
14235518 y(history)29 b(list.)41 b(If)28 b(the)h(list)h(of)f(v)-5
6e51e0d0 14236b(alues)29 b(includes)f(`)p Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g
d37a4722 14237(b)s(egin)f(with)630 628 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g
9ec5ed66 14238(sa)m(v)m(ed)g(in)g(the)g(history)f(list.)66 b(A)39 b(v)-5
d37a4722 14239b(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 737 y(causes)34
9ec5ed66
CR
14240b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h
14241(to)g(not)f(b)s(e)f(sa)m(v)m(ed.)53 b(A)34 b(v)-5 b(alue)630
d37a4722 14242847 y(of)32 b(`)p Ft(ignoreboth)p Fu(')d(is)j(shorthand)e(for)i(`)p
6e51e0d0 14243Ft(ignorespace)p Fu(')d(and)i(`)p Ft(ignoredups)p Fu('.)42
d37a4722
CR
14244b(A)32 b(v)-5 b(alue)32 b(of)630 956 y(`)p Ft(erasedups)p
14245Fu(')f(causes)i(all)h(previous)f(lines)g(matc)m(hing)h(the)f(curren)m
14246(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630 1066 y(from)42
14247b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g(sa)m(v)m(ed.)78
14248b(An)m(y)43 b(v)-5 b(alue)43 b(not)g(in)f(the)h(ab)s(o)m(v)m(e)630
142491176 y(list)35 b(is)g(ignored.)53 b(If)34 b Ft(HISTCONTROL)e
14250Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h(v)-5
14251b(alid)35 b(v)-5 b(alue,)36 b(all)630 1285 y(lines)30
37c41ab1
CR
14252b(read)g(b)m(y)g(the)g(shell)g(parser)g(are)g(sa)m(v)m(ed)h(on)f(the)g
14253(history)g(list,)h(sub)5 b(ject)30 b(to)g(the)g(v)-5
d37a4722 14254b(alue)630 1395 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42
37c41ab1 14255b(second)g(and)g(subsequen)m(t)f(lines)h(of)h(a)f(m)m(ulti-line)h(comp)
d37a4722
CR
14256s(ound)630 1504 y(command)33 b(are)h(not)g(tested,)i(and)d(are)h(added)
14257f(to)h(the)g(history)g(regardless)g(of)g(the)f(v)-5 b(alue)630
142581614 y(of)31 b Ft(HISTCONTROL)p Fu(.)150 1763 y Ft(HISTFILE)96
091c6bc4
CR
14259b Fu(The)27 b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)f(the)g(command)
14260f(history)h(is)g(sa)m(v)m(ed.)41 b(The)27 b(default)h(v)-5
d37a4722
CR
14261b(alue)630 1873 y(is)30 b Ft(~/.bash_history)p Fu(.)150
142622022 y Ft(HISTFILESIZE)630 2132 y Fu(The)c(maxim)m(um)f(n)m(um)m(b)s
091c6bc4 14263(er)g(of)h(lines)h(con)m(tained)g(in)f(the)g(history)g(\014le.)39
d37a4722 14264b(When)26 b(this)g(v)-5 b(ariable)630 2242 y(is)25 b(assigned)h(a)g(v)
091c6bc4
CR
14265-5 b(alue,)27 b(the)f(history)f(\014le)h(is)f(truncated,)i(if)e
14266(necessary)-8 b(,)28 b(to)e(con)m(tain)g(no)g(more)630
d37a4722 142672351 y(than)37 b(that)h(n)m(um)m(b)s(er)d(of)j(lines)f(b)m(y)g(remo)m
091c6bc4 14268(ving)h(the)f(oldest)h(en)m(tries.)62 b(The)37 b(history)g(\014le)g(is)
d37a4722 14269630 2461 y(also)i(truncated)f(to)h(this)e(size)i(after)g(writing)f(it)g
9f178efb 14270(when)f(a)h(shell)h(exits.)64 b(If)37 b(the)h(v)-5 b(alue)39
d37a4722 14271b(is)630 2570 y(0,)g(the)e(history)f(\014le)h(is)g(truncated)f(to)i
9f178efb 14272(zero)f(size.)60 b(Non-n)m(umeric)37 b(v)-5 b(alues)37
d37a4722 14273b(and)f(n)m(umeric)630 2680 y(v)-5 b(alues)31 b(less)f(than)g(zero)h
9f178efb 14274(inhibit)f(truncation.)41 b(The)29 b(shell)i(sets)f(the)h(default)f(v)
d37a4722 14275-5 b(alue)31 b(to)g(the)630 2790 y(v)-5 b(alue)31 b(of)f
6e51e0d0 14276Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
d37a4722 142772939 y Ft(HISTIGNORE)630 3049 y Fu(A)j(colon-separated)h(list)f(of)g
09767ff0 14278(patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
d37a4722 14279630 3158 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47
09767ff0 14280b(Eac)m(h)33 b(pattern)g(is)f(anc)m(hored)h(at)g(the)f(b)s(eginning)g
d37a4722 14281(of)h(the)630 3268 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g
6e51e0d0 14282(complete)h(line)e(\(no)h(implicit)g(`)p Ft(*)p Fu(')f(is)g(app)s
d37a4722 14283(ended\).)75 b(Eac)m(h)630 3377 y(pattern)42 b(is)g(tested)g(against)h
09767ff0 14284(the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)s(eci\014ed)e(b)m(y)h
d37a4722 14285Ft(HISTCONTROL)630 3487 y Fu(are)37 b(applied.)59 b(In)36
ad4aef08 14286b(addition)h(to)g(the)g(normal)g(shell)f(pattern)h(matc)m(hing)h(c)m
d37a4722 14287(haracters,)i(`)p Ft(&)p Fu(')630 3597 y(matc)m(hes)d(the)f(previous)g
6e51e0d0 14288(history)g(line.)57 b(`)p Ft(&)p Fu(')36 b(ma)m(y)h(b)s(e)e(escap)s(ed)
d37a4722 14289h(using)g(a)g(bac)m(kslash;)k(the)630 3706 y(bac)m(kslash)34
ad4aef08 14290b(is)g(remo)m(v)m(ed)h(b)s(efore)e(attempting)i(a)g(matc)m(h.)51
d37a4722 14291b(The)34 b(second)f(and)h(subsequen)m(t)630 3816 y(lines)e(of)h(a)g(m)m
ad4aef08 14292(ulti-line)g(comp)s(ound)e(command)h(are)h(not)f(tested,)i(and)e(are)g
d37a4722 14293(added)g(to)h(the)630 3925 y(history)k(regardless)h(of)f(the)g(v)-5
967625cd 14294b(alue)38 b(of)f Ft(HISTIGNORE)p Fu(.)58 b(The)37 b(pattern)g(matc)m
d37a4722
CR
14295(hing)i(honors)630 4035 y(the)31 b(setting)g(of)g(the)f
14296Ft(extglob)f Fu(shell)h(option.)630 4164 y Ft(HISTIGNORE)20
6e51e0d0
CR
14297b Fu(subsumes)g(the)j(function)f(of)h Ft(HISTCONTROL)p
14298Fu(.)35 b(A)23 b(pattern)f(of)h(`)p Ft(&)p Fu(')g(is)f(iden)m(tical)630
d37a4722 142994274 y(to)k Ft(ignoredups)p Fu(,)e(and)h(a)h(pattern)g(of)f(`)p
6e51e0d0 14300Ft([)31 b(]*)p Fu(')25 b(is)h(iden)m(tical)h(to)f Ft(ignorespace)p
d37a4722 14301Fu(.)36 b(Com)m(bining)630 4384 y(these)30 b(t)m(w)m(o)h(patterns,)f
7e92fb35 14302(separating)g(them)g(with)f(a)h(colon,)h(pro)m(vides)e(the)h
d37a4722
CR
14303(functionalit)m(y)h(of)630 4493 y Ft(ignoreboth)p Fu(.)150
143044643 y Ft(HISTSIZE)96 b Fu(The)37 b(maxim)m(um)g(n)m(um)m(b)s(er)e(of)j
7e92fb35 14305(commands)f(to)g(remem)m(b)s(er)g(on)g(the)g(history)g(list.)62
d37a4722 14306b(If)37 b(the)630 4752 y(v)-5 b(alue)26 b(is)g(0,)i(commands)d(are)h
b729dac1 14307(not)h(sa)m(v)m(ed)g(in)e(the)h(history)g(list.)40 b(Numeric)26
d37a4722 14308b(v)-5 b(alues)26 b(less)g(than)630 4862 y(zero)i(result)e(in)h(ev)m
45c0f7f8 14309(ery)g(command)g(b)s(eing)f(sa)m(v)m(ed)i(on)f(the)g(history)f(list)i
d37a4722 14310(\(there)f(is)g(no)g(limit\).)630 4971 y(The)j(shell)g(sets)h(the)g
45c0f7f8 14311(default)f(v)-5 b(alue)31 b(to)g(500)h(after)f(reading)f(an)m(y)h
d37a4722
CR
14312(startup)f(\014les.)150 5121 y Ft(HISTTIMEFORMAT)630
143135230 y Fu(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m
45c0f7f8 14314(ull,)k(its)d(v)-5 b(alue)44 b(is)g(used)g(as)g(a)h(format)f(string)g
e59452c7
CR
14315(for)630 5340 y Ft(strftime)26 b Fu(to)k(prin)m(t)e(the)g(time)i(stamp)
14316e(asso)s(ciated)i(with)e(eac)m(h)i(history)f(en)m(try)f(displa)m(y)m
d37a4722 14317(ed)p eop end
e59452c7
CR
14318%%Page: 85 91
14319TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41
14320b(Shell)30 b(V)-8 b(ariables)2459 b(85)630 299 y(b)m(y)34
d37a4722
CR
14321b(the)f Ft(history)f Fu(builtin.)50 b(If)33 b(this)h(v)-5
14322b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g(written)f(to)i(the)630
14323408 y(history)26 b(\014le)g(so)g(they)g(ma)m(y)h(b)s(e)e(preserv)m(ed)g
14324(across)i(shell)f(sessions.)39 b(This)25 b(uses)h(the)g(history)630
14325518 y(commen)m(t)31 b(c)m(haracter)h(to)f(distinguish)f(timestamps)h
14326(from)f(other)g(history)h(lines.)150 687 y Ft(HOSTFILE)96
14327b Fu(Con)m(tains)33 b(the)g(name)f(of)h(a)g(\014le)f(in)g(the)h(same)g
14328(format)g(as)f Ft(/etc/hosts)e Fu(that)j(should)f(b)s(e)630
14329797 y(read)21 b(when)g(the)g(shell)h(needs)f(to)h(complete)h(a)e
14330(hostname.)38 b(The)21 b(list)h(of)g(p)s(ossible)f(hostname)630
14331907 y(completions)27 b(ma)m(y)f(b)s(e)f(c)m(hanged)h(while)f(the)h
14332(shell)g(is)f(running;)h(the)g(next)f(time)i(hostname)630
143331016 y(completion)33 b(is)g(attempted)g(after)g(the)f(v)-5
14334b(alue)33 b(is)f(c)m(hanged,)i(Bash)e(adds)f(the)i(con)m(ten)m(ts)h(of)
14335630 1126 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53
14336b(If)34 b Ft(HOSTFILE)e Fu(is)j(set,)h(but)e(has)g(no)h(v)-5
14337b(alue,)36 b(or)e(do)s(es)630 1235 y(not)d(name)f(a)h(readable)g
14338(\014le,)g(Bash)f(attempts)i(to)f(read)f Ft(/etc/hosts)e
14339Fu(to)j(obtain)g(the)f(list)630 1345 y(of)h(p)s(ossible)f(hostname)h
14340(completions.)43 b(When)31 b Ft(HOSTFILE)d Fu(is)j(unset,)f(the)h
14341(hostname)g(list)630 1455 y(is)f(cleared.)150 1624 y
14342Ft(HOSTNAME)96 b Fu(The)30 b(name)g(of)h(the)f(curren)m(t)h(host.)150
143431793 y Ft(HOSTTYPE)96 b Fu(A)30 b(string)h(describing)f(the)g(mac)m
14344(hine)h(Bash)g(is)f(running)f(on.)150 1963 y Ft(IGNOREEOF)630
143452072 y Fu(Con)m(trols)e(the)h(action)g(of)f(the)g(shell)g(on)g(receipt)
14346h(of)f(an)g Ft(EOF)f Fu(c)m(haracter)i(as)g(the)f(sole)h(input.)630
143472182 y(If)i(set,)i(the)f(v)-5 b(alue)32 b(denotes)f(the)g(n)m(um)m(b)s
8d125d8b 14348(er)f(of)h(consecutiv)m(e)i Ft(EOF)d Fu(c)m(haracters)i(that)f(can)h(b)
d37a4722 14349s(e)630 2291 y(read)40 b(as)f(the)h(\014rst)f(c)m(haracter)i(on)f(an)f
8d125d8b 14350(input)g(line)h(b)s(efore)f(the)h(shell)g(will)g(exit.)70
d37a4722 14351b(If)39 b(the)630 2401 y(v)-5 b(ariable)39 b(exists)f(but)g(do)s(es)f
12beeabf 14352(not)h(ha)m(v)m(e)h(a)g(n)m(umeric)f(v)-5 b(alue,)40
d37a4722 14353b(or)e(has)g(no)g(v)-5 b(alue,)40 b(then)e(the)630 2511
12beeabf
CR
14354y(default)31 b(is)g(10.)43 b(If)30 b(the)h(v)-5 b(ariable)31
14355b(do)s(es)g(not)g(exist,)h(then)e Ft(EOF)g Fu(signi\014es)h(the)g(end)f
d37a4722 14356(of)h(input)630 2620 y(to)g(the)g(shell.)41 b(This)29
12beeabf 14357b(is)i(only)f(in)g(e\013ect)i(for)e(in)m(teractiv)m(e)j(shells.)150
d37a4722 143582790 y Ft(INPUTRC)144 b Fu(The)68 b(name)h(of)f(the)h(Readline)g
12beeabf 14359(initialization)j(\014le,)78 b(o)m(v)m(erriding)69 b(the)g(default)g
d37a4722
CR
14360(of)630 2899 y Ft(~/.inputrc)p Fu(.)150 3068 y Ft(INSIDE_EMACS)630
143613178 y Fu(If)29 b(Bash)h(\014nds)e(this)h(v)-5 b(ariable)31
b52e30b8 14362b(in)e(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)g(starts,)g(it)g
d37a4722 14363(assumes)630 3288 y(that)i(the)g(shell)g(is)f(running)f(in)i(an)f
b52e30b8 14364(Emacs)h(shell)g(bu\013er)e(and)h(ma)m(y)i(disable)e(line)h(editing)630
d37a4722
CR
143653397 y(dep)s(ending)d(on)h(the)h(v)-5 b(alue)31 b(of)f
14366Ft(TERM)p Fu(.)150 3567 y Ft(LANG)288 b Fu(Used)28 b(to)h(determine)f
b52e30b8 14367(the)g(lo)s(cale)h(category)h(for)e(an)m(y)h(category)h(not)e(sp)s
d37a4722
CR
14368(eci\014cally)g(selected)630 3676 y(with)i(a)h(v)-5 b(ariable)31
14369b(starting)g(with)f Ft(LC_)p Fu(.)150 3846 y Ft(LC_ALL)192
b52e30b8
CR
14370b Fu(This)28 b(v)-5 b(ariable)29 b(o)m(v)m(errides)h(the)f(v)-5
14371b(alue)29 b(of)g Ft(LANG)f Fu(and)g(an)m(y)h(other)g
d37a4722
CR
14372Ft(LC_)f Fu(v)-5 b(ariable)29 b(sp)s(ecifying)630 3955
14373y(a)i(lo)s(cale)h(category)-8 b(.)150 4125 y Ft(LC_COLLATE)630
143744234 y Fu(This)37 b(v)-5 b(ariable)38 b(determines)g(the)g(collation)i
b52e30b8 14375(order)d(used)g(when)f(sorting)i(the)g(results)g(of)630
d37a4722
CR
143764344 y(\014lename)e(expansion,)i(and)e(determines)g(the)h(b)s(eha)m
14377(vior)f(of)g(range)h(expressions,)h(equiv-)630 4453 y(alence)e
b52e30b8 14378(classes,)h(and)e(collating)i(sequences)e(within)f(\014lename)h
d37a4722 14379(expansion)g(and)f(pattern)630 4563 y(matc)m(hing)d(\(see)h(Section)f
e59452c7 14380(3.5.8)h([Filename)g(Expansion],)e(page)h(35\).)150 4732
b52e30b8
CR
14381y Ft(LC_CTYPE)96 b Fu(This)36 b(v)-5 b(ariable)37 b(determines)f(the)h
14382(in)m(terpretation)h(of)f(c)m(haracters)h(and)e(the)g(b)s(eha)m(vior)h
d37a4722 14383(of)630 4842 y(c)m(haracter)46 b(classes)g(within)e(\014lename)h
b52e30b8 14384(expansion)g(and)f(pattern)h(matc)m(hing)h(\(see)f(Sec-)630
e59452c7 143854951 y(tion)31 b(3.5.8)h([Filename)g(Expansion],)e(page)h(35\).)150
d37a4722 143865121 y Ft(LC_MESSAGES)630 5230 y Fu(This)25 b(v)-5 b(ariable)27
7e92fb35 14387b(determines)f(the)g(lo)s(cale)i(used)d(to)i(translate)g(double-quoted)
d37a4722 14388f(strings)g(pre-)630 5340 y(ceded)31 b(b)m(y)f(a)h(`)p
7e92fb35 14389Ft($)p Fu(')f(\(see)h(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
d37a4722 14390b(ranslation],)32 b(page)f(7\).)p eop end
e59452c7
CR
14391%%Page: 86 92
14392TeXDict begin 86 91 bop 150 -116 a Fu(Chapter)30 b(5:)41
14393b(Shell)30 b(V)-8 b(ariables)2459 b(86)150 299 y Ft(LC_NUMERIC)630
d37a4722 14394408 y Fu(This)30 b(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h
7e92fb35 14395(category)g(used)e(for)g(n)m(um)m(b)s(er)f(formatting.)150
9c10def1 14396573 y Ft(LC_TIME)144 b Fu(This)25 b(v)-5 b(ariable)26
7e92fb35 14397b(determines)g(the)g(lo)s(cale)h(category)h(used)d(for)g(data)h(and)f
9c10def1 14398(time)i(formatting.)150 737 y Ft(LINENO)192 b Fu(The)32
e2169ae9
CR
14399b(line)h(n)m(um)m(b)s(er)e(in)i(the)f(script)h(or)f(shell)h(function)f
14400(curren)m(tly)h(executing.)49 b(If)32 b Ft(LINENO)630
9c10def1 14401847 y Fu(is)e(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)f
d37a4722 14402(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)150
9c10def1 144031011 y Ft(LINES)240 b Fu(Used)43 b(b)m(y)g(the)g Ft(select)e
d37a4722 14404Fu(command)i(to)g(determine)g(the)g(column)g(length)g(for)g(prin)m
9c10def1 14405(ting)630 1121 y(selection)c(lists.)63 b(Automatically)41
d37a4722 14406b(set)d(if)f(the)h Ft(checkwinsize)d Fu(option)j(is)f(enabled)h(\(see)
9c10def1 14407630 1230 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d
e59452c7 14408(70\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630
9c10def1 144091340 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 1504
d37a4722
CR
14410y Ft(MACHTYPE)96 b Fu(A)26 b(string)g(that)h(fully)f(describ)s(es)f
14411(the)h(system)g(t)m(yp)s(e)h(on)f(whic)m(h)f(Bash)i(is)f(executing,)i
9c10def1
CR
14412(in)e(the)630 1614 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h
14413Fu(format.)150 1778 y Ft(MAILCHECK)630 1888 y Fu(Ho)m(w)d(often)g(\(in)
091c6bc4 14414g(seconds\))g(that)g(the)f(shell)h(should)f(c)m(hec)m(k)i(for)e(mail)h
9c10def1 14415(in)f(the)h(\014les)g(sp)s(eci\014ed)630 1998 y(in)i(the)h
091c6bc4
CR
14416Ft(MAILPATH)e Fu(or)i Ft(MAIL)e Fu(v)-5 b(ariables.)43
14417b(The)30 b(default)h(is)f(60)i(seconds.)42 b(When)30
9c10def1 14418b(it)h(is)g(time)630 2107 y(to)37 b(c)m(hec)m(k)h(for)e(mail,)j(the)e
091c6bc4 14419(shell)f(do)s(es)g(so)h(b)s(efore)f(displa)m(ying)h(the)f(primary)g
9c10def1 14420(prompt.)57 b(If)630 2217 y(this)37 b(v)-5 b(ariable)38
091c6bc4 14421b(is)f(unset,)h(or)f(set)h(to)g(a)f(v)-5 b(alue)38 b(that)f(is)g(not)h
9c10def1 14422(a)f(n)m(um)m(b)s(er)f(greater)i(than)f(or)630 2326 y(equal)31
091c6bc4 14423b(to)g(zero,)g(the)g(shell)g(disables)f(mail)h(c)m(hec)m(king.)150
9c10def1 144242491 y Ft(MAPFILE)144 b Fu(An)35 b(arra)m(y)h(v)-5 b(ariable)36
091c6bc4 14425b(created)g(to)h(hold)e(the)g(text)i(read)e(b)m(y)g(the)h
9c10def1
CR
14426Ft(mapfile)d Fu(builtin)i(when)630 2600 y(no)30 b(v)-5
14427b(ariable)31 b(name)g(is)f(supplied.)150 2765 y Ft(OLDPWD)192
091c6bc4 14428b Fu(The)30 b(previous)g(w)m(orking)g(directory)h(as)g(set)g(b)m(y)f
9c10def1 14429(the)h Ft(cd)e Fu(builtin.)150 2929 y Ft(OPTERR)192 b
091c6bc4
CR
14430Fu(If)35 b(set)i(to)f(the)h(v)-5 b(alue)36 b(1,)i(Bash)e(displa)m(ys)g
14431(error)f(messages)i(generated)g(b)m(y)f(the)g Ft(getopts)630
9c10def1 144323039 y Fu(builtin)30 b(command.)150 3203 y Ft(OSTYPE)192
091c6bc4 14433b Fu(A)30 b(string)h(describing)f(the)g(op)s(erating)h(system)g(Bash)f
9c10def1 14434(is)h(running)d(on.)150 3367 y Ft(PIPESTATUS)630 3477
091c6bc4 14435y Fu(An)23 b(arra)m(y)h(v)-5 b(ariable)24 b(\(see)h(Section)f(6.7)h
e59452c7 14436([Arra)m(ys],)g(page)f(99\))h(con)m(taining)g(a)f(list)g(of)g(exit)g
9c10def1 14437(sta-)630 3587 y(tus)h(v)-5 b(alues)27 b(from)e(the)h(pro)s(cesses)g
091c6bc4 14438(in)f(the)h(most-recen)m(tly-executed)j(foreground)c(pip)s(eline)630
9c10def1
CR
144393696 y(\(whic)m(h)30 b(ma)m(y)h(con)m(tain)h(only)f(a)f(single)h
14440(command\).)150 3861 y Ft(POSIXLY_CORRECT)630 3970 y
6e51e0d0
CR
14441Fu(If)h(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m(vironmen)m(t)g
14442(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g Fm(posix)630
9c10def1 144434080 y Fu(mo)s(de)46 b(\(see)h(Section)g(6.11)g([Bash)g(POSIX)e(Mo)s
e59452c7 14444(de],)50 b(page)d(105\))h(b)s(efore)e(reading)g(the)630
9c10def1 144454189 y(startup)38 b(\014les,)j(as)e(if)g(the)g Ft(--posix)d
602eae4d 14446Fu(in)m(v)m(o)s(cation)41 b(option)e(had)f(b)s(een)g(supplied.)64
9c10def1 14447b(If)39 b(it)g(is)630 4299 y(set)31 b(while)f(the)h(shell)f(is)h
602eae4d 14448(running,)e(Bash)h(enables)h Fm(posix)f Fu(mo)s(de,)g(as)g(if)h(the)f
9c10def1 14449(command)870 4436 y Ft(set)47 b(-o)g(posix)630 4573 y
602eae4d
CR
14450Fu(had)33 b(b)s(een)g(executed.)51 b(When)33 b(the)h(shell)f(en)m(ters)
14451h Fm(posix)f Fu(mo)s(de,)h(it)g(sets)g(this)g(v)-5 b(ariable)34
9c10def1
CR
14452b(if)630 4682 y(it)d(w)m(as)g(not)f(already)h(set.)150
144534847 y Ft(PPID)288 b Fu(The)30 b(pro)s(cess)g Fm(id)g
602eae4d 14454Fu(of)h(the)f(shell's)h(paren)m(t)g(pro)s(cess.)40 b(This)30
9c10def1
CR
14455b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150 5011 y
14456Ft(PROMPT_COMMAND)630 5121 y Fu(If)23 b(this)h(v)-5 b(ariable)24
14457b(is)g(set,)i(and)d(is)h(an)f(arra)m(y)-8 b(,)27 b(the)d(v)-5
14458b(alue)24 b(of)g(eac)m(h)g(set)h(elemen)m(t)g(is)f(in)m(terpreted)630
144595230 y(as)29 b(a)g(command)f(to)i(execute)g(b)s(efore)e(prin)m(ting)h
14460(the)g(primary)f(prompt)f(\()p Ft($PS1)p Fu(\).)40 b(If)28
14461b(this)h(is)630 5340 y(set)c(but)f(not)g(an)h(arra)m(y)g(v)-5
14462b(ariable,)26 b(its)f(v)-5 b(alue)25 b(is)f(used)g(as)h(a)f(command)g
14463(to)i(execute)f(instead.)p eop end
e59452c7
CR
14464%%Page: 87 93
14465TeXDict begin 87 92 bop 150 -116 a Fu(Chapter)30 b(5:)41
14466b(Shell)30 b(V)-8 b(ariables)2459 b(87)150 299 y Ft(PROMPT_DIRTRIM)630
d37a4722
CR
14467408 y Fu(If)27 b(set)g(to)h(a)g(n)m(um)m(b)s(er)e(greater)i(than)f
14468(zero,)i(the)e(v)-5 b(alue)28 b(is)f(used)g(as)g(the)h(n)m(um)m(b)s(er)
e59452c7
CR
14469e(of)h(trailing)630 518 y(directory)c(comp)s(onen)m(ts)h(to)f(retain)h
14470(when)e(expanding)g(the)h Ft(\\w)g Fu(and)f Ft(\\W)g
14471Fu(prompt)h(string)f(es-)630 628 y(cap)s(es)i(\(see)h(Section)g(6.9)g
14472([Con)m(trolling)g(the)f(Prompt],)i(page)e(103\).)41
14473b(Characters)24 b(remo)m(v)m(ed)630 737 y(are)31 b(replaced)g(with)f
d37a4722
CR
14474(an)g(ellipsis.)150 892 y Ft(PS0)336 b Fu(The)32 b(v)-5
14475b(alue)33 b(of)g(this)g(parameter)g(is)g(expanded)e(lik)m(e)j
14476Ft(PS1)e Fu(and)g(displa)m(y)m(ed)i(b)m(y)e(in)m(teractiv)m(e)630
144771002 y(shells)e(after)h(reading)g(a)g(command)f(and)f(b)s(efore)h(the)h
14478(command)f(is)h(executed.)150 1157 y Ft(PS3)336 b Fu(The)34
14479b(v)-5 b(alue)35 b(of)f(this)g(v)-5 b(ariable)35 b(is)g(used)e(as)i
14480(the)f(prompt)g(for)g(the)g Ft(select)f Fu(command.)52
14481b(If)630 1267 y(this)30 b(v)-5 b(ariable)31 b(is)g(not)f(set,)i(the)e
14482Ft(select)f Fu(command)h(prompts)f(with)h(`)p Ft(#?)g
e59452c7
CR
14483Fu(')150 1422 y Ft(PS4)336 b Fu(The)38 b(v)-5 b(alue)39
14484b(of)g(this)g(parameter)g(is)g(expanded)f(lik)m(e)i Ft(PS1)e
14485Fu(and)g(the)h(expanded)f(v)-5 b(alue)39 b(is)630 1532
14486y(the)c(prompt)f(prin)m(ted)g(b)s(efore)g(the)h(command)f(line)h(is)g
14487(ec)m(ho)s(ed)g(when)f(the)h Ft(-x)f Fu(option)h(is)630
d37a4722 144881641 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e
e59452c7 14489(66\).)67 b(The)38 b(\014rst)g(c)m(haracter)j(of)e(the)630
d37a4722 144901751 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g
091c6bc4 14491(times,)h(as)f(necessary)-8 b(,)35 b(to)f(indicate)g(m)m(ultiple)630
d37a4722
CR
144921861 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p
14493Ft(+)h Fu('.)150 2016 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
091c6bc4 14494(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Ft(cd)f
d37a4722 14495Fu(builtin.)150 2171 y Ft(RANDOM)192 b Fu(Eac)m(h)26
091c6bc4 14496b(time)g(this)f(parameter)h(is)g(referenced,)g(it)g(expands)f(to)h(a)g
d37a4722 14497(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 2281 y(0)e(and)e(32767.)41
091c6bc4
CR
14498b(Assigning)25 b(a)f(v)-5 b(alue)25 b(to)g(this)f(v)-5
14499b(ariable)25 b(seeds)f(the)h(random)e(n)m(um)m(b)s(er)g(gener-)630
d37a4722 145002390 y(ator.)41 b(If)27 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g(loses)h
091c6bc4 14501(its)f(sp)s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)g(it)g(is)f
e59452c7
CR
14502(subsequen)m(tly)630 2500 y(reset.)150 2655 y Ft(READLINE_ARGUMENT)630
145032765 y Fu(An)m(y)37 b(n)m(umeric)f(argumen)m(t)h(giv)m(en)g(to)g(a)g
14504(Readline)g(command)f(that)h(w)m(as)g(de\014ned)e(using)630
145052874 y(`)p Ft(bind)29 b(-x)p Fu(')h(\(see)i(Section)f(4.2)g([Bash)g
14506(Builtins],)g(page)h(54,)f(when)e(it)i(w)m(as)g(in)m(v)m(ok)m(ed.)150
145073029 y Ft(READLINE_LINE)630 3139 y Fu(The)c(con)m(ten)m(ts)i(of)f(the)g
14508(Readline)g(line)g(bu\013er,)f(for)h(use)f(with)g(`)p
14509Ft(bind)j(-x)p Fu(')d(\(see)h(Section)h(4.2)630 3249
14510y([Bash)i(Builtins],)g(page)g(54\).)150 3404 y Ft(READLINE_MARK)630
145113513 y Fu(The)26 b(p)s(osition)h(of)g(the)g Fr(mark)32
14512b Fu(\(sa)m(v)m(ed)c(insertion)f(p)s(oin)m(t\))g(in)g(the)g(Readline)g
14513(line)g(bu\013er,)g(for)630 3623 y(use)36 b(with)f(`)p
14514Ft(bind)30 b(-x)p Fu(')35 b(\(see)i(Section)g(4.2)g([Bash)f(Builtins],)
14515i(page)f(54\).)58 b(The)35 b(c)m(haracters)630 3733 y(b)s(et)m(w)m(een)
14516c(the)g(insertion)f(p)s(oin)m(t)g(and)g(the)h(mark)f(are)h(often)f
14517(called)i(the)f Fr(region)p Fu(.)150 3888 y Ft(READLINE_POINT)630
145183998 y Fu(The)23 b(p)s(osition)g(of)g(the)h(insertion)f(p)s(oin)m(t)g
14519(in)g(the)g(Readline)h(line)f(bu\013er,)h(for)f(use)g(with)g(`)p
14520Ft(bind)630 4107 y(-x)p Fu(')30 b(\(see)h(Section)h(4.2)f([Bash)g
14521(Builtins],)g(page)g(54\).)150 4262 y Ft(REPLY)240 b
14522Fu(The)30 b(default)g(v)-5 b(ariable)32 b(for)e(the)g
14523Ft(read)g Fu(builtin.)150 4418 y Ft(SECONDS)144 b Fu(This)40
14524b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s(er)e(of)i
14525(seconds)g(since)g(the)f(shell)h(w)m(as)g(started.)630
145264527 y(Assignmen)m(t)i(to)g(this)g(v)-5 b(ariable)43
8d125d8b 14527b(resets)g(the)g(coun)m(t)g(to)g(the)g(v)-5 b(alue)43
e59452c7 14528b(assigned,)j(and)c(the)630 4637 y(expanded)35 b(v)-5
8d125d8b 14529b(alue)36 b(b)s(ecomes)h(the)f(v)-5 b(alue)36 b(assigned)g(plus)f(the)h
5e6f45d9
CR
14530(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630 4746 y(the)41
14531b(assignmen)m(t.)72 b(The)40 b(n)m(um)m(b)s(er)f(of)i(seconds)f(at)h
14532(shell)g(in)m(v)m(o)s(cation)i(and)c(the)i(curren)m(t)630
145334856 y(time)30 b(are)g(alw)m(a)m(ys)g(determined)f(b)m(y)g(querying)g
14534(the)h(system)f(clo)s(c)m(k.)42 b(If)29 b Ft(SECONDS)e
14535Fu(is)i(unset,)630 4966 y(it)i(loses)g(its)g(sp)s(ecial)g(prop)s
14536(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)e(reset.)150
145375121 y Ft(SHELL)240 b Fu(This)24 b(en)m(vironmen)m(t)i(v)-5
14538b(ariable)26 b(expands)e(to)i(the)g(full)f(pathname)g(to)h(the)f
14539(shell.)39 b(If)25 b(it)g(is)h(not)630 5230 y(set)36
14540b(when)f(the)h(shell)g(starts,)i(Bash)e(assigns)h(to)f(it)h(the)f(full)
14541f(pathname)h(of)g(the)g(curren)m(t)630 5340 y(user's)30
14542b(login)h(shell.)p eop end
e59452c7
CR
14543%%Page: 88 94
14544TeXDict begin 88 93 bop 150 -116 a Fu(Chapter)30 b(5:)41
14545b(Shell)30 b(V)-8 b(ariables)2459 b(88)150 299 y Ft(SHELLOPTS)630
14546408 y Fu(A)31 b(colon-separated)h(list)f(of)g(enabled)f(shell)h
14547(options.)41 b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
14548b(alid)630 518 y(argumen)m(t)28 b(for)f(the)h Ft(-o)e
14549Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)h(command)g(\(see)i(Section)
14550f(4.3.1)h([The)630 628 y(Set)g(Builtin],)h(page)f(66\).)42
14551b(The)28 b(options)h(app)s(earing)f(in)g Ft(SHELLOPTS)e
14552Fu(are)j(those)h(rep)s(orted)630 737 y(as)g(`)p Ft(on)p
14553Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p Fu('.)40 b(If)29 b(this)h(v)-5
14554b(ariable)30 b(is)g(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)h
14555(starts)g(up,)630 847 y(eac)m(h)41 b(shell)e(option)h(in)f(the)h(list)g
14556(will)f(b)s(e)g(enabled)h(b)s(efore)f(reading)g(an)m(y)h(startup)f
14557(\014les.)630 956 y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8
14558b(.)150 1121 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)
14559m(h)h(time)f(a)h(new)e(instance)h(of)g(Bash)g(is)g(started.)38
14560b(This)20 b(is)h(in)m(tended)630 1230 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
14561(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)150
145621395 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37
14563b(expands)f(to)h(a)g(32-bit)h(pseudo-random)d(n)m(um)m(b)s(er)g(eac)m
14564(h)j(time)f(it)g(is)g(ref-)630 1504 y(erenced.)47 b(The)32
14565b(random)g(n)m(um)m(b)s(er)f(generator)j(is)e(not)h(linear)g(on)f
14566(systems)h(that)g(supp)s(ort)630 1614 y Ft(/dev/urandom)26
14567b Fu(or)k Ft(arc4random)p Fu(,)d(so)j(eac)m(h)g(returned)f(n)m(um)m(b)s
14568(er)f(has)h(no)g(relationship)h(to)630 1724 y(the)39
14569b(n)m(um)m(b)s(ers)e(preceding)i(it.)66 b(The)38 b(random)g(n)m(um)m(b)
14570s(er)f(generator)j(cannot)g(b)s(e)e(seeded,)630 1833
14571y(so)c(assignmen)m(ts)g(to)g(this)f(v)-5 b(ariable)34
14572b(ha)m(v)m(e)h(no)e(e\013ect.)51 b(If)33 b Ft(SRANDOM)e
14573Fu(is)j(unset,)g(it)f(loses)i(its)630 1943 y(sp)s(ecial)c(prop)s
14574(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
145752107 y Ft(TIMEFORMAT)630 2217 y Fu(The)g(v)-5 b(alue)32
14576b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)g(format)h(string)f(sp)s
14577(ecifying)f(ho)m(w)h(the)g(tim-)630 2326 y(ing)37 b(information)f(for)h
14578(pip)s(elines)f(pre\014xed)f(with)h(the)h Ft(time)e Fu(reserv)m(ed)i(w)
14579m(ord)f(should)g(b)s(e)630 2436 y(displa)m(y)m(ed.)k(The)27
14580b(`)p Ft(\045)p Fu(')h(c)m(haracter)h(in)m(tro)s(duces)e(an)h(escap)s
14581(e)g(sequence)g(that)g(is)f(expanded)g(to)630 2545 y(a)37
14582b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)59
14583b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
145842655 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h
14585(p)s(ortions.)630 2819 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p
14586Ft(\045)p Fu('.)630 2984 y Ft(\045[)p Fj(p)p Ft(][l]R)96
14587b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 3148
14588y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h
14589(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
145903313 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
14591(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
145923477 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
14593(as)h(\(\045U)f Ft(+)g Fu(\045S\))g(/)h(\045R.)630 3641
14594y(The)23 b(optional)j Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
14595(precision,)i(the)e(n)m(um)m(b)s(er)f(of)h(fractional)h(digits)630
145963751 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35
14597b(v)-5 b(alue)36 b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h
14598(fraction)g(to)g(b)s(e)630 3861 y(output.)48 b(A)m(t)34
14599b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m(t)f(ma)m(y)
14600h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630 3970 y(of)31
14601b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42
e2169ae9 14602b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5
e59452c7 14603b(alue)30 b(3)h(is)g(used.)630 4107 y(The)54 b(optional)h
e2169ae9 14604Ft(l)f Fu(sp)s(eci\014es)g(a)h(longer)f(format,)61 b(including)54
e59452c7 14605b(min)m(utes,)61 b(of)54 b(the)g(form)630 4217 y Fr(MM)10
e2169ae9
CR
14606b Fu(m)p Fr(SS)p Fu(.)p Fr(FF)d Fu(s.)103 b(The)50 b(v)-5
14607b(alue)52 b(of)f Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f
e59452c7 14608(fraction)h(is)630 4326 y(included.)630 4463 y(If)30
e2169ae9 14609b(this)g(v)-5 b(ariable)31 b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f
e59452c7 14610(it)h(had)f(the)h(v)-5 b(alue)870 4600 y Ft
33723c84 14611($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o(sys\\)o(t\0453)o(lS')630
e59452c7 146124737 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
33723c84 14613(information)h(is)f(displa)m(y)m(ed.)62 b(A)37 b(trailing)i(newline)e
e59452c7
CR
14614(is)630 4847 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m
14615(y)m(ed.)150 5011 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
8d125d8b 14616b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e
e59452c7 14617(the)h(default)g(timeout)g(for)g(the)630 5121 y Ft(read)31
8d125d8b 14618b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
e59452c7 14619(54\).)47 b(The)32 b Ft(select)e Fu(command)630 5230
d37a4722 14620y(\(see)f(Section)h(3.2.5.2)g([Conditional)g(Constructs],)e(page)i
e59452c7 14621(12\))f(terminates)g(if)g(input)e(do)s(es)630 5340 y(not)k(arriv)m(e)g
8d125d8b 14622(after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)
e59452c7
CR
14623h(terminal.)p eop end
14624%%Page: 89 95
14625TeXDict begin 89 94 bop 150 -116 a Fu(Chapter)30 b(5:)41
14626b(Shell)30 b(V)-8 b(ariables)2459 b(89)630 299 y(In)40
14627b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d(v)-5 b(alue)41
14628b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f(of)h(seconds)f(to)
14629630 408 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)e(after)i(issuing)f
14630(the)h(primary)e(prompt.)39 b(Bash)26 b(terminates)h(after)630
14631518 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m(b)s(er)e(of)h(seconds)h(if)
14632f(a)h(complete)h(line)e(of)h(input)e(do)s(es)h(not)h(arriv)m(e.)150
14633677 y Ft(TMPDIR)192 b Fu(If)39 b(set,)j(Bash)e(uses)f(its)h(v)-5
14634b(alue)40 b(as)f(the)h(name)f(of)h(a)g(directory)g(in)f(whic)m(h)g
14635(Bash)h(creates)630 787 y(temp)s(orary)30 b(\014les)g(for)g(the)h
14636(shell's)g(use.)150 946 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h
14637(user)f(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30
14638b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)p eop end
14639%%Page: 90 96
14640TeXDict begin 90 95 bop 3659 -116 a Fu(90)150 299 y Fp(6)80
967625cd
CR
14641b(Bash)54 b(F)-13 b(eatures)150 502 y Fu(This)30 b(c)m(hapter)h
14642(describ)s(es)e(features)i(unique)e(to)i(Bash.)150 731
14643y Fs(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 890 y Ft(bash)h([long-opt])e
6e51e0d0 14644([-ir])h([-abefhkmnptuvxdBCDHP])c([-o)47 b Fj(option)p
12beeabf
CR
14645Ft(])581 1000 y([-O)g Fj(shopt_option)p Ft(])d([)p Fj(argument)h
14646Ft(...)o(])390 1110 y(bash)i([long-opt])e([-abefhkmnptuvxdBCDHP])c([-o)
1464747 b Fj(option)p Ft(])581 1219 y([-O)g Fj(shopt_option)p
14648Ft(])d(-c)j Fj(string)f Ft([)p Fj(argument)g Ft(...)o(])390
146491329 y(bash)h([long-opt])e(-s)i([-abefhkmnptuvxdBCDHP])42
14650b([-o)k Fj(option)p Ft(])581 1438 y([-O)h Fj(shopt_option)p
14651Ft(])d([)p Fj(argument)h Ft(...)o(])275 1567 y Fu(All)31
14652b(of)g(the)f(single-c)m(haracter)k(options)d(used)f(with)g(the)h
14653Ft(set)f Fu(builtin)g(\(see)h(Section)h(4.3.1)g([The)f(Set)150
e59452c7 146541676 y(Builtin],)45 b(page)c(66\))i(can)e(b)s(e)f(used)h(as)g(options)g
12beeabf
CR
14655(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)74 b(In)41
14656b(addition,)j(there)150 1786 y(are)38 b(sev)m(eral)h(m)m(ulti-c)m
14657(haracter)h(options)d(that)h(y)m(ou)g(can)g(use.)61 b(These)38
14658b(options)f(m)m(ust)h(app)s(ear)e(on)i(the)150 1896 y(command)30
14659b(line)h(b)s(efore)f(the)g(single-c)m(haracter)j(options)e(to)g(b)s(e)f
14660(recognized.)150 2043 y Ft(--debugger)630 2152 y Fu(Arrange)j(for)g
14661(the)g(debugger)g(pro\014le)g(to)h(b)s(e)e(executed)i(b)s(efore)f(the)g
14662(shell)g(starts.)49 b(T)-8 b(urns)630 2262 y(on)35 b(extended)g
14663(debugging)f(mo)s(de)h(\(see)g(Section)h(4.3.2)h([The)d(Shopt)g
e59452c7 14664(Builtin],)j(page)f(70,)630 2371 y(for)30 b(a)h(description)f(of)h(the)
12beeabf
CR
14665f Ft(extdebug)f Fu(option)h(to)h(the)g Ft(shopt)e Fu(builtin\).)150
146662519 y Ft(--dump-po-strings)630 2628 y Fu(A)37 b(list)g(of)f(all)i
6e51e0d0 14667(double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p Ft($)p
967625cd 14668Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630 2738
6e51e0d0
CR
14669y(output)29 b(in)g(the)g Fm(gnu)g Ft(gettext)f Fu(PO)g(\(p)s(ortable)i
14670(ob)5 b(ject\))30 b(\014le)g(format.)40 b(Equiv)-5 b(alen)m(t)31
967625cd
CR
14671b(to)f Ft(-D)630 2847 y Fu(except)h(for)f(the)h(output)f(format.)150
146722995 y Ft(--dump-strings)630 3104 y Fu(Equiv)-5 b(alen)m(t)31
14673b(to)g Ft(-D)p Fu(.)150 3251 y Ft(--help)192 b Fu(Displa)m(y)32
6e51e0d0 14674b(a)e(usage)h(message)h(on)e(standard)g(output)g(and)f(exit)j
967625cd
CR
14675(successfully)-8 b(.)150 3399 y Ft(--init-file)27 b Fj(filename)150
146763508 y Ft(--rcfile)h Fj(filename)630 3618 y Fu(Execute)23
6e51e0d0
CR
14677b(commands)e(from)g Fr(\014lename)28 b Fu(\(instead)22
14678b(of)g Ft(~/.bashrc)p Fu(\))e(in)h(an)h(in)m(teractiv)m(e)i(shell.)150
967625cd
CR
146793765 y Ft(--login)144 b Fu(Equiv)-5 b(alen)m(t)31 b(to)g
14680Ft(-l)p Fu(.)150 3912 y Ft(--noediting)630 4022 y Fu(Do)h(not)e(use)h
6e51e0d0 14681(the)g Fm(gnu)f Fu(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)
fffe80d4 14682f(Line)g(Editing],)630 4131 y(page)h(116\))h(to)f(read)g(command)f
6e51e0d0 14683(lines)g(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150
967625cd 146844278 y Ft(--noprofile)630 4388 y Fu(Don't)22 b(load)g(the)g
6e51e0d0 14685(system-wide)f(startup)g(\014le)h Ft(/etc/profile)c Fu(or)j(an)m(y)h
967625cd 14686(of)f(the)h(p)s(ersonal)f(ini-)630 4498 y(tialization)34
6e51e0d0 14687b(\014les)e Ft(~/.bash_profile)p Fu(,)c Ft(~/.bash_login)p
967625cd 14688Fu(,)g(or)k Ft(~/.profile)c Fu(when)j(Bash)630 4607 y(is)f(in)m(v)m(ok)
6e51e0d0
CR
14689m(ed)i(as)f(a)g(login)g(shell.)150 4754 y Ft(--norc)192
14690b Fu(Don't)35 b(read)f(the)g Ft(~/.bashrc)e Fu(initialization)k(\014le)
14691f(in)e(an)h(in)m(teractiv)m(e)j(shell.)52 b(This)33 b(is)h(on)630
967625cd 146924864 y(b)m(y)c(default)h(if)f(the)h(shell)f(is)h(in)m(v)m(ok)m(ed)h(as)
6e51e0d0
CR
14693e Ft(sh)p Fu(.)150 5011 y Ft(--posix)144 b Fu(Change)24
14694b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i(default)f(op)s
14695(eration)h(di\013ers)f(from)f(the)i Fm(posix)630 5121
14696y Fu(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
eb0b2ad8 14697b(This)35 b(is)h(in)m(tended)f(to)h(mak)m(e)h(Bash)f(b)s(eha)m(v)m(e)g
602eae4d 14698(as)g(a)630 5230 y(strict)22 b(sup)s(erset)e(of)h(that)g(standard.)37
e59452c7 14699b(See)21 b(Section)h(6.11)g([Bash)f(POSIX)f(Mo)s(de],)k(page)d(105,)630
602eae4d 147005340 y(for)30 b(a)h(description)f(of)h(the)f(Bash)h Fm(posix)f
6e51e0d0 14701Fu(mo)s(de.)p eop end
e59452c7
CR
14702%%Page: 91 97
14703TeXDict begin 91 96 bop 150 -116 a Fu(Chapter)30 b(6:)41
14704b(Bash)30 b(F)-8 b(eatures)2484 b(91)150 299 y Ft(--restricted)630
6e51e0d0
CR
14705408 y Fu(Mak)m(e)54 b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h
14706(Section)g(6.10)h([The)d(Restricted)j(Shell],)630 518
e59452c7 14707y(page)31 b(104\).)150 677 y Ft(--verbose)630 787 y Fu(Equiv)-5
6e51e0d0 14708b(alen)m(t)31 b(to)g Ft(-v)p Fu(.)41 b(Prin)m(t)30 b(shell)g(input)g
560db36b
CR
14709(lines)g(as)h(they're)g(read.)150 946 y Ft(--version)630
147101056 y Fu(Sho)m(w)d(v)m(ersion)g(information)g(for)g(this)g(instance)h
14711(of)f(Bash)g(on)g(the)g(standard)f(output)h(and)630 1166
14712y(exit)j(successfully)-8 b(.)275 1325 y(There)28 b(are)i(sev)m(eral)g
6e51e0d0 14713(single-c)m(haracter)i(options)d(that)h(ma)m(y)g(b)s(e)e(supplied)g(at)
560db36b 14714i(in)m(v)m(o)s(cation)h(whic)m(h)e(are)150 1435 y(not)i(a)m(v)-5
6e51e0d0 14715b(ailable)32 b(with)e(the)h Ft(set)e Fu(builtin.)150
560db36b
CR
147161594 y Ft(-c)384 b Fu(Read)66 b(and)f(execute)i(commands)e(from)g(the)h
14717(\014rst)e(non-option)i(argumen)m(t)g Fr(com-)630 1704
14718y(mand)p 859 1704 28 4 v 39 w(string)p Fu(,)34 b(then)e(exit.)49
fc527055 14719b(If)32 b(there)h(are)g(argumen)m(ts)g(after)g(the)g
560db36b
CR
14720Fr(command)p 3303 1704 V 40 w(string)p Fu(,)h(the)630
147211813 y(\014rst)e(argumen)m(t)h(is)g(assigned)g(to)h Ft($0)e
fc527055 14722Fu(and)h(an)m(y)g(remaining)g(argumen)m(ts)g(are)g(assigned)g(to)630
560db36b 147231923 y(the)38 b(p)s(ositional)h(parameters.)65 b(The)37
fc527055 14724b(assignmen)m(t)i(to)g Ft($0)f Fu(sets)g(the)h(name)f(of)g(the)g
560db36b
CR
14725(shell,)630 2032 y(whic)m(h)30 b(is)h(used)e(in)h(w)m(arning)g(and)g
14726(error)g(messages.)150 2192 y Ft(-i)384 b Fu(F)-8 b(orce)22
eb0b2ad8
CR
14727b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
14728b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
e59452c7 14729(6.3)630 2301 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(93.)150
560db36b 147302461 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
eb0b2ad8 14731(had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44
560db36b 14732b(When)31 b(the)h(shell)630 2570 y(is)37 b(in)m(teractiv)m(e,)43
eb0b2ad8 14733b(this)37 b(is)g(equiv)-5 b(alen)m(t)39 b(to)f(starting)h(a)e(login)i
6e51e0d0 14734(shell)e(with)g(`)p Ft(exec)30 b(-l)g(bash)p Fu('.)630
560db36b 147352680 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
eb0b2ad8 14736(login)h(shell)g(startup)f(\014les)g(will)g(b)s(e)g(executed.)630
560db36b 147372790 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29
6e51e0d0 14738b(bash)g(--login)p Fu(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
560db36b 14739h(with)g(a)630 2899 y(Bash)26 b(login)g(shell.)39 b(See)26
e59452c7 14740b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(92,)i(for)d(a)h
560db36b
CR
14741(description)630 3009 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
14742f(a)h(login)g(shell.)150 3168 y Ft(-r)384 b Fu(Mak)m(e)54
37c41ab1 14743b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)
e59452c7 14744d(Restricted)j(Shell],)630 3278 y(page)31 b(104\).)150
560db36b 147453437 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
eb0b2ad8 14746(if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h
560db36b 14747(then)630 3547 y(commands)i(are)h(read)g(from)f(the)h(standard)f
eb0b2ad8 14748(input.)39 b(This)28 b(option)h(allo)m(ws)h(the)f(p)s(ositional)630
560db36b
CR
147493656 y(parameters)i(to)h(b)s(e)e(set)i(when)d(in)m(v)m(oking)k(an)d(in)
14750m(teractiv)m(e)k(shell)d(or)g(when)f(reading)h(input)630
147513766 y(through)f(a)g(pip)s(e.)150 3925 y Ft(-D)384 b
14752Fu(A)37 b(list)g(of)f(all)i(double-quoted)e(strings)g(preceded)g(b)m(y)
14753h(`)p Ft($)p Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630
147544035 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
14755b(ject)38 b(to)h(language)g(translation)g(when)630 4144
6e51e0d0
CR
14756y(the)e(curren)m(t)g(lo)s(cale)h(is)f(not)g Ft(C)g Fu(or)f
14757Ft(POSIX)g Fu(\(see)h(Section)h(3.1.2.5)h([Lo)s(cale)g(T)-8
560db36b 14758b(ranslation],)630 4254 y(page)31 b(7\).)42 b(This)29
6e51e0d0 14759b(implies)i(the)f Ft(-n)g Fu(option;)h(no)f(commands)g(will)h(b)s(e)f
560db36b
CR
14760(executed.)150 4413 y Ft([-+]O)f([)p Fj(shopt_option)p
14761Ft(])630 4523 y Fr(shopt)p 854 4523 V 40 w(option)44
6e51e0d0 14762b Fu(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
560db36b 14763Ft(shopt)d Fu(builtin)i(\(see)630 4633 y(Section)32 b(4.3.2)h([The)e
e59452c7 14764(Shopt)f(Builtin],)i(page)g(70\).)44 b(If)31 b Fr(shopt)p
560db36b
CR
147652724 4633 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f
14766Fu(sets)630 4742 y(the)24 b(v)-5 b(alue)24 b(of)g(that)h(option;)h
6e51e0d0 14767Ft(+O)e Fu(unsets)f(it.)39 b(If)23 b Fr(shopt)p 2423
560db36b
CR
147684742 V 40 w(option)h Fu(is)g(not)g(supplied,)g(the)g(names)630
147694852 y(and)31 b(v)-5 b(alues)32 b(of)g(the)g(shell)g(options)g
6e51e0d0 14770(accepted)h(b)m(y)f Ft(shopt)e Fu(are)i(prin)m(ted)f(on)h(the)g
560db36b 14771(standard)630 4961 y(output.)40 b(If)29 b(the)h(in)m(v)m(o)s(cation)h
6e51e0d0 14772(option)f(is)f Ft(+O)p Fu(,)h(the)f(output)g(is)h(displa)m(y)m(ed)g(in)
560db36b 14773f(a)h(format)f(that)630 5071 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.)
fc527055 14774150 5230 y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i
6e51e0d0 14775(options)f(and)g(disables)g(further)f(option)h(pro)s(cessing.)64
fc527055
CR
14776b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f Ft(--)g
14777Fu(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p
14778eop end
e59452c7
CR
14779%%Page: 92 98
14780TeXDict begin 92 97 bop 150 -116 a Fu(Chapter)30 b(6:)41
14781b(Bash)30 b(F)-8 b(eatures)2484 b(92)275 299 y(A)27 b
fc527055
CR
14782Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)m
14783(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Ft(-)p
14784Fu(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
037a8b7f 14785408 y Ft(--login)h Fu(option.)275 555 y(An)g Fl(inter)-5
fc527055
CR
14786b(active)37 b Fu(shell)30 b(is)f(one)g(started)h(without)f(non-option)h
14787(argumen)m(ts,)g(unless)e Ft(-s)h Fu(is)g(sp)s(eci\014ed,)150
037a8b7f 14788665 y(without)k(sp)s(ecifying)h(the)f Ft(-c)g Fu(option,)i(and)e(whose)
fc527055 14789g(input)g(and)f(output)h(are)h(b)s(oth)f(connected)h(to)g(ter-)150
037a8b7f 14790774 y(minals)g(\(as)g(determined)f(b)m(y)h Ft(isatty\(3\))p
fc527055 14791Fu(\),)e(or)i(one)g(started)g(with)f(the)h Ft(-i)f Fu(option.)51
037a8b7f 14792b(See)33 b(Section)i(6.3)150 884 y([In)m(teractiv)m(e)e(Shells],)e
e59452c7 14793(page)g(93,)g(for)f(more)h(information.)275 1031 y(If)i(argumen)m(ts)h
fc527055 14794(remain)g(after)h(option)f(pro)s(cessing,)h(and)e(neither)h(the)g
037a8b7f 14795Ft(-c)g Fu(nor)f(the)h Ft(-s)g Fu(option)g(has)150 1140
fc527055
CR
14796y(b)s(een)44 b(supplied,)j(the)d(\014rst)g(argumen)m(t)h(is)g(assumed)e
14797(to)j(b)s(e)d(the)i(name)g(of)f(a)h(\014le)g(con)m(taining)h(shell)150
037a8b7f 147981250 y(commands)30 b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)
3011048a 14799h(46\).)41 b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h
037a8b7f 14800(fashion,)150 1359 y Ft($0)37 b Fu(is)g(set)h(to)h(the)e(name)h(of)f
fc527055 14801(the)h(\014le,)i(and)c(the)i(p)s(ositional)g(parameters)g(are)g(set)g
037a8b7f 14802(to)g(the)g(remaining)150 1469 y(argumen)m(ts.)h(Bash)26
fc527055 14803b(reads)f(and)g(executes)h(commands)f(from)g(this)g(\014le,)i(then)e
037a8b7f 14804(exits.)40 b(Bash's)25 b(exit)i(status)150 1579 y(is)f(the)h(exit)h
fc527055 14805(status)e(of)h(the)g(last)g(command)f(executed)h(in)g(the)f(script.)40
037a8b7f
CR
14806b(If)26 b(no)g(commands)g(are)h(executed,)150 1688 y(the)k(exit)g
14807(status)g(is)f(0.)150 1947 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
148082107 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
c302751c 14809(its)g(startup)f(\014les.)38 b(If)24 b(an)m(y)h(of)f(the)h(\014les)f
037a8b7f 14810(exist)h(but)e(cannot)150 2216 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
122f603c 14811(an)h(error.)40 b(Tildes)30 b(are)g(expanded)f(in)h(\014lenames)g(as)g
037a8b7f 14812(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2326 y(Tilde)f(Expansion)g
e59452c7 14813(\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(25\).)275
037a8b7f 148142473 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
e59452c7 14815(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(93.)150
037a8b7f
CR
148162684 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
14817(shell,)g(or)g(with)e Fh(--login)150 2831 y Fu(When)c(Bash)f(is)h(in)m
6e51e0d0 14818(v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)j(login)d(shell,)i(or)e(as)g
037a8b7f 14819(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 2940
6e51e0d0
CR
14820y Ft(--login)30 b Fu(option,)k(it)f(\014rst)e(reads)h(and)g(executes)i
14821(commands)e(from)f(the)i(\014le)f Ft(/etc/profile)p Fu(,)e(if)i(that)
037a8b7f 14822150 3050 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
6e51e0d0 14823(\014le,)j(it)d(lo)s(oks)g(for)f Ft(~/.bash_profile)p
037a8b7f 14824Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 3160 y Ft(~/.profile)p
6e51e0d0 14825Fu(,)25 b(in)i(that)g(order,)h(and)e(reads)h(and)f(executes)j(commands)
037a8b7f 14826d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 3269
6e51e0d0
CR
14827y(and)j(is)h(readable.)42 b(The)30 b Ft(--noprofile)d
14828Fu(option)k(ma)m(y)g(b)s(e)f(used)g(when)g(the)h(shell)f(is)h(started)g
037a8b7f 14829(to)g(inhibit)150 3379 y(this)f(b)s(eha)m(vior.)275 3526
0385211b
CR
14830y(When)h(an)g(in)m(teractiv)m(e)k(login)d(shell)g(exits,)h(or)f(a)g
14831(non-in)m(teractiv)m(e)i(login)f(shell)e(executes)i(the)f
037a8b7f 14832Ft(exit)150 3635 y Fu(builtin)g(command,)i(Bash)e(reads)h(and)f
0385211b 14833(executes)i(commands)e(from)g(the)h(\014le)g Ft(~/.bash_logout)p
037a8b7f 14834Fu(,)d(if)i(it)150 3745 y(exists.)150 3956 y Fk(In)m(v)m(ok)m(ed)40
0385211b 14835b(as)h(an)f(in)m(teractiv)m(e)f(non-login)k(shell)150
037a8b7f 148364103 y Fu(When)g(an)h(in)m(teractiv)m(e)i(shell)e(that)g(is)f(not)h(a)g
6e51e0d0 14837(login)g(shell)g(is)f(started,)48 b(Bash)c(reads)f(and)g(executes)150
037a8b7f 148384213 y(commands)31 b(from)g Ft(~/.bashrc)p Fu(,)f(if)h(that)h(\014le)g
6e51e0d0 14839(exists.)44 b(This)31 b(ma)m(y)h(b)s(e)f(inhibited)g(b)m(y)g(using)g
037a8b7f 14840(the)h Ft(--norc)150 4322 y Fu(option.)40 b(The)27 b
6e51e0d0 14841Ft(--rcfile)h Fj(file)e Fu(option)h(will)g(force)h(Bash)f(to)h(read)f
037a8b7f
CR
14842(and)f(execute)j(commands)d(from)h Fr(\014le)150 4432
14843y Fu(instead)k(of)f Ft(~/.bashrc)p Fu(.)275 4579 y(So,)g(t)m(ypically)
6e51e0d0 14844-8 b(,)33 b(y)m(our)d Ft(~/.bash_profile)c Fu(con)m(tains)32
037a8b7f
CR
14845b(the)f(line)390 4725 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
14846(~/.bashrc;)e(fi)150 4872 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
14847(login-sp)s(eci\014c)g(initializations.)150 5083 y Fk(In)m(v)m(ok)m(ed)
1484840 b(non-in)m(teractiv)m(ely)150 5230 y Fu(When)33 b(Bash)g(is)g
6e51e0d0
CR
14849(started)h(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h
14850(script,)g(for)f(example,)i(it)e(lo)s(oks)h(for)f(the)150
037a8b7f 148515340 y(v)-5 b(ariable)35 b Ft(BASH_ENV)d Fu(in)i(the)h(en)m(vironmen)m
6e51e0d0 14852(t,)h(expands)e(its)g(v)-5 b(alue)35 b(if)g(it)g(app)s(ears)e(there,)j
037a8b7f 14853(and)e(uses)g(the)p eop end
e59452c7
CR
14854%%Page: 93 99
14855TeXDict begin 93 98 bop 150 -116 a Fu(Chapter)30 b(6:)41
14856b(Bash)30 b(F)-8 b(eatures)2484 b(93)150 299 y(expanded)30
037a8b7f
CR
14857b(v)-5 b(alue)30 b(as)h(the)g(name)f(of)h(a)f(\014le)h(to)g(read)f(and)
14858g(execute.)42 b(Bash)31 b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m
14859(wing)150 408 y(command)g(w)m(ere)h(executed:)390 552
14860y Ft(if)47 b([)h(-n)f("$BASH_ENV")e(];)i(then)f(.)i("$BASH_ENV";)c(fi)
14861150 696 y Fu(but)30 b(the)g(v)-5 b(alue)31 b(of)g(the)f
14862Ft(PATH)f Fu(v)-5 b(ariable)32 b(is)e(not)h(used)e(to)i(searc)m(h)g
14863(for)f(the)h(\014lename.)275 840 y(As)42 b(noted)g(ab)s(o)m(v)m(e,)47
fc527055 14864b(if)42 b(a)h(non-in)m(teractiv)m(e)i(shell)d(is)g(in)m(v)m(ok)m(ed)i
037a8b7f 14865(with)e(the)h Ft(--login)d Fu(option,)46 b(Bash)150 949
fc527055 14866y(attempts)31 b(to)g(read)g(and)e(execute)j(commands)e(from)g(the)h
037a8b7f
CR
14867(login)g(shell)g(startup)e(\014les.)150 1158 y Fk(In)m(v)m(ok)m(ed)40
14868b(with)g(name)h Fh(sh)150 1305 y Fu(If)c(Bash)g(is)g(in)m(v)m(ok)m(ed)i
fc527055 14869(with)e(the)g(name)g Ft(sh)p Fu(,)i(it)f(tries)f(to)h(mimic)g(the)f
037a8b7f 14870(startup)g(b)s(eha)m(vior)g(of)h(historical)150 1414
fc527055
CR
14871y(v)m(ersions)31 b(of)f Ft(sh)g Fu(as)h(closely)h(as)e(p)s(ossible,)g
14872(while)h(conforming)f(to)h(the)g Fm(posix)e Fu(standard)h(as)h(w)m
037a8b7f 14873(ell.)275 1558 y(When)50 b(in)m(v)m(ok)m(ed)j(as)f(an)f(in)m(teractiv)m
fc527055 14874(e)j(login)e(shell,)57 b(or)51 b(as)g(a)h(non-in)m(teractiv)m(e)h
037a8b7f 14875(shell)f(with)f(the)150 1668 y Ft(--login)31 b Fu(option,)k(it)e
fc527055 14876(\014rst)g(attempts)h(to)g(read)f(and)g(execute)h(commands)f(from)g
037a8b7f 14877Ft(/etc/profile)d Fu(and)150 1777 y Ft(~/.profile)p Fu(,)d(in)i(that)i
fc527055 14878(order.)39 b(The)30 b Ft(--noprofile)c Fu(option)k(ma)m(y)g(b)s(e)f
037a8b7f 14879(used)g(to)h(inhibit)f(this)h(b)s(eha)m(vior.)150 1887
fc527055
CR
14880y(When)36 b(in)m(v)m(ok)m(ed)i(as)e(an)g(in)m(teractiv)m(e)j(shell)e
14881(with)f(the)g(name)h Ft(sh)p Fu(,)g(Bash)f(lo)s(oks)h(for)f(the)h(v)-5
037a8b7f 14882b(ariable)37 b Ft(ENV)p Fu(,)150 1997 y(expands)29 b(its)i(v)-5
6e51e0d0
CR
14883b(alue)30 b(if)h(it)f(is)g(de\014ned,)g(and)f(uses)h(the)g(expanded)g
14884(v)-5 b(alue)30 b(as)h(the)f(name)g(of)g(a)h(\014le)f(to)h(read)150
037a8b7f 148852106 y(and)g(execute.)46 b(Since)32 b(a)g(shell)g(in)m(v)m(ok)m(ed)h
6e51e0d0 14886(as)f Ft(sh)f Fu(do)s(es)g(not)h(attempt)h(to)g(read)e(and)g(execute)i
037a8b7f 14887(commands)150 2216 y(from)39 b(an)m(y)g(other)h(startup)e(\014les,)k
6e51e0d0 14888(the)d Ft(--rcfile)e Fu(option)j(has)f(no)g(e\013ect.)69
037a8b7f 14889b(A)39 b(non-in)m(teractiv)m(e)j(shell)150 2325 y(in)m(v)m(ok)m(ed)32
6e51e0d0 14890b(with)e(the)g(name)h Ft(sh)f Fu(do)s(es)g(not)g(attempt)i(to)f(read)f
037a8b7f 14891(an)m(y)h(other)g(startup)e(\014les.)275 2469 y(When)h(in)m(v)m(ok)m
6e51e0d0
CR
14892(ed)h(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e
14893Fu(mo)s(de)h(after)h(the)g(startup)f(\014les)g(are)h(read.)150
037a8b7f
CR
148942678 y Fk(In)m(v)m(ok)m(ed)40 b(in)h Fg(posix)g Fk(mo)s(de)150
148952824 y Fu(When)28 b(Bash)h(is)g(started)g(in)g Fm(posix)f
6e51e0d0 14896Fu(mo)s(de,)g(as)h(with)g(the)g Ft(--posix)d Fu(command)j(line)g
037a8b7f 14897(option,)h(it)f(follo)m(ws)150 2934 y(the)24 b Fm(posix)f
6e51e0d0
CR
14898Fu(standard)h(for)f(startup)h(\014les.)38 b(In)24 b(this)g(mo)s(de,)h
14899(in)m(teractiv)m(e)i(shells)d(expand)f(the)h Ft(ENV)f
037a8b7f 14900Fu(v)-5 b(ariable)150 3044 y(and)30 b(commands)g(are)g(read)h(and)e
c302751c 14901(executed)j(from)d(the)i(\014le)f(whose)g(name)h(is)f(the)h(expanded)e
037a8b7f
CR
14902(v)-5 b(alue.)41 b(No)150 3153 y(other)31 b(startup)f(\014les)g(are)h
14903(read.)150 3362 y Fk(In)m(v)m(ok)m(ed)40 b(b)m(y)g(remote)h(shell)h
14904(daemon)150 3509 y Fu(Bash)36 b(attempts)h(to)g(determine)f(when)f(it)i
c302751c 14905(is)f(b)s(eing)g(run)e(with)i(its)g(standard)g(input)f(connected)i(to)g
037a8b7f 14906(a)150 3618 y(net)m(w)m(ork)h(connection,)j(as)c(when)g(executed)h(b)m
6e51e0d0 14907(y)f(the)h(remote)g(shell)g(daemon,)h(usually)e Ft(rshd)p
037a8b7f 14908Fu(,)h(or)g(the)150 3728 y(secure)c(shell)f(daemon)h
6e51e0d0 14909Ft(sshd)p Fu(.)49 b(If)33 b(Bash)g(determines)h(it)g(is)f(b)s(eing)g
037a8b7f 14910(run)f(in)i(this)f(fashion,)h(it)g(reads)g(and)150 3837
6e51e0d0
CR
14911y(executes)29 b(commands)e(from)g Ft(~/.bashrc)p Fu(,)e(if)j(that)g
14912(\014le)f(exists)h(and)f(is)g(readable.)41 b(It)27 b(will)h(not)f(do)h
037a8b7f 14913(this)f(if)150 3947 y(in)m(v)m(ok)m(ed)k(as)f Ft(sh)p
6e51e0d0
CR
14914Fu(.)40 b(The)29 b Ft(--norc)f Fu(option)i(ma)m(y)g(b)s(e)f(used)f(to)j
14915(inhibit)e(this)g(b)s(eha)m(vior,)h(and)f(the)h Ft(--rcfile)150
037a8b7f 149164057 y Fu(option)36 b(ma)m(y)g(b)s(e)e(used)h(to)h(force)g(another)f
6e51e0d0 14917(\014le)h(to)g(b)s(e)e(read,)j(but)d(neither)i Ft(rshd)e
037a8b7f 14918Fu(nor)h Ft(sshd)f Fu(generally)150 4166 y(in)m(v)m(ok)m(e)e(the)f
6e51e0d0 14919(shell)f(with)h(those)f(options)h(or)f(allo)m(w)i(them)f(to)g(b)s(e)e
037a8b7f 14920(sp)s(eci\014ed.)150 4375 y Fk(In)m(v)m(ok)m(ed)40 b(with)g(unequal)h
6e51e0d0 14921(e\013ectiv)m(e)e(and)i(real)g Fg(uid/gid)p Fk(s)150
037a8b7f 149224522 y Fu(If)34 b(Bash)h(is)g(started)g(with)f(the)h(e\013ectiv)m(e)i
6e51e0d0 14923(user)d(\(group\))h(id)f(not)h(equal)g(to)g(the)g(real)g(user)f
037a8b7f 14924(\(group\))h(id,)150 4631 y(and)26 b(the)i Ft(-p)e Fu(option)h(is)g
6e51e0d0 14925(not)h(supplied,)e(no)h(startup)g(\014les)g(are)g(read,)h(shell)f
037a8b7f 14926(functions)g(are)g(not)g(inherited)150 4741 y(from)41
6e51e0d0
CR
14927b(the)g(en)m(vironmen)m(t,)j(the)d Ft(SHELLOPTS)p Fu(,)h
14928Ft(BASHOPTS)p Fu(,)g Ft(CDPATH)p Fu(,)g(and)e Ft(GLOBIGNORE)e
037a8b7f 14929Fu(v)-5 b(ariables,)45 b(if)150 4850 y(they)28 b(app)s(ear)f(in)h(the)g
6e51e0d0 14930(en)m(vironmen)m(t,)i(are)e(ignored,)h(and)e(the)h(e\013ectiv)m(e)j
037a8b7f 14931(user)c(id)h(is)g(set)g(to)h(the)f(real)h(user)150 4960
6e51e0d0
CR
14932y(id.)62 b(If)38 b(the)f Ft(-p)h Fu(option)g(is)f(supplied)g(at)h(in)m
14933(v)m(o)s(cation,)k(the)c(startup)f(b)s(eha)m(vior)h(is)g(the)g(same,)i
037a8b7f
CR
14934(but)d(the)150 5070 y(e\013ectiv)m(e)c(user)d(id)g(is)g(not)h(reset.)
14935150 5324 y Fs(6.3)68 b(In)l(teractiv)l(e)47 b(Shells)p
fc527055 14936eop end
e59452c7
CR
14937%%Page: 94 100
14938TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(6:)41
14939b(Bash)30 b(F)-8 b(eatures)2484 b(94)150 299 y Fk(6.3.1)63
fc527055 14940b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
5e6f45d9
CR
14941446 y Fu(An)f(in)m(teractiv)m(e)j(shell)e(is)f(one)h(started)g(without)
14942f(non-option)g(argumen)m(ts)h(\(unless)f Ft(-s)g Fu(is)g(sp)s
14943(eci\014ed\))150 555 y(and)29 b(without)h(sp)s(ecifying)g(the)g
14944Ft(-c)f Fu(option,)i(whose)e(input)g(and)g(error)h(output)f(are)h(b)s
14945(oth)f(connected)i(to)150 665 y(terminals)g(\(as)g(determined)f(b)m(y)g
14946Ft(isatty\(3\))p Fu(\),)e(or)j(one)f(started)h(with)f(the)h
d37a4722 14947Ft(-i)f Fu(option.)275 808 y(An)g(in)m(teractiv)m(e)j(shell)d
fc527055 14948(generally)i(reads)e(from)g(and)g(writes)g(to)h(a)g(user's)f(terminal.)
d37a4722 14949275 952 y(The)i Ft(-s)g Fu(in)m(v)m(o)s(cation)j(option)f(ma)m(y)f(b)s
fc527055 14950(e)g(used)f(to)i(set)f(the)g(p)s(ositional)h(parameters)f(when)f(an)h
d37a4722
CR
14951(in)m(ter-)150 1061 y(activ)m(e)g(shell)d(is)h(started.)150
149521269 y Fk(6.3.2)63 b(Is)41 b(this)g(Shell)g(In)m(teractiv)m(e?)150
149531416 y Fu(T)-8 b(o)30 b(determine)g(within)f(a)h(startup)g(script)f
fc527055 14954(whether)g(or)h(not)g(Bash)g(is)g(running)e(in)m(teractiv)m(ely)-8
d37a4722 14955b(,)33 b(test)e(the)150 1526 y(v)-5 b(alue)30 b(of)g(the)f(`)p
6e51e0d0
CR
14956Ft(-)p Fu(')h(sp)s(ecial)g(parameter.)41 b(It)29 b(con)m(tains)i
14957Ft(i)e Fu(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)44
d37a4722
CR
14958b(F)-8 b(or)30 b(example:)390 1669 y Ft(case)47 b("$-")f(in)390
149591779 y(*i*\))h(echo)f(This)h(shell)f(is)h(interactive)e(;;)390
149601888 y(*\))i(echo)g(This)f(shell)h(is)g(not)g(interactive)e(;;)390
149611998 y(esac)275 2141 y Fu(Alternativ)m(ely)-8 b(,)28
6e51e0d0
CR
14962b(startup)23 b(scripts)h(ma)m(y)g(examine)g(the)g(v)-5
14963b(ariable)25 b Ft(PS1)p Fu(;)g(it)g(is)e(unset)h(in)f(non-in)m
d37a4722
CR
14964(teractiv)m(e)150 2251 y(shells,)31 b(and)e(set)i(in)f(in)m(teractiv)m
14965(e)k(shells.)40 b(Th)m(us:)390 2394 y Ft(if)47 b([)h(-z)f("$PS1")f(];)h
14966(then)772 2503 y(echo)f(This)h(shell)f(is)i(not)f(interactive)390
149672613 y(else)772 2723 y(echo)f(This)h(shell)f(is)i(interactive)390
149682832 y(fi)150 3040 y Fk(6.3.3)63 b(In)m(teractiv)m(e)38
14969b(Shell)k(Beha)m(vior)150 3187 y Fu(When)30 b(the)h(shell)f(is)h
c302751c 14970(running)d(in)m(teractiv)m(ely)-8 b(,)34 b(it)d(c)m(hanges)h(its)f(b)s
d37a4722 14971(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3330
37c41ab1
CR
14972y(1.)61 b(Startup)37 b(\014les)g(are)h(read)f(and)g(executed)h(as)f
14973(describ)s(ed)g(in)g(Section)h(6.2)g([Bash)g(Startup)e(Files],)330
e59452c7 149743440 y(page)31 b(92.)199 3579 y(2.)61 b(Job)32 b(Con)m(trol)h(\(see)g
fffe80d4 14975(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(112\))h(is)e(enabled)g(b)m
d37a4722 14976(y)g(default.)46 b(When)32 b(job)330 3689 y(con)m(trol)j(is)f(in)f
37c41ab1 14977(e\013ect,)k(Bash)d(ignores)g(the)g(k)m(eyb)s(oard-generated)h(job)e
d37a4722
CR
14978(con)m(trol)i(signals)g Ft(SIGTTIN)p Fu(,)330 3798 y
14979Ft(SIGTTOU)p Fu(,)29 b(and)g Ft(SIGTSTP)p Fu(.)199 3937
124d67cd
CR
14980y(3.)61 b(Bash)25 b(expands)e(and)h(displa)m(ys)h Ft(PS1)e
14981Fu(b)s(efore)h(reading)h(the)f(\014rst)g(line)h(of)f(a)h(command,)h
d37a4722 14982(and)e(expands)330 4047 y(and)33 b(displa)m(ys)h Ft(PS2)f
124d67cd 14983Fu(b)s(efore)h(reading)g(the)g(second)g(and)f(subsequen)m(t)g(lines)i
d37a4722 14984(of)f(a)g(m)m(ulti-line)h(com-)330 4156 y(mand.)42 b(Bash)31
124d67cd 14985b(expands)f(and)h(displa)m(ys)g Ft(PS0)f Fu(after)h(it)h(reads)f(a)g
e59452c7
CR
14986(command)g(but)f(b)s(efore)h(executing)330 4266 y(it.)54
14987b(See)35 b(Section)h(6.9)f([Con)m(trolling)i(the)d(Prompt],)i(page)g
14988(103,)h(for)d(a)h(complete)i(list)e(of)g(prompt)330 4375
d37a4722 14989y(string)30 b(escap)s(e)h(sequences.)199 4514 y(4.)61
3c5683a4
CR
14990b(Bash)31 b(executes)i(the)e(v)-5 b(alues)32 b(of)g(the)f(set)h(elemen)
14991m(ts)g(of)g(the)f Ft(PROMPT_COMMAND)d Fu(arra)m(y)k(v)-5
14992b(ariable)32 b(as)330 4624 y(commands)27 b(b)s(efore)f(prin)m(ting)h
14993(the)g(primary)g(prompt,)g Ft($PS1)f Fu(\(see)i(Section)f(5.2)i([Bash)e
e59452c7 14994(V)-8 b(ariables],)330 4733 y(page)31 b(77\).)199 4872
d37a4722 14995y(5.)61 b(Readline)27 b(\(see)g(Chapter)e(8)h([Command)g(Line)g
fffe80d4 14996(Editing],)h(page)g(116\))g(is)f(used)g(to)g(read)g(commands)330
d37a4722
CR
149974982 y(from)k(the)g(user's)g(terminal.)199 5121 y(6.)61
14998b(Bash)36 b(insp)s(ects)g(the)h(v)-5 b(alue)37 b(of)f(the)g
14999Ft(ignoreeof)e Fu(option)j(to)g Ft(set)29 b(-o)36 b Fu(instead)h(of)f
15000(exiting)i(imme-)330 5230 y(diately)f(when)e(it)i(receiv)m(es)h(an)e
15001Ft(EOF)f Fu(on)h(its)g(standard)f(input)g(when)h(reading)g(a)g(command)
15002g(\(see)330 5340 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g
e59452c7
CR
15003(66\).)p eop end
15004%%Page: 95 101
15005TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(6:)41
15006b(Bash)30 b(F)-8 b(eatures)2484 b(95)199 299 y(7.)61
d37a4722 15007b(Command)43 b(history)h(\(see)h(Section)g(9.1)g([Bash)f(History)h(F)-8
fffe80d4 15008b(acilities],)51 b(page)45 b(151\))h(and)d(history)330
d37a4722 15009408 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m(teraction],)k
fffe80d4 15010(page)45 b(153\))h(are)f(enabled)g(b)m(y)f(default.)330
d37a4722
CR
15011518 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g(the)
15012g(\014le)g(named)f(b)m(y)h Ft($HISTFILE)d Fu(when)h(a)i(shell)g(with)
15013330 628 y(history)i(enabled)h(exits.)199 762 y(8.)61
15014b(Alias)31 b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i(page)e
e59452c7 15015(99\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199 896
d37a4722
CR
15016y(9.)61 b(In)24 b(the)g(absence)h(of)f(an)m(y)h(traps,)g(Bash)g
15017(ignores)f Ft(SIGTERM)f Fu(\(see)i(Section)g(3.7.6)h([Signals],)g(page)
3011048a 15018f(45\).)154 1030 y(10.)61 b(In)29 b(the)g(absence)h(of)g(an)m(y)g
d37a4722 15019(traps,)f Ft(SIGINT)f Fu(is)h(caugh)m(t)i(and)e(handled)f(\(see)j
3011048a 15020(Section)f(3.7.6)h([Signals],)330 1140 y(page)g(45\).)42
d37a4722
CR
15021b Ft(SIGINT)29 b Fu(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)154
150221274 y(11.)61 b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
6e51e0d0 15023Ft(SIGHUP)d Fu(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
d37a4722 15024Ft(huponexit)e Fu(shell)330 1383 y(option)31 b(has)f(b)s(een)g(enabled)
3011048a 15025g(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(45\).)154
d37a4722 150261517 y(12.)61 b(The)29 b Ft(-n)g Fu(in)m(v)m(o)s(cation)j(option)e(is)g
6e51e0d0 15027(ignored,)g(and)f(`)p Ft(set)h(-n)p Fu(')f(has)h(no)f(e\013ect)j(\(see)
e59452c7 15028e(Section)h(4.3.1)g([The)330 1627 y(Set)g(Builtin],)g(page)g(66\).)154
d37a4722 150291761 y(13.)61 b(Bash)32 b(will)g(c)m(hec)m(k)i(for)e(mail)g(p)s(erio)s
6e51e0d0
CR
15030(dically)-8 b(,)34 b(dep)s(ending)c(on)i(the)g(v)-5 b(alues)32
15031b(of)g(the)h Ft(MAIL)p Fu(,)e Ft(MAILPATH)p Fu(,)330
d37a4722 150321871 y(and)f Ft(MAILCHECK)e Fu(shell)i(v)-5 b(ariables)31
6e51e0d0 15033b(\(see)h(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32
e59452c7 15034b(page)f(77\).)154 2005 y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i
6e51e0d0
CR
15035(references)f(to)h(un)m(b)s(ound)c(shell)j(v)-5 b(ariables)34
15036b(after)g(`)p Ft(set)29 b(-u)p Fu(')k(has)g(b)s(een)330
d37a4722 150372114 y(enabled)d(will)h(not)g(cause)g(the)f(shell)h(to)g(exit)g(\(see)g
e59452c7 15038(Section)h(4.3.1)g([The)e(Set)h(Builtin],)g(page)g(66\).)154
d37a4722 150392248 y(15.)61 b(The)48 b(shell)h(will)f(not)h(exit)g(on)g(expansion)f
6e51e0d0 15040(errors)g(caused)g(b)m(y)h Fr(v)-5 b(ar)54 b Fu(b)s(eing)48
d37a4722 15041b(unset)g(or)h(n)m(ull)f(in)330 2358 y Ft(${)p Fj(var)p
6e51e0d0 15042Ft(:?)p Fj(word)p Ft(})27 b Fu(expansions)j(\(see)h(Section)h(3.5.3)g
e59452c7 15043([Shell)e(P)m(arameter)i(Expansion],)e(page)h(26\).)154
d37a4722 150442492 y(16.)61 b(Redirection)31 b(errors)f(encoun)m(tered)h(b)m(y)f
6e51e0d0 15045(shell)h(builtins)f(will)g(not)h(cause)g(the)f(shell)h(to)g(exit.)154
d37a4722 150462626 y(17.)61 b(When)26 b(running)f(in)i Fm(posix)e Fu(mo)s(de,)j(a)f
6e51e0d0 15047(sp)s(ecial)g(builtin)f(returning)g(an)g(error)h(status)g(will)g(not)f
d37a4722 15048(cause)330 2736 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h
e59452c7 15049([Bash)f(POSIX)e(Mo)s(de],)i(page)g(105\).)154 2870 y(18.)61
6e51e0d0
CR
15050b(A)34 b(failed)g Ft(exec)f Fu(will)h(not)g(cause)g(the)g(shell)g(to)g
15051(exit)h(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
e59452c7 150522980 y(page)e(47\).)154 3114 y(19.)61 b(P)m(arser)31
37c41ab1 15053b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.)
fffe80d4
CR
15054154 3248 y(20.)61 b(If)28 b(the)g Ft(cdspell)f Fu(shell)h(option)h(is)g
15055(enabled,)g(the)f(shell)h(will)f(attempt)i(simple)e(sp)s(elling)h
15056(correction)330 3357 y(for)f(directory)h(argumen)m(ts)g(to)g(the)g
15057Ft(cd)e Fu(builtin)h(\(see)i(the)e(description)h(of)f(the)h
15058Ft(cdspell)d Fu(option)j(to)330 3467 y(the)j Ft(shopt)e
15059Fu(builtin)h(in)h(Section)g(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g
15060(70\).)46 b(The)31 b Ft(cdspell)e Fu(option)330 3576
15061y(is)h(only)h(e\013ectiv)m(e)i(in)d(in)m(teractiv)m(e)j(shells.)154
150623711 y(21.)61 b(The)42 b(shell)h(will)g(c)m(hec)m(k)h(the)f(v)-5
15063b(alue)43 b(of)f(the)h Ft(TMOUT)e Fu(v)-5 b(ariable)44
15064b(and)e(exit)h(if)g(a)g(command)f(is)h(not)330 3820 y(read)30
15065b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)g(of)i(seconds)f
15066(after)g(prin)m(ting)g Ft($PS1)f Fu(\(see)i(Section)g(5.2)h([Bash)330
150673930 y(V)-8 b(ariables],)32 b(page)f(77\).)150 4170 y
15068Fs(6.4)68 b(Bash)45 b(Conditional)h(Expressions)150 4329
15069y Fu(Conditional)25 b(expressions)f(are)g(used)g(b)m(y)g(the)g
15070Ft([[)g Fu(comp)s(ound)e(command)i(\(see)h(Section)g(3.2.5.2)i([Condi-)
15071150 4439 y(tional)h(Constructs],)g(page)f(12\))h(and)e(the)h
15072Ft(test)f Fu(and)g Ft([)h Fu(builtin)f(commands)h(\(see)g(Section)h
15073(4.1)g([Bourne)150 4548 y(Shell)37 b(Builtins],)j(page)e(47\).)63
15074b(The)36 b Ft(test)g Fu(and)h Ft([)g Fu(commands)g(determine)g(their)h
15075(b)s(eha)m(vior)f(based)g(on)150 4658 y(the)29 b(n)m(um)m(b)s(er)f(of)h
15076(argumen)m(ts;)h(see)f(the)h(descriptions)e(of)i(those)f(commands)g
15077(for)f(an)m(y)i(other)f(command-)150 4768 y(sp)s(eci\014c)h(actions.)
15078275 4902 y(Expressions)22 b(ma)m(y)h(b)s(e)g(unary)f(or)h(binary)-8
15079b(,)24 b(and)f(are)g(formed)g(from)g(the)g(follo)m(wing)h(primaries.)38
15080b(Unary)150 5011 y(expressions)c(are)g(often)g(used)g(to)g(examine)h
15081(the)f(status)g(of)h(a)f(\014le.)52 b(There)33 b(are)h(string)g(op)s
15082(erators)h(and)150 5121 y(n)m(umeric)c(comparison)g(op)s(erators)h(as)f
15083(w)m(ell.)44 b(Bash)31 b(handles)g(sev)m(eral)h(\014lenames)g(sp)s
15084(ecially)g(when)e(they)150 5230 y(are)35 b(used)e(in)i(expressions.)52
a6ae8f35 15085b(If)34 b(the)h(op)s(erating)f(system)h(on)f(whic)m(h)g(Bash)h(is)f
fffe80d4 15086(running)f(pro)m(vides)h(these)150 5340 y(sp)s(ecial)22
a6ae8f35 15087b(\014les,)i(Bash)e(will)g(use)f(them;)k(otherwise)d(it)g(will)g(em)m
fffe80d4
CR
15088(ulate)h(them)f(in)m(ternally)h(with)e(this)h(b)s(eha)m(vior:)p
15089eop end
e59452c7
CR
15090%%Page: 96 102
15091TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
15092b(Bash)30 b(F)-8 b(eatures)2484 b(96)150 299 y(If)27
15093b(the)g Fr(\014le)33 b Fu(argumen)m(t)27 b(to)h(one)g(of)f(the)h
15094(primaries)f(is)g(of)h(the)f(form)g Ft(/dev/fd/)p Fj(N)p
15095Fu(,)e(then)i(\014le)h(descriptor)f Fr(N)150 408 y Fu(is)g(c)m(hec)m(k)
15096m(ed.)42 b(If)26 b(the)h Fr(\014le)32 b Fu(argumen)m(t)c(to)f(one)h(of)
15097f(the)g(primaries)f(is)h(one)h(of)f Ft(/dev/stdin)p Fu(,)e
15098Ft(/dev/stdout)p Fu(,)150 518 y(or)30 b Ft(/dev/stderr)p
15099Fu(,)e(\014le)i(descriptor)h(0,)g(1,)g(or)f(2,)h(resp)s(ectiv)m(ely)-8
15100b(,)32 b(is)f(c)m(hec)m(k)m(ed.)275 655 y(When)37 b(used)g(with)g
15101Ft([[)p Fu(,)i(the)f(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
15102Fu(')h(op)s(erators)g(sort)g(lexicographically)i(using)d(the)h(curren)m
15103(t)150 765 y(lo)s(cale.)k(The)30 b Ft(test)f Fu(command)i(uses)f(ASCI)s
15104(I)e(ordering.)275 902 y(Unless)44 b(otherwise)h(sp)s(eci\014ed,)j
e59452c7 15105(primaries)c(that)h(op)s(erate)g(on)g(\014les)f(follo)m(w)i(sym)m(b)s
fffe80d4 15106(olic)f(links)g(and)150 1011 y(op)s(erate)31 b(on)f(the)h(target)h(of)e
e59452c7 15107(the)h(link,)f(rather)h(than)f(the)g(link)h(itself.)150
fffe80d4
CR
151081175 y Ft(-a)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
15109Fr(\014le)36 b Fu(exists.)150 1337 y Ft(-b)30 b Fj(file)162
e59452c7
CR
15110b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
15111b(and)f(is)g(a)h(blo)s(c)m(k)g(sp)s(ecial)g(\014le.)150
fffe80d4 151121499 y Ft(-c)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
e59452c7 15113Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
fffe80d4 15114f(\014le.)150 1661 y Ft(-d)f Fj(file)162 b Fu(T)-8 b(rue)30
e59452c7 15115b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(directory)-8
fffe80d4
CR
15116b(.)150 1823 y Ft(-e)30 b Fj(file)162 b Fu(T)-8 b(rue)30
15117b(if)g Fr(\014le)36 b Fu(exists.)150 1985 y Ft(-f)30
6e51e0d0 15118b Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
124d67cd 15119b Fu(exists)31 b(and)f(is)g(a)h(regular)f(\014le.)150
fffe80d4 151202147 y Ft(-g)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15121Fr(\014le)36 b Fu(exists)31 b(and)f(its)g(set-group-id)h(bit)g(is)f
fffe80d4 15122(set.)150 2309 y Ft(-h)g Fj(file)162 b Fu(T)-8 b(rue)30
124d67cd 15123b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g
fffe80d4 15124(link.)150 2471 y Ft(-k)f Fj(file)162 b Fu(T)-8 b(rue)30
124d67cd 15125b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g Ft(")p
fffe80d4 15126Fu(stic)m(ky)p Ft(")h Fu(bit)g(is)f(set.)150 2633 y Ft(-p)g
fc527055 15127Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
124d67cd 15128Fu(exists)31 b(and)f(is)g(a)h(named)f(pip)s(e)f(\(FIF)m(O\).)150
fffe80d4 151292795 y Ft(-r)h Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15130Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(readable.)150
fffe80d4 151312957 y Ft(-s)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15132Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(a)g(size)i(greater)f(than)f
fffe80d4 15133(zero.)150 3119 y Ft(-t)g Fj(fd)258 b Fu(T)-8 b(rue)30
124d67cd 15134b(if)g(\014le)h(descriptor)f Fr(fd)j Fu(is)e(op)s(en)e(and)h(refers)g
fffe80d4 15135(to)h(a)g(terminal.)150 3281 y Ft(-u)f Fj(file)162 b
124d67cd 15136Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g
fffe80d4 15137(set-user-id)h(bit)f(is)h(set.)150 3443 y Ft(-w)f Fj(file)162
6e51e0d0 15138b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
fffe80d4 15139b(and)f(is)g(writable.)150 3605 y Ft(-x)g Fj(file)162
6e51e0d0 15140b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
fffe80d4 15141b(and)f(is)g(executable.)150 3767 y Ft(-G)g Fj(file)162
124d67cd
CR
15142b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
15143b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j(group)d(id.)150
fffe80d4 151443929 y Ft(-L)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15145Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150
fffe80d4 151464091 y Ft(-N)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15147Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(b)s(een)f(mo)s(di\014ed)h
fffe80d4 15148(since)g(it)h(w)m(as)g(last)g(read.)150 4253 y Ft(-O)f
6e51e0d0 15149Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
124d67cd 15150Fu(exists)31 b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j
fffe80d4 15151(user)d(id.)150 4416 y Ft(-S)g Fj(file)162 b Fu(T)-8
124d67cd 15152b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(so)s(c)m
fffe80d4
CR
15153(k)m(et.)150 4578 y Fj(file1)e Ft(-ef)g Fj(file2)630
151544687 y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(and)30
124d67cd 15155b Fr(\014le2)38 b Fu(refer)30 b(to)i(the)e(same)h(device)g(and)f(ino)s
fffe80d4
CR
15156(de)g(n)m(um)m(b)s(ers.)150 4849 y Fj(file1)f Ft(-nt)g
15157Fj(file2)630 4959 y Fu(T)-8 b(rue)23 b(if)h Fr(\014le1)32
124d67cd
CR
15158b Fu(is)24 b(new)m(er)g(\(according)h(to)g(mo)s(di\014cation)f(date\))h
15159(than)f Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le1)31 b
fffe80d4 15160Fu(exists)630 5068 y(and)f Fr(\014le2)38 b Fu(do)s(es)30
e59452c7 15161b(not.)150 5230 y Fj(file1)f Ft(-ot)g Fj(file2)630 5340
124d67cd
CR
15162y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(is)31 b(older)f(than)g
15163Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le2)38 b Fu(exists)31
e59452c7
CR
15164b(and)f Fr(\014le1)38 b Fu(do)s(es)30 b(not.)p eop end
15165%%Page: 97 103
15166TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(6:)41
15167b(Bash)30 b(F)-8 b(eatures)2484 b(97)150 299 y Ft(-o)30
15168b Fj(optname)630 408 y Fu(T)-8 b(rue)41 b(if)g(the)g(shell)h(option)f
15169Fr(optname)47 b Fu(is)41 b(enabled.)73 b(The)41 b(list)h(of)f(options)h
15170(app)s(ears)e(in)630 518 y(the)33 b(description)h(of)f(the)g
15171Ft(-o)g Fu(option)g(to)h(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)g
15172(4.3.1)h([The)e(Set)630 628 y(Builtin],)e(page)g(66\).)150
15173783 y Ft(-v)f Fj(varname)630 892 y Fu(T)-8 b(rue)30 b(if)g(the)h(shell)
15174f(v)-5 b(ariable)32 b Fr(v)-5 b(arname)35 b Fu(is)30
15175b(set)h(\(has)g(b)s(een)e(assigned)i(a)g(v)-5 b(alue\).)150
151761047 y Ft(-R)30 b Fj(varname)630 1157 y Fu(T)-8 b(rue)30
15177b(if)g(the)h(shell)f(v)-5 b(ariable)32 b Fr(v)-5 b(arname)35
15178b Fu(is)30 b(set)h(and)f(is)h(a)f(name)h(reference.)150
151791312 y Ft(-z)f Fj(string)66 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)g
15180(of)f Fr(string)38 b Fu(is)31 b(zero.)150 1467 y Ft(-n)f
15181Fj(string)150 1576 y(string)192 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)
15182g(of)f Fr(string)38 b Fu(is)31 b(non-zero.)150 1731 y
15183Fj(string1)d Ft(==)i Fj(string2)150 1841 y(string1)e
15184Ft(=)i Fj(string2)630 1951 y Fu(T)-8 b(rue)43 b(if)h(the)g(strings)g
15185(are)g(equal.)82 b(When)44 b(used)f(with)g(the)h Ft([[)g
15186Fu(command,)j(this)d(p)s(er-)630 2060 y(forms)d(pattern)g(matc)m(hing)i
15187(as)f(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.2.5.2)i
15188([Conditional)630 2170 y(Constructs],)30 b(page)h(12\).)630
151892302 y(`)p Ft(=)p Fu(')g(should)e(b)s(e)h(used)f(with)h(the)h
15190Ft(test)e Fu(command)h(for)g Fm(posix)g Fu(conformance.)150
151912457 y Fj(string1)e Ft(!=)i Fj(string2)630 2567 y Fu(T)-8
fc527055 15192b(rue)30 b(if)g(the)h(strings)f(are)h(not)f(equal.)150
e59452c7 151932722 y Fj(string1)e Ft(<)i Fj(string2)630 2831 y Fu(T)-8
fc527055 15194b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(b)s(efore)f
e59452c7
CR
15195Fr(string2)38 b Fu(lexicographically)-8 b(.)150 2986
15196y Fj(string1)28 b Ft(>)i Fj(string2)630 3096 y Fu(T)-8
fc527055 15197b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(after)g
e59452c7
CR
15198Fr(string2)38 b Fu(lexicographically)-8 b(.)150 3251
15199y Fj(arg1)29 b Ft(OP)h Fj(arg2)630 3361 y Ft(OP)j Fu(is)h(one)g(of)h(`)
fc527055
CR
15200p Ft(-eq)p Fu(',)f(`)p Ft(-ne)p Fu(',)h(`)p Ft(-lt)p
15201Fu(',)g(`)p Ft(-le)p Fu(',)f(`)p Ft(-gt)p Fu(',)h(or)f(`)p
15202Ft(-ge)p Fu('.)51 b(These)34 b(arithmetic)h(binary)630
e59452c7 152033470 y(op)s(erators)h(return)e(true)i(if)f Fr(arg1)44
fc527055 15204b Fu(is)36 b(equal)g(to,)i(not)e(equal)g(to,)i(less)e(than,)h(less)f
e59452c7 15205(than)f(or)630 3580 y(equal)29 b(to,)g(greater)h(than,)e(or)g(greater)i
fc527055 15206(than)d(or)i(equal)f(to)h Fr(arg2)p Fu(,)h(resp)s(ectiv)m(ely)-8
e59452c7 15207b(.)42 b Fr(Arg1)36 b Fu(and)630 3689 y Fr(arg2)41 b
124d67cd
CR
15208Fu(ma)m(y)34 b(b)s(e)f(p)s(ositiv)m(e)h(or)f(negativ)m(e)j(in)m
15209(tegers.)50 b(When)33 b(used)g(with)g(the)g Ft([[)g Fu(command,)630
e59452c7 152103799 y Fr(Arg1)41 b Fu(and)33 b Fr(Arg2)41 b Fu(are)33
124d67cd 15211b(ev)-5 b(aluated)35 b(as)e(arithmetic)i(expressions)d(\(see)j(Section)
e59452c7
CR
15212f(6.5)g([Shell)630 3908 y(Arithmetic],)e(page)f(97\).)150
152134145 y Fs(6.5)68 b(Shell)45 b(Arithmetic)150 4304 y Fu(The)26
b729dac1
CR
15214b(shell)h(allo)m(ws)h(arithmetic)f(expressions)g(to)g(b)s(e)f(ev)-5
15215b(aluated,)29 b(as)d(one)h(of)g(the)g(shell)f(expansions)h(or)f(b)m(y)
e59452c7 15216150 4414 y(using)h(the)g Ft(\(\()g Fu(comp)s(ound)e(command,)j(the)g
b729dac1 15217Ft(let)e Fu(builtin,)i(or)f(the)g Ft(-i)g Fu(option)h(to)f(the)h
e59452c7 15218Ft(declare)d Fu(builtin.)275 4546 y(Ev)-5 b(aluation)27
b729dac1
CR
15219b(is)g(done)f(in)g(\014xed-width)g(in)m(tegers)i(with)e(no)h(c)m(hec)m
15220(k)h(for)e(o)m(v)m(er\015o)m(w,)j(though)d(division)h(b)m(y)150
e59452c7 152214656 y(0)g(is)g(trapp)s(ed)f(and)h(\015agged)g(as)h(an)f(error.)39
b729dac1 15222b(The)26 b(op)s(erators)h(and)g(their)g(precedence,)h(asso)s(ciativit)m
e59452c7 15223(y)-8 b(,)32 b(and)150 4765 y(v)-5 b(alues)35 b(are)h(the)f(same)g(as)h
b729dac1 15224(in)e(the)h(C)g(language.)56 b(The)35 b(follo)m(wing)h(list)g(of)f(op)s
e59452c7 15225(erators)g(is)g(group)s(ed)f(in)m(to)150 4875 y(lev)m(els)27
b729dac1
CR
15226b(of)f(equal-precedence)i(op)s(erators.)39 b(The)25 b(lev)m(els)j(are)e
15227(listed)h(in)e(order)h(of)g(decreasing)g(precedence.)150
e59452c7 152285030 y Fj(id)p Ft(++)j Fj(id)p Ft(--)67 b Fu(v)-5 b(ariable)31
b729dac1 15229b(p)s(ost-incremen)m(t)g(and)f(p)s(ost-decremen)m(t)150
e59452c7
CR
152305185 y Ft(++)p Fj(id)f Ft(--)p Fj(id)67 b Fu(v)-5 b(ariable)31
15231b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150 5340
15232y Ft(-)g(+)354 b Fu(unary)29 b(min)m(us)h(and)g(plus)p
15233eop end
15234%%Page: 98 104
15235TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(6:)41
15236b(Bash)30 b(F)-8 b(eatures)2484 b(98)150 299 y Ft(!)30
15237b(~)354 b Fu(logical)33 b(and)d(bit)m(wise)h(negation)150
15238482 y Ft(**)384 b Fu(exp)s(onen)m(tiation)150 664 y Ft(*)30
15239b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d(remainder)150
15240847 y Ft(+)g(-)354 b Fu(addition,)31 b(subtraction)150
152411030 y Ft(<<)f(>>)258 b Fu(left)31 b(and)f(righ)m(t)h(bit)m(wise)g
15242(shifts)150 1213 y Ft(<=)f(>=)g(<)g(>)102 b Fu(comparison)150
152431395 y Ft(==)30 b(!=)258 b Fu(equalit)m(y)32 b(and)e(inequalit)m(y)150
152441578 y Ft(&)432 b Fu(bit)m(wise)31 b(AND)150 1761 y Ft(^)432
15245b Fu(bit)m(wise)31 b(exclusiv)m(e)h(OR)150 1944 y Ft(|)432
15246b Fu(bit)m(wise)31 b(OR)150 2126 y Ft(&&)384 b Fu(logical)33
15247b(AND)150 2309 y Ft(||)384 b Fu(logical)33 b(OR)150 2492
15248y Ft(expr)c(?)h(expr)f(:)h(expr)630 2601 y Fu(conditional)i(op)s
15249(erator)150 2784 y Ft(=)e(*=)g(/=)g(\045=)f(+=)h(-=)g(<<=)f(>>=)h(&=)g
15250(^=)f(|=)630 2894 y Fu(assignmen)m(t)150 3076 y Ft(expr1)g(,)h(expr2)
15251630 3186 y Fu(comma)275 3380 y(Shell)38 b(v)-5 b(ariables)39
79eedac4 15252b(are)g(allo)m(w)m(ed)i(as)e(op)s(erands;)i(parameter)e(expansion)g(is)
e59452c7 15253f(p)s(erformed)g(b)s(efore)g(the)150 3490 y(expression)g(is)g(ev)-5
79eedac4
CR
15254b(aluated.)66 b(Within)38 b(an)h(expression,)h(shell)e(v)-5
15255b(ariables)39 b(ma)m(y)g(also)g(b)s(e)f(referenced)g(b)m(y)150
e59452c7 152563600 y(name)31 b(without)f(using)g(the)h(parameter)g(expansion)f(syn)m
79eedac4 15257(tax.)42 b(A)31 b(shell)f(v)-5 b(ariable)32 b(that)f(is)f(n)m(ull)h(or)
e59452c7 15258f(unset)150 3709 y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b)
79eedac4 15259m(y)g(name)h(without)f(using)g(the)g(parameter)h(expansion)f(syn)m
e59452c7 15260(tax.)150 3819 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5
79eedac4 15261b(ariable)36 b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h
e59452c7
CR
15262(expression)f(when)f(it)h(is)g(referenced,)i(or)150 3928
15263y(when)27 b(a)h(v)-5 b(ariable)29 b(whic)m(h)e(has)h(b)s(een)f(giv)m
15264(en)i(the)f Ft(integer)e Fu(attribute)i(using)g(`)p Ft(declare)g(-i)p
15265Fu(')g(is)g(assigned)150 4038 y(a)33 b(v)-5 b(alue.)49
15266b(A)33 b(n)m(ull)g(v)-5 b(alue)34 b(ev)-5 b(aluates)34
15267b(to)g(0.)49 b(A)33 b(shell)g(v)-5 b(ariable)34 b(need)e(not)i(ha)m(v)m
15268(e)g(its)f Ft(integer)e Fu(attribute)150 4148 y(turned)e(on)h(to)i(b)s
15269(e)d(used)h(in)g(an)g(expression.)275 4305 y(In)m(teger)41
15270b(constan)m(ts)g(follo)m(w)h(the)e(C)g(language)i(de\014nition,)g
15271(without)f(su\016xes)e(or)h(c)m(haracter)i(con-)150 4415
15272y(stan)m(ts.)f(Constan)m(ts)31 b(with)f(a)g(leading)h(0)f(are)h(in)m
15273(terpreted)f(as)g(o)s(ctal)i(n)m(um)m(b)s(ers.)39 b(A)30
15274b(leading)h(`)p Ft(0x)p Fu(')f(or)g(`)p Ft(0X)p Fu(')150
152754525 y(denotes)g(hexadecimal.)42 b(Otherwise,)30 b(n)m(um)m(b)s(ers)f
15276(tak)m(e)i(the)f(form)g([)p Fr(base)5 b Ft(#)p Fu(])p
15277Fr(n)p Fu(,)30 b(where)f(the)i(optional)g Fr(base)150
152784634 y Fu(is)e(a)h(decimal)g(n)m(um)m(b)s(er)e(b)s(et)m(w)m(een)h(2)h
15279(and)e(64)i(represen)m(ting)g(the)f(arithmetic)i(base,)e(and)g
15280Fr(n)g Fu(is)g(a)g(n)m(um)m(b)s(er)150 4744 y(in)g(that)i(base.)40
602eae4d
CR
15281b(If)30 b Fr(base)5 b Ft(#)30 b Fu(is)f(omitted,)i(then)f(base)g(10)g
15282(is)g(used.)40 b(When)30 b(sp)s(ecifying)f Fr(n)p Fu(,)h(if)f(a)i
e59452c7 15283(non-digit)f(is)150 4853 y(required,)k(the)g(digits)h(greater)g(than)e
602eae4d 15284(9)i(are)f(represen)m(ted)g(b)m(y)f(the)h(lo)m(w)m(ercase)j(letters,)f
e59452c7 15285(the)e(upp)s(ercase)150 4963 y(letters,)26 b(`)p Ft(@)p
602eae4d
CR
15286Fu(',)g(and)d(`)p Ft(_)p Fu(',)i(in)e(that)i(order.)38
15287b(If)23 b Fr(base)29 b Fu(is)23 b(less)h(than)g(or)f(equal)h(to)h(36,)h
e59452c7 15288(lo)m(w)m(ercase)g(and)d(upp)s(ercase)150 5073 y(letters)32
602eae4d
CR
15289b(ma)m(y)f(b)s(e)e(used)h(in)m(terc)m(hangeably)i(to)f(represen)m(t)g
15290(n)m(um)m(b)s(ers)e(b)s(et)m(w)m(een)i(10)g(and)f(35.)275
e59452c7 152915230 y(Op)s(erators)44 b(are)h(ev)-5 b(aluated)46 b(in)f(order)f(of)h
602eae4d 15292(precedence.)85 b(Sub-expressions)44 b(in)g(paren)m(theses)i(are)150
e59452c7
CR
152935340 y(ev)-5 b(aluated)32 b(\014rst)d(and)h(ma)m(y)h(o)m(v)m(erride)g
15294(the)g(precedence)g(rules)f(ab)s(o)m(v)m(e.)p eop end
15295%%Page: 99 105
15296TeXDict begin 99 104 bop 150 -116 a Fu(Chapter)30 b(6:)41
15297b(Bash)30 b(F)-8 b(eatures)2484 b(99)150 299 y Fs(6.6)68
15298b(Aliases)150 458 y Fr(Aliases)41 b Fu(allo)m(w)d(a)f(string)f(to)h(b)s
15299(e)f(substituted)g(for)g(a)g(w)m(ord)g(when)g(it)h(is)f(used)f(as)i
15300(the)g(\014rst)e(w)m(ord)h(of)h(a)150 568 y(simple)32
15301b(command.)45 b(The)31 b(shell)i(main)m(tains)f(a)h(list)f(of)g
15302(aliases)i(that)e(ma)m(y)h(b)s(e)e(set)h(and)g(unset)f(with)h(the)150
15303677 y Ft(alias)d Fu(and)h Ft(unalias)e Fu(builtin)i(commands.)275
15304810 y(The)f(\014rst)f(w)m(ord)i(of)f(eac)m(h)i(simple)f(command,)g(if)f
15305(unquoted,)g(is)h(c)m(hec)m(k)m(ed)h(to)g(see)f(if)g(it)g(has)f(an)g
15306(alias.)150 920 y(If)24 b(so,)i(that)g(w)m(ord)e(is)h(replaced)g(b)m(y)
15307f(the)h(text)h(of)e(the)h(alias.)40 b(The)24 b(c)m(haracters)i(`)p
15308Ft(/)p Fu(',)h(`)p Ft($)p Fu(',)f(`)p Ft(`)p Fu(',)g(`)p
15309Ft(=)p Fu(')f(and)f(an)m(y)h(of)150 1030 y(the)e(shell)g(metac)m
15310(haracters)i(or)e(quoting)g(c)m(haracters)h(listed)g(ab)s(o)m(v)m(e)g
15311(ma)m(y)f(not)g(app)s(ear)f(in)h(an)g(alias)h(name.)150
153121139 y(The)e(replacemen)m(t)h(text)g(ma)m(y)g(con)m(tain)h(an)m(y)e(v)
15313-5 b(alid)23 b(shell)f(input,)h(including)f(shell)g(metac)m(haracters.)
1531440 b(The)150 1249 y(\014rst)35 b(w)m(ord)g(of)h(the)g(replacemen)m(t)i
15315(text)e(is)g(tested)h(for)e(aliases,)k(but)c(a)h(w)m(ord)g(that)g(is)g
15316(iden)m(tical)i(to)e(an)150 1358 y(alias)c(b)s(eing)f(expanded)f(is)h
15317(not)g(expanded)f(a)h(second)g(time.)43 b(This)30 b(means)h(that)g(one)
15318g(ma)m(y)h(alias)g Ft(ls)e Fu(to)150 1468 y Ft("ls)f(-F")p
15319Fu(,)f(for)f(instance,)i(and)d(Bash)i(do)s(es)f(not)h(try)f(to)h
15320(recursiv)m(ely)g(expand)e(the)i(replacemen)m(t)h(text.)40
15321b(If)150 1578 y(the)30 b(last)h(c)m(haracter)g(of)g(the)f(alias)h(v)-5
15322b(alue)30 b(is)g(a)g Ft(blank)p Fu(,)f(then)h(the)g(next)g(command)g(w)
15323m(ord)f(follo)m(wing)j(the)150 1687 y(alias)g(is)e(also)h(c)m(hec)m(k)m
15324(ed)i(for)d(alias)h(expansion.)275 1820 y(Aliases)e(are)f(created)i
15325(and)d(listed)i(with)f(the)g Ft(alias)f Fu(command,)h(and)g(remo)m(v)m
15326(ed)h(with)f(the)g Ft(unalias)150 1930 y Fu(command.)275
153272063 y(There)44 b(is)h(no)g(mec)m(hanism)g(for)f(using)h(argumen)m(ts)g
15328(in)f(the)h(replacemen)m(t)i(text,)i(as)d(in)e Ft(csh)p
15329Fu(.)83 b(If)150 2172 y(argumen)m(ts)31 b(are)f(needed,)h(use)f(a)h
15330(shell)f(function)g(\(see)i(Section)f(3.3)g([Shell)g(F)-8
15331b(unctions],)31 b(page)g(19\).)275 2305 y(Aliases)i(are)h(not)e
15332(expanded)g(when)g(the)h(shell)g(is)g(not)g(in)m(teractiv)m(e,)j
15333(unless)c(the)h Ft(expand_aliases)150 2415 y Fu(shell)e(option)f(is)h
124d67cd 15334(set)g(using)f Ft(shopt)f Fu(\(see)i(Section)g(4.3.2)h([The)e(Shopt)g
e59452c7 15335(Builtin],)h(page)g(70\).)275 2548 y(The)38 b(rules)h(concerning)h(the)
124d67cd 15336f(de\014nition)g(and)g(use)g(of)g(aliases)i(are)e(somewhat)h
e59452c7 15337(confusing.)67 b(Bash)150 2657 y(alw)m(a)m(ys)37 b(reads)f(at)h(least)g
d61300ec 15338(one)f(complete)i(line)e(of)g(input,)h(and)e(all)i(lines)f(that)g(mak)m
e59452c7 15339(e)h(up)e(a)h(comp)s(ound)150 2767 y(command,)29 b(b)s(efore)g
d61300ec 15340(executing)i(an)m(y)e(of)h(the)f(commands)g(on)g(that)h(line)f(or)h
e59452c7 15341(the)f(comp)s(ound)f(command.)150 2877 y(Aliases)g(are)g(expanded)e
d61300ec 15342(when)g(a)i(command)f(is)g(read,)h(not)f(when)f(it)i(is)f(executed.)41
e59452c7 15343b(Therefore,)28 b(an)f(alias)150 2986 y(de\014nition)36
d61300ec 15344b(app)s(earing)h(on)f(the)h(same)g(line)g(as)g(another)g(command)f(do)s
e59452c7 15345(es)g(not)h(tak)m(e)i(e\013ect)f(un)m(til)f(the)150 3096
d61300ec
CR
15346y(next)i(line)g(of)g(input)f(is)h(read.)66 b(The)38 b(commands)h(follo)
15347m(wing)h(the)f(alias)h(de\014nition)e(on)h(that)g(line)h(are)150
e59452c7 153483205 y(not)33 b(a\013ected)h(b)m(y)f(the)g(new)f(alias.)49
d61300ec 15349b(This)32 b(b)s(eha)m(vior)h(is)g(also)g(an)g(issue)g(when)e(functions)
e59452c7 15350i(are)g(executed.)150 3315 y(Aliases)c(are)g(expanded)e(when)g(a)i
d61300ec 15351(function)e(de\014nition)h(is)g(read,)h(not)f(when)g(the)g(function)g
e59452c7 15352(is)g(executed,)150 3425 y(b)s(ecause)36 b(a)h(function)f(de\014nition)
d61300ec 15353f(is)i(itself)g(a)f(command.)58 b(As)36 b(a)h(consequence,)h(aliases)g
e59452c7 15354(de\014ned)d(in)h(a)150 3534 y(function)28 b(are)h(not)g(a)m(v)-5
d61300ec 15355b(ailable)31 b(un)m(til)e(after)g(that)g(function)f(is)g(executed.)41
fc527055 15356b(T)-8 b(o)29 b(b)s(e)f(safe,)i(alw)m(a)m(ys)g(put)e(alias)150
e59452c7 153573644 y(de\014nitions)i(on)g(a)h(separate)g(line,)g(and)f(do)g(not)h
fc527055 15358(use)f Ft(alias)f Fu(in)h(comp)s(ound)f(commands.)275
e59452c7 153593777 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
fc527055 15360(functions)f(are)g(preferred)g(o)m(v)m(er)h(aliases.)150
e59452c7 153614014 y Fs(6.7)68 b(Arra)l(ys)150 4174 y Fu(Bash)33 b(pro)m(vides)g
fc527055 15362(one-dimensional)g(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
c302751c 15363b(ariables.)49 b(An)m(y)33 b(v)-5 b(ariable)33 b(ma)m(y)150
e59452c7 153644283 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
6e51e0d0 15365Ft(declare)e Fu(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y)
e59452c7 15366-8 b(.)46 b(There)32 b(is)150 4393 y(no)h(maxim)m(um)g(limit)h(on)f
c302751c 15367(the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i(requiremen)
e59452c7 15368m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 4503
c302751c
CR
15369y(or)26 b(assigned)h(con)m(tiguously)-8 b(.)41 b(Indexed)25
15370b(arra)m(ys)i(are)f(referenced)g(using)g(in)m(tegers)i(\(including)e
e59452c7
CR
15371(arithmetic)150 4612 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell)
15372e(Arithmetic],)k(page)d(97\)\))h(and)d(are)i(zero-based;)k(asso)s
15373(ciativ)m(e)150 4722 y(arra)m(ys)37 b(use)f(arbitrary)g(strings.)59
9f178efb 15374b(Unless)36 b(otherwise)h(noted,)h(indexed)e(arra)m(y)h(indices)f(m)m
e59452c7
CR
15375(ust)g(b)s(e)g(non-)150 4831 y(negativ)m(e)d(in)m(tegers.)275
153764964 y(An)26 b(indexed)h(arra)m(y)h(is)f(created)h(automatically)j(if)c
d9e1f41e 15377(an)m(y)g(v)-5 b(ariable)28 b(is)g(assigned)f(to)h(using)f(the)g(syn)m
e59452c7
CR
15378(tax)390 5097 y Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p
15379Fj(value)150 5230 y Fu(The)34 b Fr(subscript)h Fu(is)g(treated)g(as)g
f6da9f85
CR
15380(an)f(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5
15381b(aluate)36 b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150
e59452c7
CR
153825340 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31
15383b(use)p eop end
15384%%Page: 100 106
15385TeXDict begin 100 105 bop 150 -116 a Fu(Chapter)30 b(6:)41
15386b(Bash)30 b(F)-8 b(eatures)2439 b(100)390 299 y Ft(declare)46
15387b(-a)h Fj(name)150 432 y Fu(The)30 b(syn)m(tax)390 565
15388y Ft(declare)46 b(-a)h Fj(name)p Ft([)p Fj(subscript)p
15389Ft(])150 698 y Fu(is)30 b(also)i(accepted;)g(the)e Fr(subscript)h
15390Fu(is)g(ignored.)150 831 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h
15391(created)h(using)390 964 y Ft(declare)46 b(-A)h Fj(name)275
153921097 y Fu(A)m(ttributes)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g
15393(arra)m(y)g(v)-5 b(ariable)47 b(using)e(the)h Ft(declare)e
15394Fu(and)h Ft(readonly)150 1207 y Fu(builtins.)40 b(Eac)m(h)31
15395b(attribute)g(applies)g(to)g(all)g(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)
15396-8 b(.)275 1340 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
15397(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 1473 y Fj(name)p
15398Ft(=\()p Fj(value1)44 b(value2)j Ft(...)f(\))150 1606
15399y Fu(where)33 b(eac)m(h)i Fr(v)-5 b(alue)40 b Fu(ma)m(y)34
15400b(b)s(e)g(of)g(the)g(form)f Ft([)p Fj(subscript)p Ft(]=)p
15401Fr(string)p Fu(.)48 b(Indexed)33 b(arra)m(y)h(assignmen)m(ts)h(do)150
154021716 y(not)26 b(require)f(an)m(ything)g(but)g Fr(string)p
15403Fu(.)39 b(When)25 b(assigning)h(to)g(indexed)f(arra)m(ys,)i(if)e(the)h
15404(optional)g(subscript)150 1825 y(is)h(supplied,)f(that)h(index)g(is)f
15405(assigned)h(to;)i(otherwise)e(the)g(index)g(of)f(the)h(elemen)m(t)i
15406(assigned)d(is)h(the)g(last)150 1935 y(index)j(assigned)h(to)g(b)m(y)f
15407(the)g(statemen)m(t)j(plus)c(one.)41 b(Indexing)30 b(starts)h(at)g
15408(zero.)275 2068 y(Eac)m(h)26 b Fr(v)-5 b(alue)32 b Fu(in)26
15409b(the)h(list)g(undergo)s(es)e(all)i(the)g(shell)f(expansions)g(describ)
15410s(ed)f(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.5)150 2178
15411y([Shell)j(Expansions],)h(page)g(24\).)275 2311 y(When)k(assigning)i
15412(to)g(an)f(asso)s(ciativ)m(e)i(arra)m(y)-8 b(,)39 b(the)d(w)m(ords)f
15413(in)h(a)h(comp)s(ound)d(assignmen)m(t)j(ma)m(y)g(b)s(e)150
154142420 y(either)31 b(assignmen)m(t)h(statemen)m(ts,)h(for)e(whic)m(h)g
15415(the)g(subscript)f(is)h(required,)g(or)g(a)g(list)h(of)f(w)m(ords)f
15416(that)i(is)150 2530 y(in)m(terpreted)g(as)g(a)g(sequence)f(of)h
d37a4722
CR
15417(alternating)h(k)m(eys)f(and)f(v)-5 b(alues:)44 b Fr(name)5
15418b Fu(=\()p Fr(k)m(ey1)40 b(v)-5 b(alue1)40 b(k)m(ey2)g(v)-5
e59452c7 15419b(alue2)156 2639 y Fu(.)22 b(.)g(.)47 b(\).)57 b(These)35
d37a4722
CR
15420b(are)i(treated)f(iden)m(tically)i(to)e Fr(name)5 b Fu(=\()36
15421b([)p Fr(k)m(ey1)7 b Fu(]=)p Fr(v)-5 b(alue1)46 b Fu([)p
15422Fr(k)m(ey2)7 b Fu(]=)p Fr(v)-5 b(alue2)51 b Fu(.)22 b(.)h(.)46
e59452c7 15423b(\).)57 b(The)150 2749 y(\014rst)25 b(w)m(ord)f(in)h(the)h(list)g
d37a4722 15424(determines)f(ho)m(w)g(the)h(remaining)f(w)m(ords)g(are)h(in)m
e59452c7 15425(terpreted;)h(all)f(assignmen)m(ts)g(in)150 2859 y(a)31
d37a4722
CR
15426b(list)f(m)m(ust)h(b)s(e)e(of)h(the)h(same)f(t)m(yp)s(e.)41
15427b(When)30 b(using)g(k)m(ey/v)-5 b(alue)32 b(pairs,)e(the)g(k)m(eys)h
e59452c7 15428(ma)m(y)g(not)f(b)s(e)g(missing)150 2968 y(or)g(empt)m(y;)h(a)g
d37a4722 15429(\014nal)f(missing)g(v)-5 b(alue)31 b(is)g(treated)g(lik)m(e)h(the)e
e59452c7 15430(empt)m(y)h(string.)275 3101 y(This)f(syn)m(tax)j(is)e(also)i(accepted)
d37a4722 15431g(b)m(y)f(the)f Ft(declare)f Fu(builtin.)44 b(Individual)31
e59452c7 15432b(arra)m(y)h(elemen)m(ts)h(ma)m(y)g(b)s(e)150 3211 y(assigned)e(to)g
d37a4722
CR
15433(using)f(the)g Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p
15434Fj(value)25 b Fu(syn)m(tax)31 b(in)m(tro)s(duced)e(ab)s(o)m(v)m(e.)275
e59452c7 154353344 y(When)h(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8
d37a4722 15436b(,)32 b(if)f Fr(name)36 b Fu(is)31 b(subscripted)e(b)m(y)i(a)g
e59452c7 15437(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 3453 y(n)m(um)m(b)s(er)43
d37a4722
CR
15438b(is)h(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)f(greater)i(than)e
15439(the)g(maxim)m(um)g(index)g(of)h Fr(name)p Fu(,)j(so)150
e59452c7 154403563 y(negativ)m(e)30 b(indices)d(coun)m(t)h(bac)m(k)g(from)f(the)g
d37a4722 15441(end)g(of)g(the)h(arra)m(y)-8 b(,)29 b(and)e(an)g(index)g(of)g(-1)h
e59452c7 15442(references)g(the)f(last)150 3673 y(elemen)m(t.)275 3806
d37a4722
CR
15443y(An)m(y)h(elemen)m(t)h(of)g(an)f(arra)m(y)g(ma)m(y)h(b)s(e)f
15444(referenced)g(using)g Ft(${)p Fj(name)p Ft([)p Fj(subscript)p
e59452c7 15445Ft(]})p Fu(.)35 b(The)27 b(braces)i(are)150 3915 y(required)f(to)j(a)m
d37a4722
CR
15446(v)m(oid)f(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion)
15447f(op)s(erators.)41 b(If)28 b(the)i Fr(subscript)g Fu(is)150
e59452c7 154484025 y(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)f(the)h(w)m(ord)f
d37a4722
CR
15449(expands)f(to)i(all)g(mem)m(b)s(ers)e(of)i(the)f(arra)m(y)h
15450Fr(name)p Fu(.)40 b(These)29 b(subscripts)f(di\013er)h(only)150
e59452c7 154514134 y(when)36 b(the)g(w)m(ord)g(app)s(ears)g(within)g(double)g
d37a4722 15452(quotes.)60 b(If)36 b(the)h(w)m(ord)f(is)g(double-quoted,)j
e59452c7 15453Ft(${)p Fj(name)p Ft([*]})150 4244 y Fu(expands)25 b(to)h(a)g(single)h
d37a4722
CR
15454(w)m(ord)e(with)g(the)h(v)-5 b(alue)26 b(of)g(eac)m(h)h(arra)m(y)f(mem)
15455m(b)s(er)f(separated)h(b)m(y)g(the)f(\014rst)g(c)m(harac-)150
e59452c7 154564354 y(ter)j(of)g(the)h Ft(IFS)e Fu(v)-5 b(ariable,)29
fc527055
CR
15457b(and)f Ft(${)p Fj(name)p Ft([@]})d Fu(expands)i(eac)m(h)i(elemen)m(t)h
15458(of)e Fr(name)33 b Fu(to)c(a)f(separate)h(w)m(ord.)150
e59452c7 154594463 y(When)j(there)h(are)f(no)g(arra)m(y)h(mem)m(b)s(ers,)f
6e51e0d0 15460Ft(${)p Fj(name)p Ft([@]})e Fu(expands)h(to)i(nothing.)47
e59452c7 15461b(If)31 b(the)i(double-quoted)150 4573 y(expansion)39
6e51e0d0 15462b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d(expansion)h(of)g(the)f
e59452c7 15463(\014rst)g(parameter)h(is)g(joined)f(with)h(the)150 4682
6e51e0d0
CR
15464y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e(and)g(the)h
15465(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f(with)150
e59452c7 154664792 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
122f603c 15467b(This)28 b(is)h(analogous)h(to)f(the)h(expansion)e(of)h(the)g(sp)s
e59452c7 15468(ecial)h(param-)150 4902 y(eters)g(`)p Ft(@)p Fu(')f(and)g(`)p
6e51e0d0
CR
15469Ft(*)p Fu('.)41 b Ft(${#)p Fj(name)p Ft([)p Fj(subscript)p
15470Ft(]})24 b Fu(expands)k(to)i(the)g(length)g(of)f Ft(${)p
15471Fj(name)p Ft([)p Fj(subscript)p Ft(]})p Fu(.)35 b(If)150
e59452c7 154725011 y Fr(subscript)28 b Fu(is)g(`)p Ft(@)p Fu(')f(or)h(`)p
8a0829e9
CR
15473Ft(*)p Fu(',)g(the)g(expansion)f(is)g(the)h(n)m(um)m(b)s(er)e(of)i
15474(elemen)m(ts)g(in)f(the)h(arra)m(y)-8 b(.)41 b(If)27
e59452c7 15475b(the)g Fr(subscript)150 5121 y Fu(used)34 b(to)h(reference)g(an)f
8a0829e9
CR
15476(elemen)m(t)i(of)f(an)f(indexed)g(arra)m(y)h(ev)-5 b(aluates)36
15477b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero,)i(it)150
e59452c7 154785230 y(is)c(in)m(terpreted)h(as)f(relativ)m(e)i(to)f(one)f(greater)h
8a0829e9 15479(than)f(the)h(maxim)m(um)f(index)f(of)h(the)h(arra)m(y)-8
e59452c7 15480b(,)33 b(so)g(negativ)m(e)150 5340 y(indices)d(coun)m(t)h(bac)m(k)h
8a0829e9 15481(from)e(the)g(end)g(of)g(the)h(arra)m(y)-8 b(,)31 b(and)f(an)g(index)g
e59452c7
CR
15482(of)h(-1)g(refers)f(to)h(the)g(last)g(elemen)m(t.)p eop
15483end
15484%%Page: 101 107
15485TeXDict begin 101 106 bop 150 -116 a Fu(Chapter)30 b(6:)41
15486b(Bash)30 b(F)-8 b(eatures)2439 b(101)275 299 y(Referencing)41
15487b(an)f(arra)m(y)h(v)-5 b(ariable)42 b(without)e(a)h(subscript)e(is)i
15488(equiv)-5 b(alen)m(t)42 b(to)f(referencing)g(with)g(a)150
15489408 y(subscript)35 b(of)h(0.)57 b(An)m(y)36 b(reference)g(to)h(a)f(v)-5
8a0829e9 15490b(ariable)36 b(using)g(a)g(v)-5 b(alid)36 b(subscript)f(is)h(legal,)j
e59452c7 15491(and)c Ft(bash)g Fu(will)150 518 y(create)d(an)e(arra)m(y)h(if)f
fffe80d4 15492(necessary)-8 b(.)275 659 y(An)35 b(arra)m(y)i(v)-5 b(ariable)37
e59452c7
CR
15493b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s(een)g
15494(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
fffe80d4
CR
15495769 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
15496910 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i
e59452c7
CR
15497(\(indices\))f(of)f(an)h(arra)m(y)g(as)f(w)m(ell)i(as)f(the)f(v)-5
15498b(alues.)41 b($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p
fffe80d4 15499Fi(})150 1020 y Fu(and)39 b($)p Fi({)p Fu(!)p Fr(name)5
e59452c7
CR
15500b Fu([*])p Fi(})43 b Fu(expand)c(to)i(the)f(indices)h(assigned)f(in)g
15501(arra)m(y)g(v)-5 b(ariable)41 b Fr(name)p Fu(.)70 b(The)39
fffe80d4 15502b(treatmen)m(t)150 1130 y(when)i(in)g(double)g(quotes)h(is)f(similar)h
e59452c7 15503(to)h(the)e(expansion)h(of)f(the)h(sp)s(ecial)g(parameters)g(`)p
fffe80d4
CR
15504Ft(@)p Fu(')g(and)f(`)p Ft(*)p Fu(')150 1239 y(within)30
15505b(double)g(quotes.)275 1381 y(The)25 b Ft(unset)g Fu(builtin)g(is)h
879213c6
CR
15506(used)f(to)i(destro)m(y)f(arra)m(ys.)40 b Ft(unset)29
15507b Fj(name)p Ft([)p Fj(subscript)p Ft(])22 b Fu(destro)m(ys)k(the)g
fffe80d4 15508(arra)m(y)150 1490 y(elemen)m(t)40 b(at)e(index)g Fr(subscript)p
879213c6 15509Fu(.)62 b(Negativ)m(e)41 b(subscripts)c(to)i(indexed)e(arra)m(ys)i(are)
fffe80d4 15510f(in)m(terpreted)h(as)f(de-)150 1600 y(scrib)s(ed)30
e59452c7
CR
15511b(ab)s(o)m(v)m(e.)42 b(Unsetting)31 b(the)g(last)g(elemen)m(t)h(of)f
15512(an)g(arra)m(y)g(v)-5 b(ariable)31 b(do)s(es)f(not)h(unset)f(the)h(v)-5
fffe80d4
CR
15513b(ariable.)150 1709 y Ft(unset)29 b Fj(name)p Fu(,)39
15514b(where)e Fr(name)43 b Fu(is)37 b(an)h(arra)m(y)-8 b(,)41
15515b(remo)m(v)m(es)e(the)f(en)m(tire)g(arra)m(y)-8 b(.)64
15516b Ft(unset)29 b Fj(name)p Ft([)p Fj(subscript)p Ft(])150
155171819 y Fu(b)s(eha)m(v)m(es)h(di\013eren)m(tly)g(dep)s(ending)d(on)j
15518(the)f(arra)m(y)h(t)m(yp)s(e)f(when)g(giv)m(en)h(a)f(subscript)g(of)g
15519(`)p Ft(*)p Fu(')g(or)h(`)p Ft(@)p Fu('.)40 b(When)150
155201928 y Fr(name)46 b Fu(is)40 b(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8
15521b(,)44 b(it)d(remo)m(v)m(es)h(the)f(elemen)m(t)h(with)e(k)m(ey)h(`)p
15522Ft(*)p Fu(')g(or)f(`)p Ft(@)p Fu('.)72 b(If)40 b Fr(name)45
15523b Fu(is)c(an)150 2038 y(indexed)30 b(arra)m(y)-8 b(,)31
15524b Ft(unset)e Fu(remo)m(v)m(es)j(all)f(of)g(the)f(elemen)m(ts,)i(but)e
15525(do)s(es)g(not)h(remo)m(v)m(e)h(the)e(arra)m(y)h(itself.)275
155262179 y(When)k(using)g(a)i(v)-5 b(ariable)36 b(name)g(with)g(a)g
15527(subscript)e(as)i(an)g(argumen)m(t)g(to)h(a)f(command,)h(suc)m(h)f(as)
15528150 2289 y(with)k Ft(unset)p Fu(,)h(without)e(using)h(the)g(w)m(ord)f
e59452c7 15529(expansion)h(syn)m(tax)g(describ)s(ed)f(ab)s(o)m(v)m(e,)44
fffe80d4 15530b(the)c(argumen)m(t)g(is)150 2399 y(sub)5 b(ject)25 b(to)h(the)g
e59452c7 15531(shell's)g(\014lename)f(expansion.)39 b(If)25 b(\014lename)h(expansion)
fffe80d4
CR
15532f(is)g(not)h(desired,)g(the)f(argumen)m(t)150 2508 y(should)k(b)s(e)h
15533(quoted.)275 2650 y(The)20 b Ft(declare)p Fu(,)h Ft(local)p
e59452c7
CR
15534Fu(,)h(and)e Ft(readonly)f Fu(builtins)h(eac)m(h)i(accept)g(a)g
15535Ft(-a)e Fu(option)h(to)h(sp)s(ecify)f(an)f(indexed)150
fffe80d4 155362759 y(arra)m(y)28 b(and)f(a)h Ft(-A)e Fu(option)i(to)g(sp)s(ecify)f
e59452c7
CR
15537(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 b(.)40 b(If)27
15538b(b)s(oth)g(options)h(are)g(supplied,)f Ft(-A)f Fu(tak)m(es)150
fffe80d4 155392869 y(precedence.)55 b(The)35 b Ft(read)f Fu(builtin)h(accepts)h(a)g
e59452c7 15540Ft(-a)e Fu(option)i(to)g(assign)f(a)g(list)h(of)f(w)m(ords)g(read)g
fffe80d4 15541(from)g(the)150 2978 y(standard)h(input)g(to)i(an)f(arra)m(y)-8
e59452c7 15542b(,)40 b(and)c(can)h(read)g(v)-5 b(alues)38 b(from)e(the)h(standard)g
fffe80d4 15543(input)f(in)m(to)i(individual)150 3088 y(arra)m(y)f(elemen)m(ts.)62
e59452c7
CR
15544b(The)36 b Ft(set)g Fu(and)h Ft(declare)d Fu(builtins)j(displa)m(y)g
15545(arra)m(y)g(v)-5 b(alues)37 b(in)g(a)g(w)m(a)m(y)h(that)g(allo)m(ws)150
fffe80d4
CR
155463197 y(them)30 b(to)h(b)s(e)f(reused)g(as)g(input.)150
155473449 y Fs(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150
155483608 y Fu(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m
124d67cd 15549(tly-visited)j(directories.)39 b(The)20 b Ft(pushd)g
fffe80d4 15550Fu(builtin)h(adds)g(directories)150 3718 y(to)42 b(the)f(stac)m(k)i(as)
124d67cd
CR
15551e(it)h(c)m(hanges)g(the)f(curren)m(t)g(directory)-8 b(,)45
15552b(and)40 b(the)i Ft(popd)e Fu(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)
fffe80d4 15553150 3827 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j
124d67cd 15554(the)e(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)
fffe80d4 1555541 b(The)150 3937 y Ft(dirs)34 b Fu(builtin)g(displa)m(ys)h(the)g(con)m
124d67cd 15556(ten)m(ts)i(of)e(the)g(directory)h(stac)m(k.)56 b(The)34
fffe80d4 15557b(curren)m(t)h(directory)g(is)g(alw)m(a)m(ys)150 4046
124d67cd 15558y(the)c Ft(")p Fu(top)p Ft(")f Fu(of)g(the)h(directory)g(stac)m(k.)275
fffe80d4 155594188 y(The)k(con)m(ten)m(ts)i(of)f(the)h(directory)f(stac)m(k)h(are)f
124d67cd 15560(also)h(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g
fffe80d4
CR
15561Ft(DIRSTACK)e Fu(shell)150 4297 y(v)-5 b(ariable.)150
155624503 y Fk(6.8.1)63 b(Directory)40 b(Stac)m(k)g(Builtins)150
155634679 y Ft(dirs)870 4817 y(dirs)47 b([-clpv])e([+)p Fj(N)i
15564Ft(|)h(-)p Fj(N)p Ft(])630 4955 y Fu(Displa)m(y)35 b(the)f(list)g(of)g
124d67cd 15565(curren)m(tly)g(remem)m(b)s(ered)f(directories.)51 b(Directories)36
fffe80d4 15566b(are)e(added)f(to)630 5064 y(the)28 b(list)h(with)f(the)g
124d67cd 15567Ft(pushd)f Fu(command;)i(the)f Ft(popd)f Fu(command)h(remo)m(v)m(es)h
fffe80d4 15568(directories)g(from)630 5174 y(the)i(list.)41 b(The)30
124d67cd 15569b(curren)m(t)g(directory)h(is)f(alw)m(a)m(ys)i(the)f(\014rst)e
fffe80d4 15570(directory)i(in)f(the)h(stac)m(k.)630 5340 y Ft(-c)384
124d67cd 15571b Fu(Clears)31 b(the)f(directory)h(stac)m(k)h(b)m(y)e(deleting)h(all)h
fffe80d4 15572(of)e(the)h(elemen)m(ts.)p eop end
e59452c7
CR
15573%%Page: 102 108
15574TeXDict begin 102 107 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
15575b(Bash)30 b(F)-8 b(eatures)2439 b(102)630 299 y Ft(-l)384
15576b Fu(Pro)s(duces)31 b(a)h(listing)h(using)e(full)h(pathnames;)h(the)f
15577(default)g(listing)h(format)1110 408 y(uses)d(a)h(tilde)g(to)g(denote)g
15578(the)f(home)h(directory)-8 b(.)630 575 y Ft(-p)384 b
15579Fu(Causes)30 b Ft(dirs)f Fu(to)i(prin)m(t)f(the)h(directory)g(stac)m(k)
15580h(with)e(one)g(en)m(try)h(p)s(er)e(line.)630 741 y Ft(-v)384
15581b Fu(Causes)36 b Ft(dirs)f Fu(to)i(prin)m(t)f(the)g(directory)h(stac)m
15582(k)h(with)e(one)h(en)m(try)f(p)s(er)f(line,)1110 850
15583y(pre\014xing)30 b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i(the)f
15584(stac)m(k.)630 1017 y Ft(+)p Fj(N)384 b Fu(Displa)m(ys)23
e59452c7 15585b(the)f Fr(N)10 b Fu(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h
fffe80d4 15586(left)g(of)g(the)g(list)g(prin)m(ted)1110 1126 y(b)m(y)30
e59452c7 15587b Ft(dirs)f Fu(when)h(in)m(v)m(ok)m(ed)i(without)e(options\),)h
fffe80d4 15588(starting)g(with)g(zero.)630 1292 y Ft(-)p Fj(N)384 b
e59452c7
CR
15589Fu(Displa)m(ys)47 b(the)g Fr(N)10 b Fu(th)46 b(directory)h(\(coun)m
15590(ting)g(from)f(the)g(righ)m(t)h(of)g(the)f(list)1110
fffe80d4
CR
155911402 y(prin)m(ted)25 b(b)m(y)g Ft(dirs)g Fu(when)f(in)m(v)m(ok)m(ed)j
15592(without)f(options\),)h(starting)g(with)e(zero.)150 1568
15593y Ft(popd)870 1706 y(popd)47 b([-n])f([+)p Fj(N)h Ft(|)h(-)p
15594Fj(N)p Ft(])630 1844 y Fu(Remo)m(v)m(es)34 b(elemen)m(ts)g(from)e(the)h
e59452c7 15595(directory)g(stac)m(k.)49 b(The)32 b(elemen)m(ts)i(are)f(n)m(um)m(b)s
fffe80d4 15596(ered)e(from)630 1953 y(0)38 b(starting)h(at)f(the)g(\014rst)f
e59452c7 15597(directory)h(listed)g(b)m(y)g Ft(dirs)p Fu(;)j(that)d(is,)i
fffe80d4
CR
15598Ft(popd)c Fu(is)i(equiv)-5 b(alen)m(t)39 b(to)630 2063
15599y Ft(popd)29 b(+0)p Fu(.)630 2201 y(When)j(no)g(argumen)m(ts)h(are)g
d37a4722 15600(giv)m(en,)h Ft(popd)d Fu(remo)m(v)m(es)j(the)f(top)f(directory)h(from)
fffe80d4
CR
15601f(the)g(stac)m(k)630 2310 y(and)e(c)m(hanges)h(to)g(the)g(new)f(top)g
15602(directory)-8 b(.)630 2448 y(Argumen)m(ts,)31 b(if)f(supplied,)f(ha)m
15603(v)m(e)j(the)e(follo)m(wing)i(meanings:)630 2614 y Ft(-n)384
e59452c7 15604b Fu(Suppresses)27 b(the)j(normal)g(c)m(hange)g(of)g(directory)g(when)e
fffe80d4 15605(remo)m(ving)j(directo-)1110 2724 y(ries)f(from)g(the)h(stac)m(k,)h(so)
e59452c7 15606f(that)g(only)f(the)h(stac)m(k)g(is)g(manipulated.)630
fffe80d4 156072890 y Ft(+)p Fj(N)384 b Fu(Remo)m(v)m(es)22 b(the)f
e59452c7 15608Fr(N)10 b Fu(th)20 b(directory)g(\(coun)m(ting)i(from)e(the)g(left)h
fffe80d4 15609(of)g(the)f(list)h(prin)m(ted)1110 3000 y(b)m(y)30 b
e59452c7 15610Ft(dirs)p Fu(\),)g(starting)h(with)f(zero,)i(from)e(the)g(stac)m(k.)630
fffe80d4 156113166 y Ft(-)p Fj(N)384 b Fu(Remo)m(v)m(es)46 b(the)g
e59452c7 15612Fr(N)10 b Fu(th)44 b(directory)h(\(coun)m(ting)h(from)f(the)g(righ)m(t)
fffe80d4 15613g(of)g(the)g(list)1110 3275 y(prin)m(ted)30 b(b)m(y)g
e59452c7 15614Ft(dirs)p Fu(\),)g(starting)h(with)f(zero,)i(from)e(the)g(stac)m(k.)630
fffe80d4 156153442 y(If)d(the)h(top)g(elemen)m(t)h(of)f(the)g(directory)g(stac)m(k)h
e59452c7 15616(is)e(mo)s(di\014ed,)h(and)f(the)h Ft(-n)f Fu(option)h(w)m(as)g(not)630
fffe80d4 156173551 y(supplied,)j Ft(popd)g Fu(uses)g(the)h Ft(cd)f
e59452c7 15618Fu(builtin)g(to)i(c)m(hange)g(to)f(the)g(directory)g(at)h(the)f(top)g
fffe80d4 15619(of)g(the)630 3661 y(stac)m(k.)42 b(If)30 b(the)h Ft(cd)e
e59452c7 15620Fu(fails,)j Ft(popd)d Fu(returns)g(a)i(non-zero)g(v)-5
fffe80d4 15621b(alue.)630 3799 y(Otherwise,)34 b Ft(popd)f Fu(returns)f(an)h
e59452c7 15622(unsuccessful)g(status)g(if)h(an)f(in)m(v)-5 b(alid)34
fffe80d4 15623b(option)g(is)g(encoun-)630 3908 y(tered,)39 b(the)d(directory)h(stac)m
e59452c7 15624(k)i(is)d(empt)m(y)-8 b(,)39 b(or)e(a)g(non-existen)m(t)h(directory)f
fffe80d4
CR
15625(stac)m(k)h(en)m(try)f(is)630 4018 y(sp)s(eci\014ed.)630
156264156 y(If)32 b(the)h Ft(popd)f Fu(command)h(is)g(successful,)g(Bash)g
e59452c7 15627(runs)f Ft(dirs)f Fu(to)j(sho)m(w)f(the)g(\014nal)f(con)m(ten)m(ts)630
fffe80d4
CR
156284265 y(of)f(the)f(directory)h(stac)m(k,)h(and)e(the)g(return)g(status)g
15629(is)h(0.)150 4431 y Ft(pushd)870 4569 y(pushd)46 b([-n])h([+)p
15630Fj(N)g Ft(|)g Fj(-N)h Ft(|)f Fj(dir)p Ft(])630 4707 y
e59452c7
CR
15631Fu(Adds)27 b(a)h(directory)h(to)g(the)f(top)g(of)g(the)g(directory)h
15632(stac)m(k,)h(or)e(rotates)h(the)f(stac)m(k,)j(making)630
fffe80d4 156334817 y(the)37 b(new)g(top)g(of)g(the)g(stac)m(k)i(the)e(curren)m(t)f(w)
e59452c7 15634m(orking)i(directory)-8 b(.)61 b(With)38 b(no)e(argumen)m(ts,)630
fffe80d4
CR
156354926 y Ft(pushd)29 b Fu(exc)m(hanges)j(the)e(top)h(t)m(w)m(o)h(elemen)m
15636(ts)f(of)g(the)f(directory)h(stac)m(k.)630 5064 y(Argumen)m(ts,)g(if)f
e59452c7 15637(supplied,)f(ha)m(v)m(e)j(the)e(follo)m(wing)i(meanings:)630
fffe80d4
CR
156385230 y Ft(-n)384 b Fu(Suppresses)24 b(the)j(normal)f(c)m(hange)h(of)g
15639(directory)f(when)g(rotating)h(or)f(adding)1110 5340
d37a4722 15640y(directories)31 b(to)h(the)e(stac)m(k,)i(so)f(that)g(only)f(the)h
fffe80d4 15641(stac)m(k)h(is)e(manipulated.)p eop end
e59452c7
CR
15642%%Page: 103 109
15643TeXDict begin 103 108 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
15644b(Bash)30 b(F)-8 b(eatures)2439 b(103)630 299 y Ft(+)p
15645Fj(N)384 b Fu(Brings)29 b(the)f Fr(N)10 b Fu(th)29 b(directory)g
15646(\(coun)m(ting)h(from)e(the)g(left)i(of)e(the)h(list)g(prin)m(ted)1110
15647408 y(b)m(y)34 b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f
15648(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i(the)1110
15649518 y(stac)m(k.)630 680 y Ft(-)p Fj(N)384 b Fu(Brings)23
15650b(the)g Fr(N)10 b Fu(th)23 b(directory)h(\(coun)m(ting)g(from)e(the)i
15651(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110 789 y(b)m(y)34
15652b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f(top)g(of)h
15653(the)f(list)h(b)m(y)f(rotating)i(the)1110 899 y(stac)m(k.)630
156541060 y Fj(dir)336 b Fu(Mak)m(es)32 b Fr(dir)k Fu(b)s(e)30
15655b(the)g(top)h(of)f(the)h(stac)m(k.)630 1222 y(After)39
15656b(the)g(stac)m(k)h(has)e(b)s(een)g(mo)s(di\014ed,)i(if)f(the)g
15657Ft(-n)f Fu(option)h(w)m(as)g(not)g(supplied,)g Ft(pushd)630
156581332 y Fu(uses)29 b(the)h Ft(cd)f Fu(builtin)g(to)h(c)m(hange)g(to)h
15659(the)e(directory)h(at)g(the)g(top)g(of)f(the)h(stac)m(k.)42
15660b(If)29 b(the)h Ft(cd)630 1441 y Fu(fails,)h Ft(pushd)e
15661Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 1577 y(Otherwise,)34
e59452c7 15662b(if)g(no)f(argumen)m(ts)h(are)g(supplied,)f Ft(pushd)f
fffe80d4 15663Fu(returns)g(0)i(unless)f(the)g(directory)630 1686 y(stac)m(k)g(is)f
e59452c7 15664(empt)m(y)-8 b(.)46 b(When)32 b(rotating)h(the)f(directory)g(stac)m(k,)
fffe80d4 15665i Ft(pushd)d Fu(returns)f(0)j(unless)e(the)630 1796 y(directory)g(stac)
e59452c7 15666m(k)h(is)e(empt)m(y)h(or)f(a)h(non-existen)m(t)h(directory)f(stac)m(k)g
fffe80d4 15667(elemen)m(t)h(is)f(sp)s(eci\014ed.)630 1931 y(If)e(the)g
e59452c7
CR
15668Ft(pushd)f Fu(command)h(is)g(successful,)h(Bash)f(runs)f
15669Ft(dirs)g Fu(to)i(sho)m(w)f(the)g(\014nal)g(con)m(ten)m(ts)630
fffe80d4
CR
156702041 y(of)i(the)f(directory)h(stac)m(k.)150 2285 y Fs(6.9)68
15671b(Con)l(trolling)47 b(the)e(Prompt)150 2444 y Fu(Bash)37
e59452c7
CR
15672b(examines)h(the)f(v)-5 b(alue)37 b(of)g(the)h(arra)m(y)f(v)-5
15673b(ariable)38 b Ft(PROMPT_COMMAND)33 b Fu(just)j(b)s(efore)h(prin)m
fffe80d4 15674(ting)g(eac)m(h)150 2554 y(primary)c(prompt.)49 b(If)33
e59452c7
CR
15675b(an)m(y)h(elemen)m(ts)h(in)f Ft(PROMPT_COMMAND)29 b
15676Fu(are)34 b(set)h(and)e(non-n)m(ull,)h(Bash)g(executes)150
fffe80d4 156772664 y(eac)m(h)e(v)-5 b(alue,)31 b(in)f(n)m(umeric)g(order,)g(just)g
d37a4722 15678(as)g(if)h(it)g(had)e(b)s(een)h(t)m(yp)s(ed)g(on)g(the)h(command)f
fffe80d4 15679(line.)275 2800 y(In)d(addition,)j(the)f(follo)m(wing)h(table)f
d37a4722 15680(describ)s(es)f(the)h(sp)s(ecial)g(c)m(haracters)h(whic)m(h)f(can)f
fffe80d4 15681(app)s(ear)g(in)h(the)150 2910 y(prompt)g(v)-5 b(ariables)32
d37a4722 15682b Ft(PS0)p Fu(,)d Ft(PS1)p Fu(,)h Ft(PS2)p Fu(,)g(and)f
fffe80d4
CR
15683Ft(PS4)p Fu(:)150 3072 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m
15684(haracter.)150 3234 y Ft(\\d)384 b Fu(The)30 b(date,)h(in)f
d37a4722
CR
15685Ft(")p Fu(W)-8 b(eekda)m(y)32 b(Mon)m(th)f(Date)p Ft(")h
15686Fu(format)f(\(e.g.,)h Ft(")p Fu(T)-8 b(ue)30 b(Ma)m(y)h(26)p
fffe80d4
CR
15687Ft(")p Fu(\).)150 3396 y Ft(\\D{)p Fj(format)p Ft(})630
156883505 y Fu(The)c Fr(format)i Fu(is)f(passed)e(to)i Ft(strftime)p
e59452c7 15689Fu(\(3\))f(and)f(the)i(result)f(is)g(inserted)g(in)m(to)h(the)g(prompt)
fffe80d4 15690630 3615 y(string;)42 b(an)d(empt)m(y)f Fr(format)j Fu(results)d(in)g
e59452c7 15691(a)h(lo)s(cale-sp)s(eci\014c)h(time)f(represen)m(tation.)65
fffe80d4 15692b(The)630 3724 y(braces)31 b(are)f(required.)150 3886
e59452c7 15693y Ft(\\e)384 b Fu(An)30 b(escap)s(e)h(c)m(haracter.)150
fffe80d4
CR
156944047 y Ft(\\h)384 b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e
15695(`.'.)150 4209 y Ft(\\H)384 b Fu(The)30 b(hostname.)150
156964371 y Ft(\\j)384 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(jobs)g(curren)m
15697(tly)h(managed)g(b)m(y)f(the)g(shell.)150 4532 y Ft(\\l)384
d37a4722 15698b Fu(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g
fffe80d4
CR
15699(name.)150 4694 y Ft(\\n)384 b Fu(A)30 b(newline.)150
157004855 y Ft(\\r)384 b Fu(A)30 b(carriage)i(return.)150
157015017 y Ft(\\s)384 b Fu(The)22 b(name)g(of)h(the)f(shell,)i(the)f
d37a4722 15702(basename)f(of)h Ft($0)f Fu(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f
fffe80d4
CR
15703(\014nal)e(slash\).)150 5178 y Ft(\\t)384 b Fu(The)30
15704b(time,)h(in)f(24-hour)h(HH:MM:SS)g(format.)150 5340
15705y Ft(\\T)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)p
15706eop end
e59452c7
CR
15707%%Page: 104 110
15708TeXDict begin 104 109 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
15709b(Bash)30 b(F)-8 b(eatures)2439 b(104)150 299 y Ft(\\@)384
15710b Fu(The)30 b(time,)h(in)f(12-hour)h(am/pm)f(format.)150
15711456 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f(24-hour)h(HH:MM)g(format.)
15712150 613 y Ft(\\u)384 b Fu(The)30 b(username)g(of)g(the)h(curren)m(t)f
15713(user.)150 770 y Ft(\\v)384 b Fu(The)30 b(v)m(ersion)h(of)f(Bash)h
15714(\(e.g.,)h(2.00\))150 927 y Ft(\\V)384 b Fu(The)30 b(release)i(of)e
15715(Bash,)h(v)m(ersion)g Ft(+)f Fu(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\))
15716150 1084 y Ft(\\w)384 b Fu(The)27 b(v)-5 b(alue)28 b(of)g(the)g
e59452c7
CR
15717Ft(PWD)f Fu(shell)h(v)-5 b(ariable)28 b(\()p Ft($PWD)p
15718Fu(\),)g(with)g Ft($HOME)e Fu(abbreviated)i(with)f(a)h(tilde)630
fffe80d4
CR
157191194 y(\(uses)i(the)h Ft($PROMPT_DIRTRIM)26 b Fu(v)-5
15720b(ariable\).)150 1351 y Ft(\\W)384 b Fu(The)30 b(basename)h(of)f
e59452c7 15721Ft($PWD)p Fu(,)g(with)g Ft($HOME)f Fu(abbreviated)h(with)g(a)h(tilde.)
fffe80d4
CR
15722150 1508 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i
15723(this)f(command.)150 1665 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m
15724(b)s(er)f(of)i(this)f(command.)150 1822 y Ft(\\$)384
e59452c7 15725b Fu(If)30 b(the)g(e\013ectiv)m(e)j(uid)d(is)g(0,)h Ft(#)p
fffe80d4 15726Fu(,)g(otherwise)g Ft($)p Fu(.)150 1979 y Ft(\\)p Fj(nnn)288
e59452c7 15727b Fu(The)30 b(c)m(haracter)i(whose)e(ASCI)s(I)f(co)s(de)h(is)h(the)f(o)
fffe80d4
CR
15728s(ctal)i(v)-5 b(alue)31 b Fr(nnn)p Fu(.)150 2137 y Ft(\\\\)384
15729b Fu(A)30 b(bac)m(kslash.)150 2294 y Ft(\\[)384 b Fu(Begin)38
d37a4722
CR
15730b(a)f(sequence)g(of)g(non-prin)m(ting)g(c)m(haracters.)61
15731b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)g(a)630
fffe80d4
CR
157322403 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.)
15733150 2560 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m
15734(ting)g(c)m(haracters.)275 2717 y(The)25 b(command)h(n)m(um)m(b)s(er)f
d37a4722 15735(and)h(the)g(history)g(n)m(um)m(b)s(er)f(are)i(usually)f(di\013eren)m
fffe80d4 15736(t:)39 b(the)26 b(history)g(n)m(um)m(b)s(er)150 2827
d37a4722 15737y(of)h(a)f(command)h(is)f(its)h(p)s(osition)f(in)g(the)h(history)f
fc527055 15738(list,)i(whic)m(h)f(ma)m(y)g(include)f(commands)g(restored)g(from)150
fffe80d4
CR
157392937 y(the)39 b(history)h(\014le)f(\(see)h(Section)g(9.1)h([Bash)e
15740(History)h(F)-8 b(acilities],)45 b(page)40 b(151\),)j(while)d(the)f
15741(command)150 3046 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g
fc527055 15742(the)g(sequence)h(of)f(commands)g(executed)h(during)e(the)i(curren)m(t)
fffe80d4 15743f(shell)150 3156 y(session.)275 3289 y(After)28 b(the)g(string)g(is)g
e59452c7 15744(deco)s(ded,)g(it)g(is)g(expanded)f(via)i(parameter)f(expansion,)h
fffe80d4 15745(command)f(substitu-)150 3399 y(tion,)g(arithmetic)f(expansion,)g(and)e
e59452c7 15746(quote)i(remo)m(v)-5 b(al,)29 b(sub)5 b(ject)25 b(to)i(the)f(v)-5
fffe80d4 15747b(alue)27 b(of)f(the)g Ft(promptvars)e Fu(shell)150 3508
e59452c7
CR
15748y(option)i(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)j(page)e
15749(70\).)41 b(This)25 b(can)h(ha)m(v)m(e)h(un)m(w)m(an)m(ted)f(side)g
fffe80d4 15750(e\013ects)150 3618 y(if)i(escap)s(ed)f(p)s(ortions)g(of)h(the)g
e59452c7 15751(string)f(app)s(ear)g(within)g(command)h(substitution)f(or)h(con)m
fffe80d4
CR
15752(tain)g(c)m(haracters)150 3727 y(sp)s(ecial)j(to)g(w)m(ord)f
15753(expansion.)150 3966 y Fs(6.10)68 b(The)45 b(Restricted)h(Shell)150
157544125 y Fu(If)34 b(Bash)g(is)g(started)g(with)g(the)g(name)h
d37a4722 15755Ft(rbash)p Fu(,)e(or)h(the)h Ft(--restricted)30 b Fu(or)k
fffe80d4 15756Ft(-r)g Fu(option)g(is)g(supplied)f(at)150 4235 y(in)m(v)m(o)s(cation,)
d37a4722
CR
15757d(the)d(shell)g(b)s(ecomes)h(restricted.)40 b(A)27 b(restricted)h
15758(shell)f(is)g(used)f(to)i(set)f(up)f(an)h(en)m(vironmen)m(t)150
fffe80d4 157594344 y(more)g(con)m(trolled)i(than)e(the)g(standard)g(shell.)40
d37a4722 15760b(A)27 b(restricted)h(shell)f(b)s(eha)m(v)m(es)h(iden)m(tically)h(to)f
fffe80d4 15761Ft(bash)e Fu(with)150 4454 y(the)31 b(exception)g(that)g(the)g(follo)m
d37a4722 15762(wing)h(are)e(disallo)m(w)m(ed)i(or)e(not)h(p)s(erformed:)225
fffe80d4
CR
157634587 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)g(the)f
15764Ft(cd)g Fu(builtin.)225 4721 y Fq(\017)60 b Fu(Setting)33
d37a4722
CR
15765b(or)g(unsetting)f(the)h(v)-5 b(alues)33 b(of)f(the)h
15766Ft(SHELL)p Fu(,)f Ft(PATH)p Fu(,)g Ft(HISTFILE)p Fu(,)f
15767Ft(ENV)p Fu(,)h(or)g Ft(BASH_ENV)e Fu(v)-5 b(ari-)330
fffe80d4
CR
157684830 y(ables.)225 4964 y Fq(\017)60 b Fu(Sp)s(ecifying)30
15769b(command)g(names)g(con)m(taining)i(slashes.)225 5097
d37a4722
CR
15770y Fq(\017)60 b Fu(Sp)s(ecifying)30 b(a)h(\014lename)f(con)m(taining)i
15771(a)f(slash)f(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(.)h
fffe80d4 15772Fu(builtin)e(command.)225 5230 y Fq(\017)60 b Fu(Sp)s(ecifying)33
d37a4722 15773b(a)i(\014lename)f(con)m(taining)h(a)g(slash)e(as)i(an)e(argumen)m(t)i
fffe80d4
CR
15774(to)g(the)f Ft(history)e Fu(builtin)h(com-)330 5340 y(mand.)p
15775eop end
e59452c7
CR
15776%%Page: 105 111
15777TeXDict begin 105 110 bop 150 -116 a Fu(Chapter)30 b(6:)41
15778b(Bash)30 b(F)-8 b(eatures)2439 b(105)225 299 y Fq(\017)60
fffe80d4
CR
15779b Fu(Sp)s(ecifying)32 b(a)g(\014lename)h(con)m(taining)h(a)e(slash)g
15780(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(-p)g Fu(option)h(to)g(the)f
15781Ft(hash)330 408 y Fu(builtin)e(command.)225 548 y Fq(\017)60
15782b Fu(Imp)s(orting)30 b(function)g(de\014nitions)g(from)f(the)i(shell)g
15783(en)m(vironmen)m(t)g(at)g(startup.)225 687 y Fq(\017)60
e59452c7
CR
15784b Fu(P)m(arsing)31 b(the)f(v)-5 b(alue)31 b(of)g Ft(SHELLOPTS)d
15785Fu(from)h(the)i(shell)g(en)m(vironmen)m(t)g(at)g(startup.)225
fffe80d4 15786826 y Fq(\017)60 b Fu(Redirecting)31 b(output)f(using)g(the)h(`)p
e59452c7
CR
15787Ft(>)p Fu(',)g(`)p Ft(>|)p Fu(',)f(`)p Ft(<>)p Fu(',)h(`)p
15788Ft(>&)p Fu(',)f(`)p Ft(&>)p Fu(',)h(and)e(`)p Ft(>>)p
fffe80d4 15789Fu(')i(redirection)g(op)s(erators.)225 965 y Fq(\017)60
e59452c7 15790b Fu(Using)31 b(the)f Ft(exec)f Fu(builtin)h(to)h(replace)h(the)e
fffe80d4 15791(shell)h(with)f(another)h(command.)225 1104 y Fq(\017)60
e59452c7
CR
15792b Fu(Adding)24 b(or)g(deleting)i(builtin)e(commands)g(with)h(the)f
15793Ft(-f)g Fu(and)g Ft(-d)g Fu(options)h(to)h(the)e Ft(enable)f
fffe80d4 15794Fu(builtin.)225 1243 y Fq(\017)60 b Fu(Using)31 b(the)f
e59452c7 15795Ft(enable)f Fu(builtin)h(command)g(to)h(enable)g(disabled)f(shell)g
fffe80d4 15796(builtins.)225 1382 y Fq(\017)60 b Fu(Sp)s(ecifying)30
e59452c7 15797b(the)g Ft(-p)g Fu(option)h(to)g(the)g Ft(command)d Fu(builtin.)225
fffe80d4
CR
157981521 y Fq(\017)60 b Fu(T)-8 b(urning)29 b(o\013)i(restricted)g(mo)s(de)
15799f(with)g(`)p Ft(set)g(+r)p Fu(')g(or)g(`)p Ft(shopt)f(-u)h
15800(restricted_shell)p Fu('.)275 1695 y(These)g(restrictions)h(are)g
15801(enforced)f(after)h(an)m(y)g(startup)f(\014les)g(are)h(read.)275
158021838 y(When)j(a)i(command)e(that)i(is)f(found)f(to)h(b)s(e)g(a)g(shell)
15803g(script)g(is)g(executed)h(\(see)g(Section)g(3.8)g([Shell)150
3011048a 158041948 y(Scripts],)25 b(page)e(46\),)j Ft(rbash)c Fu(turns)g(o\013)i(an)m
fffe80d4
CR
15805(y)f(restrictions)h(in)f(the)g(shell)h(spa)m(wned)e(to)i(execute)g(the)
15806g(script.)275 2092 y(The)32 b(restricted)h(shell)g(mo)s(de)g(is)g(only)
15807g(one)g(comp)s(onen)m(t)g(of)g(a)g(useful)f(restricted)i(en)m(vironmen)
15808m(t.)49 b(It)150 2201 y(should)22 b(b)s(e)f(accompanied)j(b)m(y)e
15809(setting)i Ft(PATH)d Fu(to)j(a)f(v)-5 b(alue)23 b(that)g(allo)m(ws)h
15810(execution)f(of)g(only)g(a)g(few)f(v)m(eri\014ed)150
158112311 y(commands)35 b(\(commands)g(that)h(allo)m(w)g(shell)f(escap)s(es)
15812h(are)f(particularly)h(vulnerable\),)h(c)m(hanging)f(the)150
158132420 y(curren)m(t)28 b(directory)g(to)h(a)f(non-writable)g(directory)g
e59452c7 15814(other)g(than)g Ft($HOME)e Fu(after)j(login,)g(not)f(allo)m(wing)i(the)
fffe80d4 15815150 2530 y(restricted)25 b(shell)g(to)h(execute)g(shell)f(scripts,)h
e59452c7 15816(and)e(cleaning)i(the)f(en)m(vironmen)m(t)h(of)f(v)-5
fffe80d4 15817b(ariables)25 b(that)g(cause)150 2640 y(some)31 b(commands)f(to)h(mo)s
e59452c7 15818(dify)e(their)i(b)s(eha)m(vior)f(\(e.g.,)j Ft(VISUAL)28
fffe80d4 15819b Fu(or)j Ft(PAGER)p Fu(\).)275 2783 y(Mo)s(dern)e(systems)g(pro)m
e59452c7 15820(vide)h(more)g(secure)g(w)m(a)m(ys)g(to)h(implemen)m(t)f(a)g
fffe80d4 15821(restricted)h(en)m(vironmen)m(t,)f(suc)m(h)150 2893 y(as)h
e59452c7 15822Ft(jails)p Fu(,)e Ft(zones)p Fu(,)g(or)h Ft(containers)p
fffe80d4
CR
15823Fu(.)150 3148 y Fs(6.11)68 b(Bash)45 b(POSIX)f(Mo)t(de)150
158243307 y Fu(Starting)39 b(Bash)f(with)g(the)h Ft(--posix)d
e59452c7 15825Fu(command-line)j(option)g(or)f(executing)h(`)p Ft(set)30
fffe80d4 15826b(-o)g(posix)p Fu(')37 b(while)150 3417 y(Bash)26 b(is)g(running)e
e59452c7 15827(will)j(cause)f(Bash)g(to)h(conform)f(more)g(closely)h(to)g(the)f
fffe80d4 15828Fm(posix)f Fu(standard)g(b)m(y)h(c)m(hanging)150 3526
e59452c7
CR
15829y(the)31 b(b)s(eha)m(vior)f(to)h(matc)m(h)g(that)g(sp)s(eci\014ed)f(b)m
15830(y)g Fm(posix)g Fu(in)g(areas)h(where)f(the)h(Bash)f(default)h
fffe80d4 15831(di\013ers.)275 3670 y(When)f(in)m(v)m(ok)m(ed)h(as)g
52e46969 15832Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e Fu(mo)s(de)h(after)h
fffe80d4 15833(reading)g(the)f(startup)g(\014les.)275 3814 y(The)f(follo)m(wing)j
52e46969 15834(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)p Fm(posix)h
fffe80d4 15835Fu(mo)s(de')h(is)f(in)g(e\013ect:)199 3957 y(1.)61 b(Bash)31
52e46969 15836b(ensures)e(that)i(the)f Ft(POSIXLY_CORRECT)d Fu(v)-5
fffe80d4 15837b(ariable)31 b(is)f(set.)199 4096 y(2.)61 b(When)28 b(a)i(command)e(in)
52e46969 15838g(the)h(hash)f(table)i(no)e(longer)h(exists,)h(Bash)f(will)g(re-searc)m
fffe80d4 15839(h)h Ft($PATH)d Fu(to)i(\014nd)330 4206 y(the)i(new)e(lo)s(cation.)43
52e46969 15840b(This)29 b(is)i(also)g(a)m(v)-5 b(ailable)33 b(with)d(`)p
fffe80d4 15841Ft(shopt)f(-s)h(checkhash)p Fu('.)199 4345 y(3.)61 b(Bash)36
d37a4722 15842b(will)g(not)g(insert)g(a)g(command)f(without)h(the)g(execute)h(bit)f
fffe80d4 15843(set)g(in)m(to)h(the)f(command)g(hash)330 4455 y(table,)c(ev)m(en)f(if)
d37a4722 15844f(it)h(returns)e(it)i(as)g(a)f(\(last-ditc)m(h\))j(result)d(from)g(a)h
fffe80d4 15845Ft($PATH)e Fu(searc)m(h.)199 4594 y(4.)61 b(The)42 b(message)h(prin)m
d37a4722 15846(ted)e(b)m(y)h(the)g(job)g(con)m(trol)i(co)s(de)e(and)f(builtins)h
fffe80d4
CR
15847(when)f(a)h(job)g(exits)h(with)f(a)330 4703 y(non-zero)31
15848b(status)g(is)f(`Done\(status\)'.)199 4843 y(5.)61 b(The)40
d37a4722
CR
15849b(message)h(prin)m(ted)f(b)m(y)g(the)h(job)f(con)m(trol)h(co)s(de)g
15850(and)f(builtins)f(when)h(a)g(job)g(is)h(stopp)s(ed)e(is)330
fffe80d4 158514952 y(`Stopp)s(ed\()p Fr(signame)5 b Fu(\)',)31 b(where)f
d37a4722 15852Fr(signame)36 b Fu(is,)31 b(for)f(example,)h Ft(SIGTSTP)p
fffe80d4 15853Fu(.)199 5091 y(6.)61 b(Alias)31 b(expansion)g(is)f(alw)m(a)m(ys)i
d37a4722 15854(enabled,)e(ev)m(en)i(in)e(non-in)m(teractiv)m(e)j(shells.)199
fffe80d4 158555230 y(7.)61 b(Reserv)m(ed)40 b(w)m(ords)g(app)s(earing)f(in)h(a)g(con)
9e6c30de 15856m(text)i(where)d(reserv)m(ed)h(w)m(ords)f(are)i(recognized)g(do)f(not)
fffe80d4
CR
15857330 5340 y(undergo)30 b(alias)h(expansion.)p eop end
15858%%Page: 106 112
15859TeXDict begin 106 111 bop 150 -116 a Fu(Chapter)30 b(6:)41
15860b(Bash)30 b(F)-8 b(eatures)2439 b(106)199 299 y(8.)61
6e51e0d0
CR
15861b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g Fu(expansions)g(of)i
15862(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n)m(um)m(b)s(er)f(and)g(`)p
fffe80d4 15863Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(')h(are)330 408 y(enabled,)26
ac18b312 15864b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e(on)i(the)g(v)-5
6e51e0d0 15865b(alues)25 b(of)g Ft(PS1)f Fu(and)h Ft(PS2)f Fu(regardless)330
fffe80d4
CR
15866518 y(of)31 b(the)f(setting)i(of)e(the)h Ft(promptvars)c
15867Fu(option.)199 646 y(9.)61 b(The)30 b Fm(posix)g Fu(startup)f(\014les)i
15868(are)g(executed)g(\()p Ft($ENV)p Fu(\))f(rather)g(than)g(the)h(normal)f
15869(Bash)g(\014les.)154 774 y(10.)61 b(Tilde)30 b(expansion)g(is)f(only)h
15870(p)s(erformed)f(on)h(assignmen)m(ts)g(preceding)g(a)g(command)g(name,)g
15871(rather)330 883 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)
15872e(the)h(line.)154 1011 y(11.)61 b(The)30 b(default)g(history)h(\014le)f
15873(is)h Ft(~/.sh_history)26 b Fu(\(this)31 b(is)f(the)h(default)g(v)-5
15874b(alue)30 b(of)h Ft($HISTFILE)p Fu(\).)154 1139 y(12.)61
e59452c7
CR
15875b(Redirection)25 b(op)s(erators)f(do)g(not)g(p)s(erform)f(\014lename)h
15876(expansion)g(on)g(the)g(w)m(ord)f(in)h(the)g(redirection)330
fffe80d4
CR
158771249 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154
158781377 y(13.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e
d61300ec 15879(w)m(ord)h(splitting)h(on)f(the)h(w)m(ord)f(in)g(the)g(redirection.)154
fffe80d4 158801504 y(14.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5
b52e30b8 15881b(alid)35 b(shell)f Ft(name)p Fu(s.)52 b(That)34 b(is,)i(they)f(ma)m(y)
fffe80d4 15882g(not)g(con)m(tain)g(c)m(haracters)330 1614 y(other)e(than)g(letters,)h
b52e30b8 15883(digits,)h(and)d(underscores,)h(and)f(ma)m(y)h(not)g(start)h(with)e(a)h
fffe80d4 15884(digit.)49 b(Declaring)330 1724 y(a)31 b(function)f(with)g(an)g(in)m(v)
b52e30b8 15885-5 b(alid)31 b(name)g(causes)f(a)h(fatal)h(syn)m(tax)f(error)f(in)g
fffe80d4 15886(non-in)m(teractiv)m(e)j(shells.)154 1851 y(15.)61 b(F)-8
b52e30b8
CR
15887b(unction)31 b(names)f(ma)m(y)h(not)g(b)s(e)f(the)g(same)h(as)g(one)f
15888(of)h(the)f Fm(posix)g Fu(sp)s(ecial)h(builtins.)154
fffe80d4 158891979 y(16.)61 b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e(are)i(found)e
879213c6 15890(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s(okup.)154
fffe80d4 158912107 y(17.)61 b(When)48 b(prin)m(ting)g(shell)h(function)f
124d67cd 15892(de\014nitions)g(\(e.g.,)55 b(b)m(y)48 b Ft(type)p Fu(\),)k(Bash)d(do)s
fffe80d4
CR
15893(es)f(not)h(prin)m(t)f(the)330 2217 y Ft(function)28
15894b Fu(k)m(eyw)m(ord.)154 2345 y(18.)61 b(Literal)28 b(tildes)g(that)f
b52e30b8
CR
15895(app)s(ear)f(as)i(the)f(\014rst)f(c)m(haracter)j(in)d(elemen)m(ts)j(of)
15896e(the)g Ft(PATH)f Fu(v)-5 b(ariable)27 b(are)h(not)330
fffe80d4
CR
158972454 y(expanded)i(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)j(under)d(Section)
15898i(3.5.2)h([Tilde)f(Expansion],)f(page)h(25.)154 2582
9e6c30de 15899y(19.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s
b52e30b8 15900(e)g(used)f(b)m(y)h(itself)g(as)g(a)h(command.)40 b(When)30
fffe80d4 15901b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 2692 y(it)33
b52e30b8
CR
15902b(displa)m(ys)g(timing)g(statistics)h(for)e(the)h(shell)g(and)f(its)g
15903(completed)i(c)m(hildren.)47 b(The)32 b Ft(TIMEFORMAT)330
fffe80d4
CR
159042801 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f
15905(timing)h(information.)154 2929 y(20.)61 b(When)33 b(parsing)g(and)f
b52e30b8
CR
15906(expanding)h(a)h($)p Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33
15907b Fu(expansion)g(that)h(app)s(ears)f(within)f(double)h(quotes,)330
fffe80d4 159083039 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
e59452c7 15909(cannot)i(b)s(e)e(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330
fffe80d4 159103148 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s
e59452c7 15911(erator)f(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e
fffe80d4 15912(pattern)330 3258 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)
e59452c7 15913e(do)g(not)h(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)154
fffe80d4 159143386 y(21.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
d37a4722 15915Ft(time)d Fu(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
fffe80d4
CR
15916(en)h(b)s(egins)d(with)i(a)330 3495 y(`)p Ft(-)p Fu('.)154
159173623 y(22.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h(do)s(es)e
e59452c7 15918(not)h(in)m(tro)s(duce)g(history)f(expansion)h(within)f(a)h
fffe80d4
CR
15919(double-quoted)g(string,)330 3733 y(ev)m(en)g(if)f(the)h
15920Ft(histexpand)d Fu(option)i(is)h(enabled.)154 3861 y(23.)61
e59452c7
CR
15921b(If)24 b(a)g Fm(posix)g Fu(sp)s(ecial)h(builtin)f(returns)f(an)h
15922(error)g(status,)i(a)e(non-in)m(teractiv)m(e)j(shell)e(exits.)39
fffe80d4 15923b(The)24 b(fatal)330 3970 y(errors)30 b(are)h(those)f(listed)h(in)f
e59452c7 15924(the)h Fm(posix)e Fu(standard,)h(and)g(include)g(things)g(lik)m(e)i
fffe80d4 15925(passing)e(incorrect)330 4080 y(options,)43 b(redirection)d(errors,)i
e59452c7 15926(v)-5 b(ariable)41 b(assignmen)m(t)g(errors)e(for)g(assignmen)m(ts)i
fffe80d4
CR
15927(preceding)f(the)330 4189 y(command)30 b(name,)h(and)f(so)g(on.)154
159284317 y(24.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e
d37a4722 15929(an)h(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g
fffe80d4 15930(error)e(o)s(ccurs)330 4427 y(when)38 b(no)h(command)g(name)g(follo)m
d37a4722 15931(ws)i(the)e(assignmen)m(t)h(statemen)m(ts.)69 b(A)39
fffe80d4 15932b(v)-5 b(ariable)40 b(assignmen)m(t)330 4536 y(error)30
d37a4722 15933b(o)s(ccurs,)g(for)g(example,)i(when)d(trying)i(to)g(assign)f(a)h(v)-5
fffe80d4 15934b(alue)31 b(to)g(a)g(readonly)f(v)-5 b(ariable.)154 4664
d37a4722
CR
15935y(25.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h
15936(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g(error)e
fffe80d4 15937(o)s(ccurs)330 4774 y(in)g(an)g(assignmen)m(t)i(statemen)m(t)g
d37a4722 15938(preceding)e(a)h(sp)s(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f
fffe80d4 15939(other)h(simple)330 4883 y(command.)38 b(F)-8 b(or)23
e59452c7 15940b(an)m(y)g(other)g(simple)g(command,)h(the)f(shell)g(ab)s(orts)f
fffe80d4 15941(execution)i(of)f(that)g(command,)330 4993 y(and)44 b(execution)i(con)m
e59452c7
CR
15942(tin)m(ues)g(at)g(the)f(top)g(lev)m(el)h(\()p Ft(")p
15943Fu(the)f(shell)h(shall)f(not)g(p)s(erform)e(an)m(y)i(further)330
fffe80d4
CR
159445103 y(pro)s(cessing)30 b(of)h(the)f(command)g(in)g(whic)m(h)h(the)f
15945(error)g(o)s(ccurred)p Ft(")p Fu(\).)154 5230 y(26.)61
d37a4722
CR
15946b(A)43 b(non-in)m(teractiv)m(e)i(shell)e(exits)h(with)f(an)f(error)h
15947(status)g(if)g(the)g(iteration)h(v)-5 b(ariable)44 b(in)f(a)g
fffe80d4 15948Ft(for)330 5340 y Fu(statemen)m(t)32 b(or)f(the)f(selection)i(v)-5
d37a4722 15949b(ariable)32 b(in)e(a)g Ft(select)f Fu(statemen)m(t)j(is)f(a)f
fffe80d4 15950(readonly)h(v)-5 b(ariable.)p eop end
e59452c7
CR
15951%%Page: 107 113
15952TeXDict begin 107 112 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
15953b(Bash)30 b(F)-8 b(eatures)2439 b(107)154 299 y(27.)61
15954b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g Fr(\014lename)k
15955Fu(in)30 b Ft(.)g Fr(\014lename)36 b Fu(is)31 b(not)f(found.)154
15956432 y(28.)61 b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f(a)g(syn)
15957m(tax)g(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f(in)h(an)
15958330 541 y(in)m(v)-5 b(alid)31 b(expression.)154 674 y(29.)61
e59452c7 15959b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g(a)f(parameter)h
fffe80d4 15960(expansion)g(error)f(o)s(ccurs.)154 806 y(30.)61 b(Non-in)m(teractiv)m
e59452c7
CR
15961(e)27 b(shells)c(exit)i(if)e(there)h(is)f(a)h(syn)m(tax)g(error)f(in)g
15962(a)h(script)f(read)g(with)h(the)f Ft(.)g Fu(or)h Ft(source)330
fffe80d4
CR
15963916 y Fu(builtins,)30 b(or)g(in)g(a)h(string)g(pro)s(cessed)e(b)m(y)i
15964(the)f Ft(eval)f Fu(builtin.)154 1049 y(31.)61 b(While)32
e59452c7
CR
15965b(v)-5 b(ariable)32 b(indirection)f(is)g(a)m(v)-5 b(ailable,)34
15966b(it)d(ma)m(y)h(not)f(b)s(e)g(applied)g(to)g(the)h(`)p
15967Ft(#)p Fu(')f(and)f(`)p Ft(?)p Fu(')h(sp)s(ecial)330
fffe80d4 159681158 y(parameters.)154 1291 y(32.)61 b(When)28 b(expanding)g(the)g(`)p
d61300ec 15969Ft(*)p Fu(')g(sp)s(ecial)h(parameter)f(in)g(a)h(pattern)f(con)m(text)i
fffe80d4 15970(where)e(the)g(expansion)g(is)330 1401 y(double-quoted)i(do)s(es)g(not)
d61300ec 15971h(treat)h(the)e Ft($*)g Fu(as)h(if)f(it)h(w)m(ere)g(double-quoted.)154
fffe80d4 159721533 y(33.)61 b(Assignmen)m(t)23 b(statemen)m(ts)h(preceding)e
d61300ec 15973Fm(posix)f Fu(sp)s(ecial)i(builtins)f(p)s(ersist)g(in)f(the)i(shell)f
fffe80d4
CR
15974(en)m(vironmen)m(t)330 1643 y(after)31 b(the)f(builtin)g(completes.)154
159751775 y(34.)61 b(The)31 b Ft(command)e Fu(builtin)i(do)s(es)g(not)h
d37a4722 15976(prev)m(en)m(t)f(builtins)g(that)h(tak)m(e)h(assignmen)m(t)f(statemen)m
fffe80d4 15977(ts)h(as)f(ar-)330 1885 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)
d37a4722 15978h(assignmen)m(t)g(statemen)m(ts;)46 b(when)38 b(not)i(in)f
fffe80d4 15979Fm(posix)f Fu(mo)s(de,)330 1995 y(assignmen)m(t)k(builtins)e(lose)h
d37a4722 15980(their)g(assignmen)m(t)h(statemen)m(t)h(expansion)d(prop)s(erties)g
fffe80d4
CR
15981(when)g(pre-)330 2104 y(ceded)31 b(b)m(y)f Ft(command)p
15982Fu(.)154 2237 y(35.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h
d37a4722 15983(required)f(format)h(to)g(describ)s(e)f(eac)m(h)i(job)e(placed)h(in)f
fffe80d4 15984(the)h(bac)m(kground,)330 2346 y(whic)m(h)h(do)s(es)g(not)g(include)g
d37a4722 15985(an)g(indication)h(of)f(whether)f(the)h(job)g(is)g(the)h(curren)m(t)e
fffe80d4 15986(or)h(previous)g(job.)154 2479 y(36.)61 b(The)23 b(output)f(of)i(`)p
d37a4722
CR
15987Ft(kill)29 b(-l)p Fu(')23 b(prin)m(ts)f(all)i(the)g(signal)f(names)g
15988(on)g(a)h(single)g(line,)h(separated)e(b)m(y)g(spaces,)330
fffe80d4
CR
159892589 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
159902721 y(37.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept)
124d67cd 15991h(signal)f(names)f(with)g(a)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
fffe80d4 159922854 y(38.)61 b(The)38 b Ft(export)f Fu(and)g Ft(readonly)f
124d67cd 15993Fu(builtin)i(commands)g(displa)m(y)h(their)f(output)g(in)g(the)h
fffe80d4
CR
15994(format)g(re-)330 2964 y(quired)30 b(b)m(y)g Fm(posix)p
15995Fu(.)154 3096 y(39.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g
124d67cd 15996(signal)i(names)e(without)g(the)h(leading)g Ft(SIG)p
fffe80d4 15997Fu(.)154 3229 y(40.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g
e59452c7 15998(c)m(hec)m(k)h(the)g(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e
fffe80d4 15999(signal)i(sp)s(eci\014cation)330 3339 y(and)30 b(rev)m(ert)i(the)e
e59452c7 16000(signal)i(handling)e(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g
fffe80d4 16001(is,)g(unless)f(that)h(argumen)m(t)330 3448 y(consists)e(solely)g(of)g
e59452c7
CR
16002(digits)g(and)f(is)g(a)h(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38
16003b(If)28 b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
fffe80d4 160043558 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
d37a4722 16005(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
fffe80d4 16006f(argumen)m(t.)154 3690 y(41.)61 b Ft(trap)29 b(-p)35
d37a4722 16007b Fu(displa)m(ys)h(signals)h(whose)f(disp)s(ositions)f(are)h(set)h(to)f
fffe80d4
CR
16008(SIG)p 2687 3690 28 4 v 40 w(DFL)g(and)g(those)g(that)g(w)m(ere)330
160093800 y(ignored)30 b(when)g(the)g(shell)h(started.)154
160103933 y(42.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f
d37a4722 16011Fu(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f(directory)h
fffe80d4 16012(for)g(the)g(\014lename)f(argumen)m(t)330 4042 y(if)30
d37a4722 16013b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g Ft(PATH)p
fffe80d4 16014Fu(.)154 4175 y(43.)61 b(Enabling)21 b Fm(posix)g Fu(mo)s(de)g(has)g
d37a4722 16015(the)g(e\013ect)i(of)e(setting)i(the)e Ft(inherit_errexit)d
fffe80d4 16016Fu(option,)23 b(so)f(subshells)330 4284 y(spa)m(wned)27
d37a4722
CR
16017b(to)i(execute)g(command)e(substitutions)h(inherit)f(the)h(v)-5
16018b(alue)28 b(of)g(the)g Ft(-e)f Fu(option)h(from)g(the)330
fffe80d4 160194394 y(paren)m(t)37 b(shell.)62 b(When)37 b(the)g Ft(inherit_errexit)c
d37a4722 16020Fu(option)38 b(is)f(not)h(enabled,)h(Bash)e(clears)h(the)g
fffe80d4
CR
16021Ft(-e)330 4504 y Fu(option)31 b(in)f(suc)m(h)g(subshells.)154
160224636 y(44.)61 b(Enabling)32 b Fm(posix)f Fu(mo)s(de)h(has)g(the)h
d37a4722 16023(e\013ect)g(of)g(setting)g(the)g Ft(shift_verbose)28
fffe80d4 16024b Fu(option,)34 b(so)e(n)m(umeric)330 4746 y(argumen)m(ts)f(to)g
d37a4722
CR
16025Ft(shift)f Fu(that)h(exceed)h(the)e(n)m(um)m(b)s(er)g(of)h(p)s
16026(ositional)g(parameters)g(will)g(result)g(in)f(an)330
fffe80d4 160274855 y(error)g(message.)154 4988 y(45.)61 b(When)43 b(the)g
d37a4722 16028Ft(alias)f Fu(builtin)g(displa)m(ys)i(alias)g(de\014nitions,)i(it)d(do)
fffe80d4 16029s(es)g(not)g(displa)m(y)h(them)f(with)g(a)330 5098 y(leading)31
d37a4722 16030b(`)p Ft(alias)e Fu(')i(unless)f(the)g Ft(-p)g Fu(option)h(is)f
fffe80d4 16031(supplied.)154 5230 y(46.)61 b(When)40 b(the)g Ft(set)f
d37a4722 16032Fu(builtin)h(is)g(in)m(v)m(ok)m(ed)h(without)f(options,)j(it)e(do)s(es)
fffe80d4
CR
16033f(not)g(displa)m(y)g(shell)g(function)330 5340 y(names)30
16034b(and)g(de\014nitions.)p eop end
e59452c7
CR
16035%%Page: 108 114
16036TeXDict begin 108 113 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
16037b(Bash)30 b(F)-8 b(eatures)2439 b(108)154 299 y(47.)61
16038b(When)36 b(the)g Ft(set)g Fu(builtin)g(is)g(in)m(v)m(ok)m(ed)i
16039(without)e(options,)i(it)f(displa)m(ys)f(v)-5 b(ariable)37
16040b(v)-5 b(alues)37 b(without)330 408 y(quotes,)26 b(unless)d(they)i(con)
16041m(tain)g(shell)f(metac)m(haracters,)k(ev)m(en)d(if)f(the)g(result)g
16042(con)m(tains)i(nonprin)m(ting)330 518 y(c)m(haracters.)154
16043663 y(48.)61 b(When)35 b(the)h Ft(cd)e Fu(builtin)h(is)h(in)m(v)m(ok)m
16044(ed)g(in)f(logical)j(mo)s(de,)e(and)f(the)h(pathname)f(constructed)g
16045(from)330 772 y Ft($PWD)i Fu(and)h(the)h(directory)f(name)h(supplied)e
16046(as)i(an)f(argumen)m(t)h(do)s(es)f(not)g(refer)h(to)g(an)f(existing)330
16047882 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f
e59452c7 16048(falling)h(bac)m(k)h(to)f(ph)m(ysical)g(mo)s(de.)154
fffe80d4
CR
160491026 y(49.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m
16050(hange)h(a)f(directory)g(b)s(ecause)g(the)g(length)g(of)f(the)h
16051(pathname)330 1136 y(constructed)27 b(from)g Ft($PWD)f
16052Fu(and)h(the)g(directory)h(name)f(supplied)f(as)i(an)f(argumen)m(t)g
16053(exceeds)h Ft(PATH_)330 1245 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g
16054(links)g(are)g(expanded,)g Ft(cd)f Fu(will)h(fail)h(instead)f(of)g
16055(attempting)h(to)f(use)g(only)330 1355 y(the)31 b(supplied)e(directory)
16056i(name.)154 1499 y(50.)61 b(The)36 b Ft(pwd)f Fu(builtin)h(v)m
16057(eri\014es)h(that)g(the)f(v)-5 b(alue)37 b(it)g(prin)m(ts)e(is)i(the)f
16058(same)h(as)f(the)h(curren)m(t)f(directory)-8 b(,)330
160591609 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m(ed)h(to)g(c)m(hec)m(k)h
16060(the)f(\014le)f(system)h(with)f(the)h Ft(-P)e Fu(option.)154
160611753 y(51.)61 b(When)35 b(listing)g(the)g(history)-8
16062b(,)36 b(the)f Ft(fc)g Fu(builtin)f(do)s(es)g(not)h(include)g(an)f
16063(indication)i(of)f(whether)f(or)330 1863 y(not)d(a)f(history)h(en)m
16064(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 2007 y(52.)61
16065b(The)30 b(default)g(editor)h(used)f(b)m(y)g Ft(fc)g
16066Fu(is)g Ft(ed)p Fu(.)154 2152 y(53.)61 b(The)37 b Ft(type)g
16067Fu(and)g Ft(command)f Fu(builtins)i(will)g(not)g(rep)s(ort)f(a)i
16068(non-executable)g(\014le)f(as)g(ha)m(ving)h(b)s(een)330
160692262 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
122f603c 16070(execute)g(suc)m(h)f(a)g(\014le)g(if)g(it)g(is)g(the)g(only)g(so-named)
fffe80d4
CR
16071g(\014le)330 2371 y(found)i(in)h Ft($PATH)p Fu(.)154
160722516 y(54.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m
a6ae8f35 16073(ok)m(e)i(the)e Ft(vi)g Fu(editor)h(directly)f(when)f(the)i(`)p
fffe80d4
CR
16074Ft(v)p Fu(')f(command)g(is)g(run,)330 2625 y(instead)e(of)f(c)m(hec)m
16075(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 2770
9e6c30de 16076y(55.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j
a6ae8f35 16077(Bash)d(do)s(es)g(not)g(attempt)h(to)g(in)m(terpret)f(an)m(y)h(ar-)330
fffe80d4 160782879 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54
1c72c0cd 16079b(Eac)m(h)35 b(argumen)m(t)g(is)f(displa)m(y)m(ed,)j(after)e(escap)s(e)
fffe80d4
CR
16080g(c)m(haracters)h(are)330 2989 y(con)m(v)m(erted.)154
160813133 y(56.)61 b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m
6e51e0d0 16082(k)g(size)g(of)g(512)g(b)m(ytes)g(for)f(the)h Ft(-c)f
fffe80d4 16083Fu(and)g Ft(-f)f Fu(options.)154 3278 y(57.)61 b(The)39
e59452c7
CR
16084b(arriv)-5 b(al)41 b(of)f Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h
16085(on)f Ft(SIGCHLD)e Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g
fffe80d4 16086Ft(wait)330 3387 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f
e1e48bba 16087(immediately)-8 b(.)62 b(The)37 b(trap)f(command)h(is)g(run)e(once)j
fffe80d4
CR
16088(for)f(eac)m(h)330 3497 y(c)m(hild)31 b(that)g(exits.)154
160893641 y(58.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m
124d67cd 16090(terrupted)h(b)m(y)g(a)h(signal)f(for)g(whic)m(h)g(a)h(trap)f(has)g(b)s
fffe80d4 16091(een)f(set.)40 b(If)27 b(Bash)330 3751 y(receiv)m(es)41
124d67cd
CR
16092b(a)f(trapp)s(ed)e(signal)i(while)f(executing)h Ft(read)p
16093Fu(,)h(the)e(trap)h(handler)e(executes)i(and)f Ft(read)330
fffe80d4
CR
160943861 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)154
160954005 y(59.)61 b(Bash)27 b(remo)m(v)m(es)h(an)e(exited)i(bac)m(kground)e
124d67cd 16096(pro)s(cess's)h(status)g(from)f(the)h(list)g(of)g(suc)m(h)f(statuses)h
fffe80d4
CR
16097(after)330 4115 y(the)k Ft(wait)e Fu(builtin)h(is)g(used)g(to)h(obtain)
16098g(it.)275 4304 y(There)j(is)g(other)h Fm(posix)f Fu(b)s(eha)m(vior)h
fc35c477 16099(that)g(Bash)g(do)s(es)f(not)h(implemen)m(t)g(b)m(y)g(default)f(ev)m
fffe80d4
CR
16100(en)i(when)d(in)150 4413 y Fm(posix)d Fu(mo)s(de.)40
16101b(Sp)s(eci\014cally:)199 4568 y(1.)61 b(The)30 b Ft(fc)f
d37a4722
CR
16102Fu(builtin)h(c)m(hec)m(ks)i Ft($EDITOR)c Fu(as)j(a)f(program)g(to)h
16103(edit)g(history)f(en)m(tries)h(if)f Ft(FCEDIT)f Fu(is)h(unset,)330
fffe80d4 161044677 y(rather)g(than)g(defaulting)h(directly)g(to)g Ft(ed)p
d37a4722 16105Fu(.)40 b Ft(fc)30 b Fu(uses)g Ft(ed)g Fu(if)g Ft(EDITOR)f
fffe80d4 16106Fu(is)h(unset.)199 4822 y(2.)61 b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i
d37a4722 16107(Bash)e(requires)g(the)g Ft(xpg_echo)e Fu(option)j(to)g(b)s(e)e
fffe80d4
CR
16108(enabled)h(for)g(the)g Ft(echo)f Fu(builtin)330 4932
16109y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 5121 y(Bash)c(can)g(b)s(e)f
d37a4722
CR
16110(con\014gured)h(to)g(b)s(e)g Fm(posix)p Fu(-conforman)m(t)g(b)m(y)g
16111(default,)h(b)m(y)f(sp)s(ecifying)g(the)g Ft(--enable-)150
fffe80d4 161125230 y(strict-posix-default)c Fu(to)27 b Ft(configure)e
d37a4722 16113Fu(when)h(building)h(\(see)h(Section)g(10.8)g([Optional)g(F)-8
fffe80d4
CR
16114b(eatures],)150 5340 y(page)31 b(160\).)p eop end
16115%%Page: 109 115
16116TeXDict begin 109 114 bop 150 -116 a Fu(Chapter)30 b(6:)41
16117b(Bash)30 b(F)-8 b(eatures)2439 b(109)150 299 y Fs(6.12)68
16118b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 458 y Fu(Bash-4.0)30
d37a4722
CR
16119b(in)m(tro)s(duced)d(the)i(concept)g(of)f(a)h(`shell)f(compatibilit)m
16120(y)i(lev)m(el',)h(sp)s(eci\014ed)d(as)g(a)h(set)f(of)h(options)150
fffe80d4 16121568 y(to)i(the)f(shopt)g(builtin)g(\()p Ft(compat31)p
d37a4722 16122Fu(,)e Ft(compat32)p Fu(,)h Ft(compat40)p Fu(,)f Ft(compat41)p
fffe80d4
CR
16123Fu(,)g(and)i(so)g(on\).)41 b(There)30 b(is)g(only)150
16124677 y(one)f(curren)m(t)f(compatibilit)m(y)j(lev)m(el)f({)f(eac)m(h)h
16125(option)f(is)g(m)m(utually)g(exclusiv)m(e.)41 b(The)28
16126b(compatibilit)m(y)j(lev)m(el)150 787 y(is)39 b(in)m(tended)g(to)h
16127(allo)m(w)g(users)e(to)i(select)h(b)s(eha)m(vior)e(from)f(previous)h(v)
16128m(ersions)g(that)h(is)f(incompatible)150 897 y(with)d(new)m(er)g(v)m
16129(ersions)g(while)g(they)g(migrate)h(scripts)f(to)h(use)f(curren)m(t)f
16130(features)i(and)e(b)s(eha)m(vior.)58 b(It's)150 1006
16131y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f(solution.)275
161321134 y(This)k(section)j(do)s(es)e(not)h(men)m(tion)g(b)s(eha)m(vior)g
16133(that)g(is)f(standard)g(for)g(a)h(particular)g(v)m(ersion)g(\(e.g.,)150
161341244 y(setting)24 b Ft(compat32)e Fu(means)h(that)h(quoting)g(the)f
16135(rhs)g(of)g(the)h(regexp)f(matc)m(hing)i(op)s(erator)e(quotes)h(sp)s
16136(ecial)150 1354 y(regexp)31 b(c)m(haracters)g(in)g(the)f(w)m(ord,)g
16137(whic)m(h)g(is)h(default)f(b)s(eha)m(vior)h(in)f(bash-3.2)h(and)f(ab)s
16138(o)m(v)m(e\).)275 1482 y(If)f(a)h(user)f(enables,)h(sa)m(y)-8
16139b(,)31 b Ft(compat32)p Fu(,)d(it)i(ma)m(y)g(a\013ect)h(the)f(b)s(eha)m
16140(vior)g(of)g(other)g(compatibilit)m(y)h(lev)m(els)150
161411591 y(up)23 b(to)h(and)f(including)h(the)g(curren)m(t)f(compatibilit)m
16142(y)j(lev)m(el.)41 b(The)23 b(idea)h(is)g(that)g(eac)m(h)h(compatibilit)
16143m(y)h(lev)m(el)150 1701 y(con)m(trols)35 b(b)s(eha)m(vior)f(that)g(c)m
16144(hanged)g(in)f(that)h(v)m(ersion)g(of)g(Bash,)h(but)e(that)h(b)s(eha)m
16145(vior)g(ma)m(y)g(ha)m(v)m(e)h(b)s(een)150 1811 y(presen)m(t)f(in)g
16146(earlier)g(v)m(ersions.)52 b(F)-8 b(or)35 b(instance,)g(the)f(c)m
16147(hange)h(to)g(use)f(lo)s(cale-based)h(comparisons)f(with)150
161481920 y(the)e Ft([[)f Fu(command)g(came)h(in)g(bash-4.1,)h(and)d
16149(earlier)j(v)m(ersions)f(used)f(ASCI)s(I-based)f(comparisons,)i(so)150
161502030 y(enabling)27 b Ft(compat32)e Fu(will)i(enable)g(ASCI)s(I-based)e
d37a4722 16151(comparisons)i(as)g(w)m(ell.)41 b(That)26 b(gran)m(ularit)m(y)i(ma)m(y)
fffe80d4 16152g(not)150 2139 y(b)s(e)i(su\016cien)m(t)i(for)f(all)g(uses,)g(and)g(as)
d37a4722 16153g(a)g(result)g(users)f(should)g(emplo)m(y)i(compatibilit)m(y)h(lev)m
fffe80d4 16154(els)g(carefully)-8 b(.)150 2249 y(Read)31 b(the)f(do)s(cumen)m(tation)
d37a4722 16155h(for)g(a)f(particular)h(feature)g(to)g(\014nd)e(out)h(the)h(curren)m
fffe80d4 16156(t)f(b)s(eha)m(vior.)275 2377 y(Bash-4.3)44 b(in)m(tro)s(duced)e(a)h
d37a4722
CR
16157(new)f(shell)h(v)-5 b(ariable:)65 b Ft(BASH_COMPAT)p
16158Fu(.)75 b(The)42 b(v)-5 b(alue)43 b(assigned)g(to)g(this)150
fffe80d4 161592487 y(v)-5 b(ariable)32 b(\(a)g(decimal)h(v)m(ersion)e(n)m(um)m(b)s
d37a4722 16160(er)f(lik)m(e)j(4.2,)g(or)e(an)h(in)m(teger)g(corresp)s(onding)f(to)h
fffe80d4 16161(the)f Ft(compat)p Fr(NN)150 2596 y Fu(option,)g(lik)m(e)h(42\))f
d37a4722 16162(determines)g(the)f(compatibilit)m(y)j(lev)m(el.)275
fffe80d4 161632724 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s(egun)f
d37a4722 16164(deprecating)h(older)h(compatibilit)m(y)h(lev)m(els.)44
fffe80d4 16165b(Ev)m(en)m(tu-)150 2834 y(ally)-8 b(,)32 b(the)e(options)h(will)g(b)s
d37a4722 16166(e)f(remo)m(v)m(ed)h(in)f(fa)m(v)m(or)i(of)e Ft(BASH_COMPAT)p
fffe80d4 16167Fu(.)275 2962 y(Bash-5.0)36 b(is)f(the)g(\014nal)f(v)m(ersion)i(for)e
d37a4722 16168(whic)m(h)h(there)g(will)g(b)s(e)f(an)h(individual)f(shopt)h(option)g
fffe80d4 16169(for)g(the)150 3072 y(previous)30 b(v)m(ersion.)41 b(Users)30
d37a4722 16170b(should)g(use)g Ft(BASH_COMPAT)d Fu(on)j(bash-5.0)h(and)f(later)i(v)m
fffe80d4 16171(ersions.)275 3200 y(The)24 b(follo)m(wing)i(table)g(describ)s(es)e
e59452c7 16172(the)i(b)s(eha)m(vior)f(c)m(hanges)h(con)m(trolled)g(b)m(y)f(eac)m(h)h
fffe80d4 16173(compatibilit)m(y)h(lev)m(el)150 3310 y(setting.)43 b(The)30
e59452c7
CR
16174b Ft(compat)p Fr(NN)39 b Fu(tag)32 b(is)f(used)f(as)h(shorthand)e(for)h
16175(setting)i(the)f(compatibilit)m(y)i(lev)m(el)f(to)g Fr(NN)150
fffe80d4 161763419 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m(hanisms.)63
e59452c7 16177b(F)-8 b(or)39 b(v)m(ersions)f(prior)f(to)h(bash-5.0,)j(the)d
fffe80d4 16178(compatibilit)m(y)150 3529 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i(using)e
e59452c7
CR
16179(the)i(corresp)s(onding)e Ft(compat)p Fr(NN)41 b Fu(shopt)33
16180b(option.)50 b(F)-8 b(or)34 b(bash-4.3)f(and)g(later)150
fffe80d4 161813638 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5
e59452c7 16182b(ariable)39 b(is)e(preferred,)i(and)e(it)i(is)f(required)f(for)g
fffe80d4
CR
16183(bash-5.1)i(and)e(later)150 3748 y(v)m(ersions.)150 3895
16184y Ft(compat31)705 4023 y Fq(\017)60 b Fu(quoting)34 b(the)g(rhs)e(of)i
e59452c7 16185(the)f Ft([[)g Fu(command's)h(regexp)f(matc)m(hing)i(op)s(erator)f(\(=)
fffe80d4
CR
16186p Ft(~)p Fu(\))f(has)810 4133 y(no)d(sp)s(ecial)h(e\013ect)150
161874279 y Ft(compat32)705 4407 y Fq(\017)60 b Fu(in)m(terrupting)28
d37a4722 16188b(a)g(command)g(list)h(suc)m(h)f(as)g Ft(")p Fu(a)g(;)h(b)f(;)h(c)p
fffe80d4 16189Ft(")f Fu(causes)h(the)f(execution)h(of)g(the)810 4517
d37a4722 16190y(next)j(command)f(in)g(the)h(list)g(\(in)f(bash-4.0)h(and)f(later)i(v)
fffe80d4 16191m(ersions,)f(the)g(shell)f(acts)i(as)810 4627 y(if)i(it)i(receiv)m(ed)f
d37a4722 16192(the)g(in)m(terrupt,)h(so)f(in)m(terrupting)f(one)h(command)f(in)g(a)h
fffe80d4
CR
16193(list)g(ab)s(orts)810 4736 y(the)31 b(execution)g(of)g(the)f(en)m(tire)
16194i(list\))150 4883 y Ft(compat40)705 5011 y Fq(\017)60
d37a4722
CR
16195b Fu(the)35 b(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h
16196(to)g(the)g Ft([[)f Fu(command)h(do)f(not)h(consider)f(the)h(curren)m
fffe80d4 16197(t)810 5121 y(lo)s(cale)41 b(when)d(comparing)i(strings;)k(they)c(use)f
d37a4722 16198(ASCI)s(I)f(ordering.)67 b(Bash)40 b(v)m(ersions)810
fffe80d4
CR
161995230 y(prior)f(to)i(bash-4.1)f(use)g(ASCI)s(I)e(collation)k(and)d
16200(strcmp\(3\);)45 b(bash-4.1)c(and)e(later)810 5340 y(use)30
d37a4722 16201b(the)h(curren)m(t)f(lo)s(cale's)i(collation)h(sequence)d(and)g
fffe80d4 16202(strcoll\(3\).)p eop end
e59452c7
CR
16203%%Page: 110 116
16204TeXDict begin 110 115 bop 150 -116 a Fu(Chapter)30 b(6:)41
fffe80d4
CR
16205b(Bash)30 b(F)-8 b(eatures)2439 b(110)150 299 y Ft(compat41)705
16206439 y Fq(\017)60 b Fu(in)29 b(p)s(osix)f(mo)s(de,)i Ft(time)e
16207Fu(ma)m(y)h(b)s(e)g(follo)m(w)m(ed)i(b)m(y)e(options)g(and)g(still)h(b)
16208s(e)e(recognized)j(as)810 548 y(a)g(reserv)m(ed)f(w)m(ord)g(\(this)h
16209(is)f Fm(posix)g Fu(in)m(terpretation)i(267\))705 689
16210y Fq(\017)60 b Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e
16211(requires)g(that)i(an)f(ev)m(en)g(n)m(um)m(b)s(er)f(of)h(single)g
16212(quotes)810 798 y(o)s(ccur)28 b(in)g(the)h Fr(w)m(ord)i
16213Fu(p)s(ortion)d(of)h(a)g(double-quoted)f($)p Fi({)6 b
16214Fu(.)23 b(.)f(.)11 b Fi(})29 b Fu(parameter)g(expansion)810
16215908 y(and)34 b(treats)h(them)f(sp)s(ecially)-8 b(,)37
16216b(so)e(that)g(c)m(haracters)g(within)f(the)h(single)g(quotes)g(are)810
162171017 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e
16218Fu(in)m(terpretation)j(221\))150 1188 y Ft(compat42)705
162191328 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g
d37a4722 16220(double-quoted)h(pattern)f(substitution)g(do)s(es)g(not)h(un-)810
fffe80d4
CR
162211437 y(dergo)h(quote)g(remo)m(v)-5 b(al,)32 b(as)e(it)h(do)s(es)f(in)g
16222(v)m(ersions)h(after)g(bash-4.2)705 1577 y Fq(\017)60
d37a4722 16223b Fu(in)39 b(p)s(osix)g(mo)s(de,)j(single)e(quotes)g(are)g(considered)f
fffe80d4 16224(sp)s(ecial)h(when)f(expanding)g(the)810 1687 y Fr(w)m(ord)d
d37a4722
CR
16225Fu(p)s(ortion)c(of)g(a)h(double-quoted)g($)p Fi({)6 b
16226Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(parameter)g(expansion)f(and)g(can)h
fffe80d4 16227(b)s(e)810 1797 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g
d37a4722 16228(other)h(sp)s(ecial)f(c)m(haracter)i(\(this)e(is)g(part)g(of)810
fffe80d4 162291906 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42
d37a4722 16230b(in)36 b(later)h(v)m(ersions,)h(single)f(quotes)g(are)g(not)f(sp)s
fffe80d4
CR
16231(ecial)810 2016 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)150
162322186 y Ft(compat43)705 2326 y Fq(\017)60 b Fu(the)31
d37a4722 16233b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h(w)m(arning)g(message)h(if)f
fffe80d4 16234(an)g(attempt)h(is)f(made)f(to)i(use)f(a)810 2436 y(quoted)22
d37a4722 16235b(comp)s(ound)f(assignmen)m(t)i(as)f(an)g(argumen)m(t)h(to)g(declare)g
fffe80d4 16236(\(declare)g(-a)g(fo)s(o='\(1)810 2545 y(2\)'\).)42 b(Later)31
d37a4722 16237b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h(is)f(deprecated)705
fffe80d4 162382685 y Fq(\017)60 b Fu(w)m(ord)21 b(expansion)g(errors)g(are)h
d37a4722 16239(considered)f(non-fatal)h(errors)f(that)h(cause)g(the)f(curren)m(t)810
fffe80d4 162402795 y(command)k(to)g(fail,)i(ev)m(en)e(in)g(p)s(osix)f(mo)s(de)h
d37a4722 16241(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g(mak)m(e)h(them)810
fffe80d4
CR
162422905 y(fatal)32 b(errors)d(that)i(cause)g(the)g(shell)f(to)i(exit\))705
162433045 y Fq(\017)60 b Fu(when)37 b(executing)i(a)g(shell)f(function,)i
e59452c7 16244(the)f(lo)s(op)f(state)h(\(while/un)m(til/etc.\))68 b(is)38
fffe80d4 16245b(not)810 3154 y(reset,)c(so)g Ft(break)d Fu(or)i Ft(continue)e
d37a4722 16246Fu(in)h(that)i(function)f(will)g(break)g(or)g(con)m(tin)m(ue)h(lo)s
fffe80d4 16247(ops)810 3264 y(in)h(the)g(calling)h(con)m(text.)57 b(Bash-4.4)37
d37a4722 16248b(and)d(later)i(reset)g(the)f(lo)s(op)g(state)i(to)e(prev)m(en)m(t)810
fffe80d4 162493373 y(this)150 3544 y Ft(compat44)705 3684 y Fq(\017)60
d37a4722
CR
16250b Fu(the)41 b(shell)g(sets)g(up)e(the)i(v)-5 b(alues)41
16251b(used)f(b)m(y)h Ft(BASH_ARGV)d Fu(and)i Ft(BASH_ARGC)e
fffe80d4 16252Fu(so)j(they)810 3794 y(can)26 b(expand)f(to)h(the)g(shell's)g(p)s
d37a4722 16253(ositional)g(parameters)g(ev)m(en)h(if)e(extended)h(debugging)810
fffe80d4 162543903 y(mo)s(de)k(is)g(not)h(enabled)705 4043 y Fq(\017)60
d37a4722
CR
16255b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g(its)g(paren)m(t)g
16256(con)m(text,)k(so)c Ft(break)e Fu(or)i Ft(continue)810
fffe80d4 162574153 y Fu(will)35 b(cause)g(the)f(subshell)f(to)i(exit.)54
d37a4722 16258b(Bash-5.0)36 b(and)d(later)j(reset)f(the)f(lo)s(op)h(state)g(to)810
fffe80d4 162594262 y(prev)m(en)m(t)c(the)g(exit)705 4402 y Fq(\017)60
d37a4722
CR
16260b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f(builtins)f(lik)m
16261(e)i Ft(export)d Fu(and)h Ft(readonly)e Fu(that)j(set)810
fffe80d4 162624512 y(attributes)37 b(con)m(tin)m(ue)h(to)g(a\013ect)g(v)-5
d37a4722 16263b(ariables)37 b(with)g(the)f(same)h(name)g(in)g(the)f(calling)810
fffe80d4
CR
162644622 y(en)m(vironmen)m(t)31 b(ev)m(en)g(if)f(the)h(shell)g(is)f(not)h
16265(in)f(p)s(osix)f(mo)s(de)150 4792 y Ft(compat50)f(\(set)h(using)g
16266(BASH_COMPAT\))705 4902 y Fq(\017)60 b Fu(Bash-5.1)29
d37a4722 16267b(c)m(hanged)g(the)f(w)m(a)m(y)g Ft($RANDOM)e Fu(is)i(generated)h(to)f
fffe80d4 16268(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 5011 y(randomness.)39
d37a4722 16269b(If)30 b(the)f(shell)h(compatibilit)m(y)i(lev)m(el)f(is)f(set)g(to)h
fffe80d4 16270(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)810 5121 y(to)e(the)g(metho)s
d37a4722 16271(d)f(from)g(bash-5.0)h(and)f(previous)g(v)m(ersions,)i(so)e(seeding)h
fffe80d4 16272(the)g(random)810 5230 y(n)m(um)m(b)s(er)36 b(generator)j(b)m(y)e
d37a4722 16273(assigning)h(a)g(v)-5 b(alue)38 b(to)g Ft(RANDOM)e Fu(will)i(pro)s
fffe80d4
CR
16274(duce)e(the)i(same)810 5340 y(sequence)31 b(as)f(in)g(bash-5.0)p
16275eop end
e59452c7 16276%%Page: 111 117
fffe80d4
CR
16277TeXDict begin 111 116 bop 150 -116 a Fu(Chapter)30 b(6:)41
16278b(Bash)30 b(F)-8 b(eatures)2439 b(111)705 299 y Fq(\017)60
16279b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f(empt)m(y)-8
16280b(,)25 b(Bash)d(v)m(ersions)g(prior)g(to)h(bash-5.1)f(prin)m(ted)810
16281408 y(an)29 b(informational)i(message)g(to)f(that)g(e\013ect,)h(ev)m
16282(en)g(when)d(pro)s(ducing)g(output)h(that)810 518 y(can)40
16283b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42 b(suppresses)c(that)j
16284(message)g(when)e(the)i Ft(-l)810 628 y Fu(option)31
16285b(is)f(supplied.)150 787 y Ft(compat51)e(\(set)h(using)g(BASH_COMPAT\))
5e6f45d9
CR
16286705 897 y Fq(\017)60 b Fu(The)38 b Ft(unset)g Fu(builtin)g(will)h
16287(unset)f(the)h(arra)m(y)g Ft(a)g Fu(giv)m(en)g(an)g(argumen)m(t)g(lik)m
16288(e)h(`)p Ft(a[@])p Fu('.)810 1006 y(Bash-5.2)32 b(will)f(unset)f(an)g
16289(elemen)m(t)i(with)e(k)m(ey)i(`)p Ft(@)p Fu(')e(\(asso)s(ciativ)m(e)k
16290(arra)m(ys\))d(or)f(remo)m(v)m(e)810 1116 y(all)h(the)g(elemen)m(ts)h
16291(without)e(unsetting)g(the)h(arra)m(y)g(\(indexed)f(arra)m(ys\))705
162921250 y Fq(\017)60 b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55
16293b(\))f(and)34 b(the)g(expressions)h(in)f(an)g(arithmetic)i(for)810
162941360 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705
162951494 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h
16296(arithmetic)f(op)s(erators)g(in)g(the)g Ft([[)f Fu(conditional)810
162971604 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705
162981738 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e
16299(parameter)j(brace)f(expansion)g(can)g(b)s(e)g(expanded)810
163001848 y(more)c(than)f(once)705 1983 y Fq(\017)60 b Fu(the)39
16301b(expressions)f(in)g(the)h($\(\()h(...)66 b(\)\))f(w)m(ord)39
16302b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 2092
16303y(than)30 b(once)705 2227 y Fq(\017)60 b Fu(arithmetic)36
16304b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i(subscripts)d(can)i(b)s
16305(e)g(expanded)810 2336 y(more)c(than)f(once)705 2471
16306y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g
16307(argumen)m(t)g(of)f(`)p Ft(A[@])p Fu(',)h(where)f Fr(A)h
16308Fu(is)f(an)h(existing)g(asso-)810 2580 y(ciativ)m(e)h(arra)m(y)-8
16309b(,)37 b(will)d(return)f(true)g(if)h(the)h(arra)m(y)f(has)g(an)m(y)g
16310(set)g(elemen)m(ts.)53 b(Bash-5.2)810 2690 y(will)31
16311b(lo)s(ok)g(for)f(and)g(rep)s(ort)f(on)i(a)f(k)m(ey)i(named)d(`)p
16312Ft(@)p Fu(')705 2824 y Fq(\017)60 b Fu(the)40 b($)p Fi({)p
16313Fr(parameter)7 b Fu([:]=)p Fr(v)-5 b(alue)5 b Fi(})42
16314b Fu(w)m(ord)e(expansion)f(will)i(return)d Fr(v)-5 b(alue)p
16315Fu(,)43 b(b)s(efore)d(an)m(y)810 2934 y(v)-5 b(ariable-sp)s(eci\014c)34
16316b(transformations)f(ha)m(v)m(e)h(b)s(een)e(p)s(erformed)f(\(e.g.,)36
16317b(con)m(v)m(erting)e(to)810 3044 y(lo)m(w)m(ercase\).)43
16318b(Bash-5.2)32 b(will)f(return)e(the)i(\014nal)f(v)-5
16319b(alue)31 b(assigned)f(to)i(the)e(v)-5 b(ariable.)p eop
16320end
fffe80d4
CR
16321%%Page: 112 118
16322TeXDict begin 112 117 bop 3614 -116 a Fu(112)150 299
4d63a619
CR
16323y Fp(7)80 b(Job)54 b(Con)l(trol)150 518 y Fu(This)25
16324b(c)m(hapter)i(discusses)f(what)g(job)f(con)m(trol)j(is,)f(ho)m(w)f(it)
16325h(w)m(orks,)g(and)f(ho)m(w)g(Bash)g(allo)m(ws)h(y)m(ou)g(to)g(access)
16326150 628 y(its)k(facilities.)150 863 y Fs(7.1)68 b(Job)45
037a8b7f
CR
16327b(Con)l(trol)h(Basics)150 1022 y Fu(Job)27 b(con)m(trol)i(refers)e(to)h
16328(the)g(abilit)m(y)h(to)f(selectiv)m(ely)j(stop)c(\(susp)s(end\))f(the)i
16329(execution)h(of)e(pro)s(cesses)h(and)150 1132 y(con)m(tin)m(ue)38
16330b(\(resume\))g(their)f(execution)h(at)g(a)g(later)g(p)s(oin)m(t.)61
16331b(A)37 b(user)g(t)m(ypically)i(emplo)m(ys)f(this)f(facilit)m(y)150
967625cd 163321241 y(via)27 b(an)e(in)m(teractiv)m(e)k(in)m(terface)f(supplied)d
c302751c 16333(join)m(tly)h(b)m(y)g(the)h(op)s(erating)f(system)g(k)m(ernel's)h
967625cd 16334(terminal)f(driv)m(er)150 1351 y(and)k(Bash.)275 1482
6e51e0d0 16335y(The)23 b(shell)i(asso)s(ciates)h(a)f Fr(job)h Fu(with)e(eac)m(h)i
c302751c 16336(pip)s(eline.)38 b(It)25 b(k)m(eeps)f(a)h(table)h(of)e(curren)m(tly)h
967625cd 16337(executing)g(jobs,)150 1592 y(whic)m(h)33 b(ma)m(y)i(b)s(e)e(listed)h
6e51e0d0 16338(with)f(the)h Ft(jobs)f Fu(command.)50 b(When)33 b(Bash)h(starts)g(a)g
967625cd
CR
16339(job)g(async)m(hronously)-8 b(,)34 b(it)150 1701 y(prin)m(ts)c(a)h
16340(line)f(that)h(lo)s(oks)g(lik)m(e:)390 1833 y Ft([1])47
16341b(25647)150 1965 y Fu(indicating)34 b(that)g(this)f(job)g(is)g(job)g(n)
6e51e0d0 16342m(um)m(b)s(er)f(1)i(and)f(that)g(the)h(pro)s(cess)f Fm(id)g
967625cd 16343Fu(of)g(the)h(last)g(pro)s(cess)f(in)g(the)150 2074 y(pip)s(eline)42
c302751c
CR
16344b(asso)s(ciated)i(with)e(this)g(job)g(is)h(25647.)78
16345b(All)43 b(of)g(the)g(pro)s(cesses)f(in)g(a)h(single)g(pip)s(eline)f
967625cd 16346(are)150 2184 y(mem)m(b)s(ers)30 b(of)g(the)h(same)f(job.)41
6e51e0d0 16347b(Bash)30 b(uses)g(the)h Fr(job)h Fu(abstraction)f(as)g(the)g(basis)f
967625cd 16348(for)g(job)g(con)m(trol.)275 2315 y(T)-8 b(o)23 b(facilitate)j(the)d
c302751c 16349(implemen)m(tation)i(of)f(the)f(user)f(in)m(terface)j(to)f(job)f(con)m
967625cd 16350(trol,)j(the)d(op)s(erating)h(system)150 2425 y(main)m(tains)j(the)f
c302751c 16351(notion)h(of)f(a)g(curren)m(t)g(terminal)g(pro)s(cess)g(group)g
6e51e0d0 16352Fm(id)p Fu(.)39 b(Mem)m(b)s(ers)26 b(of)g(this)g(pro)s(cess)f(group)150
967625cd 163532534 y(\(pro)s(cesses)h(whose)g(pro)s(cess)g(group)g
6e51e0d0 16354Fm(id)g Fu(is)h(equal)g(to)g(the)f(curren)m(t)g(terminal)h(pro)s(cess)f
967625cd 16355(group)f Fm(id)p Fu(\))i(receiv)m(e)150 2644 y(k)m(eyb)s
6e51e0d0
CR
16356(oard-generated)22 b(signals)g(suc)m(h)e(as)h Ft(SIGINT)p
16357Fu(.)36 b(These)21 b(pro)s(cesses)g(are)g(said)g(to)g(b)s(e)g(in)f(the)
967625cd 16358h(foreground.)150 2754 y(Bac)m(kground)38 b(pro)s(cesses)f(are)h(those)
6e51e0d0 16359g(whose)f(pro)s(cess)g(group)g Fm(id)h Fu(di\013ers)f(from)g(the)g
967625cd 16360(terminal's;)42 b(suc)m(h)150 2863 y(pro)s(cesses)24
37c41ab1
CR
16361b(are)g(imm)m(une)g(to)g(k)m(eyb)s(oard-generated)h(signals.)40
16362b(Only)23 b(foreground)g(pro)s(cesses)h(are)g(allo)m(w)m(ed)150
967625cd 163632973 y(to)g(read)e(from)h(or,)h(if)f(the)g(user)f(so)i(sp)s(eci\014es)e
6e51e0d0 16364(with)h Ft(stty)29 b(tostop)p Fu(,)23 b(write)g(to)g(the)h(terminal.)38
967625cd 16365b(Bac)m(kground)150 3082 y(pro)s(cesses)27 b(whic)m(h)g(attempt)h(to)f
6e51e0d0 16366(read)g(from)g(\(write)g(to)h(when)e Ft(stty)j(tostop)d
967625cd 16367Fu(is)h(in)f(e\013ect\))j(the)e(terminal)150 3192 y(are)32
6e51e0d0 16368b(sen)m(t)g(a)g Ft(SIGTTIN)e Fu(\()p Ft(SIGTTOU)p Fu(\))g(signal)i(b)m
602bb739 16369(y)g(the)g(k)m(ernel's)g(terminal)g(driv)m(er,)g(whic)m(h,)g(unless)f
967625cd
CR
16370(caugh)m(t,)150 3302 y(susp)s(ends)d(the)i(pro)s(cess.)275
163713433 y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)g(is)h
602bb739 16372(running)d(supp)s(orts)h(job)h(con)m(trol,)j(Bash)e(con)m(tains)150
967625cd 163733543 y(facilities)30 b(to)f(use)f(it.)40 b(T)m(yping)28
6e51e0d0
CR
16374b(the)g Fr(susp)s(end)h Fu(c)m(haracter)h(\(t)m(ypically)g(`)p
16375Ft(^Z)p Fu(',)f(Con)m(trol-Z\))g(while)f(a)g(pro)s(cess)150
967625cd 163763652 y(is)42 b(running)f(causes)i(that)g(pro)s(cess)f(to)h(b)s(e)f
602bb739 16377(stopp)s(ed)f(and)h(returns)f(con)m(trol)j(to)f(Bash.)77
967625cd 16378b(T)m(yping)42 b(the)150 3762 y Fr(dela)m(y)m(ed)k(susp)s(end)f
6e51e0d0 16379Fu(c)m(haracter)h(\(t)m(ypically)g(`)p Ft(^Y)p Fu(',)i(Con)m(trol-Y\))e
602bb739 16380(causes)e(the)h(pro)s(cess)e(to)i(b)s(e)f(stopp)s(ed)150
967625cd 163813871 y(when)26 b(it)i(attempts)h(to)f(read)f(input)g(from)f(the)i
602bb739 16382(terminal,)h(and)e(con)m(trol)h(to)g(b)s(e)f(returned)f(to)j(Bash.)39
967625cd 16383b(The)150 3981 y(user)e(then)g(manipulates)h(the)g(state)h(of)f(this)f
6e51e0d0 16384(job,)j(using)d(the)h Ft(bg)f Fu(command)g(to)h(con)m(tin)m(ue)h(it)f
967625cd 16385(in)g(the)150 4091 y(bac)m(kground,)g(the)f Ft(fg)g Fu(command)f(to)i
602bb739 16386(con)m(tin)m(ue)g(it)f(in)f(the)h(foreground,)h(or)f(the)g
967625cd 16387Ft(kill)f Fu(command)g(to)150 4200 y(kill)27 b(it.)40
6e51e0d0 16388b(A)27 b(`)p Ft(^Z)p Fu(')g(tak)m(es)h(e\013ect)g(immediately)-8
602bb739 16389b(,)29 b(and)d(has)h(the)f(additional)i(side)e(e\013ect)j(of)d(causing)
967625cd 16390h(p)s(ending)150 4310 y(output)j(and)g(t)m(yp)s(eahead)h(to)g(b)s(e)e
c302751c 16391(discarded.)275 4441 y(There)j(are)g(a)h(n)m(um)m(b)s(er)e(of)i(w)m(a)m
602bb739 16392(ys)g(to)h(refer)e(to)h(a)g(job)f(in)g(the)h(shell.)47
6e51e0d0 16393b(The)32 b(c)m(haracter)i(`)p Ft(\045)p Fu(')f(in)m(tro)s(duces)150
967625cd 163944551 y(a)e(job)f(sp)s(eci\014cation)h(\()p Fr(jobsp)s(ec)6
6e51e0d0
CR
16395b Fu(\).)275 4682 y(Job)31 b(n)m(um)m(b)s(er)f Ft(n)h
16396Fu(ma)m(y)h(b)s(e)f(referred)g(to)h(as)g(`)p Ft(\045n)p
16397Fu('.)44 b(The)31 b(sym)m(b)s(ols)g(`)p Ft(\045\045)p
16398Fu(')h(and)f(`)p Ft(\045+)p Fu(')g(refer)h(to)g(the)g(shell's)150
c302751c 163994792 y(notion)k(of)f(the)g(curren)m(t)g(job,)h(whic)m(h)f(is)g(the)g
eb2bb562 16400(last)h(job)f(stopp)s(ed)f(while)h(it)h(w)m(as)g(in)e(the)i(foreground)
c302751c 16401e(or)150 4902 y(started)27 b(in)g(the)g(bac)m(kground.)40
6e51e0d0 16402b(A)27 b(single)g(`)p Ft(\045)p Fu(')g(\(with)g(no)g(accompan)m(ying)i
c302751c 16403(job)d(sp)s(eci\014cation\))i(also)g(refers)150 5011
09767ff0 16404y(to)k(the)e(curren)m(t)h(job.)42 b(The)30 b(previous)g(job)h(ma)m(y)g
6e51e0d0 16405(b)s(e)f(referenced)h(using)f(`)p Ft(\045-)p Fu('.)42
c302751c 16406b(If)30 b(there)h(is)g(only)g(a)g(single)150 5121 y(job,)g(`)p
6e51e0d0 16407Ft(\045+)p Fu(')g(and)f(`)p Ft(\045-)p Fu(')h(can)h(b)s(oth)e(b)s(e)g
09767ff0 16408(used)h(to)g(refer)g(to)h(that)g(job.)42 b(In)30 b(output)h(p)s
c302751c 16409(ertaining)g(to)g(jobs)g(\(e.g.,)150 5230 y(the)39 b(output)f(of)g(the)
6e51e0d0
CR
16410h Ft(jobs)e Fu(command\),)k(the)d(curren)m(t)h(job)f(is)g(alw)m(a)m(ys)
16411i(\015agged)f(with)f(a)h(`)p Ft(+)p Fu(',)i(and)d(the)150
164125340 y(previous)30 b(job)g(with)g(a)h(`)p Ft(-)p Fu('.)p
c302751c 16413eop end
fffe80d4
CR
16414%%Page: 113 119
16415TeXDict begin 113 118 bop 150 -116 a Fu(Chapter)30 b(7:)41
16416b(Job)30 b(Con)m(trol)2526 b(113)275 299 y(A)38 b(job)g(ma)m(y)h(also)g
ad4aef08 16417(b)s(e)f(referred)f(to)j(using)d(a)i(pre\014x)e(of)i(the)f(name)h(used)
d37a4722
CR
16418e(to)i(start)g(it,)i(or)e(using)f(a)150 408 y(substring)g(that)j(app)s
16419(ears)e(in)g(its)h(command)f(line.)69 b(F)-8 b(or)41
16420b(example,)i(`)p Ft(\045ce)p Fu(')c(refers)g(to)i(a)f(stopp)s(ed)e(job)
16421150 518 y(whose)30 b(command)g(name)g(b)s(egins)g(with)g(`)p
16422Ft(ce)p Fu('.)40 b(Using)31 b(`)p Ft(\045?ce)p Fu(',)f(on)g(the)g
16423(other)h(hand,)e(refers)h(to)h(an)m(y)f(job)150 628 y(con)m(taining)e
16424(the)e(string)h(`)p Ft(ce)p Fu(')f(in)g(its)h(command)f(line.)40
16425b(If)26 b(the)g(pre\014x)g(or)g(substring)f(matc)m(hes)j(more)e(than)
16426150 737 y(one)31 b(job,)f(Bash)g(rep)s(orts)g(an)g(error.)275
16427869 y(Simply)g(naming)h(a)g(job)g(can)g(b)s(e)f(used)h(to)g(bring)f(it)
6e51e0d0 16428i(in)m(to)g(the)f(foreground:)41 b(`)p Ft(\0451)p Fu(')31
d37a4722 16429b(is)g(a)h(synon)m(ym)e(for)150 978 y(`)p Ft(fg)g(\0451)p
6e51e0d0
CR
16430Fu(',)i(bringing)f(job)g(1)g(from)g(the)h(bac)m(kground)f(in)m(to)i
16431(the)e(foreground.)44 b(Similarly)-8 b(,)32 b(`)p Ft(\0451)e(&)p
d37a4722
CR
16432Fu(')i(resumes)150 1088 y(job)e(1)h(in)f(the)g(bac)m(kground,)h(equiv)
16433-5 b(alen)m(t)32 b(to)f(`)p Ft(bg)f(\0451)p Fu(')275
164341219 y(The)g(shell)i(learns)f(immediately)i(whenev)m(er)e(a)h(job)f(c)m
37c41ab1 16435(hanges)h(state.)45 b(Normally)-8 b(,)33 b(Bash)e(w)m(aits)i(un)m(til)
d37a4722 16436150 1329 y(it)25 b(is)g(ab)s(out)f(to)i(prin)m(t)e(a)h(prompt)f(b)s
37c41ab1 16437(efore)g(rep)s(orting)h(c)m(hanges)g(in)g(a)g(job's)f(status)h(so)g(as)
d37a4722 16438g(to)g(not)g(in)m(terrupt)150 1439 y(an)m(y)k(other)f(output.)40
6e51e0d0
CR
16439b(If)28 b(the)g Ft(-b)g Fu(option)g(to)h(the)g Ft(set)e
16440Fu(builtin)h(is)g(enabled,)h(Bash)g(rep)s(orts)e(suc)m(h)h(c)m(hanges)
d37a4722 16441150 1548 y(immediately)d(\(see)g(Section)g(4.3.1)g([The)f(Set)g
e59452c7 16442(Builtin],)i(page)f(66\).)40 b(An)m(y)24 b(trap)f(on)h
d37a4722
CR
16443Ft(SIGCHLD)e Fu(is)i(executed)150 1658 y(for)30 b(eac)m(h)i(c)m(hild)e
16444(pro)s(cess)g(that)h(exits.)275 1789 y(If)25 b(an)h(attempt)h(to)g
d3ad40de 16445(exit)g(Bash)f(is)h(made)f(while)g(jobs)f(are)i(stopp)s(ed,)f(\(or)h
d37a4722 16446(running,)e(if)h(the)g Ft(checkjobs)150 1899 y Fu(option)e(is)f
d3ad40de 16447(enabled)h({)g(see)g(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)j(page)
e59452c7 16448e(70\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
d37a4722 164492009 y(message,)k(and)c(if)i(the)f Ft(checkjobs)e Fu(option)j(is)f
d3ad40de 16450(enabled,)i(lists)e(the)h(jobs)f(and)f(their)i(statuses.)39
d37a4722 16451b(The)25 b Ft(jobs)150 2118 y Fu(command)36 b(ma)m(y)h(then)f(b)s(e)f
d3ad40de 16452(used)g(to)i(insp)s(ect)f(their)g(status.)59 b(If)36
d37a4722 16453b(a)g(second)g(attempt)i(to)f(exit)g(is)f(made)150 2228
d3ad40de
CR
16454y(without)e(an)f(in)m(terv)m(ening)i(command,)f(Bash)g(do)s(es)f(not)h
16455(prin)m(t)g(another)f(w)m(arning,)i(and)e(an)m(y)h(stopp)s(ed)150
d37a4722 164562337 y(jobs)c(are)h(terminated.)275 2469 y(When)f(the)h(shell)g(is)f(w)
7e92fb35
CR
16457m(aiting)i(for)f(a)g(job)f(or)h(pro)s(cess)f(using)g(the)h
16458Ft(wait)f Fu(builtin,)g(and)g(job)h(con)m(trol)h(is)150
d37a4722 164592578 y(enabled,)i Ft(wait)f Fu(will)g(return)g(when)f(the)i(job)f(c)m
9128f932 16460(hanges)h(state.)51 b(The)33 b Ft(-f)g Fu(option)h(causes)f
d37a4722
CR
16461Ft(wait)g Fu(to)h(w)m(ait)150 2688 y(un)m(til)d(the)f(job)g(or)h(pro)s
16462(cess)f(terminates)h(b)s(efore)f(returning.)150 2923
16463y Fs(7.2)68 b(Job)45 b(Con)l(trol)h(Builtins)150 3104
16464y Ft(bg)870 3236 y(bg)h([)p Fj(jobspec)f Ft(...)o(])630
164653367 y Fu(Resume)24 b(eac)m(h)h(susp)s(ended)d(job)i
7e92fb35 16466Fr(jobsp)s(ec)29 b Fu(in)24 b(the)g(bac)m(kground,)h(as)g(if)f(it)h
d37a4722 16467(had)e(b)s(een)g(started)630 3477 y(with)32 b(`)p Ft(&)p
7e92fb35
CR
16468Fu('.)45 b(If)31 b Fr(jobsp)s(ec)37 b Fu(is)32 b(not)g(supplied,)f(the)
16469h(curren)m(t)g(job)f(is)h(used.)45 b(The)31 b(return)g(status)630
d37a4722 164703586 y(is)i(zero)g(unless)f(it)h(is)g(run)e(when)h(job)g(con)m(trol)i
7e92fb35 16471(is)f(not)g(enabled,)h(or,)f(when)f(run)f(with)h(job)630
d37a4722 164723696 y(con)m(trol)h(enabled,)g(an)m(y)f Fr(jobsp)s(ec)37
7e92fb35 16473b Fu(w)m(as)32 b(not)g(found)f(or)g(sp)s(eci\014es)h(a)g(job)g(that)g
d37a4722
CR
16474(w)m(as)g(started)630 3806 y(without)e(job)g(con)m(trol.)150
164753959 y Ft(fg)870 4091 y(fg)47 b([)p Fj(jobspec)p Ft(])630
164764222 y Fu(Resume)c(the)g(job)g Fr(jobsp)s(ec)48 b Fu(in)43
7e92fb35 16477b(the)g(foreground)g(and)f(mak)m(e)j(it)e(the)h(curren)m(t)f(job.)78
d37a4722 16478b(If)630 4332 y Fr(jobsp)s(ec)41 b Fu(is)c(not)f(supplied,)h(the)f
7e92fb35 16479(curren)m(t)h(job)f(is)g(used.)58 b(The)36 b(return)f(status)h(is)h
d37a4722 16480(that)g(of)630 4441 y(the)d(command)g(placed)h(in)m(to)g(the)f
37c41ab1 16481(foreground,)g(or)g(non-zero)h(if)f(run)f(when)g(job)g(con)m(trol)630
d37a4722 164824551 y(is)i(disabled)g(or,)i(when)d(run)g(with)h(job)g(con)m(trol)h
6e51e0d0 16483(enabled,)h Fr(jobsp)s(ec)j Fu(do)s(es)35 b(not)h(sp)s(ecify)f(a)630
d37a4722 164844660 y(v)-5 b(alid)31 b(job)f(or)g Fr(jobsp)s(ec)35 b
6e51e0d0 16485Fu(sp)s(eci\014es)30 b(a)h(job)f(that)h(w)m(as)g(started)g(without)f
d37a4722
CR
16486(job)g(con)m(trol.)150 4814 y Ft(jobs)870 4945 y(jobs)47
16487b([-lnprs])e([)p Fj(jobspec)p Ft(])870 5055 y(jobs)i(-x)g
16488Fj(command)f Ft([)p Fj(arguments)p Ft(])630 5187 y Fu(The)30
6e51e0d0 16489b(\014rst)f(form)h(lists)h(the)g(activ)m(e)h(jobs.)41
37c41ab1 16490b(The)30 b(options)g(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
7e92fb35
CR
164915340 y Ft(-l)384 b Fu(List)31 b(pro)s(cess)f Fm(id)p
16492Fu(s)g(in)g(addition)h(to)g(the)f(normal)h(information.)p
602bb739 16493eop end
fffe80d4
CR
16494%%Page: 114 120
16495TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(7:)41
16496b(Job)30 b(Con)m(trol)2526 b(114)630 299 y Ft(-n)384
7e92fb35
CR
16497b Fu(Displa)m(y)26 b(information)f(only)h(ab)s(out)e(jobs)h(that)g(ha)m
16498(v)m(e)i(c)m(hanged)e(status)h(since)1110 408 y(the)31
16499b(user)e(w)m(as)i(last)g(noti\014ed)f(of)h(their)f(status.)630
d37a4722 16500583 y Ft(-p)384 b Fu(List)31 b(only)f(the)h(pro)s(cess)f
7e92fb35 16501Fm(id)g Fu(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)630
d37a4722
CR
16502757 y Ft(-r)384 b Fu(Displa)m(y)32 b(only)e(running)f(jobs.)630
16503931 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630
165041105 y(If)23 b Fr(jobsp)s(ec)28 b Fu(is)23 b(giv)m(en,)i(output)e(is)g
6e51e0d0 16505(restricted)h(to)g(information)f(ab)s(out)g(that)h(job.)37
d37a4722
CR
16506b(If)23 b Fr(jobsp)s(ec)630 1214 y Fu(is)30 b(not)h(supplied,)e(the)i
16507(status)g(of)f(all)h(jobs)f(is)h(listed.)630 1356 y(If)k(the)g
6e51e0d0
CR
16508Ft(-x)f Fu(option)i(is)f(supplied,)g Ft(jobs)f Fu(replaces)i(an)m(y)f
16509Fr(jobsp)s(ec)40 b Fu(found)34 b(in)h Fr(command)j Fu(or)630
d37a4722 165101466 y Fr(argumen)m(ts)j Fu(with)c(the)h(corresp)s(onding)e(pro)s(cess)
7e92fb35 16511h(group)f Fm(id)p Fu(,)k(and)c(executes)j Fr(command)p
d37a4722
CR
16512Fu(,)630 1575 y(passing)30 b(it)h Fr(argumen)m(t)r Fu(s,)g(returning)f
16513(its)g(exit)i(status.)150 1749 y Ft(kill)870 1891 y(kill)47
6e51e0d0 16514b([-s)g Fj(sigspec)p Ft(])e([-n)i Fj(signum)p Ft(])f([-)p
d37a4722
CR
16515Fj(sigspec)p Ft(])f Fj(jobspec)h Ft(or)h Fj(pid)870 2001
16516y Ft(kill)g(-l|-L)f([)p Fj(exit_status)p Ft(])630 2143
900a813b
CR
16517y Fu(Send)22 b(a)i(signal)g(sp)s(eci\014ed)f(b)m(y)g
16518Fr(sigsp)s(ec)29 b Fu(or)24 b Fr(sign)m(um)f Fu(to)h(the)g(pro)s(cess)f
d37a4722 16519(named)g(b)m(y)g(job)g(sp)s(eci\014-)630 2252 y(cation)k
900a813b
CR
16520Fr(jobsp)s(ec)j Fu(or)25 b(pro)s(cess)g Fm(id)h Fr(pid)p
16521Fu(.)38 b Fr(sigsp)s(ec)31 b Fu(is)25 b(either)h(a)g(case-insensitiv)m
d37a4722 16522(e)i(signal)e(name)630 2362 y(suc)m(h)37 b(as)g Ft(SIGINT)f
900a813b 16523Fu(\(with)h(or)g(without)g(the)g Ft(SIG)g Fu(pre\014x\))f(or)h(a)h
d37a4722 16524(signal)g(n)m(um)m(b)s(er;)h Fr(sign)m(um)630 2471 y
900a813b
CR
16525Fu(is)g(a)f(signal)i(n)m(um)m(b)s(er.)63 b(If)39 b Fr(sigsp)s(ec)44
16526b Fu(and)38 b Fr(sign)m(um)g Fu(are)h(not)g(presen)m(t,)h
d37a4722 16527Ft(SIGTERM)d Fu(is)h(used.)630 2581 y(The)27 b Ft(-l)h
900a813b
CR
16528Fu(option)g(lists)h(the)f(signal)h(names.)39 b(If)28
16529b(an)m(y)g(argumen)m(ts)h(are)f(supplied)f(when)g Ft(-l)g
d37a4722 16530Fu(is)630 2690 y(giv)m(en,)32 b(the)g(names)e(of)i(the)f(signals)g
900a813b 16531(corresp)s(onding)f(to)i(the)f(argumen)m(ts)g(are)h(listed,)g(and)630
d37a4722
CR
165322800 y(the)c(return)f(status)h(is)g(zero.)41 b Fr(exit)p
165331796 2800 28 4 v 41 w(status)32 b Fu(is)c(a)g(n)m(um)m(b)s(er)f(sp)s
16534(ecifying)g(a)i(signal)f(n)m(um)m(b)s(er)f(or)630 2910
900a813b
CR
16535y(the)h(exit)h(status)g(of)f(a)h(pro)s(cess)e(terminated)i(b)m(y)f(a)h
16536(signal.)40 b(The)28 b Ft(-L)g Fu(option)g(is)g(equiv)-5
d37a4722 16537b(alen)m(t)630 3019 y(to)34 b Ft(-l)p Fu(.)47 b(The)32
900a813b 16538b(return)g(status)h(is)g(zero)g(if)g(at)g(least)h(one)f(signal)h(w)m
d37a4722 16539(as)f(successfully)g(sen)m(t,)h(or)630 3129 y(non-zero)d(if)f(an)h
900a813b 16540(error)f(o)s(ccurs)g(or)g(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
d37a4722 16541(encoun)m(tered.)150 3303 y Ft(wait)870 3445 y(wait)47
fc35c477 16542b([-fn])f([-p)h Fj(varname)p Ft(])e([)p Fj(jobspec)h
d37a4722 16543Ft(or)h Fj(pid)g Ft(...)o(])630 3587 y Fu(W)-8 b(ait)28
fc35c477
CR
16544b(un)m(til)f(the)f(c)m(hild)h(pro)s(cess)f(sp)s(eci\014ed)g(b)m(y)g
16545(eac)m(h)h(pro)s(cess)f Fm(id)h Fr(pid)i Fu(or)d(job)g(sp)s
d37a4722 16546(eci\014cation)630 3696 y Fr(jobsp)s(ec)40 b Fu(exits)35
fc35c477 16547b(and)f(return)g(the)g(exit)i(status)f(of)g(the)g(last)g(command)f(w)m
d37a4722 16548(aited)i(for.)53 b(If)35 b(a)630 3806 y(job)g(sp)s(ec)f(is)h(giv)m(en,)
fc35c477 16549i(all)f(pro)s(cesses)f(in)f(the)h(job)g(are)g(w)m(aited)h(for.)54
d37a4722 16550b(If)35 b(no)f(argumen)m(ts)i(are)630 3915 y(giv)m(en,)28
fc35c477 16551b Ft(wait)c Fu(w)m(aits)j(for)e(all)i(running)c(bac)m(kground)j(jobs)f
d37a4722
CR
16552(and)g(the)h(last-executed)h(pro)s(cess)630 4025 y(substitution,)37
16553b(if)f(its)g(pro)s(cess)f(id)h(is)f(the)h(same)g(as)g
16554Fr($!)p Fu(,)i(and)d(the)h(return)f(status)h(is)g(zero.)630
165554134 y(If)h(the)h Ft(-n)f Fu(option)h(is)f(supplied,)i
e59452c7
CR
16556Ft(wait)d Fu(w)m(aits)j(for)e(a)h(single)g(job)f(from)h(the)f(list)i
16557(of)e Fr(pid)t Fu(s)630 4244 y(or)31 b Fr(jobsp)s(ec)6
16558b Fu(s)30 b(or,)i(if)f(no)g(argumen)m(ts)h(are)f(supplied,)g(an)m(y)g
16559(job,)h(to)g(complete)h(and)d(returns)630 4354 y(its)36
16560b(exit)h(status.)56 b(If)35 b(none)h(of)g(the)g(supplied)e(argumen)m
16561(ts)i(is)f(a)h(c)m(hild)g(of)g(the)g(shell,)h(or)f(if)630
165624463 y(no)31 b(argumen)m(ts)g(are)g(supplied)f(and)g(the)h(shell)g(has)
16563g(no)f(un)m(w)m(aited-for)i(c)m(hildren,)f(the)g(exit)630
165644573 y(status)k(is)g(127.)55 b(If)34 b(the)h Ft(-p)g
16565Fu(option)g(is)g(supplied,)f(the)h(pro)s(cess)g(or)f(job)h(iden)m
16566(ti\014er)g(of)g(the)630 4682 y(job)j(for)g(whic)m(h)f(the)i(exit)g
16567(status)f(is)g(returned)f(is)h(assigned)h(to)g(the)f(v)-5
16568b(ariable)39 b Fr(v)-5 b(arname)630 4792 y Fu(named)29
16569b(b)m(y)f(the)i(option)f(argumen)m(t.)41 b(The)28 b(v)-5
16570b(ariable)30 b(will)g(b)s(e)e(unset)h(initially)-8 b(,)31
16571b(b)s(efore)e(an)m(y)630 4902 y(assignmen)m(t.)76 b(This)41
16572b(is)h(useful)f(only)h(when)f(the)h Ft(-n)f Fu(option)i(is)f(supplied.)
1657374 b(Supplying)630 5011 y(the)39 b Ft(-f)f Fu(option,)k(when)37
16574b(job)i(con)m(trol)h(is)f(enabled,)i(forces)e Ft(wait)e
16575Fu(to)j(w)m(ait)g(for)e(eac)m(h)i Fr(pid)630 5121 y Fu(or)29
16576b Fr(jobsp)s(ec)34 b Fu(to)c(terminate)g(b)s(efore)f(returning)f(its)h
16577(status,)h(in)m(tead)g(of)f(returning)f(when)g(it)630
165785230 y(c)m(hanges)37 b(status.)58 b(If)35 b(neither)h
fc35c477 16579Fr(jobsp)s(ec)41 b Fu(nor)36 b Fr(pid)i Fu(sp)s(eci\014es)e(an)g(activ)
d37a4722
CR
16580m(e)i(c)m(hild)e(pro)s(cess)g(of)630 5340 y(the)31 b(shell,)f(the)h
16581(return)e(status)i(is)f(127.)p eop end
fffe80d4
CR
16582%%Page: 115 121
16583TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(7:)41
16584b(Job)30 b(Con)m(trol)2526 b(115)150 299 y Ft(disown)870
d37a4722
CR
16585433 y(disown)46 b([-ar])g([-h])h([)p Fj(jobspec)f Ft(...)h(|)g
16586Fj(pid)g Ft(...)g(])630 568 y Fu(Without)33 b(options,)h(remo)m(v)m(e)g
16587(eac)m(h)f Fr(jobsp)s(ec)38 b Fu(from)32 b(the)h(table)g(of)g(activ)m
16588(e)h(jobs.)47 b(If)32 b(the)h Ft(-h)630 677 y Fu(option)j(is)f(giv)m
f6029107 16589(en,)i(the)f(job)f(is)g(not)g(remo)m(v)m(ed)h(from)f(the)g(table,)j
d37a4722
CR
16590(but)c(is)i(mark)m(ed)f(so)g(that)630 787 y Ft(SIGHUP)e
16591Fu(is)j(not)f(sen)m(t)h(to)g(the)f(job)g(if)g(the)g(shell)h(receiv)m
f6029107 16592(es)h(a)e Ft(SIGHUP)p Fu(.)54 b(If)34 b Fr(jobsp)s(ec)40
d37a4722 16593b Fu(is)c(not)630 897 y(presen)m(t,)41 b(and)d(neither)h(the)g
f6029107 16594Ft(-a)f Fu(nor)g(the)h Ft(-r)f Fu(option)h(is)g(supplied,)g(the)g
d37a4722 16595(curren)m(t)g(job)f(is)630 1006 y(used.)g(If)25 b(no)h
f6029107 16596Fr(jobsp)s(ec)k Fu(is)c(supplied,)f(the)h Ft(-a)f Fu(option)h(means)g
d37a4722 16597(to)g(remo)m(v)m(e)h(or)e(mark)h(all)g(jobs;)630 1116
f6029107 16598y(the)31 b Ft(-r)e Fu(option)i(without)g(a)f Fr(jobsp)s(ec)36
fc35c477 16599b Fu(argumen)m(t)30 b(restricts)h(op)s(eration)g(to)g(running)e(jobs.)
d37a4722
CR
16600150 1275 y Ft(suspend)870 1410 y(suspend)46 b([-f])630
166011544 y Fu(Susp)s(end)31 b(the)i(execution)h(of)g(this)f(shell)g(un)m
fc35c477 16602(til)h(it)g(receiv)m(es)h(a)e Ft(SIGCONT)f Fu(signal.)50
d37a4722 16603b(A)33 b(login)630 1654 y(shell)28 b(cannot)g(b)s(e)f(susp)s(ended;)g
fc35c477 16604(the)g Ft(-f)g Fu(option)i(can)f(b)s(e)f(used)g(to)h(o)m(v)m(erride)h
d37a4722
CR
16605(this)e(and)g(force)630 1763 y(the)k(susp)s(ension.)275
166061923 y(When)f(job)f(con)m(trol)j(is)e(not)h(activ)m(e,)i(the)d
fc35c477 16607Ft(kill)f Fu(and)h Ft(wait)f Fu(builtins)g(do)h(not)h(accept)h
d37a4722 16608Fr(jobsp)s(ec)j Fu(argu-)150 2032 y(men)m(ts.)41 b(They)30
fc35c477 16609b(m)m(ust)g(b)s(e)g(supplied)f(pro)s(cess)h Fm(id)p Fu(s.)150
d37a4722
CR
166102273 y Fs(7.3)68 b(Job)45 b(Con)l(trol)h(V)-11 b(ariables)150
166112457 y Ft(auto_resume)630 2567 y Fu(This)31 b(v)-5 b(ariable)32
fc35c477 16612b(con)m(trols)g(ho)m(w)g(the)f(shell)h(in)m(teracts)h(with)e(the)h
d37a4722 16613(user)e(and)h(job)g(con)m(trol.)45 b(If)630 2677 y(this)28
fc35c477 16614b(v)-5 b(ariable)30 b(exists)f(then)f(single)h(w)m(ord)f(simple)h
d37a4722 16615(commands)f(without)g(redirections)i(are)630 2786 y(treated)h(as)g
fc35c477 16616(candidates)f(for)g(resumption)g(of)g(an)g(existing)h(job.)41
d37a4722 16617b(There)29 b(is)h(no)h(am)m(biguit)m(y)630 2896 y(allo)m(w)m(ed;)f(if)d
fc35c477 16618(there)g(is)g(more)g(than)f(one)h(job)g(b)s(eginning)f(with)g(the)h
d37a4722 16619(string)g(t)m(yp)s(ed,)g(then)g(the)630 3005 y(most)j(recen)m(tly)h
fc35c477 16620(accessed)f(job)f(will)h(b)s(e)f(selected.)42 b(The)29
d37a4722 16621b(name)g(of)h(a)g(stopp)s(ed)e(job,)i(in)f(this)630 3115
fc35c477
CR
16622y(con)m(text,)h(is)e(the)g(command)g(line)g(used)f(to)h(start)g(it.)41
16623b(If)27 b(this)h(v)-5 b(ariable)28 b(is)g(set)g(to)h(the)e(v)-5
d37a4722 16624b(alue)630 3225 y(`)p Ft(exact)p Fu(',)33 b(the)g(string)g(supplied)f
37c41ab1 16625(m)m(ust)h(matc)m(h)g(the)h(name)f(of)g(a)g(stopp)s(ed)f(job)h
d37a4722 16626(exactly;)j(if)630 3334 y(set)29 b(to)h(`)p Ft(substring)p
6e51e0d0 16627Fu(',)d(the)i(string)g(supplied)e(needs)i(to)g(matc)m(h)h(a)f
d37a4722 16628(substring)f(of)h(the)g(name)630 3444 y(of)38 b(a)f(stopp)s(ed)g(job.)
6e51e0d0 1662962 b(The)37 b(`)p Ft(substring)p Fu(')e(v)-5 b(alue)38
37c41ab1 16630b(pro)m(vides)f(functionalit)m(y)i(analogous)g(to)630
d37a4722 166313553 y(the)c(`)p Ft(\045?)p Fu(')g(job)g Fm(id)g Fu(\(see)h(Section)g
fffe80d4 16632(7.1)g([Job)e(Con)m(trol)i(Basics],)i(page)e(112\).)56
d37a4722 16633b(If)34 b(set)i(to)g(an)m(y)630 3663 y(other)c(v)-5 b(alue,)32
4d63a619 16634b(the)g(supplied)e(string)i(m)m(ust)f(b)s(e)g(a)h(pre\014x)f(of)h(a)g
d37a4722 16635(stopp)s(ed)e(job's)i(name;)g(this)630 3773 y(pro)m(vides)e
4d63a619
CR
16636(functionalit)m(y)i(analogous)g(to)f(the)g(`)p Ft(\045)p
16637Fu(')f(job)g Fm(id)p Fu(.)p eop end
fffe80d4
CR
16638%%Page: 116 122
16639TeXDict begin 116 121 bop 3614 -116 a Fu(116)150 299
037a8b7f
CR
16640y Fp(8)80 b(Command)54 b(Line)f(Editing)150 635 y Fu(This)28
16641b(c)m(hapter)i(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g
16642Fm(gnu)f Fu(command)h(line)g(editing)h(in)m(terface.)42
16643b(Com-)150 745 y(mand)c(line)i(editing)f(is)g(pro)m(vided)g(b)m(y)g
16644(the)g(Readline)h(library)-8 b(,)41 b(whic)m(h)e(is)g(used)f(b)m(y)h
16645(sev)m(eral)h(di\013eren)m(t)150 855 y(programs,)34 b(including)e
16646(Bash.)49 b(Command)32 b(line)i(editing)f(is)g(enabled)g(b)m(y)g
16647(default)g(when)f(using)h(an)g(in-)150 964 y(teractiv)m(e)h(shell,)d
16648(unless)g(the)g Ft(--noediting)d Fu(option)k(is)f(supplied)e(at)j
16649(shell)f(in)m(v)m(o)s(cation.)45 b(Line)31 b(editing)150
166501074 y(is)g(also)h(used)f(when)f(using)h(the)g Ft(-e)g
16651Fu(option)h(to)g(the)f Ft(read)f Fu(builtin)h(command)g(\(see)h
e59452c7 16652(Section)g(4.2)h([Bash)150 1183 y(Builtins],)j(page)f(54\).)52
037a8b7f
CR
16653b(By)35 b(default,)g(the)f(line)h(editing)f(commands)g(are)h(similar)f
16654(to)h(those)f(of)g(Emacs.)150 1293 y(A)h(vi-st)m(yle)h(line)f(editing)g
16655(in)m(terface)h(is)e(also)i(a)m(v)-5 b(ailable.)55 b(Line)34
16656b(editing)h(can)g(b)s(e)f(enabled)g(at)h(an)m(y)g(time)150
166571402 y(using)h(the)g Ft(-o)30 b(emacs)35 b Fu(or)h Ft(-o)30
16658b(vi)35 b Fu(options)i(to)g(the)f Ft(set)f Fu(builtin)h(command)g
16659(\(see)h(Section)g(4.3.1)h([The)150 1512 y(Set)31 b(Builtin],)g(page)g
e59452c7 16660(66\),)h(or)e(disabled)g(using)g(the)h Ft(+o)e(emacs)g
037a8b7f
CR
16661Fu(or)i Ft(+o)e(vi)h Fu(options)h(to)g Ft(set)p Fu(.)150
166621804 y Fs(8.1)68 b(In)l(tro)t(duction)45 b(to)g(Line)h(Editing)150
166631963 y Fu(The)30 b(follo)m(wing)i(paragraphs)d(describ)s(e)h(the)h
16664(notation)g(used)f(to)h(represen)m(t)f(k)m(eystrok)m(es.)275
166652132 y(The)35 b(text)i Fj(C-k)f Fu(is)g(read)g(as)h(`Con)m(trol-K')g
16666(and)f(describ)s(es)f(the)h(c)m(haracter)i(pro)s(duced)d(when)g(the)h
16667Ft(k)150 2242 y Fu(k)m(ey)31 b(is)g(pressed)e(while)h(the)h(Con)m(trol)
16668g(k)m(ey)g(is)g(depressed.)275 2410 y(The)g(text)i Fj(M-k)e
16669Fu(is)h(read)f(as)i(`Meta-K')g(and)f(describ)s(es)f(the)h(c)m(haracter)
16670h(pro)s(duced)e(when)f(the)i(Meta)150 2520 y(k)m(ey)i(\(if)f(y)m(ou)h
16671(ha)m(v)m(e)g(one\))g(is)f(depressed,)g(and)f(the)h Ft(k)g
16672Fu(k)m(ey)h(is)f(pressed.)48 b(The)32 b(Meta)j(k)m(ey)e(is)h(lab)s
16673(eled)f Ft(ALT)150 2629 y Fu(on)c(man)m(y)h(k)m(eyb)s(oards.)40
16674b(On)29 b(k)m(eyb)s(oards)g(with)h(t)m(w)m(o)h(k)m(eys)f(lab)s(eled)g
6e51e0d0 16675Ft(ALT)e Fu(\(usually)i(to)g(either)g(side)g(of)g(the)150
967625cd 166762739 y(space)h(bar\),)f(the)g Ft(ALT)f Fu(on)h(the)g(left)h(side)f(is)g
c302751c 16677(generally)h(set)f(to)h(w)m(ork)f(as)g(a)h(Meta)g(k)m(ey)-8
967625cd 16678b(.)42 b(The)29 b Ft(ALT)g Fu(k)m(ey)i(on)150 2849 y(the)c(righ)m(t)h
c302751c
CR
16679(ma)m(y)g(also)g(b)s(e)f(con\014gured)f(to)i(w)m(ork)f(as)h(a)f(Meta)i
16680(k)m(ey)f(or)f(ma)m(y)h(b)s(e)e(con\014gured)h(as)g(some)h(other)150
967625cd
CR
166812958 y(mo)s(di\014er,)i(suc)m(h)g(as)g(a)h(Comp)s(ose)f(k)m(ey)h(for)f
16682(t)m(yping)h(accen)m(ted)h(c)m(haracters.)275 3127 y(If)23
6e51e0d0
CR
16683b(y)m(ou)i(do)f(not)h(ha)m(v)m(e)h(a)f(Meta)g(or)g Ft(ALT)e
16684Fu(k)m(ey)-8 b(,)27 b(or)e(another)f(k)m(ey)i(w)m(orking)e(as)h(a)g
967625cd 16685(Meta)h(k)m(ey)-8 b(,)27 b(the)d(iden)m(tical)150 3236
c302751c 16686y(k)m(eystrok)m(e)30 b(can)f(b)s(e)f(generated)h(b)m(y)g(t)m(yping)g
6e51e0d0
CR
16687Ft(ESC)e Fl(\014rst)p Fu(,)j(and)e(then)g(t)m(yping)h
16688Ft(k)p Fu(.)40 b(Either)28 b(pro)s(cess)g(is)g(kno)m(wn)150
967625cd
CR
166893346 y(as)j Fr(metafying)39 b Fu(the)30 b Ft(k)g Fu(k)m(ey)-8
16690b(.)275 3515 y(The)39 b(text)j Fj(M-C-k)d Fu(is)h(read)g(as)h
c302751c 16691(`Meta-Con)m(trol-k')j(and)39 b(describ)s(es)h(the)g(c)m(haracter)i
967625cd
CR
16692(pro)s(duced)d(b)m(y)150 3624 y Fr(metafying)g Fj(C-k)p
16693Fu(.)275 3793 y(In)c(addition,)j(sev)m(eral)f(k)m(eys)g(ha)m(v)m(e)g
c302751c 16694(their)f(o)m(wn)g(names.)58 b(Sp)s(eci\014cally)-8 b(,)38
6e51e0d0 16695b Ft(DEL)p Fu(,)f Ft(ESC)p Fu(,)g Ft(LFD)p Fu(,)g Ft(SPC)p
967625cd 16696Fu(,)g Ft(RET)p Fu(,)150 3902 y(and)d Ft(TAB)f Fu(all)j(stand)e(for)g
c302751c 16697(themselv)m(es)i(when)d(seen)i(in)f(this)g(text,)j(or)d(in)h(an)f(init)
967625cd 16698h(\014le)f(\(see)i(Section)f(8.3)150 4012 y([Readline)f(Init)g(File],)i
fffe80d4 16699(page)e(119\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
6e51e0d0 16700Ft(LFD)f Fu(k)m(ey)-8 b(,)36 b(t)m(yping)e Ft(C-j)e Fu(will)i(pro)s
967625cd 16701(duce)150 4122 y(the)d(desired)e(c)m(haracter.)43 b(The)30
6e51e0d0
CR
16702b Ft(RET)f Fu(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
16703Ft(Return)d Fu(or)j Ft(Enter)d Fu(on)j(some)g(k)m(eyb)s(oards.)150
167044413 y Fs(8.2)68 b(Readline)47 b(In)l(teraction)150 4573
16705y Fu(Often)32 b(during)g(an)g(in)m(teractiv)m(e)j(session)e(y)m(ou)g(t)
c302751c
CR
16706m(yp)s(e)g(in)f(a)h(long)g(line)g(of)f(text,)j(only)d(to)i(notice)g
16707(that)f(the)150 4682 y(\014rst)f(w)m(ord)g(on)g(the)g(line)h(is)g
37c41ab1 16708(missp)s(elled.)46 b(The)32 b(Readline)h(library)f(giv)m(es)h(y)m(ou)g
a9fac3b2 16709(a)g(set)g(of)f(commands)g(for)150 4792 y(manipulating)e(the)g(text)h
37c41ab1
CR
16710(as)f(y)m(ou)g(t)m(yp)s(e)g(it)g(in,)g(allo)m(wing)h(y)m(ou)f(to)h
16711(just)e(\014x)g(y)m(our)h(t)m(yp)s(o,)g(and)g(not)g(forcing)150
a9fac3b2 167124902 y(y)m(ou)e(to)h(ret)m(yp)s(e)g(the)f(ma)5 b(jorit)m(y)29
37c41ab1 16713b(of)f(the)h(line.)40 b(Using)28 b(these)h(editing)g(commands,)f(y)m
a9fac3b2 16714(ou)h(mo)m(v)m(e)g(the)g(cursor)150 5011 y(to)35 b(the)f(place)i(that)e
37c41ab1 16715(needs)g(correction,)j(and)d(delete)h(or)f(insert)h(the)f(text)h(of)g
c302751c
CR
16716(the)f(corrections.)54 b(Then,)150 5121 y(when)24 b(y)m(ou)h(are)g
16717(satis\014ed)g(with)g(the)g(line,)i(y)m(ou)e(simply)f(press)g
6e51e0d0 16718Ft(RET)p Fu(.)39 b(Y)-8 b(ou)25 b(do)g(not)g(ha)m(v)m(e)h(to)g(b)s(e)e
c302751c 16719(at)h(the)h(end)150 5230 y(of)33 b(the)h(line)g(to)g(press)e
6e51e0d0 16720Ft(RET)p Fu(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
c302751c
CR
16721(of)f(the)h(lo)s(cation)h(of)e(the)h(cursor)150 5340
16722y(within)c(the)g(line.)p eop end
fffe80d4
CR
16723%%Page: 117 123
16724TeXDict begin 117 122 bop 150 -116 a Fu(Chapter)30 b(8:)41
16725b(Command)29 b(Line)i(Editing)2062 b(117)150 299 y Fk(8.2.1)63
6e51e0d0 16726b(Readline)40 b(Bare)h(Essen)m(tials)150 446 y Fu(In)31
ad4aef08
CR
16727b(order)h(to)h(en)m(ter)g(c)m(haracters)g(in)m(to)g(the)g(line,)g
16728(simply)e(t)m(yp)s(e)i(them.)46 b(The)31 b(t)m(yp)s(ed)h(c)m(haracter)i
16729(app)s(ears)150 555 y(where)e(the)h(cursor)e(w)m(as,)j(and)e(then)g
16730(the)h(cursor)e(mo)m(v)m(es)j(one)f(space)g(to)g(the)g(righ)m(t.)47
16731b(If)32 b(y)m(ou)h(mist)m(yp)s(e)g(a)150 665 y(c)m(haracter,)f(y)m(ou)f
16732(can)g(use)f(y)m(our)g(erase)h(c)m(haracter)h(to)f(bac)m(k)g(up)f(and)f
c302751c 16733(delete)j(the)f(mist)m(yp)s(ed)e(c)m(haracter.)275 806
a9fac3b2
CR
16734y(Sometimes)i(y)m(ou)g(ma)m(y)h(mist)m(yp)s(e)e(a)i(c)m(haracter,)g
16735(and)e(not)i(notice)g(the)f(error)f(un)m(til)h(y)m(ou)g(ha)m(v)m(e)h(t)
c302751c 16736m(yp)s(ed)150 916 y(sev)m(eral)e(other)f(c)m(haracters.)42
a9fac3b2 16737b(In)28 b(that)i(case,)g(y)m(ou)f(can)g(t)m(yp)s(e)h
6e51e0d0 16738Fj(C-b)d Fu(to)j(mo)m(v)m(e)g(the)f(cursor)g(to)g(the)g(left,)i(and)150
c302751c 167391026 y(then)f(correct)i(y)m(our)e(mistak)m(e.)42 b(Afterw)m(ards,)31
37c41ab1 16740b(y)m(ou)f(can)h(mo)m(v)m(e)h(the)e(cursor)g(to)h(the)g(righ)m(t)g
6e51e0d0 16741(with)f Fj(C-f)p Fu(.)275 1167 y(When)i(y)m(ou)h(add)f(text)h(in)f(the)
a9fac3b2 16742h(middle)f(of)h(a)g(line,)h(y)m(ou)e(will)h(notice)h(that)f(c)m
c302751c 16743(haracters)h(to)g(the)e(righ)m(t)150 1277 y(of)d(the)g(cursor)f(are)h
5e13499c 16744(`pushed)e(o)m(v)m(er')j(to)g(mak)m(e)f(ro)s(om)g(for)f(the)h(text)h
37c41ab1 16745(that)f(y)m(ou)g(ha)m(v)m(e)h(inserted.)40 b(Lik)m(ewise,)150
c302751c 167461386 y(when)d(y)m(ou)g(delete)i(text)g(b)s(ehind)c(the)j(cursor,)h(c)m
37c41ab1 16747(haracters)g(to)f(the)g(righ)m(t)g(of)g(the)g(cursor)e(are)i(`pulled)
c302751c 16748150 1496 y(bac)m(k')24 b(to)f(\014ll)g(in)f(the)h(blank)f(space)i
37c41ab1 16749(created)f(b)m(y)g(the)g(remo)m(v)-5 b(al)24 b(of)f(the)g(text.)39
c302751c 16750b(A)23 b(list)g(of)g(the)g(bare)f(essen)m(tials)150 1605
37c41ab1 16751y(for)30 b(editing)h(the)g(text)g(of)g(an)f(input)f(line)i(follo)m(ws.)
6e51e0d0
CR
16752150 1775 y Fj(C-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(k)g(one)e(c)m
16753(haracter.)150 1941 y Fj(C-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(one)
16754h(c)m(haracter.)150 2108 y Ft(DEL)e Fu(or)i Ft(Backspace)630
167552217 y Fu(Delete)i(the)d(c)m(haracter)i(to)f(the)g(left)g(of)f(the)h
16756(cursor.)150 2384 y Fj(C-d)336 b Fu(Delete)33 b(the)d(c)m(haracter)i
c302751c
CR
16757(underneath)d(the)i(cursor.)150 2550 y(Prin)m(ting)g(c)m(haracters)630
167582660 y(Insert)f(the)g(c)m(haracter)i(in)m(to)g(the)e(line)h(at)g(the)g
6e51e0d0
CR
16759(cursor.)150 2826 y Fj(C-_)e Fu(or)i Fj(C-x)e(C-u)630
167602936 y Fu(Undo)k(the)h(last)g(editing)g(command.)50 b(Y)-8
c302751c
CR
16761b(ou)34 b(can)f(undo)g(all)h(the)f(w)m(a)m(y)i(bac)m(k)f(to)g(an)g
16762(empt)m(y)630 3045 y(line.)150 3215 y(\(Dep)s(ending)29
6e51e0d0
CR
16763b(on)h(y)m(our)f(con\014guration,)i(the)e Ft(Backspace)e
16764Fu(k)m(ey)k(b)s(e)d(set)j(to)f(delete)h(the)e(c)m(haracter)i(to)g(the)
c302751c 16765150 3324 y(left)37 b(of)f(the)h(cursor)e(and)h(the)g
6e51e0d0
CR
16766Ft(DEL)g Fu(k)m(ey)h(set)f(to)h(delete)h(the)e(c)m(haracter)i
16767(underneath)d(the)h(cursor,)i(lik)m(e)150 3434 y Fj(C-d)p
16768Fu(,)30 b(rather)g(than)g(the)h(c)m(haracter)h(to)f(the)f(left)h(of)g
16769(the)f(cursor.\))150 3640 y Fk(8.2.2)63 b(Readline)40
16770b(Mo)m(v)m(emen)m(t)h(Commands)150 3787 y Fu(The)27 b(ab)s(o)m(v)m(e)i
c302751c
CR
16771(table)g(describ)s(es)e(the)g(most)i(basic)f(k)m(eystrok)m(es)h(that)f
16772(y)m(ou)g(need)g(in)f(order)g(to)i(do)e(editing)i(of)150
167733897 y(the)k(input)f(line.)49 b(F)-8 b(or)34 b(y)m(our)f(con)m(v)m
16774(enience,)j(man)m(y)d(other)g(commands)f(ha)m(v)m(e)j(b)s(een)d(added)g
6e51e0d0
CR
16775(in)h(addition)150 4006 y(to)j Fj(C-b)p Fu(,)f Fj(C-f)p
16776Fu(,)g Fj(C-d)p Fu(,)h(and)e Ft(DEL)p Fu(.)54 b(Here)35
c302751c 16777b(are)g(some)h(commands)e(for)h(mo)m(ving)h(more)f(rapidly)f(ab)s(out)h
6e51e0d0
CR
16778(the)150 4116 y(line.)150 4286 y Fj(C-a)336 b Fu(Mo)m(v)m(e)32
16779b(to)g(the)e(start)h(of)g(the)f(line.)150 4452 y Fj(C-e)336
16780b Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
167814618 y Fj(M-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(a)h(w)m(ord,)f
c302751c 16782(where)g(a)h(w)m(ord)f(is)g(comp)s(osed)g(of)h(letters)h(and)d(digits.)
6e51e0d0
CR
16783150 4785 y Fj(M-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(kw)m(ard)f(a)g(w)m
16784(ord.)150 4951 y Fj(C-l)336 b Fu(Clear)31 b(the)f(screen,)h(reprin)m
c302751c 16785(ting)f(the)h(curren)m(t)f(line)h(at)g(the)f(top.)275
6e51e0d0
CR
167865121 y(Notice)c(ho)m(w)f Fj(C-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(c)m
16787(haracter,)j(while)d Fj(M-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(w)m
37c41ab1
CR
16788(ord.)39 b(It)24 b(is)h(a)g(lo)s(ose)150 5230 y(con)m(v)m(en)m(tion)32
16789b(that)f(con)m(trol)g(k)m(eystrok)m(es)h(op)s(erate)e(on)g(c)m
16790(haracters)h(while)f(meta)h(k)m(eystrok)m(es)h(op)s(erate)e(on)150
167915340 y(w)m(ords.)p eop end
fffe80d4
CR
16792%%Page: 118 124
16793TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(8:)41
16794b(Command)29 b(Line)i(Editing)2062 b(118)150 299 y Fk(8.2.3)63
6e51e0d0
CR
16795b(Readline)40 b(Killing)i(Commands)150 446 y Fr(Killing)35
16796b Fu(text)28 b(means)e(to)h(delete)h(the)f(text)g(from)g(the)f(line,)i
c302751c 16797(but)e(to)h(sa)m(v)m(e)h(it)g(a)m(w)m(a)m(y)g(for)e(later)i(use,)f
6e51e0d0 16798(usually)150 555 y(b)m(y)g Fr(y)m(anking)35 b Fu(\(re-inserting\))28
c302751c
CR
16799b(it)g(bac)m(k)f(in)m(to)h(the)f(line.)40 b(\(`Cut')27
16800b(and)g(`paste')h(are)f(more)g(recen)m(t)h(jargon)f(for)150
16801665 y(`kill')32 b(and)d(`y)m(ank'.\))275 801 y(If)g(the)i(description)f
16802(for)g(a)h(command)f(sa)m(ys)g(that)h(it)g(`kills')g(text,)h(then)e(y)m
16803(ou)g(can)h(b)s(e)e(sure)h(that)h(y)m(ou)150 911 y(can)g(get)g(the)g
16804(text)g(bac)m(k)g(in)f(a)h(di\013eren)m(t)g(\(or)g(the)f(same\))h
16805(place)h(later.)275 1047 y(When)23 b(y)m(ou)g(use)g(a)h(kill)g
16806(command,)g(the)g(text)g(is)f(sa)m(v)m(ed)i(in)e(a)g
6e51e0d0 16807Fr(kill-ring)p Fu(.)39 b(An)m(y)24 b(n)m(um)m(b)s(er)e(of)h(consecutiv)
c302751c 16808m(e)150 1157 y(kills)31 b(sa)m(v)m(e)i(all)f(of)f(the)g(killed)h(text)g
37c41ab1 16809(together,)g(so)g(that)f(when)f(y)m(ou)h(y)m(ank)h(it)f(bac)m(k,)h(y)m
c302751c 16810(ou)g(get)g(it)f(all.)43 b(The)150 1267 y(kill)33 b(ring)f(is)g(not)h
37c41ab1
CR
16811(line)g(sp)s(eci\014c;)g(the)g(text)g(that)g(y)m(ou)g(killed)f(on)h(a)f
16812(previously)g(t)m(yp)s(ed)h(line)f(is)h(a)m(v)-5 b(ailable)150
c302751c
CR
168131376 y(to)31 b(b)s(e)f(y)m(ank)m(ed)h(bac)m(k)g(later,)h(when)d(y)m(ou)
16814i(are)g(t)m(yping)f(another)h(line.)275 1513 y(Here)f(is)h(the)f(list)h
6e51e0d0
CR
16815(of)g(commands)f(for)g(killing)h(text.)150 1675 y Fj(C-k)336
16816b Fu(Kill)31 b(the)f(text)i(from)e(the)g(curren)m(t)g(cursor)g(p)s
c302751c 16817(osition)h(to)g(the)f(end)g(of)g(the)h(line.)150 1836
6e51e0d0 16818y Fj(M-d)336 b Fu(Kill)27 b(from)f(the)g(cursor)g(to)h(the)f(end)g(of)h
37c41ab1 16819(the)f(curren)m(t)g(w)m(ord,)h(or,)h(if)e(b)s(et)m(w)m(een)h(w)m(ords,)
c302751c 16820g(to)g(the)630 1946 y(end)j(of)g(the)h(next)f(w)m(ord.)41
37c41ab1 16821b(W)-8 b(ord)30 b(b)s(oundaries)f(are)i(the)g(same)f(as)h(those)g(used)
6e51e0d0 16822f(b)m(y)g Fj(M-f)p Fu(.)150 2107 y Fj(M-DEL)240 b Fu(Kill)31
c302751c
CR
16823b(from)f(the)h(cursor)f(the)g(start)h(of)g(the)g(curren)m(t)f(w)m(ord,)
16824h(or,)f(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)i(the)630
168252217 y(start)39 b(of)f(the)h(previous)f(w)m(ord.)64 b(W)-8
16826b(ord)39 b(b)s(oundaries)e(are)i(the)f(same)h(as)g(those)f(used)g(b)m
6e51e0d0 16827(y)630 2326 y Fj(M-b)p Fu(.)150 2487 y Fj(C-w)336 b Fu(Kill)35
c302751c 16828b(from)g(the)g(cursor)f(to)i(the)f(previous)g(whitespace.)55
6e51e0d0
CR
16829b(This)34 b(is)h(di\013eren)m(t)h(than)e Fj(M-DEL)630
168302597 y Fu(b)s(ecause)c(the)h(w)m(ord)f(b)s(oundaries)f(di\013er.)275
168312759 y(Here)42 b(is)f(ho)m(w)h(to)g Fr(y)m(ank)47 b Fu(the)42
c302751c
CR
16832b(text)g(bac)m(k)h(in)m(to)f(the)g(line.)74 b(Y)-8 b(anking)43
16833b(means)e(to)h(cop)m(y)h(the)e(most-)150 2869 y(recen)m(tly-killed)33
6e51e0d0
CR
16834b(text)e(from)f(the)g(kill)i(bu\013er.)150 3031 y Fj(C-y)336
16835b Fu(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)h(killed)f(text)g(bac)m
c302751c 16836(k)g(in)m(to)h(the)e(bu\013er)g(at)h(the)f(cursor.)150
6e51e0d0 168373192 y Fj(M-y)336 b Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h
c302751c 16838(the)f(new)g(top.)54 b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h
6e51e0d0
CR
16839(the)g(prior)630 3302 y(command)30 b(is)h Fj(C-y)e Fu(or)h
16840Fj(M-y)p Fu(.)150 3503 y Fk(8.2.4)63 b(Readline)40 b(Argumen)m(ts)150
168413650 y Fu(Y)-8 b(ou)40 b(can)f(pass)g(n)m(umeric)f(argumen)m(ts)i(to)f
c302751c
CR
16842(Readline)h(commands.)67 b(Sometimes)39 b(the)g(argumen)m(t)h(acts)150
168433760 y(as)g(a)h(rep)s(eat)f(coun)m(t,)j(other)e(times)f(it)h(is)f(the)g
6e51e0d0 16844Fl(sign)47 b Fu(of)41 b(the)f(argumen)m(t)g(that)h(is)f(signi\014can)m
c302751c 16845(t.)71 b(If)40 b(y)m(ou)150 3869 y(pass)33 b(a)h(negativ)m(e)i(argumen)
37c41ab1 16846m(t)e(to)g(a)g(command)f(whic)m(h)g(normally)h(acts)g(in)f(a)h(forw)m
c302751c 16847(ard)f(direction,)i(that)150 3979 y(command)g(will)h(act)g(in)f(a)h
37c41ab1 16848(bac)m(kw)m(ard)f(direction.)57 b(F)-8 b(or)36 b(example,)h(to)f(kill)g
c302751c 16849(text)g(bac)m(k)g(to)g(the)g(start)g(of)150 4088 y(the)31
6e51e0d0
CR
16850b(line,)g(y)m(ou)f(migh)m(t)h(t)m(yp)s(e)g(`)p Ft(M--)f(C-k)p
16851Fu('.)275 4225 y(The)d(general)i(w)m(a)m(y)h(to)e(pass)g(n)m(umeric)g
37c41ab1 16852(argumen)m(ts)h(to)g(a)f(command)g(is)g(to)h(t)m(yp)s(e)f(meta)i
c302751c 16853(digits)e(b)s(efore)150 4334 y(the)j(command.)42 b(If)30
37c41ab1 16854b(the)h(\014rst)f(`digit')i(t)m(yp)s(ed)f(is)g(a)g(min)m(us)f(sign)h
6e51e0d0 16855(\(`)p Ft(-)p Fu('\),)h(then)f(the)g(sign)f(of)h(the)g(argumen)m(t)150
c302751c 168564444 y(will)39 b(b)s(e)e(negativ)m(e.)66 b(Once)38 b(y)m(ou)h(ha)m(v)m
37c41ab1 16857(e)g(t)m(yp)s(ed)f(one)h(meta)g(digit)g(to)f(get)i(the)e(argumen)m(t)h
c302751c 16858(started,)i(y)m(ou)150 4554 y(can)29 b(t)m(yp)s(e)g(the)g(remainder)f
37c41ab1 16859(of)h(the)g(digits,)h(and)f(then)f(the)h(command.)40
6e51e0d0
CR
16860b(F)-8 b(or)30 b(example,)g(to)f(giv)m(e)i(the)e Fj(C-d)150
168614663 y Fu(command)37 b(an)g(argumen)m(t)h(of)g(10,)i(y)m(ou)e(could)f
16862(t)m(yp)s(e)h(`)p Ft(M-1)29 b(0)h(C-d)p Fu(',)39 b(whic)m(h)e(will)h
c302751c 16863(delete)h(the)e(next)h(ten)150 4773 y(c)m(haracters)32
6e51e0d0
CR
16864b(on)e(the)h(input)e(line.)150 4974 y Fk(8.2.5)63 b(Searc)m(hing)40
16865b(for)i(Commands)g(in)f(the)g(History)150 5121 y Fu(Readline)35
c302751c
CR
16866b(pro)m(vides)f(commands)g(for)g(searc)m(hing)h(through)e(the)i
16867(command)f(history)g(\(see)h(Section)g(9.1)150 5230 y([Bash)i(History)h
fffe80d4 16868(F)-8 b(acilities],)42 b(page)37 b(151\))i(for)d(lines)h(con)m(taining)
c302751c 16869i(a)e(sp)s(eci\014ed)f(string.)60 b(There)36 b(are)i(t)m(w)m(o)150
6e51e0d0
CR
168705340 y(searc)m(h)31 b(mo)s(des:)40 b Fr(incremen)m(tal)35
16871b Fu(and)30 b Fr(non-incremen)m(tal)p Fu(.)p eop end
fffe80d4
CR
16872%%Page: 119 125
16873TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(8:)41
16874b(Command)29 b(Line)i(Editing)2062 b(119)275 299 y(Incremen)m(tal)26
ad4aef08
CR
16875b(searc)m(hes)h(b)s(egin)e(b)s(efore)g(the)h(user)f(has)h(\014nished)e
16876(t)m(yping)i(the)g(searc)m(h)g(string.)39 b(As)26 b(eac)m(h)150
16877408 y(c)m(haracter)37 b(of)e(the)h(searc)m(h)g(string)f(is)h(t)m(yp)s
16878(ed,)g(Readline)g(displa)m(ys)g(the)f(next)h(en)m(try)g(from)e(the)i
16879(history)150 518 y(matc)m(hing)25 b(the)f(string)g(t)m(yp)s(ed)g(so)g
16880(far.)39 b(An)23 b(incremen)m(tal)j(searc)m(h)e(requires)g(only)g(as)g
16881(man)m(y)g(c)m(haracters)i(as)150 628 y(needed)i(to)i(\014nd)d(the)i
16882(desired)f(history)h(en)m(try)-8 b(.)41 b(T)-8 b(o)29
16883b(searc)m(h)h(bac)m(kw)m(ard)f(in)f(the)h(history)g(for)f(a)i
6e51e0d0
CR
16884(particular)150 737 y(string,)g(t)m(yp)s(e)f Fj(C-r)p
16885Fu(.)40 b(T)m(yping)29 b Fj(C-s)g Fu(searc)m(hes)h(forw)m(ard)f
ad4aef08
CR
16886(through)g(the)g(history)-8 b(.)41 b(The)29 b(c)m(haracters)i(presen)m
16887(t)150 847 y(in)38 b(the)g(v)-5 b(alue)38 b(of)g(the)g
6e51e0d0 16888Ft(isearch-terminators)33 b Fu(v)-5 b(ariable)39 b(are)f(used)f(to)i
ad4aef08
CR
16889(terminate)g(an)f(incremen)m(tal)150 956 y(searc)m(h.)71
16890b(If)40 b(that)h(v)-5 b(ariable)41 b(has)f(not)h(b)s(een)e(assigned)i
6e51e0d0
CR
16891(a)f(v)-5 b(alue,)44 b(the)c Ft(ESC)g Fu(and)f Fj(C-J)h
16892Fu(c)m(haracters)i(will)150 1066 y(terminate)h(an)g(incremen)m(tal)g
16893(searc)m(h.)78 b Fj(C-g)41 b Fu(will)i(ab)s(ort)f(an)g(incremen)m(tal)i
ad4aef08
CR
16894(searc)m(h)f(and)f(restore)h(the)150 1176 y(original)30
16895b(line.)41 b(When)28 b(the)h(searc)m(h)h(is)f(terminated,)h(the)f
16896(history)g(en)m(try)g(con)m(taining)h(the)f(searc)m(h)h(string)150
9128f932 168971285 y(b)s(ecomes)h(the)f(curren)m(t)g(line.)275 1416
ad4aef08 16898y(T)-8 b(o)31 b(\014nd)e(other)j(matc)m(hing)g(en)m(tries)g(in)e(the)h
6e51e0d0 16899(history)g(list,)h(t)m(yp)s(e)g Fj(C-r)e Fu(or)h Fj(C-s)f
9128f932 16900Fu(as)h(appropriate.)43 b(This)150 1525 y(will)26 b(searc)m(h)h(bac)m
37c41ab1
CR
16901(kw)m(ard)g(or)f(forw)m(ard)g(in)f(the)i(history)f(for)g(the)g(next)g
16902(en)m(try)h(matc)m(hing)g(the)f(searc)m(h)h(string)150
9128f932 169031635 y(t)m(yp)s(ed)37 b(so)h(far.)63 b(An)m(y)38 b(other)f(k)m(ey)i
37c41ab1 16904(sequence)f(b)s(ound)e(to)i(a)g(Readline)h(command)e(will)h(terminate)h
9128f932 16905(the)150 1744 y(searc)m(h)26 b(and)f(execute)i(that)f(command.)39
6e51e0d0 16906b(F)-8 b(or)26 b(instance,)h(a)f Ft(RET)f Fu(will)g(terminate)i(the)f
9128f932 16907(searc)m(h)g(and)e(accept)150 1854 y(the)30 b(line,)g(thereb)m(y)f
c302751c 16908(executing)i(the)e(command)g(from)g(the)h(history)f(list.)41
9128f932 16909b(A)29 b(mo)m(v)m(emen)m(t)j(command)d(will)150 1964
c302751c
CR
16910y(terminate)i(the)g(searc)m(h,)g(mak)m(e)h(the)e(last)h(line)g(found)e
16911(the)i(curren)m(t)f(line,)h(and)f(b)s(egin)g(editing.)275
9128f932 169122094 y(Readline)35 b(remem)m(b)s(ers)f(the)h(last)h(incremen)m(tal)g
6e51e0d0 16913(searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fj(C-r)p
9128f932 16914Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2204 y(an)m(y)i(in)m(terv)m
c302751c
CR
16915(ening)g(c)m(haracters)h(de\014ning)e(a)h(new)f(searc)m(h)h(string,)h
16916(an)m(y)f(remem)m(b)s(ered)e(searc)m(h)i(string)g(is)150
9128f932 169172313 y(used.)275 2444 y(Non-incremen)m(tal)48 b(searc)m(hes)g(read)e
c302751c 16918(the)h(en)m(tire)h(searc)m(h)f(string)g(b)s(efore)f(starting)h(to)h
9128f932 16919(searc)m(h)f(for)150 2553 y(matc)m(hing)d(history)e(lines.)78
c302751c 16920b(The)42 b(searc)m(h)h(string)g(ma)m(y)g(b)s(e)f(t)m(yp)s(ed)g(b)m(y)g
9128f932
CR
16921(the)h(user)f(or)h(b)s(e)f(part)g(of)h(the)150 2663 y(con)m(ten)m(ts)32
16922b(of)f(the)f(curren)m(t)g(line.)150 2896 y Fs(8.3)68
16923b(Readline)47 b(Init)e(File)150 3055 y Fu(Although)f(the)g(Readline)g
c302751c 16924(library)f(comes)i(with)e(a)h(set)h(of)f(Emacs-lik)m(e)h(k)m
9128f932 16925(eybindings)f(installed)g(b)m(y)150 3165 y(default,)26
c302751c
CR
16926b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)m(t)f(set)g(of)g(k)
16927m(eybindings.)38 b(An)m(y)25 b(user)f(can)h(customize)h(programs)150
e59452c7
CR
169283274 y(that)39 b(use)g(Readline)g(b)m(y)f(putting)h(commands)f(in)g(an)
16929h Fr(inputrc)k Fu(\014le,)e(con)m(v)m(en)m(tionally)h(in)c(their)h
9128f932 16930(home)150 3384 y(directory)-8 b(.)59 b(The)35 b(name)i(of)f(this)g
c302751c 16931(\014le)g(is)g(tak)m(en)h(from)f(the)g(v)-5 b(alue)37
6e51e0d0 16932b(of)f(the)g(shell)h(v)-5 b(ariable)36 b Ft(INPUTRC)p
9128f932 16933Fu(.)56 b(If)150 3493 y(that)36 b(v)-5 b(ariable)36 b(is)f(unset,)h
6e51e0d0
CR
16934(the)f(default)h(is)f Ft(~/.inputrc)p Fu(.)52 b(If)35
16935b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h(b)s(e)150
9128f932
CR
169363603 y(read,)f(the)f(ultimate)h(default)f(is)g Ft(/etc/inputrc)p
16937Fu(.)47 b(The)33 b Ft(bind)g Fu(builtin)g(command)h(can)g(also)h(b)s(e)
16938e(used)150 3713 y(to)e(set)g(Readline)g(k)m(eybindings)f(and)g(v)-5
16939b(ariables.)41 b(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)g
e59452c7 16940(54.)275 3843 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g
6e51e0d0 16941(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f(the)
9128f932 16942150 3953 y(k)m(ey)i(bindings)e(are)i(set.)275 4083 y(In)26
6e51e0d0
CR
16943b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g(this)f(init)
16944h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m(hanges)150
9128f932
CR
169454193 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g(it.)150
169464384 y Fk(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
169474531 y Fu(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
c302751c 16948m(ed)h(in)d(the)h(Readline)h(init)f(\014le.)73 b(Blank)41
9128f932 16949b(lines)h(are)150 4641 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
6e51e0d0
CR
16950(a)g(`)p Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41
16951b(b)s(eginning)f(with)g(a)i(`)p Ft($)p Fu(')f(indicate)150
9128f932 169524750 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
fffe80d4 16953([Conditional)g(Init)e(Constructs],)j(page)e(127\).)64
9128f932
CR
16954b(Other)150 4860 y(lines)31 b(denote)g(v)-5 b(ariable)31
16955b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8
16956b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
c302751c 16957(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g(b)m(y)f(altering)h
9128f932 16958(the)g(v)-5 b(alues)41 b(of)630 5230 y(v)-5 b(ariables)34
6e51e0d0 16959b(in)f(Readline)i(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h
9128f932
CR
16960(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p
16961eop end
fffe80d4
CR
16962%%Page: 120 126
16963TeXDict begin 120 125 bop 150 -116 a Fu(Chapter)30 b(8:)41
16964b(Command)29 b(Line)i(Editing)2062 b(120)870 299 y Ft(set)47
25e43d2c 16965b Fj(variable)e(value)630 439 y Fu(Here,)29 b(for)e(example,)h(is)g(ho)
9128f932 16966m(w)f(to)h(c)m(hange)g(from)f(the)g(default)h(Emacs-lik)m(e)h(k)m(ey)f
25e43d2c
CR
16967(binding)e(to)630 548 y(use)k Ft(vi)g Fu(line)h(editing)g(commands:)870
16968689 y Ft(set)47 b(editing-mode)d(vi)630 829 y Fu(V)-8
9128f932 16969b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36 b(where)f(appropriate,)h
25e43d2c 16970(are)g(recognized)g(without)f(regard)630 938 y(to)c(case.)42
9128f932 16971b(Unrecognized)31 b(v)-5 b(ariable)31 b(names)g(are)f(ignored.)630
25e43d2c 169721078 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f
9128f932 16973(set)i(to)g(on)f(or)g(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)
25e43d2c 16974g(v)-5 b(alue)26 b(is)630 1188 y(n)m(ull)e(or)g(empt)m(y)-8
6e51e0d0 16975b(,)27 b Fr(on)d Fu(\(case-insensitiv)m(e\),)29 b(or)24
1c72c0cd 16976b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
25e43d2c
CR
16977-5 b(ariable)630 1297 y(b)s(eing)30 b(set)h(to)g(o\013.)630
169781437 y(The)37 b Ft(bind)30 b(-V)37 b Fu(command)g(lists)i(the)f(curren)
1c72c0cd 16979m(t)f(Readline)i(v)-5 b(ariable)38 b(names)g(and)f(v)-5
25e43d2c
CR
16980b(alues.)630 1547 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)
16981g(54.)630 1687 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g
1c72c0cd 16982(is)g(c)m(hangeable)j(with)d(the)g(follo)m(wing)i(v)-5
25e43d2c 16983b(ariables.)630 1857 y Ft(bell-style)1110 1967 y Fu(Con)m(trols)44
1c72c0cd 16984b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m(ts)f(to)h(ring)e(the)h
25e43d2c 16985(termi-)1110 2077 y(nal)37 b(b)s(ell.)61 b(If)37 b(set)h(to)g(`)p
6e51e0d0 16986Ft(none)p Fu(',)g(Readline)g(nev)m(er)g(rings)e(the)i(b)s(ell.)61
25e43d2c 16987b(If)36 b(set)i(to)1110 2186 y(`)p Ft(visible)p Fu(',)32
37c41ab1 16988b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g(one)g(is)g(a)m(v)-5
25e43d2c 16989b(ailable.)51 b(If)33 b(set)g(to)1110 2296 y(`)p Ft(audible)p
6e51e0d0 16990Fu(')j(\(the)i(default\),)i(Readline)e(attempts)g(to)h(ring)e(the)g
25e43d2c
CR
16991(terminal's)1110 2405 y(b)s(ell.)630 2576 y Ft(bind-tty-special-chars)
169921110 2685 y Fu(If)e(set)g(to)h(`)p Ft(on)p Fu(')f(\(the)g(default\),)i
fc527055 16993(Readline)f(attempts)g(to)g(bind)d(the)i(con)m(trol)1110
25e43d2c
CR
169942795 y(c)m(haracters)30 b(treated)g(sp)s(ecially)g(b)m(y)f(the)g(k)m
16995(ernel's)h(terminal)f(driv)m(er)g(to)h(their)1110 2905
16996y(Readline)h(equiv)-5 b(alen)m(ts.)630 3075 y Ft(blink-matching-paren)
169971110 3185 y Fu(If)36 b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)f
fc527055 16998(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j(the)f(cursor)e(to)i(an)1110
25e43d2c
CR
169993294 y(op)s(ening)k(paren)m(thesis)h(when)f(a)h(closing)h(paren)m
17000(thesis)e(is)h(inserted.)74 b(The)1110 3404 y(default)31
17001b(is)f(`)p Ft(off)p Fu('.)630 3574 y Ft(colored-completion-prefi)o(x)
170021110 3684 y Fu(If)f(set)h(to)g(`)p Ft(on)p Fu(',)g(when)e(listing)i
8a0829e9 17003(completions,)h(Readline)f(displa)m(ys)g(the)f(com-)1110
25e43d2c 170043794 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s(ossible)f
8a0829e9 17005(completions)h(using)f(a)h(di\013eren)m(t)g(color.)1110
25e43d2c
CR
170063903 y(The)f(color)h(de\014nitions)f(are)h(tak)m(en)g(from)f(the)g(v)-5
17007b(alue)26 b(of)g(the)f Ft(LS_COLORS)e Fu(en-)1110 4013
17008y(vironmen)m(t)34 b(v)-5 b(ariable.)50 b(If)33 b(there)h(is)g(a)f
17009(color)i(de\014nition)e(in)g Ft(LS_COLORS)e Fu(for)1110
170104122 y(the)22 b(custom)g(su\016x)f(`)p Ft(readline-colored-complet)o
17011(ion)o(-pre)o(fix)p Fu(',)c(Read-)1110 4232 y(line)24
17012b(uses)e(this)i(color)g(for)f(the)h(common)f(pre\014x)f(instead)i(of)f
17013(its)h(default.)38 b(The)1110 4341 y(default)31 b(is)f(`)p
17014Ft(off)p Fu('.)630 4512 y Ft(colored-stats)1110 4622
17015y Fu(If)c(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(displa)m(ys)g(p)s
17016(ossible)f(completions)h(using)f(di\013eren)m(t)1110
170174731 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
abe2eb5b 17018b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
25e43d2c 170194841 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Ft(LS_COLORS)d
6e51e0d0 17020Fu(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
25e43d2c
CR
170214950 y(is)30 b(`)p Ft(off)p Fu('.)630 5121 y Ft(comment-begin)1110
170225230 y Fu(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
17023h(the)h(line)f(when)g(the)1110 5340 y Ft(insert-comment)26
6e51e0d0 17024b Fu(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
25e43d2c 17025b(alue)31 b(is)f Ft("#")p Fu(.)p eop end
fffe80d4
CR
17026%%Page: 121 127
17027TeXDict begin 121 126 bop 150 -116 a Fu(Chapter)30 b(8:)41
17028b(Command)29 b(Line)i(Editing)2062 b(121)630 299 y Ft
25e43d2c
CR
17029(completion-display-width)1110 408 y Fu(The)41 b(n)m(um)m(b)s(er)f(of)i
17030(screen)g(columns)f(used)g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)
170311110 518 y(when)28 b(p)s(erforming)g(completion.)41 b(The)29
17032b(v)-5 b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
17033628 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
9128f932 17034b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
25e43d2c 17035737 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
9128f932 17036(line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
25e43d2c 17037888 y Ft(completion-ignore-case)1110 998 y Fu(If)d(set)h(to)g(`)p
6e51e0d0 17038Ft(on)p Fu(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
25e43d2c
CR
17039(and)e(completion)1110 1107 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
1704040 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Ft(off)p
17041Fu('.)630 1258 y Ft(completion-map-case)1110 1367 y Fu(If)22
8a0829e9 17042b(set)g(to)h(`)p Ft(on)p Fu(',)h(and)e Fr(completion-ignore-case)31
25e43d2c 17043b Fu(is)22 b(enabled,)i(Readline)f(treats)1110 1477 y(h)m(yphens)29
fc527055
CR
17044b(\(`)p Ft(-)p Fu('\))j(and)e(underscores)g(\(`)p Ft(_)p
17045Fu('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
25e43d2c
CR
170461587 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
17047(completion.)85 b(The)44 b(default)1110 1696 y(v)-5 b(alue)31
17048b(is)f(`)p Ft(off)p Fu('.)630 1847 y Ft(completion-prefix-displa)o
17049(y-le)o(ngth)1110 1956 y Fu(The)h(length)g(in)g(c)m(haracters)i(of)f
12beeabf 17050(the)f(common)h(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110
25e43d2c
CR
170512066 y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
17052(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 2176
fc527055 17053y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
25e43d2c 17054(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 2285
ad4aef08 17055y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
25e43d2c
CR
17056f(completions.)630 2436 y Ft(completion-query-items)1110
170572545 y Fu(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
17058(that)g(determines)f(when)f(the)i(user)1110 2655 y(is)43
e6983002 17059b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s(ossibilities)g(should)f(b)
25e43d2c 17060s(e)g(displa)m(y)m(ed.)77 b(If)1110 2765 y(the)29 b(n)m(um)m(b)s(er)f
e6983002 17061(of)h(p)s(ossible)g(completions)h(is)f(greater)h(than)f(or)g(equal)g
25e43d2c 17062(to)h(this)1110 2874 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g
e6983002 17063(whether)f(or)h(not)g(the)g(user)f(wishes)g(to)i(view)1110
25e43d2c 170642984 y(them;)33 b(otherwise,)f(they)g(are)g(simply)g(listed.)45
e6983002 17065b(This)31 b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110
25e43d2c 170663093 y(to)43 b(an)e(in)m(teger)j(v)-5 b(alue)42 b(greater)h(than)f(or)g
e59452c7 17067(equal)g(to)h(zero.)76 b(A)42 b(zero)g(v)-5 b(alue)1110
25e43d2c 170683203 y(means)40 b(Readline)h(should)f(nev)m(er)g(ask;)46
e59452c7 17069b(negativ)m(e)d(v)-5 b(alues)41 b(are)f(treated)i(as)1110
25e43d2c
CR
170703313 y(zero.)g(The)29 b(default)i(limit)g(is)g Ft(100)p
17071Fu(.)630 3463 y Ft(convert-meta)1110 3573 y Fu(If)22
e59452c7
CR
17072b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)f(will)f(con)m(v)m(ert)i(c)m
17073(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
25e43d2c 170743682 y(to)33 b(an)e Fm(asci)r(i)h Fu(k)m(ey)h(sequence)f(b)m(y)g
e59452c7 17075(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
25e43d2c
CR
170763792 y(an)24 b Ft(ESC)g Fu(c)m(haracter,)j(con)m(v)m(erting)f(them)f
17077(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 3902
e59452c7
CR
17078y(The)i(default)h(v)-5 b(alue)28 b(is)f(`)p Ft(on)p Fu(',)i(but)d(will)
17079i(b)s(e)f(set)h(to)g(`)p Ft(off)p Fu(')g(if)f(the)h(lo)s(cale)h(is)f
25e43d2c
CR
17080(one)1110 4011 y(that)j(con)m(tains)h(eigh)m(t-bit)g(c)m(haracters.)630
170814162 y Ft(disable-completion)1110 4271 y Fu(If)k(set)h(to)h(`)p
b729dac1 17082Ft(On)p Fu(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
25e43d2c 17083b(Completion)1110 4381 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h
b729dac1 17084(in)m(to)h(the)g(line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110
25e43d2c
CR
170854491 y(to)31 b Ft(self-insert)p Fu(.)38 b(The)30 b(default)g(is)h(`)p
17086Ft(off)p Fu('.)630 4641 y Ft(echo-control-characters)1110
170874751 y Fu(When)f(set)h(to)g(`)p Ft(on)p Fu(',)f(on)g(op)s(erating)h
17088(systems)f(that)h(indicate)g(they)g(supp)s(ort)1110 4861
b729dac1 17089y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m(haracter)h(corresp)s(onding)d
25e43d2c
CR
17090(to)j(a)f(signal)g(generated)1110 4970 y(from)e(the)g(k)m(eyb)s(oard.)
1709141 b(The)30 b(default)g(is)h(`)p Ft(on)p Fu('.)630 5121
17092y Ft(editing-mode)1110 5230 y Fu(The)d Ft(editing-mode)e
6e51e0d0 17093Fu(v)-5 b(ariable)29 b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)
25e43d2c
CR
17094m(ey)i(bind-)1110 5340 y(ings)25 b(is)g(used.)38 b(By)26
17095b(default,)g(Readline)g(starts)f(up)f(in)h(Emacs)g(editing)h(mo)s(de,)p
17096eop end
fffe80d4
CR
17097%%Page: 122 128
17098TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(8:)41
17099b(Command)29 b(Line)i(Editing)2062 b(122)1110 299 y(where)29
25e43d2c
CR
17100b(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)h(Emacs.)40
17101b(This)29 b(v)-5 b(ariable)30 b(can)1110 408 y(b)s(e)g(set)h(to)g
17102(either)g(`)p Ft(emacs)p Fu(')e(or)h(`)p Ft(vi)p Fu('.)630
17103565 y Ft(emacs-mode-string)1110 675 y Fu(If)j(the)h Fr(sho)m(w-mo)s
9128f932 17104(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
25e43d2c 17105(is)h(dis-)1110 784 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g
9128f932 17106(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
25e43d2c 17107894 y(emacs)g(editing)h(mo)s(de)e(is)h(activ)m(e.)40
9128f932 17108b(The)21 b(v)-5 b(alue)22 b(is)g(expanded)f(lik)m(e)h(a)h(k)m(ey)f
25e43d2c 17109(bind-)1110 1003 y(ing,)27 b(so)f(the)f(standard)g(set)h(of)f(meta-)i
9128f932 17110(and)e(con)m(trol)i(pre\014xes)d(and)h(bac)m(kslash)1110
25e43d2c 171111113 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5 b(ailable.)41
9128f932 17112b(Use)25 b(the)f(`)p Ft(\\1)p Fu(')f(and)h(`)p Ft(\\2)p
25e43d2c
CR
17113Fu(')g(escap)s(es)g(to)g(b)s(egin)1110 1223 y(and)37
17114b(end)g(sequences)h(of)f(non-prin)m(ting)h(c)m(haracters,)j(whic)m(h)c
17115(can)h(b)s(e)f(used)1110 1332 y(to)h(em)m(b)s(ed)f(a)g(terminal)h(con)m
17116(trol)h(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)61
17117b(The)1110 1442 y(default)31 b(is)f(`)p Ft(@)p Fu('.)630
171181598 y Ft(enable-active-region)1110 1708 y Fu(The)46
17119b Fr(p)s(oin)m(t)j Fu(is)e(the)g(curren)m(t)f(cursor)g(p)s(osition,)52
17120b(and)46 b Fr(mark)52 b Fu(refers)46 b(to)i(a)1110 1817
17121y(sa)m(v)m(ed)37 b(cursor)f(p)s(osition)g(\(see)i(Section)f(8.4.1)h
fffe80d4 17122([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 1927 y(page)d(132\).)50
25e43d2c
CR
17123b(The)33 b(text)h(b)s(et)m(w)m(een)f(the)g(p)s(oin)m(t)g(and)g(mark)g
17124(is)g(referred)f(to)i(as)1110 2037 y(the)23 b Fr(region)p
e59452c7 17125Fu(.)39 b(When)23 b(this)g(v)-5 b(ariable)24 b(is)f(set)h(to)g(`)p
25e43d2c 17126Ft(On)p Fu(',)h(Readline)f(allo)m(ws)g(certain)1110 2146
e59452c7
CR
17127y(commands)37 b(to)h(designate)h(the)e(region)h(as)g
17128Fr(activ)m(e)p Fu(.)64 b(When)37 b(the)h(region)g(is)1110
25e43d2c
CR
171292256 y(activ)m(e,)g(Readline)d(highligh)m(ts)g(the)g(text)g(in)f(the)h
17130(region)g(using)f(the)g(termi-)1110 2365 y(nal's)c(standout)h(mo)s(de.)
e59452c7 1713140 b(The)29 b(activ)m(e)k(region)e(sho)m(ws)f(the)g(text)h(inserted)f
25e43d2c 17132(b)m(y)1110 2475 y(brac)m(k)m(eted-paste)37 b(and)d(an)m(y)i(matc)m
e59452c7 17133(hing)f(text)h(found)e(b)m(y)g(incremen)m(tal)j(and)1110
25e43d2c
CR
171342585 y(non-incremen)m(tal)31 b(history)g(searc)m(hes.)41
17135b(The)30 b(default)h(is)f(`)p Ft(On)p Fu('.)630 2741
17136y Ft(enable-bracketed-paste)1110 2851 y Fu(When)24 b(set)h(to)h(`)p
9128f932 17137Ft(On)p Fu(',)g(Readline)f(will)g(con\014gure)f(the)h(terminal)g(in)f
25e43d2c 17138(a)h(w)m(a)m(y)g(that)1110 2960 y(will)k(enable)f(it)h(to)g(insert)g
9128f932 17139(eac)m(h)g(paste)g(in)m(to)g(the)g(editing)g(bu\013er)e(as)i(a)f
25e43d2c 17140(single)1110 3070 y(string)33 b(of)f(c)m(haracters,)j(instead)e(of)g
9128f932 17141(treating)h(eac)m(h)g(c)m(haracter)g(as)f(if)f(it)i(had)1110
25e43d2c 171423180 y(b)s(een)e(read)i(from)e(the)i(k)m(eyb)s(oard.)49
9128f932 17143b(This)32 b(can)h(prev)m(en)m(t)h(pasted)f(c)m(haracters)1110
25e43d2c
CR
171443289 y(from)d(b)s(eing)g(in)m(terpreted)h(as)f(editing)h(commands.)41
17145b(The)29 b(default)i(is)f(`)p Ft(On)p Fu('.)630 3446
17146y Ft(enable-keypad)1110 3555 y Fu(When)23 b(set)h(to)g(`)p
9128f932 17147Ft(on)p Fu(',)h(Readline)f(will)g(try)f(to)h(enable)g(the)f
25e43d2c 17148(application)i(k)m(eypad)1110 3665 y(when)h(it)h(is)f(called.)41
9128f932 17149b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g(arro)m(w)g(k)m
25e43d2c
CR
17150(eys.)1110 3774 y(The)j(default)g(is)h(`)p Ft(off)p Fu('.)630
171513931 y Ft(enable-meta-key)1110 4041 y Fu(When)40 b(set)g(to)g(`)p
9128f932 17152Ft(on)p Fu(',)j(Readline)d(will)g(try)g(to)g(enable)g(an)m(y)g(meta)h
25e43d2c 17153(mo)s(di\014er)1110 4150 y(k)m(ey)i(the)e(terminal)i(claims)f(to)h
9128f932 17154(supp)s(ort)d(when)h(it)h(is)g(called.)76 b(On)41 b(man)m(y)1110
25e43d2c
CR
171554260 y(terminals,)c(the)e(meta)h(k)m(ey)g(is)f(used)g(to)h(send)e(eigh)
17156m(t-bit)j(c)m(haracters.)56 b(The)1110 4369 y(default)31
17157b(is)f(`)p Ft(on)p Fu('.)630 4526 y Ft(expand-tilde)1110
171584635 y Fu(If)d(set)h(to)h(`)p Ft(on)p Fu(',)f(tilde)g(expansion)g(is)f
17159(p)s(erformed)f(when)h(Readline)h(attempts)1110 4745
9128f932 17160y(w)m(ord)i(completion.)42 b(The)30 b(default)g(is)h(`)p
e59452c7
CR
17161Ft(off)p Fu('.)630 4902 y Ft(history-preserve-point)1110
171625011 y Fu(If)41 b(set)h(to)h(`)p Ft(on)p Fu(',)i(the)c(history)h(co)s
9128f932 17163(de)g(attempts)h(to)f(place)h(the)f(p)s(oin)m(t)f(\(the)1110
e59452c7
CR
171645121 y(curren)m(t)35 b(cursor)g(p)s(osition\))g(at)h(the)g(same)f(lo)s
17165(cation)i(on)e(eac)m(h)h(history)g(line)1110 5230 y(retriev)m(ed)h
9128f932 17166(with)f Ft(previous-history)c Fu(or)37 b Ft(next-history)p
e59452c7
CR
17167Fu(.)55 b(The)36 b(default)1110 5340 y(is)30 b(`)p Ft(off)p
17168Fu('.)p eop end
fffe80d4
CR
17169%%Page: 123 129
17170TeXDict begin 123 128 bop 150 -116 a Fu(Chapter)30 b(8:)41
17171b(Command)29 b(Line)i(Editing)2062 b(123)630 299 y Ft(history-size)1110
e59452c7
CR
17172408 y Fu(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
17173(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 518
17174y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
17175(en)m(tries)g(are)g(deleted)h(and)e(no)1110 628 y(new)e(en)m(tries)i
17176(are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
17177b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
17178737 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
17179b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
17180847 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)f
17181(made)g(to)h(set)f Fr(history-size)39 b Fu(to)1110 956
17182y(a)34 b(non-n)m(umeric)f(v)-5 b(alue,)34 b(the)g(maxim)m(um)f(n)m(um)m
17183(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 1066
17184y(b)s(e)c(set)h(to)g(500.)630 1219 y Ft(horizontal-scroll-mode)1110
171851329 y Fu(This)k(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
17186(`)p Ft(on)p Fu(')g(or)g(`)p Ft(off)p Fu('.)57 b(Setting)36
17187b(it)g(to)h(`)p Ft(on)p Fu(')1110 1439 y(means)26 b(that)h(the)f(text)h
eb0b2ad8 17188(of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
e59452c7
CR
17189(tally)1110 1548 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
17190(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 1658
17191y(screen,)c(instead)g(of)f(wrapping)f(on)m(to)i(a)g(new)e(screen)i
17192(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 1767
17193y(automatically)k(set)e(to)g(`)p Ft(on)p Fu(')f(for)g(terminals)g(of)h
17194(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 1877
17195y(v)-5 b(ariable)31 b(is)g(set)f(to)i(`)p Ft(off)p Fu('.)630
171962030 y Ft(input-meta)1110 2140 y Fu(If)f(set)g(to)h(`)p
17197Ft(on)p Fu(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
17198i(will)f(not)h(clear)1110 2250 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
17199(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
172002359 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
17201b(The)44 b(default)g(v)-5 b(alue)44 b(is)g(`)p Ft(off)p
17202Fu(',)j(but)1110 2469 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
17203Ft(on)p Fu(')e(if)h(the)g(lo)s(cale)i(con)m(tains)f(eigh)m(t-bit)g(c)m
17204(haracters.)1110 2578 y(The)30 b(name)g Ft(meta-flag)e
17205Fu(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5 b(ariable.)630
172062732 y Ft(isearch-terminators)1110 2841 y Fu(The)51 b(string)h(of)g(c)m
17207(haracters)h(that)f(should)e(terminate)j(an)f(incremen)m(tal)1110
172082951 y(searc)m(h)25 b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m
17209(haracter)h(as)f(a)g(command)1110 3061 y(\(see)38 b(Section)g(8.2.5)h
fffe80d4 17210([Searc)m(hing],)h(page)e(118\).)62 b(If)37 b(this)g(v)-5
e59452c7
CR
17211b(ariable)38 b(has)f(not)1110 3170 y(b)s(een)e(giv)m(en)h(a)g(v)-5
17212b(alue,)37 b(the)f(c)m(haracters)h Ft(ESC)d Fu(and)h
17213Fj(C-J)g Fu(will)h(terminate)g(an)1110 3280 y(incremen)m(tal)c(searc)m
17214(h.)630 3433 y Ft(keymap)192 b Fu(Sets)64 b(Readline's)i(idea)f(of)f
17215(the)h(curren)m(t)f(k)m(eymap)h(for)f(k)m(ey)h(binding)1110
172163543 y(commands.)71 b(Built-in)41 b Ft(keymap)e Fu(names)h(are)h
17217Ft(emacs)p Fu(,)h Ft(emacs-standard)p Fu(,)1110 3652
17218y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
17219Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
172203762 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44 b Fu(is)h(equiv)-5
17221b(alen)m(t)46 b(to)g Ft(vi-command)c Fu(\()p Ft(vi-move)h
17222Fu(is)i(also)h(a)1110 3871 y(synon)m(ym\);)41 b Ft(emacs)c
17223Fu(is)h(equiv)-5 b(alen)m(t)39 b(to)f Ft(emacs-standard)p
17224Fu(.)59 b(Applications)1110 3981 y(ma)m(y)32 b(add)e(additional)i
a6ae8f35 17225(names.)43 b(The)30 b(default)h(v)-5 b(alue)32 b(is)f
e59452c7 17226Ft(emacs)p Fu(.)41 b(The)30 b(v)-5 b(alue)1110 4091 y(of)31
a6ae8f35 17227b(the)f Ft(editing-mode)d Fu(v)-5 b(ariable)31 b(also)h(a\013ects)f
e59452c7
CR
17228(the)g(default)g(k)m(eymap.)630 4244 y Ft(keyseq-timeout)1110
172294354 y Fu(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
17230(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 4463
b729dac1 17231y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
e59452c7 17232(form)g(a)g(complete)h(k)m(ey)1110 4573 y(sequence)j(using)e(the)i
b729dac1 17233(input)e(read)h(so)g(far,)h(or)g(can)f(tak)m(e)i(additional)f(input)
e59452c7 172341110 4682 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
b729dac1 17235b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h(within)1110
e59452c7
CR
172364792 y(the)43 b(timeout,)48 b(Readline)43 b(will)g(use)g(the)g(shorter)
17237g(but)f(complete)j(k)m(ey)e(se-)1110 4902 y(quence.)c(Readline)26
b729dac1 17238b(uses)f(this)h(v)-5 b(alue)26 b(to)g(determine)g(whether)f(or)g(not)h
e59452c7 17239(input)1110 5011 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
b729dac1 17240(t)f(input)g(source)h(\()p Ft(rl_instream)d Fu(b)m(y)i(default\).)1110
e59452c7 172415121 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
8a0829e9 17242(milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
e59452c7 172431110 5230 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
8a0829e9 17244(additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
e59452c7 17245b(is)1110 5340 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
8a0829e9 17246(equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
e59452c7 17247b(alue,)p eop end
fffe80d4
CR
17248%%Page: 124 130
17249TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(8:)41
17250b(Command)29 b(Line)i(Editing)2062 b(124)1110 299 y(Readline)30
e59452c7
CR
17251b(will)f(w)m(ait)i(un)m(til)e(another)h(k)m(ey)g(is)f(pressed)g(to)h
17252(decide)f(whic)m(h)g(k)m(ey)1110 408 y(sequence)i(to)g(complete.)42
17253b(The)30 b(default)g(v)-5 b(alue)31 b(is)g Ft(500)p Fu(.)630
17254591 y Ft(mark-directories)1110 701 y Fu(If)38 b(set)g(to)h(`)p
17255Ft(on)p Fu(',)i(completed)e(directory)f(names)g(ha)m(v)m(e)i(a)e(slash)
17256g(app)s(ended.)1110 810 y(The)30 b(default)g(is)h(`)p
17257Ft(on)p Fu('.)630 993 y Ft(mark-modified-lines)1110 1103
17258y Fu(This)k(v)-5 b(ariable,)38 b(when)d(set)h(to)h(`)p
17259Ft(on)p Fu(',)g(causes)g(Readline)f(to)h(displa)m(y)f(an)f(as-)1110
172601212 y(terisk)f(\(`)p Ft(*)p Fu('\))h(at)f(the)g(start)g(of)g(history)g
17261(lines)g(whic)m(h)f(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110
172621322 y(This)d(v)-5 b(ariable)31 b(is)f(`)p Ft(off)p Fu(')g(b)m(y)g
17263(default.)630 1504 y Ft(mark-symlinked-directori)o(es)1110
172641614 y Fu(If)59 b(set)h(to)g(`)p Ft(on)p Fu(',)67 b(completed)60
17265b(names)f(whic)m(h)g(are)h(sym)m(b)s(olic)g(links)f(to)1110
172661724 y(directories)71 b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5
17267b(ject)70 b(to)g(the)g(v)-5 b(alue)70 b(of)1110 1833
17268y Ft(mark-directories)p Fu(\).)37 b(The)30 b(default)g(is)g(`)p
17269Ft(off)p Fu('.)630 2016 y Ft(match-hidden-files)1110
172702125 y Fu(This)21 b(v)-5 b(ariable,)25 b(when)d(set)g(to)h(`)p
9128f932 17271Ft(on)p Fu(',)h(causes)f(Readline)g(to)g(matc)m(h)g(\014les)f(whose)
e59452c7 172721110 2235 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Ft(.)p
9128f932 17273Fu(')g(\(hidden)f(\014les\))i(when)e(p)s(erforming)g(\014lename)1110
e59452c7 172742345 y(completion.)75 b(If)41 b(set)g(to)h(`)p Ft(off)p
12beeabf 17275Fu(',)i(the)e(leading)g(`)p Ft(.)p Fu(')f(m)m(ust)g(b)s(e)g(supplied)f
e59452c7 17276(b)m(y)1110 2454 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f
12beeabf 17277(completed.)53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p
e59452c7
CR
17278Ft(on)p Fu(')g(b)m(y)1110 2564 y(default.)630 2746 y
17279Ft(menu-complete-display-pr)o(efix)1110 2856 y Fu(If)f(set)h(to)g(`)p
12beeabf 17280Ft(on)p Fu(',)h(men)m(u)e(completion)i(displa)m(ys)e(the)h(common)g
e59452c7 17281(pre\014x)e(of)i(the)1110 2966 y(list)k(of)g(p)s(ossible)f(completions)
12beeabf 17282i(\(whic)m(h)e(ma)m(y)h(b)s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110
e59452c7
CR
172833075 y(through)30 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p
17284Ft(off)p Fu('.)630 3258 y Ft(output-meta)1110 3367 y
12beeabf 17285Fu(If)35 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)
e59452c7 17286f(c)m(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 3477
12beeabf 17287y(set)h(directly)g(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s
e59452c7 17288(e)h(sequence.)59 b(The)1110 3587 y(default)26 b(is)f(`)p
12beeabf
CR
17289Ft(off)p Fu(',)i(but)e(Readline)h(will)g(set)g(it)g(to)h(`)p
17290Ft(on)p Fu(')e(if)h(the)f(lo)s(cale)j(con)m(tains)1110
e59452c7
CR
172913696 y(eigh)m(t-bit)k(c)m(haracters.)630 3879 y Ft(page-completions)
172921110 3988 y Fu(If)h(set)i(to)f(`)p Ft(on)p Fu(',)h(Readline)g(uses)e
12beeabf 17293(an)h(in)m(ternal)h Ft(more)p Fu(-lik)m(e)f(pager)g(to)h(displa)m(y)
e59452c7 172941110 4098 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g
12beeabf 17295(time.)47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Ft(on)p
e59452c7
CR
17296Fu(')1110 4208 y(b)m(y)e(default.)630 4390 y Ft
17297(print-completions-horizo)o(ntal)o(ly)1110 4500 y Fu(If)23
12beeabf 17298b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)f(displa)m(y)g
e59452c7 17299(completions)h(with)f(matc)m(hes)h(sorted)1110 4609 y(horizon)m(tally)
12beeabf 1730045 b(in)e(alphab)s(etical)i(order,)i(rather)c(than)g(do)m(wn)g(the)h
e59452c7
CR
17301(screen.)1110 4719 y(The)30 b(default)g(is)h(`)p Ft(off)p
17302Fu('.)630 4902 y Ft(revert-all-at-newline)1110 5011 y
12beeabf 17303Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f(all)h
e59452c7 17304(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110 5121
12beeabf 17305y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41
e59452c7 17306b(By)29 b(default,)g(history)g(lines)1110 5230 y(ma)m(y)42
a8fd3f3e 17307b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
e59452c7
CR
17308(across)g(calls)h(to)1110 5340 y Ft(readline)p Fu(.)38
17309b(The)30 b(default)h(is)f(`)p Ft(off)p Fu('.)p eop end
fffe80d4
CR
17310%%Page: 125 131
17311TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(8:)41
17312b(Command)29 b(Line)i(Editing)2062 b(125)630 299 y Ft
e59452c7
CR
17313(show-all-if-ambiguous)1110 408 y Fu(This)29 b(alters)i(the)f(default)g
17314(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
17315b(If)29 b(set)1110 518 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h)g
17316(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)1110
17317628 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
17318(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 737 y(The)30
15baad62 17319b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(off)p Fu('.)630
e59452c7 17320913 y Ft(show-all-if-unmodified)1110 1022 y Fu(This)38
15baad62 17321b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
e59452c7 17322(functions)e(in)h(a)1110 1132 y(fashion)25 b(similar)h(to)g
15baad62 17323Fr(sho)m(w-all-if-am)m(biguous)p Fu(.)41 b(If)25 b(set)h(to)h(`)p
e59452c7 17324Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)1110 1241 y(ha)m(v)m(e)32
15baad62 17325b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
e59452c7
CR
17326(ossible)f(par-)1110 1351 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
17327f(completions)h(don't)f(share)g(a)h(common)1110 1461
15baad62 17328y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
e59452c7 17329(immediately)i(instead)e(of)h(ring-)1110 1570 y(ing)g(the)f(b)s(ell.)41
15baad62 17330b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
e59452c7
CR
17331Fu('.)630 1745 y Ft(show-mode-in-prompt)1110 1855 y Fu(If)24
17332b(set)h(to)g(`)p Ft(on)p Fu(',)g(add)f(a)h(string)f(to)h(the)f(b)s
17333(eginning)g(of)g(the)h(prompt)e(indicating)1110 1965
17334y(the)33 b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)
17335h(insertion.)49 b(The)32 b(mo)s(de)1110 2074 y(strings)45
17336b(are)h(user-settable)g(\(e.g.,)51 b Fr(emacs-mo)s(de-string)8
17337b Fu(\).)87 b(The)45 b(default)1110 2184 y(v)-5 b(alue)31
17338b(is)f(`)p Ft(off)p Fu('.)630 2359 y Ft(skip-completed-text)1110
173392469 y Fu(If)i(set)i(to)f(`)p Ft(on)p Fu(',)h(this)f(alters)g(the)g
17340(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
173412578 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
17342b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)1110
173432688 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f(w)m(ord.)53
17344b(If)35 b(enabled,)g(readline)g(do)s(es)1110 2798 y(not)41
17345b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
17346(c)m(haracters)1110 2907 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
17347(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
173483017 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
17349b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
173503126 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
17351(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 3236 y(`)p Ft(Makefile)p
b729dac1 17352Fu(')c(will)i(result)f(in)g(`)p Ft(Makefile)p Fu(')f(rather)h(than)h(`)
e59452c7 17353p Ft(Makefilefile)p Fu(',)1110 3345 y(assuming)d(there)g(is)h(a)f
b729dac1 17354(single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
e59452c7
CR
17355b(alue)1110 3455 y(is)30 b(`)p Ft(off)p Fu('.)630 3630
17356y Ft(vi-cmd-mode-string)1110 3740 y Fu(If)j(the)h Fr(sho)m(w-mo)s
879213c6 17357(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
e59452c7 17358(is)h(dis-)1110 3850 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
879213c6 17359g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
e59452c7 173603959 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)
879213c6 17361g(mo)s(de.)46 b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110
e59452c7 173624069 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
879213c6 17363(standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110
e59452c7 173644178 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)
879213c6 17365g(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Ft(\\1)p
e59452c7 17366Fu(')1110 4288 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s
879213c6 17367(egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110
e59452c7
CR
173684398 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)
17369h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 4507
879213c6 17370y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
e59452c7
CR
17371Ft(\(cmd\))p Fu('.)630 4682 y Ft(vi-ins-mode-string)1110
173724792 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5
879213c6 17373b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
e59452c7
CR
173744902 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
17375(of)h(the)f(primary)f(prompt)g(when)1110 5011 y(vi)35
879213c6 17376b(editing)h(mo)s(de)e(is)i(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)
e59452c7 1737754 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 5121 y(panded)26
879213c6 17378b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
e59452c7 17379(meta-)h(and)e(con)m(trol)1110 5230 y(pre\014xes)34 b(and)g(bac)m
879213c6 17380(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
e59452c7 17381b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 5340 y(and)23
879213c6 17382b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
e59452c7
CR
17383(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)p eop
17384end
fffe80d4
CR
17385%%Page: 126 132
17386TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41
17387b(Command)29 b(Line)i(Editing)2062 b(126)1110 299 y(ters,)31
e59452c7
CR
17388b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h(terminal)h
17389(con)m(trol)g(sequence)f(in)m(to)1110 408 y(the)g(mo)s(de)f(string.)40
17390b(The)30 b(default)h(is)f(`)p Ft(\(ins\))p Fu('.)630
17391577 y Ft(visible-stats)1110 686 y Fu(If)h(set)i(to)f(`)p
17392Ft(on)p Fu(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
17393(e)g(is)g(app)s(ended)e(to)j(the)1110 796 y(\014lename)e(when)e
17394(listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
17395Ft(off)p Fu('.)150 964 y(Key)f(Bindings)630 1073 y(The)41
17396b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
17397(init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
173981183 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
17399(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630
174001292 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
17401(the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630
174021402 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
17403(do)s(es.)630 1541 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
17404(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630
174051650 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
17406(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630
174071760 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
220537f2 17408b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
e59452c7
CR
17409(and)630 1870 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
17410(terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
17411b(The)40 b(name)h(of)630 1979 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
17412(expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
17413(what)h(y)m(ou)g(\014nd)e(most)630 2089 y(comfortable.)630
174142228 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
17415(k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
174162337 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
17417(\(a)h Fr(macro)5 b Fu(\).)630 2476 y(The)42 b Ft(bind)30
17418b(-p)42 b Fu(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)
17419f(bindings)g(in)h(a)630 2586 y(format)37 b(that)h(can)f(put)f(directly)
17420i(in)m(to)g(an)f(initialization)j(\014le.)60 b(See)38
17421b(Section)f(4.2)i([Bash)630 2695 y(Builtins],)31 b(page)g(54.)630
174222863 y Fr(k)m(eyname)5 b Fu(:)42 b Fr(function-name)35
17423b Fu(or)c Fr(macro)1110 2973 y(k)m(eyname)k Fu(is)29
17424b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s(elled)e(out)h(in)g(English.)39
17425b(F)-8 b(or)30 b(example:)1350 3112 y Ft(Control-u:)45
17426b(universal-argument)1350 3221 y(Meta-Rubout:)f(backward-kill-word)1350
174273331 y(Control-o:)h(">)i(output")1110 3470 y Fu(In)94
17428b(the)g(example)h(ab)s(o)m(v)m(e,)112 b Fj(C-u)94 b Fu(is)g(b)s(ound)f
17429(to)i(the)f(function)1110 3579 y Ft(universal-argument)p
17430Fu(,)124 b Fj(M-DEL)107 b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110
174313689 y Ft(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g
17432Fu(is)h(b)s(ound)e(to)j(run)d(the)i(macro)1110 3798 y(expressed)45
17433b(on)h(the)g(righ)m(t)g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)
17434h(text)h(`)p Ft(>)1110 3908 y(output)p Fu(')29 b(in)m(to)i(the)g
17435(line\).)1110 4047 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m
17436(haracter)g(names)f(are)g(recognized)h(while)1110 4156
17437y(pro)s(cessing)40 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60
17438b Fr(DEL)p Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f
17439Fr(LFD)p Fu(,)1110 4266 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p
17440Fu(,)f Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h Fr(SP)-8
17441b(A)m(CE)p Fu(,)31 b Fr(SPC)p Fu(,)e(and)h Fr(T)-8 b(AB)p
17442Fu(.)630 4434 y Ft(")p Fr(k)m(eyseq)r Ft(")p Fu(:)41
17443b Fr(function-name)36 b Fu(or)30 b Fr(macro)1110 4544
17444y(k)m(eyseq)k Fu(di\013ers)d(from)f Fr(k)m(eyname)37
17445b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110
174464653 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s(e)f(sp)s(eci\014ed,)h(b)m
17447(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)1110 4763
17448y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h Fu(Emacs)f(st)m(yle)i(k)m
17449(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110 4872
17450y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s(ecial)h(c)m
17451(haracter)g(names)f(are)g(not)1110 4982 y(recognized.)1350
174525121 y Ft("\\C-u":)46 b(universal-argument)1350 5230
17453y("\\C-x\\C-r":)f(re-read-init-file)1350 5340 y("\\e[11~":)g("Function)
17454h(Key)g(1")p eop end
fffe80d4
CR
17455%%Page: 127 133
17456TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(8:)41
17457b(Command)29 b(Line)i(Editing)2062 b(127)1110 299 y(In)64
e59452c7
CR
17458b(the)g(ab)s(o)m(v)m(e)i(example,)74 b Fj(C-u)64 b Fu(is)g(again)i(b)s
17459(ound)c(to)k(the)e(function)1110 408 y Ft(universal-argument)39
17460b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g(the)f(\014rst)g(example\),)49
17461b(`)p Fj(C-x)1110 518 y(C-r)p Fu(')30 b(is)g(b)s(ound)e(to)j(the)g
17462(function)f Ft(re-read-init-file)p Fu(,)c(and)j(`)p Ft(ESC)h([)g(1)g(1)
174631110 628 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
17464Ft(Function)e(Key)g(1)p Fu('.)630 780 y(The)g(follo)m(wing)i
6e51e0d0 17465Fm(gnu)f Fu(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
e59452c7
CR
17466b(ailable)32 b(when)d(sp)s(ecifying)630 889 y(k)m(ey)i(sequences:)630
174671041 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630
174681193 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 1345 y
6e51e0d0 17469Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630
e59452c7 174701497 y Fj(\\\\)384 b Fu(bac)m(kslash)630 1648 y Fj(\\)p
6e51e0d0 17471Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark)630
e59452c7
CR
174721800 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s
17473(ostrophe)630 1952 y(In)d(addition)h(to)g(the)g Fm(gnu)f
17474Fu(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
17475(bac)m(kslash)630 2062 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
174762214 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 2366
17477y Ft(\\b)384 b Fu(bac)m(kspace)630 2517 y Ft(\\d)g Fu(delete)630
174782669 y Ft(\\f)g Fu(form)30 b(feed)630 2821 y Ft(\\n)384
17479b Fu(newline)630 2973 y Ft(\\r)g Fu(carriage)32 b(return)630
174803125 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)630 3277
17481y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 3429 y Ft(\\)p
9128f932
CR
17482Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
17483b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fr(nnn)e
e59452c7 17484Fu(\(one)i(to)1110 3538 y(three)c(digits\))630 3690 y
9128f932
CR
17485Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
17486(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
e59452c7
CR
17487b Fr(HH)1110 3800 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
174883952 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
9128f932 17489(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
e59452c7 174904061 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
9128f932 17491b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
e59452c7 17492b(In)630 4171 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
9128f932 17493b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
e59452c7 17494(are)e(expanded.)37 b(Bac)m(kslash)630 4280 y(will)j(quote)h(an)m(y)f
9128f932 17495(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
6e51e0d0 17496b(`)p Ft(")p Fu(')h(and)g(`)p Ft(')p Fu('.)69 b(F)-8
e59452c7 17497b(or)630 4390 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
6e51e0d0 17498(mak)m(e)h(`)p Fj(C-x)j Ft(\\)p Fu(')c(insert)f(a)h(single)h(`)p
e59452c7
CR
17499Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 4521 y Ft("\\C-x\\\\":)45
17500b("\\\\")150 4712 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
17501150 4859 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
278286c9 17502(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
e59452c7 175034969 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
278286c9 17504(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
e59452c7 17505(erformed)f(as)i(the)150 5079 y(result)f(of)h(tests.)41
278286c9 17506b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
e59452c7 175075230 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h
278286c9 17508(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
e59452c7 17509(the)630 5340 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
879213c6 17510(application)g(using)f(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)
e59452c7 17511p eop end
fffe80d4
CR
17512%%Page: 128 134
17513TeXDict begin 128 133 bop 150 -116 a Fu(Chapter)30 b(8:)41
17514b(Command)29 b(Line)i(Editing)2062 b(128)630 299 y(after)30
e59452c7
CR
17515b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f(to)h(the)g(end)f(of)h
17516(the)f(line;)i(unless)e(otherwise)630 408 y(noted,)i(no)f(c)m
17517(haracters)i(are)f(required)e(to)i(isolate)i(it.)630
17518555 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e Fu(form)i(of)g(the)h
17519Ft($if)e Fu(directiv)m(e)j(is)e(used)f(to)i(test)g(whether)e(Read-)1110
17520664 y(line)44 b(is)f(in)g Ft(emacs)f Fu(or)h Ft(vi)g
17521Fu(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g(conjunction)
175221110 774 y(with)c(the)h(`)p Ft(set)29 b(keymap)p Fu(')38
17523b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
17524883 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
17525Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 993 y(starting)f(out)g
17526(in)f Ft(emacs)f Fu(mo)s(de.)630 1139 y Ft(term)288 b
6e51e0d0 17527Fu(The)26 b Ft(term=)g Fu(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
e59452c7 17528(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 1249 y(ings,)38
6e51e0d0 17529b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
e59452c7 17530(the)g(terminal's)1110 1358 y(function)24 b(k)m(eys.)39
6e51e0d0 17531b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
e59452c7 17532Ft(=)p Fu(')g(is)g(tested)h(against)1110 1468 y(b)s(oth)k(the)h(full)g
6e51e0d0 17533(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
e59452c7 17534(terminal)1110 1577 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
6e51e0d0 17535Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i Ft(sun)e Fu(to)h(matc)m(h)g(b)s
e59452c7
CR
17536(oth)f Ft(sun)g Fu(and)1110 1687 y Ft(sun-cmd)p Fu(,)c(for)h(instance.)
17537630 1833 y Ft(version)144 b Fu(The)44 b Ft(version)f
17538Fu(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s(erform)d(comparisons)i
17539(against)1110 1943 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
17540b(The)42 b Ft(version)d Fu(expands)i(to)h(the)g(curren)m(t)1110
175412052 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
17542(op)s(erators)f(includes)f(`)p Ft(=)p Fu(')h(\(and)1110
175432162 y(`)p Ft(==)p Fu('\),)33 b(`)p Ft(!=)p Fu(',)f(`)p
17544Ft(<=)p Fu(',)h(`)p Ft(>=)p Fu(',)f(`)p Ft(<)p Fu(',)h(and)e(`)p
17545Ft(>)p Fu('.)46 b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h
17546(on)1110 2271 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g
17547(consists)h(of)f(a)g(ma)5 b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110
175482381 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44
17549b(an)i(optional)g(minor)f(v)m(ersion)h(\(e.g.,)1110 2491
9128f932
CR
17550y(`)p Ft(7.1)p Fu('\).)40 b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g
17551(omitted,)h(it)f(is)g(assumed)f(to)h(b)s(e)f(`)p Ft(0)p
e59452c7 17552Fu('.)40 b(The)1110 2600 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)
9128f932 17553g(from)g(the)h(string)f Ft(version)f Fu(and)h(from)g(the)1110
e59452c7 175542710 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f
9128f932 17555(whitespace.)67 b(The)38 b(follo)m(wing)i(example)1110
e59452c7 175562819 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m
9128f932 17557(ersion)f(b)s(eing)g(used)g(is)g(7.0)i(or)e(new)m(er:)1350
e59452c7
CR
175582947 y Ft($if)47 b(version)f(>=)h(7.0)1350 3057 y(set)g
17559(show-mode-in-prompt)42 b(on)1350 3166 y($endif)630 3313
17560y(application)1110 3422 y Fu(The)21 b Fr(application)j
9128f932 17561Fu(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
e59452c7 17562(set-)1110 3532 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
9128f932 17563(Readline)g(library)g(sets)g(the)g Fr(application)1110
e59452c7 175643641 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
9128f932 17565(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
e59452c7
CR
175663751 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
17567(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 3861
9128f932 17568y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
e59452c7
CR
17569(sequence)h(that)f(quotes)1110 3970 y(the)e(curren)m(t)f(or)g(previous)
17570g(w)m(ord)g(in)g(Bash:)1350 4098 y Ft($if)47 b(Bash)1350
175714208 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
175724317 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 4427 y($endif)630
175734573 y(variable)96 b Fu(The)33 b Fr(v)-5 b(ariable)39
879213c6 17574b Fu(construct)33 b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g
e59452c7 17575(Readline)1110 4682 y(v)-5 b(ariables)32 b(and)f(v)-5
879213c6 17576b(alues.)45 b(The)32 b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i
e59452c7 17577(`)p Ft(=)p Fu(',)1110 4792 y(`)p Ft(==)p Fu(',)49 b(and)44
879213c6 17578b(`)p Ft(!=)p Fu('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
e59452c7 17579(b)s(e)g(separated)g(from)g(the)1110 4902 y(comparison)25
879213c6 17580b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
e59452c7 17581(e)f(separated)1110 5011 y(from)33 b(the)h(v)-5 b(alue)35
879213c6 17582b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52
e59452c7 17583b(Both)35 b(string)1110 5121 y(and)i(b)s(o)s(olean)g(v)-5
879213c6 17584b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39
e59452c7 17585b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 5230 y(tested)46
879213c6
CR
17586b(against)g(the)f(v)-5 b(alues)46 b Fr(on)f Fu(and)f
17587Fr(o\013)p Fu(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110
e59452c7
CR
175885340 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e
17589Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)p eop end
fffe80d4
CR
17590%%Page: 129 135
17591TeXDict begin 129 134 bop 150 -116 a Fu(Chapter)30 b(8:)41
17592b(Command)29 b(Line)i(Editing)2062 b(129)1350 299 y Ft($if)47
e59452c7
CR
17593b(editing-mode)d(==)k(emacs)1350 408 y(set)f(show-mode-in-prompt)42
17594b(on)1350 518 y($endif)150 677 y($endif)192 b Fu(This)29
17595b(command,)i(as)f(seen)h(in)f(the)g(previous)g(example,)h(terminates)g
17596(an)g Ft($if)e Fu(command.)150 837 y Ft($else)240 b Fu(Commands)29
17597b(in)h(this)h(branc)m(h)e(of)i(the)f Ft($if)g Fu(directiv)m(e)i(are)f
17598(executed)g(if)f(the)h(test)g(fails.)150 996 y Ft($include)96
17599b Fu(This)43 b(directiv)m(e)i(tak)m(es)g(a)e(single)i(\014lename)e(as)h
17600(an)f(argumen)m(t)h(and)f(reads)g(commands)630 1106 y(and)38
17601b(bindings)f(from)h(that)i(\014le.)65 b(F)-8 b(or)39
17602b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e(from)630
176031215 y Ft(/etc/inputrc)p Fu(:)870 1350 y Ft($include)46
17604b(/etc/inputrc)150 1549 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150
176051696 y Fu(Here)27 b(is)f(an)h(example)g(of)f(an)h Fr(inputrc)k
17606Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
17607b(ariable)27 b(assignmen)m(t,)i(and)150 1806 y(conditional)j(syn)m
17608(tax.)p eop end
fffe80d4
CR
17609%%Page: 130 136
17610TeXDict begin 130 135 bop 150 -116 a Fu(Chapter)30 b(8:)41
17611b(Command)29 b(Line)i(Editing)2062 b(130)390 408 y Ft(#)47
278286c9
CR
17612b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
17613(editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
17614(Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
17615g(FTP,)g(Bash,)h(and)g(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g
17616(re-read)f(the)h(inputrc)f(file)g(with)h(C-x)g(C-r.)390
17617956 y(#)g(Lines)g(beginning)e(with)i('#')g(are)g(comments.)390
d76edd30
CR
176181066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(system-wide)e
17619(bindings)h(and)g(variable)390 1285 y(#)h(assignments)e(from)i
17620(/etc/Inputrc)390 1395 y($include)f(/etc/Inputrc)390
176211614 y(#)390 1724 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)
17622390 1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
5e13499c
CR
176232381 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the)
17624h(function)f(name)g(is)h(ignored)390 2600 y(#)390 2710
17625y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390 2819 y(#)390
176262929 y(#"\\M-OD":)379 b(backward-char)390 3039 y(#"\\M-OC":)g
17627(forward-char)390 3148 y(#"\\M-OA":)g(previous-history)390
176283258 y(#"\\M-OB":)g(next-history)390 3367 y(#)390 3477
17629y(#)47 b(Arrow)g(keys)f(in)i(ANSI)e(mode)390 3587 y(#)390
176303696 y("\\M-[D":)380 b(backward-char)390 3806 y("\\M-[C":)g
17631(forward-char)390 3915 y("\\M-[A":)g(previous-history)390
176324025 y("\\M-[B":)g(next-history)390 4134 y(#)390 4244
17633y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390
176344354 y(#)390 4463 y(#"\\M-\\C-OD":)331 b(backward-char)390
176354573 y(#"\\M-\\C-OC":)g(forward-char)390 4682 y(#"\\M-\\C-OA":)g
17636(previous-history)390 4792 y(#"\\M-\\C-OB":)g(next-history)390
176374902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
17638390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
37c41ab1 176395340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
fffe80d4
CR
17640%%Page: 131 137
17641TeXDict begin 131 136 bop 150 -116 a Fu(Chapter)30 b(8:)41
17642b(Command)29 b(Line)i(Editing)2062 b(131)390 299 y Ft(#"\\M-\\C-[A":)
ad4aef08 17643331 b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
37c41ab1
CR
17644628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
17645y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the)
17646g(default.)390 1176 y(TAB:)g(complete)390 1395 y(#)g(Macros)g(that)f
17647(are)h(convenient)e(for)i(shell)f(interaction)390 1504
17648y($if)h(Bash)390 1614 y(#)g(edit)g(the)g(path)390 1724
17649y("\\C-xp":)f("PATH=${PATH}\\e\\C-e\\C-a)o(\\ef)o(\\C-f)o(")390
176501833 y(#)h(prepare)f(to)h(type)g(a)h(quoted)e(word)g(--)390
5e13499c
CR
176511943 y(#)h(insert)g(open)f(and)h(close)f(double)h(quotes)390
176522052 y(#)g(and)g(move)g(to)g(just)g(after)f(the)h(open)g(quote)390
176532162 y("\\C-x\\"":)e("\\"\\"\\C-b")390 2271 y(#)i(insert)g(a)g
17654(backslash)e(\(testing)h(backslash)f(escapes)390 2381
17655y(#)i(in)h(sequences)d(and)i(macros\))390 2491 y("\\C-x\\\\":)e("\\\\")
17656390 2600 y(#)i(Quote)g(the)g(current)f(or)h(previous)e(word)390
176572710 y("\\C-xq":)h("\\eb\\"\\ef\\"")390 2819 y(#)h(Add)g(a)h(binding)e
17658(to)h(refresh)f(the)h(line,)f(which)g(is)h(unbound)390
176592929 y("\\C-xr":)f(redraw-current-line)390 3039 y(#)h(Edit)g(variable)f
17660(on)h(current)f(line.)390 3148 y("\\M-\\C-v":)f
17661("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-)o(a\\C-)o(y=")390 3258
17662y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
17663(available)390 3587 y(set)f(bell-style)e(visible)390
176643806 y(#)i(don't)g(strip)f(characters)f(to)i(7)h(bits)e(when)h(reading)
17665390 3915 y(set)g(input-meta)e(on)390 4134 y(#)i(allow)g(iso-latin1)e
17666(characters)g(to)i(be)g(inserted)f(rather)390 4244 y(#)h(than)g
17667(converted)e(to)j(prefix-meta)c(sequences)390 4354 y(set)j
17668(convert-meta)d(off)390 4573 y(#)j(display)f(characters)f(with)i(the)g
17669(eighth)f(bit)h(set)g(directly)390 4682 y(#)g(rather)g(than)f(as)h
17670(meta-prefixed)e(characters)390 4792 y(set)i(output-meta)e(on)390
e6983002
CR
176715011 y(#)i(if)h(there)e(are)h(150)g(or)g(more)g(possible)e(completions)
17672g(for)i(a)g(word,)390 5121 y(#)g(ask)g(whether)f(or)h(not)g(the)g(user)
17673g(wants)f(to)h(see)g(all)g(of)g(them)390 5230 y(set)g
37c41ab1 17674(completion-query-items)42 b(150)p eop end
fffe80d4
CR
17675%%Page: 132 138
17676TeXDict begin 132 137 bop 150 -116 a Fu(Chapter)30 b(8:)41
17677b(Command)29 b(Line)i(Editing)2062 b(132)390 299 y Ft(#)47
278286c9 17678b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
5e13499c 17679628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
124d67cd
CR
17680847 y($endif)150 1089 y Fs(8.4)68 b(Bindable)45 b(Readline)i(Commands)
17681150 1248 y Fu(This)32 b(section)h(describ)s(es)f(Readline)h(commands)f
c302751c 17682(that)h(ma)m(y)h(b)s(e)d(b)s(ound)g(to)i(k)m(ey)g(sequences.)48
124d67cd 17683b(Y)-8 b(ou)33 b(can)150 1358 y(list)40 b(y)m(our)f(k)m(ey)i(bindings)d
6e51e0d0 17684(b)m(y)h(executing)i Ft(bind)29 b(-P)39 b Fu(or,)j(for)d(a)h(more)g
124d67cd 17685(terse)g(format,)i(suitable)e(for)f(an)150 1468 y Fr(inputrc)34
6e51e0d0 17686b Fu(\014le,)29 b Ft(bind)g(-p)p Fu(.)40 b(\(See)30 b(Section)f(4.2)h
e59452c7 17687([Bash)g(Builtins],)g(page)g(54.\))41 b(Command)28 b(names)h(without)
124d67cd
CR
17688150 1577 y(an)h(accompan)m(ying)i(k)m(ey)f(sequence)g(are)g(un)m(b)s
17689(ound)d(b)m(y)i(default.)275 1713 y(In)25 b(the)h(follo)m(wing)i
6e51e0d0
CR
17690(descriptions,)f Fr(p)s(oin)m(t)h Fu(refers)e(to)h(the)f(curren)m(t)g
17691(cursor)g(p)s(osition,)h(and)f Fr(mark)31 b Fu(refers)150
124d67cd 176921822 y(to)40 b(a)f(cursor)f(p)s(osition)h(sa)m(v)m(ed)h(b)m(y)f(the)g
6e51e0d0 17693Ft(set-mark)d Fu(command.)66 b(The)38 b(text)i(b)s(et)m(w)m(een)g(the)f
124d67cd
CR
17694(p)s(oin)m(t)g(and)150 1932 y(mark)30 b(is)h(referred)e(to)i(as)g(the)f
17695Fr(region)p Fu(.)150 2132 y Fk(8.4.1)63 b(Commands)42
17696b(F)-10 b(or)41 b(Mo)m(ving)150 2304 y Ft(beginning-of-line)26
17697b(\(C-a\))630 2414 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f
17698(curren)m(t)g(line.)150 2574 y Ft(end-of-line)d(\(C-e\))630
176992684 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
177002844 y Ft(forward-char)c(\(C-f\))630 2954 y Fu(Mo)m(v)m(e)32
17701b(forw)m(ard)e(a)h(c)m(haracter.)150 3114 y Ft(backward-char)c(\(C-b\))
17702630 3223 y Fu(Mo)m(v)m(e)32 b(bac)m(k)g(a)e(c)m(haracter.)150
177033384 y Ft(forward-word)d(\(M-f\))630 3493 y Fu(Mo)m(v)m(e)32
5e13499c 17704b(forw)m(ard)e(to)h(the)f(end)g(of)g(the)h(next)f(w)m(ord.)41
37c41ab1 17705b(W)-8 b(ords)30 b(are)h(comp)s(osed)f(of)g(letters)i(and)630
124d67cd
CR
177063603 y(digits.)150 3763 y Ft(backward-word)27 b(\(M-b\))630
177073873 y Fu(Mo)m(v)m(e)36 b(bac)m(k)e(to)g(the)g(start)g(of)g(the)g
37c41ab1 17708(curren)m(t)f(or)g(previous)g(w)m(ord.)50 b(W)-8 b(ords)34
124d67cd 17709b(are)g(comp)s(osed)630 3982 y(of)d(letters)g(and)f(digits.)150
602eae4d
CR
177104143 y Ft(shell-forward-word)25 b(\(M-C-f\))630 4252
17711y Fu(Mo)m(v)m(e)30 b(forw)m(ard)e(to)h(the)f(end)f(of)h(the)h(next)f(w)
17712m(ord.)40 b(W)-8 b(ords)28 b(are)g(delimited)h(b)m(y)f(non-quoted)630
124d67cd 177134362 y(shell)j(metac)m(haracters.)150 4522 y Ft(shell-backward-word)25
602eae4d
CR
17714b(\(M-C-b\))630 4632 y Fu(Mo)m(v)m(e)37 b(bac)m(k)e(to)h(the)f(start)g
17715(of)g(the)g(curren)m(t)g(or)f(previous)h(w)m(ord.)53
17716b(W)-8 b(ords)35 b(are)g(delimited)630 4741 y(b)m(y)30
17717b(non-quoted)h(shell)f(metac)m(haracters.)150 4902 y
17718Ft(previous-screen-line)25 b(\(\))630 5011 y Fu(A)m(ttempt)41
17719b(to)g(mo)m(v)m(e)h(p)s(oin)m(t)e(to)h(the)f(same)h(ph)m(ysical)g
17720(screen)f(column)g(on)g(the)g(previous)630 5121 y(ph)m(ysical)26
17721b(screen)f(line.)39 b(This)24 b(will)i(not)f(ha)m(v)m(e)h(the)f
17722(desired)g(e\013ect)h(if)f(the)h(curren)m(t)e(Readline)630
177235230 y(line)k(do)s(es)f(not)g(tak)m(e)i(up)d(more)i(than)f(one)g(ph)m
17724(ysical)h(line)g(or)f(if)g(p)s(oin)m(t)h(is)f(not)h(greater)g(than)630
177255340 y(the)j(length)f(of)h(the)f(prompt)g(plus)f(the)i(screen)f(width.)
17726p eop end
fffe80d4
CR
17727%%Page: 133 139
17728TeXDict begin 133 138 bop 150 -116 a Fu(Chapter)30 b(8:)41
17729b(Command)29 b(Line)i(Editing)2062 b(133)150 299 y Ft(next-screen-line)
124d67cd
CR
1773026 b(\(\))630 408 y Fu(A)m(ttempt)g(to)f(mo)m(v)m(e)i(p)s(oin)m(t)d(to)
17731i(the)e(same)i(ph)m(ysical)f(screen)g(column)f(on)h(the)f(next)h(ph)m
17732(ysical)630 518 y(screen)e(line.)39 b(This)23 b(will)g(not)h(ha)m(v)m
17733(e)h(the)e(desired)g(e\013ect)i(if)e(the)g(curren)m(t)h(Readline)g
17734(line)f(do)s(es)630 628 y(not)k(tak)m(e)i(up)e(more)g(than)g(one)g(ph)m
17735(ysical)h(line)g(or)f(if)g(the)h(length)f(of)h(the)f(curren)m(t)g
17736(Readline)630 737 y(line)k(is)f(not)h(greater)g(than)f(the)h(length)g
17737(of)f(the)h(prompt)e(plus)h(the)g(screen)h(width.)150
e6983002 17738916 y Ft(clear-display)c(\(M-C-l\))630 1026 y Fu(Clear)33
d37a4722 17739b(the)g(screen)g(and,)h(if)e(p)s(ossible,)i(the)f(terminal's)g
e6983002 17740(scrollbac)m(k)i(bu\013er,)e(then)f(redra)m(w)630 1136
d37a4722 17741y(the)f(curren)m(t)f(line,)h(lea)m(ving)h(the)e(curren)m(t)h(line)f(at)
e6983002
CR
17742h(the)g(top)g(of)f(the)h(screen.)150 1315 y Ft(clear-screen)c(\(C-l\))
17743630 1424 y Fu(Clear)35 b(the)f(screen,)i(then)e(redra)m(w)g(the)h
d37a4722 17744(curren)m(t)f(line,)i(lea)m(ving)g(the)f(curren)m(t)f(line)h(at)g(the)
e6983002
CR
17745630 1534 y(top)c(of)f(the)h(screen.)150 1713 y Ft(redraw-current-line)
1774625 b(\(\))630 1823 y Fu(Refresh)30 b(the)g(curren)m(t)h(line.)41
17747b(By)30 b(default,)h(this)f(is)h(un)m(b)s(ound.)150 2041
d37a4722 17748y Fk(8.4.2)63 b(Commands)42 b(F)-10 b(or)41 b(Manipulating)h(The)f
e6983002
CR
17749(History)150 2223 y Ft(accept-line)27 b(\(Newline)h(or)i(Return\))630
177502333 y Fu(Accept)25 b(the)e(line)h(regardless)g(of)f(where)g(the)h
d37a4722 17751(cursor)e(is.)39 b(If)23 b(this)g(line)h(is)f(non-empt)m(y)-8
e6983002 17752b(,)26 b(add)c(it)630 2442 y(to)27 b(the)f(history)g(list)h(according)g
d37a4722 17753(to)g(the)f(setting)i(of)e(the)g Ft(HISTCONTROL)d Fu(and)j
e6983002 17754Ft(HISTIGNORE)630 2552 y Fu(v)-5 b(ariables.)42 b(If)30
d37a4722 17755b(this)h(line)g(is)g(a)g(mo)s(di\014ed)e(history)i(line,)g(then)f
e6983002
CR
17756(restore)i(the)f(history)f(line)h(to)630 2662 y(its)g(original)g
17757(state.)150 2841 y Ft(previous-history)26 b(\(C-p\))630
177582950 y Fu(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
17759(fetc)m(hing)g(the)g(previous)f(command.)150 3129 y Ft(next-history)d
17760(\(C-n\))630 3239 y Fu(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
d37a4722 17761(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
e6983002 177623418 y Ft(beginning-of-history)25 b(\(M-<\))630 3528
d37a4722 17763y Fu(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
e6983002 17764b(.)150 3707 y Ft(end-of-history)26 b(\(M->\))630 3816
d37a4722
CR
17765y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
17766b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150
e6983002 177673995 y Ft(reverse-search-history)24 b(\(C-r\))630 4105
d37a4722
CR
17768y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
17769(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
e6983002
CR
177704215 y(tory)26 b(as)h(necessary)-8 b(.)40 b(This)25 b(is)i(an)f
17771(incremen)m(tal)h(searc)m(h.)40 b(This)25 b(command)h(sets)h(the)f
17772(region)630 4324 y(to)31 b(the)g(matc)m(hed)g(text)g(and)f(activ)-5
17773b(ates)33 b(the)d(mark.)150 4503 y Ft(forward-search-history)24
17774b(\(C-s\))630 4613 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
d37a4722 17775(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
e6983002
CR
17776630 4723 y(history)38 b(as)g(necessary)-8 b(.)65 b(This)38
17777b(is)g(an)g(incremen)m(tal)h(searc)m(h.)65 b(This)37
17778b(command)h(sets)h(the)630 4832 y(region)31 b(to)g(the)g(matc)m(hed)g
17779(text)g(and)f(activ)-5 b(ates)33 b(the)d(mark.)150 5011
17780y Ft(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
17781b(\(M-p\))630 5121 y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
37c41ab1 17782(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
e6983002 17783(his-)630 5230 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
d37a4722 17784(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
e6983002
CR
177855340 y(user.)k(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
17786(ywhere)g(in)f(a)h(history)f(line.)p eop end
fffe80d4
CR
17787%%Page: 134 140
17788TeXDict begin 134 139 bop 150 -116 a Fu(Chapter)30 b(8:)41
17789b(Command)29 b(Line)i(Editing)2062 b(134)150 299 y Ft
e6983002
CR
17790(non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24
17791b(\(M-n\))630 408 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h(the)
17792e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)630
17793518 y(history)27 b(as)f(necessary)i(using)e(a)h(non-incremen)m(tal)g
17794(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i(the)630
17795628 y(user.)40 b(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
17796(ywhere)g(in)f(a)h(history)f(line.)150 784 y Ft(history-search-forward)
1779724 b(\(\))630 894 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i
17798(history)f(for)g(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f
17799(the)630 1003 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h
17800(p)s(oin)m(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h
17801(at)g(the)630 1113 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
17802b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
17803b(By)33 b(default,)g(this)630 1223 y(command)d(is)h(un)m(b)s(ound.)150
178041379 y Ft(history-search-backward)24 b(\(\))630 1489
17805y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
17806(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
178071598 y(start)g(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)
d37a4722 1780858 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
e6983002 178091708 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
d37a4722 17810b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
e6983002
CR
17811b(By)33 b(default,)g(this)630 1817 y(command)d(is)h(un)m(b)s(ound.)150
178121974 y Ft(history-substring-search)o(-for)o(ward)24 b(\(\))630
178132084 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
74d0116b 17814(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
e6983002 178152193 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
74d0116b 17816(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
e6983002 17817630 2303 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
124d67cd 17818(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
e6983002 17819(command)630 2412 y(is)e(un)m(b)s(ound.)150 2569 y Ft
124d67cd 17820(history-substring-search)o(-bac)o(kwar)o(d)24 b(\(\))630
e6983002 178212679 y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g
124d67cd 17822(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
e6983002 178232788 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
124d67cd 17824(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
e6983002 17825630 2898 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
124d67cd 17826(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
e6983002
CR
17827(command)630 3007 y(is)e(un)m(b)s(ound.)150 3164 y Ft(yank-nth-arg)d
17828(\(M-C-y\))630 3273 y Fu(Insert)37 b(the)g(\014rst)f(argumen)m(t)i(to)f
124d67cd 17829(the)h(previous)e(command)h(\(usually)g(the)g(second)g(w)m(ord)630
e6983002 178303383 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
124d67cd 17831b(With)32 b(an)g(argumen)m(t)g Fr(n)p Fu(,)g(insert)g(the)g
e6983002 17832Fr(n)p Fu(th)f(w)m(ord)g(from)630 3493 y(the)k(previous)f(command)h
124d67cd 17833(\(the)g(w)m(ords)g(in)f(the)h(previous)g(command)f(b)s(egin)h(with)f
e6983002 17834(w)m(ord)630 3602 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f
124d67cd 17835(inserts)g(the)f Fr(n)p Fu(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f
e6983002 17836(previous)630 3712 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h
124d67cd 17837Fr(n)e Fu(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e
e6983002
CR
17838(if)630 3821 y(the)e(`)p Ft(!)p Fj(n)p Fu(')f(history)g(expansion)g
17839(had)g(b)s(een)g(sp)s(eci\014ed.)150 3978 y Ft(yank-last-arg)d(\(M-.)i
17840(or)h(M-_\))630 4088 y Fu(Insert)k(last)i(argumen)m(t)g(to)g(the)f
124d67cd 17841(previous)f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
e6983002 178424197 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
6e51e0d0 17843(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Ft(yank-nth-arg)p
e6983002 17844Fu(.)630 4307 y(Successiv)m(e)26 b(calls)g(to)f Ft(yank-last-arg)c
6e51e0d0 17845Fu(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
e6983002 17846(inserting)630 4416 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
278286c9 17847s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
e6983002 17848(of)f(eac)m(h)h(line)630 4526 y(in)36 b(turn.)58 b(An)m(y)36
278286c9 17849b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
e6983002 17850(calls)h(determines)630 4635 y(the)d(direction)g(to)h(mo)m(v)m(e)g
278286c9 17851(through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
e6983002 17852(switc)m(hes)h(the)630 4745 y(direction)23 b(through)g(the)g(history)f
278286c9 17853(\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
e6983002 17854(facilities)630 4855 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
6e51e0d0 17855(argumen)m(t,)h(as)e(if)h(the)g(`)p Ft(!$)p Fu(')f(history)g(expansion)
e6983002
CR
17856h(had)f(b)s(een)630 4964 y(sp)s(eci\014ed.)150 5121 y
17857Ft(operate-and-get-next)e(\(C-o\))630 5230 y Fu(Accept)30
d37a4722 17858b(the)g(curren)m(t)e(line)i(for)f(return)f(to)h(the)h(calling)g
e6983002 17859(application)h(as)e(if)g(a)h(newline)f(had)630 5340 y(b)s(een)22
d37a4722 17860b(en)m(tered,)k(and)d(fetc)m(h)h(the)f(next)g(line)h(relativ)m(e)h(to)f
e6983002 17861(the)f(curren)m(t)g(line)h(from)f(the)g(history)p eop
d37a4722 17862end
fffe80d4
CR
17863%%Page: 135 141
17864TeXDict begin 135 140 bop 150 -116 a Fu(Chapter)30 b(8:)41
17865b(Command)29 b(Line)i(Editing)2062 b(135)630 299 y(for)31
e6983002
CR
17866b(editing.)43 b(A)31 b(n)m(umeric)f(argumen)m(t,)i(if)f(supplied,)f(sp)
17867s(eci\014es)h(the)g(history)f(en)m(try)i(to)f(use)630
e59452c7
CR
17868408 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 565
17869y Ft(fetch-history)d(\(\))630 675 y Fu(With)e(a)f(n)m(umeric)g(argumen)
17870m(t,)i(fetc)m(h)f(that)g(en)m(try)f(from)g(the)g(history)g(list)h(and)e
17871(mak)m(e)i(it)g(the)630 784 y(curren)m(t)30 b(line.)41
17872b(Without)30 b(an)g(argumen)m(t,)h(mo)m(v)m(e)g(bac)m(k)g(to)f(the)g
17873(\014rst)f(en)m(try)h(in)g(the)g(history)630 894 y(list.)150
178741090 y Fk(8.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
17875b(ext)150 1261 y Fj(end-of-file)27 b Ft(\(usually)h(C-d\))630
178761370 y Fu(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
e6983002 17877(for)f(example,)i(b)m(y)e Ft(stty)p Fu(.)39 b(If)25 b(this)h(c)m
e59452c7 17878(harac-)630 1480 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
e6983002 17879(haracters)j(on)d(the)h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s
e59452c7 17880(eginning)630 1590 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
e6983002 17881(it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fm(eof)p
e59452c7 17882Fu(.)150 1746 y Ft(delete-char)e(\(C-d\))630 1856 y Fu(Delete)35
c61bfbfd 17883b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
e59452c7 17884(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 1966
c61bfbfd
CR
17885y(as)e(the)f(tt)m(y)i Fm(eof)d Fu(c)m(haracter,)j(as)f
17886Fj(C-d)e Fu(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
e59452c7
CR
17887(e\013ects.)150 2122 y Ft(backward-delete-char)25 b(\(Rubout\))630
178882232 y Fu(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
d37a4722 17889b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
e59452c7
CR
178902341 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
178912498 y Ft(forward-backward-delete-)o(char)24 b(\(\))630
178922608 y Fu(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
37c41ab1 17893(unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
e59452c7 178942717 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
d37a4722 17895(ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
e59452c7
CR
178962827 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
178972983 y Ft(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 3093
6e51e0d0 17898y Fu(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
37c41ab1 17899(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
e59452c7
CR
179003203 y(sequences)d(lik)m(e)g Fj(C-q)p Fu(,)f(for)g(example.)150
179013359 y Ft(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
179023469 y Fu(Insert)g(y)m(ourself.)150 3626 y Ft(bracketed-paste-begin)25
17903b(\(\))630 3735 y Fu(This)f(function)h(is)f(in)m(tended)h(to)h(b)s(e)e
124d67cd 17904(b)s(ound)f(to)i(the)g Ft(")p Fu(brac)m(k)m(eted)h(paste)p
e59452c7 17905Ft(")f Fu(escap)s(e)h(sequence)630 3845 y(sen)m(t)38
124d67cd
CR
17906b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h(binding)e(is)i
17907(assigned)f(b)m(y)h(default.)62 b(It)38 b(allo)m(ws)630
e59452c7 179083954 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)g(as)g(a)g
124d67cd 17909(single)g(unit)f(without)h(treating)h(eac)m(h)f(c)m(har-)630
e59452c7 179104064 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
124d67cd 17911m(eyb)s(oard.)66 b(The)39 b(c)m(haracters)h(are)f(inserted)630
e59452c7 179124173 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
12beeabf 17913Ft(self-insert)c Fu(instead)j(of)h(executing)g(an)m(y)f(editing)630
e59452c7 179144283 y(commands.)630 4416 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
e6983002 17915(region)f(\(the)h(c)m(haracters)g(b)s(et)m(w)m(een)g(p)s(oin)m(t)f(and)
e59452c7 17916g(the)g(mark\))630 4526 y(to)j(the)g(inserted)f(text.)65
e6983002 17917b(It)39 b(uses)f(the)g(concept)h(of)g(an)f Fl(active)i(mark)10
e59452c7 17918b Fu(:)57 b(when)38 b(the)g(mark)630 4635 y(is)d(activ)m(e,)k(Readline)
e6983002 17919c(redispla)m(y)h(uses)e(the)h(terminal's)h(standout)f(mo)s(de)f(to)i
e59452c7
CR
17920(denote)g(the)630 4745 y(region.)150 4902 y Ft(transpose-chars)26
17921b(\(C-t\))630 5011 y Fu(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)
e6983002 17922g(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
e59452c7 17923(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
e6983002 17924(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
e59452c7 17925g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
e6983002 17926(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
e59452c7
CR
17927b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
17928b(no)e(e\013ect.)p eop end
fffe80d4
CR
17929%%Page: 136 142
17930TeXDict begin 136 141 bop 150 -116 a Fu(Chapter)30 b(8:)41
17931b(Command)29 b(Line)i(Editing)2062 b(136)150 299 y Ft(transpose-words)
e59452c7
CR
1793226 b(\(M-t\))630 408 y Fu(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s
17933(oin)m(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)
17934s(oin)m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
17935b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
17936(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
17937(w)m(ords)e(on)g(the)h(line.)150 797 y Ft(upcase-word)c(\(M-u\))630
17938907 y Fu(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
17939(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
179401016 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
17941(the)e(cursor.)150 1186 y Ft(downcase-word)d(\(M-l\))630
179421296 y Fu(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
17943(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
17944(ercase)630 1405 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
17945(v)m(e)i(the)f(cursor.)150 1575 y Ft(capitalize-word)26
17946b(\(M-c\))630 1684 y Fu(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
e6983002 17947(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
e59452c7
CR
17948(capitalize)630 1794 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
17949(mo)m(v)m(e)i(the)f(cursor.)150 1964 y Ft(overwrite-mode)26
17950b(\(\))630 2073 y Fu(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
a9fac3b2 17951b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
e59452c7 17952h(switc)m(hes)630 2183 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
a9fac3b2 17953b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
e59452c7 17954(t,)i(switc)m(hes)e(to)630 2292 y(insert)30 b(mo)s(de.)41
6e51e0d0 17955b(This)30 b(command)h(a\013ects)h(only)e Ft(emacs)f Fu(mo)s(de;)i
e59452c7 17956Ft(vi)f Fu(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2402
a9fac3b2 17957y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
d37a4722 17958Ft(readline\(\))c Fu(starts)k(in)f(insert)g(mo)s(de.)630
e59452c7 179592541 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
d37a4722 17960(ound)c(to)j Ft(self-insert)c Fu(replace)k(the)g(text)g(at)630
e59452c7 179612651 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
d37a4722 17962(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
e59452c7
CR
179632761 y Ft(backward-delete-char)25 b Fu(replace)31 b(the)g(c)m(haracter)
17964h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2900
d37a4722 17965y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
e59452c7
CR
179663110 y Fk(8.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
179673287 y Ft(kill-line)28 b(\(C-k\))630 3396 y Fu(Kill)k(the)f(text)i
7a257517
CR
17968(from)d(p)s(oin)m(t)i(to)g(the)f(end)g(of)g(the)h(line.)44
17969b(With)31 b(a)h(negativ)m(e)i(n)m(umeric)d(argu-)630
e59452c7 179703506 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f(the)g(cursor)g(to)h
7a257517 17971(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f(line.)150
e59452c7
CR
179723675 y Ft(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
179733785 y Fu(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h(cursor)g(to)g(the)g
7a257517 17974(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70 b(With)41
e59452c7 17975b(a)630 3895 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
7a257517 17976b(kill)c(forw)m(ard)e(from)h(the)g(cursor)g(to)h(the)f(end)f(of)i(the)
e59452c7
CR
17977630 4004 y(curren)m(t)30 b(line.)150 4174 y Ft(unix-line-discard)c
17978(\(C-u\))630 4283 y Fu(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f
7a257517 17979(to)h(the)f(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150
e59452c7 179804453 y Ft(kill-whole-line)c(\(\))630 4562 y Fu(Kill)37
7a257517
CR
17981b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g
17982(where)f(p)s(oin)m(t)h(is.)59 b(By)36 b(default,)630
e59452c7
CR
179834672 y(this)30 b(is)h(un)m(b)s(ound.)150 4842 y Ft(kill-word)d(\(M-d\))
17984630 4951 y Fu(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
7a257517 17985(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
e59452c7 17986(the)g(end)630 5061 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
7a257517 17987b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Ft(forward-word)p
e59452c7
CR
17988Fu(.)150 5230 y Ft(backward-kill-word)25 b(\(M-DEL\))630
179895340 y Fu(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
7a257517 17990b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
e59452c7 17991Ft(backward-word)p Fu(.)p eop end
fffe80d4
CR
17992%%Page: 137 143
17993TeXDict begin 137 142 bop 150 -116 a Fu(Chapter)30 b(8:)41
17994b(Command)29 b(Line)i(Editing)2062 b(137)150 299 y Ft(shell-kill-word)
e59452c7
CR
1799526 b(\(M-C-d\))630 408 y Fu(Kill)k(from)f(p)s(oin)m(t)g(to)h(the)g(end)
17996e(of)i(the)f(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m
17997(ords,)f(to)h(the)g(end)630 518 y(of)h(the)f(next)h(w)m(ord.)40
17998b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
17999Ft(shell-forward-word)p Fu(.)150 692 y Ft(shell-backward-kill-word)24
18000b(\(\))630 801 y Fu(Kill)e(the)h(w)m(ord)e(b)s(ehind)g(p)s(oin)m(t.)38
a9fac3b2 18001b(W)-8 b(ord)22 b(b)s(oundaries)f(are)h(the)g(same)h(as)f
e59452c7
CR
18002Ft(shell-backward-)630 911 y(word)p Fu(.)150 1084 y Ft
18003(shell-transpose-words)j(\(M-C-t\))630 1194 y Fu(Drag)33
602eae4d
CR
18004b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g(the)h(w)m(ord)f
18005(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)g(that)630
e59452c7 180061304 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27 b(the)i(insertion)f(p)s(oin)m
602eae4d 18007(t)h(is)f(at)h(the)g(end)e(of)i(the)f(line,)i(this)e(transp)s(oses)g
e59452c7 18008(the)630 1413 y(last)j(t)m(w)m(o)h(w)m(ords)d(on)i(the)f(line.)41
602eae4d 18009b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)f(as)h
e59452c7
CR
18010Ft(shell-forward-)630 1523 y(word)e Fu(and)h Ft(shell-backward-word)p
18011Fu(.)150 1696 y Ft(unix-word-rubout)c(\(C-w\))630 1806
602eae4d
CR
18012y Fu(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
18013(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
e59452c7
CR
18014b(The)31 b(killed)630 1915 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
18015(kill-ring.)150 2089 y Ft(unix-filename-rubout)25 b(\(\))630
180162199 y Fu(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
e6983002 18017(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630
e59452c7
CR
180182308 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g
18019(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150 2482 y Ft
18020(delete-horizontal-space)24 b(\(\))630 2591 y Fu(Delete)33
e6983002 18021b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
e59452c7
CR
18022b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 2765
18023y Ft(kill-region)d(\(\))630 2874 y Fu(Kill)k(the)f(text)i(in)e(the)g
e6983002 18024(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
e59452c7
CR
18025m(b)s(ound.)150 3048 y Ft(copy-region-as-kill)25 b(\(\))630
180263158 y Fu(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
e6983002 18027(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
e59452c7
CR
18028(a)m(w)m(a)m(y)-8 b(.)630 3267 y(By)31 b(default,)f(this)h(command)f
18029(is)g(un)m(b)s(ound.)150 3441 y Ft(copy-backward-word)25
18030b(\(\))630 3550 y Fu(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
d37a4722 18031(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
e59452c7 18032f(are)i(the)630 3660 y(same)31 b(as)f Ft(backward-word)p
d37a4722 18033Fu(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
e59452c7 180343833 y Ft(copy-forward-word)26 b(\(\))630 3943 y Fu(Cop)m(y)31
124d67cd
CR
18035b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
18036(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
e59452c7 180374053 y(same)f(as)f Ft(forward-word)p Fu(.)38 b(By)30
602eae4d 18038b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
e59452c7 180394226 y Ft(yank)f(\(C-y\))630 4336 y Fu(Y)-8 b(ank)31
602eae4d 18040b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
e59452c7 18041(p)s(oin)m(t.)150 4509 y Ft(yank-pop)d(\(M-y\))630 4619
602eae4d
CR
18042y Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
18043b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
e59452c7
CR
180444728 y(command)30 b(is)h Ft(yank)e Fu(or)h Ft(yank-pop)p
18045Fu(.)150 4942 y Fk(8.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
18046(ts)150 5121 y Ft(digit-argument)26 b(\()p Fj(M-0)p Ft(,)j
18047Fj(M-1)p Ft(,)h(...)f Fj(M--)p Ft(\))630 5230 y Fu(Add)d(this)h(digit)g
124d67cd 18048(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
e59452c7
CR
18049(new)f(argumen)m(t.)630 5340 y Fj(M--)j Fu(starts)i(a)g(negativ)m(e)i
18050(argumen)m(t.)p eop end
fffe80d4
CR
18051%%Page: 138 144
18052TeXDict begin 138 143 bop 150 -116 a Fu(Chapter)30 b(8:)41
18053b(Command)29 b(Line)i(Editing)2062 b(138)150 299 y Ft
e59452c7
CR
18054(universal-argument)25 b(\(\))630 408 y Fu(This)g(is)g(another)h(w)m(a)
18055m(y)g(to)h(sp)s(ecify)e(an)g(argumen)m(t.)40 b(If)25
18056b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m(y)f(one)630
18057518 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h(leading)h(min)m(us)
18058e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630 628
18059y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)m(y)f
18060(digits,)i(executing)f Ft(universal-argument)630 737
18061y Fu(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
8a0829e9 18062(otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
e59452c7
CR
18063847 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)d
18064(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
18065956 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
8a0829e9 18066(the)h(next)f(command)g(is)g(m)m(ultiplied)h(b)m(y)630
e59452c7
CR
180671066 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
18068(one,)h(so)e(executing)i(this)e(function)f(the)i(\014rst)630
180691176 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
18070(second)g(time)g(mak)m(es)h(the)e(argumen)m(t)h(coun)m(t)630
180711285 y(sixteen,)i(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g
18072(not)h(b)s(ound)d(to)k(a)e(k)m(ey)-8 b(.)150 1468 y Fk(8.4.6)63
18073b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
18074b(Y)-10 b(ou)150 1632 y Ft(complete)28 b(\(TAB\))630
180751741 y Fu(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
18076(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
180771851 y(p)s(erformed)33 b(is)h(application-sp)s(eci\014c.)53
18078b(Bash)35 b(attempts)g(completion)g(treating)h(the)e(text)630
180791961 y(as)39 b(a)h(v)-5 b(ariable)39 b(\(if)h(the)f(text)h(b)s(egins)e
18080(with)h(`)p Ft($)p Fu('\),)j(username)c(\(if)i(the)f(text)h(b)s(egins)e
18081(with)630 2070 y(`)p Ft(~)p Fu('\),)31 b(hostname)f(\(if)g(the)g(text)h
18082(b)s(egins)e(with)h(`)p Ft(@)p Fu('\),)h(or)f(command)f(\(including)h
18083(aliases)i(and)630 2180 y(functions\))j(in)f(turn.)53
e6983002 18084b(If)34 b(none)g(of)h(these)h(pro)s(duces)d(a)i(matc)m(h,)i(\014lename)
e59452c7
CR
18085e(completion)h(is)630 2289 y(attempted.)150 2433 y Ft
18086(possible-completions)25 b(\(M-?\))630 2542 y Fu(List)35
e6983002 18087b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
e59452c7 18088(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 2652
e6983002
CR
18089y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
18090(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
e59452c7 18091b(of)630 2761 y Ft(completion-display-width)o Fu(,)g(the)j(v)-5
e6983002 18092b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
e59452c7
CR
18093b Ft(COLUMNS)p Fu(,)630 2871 y(or)30 b(the)h(screen)f(width,)g(in)g
18094(that)h(order.)150 3014 y Ft(insert-completions)25 b(\(M-*\))630
180953124 y Fu(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
e6983002 18096(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
e59452c7
CR
180973233 y(b)m(y)g Ft(possible-completions)p Fu(.)150 3376
18098y Ft(menu-complete)d(\(\))630 3486 y Fu(Similar)d(to)g
d37a4722 18099Ft(complete)p Fu(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
e59452c7 18100(completed)i(with)e(a)i(single)f(matc)m(h)630 3596 y(from)37
d37a4722 18101b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
e59452c7 18102b(execution)g(of)f Ft(menu-complete)630 3705 y Fu(steps)i(through)g
d37a4722 18103(the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
e59452c7 18104(matc)m(h)f(in)f(turn.)630 3815 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
d37a4722 18105(of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
e59452c7 18106b(ject)36 b(to)i(the)f(setting)630 3924 y(of)f Ft(bell-style)p
d37a4722
CR
18107Fu(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
18108b(An)36 b(argumen)m(t)h(of)f Fr(n)f Fu(mo)m(v)m(es)i
e59452c7 18109Fr(n)630 4034 y Fu(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
a9fac3b2 18110(matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
e59452c7 18111(used)g(to)630 4143 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
a9fac3b2 18112(list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
e59452c7
CR
18113(ound)e(to)630 4253 y Ft(TAB)p Fu(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
18114(y)i(default.)150 4396 y Ft(menu-complete-backward)24
18115b(\(\))630 4506 y Fu(Iden)m(tical)36 b(to)g Ft(menu-complete)p
6e51e0d0 18116Fu(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
e59452c7 18117(p)s(ossible)630 4615 y(completions,)d(as)e(if)h Ft(menu-complete)26
124d67cd 18118b Fu(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
e59452c7 181194758 y Ft(delete-char-or-list)25 b(\(\))630 4868 y Fu(Deletes)41
6e51e0d0 18120b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
e59452c7 18121(eginning)e(or)h(end)f(of)h(the)630 4978 y(line)50 b(\(lik)m(e)h
6e51e0d0 18122Ft(delete-char)p Fu(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
e59452c7 1812355 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 5087
124d67cd 18124y Ft(possible-completions)p Fu(.)35 b(This)30 b(command)g(is)g(un)m(b)s
e59452c7
CR
18125(ound)e(b)m(y)i(default.)150 5230 y Ft(complete-filename)c(\(M-/\))630
181265340 y Fu(A)m(ttempt)32 b(\014lename)e(completion)i(on)e(the)h(text)g
18127(b)s(efore)f(p)s(oin)m(t.)p eop end
fffe80d4
CR
18128%%Page: 139 145
18129TeXDict begin 139 144 bop 150 -116 a Fu(Chapter)30 b(8:)41
18130b(Command)29 b(Line)i(Editing)2062 b(139)150 299 y Ft
e59452c7
CR
18131(possible-filename-comple)o(tion)o(s)24 b(\(C-x)30 b(/\))630
18132408 y Fu(List)f(the)g(p)s(ossible)f(completions)h(of)g(the)g(text)g(b)s
18133(efore)g(p)s(oin)m(t,)g(treating)h(it)f(as)g(a)f(\014lename.)150
18134577 y Ft(complete-username)e(\(M-~\))630 687 y Fu(A)m(ttempt)32
e6983002 18135b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s(oin)m(t,)g(treating)i
e59452c7
CR
18136(it)f(as)f(a)h(username.)150 856 y Ft(possible-username-comple)o(tion)o
18137(s)24 b(\(C-x)30 b(~\))630 965 y Fu(List)25 b(the)g(p)s(ossible)g
18138(completions)h(of)f(the)g(text)h(b)s(efore)f(p)s(oin)m(t,)h(treating)g
18139(it)g(as)f(a)g(username.)150 1134 y Ft(complete-variable)h(\(M-$\))630
181401244 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)
18141s(oin)m(t,)g(treating)i(it)f(as)f(a)h(shell)g(v)-5 b(ariable.)150
181421412 y Ft(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30
18143b($\))630 1522 y Fu(List)42 b(the)g(p)s(ossible)g(completions)h(of)f
18144(the)g(text)h(b)s(efore)e(p)s(oin)m(t,)46 b(treating)d(it)f(as)g(a)h
18145(shell)630 1632 y(v)-5 b(ariable.)150 1800 y Ft(complete-hostname)26
18146b(\(M-@\))630 1910 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i
e6983002 18147(b)s(efore)e(p)s(oin)m(t,)g(treating)i(it)f(as)f(a)h(hostname.)150
e59452c7
CR
181482079 y Ft(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30
18149b(@\))630 2188 y Fu(List)25 b(the)g(p)s(ossible)f(completions)h(of)g
e6983002 18150(the)g(text)g(b)s(efore)g(p)s(oin)m(t,)h(treating)g(it)f(as)f(a)h
e59452c7
CR
18151(hostname.)150 2357 y Ft(complete-command)h(\(M-!\))630
181522467 y Fu(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p)
e6983002 18153s(oin)m(t,)h(treating)h(it)g(as)f(a)g(command)g(name.)630
e59452c7
CR
181542576 y(Command)46 b(completion)i(attempts)g(to)f(matc)m(h)h(the)f(text)
18155h(against)g(aliases,)53 b(reserv)m(ed)630 2686 y(w)m(ords,)36
e6983002 18156b(shell)g(functions,)h(shell)e(builtins,)i(and)e(\014nally)g
e59452c7
CR
18157(executable)i(\014lenames,)g(in)e(that)630 2796 y(order.)150
181582964 y Ft(possible-command-complet)o(ions)24 b(\(C-x)29
18159b(!\))630 3074 y Fu(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h
e6983002 18160(text)g(b)s(efore)f(p)s(oin)m(t,)h(treating)g(it)g(as)g(a)f(command)630
e59452c7
CR
181613184 y(name.)150 3352 y Ft(dynamic-complete-history)e(\(M-TAB\))630
181623462 y Fu(A)m(ttempt)31 b(completion)h(on)e(the)g(text)h(b)s(efore)f(p)
e6983002 18163s(oin)m(t,)g(comparing)h(the)f(text)h(against)h(lines)630
e59452c7
CR
181643572 y(from)e(the)g(history)h(list)g(for)f(p)s(ossible)g(completion)i
18165(matc)m(hes.)150 3740 y Ft(dabbrev-expand)26 b(\(\))630
181663850 y Fu(A)m(ttempt)i(men)m(u)e(completion)i(on)f(the)g(text)g(b)s
e6983002 18167(efore)f(p)s(oin)m(t,)i(comparing)f(the)g(text)h(against)630
e59452c7
CR
181683960 y(lines)j(from)e(the)i(history)f(list)h(for)g(p)s(ossible)e
18169(completion)j(matc)m(hes.)150 4128 y Ft(complete-into-braces)25
18170b(\(M-{\))630 4238 y Fu(P)m(erform)f(\014lename)f(completion)i(and)f
124d67cd 18171(insert)f(the)h(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630
e59452c7 181724348 y(within)34 b(braces)h(so)f(the)h(list)g(is)g(a)m(v)-5
124d67cd 18173b(ailable)37 b(to)e(the)g(shell)g(\(see)g(Section)h(3.5.1)g([Brace)g
e59452c7
CR
18174(Ex-)630 4457 y(pansion],)30 b(page)h(24\).)150 4666
18175y Fk(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 4842 y Ft(start-kbd-macro)
1817626 b(\(C-x)j(\(\))630 4952 y Fu(Begin)i(sa)m(ving)h(the)e(c)m
124d67cd 18177(haracters)i(t)m(yp)s(ed)e(in)m(to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)
e59452c7
CR
18178g(macro.)150 5121 y Ft(end-kbd-macro)d(\(C-x)i(\)\))630
181795230 y Fu(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
124d67cd 18180(to)i(the)e(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i
e59452c7 18181(the)630 5340 y(de\014nition.)p eop end
fffe80d4
CR
18182%%Page: 140 146
18183TeXDict begin 140 145 bop 150 -116 a Fu(Chapter)30 b(8:)41
18184b(Command)29 b(Line)i(Editing)2062 b(140)150 299 y Ft
e59452c7
CR
18185(call-last-kbd-macro)25 b(\(C-x)k(e\))630 408 y Fu(Re-execute)37
18186b(the)e(last)h(k)m(eyb)s(oard)f(macro)h(de\014ned,)f(b)m(y)h(making)f
18187(the)g(c)m(haracters)i(in)e(the)630 518 y(macro)c(app)s(ear)f(as)g(if)h
18188(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s(oard.)150 671 y Ft
18189(print-last-kbd-macro)25 b(\(\))630 780 y Fu(Prin)m(t)30
18190b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)e(in)i(a)f(format)h
18191(suitable)g(for)f(the)h Fr(inputrc)k Fu(\014le.)150 973
18192y Fk(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150
181931141 y Ft(re-read-init-file)26 b(\(C-x)j(C-r\))630 1251
18194y Fu(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
18195Fr(inputrc)27 b Fu(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
18196(or)i(v)-5 b(ariable)630 1360 y(assignmen)m(ts)31 b(found)e(there.)150
181971513 y Ft(abort)g(\(C-g\))630 1622 y Fu(Ab)s(ort)d(the)h(curren)m(t)f
18198(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
18199b(ject)26 b(to)i(the)630 1732 y(setting)j(of)g Ft(bell-style)p
18200Fu(\).)150 1885 y Ft(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
18201Fj(x)p Ft(,)g(...)o(\))630 1994 y Fu(If)35 b(the)g(meta\014ed)g(c)m
18202(haracter)i Fr(x)k Fu(is)35 b(upp)s(er)e(case,)k(run)d(the)h(command)g
18203(that)g(is)g(b)s(ound)e(to)630 2104 y(the)g(corresp)s(onding)f
18204(meta\014ed)h(lo)m(w)m(er)i(case)f(c)m(haracter.)50 b(The)32
18205b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 2213 y Fr(x)37
18206b Fu(is)30 b(already)h(lo)m(w)m(er)h(case.)150 2366 y
18207Ft(prefix-meta)27 b(\(ESC\))630 2476 y Fu(Metafy)39 b(the)e(next)h(c)m
18208(haracter)h(t)m(yp)s(ed.)62 b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f
18209(without)g(a)h(meta)g(k)m(ey)-8 b(.)630 2585 y(T)m(yping)30
18210b(`)p Ft(ESC)g(f)p Fu(')g(is)h(equiv)-5 b(alen)m(t)31
18211b(to)g(t)m(yping)g Fj(M-f)p Fu(.)150 2738 y Ft(undo)e(\(C-_)g(or)h(C-x)
18212g(C-u\))630 2847 y Fu(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s
18213(ered)f(for)g(eac)m(h)i(line.)150 3000 y Ft(revert-line)27
18214b(\(M-r\))630 3109 y Fu(Undo)33 b(all)h(c)m(hanges)g(made)f(to)h(this)f
18215(line.)49 b(This)32 b(is)h(lik)m(e)i(executing)f(the)f
18216Ft(undo)f Fu(command)630 3219 y(enough)e(times)h(to)g(get)h(bac)m(k)f
18217(to)g(the)f(b)s(eginning.)150 3372 y Ft(tilde-expand)d(\(M-&\))630
182183481 y Fu(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m
18219(ord.)150 3634 y Ft(set-mark)d(\(C-@\))630 3743 y Fu(Set)33
18220b(the)g(mark)f(to)i(the)f(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g
18221(argumen)m(t)g(is)g(supplied,)f(the)h(mark)g(is)f(set)630
182223853 y(to)f(that)g(p)s(osition.)150 4006 y Ft(exchange-point-and-mark)
1822324 b(\(C-x)29 b(C-x\))630 4115 y Fu(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)
18224g(the)g(mark.)43 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f
18225(set)h(to)f(the)h(sa)m(v)m(ed)630 4225 y(p)s(osition,)f(and)e(the)i
18226(old)g(cursor)e(p)s(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150
182274377 y Ft(character-search)26 b(\(C-]\))630 4487 y Fu(A)f(c)m(haracter)
18228h(is)f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g
18229(o)s(ccurrence)g(of)g(that)g(c)m(haracter.)630 4596 y(A)30
124d67cd 18230b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
e59452c7
CR
18231(ccurrences.)150 4749 y Ft(character-search-backwar)o(d)24
18232b(\(M-C-]\))630 4859 y Fu(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
124d67cd 18233(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
e59452c7 18234g(that)630 4968 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
124d67cd 18235(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
e59452c7 182365121 y Ft(skip-csi-sequence)d(\(\))630 5230 y Fu(Read)i(enough)f(c)m
124d67cd 18237(haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
e59452c7 18238(as)g(those)h(de\014ned)630 5340 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
124d67cd 18239(and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
e59452c7 18240(trol)g(Sequence)p eop end
fffe80d4
CR
18241%%Page: 141 147
18242TeXDict begin 141 146 bop 150 -116 a Fu(Chapter)30 b(8:)41
18243b(Command)29 b(Line)i(Editing)2062 b(141)630 299 y(Indicator)37
e59452c7
CR
18244b(\(CSI\),)f(usually)h(ESC-[.)59 b(If)36 b(this)g(sequence)h(is)g(b)s
18245(ound)d(to)k Ft("\\)p Fu(e[)p Ft(")p Fu(,)g(k)m(eys)f(pro-)630
18246408 y(ducing)31 b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f
18247(e\013ect)h(unless)e(explicitly)j(b)s(ound)c(to)i(a)h(readline)630
18248518 y(command,)f(instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g
18249(in)m(to)g(the)f(editing)h(bu\013er.)44 b(This)31 b(is)630
18250628 y(un)m(b)s(ound)d(b)m(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)
18251j(ESC-[.)150 792 y Ft(insert-comment)26 b(\(M-#\))630
18252902 y Fu(Without)36 b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5
18253b(alue)36 b(of)g(the)g Ft(comment-begin)c Fu(v)-5 b(ariable)36
18254b(is)g(in-)630 1011 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
18255(curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
18256(supplied,)630 1121 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
18257b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
18258(line)630 1230 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
18259b(alue)31 b(of)f Ft(comment-begin)p Fu(,)e(the)i(v)-5
18260b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 1340
18261y(c)m(haracters)42 b(in)d Ft(comment-begin)e Fu(are)j(deleted)h(from)f
18262(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 1450
18263y(either)37 b(case,)j(the)e(line)f(is)g(accepted)i(as)e(if)g(a)g
18264(newline)g(had)g(b)s(een)f(t)m(yp)s(ed.)60 b(The)37 b(default)630
182651559 y(v)-5 b(alue)32 b(of)g Ft(comment-begin)c Fu(causes)k(this)f
18266(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g(a)g(shell)630
182671669 y(commen)m(t.)40 b(If)26 b(a)h(n)m(umeric)f(argumen)m(t)h(causes)g
18268(the)f(commen)m(t)i(c)m(haracter)g(to)f(b)s(e)f(remo)m(v)m(ed,)630
182691778 y(the)31 b(line)f(will)h(b)s(e)f(executed)h(b)m(y)f(the)h(shell.)
18270150 1943 y Ft(dump-functions)26 b(\(\))630 2052 y Fu(Prin)m(t)g(all)i
18271(of)e(the)h(functions)f(and)g(their)g(k)m(ey)h(bindings)e(to)j(the)e
18272(Readline)h(output)f(stream.)630 2162 y(If)31 b(a)h(n)m(umeric)g
18273(argumen)m(t)g(is)g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f
18274(suc)m(h)h(a)g(w)m(a)m(y)g(that)630 2271 y(it)f(can)g(b)s(e)e(made)i
18275(part)f(of)g(an)h Fr(inputrc)k Fu(\014le.)41 b(This)29
18276b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k(default.)150
182772436 y Ft(dump-variables)26 b(\(\))630 2545 y Fu(Prin)m(t)21
18278b(all)h(of)g(the)f(settable)i(v)-5 b(ariables)22 b(and)f(their)g(v)-5
18279b(alues)22 b(to)g(the)f(Readline)h(output)f(stream.)630
182802655 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
74d0116b 18281(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
e59452c7 182822765 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fr(inputrc)k
6e51e0d0 18283Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
e59452c7
CR
18284(default.)150 2929 y Ft(dump-macros)c(\(\))630 3039 y
18285Fu(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f(b)s
18286(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
182873148 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
eb0b2ad8 18288(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
e59452c7 182893258 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
6e51e0d0 18290Fr(inputrc)35 b Fu(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
e59452c7
CR
18291d(b)m(y)630 3367 y(default.)150 3532 y Ft(spell-correct-word)e(\(C-x)30
18292b(s\))630 3641 y Fu(P)m(erform)36 b(sp)s(elling)h(correction)h(on)e
18293(the)h(curren)m(t)f(w)m(ord,)i(treating)f(it)g(as)g(a)g(directory)g(or)
18294630 3751 y(\014lename,)g(in)e(the)h(same)f(w)m(a)m(y)i(as)e(the)h
18295Ft(cdspell)d Fu(shell)j(option.)56 b(W)-8 b(ord)36 b(b)s(oundaries)e
18296(are)630 3861 y(the)d(same)f(as)h(those)g(used)e(b)m(y)i
18297Ft(shell-forward-word)p Fu(.)150 4025 y Ft(glob-complete-word)25
18298b(\(M-g\))630 4134 y Fu(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g
18299(treated)h(as)f(a)h(pattern)f(for)f(pathname)h(expansion,)g(with)g(an)
18300630 4244 y(asterisk)d(implicitly)h(app)s(ended.)37 b(This)23
602eae4d 18301b(pattern)i(is)f(used)g(to)h(generate)h(a)e(list)h(of)g(matc)m(hing)630
e59452c7
CR
183024354 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150
183034518 y Ft(glob-expand-word)c(\(C-x)j(*\))630 4628 y Fu(The)40
602eae4d 18304b(w)m(ord)g(b)s(efore)g(p)s(oin)m(t)h(is)g(treated)g(as)g(a)g(pattern)g
e59452c7 18305(for)f(pathname)g(expansion,)k(and)630 4737 y(the)c(list)g(of)f(matc)m
602eae4d 18306(hing)i(\014le)e(names)g(is)h(inserted,)h(replacing)g(the)e(w)m(ord.)67
e59452c7 18307b(If)39 b(a)h(n)m(umeric)630 4847 y(argumen)m(t)31 b(is)f(supplied,)g
602eae4d 18308(a)g(`)p Ft(*)p Fu(')h(is)f(app)s(ended)f(b)s(efore)h(pathname)g
e59452c7
CR
18309(expansion.)150 5011 y Ft(glob-list-expansions)25 b(\(C-x)k(g\))630
183105121 y Fu(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h
602eae4d 18311(b)s(een)f(generated)h(b)m(y)f Ft(glob-expand-word)630
e59452c7 183125230 y Fu(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.)
602eae4d 1831350 b(If)33 b(a)h(n)m(umeric)g(argumen)m(t)g(is)f(supplied,)h(a)g(`)p
e59452c7
CR
18314Ft(*)p Fu(')630 5340 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g
18315(expansion.)p eop end
fffe80d4
CR
18316%%Page: 142 148
18317TeXDict begin 142 147 bop 150 -116 a Fu(Chapter)30 b(8:)41
18318b(Command)29 b(Line)i(Editing)2062 b(142)150 299 y Ft
e59452c7
CR
18319(display-shell-version)25 b(\(C-x)k(C-v\))630 408 y Fu(Displa)m(y)j(v)m
18320(ersion)e(information)h(ab)s(out)f(the)h(curren)m(t)f(instance)h(of)f
18321(Bash.)150 566 y Ft(shell-expand-line)c(\(M-C-e\))630
18322676 y Fu(Expand)34 b(the)h(line)h(as)g(the)f(shell)h(do)s(es.)55
18323b(This)34 b(p)s(erforms)g(alias)i(and)f(history)g(expansion)630
18324785 y(as)f(w)m(ell)g(as)g(all)h(of)e(the)h(shell)g(w)m(ord)f
18325(expansions)g(\(see)i(Section)f(3.5)h([Shell)e(Expansions],)630
18326895 y(page)e(24\).)150 1053 y Ft(history-expand-line)25
18327b(\(M-^\))630 1162 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)
18328h(curren)m(t)f(line.)150 1320 y Ft(magic-space)d(\(\))630
183291429 y Fu(P)m(erform)c(history)g(expansion)g(on)g(the)g(curren)m(t)g
18330(line)g(and)g(insert)g(a)g(space)h(\(see)g(Section)g(9.3)630
fffe80d4 183311539 y([History)31 b(In)m(teraction],)i(page)e(153\).)150
e59452c7
CR
183321697 y Ft(alias-expand-line)26 b(\(\))630 1806 y Fu(P)m(erform)i(alias)
18333i(expansion)e(on)g(the)h(curren)m(t)f(line)h(\(see)g(Section)g(6.6)h
18334([Aliases],)g(page)f(99\).)150 1964 y Ft(history-and-alias-expand)o
18335(-lin)o(e)24 b(\(\))630 2073 y Fu(P)m(erform)30 b(history)h(and)e
e6983002 18336(alias)j(expansion)e(on)g(the)h(curren)m(t)f(line.)150
e59452c7
CR
183372231 y Ft(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630
183382341 y Fu(A)g(synon)m(ym)g(for)g Ft(yank-last-arg)p Fu(.)150
183392498 y Ft(edit-and-execute-command)24 b(\(C-x)29 b(C-e\))630
183402608 y Fu(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)g(the)g(curren)m(t)f
74d0116b 18341(command)h(line,)h(and)e(execute)i(the)f(result)g(as)g(shell)630
e59452c7 183422718 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)m(ok)m(e)h
6e51e0d0 18343Ft($VISUAL)p Fu(,)f Ft($EDITOR)p Fu(,)h(and)d Ft(emacs)g
e59452c7
CR
18344Fu(as)h(the)630 2827 y(editor,)31 b(in)f(that)h(order.)150
183453066 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 3226
d37a4722
CR
18346y Fu(While)32 b(the)g(Readline)g(library)f(do)s(es)g(not)h(ha)m(v)m(e)h
18347(a)f(full)f(set)h(of)g Ft(vi)f Fu(editing)h(functions,)f(it)h(do)s(es)g
e59452c7 18348(con)m(tain)150 3335 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f
d37a4722 18349(the)g(line.)52 b(The)34 b(Readline)g Ft(vi)g Fu(mo)s(de)f(b)s(eha)m(v)
e59452c7
CR
18350m(es)i(as)f(sp)s(eci\014ed)f(in)150 3445 y(the)e Fm(posix)e
18351Fu(standard.)275 3578 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
d37a4722
CR
18352m(ely)j(b)s(et)m(w)m(een)d Ft(emacs)f Fu(and)g Ft(vi)g
18353Fu(editing)h(mo)s(des,)h(use)f(the)g(`)p Ft(set)30 b(-o)150
e59452c7 183543688 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p
d37a4722 18355Fu(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
e59452c7
CR
18356(page)e(66\).)83 b(The)150 3798 y(Readline)31 b(default)g(is)f
18357Ft(emacs)f Fu(mo)s(de.)275 3931 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
d37a4722 18358(in)g Ft(vi)f Fu(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
e59452c7 18359(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 4041 y(had)f(t)m(yp)s
d37a4722
CR
18360(ed)g(an)g(`)p Ft(i)p Fu('.)41 b(Pressing)29 b Ft(ESC)f
18361Fu(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h(where)e(y)m
e59452c7 18362(ou)i(can)g(edit)g(the)150 4150 y(text)35 b(of)f(the)g(line)g(with)f
d37a4722 18363(the)h(standard)f Ft(vi)g Fu(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)
e59452c7 18364f(to)f(previous)g(history)f(lines)h(with)150 4260 y(`)p
d37a4722 18365Ft(k)p Fu(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
e59452c7
CR
18366Ft(j)p Fu(',)g(and)g(so)h(forth.)150 4499 y Fs(8.6)68
18367b(Programmable)47 b(Completion)150 4658 y Fu(When)25
d37a4722 18368b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g
e59452c7 18369(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4768
d37a4722
CR
18370y(sp)s(eci\014cation)40 b(\(a)h Fr(compsp)s(ec)6 b Fu(\))39
18371b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Ft(complete)d
e59452c7 18372Fu(builtin)j(\(see)g(Section)h(8.7)150 4878 y([Programmable)h
fffe80d4 18373(Completion)f(Builtins],)k(page)d(145\),)j(the)c(programmable)g
e59452c7
CR
18374(completion)i(facilities)150 4987 y(are)31 b(in)m(v)m(ok)m(ed.)275
183755121 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
d37a4722 18376b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h
e59452c7 18377(command,)150 5230 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i
d37a4722 18378(the)e(list)g(of)g(p)s(ossible)g(completions)h(for)e(the)h(w)m(ord.)81
e59452c7 18379b(If)44 b(the)150 5340 y(command)36 b(w)m(ord)g(is)g(the)g(empt)m(y)h
d37a4722 18380(string)f(\(completion)i(attempted)f(at)g(the)g(b)s(eginning)e(of)h(an)
e59452c7 18381h(empt)m(y)p eop end
fffe80d4
CR
18382%%Page: 143 149
18383TeXDict begin 143 148 bop 150 -116 a Fu(Chapter)30 b(8:)41
18384b(Command)29 b(Line)i(Editing)2062 b(143)150 299 y(line\),)30
e59452c7
CR
18385b(an)m(y)g(compsp)s(ec)f(de\014ned)f(with)h(the)h Ft(-E)e
18386Fu(option)i(to)g Ft(complete)d Fu(is)i(used.)40 b(If)29
18387b(the)g(command)g(w)m(ord)150 408 y(is)e(a)h(full)e(pathname,)i(a)g
18388(compsp)s(ec)e(for)h(the)g(full)g(pathname)g(is)g(searc)m(hed)h(for)f
18389(\014rst.)39 b(If)26 b(no)h(compsp)s(ec)g(is)150 518
18390y(found)22 b(for)g(the)h(full)g(pathname,)h(an)f(attempt)h(is)f(made)g
18391(to)g(\014nd)f(a)h(compsp)s(ec)f(for)h(the)g(p)s(ortion)f(follo)m(wing)
18392150 628 y(the)34 b(\014nal)g(slash.)53 b(If)34 b(those)g(searc)m(hes)i
18393(do)e(not)g(result)h(in)f(a)g(compsp)s(ec,)h(an)m(y)g(compsp)s(ec)f
18394(de\014ned)f(with)150 737 y(the)k Ft(-D)g Fu(option)g(to)h
18395Ft(complete)d Fu(is)i(used)g(as)g(the)g(default.)61 b(If)37
18396b(there)g(is)h(no)f(default)g(compsp)s(ec,)i(Bash)150
18397847 y(attempts)e(alias)h(expansion)e(on)g(the)h(command)f(w)m(ord)g(as)
18398h(a)f(\014nal)g(resort,)j(and)c(attempts)j(to)f(\014nd)e(a)150
18399956 y(compsp)s(ec)30 b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h
18400(successful)f(expansion)275 1113 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s
18401(een)f(found,)h(it)h(is)f(used)f(to)i(generate)h(the)e(list)h(of)f
18402(matc)m(hing)h(w)m(ords.)51 b(If)150 1223 y(a)37 b(compsp)s(ec)f(is)g
18403(not)h(found,)f(the)h(default)f(Bash)h(completion)g(describ)s(ed)e(ab)s
18404(o)m(v)m(e)j(\(see)f(Section)g(8.4.6)150 1332 y([Commands)30
fffe80d4 18405b(F)-8 b(or)31 b(Completion],)g(page)g(138\))h(is)f(p)s(erformed.)275
e59452c7
CR
184061489 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s
18407(ec)h(are)g(used.)40 b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h
18408(pre\014xed)150 1598 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h
18409(are)g(returned.)44 b(When)31 b(the)h Ft(-f)f Fu(or)h
18410Ft(-d)f Fu(option)h(is)f(used)g(for)h(\014lename)150
184111708 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
18412b(ariable)31 b Ft(FIGNORE)d Fu(is)i(used)f(to)i(\014lter)g(the)f(matc)m
18413(hes.)42 b(See)150 1817 y(Section)31 b(5.2)h([Bash)e(V)-8
18414b(ariables],)33 b(page)e(77,)g(for)f(a)h(description)g(of)f
18415Ft(FIGNORE)p Fu(.)275 1974 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f
6e51e0d0 18416(b)m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g
e59452c7 18417Ft(-G)e Fu(option)i(are)g(generated)150 2084 y(next.)41
6e51e0d0
CR
18418b(The)29 b(w)m(ords)g(generated)h(b)m(y)g(the)g(pattern)f(need)h(not)f
18419(matc)m(h)i(the)f(w)m(ord)f(b)s(eing)g(completed.)41
e59452c7 18420b(The)150 2193 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32
6e51e0d0 18421b(is)g(not)g(used)e(to)i(\014lter)g(the)g(matc)m(hes,)h(but)d(the)i
e59452c7
CR
18422Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 2303 y(is)30
18423b(used.)275 2459 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the)
e6983002 18424g(argumen)m(t)h(to)g(the)f Ft(-W)f Fu(option)i(is)f(considered.)60
e59452c7 18425b(The)37 b(string)150 2569 y(is)c(\014rst)e(split)i(using)f(the)h(c)m
e6983002
CR
18426(haracters)h(in)e(the)h Ft(IFS)e Fu(sp)s(ecial)j(v)-5
18427b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150
e59452c7 184282679 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide)
e6983002 18429f(a)h(mec)m(hanism)f(for)g(the)g(w)m(ords)g(to)g(con)m(tain)i(shell)150
e59452c7 184302788 y(metac)m(haracters)e(or)e(c)m(haracters)i(in)e(the)g(v)-5
e6983002 18431b(alue)31 b(of)g Ft(IFS)p Fu(.)42 b(Eac)m(h)32 b(w)m(ord)e(is)h(then)g
e59452c7 18432(expanded)f(using)h(brace)150 2898 y(expansion,)g(tilde)h(expansion,)f
e6983002 18433(parameter)g(and)g(v)-5 b(ariable)32 b(expansion,)f(command)f
e59452c7 18434(substitution,)i(and)150 3007 y(arithmetic)c(expansion,)f(as)g(describ)
e6983002 18435s(ed)e(ab)s(o)m(v)m(e)i(\(see)h(Section)f(3.5)g([Shell)g(Expansions],)g
e59452c7 18436(page)g(24\).)40 b(The)150 3117 y(results)23 b(are)h(split)g(using)f
e6983002 18437(the)h(rules)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)g(Section)f(3.5.7)
3011048a 18438h([W)-8 b(ord)24 b(Splitting],)i(page)e(35\).)150 3226
e6983002
CR
18439y(The)j(results)h(of)f(the)h(expansion)g(are)g(pre\014x-matc)m(hed)g
18440(against)h(the)f(w)m(ord)f(b)s(eing)g(completed,)j(and)d(the)150
e59452c7
CR
184413336 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f
18442(completions.)275 3493 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s
e6983002 18443(een)f(generated,)h(an)m(y)g(shell)f(function)g(or)g(command)g(sp)s
e59452c7 18444(eci\014ed)f(with)150 3602 y(the)36 b Ft(-F)f Fu(and)g
e6983002
CR
18445Ft(-C)g Fu(options)h(is)g(in)m(v)m(ok)m(ed.)59 b(When)35
18446b(the)h(command)g(or)f(function)h(is)g(in)m(v)m(ok)m(ed,)i(the)e
e59452c7 18447Ft(COMP_)150 3712 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p
d37a4722
CR
18448Fu(,)d Ft(COMP_KEY)p Fu(,)i(and)e Ft(COMP_TYPE)f Fu(v)-5
18449b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed)
e59452c7
CR
18450150 3821 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
18451b(ariables],)36 b(page)d(77\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
18452(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 3931 y Ft(COMP_WORDS)j
602eae4d 18453Fu(and)i Ft(COMP_CWORD)d Fu(v)-5 b(ariables)42 b(are)g(also)h(set.)74
e59452c7 18454b(When)41 b(the)h(function)f(or)h(command)f(is)150 4041
12933b5b
CR
18455y(in)m(v)m(ok)m(ed,)c(the)e(\014rst)f(argumen)m(t)h(\($1\))h(is)e(the)h
18456(name)g(of)f(the)h(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150
e59452c7 184574150 y(completed,)30 b(the)f(second)f(argumen)m(t)h(\($2\))h(is)f(the)g
45c0f7f8 18458(w)m(ord)f(b)s(eing)g(completed,)i(and)e(the)h(third)e(argumen)m(t)150
e59452c7 184594260 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s
45c0f7f8 18460(eing)g(completed)i(on)e(the)h(curren)m(t)f(command)h(line.)65
e59452c7 18461b(No)150 4369 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g
45c0f7f8 18462(against)h(the)e(w)m(ord)g(b)s(eing)f(completed)i(is)g(p)s(erformed;)f
e59452c7
CR
18463(the)150 4479 y(function)d(or)g(command)h(has)f(complete)i(freedom)e
18464(in)g(generating)h(the)g(matc)m(hes.)275 4635 y(An)m(y)j(function)h(sp)
a6ae8f35 18465s(eci\014ed)f(with)g Ft(-F)g Fu(is)h(in)m(v)m(ok)m(ed)h(\014rst.)53
6e51e0d0 18466b(The)35 b(function)f(ma)m(y)h(use)g(an)m(y)g(of)g(the)g(shell)150
e59452c7 184674745 y(facilities,)50 b(including)44 b(the)h Ft(compgen)d
6e51e0d0 18468Fu(and)i Ft(compopt)e Fu(builtins)i(describ)s(ed)f(b)s(elo)m(w)h(\(see)
e59452c7 18469i(Section)f(8.7)150 4855 y([Programmable)31 b(Completion)h(Builtins],)f
fffe80d4 18470(page)h(145\),)g(to)g(generate)g(the)f(matc)m(hes.)42
e59452c7 18471b(It)31 b(m)m(ust)g(put)f(the)150 4964 y(p)s(ossible)g(completions)h
124d67cd 18472(in)f(the)h Ft(COMPREPLY)d Fu(arra)m(y)j(v)-5 b(ariable,)31
e59452c7 18473b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275 5121 y(Next,)26
124d67cd
CR
18474b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h Ft(-C)f
18475Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m(vironmen)m(t)h
e59452c7 18476(equiv)-5 b(alen)m(t)150 5230 y(to)26 b(command)e(substitution.)39
6e51e0d0 18477b(It)25 b(should)f(prin)m(t)h(a)g(list)h(of)f(completions,)i(one)e(p)s
e59452c7 18478(er)f(line,)j(to)f(the)f(standard)150 5340 y(output.)40
6e51e0d0 18479b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f
e59452c7 18480(newline,)h(if)f(necessary)-8 b(.)p eop end
fffe80d4
CR
18481%%Page: 144 150
18482TeXDict begin 144 149 bop 150 -116 a Fu(Chapter)30 b(8:)41
18483b(Command)29 b(Line)i(Editing)2062 b(144)275 299 y(After)24
6e51e0d0
CR
18484b(all)i(of)f(the)f(p)s(ossible)g(completions)i(are)f(generated,)i(an)m
18485(y)e(\014lter)g(sp)s(eci\014ed)e(with)i(the)g Ft(-X)e
e59452c7 18486Fu(option)150 408 y(is)34 b(applied)g(to)g(the)h(list.)52
6e51e0d0 18487b(The)33 b(\014lter)h(is)g(a)h(pattern)f(as)g(used)f(for)h(pathname)g
e59452c7 18488(expansion;)i(a)e(`)p Ft(&)p Fu(')g(in)g(the)150 518
6e51e0d0
CR
18489y(pattern)28 b(is)f(replaced)h(with)g(the)f(text)i(of)f(the)f(w)m(ord)h
18490(b)s(eing)f(completed.)40 b(A)28 b(literal)h(`)p Ft(&)p
e59452c7 18491Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)150 628 y(with)38
6e51e0d0
CR
18492b(a)h(bac)m(kslash;)k(the)38 b(bac)m(kslash)h(is)g(remo)m(v)m(ed)g(b)s
18493(efore)f(attempting)h(a)g(matc)m(h.)65 b(An)m(y)39 b(completion)150
e59452c7 18494737 y(that)32 b(matc)m(hes)g(the)g(pattern)g(will)f(b)s(e)g(remo)m(v)m
6e51e0d0 18495(ed)h(from)f(the)h(list.)44 b(A)32 b(leading)g(`)p Ft(!)p
e59452c7 18496Fu(')f(negates)i(the)f(pattern;)150 847 y(in)d(this)g(case)h(an)m(y)g
8a0829e9 18497(completion)h(not)e(matc)m(hing)h(the)g(pattern)f(will)h(b)s(e)e(remo)m
e59452c7 18498(v)m(ed.)42 b(If)29 b(the)g Ft(nocasematch)150 956 y
8a0829e9
CR
18499Fu(shell)k(option)f(\(see)i(the)e(description)g(of)h
18500Ft(shopt)e Fu(in)h(Section)h(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g
e59452c7 18501(70\))h(is)150 1066 y(enabled,)d(the)f(matc)m(h)h(is)g(p)s(erformed)e
8a0829e9 18502(without)h(regard)g(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m
e59452c7 18503(haracters.)275 1203 y(Finally)-8 b(,)42 b(an)m(y)c(pre\014x)g(and)f
6e51e0d0 18504(su\016x)h(sp)s(eci\014ed)f(with)i(the)f Ft(-P)g Fu(and)g
e59452c7 18505Ft(-S)f Fu(options)i(are)g(added)f(to)h(eac)m(h)150 1313
6e51e0d0 18506y(mem)m(b)s(er)31 b(of)g(the)h(completion)h(list,)f(and)f(the)h(result)
e59452c7
CR
18507f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)150
185081422 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)275
185091559 y(If)d(the)h(previously-applied)f(actions)i(do)f(not)g(generate)h
18510(an)m(y)f(matc)m(hes,)i(and)d(the)h Ft(-o)h(dirnames)d
18511Fu(op-)150 1669 y(tion)j(w)m(as)f(supplied)f(to)i Ft(complete)d
18512Fu(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g(directory)g(name)h
18513(completion)150 1778 y(is)h(attempted.)275 1915 y(If)35
18514b(the)g Ft(-o)30 b(plusdirs)j Fu(option)j(w)m(as)g(supplied)e(to)i
18515Ft(complete)e Fu(when)g(the)i(compsp)s(ec)f(w)m(as)h(de\014ned,)150
185162025 y(directory)g(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h
6e51e0d0 18517(matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h(the)150
e59452c7 185182134 y(other)31 b(actions.)275 2271 y(By)g(default,)i(if)e(a)h(compsp)s
6e51e0d0 18519(ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e(returned)g(to)h
e59452c7 18520(the)g(completion)150 2381 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g
6e51e0d0 18521(p)s(ossible)f(completions.)39 b(The)20 b(default)h(Bash)g(completions)
e59452c7 18522h(are)g(not)f(attempted,)150 2491 y(and)30 b(the)g(Readline)h(default)f
e6983002 18523(of)g(\014lename)h(completion)g(is)f(disabled.)41 b(If)29
e59452c7 18524b(the)i Ft(-o)e(bashdefault)e Fu(option)150 2600 y(w)m(as)d(supplied)e
e6983002 18525(to)j Ft(complete)c Fu(when)i(the)g(compsp)s(ec)h(w)m(as)g(de\014ned,)g
e59452c7 18526(the)f(default)h(Bash)g(completions)h(are)150 2710 y(attempted)j(if)f
e6983002
CR
18527(the)h(compsp)s(ec)f(generates)h(no)f(matc)m(hes.)41
18528b(If)27 b(the)g Ft(-o)j(default)25 b Fu(option)j(w)m(as)f(supplied)f
e59452c7 18529(to)150 2819 y Ft(complete)f Fu(when)h(the)h(compsp)s(ec)f(w)m(as)i
e6983002 18530(de\014ned,)e(Readline's)i(default)f(completion)h(will)f(b)s(e)f(p)s
e59452c7 18531(erformed)150 2929 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)
e6983002 18532g(the)g(default)f(Bash)h(completions\))h(generate)g(no)e(matc)m(hes.)
e59452c7 18533275 3066 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g
e6983002 18534(name)f(completion)h(is)f(desired,)i(the)e(programmable)150
e59452c7 185353176 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d
d37a4722 18536(a)i(slash)g(to)g(completed)h(names)e(whic)m(h)h(are)g(sym-)150
e59452c7 185373285 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5
d37a4722 18538b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fr(mark-directories)
e59452c7 1853945 b Fu(Readline)c(v)-5 b(ariable,)150 3395 y(regardless)31
d37a4722 18540b(of)f(the)h(setting)g(of)g(the)f Fr(mark-symlink)m(ed-directories)36
e59452c7 18541b Fu(Readline)31 b(v)-5 b(ariable.)275 3532 y(There)25
d37a4722
CR
18542b(is)i(some)g(supp)s(ort)e(for)h(dynamically)h(mo)s(difying)f
18543(completions.)40 b(This)26 b(is)g(most)h(useful)f(when)150
e59452c7 185443641 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
d37a4722 18545g(sp)s(eci\014ed)f(with)g Ft(-D)p Fu(.)72 b(It's)42 b(p)s(ossible)f
e59452c7 18546(for)g(shell)150 3751 y(functions)28 b(executed)h(as)f(completion)i
d37a4722 18547(handlers)d(to)i(indicate)g(that)g(completion)g(should)e(b)s(e)h
e59452c7 18548(retried)g(b)m(y)150 3861 y(returning)j(an)i(exit)g(status)f(of)h(124.)
d37a4722 1854948 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c(c)m(hanges)j
e59452c7 18550(the)e(compsp)s(ec)150 3970 y(asso)s(ciated)43 b(with)e(the)g(command)g
602eae4d 18551(on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g(attempted)h(\(supplied)e
e59452c7 18552(as)i(the)150 4080 y(\014rst)29 b(argumen)m(t)h(when)e(the)i(function)f
602eae4d 18553(is)g(executed\),)j(programmable)d(completion)i(restarts)f(from)f(the)
e59452c7 18554150 4189 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)
602eae4d 18555e(compsp)s(ec)i(for)f(that)h(command.)39 b(This)27 b(allo)m(ws)h(a)g
e59452c7 18556(set)g(of)150 4299 y(completions)33 b(to)f(b)s(e)g(built)f(dynamically)
602eae4d 18557i(as)f(completion)h(is)f(attempted,)h(rather)f(than)f(b)s(eing)g
e59452c7 18558(loaded)150 4408 y(all)g(at)g(once.)275 4545 y(F)-8 b(or)38
602eae4d
CR
18559b(instance,)h(assuming)e(that)h(there)f(is)h(a)f(library)g(of)g(compsp)
18560s(ecs,)i(eac)m(h)g(k)m(ept)e(in)g(a)h(\014le)f(corre-)150
e59452c7 185614655 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
602eae4d 18562(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
e59452c7
CR
185634765 y(load)31 b(completions)g(dynamically:)390 4902
18564y Ft(_completion_loader\(\))390 5011 y({)581 5121 y(.)47
602eae4d 18565b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
e59452c7
CR
18566(return)f(124)390 5230 y(})390 5340 y(complete)g(-D)h(-F)g
18567(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)p
18568eop end
fffe80d4
CR
18569%%Page: 145 151
18570TeXDict begin 145 150 bop 150 -116 a Fu(Chapter)30 b(8:)41
18571b(Command)29 b(Line)i(Editing)2062 b(145)150 299 y Fs(8.7)68
e59452c7
CR
18572b(Programmable)47 b(Completion)f(Builtins)150 458 y Fu(Three)21
18573b(builtin)g(commands)f(are)i(a)m(v)-5 b(ailable)24 b(to)e(manipulate)f
18574(the)h(programmable)f(completion)h(facilities:)150 568
18575y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f(argumen)m(ts)h(to)g(a)g
18576(particular)g(command)f(are)h(to)g(b)s(e)f(completed,)j(and)d(t)m(w)m
18577(o)150 677 y(to)e(mo)s(dify)f(the)g(completion)i(as)e(it)h(is)g(happ)s
18578(ening.)150 893 y Ft(compgen)870 1046 y(compgen)46 b([)p
18579Fj(option)p Ft(])f([)p Fj(word)p Ft(])630 1199 y Fu(Generate)27
18580b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e Fr(w)m(ord)k
18581Fu(according)e(to)f(the)g Fr(option)p Fu(s,)h(whic)m(h)630
185821309 y(ma)m(y)32 b(b)s(e)f(an)m(y)h(option)g(accepted)g(b)m(y)g(the)f
18583Ft(complete)f Fu(builtin)h(with)g(the)g(exception)i(of)f
18584Ft(-p)630 1418 y Fu(and)39 b Ft(-r)p Fu(,)i(and)e(write)h(the)g(matc)m
18585(hes)g(to)g(the)g(standard)f(output.)68 b(When)39 b(using)g(the)h
18586Ft(-F)630 1528 y Fu(or)33 b Ft(-C)f Fu(options,)i(the)e(v)-5
18587b(arious)33 b(shell)g(v)-5 b(ariables)33 b(set)g(b)m(y)g(the)g
18588(programmable)g(completion)630 1638 y(facilities,)g(while)d(a)m(v)-5
18589b(ailable,)33 b(will)e(not)g(ha)m(v)m(e)g(useful)f(v)-5
18590b(alues.)630 1791 y(The)34 b(matc)m(hes)h(will)g(b)s(e)f(generated)h
18591(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h(programmable)f(com-)630
185921900 y(pletion)d(co)s(de)g(had)f(generated)i(them)e(directly)i(from)e
18593(a)h(completion)h(sp)s(eci\014cation)f(with)630 2010
18594y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j Fu(is)d(sp)s
18595(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
18596Fr(w)m(ord)j Fu(will)630 2120 y(b)s(e)d(displa)m(y)m(ed.)630
185972273 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in)
e6983002 18598m(v)-5 b(alid)25 b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m
e59452c7
CR
18599(ere)630 2382 y(generated.)150 2579 y Ft(complete)870
186002732 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
18601Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])e([-)870 2842
18602y(G)i Fj(globpat)p Ft(])870 2951 y([-W)g Fj(wordlist)p
e6983002 18603Ft(])e([-F)i Fj(function)p Ft(])e([-C)i Fj(command)p
e59452c7 18604Ft(])f([-X)h Fj(filterpat)p Ft(])870 3061 y([-P)g Fj(prefix)p
e6983002 18605Ft(])f([-S)h Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f
e59452c7
CR
18606Ft(...])870 3171 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f
18607Ft(...)o(])630 3324 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i
e6983002 18608(eac)m(h)g Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63
e59452c7 18609b(If)38 b(the)f Ft(-p)g Fu(option)630 3433 y(is)30 b(supplied,)e(or)i
e6983002 18610(if)g(no)f(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s
e59452c7 18611(eci\014cations)g(are)630 3543 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g
d37a4722 18612(that)h(allo)m(ws)g(them)e(to)i(b)s(e)e(reused)f(as)i(input.)38
e59452c7 18613b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 3653
d37a4722
CR
18614y(a)i(completion)h(sp)s(eci\014cation)f(for)g(eac)m(h)h
18615Fr(name)p Fu(,)f(or,)h(if)e(no)h Fr(name)5 b Fu(s)27
e59452c7 18616b(are)h(supplied,)g(all)g(com-)630 3762 y(pletion)i(sp)s
d37a4722 18617(eci\014cations.)42 b(The)29 b Ft(-D)g Fu(option)h(indicates)h(that)f
e59452c7 18618(other)g(supplied)e(options)j(and)630 3872 y(actions)c(should)e(apply)g
d37a4722 18619(to)i(the)f(\\default")h(command)e(completion;)k(that)e(is,)g
e59452c7 18620(completion)630 3981 y(attempted)g(on)f(a)h(command)f(for)g(whic)m(h)g
d37a4722 18621(no)g(completion)i(has)d(previously)h(b)s(een)g(de\014ned.)630
e59452c7
CR
186224091 y(The)e Ft(-E)g Fu(option)h(indicates)g(that)g(other)g(supplied)e
18623(options)h(and)g(actions)i(should)d(apply)h(to)630 4200
d37a4722 18624y(\\empt)m(y")33 b(command)e(completion;)i(that)f(is,)g(completion)h
e59452c7 18625(attempted)f(on)g(a)f(blank)g(line.)630 4310 y(The)24
d37a4722 18626b Ft(-I)g Fu(option)h(indicates)g(that)g(other)g(supplied)e(options)h
e59452c7 18627(and)g(actions)i(should)d(apply)h(to)630 4420 y(completion)29
d37a4722 18628b(on)g(the)f(initial)h(non-assignmen)m(t)g(w)m(ord)f(on)g(the)g(line,)i
e59452c7 18629(or)e(after)h(a)f(command)630 4529 y(delimiter)41 b(suc)m(h)g(as)f(`)p
d37a4722 18630Ft(;)p Fu(')h(or)g(`)p Ft(|)p Fu(',)i(whic)m(h)e(is)f(usually)h
e59452c7 18631(command)f(name)h(completion.)72 b(If)630 4639 y(m)m(ultiple)26
d37a4722
CR
18632b(options)g(are)g(supplied,)g(the)f Ft(-D)g Fu(option)h(tak)m(es)i
18633(precedence)e(o)m(v)m(er)g Ft(-E)p Fu(,)h(and)e(b)s(oth)630
e59452c7 186344748 y(tak)m(e)34 b(precedence)f(o)m(v)m(er)h Ft(-I)p
d37a4722
CR
18635Fu(.)47 b(If)32 b(an)m(y)h(of)g Ft(-D)p Fu(,)g Ft(-E)p
18636Fu(,)f(or)h Ft(-I)f Fu(are)h(supplied,)f(an)m(y)h(other)g
e59452c7 18637Fr(name)630 4858 y Fu(argumen)m(ts)k(are)g(ignored;)j(these)d
b52e30b8 18638(completions)h(only)e(apply)g(to)i(the)f(case)g(sp)s(eci\014ed)f(b)m(y)
e59452c7 18639630 4968 y(the)31 b(option.)630 5121 y(The)e(pro)s(cess)g(of)h
b52e30b8 18640(applying)g(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m(ord)i
e59452c7 18641(completion)630 5230 y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m
12beeabf 18642(v)m(e)j(\(see)f(Section)g(8.6)g([Programmable)g(Completion],)630
fffe80d4
CR
186435340 y(page)31 b(142\).)p eop end
18644%%Page: 146 152
18645TeXDict begin 146 151 bop 150 -116 a Fu(Chapter)30 b(8:)41
18646b(Command)29 b(Line)i(Editing)2062 b(146)630 299 y(Other)28
e59452c7
CR
18647b(options,)i(if)f(sp)s(eci\014ed,)g(ha)m(v)m(e)h(the)f(follo)m(wing)i
18648(meanings.)40 b(The)29 b(argumen)m(ts)g(to)h(the)630
18649408 y Ft(-G)p Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h
18650Fu(options)h(\(and,)h(if)f(necessary)-8 b(,)42 b(the)e
18651Ft(-P)f Fu(and)f Ft(-S)h Fu(options\))h(should)f(b)s(e)630
18652518 y(quoted)28 b(to)h(protect)g(them)f(from)f(expansion)h(b)s(efore)g
18653(the)g Ft(complete)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630
18654669 y Ft(-o)i Fj(comp-option)1110 778 y Fu(The)c Fr(comp-option)i
6e51e0d0 18655Fu(con)m(trols)g(sev)m(eral)h(asp)s(ects)e(of)g(the)g(compsp)s(ec's)g
e59452c7 18656(b)s(eha)m(v-)1110 888 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
6e51e0d0 18657(generation)h(of)e(completions.)41 b Fr(comp-option)27
e59452c7
CR
18658b Fu(ma)m(y)1110 998 y(b)s(e)j(one)g(of:)1110 1148 y
18659Ft(bashdefault)1590 1258 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
18660(default)f(Bash)h(completions)g(if)g(the)1590 1367 y(compsp)s(ec)i
18661(generates)i(no)e(matc)m(hes.)1110 1518 y Ft(default)144
e6983002 18662b Fu(Use)22 b(Readline's)g(default)g(\014lename)g(completion)g(if)g
e59452c7
CR
18663(the)g(comp-)1590 1628 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
186641778 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
18665(completion)g(if)f(the)g(compsp)s(ec)1590 1888 y(generates)32
18666b(no)e(matc)m(hes.)1110 2039 y Ft(filenames)1590 2148
18667y Fu(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j
18668(\014lenames,)1590 2258 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h
e6983002 18669(\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)1590
e59452c7
CR
186702367 y(adding)22 b(a)g(slash)g(to)h(directory)f(names,)i(quoting)f(sp)s
18671(ecial)f(c)m(har-)1590 2477 y(acters,)39 b(or)d(suppressing)f(trailing)
18672i(spaces\).)59 b(This)35 b(option)i(is)1590 2587 y(in)m(tended)30
8a0829e9 18673b(to)g(b)s(e)g(used)f(with)g(shell)i(functions)e(sp)s(eci\014ed)g(with)
e59452c7 186741590 2696 y Ft(-F)p Fu(.)1110 2847 y Ft(noquote)144 b
e6983002 18675Fu(T)-8 b(ell)28 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)m
e59452c7
CR
18676(ords)f(if)h(they)1590 2956 y(are)j(\014lenames)f(\(quoting)h
18677(\014lenames)g(is)f(the)h(default\).)1110 3107 y Ft(nosort)192
e6983002 18678b Fu(T)-8 b(ell)23 b(Readline)g(not)f(to)h(sort)g(the)f(list)h(of)f(p)s
e59452c7
CR
18679(ossible)g(completions)1590 3217 y(alphab)s(etically)-8
18680b(.)1110 3367 y Ft(nospace)144 b Fu(T)-8 b(ell)40 b(Readline)g(not)g
e6983002 18681(to)g(app)s(end)d(a)j(space)g(\(the)f(default\))h(to)1590
e59452c7
CR
186823477 y(w)m(ords)30 b(completed)h(at)g(the)g(end)f(of)g(the)h(line.)1110
186833628 y Ft(plusdirs)96 b Fu(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d
18684(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 3737 y(ated,)g
d37a4722 18685(directory)f(name)g(completion)i(is)d(attempted)i(and)f(an)m(y)1590
e59452c7
CR
186863847 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h
18687(other)g(actions.)630 3998 y Ft(-A)f Fj(action)66 b Fu(The)25
602eae4d 18688b Fr(action)h Fu(ma)m(y)g(b)s(e)e(one)h(of)h(the)f(follo)m(wing)i(to)e
e59452c7
CR
18689(generate)i(a)e(list)h(of)f(p)s(ossible)1110 4107 y(completions:)1110
186904258 y Ft(alias)240 b Fu(Alias)31 b(names.)41 b(Ma)m(y)31
a6ae8f35 18691b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i Ft(-a)p Fu(.)1110
e59452c7
CR
186924408 y Ft(arrayvar)96 b Fu(Arra)m(y)31 b(v)-5 b(ariable)31
18693b(names.)1110 4559 y Ft(binding)144 b Fu(Readline)30
a6ae8f35 18694b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h([Bindable)1590
fffe80d4 186954669 y(Readline)h(Commands],)f(page)h(132\).)1110 4819
a6ae8f35 18696y Ft(builtin)144 b Fu(Names)21 b(of)g(shell)f(builtin)h(commands.)37
e59452c7
CR
18697b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 4929
18698y(as)31 b Ft(-b)p Fu(.)1110 5080 y Ft(command)144 b Fu(Command)29
b52e30b8 18699b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i
e59452c7 18700Ft(-c)p Fu(.)1110 5230 y Ft(directory)1590 5340 y Fu(Directory)h
b52e30b8 18701(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g
e59452c7 18702Ft(-d)p Fu(.)p eop end
fffe80d4
CR
18703%%Page: 147 153
18704TeXDict begin 147 152 bop 150 -116 a Fu(Chapter)30 b(8:)41
18705b(Command)29 b(Line)i(Editing)2062 b(147)1110 299 y Ft(disabled)96
e59452c7
CR
18706b Fu(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110
18707460 y Ft(enabled)144 b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)
187081110 622 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v)
18709-5 b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
18710731 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 893 y Ft(file)288
12beeabf 18711b Fu(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
e59452c7
CR
18712(as)i Ft(-f)p Fu(.)1110 1054 y Ft(function)96 b Fu(Names)31
18713b(of)g(shell)f(functions.)1110 1216 y Ft(group)240 b
12beeabf 18714Fu(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
e59452c7
CR
18715(as)g Ft(-g)p Fu(.)1110 1377 y Ft(helptopic)1590 1487
18716y Fu(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
18717Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 1597 y(tion)31
18718b(4.2)g([Bash)g(Builtins],)g(page)g(54\).)1110 1758 y
12beeabf 18719Ft(hostname)96 b Fu(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
e59452c7 18720(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 1868 y(the)55 b
12beeabf 18721Ft(HOSTFILE)e Fu(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
e59452c7
CR
18722([Bash)1590 1977 y(V)-8 b(ariables],)32 b(page)f(77\).)1110
187232139 y Ft(job)336 b Fu(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f
12beeabf 18724(activ)m(e.)46 b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590
e59452c7 187252248 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 2410 y Ft(keyword)144
12beeabf 18726b Fu(Shell)30 b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32
e6983002 18727b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i Ft(-k)p Fu(.)1110
e59452c7
CR
187282571 y Ft(running)144 b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f
18729(con)m(trol)h(is)g(activ)m(e.)1110 2733 y Ft(service)144
e6983002 18730b Fu(Service)31 b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s
e59452c7 18731(eci\014ed)g(as)g Ft(-s)p Fu(.)1110 2894 y Ft(setopt)192
e6983002 18732b Fu(V)-8 b(alid)39 b(argumen)m(ts)g(for)f(the)h Ft(-o)e
e59452c7
CR
18733Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 3004
18734y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(66\).)
187351110 3165 y Ft(shopt)240 b Fu(Shell)40 b(option)g(names)g(as)g
e6983002 18736(accepted)i(b)m(y)e(the)g Ft(shopt)e Fu(builtin)1590
e59452c7
CR
187373275 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(54\).)
187381110 3437 y Ft(signal)192 b Fu(Signal)31 b(names.)1110
187393598 y Ft(stopped)144 b Fu(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g
18740(job)g(con)m(trol)i(is)f(activ)m(e.)1110 3760 y Ft(user)288
e6983002 18741b Fu(User)30 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
e59452c7 18742(as)i Ft(-u)p Fu(.)1110 3921 y Ft(variable)96 b Fu(Names)36
e6983002 18743b(of)g(all)g(shell)g(v)-5 b(ariables.)56 b(Ma)m(y)37
e59452c7
CR
18744b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590 4031 y Ft(-v)p
18745Fu(.)630 4192 y Ft(-C)30 b Fj(command)1110 4302 y Fr(command)35
e6983002 18746b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m(vironmen)m(t,)i(and)f
e59452c7
CR
18747(its)g(output)g(is)1110 4411 y(used)e(as)g(the)h(p)s(ossible)f
18748(completions.)630 4573 y Ft(-F)g Fj(function)1110 4682
e6983002 18749y Fu(The)39 b(shell)g(function)g Fr(function)g Fu(is)g(executed)h(in)f
e59452c7 18750(the)g(curren)m(t)g(shell)g(en)m(vi-)1110 4792 y(ronmen)m(t.)72
b52e30b8 18751b(When)41 b(it)g(is)g(executed,)k($1)c(is)g(the)g(name)g(of)g(the)g
e59452c7 18752(command)1110 4902 y(whose)34 b(argumen)m(ts)h(are)g(b)s(eing)f
b52e30b8 18753(completed,)j($2)e(is)f(the)h(w)m(ord)f(b)s(eing)g(com-)1110
e59452c7
CR
187545011 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m(ord)g(preceding)f(the)h
18755(w)m(ord)f(b)s(eing)h(completed,)1110 5121 y(as)g(describ)s(ed)f(ab)s
b52e30b8 18756(o)m(v)m(e)i(\(see)g(Section)f(8.6)h([Programmable)g(Completion],)1110
fffe80d4 187575230 y(page)30 b(142\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
e59452c7 18758(ossible)g(completions)h(are)g(retriev)m(ed)1110 5340
b52e30b8 18759y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Ft(COMPREPLY)e
e59452c7 18760Fu(arra)m(y)j(v)-5 b(ariable.)p eop end
fffe80d4
CR
18761%%Page: 148 154
18762TeXDict begin 148 153 bop 150 -116 a Fu(Chapter)30 b(8:)41
18763b(Command)29 b(Line)i(Editing)2062 b(148)630 299 y Ft(-G)30
e59452c7
CR
18764b Fj(globpat)1110 408 y Fu(The)39 b(\014lename)h(expansion)g(pattern)g
18765Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)1110 518
18766y(the)31 b(p)s(ossible)e(completions.)630 708 y Ft(-P)h
b52e30b8
CR
18767Fj(prefix)66 b Fr(pre\014x)39 b Fu(is)34 b(added)f(at)i(the)f(b)s
18768(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
e59452c7
CR
18769817 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
187701007 y Ft(-S)g Fj(suffix)66 b Fr(su\016x)26 b Fu(is)20
a8fd3f3e 18771b(app)s(ended)f(to)i(eac)m(h)h(p)s(ossible)e(completion)i(after)f(all)g
e59452c7
CR
18772(other)g(options)1110 1116 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
187731306 y Ft(-W)h Fj(wordlist)1110 1416 y Fu(The)24 b Fr(w)m(ordlist)k
6e51e0d0 18774Fu(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i
e59452c7 18775Ft(IFS)e Fu(sp)s(ecial)h(v)-5 b(ariable)1110 1525 y(as)36
5cdaaf76 18776b(delimiters,)i(and)e(eac)m(h)h(resultan)m(t)g(w)m(ord)e(is)h
e59452c7 18777(expanded.)57 b(The)35 b(p)s(ossible)1110 1635 y(completions)c(are)e
5cdaaf76 18778(the)h(mem)m(b)s(ers)f(of)g(the)h(resultan)m(t)g(list)g(whic)m(h)f
e59452c7
CR
18779(matc)m(h)i(the)1110 1744 y(w)m(ord)f(b)s(eing)g(completed.)630
187801934 y Ft(-X)g Fj(filterpat)1110 2043 y Fr(\014lterpat)d
6e51e0d0 18781Fu(is)e(a)g(pattern)g(as)f(used)g(for)h(\014lename)g(expansion.)38
e59452c7 18782b(It)25 b(is)g(applied)f(to)1110 2153 y(the)30 b(list)f(of)h(p)s
6e51e0d0 18783(ossible)f(completions)h(generated)h(b)m(y)e(the)g(preceding)h(options)
e59452c7
CR
187841110 2263 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m
18785(hing)g Fr(\014lterpat)h Fu(is)e(remo)m(v)m(ed)1110 2372
6e51e0d0
CR
18786y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p Ft(!)p
18787Fu(')e(in)g Fr(\014lterpat)j Fu(negates)f(the)f(pattern;)g(in)f(this)
e59452c7
CR
187881110 2482 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g
18789Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)630 2671 y(The)35
6e51e0d0
CR
18790b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in)m(v)-5
18791b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h(other)630
e59452c7 187922781 y(than)h Ft(-p)g Fu(or)g Ft(-r)f Fu(is)h(supplied)f(without)i(a)f
6e51e0d0 18793Fr(name)44 b Fu(argumen)m(t,)c(an)e(attempt)i(is)e(made)g(to)630
e59452c7 187942891 y(remo)m(v)m(e)32 b(a)e(completion)i(sp)s(eci\014cation)f(for)f(a)
e6983002 18795h Fr(name)k Fu(for)30 b(whic)m(h)g(no)g(sp)s(eci\014cation)h(exists,)
e59452c7
CR
18796630 3000 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s
18797(eci\014cation.)150 3190 y Ft(compopt)870 3339 y(compopt)46
d37a4722 18798b([-o)h Fj(option)p Ft(])f([-DEI])g([+o)h Fj(option)p
e59452c7 18799Ft(])e([)p Fj(name)p Ft(])630 3489 y Fu(Mo)s(dify)33
6e51e0d0
CR
18800b(completion)h(options)g(for)f(eac)m(h)h Fr(name)39 b
18801Fu(according)34 b(to)g(the)f Fr(option)p Fu(s,)i(or)e(for)g(the)630
e59452c7 188023598 y(curren)m(tly-executing)46 b(completion)f(if)f(no)f
6e51e0d0 18803Fr(name)5 b Fu(s)44 b(are)h(supplied.)80 b(If)43 b(no)h
e59452c7 18804Fr(option)p Fu(s)h(are)630 3708 y(giv)m(en,)30 b(displa)m(y)e(the)g
6e51e0d0 18805(completion)h(options)g(for)e(eac)m(h)i Fr(name)34 b
e59452c7 18806Fu(or)27 b(the)i(curren)m(t)e(completion.)630 3818 y(The)f(p)s(ossible)
d37a4722 18807g(v)-5 b(alues)27 b(of)f Fr(option)h Fu(are)g(those)g(v)-5
602eae4d 18808b(alid)26 b(for)g(the)h Ft(complete)d Fu(builtin)i(describ)s(ed)630
e59452c7 188093927 y(ab)s(o)m(v)m(e.)41 b(The)27 b Ft(-D)f Fu(option)i(indicates)g
a6ae8f35 18810(that)g(other)f(supplied)f(options)i(should)e(apply)h(to)h(the)630
e59452c7
CR
188114037 y(\\default")33 b(command)f(completion;)i(that)f(is,)g(completion)
18812g(attempted)g(on)f(a)g(command)630 4146 y(for)g(whic)m(h)g(no)g
a6ae8f35 18813(completion)i(has)e(previously)g(b)s(een)g(de\014ned.)45
e59452c7 18814b(The)32 b Ft(-E)f Fu(option)i(indicates)630 4256 y(that)23
a6ae8f35 18815b(other)f(supplied)e(options)j(should)e(apply)g(to)i(\\empt)m(y")g
e59452c7 18816(command)f(completion;)k(that)630 4366 y(is,)36 b(completion)g
a6ae8f35 18817(attempted)g(on)e(a)h(blank)g(line.)54 b(The)34 b Ft(-I)g
e59452c7 18818Fu(option)h(indicates)g(that)h(other)630 4475 y(supplied)23
e230f997 18819b(options)i(should)f(apply)g(to)i(completion)g(on)e(the)h(initial)h
e59452c7 18820(non-assignmen)m(t)f(w)m(ord)630 4585 y(on)37 b(the)f(line,)j(or)e
a6ae8f35
CR
18821(after)g(a)g(command)f(delimiter)i(suc)m(h)e(as)h(`)p
18822Ft(;)p Fu(')g(or)f(`)p Ft(|)p Fu(',)j(whic)m(h)e(is)f(usually)630
e59452c7 188234694 y(command)30 b(name)h(completion.)630 4844 y(If)k(m)m(ultiple)i
b52e30b8 18824(options)f(are)g(supplied,)g(the)g Ft(-D)g Fu(option)g(tak)m(es)h
e59452c7 18825(precedence)g(o)m(v)m(er)g Ft(-E)p Fu(,)g(and)630 4954
b52e30b8 18826y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m(v)m(er)i Ft(-I)630
e59452c7 188275103 y Fu(The)23 b(return)g(v)-5 b(alue)25 b(is)f(true)g(unless)f(an)h
b52e30b8 18828(in)m(v)-5 b(alid)24 b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f
e59452c7 18829(made)630 5213 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h
b52e30b8 18830Fr(name)k Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f
e59452c7
CR
18831(exists,)630 5322 y(or)e(an)h(output)f(error)g(o)s(ccurs.)p
18832eop end
fffe80d4
CR
18833%%Page: 149 155
18834TeXDict begin 149 154 bop 150 -116 a Fu(Chapter)30 b(8:)41
18835b(Command)29 b(Line)i(Editing)2062 b(149)150 299 y Fs(8.8)68
e59452c7
CR
18836b(A)44 b(Programmable)j(Completion)f(Example)150 458
18837y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h(additional)g
18838(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i(default)150
18839568 y(actions)29 b Ft(complete)d Fu(and)i Ft(compgen)e
18840Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g(and)g(bind)e(it)
18841j(to)g(a)g(particular)150 677 y(command)h(using)g Ft(complete)e(-F)p
18842Fu(.)275 829 y(The)j(follo)m(wing)j(function)e(pro)m(vides)g
18843(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46 b(It)32
18844b(is)h(a)f(reasonably)h(go)s(o)s(d)150 939 y(example)41
b52e30b8 18845b(of)g(what)f(shell)h(functions)f(m)m(ust)g(do)h(when)e(used)h(for)g
e59452c7 18846(completion.)73 b(This)39 b(function)h(uses)150 1049
b52e30b8
CR
18847y(the)32 b(w)m(ord)f(passed)g(as)h Ft($2)f Fu(to)h(determine)g(the)f
18848(directory)h(name)g(to)g(complete.)46 b(Y)-8 b(ou)32
e59452c7 18849b(can)g(also)g(use)g(the)150 1158 y Ft(COMP_WORDS)c Fu(arra)m(y)i(v)-5
68d220cb 18850b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g(indexed)g(b)m(y)g
e59452c7 18851(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275 1310 y(The)42
8a0829e9
CR
18852b(function)h(relies)h(on)e(the)i Ft(complete)c Fu(and)j
18853Ft(compgen)e Fu(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h(w)m(ork,)
e59452c7 18854150 1420 y(adding)25 b(only)h(the)g(things)g(that)g(the)g(Bash)g
8a0829e9 18855Ft(cd)f Fu(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e(directory)g
e59452c7
CR
18856(names:)38 b(tilde)150 1529 y(expansion)22 b(\(see)h(Section)g(3.5.2)g
18857([Tilde)g(Expansion],)g(page)g(25\),)i(searc)m(hing)e(directories)g(in)
18858e Fr($CDP)-8 b(A)g(TH)p Fu(,)150 1639 y(whic)m(h)21 b(is)h(describ)s
18859(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f
18860(Builtins],)j(page)e(47\),)j(and)c(basic)h(supp)s(ort)150
188611748 y(for)31 b(the)h Ft(cdable_vars)d Fu(shell)i(option)h(\(see)h
18862(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)f(70\).)46
18863b Ft(_comp_)150 1858 y(cd)30 b Fu(mo)s(di\014es)g(the)h(v)-5
8a0829e9
CR
18864b(alue)31 b(of)g Fr(IFS)36 b Fu(so)31 b(that)g(it)g(con)m(tains)h(only)
18865f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
e59452c7 188661968 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
6e51e0d0 18867Fu(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
e59452c7 18868(p)s(er)150 2077 y(line.)275 2229 y(P)m(ossible)24 b(completions)h(go)g
6e51e0d0
CR
18869(in)m(to)g(the)f Fr(COMPREPL)-8 b(Y)36 b Fu(arra)m(y)24
18870b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c(arra)m(y)150
e59452c7 188712339 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
6e51e0d0 18872(retriev)m(es)h(the)g(completions)g(from)f(there)g(when)150
e59452c7
CR
188732448 y(the)h(function)f(returns.)390 2600 y Ft(#)47 b(A)h(completion)d
18874(function)g(for)i(the)g(cd)g(builtin)390 2710 y(#)g(based)g(on)g(the)g
e6983002 18875(cd)g(completion)e(function)h(from)g(the)h(bash_completion)d(package)
e59452c7
CR
18876390 2819 y(_comp_cd\(\))390 2929 y({)581 3039 y(local)i(IFS=$')g
18877(\\t\\n')190 b(#)47 b(normalize)f(IFS)581 3148 y(local)g(cur)h
18878(_skipdot)f(_cdpath)581 3258 y(local)g(i)i(j)f(k)581
188793477 y(#)g(Tilde)g(expansion,)e(which)h(also)h(expands)f(tilde)g(to)h
18880(full)g(pathname)581 3587 y(case)g("$2")f(in)581 3696
18881y(\\~*\))190 b(eval)46 b(cur="$2")g(;;)581 3806 y(*\))286
18882b(cur=$2)46 b(;;)581 3915 y(esac)581 4134 y(#)h(no)h(cdpath)e(or)h
e6983002 18883(absolute)e(pathname)h(--)h(straight)f(directory)f(completion)581
e59452c7
CR
188844244 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h
18885(@\(./*|../*|/*\))d(]];)j(then)772 4354 y(#)g(compgen)f(prints)g(paths)
e6983002 18886h(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772
e59452c7
CR
188874463 y(IFS=$'\\n')772 4573 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g
18888("$cur"\))f(\))772 4682 y(IFS=$')g(\\t\\n')581 4792 y(#)h
e6983002 18889(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j(not)e(in)i
e59452c7
CR
18890(CDPATH)581 4902 y(else)772 5011 y(IFS=$'\\n')772 5121
18891y(_skipdot=false)772 5230 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d
18892(null)i(directory)e(names)i(to)g(.)772 5340 y(_cdpath=${CDPATH/#:/.:})p
18893eop end
fffe80d4
CR
18894%%Page: 150 156
18895TeXDict begin 150 155 bop 150 -116 a Fu(Chapter)30 b(8:)41
18896b(Command)29 b(Line)i(Editing)2062 b(150)772 299 y Ft
e59452c7
CR
18897(_cdpath=${_cdpath//::/:.)o(:})772 408 y(_cdpath=${_cdpath/\045:/:.})
18898772 518 y(for)47 b(i)g(in)g(${_cdpath//:/$'\\n'};)c(do)963
18899628 y(if)k([[)g($i)g(-ef)g(.)h(]];)f(then)f(_skipdot=true;)e(fi)963
18900737 y(k="${#COMPREPLY[@]}")963 847 y(for)j(j)g(in)g($\()g(compgen)f(-d)
18901h(--)h("$i/$cur")d(\);)i(do)1154 956 y(COMPREPLY[k++]=${j#$i/})375
18902b(#)48 b(cut)f(off)f(directory)963 1066 y(done)772 1176
18903y(done)772 1285 y($_skipdot)f(||)i(COMPREPLY+=\()e($\(compgen)g(-d)i
18904(--)g("$cur"\))f(\))772 1395 y(IFS=$')g(\\t\\n')581 1504
18905y(fi)581 1724 y(#)h(variable)f(names)g(if)h(appropriate)e(shell)i
18906(option)f(set)h(and)f(no)i(completions)581 1833 y(if)f(shopt)f(-q)i
18907(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c(-eq)k(0)g(]];)g(then)772
189081943 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g("$cur"\))f(\))581
189092052 y(fi)581 2271 y(return)g(0)390 2381 y(})275 2516
18910y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h(function)e(using)f(the)
18911i Ft(-F)f Fu(option)h(to)g Ft(complete)p Fu(:)390 2650
18912y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f(and)i(append)f
18913(slashes)g(to)h(directories;)390 2760 y(#)g(use)g(the)g(bash)g(default)
18914f(completion)f(for)i(other)f(arguments)390 2869 y(complete)g(-o)h
18915(filenames)e(-o)i(nospace)f(-o)h(bashdefault)e(-F)i(_comp_cd)f(cd)150
189163004 y Fu(Since)33 b(w)m(e'd)g(lik)m(e)i(Bash)e(and)f(Readline)i(to)g
18917(tak)m(e)g(care)g(of)f(some)h(of)f(the)g(other)h(details)g(for)e(us,)i
18918(w)m(e)f(use)150 3113 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g
18919(Bash)f(and)f(Readline)i(what)f(to)g(do.)76 b(The)41
18920b Ft(-o)30 b(filenames)39 b Fu(option)150 3223 y(tells)j(Readline)g
18921(that)g(the)f(p)s(ossible)g(completions)h(should)f(b)s(e)f(treated)i
18922(as)g(\014lenames,)i(and)d(quoted)150 3333 y(appropriately)-8
18923b(.)53 b(That)34 b(option)h(will)g(also)g(cause)g(Readline)g(to)g(app)s
18924(end)e(a)h(slash)g(to)h(\014lenames)g(it)g(can)150 3442
18925y(determine)i(are)g(directories)h(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i
18926(migh)m(t)f(w)m(an)m(t)h(to)g(extend)f Ft(_comp_cd)e
18927Fu(to)i(app)s(end)f(a)150 3552 y(slash)22 b(if)g(w)m(e're)h(using)f
18928(directories)h(found)e(via)i Fr(CDP)-8 b(A)g(TH)10 b
18929Fu(:)37 b(Readline)23 b(can't)g(tell)g(those)g(completions)h(are)150
189303661 y(directories\).)45 b(The)31 b Ft(-o)f(nospace)f
18931Fu(option)j(tells)g(Readline)g(to)h(not)e(app)s(end)f(a)i(space)g(c)m
18932(haracter)h(to)f(the)150 3771 y(directory)c(name,)h(in)f(case)h(w)m(e)f
18933(w)m(an)m(t)h(to)f(app)s(end)f(to)h(it.)41 b(The)27 b
18934Ft(-o)j(bashdefault)25 b Fu(option)j(brings)f(in)h(the)150
189353880 y(rest)h(of)f(the)h Ft(")p Fu(Bash)f(default)p Ft(")h
6e51e0d0 18936Fu(completions)g({)g(p)s(ossible)f(completion)i(that)f(Bash)f(adds)g
e59452c7 18937(to)h(the)g(default)150 3990 y(Readline)f(set.)40 b(These)28
9128f932 18938b(include)f(things)g(lik)m(e)i(command)e(name)h(completion,)h(v)-5
e59452c7 18939b(ariable)28 b(completion)h(for)150 4100 y(w)m(ords)e(b)s(eginning)h
9128f932
CR
18940(with)f(`)p Ft($)p Fu(')h(or)g(`)p Ft(${)p Fu(',)h(completions)g(con)m
18941(taining)g(pathname)f(expansion)g(patterns)g(\(see)150
e59452c7
CR
189424209 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i(35\),)f(and)f
18943(so)h(on.)275 4344 y(Once)39 b(installed)i(using)e Ft(complete)p
9128f932 18944Fu(,)h Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m
e59452c7
CR
18945(e)g(attempt)h(w)m(ord)150 4453 y(completion)32 b(for)e(a)h
18946Ft(cd)e Fu(command.)275 4588 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
a6ae8f35 18947(extensiv)m(e)h(collection)i(of)c(completions)i(for)f(most)g(of)g(the)g
e59452c7 18948(common)150 4697 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
a6ae8f35 18949(a)m(v)-5 b(ailable)36 b(as)e(part)f(of)h(the)f(bash)p
e59452c7
CR
189502943 4697 28 4 v 39 w(completion)i(pro)5 b(ject.)150
189514807 y(This)33 b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h
a6ae8f35 18952(GNU/Lin)m(ux)f(distributions.)51 b(Originally)35 b(written)f(b)m(y)g
e59452c7 18953(Ian)150 4917 y(Macdonald,)48 b(the)c(pro)5 b(ject)44
9128f932
CR
18954b(no)m(w)g(liv)m(es)h(at)f Ft(https:)11 b(/)g(/)g(github)g(.)g(com)g(/)
18955g(sc)o(op)g(/)f(bash)o(-co)o(mple)o(tion)g(/)h Fu(.)150
e59452c7
CR
189565026 y(There)30 b(are)h(p)s(orts)e(for)h(other)h(systems)f(suc)m(h)g
18957(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275 5161 y(An)54
18958b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 5161 V
9128f932 1895940 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f(with)h(bash)
e59452c7 18960f(in)h(the)150 5270 y Ft(examples/complete)26 b Fu(sub)s(directory)-8
a6ae8f35 18961b(.)p eop end
fffe80d4
CR
18962%%Page: 151 157
18963TeXDict begin 151 156 bop 3614 -116 a Fu(151)150 299
037a8b7f 18964y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
a2851804 18965554 y Fu(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
6e51e0d0 18966f Fm(gnu)h Fu(History)g(Library)e(in)m(teractiv)m(ely)-8
a2851804 18967b(,)50 b(from)42 b(a)h(user's)150 664 y(standp)s(oin)m(t.)76
37c41ab1 18968b(It)42 b(should)f(b)s(e)h(considered)g(a)g(user's)g(guide.)76
6e51e0d0 18969b(F)-8 b(or)43 b(information)f(on)g(using)g(the)g Fm(gnu)150
a2851804
CR
18970774 y Fu(History)31 b(Library)f(in)g(other)g(programs,)g(see)h(the)g
18971Fm(gnu)f Fu(Readline)h(Library)f(Man)m(ual.)150 1025
18972y Fs(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)150
189731184 y Fu(When)44 b(the)g Ft(-o)30 b(history)42 b Fu(option)i(to)h(the)
6e51e0d0 18974f Ft(set)f Fu(builtin)h(is)g(enabled)g(\(see)g(Section)h(4.3.1)h([The)e
e59452c7 18975(Set)150 1294 y(Builtin],)32 b(page)g(66\),)h(the)e(shell)h(pro)m
6e51e0d0 18976(vides)f(access)h(to)g(the)f Fr(command)g(history)p Fu(,)h(the)f(list)h
a2851804 18977(of)f(commands)150 1404 y(previously)h(t)m(yp)s(ed.)47
6e51e0d0
CR
18978b(The)33 b(v)-5 b(alue)33 b(of)f(the)h Ft(HISTSIZE)e
18979Fu(shell)h(v)-5 b(ariable)34 b(is)f(used)e(as)i(the)g(n)m(um)m(b)s(er)e
a2851804 18980(of)i(com-)150 1513 y(mands)i(to)i(sa)m(v)m(e)h(in)e(a)g(history)h
6e51e0d0 18981(list.)58 b(The)36 b(text)h(of)g(the)f(last)h Ft($HISTSIZE)d
a2851804 18982Fu(commands)i(\(default)g(500\))150 1623 y(is)h(sa)m(v)m(ed.)61
6e51e0d0
CR
18983b(The)36 b(shell)h(stores)h(eac)m(h)g(command)e(in)h(the)g(history)g
18984(list)g(prior)f(to)i(parameter)f(and)f(v)-5 b(ari-)150
a2851804 189851732 y(able)33 b(expansion)g(but)f(after)h(history)f(expansion)h(is)g
6e51e0d0 18986(p)s(erformed,)e(sub)5 b(ject)33 b(to)g(the)g(v)-5 b(alues)33
a2851804
CR
18987b(of)g(the)g(shell)150 1842 y(v)-5 b(ariables)31 b Ft(HISTIGNORE)d
18988Fu(and)h Ft(HISTCONTROL)p Fu(.)275 1984 y(When)g(the)g(shell)h(starts)g
37c41ab1 18989(up,)f(the)h(history)f(is)h(initialized)h(from)e(the)h(\014le)f(named)g
a2851804 18990(b)m(y)h(the)f Ft(HISTFILE)150 2093 y Fu(v)-5 b(ariable)26
6e51e0d0
CR
18991b(\(default)g Ft(~/.bash_history)p Fu(\).)35 b(The)24
18992b(\014le)i(named)e(b)m(y)h(the)h(v)-5 b(alue)25 b(of)h
a2851804 18993Ft(HISTFILE)c Fu(is)k(truncated,)150 2203 y(if)42 b(necessary)-8
37c41ab1
CR
18994b(,)45 b(to)e(con)m(tain)g(no)f(more)g(than)f(the)h(n)m(um)m(b)s(er)f
18995(of)h(lines)g(sp)s(eci\014ed)f(b)m(y)h(the)g(v)-5 b(alue)42
a2851804 18996b(of)g(the)150 2312 y Ft(HISTFILESIZE)28 b Fu(v)-5 b(ariable.)46
9f178efb 18997b(When)31 b(a)h(shell)g(with)g(history)f(enabled)h(exits,)h(the)f(last)
a2851804 18998h Ft($HISTSIZE)c Fu(lines)150 2422 y(are)35 b(copied)g(from)g(the)g
9f178efb 18999(history)f(list)i(to)f(the)g(\014le)g(named)f(b)m(y)h
6e51e0d0 19000Ft($HISTFILE)p Fu(.)51 b(If)35 b(the)g Ft(histappend)d
a2851804 19001Fu(shell)150 2532 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h
e59452c7 19002([Bash)f(Builtins],)h(page)g(54\),)h(the)e(lines)g(are)g(app)s(ended)e
a2851804 19003(to)i(the)g(history)150 2641 y(\014le,)36 b(otherwise)f(the)g(history)f
6e51e0d0
CR
19004(\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Ft(HISTFILE)e
19005Fu(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150
a2851804 190062751 y(un)m(writable,)f(the)f(history)g(is)g(not)h(sa)m(v)m(ed.)49
9f178efb 19007b(After)34 b(sa)m(ving)g(the)f(history)-8 b(,)34 b(the)g(history)f
a2851804 19008(\014le)g(is)g(truncated)150 2860 y(to)g(con)m(tain)h(no)f(more)g(than)
6e51e0d0 19009f Ft($HISTFILESIZE)d Fu(lines.)48 b(If)33 b Ft(HISTFILESIZE)c
a2851804 19010Fu(is)k(unset,)g(or)f(set)i(to)f(n)m(ull,)h(a)150 2970
9f178efb
CR
19011y(non-n)m(umeric)c(v)-5 b(alue,)31 b(or)f(a)h(n)m(umeric)f(v)-5
19012b(alue)31 b(less)g(than)f(zero,)h(the)g(history)f(\014le)h(is)f(not)h
a2851804 19013(truncated.)275 3112 y(If)g(the)h Ft(HISTTIMEFORMAT)d
6e51e0d0 19014Fu(is)j(set,)h(the)f(time)h(stamp)f(information)g(asso)s(ciated)i(with)
a2851804 19015e(eac)m(h)h(history)150 3221 y(en)m(try)d(is)h(written)f(to)h(the)f
d3ad40de 19016(history)h(\014le,)f(mark)m(ed)h(with)f(the)g(history)g(commen)m(t)h(c)
a2851804 19017m(haracter.)43 b(When)30 b(the)150 3331 y(history)22
d3ad40de
CR
19018b(\014le)h(is)g(read,)h(lines)f(b)s(eginning)e(with)i(the)f(history)h
19019(commen)m(t)g(c)m(haracter)h(follo)m(w)m(ed)h(immediately)150
a2851804 190203440 y(b)m(y)30 b(a)h(digit)g(are)g(in)m(terpreted)g(as)f(timestamps)h
037a8b7f 19021(for)f(the)h(follo)m(wing)h(history)e(en)m(try)-8 b(.)275
a2851804 190223582 y(The)19 b(builtin)h(command)g Ft(fc)g Fu(ma)m(y)h(b)s(e)f(used)f
037a8b7f 19023(to)i(list)g(or)g(edit)g(and)e(re-execute)j(a)f(p)s(ortion)f(of)g(the)h
a2851804 19024(history)150 3692 y(list.)41 b(The)27 b Ft(history)f
037a8b7f 19025Fu(builtin)i(ma)m(y)h(b)s(e)e(used)g(to)i(displa)m(y)g(or)f(mo)s(dify)f
a2851804 19026(the)h(history)g(list)h(and)f(manipulate)150 3801 y(the)j(history)g
037a8b7f
CR
19027(\014le.)42 b(When)31 b(using)f(command-line)h(editing,)h(searc)m(h)f
19028(commands)g(are)g(a)m(v)-5 b(ailable)33 b(in)e(eac)m(h)150
a2851804 190293911 y(editing)45 b(mo)s(de)g(that)g(pro)m(vide)g(access)h(to)f(the)g
037a8b7f 19030(history)f(list)i(\(see)f(Section)h(8.4.2)g([Commands)e(F)-8
fffe80d4 19031b(or)150 4020 y(History],)31 b(page)h(133\).)275 4162
037a8b7f
CR
19032y(The)47 b(shell)i(allo)m(ws)h(con)m(trol)f(o)m(v)m(er)h(whic)m(h)e
19033(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)h(history)f(list.)95
a2851804 19034b(The)150 4272 y Ft(HISTCONTROL)25 b Fu(and)j Ft(HISTIGNORE)e
037a8b7f 19035Fu(v)-5 b(ariables)29 b(ma)m(y)h(b)s(e)d(set)j(to)f(cause)g(the)g
a2851804 19036(shell)f(to)i(sa)m(v)m(e)g(only)f(a)g(subset)150 4381
037a8b7f
CR
19037y(of)e(the)g(commands)f(en)m(tered.)40 b(The)26 b Ft(cmdhist)f
19038Fu(shell)i(option,)h(if)f(enabled,)g(causes)h(the)e(shell)h(to)h
a2851804 19039(attempt)150 4491 y(to)23 b(sa)m(v)m(e)h(eac)m(h)f(line)g(of)f(a)h(m)m
037a8b7f 19040(ulti-line)g(command)f(in)g(the)h(same)f(history)g(en)m(try)-8
a2851804 19041b(,)25 b(adding)d(semicolons)h(where)150 4600 y(necessary)37
037a8b7f
CR
19042b(to)f(preserv)m(e)h(syn)m(tactic)h(correctness.)58 b(The)36
19043b Ft(lithist)e Fu(shell)i(option)h(causes)g(the)f(shell)g(to)150
a2851804
CR
190444710 y(sa)m(v)m(e)41 b(the)e(command)g(with)f(em)m(b)s(edded)g
19045(newlines)h(instead)g(of)g(semicolons.)68 b(The)39 b
19046Ft(shopt)e Fu(builtin)i(is)150 4820 y(used)30 b(to)i(set)g(these)g
19047(options.)43 b(See)32 b(Section)g(4.3.2)h([The)e(Shopt)f(Builtin],)j
e59452c7 19048(page)f(70,)g(for)f(a)h(description)150 4929 y(of)f Ft(shopt)p
a2851804
CR
19049Fu(.)150 5181 y Fs(9.2)68 b(Bash)45 b(History)h(Builtins)150
190505340 y Fu(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g
19051(whic)m(h)g(manipulate)g(the)h(history)f(list)h(and)f(history)g
19052(\014le.)p eop end
fffe80d4
CR
19053%%Page: 152 158
19054TeXDict begin 152 157 bop 150 -116 a Fu(Chapter)30 b(9:)41
19055b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(152)150
d37a4722
CR
19056299 y Ft(fc)870 430 y(fc)47 b([-e)g Fj(ename)p Ft(])f([-lnr])g([)p
19057Fj(first)p Ft(])g([)p Fj(last)p Ft(])870 540 y(fc)h(-s)g([)p
a2851804 19058Fj(pat)p Ft(=)p Fj(rep)p Ft(])f([)p Fj(command)p Ft(])630
d37a4722
CR
19059671 y Fu(The)32 b(\014rst)g(form)g(selects)j(a)e(range)g(of)f(commands)
19060h(from)f Fr(\014rst)i Fu(to)f Fr(last)j Fu(from)c(the)h(history)630
19061781 y(list)41 b(and)f(displa)m(ys)g(or)g(edits)h(and)e(re-executes)j
19062(them.)71 b(Both)40 b Fr(\014rst)i Fu(and)e Fr(last)j
19063Fu(ma)m(y)e(b)s(e)630 891 y(sp)s(eci\014ed)33 b(as)h(a)g(string)g(\(to)
19064h(lo)s(cate)h(the)e(most)g(recen)m(t)h(command)f(b)s(eginning)f(with)g
19065(that)630 1000 y(string\))28 b(or)g(as)h(a)f(n)m(um)m(b)s(er)f(\(an)h
19066(index)g(in)m(to)h(the)f(history)g(list,)h(where)f(a)g(negativ)m(e)i(n)
19067m(um)m(b)s(er)630 1110 y(is)g(used)g(as)h(an)f(o\013set)h(from)f(the)h
19068(curren)m(t)f(command)g(n)m(um)m(b)s(er\).)630 1241 y(When)j(listing,)h
19069(a)f Fr(\014rst)h Fu(or)f Fr(last)j Fu(of)d(0)g(is)g(equiv)-5
19070b(alen)m(t)34 b(to)g(-1)f(and)g(-0)g(is)g(equiv)-5 b(alen)m(t)34
19071b(to)g(the)630 1351 y(curren)m(t)k(command)h(\(usually)g(the)g
19072Ft(fc)f Fu(command\);)43 b(otherwise)c(0)g(is)g(equiv)-5
19073b(alen)m(t)40 b(to)f(-1)630 1461 y(and)30 b(-0)h(is)f(in)m(v)-5
19074b(alid.)630 1592 y(If)33 b Fr(last)j Fu(is)e(not)f(sp)s(eci\014ed,)h
19075(it)g(is)f(set)h(to)g Fr(\014rst)p Fu(.)49 b(If)33 b
19076Fr(\014rst)i Fu(is)e(not)h(sp)s(eci\014ed,)f(it)h(is)g(set)g(to)g(the)
19077630 1702 y(previous)g(command)f(for)h(editing)h(and)e
19078Fq(\000)p Fu(16)i(for)f(listing.)53 b(If)33 b(the)h Ft(-l)g
19079Fu(\015ag)g(is)g(giv)m(en,)j(the)630 1811 y(commands)27
19080b(are)h(listed)g(on)f(standard)g(output.)39 b(The)27
19081b Ft(-n)g Fu(\015ag)h(suppresses)e(the)h(command)630
190821921 y(n)m(um)m(b)s(ers)h(when)h(listing.)42 b(The)29
19083b Ft(-r)g Fu(\015ag)i(rev)m(erses)f(the)g(order)f(of)i(the)f(listing.)
1908441 b(Otherwise,)630 2030 y(the)i(editor)h(giv)m(en)g(b)m(y)f
19085Fr(ename)49 b Fu(is)43 b(in)m(v)m(ok)m(ed)i(on)e(a)g(\014le)h(con)m
19086(taining)g(those)g(commands.)630 2140 y(If)c Fr(ename)46
19087b Fu(is)40 b(not)h(giv)m(en,)j(the)d(v)-5 b(alue)41 b(of)f(the)h(follo)
19088m(wing)h(v)-5 b(ariable)41 b(expansion)f(is)g(used:)630
190892250 y Ft(${FCEDIT:-${EDITOR:-vi}})o Fu(.)34 b(This)25
19090b(sa)m(ys)i(to)g(use)f(the)g(v)-5 b(alue)27 b(of)f(the)h
19091Ft(FCEDIT)d Fu(v)-5 b(ariable)630 2359 y(if)33 b(set,)i(or)e(the)h(v)-5
19092b(alue)33 b(of)h(the)f Ft(EDITOR)f Fu(v)-5 b(ariable)34
19093b(if)f(that)h(is)f(set,)i(or)e Ft(vi)f Fu(if)i(neither)f(is)g(set.)630
190942469 y(When)d(editing)h(is)g(complete,)h(the)e(edited)h(commands)f(are)
19095h(ec)m(ho)s(ed)g(and)e(executed.)630 2600 y(In)34 b(the)g(second)g
19096(form,)h Fr(command)j Fu(is)c(re-executed)i(after)f(eac)m(h)g(instance)
19097g(of)f Fr(pat)j Fu(in)d(the)630 2710 y(selected)29 b(command)e(is)h
19098(replaced)f(b)m(y)h Fr(rep)p Fu(.)39 b Fr(command)31
19099b Fu(is)c(in)m(terpreted)h(the)f(same)h(as)g Fr(\014rst)630
191002819 y Fu(ab)s(o)m(v)m(e.)630 2951 y(A)j(useful)f(alias)i(to)g(use)e
19101(with)h(the)g Ft(fc)f Fu(command)h(is)g Ft(r='fc)e(-s')p
19102Fu(,)h(so)h(that)h(t)m(yping)f(`)p Ft(r)f(cc)p Fu(')630
191033061 y(runs)35 b(the)h(last)h(command)f(b)s(eginning)g(with)g
19104Ft(cc)f Fu(and)h(t)m(yping)g(`)p Ft(r)p Fu(')h(re-executes)h(the)e
19105(last)630 3170 y(command)30 b(\(see)h(Section)h(6.6)f([Aliases],)h
e59452c7 19106(page)g(99\).)150 3324 y Ft(history)870 3455 y(history)46
d37a4722
CR
19107b([)p Fj(n)p Ft(])870 3565 y(history)g(-c)870 3674 y(history)g(-d)h
19108Fj(offset)870 3784 y Ft(history)f(-d)h Fj(start)p Ft(-)p
19109Fj(end)870 3893 y Ft(history)f([-anrw])g([)p Fj(filename)p
19110Ft(])870 4003 y(history)g(-ps)h Fj(arg)630 4134 y Fu(With)26
6e51e0d0
CR
19111b(no)g(options,)h(displa)m(y)f(the)g(history)g(list)g(with)f(line)h(n)m
19112(um)m(b)s(ers.)38 b(Lines)26 b(pre\014xed)e(with)630
d37a4722 191134244 y(a)35 b(`)p Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)
6e51e0d0 1911453 b(An)34 b(argumen)m(t)h(of)g Fr(n)f Fu(lists)i(only)f(the)g(last)g
d37a4722 19115Fr(n)f Fu(lines.)54 b(If)35 b(the)630 4354 y(shell)30
6e51e0d0 19116b(v)-5 b(ariable)31 b Ft(HISTTIMEFORMAT)26 b Fu(is)k(set)h(and)e(not)i
37c41ab1 19117(n)m(ull,)f(it)h(is)f(used)f(as)h(a)h(format)f(string)630
d37a4722 191184463 y(for)36 b Fr(strftime)41 b Fu(to)36 b(displa)m(y)g(the)g(time)h
37c41ab1 19119(stamp)f(asso)s(ciated)h(with)f(eac)m(h)h(displa)m(y)m(ed)f(history)630
d37a4722 191204573 y(en)m(try)-8 b(.)47 b(No)33 b(in)m(terv)m(ening)g(blank)f(is)g
37c41ab1 19121(prin)m(ted)g(b)s(et)m(w)m(een)h(the)g(formatted)f(time)h(stamp)g(and)
d37a4722
CR
19122630 4682 y(the)e(history)f(line.)630 4814 y(Options,)g(if)h(supplied,)e
19123(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 4967
6e51e0d0 19124y Ft(-c)384 b Fu(Clear)23 b(the)g(history)g(list.)39
37c41ab1 19125b(This)22 b(ma)m(y)i(b)s(e)e(com)m(bined)h(with)f(the)h(other)h
d37a4722
CR
19126(options)1110 5077 y(to)31 b(replace)g(the)g(history)f(list)h
19127(completely)-8 b(.)630 5230 y Ft(-d)30 b Fj(offset)66
7e92fb35
CR
19128b Fu(Delete)38 b(the)f(history)f(en)m(try)h(at)f(p)s(osition)h
19129Fr(o\013set)p Fu(.)59 b(If)36 b Fr(o\013set)j Fu(is)d(p)s(ositiv)m(e,)j
d37a4722 19130(it)1110 5340 y(should)32 b(b)s(e)h(sp)s(eci\014ed)f(as)i(it)g(app)s
7e92fb35 19131(ears)e(when)g(the)i(history)f(is)g(displa)m(y)m(ed.)50
d37a4722 19132b(If)p eop end
fffe80d4
CR
19133%%Page: 153 159
19134TeXDict begin 153 158 bop 150 -116 a Fu(Chapter)30 b(9:)41
19135b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(153)1110
d37a4722
CR
19136299 y Fr(o\013set)26 b Fu(is)d(negativ)m(e,)k(it)c(is)g(in)m(terpreted)
19137h(as)f(relativ)m(e)i(to)f(one)f(greater)h(than)f(the)1110
19138408 y(last)36 b(history)f(p)s(osition,)h(so)f(negativ)m(e)i(indices)e
19139(coun)m(t)h(bac)m(k)f(from)g(the)g(end)1110 518 y(of)h(the)g(history)-8
19140b(,)37 b(and)e(an)h(index)f(of)h(`)p Ft(-1)p Fu(')f(refers)g(to)i(the)f
19141(curren)m(t)f Ft(history)1110 628 y(-d)30 b Fu(command.)630
e59452c7
CR
19142785 y Ft(-d)g Fj(start)p Ft(-)p Fj(end)1110 895 y Fu(Delete)e(the)e
19143(range)h(of)f(history)g(en)m(tries)h(b)s(et)m(w)m(een)f(p)s(ositions)g
19144Fr(start)j Fu(and)c Fr(end)p Fu(,)1110 1004 y(inclusiv)m(e.)44
19145b(P)m(ositiv)m(e)33 b(and)e(negativ)m(e)i(v)-5 b(alues)31
19146b(for)g Fr(start)j Fu(and)d Fr(end)j Fu(are)d(in)m(ter-)1110
191471114 y(preted)f(as)h(describ)s(ed)e(ab)s(o)m(v)m(e.)630
191481271 y Ft(-a)384 b Fu(App)s(end)28 b(the)i(new)f(history)g(lines)h(to)h
19149(the)e(history)h(\014le.)41 b(These)29 b(are)h(history)1110
191501381 y(lines)36 b(en)m(tered)g(since)f(the)h(b)s(eginning)f(of)g(the)h
19151(curren)m(t)f(Bash)h(session,)h(but)1110 1490 y(not)31
19152b(already)g(app)s(ended)d(to)j(the)g(history)f(\014le.)630
191531648 y Ft(-n)384 b Fu(App)s(end)32 b(the)i(history)f(lines)h(not)g
19154(already)g(read)g(from)f(the)h(history)f(\014le)h(to)1110
191551758 y(the)26 b(curren)m(t)f(history)g(list.)40 b(These)25
19156b(are)h(lines)g(app)s(ended)e(to)i(the)f(history)h(\014le)1110
191571867 y(since)31 b(the)f(b)s(eginning)g(of)g(the)h(curren)m(t)f(Bash)h
19158(session.)630 2025 y Ft(-r)384 b Fu(Read)31 b(the)f(history)g(\014le)h
19159(and)f(app)s(end)e(its)j(con)m(ten)m(ts)h(to)f(the)g(history)f(list.)
19160630 2182 y Ft(-w)384 b Fu(W)-8 b(rite)32 b(out)e(the)h(curren)m(t)f
19161(history)g(list)h(to)h(the)e(history)g(\014le.)630 2339
19162y Ft(-p)384 b Fu(P)m(erform)31 b(history)f(substitution)h(on)f(the)h
19163Fr(arg)8 b Fu(s)31 b(and)f(displa)m(y)h(the)f(result)h(on)1110
d37a4722
CR
191642449 y(the)d(standard)f(output,)i(without)f(storing)g(the)g(results)g
19165(in)g(the)g(history)g(list.)630 2606 y Ft(-s)384 b Fu(The)30
6e51e0d0 19166b Fr(arg)8 b Fu(s)30 b(are)h(added)f(to)h(the)f(end)g(of)h(the)f
c302751c 19167(history)h(list)g(as)f(a)h(single)g(en)m(try)-8 b(.)630
d37a4722 191682764 y(When)26 b(an)m(y)h(of)f(the)g Ft(-w)p Fu(,)h Ft(-r)p
6e51e0d0
CR
19169Fu(,)g Ft(-a)p Fu(,)g(or)f Ft(-n)f Fu(options)i(is)f(used,)h(if)f
19170Fr(\014lename)32 b Fu(is)26 b(giv)m(en,)i(then)e(it)h(is)630
d37a4722 191712873 y(used)h(as)g(the)h(history)f(\014le.)40 b(If)28
6e51e0d0 19172b(not,)i(then)e(the)g(v)-5 b(alue)29 b(of)g(the)g Ft(HISTFILE)d
e59452c7
CR
19173Fu(v)-5 b(ariable)29 b(is)f(used.)630 3007 y(The)34 b(return)g(v)-5
19174b(alue)35 b(is)g(0)g(unless)f(an)h(in)m(v)-5 b(alid)35
19175b(option)g(is)g(encoun)m(tered,)h(an)f(error)f(o)s(ccurs)630
191763117 y(while)h(reading)g(or)g(writing)f(the)h(history)g(\014le,)h(an)f
19177(in)m(v)-5 b(alid)36 b Fr(o\013set)h Fu(or)e(range)g(is)g(supplied)630
191783226 y(as)c(an)g(argumen)m(t)g(to)h Ft(-d)p Fu(,)e(or)h(the)g(history)g
19179(expansion)f(supplied)g(as)h(an)g(argumen)m(t)g(to)h
19180Ft(-p)630 3336 y Fu(fails.)150 3575 y Fs(9.3)68 b(History)46
19181b(Expansion)150 3734 y Fu(The)f(History)h(library)e(pro)m(vides)i(a)f
19182(history)g(expansion)g(feature)h(that)g(is)f(similar)h(to)g(the)f
19183(history)150 3844 y(expansion)g(pro)m(vided)f(b)m(y)h
6e51e0d0 19184Ft(csh)p Fu(.)83 b(This)44 b(section)i(describ)s(es)e(the)h(syn)m(tax)h
e59452c7
CR
19185(used)e(to)i(manipulate)f(the)150 3953 y(history)30 b(information.)275
191864087 y(History)h(expansions)f(in)m(tro)s(duce)g(w)m(ords)g(from)g(the)h
c302751c 19187(history)f(list)h(in)m(to)g(the)g(input)f(stream,)h(making)150
e59452c7 191884196 y(it)g(easy)g(to)g(rep)s(eat)g(commands,)f(insert)g(the)h(argumen)
37c41ab1 19189m(ts)f(to)h(a)g(previous)f(command)g(in)m(to)i(the)e(curren)m(t)150
e59452c7
CR
191904306 y(input)f(line,)i(or)g(\014x)f(errors)f(in)h(previous)g(commands)g
19191(quic)m(kly)-8 b(.)275 4439 y(History)24 b(expansion)f(is)h(p)s
c8cd6da3 19192(erformed)e(immediately)j(after)f(a)g(complete)h(line)f(is)g(read,)h(b)
e59452c7 19193s(efore)e(the)h(shell)150 4549 y(breaks)32 b(it)i(in)m(to)f(w)m(ords,)g
8d125d8b 19194(and)f(is)h(p)s(erformed)e(on)h(eac)m(h)i(line)f(individually)-8
e59452c7 19195b(.)48 b(Bash)33 b(attempts)g(to)h(inform)150 4659 y(the)d(history)f
8d125d8b 19196(expansion)g(functions)g(ab)s(out)g(quoting)h(still)g(in)f(e\013ect)i
e59452c7 19197(from)e(previous)g(lines.)275 4792 y(History)37 b(expansion)f(tak)m(es)
8d125d8b 19198i(place)g(in)e(t)m(w)m(o)i(parts.)59 b(The)36 b(\014rst)g(is)h(to)g
e59452c7 19199(determine)g(whic)m(h)f(line)h(from)150 4902 y(the)42
8d125d8b
CR
19200b(history)f(list)h(should)e(b)s(e)h(used)f(during)g(substitution.)74
19201b(The)40 b(second)i(is)f(to)h(select)h(p)s(ortions)e(of)150
e59452c7 192025011 y(that)31 b(line)g(for)f(inclusion)h(in)m(to)g(the)g(curren)m(t)f
8d125d8b 19203(one.)42 b(The)30 b(line)h(selected)h(from)e(the)h(history)f(is)h
e59452c7 19204(called)h(the)150 5121 y Fr(ev)m(en)m(t)p Fu(,)e(and)c(the)i(p)s
8d125d8b
CR
19205(ortions)e(of)i(that)f(line)h(that)g(are)f(acted)i(up)s(on)c(are)j
19206(called)g Fr(w)m(ords)p Fu(.)39 b(V)-8 b(arious)28 b
e59452c7 19207Fr(mo)s(di\014ers)150 5230 y Fu(are)33 b(a)m(v)-5 b(ailable)36
8d125d8b
CR
19208b(to)d(manipulate)h(the)f(selected)h(w)m(ords.)48 b(The)32
19209b(line)i(is)f(brok)m(en)f(in)m(to)i(w)m(ords)f(in)f(the)i(same)150
e59452c7 192105340 y(fashion)23 b(that)g(Bash)g(do)s(es,)h(so)f(that)h(sev)m(eral)g
8d125d8b 19211(w)m(ords)e(surrounded)e(b)m(y)j(quotes)g(are)g(considered)g(one)g(w)m
e59452c7 19212(ord.)p eop end
fffe80d4
CR
19213%%Page: 154 160
19214TeXDict begin 154 159 bop 150 -116 a Fu(Chapter)30 b(9:)41
19215b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(154)150
e59452c7
CR
19216299 y(History)37 b(expansions)g(are)g(in)m(tro)s(duced)f(b)m(y)h(the)g
19217(app)s(earance)g(of)g(the)g(history)f(expansion)h(c)m(haracter,)150
19218408 y(whic)m(h)30 b(is)h(`)p Ft(!)p Fu(')f(b)m(y)g(default.)275
19219554 y(History)c(expansion)g(implemen)m(ts)h(shell-lik)m(e)h(quoting)f
19220(con)m(v)m(en)m(tions:)40 b(a)27 b(bac)m(kslash)g(can)f(b)s(e)g(used)f
19221(to)150 664 y(remo)m(v)m(e)h(the)e(sp)s(ecial)g(handling)g(for)g(the)g
19222(next)g(c)m(haracter;)k(single)d(quotes)g(enclose)g(v)m(erbatim)g
19223(sequences)150 774 y(of)k(c)m(haracters,)i(and)e(can)g(b)s(e)g(used)f
19224(to)i(inhibit)f(history)g(expansion;)g(and)g(c)m(haracters)i(enclosed)e
19225(within)150 883 y(double)h(quotes)i(ma)m(y)f(b)s(e)f(sub)5
19226b(ject)31 b(to)h(history)f(expansion,)g(since)g(bac)m(kslash)g(can)h
19227(escap)s(e)f(the)g(history)150 993 y(expansion)e(c)m(haracter,)j(but)d
19228(single)h(quotes)g(ma)m(y)h(not,)f(since)g(they)g(are)g(not)f(treated)i
19229(sp)s(ecially)f(within)150 1102 y(double)g(quotes.)275
192301248 y(When)41 b(using)g(the)h(shell,)i(only)e(`)p Ft(\\)p
8d125d8b 19231Fu(')g(and)e(`)p Ft(')p Fu(')i(ma)m(y)g(b)s(e)f(used)g(to)h(escap)s(e)g
e59452c7 19232(the)g(history)f(expansion)150 1358 y(c)m(haracter,)e(but)34
8d125d8b 19233b(the)i(history)g(expansion)f(c)m(haracter)i(is)f(also)g(treated)h(as)e
e59452c7 19234(quoted)h(if)g(it)g(immediately)150 1468 y(precedes)30
8d125d8b 19235b(the)h(closing)g(double)f(quote)h(in)f(a)h(double-quoted)g(string.)275
e59452c7 192361614 y(Sev)m(eral)48 b(shell)g(options)h(settable)g(with)e(the)h
8d125d8b 19237Ft(shopt)f Fu(builtin)g(\(see)i(Section)f(4.3.2)i([The)e(Shopt)150
e59452c7 192381723 y(Builtin],)24 b(page)e(70\))h(ma)m(y)e(b)s(e)g(used)g(to)h
d37a4722 19239(tailor)g(the)g(b)s(eha)m(vior)f(of)h(history)f(expansion.)37
e59452c7 19240b(If)21 b(the)h Ft(histverify)150 1833 y Fu(shell)35
d37a4722 19241b(option)f(is)h(enabled,)g(and)f(Readline)h(is)f(b)s(eing)g(used,)h
e59452c7 19242(history)g(substitutions)e(are)i(not)g(immedi-)150 1942
d37a4722
CR
19243y(ately)i(passed)d(to)i(the)g(shell)f(parser.)55 b(Instead,)37
19244b(the)e(expanded)g(line)g(is)h(reloaded)g(in)m(to)g(the)f(Readline)150
e59452c7 192452052 y(editing)29 b(bu\013er)f(for)h(further)e(mo)s(di\014cation.)41
d37a4722 19246b(If)28 b(Readline)h(is)g(b)s(eing)f(used,)h(and)f(the)h
e59452c7 19247Ft(histreedit)d Fu(shell)150 2161 y(option)e(is)g(enabled,)h(a)g
d37a4722 19248(failed)f(history)g(expansion)g(will)g(b)s(e)f(reloaded)h(in)m(to)h
e59452c7 19249(the)f(Readline)g(editing)h(bu\013er)150 2271 y(for)31
d37a4722
CR
19250b(correction.)43 b(The)30 b Ft(-p)g Fu(option)h(to)h(the)f
19251Ft(history)e Fu(builtin)h(command)h(ma)m(y)g(b)s(e)f(used)g(to)i(see)f
e59452c7 19252(what)g(a)150 2381 y(history)25 b(expansion)g(will)g(do)g(b)s(efore)g
d37a4722 19253(using)f(it.)40 b(The)24 b Ft(-s)h Fu(option)g(to)h(the)f
e59452c7 19254Ft(history)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)150 2490
d37a4722
CR
19255y(to)36 b(add)f(commands)g(to)h(the)g(end)f(of)g(the)h(history)f(list)i
19256(without)e(actually)i(executing)g(them,)g(so)e(that)150
e59452c7 192572600 y(they)c(are)f(a)m(v)-5 b(ailable)33 b(for)d(subsequen)m(t)g
d37a4722 19258(recall.)42 b(This)29 b(is)i(most)g(useful)e(in)h(conjunction)h(with)f
e59452c7 19259(Readline.)275 2746 y(The)j(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g
d37a4722 19260(v)-5 b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)g
e59452c7 19261(expansion)g(mec)m(h-)150 2855 y(anism)h(with)g(the)g
d37a4722
CR
19262Ft(histchars)d Fu(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
19263i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
e59452c7 192642965 y(page)32 b(77\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
d37a4722 19265(commen)m(t)i(c)m(haracter)f(to)g(mark)f(history)g(timestamps)h(when)
e59452c7
CR
19266150 3075 y(writing)e(the)h(history)f(\014le.)150 3285
19267y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 3432
d37a4722
CR
19268y Fu(An)32 b(ev)m(en)m(t)j(designator)e(is)g(a)g(reference)g(to)h(a)f
19269(command)f(line)h(en)m(try)g(in)g(the)g(history)g(list.)48
e59452c7 19270b(Unless)33 b(the)150 3542 y(reference)e(is)f(absolute,)i(ev)m(en)m(ts)
d37a4722 19271f(are)g(relativ)m(e)i(to)e(the)f(curren)m(t)g(p)s(osition)h(in)f(the)h
e59452c7 19272(history)f(list.)150 3718 y Ft(!)432 b Fu(Start)34 b(a)f(history)h
d37a4722 19273(substitution,)g(except)g(when)f(follo)m(w)m(ed)i(b)m(y)e(a)h(space,)h
e59452c7 19274(tab,)f(the)g(end)f(of)630 3828 y(the)i(line,)g(`)p Ft(=)p
d37a4722
CR
19275Fu(')g(or)f(`)p Ft(\()p Fu(')h(\(when)e(the)i Ft(extglob)d
19276Fu(shell)j(option)f(is)h(enabled)f(using)g(the)g Ft(shopt)630
e59452c7
CR
192773938 y Fu(builtin\).)150 4109 y Ft(!)p Fj(n)384 b Fu(Refer)30
19278b(to)i(command)e(line)g Fr(n)p Fu(.)150 4279 y Ft(!-)p
d37a4722 19279Fj(n)336 b Fu(Refer)30 b(to)i(the)e(command)g Fr(n)g
e59452c7 19280Fu(lines)h(bac)m(k.)150 4450 y Ft(!!)384 b Fu(Refer)30
d37a4722 19281b(to)i(the)e(previous)g(command.)40 b(This)30 b(is)g(a)h(synon)m(ym)f
e59452c7 19282(for)g(`)p Ft(!-1)p Fu('.)150 4621 y Ft(!)p Fj(string)144
d37a4722
CR
19283b Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g
19284(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
e59452c7
CR
192854731 y(list)31 b(starting)g(with)f Fr(string)p Fu(.)150
192864902 y Ft(!?)p Fj(string)p Ft([?])630 5011 y Fu(Refer)25
d37a4722 19287b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)
e59452c7 19288g(p)s(osition)g(in)g(the)g(history)630 5121 y(list)32
d37a4722
CR
19289b(con)m(taining)i Fr(string)p Fu(.)45 b(The)31 b(trailing)i(`)p
19290Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f(the)g Fr(string)39
e59452c7 19291b Fu(is)32 b(follo)m(w)m(ed)630 5230 y(immediately)f(b)m(y)e(a)h
d37a4722 19292(newline.)40 b(If)29 b Fr(string)38 b Fu(is)29 b(missing,)h(the)g
e59452c7 19293(string)f(from)g(the)h(most)g(recen)m(t)630 5340 y(searc)m(h)h(is)f
d37a4722 19294(used;)g(it)h(is)g(an)f(error)g(if)g(there)h(is)f(no)g(previous)g
e59452c7 19295(searc)m(h)h(string.)p eop end
fffe80d4
CR
19296%%Page: 155 161
19297TeXDict begin 155 160 bop 150 -116 a Fu(Chapter)30 b(9:)41
19298b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(155)150
e59452c7
CR
19299299 y Ft(^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)630
19300408 y Fu(Quic)m(k)32 b(Substitution.)44 b(Rep)s(eat)32
19301b(the)g(last)h(command,)f(replacing)g Fr(string1)40 b
19302Fu(with)31 b Fr(string2)p Fu(.)630 518 y(Equiv)-5 b(alen)m(t)31
19303b(to)g Ft(!!:s^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)p
19304Fu(.)150 673 y Ft(!#)384 b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m
19305(yp)s(ed)f(so)h(far.)150 867 y Fk(9.3.2)63 b(W)-10 b(ord)41
19306b(Designators)150 1014 y Fu(W)-8 b(ord)27 b(designators)h(are)g(used)e
19307(to)i(select)h(desired)d(w)m(ords)h(from)f(the)i(ev)m(en)m(t.)41
19308b(A)27 b(`)p Ft(:)p Fu(')g(separates)h(the)f(ev)m(en)m(t)150
193091124 y(sp)s(eci\014cation)38 b(from)e(the)h(w)m(ord)f(designator.)61
c302751c 19310b(It)37 b(ma)m(y)h(b)s(e)e(omitted)i(if)e(the)h(w)m(ord)g(designator)g
e59452c7 19311(b)s(egins)150 1233 y(with)30 b(a)g(`)p Ft(^)p Fu(',)g(`)p
6e51e0d0
CR
19312Ft($)p Fu(',)g(`)p Ft(*)p Fu(',)h(`)p Ft(-)p Fu(',)f(or)g(`)p
19313Ft(\045)p Fu('.)41 b(W)-8 b(ords)30 b(are)g(n)m(um)m(b)s(ered)e(from)i
d37a4722 19314(the)g(b)s(eginning)f(of)h(the)g(line,)g(with)g(the)150
e59452c7
CR
193151343 y(\014rst)f(w)m(ord)f(b)s(eing)h(denoted)h(b)m(y)f(0)h(\(zero\).)
1931641 b(W)-8 b(ords)30 b(are)g(inserted)f(in)m(to)h(the)g(curren)m(t)f
19317(line)g(separated)h(b)m(y)150 1452 y(single)h(spaces.)275
193181584 y(F)-8 b(or)31 b(example,)150 1739 y Ft(!!)384 b
19319Fu(designates)37 b(the)f(preceding)g(command.)57 b(When)35
19320b(y)m(ou)i(t)m(yp)s(e)f(this,)h(the)f(preceding)g(com-)630
193211849 y(mand)30 b(is)g(rep)s(eated)g(in)g(toto.)150 2003
19322y Ft(!!:$)288 b Fu(designates)23 b(the)g(last)g(argumen)m(t)g(of)f(the)
19323h(preceding)f(command.)38 b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630
193242113 y(to)31 b Ft(!$)p Fu(.)150 2267 y Ft(!fi:2)240 b
19325Fu(designates)30 b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f
19326(recen)m(t)i(command)e(starting)h(with)f(the)630 2377
19327y(letters)j Ft(fi)p Fu(.)275 2531 y(Here)e(are)h(the)g(w)m(ord)f
19328(designators:)150 2686 y Ft(0)g(\(zero\))114 b Fu(The)30
19329b Ft(0)p Fu(th)g(w)m(ord.)40 b(F)-8 b(or)31 b(man)m(y)g(applications,)h
19330(this)e(is)g(the)h(command)f(w)m(ord.)150 2840 y Fj(n)432
19331b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150 2995 y Ft(^)432
19332b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m(ord)g(1.)150
193333150 y Ft($)432 b Fu(The)30 b(last)h(argumen)m(t.)150
193343304 y Ft(\045)432 b Fu(The)40 b(\014rst)h(w)m(ord)f(matc)m(hed)i(b)m
fc35c477
CR
19335(y)f(the)g(most)g(recen)m(t)h(`)p Ft(?)p Fj(string)p
19336Ft(?)p Fu(')d(searc)m(h,)44 b(if)d(the)g(searc)m(h)630
e59452c7
CR
193373414 y(string)30 b(b)s(egins)g(with)g(a)h(c)m(haracter)h(that)f(is)f
19338(part)h(of)f(a)h(w)m(ord.)150 3568 y Fj(x)p Ft(-)p Fj(y)336
fc35c477 19339b Fu(A)30 b(range)h(of)g(w)m(ords;)f(`)p Ft(-)p Fj(y)p
e59452c7 19340Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p Fu('.)150 3723
fc35c477
CR
19341y Ft(*)432 b Fu(All)28 b(of)g(the)g(w)m(ords,)g(except)h(the)e
19342Ft(0)p Fu(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
6e51e0d0 19343Ft(1-$)p Fu('.)39 b(It)28 b(is)g(not)g(an)f(error)630
e59452c7 193443832 y(to)j(use)g(`)p Ft(*)p Fu(')f(if)h(there)g(is)g(just)f(one)h(w)m
122f603c 19345(ord)f(in)g(the)h(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)e(is)h
e59452c7 19346(returned)e(in)630 3942 y(that)j(case.)150 4097 y Fj(x)p
900a813b 19347Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p Ft(-$)p Fu(')150
e59452c7 193484251 y Fj(x)p Ft(-)384 b Fu(Abbreviates)27 b(`)p Fj(x)p
fc35c477
CR
19349Ft(-$)p Fu(')g(lik)m(e)h(`)p Fj(x)p Ft(*)p Fu(',)g(but)e(omits)i(the)f
19350(last)h(w)m(ord.)39 b(If)27 b(`)p Ft(x)p Fu(')g(is)g(missing,)g(it)h
e59452c7 19351(defaults)630 4361 y(to)j(0.)275 4515 y(If)i(a)h(w)m(ord)g(designator)g
fc35c477 19352(is)g(supplied)f(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h
e59452c7
CR
19353(the)e(previous)f(command)150 4625 y(is)d(used)g(as)h(the)f(ev)m(en)m
19354(t.)150 4819 y Fk(9.3.3)63 b(Mo)s(di\014ers)150 4966
fc35c477
CR
19355y Fu(After)29 b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g
19356(add)f(a)h(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)
e59452c7 19357150 5076 y(mo)s(di\014ers,)33 b(eac)m(h)h(preceded)f(b)m(y)g(a)h(`)p
fc35c477 19358Ft(:)p Fu('.)50 b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g
e59452c7
CR
19359(w)m(ord)f(or)g(w)m(ords)g(selected)h(from)150 5185 y(the)d(history)f
19360(ev)m(en)m(t.)150 5340 y Ft(h)432 b Fu(Remo)m(v)m(e)32
6e51e0d0 19361b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the)
e59452c7 19362h(head.)p eop end
fffe80d4
CR
19363%%Page: 156 162
19364TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(9:)41
19365b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(156)150
e59452c7
CR
19366299 y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s
19367(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 458 y Ft(r)432
19368b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g(the)h(form)f(`)p
19369Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)j(the)f(basename.)150
19370618 y Ft(e)432 b Fu(Remo)m(v)m(e)32 b(all)f(but)f(the)h(trailing)g
19371(su\016x.)150 777 y Ft(p)432 b Fu(Prin)m(t)30 b(the)h(new)f(command)g
19372(but)g(do)g(not)g(execute)i(it.)150 936 y Ft(q)432 b
19373Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)g(escaping)h(further)e
19374(substitutions.)150 1096 y Ft(x)432 b Fu(Quote)32 b(the)f(substituted)g
19375(w)m(ords)f(as)i(with)f(`)p Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m
19376(ords)d(at)i(spaces,)h(tabs,)630 1205 y(and)38 b(newlines.)66
19377b(The)39 b(`)p Ft(q)p Fu(')g(and)f(`)p Ft(x)p Fu(')h(mo)s(di\014ers)f
19378(are)h(m)m(utually)g(exclusiv)m(e;)45 b(the)39 b(last)h(one)630
193791315 y(supplied)29 b(is)i(used.)150 1474 y Ft(s/)p Fj(old)p
19380Ft(/)p Fj(new)p Ft(/)630 1584 y Fu(Substitute)g Fr(new)39
fc35c477
CR
19381b Fu(for)32 b(the)g(\014rst)f(o)s(ccurrence)h(of)f Fr(old)36
19382b Fu(in)31 b(the)h(ev)m(en)m(t)h(line.)46 b(An)m(y)31
e59452c7 19383b(c)m(haracter)630 1694 y(ma)m(y)k(b)s(e)e(used)h(as)g(the)h(delimiter)
d37a4722 19384g(in)f(place)h(of)f(`)p Ft(/)p Fu('.)53 b(The)33 b(delimiter)i(ma)m(y)g
e59452c7 19385(b)s(e)f(quoted)g(in)630 1803 y Fr(old)40 b Fu(and)c
fc35c477
CR
19386Fr(new)44 b Fu(with)36 b(a)h(single)g(bac)m(kslash.)60
19387b(If)36 b(`)p Ft(&)p Fu(')h(app)s(ears)e(in)i Fr(new)p
e59452c7 19388Fu(,)g(it)h(is)e(replaced)h(b)m(y)630 1913 y Fr(old)p
fc35c477
CR
19389Fu(.)k(A)31 b(single)g(bac)m(kslash)g(will)g(quote)g(the)g(`)p
19390Ft(&)p Fu('.)41 b(If)31 b Fr(old)j Fu(is)c(n)m(ull,)h(it)g(is)g(set)g
e59452c7 19391(to)g(the)g(last)g Fr(old)630 2022 y Fu(substituted,)j(or,)g(if)f(no)g
fc35c477 19392(previous)g(history)g(substitutions)g(to)s(ok)h(place,)h(the)e(last)h
e59452c7 19393Fr(string)630 2132 y Fu(in)j(a)g(!?)p Fr(string)8 b Ft([?])37
fc35c477
CR
19394b Fu(searc)m(h.)61 b(If)37 b Fr(new)45 b Fu(is)37 b(is)g(n)m(ull,)i
19395(eac)m(h)f(matc)m(hing)h Fr(old)h Fu(is)e(deleted.)61
e59452c7 19396b(The)630 2242 y(\014nal)30 b(delimiter)h(is)g(optional)g(if)f(it)h(is)
fc35c477 19397g(the)f(last)i(c)m(haracter)f(on)g(the)f(input)g(line.)150
e59452c7
CR
193982401 y Ft(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)g(substitution.)150
193992560 y Ft(g)150 2670 y(a)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f
fc35c477 19400(applied)h(o)m(v)m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66
e59452c7 19401b(Used)39 b(in)f(conjunction)630 2780 y(with)30 b(`)p
fc35c477 19402Ft(s)p Fu(',)h(as)f(in)h Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p
e59452c7 19403Ft(/)p Fu(,)c(or)j(with)h(`)p Ft(&)p Fu('.)150 2939 y
fc35c477
CR
19404Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i(`)p Ft(s)p
19405Fu(')f(or)f(`)p Ft(&)p Fu(')h(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m
19406(ord)e(in)g(the)g(ev)m(en)m(t.)p eop end
fffe80d4
CR
19407%%Page: 157 163
19408TeXDict begin 157 162 bop 3614 -116 a Fu(157)150 299
e59452c7 19409y Fp(10)80 b(Installing)52 b(Bash)150 539 y Fu(This)31
037a8b7f
CR
19410b(c)m(hapter)h(pro)m(vides)g(basic)g(instructions)f(for)g(installing)i
19411(Bash)f(on)f(the)h(v)-5 b(arious)31 b(supp)s(orted)f(plat-)150
e59452c7 19412648 y(forms.)40 b(The)28 b(distribution)h(supp)s(orts)e(the)j
037a8b7f 19413Fm(gnu)f Fu(op)s(erating)h(systems,)f(nearly)h(ev)m(ery)g(v)m(ersion)f
e59452c7 19414(of)h(Unix,)150 758 y(and)d(sev)m(eral)j(non-Unix)d(systems)h(suc)m(h)g
037a8b7f 19415(as)g(BeOS)g(and)f(In)m(terix.)40 b(Other)28 b(indep)s(enden)m(t)e(p)s
e59452c7
CR
19416(orts)h(exist)i(for)150 867 y Fm(ms-dos)p Fu(,)h Fm(os/2)p
19417Fu(,)g(and)g(Windo)m(ws)g(platforms.)150 1111 y Fs(10.1)68
19418b(Basic)45 b(Installation)150 1270 y Fu(These)30 b(are)h(installation)h
19419(instructions)e(for)h(Bash.)275 1407 y(The)e(simplest)i(w)m(a)m(y)g(to)
19420g(compile)h(Bash)e(is:)199 1543 y(1.)61 b Ft(cd)38 b
6e51e0d0
CR
19421Fu(to)h(the)f(directory)h(con)m(taining)h(the)f(source)f(co)s(de)h(and)
19422f(t)m(yp)s(e)g(`)p Ft(./configure)p Fu(')e(to)j(con\014gure)330
e59452c7 194231653 y(Bash)c(for)f(y)m(our)h(system.)54 b(If)34 b(y)m(ou're)h(using)f
6e51e0d0 19424Ft(csh)g Fu(on)g(an)h(old)g(v)m(ersion)g(of)g(System)f(V,)h(y)m(ou)g
e59452c7 19425(migh)m(t)330 1762 y(need)21 b(to)g(t)m(yp)s(e)g(`)p
6e51e0d0
CR
19426Ft(sh)30 b(./configure)p Fu(')18 b(instead)j(to)g(prev)m(en)m(t)h
19427Ft(csh)e Fu(from)g(trying)h(to)g(execute)h Ft(configure)330
e59452c7 194281872 y Fu(itself.)330 2007 y(Running)30 b Ft(configure)f
6e51e0d0 19429Fu(tak)m(es)k(some)e(time.)45 b(While)32 b(running,)e(it)i(prin)m(ts)f
e59452c7
CR
19430(messages)h(telling)h(whic)m(h)330 2117 y(features)e(it)g(is)f(c)m(hec)
19431m(king)i(for.)199 2252 y(2.)61 b(T)m(yp)s(e)30 b(`)p
6e51e0d0 19432Ft(make)p Fu(')g(to)h(compile)g(Bash)g(and)e(build)h(the)g
e59452c7 19433Ft(bashbug)f Fu(bug)g(rep)s(orting)h(script.)199 2388
6e51e0d0 19434y(3.)61 b(Optionally)-8 b(,)32 b(t)m(yp)s(e)e(`)p Ft(make)g(tests)p
e59452c7
CR
19435Fu(')f(to)i(run)e(the)h(Bash)h(test)g(suite.)199 2523
19436y(4.)61 b(T)m(yp)s(e)42 b(`)p Ft(make)30 b(install)p
19437Fu(')41 b(to)i(install)h Ft(bash)d Fu(and)i Ft(bashbug)p
19438Fu(.)76 b(This)42 b(will)h(also)g(install)h(the)f(man-)330
194392633 y(ual)30 b(pages)g(and)g(Info)f(\014le,)h(message)h(translation)g
19440(\014les,)f(some)g(supplemen)m(tal)h(do)s(cumen)m(tation,)g(a)330
194412742 y(n)m(um)m(b)s(er)c(of)h(example)h(loadable)g(builtin)f(commands,)
19442g(and)g(a)g(set)h(of)f(header)g(\014les)g(for)g(dev)m(eloping)330
194432852 y(loadable)36 b(builtins.)55 b(Y)-8 b(ou)36 b(ma)m(y)f(need)g
19444(additional)h(privileges)g(to)g(install)g Ft(bash)e Fu(to)i(y)m(our)f
19445(desired)330 2962 y(destination,)f(so)f(`)p Ft(sudo)d(make)f(install)p
19446Fu(')i(migh)m(t)i(b)s(e)f(required.)47 b(More)33 b(information)g(ab)s
19447(out)f(con-)330 3071 y(trolling)c(the)g(lo)s(cations)g(where)f
19448Ft(bash)f Fu(and)h(other)g(\014les)g(are)h(installed)g(is)f(b)s(elo)m
19449(w)g(\(see)h(Section)g(10.4)330 3181 y([Installation)k(Names],)g(page)f
fffe80d4 19450(159\).)275 3343 y(The)20 b Ft(configure)f Fu(shell)i(script)g
e59452c7
CR
19451(attempts)h(to)g(guess)f(correct)i(v)-5 b(alues)21 b(for)g(v)-5
19452b(arious)21 b(system-dep)s(enden)m(t)150 3453 y(v)-5
19453b(ariables)38 b(used)f(during)f(compilation.)64 b(It)37
19454b(uses)g(those)h(v)-5 b(alues)38 b(to)g(create)h(a)f
19455Ft(Makefile)d Fu(in)i(eac)m(h)i(di-)150 3562 y(rectory)32
19456b(of)f(the)h(pac)m(k)-5 b(age)33 b(\(the)f(top)f(directory)-8
19457b(,)33 b(the)e Ft(builtins)p Fu(,)f Ft(doc)p Fu(,)h Ft(po)p
19458Fu(,)g(and)f Ft(support)g Fu(directories,)150 3672 y(eac)m(h)38
19459b(directory)g(under)d Ft(lib)p Fu(,)j(and)f(sev)m(eral)h(others\).)61
19460b(It)38 b(also)g(creates)g(a)f Ft(config.h)e Fu(\014le)i(con)m(taining)
19461150 3781 y(system-dep)s(enden)m(t)31 b(de\014nitions.)44
19462b(Finally)-8 b(,)34 b(it)e(creates)h(a)f(shell)g(script)f(named)g
19463Ft(config.status)d Fu(that)150 3891 y(y)m(ou)35 b(can)h(run)d(in)i(the)
19464g(future)f(to)i(recreate)g(the)g(curren)m(t)e(con\014guration,)j(a)f
19465(\014le)f Ft(config.cache)c Fu(that)150 4001 y(sa)m(v)m(es)39
19466b(the)e(results)g(of)g(its)h(tests)g(to)g(sp)s(eed)e(up)h
19467(recon\014guring,)h(and)f(a)h(\014le)f Ft(config.log)d
19468Fu(con)m(taining)150 4110 y(compiler)c(output)g(\(useful)f(mainly)h
19469(for)f(debugging)h Ft(configure)p Fu(\).)38 b(If)29 b(at)i(some)f(p)s
19470(oin)m(t)f Ft(config.cache)150 4220 y Fu(con)m(tains)j(results)e(y)m
19471(ou)g(don't)h(w)m(an)m(t)g(to)g(k)m(eep,)g(y)m(ou)g(ma)m(y)g(remo)m(v)m
19472(e)h(or)e(edit)h(it.)275 4356 y(T)-8 b(o)37 b(\014nd)f(out)i(more)f(ab)
19473s(out)h(the)f(options)h(and)f(argumen)m(ts)g(that)h(the)g
19474Ft(configure)d Fu(script)i(under-)150 4466 y(stands,)30
19475b(t)m(yp)s(e)390 4602 y Ft(bash-4.2$)45 b(./configure)g(--help)150
194764738 y Fu(at)31 b(the)g(Bash)f(prompt)g(in)g(y)m(our)g(Bash)h(source)f
19477(directory)-8 b(.)275 4875 y(If)34 b(y)m(ou)h(w)m(an)m(t)g(to)g(build)f
19478(Bash)g(in)h(a)g(directory)g(separate)g(from)f(the)h(source)g
19479(directory)g({)g(to)g(build)150 4984 y(for)30 b(m)m(ultiple)i(arc)m
19480(hitectures,)g(for)e(example)h({)g(just)f(use)h(the)f(full)h(path)f(to)
19481h(the)g(con\014gure)f(script.)41 b(The)150 5094 y(follo)m(wing)24
19482b(commands)f(will)g(build)f(bash)g(in)g(a)h(directory)h(under)d
19483Ft(/usr/local/build)d Fu(from)23 b(the)g(source)150 5204
19484y(co)s(de)31 b(in)f Ft(/usr/local/src/bash-4.4)o Fu(:)390
194855340 y Ft(mkdir)46 b(/usr/local/build/bash-4.4)p eop
19486end
fffe80d4
CR
19487%%Page: 158 164
19488TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(10:)41
19489b(Installing)31 b(Bash)2356 b(158)390 299 y Ft(cd)47
e59452c7
CR
19490b(/usr/local/build/bash-4.4)390 408 y(bash)g(/usr/local/src/bash-4.4)o
19491(/con)o(fig)o(ure)390 518 y(make)275 652 y Fu(See)27
19492b(Section)h(10.3)g([Compiling)g(F)-8 b(or)27 b(Multiple)h(Arc)m
fffe80d4 19493(hitectures],)i(page)d(158,)j(for)c(more)i(information)150
e59452c7
CR
19494762 y(ab)s(out)i(building)g(in)g(a)g(directory)h(separate)h(from)e(the)
19495g(source.)275 896 y(If)53 b(y)m(ou)h(need)f(to)i(do)e(un)m(usual)g
19496(things)g(to)i(compile)g(Bash,)k(please)c(try)e(to)i(\014gure)e(out)h
19497(ho)m(w)150 1006 y Ft(configure)47 b Fu(could)j(c)m(hec)m(k)h(whether)e
19498(or)g(not)h(to)h(do)e(them,)55 b(and)49 b(mail)h(di\013s)f(or)h
19499(instructions)f(to)150 1115 y Ft(bash-maintainers@gnu.org)24
19500b Fu(so)30 b(they)h(can)g(b)s(e)e(considered)i(for)f(the)g(next)h
19501(release.)275 1250 y(The)e(\014le)g Ft(configure.ac)d
19502Fu(is)k(used)e(to)j(create)g Ft(configure)c Fu(b)m(y)i(a)h(program)f
19503(called)i(Auto)s(conf.)40 b(Y)-8 b(ou)150 1359 y(only)34
19504b(need)g Ft(configure.ac)d Fu(if)i(y)m(ou)i(w)m(an)m(t)g(to)f(c)m
19505(hange)i(it)e(or)g(regenerate)i Ft(configure)31 b Fu(using)j(a)g(new)m
19506(er)150 1469 y(v)m(ersion)25 b(of)f(Auto)s(conf.)39 b(If)24
19507b(y)m(ou)h(do)f(this,)i(mak)m(e)f(sure)f(y)m(ou)h(are)f(using)g(Auto)s
19508(conf)h(v)m(ersion)f(2.69)i(or)f(new)m(er.)275 1603 y(Y)-8
19509b(ou)29 b(can)f(remo)m(v)m(e)i(the)f(program)g(binaries)f(and)g(ob)5
19510b(ject)29 b(\014les)g(from)f(the)h(source)f(co)s(de)h(directory)g(b)m
19511(y)150 1713 y(t)m(yping)j(`)p Ft(make)d(clean)p Fu('.)42
19512b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g
a2851804 19513Ft(configure)e Fu(created)j(\(so)g(y)m(ou)g(can)f(compile)150
e59452c7
CR
195141822 y(Bash)g(for)f(a)g(di\013eren)m(t)h(kind)f(of)g(computer\),)h(t)m
19515(yp)s(e)g(`)p Ft(make)e(distclean)p Fu('.)150 2063 y
19516Fs(10.2)68 b(Compilers)46 b(and)f(Options)150 2222 y
a2851804
CR
19517Fu(Some)28 b(systems)h(require)f(un)m(usual)f(options)i(for)f
19518(compilation)i(or)f(linking)f(that)h(the)g Ft(configure)d
e59452c7 19519Fu(script)150 2332 y(do)s(es)32 b(not)g(kno)m(w)g(ab)s(out.)44
a2851804
CR
19520b(Y)-8 b(ou)33 b(can)f(giv)m(e)h Ft(configure)d Fu(initial)j(v)-5
19521b(alues)32 b(for)g(v)-5 b(ariables)32 b(b)m(y)g(setting)h(them)150
e59452c7 195222441 y(in)k(the)g(en)m(vironmen)m(t.)62 b(Using)38 b(a)f
a2851804 19523(Bourne-compatible)i(shell,)g(y)m(ou)f(can)g(do)f(that)h(on)f(the)g
e59452c7 19524(command)150 2551 y(line)31 b(lik)m(e)g(this:)390 2685
a2851804 19525y Ft(CC=c89)46 b(CFLAGS=-O2)f(LIBS=-lposix)g(./configure)275
e59452c7 195262819 y Fu(On)29 b(systems)h(that)h(ha)m(v)m(e)h(the)f
6e51e0d0 19527Ft(env)e Fu(program,)h(y)m(ou)h(can)g(do)f(it)h(lik)m(e)h(this:)390
e59452c7
CR
195282954 y Ft(env)47 b(CPPFLAGS=-I/usr/local/in)o(clud)o(e)42
19529b(LDFLAGS=-s)j(./configure)275 3088 y Fu(The)29 b(con\014guration)i
37c41ab1 19530(pro)s(cess)f(uses)g(GCC)g(to)h(build)e(Bash)i(if)f(it)h(is)g(a)m(v)-5
e59452c7
CR
19531b(ailable.)150 3328 y Fs(10.3)68 b(Compiling)46 b(F)-11
19532b(or)45 b(Multiple)g(Arc)l(hitectures)150 3488 y Fu(Y)-8
c302751c
CR
19533b(ou)27 b(can)g(compile)g(Bash)g(for)f(more)h(than)f(one)h(kind)f(of)g
19534(computer)h(at)g(the)g(same)g(time,)h(b)m(y)e(placing)i(the)150
e59452c7 195353597 y(ob)5 b(ject)31 b(\014les)f(for)g(eac)m(h)i(arc)m(hitecture)f(in)
c302751c
CR
19536f(their)g(o)m(wn)h(directory)-8 b(.)41 b(T)-8 b(o)31
19537b(do)f(this,)g(y)m(ou)h(m)m(ust)f(use)g(a)g(v)m(ersion)150
e59452c7 195383707 y(of)36 b Ft(make)e Fu(that)i(supp)s(orts)e(the)i
a2851804
CR
19539Ft(VPATH)e Fu(v)-5 b(ariable,)38 b(suc)m(h)d(as)h(GNU)g
19540Ft(make)p Fu(.)55 b Ft(cd)35 b Fu(to)i(the)e(directory)h(where)150
e59452c7 195413817 y(y)m(ou)k(w)m(an)m(t)h(the)g(ob)5 b(ject)41 b(\014les)f(and)f
a2851804 19542(executables)j(to)e(go)h(and)f(run)e(the)j Ft(configure)c
e59452c7 19543Fu(script)j(from)g(the)150 3926 y(source)32 b(directory)h(\(see)g
fffe80d4 19544(Section)f(10.1)i([Basic)f(Installation],)i(page)e(157\).)47
e59452c7 19545b(Y)-8 b(ou)32 b(ma)m(y)h(need)f(to)g(supply)150 4036
a2851804
CR
19546y(the)43 b Ft(--srcdir=PATH)c Fu(argumen)m(t)k(to)h(tell)g
19547Ft(configure)c Fu(where)i(the)h(source)g(\014les)g(are.)78
e59452c7 19548b Ft(configure)150 4145 y Fu(automatically)33 b(c)m(hec)m(ks)f(for)e
a2851804 19549(the)h(source)f(co)s(de)h(in)f(the)h(directory)f(that)h
e59452c7 19550Ft(configure)d Fu(is)j(in)f(and)f(in)h(`..'.)275 4280
6e51e0d0
CR
19551y(If)20 b(y)m(ou)h(ha)m(v)m(e)i(to)e(use)g(a)g Ft(make)f
19552Fu(that)i(do)s(es)e(not)i(supp)s(orts)d(the)i Ft(VPATH)e
19553Fu(v)-5 b(ariable,)24 b(y)m(ou)e(can)f(compile)h(Bash)150
e59452c7 195544389 y(for)33 b(one)h(arc)m(hitecture)h(at)f(a)g(time)g(in)f(the)h
37c41ab1 19555(source)g(co)s(de)f(directory)-8 b(.)51 b(After)34 b(y)m(ou)g(ha)m(v)m
e59452c7 19556(e)h(installed)f(Bash)150 4499 y(for)c(one)h(arc)m(hitecture,)h(use)e
6e51e0d0 19557(`)p Ft(make)g(distclean)p Fu(')e(b)s(efore)i(recon\014guring)g(for)g
e59452c7 19558(another)g(arc)m(hitecture.)275 4633 y(Alternativ)m(ely)-8
6e51e0d0 19559b(,)30 b(if)c(y)m(our)g(system)h(supp)s(orts)d(sym)m(b)s(olic)j(links,)
e59452c7 19560g(y)m(ou)g(can)g(use)f(the)g Ft(support/mkclone)150 4743
6e51e0d0
CR
19561y Fu(script)d(to)h(create)g(a)f(build)f(tree)i(whic)m(h)f(has)f(sym)m
19562(b)s(olic)i(links)e(bac)m(k)i(to)g(eac)m(h)g(\014le)f(in)g(the)g
e59452c7 19563(source)g(directory)-8 b(.)150 4852 y(Here's)41 b(an)f(example)i(that)f
6e51e0d0 19564(creates)h(a)e(build)g(directory)h(in)f(the)h(curren)m(t)f(directory)h
e59452c7
CR
19565(from)f(a)h(source)150 4962 y(directory)31 b Ft(/usr/gnu/src/bash-2.0)p
19566Fu(:)390 5096 y Ft(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o
6e51e0d0 19567(mkcl)o(one)41 b(-s)47 b(/usr/gnu/src/bash-2.0)42 b(.)150
e59452c7 195685230 y Fu(The)c Ft(mkclone)e Fu(script)i(requires)g(Bash,)i(so)f(y)m
6e51e0d0 19569(ou)f(m)m(ust)h(ha)m(v)m(e)g(already)g(built)f(Bash)g(for)g(at)h(least)
e59452c7
CR
19570h(one)150 5340 y(arc)m(hitecture)32 b(b)s(efore)e(y)m(ou)h(can)f
19571(create)i(build)e(directories)h(for)f(other)h(arc)m(hitectures.)p
967625cd 19572eop end
fffe80d4
CR
19573%%Page: 159 165
19574TeXDict begin 159 164 bop 150 -116 a Fu(Chapter)30 b(10:)41
19575b(Installing)31 b(Bash)2356 b(159)150 299 y Fs(10.4)68
e59452c7
CR
19576b(Installation)47 b(Names)150 458 y Fu(By)36 b(default,)g(`)p
19577Ft(make)30 b(install)p Fu(')j(will)j(install)g(in)m(to)g
19578Ft(/usr/local/bin)p Fu(,)d Ft(/usr/local/man)p Fu(,)g(etc.;)39
19579b(that)150 568 y(is,)i(the)d Fr(installation)i(pre\014x)k
19580Fu(defaults)38 b(to)h Ft(/usr/local)p Fu(.)62 b(Y)-8
19581b(ou)39 b(can)g(sp)s(ecify)f(an)g(installation)i(pre\014x)150
19582677 y(other)34 b(than)g Ft(/usr/local)d Fu(b)m(y)j(giving)h
19583Ft(configure)d Fu(the)i(option)g Ft(--prefix=)p Fj(PATH)p
19584Fu(,)e(or)i(b)m(y)g(sp)s(ecifying)150 787 y(a)h(v)-5
19585b(alue)34 b(for)h(the)f Ft(prefix)f Fu(`)p Ft(make)p
19586Fu(')g(v)-5 b(ariable)35 b(when)f(running)e(`)p Ft(make)e(install)p
19587Fu(')i(\(e.g.,)37 b(`)p Ft(make)30 b(install)150 897
19588y(prefix=)p Fj(PATH)p Fu('\).)35 b(The)21 b Ft(prefix)f
19589Fu(v)-5 b(ariable)22 b(pro)m(vides)g(a)f(default)h(for)f
19590Ft(exec_prefix)e Fu(and)i(other)g(v)-5 b(ariables)150
195911006 y(used)30 b(when)f(installing)i(bash.)275 1159 y(Y)-8
19592b(ou)71 b(can)h(sp)s(ecify)f(separate)h(installation)h(pre\014xes)d
19593(for)h(arc)m(hitecture-sp)s(eci\014c)i(\014les)f(and)150
195941268 y(arc)m(hitecture-indep)s(enden)m(t)44 b(\014les.)80
19595b(If)43 b(y)m(ou)h(giv)m(e)h Ft(configure)c Fu(the)j(option)g
19596Ft(--exec-prefix=)p Fj(PATH)p Fu(,)150 1378 y(`)p Ft(make)29
19597b(install)p Fu(')63 b(will)h(use)f Fr(P)-8 b(A)g(TH)75
19598b Fu(as)64 b(the)g(pre\014x)e(for)i(installing)h(programs)e(and)h
19599(libraries.)150 1488 y(Do)s(cumen)m(tation)32 b(and)e(other)h(data)g
19600(\014les)f(will)h(still)g(use)f(the)h(regular)f(pre\014x.)275
196011640 y(If)35 b(y)m(ou)i(w)m(ould)e(lik)m(e)j(to)e(c)m(hange)i(the)e
19602(installation)i(lo)s(cations)f(for)f(a)h(single)f(run,)h(y)m(ou)f(can)g
19603(sp)s(ecify)150 1750 y(these)28 b(v)-5 b(ariables)27
19604b(as)h(argumen)m(ts)f(to)h Ft(make)p Fu(:)38 b(`)p Ft(make)29
19605b(install)g(exec_prefix=/)p Fu(')23 b(will)28 b(install)g
19606Ft(bash)e Fu(and)150 1859 y Ft(bashbug)i Fu(in)m(to)k
19607Ft(/bin)d Fu(instead)i(of)f(the)h(default)f Ft(/usr/local/bin)p
19608Fu(.)275 2012 y(If)43 b(y)m(ou)i(w)m(an)m(t)g(to)g(see)f(the)h(\014les)
19609f(bash)f(will)i(install)g(and)e(where)h(it)g(will)h(install)g(them)f
19610(without)150 2122 y(c)m(hanging)35 b(an)m(ything)f(on)f(y)m(our)h
19611(system,)h(sp)s(ecify)e(the)h(v)-5 b(ariable)35 b Ft(DESTDIR)d
19612Fu(as)i(an)f(argumen)m(t)h(to)h Ft(make)p Fu(.)150 2231
19613y(Its)29 b(v)-5 b(alue)29 b(should)f(b)s(e)g(the)h(absolute)h
19614(directory)f(path)g(y)m(ou'd)g(lik)m(e)h(to)g(use)e(as)i(the)f(ro)s(ot)
19615g(of)g(y)m(our)g(sample)150 2341 y(installation)j(tree.)42
19616b(F)-8 b(or)31 b(example,)390 2493 y Ft(mkdir)46 b(/fs1/bash-install)
19617390 2603 y(make)h(install)e(DESTDIR=/fs1/bash-install)150
196182756 y Fu(will)37 b(install)g Ft(bash)e Fu(in)m(to)j
19619Ft(/fs1/bash-install/usr/l)o(ocal)o(/bin)o(/ba)o(sh)p
19620Fu(,)32 b(the)37 b(do)s(cumen)m(tation)g(in)m(to)150
196212865 y(directories)44 b(within)e Ft(/fs1/bash-install/usr/l)o(ocal)o
19622(/sha)o(re)p Fu(,)e(the)i(example)i(loadable)g(builtins)150
196232975 y(in)m(to)35 b Ft(/fs1/bash-install/usr/loc)o(al/l)o(ib/b)o(ash)o
19624Fu(,)30 b(and)k(so)g(on.)53 b(Y)-8 b(ou)34 b(can)h(use)f(the)h(usual)e
19625Ft(exec_)150 3084 y(prefix)c Fu(and)g Ft(prefix)g Fu(v)-5
19626b(ariables)31 b(to)g(alter)h(the)e(directory)h(paths)f(b)s(eneath)g
19627(the)h(v)-5 b(alue)30 b(of)h Ft(DESTDIR)p Fu(.)275 3237
19628y(The)24 b(GNU)i(Mak)m(e\014le)h(standards)d(pro)m(vide)i(a)f(more)h
19629(complete)g(description)g(of)f(these)h(v)-5 b(ariables)26
19630b(and)150 3346 y(their)k(e\013ects.)150 3614 y Fs(10.5)68
19631b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)150 3774
19632y Fu(There)f(ma)m(y)g(b)s(e)f(some)i(features)f Ft(configure)e
19633Fu(can)i(not)g(\014gure)g(out)g(automatically)-8 b(,)52
19634b(but)44 b(need)h(to)150 3883 y(determine)26 b(b)m(y)g(the)g(t)m(yp)s
19635(e)g(of)g(host)g(Bash)g(will)g(run)f(on.)39 b(Usually)26
a2851804 19636b Ft(configure)d Fu(can)k(\014gure)e(that)h(out,)i(but)150
e59452c7 196373993 y(if)g(it)g(prin)m(ts)f(a)h(message)g(sa)m(ying)h(it)f(can)g(not)f
a2851804 19638(guess)h(the)g(host)f(t)m(yp)s(e,)i(giv)m(e)g(it)f(the)g
e59452c7 19639Ft(--host=TYPE)c Fu(option.)150 4103 y(`)p Ft(TYPE)p
a2851804
CR
19640Fu(')29 b(can)h(either)g(b)s(e)g(a)g(short)f(name)h(for)f(the)h(system)
19641g(t)m(yp)s(e,)h(suc)m(h)e(as)h(`)p Ft(sun4)p Fu(',)g(or)f(a)h
e59452c7 19642(canonical)i(name)150 4212 y(with)e(three)h(\014elds:)40
a2851804 19643b(`)p Ft(CPU-COMPANY-SYSTEM)p Fu(')26 b(\(e.g.,)32 b(`)p
e59452c7 19644Ft(i386-unknown-freebsd4.2)p Fu('\).)275 4365 y(See)e(the)h(\014le)f
a2851804 19645Ft(support/config.sub)c Fu(for)k(the)g(p)s(ossible)g(v)-5
e59452c7
CR
19646b(alues)31 b(of)f(eac)m(h)i(\014eld.)150 4633 y Fs(10.6)68
19647b(Sharing)45 b(Defaults)150 4792 y Fu(If)d(y)m(ou)i(w)m(an)m(t)g(to)f
6e51e0d0
CR
19648(set)h(default)f(v)-5 b(alues)43 b(for)g Ft(configure)d
19649Fu(scripts)j(to)h(share,)i(y)m(ou)d(can)g(create)i(a)e(site)150
e59452c7 196504902 y(shell)48 b(script)f(called)i Ft(config.site)44
6e51e0d0
CR
19651b Fu(that)k(giv)m(es)h(default)f(v)-5 b(alues)48 b(for)f(v)-5
19652b(ariables)48 b(lik)m(e)h Ft(CC)p Fu(,)j Ft(cache_)150
e59452c7 196535011 y(file)p Fu(,)c(and)d Ft(prefix)p Fu(.)85 b Ft(configure)43
6e51e0d0 19654b Fu(lo)s(oks)j(for)f Ft(PREFIX/share/config.site)39
e59452c7 19655b Fu(if)46 b(it)g(exists,)k(then)150 5121 y Ft(PREFIX/etc/config.site)
6e51e0d0
CR
1965624 b Fu(if)31 b(it)g(exists.)42 b(Or,)30 b(y)m(ou)h(can)g(set)g(the)g
19657Ft(CONFIG_SITE)c Fu(en)m(vironmen)m(t)k(v)-5 b(ari-)150
e59452c7 196585230 y(able)40 b(to)g(the)g(lo)s(cation)h(of)e(the)h(site)g(script.)67
6e51e0d0 19659b(A)40 b(w)m(arning:)58 b(the)40 b(Bash)g Ft(configure)c
e59452c7
CR
19660Fu(lo)s(oks)k(for)f(a)h(site)150 5340 y(script,)31 b(but)e(not)i(all)g
19661Ft(configure)d Fu(scripts)i(do.)p eop end
fffe80d4
CR
19662%%Page: 160 166
19663TeXDict begin 160 165 bop 150 -116 a Fu(Chapter)30 b(10:)41
19664b(Installing)31 b(Bash)2356 b(160)150 299 y Fs(10.7)68
e59452c7 19665b(Op)t(eration)46 b(Con)l(trols)150 458 y Ft(configure)28
6e51e0d0 19666b Fu(recognizes)k(the)e(follo)m(wing)i(options)f(to)g(con)m(trol)h(ho)m
e59452c7
CR
19667(w)e(it)h(op)s(erates.)150 606 y Ft(--cache-file=)p Fj(file)630
19668716 y Fu(Use)d(and)g(sa)m(v)m(e)h(the)f(results)g(of)g(the)h(tests)f
19669(in)g Fr(\014le)33 b Fu(instead)28 b(of)h Ft(./config.cache)p
19670Fu(.)36 b(Set)28 b Fr(\014le)630 825 y Fu(to)j Ft(/dev/null)d
19671Fu(to)j(disable)g(cac)m(hing,)h(for)e(debugging)g Ft(configure)p
19672Fu(.)150 973 y Ft(--help)192 b Fu(Prin)m(t)30 b(a)h(summary)e(of)i(the)
19673f(options)h(to)g Ft(configure)p Fu(,)d(and)i(exit.)150
196741121 y Ft(--quiet)150 1230 y(--silent)150 1340 y(-q)384
19675b Fu(Do)31 b(not)g(prin)m(t)f(messages)h(sa)m(ying)g(whic)m(h)g(c)m
19676(hec)m(ks)g(are)g(b)s(eing)f(made.)150 1487 y Ft(--srcdir=)p
19677Fj(dir)630 1597 y Fu(Lo)s(ok)i(for)g(the)g(Bash)g(source)h(co)s(de)f
19678(in)g(directory)g Fr(dir)p Fu(.)45 b(Usually)33 b Ft(configure)c
19679Fu(can)j(deter-)630 1707 y(mine)e(that)h(directory)g(automatically)-8
19680b(.)150 1854 y Ft(--version)630 1964 y Fu(Prin)m(t)29
19681b(the)h(v)m(ersion)g(of)g(Auto)s(conf)f(used)g(to)h(generate)h(the)f
19682Ft(configure)d Fu(script,)j(and)f(exit.)275 2112 y Ft(configure)34
19683b Fu(also)k(accepts)g(some)g(other,)h(not)e(widely)g(used,)h(b)s
19684(oilerplate)g(options.)61 b(`)p Ft(configure)150 2221
19685y(--help)p Fu(')29 b(prin)m(ts)h(the)g(complete)i(list.)150
196862450 y Fs(10.8)68 b(Optional)46 b(F)-11 b(eatures)150
196872610 y Fu(The)29 b(Bash)h Ft(configure)d Fu(has)j(a)g(n)m(um)m(b)s(er)f
19688(of)h Ft(--enable-)p Fj(feature)25 b Fu(options,)30 b(where)g
19689Fr(feature)35 b Fu(indicates)150 2719 y(an)e(optional)i(part)e(of)h
19690(Bash.)50 b(There)33 b(are)g(also)i(sev)m(eral)g Ft(--with-)p
19691Fj(package)29 b Fu(options,)35 b(where)e Fr(pac)m(k)-5
19692b(age)150 2829 y Fu(is)32 b(something)h(lik)m(e)h(`)p
19693Ft(bash-malloc)p Fu(')c(or)i(`)p Ft(purify)p Fu('.)45
19694b(T)-8 b(o)33 b(turn)e(o\013)i(the)f(default)h(use)f(of)g(a)h(pac)m(k)
19695-5 b(age,)35 b(use)150 2939 y Ft(--without-)p Fj(package)p
19696Fu(.)46 b(T)-8 b(o)34 b(con\014gure)g(Bash)g(without)f(a)i(feature)f
19697(that)g(is)g(enabled)g(b)m(y)f(default,)i(use)150 3048
19698y Ft(--disable-)p Fj(feature)p Fu(.)275 3177 y(Here)28
19699b(is)g(a)h(complete)g(list)g(of)f(the)h Ft(--enable-)c
19700Fu(and)j Ft(--with-)e Fu(options)i(that)h(the)f(Bash)g
19701Ft(configure)150 3286 y Fu(recognizes.)150 3434 y Ft(--with-afs)630
197023544 y Fu(De\014ne)j(if)f(y)m(ou)h(are)f(using)g(the)h(Andrew)e(File)j
19703(System)e(from)g(T)-8 b(ransarc.)150 3691 y Ft(--with-bash-malloc)630
197043801 y Fu(Use)34 b(the)g(Bash)h(v)m(ersion)f(of)g Ft(malloc)e
19705Fu(in)i(the)g(directory)h Ft(lib/malloc)p Fu(.)48 b(This)34
19706b(is)g(not)g(the)630 3911 y(same)e Ft(malloc)e Fu(that)j(app)s(ears)e
19707(in)g Fm(gnu)h Fu(lib)s(c,)g(but)f(an)h(older)f(v)m(ersion)i
19708(originally)g(deriv)m(ed)630 4020 y(from)f(the)h(4.2)g
19709Fm(bsd)f Ft(malloc)p Fu(.)45 b(This)31 b Ft(malloc)g
19710Fu(is)i(v)m(ery)f(fast,)i(but)e(w)m(astes)h(some)g(space)g(on)630
197114130 y(eac)m(h)j(allo)s(cation.)58 b(This)34 b(option)i(is)f(enabled)g
19712(b)m(y)g(default.)56 b(The)34 b Ft(NOTES)g Fu(\014le)h(con)m(tains)i(a)
19713630 4239 y(list)29 b(of)f(systems)f(for)h(whic)m(h)g(this)g(should)e(b)
19714s(e)i(turned)e(o\013,)j(and)f Ft(configure)d Fu(disables)j(this)630
197154349 y(option)j(automatically)i(for)d(a)h(n)m(um)m(b)s(er)e(of)i
19716(systems.)150 4497 y Ft(--with-curses)630 4606 y Fu(Use)h(the)h(curses)
967625cd 19717e(library)h(instead)g(of)h(the)f(termcap)g(library)-8
e59452c7 19718b(.)46 b(This)32 b(should)f(b)s(e)g(supplied)630 4716
6e51e0d0 19719y(if)f(y)m(our)h(system)f(has)g(an)h(inadequate)g(or)f(incomplete)i
e59452c7
CR
19720(termcap)e(database.)150 4863 y Ft(--with-gnu-malloc)630
197214973 y Fu(A)g(synon)m(ym)g(for)g Ft(--with-bash-malloc)p
19722Fu(.)150 5121 y Ft(--with-installed-readlin)o(e[=)p Fj(P)o(REFI)o(X)p
19723Ft(])630 5230 y Fu(De\014ne)c(this)f(to)h(mak)m(e)h(Bash)f(link)f(with)
6e51e0d0 19724g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)630
e59452c7 197255340 y(than)f(the)h(v)m(ersion)g(in)f Ft(lib/readline)p
6e51e0d0 19726Fu(.)36 b(This)25 b(w)m(orks)g(only)h(with)f(Readline)h(5.0)h(and)e
e59452c7 19727(later)p eop end
fffe80d4
CR
19728%%Page: 161 167
19729TeXDict begin 161 166 bop 150 -116 a Fu(Chapter)30 b(10:)41
19730b(Installing)31 b(Bash)2356 b(161)630 299 y(v)m(ersions.)46
e59452c7
CR
19731b(If)32 b Fr(PREFIX)41 b Fu(is)32 b Ft(yes)f Fu(or)i(not)f(supplied,)f
19732Ft(configure)f Fu(uses)i(the)g(v)-5 b(alues)32 b(of)h(the)630
19733408 y(mak)m(e)28 b(v)-5 b(ariables)29 b Ft(includedir)24
19734b Fu(and)j Ft(libdir)p Fu(,)g(whic)m(h)g(are)h(sub)s(directories)f(of)g
19735Ft(prefix)f Fu(b)m(y)630 518 y(default,)44 b(to)d(\014nd)f(the)h
19736(installed)g(v)m(ersion)h(of)f(Readline)g(if)g(it)g(is)g(not)g(in)g
19737(the)g(standard)630 628 y(system)35 b(include)f(and)g(library)g
19738(directories.)54 b(If)34 b Fr(PREFIX)43 b Fu(is)35 b
19739Ft(no)p Fu(,)g(Bash)f(links)h(with)f(the)630 737 y(v)m(ersion)42
19740b(in)e Ft(lib/readline)p Fu(.)70 b(If)40 b Fr(PREFIX)51
19741b Fu(is)41 b(set)g(to)h(an)m(y)g(other)f(v)-5 b(alue,)44
19742b Ft(configure)630 847 y Fu(treats)27 b(it)g(as)f(a)h(directory)g
19743(pathname)f(and)f(lo)s(oks)i(for)f(the)g(installed)h(v)m(ersion)g(of)f
19744(Readline)630 956 y(in)34 b(sub)s(directories)f(of)h(that)h(directory)g
19745(\(include)f(\014les)g(in)g Fr(PREFIX)9 b Fu(/)p Ft(include)32
19746b Fu(and)i(the)630 1066 y(library)c(in)g Fr(PREFIX)9
19747b Fu(/)p Ft(lib)p Fu(\).)150 1236 y Ft(--with-libintl-prefix[=)p
19748Fj(P)o(REFI)o(X)p Ft(])630 1345 y Fu(De\014ne)45 b(this)f(to)h(mak)m(e)
19749g(Bash)g(link)f(with)g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g
19750(the)f(libin)m(tl)630 1455 y(library)30 b(instead)h(ofthe)f(v)m(ersion)
19751h(in)f Ft(lib/intl)p Fu(.)150 1625 y Ft(--with-libiconv-prefix[=)o
19752Fj(PREF)o(IX)p Ft(])630 1734 y Fu(De\014ne)g(this)g(to)g(mak)m(e)h
3c5683a4 19753(Bash)f(lo)s(ok)g(for)g(libicon)m(v)h(in)e Fr(PREFIX)39
e59452c7 19754b Fu(instead)30 b(of)g(the)g(standard)630 1844 y(system)h(lo)s
3c5683a4 19755(cations.)42 b(There)30 b(is)g(no)g(v)m(ersion)h(included)f(with)g
e59452c7 19756(Bash.)150 2014 y Ft(--enable-minimal-config)630 2123
3c5683a4 19757y Fu(This)23 b(pro)s(duces)f(a)i(shell)g(with)f(minimal)h(features,)h
e59452c7
CR
19758(close)g(to)f(the)g(historical)h(Bourne)e(shell.)275
197592298 y(There)35 b(are)i(sev)m(eral)h Ft(--enable-)c Fu(options)j(that)g
19760(alter)g(ho)m(w)g(Bash)f(is)h(compiled,)i(link)m(ed,)f(and)e(in-)150
197612408 y(stalled,)c(rather)e(than)g(c)m(hanging)h(run-time)f(features.)
19762150 2583 y Ft(--enable-largefile)630 2692 y Fu(Enable)36
19763b(supp)s(ort)f(for)g(large)j(\014les)e(\()p Ft(http:)5
19764b(/)g(/)g(www)g(.)g(unix)g(.)g(org)t(/)g(v)o(ersi)o(on2)t(/)g(w)o(hats)
19765o(new)t(/)630 2802 y(lfs20mar)h(.)g(html)p Fu(\))35 b(if)j(the)g(op)s
19766(erating)g(system)g(requires)f(sp)s(ecial)i(compiler)f(options)g(to)630
197672911 y(build)33 b(programs)g(whic)m(h)h(can)g(access)h(large)g
19768(\014les.)51 b(This)33 b(is)h(enabled)g(b)m(y)g(default,)h(if)f(the)630
197693021 y(op)s(erating)d(system)f(pro)m(vides)h(large)g(\014le)g(supp)s
19770(ort.)150 3191 y Ft(--enable-profiling)630 3300 y Fu(This)g(builds)f(a)
3c5683a4 19771i(Bash)g(binary)f(that)h(pro)s(duces)e(pro\014ling)h(information)h(to)h
e59452c7
CR
19772(b)s(e)d(pro)s(cessed)630 3410 y(b)m(y)g Ft(gprof)f Fu(eac)m(h)j(time)f
19773(it)g(is)f(executed.)150 3580 y Ft(--enable-separate-helpfi)o(les)630
197743689 y Fu(Use)i(external)h(\014les)f(for)g(the)g(do)s(cumen)m(tation)h
3c5683a4 19775(displa)m(y)m(ed)f(b)m(y)g(the)g Ft(help)f Fu(builtin)h(instead)630
e59452c7
CR
197763799 y(of)f(storing)f(the)h(text)g(in)m(ternally)-8 b(.)150
197773969 y Ft(--enable-static-link)630 4078 y Fu(This)37
3c5683a4
CR
19778b(causes)h(Bash)f(to)h(b)s(e)f(link)m(ed)h(statically)-8
19779b(,)43 b(if)37 b Ft(gcc)g Fu(is)g(b)s(eing)g(used.)61
e59452c7
CR
19780b(This)37 b(could)h(b)s(e)630 4188 y(used)30 b(to)h(build)e(a)i(v)m
19781(ersion)g(to)g(use)f(as)g(ro)s(ot's)h(shell.)275 4363
6e51e0d0 19782y(The)f(`)p Ft(minimal-config)p Fu(')d(option)k(can)g(b)s(e)f(used)f
37c41ab1 19783(to)j(disable)e(all)i(of)f(the)f(follo)m(wing)i(options,)g(but)d(it)150
e59452c7 197844472 y(is)h(pro)s(cessed)g(\014rst,)g(so)h(individual)f(options)g(ma)m
6e51e0d0 19785(y)h(b)s(e)f(enabled)g(using)g(`)p Ft(enable-)p Fj(feature)p
e59452c7
CR
19786Fu('.)275 4617 y(All)133 b(of)g(the)g(follo)m(wing)i(options)e(except)h
19787(for)f(`)p Ft(alt-array-implementation)o Fu(',)150 4727
19788y(`)p Ft(disabled-builtins)p Fu(',)212 b(`)p Ft(direxpand-default)p
19789Fu(',)h(`)p Ft(strict-posix-default)p Fu(',)f(and)150
197904836 y(`)p Ft(xpg-echo-default)p Fu(')28 b(are)33 b(enabled)f(b)m(y)g
19791(default,)h(unless)e(the)i(op)s(erating)f(system)h(do)s(es)e(not)i(pro)
19792m(vide)150 4946 y(the)e(necessary)f(supp)s(ort.)150 5121
19793y Ft(--enable-alias)630 5230 y Fu(Allo)m(w)41 b(alias)g(expansion)f
19794(and)f(include)g(the)h Ft(alias)f Fu(and)g Ft(unalias)e
19795Fu(builtins)j(\(see)g(Sec-)630 5340 y(tion)31 b(6.6)g([Aliases],)i
19796(page)e(99\).)p eop end
fffe80d4
CR
19797%%Page: 162 168
19798TeXDict begin 162 167 bop 150 -116 a Fu(Chapter)30 b(10:)41
19799b(Installing)31 b(Bash)2356 b(162)150 299 y Ft
e59452c7
CR
19800(--enable-alt-array-imple)o(ment)o(atio)o(n)630 408 y
19801Fu(This)33 b(builds)g(bash)g(using)h(an)g(alternate)i(implemen)m
19802(tation)f(of)g(arra)m(ys)f(\(see)h(Section)g(6.7)630
19803518 y([Arra)m(ys],)47 b(page)d(99\))h(that)f(pro)m(vides)f(faster)h
19804(access)g(at)g(the)g(exp)s(ense)f(of)g(using)g(more)630
19805628 y(memory)30 b(\(sometimes)i(man)m(y)e(times)h(more,)g(dep)s(ending)
19806e(on)h(ho)m(w)h(sparse)f(an)g(arra)m(y)h(is\).)150 774
19807y Ft(--enable-arith-for-comma)o(nd)630 883 y Fu(Include)21
19808b(supp)s(ort)g(for)g(the)i(alternate)g(form)f(of)g(the)g
19809Ft(for)f Fu(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
19810993 y(C)30 b(language)i Ft(for)d Fu(statemen)m(t)j(\(see)g(Section)f
19811(3.2.5.1)i([Lo)s(oping)d(Constructs],)h(page)g(11\).)150
198121139 y Ft(--enable-array-variables)630 1249 y Fu(Include)h(supp)s(ort)g
37c41ab1 19813(for)h(one-dimensional)h(arra)m(y)f(shell)h(v)-5 b(ariables)33
e59452c7
CR
19814b(\(see)h(Section)g(6.7)h([Ar-)630 1358 y(ra)m(ys],)c(page)g(99\).)150
198151504 y Ft(--enable-bang-history)630 1614 y Fu(Include)36
6e51e0d0 19816b(supp)s(ort)f(for)h Ft(csh)p Fu(-lik)m(e)h(history)g(substitution)f
e59452c7 19817(\(see)h(Section)g(9.3)h([History)f(In-)630 1724 y(teraction],)c(page)e
fffe80d4 19818(153\).)150 1870 y Ft(--enable-brace-expansion)630 1979
6e51e0d0
CR
19819y Fu(Include)40 b Ft(csh)p Fu(-lik)m(e)h(brace)f(expansion)g(\()h
19820Ft(b{a,b}c)d Fq(7!)i Ft(bac)30 b(bbc)39 b Fu(\).)71 b(See)40
e59452c7
CR
19821b(Section)h(3.5.1)630 2089 y([Brace)32 b(Expansion],)e(page)h(24,)h
19822(for)e(a)g(complete)i(description.)150 2235 y Ft
19823(--enable-casemod-attribu)o(tes)630 2345 y Fu(Include)37
09767ff0 19824b(supp)s(ort)g(for)g(case-mo)s(difying)i(attributes)g(in)e(the)h
e59452c7
CR
19825Ft(declare)e Fu(builtin)i(and)f(as-)630 2454 y(signmen)m(t)43
19826b(statemen)m(ts.)78 b(V)-8 b(ariables)44 b(with)e(the)g
19827Ft(uppercase)e Fu(attribute,)46 b(for)c(example,)630
198282564 y(will)31 b(ha)m(v)m(e)g(their)g(v)-5 b(alues)30
19829b(con)m(v)m(erted)i(to)f(upp)s(ercase)f(up)s(on)f(assignmen)m(t.)150
198302710 y Ft(--enable-casemod-expansi)o(on)630 2819 y Fu(Include)h(supp)s
19831(ort)e(for)i(case-mo)s(difying)i(w)m(ord)e(expansions.)150
198322966 y Ft(--enable-command-timing)630 3075 y Fu(Include)43
19833b(supp)s(ort)f(for)h(recognizing)i Ft(time)e Fu(as)g(a)h(reserv)m(ed)g
19834(w)m(ord)f(and)g(for)h(displa)m(ying)630 3185 y(timing)37
19835b(statistics)h(for)e(the)g(pip)s(eline)g(follo)m(wing)i
19836Ft(time)d Fu(\(see)i(Section)g(3.2.3)h([Pip)s(elines],)630
198373294 y(page)j(10\).)70 b(This)40 b(allo)m(ws)h(pip)s(elines)e(as)h(w)m
19838(ell)h(as)f(shell)h(builtins)e(and)g(functions)h(to)h(b)s(e)630
198393404 y(timed.)150 3550 y Ft(--enable-cond-command)630
198403660 y Fu(Include)33 b(supp)s(ort)f(for)i(the)g Ft([[)f
19841Fu(conditional)i(command.)51 b(\(see)34 b(Section)h(3.2.5.2)h([Condi-)
19842630 3769 y(tional)c(Constructs],)e(page)h(12\).)150 3915
19843y Ft(--enable-cond-regexp)630 4025 y Fu(Include)k(supp)s(ort)f(for)i
3c5683a4 19844(matc)m(hing)h Fm(posix)e Fu(regular)h(expressions)g(using)f(the)h(`)p
e59452c7 19845Ft(=~)p Fu(')g(binary)630 4134 y(op)s(erator)25 b(in)f(the)h
d37a4722 19846Ft([[)f Fu(conditional)h(command.)39 b(\(see)25 b(Section)h(3.2.5.2)h
e59452c7
CR
19847([Conditional)e(Con-)630 4244 y(structs],)31 b(page)g(12\).)150
198484390 y Ft(--enable-coprocesses)630 4500 y Fu(Include)23
6e51e0d0 19849b(supp)s(ort)f(for)i(copro)s(cesses)g(and)f(the)h Ft(coproc)e
d37a4722 19850Fu(reserv)m(ed)i(w)m(ord)g(\(see)h(Section)f(3.2.3)630
e59452c7
CR
198514609 y([Pip)s(elines],)31 b(page)g(10\).)150 4756 y Ft
19852(--enable-debugger)630 4865 y Fu(Include)f(supp)s(ort)e(for)i(the)h
3c5683a4 19853(bash)f(debugger)g(\(distributed)g(separately\).)150
e59452c7 198545011 y Ft(--enable-dev-fd-stat-bro)o(ken)630 5121 y Fu(If)c(calling)j
3c5683a4
CR
19855Ft(stat)d Fu(on)g(/dev/fd/)p Fr(N)38 b Fu(returns)25
19856b(di\013eren)m(t)j(results)f(than)f(calling)j Ft(fstat)c
e59452c7 19857Fu(on)i(\014le)630 5230 y(descriptor)g Fr(N)p Fu(,)i(supply)c(this)j
3c5683a4 19858(option)g(to)g(enable)f(a)h(w)m(ork)-5 b(around.)39 b(This)27
e59452c7
CR
19859b(has)g(implications)630 5340 y(for)j(conditional)i(commands)e(that)h
19860(test)g(\014le)g(attributes.)p eop end
fffe80d4
CR
19861%%Page: 163 169
19862TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(10:)41
19863b(Installing)31 b(Bash)2356 b(163)150 299 y Ft
e59452c7
CR
19864(--enable-direxpand-defau)o(lt)630 408 y Fu(Cause)53
19865b(the)g Ft(direxpand)d Fu(shell)j(option)h(\(see)g(Section)f(4.3.2)i
19866([The)e(Shopt)f(Builtin],)630 518 y(page)29 b(70\))g(to)f(b)s(e)f
19867(enabled)h(b)m(y)g(default)g(when)e(the)i(shell)g(starts.)41
19868b(It)27 b(is)h(normally)g(disabled)630 628 y(b)m(y)i(default.)150
19869807 y Ft(--enable-directory-stack)630 917 y Fu(Include)j(supp)s(ort)g
19870(for)h(a)g Ft(csh)p Fu(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
19871Ft(pushd)p Fu(,)f Ft(popd)p Fu(,)g(and)f Ft(dirs)630
198721026 y Fu(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
19873(k],)g(page)f(101\).)150 1205 y Ft(--enable-disabled-builti)o(ns)630
198741315 y Fu(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
19875(ed)i(via)f(`)p Ft(builtin)29 b(xxx)p Fu(')37 b(ev)m(en)j(after)f
19876Ft(xxx)e Fu(has)630 1425 y(b)s(een)31 b(disabled)g(using)g(`)p
6e51e0d0 19877Ft(enable)d(-n)i(xxx)p Fu('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
e59452c7 19878(Builtins],)i(page)f(54,)630 1534 y(for)e(details)i(of)e(the)h
6e51e0d0 19879Ft(builtin)d Fu(and)i Ft(enable)e Fu(builtin)i(commands.)150
e59452c7 198801714 y Ft(--enable-dparen-arithmet)o(ic)630 1823 y Fu(Include)42
6e51e0d0 19881b(supp)s(ort)f(for)h(the)h Ft(\(\(...)o(\)\))f Fu(command)g(\(see)i
e59452c7
CR
19882(Section)f(3.2.5.2)i([Conditional)630 1933 y(Constructs],)30
19883b(page)h(12\).)150 2112 y Ft(--enable-extended-glob)630
198842222 y Fu(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
09767ff0 19885(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m(v)m(e)630
e59452c7
CR
198862331 y(under)29 b(Section)i(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i
19887(page)e(36.)150 2511 y Ft(--enable-extended-glob-d)o(efau)o(lt)630
198882620 y Fu(Set)37 b(the)f(default)h(v)-5 b(alue)37 b(of)f(the)h
19889Ft(extglob)d Fu(shell)j(option)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(under)
19890c(Sec-)630 2730 y(tion)d(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(70,)
19891h(to)f(b)s(e)f(enabled.)150 2909 y Ft(--enable-function-import)630
198923019 y Fu(Include)23 b(supp)s(ort)g(for)g(imp)s(orting)h(function)g
8a0829e9 19893(de\014nitions)f(exp)s(orted)h(b)m(y)g(another)g(instance)630
e59452c7
CR
198943128 y(of)31 b(the)f(shell)h(from)f(the)g(en)m(vironmen)m(t.)41
19895b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)150
198963308 y Ft(--enable-glob-asciirange)o(-def)o(ault)630
198973417 y Fu(Set)f(the)f(default)h(v)-5 b(alue)29 b(of)f(the)h
19898Ft(globasciiranges)24 b Fu(shell)29 b(option)g(describ)s(ed)e(ab)s(o)m
19899(v)m(e)j(un-)630 3527 y(der)c(Section)i(4.3.2)h([The)d(Shopt)g
19900(Builtin],)j(page)f(70,)g(to)g(b)s(e)e(enabled.)40 b(This)26
19901b(con)m(trols)i(the)630 3636 y(b)s(eha)m(vior)40 b(of)f(c)m(haracter)i
19902(ranges)f(when)f(used)f(in)i(pattern)f(matc)m(hing)i(brac)m(k)m(et)g
19903(expres-)630 3746 y(sions.)150 3925 y Ft(--enable-help-builtin)630
199044035 y Fu(Include)24 b(the)h Ft(help)f Fu(builtin,)h(whic)m(h)g(displa)
19905m(ys)f(help)h(on)f(shell)h(builtins)f(and)h(v)-5 b(ariables)25
19906b(\(see)630 4144 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f
19907(54\).)150 4324 y Ft(--enable-history)630 4433 y Fu(Include)e(command)g
19908(history)h(and)f(the)h Ft(fc)f Fu(and)g Ft(history)e
19909Fu(builtin)j(commands)f(\(see)h(Sec-)630 4543 y(tion)h(9.1)g([Bash)g
fffe80d4 19910(History)g(F)-8 b(acilities],)34 b(page)d(151\).)150
e59452c7
CR
199114722 y Ft(--enable-job-control)630 4832 y Fu(This)h(enables)i(the)f
19912(job)g(con)m(trol)i(features)e(\(see)i(Chapter)d(7)i([Job)f(Con)m
fffe80d4 19913(trol],)i(page)f(112\),)630 4941 y(if)c(the)h(op)s(erating)g(system)f
e59452c7
CR
19914(supp)s(orts)f(them.)150 5121 y Ft(--enable-multibyte)630
199155230 y Fu(This)g(enables)i(supp)s(ort)d(for)i(m)m(ultib)m(yte)h(c)m
19916(haracters)g(if)f(the)g(op)s(erating)h(system)f(pro)m(vides)630
199175340 y(the)h(necessary)f(supp)s(ort.)p eop end
fffe80d4
CR
19918%%Page: 164 170
19919TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(10:)41
19920b(Installing)31 b(Bash)2356 b(164)150 299 y Ft
e59452c7
CR
19921(--enable-net-redirection)o(s)630 408 y Fu(This)23 b(enables)h(the)g
19922(sp)s(ecial)h(handling)e(of)h(\014lenames)g(of)g(the)g(form)g
19923Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 518 y Fu(and)31
19924b Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)26 b Fu(when)31
19925b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h([Redirec-)630
5e6f45d9
CR
19926628 y(tions],)e(page)g(37\).)150 787 y Ft(--enable-process-substit)o
19927(utio)o(n)630 897 y Fu(This)49 b(enables)i(pro)s(cess)f(substitution)g
e59452c7 19928(\(see)h(Section)g(3.5.6)h([Pro)s(cess)e(Substitution],)630
5e6f45d9
CR
199291006 y(page)31 b(34\))h(if)e(the)h(op)s(erating)f(system)h(pro)m(vides)
19930f(the)h(necessary)g(supp)s(ort.)150 1166 y Ft(--enable-progcomp)630
199311275 y Fu(Enable)d(the)g(programmable)g(completion)i(facilities)g
19932(\(see)f(Section)g(8.6)g([Programmable)630 1385 y(Completion],)i(page)h
fffe80d4 19933(142\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g
5e6f45d9
CR
19934(has)f(no)g(e\013ect.)150 1544 y Ft(--enable-prompt-string-d)o(ecod)o
19935(ing)630 1654 y Fu(T)-8 b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f
e59452c7 19936(a)g(n)m(um)m(b)s(er)e(of)i(bac)m(kslash-escap)s(ed)g(c)m(haracters)i
5e6f45d9 19937(in)d(the)630 1763 y Ft($PS0)p Fu(,)36 b Ft($PS1)p Fu(,)g
e59452c7
CR
19938Ft($PS2)p Fu(,)h(and)e Ft($PS4)f Fu(prompt)h(strings.)57
19939b(See)36 b(Section)h(6.9)g([Con)m(trolling)g(the)630
5e6f45d9
CR
199401873 y(Prompt],)30 b(page)h(103,)h(for)f(a)f(complete)i(list)f(of)g
19941(prompt)e(string)i(escap)s(e)f(sequences.)150 2032 y
19942Ft(--enable-readline)630 2142 y Fu(Include)e(supp)s(ort)f(for)h
e59452c7 19943(command-line)h(editing)g(and)f(history)g(with)g(the)h(Bash)g(v)m
5e6f45d9
CR
19944(ersion)g(of)630 2252 y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8)
19945g([Command)g(Line)g(Editing],)h(page)g(116\).)150 2411
19946y Ft(--enable-restricted)630 2521 y Fu(Include)41 b(supp)s(ort)f(for)i
e59452c7 19947(a)g Fr(restricted)g(shell)p Fu(.)75 b(If)42 b(this)f(is)h(enabled,)j
5e6f45d9 19948(Bash,)g(when)c(called)630 2630 y(as)f Ft(rbash)p Fu(,)h(en)m(ters)f(a)
e59452c7 19949g(restricted)h(mo)s(de.)68 b(See)40 b(Section)h(6.10)g([The)f
5e6f45d9
CR
19950(Restricted)h(Shell],)630 2740 y(page)31 b(104,)h(for)e(a)h
19951(description)f(of)h(restricted)g(mo)s(de.)150 2899 y
19952Ft(--enable-select)630 3009 y Fu(Include)25 b(the)h Ft(select)f
e59452c7 19953Fu(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j(the)e(generation)h
5e6f45d9
CR
19954(of)f(simple)630 3118 y(men)m(us)k(\(see)h(Section)g(3.2.5.2)i
19955([Conditional)e(Constructs],)g(page)g(12\).)150 3278
19956y Ft(--enable-single-help-str)o(ings)630 3387 y Fu(Store)40
3c5683a4
CR
19957b(the)g(text)h(displa)m(y)m(ed)g(b)m(y)e(the)i Ft(help)d
19958Fu(builtin)i(as)g(a)g(single)h(string)f(for)f(eac)m(h)i(help)630
5e6f45d9 199593497 y(topic.)54 b(This)33 b(aids)i(in)f(translating)h(the)g(text)g(to)
e59452c7 19960g(di\013eren)m(t)g(languages.)54 b(Y)-8 b(ou)35 b(ma)m(y)g(need)630
5e6f45d9
CR
199613606 y(to)c(disable)g(this)f(if)g(y)m(our)h(compiler)g(cannot)f(handle)
19962g(v)m(ery)h(long)g(string)f(literals.)150 3766 y Ft
19963(--enable-strict-posix-de)o(faul)o(t)630 3875 y Fu(Mak)m(e)c(Bash)f
3c5683a4 19964Fm(posix)p Fu(-conforman)m(t)g(b)m(y)f(default)h(\(see)g(Section)h
5e6f45d9
CR
19965(6.11)g([Bash)f(POSIX)e(Mo)s(de],)630 3985 y(page)31
19966b(105\).)150 4144 y Ft(--enable-translatable-st)o(ring)o(s)630
199674254 y Fu(Enable)h(supp)s(ort)e(for)i Ft($")p Fj(string)p
19968Ft(")e Fu(translatable)j(strings)f(\(see)h(Section)g(3.1.2.5)h([Lo)s
19969(cale)630 4364 y(T)-8 b(ranslation],)32 b(page)f(7\).)150
199704523 y Ft(--enable-usg-echo-defaul)o(t)630 4633 y Fu(A)f(synon)m(ym)g
19971(for)g Ft(--enable-xpg-echo-default)p Fu(.)150 4792 y
19972Ft(--enable-xpg-echo-defaul)o(t)630 4902 y Fu(Mak)m(e)c(the)f
19973Ft(echo)e Fu(builtin)i(expand)f(bac)m(kslash-escap)s(ed)h(c)m
19974(haracters)h(b)m(y)f(default,)h(without)630 5011 y(requiring)d(the)h
19975Ft(-e)f Fu(option.)39 b(This)23 b(sets)h(the)g(default)g(v)-5
19976b(alue)24 b(of)g(the)g Ft(xpg_echo)e Fu(shell)h(option)630
199775121 y(to)28 b Ft(on)p Fu(,)g(whic)m(h)f(mak)m(es)h(the)g(Bash)f
19978Ft(echo)f Fu(b)s(eha)m(v)m(e)i(more)g(lik)m(e)h(the)e(v)m(ersion)h(sp)s
19979(eci\014ed)f(in)g(the)630 5230 y(Single)35 b(Unix)f(Sp)s
19980(eci\014cation,)i(v)m(ersion)e(3.)53 b(See)35 b(Section)g(4.2)g([Bash)g
19981(Builtins],)h(page)f(54,)630 5340 y(for)30 b(a)h(description)f(of)h
19982(the)f(escap)s(e)h(sequences)g(that)g Ft(echo)e Fu(recognizes.)p
19983eop end
19984%%Page: 165 171
19985TeXDict begin 165 170 bop 150 -116 a Fu(Chapter)30 b(10:)41
19986b(Installing)31 b(Bash)2356 b(165)275 299 y(The)28 b(\014le)i
3c5683a4
CR
19987Ft(config-top.h)c Fu(con)m(tains)31 b(C)d(Prepro)s(cessor)h(`)p
19988Ft(#define)p Fu(')f(statemen)m(ts)j(for)f(options)f(whic)m(h)150
5e6f45d9 19989408 y(are)35 b(not)g(settable)i(from)d Ft(configure)p
3c5683a4 19990Fu(.)51 b(Some)35 b(of)g(these)g(are)h(not)f(mean)m(t)g(to)h(b)s(e)e(c)
5e6f45d9 19991m(hanged;)k(b)s(ew)m(are)d(of)150 518 y(the)h(consequences)g(if)f(y)m
3c5683a4 19992(ou)h(do.)55 b(Read)36 b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e
5e6f45d9
CR
19993(eac)m(h)i(de\014nition)e(for)g(more)150 628 y(information)c(ab)s(out)f
19994(its)h(e\013ect.)p eop end
19995%%Page: 166 172
19996TeXDict begin 166 171 bop 3614 -116 a Fu(166)150 299
037a8b7f
CR
19997y Fp(App)t(endix)52 b(A)81 b(Rep)t(orting)53 b(Bugs)150
19998533 y Fu(Please)33 b(rep)s(ort)e(all)h(bugs)f(y)m(ou)h(\014nd)e(in)i
19999(Bash.)44 b(But)32 b(\014rst,)g(y)m(ou)g(should)e(mak)m(e)j(sure)e
20000(that)h(it)g(really)h(is)f(a)150 643 y(bug,)d(and)g(that)h(it)g(app)s
20001(ears)f(in)g(the)h(latest)h(v)m(ersion)f(of)g(Bash.)40
20002b(The)29 b(latest)j(v)m(ersion)e(of)f(Bash)h(is)f(alw)m(a)m(ys)150
e59452c7
CR
20003752 y(a)m(v)-5 b(ailable)43 b(for)d(FTP)g(from)g Ft(ftp:)8
20004b(/)g(/)g(ftp)g(.)g(gnu)g(.)g(org)g(/)g(pub)g(/)g(gnu)g(/)g(bash)g(/)45
20005b Fu(and)40 b(from)g Ft(http:)8 b(/)g(/)g(git)g(.)150
20006862 y(savannah.gnu.org/cgit/ba)o(sh.g)o(it/s)o(nap)o(shot)o(/bas)o(h-m)
20007o(aste)o(r.ta)o(r.g)o(z)p Fu(.)275 996 y(Once)41 b(y)m(ou)g(ha)m(v)m(e)
20008h(determined)f(that)h(a)f(bug)g(actually)h(exists,)j(use)c(the)g
20009Ft(bashbug)e Fu(command)i(to)150 1106 y(submit)25 b(a)h(bug)g(rep)s
20010(ort.)38 b(If)26 b(y)m(ou)g(ha)m(v)m(e)h(a)f(\014x,)h(y)m(ou)f(are)g
20011(encouraged)h(to)f(mail)h(that)f(as)g(w)m(ell!)40 b(Suggestions)150
200121215 y(and)j(`philosophical')i(bug)e(rep)s(orts)f(ma)m(y)j(b)s(e)e
20013(mailed)h(to)g Ft(bug-bash@gnu)11 b(.)g(org)39 b Fu(or)k(p)s(osted)g
20014(to)i(the)150 1325 y(Usenet)31 b(newsgroup)e Ft(gnu.bash.bug)p
20015Fu(.)275 1460 y(All)i(bug)e(rep)s(orts)h(should)f(include:)225
200161594 y Fq(\017)60 b Fu(The)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(of)h
20017(Bash.)225 1729 y Fq(\017)60 b Fu(The)30 b(hardw)m(are)g(and)g(op)s
20018(erating)g(system.)225 1863 y Fq(\017)60 b Fu(The)30
20019b(compiler)h(used)e(to)i(compile)h(Bash.)225 1998 y Fq(\017)60
6e51e0d0 20020b Fu(A)30 b(description)h(of)f(the)h(bug)f(b)s(eha)m(viour.)225
e59452c7 200212132 y Fq(\017)60 b Fu(A)30 b(short)h(script)f(or)g(`recip)s(e')h(whic)
37c41ab1 20022m(h)f(exercises)i(the)e(bug)g(and)g(ma)m(y)h(b)s(e)f(used)f(to)i(repro)
e59452c7 20023s(duce)e(it.)150 2291 y Ft(bashbug)d Fu(inserts)i(the)h(\014rst)f
37c41ab1 20024(three)g(items)h(automatically)i(in)m(to)f(the)e(template)i(it)f(pro)m
e59452c7
CR
20025(vides)f(for)g(\014ling)h(a)150 2401 y(bug)h(rep)s(ort.)275
200262535 y(Please)h(send)f(all)h(rep)s(orts)f(concerning)g(this)h(man)m
6e51e0d0 20027(ual)f(to)h Ft(bug-bash@gnu.org)p Fu(.)p eop end
5e6f45d9
CR
20028%%Page: 167 173
20029TeXDict begin 167 172 bop 3614 -116 a Fu(167)150 141
037a8b7f
CR
20030y Fp(App)t(endix)58 b(B)81 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13
20031b(rom)54 b(The)g(Bourne)1088 299 y(Shell)150 530 y Fu(Bash)26
c302751c
CR
20032b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f
20033(and)g(v)-5 b(ariable)27 b(expansion,)g(redirec-)150
20034640 y(tion,)i(and)e(quoting)g(as)h(the)g(Bourne)f(Shell.)40
6e51e0d0 20035b(Bash)27 b(uses)g(the)h Fm(posix)f Fu(standard)f(as)i(the)g(sp)s
c302751c
CR
20036(eci\014cation)g(of)150 749 y(ho)m(w)34 b(these)h(features)g(are)g(to)g
20037(b)s(e)f(implemen)m(ted.)53 b(There)34 b(are)h(some)g(di\013erences)g
20038(b)s(et)m(w)m(een)g(the)g(tradi-)150 859 y(tional)e(Bourne)e(shell)h
ac18b312
CR
20039(and)f(Bash;)i(this)f(section)g(quic)m(kly)h(details)g(the)e
20040(di\013erences)h(of)g(signi\014cance.)46 b(A)150 969
20041y(n)m(um)m(b)s(er)24 b(of)h(these)h(di\013erences)f(are)h(explained)f
20042(in)g(greater)h(depth)f(in)g(previous)f(sections.)40
20043b(This)25 b(section)150 1078 y(uses)33 b(the)i(v)m(ersion)f(of)g
6e51e0d0 20044Ft(sh)f Fu(included)g(in)h(SVR4.2)h(\(the)f(last)h(v)m(ersion)f(of)g
ac18b312 20045(the)g(historical)i(Bourne)d(shell\))150 1188 y(as)e(the)f(baseline)h
6e51e0d0
CR
20046(reference.)225 1322 y Fq(\017)60 b Fu(Bash)32 b(is)h
20047Fm(posix)p Fu(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
20048Fm(posix)g Fu(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
200491431 y Ft(sh)e Fu(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
e59452c7 20050(POSIX)g(Mo)s(de],)h(page)g(105\).)225 1565 y Fq(\017)60
6e51e0d0 20051b Fu(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
1c72c0cd 20052(options)f(\(see)f(Section)h(6.1)g([In)m(v)m(oking)g(Bash],)h(page)e
e59452c7 20053(90\).)225 1699 y Fq(\017)60 b Fu(Bash)40 b(has)f(command-line)h
9f178efb 20054(editing)g(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)k(page)d
fffe80d4 20055(116\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225
6e51e0d0 200561943 y Fq(\017)60 b Fu(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
1c72c0cd 20057(ord)f(completion)i(mec)m(hanism)f(\(see)h(Section)g(8.6)g([Pro-)330
fffe80d4 200582052 y(grammable)39 b(Completion],)i(page)e(142\),)i(and)d(builtin)g
6e51e0d0
CR
20059(commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330
200602162 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225
200612296 y Fq(\017)60 b Fu(Bash)26 b(has)f(command)h(history)f(\(see)i
37c41ab1 20062(Section)f(9.1)h([Bash)f(History)h(F)-8 b(acilities],)30
fffe80d4 20063b(page)c(151\))i(and)d(the)330 2405 y Ft(history)k Fu(and)h
6e51e0d0 20064Ft(fc)g Fu(builtins)g(to)h(manipulate)g(it.)42 b(The)30
37c41ab1 20065b(Bash)h(history)g(list)g(main)m(tains)g(timestamp)330
1c72c0cd 200662515 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31
6e51e0d0
CR
20067b(of)f(the)h Ft(HISTTIMEFORMAT)26 b Fu(v)-5 b(ariable)32
20068b(to)f(displa)m(y)f(it.)225 2649 y Fq(\017)60 b Fu(Bash)48
20069b(implemen)m(ts)h Ft(csh)p Fu(-lik)m(e)g(history)f(expansion)g(\(see)h
1c72c0cd 20070(Section)g(9.3)h([History)f(In)m(teraction],)330 2759
fffe80d4 20071y(page)31 b(153\).)225 2892 y Fq(\017)60 b Fu(Bash)33
37c41ab1 20072b(has)g(one-dimensional)h(arra)m(y)f(v)-5 b(ariables)34
e59452c7 20073b(\(see)g(Section)g(6.7)g([Arra)m(ys],)g(page)g(99\),)h(and)e(the)330
1c72c0cd 200743002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g
37c41ab1 20075(assignmen)m(t)h(syn)m(tax)g(to)g(use)f(them.)67 b(Sev)m(eral)40
1c72c0cd 20076b(of)g(the)330 3112 y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h
37c41ab1 20077(act)g(on)e(arra)m(ys.)46 b(Bash)32 b(pro)m(vides)g(a)g(n)m(um)m(b)s
1c72c0cd 20078(er)f(of)h(built-in)f(arra)m(y)330 3221 y(v)-5 b(ariables.)225
6e51e0d0 200793355 y Fq(\017)60 b Fu(The)37 b Ft($'...)n(')g Fu(quoting)g(syn)m(tax,)
37c41ab1 20080j(whic)m(h)d(expands)f(ANSI-C)h(bac)m(kslash-escap)s(ed)h(c)m
1c72c0cd 20081(haracters)g(in)330 3465 y(the)26 b(text)h(b)s(et)m(w)m(een)g(the)g
37c41ab1 20082(single)f(quotes,)i(is)e(supp)s(orted)f(\(see)i(Section)g(3.1.2.4)h
1c72c0cd 20083([ANSI-C)e(Quoting],)330 3574 y(page)31 b(6\).)225 3708
6e51e0d0
CR
20084y Fq(\017)60 b Fu(Bash)30 b(supp)s(orts)f(the)h Ft($"...)o(")f
20085Fu(quoting)i(syn)m(tax)g(to)f(do)g(lo)s(cale-sp)s(eci\014c)i
20086(translation)g(of)e(the)g(c)m(har-)330 3818 y(acters)g(b)s(et)m(w)m
20087(een)f(the)f(double)g(quotes.)41 b(The)28 b Ft(-D)p Fu(,)h
20088Ft(--dump-strings)p Fu(,)c(and)j Ft(--dump-po-strings)330
200893927 y Fu(in)m(v)m(o)s(cation)42 b(options)d(list)i(the)e(translatable)
20090i(strings)f(found)e(in)h(a)h(script)g(\(see)g(Section)g(3.1.2.5)330
200914037 y([Lo)s(cale)32 b(T)-8 b(ranslation],)31 b(page)h(7\).)225
200924171 y Fq(\017)60 b Fu(Bash)44 b(implemen)m(ts)g(the)f
20093Ft(!)h Fu(k)m(eyw)m(ord)g(to)g(negate)h(the)f(return)e(v)-5
20094b(alue)44 b(of)g(a)g(pip)s(eline)f(\(see)h(Sec-)330 4281
e59452c7
CR
20095y(tion)36 b(3.2.3)h([Pip)s(elines],)g(page)f(10\).)57
20096b(V)-8 b(ery)36 b(useful)f(when)f(an)h Ft(if)g Fu(statemen)m(t)i(needs)
20097e(to)h(act)h(only)330 4390 y(if)32 b(a)g(test)g(fails.)45
20098b(The)31 b(Bash)h(`)p Ft(-o)e(pipefail)p Fu(')g(option)i(to)g
20099Ft(set)f Fu(will)h(cause)g(a)g(pip)s(eline)g(to)g(return)f(a)330
201004500 y(failure)g(status)f(if)h(an)m(y)f(command)g(fails.)225
6e51e0d0
CR
201014634 y Fq(\017)60 b Fu(Bash)34 b(has)g(the)g Ft(time)f
20102Fu(reserv)m(ed)h(w)m(ord)g(and)f(command)h(timing)h(\(see)g(Section)g
e59452c7
CR
20103(3.2.3)g([Pip)s(elines],)330 4743 y(page)d(10\).)43 b(The)31
20104b(displa)m(y)g(of)g(the)g(timing)h(statistics)h(ma)m(y)e(b)s(e)f(con)m
6e51e0d0
CR
20105(trolled)j(with)e(the)g Ft(TIMEFORMAT)330 4853 y Fu(v)-5
20106b(ariable.)225 4987 y Fq(\017)60 b Fu(Bash)28 b(implemen)m(ts)g(the)f
20107Ft(for)j(\(\()g Fj(expr1)f Ft(;)h Fj(expr2)f Ft(;)h Fj(expr3)f
20108Ft(\)\))e Fu(arithmetic)h(for)g(command,)g(sim-)330 5096
d37a4722 20109y(ilar)j(to)g(the)g(C)f(language)h(\(see)h(Section)f(3.2.5.1)i([Lo)s
e59452c7 20110(oping)d(Constructs],)h(page)g(11\).)225 5230 y Fq(\017)60
6e51e0d0
CR
20111b Fu(Bash)31 b(includes)f(the)g Ft(select)f Fu(comp)s(ound)g(command,)i
20112(whic)m(h)f(allo)m(ws)i(the)f(generation)g(of)g(simple)330
d37a4722 201135340 y(men)m(us)f(\(see)h(Section)g(3.2.5.2)i([Conditional)e
e59452c7 20114(Constructs],)g(page)g(12\).)p eop end
5e6f45d9
CR
20115%%Page: 168 174
20116TeXDict begin 168 173 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20117b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
5e6f45d9 20118b(The)f(Bourne)g(Shell)1258 b(168)225 299 y Fq(\017)60
6e51e0d0 20119b Fu(Bash)40 b(includes)g(the)g Ft([[)g Fu(comp)s(ound)e(command,)43
1c72c0cd 20120b(whic)m(h)c(mak)m(es)i(conditional)h(testing)f(part)f(of)330
d37a4722 20121408 y(the)f(shell)g(grammar)g(\(see)h(Section)f(3.2.5.2)j([Conditional)
e59452c7 20122d(Constructs],)i(page)f(12\),)i(including)330 518 y(optional)32
6e51e0d0
CR
20123b(regular)e(expression)g(matc)m(hing.)225 653 y Fq(\017)60
20124b Fu(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m
20125(hing)f(for)e(the)g Ft(case)g Fu(and)f Ft([[)h Fu(constructs.)225
20126789 y Fq(\017)60 b Fu(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h
e59452c7 20127(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(24\))h(and)d(tilde)330
1c72c0cd 20128898 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f
e59452c7 20129(page)h(25\).)225 1034 y Fq(\017)60 b Fu(Bash)24 b(implemen)m(ts)h
6e51e0d0
CR
20130(command)e(aliases)j(and)d(the)i Ft(alias)d Fu(and)i
20131Ft(unalias)e Fu(builtins)h(\(see)i(Section)g(6.6)330
e59452c7 201321143 y([Aliases],)32 b(page)f(99\).)225 1279 y Fq(\017)60
6e51e0d0 20133b Fu(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e
d37a4722 20134Ft(\(\()g Fu(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.5.2)j([Con-)
e59452c7 20135330 1388 y(ditional)d(Constructs],)e(page)i(12\),)g(and)e(arithmetic)i
1c72c0cd 20136(expansion)e(\(see)i(Section)f(6.5)h([Shell)f(Arith-)330
e59452c7 201371498 y(metic],)h(page)f(97\).)225 1633 y Fq(\017)60 b
6e51e0d0 20138Fu(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g(en)
37c41ab1 20139m(vironmen)m(t)g(are)g(automatically)i(exp)s(orted)d(to)h(c)m(hild)330
1c72c0cd 201401743 y(pro)s(cesses.)38 b(The)23 b(Bourne)g(shell)g(do)s(es)g(not)g
37c41ab1 20141(normally)g(do)g(this)g(unless)g(the)g(v)-5 b(ariables)24
1c72c0cd 20142b(are)f(explicitly)330 1852 y(mark)m(ed)30 b(using)g(the)h
6e51e0d0
CR
20143Ft(export)e Fu(command.)225 1988 y Fq(\017)60 b Fu(Bash)26
20144b(supp)s(orts)d(the)j(`)p Ft(+=)p Fu(')f(assignmen)m(t)i(op)s(erator,)g
1c72c0cd
CR
20145(whic)m(h)e(app)s(ends)f(to)i(the)g(v)-5 b(alue)26 b(of)f(the)h(v)-5
20146b(ariable)330 2097 y(named)30 b(on)g(the)h(left)g(hand)e(side.)225
6e51e0d0
CR
201472233 y Fq(\017)60 b Fu(Bash)36 b(includes)g(the)g Fm(posix)f
20148Fu(pattern)h(remo)m(v)-5 b(al)37 b(`)p Ft(\045)p Fu(',)h(`)p
20149Ft(#)p Fu(',)g(`)p Ft(\045\045)p Fu(')e(and)f(`)p Ft(##)p
20150Fu(')h(expansions)g(to)g(remo)m(v)m(e)330 2342 y(leading)f(or)f
1c72c0cd
CR
20151(trailing)h(substrings)e(from)g(v)-5 b(ariable)35 b(v)-5
20152b(alues)35 b(\(see)g(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
e59452c7 201532452 y(Expansion],)30 b(page)h(26\).)225 2587 y Fq(\017)60
6e51e0d0
CR
20154b Fu(The)46 b(expansion)g Ft(${#xx})p Fu(,)j(whic)m(h)d(returns)f(the)i
20155(length)f(of)h Ft(${xx})p Fu(,)i(is)e(supp)s(orted)d(\(see)j(Sec-)330
1c72c0cd 201562697 y(tion)31 b(3.5.3)h([Shell)f(P)m(arameter)g(Expansion],)f(page)i
e59452c7 20157(26\).)225 2832 y Fq(\017)60 b Fu(The)30 b(expansion)g
6e51e0d0
CR
20158Ft(${var:)p Fr(o\013set)r Ft([:)p Fr(length)p Ft(]})p
20159Fu(,)g(whic)m(h)g(expands)g(to)h(the)g(substring)e(of)i
20160Ft(var)p Fu('s)e(v)-5 b(alue)330 2942 y(of)43 b(length)g
20161Fr(length)p Fu(,)k(b)s(eginning)42 b(at)i Fr(o\013set)p
20162Fu(,)j(is)c(presen)m(t)g(\(see)g(Section)h(3.5.3)h([Shell)e(P)m
e59452c7
CR
20163(arameter)330 3051 y(Expansion],)30 b(page)h(26\).)225
201643187 y Fq(\017)60 b Fu(The)21 b(expansion)f Ft(${)p Fj(var)p
20165Ft(/[/])p Fr(pattern)p Ft([/)p Fr(replacemen)m(t)r Ft(]})p
20166Fu(,)i(whic)m(h)e(matc)m(hes)j Fr(pattern)e Fu(and)f(replaces)330
201673296 y(it)30 b(with)f Fr(replacemen)m(t)k Fu(in)c(the)h(v)-5
20168b(alue)30 b(of)g Fr(v)-5 b(ar)p Fu(,)30 b(is)f(a)m(v)-5
20169b(ailable)32 b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
201703406 y(Expansion],)g(page)h(26\).)225 3541 y Fq(\017)60
6e51e0d0
CR
20171b Fu(The)33 b(expansion)g Ft(${!)p Fj(prefix)p Ft(*})d
20172Fu(expansion,)k(whic)m(h)e(expands)h(to)h(the)f(names)g(of)g(all)h
20173(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)g(names)g(b)s(egin)g
20174(with)g Fr(pre\014x)p Fu(,)g(is)g(a)m(v)-5 b(ailable)39
20175b(\(see)e(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
e59452c7
CR
201763761 y(Expansion],)30 b(page)h(26\).)225 3896 y Fq(\017)60
20177b Fu(Bash)22 b(has)g(indirect)g(v)-5 b(ariable)22 b(expansion)g(using)f
20178Ft(${!word})f Fu(\(see)i(Section)h(3.5.3)h([Shell)e(P)m(arameter)330
201794006 y(Expansion],)30 b(page)h(26\).)225 4141 y Fq(\017)60
20180b Fu(Bash)31 b(can)f(expand)g(p)s(ositional)h(parameters)g(b)s(ey)m
20181(ond)e Ft($9)h Fu(using)g Ft(${)p Fj(num)p Ft(})p Fu(.)225
201824276 y Fq(\017)60 b Fu(The)27 b Fm(posix)g Ft($\(\))g
20183Fu(form)g(of)h(command)g(substitution)f(is)h(implemen)m(ted)g(\(see)h
20184(Section)f(3.5.4)i([Com-)330 4386 y(mand)38 b(Substitution],)k(page)e
3011048a 20185(34\),)j(and)38 b(preferred)g(to)i(the)g(Bourne)f(shell's)h
e59452c7
CR
20186Ft(``)e Fu(\(whic)m(h)i(is)f(also)330 4495 y(implemen)m(ted)31
20187b(for)f(bac)m(kw)m(ards)h(compatibilit)m(y\).)225 4631
20188y Fq(\017)60 b Fu(Bash)31 b(has)f(pro)s(cess)g(substitution)g(\(see)h
20189(Section)g(3.5.6)h([Pro)s(cess)f(Substitution],)f(page)h(34\).)225
201904766 y Fq(\017)60 b Fu(Bash)55 b(automatically)j(assigns)e(v)-5
20191b(ariables)55 b(that)h(pro)m(vide)f(information)h(ab)s(out)f(the)g
20192(curren)m(t)330 4876 y(user)40 b(\()p Ft(UID)p Fu(,)i
20193Ft(EUID)p Fu(,)g(and)e Ft(GROUPS)p Fu(\),)h(the)g(curren)m(t)f(host)g
20194(\()p Ft(HOSTTYPE)p Fu(,)h Ft(OSTYPE)p Fu(,)h Ft(MACHTYPE)p
20195Fu(,)f(and)330 4985 y Ft(HOSTNAME)p Fu(\),)55 b(and)c(the)g(instance)h
20196(of)g(Bash)f(that)h(is)f(running)f(\()p Ft(BASH)p Fu(,)56
20197b Ft(BASH_VERSION)p Fu(,)e(and)330 5095 y Ft(BASH_VERSINFO)p
20198Fu(\).)37 b(See)31 b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33
20199b(page)e(77,)g(for)f(details.)225 5230 y Fq(\017)60 b
20200Fu(The)44 b Ft(IFS)f Fu(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f
20201(only)g(the)g(results)g(of)h(expansion,)i(not)d(all)h(w)m(ords)f(\(see)
20202330 5340 y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f
3011048a 20203(35\).)41 b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h
e59452c7 20204(hole.)p eop end
5e6f45d9
CR
20205%%Page: 169 175
20206TeXDict begin 169 174 bop 150 -116 a Fu(App)s(endix)29
37c41ab1 20207b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
5e6f45d9 20208b(The)f(Bourne)g(Shell)1258 b(169)225 299 y Fq(\017)60
6e51e0d0
CR
20209b Fu(The)36 b(\014lename)h(expansion)f(brac)m(k)m(et)i(expression)f(co)
20210s(de)f(uses)g(`)p Ft(!)p Fu(')h(and)f(`)p Ft(^)p Fu(')h(to)g(negate)h
ad4aef08
CR
20211(the)f(set)g(of)330 408 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f
20212(brac)m(k)m(ets.)43 b(The)29 b(Bourne)i(shell)f(uses)g(only)h(`)p
6e51e0d0
CR
20213Ft(!)p Fu('.)225 536 y Fq(\017)60 b Fu(Bash)38 b(implemen)m(ts)g(the)g
20214(full)g(set)g(of)g Fm(posix)f Fu(\014lename)h(expansion)g(op)s
e59452c7
CR
20215(erators,)i(including)d(c)m(har-)330 646 y(acter)j(classes,)i(equiv)-5
20216b(alence)39 b(classes,)j(and)c(collating)j(sym)m(b)s(ols)d(\(see)i
20217(Section)f(3.5.8)h([Filename)330 756 y(Expansion],)30
20218b(page)h(35\).)225 883 y Fq(\017)60 b Fu(Bash)35 b(implemen)m(ts)g
20219(extended)g(pattern)g(matc)m(hing)h(features)f(when)f(the)h
20220Ft(extglob)d Fu(shell)j(option)330 993 y(is)30 b(enabled)h(\(see)g
20221(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(36\).)225
202221121 y Fq(\017)60 b Fu(It)22 b(is)g(p)s(ossible)g(to)h(ha)m(v)m(e)g(a)f
20223(v)-5 b(ariable)23 b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j
6e51e0d0
CR
20224Ft(sh)d Fu(do)s(es)g(not)g(separate)330 1230 y(the)31
20225b(t)m(w)m(o)g(name)g(spaces.)225 1358 y Fq(\017)60 b
20226Fu(Bash)30 b(functions)e(are)i(p)s(ermitted)f(to)h(ha)m(v)m(e)h(lo)s
20227(cal)g(v)-5 b(ariables)30 b(using)f(the)g Ft(local)f
20228Fu(builtin,)i(and)e(th)m(us)330 1468 y(useful)i(recursiv)m(e)g
20229(functions)g(ma)m(y)h(b)s(e)f(written)g(\(see)i(Section)f(4.2)g([Bash)g
e59452c7 20230(Builtins],)g(page)h(54\).)225 1596 y Fq(\017)60 b Fu(V)-8
6e51e0d0
CR
20231b(ariable)25 b(assignmen)m(ts)g(preceding)e(commands)h(a\013ect)h(only)
20232f(that)g(command,)h(ev)m(en)f(builtins)g(and)330 1705
20233y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page)
3011048a 20234e(44\).)60 b(In)35 b Ft(sh)p Fu(,)j(all)f(v)-5 b(ariable)37
6e51e0d0
CR
20235b(assignmen)m(ts)330 1815 y(preceding)30 b(commands)g(are)h(global)h
20236(unless)d(the)i(command)f(is)h(executed)g(from)f(the)g(\014le)h
20237(system.)225 1943 y Fq(\017)60 b Fu(Bash)44 b(p)s(erforms)e(\014lename)
20238i(expansion)f(on)h(\014lenames)g(sp)s(eci\014ed)f(as)h(op)s(erands)e
20239(to)j(input)e(and)330 2052 y(output)30 b(redirection)h(op)s(erators)g
e59452c7 20240(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(37\).)225
6e51e0d0
CR
202412180 y Fq(\017)60 b Fu(Bash)29 b(con)m(tains)h(the)f(`)p
20242Ft(<>)p Fu(')f(redirection)i(op)s(erator,)f(allo)m(wing)i(a)e(\014le)g
20243(to)g(b)s(e)f(op)s(ened)g(for)h(b)s(oth)f(read-)330 2290
20244y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p Ft(&>)p Fu(')g(redirection)
20245g(op)s(erator,)h(for)f(directing)g(standard)f(output)h(and)330
202462399 y(standard)30 b(error)g(to)h(the)f(same)h(\014le)f(\(see)i
e59452c7 20247(Section)f(3.6)g([Redirections],)h(page)g(37\).)225 2527
6e51e0d0
CR
20248y Fq(\017)60 b Fu(Bash)21 b(includes)f(the)h(`)p Ft(<<<)p
20249Fu(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f(to)i(b)s
20250(e)e(used)g(as)h(the)g(standard)330 2637 y(input)29 b(to)j(a)e
20251(command.)225 2765 y Fq(\017)60 b Fu(Bash)32 b(implemen)m(ts)f(the)h(`)
20252p Ft([n]<&)p Fj(word)p Fu(')d(and)i(`)p Ft([n]>&)p Fj(word)p
20253Fu(')e(redirection)j(op)s(erators,)g(whic)m(h)f(mo)m(v)m(e)330
202542874 y(one)g(\014le)f(descriptor)g(to)h(another.)225
202553002 y Fq(\017)60 b Fu(Bash)25 b(treats)h(a)f(n)m(um)m(b)s(er)e(of)i
20256(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g(used)f(in)g
20257(redirection)i(op)s(erators)330 3112 y(\(see)31 b(Section)h(3.6)f
e59452c7 20258([Redirections],)h(page)f(37\).)225 3240 y Fq(\017)60
6e51e0d0
CR
20259b Fu(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i(connections)f(to)h
20260(arbitrary)e(mac)m(hines)h(and)f(services)h(with)f(the)h(redi-)330
202613349 y(rection)e(op)s(erators)g(\(see)g(Section)g(3.6)h
e59452c7 20262([Redirections],)g(page)f(37\).)225 3477 y Fq(\017)60
6e51e0d0 20263b Fu(The)29 b Ft(noclobber)e Fu(option)j(is)g(a)m(v)-5
37c41ab1 20264b(ailable)32 b(to)e(a)m(v)m(oid)h(o)m(v)m(erwriting)g(existing)g
ad4aef08 20265(\014les)e(with)h(output)f(redi-)330 3587 y(rection)39
e59452c7 20266b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(66\).)66
6e51e0d0 20267b(The)38 b(`)p Ft(>|)p Fu(')h(redirection)g(op)s(erator)330
ad4aef08 202683696 y(ma)m(y)31 b(b)s(e)f(used)f(to)i(o)m(v)m(erride)h
6e51e0d0
CR
20269Ft(noclobber)p Fu(.)225 3824 y Fq(\017)60 b Fu(The)34
20270b(Bash)g Ft(cd)g Fu(and)f Ft(pwd)g Fu(builtins)h(\(see)h(Section)g(4.1)
e59452c7 20271g([Bourne)g(Shell)f(Builtins],)h(page)g(47\))h(eac)m(h)330
6e51e0d0
CR
202723934 y(tak)m(e)c Ft(-L)e Fu(and)f Ft(-P)h Fu(options)h(to)g(switc)m(h)g
20273(b)s(et)m(w)m(een)g(logical)i(and)c(ph)m(ysical)i(mo)s(des.)225
202744061 y Fq(\017)60 b Fu(Bash)25 b(allo)m(ws)h(a)g(function)e(to)i(o)m(v)
20275m(erride)g(a)g(builtin)e(with)h(the)g(same)g(name,)i(and)d(pro)m(vides)
20276h(access)h(to)330 4171 y(that)34 b(builtin's)f(functionalit)m(y)h
20277(within)f(the)g(function)g(via)h(the)f Ft(builtin)f Fu(and)g
20278Ft(command)g Fu(builtins)330 4281 y(\(see)f(Section)h(4.2)f([Bash)g
e59452c7 20279(Builtins],)g(page)g(54\).)225 4408 y Fq(\017)60 b Fu(The)35
6e51e0d0
CR
20280b Ft(command)e Fu(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f
20281(functions)g(when)g(command)g(lo)s(okup)g(is)330 4518
20282y(p)s(erformed)29 b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g
e59452c7 20283(54\).)225 4646 y Fq(\017)60 b Fu(Individual)23 b(builtins)g(ma)m(y)i
6e51e0d0
CR
20284(b)s(e)e(enabled)h(or)g(disabled)g(using)f(the)h Ft(enable)f
20285Fu(builtin)g(\(see)i(Section)g(4.2)330 4756 y([Bash)31
e59452c7 20286b(Builtins],)g(page)g(54\).)225 4883 y Fq(\017)60 b Fu(The)26
6e51e0d0 20287b(Bash)h Ft(exec)e Fu(builtin)h(tak)m(es)i(additional)f(options)g(that)
d3ad40de 20288g(allo)m(w)h(users)d(to)j(con)m(trol)g(the)e(con)m(ten)m(ts)330
ad4aef08 202894993 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g(executed)g
d3ad40de 20290(command,)h(and)d(what)i(the)f(zeroth)h(argumen)m(t)330
ad4aef08 202915103 y(to)c(the)g(command)f(is)g(to)h(b)s(e)f(\(see)h(Section)h(4.1)f
e59452c7 20292([Bourne)f(Shell)h(Builtins],)g(page)g(47\).)225 5230
6e51e0d0 20293y Fq(\017)60 b Fu(Shell)29 b(functions)g(ma)m(y)h(b)s(e)f(exp)s(orted)g
37c41ab1 20294(to)h(c)m(hildren)f(via)h(the)g(en)m(vironmen)m(t)g(using)f
6e51e0d0 20295Ft(export)f(-f)h Fu(\(see)330 5340 y(Section)i(3.3)h([Shell)e(F)-8
e59452c7 20296b(unctions],)32 b(page)f(19\).)p eop end
5e6f45d9
CR
20297%%Page: 170 176
20298TeXDict begin 170 175 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20299b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
5e6f45d9 20300b(The)f(Bourne)g(Shell)1258 b(170)225 299 y Fq(\017)60
6e51e0d0
CR
20301b Fu(The)40 b(Bash)h Ft(export)p Fu(,)h Ft(readonly)p
20302Fu(,)f(and)g Ft(declare)d Fu(builtins)j(can)g(tak)m(e)h(a)f
20303Ft(-f)f Fu(option)i(to)f(act)h(on)330 408 y(shell)30
20304b(functions,)f(a)h Ft(-p)f Fu(option)g(to)i(displa)m(y)e(v)-5
20305b(ariables)30 b(with)f(v)-5 b(arious)30 b(attributes)g(set)g(in)f(a)h
20306(format)330 518 y(that)g(can)g(b)s(e)f(used)g(as)g(shell)h(input,)f(a)h
20307Ft(-n)f Fu(option)h(to)g(remo)m(v)m(e)h(v)-5 b(arious)30
20308b(v)-5 b(ariable)30 b(attributes,)h(and)330 628 y(`)p
20309Ft(name=value)p Fu(')d(argumen)m(ts)j(to)g(set)g(v)-5
37c41ab1 20310b(ariable)31 b(attributes)g(and)f(v)-5 b(alues)30 b(sim)m(ultaneously)
6e51e0d0
CR
20311-8 b(.)225 765 y Fq(\017)60 b Fu(The)42 b(Bash)h Ft(hash)f
20312Fu(builtin)g(allo)m(ws)j(a)e(name)g(to)g(b)s(e)f(asso)s(ciated)j(with)d
1c72c0cd 20313(an)h(arbitrary)f(\014lename,)330 874 y(ev)m(en)30 b(when)e(that)h
37c41ab1 20314(\014lename)g(cannot)h(b)s(e)e(found)g(b)m(y)h(searc)m(hing)g(the)g
6e51e0d0 20315Ft($PATH)p Fu(,)g(using)f(`)p Ft(hash)h(-p)p Fu(')g(\(see)330
e59452c7 20316984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(47\).)225
6e51e0d0
CR
203171121 y Fq(\017)60 b Fu(Bash)27 b(includes)f(a)i Ft(help)d
20318Fu(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
e59452c7 20319(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(54\).)225
6e51e0d0 203201367 y Fq(\017)60 b Fu(The)42 b Ft(printf)g Fu(builtin)g(is)h(a)m(v)-5
37c41ab1 20321b(ailable)45 b(to)f(displa)m(y)f(formatted)g(output)g(\(see)h(Section)g
e59452c7 20322(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(54\).)225
6e51e0d0 203231614 y Fq(\017)60 b Fu(The)26 b(Bash)h Ft(read)f Fu(builtin)g(\(see)i
e59452c7 20324(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(54\))g(will)f(read)g(a)g
6e51e0d0
CR
20325(line)g(ending)330 1724 y(in)i(`)p Ft(\\)p Fu(')h(with)f(the)g
20326Ft(-r)g Fu(option,)i(and)d(will)i(use)f(the)h Ft(REPLY)e
20327Fu(v)-5 b(ariable)30 b(as)g(a)f(default)h(if)f(no)h(non-option)330
203281833 y(argumen)m(ts)h(are)h(supplied.)42 b(The)30 b(Bash)i
20329Ft(read)e Fu(builtin)g(also)j(accepts)f(a)g(prompt)e(string)h(with)g
20330(the)330 1943 y Ft(-p)c Fu(option)h(and)f(will)g(use)h(Readline)g(to)g
20331(obtain)g(the)g(line)f(when)g(giv)m(en)h(the)g Ft(-e)f
20332Fu(option.)40 b(The)27 b Ft(read)330 2052 y Fu(builtin)h(also)i(has)e
20333(additional)i(options)f(to)g(con)m(trol)h(input:)39 b(the)29
20334b Ft(-s)f Fu(option)h(will)g(turn)e(o\013)j(ec)m(hoing)330
203352162 y(of)f(input)f(c)m(haracters)j(as)e(they)g(are)h(read,)f(the)g
20336Ft(-t)g Fu(option)g(will)h(allo)m(w)g Ft(read)e Fu(to)i(time)g(out)f
20337(if)g(input)330 2271 y(do)s(es)i(not)h(arriv)m(e)g(within)f(a)h(sp)s
20338(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(seconds,)g(the)f
20339Ft(-n)g Fu(option)h(will)g(allo)m(w)h(reading)330 2381
20340y(only)38 b(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(c)m(haracters)h
20341(rather)e(than)g(a)h(full)g(line,)i(and)d(the)h Ft(-d)f
20342Fu(option)h(will)330 2491 y(read)30 b(un)m(til)h(a)g(particular)f(c)m
20343(haracter)i(rather)f(than)f(newline.)225 2628 y Fq(\017)60
20344b Fu(The)33 b Ft(return)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)f(to)i(ab)
20345s(ort)f(execution)h(of)f(scripts)g(executed)h(with)f(the)g
20346Ft(.)g Fu(or)330 2737 y Ft(source)c Fu(builtins)g(\(see)j(Section)f
e59452c7 20347(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(47\).)225
6e51e0d0
CR
203482874 y Fq(\017)60 b Fu(Bash)43 b(includes)g(the)g Ft(shopt)f
20349Fu(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g
d3ad40de 20350(capabilities)h(\(see)330 2984 y(Section)c(4.3.2)g([The)f(Shopt)f
e59452c7 20351(Builtin],)k(page)d(70\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
d3ad40de
CR
20352(b)s(e)f(set)i(and)330 3093 y(unset)30 b(at)h(shell)g(in)m(v)m(o)s
20353(cation)h(\(see)f(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)g(page)h
e59452c7 20354(90\).)225 3230 y Fq(\017)60 b Fu(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
d3ad40de 20355(optional)h(b)s(eha)m(vior)e(con)m(trollable)j(with)e(the)f
6e51e0d0 20356Ft(set)g Fu(builtin)g(\(see)h(Sec-)330 3340 y(tion)31
e59452c7 20357b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(66\).)225 3477
6e51e0d0
CR
20358y Fq(\017)60 b Fu(The)31 b(`)p Ft(-x)p Fu(')g(\()p Ft(xtrace)p
20359Fu(\))g(option)h(displa)m(ys)f(commands)h(other)f(than)h(simple)f
20360(commands)g(when)g(p)s(er-)330 3587 y(forming)f(an)g(execution)i(trace)
e59452c7 20361f(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(66\).)225
6e51e0d0 203623724 y Fq(\017)60 b Fu(The)28 b Ft(test)g Fu(builtin)h(\(see)h(Section)
e59452c7 20363f(4.1)h([Bourne)f(Shell)g(Builtins],)h(page)g(47\))g(is)f(sligh)m(tly)h
1c72c0cd 20364(di\013eren)m(t,)330 3833 y(as)23 b(it)g(implemen)m(ts)f(the)h
6e51e0d0 20365Fm(posix)f Fu(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m
1c72c0cd 20366(vior)f(based)g(on)h(the)f(n)m(um)m(b)s(er)330 3943 y(of)31
6e51e0d0
CR
20367b(argumen)m(ts.)225 4080 y Fq(\017)60 b Fu(Bash)31 b(includes)g(the)h
20368Ft(caller)d Fu(builtin,)j(whic)m(h)f(displa)m(ys)g(the)g(con)m(text)i
1c72c0cd 20369(of)f(an)m(y)g(activ)m(e)h(subroutine)330 4189 y(call)28
37c41ab1 20370b(\(a)f(shell)f(function)h(or)f(a)h(script)f(executed)h(with)f(the)h
6e51e0d0 20371Ft(.)f Fu(or)g Ft(source)f Fu(builtins\).)39 b(This)26
e59452c7 20372b(supp)s(orts)330 4299 y(the)31 b(Bash)f(debugger.)225
6e51e0d0 203734436 y Fq(\017)60 b Fu(The)42 b Ft(trap)f Fu(builtin)h(\(see)i(Section)
e59452c7 20374f(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(47\))h(allo)m(ws)g(a)e
6e51e0d0
CR
20375Ft(DEBUG)330 4545 y Fu(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
20376(to)g Ft(EXIT)p Fu(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
20377Ft(DEBUG)e Fu(trap)330 4655 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
20378(simple)f(command,)j Ft(for)c Fu(command,)k Ft(case)c
20379Fu(command,)k Ft(select)330 4765 y Fu(command,)35 b(ev)m(ery)g
20380(arithmetic)g Ft(for)e Fu(command,)i(and)f(b)s(efore)g(the)g(\014rst)f
1c72c0cd 20381(command)h(executes)h(in)330 4874 y(a)29 b(shell)g(function.)40
6e51e0d0 20382b(The)28 b Ft(DEBUG)g Fu(trap)g(is)h(not)g(inherited)f(b)m(y)h(shell)g
1c72c0cd 20383(functions)f(unless)g(the)h(function)330 4984 y(has)35
6e51e0d0
CR
20384b(b)s(een)g(giv)m(en)i(the)f Ft(trace)e Fu(attribute)i(or)g(the)g
20385Ft(functrace)d Fu(option)j(has)f(b)s(een)g(enabled)g(using)330
203865093 y(the)28 b Ft(shopt)e Fu(builtin.)39 b(The)27 b
20387Ft(extdebug)f Fu(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
20388(the)g Ft(DEBUG)e Fu(trap.)330 5230 y(The)21 b Ft(trap)e
20389Fu(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
e59452c7 20390(page)e(47\))g(allo)m(ws)g(an)f Ft(ERR)f Fu(pseudo-)330
1c72c0cd 203915340 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g
6e51e0d0
CR
20392Ft(EXIT)f Fu(and)g Ft(DEBUG)p Fu(.)39 b(Commands)28 b(sp)s(eci\014ed)h
20393(with)g(an)g Ft(ERR)g Fu(trap)p eop end
5e6f45d9
CR
20394%%Page: 171 177
20395TeXDict begin 171 176 bop 150 -116 a Fu(App)s(endix)29
1c72c0cd 20396b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
5e6f45d9 20397b(The)f(Bourne)g(Shell)1258 b(171)330 299 y(are)40 b(executed)g(after)g
1c72c0cd 20398(a)f(simple)h(command)f(fails,)j(with)d(a)h(few)f(exceptions.)68
6e51e0d0
CR
20399b(The)39 b Ft(ERR)g Fu(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h
20400(shell)g(functions)f(unless)g(the)h Ft(-o)29 b(errtrace)37
20401b Fu(option)i(to)g(the)g Ft(set)f Fu(builtin)g(is)330
20402518 y(enabled.)330 650 y(The)g Ft(trap)g Fu(builtin)h(\(see)g(Section)h
e59452c7 20403(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(47\))g(allo)m(ws)g(a)g
967625cd 20404Ft(RETURN)330 759 y Fu(pseudo-signal)35 b(sp)s(eci\014cation,)j
6e51e0d0 20405(similar)d(to)h Ft(EXIT)e Fu(and)g Ft(DEBUG)p Fu(.)54
c302751c 20406b(Commands)34 b(sp)s(eci\014ed)g(with)h(an)330 869 y
6e51e0d0 20407Ft(RETURN)k Fu(trap)i(are)g(executed)h(b)s(efore)e(execution)i(resumes)
967625cd 20408e(after)h(a)g(shell)g(function)g(or)g(a)g(shell)330 978
6e51e0d0
CR
20409y(script)36 b(executed)g(with)g Ft(.)f Fu(or)h Ft(source)e
20410Fu(returns.)56 b(The)35 b Ft(RETURN)f Fu(trap)i(is)g(not)g(inherited)f
c302751c 20411(b)m(y)h(shell)330 1088 y(functions)k(unless)h(the)g(function)f(has)h
6e51e0d0
CR
20412(b)s(een)f(giv)m(en)i(the)f Ft(trace)e Fu(attribute)j(or)e(the)h
20413Ft(functrace)330 1198 y Fu(option)31 b(has)f(b)s(een)g(enabled)g(using)
967625cd 20414g(the)g Ft(shopt)f Fu(builtin.)225 1329 y Fq(\017)60
6e51e0d0 20415b Fu(The)30 b(Bash)g Ft(type)f Fu(builtin)h(is)g(more)g(extensiv)m(e)i
37c41ab1 20416(and)d(giv)m(es)j(more)e(information)h(ab)s(out)f(the)g(names)330
967625cd 204171439 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i
e59452c7 20418(page)f(54\).)225 1570 y Fq(\017)60 b Fu(The)27 b(Bash)h
6e51e0d0
CR
20419Ft(umask)e Fu(builtin)h(p)s(ermits)g(a)h Ft(-p)f Fu(option)h(to)h
20420(cause)f(the)g(output)f(to)h(b)s(e)f(displa)m(y)m(ed)h(in)g(the)330
967625cd 204211680 y(form)i(of)h(a)g Ft(umask)f Fu(command)g(that)i(ma)m(y)f(b)s(e)f
6e51e0d0 20422(reused)g(as)h(input)f(\(see)i(Section)f(4.1)h([Bourne)f(Shell)330
e59452c7 204231789 y(Builtins],)g(page)g(47\).)225 1921 y Fq(\017)60
6e51e0d0
CR
20424b Fu(Bash)34 b(implemen)m(ts)h(a)g Ft(csh)p Fu(-lik)m(e)g(directory)f
20425(stac)m(k,)j(and)d(pro)m(vides)g(the)g Ft(pushd)p Fu(,)g
e59452c7
CR
20426Ft(popd)p Fu(,)g(and)g Ft(dirs)330 2030 y Fu(builtins)d(to)i
20427(manipulate)f(it)h(\(see)g(Section)f(6.8)h([The)f(Directory)h(Stac)m
20428(k],)h(page)f(101\).)47 b(Bash)32 b(also)330 2140 y(mak)m(es)f(the)g
6e51e0d0
CR
20429(directory)g(stac)m(k)g(visible)g(as)g(the)f(v)-5 b(alue)31
20430b(of)g(the)f Ft(DIRSTACK)f Fu(shell)h(v)-5 b(ariable.)225
967625cd 204312272 y Fq(\017)60 b Fu(Bash)28 b(in)m(terprets)h(sp)s(ecial)g(bac)m
6e51e0d0 20432(kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e(strings)h
967625cd 20433(when)f(in)m(ter-)330 2381 y(activ)m(e)33 b(\(see)e(Section)g(6.9)h
e59452c7 20434([Con)m(trolling)f(the)g(Prompt],)f(page)h(103\).)225
967625cd 204352513 y Fq(\017)60 b Fu(The)46 b(Bash)h(restricted)g(mo)s(de)f(is)h
1c72c0cd 20436(more)f(useful)g(\(see)h(Section)h(6.10)g([The)e(Restricted)i(Shell],)
e59452c7 20437330 2622 y(page)31 b(104\);)h(the)f(SVR4.2)g(shell)g(restricted)g(mo)s
602eae4d 20438(de)f(is)g(to)s(o)h(limited.)225 2754 y Fq(\017)60 b
6e51e0d0 20439Fu(The)30 b Ft(disown)f Fu(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f
1c72c0cd 20440(from)g(the)h(in)m(ternal)g(shell)g(job)f(table)i(\(see)f(Section)h
fffe80d4 20441(7.2)330 2863 y([Job)e(Con)m(trol)h(Builtins],)g(page)g(113\))g(or)g
900a813b 20442(suppress)d(the)i(sending)g(of)g Ft(SIGHUP)e Fu(to)j(a)g(job)f(when)f
967625cd
CR
20443(the)330 2973 y(shell)i(exits)g(as)f(the)h(result)f(of)h(a)f
20444Ft(SIGHUP)p Fu(.)225 3104 y Fq(\017)60 b Fu(Bash)31 b(includes)f(a)g(n)
1c72c0cd 20445m(um)m(b)s(er)f(of)i(features)g(to)g(supp)s(ort)d(a)j(separate)g
967625cd 20446(debugger)f(for)h(shell)f(scripts.)225 3236 y Fq(\017)60
6e51e0d0
CR
20447b Fu(The)28 b(SVR4.2)h(shell)f(has)g(t)m(w)m(o)i(privilege-related)g
20448(builtins)e(\()p Ft(mldmode)e Fu(and)i Ft(priv)p Fu(\))f(not)i(presen)m
967625cd 20449(t)f(in)330 3346 y(Bash.)225 3477 y Fq(\017)60 b Fu(Bash)31
6e51e0d0 20450b(do)s(es)f(not)g(ha)m(v)m(e)i(the)e Ft(stop)g Fu(or)g
967625cd 20451Ft(newgrp)f Fu(builtins.)225 3609 y Fq(\017)60 b Fu(Bash)31
6e51e0d0 20452b(do)s(es)f(not)g(use)g(the)h Ft(SHACCT)d Fu(v)-5 b(ariable)32
967625cd 20453b(or)e(p)s(erform)f(shell)i(accoun)m(ting.)225 3740 y
6e51e0d0
CR
20454Fq(\017)60 b Fu(The)30 b(SVR4.2)h Ft(sh)f Fu(uses)g(a)g
20455Ft(TIMEOUT)f Fu(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e(uses)g
967625cd 20456Ft(TMOUT)p Fu(.)150 3894 y(More)h(features)g(unique)e(to)i(Bash)g(ma)m
1c72c0cd 20457(y)g(b)s(e)f(found)f(in)h(Chapter)f(6)i([Bash)g(F)-8
e59452c7 20458b(eatures],)32 b(page)f(90.)150 4128 y Fs(B.1)67 b(Implemen)l(tation)48
c302751c 20459b(Di\013erences)e(F)-11 b(rom)44 b(The)h(SVR4.2)g(Shell)150
967625cd 204604288 y Fu(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
c302751c 20461(tation,)j(it)e(do)s(es)e(not)i(su\013er)e(from)h(man)m(y)g(of)h(the)f
967625cd
CR
20462(limi-)150 4397 y(tations)f(of)e(the)h(SVR4.2)g(shell.)41
20463b(F)-8 b(or)31 b(instance:)225 4529 y Fq(\017)60 b Fu(Bash)32
37c41ab1
CR
20464b(do)s(es)f(not)h(fork)f(a)h(subshell)e(when)h(redirecting)h(in)m(to)h
20465(or)e(out)h(of)g(a)g(shell)f(con)m(trol)i(structure)330
967625cd 204664639 y(suc)m(h)d(as)h(an)f Ft(if)g Fu(or)g Ft(while)f
6e51e0d0 20467Fu(statemen)m(t.)225 4770 y Fq(\017)60 b Fu(Bash)29 b(do)s(es)f(not)h
37c41ab1 20468(allo)m(w)h(un)m(balanced)f(quotes.)41 b(The)28 b(SVR4.2)h(shell)g
967625cd 20469(will)g(silen)m(tly)i(insert)d(a)h(needed)330 4880 y(closing)g(quote)g
6e51e0d0 20470(at)f Ft(EOF)f Fu(under)g(certain)h(circumstances.)41
37c41ab1 20471b(This)27 b(can)h(b)s(e)g(the)g(cause)g(of)g(some)h(hard-)330
6e51e0d0 204724989 y(to-\014nd)h(errors.)225 5121 y Fq(\017)60 b Fu(The)45
37c41ab1 20473b(SVR4.2)h(shell)f(uses)g(a)g(baro)s(que)g(memory)g(managemen)m(t)i(sc)
6e51e0d0
CR
20474m(heme)e(based)g(on)g(trapping)330 5230 y Ft(SIGSEGV)p
20475Fu(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)e(a)i(pro)s(cess)f
20476(with)g Ft(SIGSEGV)e Fu(blo)s(c)m(k)m(ed)k(\(e.g.,)h(b)m(y)d(using)330
204775340 y(the)31 b Ft(system\(\))d Fu(C)i(library)g(function)g(call\),)i
1c72c0cd 20478(it)f(misb)s(eha)m(v)m(es)g(badly)-8 b(.)p eop end
5e6f45d9
CR
20479%%Page: 172 178
20480TeXDict begin 172 177 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20481b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
5e6f45d9 20482b(The)f(Bourne)g(Shell)1258 b(172)225 299 y Fq(\017)60
6e51e0d0
CR
20483b Fu(In)30 b(a)i(questionable)g(attempt)g(at)g(securit)m(y)-8
20484b(,)33 b(the)e(SVR4.2)h(shell,)g(when)e(in)m(v)m(ok)m(ed)j(without)e
20485(the)h Ft(-p)330 408 y Fu(option,)39 b(will)d(alter)i(its)e(real)h(and)
20486f(e\013ectiv)m(e)j Fm(uid)d Fu(and)g Fm(gid)h Fu(if)f(they)h(are)f
20487(less)h(than)f(some)h(magic)330 518 y(threshold)30 b(v)-5
20488b(alue,)31 b(commonly)g(100.)42 b(This)29 b(can)i(lead)g(to)g(unexp)s
20489(ected)f(results.)225 653 y Fq(\017)60 b Fu(The)30 b(SVR4.2)h(shell)g
20490(do)s(es)f(not)g(allo)m(w)i(users)e(to)h(trap)f Ft(SIGSEGV)p
20491Fu(,)f Ft(SIGALRM)p Fu(,)f(or)j Ft(SIGCHLD)p Fu(.)225
20492787 y Fq(\017)60 b Fu(The)34 b(SVR4.2)h(shell)g(do)s(es)g(not)f(allo)m
20493(w)j(the)d Ft(IFS)p Fu(,)h Ft(MAILCHECK)p Fu(,)f Ft(PATH)p
20494Fu(,)h Ft(PS1)p Fu(,)g(or)f Ft(PS2)g Fu(v)-5 b(ariables)35
20495b(to)330 897 y(b)s(e)30 b(unset.)225 1031 y Fq(\017)60
20496b Fu(The)30 b(SVR4.2)h(shell)g(treats)g(`)p Ft(^)p Fu(')f(as)h(the)g
20497(undo)s(cumen)m(ted)e(equiv)-5 b(alen)m(t)31 b(of)g(`)p
20498Ft(|)p Fu('.)225 1166 y Fq(\017)60 b Fu(Bash)37 b(allo)m(ws)h(m)m
20499(ultiple)f(option)g(argumen)m(ts)g(when)e(it)i(is)g(in)m(v)m(ok)m(ed)h
20500(\()p Ft(-x)30 b(-v)p Fu(\);)40 b(the)c(SVR4.2)i(shell)330
1c72c0cd 205011275 y(allo)m(ws)c(only)f(one)g(option)g(argumen)m(t)g(\()p
6e51e0d0 20502Ft(-xv)p Fu(\).)47 b(In)32 b(fact,)i(some)f(v)m(ersions)g(of)g(the)g
1c72c0cd 20503(shell)f(dump)f(core)330 1385 y(if)f(the)h(second)f(argumen)m(t)h(b)s
6e51e0d0
CR
20504(egins)f(with)g(a)h(`)p Ft(-)p Fu('.)225 1519 y Fq(\017)60
20505b Fu(The)26 b(SVR4.2)i(shell)f(exits)g(a)g(script)g(if)g(an)m(y)g
ac18b312 20506(builtin)f(fails;)j(Bash)e(exits)g(a)g(script)g(only)g(if)g(one)g(of)g
6e51e0d0 20507(the)330 1629 y Fm(posix)34 b Fu(sp)s(ecial)h(builtins)f(fails,)i(and)e
ac18b312 20508(only)h(for)f(certain)h(failures,)h(as)f(en)m(umerated)g(in)f(the)h
6e51e0d0
CR
20509Fm(posix)330 1738 y Fu(standard.)225 1873 y Fq(\017)60
20510b Fu(The)30 b(SVR4.2)h(shell)g(b)s(eha)m(v)m(es)f(di\013eren)m(tly)h
20511(when)f(in)m(v)m(ok)m(ed)i(as)e Ft(jsh)g Fu(\(it)h(turns)e(on)h(job)g
ac18b312 20512(con)m(trol\).)p eop end
5e6f45d9
CR
20513%%Page: 173 179
20514TeXDict begin 173 178 bop 3614 -116 a Fu(173)150 299
037a8b7f
CR
20515y Fp(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13 b(ree)53
20516b(Do)t(cumen)l(tation)e(License)1359 502 y Fu(V)-8 b(ersion)31
20517b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390 635 y(Cop)m(yrigh)m(t)842
20518632 y(c)817 635 y Fq(\015)e Fu(2000,)j(2001,)f(2002,)g(2007,)h(2008)f
20519(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31
20520b(Inc.)390 745 y Ft(http://fsf.org/)390 964 y Fu(Ev)m(ery)m(one)g(is)g
20521(p)s(ermitted)f(to)h(cop)m(y)g(and)f(distribute)g(v)m(erbatim)h(copies)
20522390 1074 y(of)g(this)f(license)h(do)s(cumen)m(t,)g(but)e(c)m(hanging)j
20523(it)f(is)f(not)h(allo)m(w)m(ed.)199 1207 y(0.)61 b(PREAMBLE)330
1231ac47
CR
205241340 y(The)37 b(purp)s(ose)e(of)i(this)g(License)h(is)f(to)h(mak)m(e)g
20525(a)g(man)m(ual,)h(textb)s(o)s(ok,)h(or)d(other)g(functional)h(and)330
6e51e0d0 205261450 y(useful)29 b(do)s(cumen)m(t)h Fr(free)36 b Fu(in)29
37c41ab1 20527b(the)i(sense)f(of)g(freedom:)41 b(to)31 b(assure)e(ev)m(ery)m(one)j
c2a47ea9 20528(the)e(e\013ectiv)m(e)j(freedom)330 1559 y(to)f(cop)m(y)g(and)f
37c41ab1 20529(redistribute)g(it,)h(with)g(or)f(without)g(mo)s(difying)g(it,)i
c2a47ea9 20530(either)f(commercially)h(or)e(non-)330 1669 y(commercially)-8
37c41ab1 20531b(.)56 b(Secondarily)-8 b(,)36 b(this)f(License)g(preserv)m(es)g(for)f
c2a47ea9 20532(the)h(author)f(and)g(publisher)f(a)i(w)m(a)m(y)330 1778
37c41ab1
CR
20533y(to)i(get)g(credit)g(for)f(their)g(w)m(ork,)i(while)e(not)g(b)s(eing)g
20534(considered)g(resp)s(onsible)f(for)h(mo)s(di\014cations)330
c2a47ea9 205351888 y(made)30 b(b)m(y)h(others.)330 2021 y(This)22 b(License)i(is)f(a)
37c41ab1
CR
20536h(kind)e(of)i(\\cop)m(yleft",)j(whic)m(h)c(means)g(that)h(deriv)-5
20537b(ativ)m(e)24 b(w)m(orks)f(of)h(the)f(do)s(cumen)m(t)330
c2a47ea9 205382131 y(m)m(ust)34 b(themselv)m(es)h(b)s(e)e(free)h(in)g(the)g(same)g
37c41ab1 20539(sense.)51 b(It)34 b(complemen)m(ts)h(the)f(GNU)g(General)h(Public)330
c2a47ea9
CR
205402240 y(License,)c(whic)m(h)f(is)h(a)f(cop)m(yleft)i(license)g(designed)
20541e(for)g(free)h(soft)m(w)m(are.)330 2373 y(W)-8 b(e)31
37c41ab1
CR
20542b(ha)m(v)m(e)f(designed)g(this)f(License)h(in)f(order)g(to)i(use)e(it)h
20543(for)f(man)m(uals)h(for)f(free)h(soft)m(w)m(are,)h(b)s(ecause)330
c2a47ea9 205442483 y(free)42 b(soft)m(w)m(are)i(needs)e(free)g(do)s(cumen)m(tation:)
37c41ab1 2054565 b(a)42 b(free)h(program)f(should)f(come)i(with)f(man)m(uals)330
c2a47ea9 205462592 y(pro)m(viding)29 b(the)g(same)g(freedoms)f(that)i(the)f(soft)m(w)
37c41ab1 20547m(are)h(do)s(es.)40 b(But)29 b(this)f(License)i(is)f(not)g(limited)g
c2a47ea9 20548(to)330 2702 y(soft)m(w)m(are)j(man)m(uals;)f(it)g(can)g(b)s(e)f(used)g
37c41ab1 20549(for)g(an)m(y)h(textual)h(w)m(ork,)f(regardless)g(of)g(sub)5
c2a47ea9 20550b(ject)30 b(matter)i(or)330 2812 y(whether)f(it)h(is)f(published)f(as)i
37c41ab1 20551(a)f(prin)m(ted)g(b)s(o)s(ok.)44 b(W)-8 b(e)32 b(recommend)f(this)h
c2a47ea9
CR
20552(License)g(principally)f(for)330 2921 y(w)m(orks)f(whose)h(purp)s(ose)d
20553(is)j(instruction)f(or)g(reference.)199 3054 y(1.)61
20554b(APPLICABILITY)29 b(AND)j(DEFINITIONS)330 3187 y(This)39
37c41ab1 20555b(License)i(applies)f(to)g(an)m(y)h(man)m(ual)f(or)g(other)g(w)m(ork,)i
c2a47ea9 20556(in)e(an)m(y)g(medium,)i(that)e(con)m(tains)i(a)330 3297
37c41ab1
CR
20557y(notice)h(placed)f(b)m(y)f(the)h(cop)m(yrigh)m(t)h(holder)e(sa)m(ying)
20558h(it)g(can)g(b)s(e)f(distributed)f(under)g(the)i(terms)330
c2a47ea9 205593407 y(of)c(this)f(License.)62 b(Suc)m(h)37 b(a)h(notice)h(gran)m(ts)f
37c41ab1 20560(a)g(w)m(orld-wide,)h(ro)m(y)m(alt)m(y-free)i(license,)f(unlimited)d
c2a47ea9 20561(in)330 3516 y(duration,)49 b(to)d(use)f(that)g(w)m(ork)h(under)d(the)j
37c41ab1 20562(conditions)f(stated)h(herein.)85 b(The)45 b(\\Do)s(cumen)m(t",)330
c2a47ea9 205633626 y(b)s(elo)m(w,)29 b(refers)f(to)h(an)m(y)g(suc)m(h)f(man)m(ual)h
37c41ab1 20564(or)f(w)m(ork.)40 b(An)m(y)29 b(mem)m(b)s(er)e(of)i(the)f(public)g(is)g
c2a47ea9 20565(a)h(licensee,)i(and)330 3735 y(is)25 b(addressed)f(as)h(\\y)m(ou".)40
37c41ab1
CR
20566b(Y)-8 b(ou)26 b(accept)g(the)f(license)h(if)f(y)m(ou)h(cop)m(y)-8
20567b(,)27 b(mo)s(dify)d(or)h(distribute)g(the)g(w)m(ork)330
c2a47ea9
CR
205683845 y(in)30 b(a)h(w)m(a)m(y)g(requiring)f(p)s(ermission)f(under)g(cop)
20569m(yrigh)m(t)j(la)m(w.)330 3978 y(A)i(\\Mo)s(di\014ed)f(V)-8
37c41ab1 20570b(ersion")35 b(of)f(the)g(Do)s(cumen)m(t)g(means)g(an)m(y)g(w)m(ork)f
c2a47ea9 20571(con)m(taining)j(the)e(Do)s(cumen)m(t)g(or)330 4088 y(a)k(p)s(ortion)f
37c41ab1 20572(of)h(it,)i(either)e(copied)g(v)m(erbatim,)i(or)d(with)h(mo)s
c2a47ea9
CR
20573(di\014cations)f(and/or)h(translated)g(in)m(to)330 4197
20574y(another)31 b(language.)330 4330 y(A)26 b(\\Secondary)g(Section")h(is)
37c41ab1 20575f(a)h(named)e(app)s(endix)f(or)i(a)h(fron)m(t-matter)g(section)g(of)f
c2a47ea9 20576(the)g(Do)s(cumen)m(t)330 4440 y(that)c(deals)g(exclusiv)m(ely)h(with)e
37c41ab1 20577(the)g(relationship)h(of)f(the)h(publishers)d(or)i(authors)g(of)h(the)f
c2a47ea9 20578(Do)s(cumen)m(t)330 4549 y(to)38 b(the)f(Do)s(cumen)m(t's)i(o)m(v)m
37c41ab1 20579(erall)g(sub)5 b(ject)37 b(\(or)h(to)g(related)g(matters\))g(and)f(con)
c2a47ea9 20580m(tains)h(nothing)f(that)330 4659 y(could)j(fall)h(directly)g(within)f
37c41ab1
CR
20581(that)h(o)m(v)m(erall)i(sub)5 b(ject.)70 b(\(Th)m(us,)42
20582b(if)e(the)h(Do)s(cumen)m(t)g(is)f(in)g(part)h(a)330
c2a47ea9 205834769 y(textb)s(o)s(ok)24 b(of)g(mathematics,)j(a)d(Secondary)f(Section)
37c41ab1 20584h(ma)m(y)g(not)g(explain)g(an)m(y)g(mathematics.\))40
c2a47ea9 20585b(The)330 4878 y(relationship)28 b(could)f(b)s(e)g(a)g(matter)i(of)e
37c41ab1 20586(historical)i(connection)f(with)f(the)h(sub)5 b(ject)27
c2a47ea9 20587b(or)g(with)g(related)330 4988 y(matters,)38 b(or)d(of)h(legal,)i
37c41ab1 20588(commercial,)h(philosophical,)f(ethical)f(or)e(p)s(olitical)i(p)s
c2a47ea9 20589(osition)f(regarding)330 5097 y(them.)330 5230 y(The)25
37c41ab1
CR
20590b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
20591(Sections)g(whose)f(titles)i(are)f(designated,)i(as)330
c2a47ea9 205925340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
37c41ab1 20593b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
c2a47ea9 20594(cumen)m(t)g(is)g(released)p eop end
5e6f45d9
CR
20595%%Page: 174 180
20596TeXDict begin 174 179 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20597b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 20598b(174)330 299 y(under)26 b(this)i(License.)40 b(If)27
ad4aef08 20599b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
c2a47ea9 20600(de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
37c41ab1
CR
20601y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
20602b(arian)m(t.)46 b(The)31 b(Do)s(cumen)m(t)i(ma)m(y)f(con)m(tain)i(zero)
c2a47ea9 20603e(In)m(v)-5 b(arian)m(t)330 518 y(Sections.)39 b(If)25
37c41ab1
CR
20604b(the)f(Do)s(cumen)m(t)i(do)s(es)e(not)h(iden)m(tify)g(an)m(y)g(In)m(v)
20605-5 b(arian)m(t)25 b(Sections)h(then)e(there)h(are)g(none.)330
1231ac47 20606669 y(The)36 b(\\Co)m(v)m(er)i(T)-8 b(exts")38 b(are)f(certain)g(short)
c2a47ea9 20607g(passages)g(of)g(text)g(that)h(are)f(listed,)i(as)d(F)-8
1231ac47 20608b(ron)m(t-Co)m(v)m(er)330 778 y(T)g(exts)26 b(or)f(Bac)m(k-Co)m(v)m(er)
c2a47ea9 20609j(T)-8 b(exts,)27 b(in)d(the)h(notice)i(that)e(sa)m(ys)h(that)g(the)f
1231ac47 20610(Do)s(cumen)m(t)h(is)f(released)g(under)330 888 y(this)h(License.)40
c2a47ea9
CR
20611b(A)25 b(F)-8 b(ron)m(t-Co)m(v)m(er)29 b(T)-8 b(ext)26
20612b(ma)m(y)h(b)s(e)e(at)i(most)f(5)g(w)m(ords,)g(and)g(a)g(Bac)m(k-Co)m
1231ac47
CR
20613(v)m(er)j(T)-8 b(ext)26 b(ma)m(y)330 998 y(b)s(e)k(at)h(most)g(25)g(w)m
20614(ords.)330 1148 y(A)36 b(\\T)-8 b(ransparen)m(t")36 b(cop)m(y)g(of)g
c2a47ea9 20615(the)f(Do)s(cumen)m(t)h(means)g(a)g(mac)m(hine-readable)h(cop)m(y)-8
1231ac47 20616b(,)38 b(represen)m(ted)330 1258 y(in)d(a)h(format)g(whose)g(sp)s
37c41ab1 20617(eci\014cation)g(is)g(a)m(v)-5 b(ailable)38 b(to)f(the)f(general)g
1231ac47 20618(public,)h(that)f(is)g(suitable)g(for)330 1367 y(revising)c(the)g(do)s
37c41ab1 20619(cumen)m(t)f(straigh)m(tforw)m(ardly)i(with)e(generic)i(text)g(editors)
1231ac47 20620f(or)f(\(for)h(images)h(com-)330 1477 y(p)s(osed)23 b(of)h(pixels\))g
37c41ab1 20621(generic)h(pain)m(t)f(programs)g(or)f(\(for)h(dra)m(wings\))g(some)g
1231ac47 20622(widely)g(a)m(v)-5 b(ailable)26 b(dra)m(wing)330 1587
37c41ab1
CR
20623y(editor,)k(and)f(that)g(is)g(suitable)h(for)f(input)f(to)i(text)g
20624(formatters)f(or)g(for)g(automatic)i(translation)f(to)330
1231ac47 206251696 y(a)d(v)-5 b(ariet)m(y)28 b(of)f(formats)g(suitable)h(for)e(input)
37c41ab1 20626g(to)i(text)g(formatters.)40 b(A)27 b(cop)m(y)g(made)g(in)g(an)g
1231ac47 20627(otherwise)330 1806 y(T)-8 b(ransparen)m(t)37 b(\014le)h(format)g
5e13499c 20628(whose)f(markup,)i(or)e(absence)h(of)g(markup,)g(has)g(b)s(een)f
1231ac47 20629(arranged)g(to)330 1915 y(th)m(w)m(art)27 b(or)g(discourage)g
37c41ab1 20630(subsequen)m(t)f(mo)s(di\014cation)h(b)m(y)g(readers)f(is)g(not)h(T)-8
1231ac47 20631b(ransparen)m(t.)39 b(An)27 b(image)330 2025 y(format)35
37c41ab1
CR
20632b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
20633(substan)m(tial)h(amoun)m(t)g(of)g(text.)53 b(A)35 b(cop)m(y)g(that)g
1231ac47
CR
20634(is)330 2134 y(not)c(\\T)-8 b(ransparen)m(t")31 b(is)f(called)i
20635(\\Opaque".)330 2285 y(Examples)53 b(of)g(suitable)h(formats)f(for)g(T)
6e51e0d0
CR
20636-8 b(ransparen)m(t)53 b(copies)h(include)f(plain)g Fm(asci)r(i)g
20637Fu(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
c302751c 20638(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
6e51e0d0
CR
20639Ff(SGML)f Fu(or)f Ff(XML)g Fu(using)g(a)g(publicly)330
206402504 y(a)m(v)-5 b(ailable)42 b Ff(DTD)p Fu(,)h(and)c
20641(standard-conforming)g(simple)h Ff(HTML)p Fu(,)i(P)m(ostScript)e(or)f
20642Ff(PDF)h Fu(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
20643b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
20644Ff(PNG)p Fu(,)i Ff(X)n(CF)330 2724 y Fu(and)e Ff(JPG)p
20645Fu(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
20646h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
20647b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
20648Ff(SGML)54 b Fu(or)f Ff(XML)h Fu(for)g(whic)m(h)f(the)h
20649Ff(DTD)g Fu(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
20650(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
20651(hine-generated)j Ff(HTML)p Fu(,)330 3052 y(P)m(ostScript)31
20652b(or)f Ff(PDF)h Fu(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
20653(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
206543203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
20655s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
20656(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
20657b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
20658(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
20659b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
20660(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
206613532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
20662(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
206633641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
206643792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
20665m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
206663902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
20667(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
20668(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
20669(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
20670(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
20671b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
20672(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
20673(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
20674(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
20675y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
20676(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
206774600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
20678(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
20679-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
20680(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
20681(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
20682b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
20683(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
20684(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
20685(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
20686b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
206875189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
206885340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
5e6f45d9
CR
20689%%Page: 175 181
20690TeXDict begin 175 180 bop 150 -116 a Fu(App)s(endix)29
c2a47ea9 20691b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 20692b(175)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
1231ac47
CR
20693(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
20694(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
20695b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
20696(and)42 b(the)h(license)330 518 y(notice)37 b(sa)m(ying)g(this)e
20697(License)i(applies)e(to)i(the)f(Do)s(cumen)m(t)g(are)g(repro)s(duced)e
20698(in)i(all)g(copies,)j(and)330 628 y(that)27 b(y)m(ou)g(add)f(no)h
20699(other)f(conditions)h(whatso)s(ev)m(er)h(to)f(those)g(of)g(this)f
20700(License.)40 b(Y)-8 b(ou)27 b(ma)m(y)g(not)g(use)330
20701737 y(tec)m(hnical)35 b(measures)d(to)i(obstruct)f(or)g(con)m(trol)h
20702(the)f(reading)g(or)g(further)e(cop)m(ying)j(of)f(the)g(copies)330
20703847 y(y)m(ou)25 b(mak)m(e)g(or)g(distribute.)38 b(Ho)m(w)m(ev)m(er,)28
37c41ab1 20704b(y)m(ou)d(ma)m(y)g(accept)h(comp)s(ensation)f(in)f(exc)m(hange)j(for)d
1231ac47 20705(copies.)330 956 y(If)32 b(y)m(ou)g(distribute)g(a)h(large)g(enough)f
37c41ab1 20706(n)m(um)m(b)s(er)f(of)h(copies)h(y)m(ou)f(m)m(ust)h(also)g(follo)m(w)g
1231ac47 20707(the)f(conditions)330 1066 y(in)e(section)i(3.)330 1200
37c41ab1
CR
20708y(Y)-8 b(ou)21 b(ma)m(y)h(also)f(lend)g(copies,)i(under)d(the)h(same)g
20709(conditions)g(stated)h(ab)s(o)m(v)m(e,)i(and)c(y)m(ou)h(ma)m(y)g
1231ac47
CR
20710(publicly)330 1310 y(displa)m(y)31 b(copies.)199 1443
20711y(3.)61 b(COPYING)30 b(IN)g(QUANTITY)330 1577 y(If)25
37c41ab1
CR
20712b(y)m(ou)g(publish)f(prin)m(ted)g(copies)i(\(or)g(copies)g(in)f(media)g
20713(that)h(commonly)g(ha)m(v)m(e)g(prin)m(ted)f(co)m(v)m(ers\))i(of)330
1231ac47 207141687 y(the)32 b(Do)s(cumen)m(t,)h(n)m(um)m(b)s(ering)e(more)h(than)f
37c41ab1 20715(100,)j(and)d(the)h(Do)s(cumen)m(t's)h(license)f(notice)h(requires)330
1231ac47 207161797 y(Co)m(v)m(er)i(T)-8 b(exts,)36 b(y)m(ou)f(m)m(ust)f(enclose)i
37c41ab1 20717(the)e(copies)h(in)f(co)m(v)m(ers)i(that)f(carry)-8 b(,)36
1231ac47 20718b(clearly)f(and)f(legibly)-8 b(,)37 b(all)330 1906 y(these)j(Co)m(v)m
37c41ab1 20719(er)g(T)-8 b(exts:)59 b(F)-8 b(ron)m(t-Co)m(v)m(er)41
5e13499c
CR
20720b(T)-8 b(exts)40 b(on)f(the)g(fron)m(t)g(co)m(v)m(er,)44
20721b(and)38 b(Bac)m(k-Co)m(v)m(er)k(T)-8 b(exts)40 b(on)330
1231ac47 207222016 y(the)29 b(bac)m(k)h(co)m(v)m(er.)42 b(Both)30 b(co)m(v)m(ers)h(m)
37c41ab1 20723m(ust)e(also)h(clearly)g(and)f(legibly)h(iden)m(tify)f(y)m(ou)h(as)f
1231ac47 20724(the)h(publisher)330 2125 y(of)k(these)h(copies.)53 b(The)34
37c41ab1 20725b(fron)m(t)h(co)m(v)m(er)h(m)m(ust)e(presen)m(t)g(the)h(full)f(title)i
1231ac47 20726(with)d(all)j(w)m(ords)d(of)i(the)f(title)330 2235 y(equally)e
37c41ab1
CR
20727(prominen)m(t)e(and)g(visible.)43 b(Y)-8 b(ou)31 b(ma)m(y)g(add)g
20728(other)g(material)h(on)f(the)g(co)m(v)m(ers)h(in)e(addition.)330
1231ac47 207292345 y(Cop)m(ying)36 b(with)g(c)m(hanges)h(limited)g(to)g(the)g(co)m(v)
37c41ab1 20730m(ers,)i(as)d(long)h(as)g(they)f(preserv)m(e)g(the)h(title)g(of)g(the)
1231ac47 20731330 2454 y(Do)s(cumen)m(t)h(and)e(satisfy)i(these)f(conditions,)j(can)d
37c41ab1 20732(b)s(e)g(treated)h(as)f(v)m(erbatim)h(cop)m(ying)g(in)f(other)330
1231ac47 207332564 y(resp)s(ects.)330 2698 y(If)32 b(the)h(required)f(texts)i(for)e
37c41ab1 20734(either)h(co)m(v)m(er)i(are)e(to)s(o)g(v)m(oluminous)g(to)g(\014t)g
1231ac47 20735(legibly)-8 b(,)35 b(y)m(ou)e(should)f(put)330 2807 y(the)h(\014rst)f
37c41ab1
CR
20736(ones)h(listed)g(\(as)h(man)m(y)f(as)g(\014t)g(reasonably\))g(on)g(the)
20737g(actual)h(co)m(v)m(er,)h(and)e(con)m(tin)m(ue)h(the)330
1231ac47 207382917 y(rest)d(on)m(to)g(adjacen)m(t)h(pages.)330 3051
37c41ab1
CR
20739y(If)27 b(y)m(ou)g(publish)e(or)i(distribute)g(Opaque)f(copies)i(of)f
20740(the)h(Do)s(cumen)m(t)f(n)m(um)m(b)s(ering)f(more)i(than)e(100,)330
1231ac47 207413160 y(y)m(ou)i(m)m(ust)g(either)h(include)e(a)i(mac)m(hine-readable)g
37c41ab1 20742(T)-8 b(ransparen)m(t)28 b(cop)m(y)h(along)g(with)e(eac)m(h)i(Opaque)
1231ac47 20743330 3270 y(cop)m(y)-8 b(,)38 b(or)d(state)h(in)f(or)g(with)g(eac)m(h)h
37c41ab1 20744(Opaque)e(cop)m(y)i(a)g(computer-net)m(w)m(ork)g(lo)s(cation)h(from)d
1231ac47 20745(whic)m(h)330 3380 y(the)24 b(general)i(net)m(w)m(ork-using)f(public)e
37c41ab1 20746(has)h(access)i(to)f(do)m(wnload)f(using)g(public-standard)f(net)m(w)m
1231ac47 20747(ork)330 3489 y(proto)s(cols)40 b(a)f(complete)h(T)-8
5e13499c 20748b(ransparen)m(t)39 b(cop)m(y)g(of)g(the)h(Do)s(cumen)m(t,)i(free)d(of)g
1231ac47 20749(added)f(material.)67 b(If)330 3599 y(y)m(ou)39 b(use)g(the)g(latter)h
37c41ab1 20750(option,)h(y)m(ou)f(m)m(ust)e(tak)m(e)j(reasonably)e(pruden)m(t)e
1231ac47 20751(steps,)k(when)d(y)m(ou)h(b)s(egin)330 3708 y(distribution)f(of)g
37c41ab1
CR
20752(Opaque)g(copies)h(in)e(quan)m(tit)m(y)-8 b(,)43 b(to)38
20753b(ensure)g(that)h(this)f(T)-8 b(ransparen)m(t)38 b(cop)m(y)h(will)330
1231ac47 207543818 y(remain)30 b(th)m(us)g(accessible)i(at)f(the)f(stated)h(lo)s
37c41ab1 20755(cation)h(un)m(til)e(at)h(least)h(one)e(y)m(ear)h(after)g(the)f(last)h
1231ac47 20756(time)330 3927 y(y)m(ou)37 b(distribute)f(an)h(Opaque)f(cop)m(y)i
37c41ab1 20757(\(directly)g(or)e(through)g(y)m(our)h(agen)m(ts)h(or)f(retailers\))h
1231ac47
CR
20758(of)f(that)330 4037 y(edition)31 b(to)g(the)g(public.)330
207594171 y(It)k(is)f(requested,)i(but)e(not)h(required,)g(that)g(y)m(ou)g
5e13499c 20760(con)m(tact)h(the)f(authors)f(of)h(the)g(Do)s(cumen)m(t)g(w)m(ell)330
1231ac47 207614281 y(b)s(efore)28 b(redistributing)g(an)m(y)h(large)h(n)m(um)m(b)s
37c41ab1 20762(er)d(of)i(copies,)h(to)f(giv)m(e)h(them)f(a)g(c)m(hance)h(to)f(pro)m
1231ac47
CR
20763(vide)g(y)m(ou)330 4390 y(with)h(an)g(up)s(dated)f(v)m(ersion)i(of)g
20764(the)f(Do)s(cumen)m(t.)199 4524 y(4.)61 b(MODIFICA)-8
20765b(TIONS)330 4658 y(Y)g(ou)26 b(ma)m(y)g(cop)m(y)g(and)f(distribute)g(a)
37c41ab1 20766h(Mo)s(di\014ed)f(V)-8 b(ersion)26 b(of)g(the)g(Do)s(cumen)m(t)g(under)
1231ac47 20767e(the)h(conditions)330 4768 y(of)c(sections)h(2)g(and)e(3)h(ab)s(o)m(v)
37c41ab1 20768m(e,)k(pro)m(vided)20 b(that)i(y)m(ou)f(release)i(the)e(Mo)s(di\014ed)f
1231ac47 20769(V)-8 b(ersion)22 b(under)d(precisely)330 4877 y(this)29
37c41ab1
CR
20770b(License,)h(with)f(the)g(Mo)s(di\014ed)f(V)-8 b(ersion)30
20771b(\014lling)f(the)g(role)h(of)f(the)g(Do)s(cumen)m(t,)h(th)m(us)f
1231ac47 20772(licensing)330 4987 y(distribution)k(and)h(mo)s(di\014cation)g(of)h
37c41ab1 20773(the)f(Mo)s(di\014ed)f(V)-8 b(ersion)35 b(to)g(who)s(ev)m(er)f(p)s
1231ac47 20774(ossesses)f(a)i(cop)m(y)g(of)330 5096 y(it.)41 b(In)30
37c41ab1 20775b(addition,)h(y)m(ou)f(m)m(ust)h(do)f(these)h(things)f(in)g(the)h(Mo)s
1231ac47 20776(di\014ed)e(V)-8 b(ersion:)357 5230 y(A.)60 b(Use)33
c2a47ea9
CR
20777b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
20778(an)m(y\))g(a)g(title)h(distinct)f(from)g(that)g(of)g(the)510
1231ac47 207795340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
c2a47ea9 20780(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
1231ac47 20781b(,)p eop end
5e6f45d9
CR
20782%%Page: 176 182
20783TeXDict begin 176 181 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20784b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 20785b(176)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
ad4aef08
CR
20786(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
20787h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
20788i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
20789545 y(B.)61 b(List)31 b(on)f(the)h(Title)g(P)m(age,)i(as)d(authors,)h
20790(one)g(or)f(more)h(p)s(ersons)e(or)h(en)m(tities)j(resp)s(onsible)c
20791(for)510 655 y(authorship)c(of)h(the)h(mo)s(di\014cations)f(in)g(the)g
20792(Mo)s(di\014ed)f(V)-8 b(ersion,)28 b(together)g(with)d(at)i(least)h
20793(\014v)m(e)510 765 y(of)c(the)g(principal)g(authors)f(of)i(the)f(Do)s
20794(cumen)m(t)g(\(all)h(of)g(its)f(principal)g(authors,)h(if)f(it)g(has)g
20795(few)m(er)510 874 y(than)30 b(\014v)m(e\),)h(unless)f(they)h(release)g
20796(y)m(ou)g(from)f(this)g(requiremen)m(t.)359 1011 y(C.)60
1231ac47
CR
20797b(State)32 b(on)e(the)h(Title)h(page)f(the)g(name)g(of)g(the)g
20798(publisher)e(of)i(the)g(Mo)s(di\014ed)f(V)-8 b(ersion,)32
20799b(as)f(the)510 1121 y(publisher.)355 1258 y(D.)61 b(Preserv)m(e)31
20800b(all)g(the)g(cop)m(yrigh)m(t)h(notices)f(of)g(the)f(Do)s(cumen)m(t.)
20801363 1395 y(E.)60 b(Add)30 b(an)i(appropriate)f(cop)m(yrigh)m(t)i
20802(notice)f(for)g(y)m(our)f(mo)s(di\014cations)g(adjacen)m(t)i(to)f(the)g
20803(other)510 1504 y(cop)m(yrigh)m(t)g(notices.)365 1641
20804y(F.)61 b(Include,)28 b(immediately)h(after)f(the)h(cop)m(yrigh)m(t)g
20805(notices,)h(a)e(license)h(notice)g(giving)g(the)f(public)510
208061751 y(p)s(ermission)23 b(to)j(use)e(the)g(Mo)s(di\014ed)g(V)-8
20807b(ersion)25 b(under)e(the)i(terms)f(of)h(this)f(License,)j(in)d(the)g
20808(form)510 1861 y(sho)m(wn)30 b(in)g(the)g(Addendum)f(b)s(elo)m(w.)353
208091998 y(G.)61 b(Preserv)m(e)23 b(in)g(that)g(license)h(notice)g(the)f
37c41ab1 20810(full)g(lists)g(of)g(In)m(v)-5 b(arian)m(t)23 b(Sections)h(and)e
1231ac47
CR
20811(required)g(Co)m(v)m(er)510 2107 y(T)-8 b(exts)31 b(giv)m(en)g(in)f
20812(the)h(Do)s(cumen)m(t's)g(license)h(notice.)357 2244
37c41ab1 20813y(H.)60 b(Include)30 b(an)g(unaltered)g(cop)m(y)h(of)g(this)f(License.)
1231ac47 20814392 2381 y(I.)60 b(Preserv)m(e)33 b(the)f(section)h(En)m(titled)g
37c41ab1 20815(\\History",)h(Preserv)m(e)f(its)f(Title,)i(and)d(add)h(to)h(it)f(an)g
1231ac47 20816(item)510 2491 y(stating)d(at)g(least)g(the)g(title,)h(y)m(ear,)g(new)d
37c41ab1 20817(authors,)i(and)e(publisher)f(of)j(the)f(Mo)s(di\014ed)f(V)-8
1231ac47 20818b(ersion)510 2600 y(as)32 b(giv)m(en)g(on)f(the)h(Title)g(P)m(age.)45
37c41ab1 20819b(If)31 b(there)h(is)f(no)g(section)i(En)m(titled)f(\\History")h(in)e
1231ac47 20820(the)g(Do)s(cu-)510 2710 y(men)m(t,)37 b(create)f(one)f(stating)h(the)f
37c41ab1 20821(title,)i(y)m(ear,)g(authors,)f(and)e(publisher)f(of)i(the)g(Do)s
1231ac47 20822(cumen)m(t)510 2819 y(as)h(giv)m(en)h(on)f(its)h(Title)g(P)m(age,)i
37c41ab1 20823(then)d(add)g(an)g(item)g(describing)g(the)g(Mo)s(di\014ed)g(V)-8
1231ac47
CR
20824b(ersion)37 b(as)510 2929 y(stated)31 b(in)f(the)h(previous)f(sen)m
20825(tence.)378 3066 y(J.)60 b(Preserv)m(e)33 b(the)g(net)m(w)m(ork)g(lo)s
37c41ab1 20826(cation,)i(if)d(an)m(y)-8 b(,)34 b(giv)m(en)f(in)g(the)f(Do)s(cumen)m
1231ac47 20827(t)h(for)g(public)e(access)j(to)510 3176 y(a)e(T)-8 b(ransparen)m(t)30
37c41ab1 20828b(cop)m(y)i(of)g(the)f(Do)s(cumen)m(t,)h(and)f(lik)m(ewise)h(the)g(net)
1231ac47 20829m(w)m(ork)g(lo)s(cations)g(giv)m(en)g(in)510 3285 y(the)g(Do)s(cumen)m
37c41ab1 20830(t)g(for)g(previous)f(v)m(ersions)h(it)g(w)m(as)g(based)f(on.)45
1231ac47 20831b(These)31 b(ma)m(y)h(b)s(e)f(placed)h(in)g(the)510 3395
37c41ab1
CR
20832y(\\History")27 b(section.)40 b(Y)-8 b(ou)25 b(ma)m(y)h(omit)g(a)f(net)
20833m(w)m(ork)h(lo)s(cation)g(for)f(a)h(w)m(ork)f(that)g(w)m(as)h
1231ac47 20834(published)510 3504 y(at)36 b(least)h(four)e(y)m(ears)i(b)s(efore)e
37c41ab1 20835(the)h(Do)s(cumen)m(t)h(itself,)h(or)d(if)h(the)g(original)h(publisher)
1231ac47
CR
20836d(of)i(the)510 3614 y(v)m(ersion)31 b(it)g(refers)f(to)h(giv)m(es)h(p)s
20837(ermission.)354 3751 y(K.)60 b(F)-8 b(or)24 b(an)m(y)h(section)f(En)m
37c41ab1 20838(titled)h(\\Ac)m(kno)m(wledgemen)m(ts")i(or)d(\\Dedications",)k
1231ac47 20839(Preserv)m(e)c(the)g(Title)510 3861 y(of)j(the)f(section,)j(and)d
37c41ab1 20840(preserv)m(e)h(in)f(the)h(section)g(all)h(the)e(substance)h(and)f(tone)
1231ac47 20841h(of)f(eac)m(h)i(of)f(the)510 3970 y(con)m(tributor)k(ac)m(kno)m
37c41ab1 20842(wledgemen)m(ts)i(and/or)d(dedications)h(giv)m(en)h(therein.)368
1231ac47 208434107 y(L.)60 b(Preserv)m(e)36 b(all)g(the)g(In)m(v)-5
37c41ab1 20844b(arian)m(t)36 b(Sections)g(of)f(the)h(Do)s(cumen)m(t,)h(unaltered)f
1231ac47 20845(in)f(their)g(text)i(and)510 4217 y(in)f(their)g(titles.)58
37c41ab1
CR
20846b(Section)37 b(n)m(um)m(b)s(ers)d(or)i(the)g(equiv)-5
20847b(alen)m(t)38 b(are)e(not)g(considered)g(part)g(of)g(the)510
1231ac47 208484326 y(section)c(titles.)341 4463 y(M.)61 b(Delete)33
37c41ab1
CR
20849b(an)m(y)e(section)h(En)m(titled)f(\\Endorsemen)m(ts".)42
20850b(Suc)m(h)30 b(a)i(section)f(ma)m(y)h(not)f(b)s(e)f(included)510
1231ac47
CR
208514573 y(in)g(the)h(Mo)s(di\014ed)e(V)-8 b(ersion.)357
208524710 y(N.)60 b(Do)29 b(not)g(retitle)h(an)m(y)e(existing)i(section)f
37c41ab1 20853(to)g(b)s(e)f(En)m(titled)h(\\Endorsemen)m(ts")g(or)f(to)h(con\015ict)g
1231ac47
CR
20854(in)510 4819 y(title)j(with)e(an)m(y)h(In)m(v)-5 b(arian)m(t)31
20855b(Section.)354 4956 y(O.)60 b(Preserv)m(e)31 b(an)m(y)g(W)-8
20856b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
37c41ab1 20857(V)-8 b(ersion)34 b(includes)f(new)g(fron)m(t-matter)i(sections)f(or)f
1231ac47 20858(app)s(endices)g(that)h(qualify)330 5230 y(as)28 b(Secondary)g
37c41ab1 20859(Sections)g(and)f(con)m(tain)j(no)d(material)j(copied)e(from)f(the)h
1231ac47 20860(Do)s(cumen)m(t,)i(y)m(ou)e(ma)m(y)g(at)330 5340 y(y)m(our)k(option)h
c2a47ea9 20861(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
1231ac47 20862b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
c2a47ea9 20863eop end
5e6f45d9
CR
20864%%Page: 177 183
20865TeXDict begin 177 182 bop 150 -116 a Fu(App)s(endix)29
c2a47ea9 20866b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 20867b(177)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
1231ac47
CR
20868b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
20869b(ersion's)36 b(license)g(notice.)57 b(These)330 408
20870y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
20871(section)g(titles.)330 551 y(Y)-8 b(ou)43 b(ma)m(y)g(add)f(a)g(section)
20872i(En)m(titled)f(\\Endorsemen)m(ts",)j(pro)m(vided)c(it)h(con)m(tains)g
20873(nothing)g(but)330 661 y(endorsemen)m(ts)30 b(of)g(y)m(our)f(Mo)s
37c41ab1 20874(di\014ed)g(V)-8 b(ersion)31 b(b)m(y)e(v)-5 b(arious)30
1231ac47 20875b(parties|for)g(example,)g(statemen)m(ts)i(of)330 770
37c41ab1
CR
20876y(p)s(eer)27 b(review)g(or)g(that)h(the)f(text)i(has)d(b)s(een)h(appro)
20877m(v)m(ed)g(b)m(y)g(an)h(organization)h(as)e(the)h(authoritativ)m(e)330
1231ac47 20878880 y(de\014nition)i(of)h(a)f(standard.)330 1022 y(Y)-8
37c41ab1
CR
20879b(ou)29 b(ma)m(y)g(add)e(a)i(passage)g(of)g(up)e(to)i(\014v)m(e)g(w)m
20880(ords)e(as)i(a)g(F)-8 b(ron)m(t-Co)m(v)m(er)30 b(T)-8
1231ac47 20881b(ext,)30 b(and)e(a)g(passage)i(of)e(up)330 1132 y(to)g(25)g(w)m(ords)e
37c41ab1
CR
20882(as)i(a)f(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext,)29 b(to)f(the)f(end)f(of)i
20883(the)f(list)h(of)f(Co)m(v)m(er)h(T)-8 b(exts)27 b(in)g(the)h(Mo)s
1231ac47 20884(di\014ed)330 1241 y(V)-8 b(ersion.)58 b(Only)35 b(one)h(passage)h(of)f
37c41ab1 20885(F)-8 b(ron)m(t-Co)m(v)m(er)38 b(T)-8 b(ext)36 b(and)g(one)g(of)g(Bac)m
1231ac47 20886(k-Co)m(v)m(er)j(T)-8 b(ext)36 b(ma)m(y)h(b)s(e)330 1351
37c41ab1
CR
20887y(added)27 b(b)m(y)g(\(or)h(through)f(arrangemen)m(ts)h(made)g(b)m(y\))
20888g(an)m(y)g(one)f(en)m(tit)m(y)-8 b(.)42 b(If)27 b(the)h(Do)s(cumen)m(t)
1231ac47 20889g(already)330 1461 y(includes)34 b(a)g(co)m(v)m(er)h(text)g(for)f(the)g
37c41ab1 20890(same)h(co)m(v)m(er,)h(previously)e(added)f(b)m(y)h(y)m(ou)g(or)g(b)m
1231ac47 20891(y)g(arrangemen)m(t)330 1570 y(made)h(b)m(y)g(the)h(same)f(en)m(tit)m
37c41ab1 20892(y)i(y)m(ou)f(are)f(acting)i(on)e(b)s(ehalf)f(of,)j(y)m(ou)f(ma)m(y)g
1231ac47 20893(not)f(add)g(another;)j(but)330 1680 y(y)m(ou)c(ma)m(y)h(replace)g(the)
37c41ab1 20894f(old)g(one,)i(on)e(explicit)h(p)s(ermission)e(from)g(the)i(previous)e
1231ac47
CR
20895(publisher)f(that)330 1789 y(added)e(the)g(old)h(one.)330
208961932 y(The)25 b(author\(s\))h(and)f(publisher\(s\))f(of)i(the)f(Do)s
37c41ab1 20897(cumen)m(t)h(do)g(not)f(b)m(y)h(this)f(License)h(giv)m(e)h(p)s
1231ac47 20898(ermission)330 2041 y(to)k(use)f(their)g(names)h(for)f(publicit)m(y)g
37c41ab1 20899(for)h(or)f(to)h(assert)g(or)f(imply)g(endorsemen)m(t)g(of)h(an)m(y)g
1231ac47
CR
20900(Mo)s(di\014ed)330 2151 y(V)-8 b(ersion.)199 2293 y(5.)61
20901b(COMBINING)31 b(DOCUMENTS)330 2436 y(Y)-8 b(ou)39 b(ma)m(y)g(com)m
37c41ab1 20902(bine)h(the)f(Do)s(cumen)m(t)g(with)g(other)f(do)s(cumen)m(ts)h
1231ac47 20903(released)g(under)f(this)g(License,)330 2545 y(under)f(the)h(terms)g
37c41ab1 20904(de\014ned)f(in)h(section)h(4)g(ab)s(o)m(v)m(e)g(for)f(mo)s(di\014ed)f
1231ac47 20905(v)m(ersions,)k(pro)m(vided)d(that)h(y)m(ou)330 2655
37c41ab1
CR
20906y(include)25 b(in)g(the)g(com)m(bination)i(all)f(of)g(the)f(In)m(v)-5
20907b(arian)m(t)26 b(Sections)g(of)g(all)g(of)f(the)h(original)g(do)s
1231ac47 20908(cumen)m(ts,)330 2765 y(unmo)s(di\014ed,)g(and)g(list)h(them)g(all)g
37c41ab1 20909(as)g(In)m(v)-5 b(arian)m(t)28 b(Sections)f(of)g(y)m(our)g(com)m(bined)
1231ac47 20910g(w)m(ork)f(in)h(its)g(license)330 2874 y(notice,)32
37c41ab1 20911b(and)e(that)h(y)m(ou)f(preserv)m(e)h(all)g(their)g(W)-8
1231ac47 20912b(arran)m(t)m(y)32 b(Disclaimers.)330 3017 y(The)e(com)m(bined)g(w)m
37c41ab1 20913(ork)h(need)e(only)i(con)m(tain)g(one)g(cop)m(y)g(of)f(this)g(License,)
1231ac47 20914i(and)d(m)m(ultiple)i(iden)m(tical)330 3126 y(In)m(v)-5
37c41ab1
CR
20915b(arian)m(t)33 b(Sections)g(ma)m(y)g(b)s(e)f(replaced)h(with)f(a)h
20916(single)g(cop)m(y)-8 b(.)48 b(If)32 b(there)h(are)g(m)m(ultiple)g(In)m
1231ac47 20917(v)-5 b(arian)m(t)330 3236 y(Sections)27 b(with)g(the)g(same)g(name)g
37c41ab1 20918(but)f(di\013eren)m(t)h(con)m(ten)m(ts,)i(mak)m(e)f(the)f(title)h(of)f
1231ac47 20919(eac)m(h)h(suc)m(h)f(section)330 3345 y(unique)33 b(b)m(y)h(adding)f
37c41ab1 20920(at)i(the)f(end)g(of)g(it,)h(in)f(paren)m(theses,)i(the)e(name)g(of)g
1231ac47 20921(the)g(original)h(author)f(or)330 3455 y(publisher)23
37c41ab1 20922b(of)i(that)h(section)g(if)f(kno)m(wn,)h(or)f(else)h(a)f(unique)f(n)m
5e13499c 20923(um)m(b)s(er.)38 b(Mak)m(e)26 b(the)g(same)f(adjustmen)m(t)330
1231ac47 209243565 y(to)g(the)g(section)g(titles)h(in)e(the)h(list)g(of)f(In)m(v)-5
37c41ab1 20925b(arian)m(t)26 b(Sections)f(in)f(the)g(license)i(notice)g(of)e(the)h
1231ac47 20926(com)m(bined)330 3674 y(w)m(ork.)330 3817 y(In)41 b(the)g(com)m
37c41ab1
CR
20927(bination,)46 b(y)m(ou)41 b(m)m(ust)g(com)m(bine)h(an)m(y)g(sections)g
20928(En)m(titled)g(\\History")h(in)e(the)g(v)-5 b(ari-)330
1231ac47 209293926 y(ous)32 b(original)h(do)s(cumen)m(ts,)g(forming)f(one)g(section)h
37c41ab1 20930(En)m(titled)g(\\History";)i(lik)m(ewise)f(com)m(bine)f(an)m(y)330
1231ac47 209314036 y(sections)g(En)m(titled)f(\\Ac)m(kno)m(wledgemen)m(ts",)k(and)31
37c41ab1 20932b(an)m(y)h(sections)h(En)m(titled)g(\\Dedications".)47
1231ac47
CR
20933b(Y)-8 b(ou)330 4145 y(m)m(ust)30 b(delete)i(all)f(sections)h(En)m
20934(titled)f(\\Endorsemen)m(ts.")199 4288 y(6.)61 b(COLLECTIONS)28
20935b(OF)i(DOCUMENTS)330 4430 y(Y)-8 b(ou)32 b(ma)m(y)h(mak)m(e)g(a)f
37c41ab1 20936(collection)i(consisting)f(of)f(the)g(Do)s(cumen)m(t)g(and)g(other)g
1231ac47 20937(do)s(cumen)m(ts)f(released)330 4540 y(under)41 b(this)h(License,)k
37c41ab1 20938(and)c(replace)h(the)g(individual)f(copies)h(of)f(this)g(License)h(in)f
1231ac47 20939(the)h(v)-5 b(arious)330 4650 y(do)s(cumen)m(ts)42 b(with)g(a)h(single)
37c41ab1 20940g(cop)m(y)h(that)f(is)f(included)g(in)g(the)h(collection,)48
1231ac47 20941b(pro)m(vided)42 b(that)i(y)m(ou)330 4759 y(follo)m(w)38
37c41ab1
CR
20942b(the)g(rules)e(of)h(this)g(License)h(for)f(v)m(erbatim)h(cop)m(ying)g
20943(of)f(eac)m(h)h(of)f(the)h(do)s(cumen)m(ts)e(in)h(all)330
1231ac47 209444869 y(other)31 b(resp)s(ects.)330 5011 y(Y)-8 b(ou)32
37c41ab1
CR
20945b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
20946(collection,)i(and)d(distribute)g(it)h(individu-)330
1231ac47 209475121 y(ally)k(under)d(this)i(License,)i(pro)m(vided)e(y)m(ou)g(insert)g
37c41ab1 20948(a)g(cop)m(y)h(of)f(this)g(License)g(in)m(to)h(the)g(extracted)330
1231ac47 209495230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
37c41ab1 20950(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
1231ac47 209515340 y(that)d(do)s(cumen)m(t.)p eop end
5e6f45d9
CR
20952%%Page: 178 184
20953TeXDict begin 178 183 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20954b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 20955b(178)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
ad4aef08
CR
20956(W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
20957(its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
20958s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
20959(on)f(a)g(v)m(olume)h(of)g(a)f(storage)i(or)e(distribution)g(medium,)g
20960(is)h(called)330 661 y(an)c(\\aggregate")k(if)c(the)g(cop)m(yrigh)m(t)i
20961(resulting)e(from)f(the)i(compilation)g(is)f(not)h(used)e(to)i(limit)g
20962(the)330 770 y(legal)d(righ)m(ts)f(of)g(the)g(compilation's)h(users)e
20963(b)s(ey)m(ond)g(what)g(the)h(individual)f(w)m(orks)g(p)s(ermit.)39
1231ac47
CR
20964b(When)330 880 y(the)g(Do)s(cumen)m(t)g(is)f(included)g(in)g(an)g
20965(aggregate,)44 b(this)38 b(License)h(do)s(es)f(not)h(apply)f(to)h(the)g
20966(other)330 989 y(w)m(orks)30 b(in)g(the)h(aggregate)i(whic)m(h)d(are)h
20967(not)g(themselv)m(es)g(deriv)-5 b(ativ)m(e)32 b(w)m(orks)f(of)f(the)h
20968(Do)s(cumen)m(t.)330 1132 y(If)22 b(the)h(Co)m(v)m(er)h(T)-8
20969b(ext)23 b(requiremen)m(t)g(of)g(section)h(3)f(is)g(applicable)h(to)f
20970(these)h(copies)f(of)g(the)g(Do)s(cumen)m(t,)330 1241
20971y(then)f(if)g(the)h(Do)s(cumen)m(t)g(is)g(less)f(than)g(one)h(half)f
20972(of)h(the)g(en)m(tire)g(aggregate,)k(the)c(Do)s(cumen)m(t's)g(Co)m(v)m
20973(er)330 1351 y(T)-8 b(exts)27 b(ma)m(y)g(b)s(e)f(placed)h(on)g(co)m(v)m
20974(ers)h(that)f(brac)m(k)m(et)h(the)f(Do)s(cumen)m(t)g(within)f(the)h
20975(aggregate,)j(or)d(the)330 1461 y(electronic)37 b(equiv)-5
20976b(alen)m(t)36 b(of)g(co)m(v)m(ers)g(if)f(the)g(Do)s(cumen)m(t)h(is)f
20977(in)g(electronic)i(form.)54 b(Otherwise)35 b(they)330
209781570 y(m)m(ust)30 b(app)s(ear)g(on)g(prin)m(ted)g(co)m(v)m(ers)i(that)f
20979(brac)m(k)m(et)h(the)f(whole)f(aggregate.)199 1713 y(8.)61
20980b(TRANSLA)-8 b(TION)330 1855 y(T)g(ranslation)41 b(is)f(considered)f(a)
37c41ab1 20981i(kind)e(of)h(mo)s(di\014cation,)j(so)d(y)m(ou)g(ma)m(y)h(distribute)e
1231ac47 20982(translations)330 1965 y(of)45 b(the)f(Do)s(cumen)m(t)h(under)e(the)h
37c41ab1 20983(terms)h(of)f(section)i(4.)83 b(Replacing)45 b(In)m(v)-5
1231ac47 20984b(arian)m(t)45 b(Sections)g(with)330 2074 y(translations)h(requires)f
37c41ab1 20985(sp)s(ecial)h(p)s(ermission)f(from)g(their)g(cop)m(yrigh)m(t)i
1231ac47 20986(holders,)i(but)c(y)m(ou)g(ma)m(y)330 2184 y(include)24
37c41ab1
CR
20987b(translations)i(of)e(some)h(or)g(all)g(In)m(v)-5 b(arian)m(t)25
20988b(Sections)g(in)f(addition)h(to)g(the)g(original)h(v)m(ersions)330
1231ac47 209892293 y(of)32 b(these)f(In)m(v)-5 b(arian)m(t)33 b(Sections.)44
37c41ab1 20990b(Y)-8 b(ou)32 b(ma)m(y)g(include)f(a)h(translation)g(of)g(this)f
1231ac47 20991(License,)i(and)d(all)j(the)330 2403 y(license)42 b(notices)g(in)f(the)
37c41ab1 20992h(Do)s(cumen)m(t,)j(and)40 b(an)m(y)i(W)-8 b(arran)m(t)m(y)42
1231ac47 20993b(Disclaimers,)k(pro)m(vided)41 b(that)h(y)m(ou)330 2513
37c41ab1
CR
20994y(also)f(include)f(the)g(original)h(English)f(v)m(ersion)g(of)g(this)g
20995(License)h(and)e(the)h(original)h(v)m(ersions)g(of)330
1231ac47 209962622 y(those)35 b(notices)g(and)e(disclaimers.)53 b(In)33
37c41ab1 20997b(case)i(of)g(a)f(disagreemen)m(t)h(b)s(et)m(w)m(een)g(the)f
1231ac47 20998(translation)i(and)330 2732 y(the)f(original)i(v)m(ersion)e(of)h(this)f
37c41ab1 20999(License)h(or)f(a)g(notice)i(or)e(disclaimer,)i(the)f(original)g(v)m
1231ac47 21000(ersion)g(will)330 2841 y(prev)-5 b(ail.)330 2984 y(If)28
37c41ab1
CR
21001b(a)h(section)h(in)e(the)h(Do)s(cumen)m(t)h(is)e(En)m(titled)i(\\Ac)m
21002(kno)m(wledgemen)m(ts",)i(\\Dedications",)g(or)d(\\His-)330
1231ac47 210033093 y(tory",)f(the)f(requiremen)m(t)f(\(section)i(4\))f(to)g(Preserv)m
37c41ab1 21004(e)g(its)f(Title)i(\(section)f(1\))g(will)g(t)m(ypically)h(require)330
1231ac47
CR
210053203 y(c)m(hanging)j(the)g(actual)h(title.)199 3345 y(9.)61
21006b(TERMINA)-8 b(TION)330 3488 y(Y)g(ou)30 b(ma)m(y)h(not)f(cop)m(y)-8
37c41ab1 21007b(,)31 b(mo)s(dify)-8 b(,)30 b(sublicense,)g(or)g(distribute)f(the)h
1231ac47
CR
21008(Do)s(cumen)m(t)g(except)h(as)f(expressly)330 3598 y(pro)m(vided)38
21009b(under)f(this)i(License.)65 b(An)m(y)39 b(attempt)h(otherwise)f(to)g
21010(cop)m(y)-8 b(,)42 b(mo)s(dify)-8 b(,)40 b(sublicense,)h(or)330
210113707 y(distribute)30 b(it)h(is)f(v)m(oid,)h(and)f(will)h(automatically)
21012i(terminate)f(y)m(our)e(righ)m(ts)h(under)e(this)h(License.)330
210133850 y(Ho)m(w)m(ev)m(er,)35 b(if)e(y)m(ou)f(cease)i(all)f(violation)i
21014(of)d(this)g(License,)i(then)e(y)m(our)h(license)g(from)f(a)h
21015(particular)330 3959 y(cop)m(yrigh)m(t)k(holder)e(is)h(reinstated)h
21016(\(a\))f(pro)m(visionally)-8 b(,)39 b(unless)c(and)g(un)m(til)h(the)g
21017(cop)m(yrigh)m(t)h(holder)330 4069 y(explicitly)42 b(and)e(\014nally)h
21018(terminates)g(y)m(our)g(license,)j(and)c(\(b\))h(p)s(ermanen)m(tly)-8
21019b(,)43 b(if)e(the)g(cop)m(yrigh)m(t)330 4178 y(holder)34
21020b(fails)h(to)g(notify)g(y)m(ou)g(of)f(the)h(violation)h(b)m(y)e(some)h
21021(reasonable)g(means)g(prior)e(to)i(60)h(da)m(ys)330 4288
21022y(after)31 b(the)f(cessation.)330 4430 y(Moreo)m(v)m(er,)k(y)m(our)d
21023(license)i(from)e(a)h(particular)f(cop)m(yrigh)m(t)i(holder)e(is)h
21024(reinstated)g(p)s(ermanen)m(tly)f(if)330 4540 y(the)d(cop)m(yrigh)m(t)h
21025(holder)f(noti\014es)g(y)m(ou)g(of)g(the)g(violation)h(b)m(y)f(some)g
21026(reasonable)h(means,)f(this)g(is)g(the)330 4650 y(\014rst)f(time)i(y)m
21027(ou)f(ha)m(v)m(e)h(receiv)m(ed)g(notice)g(of)f(violation)i(of)e(this)f
21028(License)i(\(for)f(an)m(y)g(w)m(ork\))g(from)f(that)330
210294759 y(cop)m(yrigh)m(t)33 b(holder,)g(and)e(y)m(ou)h(cure)g(the)g
21030(violation)i(prior)d(to)i(30)f(da)m(ys)h(after)f(y)m(our)g(receipt)h
21031(of)f(the)330 4869 y(notice.)330 5011 y(T)-8 b(ermination)28
21032b(of)g(y)m(our)f(righ)m(ts)h(under)e(this)i(section)g(do)s(es)f(not)h
21033(terminate)h(the)e(licenses)i(of)f(parties)330 5121 y(who)38
21034b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
21035(under)f(this)h(License.)64 b(If)38 b(y)m(our)g(righ)m(ts)h(ha)m(v)m(e)
21036330 5230 y(b)s(een)25 b(terminated)i(and)e(not)h(p)s(ermanen)m(tly)g
21037(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
21038(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
21039(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
5e6f45d9
CR
21040%%Page: 179 185
21041TeXDict begin 179 184 bop 150 -116 a Fu(App)s(endix)29
1231ac47 21042b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 21043b(179)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
1231ac47
CR
21044330 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
21045b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
21046(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
21047b(License)e(from)g(time)h(to)g(time.)46 b(Suc)m(h)31
21048b(new)h(v)m(ersions)g(will)h(b)s(e)e(similar)h(in)g(spirit)330
21049653 y(to)j(the)g(presen)m(t)f(v)m(ersion,)i(but)e(ma)m(y)h(di\013er)f
21050(in)g(detail)h(to)g(address)f(new)g(problems)f(or)i(concerns.)330
6e51e0d0 21051762 y(See)c Ft(http://www.gnu.org/copy)o(left)o(/)p Fu(.)330
1231ac47
CR
21052897 y(Eac)m(h)f(v)m(ersion)g(of)g(the)f(License)h(is)g(giv)m(en)g(a)g
21053(distinguishing)f(v)m(ersion)h(n)m(um)m(b)s(er.)39 b(If)29
21054b(the)g(Do)s(cumen)m(t)330 1006 y(sp)s(eci\014es)45 b(that)h(a)g
21055(particular)f(n)m(um)m(b)s(ered)f(v)m(ersion)i(of)f(this)g(License)h
21056(\\or)g(an)m(y)g(later)g(v)m(ersion")330 1116 y(applies)33
21057b(to)g(it,)h(y)m(ou)e(ha)m(v)m(e)i(the)f(option)g(of)f(follo)m(wing)i
21058(the)f(terms)f(and)g(conditions)h(either)g(of)f(that)330
210591225 y(sp)s(eci\014ed)37 b(v)m(ersion)i(or)e(of)h(an)m(y)h(later)g(v)m
37c41ab1 21060(ersion)f(that)g(has)g(b)s(een)f(published)f(\(not)j(as)f(a)g(draft\))g
1231ac47 21061(b)m(y)330 1335 y(the)33 b(F)-8 b(ree)34 b(Soft)m(w)m(are)f(F)-8
37c41ab1 21062b(oundation.)49 b(If)32 b(the)h(Do)s(cumen)m(t)g(do)s(es)g(not)g(sp)s
1231ac47 21063(ecify)f(a)h(v)m(ersion)g(n)m(um)m(b)s(er)f(of)330 1445
37c41ab1
CR
21064y(this)i(License,)j(y)m(ou)d(ma)m(y)i(c)m(ho)s(ose)f(an)m(y)g(v)m
21065(ersion)g(ev)m(er)g(published)e(\(not)i(as)g(a)f(draft\))h(b)m(y)f(the)
1231ac47
CR
21066h(F)-8 b(ree)330 1554 y(Soft)m(w)m(are)33 b(F)-8 b(oundation.)46
21067b(If)32 b(the)g(Do)s(cumen)m(t)g(sp)s(eci\014es)g(that)g(a)h(pro)m(xy)f
21068(can)g(decide)g(whic)m(h)g(future)330 1664 y(v)m(ersions)h(of)g(this)f
21069(License)h(can)g(b)s(e)f(used,)g(that)i(pro)m(xy's)e(public)g(statemen)
21070m(t)i(of)f(acceptance)i(of)e(a)330 1773 y(v)m(ersion)e(p)s(ermanen)m
21071(tly)f(authorizes)h(y)m(ou)g(to)g(c)m(ho)s(ose)g(that)g(v)m(ersion)g
21072(for)f(the)h(Do)s(cumen)m(t.)154 1908 y(11.)61 b(RELICENSING)330
210732042 y(\\Massiv)m(e)39 b(Multiauthor)f(Collab)s(oration)g(Site")h(\(or)
21074e(\\MMC)h(Site"\))h(means)e(an)m(y)h(W)-8 b(orld)37 b(Wide)330
210752152 y(W)-8 b(eb)36 b(serv)m(er)g(that)h(publishes)d(cop)m(yrigh)m
21076(table)k(w)m(orks)e(and)f(also)i(pro)m(vides)e(prominen)m(t)h
21077(facilities)330 2262 y(for)27 b(an)m(yb)s(o)s(dy)g(to)h(edit)g(those)g
21078(w)m(orks.)39 b(A)28 b(public)f(wiki)h(that)g(an)m(yb)s(o)s(dy)e(can)i
21079(edit)g(is)f(an)h(example)g(of)330 2371 y(suc)m(h)33
21080b(a)h(serv)m(er.)51 b(A)34 b(\\Massiv)m(e)i(Multiauthor)e(Collab)s
21081(oration")h(\(or)f(\\MMC"\))h(con)m(tained)g(in)f(the)330
210822481 y(site)d(means)f(an)m(y)h(set)g(of)g(cop)m(yrigh)m(table)h(w)m
21083(orks)e(th)m(us)g(published)f(on)h(the)h(MMC)f(site.)330
210842615 y(\\CC-BY-SA")36 b(means)f(the)g(Creativ)m(e)i(Commons)e(A)m
21085(ttribution-Share)g(Alik)m(e)i(3.0)f(license)g(pub-)330
210862725 y(lished)27 b(b)m(y)f(Creativ)m(e)j(Commons)d(Corp)s(oration,)h(a)
21087g(not-for-pro\014t)g(corp)s(oration)h(with)e(a)h(principal)330
210882834 y(place)g(of)f(business)e(in)i(San)f(F)-8 b(rancisco,)29
21089b(California,)f(as)e(w)m(ell)h(as)f(future)f(cop)m(yleft)i(v)m(ersions)
21090f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
21091(organization.)330 3078 y(\\Incorp)s(orate")h(means)e(to)h(publish)e
21092(or)i(republish)e(a)i(Do)s(cumen)m(t,)g(in)g(whole)g(or)f(in)g(part,)h
21093(as)g(part)330 3188 y(of)g(another)f(Do)s(cumen)m(t.)330
210943323 y(An)c(MMC)g(is)h(\\eligible)h(for)e(relicensing")h(if)g(it)f(is)h
21095(licensed)f(under)f(this)h(License,)i(and)e(if)g(all)h(w)m(orks)330
210963432 y(that)43 b(w)m(ere)f(\014rst)f(published)f(under)h(this)h
21097(License)g(somewhere)g(other)g(than)g(this)g(MMC,)h(and)330
210983542 y(subsequen)m(tly)34 b(incorp)s(orated)h(in)f(whole)h(or)g(in)f
21099(part)h(in)m(to)h(the)f(MMC,)g(\(1\))h(had)e(no)h(co)m(v)m(er)h(texts)
21100330 3651 y(or)30 b(in)m(v)-5 b(arian)m(t)32 b(sections,)g(and)d(\(2\))j
21101(w)m(ere)f(th)m(us)f(incorp)s(orated)g(prior)g(to)h(No)m(v)m(em)m(b)s
21102(er)g(1,)g(2008.)330 3786 y(The)40 b(op)s(erator)h(of)g(an)f(MMC)h
21103(Site)g(ma)m(y)g(republish)e(an)h(MMC)h(con)m(tained)h(in)e(the)h(site)
21104g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
21105(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
21106330 4005 y(eligible)h(for)e(relicensing.)p eop end
5e6f45d9
CR
21107%%Page: 180 186
21108TeXDict begin 180 185 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 21109b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
5e6f45d9 21110b(180)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
6e51e0d0 21111(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fu(T)-8 b(o)35
ad4aef08
CR
21112b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
21113i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
21114568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
21115m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
6e51e0d0
CR
21116680 y Fe(Copyright)42 b(\(C\))79 b Fd(year)g(your)40
21117b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
ad4aef08
CR
21118(distribute)g(and/or)g(modify)f(this)g(document)468 854
21119y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
21120(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
21121(published)h(by)d(the)h(Free)g(Software)h(Foundation;)468
211221029 y(with)g(no)e(Invariant)j(Sections,)f(no)f(Front-Cover)h(Texts,)g
21123(and)f(no)f(Back-Cover)468 1116 y(Texts.)80 b(A)40 b(copy)g(of)g(the)f
21124(license)i(is)f(included)h(in)f(the)g(section)g(entitled)h(``GNU)468
6e51e0d0 211251203 y(Free)g(Documentation)h(License''.)275 1337 y Fu(If)d(y)m(ou)h
ad4aef08
CR
21126(ha)m(v)m(e)h(In)m(v)-5 b(arian)m(t)41 b(Sections,)i(F)-8
21127b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
21128(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
21129b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
211301559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
6e51e0d0
CR
21131Fd(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
21132(Texts)e(being)g Fd(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
21133(Texts)547 1733 y(being)f Fd(list)p Fe(.)275 1868 y Fu(If)34
21134b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
21135(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
21136(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
21137(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
21138y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
21139(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
211402222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
21141(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
21142b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
21143(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
21144eop end
5e6f45d9
CR
21145%%Page: 181 187
21146TeXDict begin 181 186 bop 3614 -116 a Fu(181)150 299
037a8b7f
CR
21147y Fp(App)t(endix)52 b(D)81 b(Indexes)150 639 y Fs(D.1)68
21148b(Index)45 b(of)g(Shell)g(Builtin)g(Commands)146 806
21149y(.)150 923 y Fe(.)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21150(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
21151f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 21152(:)33 b Fb(47)146 1163 y Fs(:)150 1280 y Fe(:)19 b Fc(:)13
037a8b7f
CR
21153b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21154(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21155f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(47)146
037a8b7f
CR
211561523 y Fs([)150 1640 y Fe([)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21157(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21158g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21159(:)g(:)g(:)33 b Fb(51)146 1881 y Fs(A)150 1998 y Fe(alias)9
037a8b7f 21160b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21161(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21162g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(54)146 2239 y
037a8b7f 21163Fs(B)150 2356 y Fe(bg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21164(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21165g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29
fffe80d4 21166b Fb(113)150 2443 y Fe(bind)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21167(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21168h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21169b Fb(55)150 2531 y Fe(break)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21170(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21171g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
e59452c7 21172b Fb(48)150 2618 y Fe(builtin)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
c302751c 21173(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21174h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e59452c7 21175b Fb(56)146 2859 y Fs(C)150 2976 y Fe(caller)6 b Fc(:)15
037a8b7f
CR
21176b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21177(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21178g(:)g(:)g(:)h(:)f(:)20 b Fb(56)150 3063 y Fe(cd)c Fc(:)e(:)f(:)g(:)g(:)
037a8b7f
CR
21179g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21180(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 21181g(:)g(:)g(:)g(:)g(:)31 b Fb(48)150 3151 y Fe(command)22
037a8b7f
CR
21182b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21183(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21184h(:)f(:)g(:)g(:)g(:)35 b Fb(56)150 3238 y Fe(compgen)18
037a8b7f 21185b Fc(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
c302751c 21186g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 21187(:)h(:)f(:)g(:)33 b Fb(145)150 3326 y Fe(complete)16
037a8b7f
CR
21188b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21189g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 21190(:)g(:)g(:)31 b Fb(145)150 3413 y Fe(compopt)18 b Fc(:)d(:)e(:)g(:)h(:)
c302751c 21191f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
037a8b7f 21192(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33
fffe80d4 21193b Fb(148)150 3501 y Fe(continue)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21194(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21195g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
e59452c7 21196Fb(48)146 3741 y Fs(D)150 3858 y Fe(declare)22 b Fc(:)13
037a8b7f
CR
21197b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21198(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7
CR
21199g(:)g(:)g(:)35 b Fb(57)150 3946 y Fe(dirs)9 b Fc(:)14
21200b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21201(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21202h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(101)150 4033 y Fe(disown)e
21203Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21204(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 21205g(:)g(:)g(:)g(:)g(:)36 b Fb(115)146 4274 y Fs(E)150 4391
e59452c7
CR
21206y Fe(echo)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21207(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21208g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b
21209Fb(58)150 4478 y Fe(enable)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)
21210h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21211(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
21212b Fb(59)150 4566 y Fe(eval)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21213(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21214h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
21215b Fb(48)150 4653 y Fe(exec)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21216(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21217h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21218b Fb(49)150 4741 y Fe(exit)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21219(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21220h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21221b Fb(49)150 4828 y Fe(export)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g
037a8b7f
CR
21222(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21223g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
e59452c7 21224b Fb(49)146 5080 y Fs(F)150 5197 y Fe(fc)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)
037a8b7f
CR
21225g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21226(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 21227g(:)g(:)g(:)29 b Fb(152)150 5284 y Fe(fg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)
037a8b7f
CR
21228g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21229(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 21230g(:)g(:)g(:)29 b Fb(113)2021 871 y Fs(G)2025 988 y Fe(getopts)22
037a8b7f 21231b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21232(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21233g(:)g(:)h(:)f(:)g(:)35 b Fb(49)2021 1250 y Fs(H)2025
037a8b7f 212341369 y Fe(hash)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
c302751c 21235(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
037a8b7f 21236f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
e59452c7 21237b Fb(50)2025 1457 y Fe(help)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21238(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21239g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
e59452c7 21240b Fb(60)2025 1544 y Fe(history)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
d7935593 21241(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21242g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b
fffe80d4 21243Fb(152)2021 1806 y Fs(J)2025 1924 y Fe(jobs)9 b Fc(:)14
037a8b7f
CR
21244b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21245(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
fffe80d4 21246g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(113)2021 2186 y Fs(K)2025
037a8b7f
CR
212472303 y Fe(kill)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21248g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21249(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
fffe80d4 21250b Fb(114)2021 2554 y Fs(L)2025 2672 y Fe(let)14 b Fc(:)f(:)g(:)h(:)f(:)
037a8b7f
CR
21251g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21252(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21253g(:)g(:)h(:)f(:)28 b Fb(60)2025 2760 y Fe(local)9 b Fc(:)14
037a8b7f
CR
21254b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21255(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21256g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(60)2025 2848 y Fe(logout)6
037a8b7f
CR
21257b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21258(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21259h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(60)2021 3110 y Fs(M)2025
037a8b7f
CR
212603227 y Fe(mapfile)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21261(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7
CR
21262f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(60)2021
212633489 y Fs(P)2025 3608 y Fe(popd)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
21264(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21265g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
21266b Fb(102)2025 3696 y Fe(printf)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)
21267g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21268(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
21269b Fb(61)2025 3784 y Fe(pushd)6 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g
21270(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21271f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21
21272b Fb(102)2025 3871 y Fe(pwd)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f
CR
21273(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
21274f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e59452c7 21275b Fb(50)2021 4133 y Fs(R)2025 4251 y Fe(read)11 b Fc(:)j(:)f(:)g(:)g(:)
c302751c
CR
21276g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21277(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21278g(:)g(:)g(:)26 b Fb(62)2025 4339 y Fe(readarray)15 b
037a8b7f
CR
21279Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21280(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21281g(:)g(:)30 b Fb(63)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g
037a8b7f
CR
21282(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21283h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
e59452c7 21284b Fb(51)2025 4515 y Fe(return)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21285(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21286h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
e59452c7 21287b Fb(51)2021 4765 y Fs(S)2025 4884 y Fe(set)14 b Fc(:)f(:)g(:)h(:)f(:)g
037a8b7f
CR
21288(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21289g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21290(:)g(:)h(:)f(:)28 b Fb(66)2025 4972 y Fe(shift)9 b Fc(:)14
037a8b7f
CR
21291b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21292(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21293g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(51)2025 5060 y Fe(shopt)9
037a8b7f 21294b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
c302751c 21295(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 21296g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(70)2025 5148
037a8b7f
CR
21297y Fe(source)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21298(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21299g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(63)2025
037a8b7f
CR
213005235 y Fe(suspend)d Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21301(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 21302f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(115)p eop end
5e6f45d9
CR
21303%%Page: 182 188
21304TeXDict begin 182 187 bop 150 -116 a Fu(App)s(endix)29
21305b(D:)i(Indexes)2623 b(182)146 294 y Fs(T)150 410 y Fe(test)11
037a8b7f 21306b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
6e51e0d0 21307g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e59452c7 21308(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(51)150 497
037a8b7f
CR
21309y Fe(times)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21310g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21311(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(53)150
037a8b7f
CR
21312584 y Fe(trap)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21313(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21314g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21315b Fb(53)150 671 y Fe(type)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21316(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21317h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21318b Fb(63)150 758 y Fe(typeset)d Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f
CR
21319g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21320(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e59452c7 21321b Fb(64)146 1003 y Fs(U)150 1119 y Fe(ulimit)6 b Fc(:)15
037a8b7f
CR
21322b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21323(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21324g(:)g(:)g(:)h(:)f(:)20 b Fb(64)150 1206 y Fe(umask)9
037a8b7f
CR
21325b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21326(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21327g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(54)150 1293 y
037a8b7f
CR
21328Fe(unalias)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21329(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21330g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(65)150 1380 y
037a8b7f
CR
21331Fe(unset)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21332(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21333g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(54)2021
037a8b7f 21334294 y Fs(W)2025 433 y Fe(wait)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f
c302751c 21335(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21336g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
fffe80d4 21337b Fb(114)150 2133 y Fs(D.2)68 b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h
e59452c7
CR
21338(W)-11 b(ords)146 2704 y(!)150 2820 y Fe(!)19 b Fc(:)13
21339b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21340(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21341f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(10)146
0fcb3344 213423056 y Fs([)150 3172 y Fe([[)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
037a8b7f
CR
21343g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21344(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21345g(:)31 b Fb(14)146 3414 y Fs(])150 3530 y Fe(]])16 b
037a8b7f
CR
21346Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21347(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21348g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(14)146
0fcb3344 213493770 y Fa({)150 3886 y Fe({)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
c302751c 21350(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21351g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21352(:)g(:)g(:)33 b Fb(17)146 4125 y Fa(})150 4241 y Fe(})19
0fcb3344
CR
21353b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21354(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21355g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
e59452c7 21356Fb(17)146 4475 y Fs(C)150 4591 y Fe(case)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
0fcb3344 21357g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
6e51e0d0 21358(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21359g(:)h(:)25 b Fb(13)146 4825 y Fs(D)150 4941 y Fe(do)16
0fcb3344
CR
21360b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21361g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 21362(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(11)150
0fcb3344
CR
213635028 y Fe(done)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21364(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21365g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21366b Fb(11)146 5261 y Fs(E)150 5377 y Fe(elif)11 b Fc(:)j(:)f(:)g(:)h(:)f
0fcb3344
CR
21367(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21368g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21369(:)g(:)h(:)25 b Fb(12)150 5465 y Fe(else)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
037a8b7f 21370g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
0fcb3344 21371(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21372g(:)h(:)25 b Fb(12)150 5552 y Fe(esac)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
0fcb3344
CR
21373(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21374g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21375(:)h(:)25 b Fb(13)2021 2703 y Fs(F)2025 2836 y Fe(fi)16
0fcb3344 21376b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
037a8b7f 21377f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 21378(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)31 b Fb(12)2025
0fcb3344
CR
213792928 y Fe(for)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21380(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21381g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e59452c7 21382b Fb(12)2025 3015 y Fe(function)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
21383(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21384g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e59452c7 21385Fb(19)2021 3359 y Fs(I)2025 3491 y Fe(if)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)
0fcb3344
CR
21386g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21387(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21388g(:)g(:)g(:)g(:)31 b Fb(12)2025 3578 y Fe(in)16 b Fc(:)e(:)f(:)g(:)g(:)
0fcb3344 21389g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
6e51e0d0 21390(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21391f(:)g(:)g(:)g(:)g(:)31 b Fb(13)2021 3921 y Fs(S)2025
0fcb3344
CR
213924048 y Fe(select)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21393(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21394g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
e59452c7 21395Fb(13)2021 4392 y Fs(T)2025 4524 y Fe(then)11 b Fc(:)j(:)f(:)g(:)g(:)g
0fcb3344
CR
21396(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21397g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7
CR
21398(:)g(:)g(:)26 b Fb(12)2025 4611 y Fe(time)11 b Fc(:)j(:)f(:)g(:)g(:)g
21399(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21400g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21401(:)g(:)g(:)26 b Fb(10)2021 4954 y Fs(U)2025 5081 y Fe(until)9
21402b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21403(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21404g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(11)2021 5425
21405y Fs(W)2025 5552 y Fe(while)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21406(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21407g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
21408b Fb(12)p eop end
5e6f45d9
CR
21409%%Page: 183 189
21410TeXDict begin 183 188 bop 150 -116 a Fu(App)s(endix)29
21411b(D:)i(Indexes)2623 b(183)150 299 y Fs(D.3)68 b(P)l(arameter)47
0fcb3344
CR
21412b(and)d(V)-11 b(ariable)46 b(Index)146 955 y(!)150 1073
21413y Fe(!)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21414(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21415g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
e59452c7 21416b Fb(23)146 1327 y Fs(#)150 1445 y Fe(#)19 b Fc(:)13
037a8b7f
CR
21417b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21418(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21419f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(23)146
0fcb3344 214201701 y Fs($)150 1820 y Fe($)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
c302751c 21421(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
0fcb3344 21422g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21423(:)g(:)g(:)33 b Fb(23)150 1909 y Fe($!)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21424(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21425g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 21426(:)g(:)g(:)g(:)31 b Fb(23)150 1997 y Fe($#)16 b Fc(:)e(:)f(:)g(:)g(:)g
d7935593 21427(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
037a8b7f 21428f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 21429(:)g(:)g(:)g(:)g(:)31 b Fb(23)150 2085 y Fe($$)16 b Fc(:)e(:)f(:)g(:)g
d7935593 21430(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21431h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e59452c7 21432(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(23)150 2173 y Fe($*)16
037a8b7f
CR
21433b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21434g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 21435(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(23)150
0fcb3344
CR
214362261 y Fe($-)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21437g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21438(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31
e59452c7 21439b Fb(23)150 2350 y Fe($?)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
0fcb3344
CR
21440g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21441(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 2144231 b Fb(23)150 2438 y Fe($@)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344
CR
21443(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21444g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e59452c7 21445(:)31 b Fb(23)150 2526 y Fe($_)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
21446(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21447g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21448(:)g(:)31 b Fb(77)150 2613 y Fe($0)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h
0fcb3344
CR
21449(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21450g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21451(:)g(:)g(:)31 b Fb(23)146 2876 y Fs(*)150 2994 y Fe(*)19
037a8b7f 21452b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
d7935593 21453(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21454g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
e59452c7 21455Fb(23)146 3248 y Fs({)150 3366 y Fe(-)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)
037a8b7f
CR
21456g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21457(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21458g(:)h(:)f(:)g(:)g(:)33 b Fb(23)146 3620 y Fs(?)150 3738
0fcb3344 21459y Fe(?)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
037a8b7f
CR
21460(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21461g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
e59452c7 21462b Fb(23)146 3992 y Fs(@)150 4110 y Fe(@)19 b Fc(:)13
037a8b7f 21463b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
d7935593 21464(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21465f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(23)p
0fcb3344
CR
21466156 4364 41 6 v 150 4482 a Fe(_)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
21467(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21468g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e59452c7 21469(:)f(:)g(:)g(:)33 b Fb(77)146 4736 y Fs(0)150 4854 y
0fcb3344 21470Fe(0)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
037a8b7f 21471(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
0fcb3344 21472g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
e59452c7 21473b Fb(23)146 5108 y Fs(A)150 5226 y Fe(auto_resume)8 b
0fcb3344
CR
21474Fc(:)16 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21475(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 2147623 b Fb(115)2021 954 y Fs(B)2025 1074 y Fe(BASH)11 b
0fcb3344
CR
21477Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21478(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21479g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(78)2025 1163
0fcb3344
CR
21480y Fe(BASH_ALIASES)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21481(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21482g(:)g(:)g(:)g(:)h(:)22 b Fb(78)2025 1251 y Fe(BASH_ARGC)15
0fcb3344
CR
21483b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21484g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21485(:)g(:)g(:)30 b Fb(78)2025 1340 y Fe(BASH_ARGV)15 b Fc(:)g(:)f(:)f(:)g
8a0829e9 21486(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
0fcb3344 21487g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e59452c7 21488b Fb(78)2025 1429 y Fe(BASH_ARGV0)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
7e92fb35 21489(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21490g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(79)2025
7e92fb35
CR
214911517 y Fe(BASH_CMDS)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21492(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21493g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(79)2025 1606
7e92fb35
CR
21494y Fe(BASH_COMMAND)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21495(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21496g(:)g(:)g(:)g(:)h(:)22 b Fb(79)2025 1695 y Fe(BASH_COMPAT)10
037a8b7f
CR
21497b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21498(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21499g(:)25 b Fb(79)2025 1783 y Fe(BASH_ENV)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g
037a8b7f
CR
21500(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21501f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
e59452c7 21502b Fb(79)2025 1872 y Fe(BASH_EXECUTION_STRING)24 b Fc(:)13
037a8b7f 21503b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 21504(:)g(:)g(:)g(:)g(:)34 b Fb(79)2025 1960 y Fe(BASH_LINENO)10
037a8b7f
CR
21505b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21506(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21507g(:)25 b Fb(79)2025 2049 y Fe(BASH_LOADABLES_PATH)7 b
037a8b7f 21508Fc(:)17 b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21509(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(80)2025
7e92fb35 215102138 y Fe(BASH_REMATCH)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
bce12dd7 21511h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e59452c7 21512(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(80)2025 2226 y Fe(BASH_SOURCE)10
037a8b7f
CR
21513b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21514(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21515g(:)25 b Fb(80)2025 2315 y Fe(BASH_SUBSHELL)g Fc(:)13
037a8b7f
CR
21516b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21517(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e59452c7 21518b Fb(80)2025 2403 y Fe(BASH_VERSINFO)25 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
037a8b7f 21519(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21520g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(80)2025 2492
037a8b7f
CR
21521y Fe(BASH_VERSION)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21522(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21523g(:)g(:)g(:)g(:)h(:)22 b Fb(80)2025 2581 y Fe(BASH_XTRACEFD)j
037a8b7f
CR
21524Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21525(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e59452c7 21526b Fb(80)2025 2669 y Fe(BASHOPTS)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
037a8b7f
CR
21527(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21528g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e59452c7 21529Fb(78)2025 2758 y Fe(BASHPID)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21530(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21531g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
e59452c7 21532b Fb(78)2025 2847 y Fe(bell-style)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f
037a8b7f 21533(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 21534g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(120)2025
7e92fb35 215352935 y Fe(bind-tty-special-chars)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g
037a8b7f 21536(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
fffe80d4 21537b Fb(120)2025 3022 y Fe(blink-matching-paren)24 b Fc(:)13
037a8b7f 21538b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 21539(:)g(:)g(:)g(:)h(:)34 b Fb(120)2021 3297 y Fs(C)2025
7e92fb35 215403417 y Fe(CDPATH)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f
CR
21541(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21542g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
e59452c7 21543Fb(77)2025 3506 y Fe(CHILD_MAX)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f 21544(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21545f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(81)2025
7e92fb35 215463595 y Fe(colored-completion-prefix)7 b Fc(:)18 b(:)13
037a8b7f 21547b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
fffe80d4 21548b Fb(120)2025 3683 y Fe(colored-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
037a8b7f 21549(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 21550g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(120)2025 3772 y Fe(COLUMNS)22
037a8b7f 21551b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21552(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21553g(:)g(:)h(:)f(:)g(:)35 b Fb(81)2025 3860 y Fe(comment-begin)23
037a8b7f
CR
21554b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21555(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
fffe80d4 21556b Fb(120)2025 3949 y Fe(COMP_CWORD)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
037a8b7f 21557(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21558g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(81)2025
7e92fb35 215594038 y Fe(COMP_KEY)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 21560(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21561g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(81)2025 4126
037a8b7f
CR
21562y Fe(COMP_LINE)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21563(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21564g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(81)2025 4215 y Fe(COMP_POINT)13
037a8b7f
CR
21565b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21566g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21567(:)h(:)27 b Fb(81)2025 4303 y Fe(COMP_TYPE)15 b Fc(:)g(:)f(:)f(:)g(:)g
037a8b7f
CR
21568(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21569g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e59452c7 21570b Fb(81)2025 4392 y Fe(COMP_WORDBREAKS)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g
037a8b7f 21571(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21572h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(81)2025 4481 y Fe(COMP_WORDS)13
037a8b7f
CR
21573b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21574g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21575(:)h(:)27 b Fb(81)2025 4569 y Fe(completion-display-width)9
037a8b7f 21576b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 21577(:)h(:)f(:)g(:)24 b Fb(121)2025 4658 y Fe(completion-ignore-case)14
037a8b7f 21578b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 21579(:)g(:)g(:)h(:)f(:)29 b Fb(121)2025 4747 y Fe(completion-map-case)d
037a8b7f 21580Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 21581(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(121)2025 4835
037a8b7f 21582y Fe(completion-prefix-display-leng)q(th)29 b Fc(:)13
fffe80d4 21583b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(121)2025 4924
037a8b7f
CR
21584y Fe(completion-query-items)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
21585(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
fffe80d4 21586b Fb(121)2025 5012 y Fe(COMPREPLY)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21587(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21588h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b
e59452c7 21589Fb(82)2025 5101 y Fe(convert-meta)25 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21590g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21591(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(121)2025 5188
037a8b7f
CR
21592y Fe(COPROC)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21593(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21594g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(82)p
0fcb3344 21595eop end
5e6f45d9
CR
21596%%Page: 184 190
21597TeXDict begin 184 189 bop 150 -116 a Fu(App)s(endix)29
21598b(D:)i(Indexes)2623 b(184)146 294 y Fs(D)150 415 y Fe(DIRSTACK)18
0fcb3344
CR
21599b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21600g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21601(:)g(:)h(:)f(:)32 b Fb(82)150 502 y Fe(disable-completion)7
0fcb3344 21602b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21603(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(121)146
e59452c7 21604782 y Fs(E)150 903 y Fe(echo-control-characters)12 b
0fcb3344 21605Fc(:)18 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 21606g(:)g(:)g(:)h(:)26 b Fb(121)150 991 y Fe(editing-mode)f
0fcb3344
CR
21607Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21608(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
fffe80d4 21609b Fb(121)150 1080 y Fe(emacs-mode-string)10 b Fc(:)17
0fcb3344 21610b(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 21611(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25 b Fb(122)150 1169
0fcb3344
CR
21612y Fe(EMACS)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21613g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7
CR
21614(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(82)150
216151258 y Fe(enable-active-region)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21616(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
fffe80d4 21617b Fb(122)150 1347 y Fe(enable-bracketed-paste)14 b Fc(:)k(:)c(:)f(:)g
e59452c7 21618(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
fffe80d4 21619b Fb(122)150 1436 y Fe(enable-keypad)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
037a8b7f 21620(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
fffe80d4 21621g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(122)150 1525 y Fe(ENV)14
037a8b7f
CR
21622b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21623h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e59452c7
CR
21624(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(82)150
216251613 y Fe(EPOCHREALTIME)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f 21626(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 21627g(:)g(:)g(:)g(:)37 b Fb(82)150 1702 y Fe(EPOCHSECONDS)8
7e92fb35
CR
21628b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21629(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 2163022 b Fb(82)150 1791 y Fe(EUID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g
7e92fb35
CR
21631(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21632g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21633b Fb(82)150 1880 y Fe(EXECIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21634g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e59452c7
CR
21635(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(82)150
216361967 y Fe(expand-tilde)e Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
037a8b7f 21637(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 21638g(:)g(:)g(:)h(:)37 b Fb(122)146 2247 y Fs(F)150 2368
037a8b7f
CR
21639y Fe(FCEDIT)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21640(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7
CR
21641g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(83)150
216422457 y Fe(FIGNORE)i Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f 21643(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7
CR
21644g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(83)150
216452545 y Fe(FUNCNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 21646(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21647h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(83)150 2633
037a8b7f
CR
21648y Fe(FUNCNEST)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21649(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7
CR
21650f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(83)146 2901 y
21651Fs(G)150 3022 y Fe(GLOBIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 21652(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7
CR
21653h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(83)150
216543109 y Fe(GROUPS)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
037a8b7f
CR
21655(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21656g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b
e59452c7 21657Fb(83)146 3377 y Fs(H)150 3498 y Fe(histchars)15 b Fc(:)h(:)d(:)g(:)g
bce12dd7 21658(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21659g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
e59452c7 21660b Fb(83)150 3587 y Fe(HISTCMD)22 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f
CR
21661g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21662(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e59452c7 21663b Fb(83)150 3676 y Fe(HISTCONTROL)10 b Fc(:)16 b(:)d(:)g(:)g(:)h(:)f(:)
bce12dd7 21664g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7
CR
21665(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(84)150
216663765 y Fe(HISTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 21667(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21668h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(84)150 3854
037a8b7f 21669y Fe(HISTFILESIZE)8 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
bce12dd7 21670(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21671g(:)g(:)h(:)f(:)g(:)22 b Fb(84)150 3942 y Fe(HISTIGNORE)13
037a8b7f
CR
21672b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21673g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21674(:)g(:)27 b Fb(84)150 4031 y Fe(history-preserve-point)14
037a8b7f 21675b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 21676h(:)f(:)g(:)g(:)29 b Fb(122)150 4120 y Fe(history-size)c
037a8b7f
CR
21677Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21678(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
fffe80d4 21679b Fb(123)150 4209 y Fe(HISTSIZE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
e05be32d 21680(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21681g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
e59452c7 21682Fb(84)150 4298 y Fe(HISTTIMEFORMAT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
220537f2 21683(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21684g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(84)150 4387 y Fe(HOME)11
037a8b7f
CR
21685b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21686g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e59452c7 21687(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(77)150 4475
037a8b7f 21688y Fe(horizontal-scroll-mode)14 b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21689(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(123)150
e59452c7 216904564 y Fe(HOSTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 21691(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21692h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(85)150 4653
037a8b7f
CR
21693y Fe(HOSTNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21694(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21695f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(85)150 4740 y
037a8b7f
CR
21696Fe(HOSTTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21697(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21698g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(85)2021 294 y Fs(I)2025
b52e30b8 21699420 y Fe(IFS)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
037a8b7f 21700g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
0fcb3344 21701(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e59452c7 21702b Fb(77)2025 510 y Fe(IGNOREEOF)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
0fcb3344 21703(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21704f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(85)2025
b52e30b8 21705600 y Fe(input-meta)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 21706(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 21707h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(123)2025 691 y Fe(INPUTRC)c
0fcb3344
CR
21708Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21709(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21710g(:)g(:)h(:)f(:)g(:)35 b Fb(85)2025 781 y Fe(INSIDE_EMACS)8
b52e30b8
CR
21711b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21712(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 2171322 b Fb(85)2025 868 y Fe(isearch-terminators)k Fc(:)13
b52e30b8 21714b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21715(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(123)2021 1167 y Fs(K)2025
b52e30b8
CR
217161290 y Fe(keymap)22 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21717(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 21718g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(123)2021
e59452c7
CR
217191601 y Fs(L)2025 1727 y Fe(LANG)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
21720(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21721h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35
21722b Fb(8,)26 b(85)2025 1817 y Fe(LC_ALL)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
21723(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21724g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
21725b Fb(85)2025 1907 y Fe(LC_COLLATE)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
b52e30b8 21726(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21727g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(85)2025
b52e30b8
CR
217281998 y Fe(LC_CTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21729(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21730g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(85)2025 2088
b52e30b8
CR
21731y Fe(LC_MESSAGES)21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21732(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 21733g(:)g(:)g(:)34 b Fb(8,)26 b(85)2025 2178 y Fe(LC_NUMERIC)13
037a8b7f
CR
21734b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21735g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21736(:)h(:)27 b Fb(86)2025 2269 y Fe(LC_TIME)22 b Fc(:)13
b52e30b8 21737b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
8a0829e9 21738(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21739h(:)f(:)g(:)35 b Fb(86)2025 2359 y Fe(LINENO)6 b Fc(:)14
b52e30b8
CR
21740b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21741(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21742g(:)g(:)g(:)g(:)g(:)21 b Fb(86)2025 2446 y Fe(LINES)9
b52e30b8
CR
21743b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21744(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 21745g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(86)2021 2746
b52e30b8 21746y Fs(M)2025 2872 y Fe(MACHTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
21747(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21748g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e59452c7 21749Fb(86)2025 2962 y Fe(MAIL)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
0fcb3344 21750(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
b52e30b8 21751g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
e59452c7 21752b Fb(77)2025 3052 y Fe(MAILCHECK)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)
b52e30b8 21753g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e59452c7 21754(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(86)2025
b52e30b8
CR
217553143 y Fe(MAILPATH)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21756(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21757g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(77)2025 3233
b52e30b8
CR
21758y Fe(MAPFILE)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21759(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21760g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(86)2025 3323
b52e30b8
CR
21761y Fe(mark-modified-lines)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21762(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
fffe80d4 21763b Fb(124)2025 3414 y Fe(mark-symlinked-directories)27
b52e30b8 21764b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 2176536 b Fb(124)2025 3504 y Fe(match-hidden-files)7 b Fc(:)17
b52e30b8 21766b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 21767(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(124)2025 3594
b52e30b8 21768y Fe(menu-complete-display-prefix)17 b Fc(:)h(:)13 b(:)h(:)f(:)g(:)g(:)
fffe80d4 21769g(:)g(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(124)2025 3681 y Fe(meta-flag)13
b52e30b8
CR
21770b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21771g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21772(:)f(:)28 b Fb(123)2021 3992 y Fs(O)2025 4118 y Fe(OLDPWD)6
b52e30b8
CR
21773b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21774(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21775h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(86)2025 4208 y Fe(OPTARG)6
b52e30b8
CR
21776b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21777(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21778h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(77)2025 4299 y Fe(OPTERR)6
b52e30b8
CR
21779b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21780(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21781h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(86)2025 4389 y Fe(OPTIND)6
b52e30b8
CR
21782b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21783(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21784h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(77)2025 4480 y Fe(OSTYPE)6
b52e30b8
CR
21785b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21786(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21787h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(86)2025 4567 y Fe(output-meta)8
b52e30b8
CR
21788b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21789(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 2179023 b Fb(124)p eop end
5e6f45d9
CR
21791%%Page: 185 191
21792TeXDict begin 185 190 bop 150 -116 a Fu(App)s(endix)29
21793b(D:)i(Indexes)2623 b(185)146 294 y Fs(P)150 410 y Fe(page-completions)
0fcb3344 2179413 b Fc(:)j(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21795(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(124)150
0fcb3344
CR
21796497 y Fe(PATH)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21797(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21798g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21799b Fb(77)150 584 y Fe(PIPESTATUS)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 21800(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21801h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(86)150
0fcb3344
CR
21802671 y Fe(POSIXLY_CORRECT)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21803g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21804(:)g(:)g(:)32 b Fb(86)150 758 y Fe(PPID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
0fcb3344
CR
21805(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21806g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21807(:)h(:)25 b Fb(86)150 846 y Fe(PROMPT_COMMAND)e Fc(:)13
9c10def1
CR
21808b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21809(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
e59452c7 21810b Fb(86)150 933 y Fe(PROMPT_DIRTRIM)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
9c10def1 21811(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 21812g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(87)150 1020 y Fe(PS0)14
9c10def1
CR
21813b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21814h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e59452c7 21815(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(87)150
9c10def1
CR
218161107 y Fe(PS1)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21817(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21818g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e59452c7 21819b Fb(77)150 1194 y Fe(PS2)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
21820(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21821g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e59452c7 21822b Fb(77)150 1281 y Fe(PS3)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
21823(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21824g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e59452c7 21825b Fb(87)150 1369 y Fe(PS4)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
21826(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21827g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e59452c7 21828b Fb(87)150 1456 y Fe(PWD)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
21829(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21830g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e59452c7 21831b Fb(87)146 1689 y Fs(R)150 1804 y Fe(RANDOM)6 b Fc(:)15
9c10def1
CR
21832b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21833(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e59452c7
CR
21834g(:)g(:)g(:)h(:)f(:)20 b Fb(87)150 1892 y Fe(READLINE_ARGUMENT)12
21835b Fc(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21836(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(87)150
218371979 y Fe(READLINE_LINE)f Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21838(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21839g(:)g(:)g(:)g(:)37 b Fb(87)150 2066 y Fe(READLINE_MARK)25
037a8b7f
CR
21840b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21841(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
e59452c7
CR
21842b Fb(87)150 2153 y Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
21843(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21844g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(87)150 2240 y Fe(REPLY)9
21845b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21846(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21847g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(87)150 2327 y
21848Fe(revert-all-at-newline)17 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21849(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32
fffe80d4 21850b Fb(124)146 2560 y Fs(S)150 2676 y Fe(SECONDS)22 b Fc(:)13
e59452c7
CR
21851b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21852(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21853g(:)g(:)g(:)35 b Fb(87)150 2763 y Fe(SHELL)9 b Fc(:)14
21854b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 21855(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7
CR
21856g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(87)150 2851 y Fe(SHELLOPTS)15
21857b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21858f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21859(:)g(:)g(:)30 b Fb(88)150 2938 y Fe(SHLVL)9 b Fc(:)14
037a8b7f
CR
21860b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21861(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21862g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(88)150 3025 y Fe(show-all-if-ambiguous)
037a8b7f 2186317 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21864(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(125)150 3112 y Fe
e59452c7 21865(show-all-if-unmodified)14 b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 21866(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(125)150
e59452c7
CR
218673199 y Fe(show-mode-in-prompt)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21868(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
fffe80d4 21869b Fb(125)2025 260 y Fe(skip-completed-text)26 b Fc(:)13
e59452c7 21870b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21871(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(125)2025 347 y Fe(SRANDOM)22
e59452c7 21872b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
52e46969 21873(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7
CR
21874g(:)g(:)h(:)f(:)g(:)35 b Fb(88)2021 673 y Fs(T)2025 803
21875y Fe(TEXTDOMAIN)15 b Fc(:)g(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21876(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21877g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(8)2025 895 y Fe(TEXTDOMAINDIR)7
21878b Fc(:)16 b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21879(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
2188023 b Fb(8)2025 986 y Fe(TIMEFORMAT)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
21881(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21882g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(88)2025
218831078 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
52e46969
CR
21884(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21885g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
e59452c7 21886b Fb(88)2025 1165 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
52e46969
CR
21887(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21888h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
e59452c7 21889b Fb(89)2021 1492 y Fs(U)2025 1617 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g
9f178efb 21890(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21891g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21892(:)g(:)h(:)f(:)28 b Fb(89)2021 1943 y Fs(V)2025 2073
037a8b7f
CR
21893y Fe(vi-cmd-mode-string)7 b Fc(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21894(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
fffe80d4 21895b Fb(125)2025 2165 y Fe(vi-ins-mode-string)7 b Fc(:)17
037a8b7f 21896b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 21897(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(125)2025 2252
037a8b7f
CR
21898y Fe(visible-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21899(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 21900f(:)g(:)35 b Fb(126)150 3845 y Fs(D.4)68 b(F)-11 b(unction)44
e59452c7 21901b(Index)146 4330 y(A)150 4447 y Fe(abort)27 b(\(C-g\))15
037a8b7f
CR
21902b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21903g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
fffe80d4 21904b Fb(140)150 4535 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12
037a8b7f 21905b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)27
fffe80d4 21906b Fb(133)150 4622 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14
037a8b7f 21907b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 21908(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(142)146 4873 y Fs(B)150
e59452c7 219094990 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21910g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21911(:)26 b Fb(132)150 5077 y Fe(backward-delete-char)k(\(Rubout\))22
037a8b7f 21912b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
fffe80d4 21913b Fb(135)150 5165 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e
037a8b7f 21914Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
fffe80d4 21915Fb(136)150 5252 y Fe(backward-kill-word)30 b(\(M-DEL\))11
037a8b7f 21916b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 2191726 b Fb(136)150 5340 y Fe(backward-word)j(\(M-b\))12
037a8b7f 21918b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 21919f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(132)2025 4300
e59452c7 21920y Fe(beginning-of-history)k(\(M-<\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
fffe80d4 21921(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(133)2025
e59452c7 219224389 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)
037a8b7f 21923f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
fffe80d4 21924b Fb(132)2025 4477 y Fe(bracketed-paste-begin)c(\(\))16
0fcb3344 21925b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 21926g(:)g(:)31 b Fb(135)2021 4769 y Fs(C)2025 4893 y Fe
0fcb3344 21927(call-last-kbd-macro)f(\(C-x)c(e\))15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g
fffe80d4 21928(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(140)2025 4982
0fcb3344
CR
21929y Fe(capitalize-word)f(\(M-c\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
21930h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
fffe80d4 21931b Fb(136)2025 5072 y Fe(character-search)29 b(\(C-]\))22
967625cd 21932b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21933(:)h(:)f(:)g(:)g(:)36 b Fb(140)2025 5161 y Fe
0fcb3344 21934(character-search-backward)31 b(\(M-C-]\))10 b Fc(:)15
fffe80d4 21935b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(140)2025 5250
d37a4722
CR
21936y Fe(clear-display)j(\(M-C-l\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)
21937h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
fffe80d4 21938b Fb(133)2025 5340 y Fe(clear-screen)28 b(\(C-l\))14
d37a4722 21939b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 21940f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(133)p eop
e59452c7 21941end
5e6f45d9
CR
21942%%Page: 186 192
21943TeXDict begin 186 191 bop 150 -116 a Fu(App)s(endix)29
21944b(D:)i(Indexes)2623 b(186)150 264 y Fe(complete)27 b(\(TAB\))7
e59452c7
CR
21945b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21946(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
fffe80d4 21947b Fb(138)150 352 y Fe(complete-command)29 b(\(M-!\))23
e59452c7 21948b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21949(:)f(:)g(:)g(:)g(:)36 b Fb(139)150 440 y Fe(complete-filename)29
d37a4722 21950b(\(M-/\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 21951g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(138)150 528 y Fe(complete-hostname)
d37a4722 21952c(\(M-@\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 21953g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(139)150 616 y Fe
10db6565 21954(complete-into-braces)d(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 21955(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(139)150 704
10db6565
CR
21956y Fe(complete-username)j(\(M-~\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
21957(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
fffe80d4 21958b Fb(139)150 792 y Fe(complete-variable)c(\(M-$\))20
0fcb3344 21959b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 21960(:)g(:)h(:)f(:)33 b Fb(139)150 880 y Fe(copy-backward-word)d(\(\))7
037a8b7f 21961b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 21962(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(137)150 968 y Fe(copy-forward-word)
0fcb3344 2196329 b(\(\))9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 21964(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(137)150
e59452c7
CR
219651056 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13
21966b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 21967(:)g(:)g(:)36 b Fb(137)146 1320 y Fs(D)150 1438 y Fe(dabbrev-expand)29
0fcb3344
CR
21968b(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21969(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
fffe80d4 21970b Fb(139)150 1527 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
0fcb3344 21971f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 21972(:)g(:)g(:)g(:)g(:)32 b Fb(135)150 1615 y Fe(delete-char-or-list)e
0fcb3344 21973(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
fffe80d4 21974g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(138)150 1703 y Fe
0fcb3344 21975(delete-horizontal-space)31 b(\(\))11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 21976(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(137)150
e59452c7 219771791 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
0fcb3344 21978Fe(,)f(...)g Fd(M--)p Fe(\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
fffe80d4 2197926 b Fb(137)150 1879 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
0fcb3344 21980Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
fffe80d4 21981Fb(142)150 1958 y Fe(do-lowercase-version)30 b(\(M-A,)227
e59452c7 219822046 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
0fcb3344 21983(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 21984g(:)g(:)g(:)g(:)g(:)25 b Fb(140)150 2134 y Fe(downcase-word)k(\(M-l\))
0fcb3344 2198512 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 21986(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(136)150 2222
0fcb3344
CR
21987y Fe(dump-functions)j(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21988(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 2198932 b Fb(141)150 2310 y Fe(dump-macros)c(\(\))7 b Fc(:)14
0fcb3344
CR
21990b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21991(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
fffe80d4 21992b Fb(141)150 2398 y Fe(dump-variables)29 b(\(\))17 b
0fcb3344 21993Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 21994(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(141)150
e59452c7 219952485 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
fffe80d4 21996(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(139)146 2749 y Fs(E)150
e59452c7 219972868 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
fffe80d4 21998b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(142)150 2956
7e92fb35
CR
21999y Fe(end-kbd-macro)g(\(C-x)d(\)\))13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f(:)g
22000(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
fffe80d4 22001b Fb(139)150 3044 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
0fcb3344 22002b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 22003(:)g(:)35 b Fb(135)150 3132 y Fe(end-of-history)29 b(\(M->\))9
037a8b7f 22004b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 22005(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(133)150 3220 y
037a8b7f
CR
22006Fe(end-of-line)k(\(C-e\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22007g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
fffe80d4 22008b Fb(132)150 3308 y Fe(exchange-point-and-mark)f(\(C-x)26
037a8b7f 22009b(C-x\))17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)32
fffe80d4 22010b Fb(140)146 3571 y Fs(F)150 3690 y Fe(fetch-history)d(\(\))19
e59452c7 22011b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 22012(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(135)150
e59452c7 220133778 y Fe(forward-backward-delete-char)e(\(\))15 b Fc(:)f(:)f(:)g(:)g
fffe80d4 22014(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(135)150 3867 y Fe(forward-char)e
e59452c7
CR
22015(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22016h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b
fffe80d4 22017Fb(132)150 3955 y Fe(forward-search-history)i(\(C-s\))24
e59452c7 22018b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
fffe80d4 22019b Fb(133)150 4042 y Fe(forward-word)28 b(\(M-f\))14 b
e59452c7 22020Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22021(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(132)146 4295
e59452c7 22022y Fs(G)150 4414 y Fe(glob-complete-word)h(\(M-g\))16
037a8b7f 22023b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22024g(:)g(:)31 b Fb(141)150 4502 y Fe(glob-expand-word)e(\(C-x)e(*\))c
037a8b7f 22025Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 22026(:)g(:)g(:)38 b Fb(141)150 4590 y Fe(glob-list-expansions)30
037a8b7f 22027b(\(C-x)d(g\))13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 22028(:)g(:)h(:)27 b Fb(141)2021 294 y Fs(H)2025 422 y Fe
0fcb3344 22029(history-and-alias-expand-line)32 b(\(\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 22030g(:)g(:)g(:)g(:)28 b Fb(142)2025 513 y Fe(history-expand-line)i
0fcb3344 22031(\(M-^\))13 b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22032g(:)g(:)g(:)h(:)28 b Fb(142)2025 604 y Fe(history-search-backward)j
0fcb3344 22033(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 22034(:)g(:)g(:)26 b Fb(134)2025 695 y Fe(history-search-forward)k(\(\))13
0fcb3344 22035b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4
CR
22036h(:)28 b Fb(134)2025 786 y Fe(history-substring-search-backw)q(ard)k
22037(\(\))20 b Fc(:)13 b(:)g(:)g(:)g(:)35 b Fb(134)2025 874
7e92fb35 22038y Fe(history-substring-search-forwa)q(rd)d(\(\))22 b
fffe80d4 22039Fc(:)13 b(:)h(:)f(:)g(:)g(:)37 b Fb(134)2021 1200 y Fs(I)2025
124d67cd 220401329 y Fe(insert-comment)29 b(\(M-#\))9 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f
0fcb3344 22041(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 2204224 b Fb(141)2025 1420 y Fe(insert-completions)29 b(\(M-*\))16
7e92fb35 22043b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 22044g(:)g(:)31 b Fb(138)2025 1507 y Fe(insert-last-argument)f(\(M-.)c(or)g
7e92fb35 22045(M-_\))7 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
fffe80d4 22046b Fb(142)2021 1834 y Fs(K)2025 1962 y Fe(kill-line)27
7e92fb35
CR
22047b(\(C-k\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22048(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
fffe80d4 22049b Fb(136)2025 2053 y Fe(kill-region)28 b(\(\))7 b Fc(:)14
7e92fb35
CR
22050b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22051(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
fffe80d4 22052b Fb(137)2025 2144 y Fe(kill-whole-line)29 b(\(\))14
7e92fb35 22053b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 22054f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(136)2025
124d67cd 220552231 y Fe(kill-word)e(\(M-d\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
0fcb3344 22056(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 22057g(:)g(:)g(:)37 b Fb(136)2021 2548 y Fs(M)2025 2676 y
0fcb3344
CR
22058Fe(magic-space)28 b(\(\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22059(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22060g(:)g(:)h(:)f(:)22 b Fb(142)2025 2767 y Fe(menu-complete)28
0fcb3344
CR
22061b(\(\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22062(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34
fffe80d4 22063b Fb(138)2025 2854 y Fe(menu-complete-backward)c(\(\))13
0fcb3344 22064b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 22065h(:)28 b Fb(138)2021 3181 y Fs(N)2025 3309 y Fe(next-history)g(\(C-n\))
0fcb3344 2206614 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 22067(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(133)2025
124d67cd
CR
220683401 y Fe(next-screen-line)g(\(\))12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g
22069(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 2207027 b Fb(133)2025 3472 y Fe(non-incremental-forward-)2102
124d67cd
CR
220713560 y(search-history)h(\(M-n\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
22072(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
fffe80d4 22073b Fb(134)2025 3647 y Fe(non-incremental-reverse-)2102
124d67cd
CR
220743734 y(search-history)28 b(\(M-p\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
22075(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
fffe80d4 22076b Fb(133)2021 4070 y Fs(O)2025 4198 y Fe(operate-and-get-next)30
124d67cd 22077b(\(C-o\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 22078(:)g(:)g(:)g(:)26 b Fb(134)2025 4285 y Fe(overwrite-mode)j(\(\))17
124d67cd 22079b Fc(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22080g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(136)p
0fcb3344 22081eop end
5e6f45d9
CR
22082%%Page: 187 193
22083TeXDict begin 187 192 bop 150 -116 a Fu(App)s(endix)29
22084b(D:)i(Indexes)2623 b(187)146 294 y Fs(P)150 411 y Fe
0fcb3344 22085(possible-command-completions)32 b(\(C-x)26 b(!\))9 b
fffe80d4 22086Fc(:)14 b(:)g(:)f(:)g(:)g(:)24 b Fb(139)150 499 y Fe
0fcb3344 22087(possible-completions)30 b(\(M-?\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g
fffe80d4 22088(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(138)150
602eae4d 22089586 y Fe(possible-filename-completions)32 b(\(C-x)27
fffe80d4 22090b(/\))7 b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(139)150 674
0fcb3344 22091y Fe(possible-hostname-completions)32 b(\(C-x)27 b(@\))7
fffe80d4 22092b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(139)150 762 y Fe
0fcb3344 22093(possible-username-completions)32 b(\(C-x)27 b(~\))7
fffe80d4 22094b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(139)150 849 y Fe
0fcb3344 22095(possible-variable-completions)32 b(\(C-x)27 b($\))7
fffe80d4 22096b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(139)150 937 y Fe(prefix-meta)28
0fcb3344
CR
22097b(\(ESC\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22098(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
fffe80d4 22099b Fb(140)150 1025 y Fe(previous-history)d(\(C-p\))23
0fcb3344 22100b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 22101(:)f(:)g(:)g(:)g(:)36 b Fb(133)150 1112 y Fe(previous-screen-line)30
0fcb3344 22102b(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22103(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(132)150 1200 y Fe
124d67cd 22104(print-last-kbd-macro)d(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
fffe80d4 22105(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(140)146
e59452c7 221061454 y Fs(Q)150 1571 y Fe(quoted-insert)c(\(C-q)d(or)g(C-v\))8
124d67cd 22107b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 22108(:)g(:)22 b Fb(135)146 1825 y Fs(R)150 1943 y Fe(re-read-init-file)29
0fcb3344 22109b(\(C-x)e(C-r\))15 b Fc(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
fffe80d4 22110(:)g(:)g(:)g(:)30 b Fb(140)150 2030 y Fe(redraw-current-line)g(\(\))22
0fcb3344 22111b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 22112(:)f(:)g(:)g(:)g(:)36 b Fb(133)150 2118 y Fe(reverse-search-history)31
0fcb3344 22113b(\(C-r\))24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
fffe80d4 22114g(:)38 b Fb(133)150 2205 y Fe(revert-line)28 b(\(M-r\))17
0fcb3344 22115b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22116g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(140)146
e59452c7 221172449 y Fs(S)150 2567 y Fe(self-insert)c(\(a,)e(b,)g(A,)g(1,)h(!,)f
0fcb3344 22118(...\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
fffe80d4 22119b Fb(135)150 2654 y Fe(set-mark)g(\(C-@\))7 b Fc(:)15
0fcb3344 22120b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f 22121(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
fffe80d4 22122b Fb(140)150 2742 y Fe(shell-backward-kill-word)31 b(\(\))8
0fcb3344 22123b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 2212423 b Fb(137)150 2830 y Fe(shell-backward-word)30 b(\(M-C-b\))8
602eae4d 22125b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 2212623 b Fb(132)150 2917 y Fe(shell-expand-line)29 b(\(M-C-e\))13
602eae4d 22127b Fc(:)j(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 22128g(:)28 b Fb(142)150 3005 y Fe(shell-forward-word)i(\(M-C-f\))11
602eae4d 22129b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 2213026 b Fb(132)150 3093 y Fe(shell-kill-word)j(\(M-C-d\))20
602eae4d 22131b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 22132(:)g(:)h(:)f(:)33 b Fb(137)150 3180 y Fe(shell-transpose-words)d
602eae4d 22133(\(M-C-t\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22134(:)35 b Fb(137)2025 264 y Fe(skip-csi-sequence)29 b(\(\))9
602eae4d 22135b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22136(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(140)2025 361 y
e59452c7 22137Fe(spell-correct-word)29 b(\(C-x)e(s\))18 b Fc(:)13 b(:)g(:)h(:)f(:)g
fffe80d4 22138(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fb(141)2025
e59452c7
CR
22139448 y Fe(start-kbd-macro)c(\(C-x)d(\(\))8 b Fc(:)14 b(:)f(:)g(:)h(:)f
22140(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23
fffe80d4 22141b Fb(139)2021 891 y Fs(T)2025 1038 y Fe(tilde-expand)28
602eae4d
CR
22142b(\(M-&\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22143(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
fffe80d4 22144b Fb(140)2025 1135 y Fe(transpose-chars)g(\(C-t\))7 b
602eae4d 22145Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
fffe80d4 22146(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(135)2025 1222 y Fe(transpose-words)
602eae4d 2214729 b(\(M-t\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 22148(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(136)2021
e59452c7 221491676 y Fs(U)2025 1823 y Fe(undo)k(\(C-_)h(or)f(C-x)g(C-u\))10
602eae4d 22150b Fc(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22151g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(140)2025 1920 y Fe
602eae4d
CR
22152(universal-argument)k(\(\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22153f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
fffe80d4 22154b Fb(138)2025 2017 y Fe(unix-filename-rubout)30 b(\(\))19
0fcb3344 22155b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 22156(:)g(:)g(:)g(:)34 b Fb(137)2025 2114 y Fe(unix-line-discard)29
602eae4d 22157b(\(C-u\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 22158f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(136)2025 2211 y Fe
602eae4d
CR
22159(unix-word-rubout)29 b(\(C-w\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
22160(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
fffe80d4 22161b Fb(137)2025 2298 y Fe(upcase-word)28 b(\(M-u\))17 b
602eae4d 22162Fc(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
fffe80d4 22163(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(136)2021
e59452c7 221642752 y Fs(Y)2025 2899 y Fe(yank)26 b(\(C-y\))18 b Fc(:)c(:)f(:)g(:)h(:)
602eae4d
CR
22165f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22166(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
fffe80d4 22167b Fb(137)2025 2996 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))8
602eae4d 22168b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
fffe80d4 22169(:)h(:)22 b Fb(134)2025 3093 y Fe(yank-nth-arg)28 b(\(M-C-y\))9
602eae4d 22170b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22171(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(134)2025 3180
602eae4d 22172y Fe(yank-pop)j(\(M-y\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
037a8b7f 22173(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22174g(:)g(:)h(:)f(:)22 b Fb(137)150 3929 y Fs(D.5)68 b(Concept)45
e59452c7 22175b(Index)146 4523 y(A)150 4648 y Fb(alias)27 b(expansion)7
602eae4d
CR
22176b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22177(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21
e59452c7 22178b Fb(99)150 4738 y(arithmetic)26 b(ev)l(aluation)d Fc(:)13
967625cd 22179b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e59452c7 22180(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(97)150 4828 y(arithmetic)26
037a8b7f
CR
22181b(expansion)11 b Fc(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22182(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)26
e59452c7 22183b Fb(34)150 4919 y(arithmetic,)h(shell)6 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)
037a8b7f 22184g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e59452c7 22185(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)20 b Fb(97)150 5006
037a8b7f
CR
22186y(arra)n(ys)h Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22187(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7
CR
22188h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(99)2021
221894523 y Fs(B)2025 4646 y Fb(bac)n(kground)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)
4d63a619 22190f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22191(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)28 b Fb(112)2025
e59452c7 221924735 y(Bash)e(con\014guration)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f
4d63a619 22193(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
fffe80d4 22194g(:)g(:)26 b Fb(157)2025 4825 y(Bash)g(installation)9
0fcb3344
CR
22195b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22196(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
fffe80d4 22197b Fb(157)2025 4914 y(Bourne)i(shell)20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
22198(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22199g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b
e59452c7 22200Fb(5)2025 5004 y(brace)26 b(expansion)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)
967625cd 22201g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 22202(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(24)2025 5091 y(builtin)15
0fcb3344
CR
22203b Fc(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22204g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22205(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(3)p eop end
5e6f45d9
CR
22206%%Page: 188 194
22207TeXDict begin 188 193 bop 150 -116 a Fu(App)s(endix)29
22208b(D:)i(Indexes)2623 b(188)146 294 y Fs(C)150 415 y Fb(command)26
0fcb3344
CR
22209b(editing)19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22210g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34
fffe80d4 22211b Fb(117)150 503 y(command)26 b(execution)12 b Fc(:)h(:)g(:)g(:)g(:)g
0fcb3344 22212(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22213g(:)h(:)f(:)g(:)g(:)26 b Fb(42)150 592 y(command)g(expansion)c
0fcb3344 22214Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 22215(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(41)150
d37a4722 22216681 y(command)26 b(history)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344 22217(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22218g(:)g(:)g(:)33 b Fb(151)150 770 y(command)26 b(searc)n(h)16
0fcb3344
CR
22219b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22220g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e59452c7 22221b Fb(42)150 859 y(command)c(substitution)21 b Fc(:)13
0fcb3344 22222b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
3011048a 22223(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(34)150 947 y(command)26
e59452c7
CR
22224b(timing)11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22225g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
22226b Fb(10)150 1036 y(commands,)h(comp)r(ound)c Fc(:)13
d37a4722 22227b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 22228(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1125 y(commands,)26
d37a4722
CR
22229b(conditional)10 b Fc(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22230f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25
e59452c7 22231b Fb(12)150 1214 y(commands,)h(grouping)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
0fcb3344 22232(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7
CR
22233g(:)g(:)g(:)29 b Fb(17)150 1302 y(commands,)d(lists)10
22234b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22235(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)24
22236b Fb(10)150 1391 y(commands,)i(lo)r(oping)e Fc(:)13 b(:)g(:)g(:)g(:)h
22237(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22238g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1480 y(commands,)26
22239b(pip)r(elines)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22240(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)30
22241b Fb(10)150 1569 y(commands,)c(shell)c Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
22242g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22243(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(9)150 1657 y(commands,)26
0fcb3344
CR
22244b(simple)e Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22245g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
e59452c7 22246b Fb(9)150 1746 y(commen)n(ts,)26 b(shell)13 b Fc(:)i(:)e(:)g(:)g(:)g
037a8b7f 22247(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22248g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28 b Fb(9)150
d37a4722
CR
222491835 y(Compatibilit)n(y)f(Lev)n(el)10 b Fc(:)j(:)g(:)g(:)g(:)g(:)h(:)f
22250(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22251g(:)g(:)25 b Fb(109)150 1924 y(Compatibilit)n(y)i(Mo)r(de)22
d37a4722 22252b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
fffe80d4 22253(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(109)150
d37a4722
CR
222542013 y(completion)27 b(builtins)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
22255(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22256g(:)g(:)36 b Fb(145)150 2101 y(con\014guration)22 b Fc(:)13
0fcb3344
CR
22257b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22258(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
fffe80d4 22259b Fb(157)150 2190 y(con)n(trol)26 b(op)r(erator)8 b Fc(:)15
0fcb3344
CR
22260b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22261(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
d37a4722 22262b Fb(3)150 2277 y(copro)r(cess)18 b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344
CR
22263(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22264f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)32 b
e59452c7
CR
22265Fb(18)146 2553 y Fs(D)150 2672 y Fb(directory)26 b(stac)n(k)9
22266b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22267g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
22268b Fb(101)146 2948 y Fs(E)150 3069 y Fb(editing)i(command)g(lines)17
0fcb3344 22269b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 22270f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(117)150 3158 y(en)n(vironmen)n(t)18
0fcb3344
CR
22271b Fc(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22272(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
3011048a 22273f(:)32 b Fb(44)150 3247 y(ev)l(aluation,)26 b(arithmetic)12
0fcb3344 22274b Fc(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 22275g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(97)150 3335
0fcb3344 22276y(ev)n(en)n(t)f(designators)c Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 22277(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 22278g(:)h(:)34 b Fb(154)150 3424 y(execution)26 b(en)n(vironmen)n(t)17
0fcb3344 22279b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 22280(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)31 b Fb(42)150 3513
0fcb3344
CR
22281y(exit)25 b(status)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22282g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e59452c7 22283(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(3,)k(44)150 3602 y(expansion)9
0fcb3344
CR
22284b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22285(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 22286g(:)g(:)g(:)g(:)24 b Fb(24)150 3691 y(expansion,)i(arithmetic)18
0fcb3344 22287b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 22288g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(34)150 3779
0fcb3344 22289y(expansion,)26 b(brace)16 b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
8a0829e9 22290(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 22291f(:)g(:)g(:)30 b Fb(24)150 3868 y(expansion,)c(\014lename)18
0fcb3344 22292b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 22293(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(35)150
d37a4722 222943957 y(expansion,)26 b(parameter)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
0fcb3344 22295(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 22296g(:)34 b Fb(26)150 4046 y(expansion,)26 b(pathname)7
0fcb3344 22297b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 22298(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(35)150
d37a4722 222994134 y(expansion,)k(tilde)14 b Fc(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22300(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22301h(:)f(:)g(:)g(:)g(:)28 b Fb(25)150 4223 y(expressions,)f(arithmetic)13
0fcb3344 22302b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 22303f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(97)150 4310 y(expressions,)g
0fcb3344 22304(conditional)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7
CR
22305g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(95)2021
22306294 y Fs(F)2025 414 y Fb(\014eld)21 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344
CR
22307(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22308g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 22309(:)h(:)36 b Fb(3)2025 503 y(\014lename)21 b Fc(:)14 b(:)f(:)g(:)g(:)g
0fcb3344
CR
22310(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22311g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36
e59452c7 22312b Fb(3)2025 591 y(\014lename)26 b(expansion)11 b Fc(:)i(:)h(:)f(:)g(:)g
037a8b7f 22313(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 22314g(:)g(:)h(:)f(:)g(:)g(:)26 b Fb(35)2025 680 y(foreground)9
4d63a619
CR
22315b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22316(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 22317h(:)f(:)24 b Fb(112)2025 767 y(functions,)i(shell)9 b
4d63a619 22318Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22319(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
e59452c7 22320b Fb(19)2021 1038 y Fs(H)2025 1158 y Fb(history)h(builtins)20
0fcb3344
CR
22321b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22322(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35
fffe80d4 22323b Fb(151)2025 1247 y(history)25 b(ev)n(en)n(ts)8 b Fc(:)13
037a8b7f 22324b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22325(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
fffe80d4 22326b Fb(154)2025 1335 y(history)i(expansion)14 b Fc(:)g(:)f(:)g(:)g(:)h(:)
0fcb3344 22327f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22328(:)g(:)g(:)g(:)h(:)f(:)29 b Fb(153)2025 1424 y(history)c(list)9
0fcb3344
CR
22329b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22330(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
fffe80d4 22331g(:)g(:)24 b Fb(151)2025 1511 y(History)-6 b(,)25 b(ho)n(w)h(to)g(use)
0fcb3344 2233219 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
fffe80d4 22333(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(150)2021
e59452c7 223341782 y Fs(I)2025 1903 y Fb(iden)n(ti\014er)12 b Fc(:)g(:)h(:)h(:)f(:)g
0fcb3344
CR
22335(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22336g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)27
e59452c7 22337b Fb(3)2025 1991 y(initialization)h(\014le,)e(readline)17
0fcb3344 22338b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
fffe80d4 22339f(:)g(:)g(:)g(:)32 b Fb(119)2025 2080 y(installation)21
0fcb3344
CR
22340b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22341(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
fffe80d4 22342g(:)34 b Fb(157)2025 2168 y(in)n(teraction,)26 b(readline)7
0fcb3344 22343b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 22344(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(116)2025
e59452c7 223452257 y(in)n(teractiv)n(e)k(shell)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22346(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22347h(:)f(:)g(:)34 b Fb(92,)27 b(93)2025 2346 y(in)n(ternationalization)22
0fcb3344
CR
22348b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22349(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
e59452c7
CR
22350b Fb(7)2025 2433 y(in)n(ternationalized)27 b(scripts)13
22351b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22352f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)28 b Fb(7)2021 2704 y
22353Fs(J)2025 2824 y Fb(job)23 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
8a0829e9 22354(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7
CR
22355g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22356(:)38 b Fb(3)2025 2911 y(job)26 b(con)n(trol)17 b Fc(:)d(:)f(:)g(:)g(:)
22357g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 22358(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(3,)c(112)2021
e59452c7
CR
223593183 y Fs(K)2025 3303 y Fb(kill)f(ring)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)
22360g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22361(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
fffe80d4 22362b Fb(118)2025 3390 y(killing)k(text)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
4d63a619 22363(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 22364g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b
fffe80d4 22365Fb(118)2021 3661 y Fs(L)2025 3782 y Fb(lo)r(calization)i
e59452c7
CR
22366Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22367(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22368g(:)g(:)h(:)35 b Fb(7)2025 3869 y(login)26 b(shell)6
22369b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22370(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22371g(:)g(:)g(:)g(:)21 b Fb(92)2021 4140 y Fs(M)2025 4260
22372y Fb(matc)n(hing,)26 b(pattern)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22373(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22374h(:)f(:)g(:)g(:)24 b Fb(36)2025 4347 y(metac)n(haracter)7
22375b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22376(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22377h(:)22 b Fb(3)p eop end
5e6f45d9
CR
22378%%Page: 189 195
22379TeXDict begin 189 194 bop 150 -116 a Fu(App)s(endix)29
22380b(D:)i(Indexes)2623 b(189)146 294 y Fs(N)150 410 y Fb(name)19
0fcb3344 22381b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
037a8b7f 22382(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
0fcb3344
CR
22383g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(3)150 497
22384y(nativ)n(e)25 b(languages)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22385(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
0fcb3344
CR
22386h(:)f(:)g(:)g(:)g(:)34 b Fb(7)150 584 y(notation,)27
22387b(readline)13 b Fc(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22388(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
fffe80d4 22389b Fb(117)146 826 y Fs(O)150 942 y Fb(op)r(erator,)g(shell)c
0fcb3344
CR
22390Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22391(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 2239237 b Fb(3)146 1184 y Fs(P)150 1300 y Fb(parameter)26
0fcb3344
CR
22393b(expansion)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22394(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28
e59452c7 22395b Fb(26)150 1388 y(parameters)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
74d0116b 22396(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7
CR
22397g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fb(21)150
223981475 y(parameters,)27 b(p)r(ositional)7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g
037a8b7f 22399(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 22400f(:)g(:)21 b Fb(22)150 1562 y(parameters,)27 b(sp)r(ecial)7
0fcb3344
CR
22401b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22402(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)21
e59452c7 22403b Fb(23)150 1649 y(pathname)k(expansion)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g
037a8b7f 22404(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22405h(:)f(:)g(:)32 b Fb(35)150 1736 y(pattern)25 b(matc)n(hing)c
0fcb3344
CR
22406Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22407(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
e59452c7
CR
22408b Fb(36)150 1824 y(pip)r(eline)10 b Fc(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22409(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22410g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
22411b Fb(10)150 1911 y(POSIX)e Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22412g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22413(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
22414b Fb(3)150 1998 y(POSIX)25 b(Mo)r(de)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)
602eae4d 22415h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e59452c7 22416(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(105)150 2085
602eae4d
CR
22417y(pro)r(cess)e(group)15 b Fc(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22418f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 22419(:)g(:)g(:)g(:)g(:)h(:)f(:)30 b Fb(3)150 2172 y(pro)r(cess)d(group)e
602eae4d
CR
22420(ID)11 b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22421(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)26
e59452c7 22422b Fb(3)150 2259 y(pro)r(cess)h(substitution)11 b Fc(:)h(:)i(:)f(:)g(:)g
0fcb3344 22423(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 22424g(:)h(:)f(:)g(:)g(:)25 b Fb(34)150 2347 y(programmable)i(completion)8
602eae4d 22425b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
fffe80d4 22426(:)h(:)f(:)g(:)g(:)23 b Fb(142)150 2434 y(prompting)15
e59452c7
CR
22427b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22428g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22429(:)g(:)30 b Fb(103)146 2676 y Fs(Q)150 2792 y Fb(quoting)16
602eae4d
CR
22430b Fc(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22431g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 22432(:)g(:)h(:)f(:)g(:)g(:)g(:)31 b Fb(6)150 2879 y(quoting,)26
602eae4d
CR
22433b(ANSI)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22434(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22435h(:)f(:)g(:)34 b Fb(6)146 3121 y Fs(R)150 3237 y Fb(Readline,)26
602eae4d
CR
22436b(ho)n(w)g(to)g(use)11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22437(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
fffe80d4 22438b Fb(115)150 3325 y(redirection)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
602eae4d 22439(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7
CR
22440g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(37)150
224413412 y(reserv)n(ed)f(w)n(ord)13 b Fc(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
602eae4d 22442g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 22443(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28 b Fb(3)150 3499
d37a4722
CR
22444y(reserv)n(ed)e(w)n(ords)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22445g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 22446(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(9)150 3586 y(restricted)c(shell)12
d37a4722
CR
22447b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22448g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)27
e59452c7 22449b Fb(104)150 3673 y(return)e(status)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g
d37a4722
CR
22450(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22451f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(4)2021
e59452c7 22452294 y Fs(S)2025 427 y Fb(shell)h(arithmetic)17 b Fc(:)d(:)f(:)g(:)g(:)g
d37a4722 22453(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 22454f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(97)2025 520
d37a4722 22455y(shell)26 b(function)18 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
0fcb3344 22456h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 22457(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(19)2025 613 y(shell)26
d37a4722
CR
22458b(script)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22459g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
3011048a 22460(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(46)2025 706 y(shell)h(v)l(ariable)7
d37a4722
CR
22461b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22462(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 22463g(:)22 b Fb(21)2025 798 y(shell,)k(in)n(teractiv)n(e)21
d37a4722
CR
22464b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22465(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
e59452c7 22466b Fb(93)2025 891 y(signal)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
d37a4722
CR
22467(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22468g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28
e59452c7 22469b Fb(4)2025 984 y(signal)f(handling)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
602eae4d 22470(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
3011048a 22471g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(45)2025 1077
d37a4722
CR
22472y(sp)r(ecial)27 b(builtin)16 b Fc(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22473(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e59452c7 22474g(:)g(:)g(:)g(:)31 b Fb(4,)26 b(76)2025 1170 y(startup)f(\014les)10
d37a4722
CR
22475b Fc(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22476g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7
CR
22477(:)g(:)25 b Fb(92)2025 1262 y(string)h(translations)8
22478b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22479(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
22480b Fb(7)2025 1350 y(susp)r(ending)i(jobs)10 b Fc(:)k(:)f(:)g(:)h(:)f(:)g
22481(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
fffe80d4 22482g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(112)2021 1710 y Fs(T)2025
e59452c7
CR
224831843 y Fb(tilde)h(expansion)7 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22484(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22485g(:)h(:)f(:)g(:)g(:)g(:)g(:)22 b Fb(25)2025 1936 y(tok)n(en)17
22486b Fc(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22487(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22488f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(4)2025 2023
22489y(translation,)27 b(nativ)n(e)e(languages)c Fc(:)13 b(:)g(:)g(:)g(:)g
22490(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34
22491b Fb(7)2021 2384 y Fs(V)2025 2517 y Fb(v)l(ariable,)26
22492b(shell)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22493(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22494g(:)g(:)28 b Fb(21)2025 2604 y(v)l(ariables,)f(readline)7
22495b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22496(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22
fffe80d4 22497b Fb(120)2021 2965 y Fs(W)2025 3098 y Fb(w)n(ord)10 b
037a8b7f
CR
22498Fc(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22499(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 22500g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(4)2025 3185
037a8b7f
CR
22501y(w)n(ord)h(splitting)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22502(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
3011048a 22503g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(35)2021 3545 y Fs(Y)2025
e59452c7 225043673 y Fb(y)n(anking)h(text)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 22505(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
fffe80d4 22506g(:)h(:)f(:)g(:)g(:)g(:)g(:)28 b Fb(118)p eop end
5e13499c 22507%%Trailer
37c41ab1 22508
5e13499c
CR
22509userdict /end-hook known{end-hook}if
22510%%EOF