]> git.ipfire.org Git - thirdparty/bash.git/blame - doc/bashref.ps
extend assoc_expand_once to indexed arrays; rename to array_expand_once, keeping...
[thirdparty/bash.git] / doc / bashref.ps
CommitLineData
5e13499c 1%!PS-Adobe-2.0
76112093 2%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
5e13499c 3%%Title: bashref.dvi
76112093 4%%CreationDate: Tue Jun 13 14:42:21 2023
e2520247 5%%Pages: 200
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
76112093 15%DVIPSSource: TeX output 2023.06.13:1042
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 756365 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61
d052bd6f
CR
756437 56 68 55 68 60 7[93 93 127 1[94 85 68 92 92 84 92
756596 116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61
756661 61 61 61 61 61 61 61 1[34 41 34 31[68 72 11[{}63 109.091
0fcb3344 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
76112093 7617Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.2.)3350 1697 y(June)e(2023)150
d052bd6f
CR
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
7a8455e4 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
76112093
CR
7625(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.2,)c(13)f(June)e
7626(2023\).)150 4523 y(This)34 b(is)h(Edition)g(5.2,)i(last)e(up)s(dated)f
7627(13)h(June)f(2023,)k(of)d Fr(The)f(GNU)i(Bash)f(Reference)g(Man)m(ual)p
7628Fu(,)i(for)150 4633 y Ft(Bash)p Fu(,)29 b(V)-8 b(ersion)31
7629b(5.2.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767
7630y Fq(\015)f Fu(1988{2023)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
7631b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h
7632(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s
7633(cumen)m(t)f(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
aaf6036e 7634b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
ad4aef08 7635b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
aaf6036e
CR
7636b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
7637b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
ad4aef08 7638b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
aaf6036e 7639b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
9f178efb 7640b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
ad4aef08
CR
76415340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
7642b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
5e13499c 7643%%Page: -1 3
6e51e0d0 7644TeXDict begin -1 2 bop 3725 -116 a Fu(i)150 299 y Fp(T)-13
967625cd 7645b(able)53 b(of)h(Con)l(ten)l(ts)150 649 y Fs(1)135 b(In)l(tro)t
037a8b7f
CR
7646(duction)31 b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7647(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
7648f(:)h(:)f(:)h(:)f(:)g(:)44 b Fs(1)275 786 y Fu(1.1)92
7649b(What)31 b(is)f(Bash?)10 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7650(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7651h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7652(:)f(:)h(:)f(:)g(:)h(:)23 b Fu(1)275 896 y(1.2)92 b(What)31
7653b(is)f(a)h(shell?)22 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7654f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f
CR
7655(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7656g(:)h(:)35 b Fu(1)150 1147 y Fs(2)135 b(De\014nitions)31
7657b Fo(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7658(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
7659f(:)h(:)f(:)g(:)h(:)43 b Fs(3)150 1425 y(3)135 b(Basic)45
7660b(Shell)g(F)-11 b(eatures)19 b Fo(:)h(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7661(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7662h(:)f(:)32 b Fs(5)275 1562 y Fu(3.1)92 b(Shell)30 b(Syn)m(tax)13
7663b Fn(:)j(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7664g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7665(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
037a8b7f
CR
766627 b Fu(5)399 1671 y(3.1.1)93 b(Shell)30 b(Op)s(eration)14
7667b Fn(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7668h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
7669(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(5)399
76701781 y(3.1.2)93 b(Quoting)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7671h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 7672(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
037a8b7f
CR
7673f(:)g(:)h(:)f(:)h(:)f(:)g(:)37 b Fu(6)524 1890 y(3.1.2.1)93
7674b(Escap)s(e)30 b(Character)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7675(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7676h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)33 b Fu(6)524
76772000 y(3.1.2.2)93 b(Single)31 b(Quotes)16 b Fn(:)g(:)f(:)g(:)h(:)f(:)h
7678(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7679h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30
7680b Fu(6)524 2110 y(3.1.2.3)93 b(Double)31 b(Quotes)14
7681b Fn(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7682g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7683(:)h(:)f(:)g(:)h(:)f(:)28 b Fu(6)524 2219 y(3.1.2.4)93
7684b(ANSI-C)30 b(Quoting)15 b Fn(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7685(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
037a8b7f
CR
7686h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29 b Fu(6)524
76872329 y(3.1.2.5)93 b(Lo)s(cale-Sp)s(eci\014c)32 b(T)-8
7688b(ranslation)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7689f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)30
7690b Fu(7)399 2438 y(3.1.3)93 b(Commen)m(ts)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)
c302751c
CR
7691h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7692(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e59452c7 7693h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(9)275 2548 y(3.2)92
037a8b7f
CR
7694b(Shell)30 b(Commands)9 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7695(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7696g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e59452c7 7697(:)h(:)f(:)23 b Fu(9)399 2658 y(3.2.1)93 b(Reserv)m(ed)31
d37a4722 7698b(W)-8 b(ords)27 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
220537f2 7699h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
d37a4722 7700(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)40
e59452c7 7701b Fu(9)399 2767 y(3.2.2)93 b(Simple)30 b(Commands)15
d37a4722
CR
7702b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7703f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e59452c7
CR
7704(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b Fu(9)399 2877 y(3.2.3)93
7705b(Pip)s(elines)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7706(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7707h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7708(:)f(:)h(:)36 b Fu(10)399 2986 y(3.2.4)93 b(Lists)30
7709b(of)h(Commands)20 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7710(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7711f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(10)399
d37a4722
CR
77123096 y(3.2.5)93 b(Comp)s(ound)28 b(Commands)9 b Fn(:)14
7713b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7714(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 771522 b Fu(11)524 3205 y(3.2.5.1)93 b(Lo)s(oping)30 b(Constructs)16
d37a4722
CR
7716b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7717f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)29
e59452c7 7718b Fu(11)524 3315 y(3.2.5.2)93 b(Conditional)31 b(Constructs)25
d37a4722
CR
7719b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7720(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39
e59452c7 7721b Fu(12)524 3425 y(3.2.5.3)93 b(Grouping)30 b(Commands)22
037a8b7f
CR
7722b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7723(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)36
e59452c7 7724b Fu(17)399 3534 y(3.2.6)93 b(Copro)s(cesses)26 b Fn(:)15
037a8b7f
CR
7725b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7726(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e59452c7 7727g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(18)399
d37a4722 77283644 y(3.2.7)93 b(GNU)31 b(P)m(arallel)13 b Fn(:)k(:)f(:)f(:)h(:)f(:)h
037a8b7f 7729(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
c302751c 7730h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e59452c7 7731(:)f(:)g(:)h(:)26 b Fu(19)275 3753 y(3.3)92 b(Shell)30
037a8b7f
CR
7732b(F)-8 b(unctions)16 b Fn(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7733(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7734g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e59452c7 7735(:)h(:)29 b Fu(19)275 3863 y(3.4)92 b(Shell)30 b(P)m(arameters)c
037a8b7f 7736Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7737(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
037a8b7f 7738h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38 b
e59452c7 7739Fu(21)399 3973 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)8
037a8b7f
CR
7740b Fn(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7741(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7a8455e4 7742h(:)f(:)h(:)21 b Fu(23)399 4082 y(3.4.2)93 b(Sp)s(ecial)30
037a8b7f
CR
7743b(P)m(arameters)c Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7744(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
e59452c7 7745g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37 b Fu(23)275 4192
037a8b7f 7746y(3.5)92 b(Shell)30 b(Expansions)24 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h
c302751c 7747(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
037a8b7f 7748f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e59452c7 7749(:)g(:)h(:)f(:)38 b Fu(24)399 4301 y(3.5.1)93 b(Brace)31
037a8b7f
CR
7750b(Expansion)9 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7751(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7752h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b
e59452c7 7753Fu(24)399 4411 y(3.5.2)93 b(Tilde)30 b(Expansion)18 b
037a8b7f
CR
7754Fn(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7755(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
e59452c7 7756f(:)h(:)f(:)g(:)h(:)f(:)h(:)31 b Fu(25)399 4521 y(3.5.3)93
037a8b7f 7757b(Shell)30 b(P)m(arameter)i(Expansion)26 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)
c302751c 7758f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e59452c7 7759(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)39 b Fu(26)399 4630 y(3.5.4)93
037a8b7f 7760b(Command)29 b(Substitution)20 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7761(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
3011048a 7762g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(34)399 4740
037a8b7f
CR
7763y(3.5.5)93 b(Arithmetic)31 b(Expansion)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
7764(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7765g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b
e2520247 7766Fu(35)399 4849 y(3.5.6)93 b(Pro)s(cess)30 b(Substitution)15
037a8b7f
CR
7767b Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7768h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
d052bd6f 7769(:)f(:)g(:)h(:)28 b Fu(35)399 4959 y(3.5.7)93 b(W)-8
037a8b7f
CR
7770b(ord)31 b(Splitting)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7771g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7772(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41
e2520247 7773b Fu(36)399 5068 y(3.5.8)93 b(Filename)32 b(Expansion)22
037a8b7f
CR
7774b Fn(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7775(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
d052bd6f 7776f(:)h(:)f(:)g(:)35 b Fu(36)524 5178 y(3.5.8.1)93 b(P)m(attern)31
037a8b7f 7777b(Matc)m(hing)14 b Fn(:)k(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7778(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 7779h(:)f(:)g(:)h(:)f(:)h(:)27 b Fu(37)399 5288 y(3.5.9)93
037a8b7f
CR
7780b(Quote)31 b(Remo)m(v)-5 b(al)17 b Fn(:)g(:)e(:)h(:)f(:)h(:)f(:)g(:)h
7781(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7782f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)30
e2520247 7783b Fu(39)p eop end
5e13499c 7784%%Page: -2 4
d37a4722
CR
7785TeXDict begin -2 3 bop 3699 -116 a Fu(ii)275 83 y(3.6)92
7786b(Redirections)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7787(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7788f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7789(:)h(:)f(:)g(:)27 b Fu(39)399 193 y(3.6.1)93 b(Redirecting)31
d37a4722
CR
7790b(Input)11 b Fn(:)j(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7791(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 7792h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(40)399 302
d37a4722 7793y(3.6.2)93 b(Redirecting)31 b(Output)15 b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)
037a8b7f 7794h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
d37a4722 7795(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)28
e2520247 7796b Fu(40)399 412 y(3.6.3)93 b(App)s(ending)28 b(Redirected)k(Output)20
d37a4722 7797b Fn(:)14 b(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
d052bd6f 7798(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(40)399
d37a4722
CR
7799521 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h(and)f(Standard)h
7800(Error)16 b Fn(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)29 b
e2520247 7801Fu(41)399 631 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)h
d37a4722 7802(Standard)f(Error)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40
e2520247 7803b Fu(41)399 741 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)15
037a8b7f
CR
7804b Fn(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7805h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 7806(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)27 b Fu(41)399 850 y(3.6.7)93
037a8b7f 7807b(Here)31 b(Strings)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 7808(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
037a8b7f 7809f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29
e2520247 7810b Fu(42)399 960 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)25
037a8b7f
CR
7811b Fn(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7812(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37
e2520247 7813b Fu(42)399 1069 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)d
6e51e0d0 7814Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
037a8b7f 7815(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 781640 b Fu(42)399 1179 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
037a8b7f 7817(for)f(Reading)h(and)f(W)-8 b(riting)29 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
d052bd6f 7818(:)41 b Fu(42)275 1289 y(3.7)92 b(Executing)31 b(Commands)24
037a8b7f
CR
7819b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7820(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e2520247 7821g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Fu(43)399 1398 y(3.7.1)93
037a8b7f
CR
7822b(Simple)30 b(Command)f(Expansion)11 b Fn(:)k(:)g(:)h(:)f(:)g(:)h(:)f
7823(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 7824h(:)f(:)g(:)h(:)f(:)24 b Fu(43)399 1508 y(3.7.2)93 b(Command)29
037a8b7f
CR
7825b(Searc)m(h)i(and)f(Execution)15 b Fn(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7826(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 782728 b Fu(43)399 1617 y(3.7.3)93 b(Command)29 b(Execution)i(En)m
037a8b7f 7828(vironmen)m(t)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e2520247 7829(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30 b Fu(44)399
d37a4722 78301727 y(3.7.4)93 b(En)m(vironmen)m(t)26 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h
037a8b7f 7831(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
c302751c 7832h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 7833(:)f(:)g(:)h(:)39 b Fu(45)399 1836 y(3.7.5)93 b(Exit)31
037a8b7f 7834b(Status)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7835f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f 7836(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29
d052bd6f 7837b Fu(45)399 1946 y(3.7.6)93 b(Signals)23 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)
037a8b7f
CR
7838g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7839(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 7840h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)36 b Fu(46)275
d37a4722 78412056 y(3.8)92 b(Shell)30 b(Scripts)12 b Fn(:)i(:)i(:)f(:)h(:)f(:)h(:)f
c302751c
CR
7842(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7843f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e2520247 7844(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)25 b Fu(47)150 2306
037a8b7f
CR
7845y Fs(4)135 b(Shell)45 b(Builtin)g(Commands)14 b Fo(:)20
7846b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e2520247 7847(:)h(:)f(:)h(:)f(:)27 b Fs(49)275 2443 y Fu(4.1)92 b(Bourne)30
037a8b7f
CR
7848b(Shell)g(Builtins)16 b Fn(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7849(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7850h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29
e2520247 7851b Fu(49)275 2553 y(4.2)92 b(Bash)30 b(Builtin)h(Commands)13
037a8b7f
CR
7852b Fn(:)h(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7853h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 7854(:)f(:)g(:)h(:)f(:)26 b Fu(57)275 2663 y(4.3)92 b(Mo)s(difying)30
037a8b7f
CR
7855b(Shell)g(Beha)m(vior)18 b Fn(:)f(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7856(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 7857h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)31 b Fu(68)399
d37a4722 78582772 y(4.3.1)93 b(The)30 b(Set)g(Builtin)14 b Fn(:)i(:)f(:)h(:)f(:)g(:)
037a8b7f
CR
7859h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7860(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 7861f(:)g(:)27 b Fu(68)399 2882 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)21
037a8b7f
CR
7862b Fn(:)16 b(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7863(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 7864h(:)f(:)h(:)f(:)g(:)h(:)34 b Fu(72)275 2991 y(4.4)92
037a8b7f
CR
7865b(Sp)s(ecial)30 b(Builtins)9 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7866f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7867(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 7868f(:)g(:)h(:)f(:)22 b Fu(79)150 3242 y Fs(5)135 b(Shell)45
037a8b7f
CR
7869b(V)-11 b(ariables)11 b Fo(:)20 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
7870(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
e2520247 7871f(:)h(:)f(:)g(:)h(:)f(:)24 b Fs(80)275 3379 y Fu(5.1)92
037a8b7f
CR
7872b(Bourne)30 b(Shell)g(V)-8 b(ariables)10 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)
7873h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
c302751c 7874(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 787523 b Fu(80)275 3489 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)26
037a8b7f
CR
7876b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7877(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7878f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
e2520247 7879b Fu(80)150 3739 y Fs(6)135 b(Bash)44 b(F)-11 b(eatures)32
037a8b7f
CR
7880b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
7881(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e2520247 788244 b Fs(93)275 3876 y Fu(6.1)92 b(In)m(v)m(oking)31 b(Bash)16
037a8b7f 7883b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
c302751c 7884f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
037a8b7f 7885(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)29
e2520247 7886b Fu(93)275 3986 y(6.2)92 b(Bash)30 b(Startup)g(Files)f
037a8b7f
CR
7887Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7888(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e2520247 7889g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fu(95)275
d37a4722 78904095 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)19 b Fn(:)d(:)f(:)h(:)f
037a8b7f 7891(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
c302751c 7892g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7893(:)h(:)f(:)g(:)h(:)f(:)h(:)32 b Fu(96)399 4205 y(6.3.1)93
037a8b7f
CR
7894b(What)31 b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)25 b
7895Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7896(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
e2520247 7897b Fu(97)399 4315 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m
037a8b7f 7898(e?)22 b Fn(:)d(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
c302751c 7899(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 7900h(:)35 b Fu(97)399 4424 y(6.3.3)93 b(In)m(teractiv)m(e)33
037a8b7f
CR
7901b(Shell)d(Beha)m(vior)11 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7902f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7903(:)h(:)f(:)g(:)h(:)f(:)24 b Fu(97)275 4534 y(6.4)92 b(Bash)30
037a8b7f
CR
7904b(Conditional)h(Expressions)10 b Fn(:)k(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7905(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247
CR
7906h(:)f(:)h(:)f(:)g(:)h(:)f(:)23 b Fu(98)275 4643 y(6.5)92
7907b(Shell)30 b(Arithmetic)11 b Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7908(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7909h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7910(:)h(:)24 b Fu(100)275 4753 y(6.6)92 b(Aliases)18 b Fn(:)e(:)g(:)f(:)g
7a8455e4 7911(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
037a8b7f 7912h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7a8455e4 7913(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)31
e2520247 7914b Fu(102)275 4863 y(6.7)92 b(Arra)m(ys)23 b Fn(:)15 b(:)h(:)f(:)g(:)h
7a8455e4
CR
7915(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7916f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7917(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36
e2520247 7918b Fu(102)275 4972 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)14
e59452c7
CR
7919b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7920f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e2520247 7921(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)27 b Fu(104)399 5082 y(6.8.1)93
e59452c7
CR
7922b(Directory)32 b(Stac)m(k)f(Builtins)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)
7923g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7924(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)33 b Fu(105)275 5191
e59452c7
CR
7925y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)10 b Fn(:)15
7926b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
037a8b7f 7927(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 7928h(:)f(:)h(:)23 b Fu(106)275 5301 y(6.10)92 b(The)30 b(Restricted)h
e59452c7
CR
7929(Shell)9 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7930g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
e2520247 7931(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22 b Fu(108)p
e59452c7 7932eop end
8e1a6eaa 7933%%Page: -3 5
d37a4722 7934TeXDict begin -3 4 bop 3674 -116 a Fu(iii)275 83 y(6.11)92
d052bd6f
CR
7935b(Bash)31 b(and)e(POSIX)12 b Fn(:)j(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7936(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7937h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)25
e2520247 7938b Fu(108)399 193 y(6.11.1)93 b(What)31 b(is)g(POSIX?)22
d052bd6f
CR
7939b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7940(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 7941h(:)f(:)h(:)f(:)g(:)36 b Fu(108)399 302 y(6.11.2)93 b(Bash)31
d052bd6f
CR
7942b(POSIX)e(Mo)s(de)18 b Fn(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
7943(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 7944f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)31 b Fu(109)275 412 y(6.12)92
d052bd6f
CR
7945b(Shell)30 b(Compatibilit)m(y)i(Mo)s(de)25 b Fn(:)15
7946b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7947(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
e2520247 7948b Fu(113)150 663 y Fs(7)135 b(Job)45 b(Con)l(trol)35
d37a4722
CR
7949b Fo(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
7950(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
e2520247 7951g(:)48 b Fs(117)275 800 y Fu(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)23
d37a4722
CR
7952b Fn(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
7953(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
e2520247 7954g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36 b Fu(117)275 909
d37a4722
CR
7955y(7.2)92 b(Job)30 b(Con)m(trol)h(Builtins)11 b Fn(:)k(:)g(:)h(:)f(:)h
7956(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
9f178efb 7957h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 7958(:)f(:)24 b Fu(118)275 1019 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8
037a8b7f
CR
7959b(ariables)26 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7960(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 7961f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fu(120)150
d052bd6f 79621269 y Fs(8)135 b(Command)45 b(Line)g(Editing)11 b Fo(:)20
037a8b7f 7963b(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
e2520247 7964(:)g(:)h(:)f(:)h(:)k Fs(121)275 1406 y Fu(8.1)92 b(In)m(tro)s(duction)
d37a4722
CR
796530 b(to)h(Line)f(Editing)12 b Fn(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
7966f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7967(:)h(:)f(:)g(:)h(:)f(:)h(:)25 b Fu(121)275 1516 y(8.2)92
037a8b7f
CR
7968b(Readline)31 b(In)m(teraction)14 b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g
7969(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
7970h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)27
e2520247 7971b Fu(121)399 1626 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)13
037a8b7f
CR
7972b Fn(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7973h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)26
e2520247 7974b Fu(122)399 1735 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
037a8b7f
CR
7975(Commands)13 b Fn(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
7976(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)27
e2520247 7977b Fu(122)399 1845 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)24
037a8b7f
CR
7978b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7979(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
e2520247 7980b Fu(123)399 1954 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)17
037a8b7f
CR
7981b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
7982h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e2520247 7983(:)f(:)h(:)30 b Fu(123)399 2064 y(8.2.5)93 b(Searc)m(hing)31
037a8b7f 7984b(for)f(Commands)f(in)h(the)h(History)15 b Fn(:)g(:)h(:)f(:)h(:)f(:)h
e2520247 7985(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)28 b Fu(123)275
d052bd6f 79862174 y(8.3)92 b(Readline)31 b(Init)f(File)8 b Fn(:)17
037a8b7f
CR
7987b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
7988(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 7989f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b Fu(124)399 2283
037a8b7f
CR
7990y(8.3.1)93 b(Readline)31 b(Init)f(File)i(Syn)m(tax)21
7991b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
7992(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)34
e2520247 7993b Fu(124)399 2393 y(8.3.2)93 b(Conditional)31 b(Init)f(Constructs)14
037a8b7f
CR
7994b Fn(:)h(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
7995f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)27
e2520247 7996b Fu(133)399 2502 y(8.3.3)93 b(Sample)30 b(Init)g(File)20
037a8b7f
CR
7997b Fn(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
7998g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 7999(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(134)275 2612 y(8.4)92
037a8b7f 8000b(Bindable)30 b(Readline)h(Commands)19 b Fn(:)c(:)g(:)h(:)f(:)h(:)f(:)g
9f178efb 8001(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 8002h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(137)399 2721 y(8.4.1)93
037a8b7f
CR
8003b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)16 b Fn(:)h(:)e(:)h(:)f(:)g(:)
8004h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e2520247 8005(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29 b Fu(137)399
d052bd6f 80062831 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f
037a8b7f 8007(History)c Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 8008f(:)39 b Fu(138)399 2941 y(8.4.3)93 b(Commands)29 b(F)-8
037a8b7f
CR
8009b(or)31 b(Changing)f(T)-8 b(ext)9 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g
8010(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
e2520247 8011h(:)f(:)23 b Fu(140)399 3050 y(8.4.4)93 b(Killing)31
037a8b7f 8012b(And)e(Y)-8 b(anking)10 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
9f178efb 8013h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
e2520247 8014(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(141)399
d052bd6f 80153160 y(8.4.5)93 b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)25
037a8b7f 8016b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e2520247 8017(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b Fu(142)399
d052bd6f 80183269 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8
037a8b7f
CR
8019b(or)31 b(Y)-8 b(ou)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
8020(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)33
e2520247 8021b Fu(143)399 3379 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)9
6e51e0d0 8022b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8023(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 8024h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(144)399 3489 y(8.4.8)93
037a8b7f 8025b(Some)30 b(Miscellaneous)j(Commands)14 b Fn(:)f(:)j(:)f(:)h(:)f(:)g(:)
c302751c 8026h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 8027(:)f(:)27 b Fu(145)275 3598 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)e
037a8b7f 8028Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
c302751c 8029(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 8030f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b Fu(147)275
d052bd6f 80313708 y(8.6)92 b(Programmable)30 b(Completion)25 b Fn(:)15
037a8b7f
CR
8032b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
8033(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37
e2520247 8034b Fu(147)275 3817 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14
037a8b7f 8035b Fn(:)i(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 8036h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(150)275
d052bd6f 80373927 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)8
037a8b7f 8038b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
e2520247 8039(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)22 b Fu(154)150 4178 y
037a8b7f
CR
8040Fs(9)135 b(Using)45 b(History)h(In)l(teractiv)l(ely)28
8041b Fo(:)22 b(:)d(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
e2520247 8042(:)h(:)41 b Fs(156)275 4315 y Fu(9.1)92 b(Bash)30 b(History)h(F)-8
037a8b7f 8043b(acilities)9 b Fn(:)19 b(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 8044(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
e2520247 8045f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(156)275
d052bd6f 80464424 y(9.2)92 b(Bash)30 b(History)h(Builtins)d Fn(:)16
037a8b7f
CR
8047b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
8048(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 8049h(:)f(:)h(:)f(:)41 b Fu(156)275 4534 y(9.3)92 b(History)31
037a8b7f
CR
8050b(Expansion)10 b Fn(:)k(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8051(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
8052f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)23
e2520247 8053b Fu(158)399 4643 y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)19
037a8b7f
CR
8054b Fn(:)e(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
8055g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 8056(:)h(:)f(:)g(:)h(:)32 b Fu(159)399 4753 y(9.3.2)93 b(W)-8
037a8b7f
CR
8057b(ord)31 b(Designators)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8058(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 8059f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(160)399
d052bd6f 80604863 y(9.3.3)93 b(Mo)s(di\014ers)15 b Fn(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)
037a8b7f 8061h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8062(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 8063h(:)f(:)h(:)f(:)g(:)29 b Fu(160)p eop end
967625cd
CR
8064%%Page: -4 6
8065TeXDict begin -4 5 bop 3677 -116 a Fu(iv)150 83 y Fs(10)135
037a8b7f
CR
8066b(Installing)46 b(Bash)16 b Fo(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
8067(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
e2520247 8068f(:)h(:)f(:)29 b Fs(162)275 220 y Fu(10.1)92 b(Basic)32
037a8b7f 8069b(Installation)8 b Fn(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
c302751c 8070h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
037a8b7f 8071(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22
e2520247 8072b Fu(162)275 330 y(10.2)92 b(Compilers)30 b(and)g(Options)17
037a8b7f
CR
8073b Fn(:)d(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)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
e2520247 8075(:)f(:)h(:)f(:)30 b Fu(163)275 439 y(10.3)92 b(Compiling)30
037a8b7f
CR
8076b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)10 b Fn(:)16
8077b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
e2520247 8078(:)g(:)h(:)f(:)h(:)f(:)23 b Fu(163)275 549 y(10.4)92
037a8b7f
CR
8079b(Installation)32 b(Names)22 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
8080f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8081(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)35
e2520247 8082b Fu(164)275 658 y(10.5)92 b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s
037a8b7f 8083(e)21 b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
c302751c 8084(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
e2520247 8085h(:)34 b Fu(164)275 768 y(10.6)92 b(Sharing)30 b(Defaults)24
037a8b7f 8086b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
c302751c 8087(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
e2520247 8088f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37 b Fu(164)275
037a8b7f 8089878 y(10.7)92 b(Op)s(eration)30 b(Con)m(trols)12 b Fn(:)k(:)f(:)h(:)f
c302751c 8090(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
037a8b7f 8091f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
e2520247 8092(:)h(:)f(:)25 b Fu(165)275 987 y(10.8)92 b(Optional)31
037a8b7f
CR
8093b(F)-8 b(eatures)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
8094h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
8095(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)32
e2520247 8096b Fu(165)150 1238 y Fs(App)t(endix)44 b(A)119 b(Rep)t(orting)46
037a8b7f 8097b(Bugs)21 b Fo(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
e2520247 8098(:)f(:)g(:)h(:)f(:)35 b Fs(171)150 1498 y(App)t(endix)44
037a8b7f
CR
8099b(B)125 b(Ma)7 b(jor)46 b(Di\013erences)g(F)-11 b(rom)284
81001639 y(The)45 b(Bourne)f(Shell)35 b Fo(:)19 b(:)h(:)f(:)h(:)f(:)h(:)f
8101(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)
e2520247 8102f(:)g(:)h(:)f(:)h(:)47 b Fs(172)275 1776 y Fu(B.1)92
037a8b7f
CR
8103b(Implemen)m(tation)31 b(Di\013erences)h(F)-8 b(rom)31
8104b(The)e(SVR4.2)j(Shell)22 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h
e2520247 8105(:)35 b Fu(176)150 2027 y Fs(App)t(endix)44 b(C)124 b(GNU)36
037a8b7f 8106b(F)-11 b(ree)35 b(Do)t(cumen)l(tation)i(License)25 b
e2520247 8107Fo(:)20 b(:)29 b Fs(178)150 2305 y(App)t(endix)44 b(D)118
037a8b7f
CR
8108b(Indexes)27 b Fo(:)20 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
8109h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)40
e2520247 8110b Fs(186)275 2442 y Fu(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h
037a8b7f
CR
8111(Commands)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
8112g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38
e2520247 8113b Fu(186)275 2552 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8
037a8b7f
CR
8114b(ords)20 b Fn(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
8115(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)34
e2520247 8116b Fu(187)275 2661 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
037a8b7f
CR
8117b(ariable)32 b(Index)27 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
8118(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
e2520247 8119h(:)f(:)g(:)42 b Fu(188)275 2771 y(D.4)92 b(F)-8 b(unction)31
037a8b7f
CR
8120b(Index)24 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
8121(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
8122f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
e2520247 8123b Fu(190)275 2880 y(D.5)92 b(Concept)30 b(Index)15 b
037a8b7f
CR
8124Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
8125(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
8126h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b
e2520247 8127Fu(192)p eop end
5e13499c 8128%%Page: 1 7
037a8b7f
CR
8129TeXDict begin 1 6 bop 3705 -116 a Fu(1)150 299 y Fp(1)80
8130b(In)l(tro)t(duction)150 604 y Fs(1.1)68 b(What)45 b(is)g(Bash?)150
8131763 y Fu(Bash)38 b(is)g(the)g(shell,)i(or)d(command)h(language)h(in)m
6e51e0d0 8132(terpreter,)h(for)e(the)g Fm(gnu)f Fu(op)s(erating)h(system.)63
967625cd 8133b(The)150 873 y(name)33 b(is)g(an)g(acron)m(ym)g(for)g(the)g(`)p
6e51e0d0 8134Ft(Bourne-Again)27 b(SHell)p Fu(',)32 b(a)i(pun)d(on)i(Stephen)f
967625cd 8135(Bourne,)h(the)g(author)150 983 y(of)f(the)f(direct)h(ancestor)h(of)e
6e51e0d0 8136(the)h(curren)m(t)f(Unix)g(shell)h Ft(sh)p Fu(,)f(whic)m(h)g(app)s
967625cd 8137(eared)g(in)g(the)h(Sev)m(en)m(th)g(Edition)150 1092
37c41ab1 8138y(Bell)g(Labs)e(Researc)m(h)h(v)m(ersion)g(of)f(Unix.)275
967625cd 81391221 y(Bash)f(is)g(largely)i(compatible)f(with)f Ft(sh)g
6e51e0d0
CR
8140Fu(and)g(incorp)s(orates)g(useful)g(features)g(from)g(the)g(Korn)g
8141(shell)150 1330 y Ft(ksh)37 b Fu(and)h(the)g(C)g(shell)g
8142Ft(csh)p Fu(.)64 b(It)38 b(is)g(in)m(tended)g(to)h(b)s(e)f(a)g
8143(conforman)m(t)h(implemen)m(tation)h(of)e(the)g Fm(ieee)150
967625cd 81441440 y(posix)c Fu(Shell)g(and)g(T)-8 b(o)s(ols)35 b(p)s(ortion)f(of)g
6e51e0d0 8145(the)h Fm(ieee)f(posix)f Fu(sp)s(eci\014cation)j(\()p
967625cd 8146Fm(ieee)e Fu(Standard)f(1003.1\).)56 b(It)150 1550 y(o\013ers)31
6e51e0d0
CR
8147b(functional)f(impro)m(v)m(emen)m(ts)i(o)m(v)m(er)g Ft(sh)d
8148Fu(for)i(b)s(oth)e(in)m(teractiv)m(e)k(and)d(programming)g(use.)275
967625cd 81491678 y(While)h(the)g Fm(gnu)f Fu(op)s(erating)h(system)g(pro)m(vides)f
37c41ab1 8150(other)h(shells,)g(including)f(a)h(v)m(ersion)g(of)g
6e51e0d0
CR
8151Ft(csh)p Fu(,)f(Bash)150 1788 y(is)j(the)h(default)f(shell.)49
8152b(Lik)m(e)34 b(other)g Fm(gnu)f Fu(soft)m(w)m(are,)i(Bash)f(is)f(quite)
37c41ab1 8153h(p)s(ortable.)49 b(It)33 b(curren)m(tly)g(runs)f(on)150
967625cd 81541897 y(nearly)c(ev)m(ery)g(v)m(ersion)g(of)f(Unix)h(and)e(a)i(few)f
6e51e0d0 8155(other)h(op)s(erating)g(systems)f Fq(\000)g Fu(indep)s(enden)m
967625cd 8156(tly-supp)s(orted)150 2007 y(p)s(orts)j(exist)h(for)f
6e51e0d0 8157Fm(ms-dos)p Fu(,)f Fm(os/2)p Fu(,)i(and)f(Windo)m(ws)g(platforms.)150
967625cd 81582236 y Fs(1.2)68 b(What)45 b(is)g(a)h(shell?)150 2395
6e51e0d0 8159y Fu(A)m(t)32 b(its)f(base,)h(a)f(shell)g(is)h(simply)e(a)h(macro)h
c302751c 8160(pro)s(cessor)f(that)g(executes)i(commands.)42 b(The)30
967625cd 8161b(term)h(macro)150 2505 y(pro)s(cessor)25 b(means)g(functionalit)m(y)i
c302751c 8162(where)d(text)j(and)d(sym)m(b)s(ols)h(are)h(expanded)e(to)i(create)h
967625cd 8163(larger)f(expres-)150 2615 y(sions.)275 2743 y(A)34 b(Unix)h(shell)g
c302751c 8164(is)f(b)s(oth)g(a)h(command)g(in)m(terpreter)g(and)f(a)h(programming)f
967625cd 8165(language.)55 b(As)35 b(a)g(com-)150 2853 y(mand)30 b(in)m(terpreter,)i
37c41ab1 8166(the)g(shell)f(pro)m(vides)g(the)h(user)e(in)m(terface)j(to)f(the)f
6e51e0d0 8167(ric)m(h)h(set)g(of)f Fm(gnu)g Fu(utilities.)44 b(The)150
967625cd 81682962 y(programming)30 b(language)h(features)f(allo)m(w)h(these)g
d3ad40de 8169(utilities)g(to)g(b)s(e)e(com)m(bined.)41 b(Files)31
967625cd 8170b(con)m(taining)g(com-)150 3072 y(mands)e(can)i(b)s(e)e(created,)j(and)
37c41ab1 8171d(b)s(ecome)i(commands)f(themselv)m(es.)42 b(These)30
967625cd 8172b(new)f(commands)h(ha)m(v)m(e)i(the)150 3182 y(same)j(status)g(as)g
6e51e0d0
CR
8173(system)g(commands)f(in)g(directories)i(suc)m(h)e(as)h
8174Ft(/bin)p Fu(,)g(allo)m(wing)h(users)e(or)g(groups)g(to)150
967625cd
CR
81753291 y(establish)d(custom)f(en)m(vironmen)m(ts)h(to)g(automate)h(their)
8176f(common)f(tasks.)275 3420 y(Shells)j(ma)m(y)h(b)s(e)f(used)g(in)m
37c41ab1
CR
8177(teractiv)m(ely)k(or)d(non-in)m(teractiv)m(ely)-8 b(.)54
8178b(In)33 b(in)m(teractiv)m(e)j(mo)s(de,)f(they)e(accept)150
967625cd 81793529 y(input)21 b(t)m(yp)s(ed)h(from)g(the)h(k)m(eyb)s(oard.)37
37c41ab1 8180b(When)22 b(executing)i(non-in)m(teractiv)m(ely)-8 b(,)27
967625cd
CR
8181b(shells)c(execute)g(commands)150 3639 y(read)30 b(from)g(a)h(\014le.)
8182275 3768 y(A)41 b(shell)g(allo)m(ws)h(execution)h(of)e
6e51e0d0 8183Fm(gnu)g Fu(commands,)i(b)s(oth)e(sync)m(hronously)f(and)h(async)m
967625cd 8184(hronously)-8 b(.)150 3877 y(The)29 b(shell)g(w)m(aits)i(for)e(sync)m
d3ad40de 8185(hronous)f(commands)h(to)h(complete)h(b)s(efore)e(accepting)i(more)e
967625cd 8186(input;)g(asyn-)150 3987 y(c)m(hronous)22 b(commands)h(con)m(tin)m(ue)h
37c41ab1 8187(to)f(execute)h(in)e(parallel)i(with)f(the)f(shell)h(while)g(it)g
967625cd 8188(reads)g(and)f(executes)150 4096 y(additional)35 b(commands.)50
6e51e0d0 8189b(The)33 b Fr(redirection)h Fu(constructs)g(p)s(ermit)f(\014ne-grained)
967625cd 8190g(con)m(trol)i(of)f(the)g(input)150 4206 y(and)40 b(output)f(of)i
37c41ab1
CR
8191(those)f(commands.)70 b(Moreo)m(v)m(er,)45 b(the)c(shell)f(allo)m(ws)h
8192(con)m(trol)h(o)m(v)m(er)g(the)e(con)m(ten)m(ts)i(of)150
967625cd 81934316 y(commands')30 b(en)m(vironmen)m(ts.)275 4444 y(Shells)k(also)i
37c41ab1 8194(pro)m(vide)g(a)f(small)h(set)f(of)g(built-in)g(commands)g(\()p
6e51e0d0 8195Fr(builtins)t Fu(\))g(implemen)m(ting)h(function-)150
967625cd 81964554 y(alit)m(y)i(imp)s(ossible)e(or)g(incon)m(v)m(enien)m(t)j(to)e
37c41ab1 8197(obtain)g(via)g(separate)g(utilities.)61 b(F)-8 b(or)37
967625cd 8198b(example,)i Ft(cd)p Fu(,)e Ft(break)p Fu(,)150 4663
6e51e0d0 8199y Ft(continue)p Fu(,)28 b(and)i Ft(exec)f Fu(cannot)i(b)s(e)f(implemen)
74d0116b 8200m(ted)h(outside)g(of)f(the)h(shell)f(b)s(ecause)h(they)f(directly)h
967625cd 8201(ma-)150 4773 y(nipulate)d(the)g(shell)g(itself.)41 b(The)27
6e51e0d0 8202b Ft(history)p Fu(,)g Ft(getopts)p Fu(,)f Ft(kill)p Fu(,)i(or)g
967625cd 8203Ft(pwd)f Fu(builtins,)h(among)g(others,)h(could)150 4883
74d0116b
CR
8204y(b)s(e)34 b(implemen)m(ted)g(in)g(separate)h(utilities,)i(but)d(they)g
8205(are)g(more)h(con)m(v)m(enien)m(t)h(to)f(use)f(as)g(builtin)g(com-)150
967625cd 82064992 y(mands.)40 b(All)31 b(of)f(the)h(shell)f(builtins)g(are)h
74d0116b
CR
8207(describ)s(ed)e(in)h(subsequen)m(t)g(sections.)275 5121
8208y(While)39 b(executing)h(commands)e(is)g(essen)m(tial,)43
c302751c
CR
8209b(most)c(of)g(the)g(p)s(o)m(w)m(er)f(\(and)g(complexit)m(y\))j(of)e
8210(shells)150 5230 y(is)34 b(due)f(to)i(their)f(em)m(b)s(edded)f
8211(programming)h(languages.)52 b(Lik)m(e)35 b(an)m(y)f(high-lev)m(el)i
8212(language,)h(the)d(shell)150 5340 y(pro)m(vides)c(v)-5
8213b(ariables,)32 b(\015o)m(w)e(con)m(trol)i(constructs,)f(quoting,)g(and)
8214f(functions.)p eop end
5e13499c 8215%%Page: 2 8
6e51e0d0 8216TeXDict begin 2 7 bop 150 -116 a Fu(Chapter)30 b(1:)41
ad4aef08
CR
8217b(In)m(tro)s(duction)2592 b(2)275 299 y(Shells)21 b(o\013er)i(features)
8218f(geared)h(sp)s(eci\014cally)g(for)f(in)m(teractiv)m(e)j(use)d(rather)g
c302751c
CR
8219(than)g(to)h(augmen)m(t)g(the)f(pro-)150 408 y(gramming)32
8220b(language.)48 b(These)32 b(in)m(teractiv)m(e)j(features)d(include)g
8221(job)g(con)m(trol,)j(command)c(line)i(editing,)150 518
8222y(command)d(history)g(and)g(aliases.)42 b(Eac)m(h)31
37c41ab1
CR
8223b(of)g(these)g(features)f(is)h(describ)s(ed)e(in)h(this)g(man)m(ual.)p
8224eop end
5e13499c 8225%%Page: 3 9
037a8b7f
CR
8226TeXDict begin 3 8 bop 3705 -116 a Fu(3)150 299 y Fp(2)80
8227b(De\014nitions)150 552 y Fu(These)30 b(de\014nitions)g(are)h(used)e
8228(throughout)h(the)h(remainder)f(of)g(this)h(man)m(ual.)150
8229720 y Ft(POSIX)240 b Fu(A)27 b(family)g(of)g(op)s(en)f(system)g
8230(standards)g(based)g(on)h(Unix.)39 b(Bash)27 b(is)g(primarily)f
8231(concerned)630 830 y(with)k(the)h(Shell)f(and)g(Utilities)i(p)s(ortion)
8232e(of)h(the)f Fm(posix)g Fu(1003.1)j(standard.)150 995
8233y Ft(blank)240 b Fu(A)30 b(space)h(or)g(tab)f(c)m(haracter.)150
82341161 y Ft(builtin)144 b Fu(A)35 b(command)g(that)g(is)g(implemen)m(ted)
8235g(in)m(ternally)h(b)m(y)f(the)g(shell)g(itself,)i(rather)d(than)h(b)m
8236(y)630 1271 y(an)30 b(executable)i(program)e(somewhere)h(in)f(the)g
8237(\014le)h(system.)150 1436 y Ft(control)d(operator)630
82381546 y Fu(A)20 b Ft(token)f Fu(that)i(p)s(erforms)e(a)i(con)m(trol)g
6e51e0d0
CR
8239(function.)37 b(It)21 b(is)f(a)h Ft(newline)d Fu(or)j(one)f(of)h(the)f
8240(follo)m(wing:)630 1655 y(`)p Ft(||)p Fu(',)31 b(`)p
8241Ft(&&)p Fu(',)f(`)p Ft(&)p Fu(',)h(`)p Ft(;)p Fu(',)g(`)p
71574d7e
CR
8242Ft(;;)p Fu(',)f(`)p Ft(;&)p Fu(',)h(`)p Ft(;;&)p Fu(',)f(`)p
8243Ft(|)p Fu(',)h(`)p Ft(|&)p Fu(',)f(`)p Ft(\()p Fu(',)h(or)f(`)p
8244Ft(\))p Fu('.)150 1821 y Ft(exit)f(status)630 1931 y
8245Fu(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h(its)g
8246(caller.)41 b(The)28 b(v)-5 b(alue)29 b(is)f(restricted)h(to)h(eigh)m
8247(t)630 2040 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5 b(alue)31
8248b(is)f(255.)150 2206 y Ft(field)240 b Fu(A)27 b(unit)g(of)g(text)h
8249(that)g(is)f(the)g(result)g(of)g(one)h(of)f(the)g(shell)g(expansions.)
825040 b(After)27 b(expansion,)630 2315 y(when)e(executing)h(a)g(command,)h
8251(the)f(resulting)f(\014elds)g(are)h(used)f(as)h(the)g(command)f(name)
8252630 2425 y(and)30 b(argumen)m(ts.)150 2591 y Ft(filename)96
8253b Fu(A)30 b(string)h(of)f(c)m(haracters)i(used)e(to)h(iden)m(tify)g(a)f
8254(\014le.)150 2756 y Ft(job)336 b Fu(A)31 b(set)h(of)f(pro)s(cesses)g
8255(comprising)g(a)g(pip)s(eline,)g(and)g(an)m(y)g(pro)s(cesses)g
8256(descended)g(from)f(it,)630 2866 y(that)h(are)g(all)g(in)f(the)h(same)f
8257(pro)s(cess)g(group.)150 3031 y Ft(job)f(control)630
82583141 y Fu(A)22 b(mec)m(hanism)g(b)m(y)f(whic)m(h)h(users)f(can)h
8259(selectiv)m(ely)i(stop)e(\(susp)s(end\))e(and)h(restart)i(\(resume\))
8260630 3251 y(execution)32 b(of)e(pro)s(cesses.)150 3416
8261y Ft(metacharacter)630 3526 y Fu(A)23 b(c)m(haracter)h(that,)h(when)d
8262(unquoted,)h(separates)h(w)m(ords.)37 b(A)23 b(metac)m(haracter)i(is)e
8263(a)g Ft(space)p Fu(,)630 3635 y Ft(tab)p Fu(,)29 b Ft(newline)p
8264Fu(,)e(or)i(one)h(of)f(the)h(follo)m(wing)g(c)m(haracters:)42
8265b(`)p Ft(|)p Fu(',)29 b(`)p Ft(&)p Fu(',)h(`)p Ft(;)p
8266Fu(',)g(`)p Ft(\()p Fu(',)g(`)p Ft(\))p Fu(',)g(`)p Ft(<)p
8267Fu(',)f(or)h(`)p Ft(>)p Fu('.)150 3801 y Ft(name)288
d7935593
CR
8268b Fu(A)37 b Ft(word)f Fu(consisting)i(solely)h(of)e(letters,)j(n)m(um)m
8269(b)s(ers,)e(and)f(underscores,)h(and)f(b)s(eginning)630
82703910 y(with)23 b(a)g(letter)h(or)f(underscore.)38 b Ft(Name)p
8271Fu(s)22 b(are)h(used)f(as)i(shell)f(v)-5 b(ariable)24
8272b(and)e(function)h(names.)630 4020 y(Also)31 b(referred)f(to)h(as)f(an)
8273h Ft(identifier)p Fu(.)150 4186 y Ft(operator)96 b Fu(A)38
8274b Ft(control)28 b(operator)36 b Fu(or)h(a)i Ft(redirection)27
8275b(operator)p Fu(.)61 b(See)38 b(Section)g(3.6)h([Redirec-)630
e2520247 82764295 y(tions],)f(page)f(39,)i(for)d(a)g(list)h(of)f(redirection)h(op)s
d7935593
CR
8277(erators.)58 b(Op)s(erators)35 b(con)m(tain)j(at)f(least)630
82784405 y(one)31 b(unquoted)e Ft(metacharacter)p Fu(.)150
82794570 y Ft(process)f(group)630 4680 y Fu(A)i(collection)k(of)c(related)h
8280(pro)s(cesses)g(eac)m(h)g(ha)m(ving)g(the)g(same)f(pro)s(cess)g(group)g
6e51e0d0
CR
8281Fm(id)p Fu(.)150 4846 y Ft(process)e(group)h(ID)630 4955
8282y Fu(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g
8283Ft(process)d(group)h Fu(during)g(its)i(lifetime.)150
82845121 y Ft(reserved)d(word)630 5230 y Fu(A)h Ft(word)e
8285Fu(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h(the)g(shell.)40
ed35cb4a 8286b(Most)30 b(reserv)m(ed)e(w)m(ords)g(in)m(tro)s(duce)630
a9fac3b2 82875340 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as)g
6e51e0d0 8288Ft(for)g Fu(and)g Ft(while)p Fu(.)p eop end
5e13499c 8289%%Page: 4 10
6e51e0d0
CR
8290TeXDict begin 4 9 bop 150 -116 a Fu(Chapter)30 b(2:)41
8291b(De\014nitions)2662 b(4)150 299 y Ft(return)29 b(status)630
8292408 y Fu(A)h(synon)m(ym)g(for)g Ft(exit)g(status)p Fu(.)150
8293568 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
8294(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
8295(of)g(an)g(ev)m(en)m(t)630 677 y(o)s(ccurring)30 b(in)g(the)h(system.)
6e51e0d0 8296150 837 y Ft(special)d(builtin)630 946 y Fu(A)j(shell)f(builtin)g
a9fac3b2 8297(command)h(that)g(has)f(b)s(een)g(classi\014ed)h(as)g(sp)s(ecial)g(b)m
6e51e0d0
CR
8298(y)f(the)h Fm(posix)f Fu(stan-)630 1056 y(dard.)150 1215
8299y Ft(token)240 b Fu(A)38 b(sequence)h(of)f(c)m(haracters)h(considered)f
a9fac3b2 8300(a)h(single)g(unit)e(b)m(y)h(the)h(shell.)64 b(It)38
6e51e0d0
CR
8301b(is)g(either)h(a)630 1325 y Ft(word)29 b Fu(or)i(an)f
8302Ft(operator)p Fu(.)150 1484 y Ft(word)288 b Fu(A)28 b(sequence)g(of)g
a9fac3b2
CR
8303(c)m(haracters)h(treated)g(as)f(a)g(unit)f(b)m(y)h(the)g(shell.)40
8304b(W)-8 b(ords)28 b(ma)m(y)g(not)g(include)630 1594 y(unquoted)i
6e51e0d0 8305Ft(metacharacters)p Fu(.)p eop end
5e13499c 8306%%Page: 5 11
037a8b7f
CR
8307TeXDict begin 5 10 bop 3705 -116 a Fu(5)150 299 y Fp(3)80
8308b(Basic)54 b(Shell)e(F)-13 b(eatures)150 601 y Fu(Bash)21
8309b(is)g(an)f(acron)m(ym)i(for)e(`)p Ft(Bourne-Again)27
6e51e0d0 8310b(SHell)p Fu('.)37 b(The)20 b(Bourne)g(shell)h(is)g(the)g(traditional)h
967625cd 8311(Unix)f(shell)150 710 y(originally)h(written)f(b)m(y)f(Stephen)g
c302751c 8312(Bourne.)38 b(All)21 b(of)g(the)g(Bourne)f(shell)h(builtin)f(commands)g
967625cd 8313(are)i(a)m(v)-5 b(ailable)150 820 y(in)26 b(Bash,)h(The)f(rules)f(for)h
c302751c 8314(ev)-5 b(aluation)28 b(and)d(quoting)h(are)h(tak)m(en)g(from)f(the)g
967625cd
CR
8315Fm(posix)f Fu(sp)s(eci\014cation)i(for)f(the)150 929
8316y(`standard')k(Unix)g(shell.)275 1086 y(This)h(c)m(hapter)i(brie\015y)e
c302751c 8317(summarizes)h(the)h(shell's)f(`building)g(blo)s(c)m(ks':)45
967625cd 8318b(commands,)32 b(con)m(trol)i(struc-)150 1196 y(tures,)k(shell)e
6e51e0d0
CR
8319(functions,)h(shell)g Fl(p)-5 b(ar)g(ameters)p Fu(,)41
8320b(shell)36 b(expansions,)i Fl(r)-5 b(e)g(dir)g(e)g(ctions)p
967625cd 8321Fu(,)40 b(whic)m(h)c(are)h(a)f(w)m(a)m(y)h(to)150 1306
c302751c
CR
8322y(direct)31 b(input)e(and)h(output)g(from)g(and)g(to)h(named)f
8323(\014les,)g(and)g(ho)m(w)g(the)h(shell)g(executes)g(commands.)150
967625cd 83241580 y Fs(3.1)68 b(Shell)45 b(Syn)l(tax)150 1740 y Fu(When)40
c302751c
CR
8325b(the)h(shell)g(reads)f(input,)i(it)f(pro)s(ceeds)f(through)g(a)h
8326(sequence)g(of)g(op)s(erations.)71 b(If)40 b(the)h(input)150
967625cd 83271849 y(indicates)31 b(the)f(b)s(eginning)f(of)h(a)g(commen)m(t,)h(the)f
c302751c 8328(shell)g(ignores)g(the)g(commen)m(t)h(sym)m(b)s(ol)f(\(`)p
967625cd
CR
8329Ft(#)p Fu('\),)h(and)e(the)150 1959 y(rest)i(of)f(that)h(line.)275
83302116 y(Otherwise,)h(roughly)f(sp)s(eaking,)i(the)f(shell)g(reads)g(its)
c302751c 8331g(input)f(and)h(divides)f(the)i(input)e(in)m(to)h(w)m(ords)150
967625cd 83322225 y(and)23 b(op)s(erators,)j(emplo)m(ying)e(the)g(quoting)h(rules)e
37c41ab1 8333(to)h(select)i(whic)m(h)d(meanings)h(to)h(assign)f(v)-5
967625cd
CR
8334b(arious)23 b(w)m(ords)150 2335 y(and)30 b(c)m(haracters.)275
83352492 y(The)38 b(shell)h(then)f(parses)g(these)h(tok)m(ens)h(in)m(to)f
37c41ab1 8336(commands)g(and)f(other)h(constructs,)i(remo)m(v)m(es)f(the)150
967625cd 83372602 y(sp)s(ecial)31 b(meaning)f(of)g(certain)h(w)m(ords)f(or)g(c)m
37c41ab1 8338(haracters,)i(expands)d(others,)h(redirects)h(input)e(and)g(output)150
967625cd 83392711 y(as)d(needed,)g(executes)g(the)g(sp)s(eci\014ed)e(command,)j(w)m
37c41ab1 8340(aits)f(for)f(the)g(command's)g(exit)i(status,)f(and)f(mak)m(es)150
967625cd 83412821 y(that)31 b(exit)g(status)g(a)m(v)-5 b(ailable)33
37c41ab1 8342b(for)d(further)f(insp)s(ection)h(or)h(pro)s(cessing.)150
967625cd 83433043 y Fk(3.1.1)63 b(Shell)41 b(Op)s(eration)150 3190
6e51e0d0 8344y Fu(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g
c302751c 8345(shell's)h(op)s(eration)f(when)f(it)i(reads)f(and)f(executes)j(a)150
967625cd
CR
83463299 y(command.)h(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the)h
8347(follo)m(wing:)199 3456 y(1.)61 b(Reads)42 b(its)h(input)e(from)h(a)g
e2520247 8348(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(47\),)k
967625cd 8349(from)41 b(a)i(string)330 3566 y(supplied)30 b(as)h(an)g(argumen)m(t)h
6e51e0d0 8350(to)g(the)f Ft(-c)g Fu(in)m(v)m(o)s(cation)i(option)f(\(see)g(Section)g
e2520247 8351(6.1)g([In)m(v)m(oking)g(Bash],)330 3675 y(page)f(93\),)h(or)e(from)g
967625cd 8352(the)h(user's)f(terminal.)199 3821 y(2.)61 b(Breaks)43
37c41ab1 8353b(the)g(input)f(in)m(to)h(w)m(ords)f(and)g(op)s(erators,)k(ob)s(eying)d
967625cd 8354(the)g(quoting)g(rules)f(describ)s(ed)f(in)330 3931 y(Section)27
37c41ab1 8355b(3.1.2)i([Quoting],)f(page)f(6.)40 b(These)26 b(tok)m(ens)i(are)f
6e51e0d0 8356(separated)g(b)m(y)f Ft(metacharacters)p Fu(.)36 b(Alias)330
967625cd 83574040 y(expansion)30 b(is)h(p)s(erformed)d(b)m(y)j(this)f(step)g(\(see)i
e2520247 8358(Section)f(6.6)g([Aliases],)i(page)e(102\).)199 4186
7a8455e4
CR
8359y(3.)61 b(P)m(arses)35 b(the)g(tok)m(ens)g(in)m(to)h(simple)e(and)g
8360(comp)s(ound)f(commands)h(\(see)h(Section)h(3.2)f([Shell)g(Com-)330
e59452c7 83614296 y(mands],)30 b(page)h(9\).)199 4442 y(4.)61 b(P)m(erforms)40
37c41ab1 8362b(the)h(v)-5 b(arious)40 b(shell)h(expansions)f(\(see)h(Section)g(3.5)g
e59452c7 8363([Shell)g(Expansions],)h(page)f(24\),)330 4551 y(breaking)35
37c41ab1 8364b(the)g(expanded)g(tok)m(ens)h(in)m(to)g(lists)f(of)g(\014lenames)h
967625cd 8365(\(see)g(Section)f(3.5.8)i([Filename)g(Ex-)330 4661 y(pansion],)30
d052bd6f 8366b(page)h(36\))h(and)e(commands)g(and)g(argumen)m(ts.)199
967625cd 83674807 y(5.)61 b(P)m(erforms)36 b(an)m(y)i(necessary)f(redirections)g
e2520247 8368(\(see)h(Section)f(3.6)h([Redirections],)i(page)e(39\))g(and)e(re-)330
967625cd 83694916 y(mo)m(v)m(es)c(the)e(redirection)h(op)s(erators)g(and)f(their)g
c302751c 8370(op)s(erands)f(from)h(the)h(argumen)m(t)f(list.)199 5062
37c41ab1 8371y(6.)61 b(Executes)31 b(the)g(command)f(\(see)h(Section)g(3.7)h
e2520247 8372([Executing)f(Commands],)f(page)h(43\).)199 5208 y(7.)61
37c41ab1
CR
8373b(Optionally)40 b(w)m(aits)g(for)f(the)g(command)g(to)h(complete)g(and)
8374f(collects)i(its)f(exit)g(status)f(\(see)h(Sec-)330 5317
d052bd6f 8375y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(45\).)p
37c41ab1 8376eop end
5e13499c 8377%%Page: 6 12
6e51e0d0 8378TeXDict begin 6 11 bop 150 -116 a Fu(Chapter)30 b(3:)41
ad4aef08 8379b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(6)150 299
6e51e0d0 8380y Fk(3.1.2)63 b(Quoting)150 446 y Fu(Quoting)32 b(is)h(used)e(to)i
ad4aef08
CR
8381(remo)m(v)m(e)h(the)e(sp)s(ecial)h(meaning)f(of)h(certain)g(c)m
8382(haracters)g(or)f(w)m(ords)g(to)h(the)f(shell.)150 555
8383y(Quoting)c(can)f(b)s(e)g(used)f(to)j(disable)e(sp)s(ecial)h(treatmen)m
8384(t)h(for)e(sp)s(ecial)h(c)m(haracters,)i(to)e(prev)m(en)m(t)g(reserv)m
8385(ed)150 665 y(w)m(ords)i(from)g(b)s(eing)g(recognized)h(as)g(suc)m(h,)f
8386(and)g(to)h(prev)m(en)m(t)g(parameter)g(expansion.)275
e59452c7 8387799 y(Eac)m(h)22 b(of)g(the)g(shell)g(metac)m(haracters)i(\(see)f
ad4aef08 8388(Chapter)e(2)i([De\014nitions],)h(page)f(3\))g(has)e(sp)s(ecial)i
e59452c7 8389(meaning)150 908 y(to)40 b(the)g(shell)f(and)g(m)m(ust)g(b)s(e)g
ad4aef08 8390(quoted)g(if)h(it)g(is)f(to)h(represen)m(t)g(itself.)68
e59452c7 8391b(When)39 b(the)h(command)f(history)150 1018 y(expansion)i(facilities)j
01ed5ba4 8392(are)e(b)s(eing)f(used)g(\(see)h(Section)h(9.3)f([History)h(In)m
e2520247 8393(teraction],)j(page)c(158\),)47 b(the)150 1127 y Fr(history)30
6e51e0d0
CR
8394b(expansion)h Fu(c)m(haracter,)h(usually)f(`)p Ft(!)p
8395Fu(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g
e59452c7 8396(expansion.)41 b(See)150 1237 y(Section)22 b(9.1)g([Bash)f(History)h(F)
e2520247 8397-8 b(acilities],)26 b(page)c(156,)j(for)20 b(more)h(details)h
e59452c7 8398(concerning)g(history)f(expansion.)275 1370 y(There)37
6e51e0d0
CR
8399b(are)h(three)f(quoting)h(mec)m(hanisms:)56 b(the)38
8400b Fr(escap)s(e)g(c)m(haracter)p Fu(,)j(single)d(quotes,)i(and)d(double)
e59452c7
CR
8401150 1480 y(quotes.)150 1677 y Fk(3.1.2.1)63 b(Escap)s(e)41
8402b(Character)150 1824 y Fu(A)36 b(non-quoted)f(bac)m(kslash)h(`)p
6e51e0d0 8403Ft(\\)p Fu(')g(is)f(the)h(Bash)g(escap)s(e)f(c)m(haracter.)58
c302751c 8404b(It)36 b(preserv)m(es)f(the)h(literal)h(v)-5 b(alue)36
e59452c7 8405b(of)150 1934 y(the)27 b(next)g(c)m(haracter)h(that)f(follo)m(ws,)i
6e51e0d0 8406(with)d(the)h(exception)g(of)g Ft(newline)p Fu(.)38 b(If)26
e59452c7 8407b(a)h Ft(\\newline)d Fu(pair)i(app)s(ears,)150 2043 y(and)k(the)h(bac)m
6e51e0d0
CR
8408(kslash)g(itself)g(is)g(not)g(quoted,)g(the)f Ft(\\newline)f
8409Fu(is)h(treated)i(as)f(a)g(line)g(con)m(tin)m(uation)h(\(that)150
e59452c7
CR
84102153 y(is,)f(it)g(is)f(remo)m(v)m(ed)h(from)f(the)h(input)e(stream)i
8411(and)f(e\013ectiv)m(ely)j(ignored\).)150 2350 y Fk(3.1.2.2)63
8412b(Single)42 b(Quotes)150 2497 y Fu(Enclosing)24 b(c)m(haracters)h(in)e
6e51e0d0 8413(single)h(quotes)g(\(`)p Ft(')p Fu('\))g(preserv)m(es)g(the)f(literal)i
c302751c 8414(v)-5 b(alue)24 b(of)g(eac)m(h)g(c)m(haracter)h(within)150
e59452c7 84152607 y(the)31 b(quotes.)42 b(A)31 b(single)h(quote)f(ma)m(y)g(not)g(o)s
c302751c 8416(ccur)g(b)s(et)m(w)m(een)g(single)h(quotes,)f(ev)m(en)h(when)d
e59452c7
CR
8417(preceded)i(b)m(y)g(a)150 2717 y(bac)m(kslash.)150 2914
8418y Fk(3.1.2.3)63 b(Double)42 b(Quotes)150 3061 y Fu(Enclosing)24
6e51e0d0
CR
8419b(c)m(haracters)h(in)f(double)f(quotes)h(\(`)p Ft(")p
8420Fu('\))g(preserv)m(es)g(the)g(literal)h(v)-5 b(alue)24
e59452c7 8421b(of)g(all)g(c)m(haracters)h(within)150 3170 y(the)34
6e51e0d0
CR
8422b(quotes,)h(with)f(the)g(exception)h(of)f(`)p Ft($)p
8423Fu(',)h(`)p Ft(`)p Fu(',)g(`)p Ft(\\)p Fu(',)g(and,)f(when)f(history)g
e59452c7 8424(expansion)h(is)g(enabled,)h(`)p Ft(!)p Fu('.)150 3280
602eae4d 8425y(When)c(the)g(shell)g(is)g(in)f Fm(posix)h Fu(mo)s(de)f(\(see)i
e2520247 8426(Section)g(6.11)g([Bash)f(POSIX)f(Mo)s(de],)i(page)g(108\),)h(the)e(`)p
e59452c7 8427Ft(!)p Fu(')150 3390 y(has)d(no)g(sp)s(ecial)h(meaning)g(within)f
967625cd 8428(double)g(quotes,)h(ev)m(en)g(when)f(history)g(expansion)g(is)g
e59452c7 8429(enabled.)40 b(The)150 3499 y(c)m(haracters)h(`)p Ft($)p
967625cd
CR
8430Fu(')e(and)g(`)p Ft(`)p Fu(')g(retain)h(their)f(sp)s(ecial)h(meaning)f
8431(within)g(double)g(quotes)h(\(see)g(Section)g(3.5)150
e59452c7 84323609 y([Shell)29 b(Expansions],)g(page)h(24\).)41 b(The)28
967625cd 8433b(bac)m(kslash)i(retains)f(its)h(sp)s(ecial)f(meaning)g(only)g(when)f
e59452c7 8434(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
8435(c)m(haracters:)63 b(`)p Ft($)p Fu(',)43 b(`)p Ft(`)p
8436Fu(',)h(`)p Ft(")p Fu(',)g(`)p Ft(\\)p Fu(',)f(or)e Ft(newline)p
e59452c7 8437Fu(.)69 b(Within)41 b(double)f(quotes,)150 3828 y(bac)m(kslashes)25
967625cd
CR
8438b(that)h(are)f(follo)m(w)m(ed)h(b)m(y)e(one)h(of)g(these)g(c)m
8439(haracters)h(are)f(remo)m(v)m(ed.)40 b(Bac)m(kslashes)26
e59452c7 8440b(preceding)150 3938 y(c)m(haracters)35 b(without)e(a)h(sp)s(ecial)f
967625cd 8441(meaning)h(are)f(left)h(unmo)s(di\014ed.)47 b(A)34 b(double)f(quote)g
e59452c7 8442(ma)m(y)h(b)s(e)f(quoted)150 4047 y(within)h(double)h(quotes)g(b)m(y)g
967625cd 8443(preceding)g(it)g(with)g(a)g(bac)m(kslash.)55 b(If)35
e59452c7 8444b(enabled,)h(history)f(expansion)g(will)150 4157 y(b)s(e)f(p)s
967625cd
CR
8445(erformed)g(unless)g(an)h(`)p Ft(!)p Fu(')g(app)s(earing)f(in)h(double)
8446f(quotes)i(is)f(escap)s(ed)g(using)f(a)h(bac)m(kslash.)55
e59452c7
CR
8447b(The)150 4266 y(bac)m(kslash)31 b(preceding)f(the)h(`)p
8448Ft(!)p Fu(')f(is)h(not)g(remo)m(v)m(ed.)275 4400 y(The)41
967625cd
CR
8449b(sp)s(ecial)h(parameters)f(`)p Ft(*)p Fu(')h(and)f(`)p
8450Ft(@)p Fu(')h(ha)m(v)m(e)g(sp)s(ecial)g(meaning)g(when)f(in)g(double)g
e59452c7
CR
8451(quotes)h(\(see)150 4509 y(Section)31 b(3.5.3)h([Shell)f(P)m(arameter)h
8452(Expansion],)e(page)h(26\).)150 4707 y Fk(3.1.2.4)63
e2520247
CR
8453b(ANSI-C)40 b(Quoting)150 4854 y Fu(Character)33 b(sequences)h(of)f
8454(the)g(form)g Ft($')p Fj(string)p Ft(')d Fu(are)k(treated)g(as)f(a)g
8455(sp)s(ecial)h(kind)e(of)h(single)h(quotes.)150 4963 y(The)k(sequence)i
e59452c7
CR
8456(expands)e(to)i Fr(string)p Fu(,)h(with)e(bac)m(kslash-escap)s(ed)h(c)m
8457(haracters)g(in)f Fr(string)46 b Fu(replaced)40 b(as)150
84585073 y(sp)s(eci\014ed)32 b(b)m(y)h(the)g(ANSI)f(C)h(standard.)47
8459b(Bac)m(kslash)34 b(escap)s(e)g(sequences,)g(if)e(presen)m(t,)i(are)f
8460(deco)s(ded)g(as)150 5182 y(follo)m(ws:)150 5340 y Ft(\\a)384
8461b Fu(alert)31 b(\(b)s(ell\))p eop end
5e13499c 8462%%Page: 7 13
6e51e0d0 8463TeXDict begin 7 12 bop 150 -116 a Fu(Chapter)30 b(3:)41
37c41ab1 8464b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(7)150 299
e59452c7
CR
8465y Ft(\\b)384 b Fu(bac)m(kspace)150 466 y Ft(\\e)150 576
8466y(\\E)g Fu(an)30 b(escap)s(e)h(c)m(haracter)h(\(not)f(ANSI)f(C\))150
8467743 y Ft(\\f)384 b Fu(form)30 b(feed)150 911 y Ft(\\n)384
8468b Fu(newline)150 1078 y Ft(\\r)g Fu(carriage)32 b(return)150
84691245 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)150 1413
8470y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)150 1580 y Ft(\\\\)384
8471b Fu(bac)m(kslash)150 1747 y Ft(\\')g Fu(single)31 b(quote)150
84721915 y Ft(\\")384 b Fu(double)30 b(quote)150 2082 y Ft(\\?)384
8473b Fu(question)31 b(mark)150 2249 y Ft(\\)p Fj(nnn)288
8474b Fu(the)36 b(eigh)m(t-bit)h(c)m(haracter)g(whose)f(v)-5
8475b(alue)36 b(is)f(the)h(o)s(ctal)h(v)-5 b(alue)36 b Fr(nnn)e
8476Fu(\(one)i(to)h(three)f(o)s(ctal)630 2359 y(digits\))150
84772526 y Ft(\\x)p Fj(HH)288 b Fu(the)36 b(eigh)m(t-bit)i(c)m(haracter)f
8478(whose)f(v)-5 b(alue)36 b(is)g(the)g(hexadecimal)h(v)-5
8479b(alue)36 b Fr(HH)46 b Fu(\(one)37 b(or)f(t)m(w)m(o)630
84802636 y(hex)30 b(digits\))150 2803 y Ft(\\u)p Fj(HHHH)192
8481b Fu(the)33 b(Unico)s(de)f(\(ISO/IEC)g(10646\))j(c)m(haracter)f(whose)e
8482(v)-5 b(alue)33 b(is)g(the)g(hexadecimal)g(v)-5 b(alue)630
84832913 y Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)f(hex)g(digits\))150
84843080 y Ft(\\U)p Fj(HHHHHHHH)630 3190 y Fu(the)j(Unico)s(de)f(\(ISO/IEC)
8485g(10646\))j(c)m(haracter)f(whose)e(v)-5 b(alue)33 b(is)g(the)g
8486(hexadecimal)g(v)-5 b(alue)630 3299 y Fr(HHHHHHHH)42
8487b Fu(\(one)31 b(to)g(eigh)m(t)g(hex)g(digits\))150 3467
8488y Ft(\\c)p Fj(x)336 b Fu(a)31 b(con)m(trol-)p Fr(x)38
8489b Fu(c)m(haracter)150 3638 y(The)30 b(expanded)f(result)i(is)f
984a1947 8490(single-quoted,)i(as)f(if)f(the)g(dollar)h(sign)g(had)e(not)i(b)s(een)f
e59452c7
CR
8491(presen)m(t.)150 3845 y Fk(3.1.2.5)63 b(Lo)s(cale-Sp)s(eci\014c)41
8492b(T)-10 b(ranslation)150 3992 y Fu(Pre\014xing)38 b(a)h(double-quoted)g
8493(string)f(with)g(a)h(dollar)g(sign)g(\(`)p Ft($)p Fu('\),)j(suc)m(h)c
8494(as)h Ft($"hello,)45 b(world")p Fu(,)40 b(will)150 4102
8495y(cause)33 b(the)f(string)h(to)g(b)s(e)f(translated)h(according)g(to)g
8496(the)g(curren)m(t)f(lo)s(cale.)48 b(The)32 b Ft(gettext)e
8497Fu(infrastruc-)150 4211 y(ture)41 b(p)s(erforms)e(the)i(lo)s(okup)g
8498(and)f(translation,)45 b(using)40 b(the)i Ft(LC_MESSAGES)p
8499Fu(,)e Ft(TEXTDOMAINDIR)p Fu(,)h(and)150 4321 y Ft(TEXTDOMAIN)34
8500b Fu(shell)i(v)-5 b(ariables,)39 b(as)e(explained)f(b)s(elo)m(w.)60
8501b(See)36 b(the)h(gettext)i(do)s(cumen)m(tation)e(for)f(addi-)150
85024430 y(tional)24 b(details)g(not)f(co)m(v)m(ered)i(here.)38
8503b(If)23 b(the)g(curren)m(t)f(lo)s(cale)j(is)e Ft(C)g
8504Fu(or)g Ft(POSIX)p Fu(,)g(if)g(there)g(are)g(no)g(translations)150
85054540 y(a)m(v)-5 b(ailable,)32 b(of)c(if)h(the)f(string)h(is)g(not)f
8506(translated,)i(the)f(dollar)g(sign)f(is)h(ignored.)40
8507b(Since)29 b(this)f(is)h(a)g(form)f(of)150 4650 y(double)d(quoting,)j
8508(the)e(string)g(remains)f(double-quoted)h(b)m(y)g(default,)h(whether)e
8509(or)h(not)g(it)g(is)g(translated)150 4759 y(and)i(replaced.)41
8510b(If)28 b(the)h Ft(noexpand_translation)23 b Fu(option)29
8511b(is)g(enabled)f(using)h(the)f Ft(shopt)g Fu(builtin)g(\(see)150
e2520247 85124869 y(Section)33 b(4.3.2)h([The)e(Shopt)f(Builtin],)j(page)f(72\),)h
e59452c7
CR
8513(translated)f(strings)e(are)i(single-quoted)g(instead)g(of)150
85144978 y(double-quoted.)275 5121 y(The)39 b(rest)i(of)g(this)f(section)h
8515(is)g(a)g(brief)f(o)m(v)m(erview)i(of)e(ho)m(w)h(y)m(ou)f(use)g
8516(gettext)j(to)e(create)h(transla-)150 5230 y(tions)33
8517b(for)f(strings)g(in)g(a)h(shell)f(script)h(named)f Fr(scriptname)p
8518Fu(.)46 b(There)32 b(are)h(more)g(details)g(in)f(the)h(gettext)150
85195340 y(do)s(cumen)m(tation.)p eop end
c302751c 8520%%Page: 8 14
6e51e0d0 8521TeXDict begin 8 13 bop 150 -116 a Fu(Chapter)30 b(3:)41
e59452c7
CR
8522b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(8)275 299
8523y(Once)34 b(y)m(ou'v)m(e)i(mark)m(ed)f(the)f(strings)h(in)f(y)m(our)g
8524(script)h(that)g(y)m(ou)g(w)m(an)m(t)g(to)g(translate)h(using)e($)p
8525Ft(")p Fu(...)p Ft(")p Fu(,)150 408 y(y)m(ou)d(create)h(a)e(gettext)j
8526Ft(")p Fu(template)p Ft(")e Fu(\014le)g(using)f(the)g(command)390
8527540 y Ft(bash)47 b(--dump-po-strings)c Fj(scriptname)i
8528Ft(>)i Fj(domain)p Ft(.pot)150 671 y Fu(The)36 b Fr(domain)g
8529Fu(is)g(y)m(our)h Fr(message)g(domain)p Fu(.)58 b(It's)37
8530b(just)e(an)i(arbitrary)f(string)g(that's)h(used)e(to)i(iden)m(tify)150
8531781 y(the)32 b(\014les)g(gettext)i(needs,)f(lik)m(e)g(a)f(pac)m(k)-5
8532b(age)35 b(or)d(script)f(name.)46 b(It)32 b(needs)g(to)h(b)s(e)e
8533(unique)g(among)i(all)g(the)150 891 y(message)41 b(domains)f(on)f
8534(systems)h(where)g(y)m(ou)g(install)h(the)f(translations,)j(so)d
8535(gettext)i(kno)m(ws)e(whic)m(h)150 1000 y(translations)27
8536b(corresp)s(ond)e(to)i(y)m(our)f(script.)39 b(Y)-8 b(ou'll)28
8537b(use)d(the)i(template)g(\014le)g(to)f(create)i(translations)f(for)150
85381110 y(eac)m(h)32 b(target)f(language.)43 b(The)29 b(template)j(\014le)
8539f(con)m(v)m(en)m(tionally)i(has)d(the)h(su\016x)e(`)p
8540Ft(.pot)p Fu('.)275 1241 y(Y)-8 b(ou)23 b(cop)m(y)g(this)g(template)h
8541(\014le)f(to)h(a)f(separate)h(\014le)f(for)g(eac)m(h)h(target)g
8542(language)g(y)m(ou)f(w)m(an)m(t)h(to)g(supp)s(ort)150
85431351 y(\(called)39 b Ft(")p Fu(PO)p Ft(")e Fu(\014les,)i(whic)m(h)f
8544(use)f(the)h(su\016x)e(`)p Ft(.po)p Fu('\).)63 b(PO)37
8545b(\014les)g(use)h(v)-5 b(arious)37 b(naming)h(con)m(v)m(en)m(tions,)150
85461461 y(but)31 b(when)g(y)m(ou)i(are)f(w)m(orking)g(to)h(translate)g(a)f
8547(template)i(\014le)e(in)m(to)h(a)f(particular)g(language,)i(y)m(ou)f
8548(\014rst)150 1570 y(cop)m(y)k(the)g(template)h(\014le)e(to)h(a)g
8549(\014le)f(whose)h(name)f(is)g(the)h(language)h(y)m(ou)f(w)m(an)m(t)g
8550(to)g(target,)j(with)c(the)150 1680 y(`)p Ft(.po)p Fu(')29
8551b(su\016x.)39 b(F)-8 b(or)30 b(instance,)g(the)f(Spanish)f
8552(translations)i(of)f(y)m(our)g(strings)g(w)m(ould)g(b)s(e)f(in)h(a)g
8553(\014le)g(named)150 1789 y(`)p Ft(es.po)p Fu(',)h(and)f(to)j(get)f
8554(started)g(using)f(a)h(message)g(domain)f(named)g Ft(")p
8555Fu(example,)p Ft(")h Fu(y)m(ou)g(w)m(ould)f(run)390 1921
8556y Ft(cp)47 b(example.pot)e(es.po)150 2052 y Fu(Ultimately)-8
8557b(,)42 b(PO)37 b(\014les)g(are)h(often)g(named)f Fr(domain)p
8558Fu(.p)s(o)g(and)g(installed)h(in)f(directories)i(that)f(con)m(tain)150
85592162 y(m)m(ultiple)31 b(translation)g(\014les)g(for)f(a)h(particular)f
8560(language.)275 2293 y(Whic)m(hev)m(er)k(naming)f(con)m(v)m(en)m(tion)i
8561(y)m(ou)e(c)m(ho)s(ose,)i(y)m(ou)e(will)g(need)g(to)g(translate)h(the)f
8562(strings)g(in)g(the)150 2403 y(PO)d(\014les)g(in)m(to)i(the)e
8563(appropriate)h(languages.)42 b(This)29 b(has)h(to)h(b)s(e)f(done)g(man)
8564m(ually)-8 b(.)275 2534 y(When)35 b(y)m(ou)h(ha)m(v)m(e)g(the)g
8565(translations)g(and)f(PO)g(\014les)g(complete,)k(y)m(ou'll)d(use)g(the)
8566f(gettext)j(to)s(ols)e(to)150 2644 y(pro)s(duce)26 b(what)g(are)i
8567(called)g Ft(")p Fu(MO)p Ft(")e Fu(\014les,)i(whic)m(h)e(are)h
8568(compiled)h(v)m(ersions)f(of)g(the)g(PO)f(\014les)h(the)g(gettext)150
85692754 y(to)s(ols)42 b(use)f(to)h(lo)s(ok)g(up)e(translations)j
8570(e\016cien)m(tly)-8 b(.)75 b(MO)42 b(\014les)f(are)g(also)i(called)f
8571Ft(")p Fu(message)g(catalog)p Ft(")150 2863 y Fu(\014les.)k(Y)-8
8572b(ou)33 b(use)f(the)g Ft(msgfmt)f Fu(program)h(to)h(do)f(this.)46
8573b(F)-8 b(or)33 b(instance,)g(if)f(y)m(ou)h(had)f(a)g(\014le)h(with)e
8574(Spanish)150 2973 y(translations,)g(y)m(ou)g(could)g(run)390
85753104 y Ft(msgfmt)46 b(-o)h(es.mo)g(es.po)150 3236 y Fu(to)31
8576b(pro)s(duce)e(the)i(corresp)s(onding)e(MO)i(\014le.)275
85773367 y(Once)21 b(y)m(ou)h(ha)m(v)m(e)i(the)e(MO)f(\014les,)j(y)m(ou)e
8578(decide)g(where)g(to)g(install)h(them)f(and)f(use)h(the)g
8579Ft(TEXTDOMAINDIR)150 3477 y Fu(shell)32 b(v)-5 b(ariable)33
8580b(to)g(tell)h(the)e(gettext)i(to)s(ols)f(where)f(they)g(are.)47
8581b(Mak)m(e)34 b(sure)d(to)i(use)f(the)g(same)h(message)150
85823587 y(domain)d(to)h(name)g(the)f(MO)h(\014les)f(as)h(y)m(ou)f(did)g
8583(for)g(the)h(PO)e(\014les)i(when)e(y)m(ou)i(install)g(them.)275
85843718 y(Y)-8 b(our)21 b(users)f(will)h(use)g(the)g Ft(LANG)f
8585Fu(or)h Ft(LC_MESSAGES)d Fu(shell)j(v)-5 b(ariables)21
8586b(to)h(select)h(the)e(desired)f(language.)275 3850 y(Y)-8
8587b(ou)29 b(set)g(the)g Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable)30
8588b(to)f(the)g(script's)g(message)h(domain.)40 b(As)29
8589b(ab)s(o)m(v)m(e,)h(y)m(ou)f(use)g(the)150 3959 y(message)i(domain)g
8590(to)g(name)f(y)m(our)h(translation)g(\014les.)275 4091
8591y(Y)-8 b(ou,)31 b(or)g(p)s(ossibly)f(y)m(our)g(users,)h(set)g(the)g
8592Ft(TEXTDOMAINDIR)c Fu(v)-5 b(ariable)31 b(to)h(the)f(name)f(of)h(a)g
8593(directory)150 4200 y(where)d(the)h(message)h(catalog)i(\014les)d(are)g
8594(stored.)40 b(If)28 b(y)m(ou)i(install)f(the)g(message)h(\014les)f(in)m
8595(to)h(the)f(system's)150 4310 y(standard)h(message)h(catalog)i
8596(directory)-8 b(,)32 b(y)m(ou)e(don't)h(need)f(to)h(w)m(orry)f(ab)s
8597(out)g(this)g(v)-5 b(ariable.)275 4441 y(The)31 b(directory)h(where)g
8598(the)g(message)h(catalog)h(\014les)e(are)g(stored)g(v)-5
8599b(aries)32 b(b)s(et)m(w)m(een)h(systems.)45 b(Some)150
86004551 y(use)24 b(the)h(message)g(catalog)j(selected)e(b)m(y)e(the)h
8601Ft(LC_MESSAGES)c Fu(shell)k(v)-5 b(ariable.)39 b(Others)24
8602b(create)i(the)f(name)150 4661 y(of)i(the)h(message)g(catalog)i(from)d
8603(the)g(v)-5 b(alue)27 b(of)h(the)f Ft(TEXTDOMAIN)e Fu(shell)i(v)-5
8604b(ariable,)29 b(p)s(ossibly)d(adding)h(the)150 4770 y(`)p
8605Ft(.mo)p Fu(')32 b(su\016x.)47 b(If)33 b(y)m(ou)g(use)f(the)h
8606Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable,)35 b(y)m(ou)e(ma)m(y)g(need)g(to)g
8607(set)h(the)f Ft(TEXTDOMAINDIR)150 4880 y Fu(v)-5 b(ariable)26
8608b(to)g(the)g(lo)s(cation)h(of)e(the)h(message)h(catalog)h(\014les,)e
8609(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
8610b(ari-)150 4989 y(ables)31 b(in)f(this)g(fashion:)41
8611b Ft($TEXTDOMAINDIR)p Fu(/)p Ft($LC_MESSAG)o(ES)p Fu(/LC)p
86122474 4989 28 4 v 34 w(MESSA)m(GES/)p Ft($TEXTDOMAIN)p
8613Fu(.mo.)275 5121 y(If)i(y)m(ou)h(used)f(that)h(last)g(con)m(v)m(en)m
8614(tion,)50 b(and)43 b(y)m(ou)h(w)m(an)m(ted)g(to)h(store)f(the)g
8615(message)h(catalog)h(\014les)150 5230 y(with)28 b(Spanish)f(\(es\))i
8616(and)f(Esp)s(eran)m(to)h(\(eo\))g(translations)h(in)m(to)f(a)g(lo)s
8617(cal)h(directory)f(y)m(ou)f(use)g(for)h(custom)150 5340
8618y(translation)i(\014les,)g(y)m(ou)g(could)f(run)p eop
8619end
8620%%Page: 9 15
8621TeXDict begin 9 14 bop 150 -116 a Fu(Chapter)30 b(3:)41
8622b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)390 299
8623y Ft(TEXTDOMAIN=example)390 408 y(TEXTDOMAINDIR=/usr/local)o(/sha)o
8624(re/l)o(oca)o(le)390 628 y(cp)47 b(es.mo)g(${TEXTDOMAINDIR}/es/LC_)o
8625(MES)o(SAGE)o(S/${)o(TEX)o(TDOM)o(AIN})o(.mo)390 737
8626y(cp)g(eo.mo)g(${TEXTDOMAINDIR}/eo/LC_)o(MES)o(SAGE)o(S/${)o(TEX)o
8627(TDOM)o(AIN})o(.mo)275 868 y Fu(When)30 b(all)i(of)f(this)f(is)h(done,)
8628g(and)f(the)h(message)h(catalog)h(\014les)e(con)m(taining)h(the)f
8629(compiled)g(transla-)150 977 y(tions)c(are)g(installed)h(in)e(the)h
8630(correct)h(lo)s(cation,)h(y)m(our)e(users)f(will)h(b)s(e)f(able)h(to)h
8631(see)f(translated)h(strings)e(in)150 1087 y(an)m(y)k(of)f(the)h(supp)s
8632(orted)d(languages)k(b)m(y)e(setting)h(the)g Ft(LANG)e
8633Fu(or)h Ft(LC_MESSAGES)d Fu(en)m(vironmen)m(t)k(v)-5
8634b(ariables)150 1197 y(b)s(efore)30 b(running)f(y)m(our)h(script.)150
86351388 y Fk(3.1.3)63 b(Commen)m(ts)150 1535 y Fu(In)21
8636b(a)i(non-in)m(teractiv)m(e)h(shell,)g(or)e(an)g(in)m(teractiv)m(e)j
8637(shell)d(in)g(whic)m(h)g(the)g Ft(interactive_comments)16
8638b Fu(option)150 1645 y(to)40 b(the)f Ft(shopt)e Fu(builtin)h(is)h
8639(enabled)g(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)e
e2520247 8640(72\),)i(a)d(w)m(ord)150 1754 y(b)s(eginning)26 b(with)g(`)p
e59452c7
CR
8641Ft(#)p Fu(')g(causes)h(that)f(w)m(ord)g(and)g(all)h(remaining)g(c)m
8642(haracters)g(on)f(that)h(line)g(to)g(b)s(e)f(ignored.)150
86431864 y(An)43 b(in)m(teractiv)m(e)j(shell)e(without)f(the)g
d37a4722 8644Ft(interactive_comments)38 b Fu(option)44 b(enabled)f(do)s(es)g(not)g
e59452c7
CR
8645(allo)m(w)150 1973 y(commen)m(ts.)56 b(The)34 b Ft
8646(interactive_comments)c Fu(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g
8647(in)m(teractiv)m(e)j(shells.)55 b(See)150 2083 y(Section)30
e2520247 8648b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(96,)g(for)e(a)i
e59452c7
CR
8649(description)e(of)h(what)g(mak)m(es)h(a)f(shell)g(in)m(teractiv)m(e.)
8650150 2316 y Fs(3.2)68 b(Shell)45 b(Commands)150 2476 y
8651Fu(A)d(simple)g(shell)g(command)f(suc)m(h)h(as)g Ft(echo)29
8652b(a)h(b)g(c)41 b Fu(consists)i(of)f(the)f(command)h(itself)h(follo)m(w)
8653m(ed)g(b)m(y)150 2585 y(argumen)m(ts,)31 b(separated)g(b)m(y)f(spaces.)
8654275 2716 y(More)h(complex)h(shell)f(commands)g(are)g(comp)s(osed)g(of)g
8655(simple)g(commands)g(arranged)g(together)h(in)150 2825
8656y(a)f(v)-5 b(ariet)m(y)32 b(of)f(w)m(a)m(ys:)41 b(in)31
8657b(a)g(pip)s(eline)f(in)g(whic)m(h)g(the)h(output)f(of)h(one)f(command)h
8658(b)s(ecomes)f(the)h(input)f(of)150 2935 y(a)h(second,)f(in)h(a)f(lo)s
8659(op)h(or)f(conditional)i(construct,)f(or)f(in)g(some)h(other)g
8660(grouping.)150 3126 y Fk(3.2.1)63 b(Reserv)m(ed)40 b(W)-10
8661b(ords)150 3273 y Fu(Reserv)m(ed)33 b(w)m(ords)g(are)g(w)m(ords)g(that)
d37a4722 8662g(ha)m(v)m(e)h(sp)s(ecial)g(meaning)f(to)h(the)f(shell.)49
e59452c7
CR
8663b(They)32 b(are)h(used)g(to)g(b)s(egin)150 3383 y(and)d(end)f(the)i
8664(shell's)g(comp)s(ound)e(commands.)275 3514 y(The)k(follo)m(wing)i(w)m
d37a4722 8665(ords)e(are)h(recognized)i(as)e(reserv)m(ed)f(when)g(unquoted)g(and)g
e59452c7
CR
8666(the)h(\014rst)f(w)m(ord)h(of)g(a)150 3623 y(command)c(\(see)h(b)s(elo)
8667m(w)g(for)f(exceptions\):)150 3754 y Ft(if)364 b(then)168
8668b(elif)g(else)g(fi)336 b(time)150 3863 y(for)316 b(in)264
8669b(until)120 b(while)g(do)336 b(done)150 3973 y(case)268
8670b(esac)168 b(coproc)72 b(select)g(function)150 4083 y({)412
8671b(})312 b([[)264 b(]])g(!)150 4213 y(in)33 b Fu(is)h(recognized)h(as)f
d37a4722 8672(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 8673h(a)g Ft(case)e Fu(or)i Ft(select)e Fu(command.)150 4323
d37a4722
CR
8674y Ft(in)e Fu(and)g Ft(do)f Fu(are)i(recognized)h(as)e(reserv)m(ed)h(w)m
8675(ords)f(if)g(they)h(are)f(the)h(third)f(w)m(ord)g(in)g(a)g
e59452c7
CR
8676Ft(for)g Fu(command.)150 4514 y Fk(3.2.2)63 b(Simple)41
8677b(Commands)150 4661 y Fu(A)29 b(simple)f(command)g(is)h(the)g(kind)e
d37a4722 8678(of)i(command)f(encoun)m(tered)h(most)g(often.)40 b(It's)29
e59452c7 8679b(just)f(a)h(sequence)g(of)150 4771 y(w)m(ords)22 b(separated)i(b)m(y)e
d37a4722 8680Ft(blank)p Fu(s,)i(terminated)f(b)m(y)g(one)g(of)g(the)g(shell's)g(con)
e59452c7 8681m(trol)h(op)s(erators)f(\(see)h(Chapter)f(2)150 4881
d37a4722
CR
8682y([De\014nitions],)37 b(page)e(3\).)54 b(The)35 b(\014rst)e(w)m(ord)i
8683(generally)g(sp)s(eci\014es)g(a)g(command)f(to)h(b)s(e)f(executed,)j
e59452c7
CR
8684(with)150 4990 y(the)31 b(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)
8685h(command's)f(argumen)m(ts.)275 5121 y(The)h(return)h(status)g(\(see)i
d052bd6f 8686(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(45\))g(of)g(a)g(simple)f
e59452c7 8687(command)g(is)h(its)150 5230 y(exit)38 b(status)f(as)g(pro)m(vided)f(b)
6e51e0d0 8688m(y)h(the)g Fm(posix)f Fu(1003.1)j Ft(waitpid)c Fu(function,)j(or)f
e59452c7
CR
8689(128)p Ft(+)p Fr(n)g Fu(if)g(the)g(command)150 5340 y(w)m(as)31
8690b(terminated)g(b)m(y)f(signal)h Fr(n)p Fu(.)p eop end
8691%%Page: 10 16
8692TeXDict begin 10 15 bop 150 -116 a Fu(Chapter)30 b(3:)41
8693b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(10)150 299
8694y Fk(3.2.3)63 b(Pip)s(elines)150 446 y Fu(A)21 b Ft(pipeline)d
fc527055
CR
8695Fu(is)j(a)g(sequence)g(of)g(one)g(or)g(more)g(commands)f(separated)h(b)
8696m(y)g(one)g(of)g(the)g(con)m(trol)h(op)s(erators)150
e59452c7 8697555 y(`)p Ft(|)p Fu(')31 b(or)f(`)p Ft(|&)p Fu('.)275
daff9eca 8698695 y(The)f(format)i(for)f(a)h(pip)s(eline)f(is)390 834
e59452c7 8699y Ft([time)46 b([-p]])h([!])g Fj(command1)e Ft([)j(|)f(or)g(|&)g
daff9eca 8700Fj(command2)f Ft(])h(...)150 974 y Fu(The)25 b(output)f(of)i(eac)m(h)g
6e51e0d0 8701(command)f(in)f(the)i(pip)s(eline)e(is)i(connected)g(via)f(a)h(pip)s(e)
daff9eca 8702e(to)i(the)f(input)f(of)h(the)h(next)150 1083 y(command.)40
6e51e0d0 8703b(That)29 b(is,)h(eac)m(h)h(command)e(reads)g(the)h(previous)f
daff9eca 8704(command's)g(output.)40 b(This)29 b(connection)150 1193
6e51e0d0 8705y(is)h(p)s(erformed)f(b)s(efore)h(an)m(y)h(redirections)g(sp)s
daff9eca 8706(eci\014ed)f(b)m(y)g Fr(command1)p Fu(.)275 1333 y(If)k(`)p
6e51e0d0
CR
8707Ft(|&)p Fu(')h(is)f(used,)i Fr(command1)7 b Fu('s)35
8708b(standard)f(error,)i(in)e(addition)h(to)h(its)f(standard)f(output,)i
daff9eca 8709(is)e(con-)150 1442 y(nected)h(to)g Fr(command2)7 b Fu('s)35
6e51e0d0 8710b(standard)f(input)f(through)h(the)g(pip)s(e;)i(it)f(is)g(shorthand)e
daff9eca 8711(for)h Ft(2>&1)29 b(|)p Fu(.)53 b(This)150 1552 y(implicit)41
6e51e0d0 8712b(redirection)f(of)g(the)g(standard)f(error)g(to)h(the)g(standard)f
daff9eca 8713(output)g(is)h(p)s(erformed)e(after)j(an)m(y)150 1661
e59452c7 8714y(redirections)31 b(sp)s(eci\014ed)f(b)m(y)g Fr(command1)p
daff9eca 8715Fu(.)275 1801 y(The)36 b(reserv)m(ed)g(w)m(ord)g Ft(time)g
e59452c7 8716Fu(causes)h(timing)g(statistics)h(to)f(b)s(e)f(prin)m(ted)g(for)g(the)h
daff9eca 8717(pip)s(eline)f(once)h(it)150 1910 y(\014nishes.)51 b(The)34
e59452c7 8718b(statistics)i(curren)m(tly)e(consist)h(of)f(elapsed)h(\(w)m(all-clo)s
daff9eca 8719(c)m(k\))i(time)e(and)f(user)f(and)h(system)150 2020
e59452c7
CR
8720y(time)e(consumed)e(b)m(y)h(the)g(command's)g(execution.)44
8721b(The)31 b Ft(-p)f Fu(option)i(c)m(hanges)g(the)f(output)g(format)g(to)
daff9eca 8722150 2130 y(that)j(sp)s(eci\014ed)e(b)m(y)h Fm(posix)p
e59452c7
CR
8723Fu(.)49 b(When)33 b(the)g(shell)g(is)h(in)e Fm(posix)h
8724Fu(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150
e2520247 87252239 y(Mo)s(de],)j(page)e(108\),)j(it)e(do)s(es)e(not)i(recognize)g
602eae4d 8726Ft(time)e Fu(as)h(a)h(reserv)m(ed)f(w)m(ord)f(if)h(the)g(next)g(tok)m
daff9eca 8727(en)h(b)s(egins)150 2349 y(with)d(a)g(`)p Ft(-)p Fu('.)49
6e51e0d0 8728b(The)33 b Ft(TIMEFORMAT)d Fu(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set)
9ec5ed66 8729g(to)h(a)g(format)f(string)g(that)h(sp)s(eci\014es)f(ho)m(w)g(the)150
daff9eca 87302458 y(timing)38 b(information)g(should)e(b)s(e)h(displa)m(y)m(ed.)62
9ec5ed66 8731b(See)38 b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)41
e2520247 8732b(page)d(80,)i(for)e(a)150 2568 y(description)27 b(of)g(the)h(a)m(v)-5
6e51e0d0
CR
8733b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Ft(time)f
8734Fu(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150
daff9eca 87352677 y(of)38 b(shell)g(builtins,)i(shell)e(functions,)i(and)d(pip)s
6e51e0d0 8736(elines.)63 b(An)38 b(external)h Ft(time)e Fu(command)h(cannot)g(time)
daff9eca 8737150 2787 y(these)31 b(easily)-8 b(.)275 2927 y(When)26
602eae4d 8738b(the)h(shell)g(is)g(in)g Fm(posix)f Fu(mo)s(de)g(\(see)i(Section)f
e2520247 8739(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(108\),)h Ft(time)150
daff9eca 87403036 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 8741b(In)25 b(this)h(case,)i(the)d(shell)h(displa)m(ys)g(the)g(total)h
daff9eca 8742(user)e(and)g(system)h(time)150 3146 y(consumed)33 b(b)m(y)h(the)h
6e51e0d0
CR
8743(shell)f(and)f(its)i(c)m(hildren.)51 b(The)34 b Ft(TIMEFORMAT)d
8744Fu(v)-5 b(ariable)35 b(ma)m(y)g(b)s(e)e(used)g(to)i(sp)s(ecify)150
daff9eca
CR
87453255 y(the)c(format)f(of)h(the)f(time)h(information.)275
87463395 y(If)36 b(the)h(pip)s(eline)g(is)g(not)g(executed)h(async)m
e59452c7 8747(hronously)f(\(see)h(Section)g(3.2.4)g([Lists],)i(page)e(10\),)i(the)
daff9eca
CR
8748150 3504 y(shell)31 b(w)m(aits)g(for)f(all)h(commands)f(in)g(the)h(pip)
8749s(eline)f(to)h(complete.)275 3644 y(Eac)m(h)d(command)g(in)f(a)i(m)m
8750(ulti-command)f(pip)s(eline,)h(where)e(pip)s(es)g(are)h(created,)i(is)e
8751(executed)h(in)f(its)150 3753 y(o)m(wn)h Fr(subshell)p
8752Fu(,)f(whic)m(h)h(is)g(a)g(separate)h(pro)s(cess)e(\(see)i(Section)g
8753(3.7.3)g([Command)f(Execution)g(En)m(viron-)150 3863
e2520247 8754y(men)m(t],)d(page)e(44\).)40 b(If)23 b(the)h Ft(lastpipe)d
daff9eca 8755Fu(option)j(is)g(enabled)g(using)f(the)h Ft(shopt)e Fu(builtin)h(\(see)
e2520247 8756i(Section)f(4.3.2)150 3973 y([The)i(Shopt)f(Builtin],)i(page)g(72\),)h
daff9eca
CR
8757(the)e(last)h(elemen)m(t)g(of)f(a)g(pip)s(eline)g(ma)m(y)g(b)s(e)f(run)
8758g(b)m(y)g(the)h(shell)g(pro)s(cess)150 4082 y(when)j(job)h(con)m(trol)i
8759(is)f(not)f(activ)m(e.)275 4222 y(The)24 b(exit)i(status)f(of)h(a)f
8760(pip)s(eline)g(is)g(the)g(exit)h(status)f(of)h(the)f(last)h(command)f
8761(in)f(the)i(pip)s(eline,)g(unless)150 4331 y(the)31 b
8762Ft(pipefail)d Fu(option)j(is)g(enabled)f(\(see)i(Section)f(4.3.1)i
e2520247 8763([The)d(Set)h(Builtin],)g(page)h(68\).)42 b(If)30 b Ft(pipefail)150
daff9eca
CR
87644441 y Fu(is)f(enabled,)g(the)f(pip)s(eline's)g(return)g(status)h(is)f
8765(the)h(v)-5 b(alue)29 b(of)f(the)h(last)g(\(righ)m(tmost\))i(command)d
8766(to)h(exit)150 4550 y(with)34 b(a)h(non-zero)g(status,)i(or)d(zero)i
8767(if)e(all)i(commands)e(exit)h(successfully)-8 b(.)54
8768b(If)34 b(the)h(reserv)m(ed)g(w)m(ord)f(`)p Ft(!)p Fu(')150
87694660 y(precedes)e(the)f(pip)s(eline,)h(the)f(exit)i(status)f(is)f(the)h
8770(logical)i(negation)f(of)e(the)h(exit)g(status)g(as)g(describ)s(ed)150
87714770 y(ab)s(o)m(v)m(e.)63 b(The)38 b(shell)f(w)m(aits)i(for)e(all)i
8772(commands)e(in)g(the)h(pip)s(eline)f(to)h(terminate)h(b)s(efore)e
8773(returning)g(a)150 4879 y(v)-5 b(alue.)150 5083 y Fk(3.2.4)63
8774b(Lists)41 b(of)h(Commands)150 5230 y Fu(A)37 b Ft(list)e
8775Fu(is)i(a)g(sequence)g(of)g(one)g(or)f(more)h(pip)s(elines)f(separated)
8776h(b)m(y)g(one)g(of)f(the)h(op)s(erators)g(`)p Ft(;)p
8777Fu(',)i(`)p Ft(&)p Fu(',)150 5340 y(`)p Ft(&&)p Fu(',)31
8778b(or)f(`)p Ft(||)p Fu(',)g(and)g(optionally)i(terminated)f(b)m(y)f(one)
8779h(of)f(`)p Ft(;)p Fu(',)h(`)p Ft(&)p Fu(',)g(or)f(a)h
8780Ft(newline)p Fu(.)p eop end
e59452c7
CR
8781%%Page: 11 17
8782TeXDict begin 11 16 bop 150 -116 a Fu(Chapter)30 b(3:)41
8783b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)275 299
daff9eca
CR
8784y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p Ft(&&)p
8785Fu(')d(and)g(`)p Ft(||)p Fu(')h(ha)m(v)m(e)h(equal)f(precedence,)i
8786(follo)m(w)m(ed)f(b)m(y)f(`)p Ft(;)p Fu(')g(and)f(`)p
8787Ft(&)p Fu(',)i(whic)m(h)150 408 y(ha)m(v)m(e)32 b(equal)e(precedence.)
8788275 536 y(A)f(sequence)h(of)g(one)g(or)g(more)g(newlines)f(ma)m(y)h
8789(app)s(ear)f(in)h(a)g Ft(list)e Fu(to)j(delimit)f(commands,)g(equiv-)
8790150 646 y(alen)m(t)i(to)f(a)g(semicolon.)275 773 y(If)c(a)h(command)f
8791(is)h(terminated)g(b)m(y)g(the)g(con)m(trol)h(op)s(erator)f(`)p
6e51e0d0 8792Ft(&)p Fu(',)h(the)e(shell)h(executes)h(the)f(command)150
daff9eca 8793883 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28
6e51e0d0 8794b(is)h(kno)m(wn)f(as)h(executing)h(the)f(command)g(in)f(the)h
daff9eca 8795Fr(bac)m(kground)p Fu(,)150 992 y(and)42 b(these)i(are)f(referred)g(to)
e59452c7 8796g(as)h Fr(async)m(hronous)i Fu(commands.)78 b(The)43
daff9eca 8797b(shell)g(do)s(es)g(not)g(w)m(ait)h(for)f(the)150 1102
68701259
CR
8798y(command)34 b(to)h(\014nish,)f(and)f(the)h(return)f(status)i(is)f(0)g
8799(\(true\).)53 b(When)34 b(job)g(con)m(trol)h(is)f(not)h(activ)m(e)h
e2520247 8800(\(see)150 1211 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(117\),)
daff9eca
CR
8801h(the)d(standard)g(input)f(for)i(async)m(hronous)f(commands,)h(in)f
8802(the)150 1321 y(absence)k(of)f(an)m(y)h(explicit)h(redirections,)f(is)f
8803(redirected)h(from)f Ft(/dev/null)p Fu(.)275 1448 y(Commands)19
68701259
CR
8804b(separated)j(b)m(y)f(a)g(`)p Ft(;)p Fu(')g(are)h(executed)g(sequen)m
8805(tially;)k(the)21 b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150
daff9eca 88061558 y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i
68701259 8807(is)f(the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275
daff9eca 88081685 y Fm(and)g Fu(and)h Fm(or)g Fu(lists)h(are)g(sequences)f(of)h(one)
6a8fd0ed 8809g(or)f(more)h(pip)s(elines)e(separated)i(b)m(y)g(the)f(con)m(trol)i(op)
daff9eca 8810s(er-)150 1795 y(ators)e(`)p Ft(&&)p Fu(')f(and)g(`)p
6e51e0d0
CR
8811Ft(||)p Fu(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fm(and)30
8812b Fu(and)f Fm(or)h Fu(lists)h(are)g(executed)g(with)f(left)h(asso)s
daff9eca
CR
8813(ciativit)m(y)-8 b(.)275 1923 y(An)30 b Fm(and)f Fu(list)i(has)f(the)h
8814(form)390 2050 y Fj(command1)46 b Ft(&&)h Fj(command2)150
88152178 y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
e59452c7 8816Fr(command1)38 b Fu(returns)29 b(an)h(exit)h(status)g(of)g(zero)g
daff9eca
CR
8817(\(success\).)275 2305 y(An)f Fm(or)f Fu(list)i(has)f(the)h(form)390
88182432 y Fj(command1)46 b Ft(||)h Fj(command2)150 2560
e59452c7
CR
8819y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
8820Fr(command1)38 b Fu(returns)29 b(a)i(non-zero)g(exit)g(status.)275
daff9eca 88212687 y(The)h(return)g(status)i(of)f Fm(and)f Fu(and)h
e59452c7 8822Fm(or)f Fu(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h
daff9eca
CR
8823(command)f(executed)150 2797 y(in)d(the)h(list.)150 2982
8824y Fk(3.2.5)63 b(Comp)s(ound)42 b(Commands)150 3129 y
e59452c7
CR
8825Fu(Comp)s(ound)29 b(commands)h(are)i(the)f(shell)g(programming)f
8826(language)j(constructs.)42 b(Eac)m(h)32 b(construct)f(b)s(e-)150
daff9eca 88273239 y(gins)25 b(with)f(a)i(reserv)m(ed)f(w)m(ord)f(or)h(con)m(trol)h
e59452c7 8828(op)s(erator)f(and)g(is)g(terminated)g(b)m(y)g(a)g(corresp)s(onding)f
daff9eca 8829(reserv)m(ed)150 3348 y(w)m(ord)i(or)g(op)s(erator.)40
e59452c7 8830b(An)m(y)26 b(redirections)g(\(see)i(Section)f(3.6)g([Redirections],)h
e2520247 8831(page)f(39\))h(asso)s(ciated)f(with)150 3458 y(a)k(comp)s(ound)f
e59452c7 8832(command)h(apply)f(to)i(all)g(commands)f(within)f(that)i(comp)s(ound)d
daff9eca
CR
8833(command)i(unless)f(ex-)150 3568 y(plicitly)i(o)m(v)m(erridden.)275
88343695 y(In)20 b(most)h(cases)g(a)g(list)h(of)f(commands)f(in)g(a)h(comp)
e59452c7 8835s(ound)f(command's)g(description)h(ma)m(y)g(b)s(e)f(separated)150
daff9eca 88363805 y(from)30 b(the)h(rest)g(of)g(the)g(command)g(b)m(y)f(one)h(or)g
1a5fa30b 8837(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
daff9eca
CR
8838(newline)150 3914 y(in)f(place)h(of)g(a)g(semicolon.)275
88394042 y(Bash)45 b(pro)m(vides)h(lo)s(oping)g(constructs,)j(conditional)e
ad4aef08 8840(commands,)j(and)44 b(mec)m(hanisms)i(to)g(group)150
daff9eca
CR
88414151 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)150
88424336 y Fk(3.2.5.1)63 b(Lo)s(oping)43 b(Constructs)150
88434483 y Fu(Bash)31 b(supp)s(orts)d(the)j(follo)m(wing)g(lo)s(oping)g
8844(constructs.)275 4611 y(Note)k(that)f(wherev)m(er)g(a)g(`)p
6e51e0d0 8845Ft(;)p Fu(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's)
daff9eca
CR
8846g(syn)m(tax,)i(it)e(ma)m(y)h(b)s(e)150 4720 y(replaced)c(with)f(one)h
8847(or)f(more)g(newlines.)150 4866 y Ft(until)240 b Fu(The)30
6e51e0d0 8848b(syn)m(tax)h(of)f(the)h Ft(until)e Fu(command)h(is:)870
daff9eca 88494993 y Ft(until)46 b Fj(test-commands)p Ft(;)e(do)j Fj
e59452c7 8850(consequent-commands)p Ft(;)c(done)630 5121 y Fu(Execute)f
6e51e0d0 8851Fr(consequen)m(t-commands)k Fu(as)41 b(long)h(as)f Fr(test-commands)46
e59452c7 8852b Fu(has)41 b(an)g(exit)h(status)630 5230 y(whic)m(h)c(is)h(not)g
6e51e0d0 8853(zero.)67 b(The)38 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)g
e59452c7
CR
8854(the)g(last)g(command)630 5340 y(executed)31 b(in)f Fr(consequen)m
8855(t-commands)p Fu(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)p
8856eop end
8857%%Page: 12 18
8858TeXDict begin 12 17 bop 150 -116 a Fu(Chapter)30 b(3:)41
8859b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(12)150 299
8860y Ft(while)240 b Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(while)e
8861Fu(command)h(is:)870 436 y Ft(while)46 b Fj(test-commands)p
8862Ft(;)e(do)j Fj(consequent-commands)p Ft(;)c(done)630
8863573 y Fu(Execute)f Fr(consequen)m(t-commands)k Fu(as)41
8864b(long)h(as)f Fr(test-commands)46 b Fu(has)41 b(an)g(exit)h(status)630
8865683 y(of)34 b(zero.)53 b(The)34 b(return)f(status)h(is)h(the)f(exit)h
8866(status)g(of)f(the)g(last)h(command)f(executed)h(in)630
8867792 y Fr(consequen)m(t-commands)p Fu(,)c(or)g(zero)g(if)f(none)g(w)m
8868(as)h(executed.)150 957 y Ft(for)336 b Fu(The)30 b(syn)m(tax)h(of)f
8869(the)h Ft(for)e Fu(command)i(is:)870 1094 y Ft(for)47
8870b Fj(name)g Ft([)g([in)g([)p Fj(words)f Ft(...)o(])i(])f(;)h(])f(do)g
8871Fj(commands)p Ft(;)e(done)630 1231 y Fu(Expand)30 b Fr(w)m(ords)k
8872Fu(\(see)d(Section)h(3.5)g([Shell)f(Expansions],)g(page)g(24\),)i(and)d
8873(execute)i Fr(com-)630 1341 y(mands)43 b Fu(once)e(for)g(eac)m(h)g(mem)
1a5fa30b 8874m(b)s(er)f(in)g(the)h(resultan)m(t)g(list,)j(with)c Fr(name)46
e59452c7 8875b Fu(b)s(ound)39 b(to)i(the)630 1450 y(curren)m(t)34
1a5fa30b
CR
8876b(mem)m(b)s(er.)53 b(If)35 b(`)p Ft(in)30 b Fj(words)p
8877Fu(')j(is)i(not)g(presen)m(t,)h(the)f Ft(for)e Fu(command)i(executes)h
e59452c7 8878(the)630 1560 y Fr(commands)j Fu(once)e(for)f(eac)m(h)h(p)s(ositional)g
1a5fa30b 8879(parameter)f(that)h(is)f(set,)i(as)e(if)g(`)p Ft(in)30
e59452c7
CR
8880b("$@")p Fu(')36 b(had)630 1670 y(b)s(een)30 b(sp)s(eci\014ed)f(\(see)j
8881(Section)f(3.4.2)h([Sp)s(ecial)f(P)m(arameters],)h(page)f(23\).)630
88821807 y(The)c(return)f(status)h(is)g(the)h(exit)g(status)f(of)g(the)h
1a5fa30b 8883(last)g(command)e(that)i(executes.)41 b(If)27 b(there)630
e59452c7 88841916 y(are)38 b(no)f(items)g(in)g(the)h(expansion)f(of)g
1a5fa30b 8885Fr(w)m(ords)p Fu(,)i(no)e(commands)g(are)g(executed,)j(and)d(the)630
e59452c7
CR
88862026 y(return)29 b(status)i(is)f(zero.)630 2163 y(An)g(alternate)i
8887(form)e(of)h(the)f Ft(for)g Fu(command)g(is)g(also)h(supp)s(orted:)870
88882300 y Ft(for)47 b(\(\()g Fj(expr1)f Ft(;)i Fj(expr2)e
1a5fa30b 8889Ft(;)i Fj(expr3)e Ft(\)\))h(;)h(do)f Fj(commands)e Ft(;)j(done)630
e59452c7 88902437 y Fu(First,)38 b(the)f(arithmetic)h(expression)e
1a5fa30b 8891Fr(expr1)43 b Fu(is)36 b(ev)-5 b(aluated)38 b(according)f(to)g(the)g
e2520247
CR
8892(rules)f(de-)630 2547 y(scrib)s(ed)h(b)s(elo)m(w)i(\(see)g(Section)g
8893(6.5)h([Shell)e(Arithmetic],)k(page)d(100\).)67 b(The)38
e59452c7 8894b(arithmetic)630 2656 y(expression)33 b Fr(expr2)41 b
1a5fa30b 8895Fu(is)34 b(then)f(ev)-5 b(aluated)35 b(rep)s(eatedly)f(un)m(til)g(it)g
e59452c7 8896(ev)-5 b(aluates)35 b(to)g(zero.)51 b(Eac)m(h)630 2766
1a5fa30b
CR
8897y(time)23 b Fr(expr2)30 b Fu(ev)-5 b(aluates)25 b(to)e(a)g(non-zero)h
8898(v)-5 b(alue,)25 b Fr(commands)h Fu(are)d(executed)g(and)g(the)g
e59452c7 8899(arith-)630 2876 y(metic)29 b(expression)f Fr(expr3)36
1a5fa30b 8900b Fu(is)28 b(ev)-5 b(aluated.)41 b(If)28 b(an)m(y)h(expression)f(is)g
e59452c7 8901(omitted,)i(it)f(b)s(eha)m(v)m(es)g(as)630 2985 y(if)i(it)h(ev)-5
37c41ab1
CR
8902b(aluates)32 b(to)g(1.)44 b(The)30 b(return)g(v)-5 b(alue)32
8903b(is)f(the)g(exit)h(status)g(of)f(the)g(last)h(command)f(in)630
e59452c7 89043095 y Fr(commands)j Fu(that)d(is)f(executed,)i(or)e(false)h(if)f(an)m
9ec5ed66 8905(y)h(of)g(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275
e59452c7 89063262 y(The)26 b Ft(break)g Fu(and)h Ft(continue)e Fu(builtins)i(\(see)h
e2520247 8907(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i(page)f(49\))g(ma)m(y)
e59452c7
CR
8908150 3372 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150
89093576 y Fk(3.2.5.2)63 b(Conditional)42 b(Constructs)150
89103751 y Ft(if)384 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
8911Ft(if)f Fu(command)g(is:)870 3888 y Ft(if)47 b Fj(test-commands)p
8912Ft(;)d(then)965 3997 y Fj(consequent-commands)p Ft(;)870
89134107 y([elif)i Fj(more-test-commands)p Ft(;)d(then)965
89144217 y Fj(more-consequents)p Ft(;])870 4326 y([else)j
8915Fj(alternate-consequents)p Ft(;])870 4436 y(fi)630 4573
1a5fa30b 8916y Fu(The)53 b Fr(test-commands)58 b Fu(list)c(is)g(executed,)60
74d0116b 8917b(and)53 b(if)g(its)h(return)e(status)i(is)f(zero,)61
e59452c7 8918b(the)630 4682 y Fr(consequen)m(t-commands)44 b Fu(list)d(is)f
6e51e0d0 8919(executed.)70 b(If)40 b Fr(test-commands)k Fu(returns)39
e59452c7 8920b(a)h(non-zero)630 4792 y(status,)45 b(eac)m(h)e Ft(elif)d
6e51e0d0 8921Fu(list)i(is)g(executed)h(in)e(turn,)j(and)d(if)g(its)h(exit)h(status)f
e59452c7 8922(is)f(zero,)46 b(the)630 4902 y(corresp)s(onding)37 b
6e51e0d0 8923Fr(more-consequen)m(ts)42 b Fu(is)c(executed)g(and)f(the)h(command)g
e59452c7 8924(completes.)63 b(If)630 5011 y(`)p Ft(else)29 b Fj
6e51e0d0 8925(alternate-consequents)p Fu(')c(is)30 b(presen)m(t,)h(and)f(the)g
e59452c7 8926(\014nal)g(command)g(in)g(the)g(\014nal)630 5121 y Ft(if)44
6e51e0d0 8927b Fu(or)g Ft(elif)f Fu(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
e59452c7 8928(then)c Fr(alternate-consequen)m(ts)51 b Fu(is)630 5230
ed35cb4a 8929y(executed.)k(The)34 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)
e59452c7
CR
8930g(the)g(last)g(command)g(executed,)630 5340 y(or)30 b(zero)i(if)e(no)g
8931(condition)h(tested)g(true.)p eop end
8932%%Page: 13 19
8933TeXDict begin 13 18 bop 150 -116 a Fu(Chapter)30 b(3:)41
8934b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)150 299
8935y Ft(case)288 b Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(case)e
8936Fu(command)h(is:)870 425 y Ft(case)47 b Fj(word)f Ft(in)1061
8937535 y([)h([\(])g Fj(pattern)f Ft([|)h Fj(pattern)p Ft(]...)m(\))h
8938Fj(command-list)c Ft(;;]...)870 645 y(esac)630 771 y(case)20
8939b Fu(will)i(selectiv)m(ely)j(execute)e(the)e Fr(command-list)k
8940Fu(corresp)s(onding)20 b(to)i(the)g(\014rst)f Fr(pattern)630
8941881 y Fu(that)h(matc)m(hes)h Fr(w)m(ord)p Fu(.)38 b(The)21
8942b(matc)m(h)h(is)g(p)s(erformed)e(according)j(to)f(the)g(rules)g
8943(describ)s(ed)e(b)s(e-)630 990 y(lo)m(w)25 b(in)e(Section)i(3.5.8.1)h
e2520247 8944([P)m(attern)f(Matc)m(hing],)i(page)e(37.)39 b(If)23
e59452c7
CR
8945b(the)h Ft(nocasematch)d Fu(shell)j(op-)630 1100 y(tion)j(\(see)g(the)f
8946(description)g(of)g Ft(shopt)f Fu(in)g(Section)i(4.3.2)h([The)e(Shopt)f
e2520247 8947(Builtin],)j(page)f(72\))630 1209 y(is)40 b(enabled,)i(the)e(matc)m(h)h
e59452c7
CR
8948(is)e(p)s(erformed)g(without)g(regard)h(to)h(the)f(case)g(of)g(alphab)s
8949(etic)630 1319 y(c)m(haracters.)48 b(The)32 b(`)p Ft(|)p
8950Fu(')g(is)h(used)e(to)i(separate)h(m)m(ultiple)f(patterns,)g(and)f(the)
8951g(`)p Ft(\))p Fu(')h(op)s(erator)630 1428 y(terminates)f(a)f(pattern)g
8952(list.)43 b(A)31 b(list)g(of)g(patterns)g(and)f(an)h(asso)s(ciated)h
8953(command-list)g(is)630 1538 y(kno)m(wn)e(as)g(a)h Fr(clause)p
8954Fu(.)630 1665 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g(terminated)h
6e51e0d0
CR
8955(with)e(`)p Ft(;;)p Fu(',)45 b(`)p Ft(;&)p Fu(',)f(or)d(`)p
8956Ft(;;&)p Fu('.)73 b(The)41 b Fr(w)m(ord)j Fu(under-)630
e59452c7
CR
89571774 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g(expansion,)g
8958(command)f(substitution,)h(arithmetic)630 1884 y(expansion,)g(and)f
8959(quote)g(remo)m(v)-5 b(al)36 b(\(see)f(Section)g(3.5.3)h([Shell)e(P)m
8960(arameter)h(Expansion],)630 1993 y(page)i(26\))g(b)s(efore)e(matc)m
8961(hing)i(is)f(attempted.)59 b(Eac)m(h)36 b Fr(pattern)g
8962Fu(undergo)s(es)f(tilde)i(expan-)630 2103 y(sion,)e(parameter)g
8963(expansion,)g(command)f(substitution,)h(arithmetic)h(expansion,)f(pro-)
8964630 2212 y(cess)c(substitution,)f(and)g(quote)h(remo)m(v)-5
8965b(al.)630 2339 y(There)30 b(ma)m(y)g(b)s(e)f(an)h(arbitrary)g(n)m(um)m
8966(b)s(er)f(of)h Ft(case)f Fu(clauses,)i(eac)m(h)g(terminated)g(b)m(y)e
8967(a)i(`)p Ft(;;)p Fu(',)630 2449 y(`)p Ft(;&)p Fu(',)c(or)e(`)p
8968Ft(;;&)p Fu('.)39 b(The)25 b(\014rst)g(pattern)h(that)g(matc)m(hes)h
8969(determines)e(the)h(command-list)g(that)630 2558 y(is)35
8970b(executed.)55 b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p
8971Ft(*)p Fu(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
89722668 y(default)d(case,)g(since)g(that)g(pattern)f(will)h(alw)m(a)m(ys)h
8973(matc)m(h.)630 2794 y(Here)j(is)g(an)g(example)h(using)e
d37a4722 8974Ft(case)g Fu(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
e59452c7
CR
8975(describ)s(e)g(one)630 2904 y(in)m(teresting)d(feature)f(of)f(an)g
8976(animal:)870 3030 y Ft(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
8977(animal:)f(")870 3140 y(read)h(ANIMAL)870 3249 y(echo)g(-n)g("The)f
8978($ANIMAL)g(has)h(")870 3359 y(case)g($ANIMAL)e(in)965
89793469 y(horse)i(|)g(dog)g(|)h(cat\))e(echo)h(-n)g("four";;)965
89803578 y(man)g(|)h(kangaroo)d(\))j(echo)e(-n)i("two";;)965
89813688 y(*\))g(echo)e(-n)h("an)g(unknown)f(number)g(of";;)870
89823797 y(esac)870 3907 y(echo)h(")g(legs.")630 4050 y Fu(If)40
e230f997 8983b(the)i(`)p Ft(;;)p Fu(')e(op)s(erator)i(is)f(used,)i(no)e(subsequen)m
e59452c7 8984(t)f(matc)m(hes)i(are)f(attempted)h(after)g(the)630 4160
e230f997
CR
8985y(\014rst)c(pattern)h(matc)m(h.)67 b(Using)39 b(`)p Ft(;&)p
8986Fu(')g(in)f(place)i(of)f(`)p Ft(;;)p Fu(')g(causes)g(execution)h(to)g
e59452c7 8987(con)m(tin)m(ue)630 4269 y(with)34 b(the)g Fr(command-list)j
e230f997 8988Fu(asso)s(ciated)f(with)e(the)h(next)f(clause,)i(if)f(an)m(y)-8
e59452c7 8989b(.)53 b(Using)34 b(`)p Ft(;;&)p Fu(')g(in)630 4379 y(place)c(of)f(`)p
e230f997
CR
8990Ft(;;)p Fu(')g(causes)h(the)f(shell)h(to)g(test)g(the)f(patterns)g(in)g
8991(the)g(next)h(clause,)g(if)f(an)m(y)-8 b(,)31 b(and)630
e59452c7 89924489 y(execute)26 b(an)m(y)f(asso)s(ciated)h Fr(command-list)h
e230f997 8993Fu(on)e(a)f(successful)h(matc)m(h,)i(con)m(tin)m(uing)e(the)g(case)630
e59452c7
CR
89944598 y(statemen)m(t)32 b(execution)g(as)e(if)h(the)f(pattern)h(list)g
8995(had)f(not)g(matc)m(hed.)630 4725 y(The)c(return)f(status)h(is)g(zero)h
e230f997 8996(if)f(no)g Fr(pattern)g Fu(is)g(matc)m(hed.)40 b(Otherwise,)27
e59452c7
CR
8997b(the)g(return)e(status)630 4834 y(is)30 b(the)h(exit)g(status)g(of)f
8998(the)h Fr(command-list)i Fu(executed.)150 4977 y Ft(select)630
89995104 y Fu(The)g Ft(select)f Fu(construct)i(allo)m(ws)h(the)f(easy)g
1a5fa30b 9000(generation)h(of)e(men)m(us.)50 b(It)34 b(has)f(almost)i(the)630
e59452c7
CR
90015214 y(same)c(syn)m(tax)g(as)f(the)h Ft(for)e Fu(command:)870
90025340 y Ft(select)46 b Fj(name)h Ft([in)g Fj(words)f Ft(...)o(];)h(do)h
9003Fj(commands)p Ft(;)d(done)p eop end
d37a4722
CR
9004%%Page: 14 20
9005TeXDict begin 14 19 bop 150 -116 a Fu(Chapter)30 b(3:)41
9006b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(14)630 299
9c317a6a
CR
9007y(The)32 b(list)i(of)f(w)m(ords)f(follo)m(wing)j Ft(in)d
9008Fu(is)h(expanded,)g(generating)h(a)f(list)h(of)f(items,)h(and)f(the)630
9009408 y(set)41 b(of)f(expanded)f(w)m(ords)g(is)i(prin)m(ted)e(on)h(the)g
9010(standard)f(error)h(output)g(stream,)j(eac)m(h)630 518
9011y(preceded)31 b(b)m(y)g(a)g(n)m(um)m(b)s(er.)42 b(If)31
9012b(the)g(`)p Ft(in)f Fj(words)p Fu(')g(is)i(omitted,)g(the)g(p)s
9013(ositional)g(parameters)630 628 y(are)k(prin)m(ted,)h(as)e(if)h(`)p
9014Ft(in)30 b("$@")p Fu(')k(had)h(b)s(een)g(sp)s(eci\014ed.)56
9015b Ft(select)33 b Fu(then)j(displa)m(ys)f(the)h Ft(PS3)630
9016737 y Fu(prompt)42 b(and)h(reads)f(a)i(line)f(from)g(the)g(standard)f
9017(input.)78 b(If)42 b(the)i(line)f(consists)g(of)h(a)630
9018847 y(n)m(um)m(b)s(er)34 b(corresp)s(onding)h(to)h(one)g(of)g(the)g
9019(displa)m(y)m(ed)g(w)m(ords,)h(then)e(the)h(v)-5 b(alue)36
9020b(of)g Fr(name)630 956 y Fu(is)f(set)g(to)h(that)f(w)m(ord.)54
9021b(If)34 b(the)h(line)g(is)g(empt)m(y)-8 b(,)37 b(the)e(w)m(ords)f(and)g
9022(prompt)g(are)h(displa)m(y)m(ed)630 1066 y(again.)40
9023b(If)26 b Ft(EOF)f Fu(is)g(read,)i(the)f Ft(select)f
9024Fu(command)g(completes)i(and)f(returns)e(1.)40 b(An)m(y)26
9025b(other)630 1176 y(v)-5 b(alue)30 b(read)f(causes)h Fr(name)k
9026Fu(to)c(b)s(e)f(set)g(to)h(n)m(ull.)41 b(The)28 b(line)i(read)f(is)g
9027(sa)m(v)m(ed)i(in)e(the)g(v)-5 b(ariable)630 1285 y Ft(REPLY)p
9028Fu(.)630 1420 y(The)42 b Fr(commands)j Fu(are)d(executed)h(after)g(eac)
9029m(h)g(selection)h(un)m(til)e(a)h Ft(break)d Fu(command)i(is)630
90301530 y(executed,)32 b(at)f(whic)m(h)f(p)s(oin)m(t)g(the)h
9031Ft(select)d Fu(command)i(completes.)630 1665 y(Here)39
e59452c7 9032b(is)g(an)g(example)h(that)f(allo)m(ws)i(the)e(user)f(to)i(pic)m(k)f(a)
9c317a6a 9033g(\014lename)h(from)e(the)h(curren)m(t)630 1774 y(directory)-8
e59452c7 9034b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f(index)f(of)i(the)g
9c317a6a
CR
9035(\014le)f(selected.)870 1909 y Ft(select)46 b(fname)g(in)i(*;)870
90362019 y(do)870 2128 y(echo)f(you)g(picked)f($fname)g(\\\($REPLY\\\))870
90372238 y(break;)870 2347 y(done)150 2508 y(\(\(...)o(\)\))870
90382642 y(\(\()h Fj(expression)e Ft(\)\))630 2777 y Fu(The)33
e59452c7
CR
9039b(arithmetic)i Fr(expression)f Fu(is)f(ev)-5 b(aluated)35
9040b(according)g(to)f(the)g(rules)f(describ)s(ed)g(b)s(elo)m(w)630
e2520247
CR
90412887 y(\(see)38 b(Section)g(6.5)h([Shell)e(Arithmetic],)j(page)f
9042(100\).)63 b(The)36 b Fr(expression)h Fu(undergo)s(es)g(the)630
90432996 y(same)26 b(expansions)f(as)g(if)g(it)h(w)m(ere)g(within)e(double)
9044h(quotes,)i(but)e(double)g(quote)g(c)m(haracters)630
90453106 y(in)20 b Fr(expression)h Fu(are)g(not)g(treated)h(sp)s(ecially)f
9046(are)g(remo)m(v)m(ed.)39 b(If)20 b(the)h(v)-5 b(alue)21
9047b(of)g(the)g(expression)630 3216 y(is)30 b(non-zero,)i(the)e(return)f
9048(status)i(is)g(0;)g(otherwise)f(the)h(return)e(status)i(is)f(1.)150
9c317a6a
CR
90493376 y Ft([[...)o(]])870 3511 y([[)47 b Fj(expression)e
9050Ft(]])630 3646 y Fu(Return)25 b(a)h(status)f(of)h(0)g(or)g(1)g(dep)s
e59452c7 9051(ending)e(on)h(the)h(ev)-5 b(aluation)27 b(of)e(the)h(conditional)h
9c317a6a 9052(expres-)630 3755 y(sion)j Fr(expression)p Fu(.)41 b(Expressions)29
e59452c7 9053b(are)i(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s(elo)m
9c317a6a 9054(w)h(in)630 3865 y(Section)37 b(6.4)g([Bash)f(Conditional)h
e2520247 9055(Expressions],)g(page)g(98.)58 b(The)36 b(w)m(ords)f(b)s(et)m(w)m(een)i
9c317a6a 9056(the)630 3974 y Ft([[)h Fu(and)g Ft(]])g Fu(do)g(not)h(undergo)f(w)m
e59452c7 9057(ord)g(splitting)h(and)f(\014lename)h(expansion.)65 b(The)38
9c317a6a 9058b(shell)630 4084 y(p)s(erforms)26 b(tilde)j(expansion,)f(parameter)g
e59452c7 9059(and)g(v)-5 b(ariable)28 b(expansion,)h(arithmetic)g(expan-)630
9c317a6a
CR
90604194 y(sion,)j(command)g(substitution,)g(pro)s(cess)g(substitution,)g
9061(and)f(quote)i(remo)m(v)-5 b(al)33 b(on)e(those)630 4303
e59452c7
CR
9062y(w)m(ords)k(\(the)h(expansions)g(that)g(w)m(ould)f(o)s(ccur)h(if)g
9063(the)f(w)m(ords)h(w)m(ere)g(enclosed)g(in)f(double)630
9c317a6a 90644413 y(quotes\).)41 b(Conditional)28 b(op)s(erators)g(suc)m(h)f(as)i(`)
e59452c7 9065p Ft(-f)p Fu(')e(m)m(ust)h(b)s(e)f(unquoted)g(to)h(b)s(e)g(recognized)
9c317a6a 9066630 4522 y(as)j(primaries.)630 4657 y(When)k(used)f(with)h
e59452c7
CR
9067Ft([[)p Fu(,)h(the)f(`)p Ft(<)p Fu(')g(and)g(`)p Ft(>)p
9068Fu(')g(op)s(erators)g(sort)g(lexicographically)j(using)d(the)630
9c317a6a 90694767 y(curren)m(t)30 b(lo)s(cale.)630 4902 y(When)22
e59452c7
CR
9070b(the)h(`)p Ft(==)p Fu(')f(and)g(`)p Ft(!=)p Fu(')g(op)s(erators)h(are)
9071g(used,)g(the)g(string)f(to)i(the)e(righ)m(t)h(of)g(the)g(op)s(erator)
9c317a6a 9072630 5011 y(is)31 b(considered)g(a)h(pattern)f(and)g(matc)m(hed)h
e59452c7 9073(according)g(to)g(the)g(rules)f(describ)s(ed)f(b)s(elo)m(w)h(in)630
e2520247 90745121 y(Section)d(3.5.8.1)h([P)m(attern)f(Matc)m(hing],)h(page)f(37,)g
e59452c7 9075(as)f(if)g(the)g Ft(extglob)d Fu(shell)j(option)g(w)m(ere)630
9c317a6a 90765230 y(enabled.)46 b(The)31 b(`)p Ft(=)p Fu(')h(op)s(erator)h(is)f
e59452c7 9077(iden)m(tical)h(to)g(`)p Ft(==)p Fu('.)46 b(If)31 b(the)h
9c317a6a 9078Ft(nocasematch)d Fu(shell)j(option)630 5340 y(\(see)42
e59452c7 9079b(the)f(description)g(of)h Ft(shopt)d Fu(in)i(Section)h(4.3.2)h([The)e
e2520247 9080(Shopt)f(Builtin],)45 b(page)d(72\))p eop end
fc35c477
CR
9081%%Page: 15 21
9082TeXDict begin 15 20 bop 150 -116 a Fu(Chapter)30 b(3:)41
9083b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)630 299
9c317a6a
CR
9084y(is)40 b(enabled,)i(the)e(matc)m(h)h(is)e(p)s(erformed)g(without)g
9085(regard)h(to)h(the)f(case)g(of)g(alphab)s(etic)630 408
9086y(c)m(haracters.)h(The)28 b(return)e(v)-5 b(alue)28 b(is)g(0)g(if)g
9087(the)g(string)g(matc)m(hes)h(\(`)p Ft(==)p Fu('\))f(or)g(do)s(es)f(not)
9088h(matc)m(h)630 518 y(\(`)p Ft(!=)p Fu('\))j(the)g(pattern,)f(and)g(1)h
9089(otherwise.)630 645 y(If)20 b(y)m(ou)h(quote)g(an)m(y)f(part)h(of)f
9090(the)h(pattern,)h(using)e(an)m(y)h(of)f(the)h(shell's)g(quoting)g(mec)m
9091(hanisms,)630 754 y(the)43 b(quoted)g(p)s(ortion)g(is)g(matc)m(hed)h
9092(literally)-8 b(.)81 b(This)42 b(means)h(ev)m(ery)h(c)m(haracter)h(in)e
9093(the)630 864 y(quoted)34 b(p)s(ortion)f(matc)m(hes)i(itself,)h(instead)
9094e(of)f(ha)m(ving)i(an)m(y)f(sp)s(ecial)g(pattern)g(matc)m(hing)630
9095973 y(meaning.)630 1100 y(An)f(additional)i(binary)e(op)s(erator,)i(`)p
e59452c7 9096Ft(=~)p Fu(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g
9c317a6a 9097(precedence)h(as)630 1209 y(`)p Ft(==)p Fu(')40 b(and)g(`)p
e59452c7
CR
9098Ft(!=)p Fu('.)70 b(When)40 b(y)m(ou)g(use)g(`)p Ft(=~)p
9099Fu(',)j(the)d(string)h(to)f(the)h(righ)m(t)g(of)f(the)g(op)s(erator)h
9c317a6a 9100(is)630 1319 y(considered)36 b(a)g Fm(posix)f Fu(extended)g(regular)h
e59452c7 9101(expression)g(pattern)f(and)g(matc)m(hed)i(accord-)630
9c317a6a 91021428 y(ingly)k(\(using)f(the)h Fm(posix)f Ft(regcomp)f
e59452c7 9103Fu(and)h Ft(regexec)e Fu(in)m(terfaces)k(usually)f(describ)s(ed)e(in)
9c317a6a 9104630 1538 y Fl(r)-5 b(e)g(gex)11 b Fu(\(3\)\).)56 b(The)34
e59452c7 9105b(return)g(v)-5 b(alue)35 b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h
9c317a6a 9106(the)f(pattern,)h(and)e(1)i(if)e(it)630 1648 y(do)s(es)39
e59452c7 9107b(not.)66 b(If)38 b(the)h(regular)g(expression)g(is)g(syn)m(tactically)
9c317a6a 9108i(incorrect,)i(the)c(conditional)630 1757 y(expression)e(returns)e(2.)
e59452c7 910961 b(If)37 b(the)g Ft(nocasematch)d Fu(shell)j(option)h(\(see)g(the)f
9c317a6a 9110(description)g(of)630 1867 y Ft(shopt)d Fu(in)h(Section)h(4.3.2)h([The)
e2520247 9111e(Shopt)f(Builtin],)k(page)e(72\))g(is)g(enabled,)g(the)g(matc)m(h)g
9c317a6a
CR
9112(is)630 1976 y(p)s(erformed)29 b(without)h(regard)h(to)g(the)f(case)i
9113(of)e(alphab)s(etic)h(c)m(haracters.)630 2103 y(Y)-8
e59452c7
CR
9114b(ou)23 b(can)g(quote)g(an)m(y)g(part)g(of)g(the)g(pattern)f(to)i
9115(force)f(the)g(quoted)g(p)s(ortion)f(to)h(b)s(e)f(matc)m(hed)630
9c317a6a 91162212 y(literally)33 b(instead)f(of)g(as)f(a)h(regular)g(expression)f
e59452c7 9117(\(see)h(ab)s(o)m(v)m(e\).)46 b(If)31 b(the)h(pattern)f(is)h(stored)630
9c317a6a 91182322 y(in)h(a)i(shell)f(v)-5 b(ariable,)35 b(quoting)f(the)g(v)-5
e59452c7 9119b(ariable)35 b(expansion)e(forces)i(the)f(en)m(tire)g(pattern)g(to)630
9c317a6a 91202432 y(b)s(e)c(matc)m(hed)h(literally)-8 b(.)630 2558
e59452c7
CR
9121y(The)25 b(pattern)h(will)g(matc)m(h)h(if)e(it)i(matc)m(hes)f(an)m(y)h
9122(part)e(of)h(the)g(string.)39 b(If)25 b(y)m(ou)h(w)m(an)m(t)h(to)f
9c317a6a 9123(force)630 2668 y(the)j(pattern)h(to)g(matc)m(h)g(the)f(en)m(tire)h
e59452c7 9124(string,)g(anc)m(hor)g(the)f(pattern)h(using)e(the)i(`)p
9c317a6a
CR
9125Ft(^)p Fu(')f(and)g(`)p Ft($)p Fu(')630 2777 y(regular)i(expression)f
9126(op)s(erators.)630 2904 y(F)-8 b(or)31 b(example,)g(the)f(follo)m(wing)
e59452c7 9127h(will)f(matc)m(h)h(a)g(line)f(\(stored)g(in)g(the)g(shell)g(v)-5
9c317a6a 9128b(ariable)31 b Ft(line)p Fu(\))630 3013 y(if)42 b(there)h(is)g(a)f
e59452c7 9129(sequence)h(of)g(c)m(haracters)h(an)m(ywhere)e(in)g(the)h(v)-5
9c317a6a 9130b(alue)43 b(consisting)g(of)g(an)m(y)630 3123 y(n)m(um)m(b)s(er,)26
e59452c7
CR
9131b(including)g(zero,)i(of)f(c)m(haracters)g(in)f(the)h
9132Ft(space)e Fu(c)m(haracter)j(class,)g(immediately)630
9c317a6a
CR
91333232 y(follo)m(w)m(ed)k(b)m(y)e(zero)h(or)g(one)f(instances)h(of)g(`)p
9134Ft(a)p Fu(',)g(then)f(a)h(`)p Ft(b)p Fu(':)870 3359 y
e59452c7 9135Ft([[)47 b($line)g(=~)g([[:space:]]*\(a\)?b)c(]])630
9c317a6a 91363485 y Fu(That)f(means)g(v)-5 b(alues)42 b(for)g Ft(line)f
e59452c7
CR
9137Fu(lik)m(e)i(`)p Ft(aab)p Fu(',)i(`)31 b Ft(aaaaaab)p
9138Fu(',)43 b(`)p Ft(xaby)p Fu(',)i(and)c(`)31 b Ft(ab)p
9c317a6a 9139Fu(')42 b(will)g(all)630 3595 y(matc)m(h,)32 b(as)e(will)h(a)g(line)f
e59452c7 9140(con)m(taining)i(a)f(`)p Ft(b)p Fu(')g(an)m(ywhere)f(in)g(its)h(v)-5
9c317a6a 9141b(alue.)630 3721 y(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(a)e(c)
e59452c7 9142m(haracter)j(that's)e(sp)s(ecial)g(to)g(the)g(regular)f(expression)g
9c317a6a 9143(gram-)630 3831 y(mar)g(\(`)p Ft(^$|[]\(\)\\.*+?)p Fu('\),)e(it)j(has)f
e59452c7 9144(to)h(b)s(e)e(quoted)h(to)h(remo)m(v)m(e)g(its)g(sp)s(ecial)g(meaning.)
9c317a6a 914540 b(This)630 3941 y(means)24 b(that)h(in)f(the)h(pattern)f(`)p
e59452c7 9146Ft(xxx.txt)p Fu(',)g(the)h(`)p Ft(.)p Fu(')f(matc)m(hes)i(an)m(y)f(c)m
9c317a6a 9147(haracter)g(in)f(the)h(string)630 4050 y(\(its)34 b(usual)f(regular)g
e59452c7 9148(expression)g(meaning\),)i(but)e(in)g(the)g(pattern)h(`)p
9c317a6a
CR
9149Ft("xxx.txt")p Fu(',)e(it)i(can)630 4160 y(only)c(matc)m(h)i(a)f
9150(literal)g(`)p Ft(.)p Fu('.)630 4286 y(Lik)m(ewise,)i(if)f(y)m(ou)g(w)m
e59452c7 9151(an)m(t)g(to)h(include)e(a)h(c)m(haracter)h(in)e(y)m(our)h(pattern)g
9c317a6a 9152(that)g(has)f(a)h(sp)s(ecial)630 4396 y(meaning)21 b(to)h(the)g
e59452c7 9153(regular)f(expression)g(grammar,)i(y)m(ou)f(m)m(ust)f(mak)m(e)h(sure)e
9c317a6a 9154(it's)i(not)g(quoted.)630 4505 y(If)44 b(y)m(ou)g(w)m(an)m(t)h(to)g
e59452c7 9155(anc)m(hor)f(a)h(pattern)f(at)h(the)f(b)s(eginning)f(or)h(end)g(of)g
9c317a6a 9156(the)g(string,)k(for)630 4615 y(instance,)e(y)m(ou)d(cannot)g(quote)g
e59452c7 9157(the)f(`)p Ft(^)p Fu(')h(or)f(`)p Ft($)p Fu(')g(c)m(haracters)i(using)e
9c317a6a 9158(an)m(y)g(form)g(of)h(shell)630 4725 y(quoting.)630 4851
e59452c7
CR
9159y(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(`)p Ft(initial)e
9160(string)p Fu(')f(at)i(the)g(start)g(of)g(a)g(line,)g(the)g(follo)m
9c317a6a
CR
9161(wing)h(will)630 4961 y(w)m(ork:)870 5087 y Ft([[)47
9162b($line)g(=~)g(^"initial)e(string")h(]])630 5214 y Fu(but)30
e59452c7
CR
9163b(this)g(will)h(not:)870 5340 y Ft([[)47 b($line)g(=~)g("^initial)e
9164(string")h(]])p eop end
9165%%Page: 16 22
9166TeXDict begin 16 21 bop 150 -116 a Fu(Chapter)30 b(3:)41
9167b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(16)630 299
9168y(b)s(ecause)42 b(in)h(the)f(second)h(example)g(the)g(`)p
9169Ft(^)p Fu(')f(is)h(quoted)g(and)f(do)s(esn't)g(ha)m(v)m(e)i(its)e
9170(usual)630 408 y(sp)s(ecial)31 b(meaning.)630 540 y(It)h(is)f
9171(sometimes)h(di\016cult)g(to)g(sp)s(ecify)f(a)h(regular)g(expression)f
9172(prop)s(erly)f(without)h(using)630 650 y(quotes,)c(or)f(to)g(k)m(eep)h
9173(trac)m(k)g(of)e(the)h(quoting)g(used)f(b)m(y)h(regular)f(expressions)h
9174(while)f(pa)m(ying)630 759 y(atten)m(tion)40 b(to)f(shell)f(quoting)h
9175(and)e(the)h(shell's)h(quote)f(remo)m(v)-5 b(al.)65 b(Storing)38
9176b(the)h(regular)630 869 y(expression)45 b(in)g(a)g(shell)h(v)-5
9177b(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
9178(problems)d(with)630 978 y(quoting)35 b(c)m(haracters)g(that)g(are)g
9179(sp)s(ecial)g(to)g(the)f(shell.)53 b(F)-8 b(or)35 b(example,)h(the)e
9180(follo)m(wing)i(is)630 1088 y(equiv)-5 b(alen)m(t)32
9181b(to)f(the)f(pattern)h(used)f(ab)s(o)m(v)m(e:)870 1219
9182y Ft(pattern='[[:space:]]*\(a\))o(?b')870 1329 y([[)47
9183b($line)g(=~)g($pattern)e(]])630 1461 y Fu(Shell)29 b(programmers)f
9184(should)f(tak)m(e)k(sp)s(ecial)e(care)g(with)g(bac)m(kslashes,)h(since)
9185f(bac)m(kslashes)630 1570 y(are)22 b(used)f(b)m(y)h(b)s(oth)f(the)h
9186(shell)g(and)f(regular)h(expressions)f(to)i(remo)m(v)m(e)g(the)f(sp)s
9187(ecial)h(meaning)630 1680 y(from)j(the)g(follo)m(wing)i(c)m(haracter.)
918841 b(This)25 b(means)h(that)h(after)g(the)f(shell's)g(w)m(ord)g
9189(expansions)630 1789 y(complete)i(\(see)f(Section)g(3.5)h([Shell)e
9190(Expansions],)h(page)g(24\),)i(an)m(y)d(bac)m(kslashes)i(remain-)630
91911899 y(ing)44 b(in)f(parts)g(of)h(the)g(pattern)f(that)h(w)m(ere)g
9192(originally)h(not)f(quoted)g(can)g(remo)m(v)m(e)h(the)630
91932008 y(sp)s(ecial)29 b(meaning)g(of)g(pattern)f(c)m(haracters.)42
9194b(If)28 b(an)m(y)h(part)g(of)f(the)h(pattern)g(is)f(quoted,)i(the)630
91952118 y(shell)h(do)s(es)f(its)g(b)s(est)g(to)i(ensure)d(that)i(the)g
9196(regular)f(expression)h(treats)g(those)g(remaining)630
91972228 y(bac)m(kslashes)g(as)g(literal,)h(if)e(they)h(app)s(eared)f(in)g
9198(a)g(quoted)h(p)s(ortion.)630 2359 y(The)f(follo)m(wing)i(t)m(w)m(o)f
9199(sets)g(of)g(commands)f(are)h Fl(not)39 b Fu(equiv)-5
9200b(alen)m(t:)870 2491 y Ft(pattern='\\.')870 2710 y([[)47
9201b(.)h(=~)f($pattern)e(]])870 2819 y([[)i(.)h(=~)f(\\.)g(]])870
92023039 y([[)g(.)h(=~)f("$pattern")e(]])870 3148 y([[)i(.)h(=~)f('\\.')f
9203(]])630 3280 y Fu(The)28 b(\014rst)h(t)m(w)m(o)h(matc)m(hes)g(will)f
9204(succeed,)h(but)f(the)g(second)g(t)m(w)m(o)h(will)f(not,)h(b)s(ecause)f
9205(in)g(the)630 3389 y(second)e(t)m(w)m(o)i(the)e(bac)m(kslash)h(will)f
9206(b)s(e)g(part)g(of)g(the)g(pattern)g(to)h(b)s(e)f(matc)m(hed.)40
9207b(In)26 b(the)i(\014rst)630 3499 y(t)m(w)m(o)33 b(examples,)f(the)g
9208(pattern)f(passed)g(to)h(the)g(regular)f(expression)h(parser)e(is)i(`)p
9209Ft(\\.)p Fu('.)43 b(The)630 3608 y(bac)m(kslash)35 b(remo)m(v)m(es)g
9210(the)g(sp)s(ecial)f(meaning)h(from)e(`)p Ft(.)p Fu(',)j(so)e(the)h
9211(literal)g(`)p Ft(.)p Fu(')g(matc)m(hes.)53 b(In)630
92123718 y(the)35 b(second)h(t)m(w)m(o)g(examples,)h(the)f(pattern)f
9213(passed)g(to)h(the)f(regular)h(expression)f(parser)630
92143828 y(has)26 b(the)g(bac)m(kslash)g(quoted)g(\(e.g.,)j(`)p
9215Ft(\\\\\\.)p Fu('\),)e(whic)m(h)e(will)h(not)g(matc)m(h)h(the)f
9216(string,)h(since)f(it)630 3937 y(do)s(es)31 b(not)g(con)m(tain)h(a)g
9217(bac)m(kslash.)43 b(If)31 b(the)g(string)g(in)g(the)g(\014rst)f
9218(examples)i(w)m(ere)g(an)m(ything)630 4047 y(other)f(than)f(`)p
9219Ft(.)p Fu(',)h(sa)m(y)g(`)p Ft(a)p Fu(',)g(the)f(pattern)h(w)m(ould)f
9220(not)h(matc)m(h,)g(b)s(ecause)g(the)f(quoted)h(`)p Ft(.)p
9221Fu(')f(in)630 4156 y(the)h(pattern)f(loses)h(its)g(sp)s(ecial)g
9222(meaning)g(of)f(matc)m(hing)i(an)m(y)e(single)h(c)m(haracter.)630
92234288 y(Brac)m(k)m(et)d(expressions)d(in)g(regular)h(expressions)f(can)h
9224(b)s(e)e(sources)i(of)f(errors)g(as)h(w)m(ell,)i(since)630
92254398 y(c)m(haracters)43 b(that)f(are)g(normally)g(sp)s(ecial)g(in)f
9226(regular)h(expressions)f(lose)i(their)e(sp)s(ecial)630
92274507 y(meanings)24 b(b)s(et)m(w)m(een)g(brac)m(k)m(ets.)40
9228b(Ho)m(w)m(ev)m(er,)27 b(y)m(ou)e(can)f(use)f(brac)m(k)m(et)i
9229(expressions)f(to)g(matc)m(h)630 4617 y(sp)s(ecial)31
9230b(pattern)g(c)m(haracters)h(without)f(quoting)g(them,)f(so)h(they)g
9231(are)g(sometimes)h(useful)630 4726 y(for)e(this)g(purp)s(ose.)630
92324858 y(Though)f(it)i(migh)m(t)g(seem)f(lik)m(e)i(a)e(strange)h(w)m(a)m
9233(y)g(to)g(write)f(it,)h(the)g(follo)m(wing)g(pattern)g(will)630
92344967 y(matc)m(h)g(a)g(`)p Ft(.)p Fu(')g(in)f(the)g(string:)870
92355099 y Ft([[)47 b(.)h(=~)f([.])g(]])630 5230 y Fu(The)30
9236b(shell)g(p)s(erforms)f(an)m(y)i(w)m(ord)f(expansions)g(b)s(efore)g
9237(passing)g(the)g(pattern)h(to)g(the)f(reg-)630 5340 y(ular)44
9238b(expression)g(functions,)k(so)d(y)m(ou)f(can)h(assume)f(that)h(the)g
9239(shell's)g(quoting)f(tak)m(es)p eop end
9240%%Page: 17 23
9241TeXDict begin 17 22 bop 150 -116 a Fu(Chapter)30 b(3:)41
9242b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)630 299
9243y(precedence.)63 b(As)37 b(noted)h(ab)s(o)m(v)m(e,)j(the)d(regular)f
9244(expression)h(parser)f(will)h(in)m(terpret)g(an)m(y)630
9245408 y(unquoted)30 b(bac)m(kslashes)h(remaining)g(in)g(the)g(pattern)f
9246(after)i(shell)e(expansion)h(according)630 518 y(to)40
9247b(its)g(o)m(wn)f(rules.)68 b(The)39 b(in)m(ten)m(tion)i(is)e(to)h(a)m
9248(v)m(oid)h(making)f(shell)f(programmers)g(quote)630 628
9249y(things)31 b(t)m(wice)h(as)f(m)m(uc)m(h)f(as)h(p)s(ossible,)g(so)g
9250(shell)g(quoting)g(should)f(b)s(e)g(su\016cien)m(t)h(to)g(quote)630
9251737 y(sp)s(ecial)g(pattern)f(c)m(haracters)i(where)e(that's)h
6392d7af 9252(necessary)-8 b(.)630 867 y(The)39 b(arra)m(y)h(v)-5
e59452c7 9253b(ariable)40 b Ft(BASH_REMATCH)c Fu(records)j(whic)m(h)g(parts)g(of)g
6392d7af 9254(the)h(string)f(matc)m(hed)630 977 y(the)34 b(pattern.)51
e59452c7 9255b(The)33 b(elemen)m(t)i(of)f Ft(BASH_REMATCH)d Fu(with)i(index)g(0)h
6392d7af 9256(con)m(tains)h(the)f(p)s(ortion)630 1086 y(of)39 b(the)g(string)g(matc)
e59452c7 9257m(hing)h(the)g(en)m(tire)f(regular)h(expression.)66 b(Substrings)37
6392d7af 9258b(matc)m(hed)j(b)m(y)630 1196 y(paren)m(thesized)k(sub)s(expressions)e
e59452c7 9259(within)i(the)g(regular)g(expression)g(are)g(sa)m(v)m(ed)h(in)f(the)630
6392d7af 92601306 y(remaining)33 b Ft(BASH_REMATCH)c Fu(indices.)49
e59452c7 9261b(The)32 b(elemen)m(t)i(of)f Ft(BASH_REMATCH)d Fu(with)i(index)g
6392d7af 9262Fr(n)630 1415 y Fu(is)e(the)h(p)s(ortion)f(of)g(the)h(string)f(matc)m
e59452c7 9263(hing)i(the)e Fr(n)p Fu(th)g(paren)m(thesized)h(sub)s(expression.)630
6392d7af
CR
92641545 y(Bash)26 b(sets)h Ft(BASH_REMATCH)c Fu(in)j(the)g(global)i(scop)s
9265(e;)f(declaring)g(it)g(as)g(a)f(lo)s(cal)i(v)-5 b(ariable)27
9266b(will)630 1655 y(lead)k(to)g(unexp)s(ected)f(results.)630
92671785 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f(the)h
d37a4722 9268(follo)m(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630
6392d7af
CR
92691895 y(order)30 b(of)g(precedence:)630 2045 y Ft(\()g
9270Fj(expression)e Ft(\))1110 2155 y Fu(Returns)i(the)h(v)-5
e59452c7 9271b(alue)31 b(of)g Fr(expression)p Fu(.)42 b(This)30 b(ma)m(y)i(b)s(e)e
6392d7af
CR
9272(used)g(to)i(o)m(v)m(erride)g(the)1110 2264 y(normal)e(precedence)h(of)
9273g(op)s(erators.)630 2415 y Ft(!)f Fj(expression)1110
92742524 y Fu(T)-8 b(rue)30 b(if)g Fr(expression)g Fu(is)h(false.)630
92752675 y Fj(expression1)c Ft(&&)j Fj(expression2)1110 2784
e59452c7
CR
9276y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expression1)38
9277b Fu(and)29 b Fr(expression2)38 b Fu(are)31 b(true.)630
6392d7af 92782935 y Fj(expression1)c Ft(||)j Fj(expression2)1110 3045
e59452c7 9279y Fu(T)-8 b(rue)30 b(if)g(either)h Fr(expression1)38
6e51e0d0 9280b Fu(or)30 b Fr(expression2)38 b Fu(is)30 b(true.)630
6392d7af 92813195 y(The)24 b Ft(&&)h Fu(and)f Ft(||)g Fu(op)s(erators)h(do)g(not)g
6e51e0d0 9282(ev)-5 b(aluate)27 b Fr(expression2)32 b Fu(if)25 b(the)g(v)-5
6392d7af 9283b(alue)25 b(of)g Fr(expression1)630 3305 y Fu(is)30 b(su\016cien)m(t)h
6e51e0d0 9284(to)g(determine)g(the)f(return)g(v)-5 b(alue)31 b(of)f(the)h(en)m(tire)
6392d7af
CR
9285g(conditional)h(expression.)150 3495 y Fk(3.2.5.3)63
9286b(Grouping)43 b(Commands)150 3642 y Fu(Bash)30 b(pro)m(vides)g(t)m(w)m
d37a4722 9287(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
6392d7af 9288(executed)h(as)g(a)h(unit.)40 b(When)29 b(com-)150 3752
d37a4722
CR
9289y(mands)h(are)i(group)s(ed,)f(redirections)h(ma)m(y)g(b)s(e)e(applied)i
9290(to)g(the)f(en)m(tire)h(command)g(list.)44 b(F)-8 b(or)32
6392d7af 9291b(example,)150 3861 y(the)f(output)f(of)g(all)h(the)g(commands)f(in)g
d37a4722 9292(the)h(list)g(ma)m(y)g(b)s(e)e(redirected)i(to)g(a)g(single)g(stream.)
6392d7af
CR
9293150 4012 y Ft(\(\))870 4142 y(\()47 b Fj(list)g Ft(\))630
92944272 y Fu(Placing)42 b(a)g(list)g(of)f(commands)g(b)s(et)m(w)m(een)h
e59452c7 9295(paren)m(theses)f(forces)h(the)f(shell)h(to)g(create)h(a)630
6392d7af 92964381 y(subshell)33 b(\(see)h(Section)g(3.7.3)i([Command)c(Execution)j
e2520247 9297(En)m(vironmen)m(t],)g(page)f(44\),)i(and)630 4491 y(eac)m(h)g(of)f
e59452c7 9298(the)h(commands)e(in)h Fr(list)i Fu(is)e(executed)h(in)f(that)h
6392d7af 9299(subshell)e(en)m(vironmen)m(t.)55 b(Since)630 4601 y(the)33
e59452c7
CR
9300b Fr(list)j Fu(is)e(executed)g(in)f(a)g(subshell,)h(v)-5
9301b(ariable)34 b(assignmen)m(ts)g(do)f(not)g(remain)g(in)g(e\013ect)630
6392d7af
CR
93024710 y(after)e(the)f(subshell)g(completes.)150 4861 y
9303Ft({})870 4991 y({)47 b Fj(list)p Ft(;)g(})630 5121 y
e59452c7 9304Fu(Placing)30 b(a)g(list)g(of)g(commands)f(b)s(et)m(w)m(een)h(curly)f
037a8b7f 9305(braces)g(causes)h(the)f(list)h(to)g(b)s(e)f(executed)630
e59452c7 93065230 y(in)d(the)h(curren)m(t)g(shell)f(con)m(text.)42
037a8b7f 9307b(No)27 b(subshell)f(is)g(created.)41 b(The)26 b(semicolon)i(\(or)f
e59452c7
CR
9308(newline\))630 5340 y(follo)m(wing)32 b Fr(list)h Fu(is)d(required.)p
9309eop end
9310%%Page: 18 24
9311TeXDict begin 18 23 bop 150 -116 a Fu(Chapter)30 b(3:)41
9312b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(18)275 299
9313y(In)44 b(addition)h(to)h(the)f(creation)i(of)e(a)g(subshell,)j(there)e
9314(is)f(a)g(subtle)g(di\013erence)h(b)s(et)m(w)m(een)f(these)150
9315408 y(t)m(w)m(o)f(constructs)f(due)g(to)g(historical)i(reasons.)78
9316b(The)42 b(braces)i(are)f(reserv)m(ed)g(w)m(ords,)j(so)d(they)g(m)m
9317(ust)150 518 y(b)s(e)36 b(separated)h(from)f(the)g Fr(list)j
9318Fu(b)m(y)e Ft(blank)p Fu(s)e(or)h(other)h(shell)f(metac)m(haracters.)62
9319b(The)36 b(paren)m(theses)h(are)150 628 y(op)s(erators,)29
9320b(and)e(are)i(recognized)g(as)g(separate)g(tok)m(ens)g(b)m(y)f(the)g
9321(shell)g(ev)m(en)h(if)f(they)h(are)f(not)g(separated)150
9322737 y(from)i(the)g Fr(list)j Fu(b)m(y)e(whitespace.)275
9323865 y(The)e(exit)j(status)e(of)h(b)s(oth)f(of)g(these)h(constructs)g
9324(is)f(the)h(exit)g(status)f(of)h Fr(list)p Fu(.)150 1050
9325y Fk(3.2.6)63 b(Copro)s(cesses)150 1197 y Fu(A)37 b Ft(coprocess)c
9326Fu(is)k(a)g(shell)f(command)h(preceded)f(b)m(y)g(the)h
9327Ft(coproc)d Fu(reserv)m(ed)j(w)m(ord.)59 b(A)36 b(copro)s(cess)h(is)150
93281307 y(executed)g(async)m(hronously)g(in)f(a)h(subshell,)g(as)g(if)g
9329(the)f(command)h(had)f(b)s(een)f(terminated)i(with)g(the)150
93301416 y(`)p Ft(&)p Fu(')d(con)m(trol)h(op)s(erator,)g(with)f(a)g(t)m(w)m
d37a4722 9331(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
9332(executing)h(shell)f(and)f(the)150 1526 y(copro)s(cess.)275
93331653 y(The)c(syn)m(tax)i(for)f(a)h(copro)s(cess)g(is:)390
93341781 y Ft(coproc)46 b([)p Fj(NAME)p Ft(])g Fj(command)g
9335Ft([)p Fj(redirections)p Ft(])150 1909 y Fu(This)33 b(creates)i(a)f
9336(copro)s(cess)g(named)f Fr(NAME)p Fu(.)51 b Fr(command)37
9337b Fu(ma)m(y)d(b)s(e)f(either)h(a)g(simple)g(command)f(\(see)150
93382018 y(Section)44 b(3.2.2)i([Simple)d(Commands],)k(page)d(9\))g(or)g(a)
9339g(comp)s(ound)e(command)h(\(see)i(Section)f(3.2.5)150
93402128 y([Comp)s(ound)e(Commands],)47 b(page)e(11\).)83
9341b Fr(NAME)50 b Fu(is)44 b(a)g(shell)g(v)-5 b(ariable)45
9342b(name.)82 b(If)44 b Fr(NAME)50 b Fu(is)44 b(not)150
93432237 y(supplied,)29 b(the)i(default)f(name)h(is)f Ft(COPROC)p
9344Fu(.)275 2365 y(The)f(recommended)h(form)g(to)h(use)f(for)h(a)f(copro)s
9345(cess)h(is)390 2492 y Ft(coproc)46 b Fj(NAME)h Ft({)g
9346Fj(command)p Ft(;)f(})150 2620 y Fu(This)31 b(form)g(is)h(recommended)f
9347(b)s(ecause)h(simple)g(commands)f(result)h(in)f(the)h(copro)s(cess)g
9348(alw)m(a)m(ys)h(b)s(eing)150 2730 y(named)45 b Ft(COPROC)p
9349Fu(,)i(and)e(it)h(is)f(simpler)g(to)h(use)f(and)g(more)g(complete)i
9350(than)e(the)h(other)f(comp)s(ound)150 2839 y(commands.)275
93512967 y(There)29 b(are)i(other)g(forms)f(of)g(copro)s(cesses:)390
93523094 y Ft(coproc)46 b Fj(NAME)h(compound-command)390
93533204 y Ft(coproc)f Fj(compound-command)390 3313 y Ft(coproc)g
9354Fj(simple-command)150 3441 y Fu(If)41 b Fr(command)46
9355b Fu(is)41 b(a)i(comp)s(ound)d(command,)45 b Fr(NAME)i
9356Fu(is)42 b(optional.)77 b(The)41 b(w)m(ord)g(follo)m(wing)j
9357Ft(coproc)150 3551 y Fu(determines)27 b(whether)f(that)i(w)m(ord)f(is)g
9358(in)m(terpreted)g(as)g(a)h(v)-5 b(ariable)28 b(name:)39
9359b(it)27 b(is)g(in)m(terpreted)h(as)f Fr(NAME)150 3660
9360y 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
9361(duces)f(a)h(comp)s(ound)e(command.)40 b(If)29 b Fr(command)k
9362Fu(is)c(a)h(simple)150 3770 y(command,)36 b Fr(NAME)k
9363Fu(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
9364(confusion)f(b)s(et)m(w)m(een)g Fr(NAME)40 b Fu(and)34
9365b(the)h(\014rst)150 3879 y(w)m(ord)30 b(of)h(the)f(simple)g(command.)
9366275 4007 y(When)42 b(the)i(copro)s(cess)f(is)g(executed,)48
9367b(the)43 b(shell)g(creates)i(an)e(arra)m(y)g(v)-5 b(ariable)44
e2520247 9368b(\(see)g(Section)g(6.7)150 4117 y([Arra)m(ys],)h(page)e(102\))g(named)
7a8455e4
CR
9369e Fr(NAME)48 b Fu(in)41 b(the)h(con)m(text)h(of)f(the)g(executing)h
9370(shell.)75 b(The)41 b(standard)150 4226 y(output)32 b(of)h
9371Fr(command)i Fu(is)e(connected)g(via)g(a)g(pip)s(e)f(to)h(a)g(\014le)f
9372(descriptor)h(in)f(the)g(executing)i(shell,)g(and)150
e59452c7
CR
93734336 y(that)d(\014le)g(descriptor)g(is)g(assigned)f(to)i
9374Fr(NAME)5 b Fu([0].)43 b(The)31 b(standard)f(input)f(of)i
9375Fr(command)j Fu(is)d(connected)150 4445 y(via)40 b(a)g(pip)s(e)f(to)h
9376(a)g(\014le)g(descriptor)f(in)g(the)h(executing)h(shell,)h(and)d(that)h
9377(\014le)g(descriptor)f(is)h(assigned)150 4555 y(to)f
9378Fr(NAME)5 b Fu([1].)65 b(This)38 b(pip)s(e)f(is)h(established)g(b)s
9379(efore)g(an)m(y)g(redirections)h(sp)s(eci\014ed)e(b)m(y)h(the)g
9380(command)150 4664 y(\(see)33 b(Section)f(3.6)h([Redirections],)g(page)g
e2520247 9381(39\).)45 b(The)31 b(\014le)h(descriptors)f(can)h(b)s(e)f(utilized)i
e59452c7 9382(as)f(argumen)m(ts)150 4774 y(to)42 b(shell)g(commands)f(and)g
fc35c477 9383(redirections)h(using)f(standard)g(w)m(ord)g(expansions.)74
e59452c7 9384b(Other)41 b(than)g(those)150 4884 y(created)27 b(to)g(execute)g
fc35c477 9385(command)f(and)f(pro)s(cess)h(substitutions,)h(the)f(\014le)g
e59452c7
CR
9386(descriptors)g(are)g(not)h(a)m(v)-5 b(ailable)150 4993
9387y(in)30 b(subshells.)275 5121 y(The)d(pro)s(cess)h(ID)h(of)f(the)h
fc35c477 9388(shell)f(spa)m(wned)g(to)h(execute)h(the)e(copro)s(cess)h(is)f(a)m(v)-5
e59452c7
CR
9389b(ailable)31 b(as)d(the)h(v)-5 b(alue)29 b(of)150 5230
9390y(the)k(v)-5 b(ariable)33 b Fj(NAME)p Ft(_PID)p Fu(.)44
9391b(The)32 b Ft(wait)g Fu(builtin)f(command)i(ma)m(y)g(b)s(e)e(used)h(to)
9392h(w)m(ait)h(for)e(the)h(copro)s(cess)150 5340 y(to)e(terminate.)p
9393eop end
9394%%Page: 19 25
9395TeXDict begin 19 24 bop 150 -116 a Fu(Chapter)30 b(3:)41
9396b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)275 299
9397y(Since)20 b(the)g(copro)s(cess)h(is)g(created)g(as)g(an)f(async)m
9398(hronous)g(command,)i(the)f Ft(coproc)d Fu(command)i(alw)m(a)m(ys)150
9399408 y(returns)29 b(success.)41 b(The)30 b(return)f(status)i(of)f(a)h
9400(copro)s(cess)g(is)f(the)h(exit)g(status)g(of)f Fr(command)p
9401Fu(.)150 609 y Fk(3.2.7)63 b(GNU)41 b(P)m(arallel)150
9402756 y Fu(There)30 b(are)h(w)m(a)m(ys)g(to)g(run)f(commands)g(in)g
9403(parallel)h(that)h(are)e(not)h(built)g(in)m(to)g(Bash.)41
9404b(GNU)31 b(P)m(arallel)i(is)150 866 y(a)e(to)s(ol)g(to)g(do)f(just)g
9405(that.)275 1001 y(GNU)e(P)m(arallel,)i(as)e(its)g(name)f(suggests,)j
9406(can)d(b)s(e)g(used)g(to)h(build)f(and)g(run)f(commands)h(in)h
9407(parallel.)150 1111 y(Y)-8 b(ou)41 b(ma)m(y)g(run)e(the)h(same)h
9408(command)f(with)g(di\013eren)m(t)h(argumen)m(ts,)j(whether)39
9409b(they)i(are)g(\014lenames,)150 1221 y(usernames,)27
9410b(hostnames,)h(or)e(lines)h(read)f(from)h(\014les.)39
9411b(GNU)27 b(P)m(arallel)i(pro)m(vides)d(shorthand)g(references)150
94121330 y(to)38 b(man)m(y)g(of)g(the)g(most)g(common)g(op)s(erations)g
9413(\(input)f(lines,)j(v)-5 b(arious)38 b(p)s(ortions)f(of)h(the)g(input)e
9414(line,)150 1440 y(di\013eren)m(t)f(w)m(a)m(ys)h(to)f(sp)s(ecify)f(the)h
9415(input)f(source,)i(and)e(so)h(on\).)54 b(P)m(arallel)36
9416b(can)f(replace)h Ft(xargs)d Fu(or)i(feed)150 1549 y(commands)30
9417b(from)g(its)h(input)e(sources)h(to)i(sev)m(eral)f(di\013eren)m(t)g
9418(instances)g(of)g(Bash.)275 1685 y(F)-8 b(or)28 b(a)h(complete)g
9419(description,)g(refer)f(to)g(the)h(GNU)f(P)m(arallel)i(do)s(cumen)m
9420(tation,)g(whic)m(h)e(is)g(a)m(v)-5 b(ailable)150 1795
9421y(at)31 b Ft(https://www.gnu.org/softw)o(are)o(/par)o(alle)o(l/p)o
9422(aral)o(lel_)o(tut)o(oria)o(l.ht)o(ml)p Fu(.)150 2038
9423y Fs(3.3)68 b(Shell)45 b(F)-11 b(unctions)150 2197 y
9424Fu(Shell)35 b(functions)h(are)g(a)g(w)m(a)m(y)g(to)h(group)e(commands)g
9425(for)h(later)g(execution)h(using)e(a)h(single)g(name)g(for)150
94262307 y(the)f(group.)55 b(They)35 b(are)g(executed)h(just)f(lik)m(e)h(a)
9427g Ft(")p Fu(regular)p Ft(")f Fu(command.)54 b(When)35
9428b(the)h(name)f(of)g(a)h(shell)150 2416 y(function)j(is)g(used)f(as)h(a)
9429h(simple)f(command)g(name,)i(the)e(list)h(of)f(commands)g(asso)s
9430(ciated)i(with)d(that)150 2526 y(function)25 b(name)h(is)g(executed.)40
9431b(Shell)25 b(functions)g(are)i(executed)f(in)f(the)h(curren)m(t)g
9432(shell)g(con)m(text;)j(no)c(new)150 2635 y(pro)s(cess)30
9433b(is)g(created)i(to)f(in)m(terpret)g(them.)275 2771 y(F)-8
9434b(unctions)30 b(are)h(declared)g(using)f(this)g(syn)m(tax:)390
94352907 y Fj(fname)46 b Ft(\(\))i Fj(compound-command)43
9436b Ft([)k Fj(redirections)e Ft(])275 3043 y Fu(or)390
94373179 y Ft(function)h Fj(fname)g Ft([\(\)])h Fj(compound-command)c
9438Ft([)k Fj(redirections)e Ft(])275 3315 y Fu(This)37 b(de\014nes)h(a)h
9439(shell)f(function)g(named)g Fr(fname)p Fu(.)65 b(The)38
9440b(reserv)m(ed)h(w)m(ord)f Ft(function)e Fu(is)j(optional.)150
94413424 y(If)33 b(the)g Ft(function)e Fu(reserv)m(ed)i(w)m(ord)g(is)g
9442(supplied,)g(the)g(paren)m(theses)h(are)f(optional.)50
9443b(The)33 b Fr(b)s(o)s(dy)39 b Fu(of)34 b(the)150 3534
9444y(function)41 b(is)h(the)g(comp)s(ound)e(command)h Fr(comp)s
9445(ound-command)j Fu(\(see)e(Section)h(3.2.5)g([Comp)s(ound)150
94463644 y(Commands],)30 b(page)h(11\).)42 b(That)30 b(command)g(is)g
9447(usually)h(a)f Fr(list)j Fu(enclosed)e(b)s(et)m(w)m(een)g
9448Fi({)g Fu(and)f Fi(})p Fu(,)h(but)e(ma)m(y)150 3753 y(b)s(e)k(an)m(y)h
9449(comp)s(ound)f(command)g(listed)i(ab)s(o)m(v)m(e.)52
9450b(If)33 b(the)i Ft(function)c Fu(reserv)m(ed)j(w)m(ord)g(is)f(used,)i
9451(but)e(the)150 3863 y(paren)m(theses)22 b(are)g(not)f(supplied,)h(the)g
9452(braces)g(are)f(recommended.)38 b Fr(comp)s(ound-command)24
9453b Fu(is)d(executed)150 3972 y(whenev)m(er)29 b Fr(fname)35
9454b Fu(is)29 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)h(a)f(simple)h
9455(command.)40 b(When)29 b(the)h(shell)f(is)h(in)f Fm(posix)150
94564082 y Fu(mo)s(de)i(\(see)h(Section)g(6.11)h([Bash)f(POSIX)e(Mo)s(de],)
e2520247 9457i(page)g(108\),)i Fr(fname)i Fu(m)m(ust)31 b(b)s(e)g(a)h(v)-5
e59452c7
CR
9458b(alid)31 b(shell)h(name)150 4192 y(and)h(ma)m(y)h(not)f(b)s(e)g(the)h
9459(same)f(as)h(one)g(of)f(the)h(sp)s(ecial)g(builtins)e(\(see)j(Section)f
e2520247 9460(4.4)g([Sp)s(ecial)g(Builtins],)150 4301 y(page)d(79\).)43
e59452c7
CR
9461b(In)29 b(default)i(mo)s(de,)g(a)f(function)h(name)f(can)h(b)s(e)f(an)m
9462(y)h(unquoted)e(shell)i(w)m(ord)f(that)h(do)s(es)g(not)150
94634411 y(con)m(tain)k(`)p Ft($)p Fu('.)52 b(An)m(y)34 b(redirections)g
e2520247 9464(\(see)h(Section)g(3.6)g([Redirections],)h(page)f(39\))g(asso)s(ciated)
e59452c7
CR
9465g(with)f(the)150 4520 y(shell)g(function)f(are)h(p)s(erformed)e(when)h
9466(the)g(function)h(is)f(executed.)51 b(A)34 b(function)f(de\014nition)g
9467(ma)m(y)i(b)s(e)150 4630 y(deleted)i(using)e(the)i Ft(-f)e
9468Fu(option)i(to)f(the)h Ft(unset)d Fu(builtin)i(\(see)h(Section)g(4.1)g
e2520247 9469([Bourne)f(Shell)g(Builtins],)150 4739 y(page)31 b(49\).)275
e59452c7
CR
94704875 y(The)26 b(exit)i(status)g(of)f(a)h(function)f(de\014nition)g(is)g
9471(zero)h(unless)f(a)g(syn)m(tax)h(error)f(o)s(ccurs)g(or)g(a)h(readonly)
9472150 4985 y(function)k(with)f(the)i(same)f(name)g(already)h(exists.)46
602eae4d 9473b(When)32 b(executed,)h(the)f(exit)h(status)g(of)f(a)g(function)150
e59452c7
CR
94745095 y(is)e(the)h(exit)g(status)g(of)f(the)h(last)g(command)f(executed)
9475i(in)e(the)g(b)s(o)s(dy)-8 b(.)275 5230 y(Note)22 b(that)f(for)f
602eae4d 9476(historical)i(reasons,)h(in)e(the)g(most)g(common)g(usage)g(the)g
e59452c7 9477(curly)f(braces)h(that)g(surround)150 5340 y(the)38 b(b)s(o)s(dy)d(of)j
602eae4d 9478(the)f(function)g(m)m(ust)g(b)s(e)g(separated)h(from)f(the)g(b)s(o)s
e59452c7
CR
9479(dy)f(b)m(y)h Ft(blank)p Fu(s)f(or)h(newlines.)62 b(This)p
9480eop end
9481%%Page: 20 26
9482TeXDict begin 20 25 bop 150 -116 a Fu(Chapter)30 b(3:)41
9483b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(20)150 299
9484y(is)38 b(b)s(ecause)g(the)h(braces)f(are)h(reserv)m(ed)f(w)m(ords)g
9485(and)f(are)i(only)f(recognized)i(as)e(suc)m(h)g(when)f(they)i(are)150
9486408 y(separated)26 b(from)f(the)h(command)f(list)i(b)m(y)e(whitespace)h
9487(or)g(another)g(shell)g(metac)m(haracter.)41 b(Also,)28
9488b(when)150 518 y(using)i(the)g(braces,)h(the)g Fr(list)i
9489Fu(m)m(ust)d(b)s(e)g(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p
7a8455e4 9490Ft(&)p Fu(',)h(or)g(a)f(newline.)275 669 y(When)i(a)i(function)f(is)g
e59452c7 9491(executed,)i(the)e(argumen)m(ts)h(to)g(the)f(function)g(b)s(ecome)g
7a8455e4 9492(the)h(p)s(ositional)g(pa-)150 778 y(rameters)42 b(during)e(its)i
ac18b312 9493(execution)h(\(see)f(Section)g(3.4.1)h([P)m(ositional)h(P)m
7a8455e4 9494(arameters],)i(page)c(23\).)75 b(The)150 888 y(sp)s(ecial)37
037a8b7f 9495b(parameter)f(`)p Ft(#)p Fu(')g(that)h(expands)e(to)i(the)f(n)m(um)m(b)
e59452c7 9496s(er)f(of)h(p)s(ositional)h(parameters)f(is)g(up)s(dated)f(to)150
7a8455e4 9497998 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35
037a8b7f 9498b(parameter)h Ft(0)f Fu(is)g(unc)m(hanged.)54 b(The)35
7a8455e4 9499b(\014rst)f(elemen)m(t)j(of)e(the)g Ft(FUNCNAME)150 1107
037a8b7f
CR
9500y Fu(v)-5 b(ariable)31 b(is)g(set)f(to)i(the)e(name)h(of)f(the)h
9501(function)f(while)g(the)h(function)f(is)g(executing.)275
7a8455e4 95021258 y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)g(execution)h(en)
e59452c7 9503m(vironmen)m(t)g(are)f(iden)m(tical)h(b)s(et)m(w)m(een)g(a)f(function)g
7a8455e4 9504(and)150 1367 y(its)35 b(caller)i(with)d(these)i(exceptions:)50
037a8b7f 9505b(the)36 b Ft(DEBUG)d Fu(and)h Ft(RETURN)g Fu(traps)g(are)i(not)f
7a8455e4 9506(inherited)f(unless)h(the)150 1477 y(function)26 b(has)g(b)s(een)f(giv)
e59452c7
CR
9507m(en)i(the)g Ft(trace)d Fu(attribute)j(using)f(the)g
9508Ft(declare)e Fu(builtin)i(or)g(the)h Ft(-o)i(functrace)150
7a8455e4 95091587 y Fu(option)f(has)e(b)s(een)h(enabled)g(with)g(the)g
e59452c7 9510Ft(set)f Fu(builtin,)i(\(in)f(whic)m(h)f(case)j(all)f(functions)e
7a8455e4 9511(inherit)h(the)g Ft(DEBUG)150 1696 y Fu(and)33 b Ft(RETURN)f
e59452c7
CR
9512Fu(traps\),)j(and)e(the)h Ft(ERR)f Fu(trap)h(is)g(not)g(inherited)f
9513(unless)g(the)h Ft(-o)c(errtrace)h Fu(shell)j(option)150
7a8455e4 95141806 y(has)h(b)s(een)f(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f
e2520247 9515(Shell)g(Builtins],)i(page)f(49,)i(for)c(the)i(description)f(of)150
7a8455e4 95161915 y(the)c Ft(trap)e Fu(builtin.)275 2066 y(The)38
e59452c7
CR
9517b Ft(FUNCNEST)f Fu(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)
9518f(v)-5 b(alue)39 b(greater)h(than)f(0,)j(de\014nes)d(a)g(maxim)m(um)150
7a8455e4 95192176 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
220537f2 9520b(in)m(v)m(o)s(cations)i(that)e(exceed)g(the)g(limit)g(cause)g(the)g
7a8455e4
CR
9521(en)m(tire)g(command)150 2285 y(to)31 b(ab)s(ort.)275
95222436 y(If)37 b(the)g(builtin)g(command)h Ft(return)d
6e51e0d0 9523Fu(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
7a8455e4 9524(and)150 2545 y(execution)25 b(resumes)e(with)h(the)g(next)g(command)f
220537f2 9525(after)i(the)f(function)f(call.)40 b(An)m(y)24 b(command)f(asso)s
7a8455e4 9526(ciated)150 2655 y(with)36 b(the)h Ft(RETURN)d Fu(trap)i(is)h(executed)
d37a4722 9527g(b)s(efore)f(execution)i(resumes.)57 b(When)37 b(a)f(function)g
7a8455e4 9528(completes,)150 2765 y(the)h(v)-5 b(alues)38 b(of)f(the)g(p)s
d37a4722 9529(ositional)h(parameters)f(and)g(the)g(sp)s(ecial)h(parameter)f(`)p
7a8455e4 9530Ft(#)p Fu(')g(are)h(restored)f(to)h(the)150 2874 y(v)-5
d37a4722
CR
9531b(alues)26 b(they)f(had)g(prior)f(to)i(the)g(function's)f(execution.)40
9532b(If)25 b(a)h(n)m(umeric)f(argumen)m(t)h(is)f(giv)m(en)h(to)g
7a8455e4 9533Ft(return)p Fu(,)150 2984 y(that)j(is)g(the)f(function's)h(return)e
d37a4722 9534(status;)j(otherwise)f(the)f(function's)h(return)e(status)i(is)f(the)h
7a8455e4
CR
9535(exit)h(status)150 3093 y(of)h(the)f(last)h(command)f(executed)i(b)s
9536(efore)e(the)g Ft(return)p Fu(.)275 3244 y(V)-8 b(ariables)29
9537b(lo)s(cal)h(to)g(the)e(function)g(ma)m(y)i(b)s(e)e(declared)h(with)f
9538(the)h Ft(local)e Fu(builtin)h(\()p Fr(lo)s(cal)i(v)-5
9539b(ariables)t Fu(\).)150 3354 y(Ordinarily)d(,)35 b(v)-5
9540b(ariables)35 b(and)f(their)g(v)-5 b(alues)35 b(are)g(shared)e(b)s(et)m
9541(w)m(een)i(a)g(function)f(and)g(its)g(caller.)54 b(These)150
95423463 y(v)-5 b(ariables)30 b(are)f(visible)g(only)g(to)h(the)f(function)
9543f(and)g(the)i(commands)e(it)h(in)m(v)m(ok)m(es.)42 b(This)28
9544b(is)h(particularly)150 3573 y(imp)s(ortan)m(t)i(when)e(a)i(shell)f
9545(function)g(calls)i(other)e(functions.)275 3724 y(In)j(the)h(follo)m
9546(wing)i(description,)f(the)g Fr(curren)m(t)f(scop)s(e)39
9547b Fu(is)34 b(a)h(curren)m(tly-)g(executing)g(function.)52
9548b(Pre-)150 3833 y(vious)33 b(scop)s(es)g(consist)g(of)g(that)g
9549(function's)g(caller)h(and)e(so)h(on,)h(bac)m(k)g(to)f(the)g
9550Ft(")p Fu(global)p Ft(")h Fu(scop)s(e,)f(where)150 3943
9551y(the)g(shell)g(is)g(not)g(executing)h(an)m(y)f(shell)g(function.)48
9552b(Consequen)m(tly)-8 b(,)34 b(a)f(lo)s(cal)h(v)-5 b(ariable)34
9553b(at)f(the)g(curren)m(t)150 4052 y(lo)s(cal)g(scop)s(e)f(is)f(a)h(v)-5
9554b(ariable)33 b(declared)f(using)f(the)h Ft(local)e Fu(or)i
9555Ft(declare)e Fu(builtins)h(in)g(the)h(function)f(that)150
95564162 y(is)f(curren)m(tly)h(executing.)275 4313 y(Lo)s(cal)41
9557b(v)-5 b(ariables)42 b Ft(")p Fu(shado)m(w)p Ft(")e Fu(v)-5
9558b(ariables)42 b(with)f(the)g(same)g(name)g(declared)h(at)f(previous)g
9559(scop)s(es.)150 4422 y(F)-8 b(or)41 b(instance,)j(a)d(lo)s(cal)h(v)-5
d37a4722 9560b(ariable)41 b(declared)g(in)f(a)h(function)f(hides)g(a)h(global)h(v)-5
7a8455e4 9561b(ariable)41 b(of)g(the)g(same)150 4532 y(name:)59 b(references)40
d37a4722
CR
9562b(and)f(assignmen)m(ts)h(refer)f(to)i(the)f(lo)s(cal)g(v)-5
9563b(ariable,)43 b(lea)m(ving)f(the)d(global)i(v)-5 b(ariable)150
7a8455e4 95644641 y(unmo)s(di\014ed.)39 b(When)30 b(the)g(function)g(returns,)g(the)
d37a4722 9565g(global)i(v)-5 b(ariable)31 b(is)g(once)g(again)g(visible.)275
7a8455e4 95664792 y(The)f(shell)h(uses)g Fr(dynamic)g(scoping)39 b
d37a4722 9567Fu(to)32 b(con)m(trol)g(a)f(v)-5 b(ariable's)32 b(visibilit)m(y)h
7a8455e4 9568(within)d(functions.)42 b(With)150 4902 y(dynamic)31
fc35c477
CR
9569b(scoping,)i(visible)e(v)-5 b(ariables)32 b(and)f(their)h(v)-5
9570b(alues)32 b(are)f(a)h(result)g(of)f(the)h(sequence)g(of)f(function)150
7a8455e4 95715011 y(calls)37 b(that)g(caused)g(execution)g(to)g(reac)m(h)g(the)g
e230f997 9572(curren)m(t)f(function.)58 b(The)36 b(v)-5 b(alue)36
7a8455e4 9573b(of)h(a)g(v)-5 b(ariable)37 b(that)g(a)150 5121 y(function)24
e230f997
CR
9574b(sees)g(dep)s(ends)f(on)h(its)g(v)-5 b(alue)25 b(within)e(its)i
9575(caller,)i(if)d(an)m(y)-8 b(,)26 b(whether)e(that)g(caller)i(is)e(the)g
7a8455e4 9576Ft(")p Fu(global)p Ft(")150 5230 y Fu(scop)s(e)41 b(or)g(another)g
e230f997
CR
9577(shell)g(function.)73 b(This)40 b(is)h(also)h(the)f(v)-5
9578b(alue)41 b(that)h(a)f(lo)s(cal)i(v)-5 b(ariable)41 b(declaration)150
7a8455e4
CR
95795340 y Ft(")p Fu(shado)m(ws)p Ft(")p Fu(,)30 b(and)g(the)g(v)-5
9580b(alue)31 b(that)g(is)f(restored)h(when)e(the)i(function)f(returns.)p
d37a4722
CR
9581eop end
9582%%Page: 21 27
9583TeXDict begin 21 26 bop 150 -116 a Fu(Chapter)30 b(3:)41
7a8455e4
CR
9584b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)275 299
9585y(F)-8 b(or)38 b(example,)h(if)f(a)f(v)-5 b(ariable)38
9586b Ft(var)f Fu(is)g(declared)h(as)f(lo)s(cal)i(in)e(function)g
9587Ft(func1)p Fu(,)g(and)g Ft(func1)f Fu(calls)150 408 y(another)29
9588b(function)g Ft(func2)p Fu(,)f(references)i(to)f Ft(var)g
9589Fu(made)g(from)f(within)h Ft(func2)f Fu(will)h(resolv)m(e)i(to)e(the)h
9590(lo)s(cal)150 518 y(v)-5 b(ariable)31 b Ft(var)f Fu(from)g
9591Ft(func1)p Fu(,)f(shado)m(wing)h(an)m(y)h(global)h(v)-5
9592b(ariable)31 b(named)f Ft(var)p Fu(.)275 650 y(The)f(follo)m(wing)j
9593(script)f(demonstrates)f(this)h(b)s(eha)m(vior.)40 b(When)31
9594b(executed,)g(the)g(script)f(displa)m(ys)390 781 y Ft(In)47
9595b(func2,)f(var)h(=)h(func1)e(local)390 913 y(func1\(\))390
95961022 y({)581 1132 y(local)g(var='func1)f(local')581 1241
9597y(func2)390 1351 y(})390 1570 y(func2\(\))390 1680 y({)581
95981789 y(echo)i("In)f(func2,)h(var)f(=)i($var")390 1899
9599y(})390 2118 y(var=global)390 2228 y(func1)275 2359 y
e59452c7
CR
9600Fu(The)32 b Ft(unset)g Fu(builtin)g(also)i(acts)g(using)e(the)i(same)f
9601(dynamic)g(scop)s(e:)46 b(if)33 b(a)g(v)-5 b(ariable)34
7a8455e4 9602b(is)f(lo)s(cal)h(to)g(the)150 2469 y(curren)m(t)i(scop)s(e,)h
e59452c7
CR
9603Ft(unset)e Fu(will)h(unset)g(it;)j(otherwise)e(the)f(unset)f(will)h
9604(refer)g(to)h(the)f(v)-5 b(ariable)37 b(found)d(in)150
7a8455e4
CR
96052578 y(an)m(y)27 b(calling)i(scop)s(e)e(as)g(describ)s(ed)f(ab)s(o)m(v)
9606m(e.)41 b(If)26 b(a)h(v)-5 b(ariable)28 b(at)g(the)f(curren)m(t)g(lo)s
9607(cal)h(scop)s(e)f(is)g(unset,)g(it)h(will)150 2688 y(remain)k(so)g
9608(\(app)s(earing)g(as)h(unset\))e(un)m(til)i(it)f(is)g(reset)h(in)f
9609(that)g(scop)s(e)h(or)f(un)m(til)g(the)g(function)g(returns.)150
96102798 y(Once)39 b(the)h(function)f(returns,)h(an)m(y)g(instance)g(of)f
9611(the)h(v)-5 b(ariable)40 b(at)g(a)g(previous)f(scop)s(e)g(will)h(b)s
9612(ecome)150 2907 y(visible.)k(If)31 b(the)h(unset)f(acts)h(on)g(a)g(v)-5
9613b(ariable)32 b(at)g(a)g(previous)f(scop)s(e,)h(an)m(y)f(instance)i(of)e
9614(a)h(v)-5 b(ariable)32 b(with)150 3017 y(that)23 b(name)g(that)h(had)e
9615(b)s(een)g(shado)m(w)m(ed)h(will)g(b)s(ecome)h(visible)f(\(see)h(b)s
9616(elo)m(w)f(ho)m(w)g Ft(localvar_unset)p Fu(shell)150
96173126 y(option)31 b(c)m(hanges)g(this)f(b)s(eha)m(vior\).)275
96183258 y(F)-8 b(unction)51 b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s
e59452c7 9619(e)e(listed)h(with)f(the)h Ft(-f)f Fu(option)h(to)g(the)g
7a8455e4 9620Ft(declare)150 3368 y Fu(\()p Ft(typeset)p Fu(\))43 b(builtin)h
e2520247 9621(command)g(\(see)h(Section)g(4.2)g([Bash)g(Builtins],)j(page)d(57\).)83
7a8455e4 9622b(The)44 b Ft(-F)f Fu(option)150 3477 y(to)e Ft(declare)e
e59452c7 9623Fu(or)i Ft(typeset)e Fu(will)i(list)g(the)g(function)f(names)h(only)g
7a8455e4 9624(\(and)f(optionally)i(the)f(source)g(\014le)150 3587
e59452c7
CR
9625y(and)g(line)h(n)m(um)m(b)s(er,)h(if)f(the)g Ft(extdebug)d
9626Fu(shell)j(option)g(is)g(enabled\).)75 b(F)-8 b(unctions)42
7a8455e4 9627b(ma)m(y)g(b)s(e)f(exp)s(orted)150 3696 y(so)i(that)g(c)m(hild)g(shell)
e59452c7 9628g(pro)s(cesses)g(\(those)g(created)h(when)e(executing)i(a)f(separate)h
7a8455e4 9629(shell)f(in)m(v)m(o)s(cation\))150 3806 y(automatically)34
e59452c7
CR
9630b(ha)m(v)m(e)e(them)e(de\014ned)g(with)g(the)h Ft(-f)f
9631Fu(option)i(to)f(the)g Ft(export)e Fu(builtin)i(\(see)g(Section)h(4.1)
e2520247 9632150 3916 y([Bourne)e(Shell)h(Builtins],)g(page)g(49\).)275
7a8455e4 96334047 y(F)-8 b(unctions)33 b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48
e59452c7 9634b(The)32 b Ft(FUNCNEST)f Fu(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g
7a8455e4 9635(to)i(limit)g(the)f(depth)f(of)150 4157 y(the)27 b(function)f(call)i
e59452c7
CR
9636(stac)m(k)h(and)d(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f
9637(in)m(v)m(o)s(cations.)42 b(By)27 b(default,)g(no)g(limit)150
7a8455e4
CR
96384266 y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
9639(calls.)150 4501 y Fs(3.4)68 b(Shell)45 b(P)l(arameters)150
96404660 y Fu(A)39 b Fr(parameter)45 b Fu(is)39 b(an)g(en)m(tit)m(y)h(that)
e59452c7
CR
9641f(stores)g(v)-5 b(alues.)66 b(It)39 b(can)g(b)s(e)f(a)h
9642Ft(name)p Fu(,)h(a)f(n)m(um)m(b)s(er,)g(or)g(one)g(of)g(the)150
7a8455e4 96434770 y(sp)s(ecial)c(c)m(haracters)h(listed)g(b)s(elo)m(w.)53
e59452c7
CR
9644b(A)35 b Fr(v)-5 b(ariable)41 b Fu(is)34 b(a)h(parameter)h(denoted)e(b)
9645m(y)h(a)g Ft(name)p Fu(.)52 b(A)35 b(v)-5 b(ariable)150
7a8455e4 96464880 y(has)41 b(a)h Ft(value)d Fu(and)i(zero)h(or)f(more)g
e59452c7 9647Ft(attributes)p Fu(.)71 b(A)m(ttributes)42 b(are)f(assigned)h(using)f
7a8455e4 9648(the)g Ft(declare)150 4989 y Fu(builtin)29 b(command)g(\(see)h(the)g
e59452c7 9649(description)f(of)g(the)h Ft(declare)d Fu(builtin)i(in)g(Section)h(4.2)
e2520247 9650g([Bash)g(Builtins],)150 5099 y(page)h(57\).)275 5230
e59452c7
CR
9651y(A)d(parameter)h(is)g(set)g(if)f(it)h(has)f(b)s(een)g(assigned)h(a)g
9652(v)-5 b(alue.)40 b(The)28 b(n)m(ull)h(string)f(is)h(a)g(v)-5
7a8455e4 9653b(alid)28 b(v)-5 b(alue.)41 b(Once)150 5340 y(a)31 b(v)-5
e59452c7 9654b(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
7a8455e4
CR
9655(using)g(the)g Ft(unset)f Fu(builtin)h(command.)p eop
9656end
9657%%Page: 22 28
9658TeXDict begin 22 27 bop 150 -116 a Fu(Chapter)30 b(3:)41
9659b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(22)275 299
9660y(A)30 b(v)-5 b(ariable)31 b(ma)m(y)g(b)s(e)f(assigned)g(to)i(b)m(y)e
9661(a)h(statemen)m(t)h(of)e(the)h(form)390 471 y Fj(name)p
9662Ft(=[)p Fj(value)p Ft(])150 643 y Fu(If)43 b Fr(v)-5
e59452c7
CR
9663b(alue)49 b Fu(is)43 b(not)h(giv)m(en,)k(the)c(v)-5 b(ariable)44
9664b(is)f(assigned)h(the)f(n)m(ull)h(string.)80 b(All)44
7a8455e4 9665b Fr(v)-5 b(alue)5 b Fu(s)43 b(undergo)g(tilde)150 753
e59452c7
CR
9666y(expansion,)25 b(parameter)f(and)f(v)-5 b(ariable)25
9667b(expansion,)g(command)e(substitution,)i(arithmetic)g(expansion,)150
7a8455e4 9668862 y(and)i(quote)i(remo)m(v)-5 b(al)29 b(\(see)g(Section)f(3.5.3)i
e59452c7 9669([Shell)e(P)m(arameter)h(Expansion],)f(page)h(26\).)41
7a8455e4 9670b(If)27 b(the)h(v)-5 b(ariable)150 972 y(has)35 b(its)h
e59452c7
CR
9671Ft(integer)e Fu(attribute)i(set,)i(then)d Fr(v)-5 b(alue)42
9672b Fu(is)35 b(ev)-5 b(aluated)37 b(as)f(an)f(arithmetic)i(expression)f
7a8455e4 9673(ev)m(en)g(if)150 1082 y(the)i Ft($\(\(...)n(\)\))f Fu(expansion)g(is)g
e59452c7 9674(not)h(used)e(\(see)j(Section)f(3.5.5)h([Arithmetic)f(Expansion],)h
e2520247 9675(page)f(35\).)150 1191 y(W)-8 b(ord)26 b(splitting)h(and)e(\014lename)h
7a8455e4
CR
9676(expansion)g(are)g(not)h(p)s(erformed.)37 b(Assignmen)m(t)27
9677b(statemen)m(ts)g(ma)m(y)g(also)150 1301 y(app)s(ear)22
9678b(as)h(argumen)m(ts)g(to)h(the)f Ft(alias)p Fu(,)g Ft(declare)p
9679Fu(,)f Ft(typeset)p Fu(,)h Ft(export)p Fu(,)g Ft(readonly)p
9680Fu(,)f(and)g Ft(local)f Fu(builtin)150 1410 y(commands)31
9681b(\()p Fr(declaration)j Fu(commands\).)44 b(When)32 b(in)f
9682Fm(posix)g Fu(mo)s(de)g(\(see)h(Section)h(6.11)g([Bash)f(POSIX)150
e2520247 96831520 y(Mo)s(de],)h(page)f(108\),)i(these)e(builtins)f(ma)m(y)h(app)s
7a8455e4
CR
9684(ear)f(in)g(a)h(command)f(after)h(one)g(or)g(more)g(instances)g(of)150
96851630 y(the)f Ft(command)d Fu(builtin)i(and)g(retain)h(these)f
9686(assignmen)m(t)i(statemen)m(t)g(prop)s(erties.)275 1802
9687y(In)d(the)h(con)m(text)i(where)d(an)h(assignmen)m(t)h(statemen)m(t)h
9688(is)e(assigning)g(a)h(v)-5 b(alue)30 b(to)h(a)f(shell)g(v)-5
9689b(ariable)31 b(or)150 1911 y(arra)m(y)k(index)f(\(see)h(Section)g(6.7)g
e2520247 9690([Arra)m(ys],)h(page)f(102\),)i(the)e(`)p Ft(+=)p Fu(')f(op)s(erator)g
7a8455e4
CR
9691(can)h(b)s(e)e(used)h(to)h(app)s(end)150 2021 y(to)h(or)g(add)e(to)j
9692(the)e(v)-5 b(ariable's)36 b(previous)f(v)-5 b(alue.)57
9693b(This)34 b(includes)h(argumen)m(ts)h(to)g(builtin)f(commands)150
96942131 y(suc)m(h)29 b(as)g Ft(declare)e Fu(that)i(accept)h(assignmen)m(t)
e59452c7 9695g(statemen)m(ts)h(\(declaration)f(commands\).)41 b(When)28
7a8455e4 9696b(`)p Ft(+=)p Fu(')h(is)150 2240 y(applied)36 b(to)h(a)f(v)-5
e59452c7
CR
9697b(ariable)37 b(for)f(whic)m(h)f(the)i Ft(integer)d Fu(attribute)i(has)g
9698(b)s(een)g(set,)i Fr(v)-5 b(alue)41 b Fu(is)36 b(ev)-5
7a8455e4 9699b(aluated)38 b(as)150 2350 y(an)28 b(arithmetic)h(expression)f(and)f
e59452c7
CR
9700(added)h(to)h(the)f(v)-5 b(ariable's)29 b(curren)m(t)e(v)-5
9701b(alue,)30 b(whic)m(h)d(is)i(also)f(ev)-5 b(aluated.)150
7a8455e4 97022459 y(When)43 b(`)p Ft(+=)p Fu(')g(is)h(applied)f(to)h(an)f(arra)m(y)h
e59452c7 9703(v)-5 b(ariable)44 b(using)f(comp)s(ound)e(assignmen)m(t)j(\(see)h
e2520247 9704(Section)f(6.7)150 2569 y([Arra)m(ys],)g(page)d(102\),)k(the)c(v)-5
7a8455e4
CR
9705b(ariable's)42 b(v)-5 b(alue)41 b(is)g(not)f(unset)h(\(as)g(it)g(is)g
9706(when)e(using)h(`)p Ft(=)p Fu('\),)k(and)c(new)150 2679
9707y(v)-5 b(alues)27 b(are)g(app)s(ended)f(to)h(the)g(arra)m(y)h(b)s
e59452c7 9708(eginning)e(at)h(one)g(greater)i(than)d(the)h(arra)m(y's)h(maxim)m(um)e
7a8455e4 9709(index)150 2788 y(\(for)32 b(indexed)g(arra)m(ys\),)i(or)e(added)f(as)i
e59452c7 9710(additional)g(k)m(ey-v)-5 b(alue)34 b(pairs)d(in)h(an)g(asso)s(ciativ)m
7a8455e4 9711(e)j(arra)m(y)-8 b(.)47 b(When)150 2898 y(applied)27
e59452c7
CR
9712b(to)h(a)f(string-v)-5 b(alued)28 b(v)-5 b(ariable,)29
9713b Fr(v)-5 b(alue)32 b Fu(is)c(expanded)e(and)h(app)s(ended)e(to)j(the)f
7a8455e4 9714(v)-5 b(ariable's)28 b(v)-5 b(alue.)275 3070 y(A)28 b(v)-5
e59452c7
CR
9715b(ariable)28 b(can)h(b)s(e)e(assigned)h(the)h Ft(nameref)d
9716Fu(attribute)i(using)g(the)g Ft(-n)f Fu(option)i(to)g(the)f
7a8455e4 9717Ft(declare)e Fu(or)150 3180 y Ft(local)f Fu(builtin)h(commands)g(\(see)
e2520247 9718i(Section)f(4.2)h([Bash)f(Builtins],)h(page)f(57\))h(to)f(create)i(a)e
7a8455e4 9719Fr(nameref)p Fu(,)g(or)g(a)150 3289 y(reference)f(to)g(another)f(v)-5
1a5fa30b
CR
9720b(ariable.)40 b(This)24 b(allo)m(ws)j(v)-5 b(ariables)26
9721b(to)g(b)s(e)e(manipulated)h(indirectly)-8 b(.)40 b(Whenev)m(er)150
7a8455e4 97223399 y(the)31 b(nameref)g(v)-5 b(ariable)32 b(is)f(referenced,)g
1a5fa30b 9723(assigned)h(to,)g(unset,)f(or)g(has)f(its)i(attributes)f(mo)s(di\014ed)
7a8455e4 9724f(\(other)150 3508 y(than)c(using)g(or)h(c)m(hanging)g(the)g(nameref)f
1a5fa30b 9725(attribute)i(itself)7 b(\),)29 b(the)d(op)s(eration)h(is)g(actually)h
7a8455e4 9726(p)s(erformed)d(on)150 3618 y(the)31 b(v)-5 b(ariable)31
1a5fa30b 9727b(sp)s(eci\014ed)f(b)m(y)g(the)h(nameref)f(v)-5 b(ariable's)31
d37a4722 9728b(v)-5 b(alue.)42 b(A)30 b(nameref)g(is)h(commonly)g(used)e(within)150
7a8455e4 97293727 y(shell)h(functions)g(to)h(refer)f(to)h(a)f(v)-5
d37a4722 9730b(ariable)31 b(whose)f(name)h(is)f(passed)g(as)g(an)g(argumen)m(t)h(to)
7a8455e4 9731g(the)f(function.)150 3837 y(F)-8 b(or)31 b(instance,)g(if)g(a)g(v)-5
d85b4caf 9732b(ariable)31 b(name)f(is)h(passed)e(to)j(a)e(shell)h(function)f(as)h
7a8455e4
CR
9733(its)f(\014rst)g(argumen)m(t,)h(running)390 4009 y Ft(declare)46
9734b(-n)h(ref=$1)150 4181 y Fu(inside)30 b(the)g(function)g(creates)h(a)g
e59452c7
CR
9735(nameref)f(v)-5 b(ariable)30 b Ft(ref)g Fu(whose)g(v)-5
9736b(alue)30 b(is)g(the)g(v)-5 b(ariable)31 b(name)f(passed)150
7a8455e4 97374291 y(as)c(the)h(\014rst)e(argumen)m(t.)40 b(References)26
e59452c7 9738b(and)g(assignmen)m(ts)h(to)g Ft(ref)p Fu(,)f(and)f(c)m(hanges)i(to)g
7a8455e4 9739(its)g(attributes,)h(are)150 4401 y(treated)j(as)f(references,)g
0fcb3344 9740(assignmen)m(ts,)h(and)e(attribute)i(mo)s(di\014cations)f(to)h(the)f(v)
7a8455e4
CR
9741-5 b(ariable)30 b(whose)g(name)150 4510 y(w)m(as)h(passed)f(as)g
9742Ft($1)p Fu(.)275 4682 y(If)h(the)g(con)m(trol)i(v)-5
fc35c477
CR
9743b(ariable)32 b(in)g(a)f Ft(for)g Fu(lo)s(op)h(has)f(the)g(nameref)h
9744(attribute,)g(the)g(list)g(of)g(w)m(ords)f(can)h(b)s(e)150
7a8455e4 97454792 y(a)h(list)h(of)f(shell)g(v)-5 b(ariables,)34 b(and)e(a)i(name)f
fc35c477 9746(reference)g(will)g(b)s(e)f(established)h(for)g(eac)m(h)h(w)m(ord)e(in)
7a8455e4 9747h(the)g(list,)150 4902 y(in)c(turn,)g(when)g(the)h(lo)s(op)g(is)g
fc35c477 9748(executed.)41 b(Arra)m(y)30 b(v)-5 b(ariables)30 b(cannot)h(b)s(e)e
7a8455e4 9749(giv)m(en)h(the)g(nameref)g(attribute.)150 5011 y(Ho)m(w)m(ev)m(er,)39
e230f997
CR
9750b(nameref)d(v)-5 b(ariables)36 b(can)g(reference)g(arra)m(y)g(v)-5
9751b(ariables)37 b(and)e(subscripted)f(arra)m(y)i(v)-5 b(ariables.)150
7a8455e4 97525121 y(Namerefs)36 b(can)f(b)s(e)g(unset)g(using)g(the)h
e230f997 9753Ft(-n)e Fu(option)i(to)g(the)g Ft(unset)e Fu(builtin)h(\(see)h(Section)
e2520247 9754g(4.1)h([Bourne)150 5230 y(Shell)43 b(Builtins],)j(page)e(49\).)79
fc527055 9755b(Otherwise,)45 b(if)e Ft(unset)e Fu(is)i(executed)h(with)e(the)h(name)
7a8455e4 9756g(of)g(a)g(nameref)150 5340 y(v)-5 b(ariable)31 b(as)g(an)f(argumen)m
fc527055 9757(t,)h(the)g(v)-5 b(ariable)31 b(referenced)f(b)m(y)g(the)h(nameref)f(v)
7a8455e4
CR
9758-5 b(ariable)31 b(will)g(b)s(e)f(unset.)p eop end
9759%%Page: 23 29
9760TeXDict begin 23 28 bop 150 -116 a Fu(Chapter)30 b(3:)41
9761b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(23)150 299
9762y Fk(3.4.1)63 b(P)m(ositional)41 b(P)m(arameters)150
9763446 y Fu(A)28 b Fr(p)s(ositional)h(parameter)35 b Fu(is)28
9764b(a)g(parameter)g(denoted)g(b)m(y)g(one)g(or)g(more)g(digits,)h(other)g
9765(than)e(the)h(single)150 555 y(digit)34 b Ft(0)p Fu(.)48
9766b(P)m(ositional)36 b(parameters)d(are)g(assigned)h(from)e(the)i
9767(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)m(v)m(ok)m(ed,)150
9768665 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)e(the)h
9769Ft(set)g Fu(builtin)f(command.)67 b(P)m(ositional)41
9770b(parameter)e Ft(N)g Fu(ma)m(y)h(b)s(e)150 775 y(referenced)34
6e51e0d0
CR
9771b(as)h Ft(${N})p Fu(,)g(or)f(as)h Ft($N)e Fu(when)h Ft(N)g
9772Fu(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
7a8455e4 9773b(parameters)d(ma)m(y)150 884 y(not)j(b)s(e)f(assigned)h(to)g(with)f
6e51e0d0
CR
9774(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Ft(set)g
9775Fu(and)g Ft(shift)f Fu(builtins)h(are)h(used)f(to)150
7a8455e4 9776994 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
e2520247 9777(Builtin)g(Commands],)h(page)f(49\).)68 b(The)39 b(p)s(ositional)150
7a8455e4 97781103 y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h
124d67cd 9779(shell)g(function)g(is)g(executed)g(\(see)h(Section)g(3.3)150
7a8455e4
CR
97801213 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(19\).)275
97811344 y(When)c(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
879213c6 9782(than)g(a)g(single)h(digit)g(is)f(expanded,)g(it)h(m)m(ust)150
7a8455e4
CR
97831454 y(b)s(e)h(enclosed)h(in)f(braces.)150 1646 y Fk(3.4.2)63
9784b(Sp)s(ecial)41 b(P)m(arameters)150 1793 y Fu(The)d(shell)g(treats)h
12beeabf
CR
9785(sev)m(eral)g(parameters)f(sp)s(ecially)-8 b(.)65 b(These)38
9786b(parameters)h(ma)m(y)f(only)g(b)s(e)g(referenced;)150
7a8455e4
CR
97871903 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
97882056 y Ft(*)432 b Fu(\($*\))38 b(Expands)d(to)i(the)f(p)s(ositional)h
6e51e0d0 9789(parameters,)h(starting)f(from)f(one.)59 b(When)36 b(the)g(ex-)630
7a8455e4
CR
97902165 y(pansion)h(is)h(not)g(within)f(double)g(quotes,)j(eac)m(h)f(p)s
9791(ositional)f(parameter)g(expands)f(to)i(a)630 2275 y(separate)23
fc35c477
CR
9792b(w)m(ord.)38 b(In)21 b(con)m(texts)j(where)e(it)g(is)h(p)s(erformed,)f
9793(those)h(w)m(ords)e(are)i(sub)5 b(ject)22 b(to)h(fur-)630
7a8455e4 97942384 y(ther)k(w)m(ord)g(splitting)i(and)e(\014lename)g(expansion.)40
fc35c477 9795b(When)27 b(the)h(expansion)f(o)s(ccurs)g(within)630
7a8455e4 97962494 y(double)37 b(quotes,)k(it)d(expands)f(to)h(a)g(single)h(w)m(ord)e
fc35c477 9797(with)h(the)f(v)-5 b(alue)39 b(of)f(eac)m(h)g(parameter)630
7a8455e4 97982604 y(separated)g(b)m(y)g(the)f(\014rst)g(c)m(haracter)i(of)f(the)g
fc35c477 9799Ft(IFS)f Fu(sp)s(ecial)h(v)-5 b(ariable.)63 b(That)38
7a8455e4 9800b(is,)h Ft("$*")e Fu(is)630 2713 y(equiv)-5 b(alen)m(t)39
fc35c477
CR
9801b(to)g Ft("$1)p Fj(c)p Ft($2)p Fj(c)p Ft(...)m(")p Fu(,)h(where)d
9802Fr(c)44 b Fu(is)38 b(the)g(\014rst)g(c)m(haracter)h(of)f(the)g(v)-5
7a8455e4 9803b(alue)39 b(of)f(the)630 2823 y Ft(IFS)29 b Fu(v)-5 b(ariable.)41
595e3e69 9804b(If)29 b Ft(IFS)g Fu(is)h(unset,)f(the)h(parameters)g(are)g(separated)
7a8455e4 9805g(b)m(y)g(spaces.)41 b(If)29 b Ft(IFS)g Fu(is)630 2932
595e3e69 9806y(n)m(ull,)i(the)f(parameters)h(are)g(joined)f(without)g(in)m(terv)m
7a8455e4 9807(ening)i(separators.)150 3085 y Ft(@)432 b Fu(\($@\))43
12beeabf 9808b(Expands)f(to)h(the)g(p)s(ositional)g(parameters,)k(starting)c(from)f
7a8455e4 9809(one.)78 b(In)42 b(con)m(texts)630 3195 y(where)35 b(w)m(ord)h
12beeabf 9810(splitting)g(is)g(p)s(erformed,)g(this)g(expands)e(eac)m(h)j(p)s
7a8455e4 9811(ositional)g(parameter)f(to)630 3304 y(a)d(separate)h(w)m(ord;)g(if)f
12beeabf 9812(not)g(within)g(double)f(quotes,)j(these)e(w)m(ords)g(are)g(sub)5
7a8455e4 9813b(ject)33 b(to)g(w)m(ord)630 3414 y(splitting.)60 b(In)36
12beeabf 9814b(con)m(texts)j(where)d(w)m(ord)g(splitting)h(is)g(not)g(p)s(erformed,)
7a8455e4 9815g(this)f(expands)g(to)630 3523 y(a)c(single)h(w)m(ord)e(with)h(eac)m(h)
12beeabf 9816h(p)s(ositional)g(parameter)f(separated)g(b)m(y)g(a)g(space.)46
7a8455e4 9817b(When)32 b(the)630 3633 y(expansion)i(o)s(ccurs)h(within)e(double)i
d37a4722 9818(quotes,)h(and)e(w)m(ord)g(splitting)h(is)g(p)s(erformed,)f(eac)m(h)630
7a8455e4 98193743 y(parameter)23 b(expands)f(to)i(a)f(separate)h(w)m(ord.)37
fc35c477 9820b(That)23 b(is,)i Ft("$@")c Fu(is)i(equiv)-5 b(alen)m(t)24
7a8455e4 9821b(to)g Ft("$1")29 b("$2")630 3852 y(...)o Fu(.)39 b(If)26
fc35c477 9822b(the)g(double-quoted)g(expansion)f(o)s(ccurs)h(within)f(a)h(w)m(ord,)h
7a8455e4 9823(the)f(expansion)g(of)g(the)630 3962 y(\014rst)31 b(parameter)h(is)g
fc35c477 9824(joined)f(with)g(the)h(b)s(eginning)f(part)h(of)f(the)h(original)h(w)m
7a8455e4 9825(ord,)f(and)f(the)630 4071 y(expansion)25 b(of)g(the)h(last)g
d37a4722 9826(parameter)f(is)h(joined)f(with)g(the)g(last)h(part)f(of)g(the)h
7a8455e4 9827(original)g(w)m(ord.)630 4181 y(When)i(there)g(are)g(no)g(p)s
d37a4722 9828(ositional)g(parameters,)h Ft("$@")e Fu(and)g Ft($@)h
7a8455e4
CR
9829Fu(expand)f(to)h(nothing)g(\(i.e.,)630 4291 y(they)j(are)f(remo)m(v)m
9830(ed\).)150 4443 y Ft(#)432 b Fu(\($#\))31 b(Expands)e(to)i(the)g(n)m
d37a4722 9831(um)m(b)s(er)e(of)h(p)s(ositional)i(parameters)e(in)g(decimal.)150
7a8455e4 98324596 y Ft(?)432 b Fu(\($?\))88 b(Expands)45 b(to)h(the)g(exit)h(status)
d37a4722 9833f(of)g(the)g(most)h(recen)m(tly)g(executed)g(foreground)630
7a8455e4 98344706 y(pip)s(eline.)150 4858 y Ft(-)432 b Fu(\($-,)24
d37a4722
CR
9835b(a)e(h)m(yphen.\))37 b(Expands)20 b(to)i(the)f(curren)m(t)h(option)f
9836(\015ags)h(as)f(sp)s(eci\014ed)g(up)s(on)f(in)m(v)m(o)s(cation,)630
7a8455e4 98374968 y(b)m(y)38 b(the)h Ft(set)f Fu(builtin)g(command,)j(or)d(those)i
d37a4722 9838(set)f(b)m(y)f(the)h(shell)g(itself)g(\(suc)m(h)g(as)g(the)g
7a8455e4 9839Ft(-i)630 5078 y Fu(option\).)150 5230 y Ft($)432 b Fu(\($$\))39
e59452c7
CR
9840b(Expands)c(to)j(the)f(pro)s(cess)g Fm(id)g Fu(of)g(the)g(shell.)61
9841b(In)36 b(a)h(subshell,)h(it)g(expands)e(to)i(the)630
7a8455e4
CR
98425340 y(pro)s(cess)30 b Fm(id)g Fu(of)h(the)g(in)m(v)m(oking)g(shell,)g
9843(not)g(the)f(subshell.)p eop end
9844%%Page: 24 30
9845TeXDict begin 24 29 bop 150 -116 a Fu(Chapter)30 b(3:)41
9846b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(24)150 299
9847y Ft(!)432 b Fu(\($!\))51 b(Expands)32 b(to)i(the)g(pro)s(cess)f
9848Fm(id)h Fu(of)f(the)h(job)f(most)h(recen)m(tly)h(placed)f(in)m(to)g
9849(the)g(bac)m(k-)630 408 y(ground,)26 b(whether)g(executed)g(as)h(an)f
9850(async)m(hronous)f(command)h(or)g(using)g(the)g Ft(bg)f
9851Fu(builtin)630 518 y(\(see)31 b(Section)h(7.2)f([Job)f(Con)m(trol)h
e2520247 9852(Builtins],)g(page)h(118\).)150 675 y Ft(0)432 b Fu(\($0\))46
7a8455e4
CR
9853b(Expands)d(to)i(the)g(name)g(of)f(the)h(shell)g(or)f(shell)h(script.)
985483 b(This)44 b(is)g(set)h(at)h(shell)630 785 y(initialization.)d(If)27
e230f997 9855b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e(a)i(\014le)e(of)h(commands)g
e2520247 9856(\(see)g(Section)h(3.8)g([Shell)630 894 y(Scripts],)g(page)g(47\),)h
e230f997 9857Ft($0)e Fu(is)h(set)g(to)g(the)f(name)h(of)f(that)h(\014le.)41
7a8455e4 9858b(If)28 b(Bash)g(is)h(started)g(with)f(the)630 1004 y
e230f997 9859Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)g
e2520247 9860(page)f(93\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630
7a8455e4 98611113 y(argumen)m(t)g(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i
e230f997 9862(if)f(one)g(is)f(presen)m(t.)42 b(Otherwise,)31 b(it)g(is)f(set)630
7a8455e4
CR
98631223 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f
9864(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150 1461
9865y Fs(3.5)68 b(Shell)45 b(Expansions)150 1621 y Fu(Expansion)27
e230f997
CR
9866b(is)i(p)s(erformed)d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)
9867s(een)f(split)h(in)m(to)i Ft(token)p Fu(s.)38 b(There)28
7a8455e4
CR
9868b(are)150 1730 y(sev)m(en)j(kinds)e(of)i(expansion)f(p)s(erformed:)225
98691863 y Fq(\017)60 b Fu(brace)31 b(expansion)225 1997
9870y Fq(\017)60 b Fu(tilde)31 b(expansion)225 2130 y Fq(\017)60
e230f997 9871b Fu(parameter)31 b(and)f(v)-5 b(ariable)31 b(expansion)225
7a8455e4
CR
98722263 y Fq(\017)60 b Fu(command)30 b(substitution)225
98732396 y Fq(\017)60 b Fu(arithmetic)32 b(expansion)225
98742529 y Fq(\017)60 b Fu(w)m(ord)30 b(splitting)225 2663
9875y Fq(\017)60 b Fu(\014lename)31 b(expansion)275 2820
e59452c7
CR
9876y(The)24 b(order)h(of)h(expansions)f(is:)39 b(brace)25
9877b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
7a8455e4 9878b(ariable)26 b(ex-)150 2929 y(pansion,)j(arithmetic)i(expansion,)f(and)
e59452c7 9879f(command)g(substitution)g(\(done)g(in)h(a)f(left-to-righ)m(t)k
7a8455e4
CR
9880(fashion\);)150 3039 y(w)m(ord)d(splitting;)h(and)f(\014lename)h
9881(expansion.)275 3172 y(On)c(systems)h(that)h(can)g(supp)s(ort)e(it,)i
e59452c7 9882(there)g(is)f(an)g(additional)i(expansion)e(a)m(v)-5
7a8455e4 9883b(ailable:)42 b Fr(pro)s(cess)28 b(sub-)150 3282 y(stitution)p
e59452c7
CR
9884Fu(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h(time)h(as)e
9885(tilde,)i(parameter,)f(v)-5 b(ariable,)32 b(and)e(arithmetic)150
7a8455e4
CR
98863391 y(expansion)g(and)g(command)g(substitution.)275
98873524 y(After)g(these)h(expansions)f(are)g(p)s(erformed,)f(quote)i(c)m
4d63a619 9888(haracters)h(presen)m(t)e(in)g(the)g(original)i(w)m(ord)e(are)150
7a8455e4 98893634 y(remo)m(v)m(ed)h(unless)f(they)h(ha)m(v)m(e)g(b)s(een)f(quoted)g
d37a4722 9890(themselv)m(es)i(\()p Fr(quote)f(remo)m(v)-5 b(al)t Fu(\).)275
7a8455e4 98913767 y(Only)31 b(brace)i(expansion,)h(w)m(ord)e(splitting,)i(and)e
e230f997 9892(\014lename)h(expansion)f(can)h(increase)g(the)g(n)m(um)m(b)s(er)150
7a8455e4 98933877 y(of)24 b(w)m(ords)g(of)g(the)h(expansion;)h(other)e(expansions)g
e230f997 9894(expand)g(a)g(single)h(w)m(ord)f(to)h(a)f(single)h(w)m(ord.)38
7a8455e4 9895b(The)24 b(only)150 3986 y(exceptions)i(to)f(this)g(are)g(the)g
e230f997 9896(expansions)g(of)g Ft("$@")f Fu(and)g Ft($*)g Fu(\(see)i(Section)f
7a8455e4 9897(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 4096 y(page)31
e59452c7 9898b(23\),)h(and)e Ft("${)p Fj(name)p Ft([@]}")d Fu(and)i
e230f997 9899Ft(${)p Fj(name)p Ft([*]})f Fu(\(see)j(Section)h(6.7)f([Arra)m(ys],)g
e2520247 9900(page)g(102\).)275 4229 y(After)41 b(all)i(expansions,)h
e230f997 9901Ft(quote)29 b(removal)40 b Fu(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m
e2520247 9902(v)-5 b(al],)47 b(page)42 b(39\))h(is)150 4339 y(p)s(erformed.)150
7a8455e4 99034535 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150 4682 y
e230f997
CR
9904Fu(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h
9905(arbitrary)f(strings)h(ma)m(y)g(b)s(e)f(generated.)43
7a8455e4 9906b(This)30 b(mec)m(h-)150 4792 y(anism)35 b(is)h(similar)f(to)h
e230f997 9907Fr(\014lename)g(expansion)f Fu(\(see)i(Section)f(3.5.8)h([Filename)g
d052bd6f 9908(Expansion],)f(page)g(36\),)150 4902 y(but)26 b(the)h(\014lenames)g
e230f997
CR
9909(generated)h(need)f(not)g(exist.)40 b(P)m(atterns)28
9910b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f(form)g(of)150
7a8455e4 99115011 y(an)j(optional)h Fr(pream)m(ble)p Fu(,)g(follo)m(w)m(ed)g(b)m(y)f
e230f997 9912(either)g(a)h(series)f(of)g(comma-separated)i(strings)d(or)h(a)h
7a8455e4 9913(sequence)150 5121 y(expression)36 b(b)s(et)m(w)m(een)g(a)h(pair)e(of)i
e230f997 9914(braces,)g(follo)m(w)m(ed)h(b)m(y)e(an)g(optional)h Fr(p)s(ostscript)p
7a8455e4 9915Fu(.)57 b(The)36 b(pream)m(ble)g(is)150 5230 y(pre\014xed)28
037a8b7f
CR
9916b(to)h(eac)m(h)h(string)f(con)m(tained)h(within)e(the)h(braces,)g(and)g
9917(the)g(p)s(ostscript)f(is)h(then)f(app)s(ended)f(to)150
7a8455e4
CR
99185340 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ)
9919m(t.)p eop end
9920%%Page: 25 31
9921TeXDict begin 25 30 bop 150 -116 a Fu(Chapter)30 b(3:)41
9922b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)275 299
9923y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
37c41ab1 9924b(The)36 b(results)g(of)h(eac)m(h)g(expanded)f(string)g(are)h(not)g
7a8455e4
CR
9925(sorted;)150 408 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
9926(ed.)41 b(F)-8 b(or)31 b(example,)390 537 y Ft(bash$)46
9927b(echo)h(a{d,c,b}e)390 647 y(ade)g(ace)g(abe)275 776
124d67cd 9928y Fu(A)23 b(sequence)g(expression)g(tak)m(es)i(the)e(form)g
6e51e0d0
CR
9929Ft({)p Fj(x)p Ft(..)p Fj(y)p Ft([..)p Fj(incr)p Ft(]})p
9930Fu(,)e(where)i Fr(x)29 b Fu(and)23 b Fr(y)30 b Fu(are)24
7a8455e4 9931b(either)g(in)m(tegers)150 886 y(or)34 b(letters,)i(and)d
e59452c7
CR
9932Fr(incr)p Fu(,)h(an)g(optional)g(incremen)m(t,)i(is)d(an)h(in)m(teger.)
993352 b(When)33 b(in)m(tegers)i(are)f(supplied,)g(the)150
7a8455e4 9934995 y(expression)f(expands)f(to)i(eac)m(h)g(n)m(um)m(b)s(er)e(b)s(et)m
e59452c7 9935(w)m(een)i Fr(x)39 b Fu(and)33 b Fr(y)p Fu(,)h(inclusiv)m(e.)50
7a8455e4 9936b(Supplied)31 b(in)m(tegers)k(ma)m(y)f(b)s(e)150 1105
e59452c7
CR
9937y(pre\014xed)h(with)h(`)p Ft(0)p Fu(')g(to)h(force)g(eac)m(h)h(term)e
9938(to)h(ha)m(v)m(e)g(the)g(same)g(width.)57 b(When)36 b(either)h
7a8455e4 9939Fr(x)42 b Fu(or)37 b Fr(y)43 b Fu(b)s(egins)150 1214
e59452c7
CR
9940y(with)37 b(a)h(zero,)j(the)c(shell)h(attempts)h(to)f(force)g(all)g
9941(generated)h(terms)e(to)i(con)m(tain)g(the)e(same)h(n)m(um)m(b)s(er)150
7a8455e4 99421324 y(of)30 b(digits,)h(zero-padding)f(where)f(necessary)-8
e59452c7 9943b(.)41 b(When)30 b(letters)g(are)h(supplied,)d(the)i(expression)g
7a8455e4
CR
9944(expands)150 1433 y(to)k(eac)m(h)g(c)m(haracter)h(lexicographically)h
9945(b)s(et)m(w)m(een)e Fr(x)40 b Fu(and)32 b Fr(y)p Fu(,)i(inclusiv)m(e,)i
9946(using)c(the)i(default)f(C)g(lo)s(cale.)150 1543 y(Note)f(that)f(b)s
9947(oth)f Fr(x)37 b Fu(and)30 b Fr(y)38 b Fu(m)m(ust)31
9948b(b)s(e)f(of)h(the)g(same)g(t)m(yp)s(e)g(\(in)m(teger)h(or)f(letter\).)
994943 b(When)30 b(the)h(incremen)m(t)150 1653 y(is)e(supplied,)g(it)h(is)f
e59452c7
CR
9950(used)f(as)i(the)f(di\013erence)h(b)s(et)m(w)m(een)g(eac)m(h)g(term.)41
9951b(The)29 b(default)g(incremen)m(t)h(is)f(1)h(or)f(-1)150
7a8455e4 99521762 y(as)i(appropriate.)275 1891 y(Brace)36 b(expansion)g(is)f(p)s
e59452c7 9953(erformed)f(b)s(efore)h(an)m(y)h(other)g(expansions,)h(and)e(an)m(y)g
7a8455e4
CR
9954(c)m(haracters)i(sp)s(ecial)150 2001 y(to)32 b(other)g(expansions)g
9955(are)g(preserv)m(ed)f(in)h(the)f(result.)45 b(It)32 b(is)g(strictly)g
9956(textual.)46 b(Bash)32 b(do)s(es)f(not)h(apply)150 2110
e59452c7
CR
9957y(an)m(y)27 b(syn)m(tactic)i(in)m(terpretation)g(to)f(the)f(con)m(text)
9958i(of)e(the)g(expansion)g(or)g(the)h(text)g(b)s(et)m(w)m(een)f(the)h
7a8455e4 9959(braces.)275 2239 y(A)h(correctly-formed)i(brace)f(expansion)f(m)m(ust)
e59452c7 9960h(con)m(tain)h(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
7a8455e4 99612349 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
4d63a619 9962b(alid)33 b(sequence)g(expression.)48 b(An)m(y)33 b(incorrectly)h
7a8455e4
CR
9963(formed)150 2458 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
99642587 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
091c6bc4 9965h(with)f(a)g(bac)m(kslash)h(to)g(prev)m(en)m(t)g(its)g(b)s(eing)f
7a8455e4 9966(considered)g(part)g(of)h(a)g(brace)150 2697 y(expression.)51
091c6bc4
CR
9967b(T)-8 b(o)34 b(a)m(v)m(oid)i(con\015icts)e(with)g(parameter)g
9968(expansion,)h(the)f(string)g(`)p Ft(${)p Fu(')g(is)g(not)g(considered)
7a8455e4 9969150 2807 y(eligible)e(for)e(brace)h(expansion,)f(and)g(inhibits)g
091c6bc4 9970(brace)h(expansion)f(un)m(til)g(the)h(closing)h(`)p Ft(})p
7a8455e4 9971Fu('.)275 2936 y(This)e(construct)h(is)g(t)m(ypically)i(used)d(as)h
091c6bc4 9972(shorthand)f(when)g(the)h(common)g(pre\014x)f(of)h(the)g(strings)g(to)
7a8455e4
CR
9973150 3045 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m
9974(v)m(e)i(example:)390 3174 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o
9975(ew,)o(dist)o(,bug)o(s})275 3303 y Fu(or)390 3432 y Ft(chown)g(root)h
d37a4722 9976(/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
7a8455e4 99773620 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 3767 y
d37a4722 9978Fu(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
e230f997 9979(haracter)h(\(`)p Ft(~)p Fu('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
7a8455e4 9980d(to)j(the)f(\014rst)150 3877 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
e230f997 9981(haracters,)h(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g
7a8455e4 9982(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 3986 y(If)38
e230f997
CR
9983b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f(are)h
9984(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
7a8455e4 99854096 y(follo)m(wing)28 b(the)g(tilde)f(are)h(treated)g(as)f(a)g(p)s
4d63a619 9986(ossible)g Fr(login)h(name)p Fu(.)39 b(If)27 b(this)g(login)h(name)f
7a8455e4 9987(is)g(the)g(n)m(ull)g(string,)150 4205 y(the)35 b(tilde)g(is)g
d37a4722
CR
9988(replaced)g(with)f(the)h(v)-5 b(alue)35 b(of)g(the)g
9989Ft(HOME)e Fu(shell)i(v)-5 b(ariable.)54 b(If)34 b Ft(HOME)g
7a8455e4 9990Fu(is)h(unset,)g(the)g(home)150 4315 y(directory)e(of)g(the)f(user)g
d37a4722 9991(executing)i(the)e(shell)h(is)f(substituted)g(instead.)47
7a8455e4 9992b(Otherwise,)33 b(the)g(tilde-pre\014x)150 4425 y(is)d(replaced)h(with)
d37a4722 9993f(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)
7a8455e4 9994e(login)j(name.)275 4554 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
4d63a619
CR
9995Ft(~+)p Fu(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
9996b(ariable)34 b Ft(PWD)d Fu(replaces)j(the)f(tilde-pre\014x.)47
7a8455e4 9997b(If)150 4663 y(the)31 b(tilde-pre\014x)f(is)g(`)p Ft(~-)p
4d63a619
CR
9998Fu(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
9999b(ariable)31 b Ft(OLDPWD)p Fu(,)e(if)h(it)h(is)g(set,)g(is)f
7a8455e4 10000(substituted.)275 4792 y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the)
4d63a619 10001e(tilde)g(in)g(the)g(tilde-pre\014x)g(consist)g(of)g(a)h(n)m(um)m(b)s
7a8455e4 10002(er)d Fr(N)p Fu(,)j(optionally)150 4902 y(pre\014xed)22
4d63a619
CR
10003b(b)m(y)h(a)h(`)p Ft(+)p Fu(')f(or)h(a)f(`)p Ft(-)p Fu(',)j(the)d
10004(tilde-pre\014x)g(is)h(replaced)f(with)g(the)h(corresp)s(onding)e
7a8455e4 10005(elemen)m(t)j(from)e(the)150 5011 y(directory)36 b(stac)m(k,)i(as)e(it)
4d63a619
CR
10006g(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)g(the)f
10007Ft(dirs)g Fu(builtin)g(in)m(v)m(ok)m(ed)i(with)e(the)g(c)m(haracters)
7a8455e4 10008150 5121 y(follo)m(wing)40 b(tilde)f(in)g(the)f(tilde-pre\014x)h(as)g
4d63a619 10009(an)f(argumen)m(t)h(\(see)h(Section)f(6.8)h([The)e(Directory)i(Stac)m
e2520247 10010(k],)150 5230 y(page)34 b(104\).)50 b(If)32 b(the)h(tilde-pre\014x,)h
e59452c7 10011(sans)e(the)h(tilde,)i(consists)e(of)g(a)h(n)m(um)m(b)s(er)d(without)i
7a8455e4
CR
10012(a)g(leading)h(`)p Ft(+)p Fu(')f(or)150 5340 y(`)p Ft(-)p
10013Fu(',)e(`)p Ft(+)p Fu(')f(is)h(assumed.)p eop end
e59452c7
CR
10014%%Page: 26 32
10015TeXDict begin 26 31 bop 150 -116 a Fu(Chapter)30 b(3:)41
7a8455e4
CR
10016b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(26)275 299
10017y(If)29 b(the)i(login)g(name)g(is)f(in)m(v)-5 b(alid,)31
10018b(or)g(the)f(tilde)h(expansion)f(fails,)i(the)e(w)m(ord)g(is)h(left)g
10019(unc)m(hanged.)275 438 y(Eac)m(h)38 b(v)-5 b(ariable)38
10020b(assignmen)m(t)h(is)e(c)m(hec)m(k)m(ed)j(for)d(unquoted)g
10021(tilde-pre\014xes)h(immediately)g(follo)m(wing)150 547
10022y(a)d(`)p Ft(:)p Fu(')g(or)g(the)g(\014rst)f(`)p Ft(=)p
10023Fu('.)54 b(In)34 b(these)h(cases,)i(tilde)e(expansion)g(is)g(also)h(p)s
10024(erformed.)52 b(Consequen)m(tly)-8 b(,)37 b(one)150 657
10025y(ma)m(y)29 b(use)e(\014lenames)h(with)g(tildes)g(in)g(assignmen)m(ts)g
10026(to)h Ft(PATH)p Fu(,)f Ft(MAILPATH)p Fu(,)e(and)h Ft(CDPATH)p
10027Fu(,)g(and)h(the)g(shell)150 766 y(assigns)j(the)f(expanded)g(v)-5
10028b(alue.)275 905 y(The)29 b(follo)m(wing)j(table)g(sho)m(ws)e(ho)m(w)g
10029(Bash)h(treats)g(unquoted)e(tilde-pre\014xes:)150 1071
10030y Ft(~)432 b Fu(The)30 b(v)-5 b(alue)31 b(of)f Ft($HOME)150
100311234 y(~/foo)240 b($HOME/foo)150 1398 y(~fred/foo)630
100321508 y Fu(The)30 b(sub)s(directory)f Ft(foo)h Fu(of)g(the)h(home)f
10033(directory)h(of)g(the)f(user)g Ft(fred)150 1671 y(~+/foo)192
10034b($PWD/foo)150 1835 y(~-/foo)g(${OLDPWD-'~-'}/foo)150
100351998 y(~)p Fj(N)384 b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g
10036(displa)m(y)m(ed)h(b)m(y)f(`)p Ft(dirs)g(+)p Fj(N)p Fu(')150
100372162 y Ft(~+)p Fj(N)336 b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)
10038g(displa)m(y)m(ed)h(b)m(y)f(`)p Ft(dirs)g(+)p Fj(N)p
10039Fu(')150 2326 y Ft(~-)p Fj(N)336 b Fu(The)30 b(string)g(that)h(w)m
10040(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p Ft(dirs)g(-)p
10041Fj(N)p Fu(')275 2491 y(Bash)40 b(also)h(p)s(erforms)e(tilde)h
10042(expansion)g(on)h(w)m(ords)e(satisfying)i(the)f(conditions)h(of)f(v)-5
10043b(ariable)41 b(as-)150 2601 y(signmen)m(ts)f(\(see)h(Section)g(3.4)g
10044([Shell)f(P)m(arameters],)k(page)d(21\))g(when)e(they)h(app)s(ear)f(as)
10045i(argumen)m(ts)150 2710 y(to)c(simple)f(commands.)57
10046b(Bash)36 b(do)s(es)f(not)h(do)g(this,)i(except)f(for)e(the)h
10047(declaration)i(commands)d(listed)150 2820 y(ab)s(o)m(v)m(e,)d(when)d
10048(in)h Fm(posix)g Fu(mo)s(de.)150 3024 y Fk(3.5.3)63 b(Shell)41
10049b(P)m(arameter)f(Expansion)150 3170 y Fu(The)g(`)p Ft($)p
10050Fu(')h(c)m(haracter)i(in)m(tro)s(duces)d(parameter)h(expansion,)j
10051(command)d(substitution,)i(or)e(arithmetic)150 3280 y(expansion.)d(The)
1005222 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)g(b)s(e)e(expanded)h(ma)
10053m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m(h)150
100543390 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g(v)-5
10055b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
10056(immediately)150 3499 y(follo)m(wing)g(it)f(whic)m(h)f(could)g(b)s(e)g
10057(in)m(terpreted)h(as)f(part)h(of)f(the)h(name.)275 3638
e59452c7
CR
10058y(When)44 b(braces)i(are)f(used,)j(the)e(matc)m(hing)g(ending)f(brace)g
10059(is)g(the)g(\014rst)g(`)p Ft(})p Fu(')g(not)g(escap)s(ed)h(b)m(y)f(a)
7a8455e4 10060150 3748 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,)j(and)c
e59452c7 10061(not)i(within)e(an)h(em)m(b)s(edded)f(arithmetic)j(expansion,)150
7a8455e4
CR
100623857 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275
100633996 y(The)40 b(basic)i(form)f(of)g(parameter)h(expansion)f(is)h($)p
b52e30b8 10064Fi({)p Fr(parameter)7 b Fi(})p Fu(.)74 b(The)41 b(v)-5
7a8455e4 10065b(alue)42 b(of)g Fr(parameter)48 b Fu(is)150 4105 y(substituted.)43
b52e30b8
CR
10066b(The)31 b Fr(parameter)39 b Fu(is)31 b(a)h(shell)f(parameter)h(as)g
10067(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)h([Shell)150
7a8455e4 100684215 y(P)m(arameters],)28 b(page)f(21\))g(or)f(an)f(arra)m(y)h
e2520247 10069(reference)h(\(see)f(Section)h(6.7)g([Arra)m(ys],)g(page)g(102\).)41
7a8455e4 10070b(The)25 b(braces)150 4325 y(are)32 b(required)g(when)f
d37a4722 10071Fr(parameter)39 b Fu(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
7a8455e4 10072(more)g(than)g(one)g(digit,)i(or)e(when)150 4434 y Fr(parameter)37
d37a4722
CR
10073b Fu(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
10074(not)h(to)g(b)s(e)f(in)m(terpreted)g(as)h(part)f(of)h(its)f(name.)275
7a8455e4 100754573 y(If)k(the)h(\014rst)f(c)m(haracter)i(of)f Fr(parameter)42
8a0829e9 10076b Fu(is)35 b(an)g(exclamation)i(p)s(oin)m(t)e(\(!\),)i(and)d
7a8455e4 10077Fr(parameter)42 b Fu(is)34 b(not)i(a)150 4682 y(nameref,)c(it)f(in)m
e59452c7
CR
10078(tro)s(duces)h(a)f(lev)m(el)i(of)f(indirection.)44 b(Bash)31
10079b(uses)g(the)g(v)-5 b(alue)32 b(formed)f(b)m(y)g(expanding)g(the)150
7a8455e4 100804792 y(rest)c(of)f Fr(parameter)33 b Fu(as)27 b(the)g(new)f
e59452c7 10081Fr(parameter)7 b Fu(;)28 b(this)e(is)g(then)g(expanded)g(and)g(that)h
7a8455e4 10082(v)-5 b(alue)27 b(is)f(used)g(in)g(the)150 4902 y(rest)33
e59452c7
CR
10083b(of)f(the)h(expansion,)g(rather)g(than)f(the)h(expansion)f(of)h(the)g
10084(original)g Fr(parameter)p Fu(.)48 b(This)32 b(is)g(kno)m(wn)150
7a8455e4 100855011 y(as)42 b Ft(indirect)28 b(expansion)p Fu(.)71 b(The)41
e59452c7 10086b(v)-5 b(alue)41 b(is)h(sub)5 b(ject)41 b(to)h(tilde)g(expansion,)i
7a8455e4 10087(parameter)e(expansion,)150 5121 y(command)31 b(substitution,)g(and)g
e59452c7 10088(arithmetic)h(expansion.)43 b(If)31 b Fr(parameter)38
7a8455e4 10089b Fu(is)32 b(a)f(nameref,)h(this)f(expands)150 5230 y(to)d(the)g(name)g
e59452c7
CR
10090(of)f(the)h(v)-5 b(ariable)28 b(referenced)g(b)m(y)f
10091Fr(parameter)35 b Fu(instead)27 b(of)h(p)s(erforming)e(the)i(complete)h
7a8455e4 10092(in-)150 5340 y(direct)e(expansion.)39 b(The)25 b(exceptions)i(to)g
e59452c7
CR
10093(this)f(are)h(the)f(expansions)g(of)g($)p Fi({)p Fu(!)p
10094Fr(pre\014x)6 b Fu(*)p Fi(})28 b Fu(and)d($)p Fi({)p
7a8455e4
CR
10095Fu(!)p Fr(name)5 b Fu([@])p Fi(})p eop end
10096%%Page: 27 33
10097TeXDict begin 27 32 bop 150 -116 a Fu(Chapter)30 b(3:)41
10098b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)150 299
10099y(describ)s(ed)28 b(b)s(elo)m(w.)41 b(The)28 b(exclamation)j(p)s(oin)m
10100(t)f(m)m(ust)f(immediately)h(follo)m(w)g(the)g(left)f(brace)h(in)f
10101(order)f(to)150 408 y(in)m(tro)s(duce)i(indirection.)275
10102547 y(In)39 b(eac)m(h)i(of)g(the)f(cases)h(b)s(elo)m(w,)i
10103Fr(w)m(ord)h Fu(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j
10104(parameter)e(expansion,)150 657 y(command)30 b(substitution,)g(and)g
237c32ba
CR
10105(arithmetic)i(expansion.)275 795 y(When)e(not)h(p)s(erforming)e
10106(substring)g(expansion,)i(using)f(the)h(forms)f(describ)s(ed)f(b)s(elo)
10107m(w)i(\(e.g.,)h(`)p Ft(:-)p Fu('\),)150 905 y(Bash)h(tests)h(for)e(a)i
9f178efb 10108(parameter)f(that)h(is)e(unset)h(or)g(n)m(ull.)48 b(Omitting)33
7a8455e4 10109b(the)h(colon)f(results)g(in)g(a)g(test)h(only)150 1015
9f178efb
CR
10110y(for)c(a)i(parameter)f(that)g(is)g(unset.)41 b(Put)31
10111b(another)f(w)m(a)m(y)-8 b(,)33 b(if)e(the)f(colon)i(is)f(included,)f
7a8455e4 10112(the)h(op)s(erator)g(tests)150 1124 y(for)36 b(b)s(oth)g
879213c6
CR
10113Fr(parameter)7 b Fu('s)37 b(existence)h(and)e(that)i(its)f(v)-5
10114b(alue)37 b(is)g(not)f(n)m(ull;)k(if)d(the)g(colon)h(is)e(omitted,)k
7a8455e4
CR
10115(the)150 1234 y(op)s(erator)31 b(tests)g(only)f(for)g(existence.)150
101161399 y Ft(${)p Fj(parameter)p Ft(:)p Fq(\000)p Fj(word)p
10117Ft(})630 1509 y Fu(If)g Fr(parameter)37 b Fu(is)30 b(unset)g(or)h(n)m
10118(ull,)f(the)h(expansion)f(of)g Fr(w)m(ord)k Fu(is)c(substituted.)40
10119b(Otherwise,)630 1619 y(the)31 b(v)-5 b(alue)30 b(of)h
10120Fr(parameter)37 b Fu(is)31 b(substituted.)870 1755 y
10121Ft($)47 b(v=123)870 1865 y($)g(echo)g(${v-unset})870
101221974 y(123)150 2138 y(${)p Fj(parameter)p Ft(:=)p Fj(word)p
10123Ft(})630 2248 y Fu(If)33 b Fr(parameter)40 b Fu(is)33
10124b(unset)f(or)h(n)m(ull,)h(the)f(expansion)g(of)g Fr(w)m(ord)j
10125Fu(is)d(assigned)g(to)h Fr(parameter)p Fu(.)630 2357
10126y(The)c(v)-5 b(alue)32 b(of)f Fr(parameter)38 b Fu(is)31
10127b(then)g(substituted.)42 b(P)m(ositional)33 b(parameters)e(and)f(sp)s
10128(ecial)630 2467 y(parameters)h(ma)m(y)g(not)f(b)s(e)g(assigned)h(to)g
10129(in)f(this)g(w)m(a)m(y)-8 b(.)870 2603 y Ft($)47 b(var=)870
101302713 y($)g(:)h(${var:=DEFAULT})870 2823 y($)f(echo)g($var)870
101312932 y(DEFAULT)150 3096 y(${)p Fj(parameter)p Ft(:?)p
10132Fj(word)p Ft(})630 3205 y Fu(If)26 b Fr(parameter)33
10133b Fu(is)26 b(n)m(ull)g(or)g(unset,)h(the)f(expansion)g(of)g
10134Fr(w)m(ord)k Fu(\(or)c(a)h(message)g(to)g(that)f(e\013ect)630
101353315 y(if)i Fr(w)m(ord)j Fu(is)d(not)g(presen)m(t\))h(is)f(written)g
e59452c7 10136(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)h(is)f(not)
7a8455e4 10137630 3425 y(in)m(teractiv)m(e,)33 b(exits.)42 b(Otherwise,)30
e59452c7 10138b(the)h(v)-5 b(alue)31 b(of)f Fr(parameter)38 b Fu(is)30
7a8455e4
CR
10139b(substituted.)870 3561 y Ft($)47 b(var=)870 3671 y($)g(:)h(${var:?var)
10140d(is)i(unset)f(or)i(null})870 3780 y(bash:)e(var:)h(var)g(is)g(unset)f
10141(or)i(null)150 3944 y(${)p Fj(parameter)p Ft(:+)p Fj(word)p
10142Ft(})630 4053 y Fu(If)35 b Fr(parameter)42 b Fu(is)36
e59452c7 10143b(n)m(ull)f(or)h(unset,)g(nothing)g(is)f(substituted,)i(otherwise)e
7a8455e4
CR
10144(the)h(expansion)630 4163 y(of)31 b Fr(w)m(ord)i Fu(is)e(substituted.)
10145870 4300 y Ft($)47 b(var=123)870 4409 y($)g(echo)g(${var:+var)e(is)i
10146(set)g(and)g(not)g(null})870 4519 y(var)g(is)g(set)g(and)g(not)g(null)
10147150 4682 y(${)p Fj(parameter)p Ft(:)p Fj(offset)p Ft(})150
101484792 y(${)p Fj(parameter)p Ft(:)p Fj(offset)p Ft(:)p
10149Fj(lengt)o(h)p Ft(})630 4902 y Fu(This)30 b(is)h(referred)f(to)h(as)g
e59452c7 10150(Substring)f(Expansion.)41 b(It)31 b(expands)f(to)h(up)f(to)h
7a8455e4 10151Fr(length)g Fu(c)m(harac-)630 5011 y(ters)k(of)g(the)h(v)-5
e59452c7
CR
10152b(alue)35 b(of)g Fr(parameter)42 b Fu(starting)36 b(at)g(the)f(c)m
10153(haracter)i(sp)s(eci\014ed)d(b)m(y)h Fr(o\013set)p Fu(.)55
7a8455e4
CR
10154b(If)630 5121 y Fr(parameter)41 b Fu(is)35 b(`)p Ft(@)p
10155Fu(')f(or)h(`)p Ft(*)p Fu(',)g(an)g(indexed)f(arra)m(y)g(subscripted)g
10156(b)m(y)g(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(or)g(an)f(asso-)630
101575230 y(ciativ)m(e)i(arra)m(y)e(name,)h(the)f(results)f(di\013er)g(as)h
10158(describ)s(ed)e(b)s(elo)m(w.)51 b(If)33 b Fr(length)h
10159Fu(is)g(omitted,)630 5340 y(it)d(expands)f(to)h(the)g(substring)e(of)h
10160(the)h(v)-5 b(alue)31 b(of)g Fr(parameter)37 b Fu(starting)31
10161b(at)h(the)e(c)m(haracter)p eop end
e59452c7
CR
10162%%Page: 28 34
10163TeXDict begin 28 33 bop 150 -116 a Fu(Chapter)30 b(3:)41
10164b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(28)630 299
7a8455e4
CR
10165y(sp)s(eci\014ed)30 b(b)m(y)g Fr(o\013set)k Fu(and)c(extending)h(to)g
10166(the)g(end)f(of)g(the)h(v)-5 b(alue.)42 b Fr(length)31
10167b Fu(and)f Fr(o\013set)k Fu(are)630 408 y(arithmetic)e(expressions)e
e2520247 10168(\(see)h(Section)g(6.5)h([Shell)e(Arithmetic],)i(page)f(100\).)630
7a8455e4
CR
10169555 y(If)39 b Fr(o\013set)k Fu(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m
10170(b)s(er)f(less)h(than)f(zero,)k(the)d(v)-5 b(alue)40
10171b(is)g(used)e(as)i(an)g(o\013set)630 664 y(in)33 b(c)m(haracters)i
10172(from)f(the)f(end)g(of)h(the)g(v)-5 b(alue)34 b(of)g
10173Fr(parameter)p Fu(.)51 b(If)33 b Fr(length)h Fu(ev)-5
10174b(aluates)35 b(to)g(a)630 774 y(n)m(um)m(b)s(er)23 b(less)h(than)g
10175(zero,)j(it)d(is)h(in)m(terpreted)f(as)g(an)h(o\013set)g(in)f(c)m
10176(haracters)h(from)f(the)g(end)g(of)630 883 y(the)31 b(v)-5
10177b(alue)31 b(of)g Fr(parameter)38 b Fu(rather)30 b(than)h(a)g(n)m(um)m
10178(b)s(er)f(of)g(c)m(haracters,)j(and)d(the)h(expansion)630
10179993 y(is)39 b(the)g(c)m(haracters)i(b)s(et)m(w)m(een)f
10180Fr(o\013set)i Fu(and)c(that)i(result.)67 b(Note)40 b(that)g(a)g
10181(negativ)m(e)h(o\013set)630 1103 y(m)m(ust)27 b(b)s(e)g(separated)g
10182(from)g(the)g(colon)i(b)m(y)e(at)h(least)g(one)f(space)h(to)g(a)m(v)m
10183(oid)h(b)s(eing)e(confused)630 1212 y(with)j(the)h(`)p
10184Ft(:-)p Fu(')f(expansion.)630 1358 y(Here)43 b(are)g(some)f(examples)h
10185(illustrating)g(substring)f(expansion)g(on)g(parameters)h(and)630
101861468 y(subscripted)29 b(arra)m(ys:)630 1614 y Ft($)47
10187b(string=01234567890abcdefgh)630 1724 y($)g(echo)g(${string:7})630
101881833 y(7890abcdefgh)630 1943 y($)g(echo)g(${string:7:0})630
101892162 y($)g(echo)g(${string:7:2})630 2271 y(78)630 2381
10190y($)g(echo)g(${string:7:-2})630 2491 y(7890abcdef)630
101912600 y($)g(echo)g(${string:)e(-7})630 2710 y(bcdefgh)630
101922819 y($)i(echo)g(${string:)e(-7:0})630 3039 y($)i(echo)g(${string:)e
10193(-7:2})630 3148 y(bc)630 3258 y($)i(echo)g(${string:)e(-7:-2})630
101943367 y(bcdef)630 3477 y($)i(set)g(--)h(01234567890abcdefgh)630
101953587 y($)f(echo)g(${1:7})630 3696 y(7890abcdefgh)630
101963806 y($)g(echo)g(${1:7:0})630 4025 y($)g(echo)g(${1:7:2})630
101974134 y(78)630 4244 y($)g(echo)g(${1:7:-2})630 4354 y(7890abcdef)630
101984463 y($)g(echo)g(${1:)g(-7})630 4573 y(bcdefgh)630 4682
10199y($)g(echo)g(${1:)g(-7:0})630 4902 y($)g(echo)g(${1:)g(-7:2})630
102005011 y(bc)630 5121 y($)g(echo)g(${1:)g(-7:-2})630 5230
10201y(bcdef)630 5340 y($)g(array[0]=01234567890abcdef)o(gh)p
e59452c7
CR
10202eop end
10203%%Page: 29 35
10204TeXDict begin 29 34 bop 150 -116 a Fu(Chapter)30 b(3:)41
10205b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)630 299
7a8455e4
CR
10206y Ft($)47 b(echo)g(${array[0]:7})630 408 y(7890abcdefgh)630
10207518 y($)g(echo)g(${array[0]:7:0})630 737 y($)g(echo)g(${array[0]:7:2})
10208630 847 y(78)630 956 y($)g(echo)g(${array[0]:7:-2})630
102091066 y(7890abcdef)630 1176 y($)g(echo)g(${array[0]:)e(-7})630
102101285 y(bcdefgh)630 1395 y($)i(echo)g(${array[0]:)e(-7:0})630
102111614 y($)i(echo)g(${array[0]:)e(-7:2})630 1724 y(bc)630
102121833 y($)i(echo)g(${array[0]:)e(-7:-2})630 1943 y(bcdef)630
d052bd6f 102132074 y Fu(If)34 b Fr(parameter)41 b Fu(is)35 b(`)p Ft(@)p
7a8455e4 10214Fu(')f(or)h(`)p Ft(*)p Fu(',)h(the)e(result)g(is)h Fr(length)g
d052bd6f
CR
10215Fu(p)s(ositional)g(parameters)g(b)s(eginning)630 2184
10216y(at)j Fr(o\013set)p Fu(.)62 b(A)37 b(negativ)m(e)j Fr(o\013set)g
10217Fu(is)d(tak)m(en)i(relativ)m(e)g(to)f(one)f(greater)i(than)e(the)g
10218(greatest)630 2293 y(p)s(ositional)23 b(parameter,)h(so)e(an)g
10219(o\013set)h(of)g(-1)f(ev)-5 b(aluates)24 b(to)f(the)f(last)h(p)s
10220(ositional)f(parameter)630 2403 y(\(or)34 b(0)g(if)g(there)g(are)g(no)f
10221(p)s(ositional)i(parameters\).)51 b(It)34 b(is)g(an)f(expansion)h
10222(error)f(if)h Fr(length)630 2513 y Fu(ev)-5 b(aluates)32
10223b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero.)630
102242644 y(The)i(follo)m(wing)i(examples)f(illustrate)h(substring)d
10225(expansion)i(using)f(p)s(ositional)h(param-)630 2754
10226y(eters:)630 2885 y Ft($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f(7)h(8)
10227f(9)h(0)f(a)h(b)f(c)g(d)h(e)f(f)h(g)f(h)630 2995 y($)g(echo)g(${@:7})
10228630 3104 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h(g)f(h)630
102293214 y($)g(echo)g(${@:7:0})630 3433 y($)g(echo)g(${@:7:2})630
102303543 y(7)g(8)630 3652 y($)g(echo)g(${@:7:-2})630 3762
10231y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630 3871
10232y($)g(echo)g(${@:)g(-7:2})630 3981 y(b)g(c)630 4091 y($)g(echo)g
10233(${@:0})630 4200 y(./bash)f(1)i(2)f(3)g(4)h(5)f(6)h(7)f(8)h(9)f(0)h(a)f
10234(b)h(c)f(d)g(e)h(f)f(g)h(h)630 4310 y($)f(echo)g(${@:0:2})630
102354419 y(./bash)f(1)630 4529 y($)h(echo)g(${@:)g(-7:0})630
102364770 y Fu(If)36 b Fr(parameter)43 b Fu(is)36 b(an)g(indexed)g(arra)m(y)
1a5fa30b 10237g(name)g(subscripted)f(b)m(y)h(`)p Ft(@)p Fu(')g(or)h(`)p
d052bd6f 10238Ft(*)p Fu(',)h(the)e(result)g(is)630 4880 y(the)j Fr(length)g
6e51e0d0
CR
10239Fu(mem)m(b)s(ers)f(of)h(the)f(arra)m(y)i(b)s(eginning)d(with)i
10240Ft(${)p Fj(parameter)p Ft([)p Fj(offset)p Ft(]})p Fu(.)60
d052bd6f 10241b(A)630 4989 y(negativ)m(e)33 b Fr(o\013set)g Fu(is)e(tak)m(en)h
6e51e0d0 10242(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f(maxim)m(um)h(index)f
d052bd6f 10243(of)h(the)630 5099 y(sp)s(eci\014ed)38 b(arra)m(y)-8
d37a4722
CR
10244b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i Fr(length)f
10245Fu(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
d052bd6f 102465208 y(than)30 b(zero.)630 5340 y(These)23 b(examples)i(sho)m(w)e(ho)m
d37a4722 10247(w)h(y)m(ou)g(can)g(use)f(substring)f(expansion)i(with)f(indexed)g
d052bd6f 10248(arra)m(ys:)p eop end
e59452c7
CR
10249%%Page: 30 36
10250TeXDict begin 30 35 bop 150 -116 a Fu(Chapter)30 b(3:)41
10251b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(30)630 299
d052bd6f
CR
10252y Ft($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)f(8)h(9)f(0)h(a)f(b)g
10253(c)h(d)f(e)h(f)f(g)h(h\))630 408 y($)f(echo)g(${array[@]:7})630
10254518 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h(g)f(h)630
10255628 y($)g(echo)g(${array[@]:7:2})630 737 y(7)g(8)630
10256847 y($)g(echo)g(${array[@]:)e(-7:2})630 956 y(b)i(c)630
102571066 y($)g(echo)g(${array[@]:)e(-7:-2})630 1176 y(bash:)h(-2:)h
10258(substring)f(expression)f(<)i(0)630 1285 y($)g(echo)g(${array[@]:0})630
102591395 y(0)g(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
10260(f)h(g)f(h)630 1504 y($)g(echo)g(${array[@]:0:2})630
102611614 y(0)g(1)630 1724 y($)g(echo)g(${array[@]:)e(-7:0})630
102621965 y Fu(Substring)25 b(expansion)g(applied)h(to)h(an)f(asso)s(ciativ)
10263m(e)j(arra)m(y)d(pro)s(duces)f(unde\014ned)f(results.)630
102642096 y(Substring)32 b(indexing)i(is)f(zero-based)i(unless)e(the)h(p)s
10265(ositional)g(parameters)g(are)g(used,)g(in)630 2206 y(whic)m(h)29
fc527055
CR
10266b(case)i(the)f(indexing)g(starts)g(at)g(1)g(b)m(y)g(default.)41
10267b(If)29 b Fr(o\013set)k Fu(is)d(0,)g(and)f(the)h(p)s(ositional)630
d052bd6f
CR
102682315 y(parameters)h(are)f(used,)g Ft($0)g Fu(is)g(pre\014xed)g(to)h
10269(the)f(list.)150 2469 y Ft(${!)p Fj(prefix)p Ft(*})150
102702578 y(${!)p Fj(prefix)p Ft(@})630 2688 y Fu(Expands)24
879213c6
CR
10271b(to)h(the)g(names)g(of)g(v)-5 b(ariables)26 b(whose)f(names)f(b)s
10272(egin)h(with)f Fr(pre\014x)p Fu(,)i(separated)f(b)m(y)630
d052bd6f 102732798 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Ft(IFS)f
879213c6 10274Fu(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Ft(@)p
d052bd6f 10275Fu(')g(is)g(used)f(and)h(the)g(expan-)630 2907 y(sion)35
879213c6
CR
10276b(app)s(ears)g(within)f(double)h(quotes,)i(eac)m(h)f(v)-5
10277b(ariable)36 b(name)f(expands)g(to)g(a)h(separate)630
d052bd6f
CR
102783017 y(w)m(ord.)150 3170 y Ft(${!)p Fj(name)p Ft([@]})150
102793280 y(${!)p Fj(name)p Ft([*]})630 3389 y Fu(If)26 b
e59452c7
CR
10280Fr(name)32 b Fu(is)27 b(an)f(arra)m(y)h(v)-5 b(ariable,)29
10281b(expands)d(to)h(the)g(list)g(of)g(arra)m(y)g(indices)g(\(k)m(eys\))h
d052bd6f 10282(assigned)630 3499 y(in)c Fr(name)p Fu(.)39 b(If)24 b
e59452c7
CR
10283Fr(name)30 b Fu(is)24 b(not)h(an)f(arra)m(y)-8 b(,)27
10284b(expands)c(to)j(0)f(if)f Fr(name)30 b Fu(is)24 b(set)h(and)f(n)m(ull)g
d052bd6f 10285(otherwise.)630 3608 y(When)39 b(`)p Ft(@)p Fu(')h(is)f(used)g(and)f
e59452c7 10286(the)i(expansion)f(app)s(ears)g(within)f(double)h(quotes,)k(eac)m(h)d
d052bd6f
CR
10287(k)m(ey)630 3718 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150
102883871 y Ft(${#)p Fj(parameter)p Ft(})630 3981 y Fu(The)40
e59452c7
CR
10289b(length)g(in)g(c)m(haracters)i(of)e(the)h(expanded)e(v)-5
10290b(alue)41 b(of)f Fr(parameter)47 b Fu(is)40 b(substituted.)630
d052bd6f 102914091 y(If)i Fr(parameter)50 b Fu(is)43 b(`)p Ft(*)p Fu(')g(or)g(`)p
6e51e0d0 10292Ft(@)p Fu(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m
d052bd6f 10293(b)s(er)f(of)h(p)s(ositional)630 4200 y(parameters.)i(If)32
6e51e0d0
CR
10294b Fr(parameter)38 b Fu(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m
10295(y)g(`)p Ft(*)p Fu(')h(or)g(`)p Ft(@)p Fu(',)g(the)g(v)-5
d052bd6f 10296b(alue)630 4310 y(substituted)30 b(is)h(the)g(n)m(um)m(b)s(er)e(of)i
ad4aef08 10297(elemen)m(ts)i(in)d(the)h(arra)m(y)-8 b(.)43 b(If)30
d052bd6f 10298b Fr(parameter)38 b Fu(is)31 b(an)f(indexed)630 4419
091c6bc4
CR
10299y(arra)m(y)37 b(name)g(subscripted)f(b)m(y)h(a)g(negativ)m(e)i(n)m(um)m
10300(b)s(er,)f(that)f(n)m(um)m(b)s(er)f(is)g(in)m(terpreted)i(as)630
d052bd6f 103014529 y(relativ)m(e)47 b(to)g(one)e(greater)i(than)e(the)h(maxim)m(um)f
1a5fa30b 10302(index)g(of)g Fr(parameter)p Fu(,)50 b(so)c(negativ)m(e)630
d052bd6f 103034639 y(indices)30 b(coun)m(t)h(bac)m(k)g(from)f(the)h(end)e(of)i(the)f
1a5fa30b 10304(arra)m(y)-8 b(,)32 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)630
d052bd6f
CR
103054748 y(last)g(elemen)m(t.)150 4902 y Ft(${)p Fj(parameter)p
10306Ft(#)p Fj(word)p Ft(})150 5011 y(${)p Fj(parameter)p
10307Ft(##)p Fj(word)p Ft(})630 5121 y Fu(The)43 b Fr(w)m(ord)k
d37a4722 10308Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h(pattern)g(and)f(matc)m(hed)i
d052bd6f 10309(according)f(to)h(the)630 5230 y(rules)31 b(describ)s(ed)g(b)s(elo)m(w)
d37a4722 10310h(\(see)h(Section)g(3.5.8.1)h([P)m(attern)g(Matc)m(hing],)g(page)f
e2520247 10311(37\).)46 b(If)32 b(the)630 5340 y(pattern)37 b(matc)m(hes)h(the)f(b)s
d37a4722 10312(eginning)f(of)h(the)g(expanded)f(v)-5 b(alue)38 b(of)f
d052bd6f 10313Fr(parameter)p Fu(,)i(then)e(the)p eop end
7a8455e4
CR
10314%%Page: 31 37
10315TeXDict begin 31 36 bop 150 -116 a Fu(Chapter)30 b(3:)41
10316b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)630 299
d052bd6f
CR
10317y(result)36 b(of)h(the)f(expansion)h(is)f(the)h(expanded)e(v)-5
10318b(alue)37 b(of)g Fr(parameter)43 b Fu(with)36 b(the)h(shortest)630
10319408 y(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(#)p Fu(')g(case\))h(or)
10320e(the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p
10321Ft(##)p Fu(')g(case\))630 518 y(deleted.)49 b(If)32 b
7a8455e4
CR
10322Fr(parameter)40 b Fu(is)33 b(`)p Ft(@)p Fu(')g(or)g(`)p
10323Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5 b(al)34 b(op)s(eration)g(is)
d052bd6f 10324f(applied)f(to)630 628 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f
7a8455e4 10325(turn,)h(and)e(the)h(expansion)g(is)h(the)f(resultan)m(t)h(list.)61
d052bd6f 10326b(If)630 737 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5
7a8455e4 10327b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
d052bd6f 10328Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 847
7a8455e4
CR
10329y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m(b)s(er)e(of)h
10330(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g(is)630
d052bd6f
CR
10331956 y(the)h(resultan)m(t)g(list.)150 1129 y Ft(${)p Fj(parameter)p
10332Ft(\045)p Fj(word)p Ft(})150 1238 y(${)p Fj(parameter)p
10333Ft(\045\045)p Fj(word)p Ft(})630 1348 y Fu(The)43 b Fr(w)m(ord)k
7a8455e4 10334Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h(pattern)g(and)f(matc)m(hed)i
d052bd6f 10335(according)f(to)h(the)630 1457 y(rules)f(describ)s(ed)g(b)s(elo)m(w)h
7a8455e4 10336(\(see)h(Section)g(3.5.8.1)h([P)m(attern)f(Matc)m(hing],)51
e2520247 10337b(page)45 b(37\).)85 b(If)630 1567 y(the)43 b(pattern)g(matc)m(hes)h(a)
7a8455e4 10338g(trailing)g(p)s(ortion)e(of)h(the)g(expanded)g(v)-5
d052bd6f 10339b(alue)43 b(of)g Fr(parameter)p Fu(,)630 1677 y(then)c(the)g(result)g
7a8455e4 10340(of)h(the)f(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f
d052bd6f 10341Fr(parameter)46 b Fu(with)39 b(the)h(shortest)630 1786
7a8455e4
CR
10342y(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(\045)p Fu(')g(case\))h(or)e
10343(the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p
d052bd6f 10344Ft(\045\045)p Fu(')g(case\))630 1896 y(deleted.)49 b(If)32
d37a4722 10345b Fr(parameter)40 b Fu(is)33 b(`)p Ft(@)p Fu(')g(or)g(`)p
f602026a 10346Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5 b(al)34 b(op)s(eration)g(is)
d052bd6f 10347f(applied)f(to)630 2005 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f
f602026a 10348(turn,)h(and)e(the)h(expansion)g(is)h(the)f(resultan)m(t)h(list.)61
d052bd6f 10349b(If)630 2115 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5
f602026a 10350b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
d052bd6f 10351Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 2225
f602026a
CR
10352y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m(b)s(er)e(of)h
10353(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g(is)630
d052bd6f 103542334 y(the)h(resultan)m(t)g(list.)150 2506 y Ft(${)p
7a8455e4 10355Fj(parameter)p Ft(/)p Fj(pattern)p Ft(/)p Fj(stri)o(ng)p
d052bd6f
CR
10356Ft(})150 2616 y(${)p Fj(parameter)p Ft(//)p Fj(pattern)p
10357Ft(/)p Fj(str)o(ing)p Ft(})150 2725 y(${)p Fj(parameter)p
10358Ft(/#)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p Ft(})150 2835
e59452c7 10359y(${)p Fj(parameter)p Ft(/\045)p Fj(pattern)p Ft(/)p
d052bd6f 10360Fj(str)o(ing)p Ft(})630 2945 y Fu(The)37 b Fr(pattern)g
e59452c7 10361Fu(is)g(expanded)g(to)h(pro)s(duce)e(a)h(pattern)g(just)g(as)h(in)e
d052bd6f 10362(\014lename)i(expansion.)630 3054 y Fr(P)m(arameter)46
e59452c7
CR
10363b Fu(is)38 b(expanded)f(and)g(the)i(longest)g(matc)m(h)g(of)f
10364Fr(pattern)g Fu(against)h(its)f(v)-5 b(alue)39 b(is)630
d052bd6f 103653164 y(replaced)30 b(with)e Fr(string)p Fu(.)41 b Fr(string)c
e59452c7 10366Fu(undergo)s(es)28 b(tilde)i(expansion,)f(parameter)h(and)e(v)-5
d052bd6f 10367b(ariable)630 3273 y(expansion,)25 b(arithmetic)g(expansion,)g(command)
e59452c7 10368e(and)g(pro)s(cess)g(substitution,)i(and)e(quote)630
d052bd6f 103693383 y(remo)m(v)-5 b(al.)54 b(The)33 b(matc)m(h)j(is)e(p)s(erformed)f
e59452c7 10370(according)i(to)g(the)f(rules)g(describ)s(ed)f(b)s(elo)m(w)i(\(see)630
e2520247 103713493 y(Section)c(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(37\).)
d052bd6f 10372630 3634 y(In)45 b(the)g(\014rst)g(form)g(ab)s(o)m(v)m(e,)50
e59452c7 10373b(only)c(the)f(\014rst)g(matc)m(h)h(is)f(replaced.)86
d052bd6f 10374b(If)45 b(there)h(are)g(t)m(w)m(o)630 3743 y(slashes)28
e59452c7
CR
10375b(separating)g Fr(parameter)35 b Fu(and)27 b Fr(pattern)g
10376Fu(\(the)i(second)e(form)g(ab)s(o)m(v)m(e\),)j(all)f(matc)m(hes)630
d052bd6f 103773853 y(of)d Fr(pattern)g Fu(are)g(replaced)g(with)f Fr(string)p
e59452c7 10378Fu(.)40 b(If)25 b Fr(pattern)h Fu(is)f(preceded)h(b)m(y)f(`)p
d052bd6f 10379Ft(#)p Fu(')h(\(the)h(third)d(form)630 3962 y(ab)s(o)m(v)m(e\),)32
e59452c7
CR
10380b(it)e(m)m(ust)f(matc)m(h)i(at)f(the)g(b)s(eginning)e(of)i(the)g
10381(expanded)f(v)-5 b(alue)30 b(of)f Fr(parameter)p Fu(.)41
d052bd6f 10382b(If)630 4072 y Fr(pattern)28 b Fu(is)g(preceded)g(b)m(y)g(`)p
e59452c7 10383Ft(\045)p Fu(')g(\(the)h(fourth)e(form)h(ab)s(o)m(v)m(e\),)i(it)f(m)m
d052bd6f 10384(ust)f(matc)m(h)h(at)g(the)f(end)g(of)630 4181 y(the)i(expanded)e(v)-5
e59452c7
CR
10385b(alue)30 b(of)g Fr(parameter)p Fu(.)41 b(If)28 b(the)i(expansion)f(of)
10386h Fr(string)37 b Fu(is)29 b(n)m(ull,)h(matc)m(hes)h(of)630
d052bd6f 103874291 y Fr(pattern)d Fu(are)g(deleted.)41 b(If)28 b Fr(string)35
e59452c7 10388b Fu(is)28 b(n)m(ull,)h(matc)m(hes)g(of)f Fr(pattern)g
d052bd6f 10389Fu(are)h(deleted)f(and)g(the)g(`)p Ft(/)p Fu(')630 4401
e59452c7 10390y(follo)m(wing)k Fr(pattern)e Fu(ma)m(y)h(b)s(e)f(omitted.)630
d052bd6f 103914542 y(If)f(the)h Ft(patsub_replacement)25 b Fu(shell)30
e59452c7 10392b(option)g(is)f(enabled)h(using)f Ft(shopt)p Fu(,)g(an)m(y)h(unquoted)
d052bd6f 10393630 4651 y(instances)40 b(of)g(`)p Ft(&)p Fu(')g(in)f
3011048a 10394Fr(string)48 b Fu(are)40 b(replaced)g(with)g(the)g(matc)m(hing)g(p)s
d052bd6f 10395(ortion)g(of)g Fr(pattern)p Fu(.)630 4761 y(This)30 b(is)g(in)m(tended)
3011048a 10396g(to)h(duplicate)g(a)g(common)g Ft(sed)e Fu(idiom.)630
d052bd6f 103974902 y(Quoting)g(an)m(y)f(part)h(of)f Fr(string)36 b
3011048a 10398Fu(inhibits)28 b(replacemen)m(t)i(in)e(the)g(expansion)h(of)f(the)h
d052bd6f 10399(quoted)630 5011 y(p)s(ortion,)j(including)g(replacemen)m(t)h(strings)f
3011048a 10400(stored)g(in)g(shell)g(v)-5 b(ariables.)46 b(Bac)m(kslash)34
d052bd6f 10401b(will)630 5121 y(escap)s(e)k(`)p Ft(&)p Fu(')g(in)f
3011048a
CR
10402Fr(string)8 b Fu(;)42 b(the)c(bac)m(kslash)g(is)g(remo)m(v)m(ed)g(in)g
10403(order)f(to)h(p)s(ermit)f(a)i(literal)g(`)p Ft(&)p Fu(')630
d052bd6f 104045230 y(in)31 b(the)h(replacemen)m(t)h(string.)44 b(Users)32
3011048a 10405b(should)e(tak)m(e)k(care)e(if)g Fr(string)39 b Fu(is)32
d052bd6f 10406b(double-quoted)f(to)630 5340 y(a)m(v)m(oid)37 b(un)m(w)m(an)m(ted)f
3011048a 10407(in)m(teractions)i(b)s(et)m(w)m(een)e(the)g(bac)m(kslash)h(and)e
d052bd6f 10408(double-quoting,)j(since)p eop end
e59452c7
CR
10409%%Page: 32 38
10410TeXDict begin 32 37 bop 150 -116 a Fu(Chapter)30 b(3:)41
7a8455e4 10411b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(32)630 299
d052bd6f
CR
10412y(bac)m(kslash)31 b(has)f(sp)s(ecial)h(meaning)f(within)g(double)f
10413(quotes.)42 b(P)m(attern)31 b(substitution)f(p)s(er-)630
10414408 y(forms)e(the)h(c)m(hec)m(k)i(for)d(unquoted)g(`)p
7a8455e4 10415Ft(&)p Fu(')h(after)g(expanding)g Fr(string)p Fu(,)g(so)g(users)f
d052bd6f 10416(should)g(ensure)630 518 y(to)33 b(prop)s(erly)e(quote)i(an)m(y)f(o)s
7a8455e4 10417(ccurrences)g(of)h(`)p Ft(&)p Fu(')f(they)g(w)m(an)m(t)h(to)g(b)s(e)f
d052bd6f 10418(tak)m(en)h(literally)h(in)e(the)630 628 y(replacemen)m(t)k(and)e
7a8455e4 10419(ensure)g(an)m(y)h(instances)g(of)g(`)p Ft(&)p Fu(')f(they)h(w)m(an)m
d052bd6f
CR
10420(t)g(to)h(b)s(e)e(replaced)h(are)g(un-)630 737 y(quoted.)630
10421924 y(F)-8 b(or)31 b(instance,)870 1110 y Ft(var=abcdef)870
104221219 y(rep='&)46 b(')870 1329 y(echo)h(${var/abc/&)d(})870
104231439 y(echo)j("${var/abc/&)d(}")870 1548 y(echo)j(${var/abc/$rep})870
104241658 y(echo)g("${var/abc/$rep}")630 1844 y Fu(will)31
7a8455e4 10425b(displa)m(y)f(four)g(lines)h(of)f Ft(")p Fu(ab)s(c)g(def)p
d052bd6f
CR
10426Ft(")p Fu(,)g(while)870 2030 y Ft(var=abcdef)870 2140
10427y(rep='&)46 b(')870 2250 y(echo)h(${var/abc/\\&)d(})870
104282359 y(echo)j("${var/abc/\\&)d(}")870 2469 y(echo)j(${var/abc/"&)d("})
10429870 2578 y(echo)j(${var/abc/"$rep"})630 2765 y Fu(will)34
3011048a
CR
10430b(displa)m(y)g(four)g(lines)g(of)g Ft(")p Fu(&)f(def)p
10431Ft(")p Fu(.)51 b(Lik)m(e)35 b(the)f(pattern)g(remo)m(v)-5
d052bd6f 10432b(al)35 b(op)s(erators,)g(double)630 2874 y(quotes)23
3011048a 10433b(surrounding)c(the)k(replacemen)m(t)g(string)f(quote)h(the)f(expanded)
d052bd6f 10434f(c)m(haracters,)26 b(while)630 2984 y(double)43 b(quotes)i(enclosing)f
3011048a 10435(the)g(en)m(tire)h(parameter)f(substitution)f(do)h(not,)k(since)c(the)
d052bd6f 10436630 3093 y(expansion)e(is)h(p)s(erformed)e(in)h(a)h(con)m(text)h(that)f
3011048a 10437(do)s(esn't)f(tak)m(e)i(an)m(y)f(enclosing)g(double)630
d052bd6f 104383203 y(quotes)31 b(in)m(to)g(accoun)m(t.)630 3389 y(Since)24
3011048a
CR
10439b(bac)m(kslash)i(can)e(escap)s(e)h(`)p Ft(&)p Fu(',)h(it)f(can)g(also)h
10440(escap)s(e)f(a)f(bac)m(kslash)i(in)e(the)g(replacemen)m(t)630
d052bd6f 104413499 y(string.)39 b(This)26 b(means)g(that)h(`)p Ft(\\\\)p
3011048a 10442Fu(')g(will)f(insert)h(a)f(literal)i(bac)m(kslash)f(in)m(to)h(the)e
d052bd6f
CR
10443(replacemen)m(t,)630 3608 y(so)31 b(these)f(t)m(w)m(o)i
10444Ft(echo)d Fu(commands)870 3795 y Ft(var=abcdef)870 3904
10445y(rep='\\\\&xyz')870 4014 y(echo)47 b(${var/abc/\\\\&xyz})870
104464124 y(echo)g(${var/abc/$rep})630 4310 y Fu(will)31 b(b)s(oth)e(output)
10447h(`)p Ft(\\abcxyzdef)p Fu('.)630 4496 y(It)g(should)g(rarely)g(b)s(e)g
3011048a 10448(necessary)h(to)g(enclose)h(only)e Fr(string)38 b Fu(in)30
d052bd6f 10449b(double)g(quotes.)630 4682 y(If)j(the)h Ft(nocasematch)d
3011048a 10450Fu(shell)i(option)h(\(see)h(the)f(description)f(of)h
d052bd6f 10451Ft(shopt)e Fu(in)i(Section)g(4.3.2)630 4792 y([The)23
e2520247 10452b(Shopt)g(Builtin],)j(page)e(72\))h(is)e(enabled,)i(the)f(matc)m(h)g
d052bd6f 10453(is)g(p)s(erformed)e(without)h(regard)630 4902 y(to)31
3011048a 10454b(the)f(case)h(of)g(alphab)s(etic)f(c)m(haracters.)42
e59452c7 10455b(If)30 b Fr(parameter)37 b Fu(is)30 b(`)p Ft(@)p Fu(')g(or)g(`)p
d052bd6f 10456Ft(*)p Fu(',)h(the)f(substitution)630 5011 y(op)s(eration)g(is)f
e59452c7 10457(applied)g(to)h(eac)m(h)g(p)s(ositional)g(parameter)g(in)e(turn,)h(and)
d052bd6f 10458g(the)g(expansion)g(is)630 5121 y(the)i(resultan)m(t)h(list.)45
e59452c7
CR
10459b(If)30 b Fr(parameter)39 b Fu(is)31 b(an)g(arra)m(y)h(v)-5
10460b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
d052bd6f 10461Ft(*)p Fu(',)630 5230 y(the)e(substitution)g(op)s(eration)h(is)f
e59452c7 10462(applied)g(to)h(eac)m(h)h(mem)m(b)s(er)e(of)g(the)g(arra)m(y)h(in)f
d052bd6f
CR
10463(turn,)g(and)630 5340 y(the)h(expansion)f(is)g(the)h(resultan)m(t)g
10464(list.)p eop end
3011048a
CR
10465%%Page: 33 39
10466TeXDict begin 33 38 bop 150 -116 a Fu(Chapter)30 b(3:)41
d052bd6f
CR
10467b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)150 299
10468y Ft(${)p Fj(parameter)p Ft(^)p Fj(pattern)p Ft(})150
10469408 y(${)p Fj(parameter)p Ft(^^)p Fj(pattern)p Ft(})150
10470518 y(${)p Fj(parameter)p Ft(,)p Fj(pattern)p Ft(})150
10471628 y(${)p Fj(parameter)p Ft(,,)p Fj(pattern)p Ft(})630
10472737 y Fu(This)36 b(expansion)g(mo)s(di\014es)g(the)g(case)i(of)f
10473(alphab)s(etic)g(c)m(haracters)h(in)e Fr(parameter)p
10474Fu(.)59 b(The)630 847 y Fr(pattern)33 b Fu(is)g(expanded)e(to)j(pro)s
10475(duce)d(a)j(pattern)e(just)g(as)h(in)g(\014lename)g(expansion.)47
10476b(Eac)m(h)630 956 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
10477b(alue)31 b(of)f Fr(parameter)37 b Fu(is)30 b(tested)h(against)h
10478Fr(pattern)p Fu(,)e(and,)g(if)630 1066 y(it)j(matc)m(hes)h(the)g
7a8455e4 10479(pattern,)f(its)h(case)g(is)f(con)m(v)m(erted.)49 b(The)33
d052bd6f
CR
10480b(pattern)g(should)f(not)h(attempt)630 1176 y(to)e(matc)m(h)g(more)g
10481(than)f(one)h(c)m(haracter.)630 1313 y(The)f(`)p Ft(^)p
7a8455e4
CR
10482Fu(')g(op)s(erator)g(con)m(v)m(erts)i(lo)m(w)m(ercase)g(letters)g(matc)
10483m(hing)f Fr(pattern)f Fu(to)h(upp)s(ercase;)f(the)630
d052bd6f
CR
104841422 y(`)p Ft(,)p Fu(')25 b(op)s(erator)f(con)m(v)m(erts)i(matc)m(hing)
10485g(upp)s(ercase)d(letters)j(to)f(lo)m(w)m(ercase.)41 b(The)24
10486b(`)p Ft(^^)p Fu(')g(and)g(`)p Ft(,,)p Fu(')630 1532
10487y(expansions)31 b(con)m(v)m(ert)i(eac)m(h)g(matc)m(hed)f(c)m(haracter)h
10488(in)e(the)h(expanded)f(v)-5 b(alue;)32 b(the)g(`)p Ft(^)p
10489Fu(')g(and)630 1641 y(`)p Ft(,)p Fu(')24 b(expansions)f(matc)m(h)i(and)
10490e(con)m(v)m(ert)j(only)d(the)h(\014rst)f(c)m(haracter)j(in)d(the)h
10491(expanded)f(v)-5 b(alue.)630 1751 y(If)30 b Fr(pattern)g
10492Fu(is)h(omitted,)g(it)g(is)g(treated)g(lik)m(e)h(a)f(`)p
10493Ft(?)p Fu(',)f(whic)m(h)g(matc)m(hes)i(ev)m(ery)f(c)m(haracter.)630
104941888 y(If)23 b Fr(parameter)31 b Fu(is)24 b(`)p Ft(@)p
10495Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(case)h(mo)s(di\014cation)f(op)s
10496(eration)g(is)g(applied)g(to)g(eac)m(h)h(p)s(osi-)630
104971998 y(tional)h(parameter)e(in)h(turn,)f(and)g(the)h(expansion)f(is)g
10498(the)h(resultan)m(t)g(list.)40 b(If)23 b Fr(parameter)32
10499b Fu(is)630 2107 y(an)e(arra)m(y)g(v)-5 b(ariable)31
7a8455e4
CR
10500b(subscripted)d(with)i(`)p Ft(@)p Fu(')g(or)f(`)p Ft(*)p
10501Fu(',)i(the)f(case)g(mo)s(di\014cation)h(op)s(eration)f(is)630
d052bd6f 105022217 y(applied)d(to)g(eac)m(h)h(mem)m(b)s(er)e(of)h(the)g(arra)m(y)g
7a8455e4 10503(in)g(turn,)g(and)f(the)h(expansion)f(is)h(the)g(resultan)m(t)630
d052bd6f
CR
105042326 y(list.)150 2491 y Ft(${)p Fj(parameter)p Ft(@)p
10505Fj(operator)p Ft(})630 2600 y Fu(The)h(expansion)h(is)f(either)h(a)g
7a8455e4 10506(transformation)g(of)g(the)g(v)-5 b(alue)29 b(of)g Fr(parameter)35
d052bd6f 10507b Fu(or)29 b(informa-)630 2710 y(tion)e(ab)s(out)f Fr(parameter)33
e59452c7
CR
10508b Fu(itself,)28 b(dep)s(ending)c(on)i(the)h(v)-5 b(alue)26
10509b(of)h Fr(op)s(erator)p Fu(.)39 b(Eac)m(h)27 b Fr(op)s(erator)630
d052bd6f 105102819 y Fu(is)j(a)h(single)g(letter:)630 2984 y Ft(U)432
e59452c7
CR
10511b Fu(The)31 b(expansion)g(is)g(a)g(string)h(that)f(is)h(the)f(v)-5
10512b(alue)32 b(of)f Fr(parameter)38 b Fu(with)31 b(lo)m(w-)1110
d052bd6f
CR
105133093 y(ercase)g(alphab)s(etic)g(c)m(haracters)h(con)m(v)m(erted)g(to)f
10514(upp)s(ercase.)630 3258 y Ft(u)432 b Fu(The)34 b(expansion)g(is)g(a)h
3011048a 10515(string)f(that)h(is)g(the)f(v)-5 b(alue)35 b(of)f Fr(parameter)42
d052bd6f 10516b Fu(with)34 b(the)1110 3367 y(\014rst)c(c)m(haracter)i(con)m(v)m
3011048a 10517(erted)f(to)h(upp)s(ercase,)d(if)i(it)g(is)f(alphab)s(etic.)630
d052bd6f 105183532 y Ft(L)432 b Fu(The)33 b(expansion)h(is)g(a)g(string)g(that)h(is)f
3011048a 10519(the)g(v)-5 b(alue)34 b(of)g Fr(parameter)41 b Fu(with)34
d052bd6f
CR
10520b(up-)1110 3641 y(p)s(ercase)c(alphab)s(etic)h(c)m(haracters)h(con)m(v)
10521m(erted)g(to)f(lo)m(w)m(ercase.)630 3806 y Ft(Q)432 b
3011048a 10522Fu(The)30 b(expansion)h(is)g(a)g(string)f(that)i(is)f(the)g(v)-5
d37a4722 10523b(alue)31 b(of)g Fr(parameter)37 b Fu(quoted)31 b(in)1110
d052bd6f
CR
105243915 y(a)g(format)f(that)h(can)g(b)s(e)f(reused)f(as)i(input.)630
105254080 y Ft(E)432 b Fu(The)27 b(expansion)g(is)g(a)g(string)h(that)f(is)h
d37a4722 10526(the)f(v)-5 b(alue)28 b(of)f Fr(parameter)34 b Fu(with)27
d052bd6f 10527b(bac)m(k-)1110 4189 y(slash)e(escap)s(e)h(sequences)f(expanded)g(as)g
d37a4722 10528(with)g(the)h Ft($'...)o(')e Fu(quoting)i(mec)m(h-)1110
d052bd6f 105294299 y(anism.)630 4463 y Ft(P)432 b Fu(The)22 b(expansion)h(is)g(a)g
e59452c7 10530(string)g(that)g(is)g(the)g(result)g(of)g(expanding)f(the)h(v)-5
d052bd6f 10531b(alue)24 b(of)1110 4573 y Fr(parameter)31 b Fu(as)24
e59452c7 10532b(if)f(it)h(w)m(ere)g(a)g(prompt)f(string)h(\(see)g(Section)h(6.9)g
e2520247 10533([Con)m(trolling)1110 4682 y(the)31 b(Prompt],)f(page)h(106\).)630
d052bd6f 105344847 y Ft(A)432 b Fu(The)24 b(expansion)g(is)g(a)h(string)f(in)g(the)g
e59452c7 10535(form)g(of)h(an)f(assignmen)m(t)h(statemen)m(t)h(or)1110
d052bd6f
CR
105364956 y Ft(declare)h Fu(command)i(that,)h(if)f(ev)-5 b(aluated,)31
10537b(will)e(recreate)i Fr(parameter)36 b Fu(with)1110 5066
10538y(its)31 b(attributes)g(and)e(v)-5 b(alue.)630 5230 y
e59452c7
CR
10539Ft(K)432 b Fu(Pro)s(duces)33 b(a)i(p)s(ossibly-quoted)e(v)m(ersion)i
10540(of)f(the)h(v)-5 b(alue)34 b(of)h Fr(parameter)p Fu(,)g(ex-)1110
d052bd6f
CR
105415340 y(cept)46 b(that)h(it)f(prin)m(ts)f(the)h(v)-5 b(alues)47
10542b(of)f(indexed)f(and)g(asso)s(ciativ)m(e)k(arra)m(ys)p
10543eop end
3011048a
CR
10544%%Page: 34 40
10545TeXDict begin 34 39 bop 150 -116 a Fu(Chapter)30 b(3:)41
d052bd6f
CR
10546b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(34)1110 299
10547y(as)37 b(a)g(sequence)f(of)h(quoted)g(k)m(ey-v)-5 b(alue)38
10548b(pairs)e(\(see)h(Section)h(6.7)f([Arra)m(ys],)1110 408
e2520247 10549y(page)31 b(102\).)630 573 y Ft(a)432 b Fu(The)30 b(expansion)g(is)g(a)
d052bd6f 10550h(string)f(consisting)h(of)g(\015ag)g(v)-5 b(alues)30
e2520247
CR
10551b(represen)m(ting)h Fr(pa-)1110 683 y(rameter)7 b Fu('s)31
10552b(attributes.)630 847 y Ft(k)432 b Fu(Lik)m(e)29 b(the)g(`)p
d052bd6f 10553Ft(K)p Fu(')g(transformation,)g(but)f(expands)g(the)g(k)m(eys)i(and)d
e2520247 10554(v)-5 b(alues)29 b(of)g(in-)1110 957 y(dexed)c(and)f(asso)s(ciativ)m(e)
d052bd6f 10555k(arra)m(ys)d(to)h(separate)f(w)m(ords)g(after)g(w)m(ord)g(splitting.)
e2520247 10556630 1122 y(If)k Fr(parameter)37 b Fu(is)30 b(`)p Ft(@)p
d052bd6f 10557Fu(')g(or)g(`)p Ft(*)p Fu(',)g(the)g(op)s(eration)g(is)g(applied)f(to)i
e2520247 10558(eac)m(h)g(p)s(ositional)f(parameter)630 1231 y(in)24
d052bd6f
CR
10559b(turn,)g(and)f(the)h(expansion)g(is)g(the)g(resultan)m(t)h(list.)39
10560b(If)23 b Fr(parameter)31 b Fu(is)24 b(an)g(arra)m(y)g(v)-5
e2520247 10561b(ariable)630 1341 y(subscripted)24 b(with)h(`)p Ft(@)p
d052bd6f 10562Fu(')h(or)g(`)p Ft(*)p Fu(',)h(the)e(op)s(eration)h(is)g(applied)f(to)h
e2520247 10563(eac)m(h)h(mem)m(b)s(er)e(of)h(the)f(arra)m(y)630 1451
d052bd6f 10564y(in)30 b(turn,)g(and)f(the)i(expansion)f(is)h(the)f(resultan)m(t)h
e2520247 10565(list.)630 1588 y(The)c(result)h(of)g(the)f(expansion)h(is)g(sub)5
7a8455e4 10566b(ject)27 b(to)h(w)m(ord)g(splitting)g(and)f(\014lename)h(expansion)630
e2520247
CR
105671697 y(as)j(describ)s(ed)e(b)s(elo)m(w.)150 1902 y Fk(3.5.4)63
10568b(Command)41 b(Substitution)150 2049 y Fu(Command)24
10569b(substitution)h(allo)m(ws)h(the)f(output)g(of)g(a)g(command)g(to)h
10570(replace)g(the)f(command)g(itself.)39 b(The)150 2158
10571y(standard)30 b(form)f(of)i(command)f(substitution)g(o)s(ccurs)g(when)g
10572(a)g(command)h(is)f(enclosed)h(as)g(follo)m(ws:)390 2298
10573y Ft($\()p Fj(command)p Ft(\))150 2438 y Fu(or)f(\(deprecated\))390
105742578 y Ft(`)p Fj(command)p Ft(`.)150 2718 y Fu(Bash)24
10575b(p)s(erforms)e(command)i(substitution)f(b)m(y)h(executing)h
10576Fr(command)i Fu(in)c(a)h(subshell)f(en)m(vironmen)m(t)i(and)150
105772827 y(replacing)35 b(the)f(command)g(substitution)g(with)f(the)i
10578(standard)e(output)g(of)i(the)f(command,)h(with)f(an)m(y)150
105792937 y(trailing)j(newlines)f(deleted.)58 b(Em)m(b)s(edded)34
10580b(newlines)i(are)g(not)g(deleted,)j(but)c(they)h(ma)m(y)h(b)s(e)e(remo)
10581m(v)m(ed)150 3046 y(during)40 b(w)m(ord)i(splitting.)75
10582b(The)41 b(command)g(substitution)g Ft($\(cat)29 b Fj(file)p
10583Ft(\))40 b Fu(can)i(b)s(e)f(replaced)h(b)m(y)g(the)150
105843156 y(equiv)-5 b(alen)m(t)32 b(but)d(faster)i Ft($\(<)f
10585Fj(file)p Ft(\))p Fu(.)275 3296 y(With)h(the)h(old-st)m(yle)h(bac)m
10586(kquote)g(form)e(of)h(substitution,)f(bac)m(kslash)h(retains)g(its)g
10587(literal)h(meaning)150 3405 y(except)k(when)d(follo)m(w)m(ed)k(b)m(y)d
10588(`)p Ft($)p Fu(',)j(`)p Ft(`)p Fu(',)f(or)f(`)p Ft(\\)p
10589Fu('.)57 b(The)35 b(\014rst)g(bac)m(kquote)i(not)f(preceded)g(b)m(y)f
10590(a)h(bac)m(kslash)150 3515 y(terminates)k(the)e(command)h
10591(substitution.)65 b(When)39 b(using)f(the)h Ft($\()p
10592Fj(command)p Ft(\))c Fu(form,)41 b(all)e(c)m(haracters)150
105933624 y(b)s(et)m(w)m(een)31 b(the)g(paren)m(theses)f(mak)m(e)i(up)d(the)
10594h(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8 b(.)275
105953764 y(There)29 b(is)i(an)f(alternate)i(form)e(of)h(command)f
10596(substitution:)390 3904 y Ft(${)p Fj(c)47 b(command)p
10597Ft(;)e(})150 4044 y Fu(whic)m(h)38 b(executes)i Fr(command)i
10598Fu(in)d(the)g(curren)m(t)f(execution)i(en)m(vironmen)m(t)f(and)f
10599(captures)h(its)g(output,)150 4153 y(again)31 b(with)f(trailing)i
76112093
CR
10600(newlines)e(remo)m(v)m(ed.)275 4293 y(The)40 b(c)m(haracter)i
10601Fr(c)47 b Fu(follo)m(wing)42 b(the)f(op)s(en)g(brace)g(m)m(ust)f(b)s(e)
10602h(a)g(space,)j(tab,)g(newline,)g(or)d(`)p Ft(|)p Fu(',)j(and)150
106034403 y(the)39 b(close)i(brace)e(m)m(ust)g(b)s(e)g(in)g(a)g(p)s(osition)
10604h(where)e(a)i(reserv)m(ed)f(w)m(ord)g(ma)m(y)h(app)s(ear)e(\(i.e.,)43
10605b(preceded)150 4512 y(b)m(y)32 b(a)g(command)g(terminator)h(suc)m(h)e
10606(as)h(semicolon\).)47 b(Bash)32 b(allo)m(ws)i(the)e(close)h(brace)f(to)
10607h(b)s(e)e(joined)h(to)150 4622 y(the)f(remaining)g(c)m(haracters)h(in)e
10608(the)h(w)m(ord)f(without)h(b)s(eing)f(follo)m(w)m(ed)i(b)m(y)f(a)g
10609(shell)f(metac)m(haracter)k(as)d(a)150 4732 y(reserv)m(ed)g(w)m(ord)f
10610(w)m(ould)g(usually)g(require.)275 4871 y(An)m(y)j(side)h(e\013ects)h
10611(of)e Fr(command)k Fu(tak)m(e)e(e\013ect)h(immediately)e(in)g(the)f
10612(curren)m(t)h(execution)h(en)m(viron-)150 4981 y(men)m(t)d(and)g(p)s
10613(ersist)f(in)g(the)h(curren)m(t)g(en)m(vironmen)m(t)h(after)f(the)g
10614(command)g(completes)h(\(e.g.,)h(the)e Ft(exit)150 5091
10615y Fu(builtin)e(will)h(exit)g(the)g(shell\).)275 5230
10616y(This)g(t)m(yp)s(e)i(of)g(command)f(substitution)g(sup)s(er\014cially)
10617g(resem)m(bles)h(executing)h(an)f(unnamed)e(shell)150
106185340 y(function:)42 b(lo)s(cal)33 b(v)-5 b(ariables)32
10619b(are)g(created)g(as)g(when)e(a)i(shell)g(function)f(is)g(executing,)i
10620(and)e(the)h Ft(return)p eop end
e2520247
CR
10621%%Page: 35 41
10622TeXDict begin 35 40 bop 150 -116 a Fu(Chapter)30 b(3:)41
10623b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)150 299
10624y(builtin)36 b(forces)i Fr(command)i Fu(to)e(complete;)j(ho)m(w)m(ev)m
10625(er,)f(the)d(rest)g(of)g(the)h(execution)g(en)m(vironmen)m(t,)h(in-)150
10626408 y(cluding)30 b(the)h(p)s(ositional)g(parameters,)g(is)f(shared)g
76112093
CR
10627(with)g(the)h(caller.)275 545 y(If)26 b(the)g(\014rst)g(c)m(haracter)i
10628(follo)m(wing)g(the)f(op)s(en)f(brace)h(is)f(a)h(`)p
10629Ft(|)p Fu(',)h(the)f(construct)g(expands)e(to)j(the)e(v)-5
10630b(alue)150 654 y(of)24 b(the)g Ft(REPLY)e Fu(shell)i(v)-5
10631b(ariable)24 b(after)g Fr(command)j Fu(executes,)g(without)d(remo)m
10632(ving)g(an)m(y)g(trailing)h(newlines,)150 764 y(and)h(the)g(standard)f
10633(output)h(of)g Fr(command)k Fu(remains)c(the)g(same)h(as)f(in)g(the)g
10634(calling)i(shell.)39 b(Bash)27 b(creates)150 873 y Ft(REPLY)33
10635b Fu(as)j(an)e(initially-unset)j(lo)s(cal)f(v)-5 b(ariable)35
10636b(when)f Fr(command)39 b Fu(executes,)e(and)d(restores)i
10637Ft(REPLY)d Fu(to)150 983 y(the)i(v)-5 b(alue)34 b(it)h(had)f(b)s(efore)
10638g(the)h(command)f(substitution)g(after)h Fr(command)j
10639Fu(completes,)f(as)d(with)h(an)m(y)150 1093 y(lo)s(cal)d(v)-5
10640b(ariable.)275 1229 y(F)d(or)23 b(example,)i(this)e(construct)g
e2520247
CR
10641(expands)f(to)i(`)p Ft(12345)p Fu(',)f(and)f(lea)m(v)m(es)j(the)e
10642(shell)g(v)-5 b(ariable)24 b Ft(X)e Fu(unc)m(hanged)150
76112093
CR
106431339 y(in)30 b(the)h(curren)m(t)f(execution)h(en)m(vironmen)m(t:)390
106441584 y Ft(${)47 b(local)g(X=12345)e(;)j(echo)e($X;)h(})150
106451721 y Fu(\(not)28 b(declaring)g Ft(X)f Fu(as)g(lo)s(cal)i(w)m(ould)e
e2520247 10646(mo)s(dify)f(its)i(v)-5 b(alue)27 b(in)g(the)h(curren)m(t)f(en)m
76112093 10647(vironmen)m(t,)i(as)e(with)g(normal)150 1830 y(shell)38
e2520247
CR
10648b(function)g(execution\),)43 b(while)38 b(this)g(construct)h(do)s(es)f
10649(not)g(require)g(an)m(y)h(output)f(to)h(expand)e(to)150
76112093
CR
106501940 y(`)p Ft(12345)p Fu(':)390 2076 y Ft(${|)47 b(REPLY=12345;)d(})150
106512212 y Fu(and)30 b(restores)h Ft(REPLY)e Fu(to)i(the)f(v)-5
e2520247 10652b(alue)31 b(it)g(had)f(b)s(efore)g(the)g(command)g(substitution.)275
76112093 106532349 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39
e2520247 10654b(T)-8 b(o)23 b(nest)g(when)f(using)h(the)g(bac)m(kquoted)h(form,)g
76112093
CR
10655(escap)s(e)150 2458 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m
10656(kslashes.)275 2594 y(If)g(the)h(substitution)g(app)s(ears)f(within)h
e2520247 10657(double)f(quotes,)i(Bash)f(do)s(es)g(not)g(p)s(erform)f(w)m(ord)g
76112093
CR
10658(splitting)150 2704 y(and)g(\014lename)g(expansion)h(on)f(the)g
10659(results.)150 2905 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150
106603052 y Fu(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5
fc527055 10661b(aluation)26 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g
76112093
CR
10662(substitution)150 3162 y(of)31 b(the)f(result.)41 b(The)30
10663b(format)g(for)g(arithmetic)i(expansion)e(is:)390 3298
10664y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 3434 y Fu(The)34
e59452c7 10665b Fr(expression)h Fu(undergo)s(es)f(the)h(same)h(expansions)e(as)i(if)f
76112093 10666(it)g(w)m(ere)h(within)e(double)h(quotes,)i(but)150 3544
e59452c7
CR
10667y(double)g(quote)g(c)m(haracters)i(in)d Fr(expression)h
10668Fu(are)g(not)g(treated)h(sp)s(ecially)g(and)f(are)g(remo)m(v)m(ed.)61
76112093 10669b(All)38 b(to-)150 3653 y(k)m(ens)c(in)f(the)h(expression)f(undergo)g
e59452c7 10670(parameter)h(and)f(v)-5 b(ariable)34 b(expansion,)h(command)e
76112093 10671(substitution,)150 3763 y(and)41 b(quote)i(remo)m(v)-5
e59452c7 10672b(al.)76 b(The)41 b(result)h(is)g(treated)h(as)f(the)g(arithmetic)h
76112093 10673(expression)f(to)g(b)s(e)f(ev)-5 b(aluated.)150 3872
e2520247 10674y(Arithmetic)31 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)275
76112093 106754009 y(The)k(ev)-5 b(aluation)37 b(is)f(p)s(erformed)e(according)i(to)g
d052bd6f 10676(the)g(rules)f(listed)h(b)s(elo)m(w)g(\(see)g(Section)g(6.5)h([Shell)
76112093 10677150 4118 y(Arithmetic],)29 b(page)e(100\).)41 b(If)27
e2520247 10678b(the)f(expression)h(is)f(in)m(v)-5 b(alid,)29 b(Bash)d(prin)m(ts)g(a)i
76112093
CR
10679(message)f(indicating)h(failure)150 4228 y(to)j(the)g(standard)e(error)
10680h(and)g(no)g(substitution)g(o)s(ccurs.)150 4429 y Fk(3.5.6)63
10681b(Pro)s(cess)42 b(Substitution)150 4576 y Fu(Pro)s(cess)33
e2520247
CR
10682b(substitution)g(allo)m(ws)i(a)e(pro)s(cess's)g(input)f(or)h(output)g
10683(to)h(b)s(e)f(referred)f(to)i(using)f(a)g(\014lename.)150
76112093
CR
106844685 y(It)d(tak)m(es)i(the)f(form)f(of)390 4822 y Ft(<\()p
10685Fj(list)p Ft(\))150 4958 y Fu(or)390 5094 y Ft(>\()p
e2520247
CR
10686Fj(list)p Ft(\))150 5230 y Fu(The)e(pro)s(cess)h Fr(list)j
10687Fu(is)d(run)e(async)m(hronously)-8 b(,)30 b(and)e(its)i(input)e(or)h
10688(output)f(app)s(ears)h(as)g(a)g(\014lename.)41 b(This)150
106895340 y(\014lename)25 b(is)g(passed)g(as)g(an)g(argumen)m(t)h(to)g(the)f
10690(curren)m(t)g(command)g(as)g(the)g(result)g(of)g(the)h(expansion.)38
10691b(If)p eop end
10692%%Page: 36 42
10693TeXDict begin 36 41 bop 150 -116 a Fu(Chapter)30 b(3:)41
10694b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(36)150 299
10695y(the)28 b Ft(>\()p Fj(list)p Ft(\))d Fu(form)i(is)g(used,)h(writing)f
10696(to)h(the)g(\014le)f(will)h(pro)m(vide)g(input)e(for)h
10697Fr(list)p Fu(.)41 b(If)26 b(the)i Ft(<\()p Fj(list)p
10698Ft(\))d Fu(form)150 408 y(is)g(used,)g(the)f(\014le)h(passed)f(as)h(an)
10699f(argumen)m(t)h(should)e(b)s(e)h(read)h(to)g(obtain)g(the)f(output)g
10700(of)h Fr(list)p Fu(.)40 b(Note)25 b(that)150 518 y(no)33
10701b(space)g(ma)m(y)g(app)s(ear)f(b)s(et)m(w)m(een)i(the)f
10702Ft(<)f Fu(or)h Ft(>)f Fu(and)g(the)h(left)h(paren)m(thesis,)f
10703(otherwise)h(the)f(construct)150 628 y(w)m(ould)j(b)s(e)g(in)m
10704(terpreted)g(as)h(a)f(redirection.)59 b(Pro)s(cess)36
d052bd6f 10705b(substitution)g(is)h(supp)s(orted)d(on)i(systems)g(that)150
e2520247 10706737 y(supp)s(ort)29 b(named)h(pip)s(es)f(\()p Fm(fif)n(o)p
d052bd6f 10707Fu(s\))h(or)h(the)f Ft(/dev/fd)f Fu(metho)s(d)h(of)g(naming)g(op)s(en)g
e2520247 10708(\014les.)275 890 y(When)36 b(a)m(v)-5 b(ailable,)40
d052bd6f 10709b(pro)s(cess)c(substitution)h(is)f(p)s(erformed)f(sim)m(ultaneously)i
e2520247
CR
10710(with)g(parameter)g(and)150 999 y(v)-5 b(ariable)31 b(expansion,)g
10711(command)f(substitution,)g(and)g(arithmetic)i(expansion.)150
107121217 y Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150 1364
10713y Fu(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
d052bd6f 10714(expansion,)g(command)g(substitution,)g(and)f(arithmetic)150
e2520247
CR
107151473 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h
10716(quotes)h(for)f(w)m(ord)g(splitting.)275 1626 y(The)e(shell)g(treats)i
6e51e0d0 10717(eac)m(h)g(c)m(haracter)g(of)f Ft($IFS)e Fu(as)i(a)g(delimiter,)h(and)e
e2520247 10718(splits)g(the)h(results)f(of)h(the)g(other)150 1735 y(expansions)h(in)m
d052bd6f 10719(to)h(w)m(ords)f(using)g(these)h(c)m(haracters)h(as)e(\014eld)g
e2520247 10720(terminators.)275 1888 y(If)38 b Ft(IFS)g Fu(is)g(unset,)j(or)e(its)g
d052bd6f 10721(v)-5 b(alue)39 b(is)g(exactly)h Ft(<space><tab><newline>)p
e2520247 10722Fu(,)c(the)j(default,)i(then)d(se-)150 1998 y(quences)27
d052bd6f
CR
10723b(of)h Ft(space)p Fu(,)f Ft(tab)p Fu(,)g(and)g Ft(newline)e
10724Fu(at)j(the)f(b)s(eginning)g(and)g(end)f(of)i(the)f(results)g(of)h(the)
e2520247 10725f(previous)150 2107 y(expansions)38 b(are)g(ignored,)i(and)d(an)m(y)i
d052bd6f 10726(sequence)f(of)g Ft(IFS)f Fu(c)m(haracters)j(not)e(at)g(the)g(b)s
e2520247 10727(eginning)g(or)g(end)150 2217 y(serv)m(es)e(to)h(delimit)f(w)m(ords.)56
d052bd6f 10728b(If)35 b Ft(IFS)g Fu(has)h(a)g(v)-5 b(alue)36 b(other)g(than)f(the)h
e2520247 10729(default,)i(then)d(sequences)h(of)g(the)150 2326 y(whitespace)i(c)m
d052bd6f
CR
10730(haracters)h Ft(space)p Fu(,)e Ft(tab)p Fu(,)h(and)f
10731Ft(newline)e Fu(are)j(ignored)f(at)h(the)f(b)s(eginning)g(and)f(end)h
e2520247 10732(of)150 2436 y(the)h(w)m(ord,)j(as)d(long)h(as)g(the)f(whitespace)h(c)m
d052bd6f 10733(haracter)h(is)e(in)g(the)h(v)-5 b(alue)38 b(of)h Ft(IFS)e
e2520247 10734Fu(\(an)i Ft(IFS)e Fu(whitespace)150 2545 y(c)m(haracter\).)47
d052bd6f
CR
10735b(An)m(y)32 b(c)m(haracter)i(in)d Ft(IFS)g Fu(that)i(is)f(not)g
10736Ft(IFS)f Fu(whitespace,)i(along)g(with)e(an)m(y)i(adjacen)m(t)g
e2520247 10737Ft(IFS)150 2655 y Fu(whitespace)41 b(c)m(haracters,)j(delimits)d(a)g
d052bd6f 10738(\014eld.)70 b(A)40 b(sequence)h(of)g Ft(IFS)e Fu(whitespace)i(c)m
e2520247
CR
10739(haracters)h(is)e(also)150 2765 y(treated)31 b(as)g(a)g(delimiter.)275
107402917 y(If)22 b(the)h(v)-5 b(alue)23 b(of)f Ft(IFS)g Fu(is)h(n)m(ull,)h
d052bd6f
CR
10741(no)f(w)m(ord)f(splitting)h(o)s(ccurs.)38 b(If)22 b Ft(IFS)g
10742Fu(is)h(unset,)h(w)m(ord)e(splitting)h(b)s(eha)m(v)m(es)150
e2520247
CR
107433027 y(as)31 b(if)f(it)h(con)m(tained)g(the)g(default)g(v)-5
10744b(alue)30 b Ft(<space><tab><newline>)p Fu(.)275 3179
d052bd6f 10745y(Explicit)21 b(n)m(ull)g(argumen)m(ts)g(\()p Ft("")g
037a8b7f 10746Fu(or)g Ft('')p Fu(\))f(are)h(retained)h(and)e(passed)g(to)i(commands)e
e2520247 10747(as)i(empt)m(y)f(strings.)150 3289 y(Unquoted)37 b(implicit)i(n)m(ull)f
037a8b7f 10748(argumen)m(ts,)i(resulting)d(from)g(the)h(expansion)g(of)g(parameters)f
e2520247 10749(that)i(ha)m(v)m(e)150 3399 y(no)32 b(v)-5 b(alues,)33
037a8b7f
CR
10750b(are)f(remo)m(v)m(ed.)47 b(If)32 b(a)g(parameter)h(with)e(no)h(v)-5
10751b(alue)33 b(is)f(expanded)f(within)h(double)f(quotes,)j(a)150
e2520247 107523508 y(n)m(ull)c(argumen)m(t)g(results)g(and)f(is)h(retained)g(and)f
037a8b7f 10753(passed)g(to)i(a)f(command)g(as)g(an)f(empt)m(y)i(string.)40
e2520247 10754b(When)150 3618 y(a)f(quoted)f(n)m(ull)g(argumen)m(t)h(app)s(ears)e(as)
b52e30b8 10755i(part)f(of)g(a)g(w)m(ord)g(whose)g(expansion)g(is)h(non-n)m(ull,)h
e2520247 10756(the)e(n)m(ull)150 3727 y(argumen)m(t)i(is)f(remo)m(v)m(ed.)69
d345f817
CR
10757b(That)39 b(is,)j(the)e(w)m(ord)f Ft(-d'')f Fu(b)s(ecomes)i
10758Ft(-d)e Fu(after)i(w)m(ord)f(splitting)h(and)f(n)m(ull)150
e2520247 107593837 y(argumen)m(t)31 b(remo)m(v)-5 b(al.)275 3989 y(Note)31
e59452c7 10760b(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h(splitting)g(is)f(p)s
e2520247
CR
10761(erformed.)150 4207 y Fk(3.5.8)63 b(Filename)41 b(Expansion)150
107624354 y Fu(After)30 b(w)m(ord)f(splitting,)i(unless)d(the)i
10763Ft(-f)f Fu(option)h(has)f(b)s(een)g(set)h(\(see)g(Section)h(4.3.1)g
10764([The)e(Set)h(Builtin],)150 4463 y(page)d(68\),)i(Bash)d(scans)h(eac)m
10765(h)h(w)m(ord)e(for)g(the)h(c)m(haracters)g(`)p Ft(*)p
10766Fu(',)h(`)p Ft(?)p Fu(',)g(and)e(`)p Ft([)p Fu('.)39
10767b(If)26 b(one)h(of)g(these)f(c)m(haracters)150 4573 y(app)s(ears,)34
10768b(and)f(is)g(not)h(quoted,)h(then)e(the)h(w)m(ord)f(is)h(regarded)f(as)
10769h(a)g Fr(pattern)p Fu(,)h(and)e(replaced)h(with)f(an)150
107704682 y(alphab)s(etically)41 b(sorted)e(list)h(of)g(\014lenames)f(matc)m
10771(hing)i(the)e(pattern)g(\(see)i(Section)f(3.5.8.1)i([P)m(attern)150
107724792 y(Matc)m(hing],)e(page)e(37\).)60 b(If)36 b(no)h(matc)m(hing)g
fc35c477 10773(\014lenames)g(are)g(found,)g(and)f(the)g(shell)h(option)g
e2520247 10774Ft(nullglob)150 4902 y Fu(is)k(disabled,)i(the)f(w)m(ord)e(is)h(left)h
fc35c477 10775(unc)m(hanged.)72 b(If)40 b(the)h Ft(nullglob)e Fu(option)i(is)g(set,)k
e2520247 10776(and)40 b(no)h(matc)m(hes)150 5011 y(are)c(found,)g(the)g(w)m(ord)f(is)
fc35c477 10777g(remo)m(v)m(ed.)60 b(If)36 b(the)h Ft(failglob)d Fu(shell)j(option)g
e2520247 10778(is)g(set,)i(and)c(no)i(matc)m(hes)h(are)150 5121 y(found,)e(an)g
fc35c477 10779(error)f(message)i(is)f(prin)m(ted)f(and)h(the)g(command)f(is)h(not)g
e2520247 10780(executed.)58 b(If)35 b(the)h(shell)g(option)150 5230
fc35c477
CR
10781y Ft(nocaseglob)e Fu(is)j(enabled,)i(the)e(matc)m(h)h(is)f(p)s
10782(erformed)e(without)i(regard)g(to)h(the)f(case)h(of)f(alphab)s(etic)150
e2520247
CR
107835340 y(c)m(haracters.)p eop end
10784%%Page: 37 43
10785TeXDict begin 37 42 bop 150 -116 a Fu(Chapter)30 b(3:)41
10786b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(37)275 299
10787y(When)23 b(a)h(pattern)f(is)h(used)f(for)g(\014lename)h(expansion,)h
10788(the)e(c)m(haracter)i(`)p Ft(.)p Fu(')f(at)g(the)g(start)g(of)g(a)g
10789(\014lename)150 408 y(or)f(immediately)i(follo)m(wing)g(a)f(slash)f(m)m
10790(ust)h(b)s(e)f(matc)m(hed)h(explicitly)-8 b(,)27 b(unless)c(the)g
10791(shell)h(option)g Ft(dotglob)150 518 y Fu(is)36 b(set.)58
10792b(In)35 b(order)g(to)i(matc)m(h)f(the)g(\014lenames)g(`)p
10793Ft(.)p Fu(')g(and)g(`)p Ft(..)p Fu(',)h(the)f(pattern)g(m)m(ust)g(b)s
10794(egin)f(with)h(`)p Ft(.)p Fu(')g(\(for)150 628 y(example,)42
10795b(`)p Ft(.?)p Fu('\),)f(ev)m(en)f(if)f Ft(dotglob)d Fu(is)j(set.)67
5e6f45d9 10796b(If)38 b(the)h Ft(globskipdots)d Fu(shell)j(option)g(is)g(enabled,)i
e2520247 10797(the)150 737 y(\014lenames)33 b(`)p Ft(.)p Fu(')g(and)f(`)p
5e6f45d9
CR
10798Ft(..)p Fu(')h(are)g(nev)m(er)g(matc)m(hed,)h(ev)m(en)g(if)e(the)h
10799(pattern)g(b)s(egins)f(with)h(a)g(`)p Ft(.)p Fu('.)48
e2520247 10800b(When)33 b(not)150 847 y(matc)m(hing)e(\014lenames,)g(the)g(`)p
5e6f45d9 10801Ft(.)p Fu(')f(c)m(haracter)i(is)f(not)f(treated)i(sp)s(ecially)-8
e2520247 10802b(.)275 976 y(When)30 b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f
7a8455e4 10803(c)m(haracter)j(m)m(ust)d(alw)m(a)m(ys)j(b)s(e)d(matc)m(hed)h
e2520247 10804(explicitly)i(b)m(y)e(a)150 1085 y(slash)d(in)f(the)h(pattern,)h(but)e
7a8455e4 10805(in)h(other)g(matc)m(hing)h(con)m(texts)h(it)e(can)g(b)s(e)g(matc)m
e2520247 10806(hed)g(b)m(y)g(a)g(sp)s(ecial)h(pattern)150 1195 y(c)m(haracter)j(as)f
7a8455e4 10807(describ)s(ed)e(b)s(elo)m(w)h(\(see)i(Section)f(3.5.8.1)i([P)m(attern)e
e2520247 10808(Matc)m(hing],)i(page)e(37\).)275 1324 y(See)d(the)g(description)g(of)g
7a8455e4 10809Ft(shopt)e Fu(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g
e2520247 10810(72,)g(for)f(a)g(descrip-)150 1433 y(tion)j(of)f(the)h
7a8455e4
CR
10811Ft(nocaseglob)p Fu(,)d Ft(nullglob)p Fu(,)g Ft(globskipdots)p
10812Fu(,)f Ft(failglob)p Fu(,)i(and)h Ft(dotglob)e Fu(options.)275
e2520247 108131562 y(The)36 b Ft(GLOBIGNORE)d Fu(shell)k(v)-5 b(ariable)37
e59452c7 10814b(ma)m(y)g(b)s(e)f(used)g(to)h(restrict)g(the)g(set)g(of)g(\014le)f
e2520247 10815(names)h(matc)m(hing)150 1672 y(a)42 b(pattern.)74 b(If)41
e59452c7 10816b Ft(GLOBIGNORE)e Fu(is)i(set,)k(eac)m(h)e(matc)m(hing)f(\014le)g(name)
e2520247 10817f(that)h(also)h(matc)m(hes)f(one)g(of)g(the)150 1782
e59452c7
CR
10818y(patterns)34 b(in)g Ft(GLOBIGNORE)d Fu(is)k(remo)m(v)m(ed)g(from)f
10819(the)g(list)h(of)f(matc)m(hes.)54 b(If)33 b(the)i Ft(nocaseglob)c
e2520247 10820Fu(option)k(is)150 1891 y(set,)c(the)e(matc)m(hing)i(against)g(the)f
e59452c7 10821(patterns)f(in)h Ft(GLOBIGNORE)c Fu(is)k(p)s(erformed)e(without)i
e2520247 10822(regard)f(to)i(case.)150 2001 y(The)d(\014lenames)h Ft(.)g
e59452c7
CR
10823Fu(and)f Ft(..)h Fu(are)g(alw)m(a)m(ys)h(ignored)f(when)f
10824Ft(GLOBIGNORE)f Fu(is)i(set)g(and)f(not)h(n)m(ull.)41
e2520247 10825b(Ho)m(w)m(ev)m(er,)150 2110 y(setting)30 b Ft(GLOBIGNORE)d
e59452c7 10826Fu(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 10827(enabling)f(the)h Ft(dotglob)d Fu(shell)i(option,)150
e2520247 108282220 y(so)j(all)h(other)f(\014lenames)g(b)s(eginning)f(with)h(a)g(`)p
5e6f45d9 10829Ft(.)p Fu(')g(will)h(matc)m(h.)46 b(T)-8 b(o)32 b(get)h(the)f(old)g(b)s
e2520247 10830(eha)m(vior)g(of)h(ignoring)150 2330 y(\014lenames)c(b)s(eginning)f
5e6f45d9
CR
10831(with)h(a)h(`)p Ft(.)p Fu(',)f(mak)m(e)h(`)p Ft(.*)p
10832Fu(')f(one)h(of)f(the)g(patterns)g(in)g Ft(GLOBIGNORE)p
e2520247
CR
10833Fu(.)37 b(The)29 b Ft(dotglob)150 2439 y Fu(option)i(is)f(disabled)g
10834(when)g Ft(GLOBIGNORE)d Fu(is)k(unset.)275 2568 y(After)26
d052bd6f
CR
10835b(the)h(pattern)g(is)f(expanded)g(and)g(matc)m(hed)h(against)h
10836(\014lenames,)f(the)g(v)-5 b(alue)27 b(of)g(the)f Ft(GLOBSORT)150
e2520247 108372678 y Fu(v)-5 b(ariable)46 b(con)m(trols)g(ho)m(w)f(the)g(results)f
d052bd6f 10838(are)h(sorted,)k(as)c(describ)s(ed)f(b)s(elo)m(w)h(\(see)h(Section)g
e2520247
CR
10839(5.2)g([Bash)150 2787 y(V)-8 b(ariables],)32 b(page)f(80\).)150
108402975 y Fk(3.5.8.1)63 b(P)m(attern)40 b(Matc)m(hing)150
108413122 y Fu(An)m(y)24 b(c)m(haracter)h(that)f(app)s(ears)f(in)g(a)h
d052bd6f 10842(pattern,)i(other)e(than)f(the)h(sp)s(ecial)g(pattern)g(c)m(haracters)h
e2520247 10843(describ)s(ed)150 3232 y(b)s(elo)m(w,)31 b(matc)m(hes)g(itself.)42
d052bd6f
CR
10844b(The)29 b Fm(nul)h Fu(c)m(haracter)i(ma)m(y)e(not)h(o)s(ccur)f(in)g(a)
10845h(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s(es)150
e2520247 108463342 y(the)38 b(follo)m(wing)g(c)m(haracter;)43 b(the)37
d052bd6f 10847b(escaping)i(bac)m(kslash)e(is)h(discarded)f(when)f(matc)m(hing.)63
e2520247 10848b(The)36 b(sp)s(ecial)150 3451 y(pattern)30 b(c)m(haracters)i(m)m(ust)f
d052bd6f 10849(b)s(e)e(quoted)i(if)f(they)h(are)f(to)i(b)s(e)d(matc)m(hed)i
e2520247 10850(literally)-8 b(.)275 3580 y(The)29 b(sp)s(ecial)i(pattern)g(c)m
d052bd6f 10851(haracters)h(ha)m(v)m(e)f(the)g(follo)m(wing)h(meanings:)150
e2520247 108523728 y Ft(*)432 b Fu(Matc)m(hes)31 b(an)m(y)e(string,)h(including)f
d052bd6f 10853(the)g(n)m(ull)g(string.)41 b(When)29 b(the)g Ft(globstar)e
e2520247 10854Fu(shell)i(option)630 3838 y(is)37 b(enabled,)h(and)e(`)p
d052bd6f
CR
10855Ft(*)p Fu(')h(is)g(used)f(in)g(a)h(\014lename)g(expansion)g(con)m
10856(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p Ft(*)p Fu('s)630
e2520247
CR
108573948 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)m(h)i(all)f
10858(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)630
108594057 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p
6e51e0d0 10860Ft(/)p Fu(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Ft(*)p Fu('s)e(will)g
e2520247
CR
10861(matc)m(h)h(only)f(directories)630 4167 y(and)k(sub)s(directories.)150
108624315 y Ft(?)432 b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)
10863150 4463 y Ft([...)o(])241 b Fu(Matc)m(hes)27 b(an)m(y)e(one)g(of)g
10864(the)g(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters)
10865i(separated)e(b)m(y)g(a)630 4573 y(h)m(yphen)k(denotes)i(a)g
6e51e0d0 10866Fr(range)g(expression)p Fu(;)f(an)m(y)h(c)m(haracter)h(that)f(falls)g
e2520247 10867(b)s(et)m(w)m(een)g(those)g(t)m(w)m(o)630 4682 y(c)m(haracters,)d
ad4aef08 10868(inclusiv)m(e,)f(using)d(the)h(curren)m(t)f(lo)s(cale's)j(collating)g
e2520247 10869(sequence)e(and)f(c)m(haracter)630 4792 y(set,)31 b(is)f(matc)m(hed.)42
ad4aef08 10870b(If)30 b(the)g(\014rst)g(c)m(haracter)i(follo)m(wing)g(the)e(`)p
6e51e0d0 10871Ft([)p Fu(')h(is)f(a)h(`)p Ft(!)p Fu(')f(or)g(a)h(`)p
e2520247 10872Ft(^)p Fu(')g(then)f(an)m(y)630 4902 y(c)m(haracter)c(not)f(enclosed)g
6e51e0d0 10873(is)g(matc)m(hed.)40 b(A)25 b(`)p Fq(\000)p Fu(')f(ma)m(y)i(b)s(e)e
e2520247 10874(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 5011
ad4aef08 10875y(\014rst)32 b(or)h(last)h(c)m(haracter)h(in)e(the)g(set.)50
6e51e0d0 10876b(A)33 b(`)p Ft(])p Fu(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f
e2520247 10877(including)g(it)g(as)h(the)630 5121 y(\014rst)c(c)m(haracter)j(in)d
daff9eca 10878(the)h(set.)43 b(The)31 b(sorting)g(order)g(of)g(c)m(haracters)h(in)f
e2520247 10879(range)g(expressions,)630 5230 y(and)f(the)h(c)m(haracters)h(included)e
daff9eca 10880(in)h(the)f(range,)i(are)f(determined)f(b)m(y)h(the)g(curren)m(t)f(lo)s
e2520247 10881(cale)630 5340 y(and)g(the)g(v)-5 b(alues)31 b(of)g(the)f
daff9eca 10882Ft(LC_COLLATE)e Fu(and)h Ft(LC_ALL)g Fu(shell)i(v)-5
e2520247
CR
10883b(ariables,)31 b(if)f(set.)p eop end
10884%%Page: 38 44
10885TeXDict begin 38 43 bop 150 -116 a Fu(Chapter)30 b(3:)41
10886b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(38)630 299
10887y(F)-8 b(or)34 b(example,)g(in)f(the)g(default)g(C)f(lo)s(cale,)k(`)p
10888Ft([a-dx-z])p Fu(')31 b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p
10889Ft([abcdxyz])p Fu('.)630 408 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
10890(haracters)h(in)e(dictionary)i(order,)76 b(and)67 b(in)g(these)h(lo)s
10891(cales)630 518 y(`)p Ft([a-dx-z])p Fu(')36 b(is)i(t)m(ypically)i(not)e
10892(equiv)-5 b(alen)m(t)39 b(to)g(`)p Ft([abcdxyz])p Fu(';)g(it)g(migh)m
10893(t)f(b)s(e)f(equiv)-5 b(alen)m(t)630 628 y(to)34 b(`)p
10894Ft([aBbCcDdxYyZz])p Fu(',)c(for)j(example.)49 b(T)-8
10895b(o)33 b(obtain)h(the)f(traditional)h(in)m(terpretation)h(of)630
10896737 y(ranges)e(in)f(brac)m(k)m(et)i(expressions,)g(y)m(ou)f(can)g
10897(force)g(the)g(use)f(of)h(the)g(C)f(lo)s(cale)i(b)m(y)f(setting)630
10898847 y(the)c Ft(LC_COLLATE)e Fu(or)i Ft(LC_ALL)f Fu(en)m(vironmen)m(t)i
10899(v)-5 b(ariable)30 b(to)g(the)f(v)-5 b(alue)30 b(`)p
10900Ft(C)p Fu(',)g(or)f(enable)h(the)630 956 y Ft(globasciiranges)c
10901Fu(shell)31 b(option.)630 1093 y(Within)23 b(`)p Ft([)p
10902Fu(')h(and)e(`)p Ft(])p Fu(',)j Fr(c)m(haracter)g(classes)j
10903Fu(can)c(b)s(e)e(sp)s(eci\014ed)h(using)f(the)i(syn)m(tax)f
10904Ft([:)p Fr(class)t Ft(:])p Fu(,)630 1203 y(where)30 b
10905Fr(class)35 b Fu(is)30 b(one)h(of)f(the)h(follo)m(wing)h(classes)f
10906(de\014ned)e(in)h(the)h Fm(posix)f Fu(standard:)870 1339
10907y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g(lower)
10908870 1449 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630
109091585 y Fu(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h(an)m(y)f(c)m
10910(haracter)h(b)s(elonging)f(to)g(that)g(class.)75 b(The)41
10911b Ft(word)630 1695 y Fu(c)m(haracter)32 b(class)f(matc)m(hes)h
7a8455e4 10912(letters,)f(digits,)h(and)d(the)i(c)m(haracter)h(`)p
e2520247 10913Ft(_)p Fu('.)630 1831 y(Within)25 b(`)p Ft([)p Fu(')f(and)g(`)p
7a8455e4
CR
10914Ft(])p Fu(',)i(an)e Fr(equiv)-5 b(alence)26 b(class)j
10915Fu(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h
e2520247 10916Ft([=)p Fr(c)6 b Ft(=])p Fu(,)630 1941 y(whic)m(h)29
7a8455e4 10917b(matc)m(hes)i(all)f(c)m(haracters)h(with)e(the)h(same)g(collation)h(w)
e2520247 10918m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 2051
7a8455e4 10919y(curren)m(t)g(lo)s(cale\))j(as)d(the)h(c)m(haracter)h
e2520247 10920Fr(c)p Fu(.)630 2187 y(Within)22 b(`)p Ft([)p Fu(')f(and)g(`)p
7a8455e4
CR
10921Ft(])p Fu(',)j(the)d(syn)m(tax)h Ft([.)p Fr(sym)m(b)s(ol)t
10922Ft(.])e Fu(matc)m(hes)i(the)g(collating)i(sym)m(b)s(ol)d
e2520247 10923Fr(sym)m(b)s(ol)p Fu(.)275 2353 y(If)i(the)g Ft(extglob)f
7a8455e4
CR
10924Fu(shell)h(option)h(is)g(enabled)f(using)g(the)h Ft(shopt)e
10925Fu(builtin,)i(the)g(shell)f(recognizes)j(sev)m(eral)150
e2520247 109262462 y(extended)i(pattern)f(matc)m(hing)i(op)s(erators.)40
e59452c7 10927b(In)26 b(the)i(follo)m(wing)h(description,)g(a)e Fr(pattern-list)k
e2520247 10928Fu(is)d(a)g(list)g(of)150 2572 y(one)23 b(or)f(more)h(patterns)g
3011048a
CR
10929(separated)g(b)m(y)f(a)h(`)p Ft(|)p Fu('.)38 b(When)22
10930b(matc)m(hing)i(\014lenames,)g(the)f Ft(dotglob)e Fu(shell)h(option)150
e2520247 109312682 y(determines)h(the)h(set)g(of)g(\014lenames)f(that)h(are)g
3011048a 10932(tested,)i(as)d(describ)s(ed)g(ab)s(o)m(v)m(e.)39 b(Comp)s(osite)24
e2520247
CR
10933b(patterns)f(ma)m(y)150 2791 y(b)s(e)30 b(formed)g(using)f(one)i(or)f
10934(more)h(of)g(the)f(follo)m(wing)i(sub-patterns:)150 2957
10935y Ft(?\()p Fj(pattern-list)p Ft(\))630 3066 y Fu(Matc)m(hes)g(zero)f
3011048a 10936(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m(en)g(patterns.)150
e2520247 109373230 y Ft(*\()p Fj(pattern-list)p Ft(\))630 3340 y Fu(Matc)m(hes)h
3011048a 10938(zero)f(or)g(more)f(o)s(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)
e2520247 10939150 3503 y Ft(+\()p Fj(pattern-list)p Ft(\))630 3613
3011048a 10940y Fu(Matc)m(hes)h(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m
e2520247
CR
10941(en)i(patterns.)150 3776 y Ft(@\()p Fj(pattern-list)p
10942Ft(\))630 3886 y Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.)
10943150 4049 y Ft(!\()p Fj(pattern-list)p Ft(\))630 4159
10944y Fu(Matc)m(hes)h(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g
10945(patterns.)275 4325 y(The)h Ft(extglob)f Fu(option)j(c)m(hanges)g(the)f
10946(b)s(eha)m(vior)g(of)h(the)f(parser,)g(since)h(the)f(paren)m(theses)h
10947(are)f(nor-)150 4434 y(mally)44 b(treated)g(as)f(op)s(erators)g(with)g
10948(syn)m(tactic)i(meaning.)79 b(T)-8 b(o)44 b(ensure)e(that)i(extended)f
10949(matc)m(hing)150 4544 y(patterns)30 b(are)g(parsed)f(correctly)-8
10950b(,)32 b(mak)m(e)e(sure)g(that)g Ft(extglob)e Fu(is)h(enabled)h(b)s
10951(efore)f(parsing)h(constructs)150 4653 y(con)m(taining)i(the)e
10952(patterns,)h(including)f(shell)h(functions)f(and)f(command)h
10953(substitutions.)275 4792 y(When)c(matc)m(hing)i(\014lenames,)g(the)f
10954Ft(dotglob)e Fu(shell)i(option)h(determines)f(the)g(set)g(of)g
10955(\014lenames)g(that)150 4902 y(are)34 b(tested:)47 b(when)33
10956b Ft(dotglob)e Fu(is)i(enabled,)i(the)e(set)h(of)g(\014lenames)f
10957(includes)g(all)h(\014les)g(b)s(eginning)e(with)150 5011
10958y(`)p Ft(.)p Fu(',)d(but)e(the)g(\014lenames)h(`)p Ft(.)p
10959Fu(')g(and)f(`)p Ft(..)p Fu(')g(m)m(ust)h(b)s(e)f(matc)m(hed)h(b)m(y)g
10960(a)g(pattern)g(or)f(sub-pattern)g(that)h(b)s(egins)150
109615121 y(with)33 b(a)g(dot;)j(when)c(it)h(is)h(disabled,)f(the)h(set)g
10962(do)s(es)e(not)i(include)f(an)m(y)g(\014lenames)g(b)s(eginning)g(with)g
10963(\\.")150 5230 y(unless)24 b(the)g(pattern)h(or)f(sub-pattern)g(b)s
10964(egins)g(with)g(a)g(`)p Ft(.)p Fu('.)39 b(As)25 b(ab)s(o)m(v)m(e,)i(`)p
10965Ft(.)p Fu(')d(only)h(has)f(a)h(sp)s(ecial)g(meaning)150
109665340 y(when)k(matc)m(hing)j(\014lenames.)p eop end
10967%%Page: 39 45
10968TeXDict begin 39 44 bop 150 -116 a Fu(Chapter)30 b(3:)41
10969b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(39)275 299
10970y(Complicated)41 b(extended)f(pattern)g(matc)m(hing)h(against)h(long)f
10971(strings)f(is)g(slo)m(w,)k(esp)s(ecially)d(when)150 408
10972y(the)29 b(patterns)g(con)m(tain)i(alternations)f(and)f(the)g(strings)g
10973(con)m(tain)h(m)m(ultiple)g(matc)m(hes.)42 b(Using)29
10974b(separate)150 518 y(matc)m(hes)38 b(against)g(shorter)e(strings,)i(or)
10975f(using)f(arra)m(ys)h(of)g(strings)f(instead)h(of)g(a)g(single)g(long)h
10976(string,)150 628 y(ma)m(y)31 b(b)s(e)f(faster.)150 828
10977y Fk(3.5.9)63 b(Quote)41 b(Remo)m(v)-7 b(al)150 975 y
10978Fu(After)32 b(the)g(preceding)g(expansions,)h(all)f(unquoted)f(o)s
10979(ccurrences)h(of)g(the)h(c)m(haracters)g(`)p Ft(\\)p
10980Fu(',)g(`)p Ft(')p Fu(',)f(and)g(`)p Ft(")p Fu(')150
109811085 y(that)f(did)f(not)g(result)g(from)g(one)h(of)g(the)f(ab)s(o)m(v)m
10982(e)i(expansions)e(are)h(remo)m(v)m(ed.)150 1328 y Fs(3.6)68
10983b(Redirections)150 1487 y Fu(Before)32 b(a)f(command)f(is)h(executed,)h
10984(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f Fr(redirected)k
10985Fu(using)c(a)i(sp)s(ecial)f(no-)150 1597 y(tation)d(in)m(terpreted)f(b)
10986m(y)f(the)h(shell.)40 b Fr(Redirection)27 b Fu(allo)m(ws)h(commands')f
10987(\014le)f(handles)g(to)i(b)s(e)e(duplicated,)150 1706
10988y(op)s(ened,)i(closed,)i(made)e(to)h(refer)f(to)h(di\013eren)m(t)f
10989(\014les,)h(and)f(can)g(c)m(hange)h(the)g(\014les)f(the)g(command)g
10990(reads)150 1816 y(from)39 b(and)g(writes)h(to.)69 b(Redirection)40
10991b(ma)m(y)g(also)h(b)s(e)e(used)g(to)h(mo)s(dify)f(\014le)g(handles)g
10992(in)g(the)h(curren)m(t)150 1925 y(shell)e(execution)h(en)m(vironmen)m
10993(t.)65 b(The)37 b(follo)m(wing)j(redirection)f(op)s(erators)f(ma)m(y)g
10994(precede)h(or)f(app)s(ear)150 2035 y(an)m(ywhere)30 b(within)f(a)h
10995(simple)f(command)h(or)f(ma)m(y)i(follo)m(w)g(a)f(command.)40
10996b(Redirections)30 b(are)g(pro)s(cessed)150 2145 y(in)g(the)h(order)f
10997(they)g(app)s(ear,)g(from)g(left)h(to)g(righ)m(t.)275
109982280 y(Eac)m(h)45 b(redirection)h(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)
10999m(y)h(a)h(\014le)f(descriptor)f(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)
11000s(e)150 2390 y(preceded)41 b(b)m(y)g(a)h(w)m(ord)f(of)g(the)h(form)f
7a8455e4 11001Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)74 b(In)41 b(this)g(case,)k
e2520247 11002(for)c(eac)m(h)i(redirection)f(op)s(erator)150 2500 y(except)37
7a8455e4
CR
11003b Ft(>)p Fu(&-)e(and)g Ft(<)p Fu(&-,)i(the)f(shell)g(will)g(allo)s
11004(cate)j(a)d(\014le)g(descriptor)f(greater)i(than)f(10)g(and)f(assign)h
e2520247 11005(it)150 2609 y(to)e Fi({)p Fr(v)-5 b(arname)5 b Fi(})p
7a8455e4
CR
11006Fu(.)52 b(If)33 b Ft(>)p Fu(&-)g(or)h Ft(<)p Fu(&-)f(is)g(preceded)h(b)
11007m(y)f Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(,)36 b(the)e(v)-5
e6983002 11008b(alue)34 b(of)f Fr(v)-5 b(arname)39 b Fu(de\014nes)33
e2520247 11009b(the)150 2719 y(\014le)e(descriptor)g(to)h(close.)43
e6983002
CR
11010b(If)31 b Fi({)p Fr(v)-5 b(arname)5 b Fi(})32 b Fu(is)f(supplied,)f
11011(the)h(redirection)g(p)s(ersists)f(b)s(ey)m(ond)h(the)g(scop)s(e)150
e2520247 110122828 y(of)42 b(the)f(command,)j(allo)m(wing)f(the)f(shell)g(programmer)
3011048a 11013f(to)h(manage)g(the)g(\014le)f(descriptor's)h(lifetime)150
e2520247 110142938 y(man)m(ually)-8 b(.)41 b(The)29 b Ft(varredir_close)c
e59452c7 11015Fu(shell)k(option)g(manages)h(this)f(b)s(eha)m(vior)g(\(see)h(Section)f
e2520247
CR
11016(4.3.2)i([The)150 3048 y(Shopt)f(Builtin],)h(page)g(72\).)275
110173183 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g
e59452c7 11018(descriptor)f(n)m(um)m(b)s(er)g(is)g(omitted,)i(and)f(the)f(\014rst)g
e2520247 11019(c)m(har-)150 3293 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g
e59452c7 11020(is)g(`)p Ft(<)p Fu(',)i(the)e(redirection)g(refers)g(to)g(the)g
e2520247 11021(standard)f(input)f(\(\014le)150 3403 y(descriptor)33
e59452c7
CR
11022b(0\).)49 b(If)33 b(the)g(\014rst)f(c)m(haracter)i(of)g(the)f
11023(redirection)g(op)s(erator)h(is)f(`)p Ft(>)p Fu(',)h(the)f(redirection)
e2520247
CR
11024g(refers)150 3512 y(to)e(the)g(standard)e(output)h(\(\014le)h
11025(descriptor)f(1\).)275 3648 y(The)h(w)m(ord)h(follo)m(wing)i(the)f
e59452c7 11026(redirection)g(op)s(erator)f(in)g(the)h(follo)m(wing)h(descriptions,)f
e2520247 11027(unless)e(other-)150 3758 y(wise)21 b(noted,)i(is)e(sub)5
e59452c7 11028b(jected)21 b(to)h(brace)f(expansion,)i(tilde)f(expansion,)h(parameter)
e2520247 11029e(expansion,)i(command)150 3867 y(substitution,)31 b(arithmetic)h
e59452c7 11030(expansion,)f(quote)h(remo)m(v)-5 b(al,)33 b(\014lename)e(expansion,)g
e2520247
CR
11031(and)f(w)m(ord)h(splitting.)150 3977 y(If)f(it)h(expands)e(to)i(more)g
11032(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)275
110334113 y(Note)h(that)g(the)g(order)f(of)g(redirections)h(is)g
11034(signi\014can)m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390
110354249 y Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 4384 y
11036Fu(directs)28 b(b)s(oth)f(standard)g(output)g(\(\014le)h(descriptor)f
11037(1\))i(and)e(standard)f(error)i(\(\014le)g(descriptor)f(2\))h(to)h(the)
11038150 4494 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390
110394630 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 4766 y Fu(directs)28
e230f997
CR
11040b(only)f(the)h(standard)e(output)i(to)g(\014le)f Fr(dirlist)p
11041Fu(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)h(made)f(a)h(cop)m
e2520247 11042(y)150 4875 y(of)j(the)f(standard)g(output)g(b)s(efore)g(the)g
e230f997 11043(standard)g(output)g(w)m(as)g(redirected)h(to)g Fr(dirlist)p
e2520247 11044Fu(.)275 5011 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s
e230f997 11045(ecially)h(when)f(they)g(are)g(used)g(in)g(redirections,)i(as)e
e2520247 11046(describ)s(ed)150 5121 y(in)38 b(the)h(follo)m(wing)h(table.)66
e230f997 11047b(If)38 b(the)h(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)h(is)f
e2520247 11048(running)f(pro)m(vides)h(these)150 5230 y(sp)s(ecial)26
d052bd6f
CR
11049b(\014les,)g(Bash)f(will)h(use)e(them;)k(otherwise)d(it)h(will)f(em)m
11050(ulate)i(them)e(in)m(ternally)h(with)f(the)g(b)s(eha)m(vior)150
e2520247
CR
110515340 y(describ)s(ed)k(b)s(elo)m(w.)p eop end
11052%%Page: 40 46
11053TeXDict begin 40 45 bop 150 -116 a Fu(Chapter)30 b(3:)41
11054b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(40)150 299
11055y Ft(/dev/fd/)p Fj(fd)630 408 y Fu(If)30 b Fr(fd)j Fu(is)d(a)h(v)-5
11056b(alid)31 b(in)m(teger,)h(\014le)e(descriptor)h Fr(fd)i
11057Fu(is)d(duplicated.)150 559 y Ft(/dev/stdin)630 669 y
11058Fu(File)i(descriptor)e(0)h(is)f(duplicated.)150 820 y
11059Ft(/dev/stdout)630 929 y Fu(File)i(descriptor)e(1)h(is)f(duplicated.)
11060150 1080 y Ft(/dev/stderr)630 1190 y Fu(File)i(descriptor)e(2)h(is)f
11061(duplicated.)150 1340 y Ft(/dev/tcp/)p Fj(host)p Ft(/)p
11062Fj(port)630 1450 y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5
11063b(alid)41 b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c
11064Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s(ort)630 1560
11065y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f(attempts)h(to)f
11066(op)s(en)f(the)h(corresp)s(onding)f(TCP)g(so)s(c)m(k)m(et.)150
110671710 y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630 1820
d052bd6f
CR
11068y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 b(hostname)h(or)f(In)
11069m(ternet)h(address,)i(and)c Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s
e2520247
CR
11070(ort)630 1929 y(n)m(um)m(b)s(er)23 b(or)h(service)h(name,)h(Bash)e
11071(attempts)h(to)g(op)s(en)f(the)g(corresp)s(onding)f(UDP)i(so)s(c)m(k)m
11072(et.)275 2080 y(A)30 b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e
11073(\014le)h(causes)g(the)f(redirection)h(to)g(fail.)275
110742210 y(Redirections)f(using)e(\014le)i(descriptors)f(greater)h(than)f
11075(9)h(should)e(b)s(e)h(used)f(with)h(care,)h(as)g(they)f(ma)m(y)150
110762320 y(con\015ict)i(with)f(\014le)h(descriptors)f(the)g(shell)h(uses)f
11077(in)m(ternally)-8 b(.)150 2511 y Fk(3.6.1)63 b(Redirecting)40
11078b(Input)150 2658 y Fu(Redirection)35 b(of)f(input)f(causes)i(the)f
11079(\014le)g(whose)g(name)g(results)g(from)g(the)g(expansion)g(of)g
11080Fr(w)m(ord)k Fu(to)d(b)s(e)150 2767 y(op)s(ened)d(for)g(reading)g(on)g
11081(\014le)h(descriptor)f Ft(n)p Fu(,)h(or)f(the)g(standard)g(input)f
11082(\(\014le)i(descriptor)f(0\))h(if)f Ft(n)g Fu(is)h(not)150
110832877 y(sp)s(eci\014ed.)275 3007 y(The)c(general)j(format)e(for)h
11084(redirecting)g(input)e(is:)390 3137 y Ft([)p Fj(n)p Ft(]<)p
11085Fj(word)150 3328 y Fk(3.6.2)63 b(Redirecting)40 b(Output)150
110863475 y Fu(Redirection)31 b(of)g(output)f(causes)h(the)f(\014le)h(whose)
3011048a 11087f(name)g(results)h(from)e(the)i(expansion)f(of)h Fr(w)m(ord)i
e2520247 11088Fu(to)f(b)s(e)150 3584 y(op)s(ened)d(for)g(writing)g(on)g(\014le)h
3011048a 11089(descriptor)f Fr(n)p Fu(,)g(or)g(the)h(standard)e(output)h(\(\014le)h
e2520247 11090(descriptor)f(1\))h(if)g Fr(n)e Fu(is)i(not)150 3694
3011048a
CR
11091y(sp)s(eci\014ed.)40 b(If)30 b(the)g(\014le)h(do)s(es)f(not)h(exist)g
11092(it)g(is)f(created;)i(if)e(it)h(do)s(es)f(exist)h(it)g(is)g(truncated)f
e2520247
CR
11093(to)h(zero)g(size.)275 3824 y(The)e(general)j(format)e(for)h
11094(redirecting)g(output)f(is:)390 3954 y Ft([)p Fj(n)p
11095Ft(]>[|])p Fj(word)275 4084 y Fu(If)g(the)h(redirection)g(op)s(erator)g
11096(is)g(`)p Ft(>)p Fu(',)g(and)f(the)h Ft(noclobber)d Fu(option)j(to)g
11097(the)g Ft(set)f Fu(builtin)g(has)h(b)s(een)150 4194 y(enabled,)h(the)g
d37a4722
CR
11098(redirection)h(will)f(fail)h(if)e(the)i(\014le)e(whose)h(name)g
11099(results)g(from)f(the)h(expansion)g(of)g Fr(w)m(ord)150
e2520247 111004304 y Fu(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
e230f997
CR
11101b(If)30 b(the)h(redirection)g(op)s(erator)g(is)f(`)p
11102Ft(>|)p Fu(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150
e2520247 111034413 y(`)p Ft(>)p Fu(')36 b(and)f(the)g Ft(noclobber)e
e230f997 11104Fu(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g
e2520247
CR
11105(ev)m(en)h(if)e(the)h(\014le)150 4523 y(named)30 b(b)m(y)g
11106Fr(w)m(ord)k Fu(exists.)150 4713 y Fk(3.6.3)63 b(App)s(ending)42
11107b(Redirected)e(Output)150 4860 y Fu(Redirection)23 b(of)e(output)h(in)f
e230f997 11108(this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f
e2520247 11109(from)g(the)h(expansion)g(of)150 4970 y Fr(w)m(ord)28
e230f997
CR
11110b Fu(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g
11111(descriptor)g Fr(n)p Fu(,)g(or)g(the)g(standard)f(output)h(\(\014le)g
e2520247 11112(descriptor)150 5080 y(1\))31 b(if)f Fr(n)g Fu(is)h(not)f(sp)s
e230f997 11113(eci\014ed.)40 b(If)30 b(the)h(\014le)f(do)s(es)g(not)h(exist)g(it)g
e2520247
CR
11114(is)f(created.)275 5210 y(The)f(general)j(format)e(for)h(app)s(ending)e
11115(output)h(is:)390 5340 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)p
11116eop end
7a8455e4
CR
11117%%Page: 41 47
11118TeXDict begin 41 46 bop 150 -116 a Fu(Chapter)30 b(3:)41
e2520247
CR
11119b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(41)150 299
11120y Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g(Standard)g
11121(Error)150 446 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g
11122(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g
11123(standard)f(error)150 555 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g
11124(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is)f(the)g
11125(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 698 y(There)f(are)i(t)m(w)m(o)h
11126(formats)e(for)h(redirecting)g(standard)e(output)h(and)g(standard)f
11127(error:)390 841 y Ft(&>)p Fj(word)150 984 y Fu(and)390
111281127 y Ft(>&)p Fj(word)150 1270 y Fu(Of)h(the)g(t)m(w)m(o)i(forms,)e
11129(the)h(\014rst)e(is)i(preferred.)39 b(This)30 b(is)g(seman)m(tically)j
11130(equiv)-5 b(alen)m(t)32 b(to)390 1414 y Ft(>)p Fj(word)46
11131b Ft(2>&1)275 1557 y Fu(When)41 b(using)g(the)h(second)f(form,)k
11132Fr(w)m(ord)f Fu(ma)m(y)e(not)g(expand)f(to)h(a)g(n)m(um)m(b)s(er)f(or)g
11133(`)p Ft(-)p Fu('.)75 b(If)41 b(it)h(do)s(es,)150 1666
11134y(other)27 b(redirection)g(op)s(erators)f(apply)h(\(see)g(Duplicating)h
11135(File)f(Descriptors)h(b)s(elo)m(w\))f(for)f(compatibilit)m(y)150
111361776 y(reasons.)150 1983 y Fk(3.6.5)63 b(App)s(ending)42
11137b(Standard)f(Output)g(and)g(Standard)g(Error)150 2130
11138y Fu(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g(standard)g
11139(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g(standard)f(error)
11140150 2240 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g(b)s(e)f(app)s
11141(ended)f(to)i(the)f(\014le)h(whose)f(name)g(is)h(the)f(expansion)h(of)f
11142Fr(w)m(ord)p Fu(.)275 2383 y(The)f(format)i(for)f(app)s(ending)f
11143(standard)h(output)g(and)f(standard)h(error)g(is:)390
111442526 y Ft(&>>)p Fj(word)150 2669 y Fu(This)g(is)g(seman)m(tically)j
11145(equiv)-5 b(alen)m(t)32 b(to)390 2812 y Ft(>>)p Fj(word)46
11146b Ft(2>&1)275 2955 y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g
11147(b)s(elo)m(w\).)150 3163 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
111483310 y Fu(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h
11149(shell)f(to)i(read)e(input)g(from)g(the)h(curren)m(t)f(source)h(un)m
11150(til)g(a)150 3419 y(line)33 b(con)m(taining)g(only)g
11151Fr(delimiter)39 b Fu(\(with)32 b(no)g(trailing)i(blanks\))e(is)g(seen.)
1115246 b(All)33 b(of)f(the)h(lines)f(read)g(up)f(to)150 3529
11153y(that)k(p)s(oin)m(t)f(are)g(then)g(used)g(as)g(the)g(standard)g(input)
11154f(\(or)h(\014le)g(descriptor)g Fr(n)g Fu(if)g Fr(n)g
11155Fu(is)g(sp)s(eci\014ed\))g(for)g(a)150 3639 y(command.)275
111563782 y(The)29 b(format)i(of)g(here-do)s(cumen)m(ts)f(is:)390
111573925 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p Ft(])p Fj(word)772
111584034 y(here-document)390 4144 y(delimiter)275 4287 y
11159Fu(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h(command)f
11160(substitution,)h(arithmetic)g(expansion,)g(or)150 4396
11161y(\014lename)e(expansion)f(is)g(p)s(erformed)f(on)h Fr(w)m(ord)p
11162Fu(.)275 4539 y(If)40 b(an)m(y)i(part)g(of)f Fr(w)m(ord)k
11163Fu(is)c(quoted,)k(the)c Fr(delimiter)49 b Fu(is)41 b(the)h(result)f(of)
11164h(quote)g(remo)m(v)-5 b(al)43 b(on)e Fr(w)m(ord)p Fu(,)150
111654649 y(and)d(the)h(lines)g(in)f(the)h(here-do)s(cumen)m(t)g(are)g(not)g
11166(expanded.)65 b(If)38 b Fr(w)m(ord)k Fu(is)d(unquoted,)h
11167Fr(delimiter)46 b Fu(is)150 4759 y Fr(w)m(ord)32 b Fu(itself,)e(all)f
11168(lines)g(of)g(the)g(here-do)s(cumen)m(t)f(are)h(sub)5
11169b(jected)29 b(to)g(parameter)g(expansion,)g(command)150
111704868 y(substitution,)39 b(and)e(arithmetic)i(expansion,)g(the)f(c)m
11171(haracter)h(sequence)e Ft(\\newline)f Fu(is)h(ignored,)j(and)150
111724978 y(`)p Ft(\\)p Fu(')31 b(m)m(ust)f(b)s(e)g(used)f(to)i(quote)g(the)
11173g(c)m(haracters)h(`)p Ft(\\)p Fu(',)e(`)p Ft($)p Fu(',)h(and)f(`)p
11174Ft(`)p Fu('.)275 5121 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f
11175(`)p Ft(<<-)p Fu(',)i(then)e(all)h(leading)g(tab)g(c)m(haracters)h(are)
11176e(stripp)s(ed)f(from)h(input)150 5230 y(lines)33 b(and)f(the)h(line)h
d052bd6f
CR
11177(con)m(taining)g Fr(delimiter)p Fu(.)49 b(This)32 b(allo)m(ws)i
11178(here-do)s(cumen)m(ts)f(within)f(shell)i(scripts)e(to)150
e2520247
CR
111795340 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)p
11180eop end
11181%%Page: 42 48
11182TeXDict begin 42 47 bop 150 -116 a Fu(Chapter)30 b(3:)41
11183b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(42)150 299
11184y Fk(3.6.7)63 b(Here)41 b(Strings)150 446 y Fu(A)30 b(v)-5
11185b(arian)m(t)32 b(of)e(here)h(do)s(cumen)m(ts,)f(the)g(format)h(is:)390
11186600 y Ft([)p Fj(n)p Ft(]<<<)46 b Fj(word)275 753 y Fu(The)29
11187b Fr(w)m(ord)k Fu(undergo)s(es)c(tilde)i(expansion,)f(parameter)h(and)e
11188(v)-5 b(ariable)31 b(expansion,)f(command)g(sub-)150
11189863 y(stitution,)f(arithmetic)f(expansion,)g(and)f(quote)h(remo)m(v)-5
fc35c477 11190b(al.)41 b(Filename)29 b(expansion)e(and)f(w)m(ord)h(splitting)150
e2520247 11191973 y(are)35 b(not)g(p)s(erformed.)51 b(The)34 b(result)h(is)g
e230f997 11192(supplied)e(as)i(a)f(single)i(string,)f(with)g(a)g(newline)f(app)s
e2520247 11193(ended,)g(to)150 1082 y(the)d(command)f(on)g(its)h(standard)e(input)h
e230f997 11194(\(or)g(\014le)h(descriptor)f Fr(n)g Fu(if)g Fr(n)g Fu(is)h(sp)s
e2520247
CR
11195(eci\014ed\).)150 1301 y Fk(3.6.8)63 b(Duplicating)41
11196b(File)g(Descriptors)150 1448 y Fu(The)30 b(redirection)h(op)s(erator)
11197390 1602 y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 1755 y
e230f997
CR
11198Fu(is)k(used)e(to)j(duplicate)f(input)f(\014le)g(descriptors.)53
11199b(If)34 b Fr(w)m(ord)k Fu(expands)c(to)h(one)g(or)g(more)g(digits,)h
e2520247 11200(the)f(\014le)150 1865 y(descriptor)e(denoted)h(b)m(y)f
e230f997 11201Fr(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
7a8455e4 11202(descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fr(w)m(ord)150
e2520247 112031975 y Fu(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g
7a8455e4 11204(for)g(input,)g(a)h(redirection)g(error)f(o)s(ccurs.)40
e2520247 11205b(If)29 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)150 2084 y(to)31
7a8455e4 11206b(`)p Ft(-)p Fu(',)g(\014le)g(descriptor)g Fr(n)f Fu(is)g(closed.)43
3011048a 11207b(If)30 b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f
e2520247
CR
11208(input)g(\(\014le)h(descriptor)f(0\))150 2194 y(is)g(used.)275
112092348 y(The)f(op)s(erator)390 2502 y Ft([)p Fj(n)p Ft(]>&)p
11210Fj(word)150 2655 y Fu(is)40 b(used)g(similarly)h(to)g(duplicate)f
3011048a 11211(output)g(\014le)h(descriptors.)70 b(If)40 b Fr(n)f Fu(is)i(not)f(sp)s
e2520247 11212(eci\014ed,)i(the)f(standard)150 2765 y(output)30 b(\(\014le)g
3011048a
CR
11213(descriptor)g(1\))h(is)f(used.)39 b(If)30 b(the)g(digits)h(in)e
11214Fr(w)m(ord)34 b Fu(do)29 b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g
e2520247 11215(op)s(en)150 2875 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s
3011048a
CR
11216(ccurs.)55 b(If)35 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)37
11217b(to)f(`)p Ft(-)p Fu(',)h(\014le)e(descriptor)g Fr(n)g
e2520247 11218Fu(is)g(closed.)150 2984 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e
3011048a
CR
11219Fr(n)f Fu(is)h(omitted,)i(and)e Fr(w)m(ord)j Fu(do)s(es)d(not)g(expand)
11220f(to)i(one)f(or)g(more)g(digits)h(or)f(`)p Ft(-)p Fu(',)150
e2520247 112213094 y(the)d(standard)e(output)h(and)g(standard)f(error)h(are)h
3011048a 11222(redirected)g(as)g(describ)s(ed)e(previously)-8 b(.)150
e2520247
CR
112233312 y Fk(3.6.9)63 b(Mo)m(ving)41 b(File)h(Descriptors)150
112243459 y Fu(The)30 b(redirection)h(op)s(erator)390 3613
11225y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150 3767 y Fu(mo)m(v)m(es)i
3011048a
CR
11226(the)f(\014le)g(descriptor)f Fr(digit)k Fu(to)d(\014le)g(descriptor)g
11227Fr(n)p Fu(,)f(or)h(the)g(standard)f(input)f(\(\014le)j(descriptor)e
e2520247 11228(0\))150 3876 y(if)f Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)40
3011048a 11229b Fr(digit)33 b Fu(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
e2520247
CR
11230Fr(n)p Fu(.)275 4030 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
11231(erator)390 4184 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p
11232Ft(-)150 4338 y Fu(mo)m(v)m(es)e(the)g(\014le)f(descriptor)f
11233Fr(digit)k Fu(to)e(\014le)f(descriptor)g Fr(n)p Fu(,)g(or)g(the)g
11234(standard)f(output)h(\(\014le)g(descriptor)g(1\))150
112354448 y(if)i Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150
112364666 y Fk(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
11237(Reading)e(and)h(W)-10 b(riting)150 4813 y Fu(The)30
11238b(redirection)h(op)s(erator)390 4967 y Ft([)p Fj(n)p
11239Ft(]<>)p Fj(word)150 5121 y Fu(causes)39 b(the)g(\014le)g(whose)g(name)
11240g(is)g(the)g(expansion)g(of)g Fr(w)m(ord)j Fu(to)d(b)s(e)g(op)s(ened)f
11241(for)g(b)s(oth)h(reading)g(and)150 5230 y(writing)33
11242b(on)f(\014le)h(descriptor)f Fr(n)p Fu(,)h(or)g(on)f(\014le)h
11243(descriptor)g(0)g(if)f Fr(n)g Fu(is)h(not)g(sp)s(eci\014ed.)47
11244b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 5340 y(exist,)e(it)g(is)g
11245(created.)p eop end
11246%%Page: 43 49
11247TeXDict begin 43 48 bop 150 -116 a Fu(Chapter)30 b(3:)41
11248b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(43)150 299
11249y Fs(3.7)68 b(Executing)46 b(Commands)150 523 y Fk(3.7.1)63
11250b(Simple)41 b(Command)h(Expansion)150 670 y Fu(When)33
7a8455e4 11251b(a)g(simple)g(command)g(is)g(executed,)h(the)g(shell)f(p)s(erforms)e
e2520247
CR
11252(the)i(follo)m(wing)i(expansions,)e(assign-)150 779 y(men)m(ts,)e(and)f
11253(redirections,)h(from)f(left)h(to)g(righ)m(t,)g(in)f(the)h(follo)m
11254(wing)h(order.)199 913 y(1.)61 b(The)38 b(w)m(ords)f(that)i(the)g
11255(parser)e(has)h(mark)m(ed)g(as)h(v)-5 b(ariable)39 b(assignmen)m(ts)g
11256(\(those)g(preceding)f(the)330 1023 y(command)30 b(name\))h(and)f
11257(redirections)h(are)f(sa)m(v)m(ed)i(for)e(later)h(pro)s(cessing.)199
112581157 y(2.)61 b(The)39 b(w)m(ords)g(that)i(are)f(not)g(v)-5
11259b(ariable)40 b(assignmen)m(ts)h(or)e(redirections)i(are)f(expanded)f
11260(\(see)h(Sec-)330 1267 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g
11261(24\).)61 b(If)37 b(an)m(y)g(w)m(ords)f(remain)h(after)h(expansion,)h
11262(the)e(\014rst)330 1376 y(w)m(ord)31 b(is)g(tak)m(en)h(to)g(b)s(e)f
11263(the)g(name)h(of)f(the)h(command)f(and)f(the)i(remaining)f(w)m(ords)g
11264(are)g(the)h(argu-)330 1486 y(men)m(ts.)199 1620 y(3.)61
11265b(Redirections)25 b(are)f(p)s(erformed)f(as)h(describ)s(ed)f(ab)s(o)m
11266(v)m(e)i(\(see)g(Section)g(3.6)g([Redirections],)i(page)d(39\).)199
112671754 y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Ft(=)p
11268Fu(')h(in)e(eac)m(h)j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)
11269e(tilde)i(expansion,)g(parameter)330 1864 y(expansion,)49
11270b(command)d(substitution,)j(arithmetic)d(expansion,)k(and)45
11271b(quote)h(remo)m(v)-5 b(al)46 b(b)s(efore)330 1973 y(b)s(eing)30
11272b(assigned)h(to)g(the)f(v)-5 b(ariable.)275 2132 y(If)32
11273b(no)i(command)f(name)g(results,)h(the)g(v)-5 b(ariable)34
11274b(assignmen)m(ts)g(a\013ect)h(the)f(curren)m(t)f(shell)h(en)m(viron-)
11275150 2242 y(men)m(t.)68 b(In)38 b(the)h(case)i(of)e(suc)m(h)g(a)g
11276(command)g(\(one)h(that)g(consists)g(only)f(of)g(assignmen)m(t)h
11277(statemen)m(ts)150 2351 y(and)27 b(redirections\),)i(assignmen)m(t)g
3011048a 11278(statemen)m(ts)g(are)f(p)s(erformed)e(b)s(efore)h(redirections.)41
e2520247 11279b(Otherwise,)28 b(the)150 2461 y(v)-5 b(ariables)27 b(are)g(added)e(to)
7a8455e4 11280i(the)g(en)m(vironmen)m(t)g(of)f(the)h(executed)g(command)f(and)g(do)g
e2520247 11281(not)h(a\013ect)h(the)e(cur-)150 2570 y(ren)m(t)32 b(shell)f(en)m
3011048a
CR
11282(vironmen)m(t.)44 b(If)31 b(an)m(y)g(of)h(the)f(assignmen)m(ts)h
11283(attempts)g(to)g(assign)g(a)f(v)-5 b(alue)32 b(to)g(a)g(readonly)150
e2520247 112842680 y(v)-5 b(ariable,)31 b(an)g(error)f(o)s(ccurs,)g(and)g(the)g
3011048a 11285(command)g(exits)i(with)e(a)g(non-zero)h(status.)275
e2520247 112862814 y(If)i(no)g(command)g(name)h(results,)g(redirections)g(are)g(p)s
e59452c7 11287(erformed,)f(but)g(do)h(not)f(a\013ect)i(the)f(curren)m(t)150
e2520247 112882924 y(shell)d(en)m(vironmen)m(t.)41 b(A)30 b(redirection)h(error)f
e59452c7 11289(causes)h(the)g(command)f(to)h(exit)g(with)f(a)h(non-zero)g(status.)275
e2520247 112903058 y(If)26 b(there)i(is)f(a)h(command)f(name)h(left)g(after)g
e59452c7 11291(expansion,)g(execution)h(pro)s(ceeds)e(as)g(describ)s(ed)f(b)s(elo)m
e2520247 11292(w.)150 3167 y(Otherwise,)39 b(the)e(command)g(exits.)62
e59452c7 11293b(If)37 b(one)g(of)g(the)h(expansions)f(con)m(tained)h(a)g(command)f
e2520247 11294(substitu-)150 3277 y(tion,)i(the)d(exit)h(status)g(of)f(the)h(command)
3011048a 11295f(is)h(the)f(exit)h(status)g(of)f(the)h(last)g(command)f(substitution)
e2520247 11296150 3387 y(p)s(erformed.)55 b(If)35 b(there)g(w)m(ere)h(no)g(command)f
e59452c7 11297(substitutions,)i(the)e(command)h(exits)g(with)f(a)h(status)g(of)150
e2520247
CR
112983496 y(zero.)150 3695 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h
11299(Execution)150 3842 y Fu(After)i(a)h(command)f(has)g(b)s(een)f(split)h
e59452c7 11300(in)m(to)h(w)m(ords,)j(if)c(it)g(results)g(in)g(a)h(simple)f(command)g
e2520247
CR
11301(and)f(an)150 3951 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g
11302(shell)f(p)s(erforms)f(the)i(follo)m(wing)g(actions.)199
113034085 y(1.)61 b(If)24 b(the)g(command)g(name)g(con)m(tains)i(no)e
11304(slashes,)i(the)e(shell)h(attempts)g(to)g(lo)s(cate)h(it.)39
11305b(If)24 b(there)g(exists)330 4195 y(a)h(shell)g(function)f(b)m(y)g
11306(that)h(name,)h(that)f(function)f(is)h(in)m(v)m(ok)m(ed)h(as)e(describ)
11307s(ed)g(in)g(Section)h(3.3)h([Shell)330 4305 y(F)-8 b(unctions],)31
11308b(page)h(19.)199 4439 y(2.)61 b(If)41 b(the)g(name)h(do)s(es)f(not)g
d052bd6f 11309(matc)m(h)i(a)e(function,)j(the)e(shell)f(searc)m(hes)i(for)e(it)h(in)f
e2520247 11310(the)g(list)h(of)g(shell)330 4548 y(builtins.)e(If)30
d052bd6f 11311b(a)h(matc)m(h)g(is)f(found,)g(that)h(builtin)f(is)g(in)m(v)m(ok)m(ed.)
e2520247 11312199 4682 y(3.)61 b(If)40 b(the)g(name)h(is)f(neither)h(a)f(shell)h
d052bd6f 11313(function)f(nor)g(a)g(builtin,)j(and)d(con)m(tains)h(no)g(slashes,)i
e2520247 11314(Bash)330 4792 y(searc)m(hes)c(eac)m(h)g(elemen)m(t)g(of)g
d052bd6f 11315Ft($PATH)d Fu(for)i(a)g(directory)h(con)m(taining)g(an)f(executable)h
e2520247 11316(\014le)f(b)m(y)g(that)330 4902 y(name.)56 b(Bash)36
d052bd6f 11317b(uses)f(a)h(hash)e(table)j(to)f(remem)m(b)s(er)f(the)h(full)f
e2520247 11318(pathnames)g(of)h(executable)h(\014les)e(to)330 5011
d052bd6f
CR
11319y(a)m(v)m(oid)e(m)m(ultiple)f Ft(PATH)f Fu(searc)m(hes)i(\(see)f(the)g
11320(description)g(of)f Ft(hash)g Fu(in)g(Section)i(4.1)f([Bourne)g(Shell)
e2520247 11321330 5121 y(Builtins],)37 b(page)f(49\).)55 b(A)35 b(full)g(searc)m(h)g
d052bd6f 11322(of)g(the)g(directories)h(in)f Ft($PATH)e Fu(is)i(p)s(erformed)f(only)h
e2520247 11323(if)g(the)330 5230 y(command)24 b(is)h(not)g(found)e(in)i(the)g(hash)f
d052bd6f 11324(table.)39 b(If)25 b(the)f(searc)m(h)i(is)e(unsuccessful,)h(the)g
e2520247 11325(shell)g(searc)m(hes)330 5340 y(for)e(a)h(de\014ned)e(shell)h(function)
d052bd6f 11326h(named)e Ft(command_not_found_handle)p Fu(.)32 b(If)23
e2520247
CR
11327b(that)h(function)f(exists,)p eop end
11328%%Page: 44 50
11329TeXDict begin 44 49 bop 150 -116 a Fu(Chapter)30 b(3:)41
11330b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(44)330 299
11331y(it)33 b(is)f(in)m(v)m(ok)m(ed)i(in)e(a)h(separate)h(execution)f(en)m
11332(vironmen)m(t)g(with)f(the)h(original)h(command)e(and)g(the)330
11333408 y(original)26 b(command's)e(argumen)m(ts)h(as)g(its)g(argumen)m
11334(ts,)h(and)e(the)h(function's)f(exit)i(status)f(b)s(ecomes)330
11335518 y(the)j(exit)g(status)g(of)f(that)h(subshell.)39
11336b(If)27 b(that)h(function)f(is)h(not)g(de\014ned,)f(the)g(shell)h(prin)
11337m(ts)f(an)g(error)330 628 y(message)k(and)f(returns)f(an)i(exit)g
11338(status)g(of)f(127.)199 759 y(4.)61 b(If)33 b(the)g(searc)m(h)h(is)g
11339(successful,)g(or)f(if)g(the)h(command)f(name)g(con)m(tains)i(one)f(or)
11340f(more)g(slashes,)i(the)330 868 y(shell)g(executes)h(the)f(named)f
11341(program)g(in)h(a)g(separate)h(execution)f(en)m(vironmen)m(t.)55
11342b(Argumen)m(t)35 b(0)330 978 y(is)30 b(set)h(to)h(the)e(name)h(giv)m
11343(en,)g(and)f(the)h(remaining)f(argumen)m(ts)h(to)g(the)g(command)f(are)
11344h(set)g(to)g(the)330 1087 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8
11345b(.)199 1218 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g
74d0116b 11346(the)f(\014le)h(is)g(not)g(in)f(executable)j(format,)f(and)e(the)h
e2520247 11347(\014le)g(is)g(not)330 1328 y(a)d(directory)-8 b(,)34
6e51e0d0
CR
11348b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fr(shell)g(script)h
11349Fu(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330
e2520247
CR
113501438 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(47.)199
113511569 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async)
8a0829e9 11352m(hronously)-8 b(,)42 b(the)c(shell)h(w)m(aits)h(for)e(the)h(command)f
e2520247
CR
11353(to)330 1678 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150
113541870 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
113552017 y Fu(The)30 b(shell)g(has)h(an)f Fr(execution)h(en)m(vironmen)m(t)
7a8455e4 11356p Fu(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)225
e2520247 113572148 y Fq(\017)60 b Fu(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f
3011048a 11358(shell)h(at)g(in)m(v)m(o)s(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g
e2520247
CR
11359(redirections)h(supplied)e(to)330 2258 y(the)g Ft(exec)e
11360Fu(builtin)225 2389 y Fq(\017)60 b Fu(the)28 b(curren)m(t)g(w)m(orking)
7a8455e4 11361h(directory)g(as)f(set)h(b)m(y)f Ft(cd)p Fu(,)g Ft(pushd)p
3011048a 11362Fu(,)g(or)g Ft(popd)p Fu(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at)
e2520247 11363330 2498 y(in)m(v)m(o)s(cation)225 2629 y Fq(\017)60
7a8455e4 11364b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f
3011048a 11365Ft(umask)f Fu(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225
e2520247
CR
113662760 y Fq(\017)60 b Fu(curren)m(t)30 b(traps)g(set)h(b)m(y)f
11367Ft(trap)225 2891 y Fq(\017)60 b Fu(shell)30 b(parameters)f(that)h(are)g
602eae4d 11368(set)g(b)m(y)g(v)-5 b(ariable)30 b(assignmen)m(t)g(or)g(with)f
e2520247
CR
11369Ft(set)f Fu(or)i(inherited)f(from)g(the)330 3001 y(shell's)i(paren)m(t)
11370f(in)g(the)h(en)m(vironmen)m(t)225 3132 y Fq(\017)60
3011048a 11371b Fu(shell)44 b(functions)f(de\014ned)f(during)h(execution)i(or)e
602eae4d 11372(inherited)h(from)f(the)h(shell's)g(paren)m(t)f(in)h(the)330
e2520247 113733242 y(en)m(vironmen)m(t)225 3373 y Fq(\017)60 b Fu(options)33
602eae4d 11374b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m(y)f(default)g(or)
e2520247
CR
11375g(with)g(command-line)g(argumen)m(ts\))h(or)330 3482
11376y(b)m(y)c Ft(set)225 3613 y Fq(\017)60 b Fu(options)31
d37a4722 11377b(enabled)f(b)m(y)g Ft(shopt)f Fu(\(see)j(Section)f(4.3.2)h([The)e
e2520247 11378(Shopt)g(Builtin],)h(page)g(72\))225 3744 y Fq(\017)60
d37a4722 11379b Fu(shell)31 b(aliases)g(de\014ned)f(with)g Ft(alias)f
e2520247
CR
11380Fu(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(102\))225
113813875 y Fq(\017)60 b Fu(v)-5 b(arious)50 b(pro)s(cess)f
6e51e0d0 11382Fm(id)p Fu(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f
e2520247 11383(\(see)i(Section)g(3.2.4)g([Lists],)330 3985 y(page)31
e59452c7 11384b(10\),)h(the)f(v)-5 b(alue)30 b(of)h Ft($$)p Fu(,)f(and)g(the)g(v)-5
e2520247
CR
11385b(alue)31 b(of)g Ft($PPID)275 4137 y Fu(When)j(a)g(simple)h(command)f
11386(other)g(than)g(a)h(builtin)f(or)g(shell)h(function)f(is)g(to)h(b)s(e)f
11387(executed,)i(it)f(is)150 4247 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g
11388(separate)h(execution)g(en)m(vironmen)m(t)g(that)f(consists)g(of)h(the)
11389f(follo)m(wing.)40 b(Unless)24 b(otherwise)150 4356 y(noted,)31
11390b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225
113914487 y Fq(\017)60 b Fu(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
4a8bb13f 11392(an)m(y)h(mo)s(di\014cations)h(and)e(additions)h(sp)s(eci\014ed)g(b)m
e2520247 11393(y)g(redirections)g(to)330 4597 y(the)g(command)225 4728
6e51e0d0 11394y Fq(\017)60 b Fu(the)31 b(curren)m(t)f(w)m(orking)g(directory)225
e2520247
CR
113954859 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
113964990 y Fq(\017)60 b Fu(shell)32 b(v)-5 b(ariables)33
122f603c 11397b(and)e(functions)h(mark)m(ed)g(for)g(exp)s(ort,)g(along)h(with)f(v)-5
e2520247 11398b(ariables)32 b(exp)s(orted)g(for)g(the)330 5099 y(command,)e(passed)g
122f603c 11399(in)g(the)h(en)m(vironmen)m(t)g(\(see)g(Section)g(3.7.4)i([En)m
e2520247 11400(vironmen)m(t],)e(page)g(45\))225 5230 y Fq(\017)60 b
6e51e0d0 11401Fu(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the)
122f603c 11402f(v)-5 b(alues)32 b(inherited)e(from)h(the)g(shell's)h(paren)m(t,)g
e2520247
CR
11403(and)330 5340 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)p
11404eop end
11405%%Page: 45 51
11406TeXDict begin 45 50 bop 150 -116 a Fu(Chapter)30 b(3:)41
11407b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(45)275 299
11408y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g(en)m
11409(vironmen)m(t)g(cannot)g(a\013ect)h(the)f(shell's)g(execution)150
11410408 y(en)m(vironmen)m(t.)275 540 y(A)30 b Fr(subshell)j
e59452c7 11411Fu(is)d(a)h(cop)m(y)g(of)g(the)f(shell)h(pro)s(cess.)275
e2520247
CR
11412671 y(Command)k(substitution,)j(commands)e(group)s(ed)f(with)i(paren)m
11413(theses,)h(and)e(async)m(hronous)g(com-)150 781 y(mands)c(are)h(in)m(v)
11414m(ok)m(ed)i(in)d(a)i(subshell)e(en)m(vironmen)m(t)h(that)h(is)f(a)g
e59452c7 11415(duplicate)h(of)f(the)g(shell)g(en)m(vironmen)m(t,)150
e2520247 11416891 y(except)i(that)g(traps)f(caugh)m(t)h(b)m(y)f(the)h(shell)f(are)g
e59452c7 11417(reset)h(to)g(the)f(v)-5 b(alues)35 b(that)g(the)f(shell)h(inherited)e
e2520247 11418(from)150 1000 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
122f603c 11419b(Builtin)32 b(commands)g(that)h(are)g(in)m(v)m(ok)m(ed)h(as)e(part)g
e2520247 11420(of)h(a)f(pip)s(eline)g(are)h(also)150 1110 y(executed)41
122f603c
CR
11421b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40
11422b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150
e2520247
CR
114231219 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
114241351 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions)
6e51e0d0 11425g(inherit)g(the)g(v)-5 b(alue)31 b(of)f(the)h Ft(-e)e
e2520247 11426Fu(option)150 1460 y(from)23 b(the)i(paren)m(t)f(shell.)38
6e51e0d0 11427b(When)24 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)f(clears)h(the)f
e2520247 11428Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 1592
8a0829e9 11429y(If)f(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
6e51e0d0 11430Ft(&)p Fu(')g(and)f(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)k(the)c
e2520247 11431(default)g(standard)f(input)150 1701 y(for)35 b(the)g(command)g(is)g
6e51e0d0 11432(the)g(empt)m(y)h(\014le)f Ft(/dev/null)p Fu(.)52 b(Otherwise,)37
e2520247 11433b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 1811
6e51e0d0 11434y(the)c(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
e2520247
CR
11435(di\014ed)g(b)m(y)g(redirections.)150 2004 y Fk(3.7.4)63
11436b(En)m(vironmen)m(t)150 2151 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m
7a8455e4
CR
11437(ok)m(ed)h(it)g(is)f(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)g(called)h
11438(the)f Fr(en)m(vironmen)m(t)p Fu(.)41 b(This)28 b(is)h(a)150
e2520247
CR
114392261 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
11440Ft(name=value)p Fu(.)275 2392 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
7a8455e4 11441m(a)m(ys)g(to)f(manipulate)f(the)h(en)m(vironmen)m(t.)69
e2520247 11442b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 2502
7a8455e4
CR
11443y(scans)g(its)h(o)m(wn)f(en)m(vironmen)m(t)h(and)f(creates)i(a)f
11444(parameter)f(for)g(eac)m(h)i(name)e(found,)i(automatically)150
e2520247 114452611 y(marking)23 b(it)h(for)f Ft(export)f Fu(to)i(c)m(hild)g(pro)s
7a8455e4 11446(cesses.)38 b(Executed)24 b(commands)f(inherit)g(the)g(en)m(vironmen)m
e2520247 11447(t.)39 b(The)150 2721 y Ft(export)c Fu(and)i(`)p Ft(declare)29
7a8455e4 11448b(-x)p Fu(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g
e2520247 11449(to)h(b)s(e)e(added)h(to)h(and)150 2830 y(deleted)21
7a8455e4
CR
11450b(from)f(the)h(en)m(vironmen)m(t.)38 b(If)20 b(the)h(v)-5
11451b(alue)21 b(of)g(a)g(parameter)g(in)f(the)g(en)m(vironmen)m(t)i(is)e
e2520247 11452(mo)s(di\014ed,)i(the)150 2940 y(new)31 b(v)-5 b(alue)32
7a8455e4
CR
11453b(b)s(ecomes)f(part)h(of)f(the)h(en)m(vironmen)m(t,)g(replacing)h(the)e
11454(old.)44 b(The)31 b(en)m(vironmen)m(t)h(inherited)150
e2520247 114553050 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g
7a8455e4 11456(shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f(v)-5
e2520247 11457b(alues)31 b(ma)m(y)h(b)s(e)150 3159 y(mo)s(di\014ed)26
595e3e69
CR
11458b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m(v)m(ed)i(b)m(y)f
11459(the)g Ft(unset)e Fu(and)h(`)p Ft(export)j(-n)p Fu(')e(commands,)g
e2520247
CR
11460(plus)150 3269 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d
11461Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 3400
595e3e69 11462y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g
220537f2 11463(function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150
e2520247 114643510 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
220537f2 11465(as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150
e2520247 114663619 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
220537f2 11467(a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h
e2520247
CR
11468(command.)275 3751 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g
11469(Section)g(4.3.1)g([The)f(Set)g(Builtin],)h(page)g(68\),)h(then)e(all)g
11470(parameter)150 3860 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m
d37a4722 11471(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i(that)f
e2520247
CR
11472(precede)g(the)150 3970 y(command)g(name.)275 4101 y(When)h(Bash)h(in)m
11473(v)m(ok)m(es)i(an)e(external)h(command,)f(the)g(v)-5
11474b(ariable)33 b(`)p Ft($_)p Fu(')f(is)g(set)h(to)f(the)g(full)g
11475(pathname)150 4211 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
11476(command)f(in)g(its)h(en)m(vironmen)m(t.)150 4404 y Fk(3.7.5)63
11477b(Exit)40 b(Status)150 4551 y Fu(The)23 b(exit)i(status)f(of)h(an)e
e59452c7 11478(executed)i(command)f(is)g(the)g(v)-5 b(alue)24 b(returned)f(b)m(y)h
e2520247 11479(the)g Ft(waitpid)e Fu(system)i(call)h(or)150 4661 y(equiv)-5
e59452c7
CR
11480b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g(b)s(et)m(w)m
11481(een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s(elo)m(w,)h(the)
e2520247 11482150 4770 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g
e59452c7 11483(125)h(sp)s(ecially)-8 b(.)54 b(Exit)35 b(statuses)g(from)f(shell)h
e2520247 11484(builtins)f(and)f(comp)s(ound)150 4880 y(commands)j(are)g(also)h
e59452c7 11485(limited)g(to)g(this)f(range.)58 b(Under)36 b(certain)h(circumstances,)
e2520247 11486h(the)e(shell)h(will)f(use)150 4989 y(sp)s(ecial)31 b(v)-5
e59452c7 11487b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)f(failure)h(mo)s(des.)275
e2520247 114885121 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s(oses,)e(a)j(command)e
e59452c7 11489(whic)m(h)h(exits)g(with)g(a)g(zero)g(exit)h(status)f(has)f(succeeded.)
e2520247 11490150 5230 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40
e59452c7 11491b(This)28 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e(is)f
e2520247 11492(used)g(so)150 5340 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m
e59452c7 11493(y)g(to)h(indicate)g(success)f(and)f(a)h(v)-5 b(ariet)m(y)35
e2520247
CR
11494b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)p eop
11495end
11496%%Page: 46 52
11497TeXDict begin 46 51 bop 150 -116 a Fu(Chapter)30 b(3:)41
11498b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(46)150 299
11499y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i(on)e
11500(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i
11501Fr(N)p Fu(,)i(Bash)150 408 y(uses)30 b(the)g(v)-5 b(alue)31
091c6bc4 11502b(128)p Ft(+)p Fr(N)42 b Fu(as)30 b(the)h(exit)g(status.)275
e2520247 11503549 y(If)k(a)h(command)g(is)g(not)g(found,)g(the)g(c)m(hild)h(pro)s
091c6bc4 11504(cess)e(created)i(to)g(execute)g(it)g(returns)d(a)j(status)f(of)150
e2520247 11505658 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)f(but)h(is)g(not)h
091c6bc4 11506(executable,)h(the)f(return)e(status)i(is)f(126.)275
e2520247
CR
11507798 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f(during)
11508g(expansion)h(or)g(redirection,)i(the)f(exit)g(status)150
11509908 y(is)c(greater)i(than)e(zero.)275 1048 y(The)38 b(exit)h(status)g
11510(is)g(used)f(b)m(y)g(the)h(Bash)g(conditional)h(commands)e(\(see)h
11511(Section)h(3.2.5.2)h([Con-)150 1158 y(ditional)i(Constructs],)h(page)f
11512(12\))g(and)e(some)i(of)f(the)g(list)g(constructs)g(\(see)h(Section)f
11513(3.2.4)i([Lists],)150 1267 y(page)31 b(10\).)275 1407
11514y(All)40 b(of)g(the)h(Bash)f(builtins)f(return)g(an)h(exit)h(status)g
11515(of)f(zero)h(if)f(they)g(succeed)g(and)g(a)g(non-zero)150
115161517 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m(y)g(b)s(e)f(used)g
11517(b)m(y)g(the)h(conditional)h(and)e(list)h(constructs.)50
11518b(All)35 b(builtins)150 1627 y(return)e(an)i(exit)g(status)g(of)f(2)h
11519(to)g(indicate)h(incorrect)f(usage,)h(generally)g(in)m(v)-5
11520b(alid)35 b(options)g(or)f(missing)150 1736 y(argumen)m(ts.)275
115211876 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5
e59452c7 11522b(ailable)36 b(in)e(the)g(sp)s(ecial)h(parameter)f($?)52
e2520247
CR
11523b(\(see)35 b(Sec-)150 1986 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m
11524(arameters],)h(page)f(23\).)150 2191 y Fk(3.7.6)63 b(Signals)150
115252338 y Fu(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h
7a8455e4 11526(absence)f(of)h(an)m(y)f(traps,)i(it)e(ignores)h Ft(SIGTERM)d
e2520247 11527Fu(\(so)j(that)g(`)p Ft(kill)150 2447 y(0)p Fu(')c(do)s(es)g(not)g
7a8455e4
CR
11528(kill)g(an)g(in)m(teractiv)m(e)j(shell\),)f(and)d Ft(SIGINT)f
11529Fu(is)i(caugh)m(t)h(and)f(handled)f(\(so)h(that)h(the)f
e2520247 11530Ft(wait)150 2557 y Fu(builtin)24 b(is)h(in)m(terruptible\).)39
7a8455e4 11531b(When)24 b(Bash)g(receiv)m(es)j(a)d Ft(SIGINT)p Fu(,)h(it)g(breaks)f
e2520247 11532(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 2667 y(In)31
7a8455e4
CR
11533b(all)h(cases,)h(Bash)f(ignores)g Ft(SIGQUIT)p Fu(.)42
11534b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h(\(see)f(Chapter)f(7)h
e2520247 11535([Job)g(Con)m(trol],)150 2776 y(page)f(117\),)h(Bash)f(ignores)g
7a8455e4 11536Ft(SIGTTIN)p Fu(,)d Ft(SIGTTOU)p Fu(,)h(and)h Ft(SIGTSTP)p
e2520247 11537Fu(.)275 2916 y(Non-builtin)h(commands)g(started)g(b)m(y)g(Bash)h(ha)m
7a8455e4 11538(v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5 b(alues)31
e2520247 11539b(inherited)150 3026 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m
7a8455e4 11540(t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f(e\013ect,)k
e2520247 11541(async)m(hronous)c(commands)150 3136 y(ignore)f Ft(SIGINT)e
7a8455e4 11542Fu(and)h Ft(SIGQUIT)e Fu(in)j(addition)f(to)i(these)f(inherited)f
e2520247 11543(handlers.)55 b(Commands)35 b(run)f(as)i(a)150 3245 y(result)27
7a8455e4
CR
11544b(of)h(command)f(substitution)h(ignore)g(the)g(k)m(eyb)s
11545(oard-generated)g(job)g(con)m(trol)h(signals)f Ft(SIGTTIN)p
e2520247
CR
11546Fu(,)150 3355 y Ft(SIGTTOU)p Fu(,)h(and)g Ft(SIGTSTP)p
11547Fu(.)275 3495 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f
7a8455e4 11548(receipt)i(of)f(a)h Ft(SIGHUP)p Fu(.)42 b(Before)32 b(exiting,)h(an)e
e2520247 11549(in)m(teractiv)m(e)j(shell)150 3604 y(resends)41 b(the)i
7a8455e4
CR
11550Ft(SIGHUP)e Fu(to)i(all)g(jobs,)i(running)c(or)h(stopp)s(ed.)76
11551b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g Ft(SIGCONT)d
e2520247 11552Fu(to)150 3714 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e
7a8455e4 11553Ft(SIGHUP)p Fu(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)g(from)
e2520247 11554g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 3824 y(to)i(a)g(particular)
7a8455e4
CR
11555g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h(from)g(the)f(jobs)g
11556(table)i(with)e(the)h Ft(disown)e Fu(builtin)h(\(see)150
e2520247 115573933 y(Section)c(7.2)g([Job)e(Con)m(trol)i(Builtins],)g(page)g(118\))h
7a8455e4 11558(or)e(mark)m(ed)g(to)g(not)g(receiv)m(e)i Ft(SIGHUP)c
e2520247
CR
11559Fu(using)i Ft(disown)150 4043 y(-h)p Fu(.)275 4183 y(If)38
11560b(the)h Ft(huponexit)e Fu(shell)i(option)g(has)g(b)s(een)f(set)i(with)f
11561Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150
115624293 y(Builtin],)31 b(page)g(72\),)h(Bash)f(sends)e(a)i
595e3e69 11563Ft(SIGHUP)e Fu(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i(login)
e2520247 11564e(shell)g(exits.)275 4433 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g
595e3e69 11565(command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic)
e2520247 11566m(h)h(a)g(trap)150 4542 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g
595e3e69 11567(not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f(completes.)55
e2520247 11568b(When)35 b(Bash)g(is)150 4652 y(w)m(aiting)j(for)f(an)g(async)m
595e3e69 11569(hronous)g(command)g(via)h(the)f Ft(wait)f Fu(builtin,)i(the)g
e2520247
CR
11570(reception)g(of)f(a)g(signal)h(for)150 4761 y(whic)m(h)d(a)g(trap)g
11571(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f
11572Fu(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
115734871 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
11574f(the)h(trap)f(is)g(executed.)275 5011 y(When)41 b(job)g(con)m(trol)h
11575(is)g(not)f(enabled,)k(and)40 b(Bash)i(is)f(w)m(aiting)i(for)e(a)h
11576(foreground)e(command)h(to)150 5121 y(complete,)35 b(the)e(shell)h
11577(receiv)m(es)g(k)m(eyb)s(oard-generated)g(signals)g(suc)m(h)e(as)i
11578Ft(SIGINT)d Fu(\(usually)i(generated)150 5230 y(b)m(y)e(`)p
11579Ft(^C)p Fu('\))h(that)g(users)e(commonly)i(in)m(tend)g(to)g(send)e(to)j
11580(that)f(command.)43 b(This)31 b(happ)s(ens)e(b)s(ecause)j(the)150
115815340 y(shell)23 b(and)g(the)h(command)f(are)g(in)g(the)h(same)f(pro)s
e59452c7 11582(cess)g(group)g(as)h(the)f(terminal,)i(and)e(`)p Ft(^C)p
e2520247
CR
11583Fu(')g(sends)g Ft(SIGINT)p eop end
11584%%Page: 47 53
11585TeXDict begin 47 52 bop 150 -116 a Fu(Chapter)30 b(3:)41
11586b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(47)150 299
11587y(to)35 b(all)g(pro)s(cesses)f(in)g(that)g(pro)s(cess)g(group.)51
11588b(See)35 b(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(117,)h(for)e(a)h
11589(more)150 408 y(in-depth)30 b(discussion)f(of)i(pro)s(cess)f(groups.)
11590275 542 y(When)35 b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i
11591(enabled)f(and)g(receiv)m(es)h Ft(SIGINT)e Fu(while)h(w)m(aiting)150
11592651 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g
e59452c7 11593(that)g(foreground)f(command)g(terminates)h(and)f(then)150
e2520247
CR
11594761 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h
11595Ft(SIGINT)p Fu(:)199 894 y(1.)61 b(If)29 b(the)h(command)f(terminates)i
11596(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g
11597(user)f(mean)m(t)h(to)330 1004 y(end)25 b(the)h(en)m(tire)h(script,)g
e59452c7 11598(and)f(acts)h(on)e(the)i Ft(SIGINT)d Fu(\(e.g.,)k(b)m(y)e(running)f(a)h
e2520247
CR
11599Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 1113 y(itself)7
11600b(\);)199 1246 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h
e59452c7 11601(terminate)g(due)f(to)h Ft(SIGINT)p Fu(,)g(the)g(program)f(handled)f
e2520247 11602(the)i Ft(SIGINT)330 1356 y Fu(itself)35 b(and)e(did)h(not)g(treat)h
e59452c7 11603(it)g(as)f(a)g(fatal)i(signal.)52 b(In)33 b(that)i(case,)h(Bash)e(do)s
e2520247 11604(es)g(not)g(treat)i Ft(SIGINT)330 1466 y Fu(as)41 b(a)g(fatal)g
e59452c7
CR
11605(signal,)j(either,)g(instead)d(assuming)f(that)h(the)g
11606Ft(SIGINT)d Fu(w)m(as)j(used)f(as)h(part)f(of)h(the)330
e2520247 116071575 y(program's)32 b(normal)g(op)s(eration)h(\(e.g.,)h
e59452c7 11608Ft(emacs)d Fu(uses)g(it)i(to)g(ab)s(ort)f(editing)h(commands\))f(or)g
e2520247 11609(delib-)330 1685 y(erately)41 b(discarded.)69 b(Ho)m(w)m(ev)m(er,)45
e59452c7 11610b(Bash)40 b(will)h(run)d(an)m(y)j(trap)e(set)i(on)f Ft(SIGINT)p
e2520247 11611Fu(,)h(as)f(it)h(do)s(es)e(with)330 1794 y(an)m(y)31
e59452c7
CR
11612b(other)f(trapp)s(ed)f(signal)i(it)g(receiv)m(es)h(while)e(it)h(is)f(w)
11613m(aiting)h(for)f(the)h(foreground)e(command)h(to)330
e2520247
CR
116141904 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)150
116152142 y Fs(3.8)68 b(Shell)45 b(Scripts)150 2302 y Fu(A)30
7a8455e4
CR
11616b(shell)f(script)h(is)f(a)h(text)h(\014le)f(con)m(taining)h(shell)f
11617(commands.)40 b(When)29 b(suc)m(h)g(a)h(\014le)g(is)f(used)g(as)h(the)g
e2520247 11618(\014rst)150 2411 y(non-option)c(argumen)m(t)h(when)e(in)m(v)m(oking)i
7a8455e4 11619(Bash,)g(and)f(neither)g(the)g Ft(-c)g Fu(nor)f Ft(-s)h
e2520247
CR
11620Fu(option)g(is)g(supplied)f(\(see)150 2521 y(Section)39
11621b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(93\),)i(Bash)d(reads)g(and)f
11622(executes)i(commands)f(from)f(the)i(\014le,)150 2630
7a8455e4
CR
11623y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s(eration)f
11624(creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46 b(The)31
e2520247 11625b(shell)i(\014rst)e(searc)m(hes)150 2740 y(for)d(the)g(\014le)g(in)g
7a8455e4
CR
11626(the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e(the)i
11627(directories)g(in)e Ft($PATH)g Fu(if)h(not)g(found)e(there.)275
e2520247 116282873 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
e59452c7 11629(sp)s(ecial)i(parameter)f Ft(0)f Fu(to)h(the)g(name)g(of)g(the)g
e2520247 11630(\014le,)150 2983 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
e59452c7 11631(and)d(the)h(p)s(ositional)g(parameters)f(are)h(set)g(to)g(the)g
e2520247 11632(remain-)150 3092 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
3011048a 11633(en.)67 b(If)39 b(no)g(additional)g(argumen)m(ts)h(are)f(supplied,)h
e2520247
CR
11634(the)f(p)s(ositional)150 3202 y(parameters)31 b(are)f(unset.)275
116353335 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
6e51e0d0 11636(y)e(using)g(the)h Ft(chmod)e Fu(command)h(to)h(turn)e(on)i(the)150
e2520247 116373445 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
6e51e0d0 11638(\014le)f(while)g(searc)m(hing)h(the)f Ft($PATH)f Fu(for)h(a)h
e2520247 11639(command,)h(it)150 3554 y(creates)32 b(a)f(new)e(instance)i(of)g
e59452c7 11640(itself)g(to)g(execute)h(it.)41 b(In)30 b(other)h(w)m(ords,)f
e2520247
CR
11641(executing)390 3688 y Ft(filename)46 b Fj(arguments)150
116423821 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390
116433954 y Ft(bash)47 b(filename)e Fj(arguments)150 4087
11644y Fu(if)30 b Ft(filename)d Fu(is)j(an)f(executable)j(shell)e(script.)40
e59452c7 11645b(This)29 b(subshell)g(reinitializes)i(itself,)g(so)f(that)h(the)e
e2520247
CR
11646(e\013ect)150 4197 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)
11647g(in)m(v)m(ok)m(ed)h(to)h(in)m(terpret)e(the)h(script,)h(with)e(the)h
11648(exception)h(that)f(the)150 4306 y(lo)s(cations)25 b(of)g(commands)e
e59452c7
CR
11649(remem)m(b)s(ered)h(b)m(y)g(the)g(paren)m(t)g(\(see)h(the)f
11650(description)g(of)g Ft(hash)f Fu(in)h(Section)h(4.1)150
e2520247
CR
116514416 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(49\))h(are)e(retained)h
11652(b)m(y)f(the)h(c)m(hild.)275 4549 y(Most)36 b(v)m(ersions)g(of)g(Unix)f
e59452c7 11653(mak)m(e)h(this)g(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f
e2520247 11654(command)h(execution)150 4659 y(mec)m(hanism.)50 b(If)33
e59452c7
CR
11655b(the)g(\014rst)g(line)h(of)f(a)h(script)f(b)s(egins)g(with)g(the)g(t)m
11656(w)m(o)i(c)m(haracters)g(`)p Ft(#!)p Fu(',)f(the)g(remainder)150
e2520247
CR
116574768 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for)
11658g(the)g(program)g(and,)g(dep)s(ending)e(on)i(the)g(op)s(erating)h
11659(system,)150 4878 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g
e59452c7 11660(that)g(in)m(terpreter.)40 b(Th)m(us,)26 b(y)m(ou)g(can)g(sp)s(ecify)g
e2520247 11661(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 4988 y(or)k(some)h(other)g(in)m
e59452c7 11662(terpreter)g(and)e(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h
e2520247 11663(in)f(that)h(language.)275 5121 y(The)k(argumen)m(ts)h(to)h(the)f(in)m
e59452c7 11664(terpreter)h(consist)f(of)h(one)f(or)g(more)g(optional)h(argumen)m(ts)f
e2520247 11665(follo)m(wing)150 5230 y(the)e(in)m(terpreter)g(name)g(on)g(the)g
e59452c7 11666(\014rst)g(line)g(of)g(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)
e2520247 11667e(the)g(name)g(of)g(the)g(script)150 5340 y(\014le,)k(follo)m(w)m(ed)g
e59452c7 11668(b)m(y)e(the)g(rest)g(of)g(the)h(argumen)m(ts)f(supplied)f(to)i(the)f
e2520247
CR
11669(script.)58 b(The)35 b(details)i(of)g(ho)m(w)f(the)p
11670eop end
11671%%Page: 48 54
11672TeXDict begin 48 53 bop 150 -116 a Fu(Chapter)30 b(3:)41
11673b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(48)150 299
11674y(in)m(terpreter)26 b(line)g(is)g(split)g(in)m(to)h(an)f(in)m
e59452c7 11675(terpreter)g(name)g(and)f(a)h(set)h(of)e(argumen)m(ts)i(v)-5
e2520247
CR
11676b(ary)25 b(across)i(systems.)150 408 y(Bash)j(will)f(p)s(erform)g(this)
11677g(action)i(on)e(op)s(erating)h(systems)g(that)g(do)f(not)h(handle)f(it)
11678h(themselv)m(es.)42 b(Note)150 518 y(that)e(some)g(older)g(v)m(ersions)
11679g(of)g(Unix)f(limit)i(the)f(in)m(terpreter)g(name)g(and)f(a)h(single)g
11680(argumen)m(t)g(to)h(a)150 628 y(maxim)m(um)21 b(of)g(32)h(c)m
11681(haracters,)j(so)c(it's)h(not)g(p)s(ortable)f(to)h(assume)e(that)i
11682(using)f(more)g(than)g(one)g(argumen)m(t)150 737 y(will)31
11683b(w)m(ork.)275 872 y(Bash)h(scripts)g(often)g(b)s(egin)g(with)g
11684Ft(#!)e(/bin/bash)g Fu(\(assuming)i(that)h(Bash)f(has)g(b)s(een)f
11685(installed)i(in)150 981 y Ft(/bin)p Fu(\),)26 b(since)h(this)f(ensures)
11686f(that)i(Bash)f(will)h(b)s(e)f(used)f(to)i(in)m(terpret)f(the)h
11687(script,)g(ev)m(en)g(if)f(it)h(is)f(executed)150 1091
11688y(under)h(another)h(shell.)41 b(It's)28 b(a)h(common)g(idiom)f(to)h
11689(use)f Ft(env)g Fu(to)h(\014nd)e Ft(bash)g Fu(ev)m(en)i(if)f(it's)i(b)s
11690(een)d(installed)150 1200 y(in)h(another)g(directory:)40
e59452c7 11691b Ft(#!/usr/bin/env)27 b(bash)f Fu(will)j(\014nd)d(the)j(\014rst)e(o)s
d37a4722
CR
11692(ccurrence)h(of)g Ft(bash)f Fu(in)h Ft($PATH)p Fu(.)p
11693eop end
e2520247
CR
11694%%Page: 49 55
11695TeXDict begin 49 54 bop 3659 -116 a Fu(49)150 299 y Fp(4)80
967625cd 11696b(Shell)53 b(Builtin)f(Commands)150 499 y Fu(Builtin)34
c302751c
CR
11697b(commands)f(are)h(con)m(tained)g(within)f(the)h(shell)g(itself.)50
11698b(When)34 b(the)f(name)h(of)f(a)h(builtin)f(com-)150
967625cd 11699608 y(mand)26 b(is)i(used)e(as)i(the)g(\014rst)e(w)m(ord)h(of)h(a)f
d37a4722 11700(simple)h(command)f(\(see)h(Section)g(3.2.2)h([Simple)f(Commands],)150
e59452c7 11701718 y(page)21 b(9\),)j(the)d(shell)g(executes)h(the)f(command)f
37c41ab1 11702(directly)-8 b(,)24 b(without)d(in)m(v)m(oking)h(another)f(program.)37
967625cd 11703b(Builtin)150 828 y(commands)f(are)h(necessary)g(to)g(implemen)m(t)g
37c41ab1 11704(functionalit)m(y)h(imp)s(ossible)e(or)h(incon)m(v)m(enien)m(t)h(to)f
967625cd
CR
11705(obtain)150 937 y(with)30 b(separate)h(utilities.)275
117061065 y(This)c(section)j(brie\015y)e(describ)s(es)g(the)h(builtins)f
ac18b312 11707(whic)m(h)g(Bash)h(inherits)f(from)g(the)h(Bourne)g(Shell,)g(as)150
967625cd 117081174 y(w)m(ell)i(as)g(the)g(builtin)e(commands)h(whic)m(h)h(are)f
ac18b312 11709(unique)g(to)h(or)f(ha)m(v)m(e)i(b)s(een)d(extended)i(in)f(Bash.)275
967625cd 117101302 y(Sev)m(eral)45 b(builtin)e(commands)h(are)h(describ)s(ed)e(in)h
ac18b312 11711(other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150
967625cd 117121412 y(pro)m(vide)23 b(the)h(Bash)f(in)m(terface)i(to)f(the)g(job)f
37c41ab1 11713(con)m(trol)i(facilities)g(\(see)f(Section)h(7.2)f([Job)f(Con)m(trol)h
e2520247 11714(Builtins],)150 1521 y(page)33 b(118\),)i(the)e(directory)g(stac)m(k)h
e59452c7 11715(\(see)f(Section)h(6.8.1)g([Directory)g(Stac)m(k)g(Builtins],)g(page)f
e2520247
CR
11716(105\),)i(the)150 1631 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
11717([Bash)f(History)g(Builtins],)h(page)g(156\),)h(and)d(the)h
967625cd 11718(programmable)150 1740 y(completion)32 b(facilities)g(\(see)g(Section)f
e2520247 11719(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(150\).)275
967625cd
CR
117201868 y(Man)m(y)f(of)f(the)h(builtins)e(ha)m(v)m(e)j(b)s(een)e(extended)
11721g(b)m(y)g Fm(posix)g Fu(or)g(Bash.)275 1996 y(Unless)20
d7935593 11722b(otherwise)h(noted,)h(eac)m(h)g(builtin)e(command)g(do)s(cumen)m(ted)g
560db36b
CR
11723(as)h(accepting)h(options)e(preceded)150 2105 y(b)m(y)42
11724b(`)p Ft(-)p Fu(')g(accepts)h(`)p Ft(--)p Fu(')f(to)h(signify)f(the)g
11725(end)f(of)h(the)g(options.)76 b(The)41 b Ft(:)p Fu(,)k
11726Ft(true)p Fu(,)f Ft(false)p Fu(,)g(and)d Ft(test)p Fu(/)p
11727Ft([)150 2215 y Fu(builtins)32 b(do)g(not)h(accept)h(options)f(and)f
11728(do)g(not)h(treat)g(`)p Ft(--)p Fu(')g(sp)s(ecially)-8
11729b(.)48 b(The)32 b Ft(exit)p Fu(,)g Ft(logout)p Fu(,)f
11730Ft(return)p Fu(,)150 2325 y Ft(break)p Fu(,)38 b Ft(continue)p
11731Fu(,)f Ft(let)p Fu(,)i(and)d Ft(shift)g Fu(builtins)h(accept)i(and)e
11732(pro)s(cess)g(argumen)m(ts)h(b)s(eginning)e(with)150
117332434 y(`)p Ft(-)p Fu(')h(without)f(requiring)g(`)p Ft(--)p
11734Fu('.)59 b(Other)36 b(builtins)g(that)h(accept)h(argumen)m(ts)f(but)f
11735(are)h(not)g(sp)s(eci\014ed)f(as)150 2544 y(accepting)28
11736b(options)f(in)m(terpret)g(argumen)m(ts)g(b)s(eginning)e(with)i(`)p
11737Ft(-)p Fu(')f(as)h(in)m(v)-5 b(alid)27 b(options)g(and)f(require)g(`)p
11738Ft(--)p Fu(')150 2653 y(to)31 b(prev)m(en)m(t)g(this)f(in)m
11739(terpretation.)150 2880 y Fs(4.1)68 b(Bourne)45 b(Shell)g(Builtins)150
117403040 y Fu(The)22 b(follo)m(wing)j(shell)d(builtin)h(commands)f(are)h
11741(inherited)g(from)f(the)h(Bourne)g(Shell.)38 b(These)22
11742b(commands)150 3149 y(are)31 b(implemen)m(ted)g(as)f(sp)s(eci\014ed)g
11743(b)m(y)g(the)h Fm(posix)e Fu(standard.)150 3295 y Ft(:)h
11744Fu(\(a)h(colon\))870 3405 y Ft(:)47 b([)p Fj(arguments)p
11745Ft(])630 3532 y Fu(Do)c(nothing)f(b)s(ey)m(ond)g(expanding)f
11746Fr(argumen)m(ts)46 b Fu(and)c(p)s(erforming)f(redirections.)76
11747b(The)630 3642 y(return)29 b(status)i(is)f(zero.)150
967625cd 117483788 y Ft(.)g Fu(\(a)h(p)s(erio)s(d\))870 3897 y Ft(.)47
bce12dd7 11749b Fj(filename)f Ft([)p Fj(arguments)p Ft(])630 4025 y
6e51e0d0
CR
11750Fu(Read)34 b(and)f(execute)i(commands)e(from)g(the)h
11751Fr(\014lename)39 b Fu(argumen)m(t)34 b(in)f(the)h(curren)m(t)g(shell)
bce12dd7 11752630 4134 y(con)m(text.)45 b(If)31 b Fr(\014lename)37
6e51e0d0
CR
11753b Fu(do)s(es)31 b(not)g(con)m(tain)i(a)e(slash,)h(the)g
11754Ft(PATH)e Fu(v)-5 b(ariable)32 b(is)f(used)f(to)i(\014nd)630
e59452c7
CR
117554244 y Fr(\014lename)p Fu(,)38 b(but)e Fr(\014lename)41
11756b Fu(do)s(es)36 b(not)h(need)f(to)h(b)s(e)e(executable.)60
e9c75143
CR
11757b(When)36 b(Bash)g(is)h(not)f(in)630 4354 y Fm(posix)26
11758b Fu(mo)s(de,)i(it)g(searc)m(hes)g(the)f(curren)m(t)g(directory)g(if)h
11759Fr(\014lename)k Fu(is)27 b(not)h(found)d(in)i Ft($PATH)p
e59452c7
CR
11760Fu(.)630 4463 y(If)39 b(an)m(y)h Fr(argumen)m(ts)j Fu(are)d(supplied,)h
11761(they)e(b)s(ecome)h(the)g(p)s(ositional)g(parameters)g(when)630
117624573 y Fr(\014lename)i Fu(is)36 b(executed.)60 b(Otherwise)36
11763b(the)h(p)s(ositional)g(parameters)g(are)g(unc)m(hanged.)58
11764b(If)630 4682 y(the)33 b Ft(-T)g Fu(option)g(is)g(enabled,)h
11765Ft(.)f Fu(inherits)g(an)m(y)g(trap)g(on)g Ft(DEBUG)p
11766Fu(;)g(if)g(it)h(is)f(not,)h(an)m(y)f Ft(DEBUG)630 4792
11767y Fu(trap)f(string)g(is)g(sa)m(v)m(ed)h(and)f(restored)g(around)f(the)i
11768(call)g(to)g Ft(.)p Fu(,)f(and)g Ft(.)g Fu(unsets)f(the)h
11769Ft(DEBUG)630 4902 y Fu(trap)f(while)h(it)g(executes.)46
11770b(If)31 b Ft(-T)g Fu(is)g(not)h(set,)h(and)d(the)i(sourced)f(\014le)h
11771(c)m(hanges)h(the)e Ft(DEBUG)630 5011 y Fu(trap,)e(the)f(new)g(v)-5
11772b(alue)29 b(is)f(retained)h(when)e Ft(.)h Fu(completes.)42
11773b(The)27 b(return)h(status)g(is)h(the)f(exit)630 5121
11774y(status)k(of)f(the)h(last)g(command)f(executed,)i(or)f(zero)g(if)f(no)
11775h(commands)f(are)h(executed.)44 b(If)630 5230 y Fr(\014lename)d
11776Fu(is)36 b(not)g(found,)h(or)e(cannot)i(b)s(e)e(read,)j(the)e(return)f
11777(status)h(is)g(non-zero.)58 b(This)630 5340 y(builtin)30
11778b(is)g(equiv)-5 b(alen)m(t)32 b(to)f Ft(source)p Fu(.)p
11779eop end
e2520247
CR
11780%%Page: 50 56
11781TeXDict begin 50 55 bop 150 -116 a Fu(Chapter)30 b(4:)41
11782b(Shell)30 b(Builtin)h(Commands)2069 b(50)150 299 y Ft(break)870
e59452c7 11783433 y(break)46 b([)p Fj(n)p Ft(])630 568 y Fu(Exit)f(from)f(a)g
bce12dd7
CR
11784Ft(for)p Fu(,)k Ft(while)p Fu(,)e Ft(until)p Fu(,)h(or)d
11785Ft(select)f Fu(lo)s(op.)83 b(If)44 b Fr(n)g Fu(is)g(supplied,)j(the)e
e59452c7 11786Fr(n)p Fu(th)630 677 y(enclosing)c(lo)s(op)f(is)h(exited.)70
bce12dd7 11787b 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 1178870 b(The)40 b(return)630 787 y(status)31 b(is)f(zero)h(unless)f
bce12dd7 11789Fr(n)g Fu(is)g(not)h(greater)g(than)g(or)f(equal)h(to)g(1.)150
d052bd6f 11790946 y Ft(cd)870 1081 y(cd)47 b([-L|[-P)f([-e]]])g([-@])h([)p
e59452c7 11791Fj(directory)p Ft(])630 1215 y Fu(Change)27 b(the)g(curren)m(t)f(w)m
bce12dd7 11792(orking)h(directory)g(to)h Fr(directory)p Fu(.)40 b(If)26
e59452c7
CR
11793b Fr(directory)35 b Fu(is)27 b(not)g(supplied,)630 1325
11794y(the)k(v)-5 b(alue)31 b(of)g(the)g Ft(HOME)e Fu(shell)i(v)-5
11795b(ariable)32 b(is)f(used.)40 b(If)31 b(the)g(shell)g(v)-5
11796b(ariable)31 b Ft(CDPATH)e Fu(exists,)630 1435 y(it)44
11797b(is)f(used)g(as)h(a)f(searc)m(h)h(path:)67 b(eac)m(h)45
11798b(directory)f(name)f(in)g Ft(CDPATH)f Fu(is)h(searc)m(hed)h(for)630
117991544 y Fr(directory)p Fu(,)k(with)c(alternativ)m(e)i(directory)f(names)
11800e(in)h Ft(CDPATH)e Fu(separated)j(b)m(y)f(a)g(colon)630
118011654 y(\(`)p Ft(:)p Fu('\).)e(If)30 b Fr(directory)38
11802b Fu(b)s(egins)30 b(with)g(a)h(slash,)f Ft(CDPATH)f Fu(is)h(not)h
11803(used.)630 1788 y(The)g Ft(-P)h Fu(option)g(means)g(to)h(not)f(follo)m
11804(w)h(sym)m(b)s(olic)g(links:)44 b(sym)m(b)s(olic)32 b(links)g(are)g
11805(resolv)m(ed)630 1898 y(while)41 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)h
6e51e0d0 11806Fr(directory)49 b Fu(and)40 b(b)s(efore)g(pro)s(cessing)h(an)f
e59452c7
CR
11807(instance)i(of)f(`)p Ft(..)p Fu(')f(in)630 2007 y Fr(directory)p
11808Fu(.)630 2142 y(By)34 b(default,)h(or)e(when)g(the)g
6e51e0d0 11809Ft(-L)g Fu(option)h(is)g(supplied,)f(sym)m(b)s(olic)h(links)f(in)h
e59452c7 11810Fr(directory)42 b Fu(are)630 2252 y(resolv)m(ed)31 b(after)g
6e51e0d0 11811Ft(cd)f Fu(pro)s(cesses)g(an)g(instance)h(of)g(`)p Ft(..)p
e59452c7 11812Fu(')f(in)g Fr(directory)p Fu(.)630 2386 y(If)35 b(`)p
6e51e0d0
CR
11813Ft(..)p Fu(')f(app)s(ears)h(in)f Fr(directory)p Fu(,)j(it)f(is)f(pro)s
11814(cessed)f(b)m(y)h(remo)m(ving)h(the)f(immediately)h(pre-)630
e59452c7 118152496 y(ceding)31 b(pathname)f(comp)s(onen)m(t,)h(bac)m(k)g(to)g(a)g
6e51e0d0 11816(slash)f(or)h(the)f(b)s(eginning)g(of)g Fr(directory)p
e59452c7 11817Fu(.)630 2630 y(If)i(the)i Ft(-e)e Fu(option)h(is)g(supplied)f(with)g
6e51e0d0 11818Ft(-P)h Fu(and)f(the)h(curren)m(t)g(w)m(orking)g(directory)g(cannot)630
e59452c7 118192740 y(b)s(e)k(successfully)g(determined)g(after)i(a)e(successful)h
6e51e0d0 11820(directory)g(c)m(hange,)i Ft(cd)d Fu(will)h(return)630
e59452c7 118212849 y(an)30 b(unsuccessful)f(status.)630 2984 y(On)41
6e51e0d0
CR
11822b(systems)h(that)h(supp)s(ort)d(it,)46 b(the)c Ft(-@)g
11823Fu(option)g(presen)m(ts)g(the)g(extended)g(attributes)630
e59452c7
CR
118243093 y(asso)s(ciated)32 b(with)e(a)h(\014le)f(as)h(a)f(directory)-8
11825b(.)630 3228 y(If)41 b Fr(directory)49 b Fu(is)41 b(`)p
6e51e0d0 11826Ft(-)p Fu(',)j(it)e(is)f(con)m(v)m(erted)h(to)g Ft($OLDPWD)d
e59452c7
CR
11827Fu(b)s(efore)i(the)g(directory)h(c)m(hange)g(is)630 3337
11828y(attempted.)630 3472 y(If)33 b(a)h(non-empt)m(y)g(directory)g(name)f
6e51e0d0 11829(from)g Ft(CDPATH)f Fu(is)h(used,)h(or)g(if)f(`)p Ft(-)p
e59452c7 11830Fu(')h(is)f(the)h(\014rst)f(argu-)630 3582 y(men)m(t,)28
d76edd30 11831b(and)e(the)h(directory)g(c)m(hange)h(is)f(successful,)h(the)f
e59452c7 11832(absolute)g(pathname)g(of)f(the)h(new)630 3691 y(w)m(orking)k
d76edd30 11833(directory)g(is)f(written)g(to)i(the)e(standard)g(output.)630
e59452c7
CR
118343826 y(If)i(the)i(directory)f(c)m(hange)h(is)f(successful,)h
11835Ft(cd)e Fu(sets)h(the)h(v)-5 b(alue)33 b(of)g(the)g Ft(PWD)f
11836Fu(en)m(vironmen)m(t)630 3935 y(v)-5 b(ariable)32 b(to)g(the)f(new)g
11837(directory)g(name,)h(and)e(sets)i(the)f Ft(OLDPWD)e Fu(en)m(vironmen)m
11838(t)j(v)-5 b(ariable)630 4045 y(to)31 b(the)g(v)-5 b(alue)31
11839b(of)f(the)h(curren)m(t)f(w)m(orking)g(directory)h(b)s(efore)f(the)h(c)
11840m(hange.)630 4179 y(The)e(return)g(status)h(is)f(zero)i(if)e(the)h
11841(directory)g(is)g(successfully)g(c)m(hanged,)g(non-zero)g(oth-)630
118424289 y(erwise.)150 4448 y Ft(continue)870 4583 y(continue)46
11843b([)p Fj(n)p Ft(])630 4717 y Fu(Resume)32 b(the)g(next)g(iteration)i
6e51e0d0 11844(of)e(an)g(enclosing)h Ft(for)p Fu(,)f Ft(while)p Fu(,)f
e59452c7 11845Ft(until)p Fu(,)g(or)h Ft(select)f Fu(lo)s(op.)630 4827
6e51e0d0
CR
11846y(If)f Fr(n)h Fu(is)g(supplied,)e(the)j(execution)g(of)f(the)g
11847Fr(n)p Fu(th)f(enclosing)i(lo)s(op)f(is)f(resumed.)42
e59452c7 11848b Fr(n)30 b Fu(m)m(ust)h(b)s(e)630 4936 y(greater)39
37c41ab1 11849b(than)f(or)g(equal)g(to)h(1.)63 b(The)38 b(return)e(status)j(is)e
e59452c7
CR
11850(zero)i(unless)e Fr(n)h Fu(is)g(not)g(greater)630 5046
11851y(than)30 b(or)g(equal)h(to)g(1.)150 5205 y Ft(eval)870
118525340 y(eval)47 b([)p Fj(arguments)p Ft(])p eop end
e2520247
CR
11853%%Page: 51 57
11854TeXDict begin 51 56 bop 150 -116 a Fu(Chapter)30 b(4:)41
11855b(Shell)30 b(Builtin)h(Commands)2069 b(51)630 299 y(The)25
6e51e0d0 11856b(argumen)m(ts)h(are)g(concatenated)i(together)f(in)m(to)f(a)g(single)h
e59452c7 11857(command,)f(whic)m(h)g(is)f(then)630 408 y(read)35 b(and)g(executed,)j
6e51e0d0 11858(and)d(its)h(exit)g(status)g(returned)e(as)h(the)h(exit)g(status)g(of)g
e59452c7 11859Ft(eval)p Fu(.)54 b(If)630 518 y(there)31 b(are)f(no)h(argumen)m(ts)f
6e51e0d0 11860(or)h(only)f(empt)m(y)h(argumen)m(ts,)g(the)f(return)g(status)g(is)h
e2520247 11861(zero.)150 680 y Ft(exec)870 816 y(exec)47 b([-cl])f([-a)h
e59452c7 11862Fj(name)p Ft(])f([)p Fj(command)g Ft([)p Fj(arguments)p
e2520247 11863Ft(]])630 951 y Fu(If)36 b Fr(command)k Fu(is)c(supplied,)h(it)g
e59452c7 11864(replaces)h(the)e(shell)h(without)f(creating)i(a)f(new)f(pro)s(cess.)
e2520247 11865630 1061 y(If)k(the)h Ft(-l)e Fu(option)i(is)g(supplied,)h(the)e(shell)
e59452c7 11866h(places)g(a)g(dash)f(at)h(the)f(b)s(eginning)g(of)h(the)630
e2520247 118671170 y(zeroth)36 b(argumen)m(t)h(passed)e(to)h Fr(command)p
e59452c7 11868Fu(.)57 b(This)35 b(is)h(what)f(the)h Ft(login)e Fu(program)i(do)s(es.)
e2520247 11869630 1280 y(The)i Ft(-c)g Fu(option)g(causes)h Fr(command)j
e59452c7 11870Fu(to)d(b)s(e)f(executed)h(with)f(an)g(empt)m(y)h(en)m(vironmen)m(t.)
e2520247 11871630 1390 y(If)c Ft(-a)g Fu(is)h(supplied,)f(the)h(shell)g(passes)f
e59452c7 11872Fr(name)41 b Fu(as)36 b(the)f(zeroth)i(argumen)m(t)f(to)g
e2520247 11873Fr(command)p Fu(.)630 1499 y(If)c Fr(command)j Fu(cannot)e(b)s(e)f
45c0f7f8 11874(executed)h(for)f(some)g(reason,)h(a)g(non-in)m(teractiv)m(e)i(shell)d
e2520247 11875(exits,)630 1609 y(unless)27 b(the)g Ft(execfail)e Fu(shell)i(option)h
45c0f7f8 11876(is)f(enabled.)40 b(In)27 b(that)g(case,)j(it)d(returns)f(failure.)40
e2520247 11877b(An)630 1718 y(in)m(teractiv)m(e)35 b(shell)d(returns)f(failure)h(if)g
560db36b 11878(the)g(\014le)g(cannot)h(b)s(e)e(executed.)47 b(A)32
e2520247 11879b(subshell)f(exits)630 1828 y(unconditionally)j(if)g
560db36b 11880Ft(exec)f Fu(fails.)52 b(If)33 b(no)h Fr(command)j Fu(is)d(sp)s
e2520247 11881(eci\014ed,)h(redirections)f(ma)m(y)h(b)s(e)630 1937
560db36b
CR
11882y(used)30 b(to)i(a\013ect)g(the)f(curren)m(t)g(shell)g(en)m(vironmen)m
11883(t.)43 b(If)30 b(there)i(are)f(no)g(redirection)g(errors,)630
e2520247
CR
118842047 y(the)g(return)e(status)i(is)f(zero;)h(otherwise)g(the)g(return)e
11885(status)i(is)f(non-zero.)150 2209 y Ft(exit)870 2345
11886y(exit)47 b([)p Fj(n)p Ft(])630 2480 y Fu(Exit)30 b(the)g(shell,)h
560db36b 11887(returning)d(a)j(status)f(of)g Fr(n)f Fu(to)h(the)g(shell's)g(paren)m
e2520247 11888(t.)41 b(If)30 b Fr(n)f Fu(is)h(omitted,)h(the)630 2590
560db36b
CR
11889y(exit)c(status)g(is)g(that)g(of)g(the)g(last)g(command)f(executed.)41
11890b(An)m(y)26 b(trap)h(on)f Ft(EXIT)f Fu(is)i(executed)630
e2520247
CR
118912699 y(b)s(efore)j(the)h(shell)f(terminates.)150 2861
11892y Ft(export)870 2997 y(export)46 b([-fn])g([-p])h([)p
11893Fj(name)p Ft([=)p Fj(value)p Ft(]])630 3133 y Fu(Mark)40
560db36b
CR
11894b(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
11895(cesses)f(in)g(the)h(en)m(vironmen)m(t.)70 b(If)39 b(the)630
e2520247 118963242 y Ft(-f)33 b Fu(option)h(is)g(supplied,)f(the)h
6e51e0d0 11897Fr(name)5 b Fu(s)33 b(refer)g(to)i(shell)e(functions;)i(otherwise)f
e2520247 11898(the)g(names)630 3352 y(refer)c(to)h(shell)g(v)-5 b(ariables.)41
6e51e0d0 11899b(The)30 b Ft(-n)f Fu(option)i(means)f(to)h(no)f(longer)h(mark)f(eac)m
e2520247 11900(h)i Fr(name)j Fu(for)630 3461 y(exp)s(ort.)51 b(If)34
e59452c7
CR
11901b(no)g Fr(name)5 b Fu(s)34 b(are)g(supplied,)g(or)g(if)g(the)g
11902Ft(-p)f Fu(option)i(is)f(giv)m(en,)i(a)e(list)h(of)f(names)630
e2520247 119033571 y(of)d(all)h(exp)s(orted)e(v)-5 b(ariables)31 b(is)g(displa)m(y)m
6e51e0d0 11904(ed.)43 b(The)30 b Ft(-p)g Fu(option)i(displa)m(ys)e(output)h(in)f(a)h
e2520247 11905(form)630 3680 y(that)25 b(ma)m(y)g(b)s(e)f(reused)g(as)h(input.)38
6e51e0d0
CR
11906b(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
11907(=)p Fr(v)-5 b(alue)p Fu(,)27 b(the)d(v)-5 b(alue)630
e2520247
CR
119083790 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g
11909Fr(v)-5 b(alue)p Fu(.)630 3926 y(The)29 b(return)e(status)j(is)f(zero)h
6e51e0d0 11910(unless)e(an)h(in)m(v)-5 b(alid)29 b(option)h(is)f(supplied,)f(one)i
e2520247 11911(of)f(the)g(names)630 4035 y(is)k(not)g(a)h(v)-5 b(alid)33
6e51e0d0 11912b(shell)h(v)-5 b(ariable)33 b(name,)i(or)e Ft(-f)f Fu(is)h(supplied)f
e2520247
CR
11913(with)h(a)g(name)g(that)h(is)f(not)h(a)630 4145 y(shell)d(function.)150
119144307 y Ft(false)870 4442 y(false)630 4578 y Fu(Do)s(es)g(nothing,)g
11915(returns)e(a)h(non-zero)h(status.)150 4740 y Ft(getopts)870
119164876 y(getopts)46 b Fj(optstring)f(name)i Ft([)p Fj(arg)f
11917Ft(...])630 5011 y(getopts)28 b Fu(is)i(used)g(b)m(y)g(shell)g(scripts)
11918g(to)g(parse)g(p)s(ositional)h(parameters.)41 b Fr(optstring)d
11919Fu(con-)630 5121 y(tains)k(the)g(option)f(c)m(haracters)i(to)g(b)s(e)d
11920(recognized;)49 b(if)42 b(a)f(c)m(haracter)j(is)d(follo)m(w)m(ed)i(b)m
11921(y)f(a)630 5230 y(colon,)33 b(the)f(option)g(is)g(exp)s(ected)g(to)h
11922(ha)m(v)m(e)g(an)e(argumen)m(t,)i(whic)m(h)f(should)e(b)s(e)h
11923(separated)630 5340 y(from)40 b(it)g(b)m(y)g(whitespace.)70
11924b(The)40 b(colon)h(\(`)p Ft(:)p Fu('\))g(and)e(question)h(mark)g(\(`)p
11925Ft(?)p Fu('\))h(ma)m(y)f(not)h(b)s(e)p eop end
11926%%Page: 52 58
11927TeXDict begin 52 57 bop 150 -116 a Fu(Chapter)30 b(4:)41
11928b(Shell)30 b(Builtin)h(Commands)2069 b(52)630 299 y(used)38
11929b(as)g(option)h(c)m(haracters.)67 b(Eac)m(h)39 b(time)g(it)g(is)f(in)m
11930(v)m(ok)m(ed,)k Ft(getopts)37 b Fu(places)i(the)g(next)630
11931408 y(option)29 b(in)f(the)h(shell)g(v)-5 b(ariable)30
11932b Fr(name)p Fu(,)f(initializing)i Fr(name)j Fu(if)28
11933b(it)h(do)s(es)g(not)g(exist,)h(and)e(the)630 518 y(index)33
11934b(of)g(the)h(next)f(argumen)m(t)h(to)g(b)s(e)e(pro)s(cessed)h(in)m(to)h
11935(the)g(v)-5 b(ariable)34 b Ft(OPTIND)p Fu(.)48 b Ft(OPTIND)630
11936628 y Fu(is)41 b(initialized)i(to)f(1)f(eac)m(h)h(time)g(the)f(shell)g
11937(or)g(a)g(shell)g(script)g(is)g(in)m(v)m(ok)m(ed.)74
11938b(When)41 b(an)630 737 y(option)36 b(requires)e(an)h(argumen)m(t,)i
11939Ft(getopts)c Fu(places)j(that)g(argumen)m(t)g(in)m(to)g(the)f(v)-5
11940b(ariable)630 847 y Ft(OPTARG)p Fu(.)55 b(The)35 b(shell)g(do)s(es)h
11941(not)g(reset)g Ft(OPTIND)e Fu(automatically;)41 b(it)36
11942b(m)m(ust)f(b)s(e)g(man)m(ually)630 956 y(reset)i(b)s(et)m(w)m(een)g(m)
11943m(ultiple)h(calls)f(to)g Ft(getopts)e Fu(within)h(the)h(same)g(shell)f
11944(in)m(v)m(o)s(cation)j(if)e(a)630 1066 y(new)30 b(set)h(of)f
11945(parameters)h(is)f(to)i(b)s(e)d(used.)630 1201 y(When)41
11946b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k Ft(getopts)39
11947b Fu(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 1310
11948y(greater)32 b(than)e(zero.)41 b Ft(OPTIND)29 b Fu(is)h(set)h(to)g(the)
11949g(index)f(of)g(the)h(\014rst)f(non-option)g(argumen)m(t,)630
119501420 y(and)g Fr(name)35 b Fu(is)c(set)g(to)g(`)p Ft(?)p
11951Fu('.)630 1555 y Ft(getopts)c Fu(normally)j(parses)e(the)i(p)s
d76edd30 11952(ositional)g(parameters,)g(but)e(if)i(more)f(argumen)m(ts)h(are)630
e2520247
CR
119531665 y(supplied)f(as)i Fr(arg)38 b Fu(v)-5 b(alues,)31
11954b Ft(getopts)e Fu(parses)h(those)h(instead.)630 1799
e59452c7 11955y 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 11956(ys.)51 b(If)33 b(the)h(\014rst)e(c)m(haracter)k(of)d
e2520247 11957Fr(optstring)42 b Fu(is)34 b(a)630 1909 y(colon,)g Fr(silen)m(t)h
6e51e0d0 11958Fu(error)d(rep)s(orting)f(is)i(used.)45 b(In)31 b(normal)h(op)s
e2520247 11959(eration,)h(diagnostic)h(messages)630 2019 y(are)c(prin)m(ted)e(when)g
ad4aef08 11960(in)m(v)-5 b(alid)30 b(options)g(or)f(missing)g(option)g(argumen)m(ts)h
e2520247 11961(are)f(encoun)m(tered.)630 2128 y(If)34 b(the)g(v)-5
6e51e0d0 11962b(ariable)35 b Ft(OPTERR)d Fu(is)i(set)h(to)f(0,)i(no)e(error)g
d76edd30 11963(messages)h(will)f(b)s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630
e2520247
CR
119642238 y(the)c(\014rst)e(c)m(haracter)j(of)f Ft(optstring)d
11965Fu(is)i(not)h(a)f(colon.)630 2373 y(If)39 b(an)h(in)m(v)-5
6e51e0d0
CR
11966b(alid)41 b(option)f(is)g(seen,)i Ft(getopts)c Fu(places)j(`)p
11967Ft(?)p Fu(')f(in)m(to)h Fr(name)k Fu(and,)d(if)e(not)g(silen)m(t,)630
e2520247 119682482 y(prin)m(ts)f(an)h(error)f(message)h(and)f(unsets)g
6e51e0d0 11969Ft(OPTARG)p Fu(.)67 b(If)39 b Ft(getopts)f Fu(is)i(silen)m(t,)j(the)c
e2520247 11970(option)630 2592 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f
6e51e0d0 11971Ft(OPTARG)f Fu(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630
e2520247 119722727 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f
6e51e0d0 11973Ft(getopts)f Fu(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630
e2520247 119742836 y(\(`)p Ft(?)p Fu('\))h(is)g(placed)g(in)f Fr(name)p
6e51e0d0 11975Fu(,)h Ft(OPTARG)e Fu(is)h(unset,)h(and)f(a)g(diagnostic)i(message)g
e2520247 11976(is)e(prin)m(ted.)39 b(If)630 2946 y Ft(getopts)28 b
6e51e0d0
CR
11977Fu(is)h(silen)m(t,)i(then)e(a)h(colon)h(\(`)p Ft(:)p
11978Fu('\))f(is)g(placed)g(in)f Fr(name)35 b Fu(and)29 b
e2520247
CR
11979Ft(OPTARG)f Fu(is)h(set)h(to)h(the)630 3055 y(option)g(c)m(haracter)h
11980(found.)150 3216 y Ft(hash)870 3351 y(hash)47 b([-r])f([-p)h
11981Fj(filename)p Ft(])e([-dt])i([)p Fj(name)p Ft(])630 3485
6e51e0d0 11982y 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 11983(remem)m(b)s(ers)g(the)g(full)g(pathnames)g(of)h(the)f(commands)630
e2520247 119843595 y(sp)s(eci\014ed)i(as)i Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f
122f603c 11985(need)g(not)g(b)s(e)f(searc)m(hed)i(for)f(on)g(subsequen)m(t)630
e2520247
CR
119863705 y(in)m(v)m(o)s(cations.)79 b(The)41 b(commands)h(are)h(found)e(b)m
11987(y)h(searc)m(hing)i(through)d(the)i(directories)630 3814
6e51e0d0
CR
11988y(listed)37 b(in)g Ft($PATH)p Fu(.)58 b(An)m(y)37 b(previously-remem)m
11989(b)s(ered)f(pathname)h(is)g(discarded.)59 b(The)37 b
e2520247 11990Ft(-p)630 3924 y Fu(option)d(inhibits)f(the)h(path)g(searc)m(h,)h(and)e
6e51e0d0 11991Fr(\014lename)39 b Fu(is)34 b(used)f(as)h(the)f(lo)s(cation)j(of)e
e2520247 11992Fr(name)p Fu(.)630 4033 y(The)42 b Ft(-r)g Fu(option)h(causes)f(the)h
6e51e0d0 11993(shell)g(to)g(forget)g(all)h(remem)m(b)s(ered)d(lo)s(cations.)79
e2520247 11994b(The)42 b Ft(-d)630 4143 y Fu(option)31 b(causes)g(the)f(shell)h(to)g
6e51e0d0 11995(forget)h(the)f(remem)m(b)s(ered)e(lo)s(cation)j(of)f(eac)m(h)h
e2520247 11996Fr(name)p Fu(.)41 b(If)30 b(the)630 4253 y Ft(-t)39 b
6e51e0d0 11997Fu(option)h(is)g(supplied,)g(the)g(full)f(pathname)h(to)g(whic)m(h)f
e2520247 11998(eac)m(h)i Fr(name)k Fu(corresp)s(onds)38 b(is)630 4362
a2851804
CR
11999y(prin)m(ted.)i(If)28 b(m)m(ultiple)h Fr(name)34 b Fu(argumen)m(ts)29
12000b(are)g(supplied)f(with)g Ft(-t)p Fu(,)h(the)g Fr(name)34
e2520247 12001b Fu(is)28 b(prin)m(ted)630 4472 y(b)s(efore)h(the)i(hashed)e(full)g
6e51e0d0 12002(pathname.)41 b(The)29 b Ft(-l)g Fu(option)i(causes)f(output)f(to)i(b)s
e2520247 12003(e)e(displa)m(y)m(ed)630 4581 y(in)23 b(a)h(format)g(that)g(ma)m(y)g(b)
6e51e0d0 12004s(e)f(reused)f(as)i(input.)37 b(If)23 b(no)h(argumen)m(ts)f(are)h(giv)m
e2520247 12005(en,)i(or)e(if)f(only)h Ft(-l)630 4691 y Fu(is)35 b(supplied,)f
6e51e0d0 12006(information)h(ab)s(out)g(remem)m(b)s(ered)f(commands)g(is)h(prin)m
e2520247 12007(ted.)53 b(The)34 b(return)630 4800 y(status)d(is)f(zero)h(unless)f(a)h
6e51e0d0 12008Fr(name)k Fu(is)c(not)f(found)f(or)i(an)f(in)m(v)-5 b(alid)31
e2520247
CR
12009b(option)g(is)f(supplied.)150 4961 y Ft(pwd)870 5096
12010y(pwd)47 b([-LP])630 5230 y Fu(Prin)m(t)29 b(the)g(absolute)h(pathname)
6e51e0d0 12011e(of)h(the)h(curren)m(t)e(w)m(orking)h(directory)-8 b(.)42
e2520247 12012b(If)28 b(the)h Ft(-P)f Fu(option)630 5340 y(is)39 b(supplied,)h(the)f
6e51e0d0 12013(pathname)g(prin)m(ted)g(will)g(not)h(con)m(tain)g(sym)m(b)s(olic)f
e2520247
CR
12014(links.)67 b(If)38 b(the)i Ft(-L)p eop end
12015%%Page: 53 59
12016TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41
12017b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y(option)44
12018b(is)g(supplied,)i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h
12019(sym)m(b)s(olic)f(links.)80 b(The)630 408 y(return)26
12020b(status)h(is)h(zero)g(unless)e(an)h(error)g(is)g(encoun)m(tered)g
12021(while)h(determining)f(the)g(name)630 518 y(of)k(the)f(curren)m(t)g
12022(directory)h(or)f(an)h(in)m(v)-5 b(alid)31 b(option)g(is)f(supplied.)
12023150 671 y Ft(readonly)870 803 y(readonly)46 b([-aAf])g([-p])g([)p
12024Fj(name)p Ft([=)p Fj(value)p Ft(]])e(...)630 934 y Fu(Mark)33
12025b(eac)m(h)h Fr(name)39 b Fu(as)33 b(readonly)-8 b(.)49
12026b(The)32 b(v)-5 b(alues)34 b(of)f(these)g(names)g(ma)m(y)h(not)f(b)s(e)
12027f(c)m(hanged)630 1044 y(b)m(y)38 b(subsequen)m(t)g(assignmen)m(t.)65
12028b(If)38 b(the)h Ft(-f)f Fu(option)g(is)h(supplied,)g(eac)m(h)h
12029Fr(name)j Fu(refers)38 b(to)630 1154 y(a)f(shell)g(function.)59
e59452c7 12030b(The)36 b Ft(-a)g Fu(option)h(means)f(eac)m(h)i Fr(name)k
e2520247
CR
12031Fu(refers)36 b(to)h(an)f(indexed)g(arra)m(y)630 1263
12032y(v)-5 b(ariable;)28 b(the)f Ft(-A)e Fu(option)h(means)g(eac)m(h)h
6e51e0d0 12033Fr(name)k Fu(refers)26 b(to)g(an)g(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5
e2520247 12034b(ariable.)630 1373 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
6e51e0d0 12035Ft(-A)f Fu(tak)m(es)i(precedence.)58 b(If)35 b(no)h Fr(name)k
e2520247 12036Fu(argumen)m(ts)d(are)630 1482 y(giv)m(en,)k(or)c(if)h(the)g
6e51e0d0 12037Ft(-p)f Fu(option)h(is)f(supplied,)i(a)f(list)g(of)g(all)g(readonly)g
e2520247 12038(names)f(is)h(prin)m(ted.)630 1592 y(The)32 b(other)g(options)g(ma)m(y)
e59452c7 12039h(b)s(e)f(used)f(to)i(restrict)g(the)f(output)g(to)h(a)f(subset)g(of)g
e2520247 12040(the)g(set)h(of)630 1702 y(readonly)c(names.)41 b(The)28
6e51e0d0 12041b Ft(-p)h Fu(option)h(causes)g(output)e(to)j(b)s(e)d(displa)m(y)m(ed)i
e2520247 12042(in)f(a)h(format)f(that)630 1811 y(ma)m(y)j(b)s(e)e(reused)g(as)i
6e51e0d0
CR
12043(input.)42 b(If)30 b(a)i(v)-5 b(ariable)31 b(name)h(is)f(follo)m(w)m
12044(ed)h(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)32 b(the)f(v)-5
e2520247 12045b(alue)32 b(of)630 1921 y(the)i(v)-5 b(ariable)34 b(is)f(set)i(to)f
6e51e0d0 12046Fr(v)-5 b(alue)p Fu(.)50 b(The)33 b(return)g(status)g(is)h(zero)g
e2520247 12047(unless)f(an)g(in)m(v)-5 b(alid)34 b(option)630 2030
6e51e0d0
CR
12048y(is)c(supplied,)f(one)h(of)g(the)g Fr(name)35 b Fu(argumen)m(ts)30
12049b(is)g(not)g(a)g(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)30
e2520247 12050b(or)g(function)630 2140 y(name,)h(or)f(the)h Ft(-f)e
6e51e0d0 12051Fu(option)i(is)g(supplied)e(with)h(a)h(name)f(that)h(is)f(not)h(a)g
e2520247
CR
12052(shell)f(function.)150 2293 y Ft(return)870 2425 y(return)46
12053b([)p Fj(n)p Ft(])630 2556 y Fu(Cause)37 b(a)g(shell)h(function)f(to)g
6e51e0d0 12054(stop)h(executing)g(and)e(return)h(the)g(v)-5 b(alue)37
e2520247 12055b Fr(n)g Fu(to)h(its)f(caller.)630 2666 y(If)h Fr(n)h
6e51e0d0
CR
12056Fu(is)g(not)g(supplied,)h(the)f(return)e(v)-5 b(alue)40
12057b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
e2520247 120582776 y(executed)i(in)f(the)g(function.)72 b(If)41 b Ft(return)e
fc527055 12059Fu(is)i(executed)h(b)m(y)f(a)h(trap)f(handler,)i(the)e(last)630
e2520247
CR
120602885 y(command)d(used)f(to)i(determine)f(the)g(status)g(is)h(the)f
12061(last)h(command)e(executed)i(b)s(efore)630 2995 y(the)27
879213c6 12062b(trap)g(handler.)39 b(If)26 b Ft(return)g Fu(is)h(executed)h(during)d
e2520247 12063(a)j Ft(DEBUG)d Fu(trap,)j(the)f(last)h(command)630 3104
fc527055 12064y(used)f(to)h(determine)g(the)f(status)h(is)g(the)f(last)i(command)e
e2520247 12065(executed)h(b)m(y)g(the)f(trap)h(handler)630 3214 y(b)s(efore)e
fc527055
CR
12066Ft(return)f Fu(w)m(as)i(in)m(v)m(ok)m(ed.)41 b Ft(return)25
12067b Fu(ma)m(y)i(also)g(b)s(e)f(used)g(to)h(terminate)h(execution)g(of)630
e2520247 120683324 y(a)34 b(script)g(b)s(eing)g(executed)g(with)g(the)g
6e51e0d0 12069Ft(.)g Fu(\()p Ft(source)p Fu(\))f(builtin,)h(returning)f(either)i
e2520247 12070Fr(n)e Fu(or)h(the)630 3433 y(exit)j(status)f(of)g(the)g(last)h
d76edd30 12071(command)e(executed)i(within)e(the)h(script)g(as)g(the)g(exit)h(status)
e2520247 12072630 3543 y(of)i(the)g(script.)65 b(If)38 b Fr(n)g Fu(is)h(supplied,)h
d76edd30 12073(the)f(return)e(v)-5 b(alue)39 b(is)g(its)g(least)h(signi\014can)m(t)g
e2520247 12074(8)f(bits.)630 3652 y(An)m(y)g(command)f(asso)s(ciated)j(with)d(the)h
6e51e0d0 12075Ft(RETURN)e Fu(trap)i(is)g(executed)g(b)s(efore)g(execution)630
e2520247 120763762 y(resumes)29 b(after)h(the)g(function)g(or)g(script.)40
6e51e0d0 12077b(The)29 b(return)g(status)h(is)g(non-zero)g(if)g Ft(return)e
e2520247 12078Fu(is)630 3871 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
d76edd30 12079h(used)f(outside)h(a)g(function)f(and)g(not)h(during)630
e2520247
CR
120803981 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Ft(.)g
12081Fu(or)g Ft(source)p Fu(.)150 4134 y Ft(shift)870 4266
12082y(shift)46 b([)p Fj(n)p Ft(])630 4398 y Fu(Shift)41 b(the)g(p)s
6e51e0d0 12083(ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g Fr(n)p
e2520247 12084Fu(.)73 b(The)40 b(p)s(ositional)j(parameters)630 4507
6e51e0d0
CR
12085y(from)34 b Fr(n)p Ft(+)p Fu(1)39 b(.)22 b(.)h(.)45 b
12086Ft($#)34 b Fu(are)g(renamed)g(to)h Ft($1)k Fu(.)22 b(.)g(.)46
12087b Ft($#)p Fu(-)p Fr(n)p Fu(.)51 b(P)m(arameters)36 b(represen)m(ted)e
e2520247 12088(b)m(y)g(the)630 4617 y(n)m(um)m(b)s(ers)d Ft($#)i Fu(do)m(wn)f(to)i
e6983002
CR
12089Ft($#)p Fu(-)p Fr(n)p Ft(+)p Fu(1)e(are)h(unset.)48 b
12090Fr(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
e2520247 12091(less)630 4726 y(than)g(or)g(equal)h(to)g Ft($#)p Fu(.)46
e6983002 12092b(If)31 b Fr(n)h Fu(is)g(zero)h(or)f(greater)i(than)e
e2520247 12093Ft($#)p Fu(,)g(the)h(p)s(ositional)g(parameters)630 4836
e6983002
CR
12094y(are)e(not)h(c)m(hanged.)43 b(If)31 b Fr(n)g Fu(is)g(not)g(supplied,)f
12095(it)i(is)f(assumed)f(to)i(b)s(e)f(1.)43 b(The)31 b(return)f(status)630
e2520247 120964945 y(is)g(zero)i(unless)d Fr(n)h Fu(is)g(greater)i(than)e
e6983002 12097Ft($#)g Fu(or)g(less)h(than)f(zero,)i(non-zero)e(otherwise.)150
e2520247 120985099 y Ft(test)150 5208 y([)870 5340 y(test)47 b Fj(expr)p
e59452c7 12099eop end
e2520247
CR
12100%%Page: 54 60
12101TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
12102b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y(Ev)-5
12103b(aluate)43 b(a)f(conditional)h(expression)f Fr(expr)48
12104b Fu(and)41 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f(1)630
12105408 y(\(false\).)g(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)g(m)m
12106(ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
12107518 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
12108(elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)630
12109628 y(Expressions],)39 b(page)g(98.)64 b Ft(test)37 b
12110Fu(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
12111(accept)630 737 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f
12112Ft(--)g Fu(as)h(signifying)f(the)h(end)f(of)g(options.)630
12113871 y(When)g(the)h Ft([)f Fu(form)g(is)g(used,)g(the)g(last)i(argumen)m
12114(t)e(to)i(the)e(command)g(m)m(ust)h(b)s(e)e(a)i Ft(])p
12115Fu(.)630 1004 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f
12116(the)h(follo)m(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630
121171114 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5
12118b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)s(er)f(of)h
12119(argumen)m(ts;)g(see)630 1223 y(b)s(elo)m(w.)41 b(Op)s(erator)30
12120b(precedence)h(is)f(used)g(when)f(there)i(are)f(\014v)m(e)h(or)f(more)h
12121(argumen)m(ts.)630 1380 y Ft(!)f Fj(expr)210 b Fu(T)-8
12122b(rue)30 b(if)g Fr(expr)37 b Fu(is)30 b(false.)630 1538
12123y Ft(\()g Fj(expr)f Ft(\))133 b Fu(Returns)23 b(the)i(v)-5
e59452c7 12124b(alue)25 b(of)f Fr(expr)p Fu(.)38 b(This)24 b(ma)m(y)h(b)s(e)e(used)h
e2520247
CR
12125(to)h(o)m(v)m(erride)g(the)g(normal)1110 1647 y(precedence)31
12126b(of)f(op)s(erators.)630 1805 y Fj(expr1)f Ft(-a)h Fj(expr2)1110
121271914 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expr1)37
12128b Fu(and)30 b Fr(expr2)38 b Fu(are)30 b(true.)630 2071
12129y Fj(expr1)f Ft(-o)h Fj(expr2)1110 2181 y Fu(T)-8 b(rue)30
e59452c7 12130b(if)g(either)h Fr(expr1)38 b Fu(or)30 b Fr(expr2)37
e2520247 12131b Fu(is)31 b(true.)630 2338 y(The)37 b Ft(test)f Fu(and)g
e59452c7 12132Ft([)h Fu(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f
e2520247
CR
12133(using)g(a)g(set)h(of)f(rules)630 2448 y(based)30 b(on)g(the)h(n)m(um)m
12134(b)s(er)e(of)h(argumen)m(ts.)630 2605 y(0)h(argumen)m(ts)1110
121352715 y(The)f(expression)g(is)g(false.)630 2872 y(1)h(argumen)m(t)1110
121362981 y(The)f(expression)g(is)g(true)h(if,)f(and)g(only)g(if,)h(the)g
12137(argumen)m(t)f(is)h(not)f(n)m(ull.)630 3139 y(2)h(argumen)m(ts)1110
121383248 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Ft(!)p
e59452c7 12139Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110
e2520247 121403358 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33
e59452c7 12141b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)1110
e2520247
CR
121423467 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g
12143(Conditional)g(Expres-)1110 3577 y(sions],)34 b(page)f(98\),)i(the)e
e59452c7 12144(expression)f(is)h(true)g(if)g(the)g(unary)e(test)j(is)f(true.)47
e2520247 12145b(If)1110 3687 y(the)33 b(\014rst)g(argumen)m(t)h(is)f(not)g(a)h(v)-5
e59452c7 12146b(alid)34 b(unary)e(op)s(erator,)i(the)g(expression)f(is)1110
e2520247 121473796 y(false.)630 3953 y(3)e(argumen)m(ts)1110 4063 y(The)f(follo)m
e59452c7 12148(wing)i(conditions)f(are)f(applied)h(in)f(the)g(order)g(listed.)1159
e2520247
CR
121494196 y(1.)61 b(If)29 b(the)g(second)g(argumen)m(t)h(is)f(one)h(of)f
12150(the)h(binary)e(conditional)j(op)s(era-)1290 4306 y(tors)c(\(see)h
12151(Section)g(6.4)g([Bash)g(Conditional)f(Expressions],)h(page)f(98\),)
121521290 4416 y(the)d(result)g(of)f(the)h(expression)g(is)g(the)f(result)h
12153(of)g(the)g(binary)f(test)h(using)1290 4525 y(the)35
e59452c7
CR
12154b(\014rst)e(and)h(third)g(argumen)m(ts)h(as)f(op)s(erands.)52
12155b(The)34 b(`)p Ft(-a)p Fu(')g(and)g(`)p Ft(-o)p Fu(')1290
e2520247
CR
121564635 y(op)s(erators)24 b(are)g(considered)g(binary)f(op)s(erators)h
12157(when)f(there)h(are)h(three)1290 4744 y(argumen)m(ts.)1159
121584878 y(2.)61 b(If)41 b(the)h(\014rst)e(argumen)m(t)i(is)f(`)p
a6ae8f35 12159Ft(!)p Fu(',)k(the)d(v)-5 b(alue)41 b(is)h(the)f(negation)i(of)f(the)
e2520247
CR
121601290 4987 y(t)m(w)m(o-argumen)m(t)33 b(test)e(using)f(the)g(second)h
12161(and)e(third)h(argumen)m(ts.)1159 5121 y(3.)61 b(If)35
a6ae8f35 12162b(the)h(\014rst)e(argumen)m(t)i(is)g(exactly)h(`)p Ft(\()p
e2520247 12163Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)1290 5230
a6ae8f35 12164y(exactly)i(`)p Ft(\))p Fu(',)g(the)f(result)f(is)h(the)f(one-argumen)m
e2520247 12165(t)i(test)f(of)f(the)h(second)1290 5340 y(argumen)m(t.)p
e59452c7 12166eop end
e2520247
CR
12167%%Page: 55 61
12168TeXDict begin 55 60 bop 150 -116 a Fu(Chapter)30 b(4:)41
12169b(Shell)30 b(Builtin)h(Commands)2069 b(55)1159 299 y(4.)61
12170b(Otherwise,)30 b(the)h(expression)f(is)g(false.)630
12171452 y(4)h(argumen)m(ts)1110 562 y(The)f(follo)m(wing)i(conditions)f
12172(are)f(applied)h(in)f(the)g(order)g(listed.)1159 693
12173y(1.)61 b(If)39 b(the)i(\014rst)e(argumen)m(t)h(is)g(`)p
12174Ft(!)p Fu(',)j(the)d(result)f(is)h(the)g(negation)i(of)e(the)1290
12175803 y(three-argumen)m(t)k(expression)e(comp)s(osed)g(of)h(the)g
12176(remaining)g(argu-)1290 913 y(men)m(ts.)1159 1044 y(2.)61
e59452c7
CR
12177b(If)31 b(the)g(\014rst)f(argumen)m(t)i(is)f(exactly)i(`)p
12178Ft(\()p Fu(')e(and)g(the)g(fourth)f(argumen)m(t)i(is)1290
e2520247
CR
121791154 y(exactly)38 b(`)p Ft(\))p Fu(',)f(the)f(result)g(is)g(the)g(t)m
12180(w)m(o-argumen)m(t)i(test)f(of)f(the)g(second)1290 1263
12181y(and)30 b(third)f(argumen)m(ts.)1159 1395 y(3.)61 b(Otherwise,)26
e59452c7 12182b(the)f(expression)f(is)h(parsed)f(and)g(ev)-5 b(aluated)26
e2520247
CR
12183b(according)g(to)1290 1504 y(precedence)31 b(using)f(the)g(rules)g
12184(listed)h(ab)s(o)m(v)m(e.)630 1658 y(5)g(or)f(more)h(argumen)m(ts)1110
121851767 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5
12186b(aluated)45 b(according)f(to)f(precedence)1110 1877
e59452c7 12187y(using)30 b(the)g(rules)g(listed)h(ab)s(o)m(v)m(e.)630
e2520247 121882030 y(When)40 b(used)f(with)g Ft(test)g Fu(or)h(`)p
e59452c7 12189Ft([)p Fu(',)j(the)d(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
e2520247
CR
12190Fu(')h(op)s(erators)g(sort)g(lexicographically)630 2140
12191y(using)30 b(ASCI)s(I)f(ordering.)150 2293 y Ft(times)870
121922425 y(times)630 2556 y Fu(Prin)m(t)37 b(out)h(the)g(user)e(and)h
e59452c7 12193(system)g(times)h(used)f(b)m(y)g(the)h(shell)f(and)g(its)h(c)m
e2520247
CR
12194(hildren.)61 b(The)630 2666 y(return)29 b(status)i(is)f(zero.)150
121952819 y Ft(trap)870 2951 y(trap)47 b([-Plp])f([)p Fj(action)p
12196Ft(])f([)p Fj(sigspec)h Ft(...)o(])630 3082 y Fu(The)40
237c32ba 12197b Fr(action)i Fu(is)e(a)h(command)f(that)h(is)f(read)h(and)e(executed)j
e2520247 12198(when)d(the)i(shell)f(receiv)m(es)630 3192 y(signal)30
237c32ba
CR
12199b Fr(sigsp)s(ec)p Fu(.)40 b(If)29 b Fr(action)h Fu(is)f(absen)m(t)h
12200(\(and)f(there)g(is)g(a)g(single)h Fr(sigsp)s(ec)6 b
e2520247 12201Fu(\))29 b(or)g(equal)h(to)g(`)p Ft(-)p Fu(',)630 3302
237c32ba
CR
12202y(eac)m(h)e(sp)s(eci\014ed)e(signal's)h(disp)s(osition)f(is)h(reset)g
12203(to)g(the)g(v)-5 b(alue)27 b(it)g(had)f(when)f(the)i(shell)g(w)m(as)630
e2520247 122043411 y(started.)43 b(If)30 b Fr(action)j Fu(is)e(the)g(n)m(ull)f
237c32ba 12205(string,)i(then)e(the)i(signal)f(sp)s(eci\014ed)f(b)m(y)h(eac)m(h)h
e2520247
CR
12206Fr(sigsp)s(ec)37 b Fu(is)630 3521 y(ignored)30 b(b)m(y)h(the)f(shell)h
12207(and)f(commands)g(it)h(in)m(v)m(ok)m(es.)630 3652 y(If)44
237c32ba 12208b(no)h(argumen)m(ts)g(are)g(supplied,)j Ft(trap)c Fu(prin)m(ts)g(the)h
e2520247 12209(actions)h(asso)s(ciated)g(with)f(eac)m(h)630 3762 y(trapp)s(ed)29
237c32ba 12210b(signal)j(as)f(a)g(set)g(of)f Ft(trap)g Fu(commands)g(that)h(can)g(b)s
e2520247 12211(e)f(reused)g(as)h(shell)g(input)e(to)630 3871 y(restore)g(the)g
237c32ba
CR
12212(curren)m(t)g(signal)g(disp)s(ositions.)40 b(If)28 b
12213Fr(action)i Fu(is)f(not)f(presen)m(t)h(and)f Ft(-p)g
e2520247 12214Fu(has)h(b)s(een)630 3981 y(supplied,)39 b Ft(trap)e
237c32ba 12215Fu(displa)m(ys)i(the)f(trap)h(commands)f(asso)s(ciated)h(with)f(eac)m
e2520247 12216(h)i Fr(sigsp)s(ec)p Fu(,)h(or,)630 4091 y(if)32 b(no)g
237c32ba
CR
12217Fr(sigsp)s(ec)6 b Fu(s)32 b(are)h(supplied,)e(for)h(all)h(trapp)s(ed)e
12218(signals,)j(as)e(a)h(set)g(of)f Ft(trap)f Fu(commands)630
e2520247 122194200 y(that)44 b(can)g(b)s(e)f(reused)g(as)g(shell)h(input)f(to)h
d052bd6f 12220(restore)g(the)g(curren)m(t)f(signal)h(disp)s(ositions.)630
e2520247 122214310 y(The)31 b Ft(-P)g Fu(option)g(b)s(eha)m(v)m(es)h(similarly)-8
d052bd6f 12222b(,)33 b(but)e(displa)m(ys)g(only)g(the)h(actions)g(asso)s(ciated)h
e2520247 12223(with)630 4419 y(eac)m(h)43 b Fr(sigsp)s(ec)k Fu(argumen)m(t.)74
d052bd6f 12224b Ft(-P)41 b Fu(requires)g(at)h(least)h(one)f Fr(sigsp)s(ec)47
e2520247 12225b Fu(argumen)m(t.)75 b(The)41 b Ft(-P)630 4529 y Fu(or)34
d052bd6f
CR
12226b Ft(-p)f Fu(options)h(to)g Ft(trap)e Fu(ma)m(y)j(b)s(e)e(used)g(in)g
12227(a)h(subshell)f(en)m(vironmen)m(t)h(\(e.g.,)i(command)630
e2520247 122284639 y(substitution\))k(and,)j(as)d(long)h(as)g(they)g(are)f(used)g(b)s
d052bd6f 12229(efore)g Ft(trap)f Fu(is)h(used)g(to)h(c)m(hange)h(a)630
e2520247
CR
122304748 y(signal's)31 b(handling,)f(will)h(displa)m(y)f(the)h(state)h(of)e
12231(its)h(paren)m(t's)g(traps.)630 4880 y(The)21 b Ft(-l)f
d052bd6f
CR
12232Fu(option)i(causes)g Ft(trap)e Fu(to)i(prin)m(t)f(a)g(list)h(of)g
12233(signal)g(names)f(and)g(their)g(corresp)s(onding)630
e2520247 122344989 y(n)m(um)m(b)s(ers.)37 b(Eac)m(h)24 b Fr(sigsp)s(ec)30
237c32ba 12235b Fu(is)23 b(either)i(a)f(signal)g(name)g(or)f(a)h(signal)h(n)m(um)m(b)
e2520247 12236s(er.)37 b(Signal)24 b(names)630 5099 y(are)31 b(case)g(insensitiv)m(e)
237c32ba 12237h(and)d(the)i Ft(SIG)e Fu(pre\014x)h(is)g(optional.)630
e2520247 122385230 y(If)f(a)g Fr(sigsp)s(ec)35 b Fu(is)30 b Ft(0)f
237c32ba
CR
12239Fu(or)g Ft(EXIT)p Fu(,)f Fr(action)j Fu(is)e(executed)h(when)f(the)g
12240(shell)g(exits.)42 b(If)28 b(a)i Fr(sigsp)s(ec)35 b Fu(is)630
e2520247
CR
122415340 y Ft(DEBUG)p Fu(,)g Fr(action)g Fu(is)g(executed)h(b)s(efore)e(ev)
12242m(ery)h(simple)g(command,)h Ft(for)d Fu(command,)j Ft(case)p
12243eop end
12244%%Page: 56 62
12245TeXDict begin 56 61 bop 150 -116 a Fu(Chapter)30 b(4:)41
12246b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y(command,)29
12247b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h(command,)e([[)h
12248(conditional)h(command,)630 408 y(arithmetic)44 b Ft(for)e
12249Fu(command,)k(and)c(b)s(efore)g(the)h(\014rst)f(command)g(executes)i
12250(in)f(a)g(shell)630 518 y(function.)d(Refer)31 b(to)g(the)f
12251(description)h(of)f(the)h Ft(extdebug)d Fu(option)j(to)g(the)f
12252Ft(shopt)f Fu(builtin)630 628 y(\(see)35 b(Section)g(4.3.2)g([The)f
12253(Shopt)f(Builtin],)j(page)f(72\))g(for)f(details)h(of)f(its)g(e\013ect)
12254i(on)e(the)630 737 y Ft(DEBUG)25 b Fu(trap.)39 b(If)26
12255b(a)g Fr(sigsp)s(ec)32 b Fu(is)26 b Ft(RETURN)p Fu(,)g
12256Fr(action)i Fu(is)e(executed)h(eac)m(h)g(time)g(a)g(shell)f(function)
12257630 847 y(or)k(a)h(script)f(executed)i(with)e(the)g Ft(.)g
12258Fu(or)h Ft(source)d Fu(builtins)i(\014nishes)f(executing.)630
12259984 y(If)c(a)h Fr(sigsp)s(ec)31 b Fu(is)25 b Ft(ERR)p
d052bd6f 12260Fu(,)h Fr(action)g Fu(is)g(executed)g(whenev)m(er)f(a)h(pip)s(eline)f
e2520247 12261(\(whic)m(h)g(ma)m(y)h(consist)g(of)630 1093 y(a)31 b(single)h(simple)f
d052bd6f 12262(command\),)h(a)f(list,)h(or)f(a)h(comp)s(ound)d(command)i(returns)f(a)
e2520247 12263h(non-zero)630 1203 y(exit)e(status,)g(sub)5 b(ject)27
d052bd6f 12264b(to)i(the)f(follo)m(wing)h(conditions.)40 b(The)28 b
e2520247 12265Ft(ERR)f Fu(trap)g(is)h(not)g(executed)h(if)630 1313
d052bd6f 12266y(the)24 b(failed)h(command)e(is)h(part)g(of)g(the)g(command)g(list)h
e2520247 12267(immediately)g(follo)m(wing)h(an)d Ft(until)630 1422
d052bd6f 12268y Fu(or)h Ft(while)f Fu(k)m(eyw)m(ord,)j(part)e(of)g(the)g(test)h
237c32ba 12269(follo)m(wing)h(the)e Ft(if)g Fu(or)g Ft(elif)f Fu(reserv)m(ed)h(w)m
e2520247 12270(ords,)h(part)630 1532 y(of)37 b(a)g(command)f(executed)i(in)e(a)h
237c32ba 12271Ft(&&)f Fu(or)h Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m
e2520247 12272(wing)h(the)630 1641 y(\014nal)f Ft(&&)f Fu(or)h Ft(||)p
237c32ba 12273Fu(,)i(an)m(y)e(command)g(in)g(a)g(pip)s(eline)g(but)f(the)i(last,)i
e2520247 12274(or)d(if)g(the)g(command's)630 1751 y(return)31 b(status)i(is)f(b)s
237c32ba 12275(eing)f(in)m(v)m(erted)i(using)f Ft(!)p Fu(.)46 b(These)32
e2520247 12276b(are)g(the)h(same)f(conditions)h(ob)s(ey)m(ed)630 1861
237c32ba 12277y(b)m(y)d(the)h Ft(errexit)d Fu(\()p Ft(-e)p Fu(\))j(option.)630
e2520247 122781998 y(Signals)23 b(ignored)h(up)s(on)e(en)m(try)h(to)h(a)g(non-in)m
237c32ba 12279(teractiv)m(e)i(shell)d(cannot)h(b)s(e)f(trapp)s(ed)f(or)h(reset.)630
e2520247 122802107 y(In)m(teractiv)m(e)i(shells)d(p)s(ermit)f(trapping)h(signals)h
237c32ba 12281(ignored)f(on)g(en)m(try)-8 b(.)39 b(T)-8 b(rapp)s(ed)21
e2520247 12282b(signals)h(that)630 2217 y(are)30 b(not)g(b)s(eing)f(ignored)h(are)g
237c32ba 12283(reset)g(to)g(their)g(original)g(v)-5 b(alues)30 b(in)g(a)g(subshell)e
e2520247
CR
12284(or)i(subshell)630 2326 y(en)m(vironmen)m(t)h(when)e(one)i(is)f
12285(created.)630 2463 y(The)g(return)f(status)i(is)f(zero)h(unless)f(a)h
237c32ba 12286Fr(sigsp)s(ec)36 b Fu(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5
e2520247
CR
12287b(alid)31 b(signal.)150 2628 y Ft(true)870 2765 y(true)630
122882902 y Fu(Do)s(es)g(nothing,)g(returns)e(a)h(0)h(status.)150
122893066 y Ft(umask)870 3203 y(umask)46 b([-p])h([-S])g([)p
12290Fj(mode)p Ft(])630 3340 y Fu(Set)30 b(the)f(shell)h(pro)s(cess's)f
12291(\014le)h(creation)g(mask)g(to)g Fr(mo)s(de)p Fu(.)40
12292b(If)29 b Fr(mo)s(de)34 b Fu(b)s(egins)29 b(with)g(a)h(digit,)630
122933450 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s
12294(er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g(a)h(sym)m(b)s(olic)f
12295(mo)s(de)630 3559 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f
12296(the)g Ft(chmod)e Fu(command.)40 b(If)28 b Fr(mo)s(de)34
12297b Fu(is)28 b(omitted,)j(the)630 3669 y(curren)m(t)39
12298b(v)-5 b(alue)40 b(of)f(the)g(mask)g(is)h(prin)m(ted.)66
12299b(If)39 b(the)g Ft(-S)g Fu(option)g(is)h(supplied)d(without)j(a)630
123003778 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f
e59452c7 12301(in)g(a)g(sym)m(b)s(olic)h(format.)47 b(If)32 b(the)g
e2520247 12302Ft(-p)g Fu(option)h(is)630 3888 y(supplied,)f(and)f Fr(mo)s(de)37
fc527055 12303b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g(a)g(form)g(that)h(ma)m
e2520247 12304(y)g(b)s(e)e(reused)h(as)630 3998 y(input.)62 b(The)38
fc527055 12305b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s(de)g(is)g(successfully)
e2520247
CR
12306g(c)m(hanged)g(or)g(if)g(no)630 4107 y Fr(mo)s(de)d Fu(argumen)m(t)c
12307(is)f(supplied,)g(and)f(non-zero)i(otherwise.)630 4244
a6ae8f35
CR
12308y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in)m(terpreted)h(as)f
12309(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
e2520247 123104354 y(the)f(umask)g(is)h(subtracted)f(from)f Ft(7)p
fc527055 12311Fu(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Ft(022)e Fu(results)h(in)g(p)s
e2520247
CR
12312(ermissions)630 4463 y(of)d Ft(755)p Fu(.)150 4628 y
12313Ft(unset)870 4765 y(unset)46 b([-fnv])g([)p Fj(name)p
12314Ft(])630 4902 y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5 b(ariable)35
fc527055 12315b(or)f(function)f Fr(name)p Fu(.)52 b(If)33 b(the)i Ft(-v)e
e2520247 12316Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e Fr(name)630 5011
b729dac1
CR
12317y Fu(refers)27 b(to)h(a)g(shell)f(v)-5 b(ariable)28 b(and)f(that)h(v)-5
12318b(ariable)28 b(is)f(remo)m(v)m(ed.)41 b(If)27 b(the)g
e2520247 12319Ft(-f)g Fu(option)g(is)h(giv)m(en,)630 5121 y(the)37
abfcfa4e
CR
12320b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h(and)e(the)h
12321(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61 b(If)630
e2520247 123225230 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e
e59452c7 12323Fr(name)39 b Fu(is)33 b(a)h(v)-5 b(ariable)34 b(with)f(the)h
e2520247 12324Ft(nameref)d Fu(attribute,)630 5340 y Fr(name)42 b Fu(will)37
e59452c7 12325b(b)s(e)f(unset)g(rather)g(than)h(the)g(v)-5 b(ariable)37
e2520247
CR
12326b(it)g(references.)60 b Ft(-n)36 b Fu(has)g(no)h(e\013ect)h(if)p
12327eop end
12328%%Page: 57 63
12329TeXDict begin 57 62 bop 150 -116 a Fu(Chapter)30 b(4:)41
12330b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y(the)39
12331b Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39 b(no)g(options)h(are)f
12332(supplied,)h(eac)m(h)h Fr(name)j Fu(refers)39 b(to)h(a)630
12333408 y(v)-5 b(ariable;)45 b(if)39 b(there)g(is)g(no)g(v)-5
12334b(ariable)40 b(b)m(y)f(that)h(name,)h(a)f(function)f(with)g(that)g
12335(name,)j(if)630 518 y(an)m(y)-8 b(,)34 b(is)e(unset.)46
12336b(Readonly)33 b(v)-5 b(ariables)33 b(and)f(functions)g(ma)m(y)h(not)f
12337(b)s(e)g(unset.)46 b(Some)33 b(shell)630 628 y(v)-5 b(ariables)29
12338b(lose)h(their)e(sp)s(ecial)h(b)s(eha)m(vior)g(if)f(they)h(are)g
12339(unset;)g(suc)m(h)f(b)s(eha)m(vior)h(is)g(noted)f(in)630
12340737 y(the)35 b(description)h(of)f(the)g(individual)g(v)-5
12341b(ariables.)56 b(The)34 b(return)g(status)i(is)f(zero)h(unless)f(a)630
12342847 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m(y)g(not)f(b)s(e)g
12343(unset.)150 1077 y Fs(4.2)68 b(Bash)45 b(Builtin)g(Commands)150
123441237 y Fu(This)c(section)h(describ)s(es)f(builtin)f(commands)h(whic)m
12345(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h(b)s(een)f(extended)g(in)150
123461346 y(Bash.)g(Some)30 b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g
12347(in)g(the)h Fm(posix)e Fu(standard.)150 1496 y Ft(alias)870
123481625 y(alias)46 b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p
12349Ft(])d(...)o(])630 1755 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f
12350(the)h Ft(-p)g Fu(option,)h Ft(alias)e Fu(prin)m(ts)g(the)h(list)h(of)f
12351(aliases)h(on)f(the)630 1864 y(standard)g(output)g(in)g(a)h(form)f
d052bd6f 12352(that)h(allo)m(ws)h(them)e(to)h(b)s(e)f(reused)g(as)g(input.)39
e2520247 12353b(If)25 b(argumen)m(ts)630 1974 y(are)j(supplied,)e(an)i(alias)g(is)f
237c32ba
CR
12354(de\014ned)f(for)h(eac)m(h)h Fr(name)33 b Fu(whose)27
12355b Fr(v)-5 b(alue)33 b Fu(is)27 b(giv)m(en.)41 b(If)26
e2520247 12356b(no)h Fr(v)-5 b(alue)630 2083 y Fu(is)37 b(giv)m(en,)j(the)d(name)g
237c32ba 12357(and)g(v)-5 b(alue)37 b(of)h(the)f(alias)h(is)f(prin)m(ted.)61
e2520247
CR
12358b(Aliases)38 b(are)f(describ)s(ed)f(in)630 2193 y(Section)31
12359b(6.6)h([Aliases],)g(page)f(102.)150 2342 y Ft(bind)870
123602472 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870
123612581 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p
237c32ba 12362Ft(])f([-u)g Fj(function)p Ft(])g([-r)h Fj(keyseq)p Ft(])870
e2520247
CR
123632691 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870
123642800 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq:shell-command)
12365870 2910 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e Fj(keyseq:function-name)
12366870 3020 y Ft(bind)i([-m)g Fj(keymap)p Ft(])e Fj
12367(keyseq:readline-command)870 3129 y Ft(bind)i Fj(readline-command-line)
12368630 3259 y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g
12369(8)g([Command)f(Line)h(Editing],)j(page)e(121\))g(k)m(ey)630
123703368 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g
12371(to)h(a)f(Readline)g(function)f(or)h(macro,)630 3478
e59452c7 12372y(or)44 b(set)h(a)g(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45
abfcfa4e 12373b(non-option)g(argumen)m(t)f(is)g(a)h(command)f(as)g(it)630
e2520247 123743587 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i
abfcfa4e 12375(\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init)630
e2520247
CR
123763697 y(File],)c(page)d(124\),)j(but)c(eac)m(h)h(binding)f(or)g(command)
12377h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 3807
a6ae8f35 12378y(argumen)m(t;)31 b(e.g.,)h(`)p Ft("\\C-x\\C-r":re-read-init-f)o(ile)p
e2520247
CR
12379Fu('.)630 3936 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m
12380(wing)h(meanings:)630 4085 y Ft(-m)e Fj(keymap)66 b Fu(Use)54
a6ae8f35 12381b Fr(k)m(eymap)j Fu(as)d(the)g(k)m(eymap)g(to)h(b)s(e)e(a\013ected)i(b)
e2520247 12382m(y)f(the)g(subsequen)m(t)1110 4195 y(bindings.)46 b(Acceptable)34
fc527055 12383b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
e2520247 12384Fu(,)1110 4304 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
fc527055 12385Fu(,)f Ft(vi)p Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p
e2520247 12386Fu(,)f(and)1110 4414 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
037a8b7f 12387b Fu(is)h(equiv)-5 b(alen)m(t)46 b(to)g Ft(vi-command)c
e2520247 12388Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 4524 y(synon)m(ym\);)30
037a8b7f 12389b Ft(emacs)f Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
e2520247
CR
12390Fu(.)630 4673 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
12391(Readline)g(functions.)630 4822 y Ft(-p)384 b Fu(Displa)m(y)34
037a8b7f 12392b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m
e2520247
CR
12393(a)m(y)f(that)1110 4932 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
12394(in)g(a)h(Readline)g(initialization)i(\014le.)630 5081
037a8b7f 12395y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
e2520247 12396(and)g(bindings.)630 5230 y Ft(-v)384 b Fu(Displa)m(y)25
037a8b7f 12397b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24
e2520247 12398b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 5340
037a8b7f 12399y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g
e2520247
CR
12400(initialization)j(\014le.)p eop end
12401%%Page: 58 64
12402TeXDict begin 58 63 bop 150 -116 a Fu(Chapter)30 b(4:)41
12403b(Shell)30 b(Builtin)h(Commands)2069 b(58)630 299 y Ft(-V)384
12404b Fu(List)31 b(curren)m(t)f(Readline)h(v)-5 b(ariable)31
12405b(names)f(and)g(v)-5 b(alues.)630 457 y Ft(-s)384 b Fu(Displa)m(y)39
12406b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g
12407(strings)1110 567 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h
12408(that)f(they)g(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110
12409676 y(Readline)d(initialization)i(\014le.)630 835 y Ft(-S)384
037a8b7f 12410b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
e2520247
CR
12411(macros)g(and)f(the)g(strings)1110 944 y(they)31 b(output.)630
124121103 y Ft(-f)f Fj(filename)1110 1212 y Fu(Read)h(k)m(ey)g(bindings)e
12413(from)h Fr(\014lename)p Fu(.)630 1370 y Ft(-q)g Fj(function)1110
124141480 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
12415(the)f(named)f Fr(function)p Fu(.)630 1638 y Ft(-u)g
12416Fj(function)1110 1748 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
12417(the)f(named)g Fr(function)p Fu(.)630 1906 y Ft(-r)g
12418Fj(keyseq)66 b Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f
12419(for)h Fr(k)m(eyseq)p Fu(.)630 2064 y Ft(-x)g Fj(keyseq:shell-command)
124201110 2174 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
d052bd6f 12421(whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
e2520247
CR
124222284 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51
12423b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 2393
d052bd6f 12424y(LINE)37 b Fu(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e
e2520247 12425(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 2503
d052bd6f 12426y Ft(READLINE_POINT)d Fu(and)j Ft(READLINE_MARK)d Fu(v)-5
e2520247 12427b(ariables)39 b(to)f(the)g(curren)m(t)g(lo-)1110 2612
d052bd6f 12428y(cation)46 b(of)f(the)g(insertion)g(p)s(oin)m(t)f(and)g(the)h(sa)m(v)m
e2520247 12429(ed)h(insertion)f(p)s(oin)m(t)f(\(the)1110 2722 y Fr(mark)6
d052bd6f 12430b Fu(\),)38 b(resp)s(ectiv)m(ely)-8 b(.)62 b(The)36 b(shell)h(assigns)g
e2520247 12431(an)m(y)g(n)m(umeric)g(argumen)m(t)g(the)1110 2832 y(user)43
d052bd6f 12432b(supplied)g(to)h(the)g Ft(READLINE_ARGUMENT)39 b Fu(v)-5
e2520247 12433b(ariable.)82 b(If)44 b(there)g(w)m(as)1110 2941 y(no)39
d052bd6f 12434b(argumen)m(t,)j(that)d(v)-5 b(ariable)40 b(is)f(not)g(set.)68
e2520247 12435b(If)38 b(the)h(executed)h(command)1110 3051 y(c)m(hanges)e(the)e(v)-5
d052bd6f 12436b(alue)37 b(of)g(an)m(y)g(of)g Ft(READLINE_LINE)p Fu(,)d
e2520247 12437Ft(READLINE_POINT)p Fu(,)h(or)1110 3160 y Ft(READLINE_MARK)p
d052bd6f 12438Fu(,)i(those)i(new)f(v)-5 b(alues)38 b(will)h(b)s(e)f(re\015ected)h(in)
e2520247 12439f(the)g(editing)1110 3270 y(state.)630 3428 y Ft(-X)384
d052bd6f 12440b Fu(List)27 b(all)i(k)m(ey)f(sequences)f(b)s(ound)e(to)j(shell)g
e2520247 12441(commands)e(and)h(the)g(asso)s(ciated)1110 3538 y(commands)j(in)g(a)h
d052bd6f 12442(format)g(that)f(can)h(b)s(e)f(reused)f(as)i(input.)630
e2520247 124433696 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5
d052bd6f 12444b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150
e2520247
CR
124453854 y Ft(builtin)870 3988 y(builtin)46 b([)p Fj(shell-builtin)e
12446Ft([)p Fj(args)p Ft(]])630 4122 y Fu(Run)35 b(a)i(shell)f(builtin,)i
d052bd6f 12447(passing)e(it)h Fr(args)p Fu(,)h(and)e(return)f(its)i(exit)g(status.)59
e2520247 12448b(This)35 b(is)i(useful)630 4232 y(when)29 b(de\014ning)h(a)g(shell)h
d052bd6f 12449(function)f(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g
e2520247 12450(retaining)630 4341 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g
d052bd6f 12451(within)g(the)h(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630
e2520247
CR
124524451 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f
12453(builtin)g(command.)150 4609 y Ft(caller)870 4743 y(caller)46
12454b([)p Fj(expr)p Ft(])630 4877 y Fu(Returns)34 b(the)g(con)m(text)j(of)e
a6ae8f35 12455(an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f(or)h
e2520247
CR
12456(a)g(script)630 4987 y(executed)c(with)f(the)h Ft(.)f
12457Fu(or)g Ft(source)f Fu(builtins\).)630 5121 y(Without)45
a6ae8f35 12458b Fr(expr)p Fu(,)j Ft(caller)43 b Fu(displa)m(ys)i(the)f(line)h(n)m(um)
e2520247 12459m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 5230
a6ae8f35
CR
12460y(curren)m(t)35 b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i
12461(in)m(teger)f(is)f(supplied)e(as)i Fr(expr)p Fu(,)h Ft(caller)630
e2520247
CR
124625340 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d
12463(name,)44 b(and)c(source)g(\014le)h(corresp)s(onding)e(to)p
12464eop end
12465%%Page: 59 65
12466TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
12467b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y(that)35
12468b(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g(stac)m(k.)54
12469b(This)34 b(extra)h(information)g(ma)m(y)630 408 y(b)s(e)30
12470b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m(k)h(trace.)42
12471b(The)29 b(curren)m(t)i(frame)f(is)g(frame)h(0.)630 539
12472y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g(is)g
12473(not)g(executing)h(a)f(subroutine)e(call)j(or)f Fr(expr)630
12474648 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5
37c41ab1 12475b(alid)30 b(p)s(osition)h(in)f(the)g(call)i(stac)m(k.)150
e2520247
CR
12476799 y Ft(command)870 929 y(command)46 b([-pVv])g Fj(command)g
12477Ft([)p Fj(arguments)f Ft(...)o(])630 1059 y Fu(Runs)32
6e51e0d0 12478b Fr(command)k Fu(with)d Fr(argumen)m(ts)k Fu(ignoring)c(an)m(y)g
e2520247 12479(shell)h(function)e(named)h Fr(command)p Fu(.)630 1169
37c41ab1 12480y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y)
e2520247 12481h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 1278 y(executed.)59
6e51e0d0
CR
12482b(If)36 b(there)h(is)f(a)h(shell)f(function)g(named)g
12483Ft(ls)p Fu(,)h(running)e(`)p Ft(command)29 b(ls)p Fu(')35
e2520247 12484b(within)630 1388 y(the)c(function)f(will)h(execute)g(the)g(external)g
d052bd6f 12485(command)g Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630
e2520247
CR
124861498 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b
12487Ft(-p)h Fu(option)g(means)g(to)h(use)f(a)g(default)h(v)-5
12488b(alue)35 b(for)g Ft(PATH)f Fu(that)i(is)630 1607 y(guaran)m(teed)f(to)
12489f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52
12490b(The)33 b(return)g(status)h(in)f(this)h(case)630 1717
12491y(is)29 b(127)g(if)g Fr(command)j Fu(cannot)d(b)s(e)e(found)h(or)g(an)g
12492(error)h(o)s(ccurred,)f(and)g(the)h(exit)g(status)g(of)630
124931826 y Fr(command)34 b Fu(otherwise.)630 1956 y(If)e(either)h(the)f
12494Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f(supplied,)g(a)h(description)f
12495(of)h Fr(command)j Fu(is)c(prin)m(ted.)630 2066 y(The)f
12496Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f(indicating)g(the)g
12497(command)g(or)g(\014le)g(name)g(used)630 2176 y(to)40
12498b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m(y)m(ed;)44
12499b(the)39 b Ft(-V)f Fu(option)i(pro)s(duces)d(a)j(more)f(v)m(erb)s(ose)
12500630 2285 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
12501(status)h(is)g(zero)h(if)f Fr(command)k Fu(is)c(found,)h(and)630
125022395 y(non-zero)31 b(if)f(not.)150 2545 y Ft(declare)870
125032676 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p
12504Ft([=)p Fj(value)p Ft(])d(...)o(])630 2806 y Fu(Declare)29
54a1fa7c 12505b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e(attributes.)40
6e51e0d0 12506b(If)27 b(no)g Fr(name)5 b Fu(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
e2520247
CR
12507(y)630 2915 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
12508b(instead.)630 3045 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f
6e51e0d0 12509(the)h(attributes)g(and)e(v)-5 b(alues)36 b(of)f(eac)m(h)i
e2520247 12510Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 3155 y Fu(is)i(used)g(with)g
6e51e0d0 12511Fr(name)43 b Fu(argumen)m(ts,)e(additional)e(options,)i(other)d(than)g
e2520247
CR
12512Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 3265 y(ignored.)630
125133395 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k
e59452c7 12514Fu(argumen)m(ts,)f Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
e2520247 125153504 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
abfcfa4e 12516b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s(eci\014ed)f(b)m(y)h
e2520247 12517(the)g(addi-)630 3614 y(tional)k(options.)52 b(If)34
e59452c7 12518b(no)g(other)g(options)g(are)g(supplied)f(with)h Ft(-p)p
e2520247 12519Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 3724 y(the)e(attributes)h
e59452c7
CR
12520(and)e(v)-5 b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50
12521b(The)32 b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630
e2520247 125223833 y(displa)m(y)d(to)g(shell)f(functions.)630 3963
e59452c7
CR
12523y(The)41 b Ft(-F)f Fu(option)i(inhibits)e(the)i(displa)m(y)f(of)g
12524(function)g(de\014nitions;)47 b(only)41 b(the)g(function)630
e2520247 125254073 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
e59452c7 12526b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled)g(using)
e2520247
CR
12527630 4182 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
12528(Builtin],)k(page)e(72\),)i(the)d(source)h(\014le)f(name)h(and)630
125294292 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h
abfcfa4e 12530Fr(name)36 b Fu(is)30 b(de\014ned)f(are)i(displa)m(y)m(ed)g(as)g(w)m
e2520247 12531(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 4422
abfcfa4e
CR
12532y(The)36 b Ft(-g)g Fu(option)h(forces)g(v)-5 b(ariables)37
12533b(to)g(b)s(e)f(created)i(or)e(mo)s(di\014ed)g(at)h(the)g(global)h(scop)
e2520247 12534s(e,)630 4532 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f
abfcfa4e 12535(a)g(shell)h(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630
e2520247 125364641 y(cases.)630 4771 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s
d37a4722 12537(cal)g(v)-5 b(ariables)51 b(to)h(inherit)f(the)g(attributes)g(\(except)
e2520247 12538i(the)630 4881 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5
e59452c7 12539b(alue)46 b(of)f(an)m(y)h(existing)g(v)-5 b(ariable)46
e2520247 12540b(with)f(the)g(same)h Fr(name)630 4991 y Fu(at)40 b(a)f(surrounding)d
d37a4722
CR
12541(scop)s(e.)66 b(If)39 b(there)g(is)g(no)f(existing)i(v)-5
12542b(ariable,)42 b(the)d(lo)s(cal)h(v)-5 b(ariable)40 b(is)630
e2520247 125435100 y(initially)32 b(unset.)630 5230 y(The)27 b(follo)m(wing)h
d37a4722 12544(options)g(can)f(b)s(e)g(used)f(to)i(restrict)g(output)e(to)i(v)-5
e2520247
CR
12545b(ariables)28 b(with)f(the)g(sp)s(ec-)630 5340 y(i\014ed)j(attributes)h
12546(or)f(to)h(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)p
12547eop end
12548%%Page: 60 66
12549TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
12550b(Shell)30 b(Builtin)h(Commands)2069 b(60)630 299 y Ft(-a)384
12551b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34 b(an)h(indexed)g(arra)m(y)g(v)-5
12552b(ariable)36 b(\(see)f(Section)h(6.7)g([Arra)m(ys],)1110
12553408 y(page)31 b(102\).)630 562 y Ft(-A)384 b Fu(Eac)m(h)24
12554b Fr(name)k Fu(is)23 b(an)g(asso)s(ciativ)m(e)j(arra)m(y)e(v)-5
12555b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m(ys],)1110
12556671 y(page)31 b(102\).)630 825 y Ft(-f)384 b Fu(Use)31
12557b(function)f(names)g(only)-8 b(.)630 978 y Ft(-i)384
12558b Fu(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f(treated)h(as)g(an)f
12559(in)m(teger;)41 b(arithmetic)c(ev)-5 b(aluation)1110
125601088 y(\(see)41 b(Section)f(6.5)h([Shell)e(Arithmetic],)44
12561b(page)c(100\))h(is)f(p)s(erformed)e(when)1110 1198 y(the)31
12562b(v)-5 b(ariable)31 b(is)f(assigned)h(a)f(v)-5 b(alue.)630
125631351 y Ft(-l)384 b Fu(When)26 b(the)g(v)-5 b(ariable)27
12564b(is)f(assigned)g(a)g(v)-5 b(alue,)28 b(all)f(upp)s(er-case)e(c)m
12565(haracters)j(are)1110 1461 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)
1256643 b(The)30 b(upp)s(er-case)g(attribute)h(is)g(disabled.)630
125671614 y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k
d052bd6f 12568Fu(the)27 b Ft(nameref)d Fu(attribute,)29 b(making)e(it)g(a)g(name)f
e2520247 12569(reference)1110 1724 y(to)32 b(another)g(v)-5 b(ariable.)46
d052bd6f 12570b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g
e2520247 12571(v)-5 b(alue)32 b(of)1110 1833 y Fr(name)p Fu(.)54 b(All)35
237c32ba 12572b(references,)h(assignmen)m(ts,)h(and)d(attribute)h(mo)s(di\014cations)
e2520247 12573g(to)1110 1943 y Fr(name)p Fu(,)27 b(except)f(for)f(those)h(using)f(or)
d052bd6f 12574g(c)m(hanging)h(the)f Ft(-n)g Fu(attribute)h(itself,)i(are)1110
e2520247 125752052 y(p)s(erformed)22 b(on)h(the)g(v)-5 b(ariable)25
237c32ba 12576b(referenced)e(b)m(y)g Fr(name)5 b Fu('s)23 b(v)-5 b(alue.)39
e2520247
CR
12577b(The)23 b(nameref)1110 2162 y(attribute)31 b(cannot)g(b)s(e)f(applied)
12578g(to)h(arra)m(y)g(v)-5 b(ariables.)630 2315 y Ft(-r)384
237c32ba
CR
12579b Fu(Mak)m(e)25 b Fr(name)5 b Fu(s)23 b(readonly)-8 b(.)39
12580b(These)24 b(names)f(cannot)h(then)f(b)s(e)g(assigned)h(v)-5
e2520247
CR
12581b(alues)1110 2425 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h
12582(statemen)m(ts)h(or)f(unset.)630 2578 y Ft(-t)384 b Fu(Giv)m(e)33
237c32ba 12583b(eac)m(h)h Fr(name)j Fu(the)32 b Ft(trace)f Fu(attribute.)46
e2520247 12584b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110 2688
237c32ba 12585y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g(the)h(calling)h
e2520247
CR
12586(shell.)40 b(The)27 b(trace)i(attribute)1110 2798 y(has)h(no)g(sp)s
12587(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 2951 y
237c32ba
CR
12588Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29 b(is)f(assigned)h(a)f
12589(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m(haracters)f(are)1110
e2520247
CR
125903061 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40 b(The)30
12591b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630 3214
237c32ba 12592y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
e59452c7 12593b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
e2520247 125943324 y(ronmen)m(t.)630 3477 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g
e59452c7 12595(`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
e2520247 12596(the)g(exceptions)h(that)630 3587 y(`)p Ft(+a)p Fu(')23
d37a4722
CR
12597b(and)f(`)p Ft(+A)p Fu(')h(ma)m(y)h(not)f(b)s(e)f(used)g(to)i(destro)m
12598(y)g(arra)m(y)f(v)-5 b(ariables)24 b(and)e(`)p Ft(+r)p
e2520247 12599Fu(')h(will)g(not)g(remo)m(v)m(e)630 3696 y(the)36 b(readonly)h
d37a4722 12600(attribute.)59 b(When)36 b(used)f(in)h(a)h(function,)g
e2520247 12601Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 3806
68701259
CR
12602y Fu(lo)s(cal,)e(as)d(with)h(the)f Ft(local)f Fu(command,)j(unless)d
12603(the)i Ft(-g)f Fu(option)h(is)f(used.)49 b(If)33 b(a)h(v)-5
e2520247 12604b(ariable)630 3915 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p
68701259 12605Fr(v)-5 b(alue)p Fu(,)31 b(the)f(v)-5 b(alue)31 b(of)g(the)f(v)-5
abfcfa4e 12606b(ariable)32 b(is)e(set)h(to)g Fr(v)-5 b(alue)p Fu(.)630
e2520247 126074047 y(When)41 b(using)g Ft(-a)g Fu(or)h Ft(-A)e Fu(and)h(the)h(comp)s
abfcfa4e 12608(ound)e(assignmen)m(t)i(syn)m(tax)g(to)g(create)h(arra)m(y)630
e2520247 126094156 y(v)-5 b(ariables,)28 b(additional)f(attributes)g(do)f(not)h(tak)m
a6ae8f35 12610(e)h(e\013ect)g(un)m(til)e(subsequen)m(t)g(assignmen)m(ts.)630
e2520247 126114288 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5
a6ae8f35 12612b(alid)36 b(option)g(is)g(encoun)m(tered,)h(an)f(attempt)630
e2520247 126134398 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p
a6ae8f35 12614Ft(-f)f(foo=bar)p Fu(',)h(an)h(attempt)g(is)g(made)g(to)h(assign)630
e2520247 126154507 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5
a6ae8f35 12616b(ariable,)47 b(an)42 b(attempt)h(is)f(made)g(to)h(assign)f(a)h(v)-5
e2520247 12617b(alue)42 b(to)h(an)630 4617 y(arra)m(y)30 b(v)-5 b(ariable)30
fc527055 12618b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g
e2520247 12619(\(see)h(Section)f(6.7)630 4726 y([Arra)m(ys],)43 b(page)d(102\),)k
7a8455e4
CR
12620(one)c(of)g(the)g Fr(name)5 b Fu(s)40 b(is)f(not)h(a)g(v)-5
12621b(alid)40 b(shell)g(v)-5 b(ariable)41 b(name,)h(an)630
e2520247 126224836 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
15baad62 12623(for)g(a)h(readonly)f(v)-5 b(ariable,)29 b(an)e(attempt)630
e2520247 126244945 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
15baad62 12625(arra)m(y)h(v)-5 b(ariable,)30 b(or)e(an)g(attempt)i(is)e(made)g(to)630
e2520247
CR
126265055 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
12627Ft(-f)p Fu(.)150 5208 y Ft(echo)870 5340 y(echo)47 b([-neE])f([)p
12628Fj(arg)g Ft(...])p eop end
12629%%Page: 61 67
12630TeXDict begin 61 66 bop 150 -116 a Fu(Chapter)30 b(4:)41
12631b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y(Output)31
12632b(the)i Fr(arg)8 b Fu(s,)33 b(separated)g(b)m(y)g(spaces,)g(terminated)
12633g(with)f(a)h(newline.)47 b(The)32 b(return)630 408 y(status)f(is)f(0)h
12634(unless)f(a)h(write)g(error)f(o)s(ccurs.)41 b(If)30 b
12635Ft(-n)g Fu(is)h(sp)s(eci\014ed,)f(the)h(trailing)g(newline)g(is)630
12636518 y(suppressed.)38 b(If)29 b(the)h Ft(-e)f Fu(option)h(is)f(giv)m
12637(en,)i(in)m(terpretation)g(of)e(the)h(follo)m(wing)h(bac)m(kslash-)630
12638628 y(escap)s(ed)43 b(c)m(haracters)h(is)e(enabled.)78
15baad62 12639b(The)42 b Ft(-E)g Fu(option)h(disables)g(the)g(in)m(terpretation)h(of)
e2520247
CR
12640630 737 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g
12641(systems)f(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f(default.)630
12642847 y(The)32 b Ft(xpg_echo)f Fu(shell)i(option)g(ma)m(y)h(b)s(e)e(used)
12643g(to)h(dynamically)h(determine)f(whether)f(or)630 956
12644y(not)h Ft(echo)f Fu(expands)g(these)h(escap)s(e)h(c)m(haracters)g(b)m
12645(y)f(default.)48 b Ft(echo)32 b Fu(do)s(es)g(not)i(in)m(terpret)630
126461066 y Ft(--)c Fu(to)h(mean)f(the)h(end)f(of)g(options.)630
126471201 y Ft(echo)f Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
12648(sequences:)630 1363 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
126491524 y Ft(\\b)384 b Fu(bac)m(kspace)630 1685 y Ft(\\c)g
12650Fu(suppress)28 b(further)h(output)630 1846 y Ft(\\e)630
126511956 y(\\E)384 b Fu(escap)s(e)630 2117 y Ft(\\f)g Fu(form)30
12652b(feed)630 2278 y Ft(\\n)384 b Fu(new)30 b(line)630 2439
12653y Ft(\\r)384 b Fu(carriage)32 b(return)630 2600 y Ft(\\t)384
12654b Fu(horizon)m(tal)32 b(tab)630 2761 y Ft(\\v)384 b Fu(v)m(ertical)32
12655b(tab)630 2923 y Ft(\\\\)384 b Fu(bac)m(kslash)630 3084
d052bd6f
CR
12656y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
12657(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5
e2520247
CR
12658b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 3193 y(three)e(o)s(ctal)g
12659(digits\))630 3354 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)
d052bd6f 12660m(haracter)g(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
e2520247
CR
12661b(alue)39 b Fr(HH)1110 3464 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
12662(digits\))630 3625 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41
e59452c7 12663b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5
e2520247 12664b(alue)41 b(is)g(the)g(hex-)1110 3735 y(adecimal)32 b(v)-5
e59452c7 12665b(alue)31 b Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)e(hex)h(digits\))630
e2520247 126663896 y Ft(\\U)p Fj(HHHHHHHH)1110 4006 y Fu(the)41 b(Unico)s(de)g
e59452c7 12667(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41
e2520247 12668b(is)g(the)g(hex-)1110 4115 y(adecimal)32 b(v)-5 b(alue)31
e59452c7 12669b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150
e2520247
CR
126704276 y Ft(enable)870 4412 y(enable)46 b([-a])h([-dnps])f([-f)g
12671Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 4547
e59452c7 12672y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
abfcfa4e 12673b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630
e2520247
CR
126744657 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h
12675(builtin)e(to)i(b)s(e)f(executed)h(without)630 4766 y(sp)s(ecifying)27
abfcfa4e 12676b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g(shell)g(normally)g
e2520247 12677(searc)m(hes)h(for)f(builtins)630 4876 y(b)s(efore)35
abfcfa4e
CR
12678b(disk)g(commands.)55 b(If)35 b Ft(-n)g Fu(is)g(used,)h(the)g
12679Fr(name)5 b Fu(s)35 b(b)s(ecome)h(disabled.)55 b(Otherwise)630
e2520247 126804985 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8
abfcfa4e 12681b(or)45 b(example,)k(to)c(use)f(the)g Ft(test)f Fu(binary)h(found)f
e2520247 12682(via)h Ft($PATH)630 5095 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g
abfcfa4e 12683(v)m(ersion,)h(t)m(yp)s(e)g(`)p Ft(enable)e(-n)h(test)p
e2520247 12684Fu('.)630 5230 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or)
abfcfa4e 12685d(no)g Fr(name)51 b Fu(argumen)m(ts)46 b(app)s(ear,)k(a)c(list)h(of)f
e2520247 12686(shell)630 5340 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38
6e51e0d0 12687b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h
e2520247
CR
12688(enabled)p eop end
12689%%Page: 62 68
12690TeXDict begin 62 67 bop 150 -116 a Fu(Chapter)30 b(4:)41
12691b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y(shell)36
12692b(builtins.)57 b(The)35 b Ft(-a)h Fu(option)g(means)g(to)g(list)h(eac)m
12693(h)g(builtin)f(with)f(an)h(indication)h(of)630 408 y(whether)30
12694b(or)g(not)h(it)g(is)f(enabled.)630 544 y(The)22 b Ft(-f)f
12695Fu(option)h(means)g(to)h(load)g(the)f(new)g(builtin)f(command)h
12696Fr(name)27 b Fu(from)22 b(shared)f(ob)5 b(ject)630 654
12697y Fr(\014lename)p Fu(,)31 b(on)f(systems)g(that)h(supp)s(ort)e(dynamic)
12698h(loading.)41 b(Bash)31 b(will)f(use)g(the)h(v)-5 b(alue)31
12699b(of)630 764 y(the)39 b Ft(BASH_LOADABLES_PATH)34 b Fu(v)-5
12700b(ariable)40 b(as)f(a)h(colon-separated)h(list)f(of)f(directories)h(in)
12701630 873 y(whic)m(h)31 b(to)h(searc)m(h)g(for)f Fr(\014lename)p
12702Fu(.)44 b(The)31 b(default)g(is)h(system-dep)s(enden)m(t.)43
12703b(The)31 b Ft(-d)f Fu(option)630 983 y(will)h(delete)g(a)g(builtin)f
12704(loaded)h(with)f Ft(-f)p Fu(.)630 1119 y(If)j(there)i(are)f(no)g
12705(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m(y)m
12706(ed.)52 b(The)33 b Ft(-s)g Fu(option)630 1228 y(restricts)j
12707Ft(enable)d Fu(to)j(the)f Fm(posix)f Fu(sp)s(ecial)i(builtins.)54
d052bd6f 12708b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630
e2520247
CR
127091338 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i
12710(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(79\).)630
127111474 y(If)24 b(no)g(options)h(are)g(supplied)e(and)h(a)h
d052bd6f 12712Fr(name)k Fu(is)c(not)f(a)h(shell)g(builtin,)g Ft(enable)e
e2520247 12713Fu(will)i(attempt)630 1583 y(to)c(load)g Fr(name)26 b
237c32ba
CR
12714Fu(from)20 b(a)g(shared)g(ob)5 b(ject)21 b(named)f Fr(name)p
12715Fu(,)j(as)d(if)h(the)f(command)h(w)m(ere)f(`)p Ft(enable)630
e2520247 127161693 y(-f)30 b Fj(name)f(name)p Fu('.)630 1829 y(The)d(return)f(status)
d052bd6f 12717h(is)g(zero)h(unless)e(a)i Fr(name)k Fu(is)26 b(not)g(a)h(shell)f
e2520247 12718(builtin)g(or)g(there)g(is)g(an)g(error)630 1938 y(loading)31
237c32ba 12719b(a)g(new)f(builtin)g(from)g(a)g(shared)g(ob)5 b(ject.)150
e2520247
CR
127202101 y Ft(help)870 2236 y(help)47 b([-dms])f([)p Fj(pattern)p
12721Ft(])630 2372 y Fu(Displa)m(y)40 b(helpful)e(information)h(ab)s(out)g
237c32ba 12722(builtin)f(commands.)66 b(If)38 b Fr(pattern)h Fu(is)g(sp)s(eci\014ed,)
e2520247 12723630 2482 y Ft(help)28 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h
237c32ba 12724(commands)e(matc)m(hing)i Fr(pattern)p Fu(,)g(otherwise)f(a)g(list)h
e2520247
CR
12725(of)630 2591 y(the)h(builtins)e(is)i(prin)m(ted.)630
127262727 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
12727(meanings:)630 2890 y Ft(-d)384 b Fu(Displa)m(y)32 b(a)e(short)g
12728(description)h(of)f(eac)m(h)i Fr(pattern)630 3052 y Ft(-m)384
237c32ba
CR
12729b Fu(Displa)m(y)32 b(the)e(description)g(of)h(eac)m(h)h
12730Fr(pattern)e Fu(in)g(a)h(manpage-lik)m(e)h(format)630
e2520247
CR
127313214 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(a)h(short)f(usage)h
12732(synopsis)e(for)i(eac)m(h)g Fr(pattern)630 3376 y Fu(The)f(return)f
237c32ba 12733(status)i(is)f(zero)h(unless)f(no)g(command)h(matc)m(hes)g
e2520247 12734Fr(pattern)p Fu(.)150 3538 y Ft(let)870 3674 y(let)47
237c32ba 12735b Fj(expression)e Ft([)p Fj(expression)g Ft(...)o(])630
e2520247 127363810 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s
237c32ba 12737(e)d(p)s(erformed)g(on)i(shell)g(v)-5 b(ariables.)74
e2520247 12738b(Eac)m(h)630 3920 y Fr(expression)31 b Fu(is)g(ev)-5
237c32ba 12739b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)h(b)s(elo)m(w)f
e2520247
CR
12740(in)f(Section)i(6.5)g([Shell)630 4029 y(Arithmetic],)47
12741b(page)c(100.)78 b(If)41 b(the)i(last)g Fr(expression)f
12742Fu(ev)-5 b(aluates)44 b(to)f(0,)j Ft(let)41 b Fu(returns)g(1;)630
127434139 y(otherwise)31 b(0)g(is)f(returned.)150 4301 y Ft(local)870
127444437 y(local)46 b([)p Fj(option)p Ft(])g Fj(name)p Ft([=)p
12745Fj(value)p Ft(])e(...)630 4573 y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m
237c32ba
CR
12746(t,)g(a)f(lo)s(cal)h(v)-5 b(ariable)27 b(named)e Fr(name)31
12747b Fu(is)26 b(created,)i(and)d(assigned)h Fr(v)-5 b(alue)p
e2520247 12748Fu(.)630 4682 y(The)28 b Fr(option)i Fu(can)f(b)s(e)f(an)m(y)i(of)f
d052bd6f 12749(the)g(options)g(accepted)i(b)m(y)d Ft(declare)p Fu(.)39
e2520247 12750b Ft(local)27 b Fu(can)i(only)h(b)s(e)630 4792 y(used)20
d052bd6f
CR
12751b(within)g(a)h(function;)j(it)d(mak)m(es)g(the)g(v)-5
12752b(ariable)22 b Fr(name)k Fu(ha)m(v)m(e)21 b(a)g(visible)h(scop)s(e)e
e2520247 12753(restricted)630 4902 y(to)28 b(that)g(function)f(and)g(its)h(c)m
d052bd6f
CR
12754(hildren.)39 b(If)27 b Fr(name)33 b Fu(is)27 b(`)p Ft(-)p
12755Fu(',)i(the)f(set)f(of)h(shell)g(options)f(is)h(made)630
e2520247 127565011 y(lo)s(cal)40 b(to)f(the)f(function)g(in)g(whic)m(h)h
d052bd6f 12757Ft(local)e Fu(is)h(in)m(v)m(ok)m(ed:)58 b(shell)39 b(options)f(c)m
e2520247 12758(hanged)h(using)630 5121 y(the)31 b Ft(set)f Fu(builtin)h(inside)g(the)
d052bd6f 12759g(function)f(after)i(the)f(call)h(to)g Ft(local)e Fu(are)h(restored)g
e2520247 12760(to)h(their)630 5230 y(original)h(v)-5 b(alues)33 b(when)e(the)i
d052bd6f 12761(function)f(returns.)45 b(The)32 b(restore)h(is)f(e\013ected)i(as)f(if)
e2520247 12762f(a)h(series)630 5340 y(of)c Ft(set)f Fu(commands)h(w)m(ere)g(executed)
d052bd6f 12763h(to)g(restore)f(the)g(v)-5 b(alues)30 b(that)f(w)m(ere)h(in)e(place)i
e2520247
CR
12764(b)s(efore)p eop end
12765%%Page: 63 69
12766TeXDict begin 63 68 bop 150 -116 a Fu(Chapter)30 b(4:)41
12767b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(the)29
12768b(function.)40 b(The)28 b(return)f(status)i(is)g(zero)g(unless)f
12769Ft(local)f Fu(is)h(used)g(outside)h(a)g(function,)630
12770408 y(an)h(in)m(v)-5 b(alid)31 b Fr(name)36 b Fu(is)30
12771b(supplied,)f(or)i Fr(name)k Fu(is)c(a)g(readonly)f(v)-5
12772b(ariable.)150 571 y Ft(logout)870 707 y(logout)46 b([)p
12773Fj(n)p Ft(])630 844 y Fu(Exit)31 b(a)g(login)g(shell,)g(returning)e(a)i
12774(status)g(of)f Fr(n)g Fu(to)h(the)g(shell's)f(paren)m(t.)150
127751006 y Ft(mapfile)870 1142 y(mapfile)46 b([-d)h Fj(delim)p
12776Ft(])f([-n)h Fj(count)p Ft(])f([-O)h Fj(origin)p Ft(])f([-s)g
12777Fj(count)p Ft(])1061 1252 y([-t])h([-u)f Fj(fd)p Ft(])h([-C)g
12778Fj(callback)p Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p
12779Ft(])630 1388 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g
12780(in)m(to)j(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38
12781b Fr(arra)m(y)p Fu(,)i(or)630 1498 y(from)28 b(\014le)h(descriptor)f
12782Fr(fd)k Fu(if)c(the)h Ft(-u)f Fu(option)h(is)g(supplied.)39
12783b(The)28 b(v)-5 b(ariable)29 b Ft(MAPFILE)e Fu(is)i(the)630
127841607 y(default)i Fr(arra)m(y)p Fu(.)41 b(Options,)30
12785b(if)g(supplied,)g(ha)m(v)m(e)h(the)g(follo)m(wing)h(meanings:)630
127861770 y Ft(-d)384 b Fu(The)37 b(\014rst)g(c)m(haracter)i(of)f
12787Fr(delim)g Fu(is)f(used)g(to)h(terminate)h(eac)m(h)g(input)d(line,)1110
127881880 y(rather)41 b(than)h(newline.)74 b(If)41 b Fr(delim)h
68d220cb 12789Fu(is)g(the)f(empt)m(y)h(string,)j Ft(mapfile)40 b Fu(will)1110
e2520247
CR
127901989 y(terminate)31 b(a)g(line)g(when)e(it)i(reads)f(a)h(NUL)g(c)m
12791(haracter.)630 2152 y Ft(-n)384 b Fu(Cop)m(y)30 b(at)h(most)g
237c32ba 12792Fr(coun)m(t)i Fu(lines.)41 b(If)30 b Fr(coun)m(t)j Fu(is)d(0,)h(all)h
e2520247 12793(lines)e(are)h(copied.)630 2315 y Ft(-O)384 b Fu(Begin)31
237c32ba
CR
12794b(assigning)g(to)g Fr(arra)m(y)39 b Fu(at)31 b(index)f
12795Fr(origin)p Fu(.)41 b(The)30 b(default)h(index)f(is)g(0.)630
e2520247
CR
127962477 y Ft(-s)384 b Fu(Discard)31 b(the)f(\014rst)g Fr(coun)m(t)j
12797Fu(lines)e(read.)630 2640 y Ft(-t)384 b Fu(Remo)m(v)m(e)32
237c32ba 12798b(a)f(trailing)g Fr(delim)g Fu(\(default)g(newline\))f(from)g(eac)m(h)i
e2520247 12799(line)f(read.)630 2803 y Ft(-u)384 b Fu(Read)31 b(lines)f(from)g
237c32ba 12800(\014le)h(descriptor)f Fr(fd)j Fu(instead)e(of)f(the)h(standard)e
e2520247 12801(input.)630 2966 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b
237c32ba
CR
12802Fr(callbac)m(k)33 b Fu(eac)m(h)26 b(time)g Fr(quan)m(tum)f
12803Fu(lines)g(are)g(read.)39 b(The)25 b Ft(-c)f Fu(option)1110
e2520247 128043075 y(sp)s(eci\014es)30 b Fr(quan)m(tum)p Fu(.)630 3238
237c32ba
CR
12805y Ft(-c)384 b Fu(Sp)s(ecify)30 b(the)g(n)m(um)m(b)s(er)f(of)i(lines)f
12806(read)h(b)s(et)m(w)m(een)g(eac)m(h)g(call)h(to)f Fr(callbac)m(k)p
e2520247 12807Fu(.)630 3401 y(If)36 b Ft(-C)g Fu(is)g(sp)s(eci\014ed)g(without)g
237c32ba 12808Ft(-c)p Fu(,)h(the)g(default)f(quan)m(tum)g(is)h(5000.)60
e2520247 12809b(When)36 b Fr(callbac)m(k)44 b Fu(is)630 3510 y(ev)-5
237c32ba
CR
12810b(aluated,)30 b(it)e(is)g(supplied)f(the)h(index)f(of)i(the)f(next)g
12811(arra)m(y)g(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630
e2520247 128123620 y(the)39 b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i
237c32ba 12813(as)e(additional)h(argumen)m(ts.)66 b Fr(callbac)m(k)47
e2520247 12814b Fu(is)630 3729 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)
237c32ba 12815g(but)g(b)s(efore)g(the)h(arra)m(y)g(elemen)m(t)g(is)g(assigned.)630
e2520247 128163866 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
6e51e0d0 12817Ft(mapfile)c Fu(will)j(clear)g Fr(arra)m(y)34 b Fu(b)s(efore)24
e2520247 12818b(assigning)630 3975 y(to)31 b(it.)630 4111 y Ft(mapfile)41
6e51e0d0 12819b Fu(returns)g(successfully)i(unless)e(an)i(in)m(v)-5
1101193a 12820b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630
e2520247 128214221 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5
6e51e0d0 12822b(alid)31 b(or)g(unassignable,)f(or)h Fr(arra)m(y)38
7a257517 12823b Fu(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150
e2520247
CR
128244384 y Ft(printf)870 4520 y(printf)46 b([-v)h Fj(var)p
12825Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 4656
7a257517
CR
12826y Fu(W)-8 b(rite)27 b(the)g(formatted)f Fr(argumen)m(ts)k
12827Fu(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the)
e2520247 12828630 4765 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g
7a257517 12829(the)g(output)g(to)g(b)s(e)f(assigned)h(to)h(the)f(v)-5
e2520247
CR
12830b(ariable)39 b Fr(v)-5 b(ar)630 4875 y Fu(rather)30 b(than)g(b)s(eing)g
12831(prin)m(ted)g(to)h(the)g(standard)e(output.)630 5011
7a257517
CR
12832y(The)36 b Fr(format)i Fu(is)f(a)f(c)m(haracter)i(string)e(whic)m(h)g
12833(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
e2520247 12834b(plain)630 5121 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
7a257517 12835(copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630
e2520247
CR
128365230 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
12837g(the)g(standard)f(output,)i(and)f(format)630 5340 y(sp)s
7a257517 12838(eci\014cations,)j(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m(ting)g(of)
e2520247
CR
12839h(the)f(next)h(successiv)m(e)g Fr(argumen)m(t)p Fu(.)p
12840eop end
12841%%Page: 64 70
12842TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
12843b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y(In)27
12844b(addition)g(to)h(the)g(standard)e Ft(printf\(3\))f Fu(format)j(c)m
12845(haracters)g Ft(csndiouxXeEfFgGaA)p Fu(,)630 408 y Ft(printf)h
12846Fu(in)m(terprets)h(the)h(follo)m(wing)h(additional)f(format)g(sp)s
12847(eci\014ers:)630 567 y Ft(\045b)384 b Fu(Causes)38 b
12848Ft(printf)f Fu(to)j(expand)e(bac)m(kslash)h(escap)s(e)g(sequences)g(in)
12849f(the)h(cor-)1110 676 y(resp)s(onding)31 b Fr(argumen)m(t)j
12850Fu(in)e(the)h(same)f(w)m(a)m(y)h(as)g Ft(echo)c(-e)j
12851Fu(\(see)h(Section)g(4.2)1110 786 y([Bash)e(Builtins],)g(page)g(57\).)
12852630 944 y Ft(\045q)384 b Fu(Causes)32 b Ft(printf)e Fu(to)i(output)g
12853(the)g(corresp)s(onding)f Fr(argumen)m(t)j Fu(in)d(a)i(format)1110
128541054 y(that)42 b(can)f(b)s(e)g(reused)g(as)g(shell)h(input.)72
12855b Ft(\045q)41 b Fu(and)f Ft(\045Q)p Fu(P)h(use)g(the)g(ANSI-C)1110
128561163 y(quoting)29 b(st)m(yle)h(\(see)g(Section)g(3.1.2.4)h([ANSI-C)e
12857(Quoting],)h(page)f(6\))h(if)f(an)m(y)1110 1273 y(c)m(haracters)g(in)e
d052bd6f 12858(the)h(argumen)m(t)g(string)f(require)h(it,)g(and)f(bac)m(kslash)h
e2520247 12859(quoting)1110 1383 y(otherwise.)79 b(If)42 b(the)h(format)h(string)f
d052bd6f 12860(uses)f(the)h Ft(printf)e Fr(alternate)k(form)p Fu(,)1110
e2520247
CR
128611492 y(these)31 b(t)m(w)m(o)h(formats)e(quote)h(the)g(argumen)m(t)f
12862(string)h(using)f(single)h(quotes.)630 1650 y Ft(\045Q)384
d052bd6f
CR
12863b Fu(lik)m(e)34 b Ft(\045q)p Fu(,)f(but)f(applies)g(an)m(y)h(supplied)e
12864(precision)i(to)h(the)e Fr(argumen)m(t)j Fu(b)s(efore)1110
e2520247
CR
128651760 y(quoting)c(it.)630 1918 y Ft(\045\()p Fj(datefmt)p
12866Ft(\)T)1110 2028 y Fu(Causes)e Ft(printf)e Fu(to)j(output)f(the)g
12867(date-time)i(string)e(resulting)h(from)e(using)1110 2138
d052bd6f 12868y Fr(datefm)m(t)45 b Fu(as)d(a)g(format)g(string)g(for)g
237c32ba 12869Ft(strftime)p Fu(\(3\).)74 b(The)41 b(corresp)s(onding)1110
e2520247
CR
128702247 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e
12871(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 2357
d052bd6f
CR
12872y(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
12873(v)-5 b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25
e2520247 12874b(represen)m(ts)1110 2466 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i
d052bd6f 12875(represen)m(ts)f(the)g(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)
e2520247 128761110 2576 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m
237c32ba 12877(ersion)f(b)s(eha)m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110
e2520247
CR
128782685 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g
12879Ft(printf)f Fu(b)s(eha)m(vior.)630 2844 y(The)39 b(\045b,)i(\045q,)g
d052bd6f 12880(and)e(\045T)f(format)i(sp)s(eci\014ers)e(all)i(use)f(the)h(\014eld)f
e2520247 12881(width)f(and)h(precision)630 2953 y(argumen)m(ts)e(from)f(the)h(format)
d052bd6f 12882g(sp)s(eci\014cation)g(and)f(write)h(that)h(man)m(y)e(b)m(ytes)h(from)g
e2520247 12883(\(or)630 3063 y(use)29 b(that)h(wide)f(a)g(\014eld)g(for\))g(the)h
d052bd6f 12884(expanded)e(argumen)m(t,)i(whic)m(h)f(usually)g(con)m(tains)i(more)630
e2520247 128853173 y(c)m(haracters)h(than)e(the)h(original.)630 3306
d052bd6f
CR
12886y(The)e(\045n)f(format)h(sp)s(eci\014er)g(accepts)h(a)g(corresp)s
12887(onding)e(argumen)m(t)h(that)h(is)f(treated)h(as)g(a)630
e2520247 128883416 y(shell)h(v)-5 b(ariable)31 b(name.)630 3550 y(The)26
d052bd6f
CR
12889b(\045s)g(and)h(\045c)f(format)h(sp)s(eci\014ers)f(accept)i(an)f(l)g
12890(\(long\))h(mo)s(di\014er,)e(whic)m(h)h(forces)g(them)630
e2520247 128913660 y(to)21 b(con)m(v)m(ert)i(the)e(argumen)m(t)g(string)g(to)g(a)g
d052bd6f 12892(wide-c)m(haracter)i(string)e(and)f(apply)g(an)m(y)h(supplied)630
e2520247
CR
128933769 y(\014eld)30 b(width)g(and)f(precision)i(in)f(terms)g(of)h(c)m
12894(haracters,)h(not)e(b)m(ytes.)630 3903 y(Argumen)m(ts)e(to)h
d052bd6f 12895(non-string)e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e
e2520247 12896(language)j(constan)m(ts,)630 4013 y(except)22 b(that)g(a)g(leading)g
d052bd6f 12897(plus)e(or)h(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g
e2520247 12898(leading)h(c)m(haracter)h(is)630 4122 y(a)i(single)g(or)f(double)h
d052bd6f
CR
12899(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5
12900b(alue)25 b(of)f(the)h(follo)m(wing)h(c)m(haracter.)630
e2520247 129014256 y(The)31 b Fr(format)i Fu(is)f(reused)e(as)i(necessary)f(to)i
d052bd6f 12902(consume)e(all)h(of)f(the)h Fr(argumen)m(ts)p Fu(.)44
e2520247 12903b(If)30 b(the)i Fr(for-)630 4366 y(mat)c Fu(requires)e(more)g
d052bd6f 12904Fr(argumen)m(ts)k Fu(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
e2520247 12905(sp)s(eci\014cations)630 4475 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g
d052bd6f 12906(v)-5 b(alue)29 b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)
e2520247 12907s(een)g(supplied.)38 b(The)630 4585 y(return)e(v)-5 b(alue)38
d052bd6f 12908b(is)g(zero)g(on)f(success,)j(non-zero)e(if)f(an)h(in)m(v)-5
e2520247 12909b(alid)38 b(option)g(is)f(supplied)f(or)i(a)630 4695
d052bd6f 12910y(write)31 b(or)f(assignmen)m(t)h(error)f(o)s(ccurs.)150
e2520247 129114853 y Ft(read)870 4987 y(read)47 b([-ers])f([-a)h Fj(aname)p
6e51e0d0 12912Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])f([-n)h
e2520247 12913Fj(nchars)p Ft(])1061 5096 y([-N)g Fj(nchars)p Ft(])f([-p)h
6e51e0d0 12914Fj(prompt)p Ft(])e([-t)i Fj(timeout)p Ft(])f([-u)h Fj(fd)p
e2520247 12915Ft(])g([)p Fj(name)f Ft(...)o(])630 5230 y Fu(One)38
71574d7e 12916b(line)g(is)g(read)g(from)g(the)g(standard)f(input,)j(or)e(from)f(the)i
e2520247 12917(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 5340 y(plied)34
71574d7e 12918b(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(-u)g Fu(option,)i(split)f(in)m
e2520247
CR
12919(to)g(w)m(ords)f(as)g(describ)s(ed)g(ab)s(o)m(v)m(e)h(in)p
12920eop end
12921%%Page: 65 71
12922TeXDict begin 65 70 bop 150 -116 a Fu(Chapter)30 b(4:)41
12923b(Shell)30 b(Builtin)h(Commands)2069 b(65)630 299 y(Section)38
12924b(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(36,)j(and)36
12925b(the)i(\014rst)f(w)m(ord)g(is)g(assigned)h(to)g(the)630
12926408 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the)g
12927(second)g Fr(name)p Fu(,)g(and)f(so)h(on.)47 b(If)32
12928b(there)h(are)g(more)630 518 y(w)m(ords)39 b(than)g(names,)j(the)e
e59452c7 12929(remaining)f(w)m(ords)g(and)g(their)h(in)m(terv)m(ening)g(delimiters)h
e2520247 12930(are)630 628 y(assigned)29 b(to)h(the)g(last)g Fr(name)p
e59452c7 12931Fu(.)40 b(If)29 b(there)g(are)h(few)m(er)f(w)m(ords)g(read)g(from)g
e2520247 12932(the)g(input)g(stream)630 737 y(than)35 b(names,)i(the)e(remaining)h
e59452c7 12933(names)f(are)h(assigned)f(empt)m(y)h(v)-5 b(alues.)56
e2520247 12934b(The)34 b(c)m(haracters)630 847 y(in)e(the)h(v)-5 b(alue)33
e59452c7 12935b(of)g(the)g Ft(IFS)f Fu(v)-5 b(ariable)33 b(are)h(used)d(to)j(split)f
e2520247
CR
12936(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)630 956
12937y(same)d(rules)f(the)g(shell)h(uses)f(for)g(expansion)g(\(describ)s(ed)
12938g(ab)s(o)m(v)m(e)i(in)e(Section)h(3.5.7)h([W)-8 b(ord)630
129391066 y(Splitting],)38 b(page)f(36\).)60 b(The)35 b(bac)m(kslash)i(c)m
e59452c7 12940(haracter)h(`)p Ft(\\)p Fu(')e(ma)m(y)h(b)s(e)f(used)f(to)i(remo)m(v)m
e2520247 12941(e)h(an)m(y)630 1176 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m
e59452c7 12942(haracter)h(read)e(and)g(for)g(line)h(con)m(tin)m(uation.)630
e2520247
CR
129431306 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
12944(meanings:)630 1457 y Ft(-a)e Fj(aname)114 b Fu(The)34
7a257517 12945b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m(tial)h(indices)e(of)g(the)g
e2520247 12946(arra)m(y)h(v)-5 b(ariable)1110 1567 y Fr(aname)p Fu(,)29
7a257517 12947b(starting)h(at)f(0.)40 b(All)29 b(elemen)m(ts)h(are)e(remo)m(v)m(ed)i
e2520247 12948(from)d Fr(aname)34 b Fu(b)s(efore)1110 1677 y(the)d(assignmen)m(t.)41
abfcfa4e 12949b(Other)30 b Fr(name)36 b Fu(argumen)m(ts)30 b(are)h(ignored.)630
e2520247 129501828 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f
8a0829e9 12951Fr(delim)g Fu(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110
e2520247 129521937 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h
68d220cb 12953Fu(is)g(the)h(empt)m(y)f(string,)g Ft(read)f Fu(will)h(termi-)1110
e2520247
CR
129542047 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.)
12955630 2198 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)
12956f(Line)h(Editing],)50 b(page)45 b(121\))i(is)1110 2308
68d220cb
CR
12957y(used)37 b(to)i(obtain)g(the)f(line.)65 b(Readline)39
12958b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
e2520247
CR
129592418 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k
12960(editing)d(settings,)j(but)c(uses)1110 2527 y(Readline's)31
12961b(default)g(\014lename)f(completion.)630 2679 y Ft(-i)g
d052bd6f
CR
12962Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g
12963(the)g(line,)j Fr(text)f Fu(is)e(placed)h(in)m(to)g(the)1110
e2520247
CR
129642788 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630
129652939 y Ft(-n)f Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j
d052bd6f 12966(reading)f Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m
e2520247
CR
12967(aiting)1110 3049 y(for)d(a)h(complete)h(line)f(of)g(input,)g(but)f
12968(honors)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 3159
d052bd6f 12969y Fr(nc)m(hars)d Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g
e2520247 12970(delimiter.)630 3310 y Ft(-N)g Fj(nchars)66 b Ft(read)39
d052bd6f 12971b Fu(returns)f(after)j(reading)e(exactly)j Fr(nc)m(hars)h
e2520247 12972Fu(c)m(haracters)f(rather)d(than)1110 3420 y(w)m(aiting)32
d052bd6f 12973b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)f(EOF)h(is)g(encoun)
e2520247 12974m(tered)g(or)1110 3529 y Ft(read)f Fu(times)i(out.)43
d052bd6f 12975b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g(in)f(the)g(input)g
e2520247 12976(are)1110 3639 y(not)g(treated)h(sp)s(ecially)f(and)f(do)h(not)g(cause)
d052bd6f 12977g Ft(read)e Fu(to)j(return)d(un)m(til)i Fr(nc)m(hars)1110
e2520247 129783748 y Fu(c)m(haracters)26 b(are)f(read.)38 b(The)24
d052bd6f 12979b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e
e2520247 12980Ft(IFS)p Fu(;)1110 3858 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5
0385211b 12981b(ariable)23 b(is)f(assigned)g(exactly)i(the)e(c)m(haracters)i(read)
e2520247
CR
129821110 3968 y(\(with)30 b(the)h(exception)h(of)e(bac)m(kslash;)h(see)g
12983(the)g Ft(-r)f Fu(option)h(b)s(elo)m(w\).)630 4119 y
237c32ba
CR
12984Ft(-p)f Fj(prompt)66 b Fu(Displa)m(y)38 b Fr(prompt)p
12985Fu(,)g(without)e(a)h(trailing)h(newline,)h(b)s(efore)d(attempting)i(to)
e2520247
CR
129861110 4228 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m
12987(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 4338 y(from)30
12988b(a)h(terminal.)630 4489 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f
6e51e0d0 12989(giv)m(en,)k(bac)m(kslash)d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h
e2520247 12990(c)m(haracter.)1110 4599 y(The)30 b(bac)m(kslash)i(is)f(considered)g
6e51e0d0 12991(to)h(b)s(e)e(part)h(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110
e2520247
CR
129924709 y(bac)m(kslash-newline)26 b(pair)e(ma)m(y)h(not)g(then)g(b)s(e)f
12993(used)g(as)h(a)g(line)g(con)m(tin)m(uation.)630 4860
0712a90c
CR
12994y Ft(-s)384 b Fu(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i
12995(coming)g(from)f(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110
e2520247
CR
129964969 y(ec)m(ho)s(ed.)630 5121 y Ft(-t)i Fj(timeout)1110
129975230 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g
fffe80d4 12998(failure)h(if)g(a)h(complete)g(line)g(of)f(input)1110
e2520247 129995340 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m
fffe80d4 13000(haracters\))h(is)e(not)h(read)f(within)g Fr(timeout)j
e2520247
CR
13001Fu(sec-)p eop end
13002%%Page: 66 72
13003TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
13004b(Shell)30 b(Builtin)h(Commands)2069 b(66)1110 299 y(onds.)43
13005b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i(decimal)g(n)m(um)m(b)s(er)e
13006(with)h(a)h(fractional)g(p)s(ortion)1110 408 y(follo)m(wing)39
13007b(the)f(decimal)g(p)s(oin)m(t.)63 b(This)37 b(option)h(is)g(only)f
13008(e\013ectiv)m(e)k(if)c Ft(read)1110 518 y Fu(is)c(reading)h(input)e
13009(from)h(a)h(terminal,)h(pip)s(e,)e(or)h(other)f(sp)s(ecial)h(\014le;)h
13010(it)f(has)1110 628 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g
13011(\014les.)50 b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110
13012737 y Fu(sa)m(v)m(es)41 b(an)m(y)f(partial)h(input)e(read)g(in)m(to)i
13013(the)f(sp)s(eci\014ed)f(v)-5 b(ariable)40 b Fr(name)p
13014Fu(.)69 b(If)1110 847 y Fr(timeout)31 b Fu(is)c(0,)i
13015Ft(read)d Fu(returns)h(immediately)-8 b(,)30 b(without)d(trying)h(to)g
13016(read)g(an)m(y)1110 956 y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g
13017(if)g(input)f(is)h(a)m(v)-5 b(ailable)36 b(on)c(the)i(sp)s(eci\014ed)e
13018(\014le)1110 1066 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e
13019(EOF,)h(non-zero)h(otherwise.)56 b(The)1110 1176 y(exit)31
13020b(status)g(is)f(greater)i(than)e(128)i(if)e(the)h(timeout)g(is)f
13021(exceeded.)630 1327 y Ft(-u)g Fj(fd)258 b Fu(Read)31
13022b(input)e(from)h(\014le)g(descriptor)h Fr(fd)p Fu(.)630
130231478 y(If)h(no)g Fr(name)5 b Fu(s)33 b(are)f(supplied,)g(the)h(line)g
13024(read,)g(without)f(the)h(ending)f(delimiter)h(but)e(oth-)630
130251588 y(erwise)36 b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5
fffe80d4 13026b(ariable)36 b Ft(REPLY)p Fu(.)55 b(The)34 b(exit)j(status)e(is)h
e2520247 13027(zero,)630 1697 y(unless)i(end-of-\014le)h(is)f(encoun)m(tered,)j
fffe80d4 13028Ft(read)d Fu(times)h(out)f(\(in)h(whic)m(h)f(case)h(the)g(status)g(is)
e2520247 13029630 1807 y(greater)31 b(than)f(128\),)i(a)e(v)-5 b(ariable)30
e6983002 13030b(assignmen)m(t)h(error)f(\(suc)m(h)f(as)i(assigning)f(to)h(a)f
e2520247 13031(readonly)630 1917 y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m
e6983002 13032(v)-5 b(alid)29 b(\014le)g(descriptor)f(is)h(supplied)e(as)i(the)g
e2520247
CR
13033(argumen)m(t)g(to)g Ft(-u)p Fu(.)150 2068 y Ft(readarray)870
130342178 y(readarray)45 b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p
e6983002 13035Ft(])f([-O)h Fj(origin)p Ft(])f([-s)h Fj(count)p Ft(])1061
e2520247 130362287 y([-t])g([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
e6983002 13037Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p Ft(])630
e2520247 130382418 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j
e6983002 13039(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38 b Fr(arra)m(y)p
e2520247 13040Fu(,)i(or)630 2527 y(from)30 b(\014le)g(descriptor)h
d052bd6f 13041Fr(fd)i Fu(if)d(the)h Ft(-u)e Fu(option)i(is)g(supplied.)630
e2520247
CR
130422658 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 2809
13043y Ft(source)870 2939 y(source)46 b Fj(filename)630 3070
d052bd6f 13044y Fu(A)30 b(synon)m(ym)g(for)g Ft(.)g Fu(\(see)i(Section)f(4.1)g
e2520247
CR
13045([Bourne)g(Shell)f(Builtins],)h(page)g(49\).)150 3221
13046y Ft(type)870 3352 y(type)47 b([-afptP])e([)p Fj(name)i
13047Ft(...)o(])630 3482 y Fu(F)-8 b(or)42 b(eac)m(h)g Fr(name)p
d052bd6f 13048Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m(terpreted)g(if)
e2520247 13049g(used)f(as)i(a)f(command)630 3592 y(name.)630 3722 y(If)g(the)g
d052bd6f
CR
13050Ft(-t)g Fu(option)h(is)f(used,)j Ft(type)c Fu(prin)m(ts)h(a)h(single)g
13051(w)m(ord)f(whic)m(h)g(is)g(one)h(of)g(`)p Ft(alias)p
e2520247 13052Fu(',)630 3832 y(`)p Ft(keyword)p Fu(',)32 b(`)p Ft(function)p
d052bd6f
CR
13053Fu(',)g(`)p Ft(builtin)p Fu(',)g(or)h(`)p Ft(file)p Fu(',)g(if)g
13054Fr(name)38 b Fu(is)33 b(an)g(alias,)i(shell)e(reserv)m(ed)630
e2520247 130553941 y(w)m(ord,)39 b(shell)e(function,)i(shell)e(builtin,)i(or)e
d052bd6f 13056(executable)i(disk)d(\014le,)j(resp)s(ectiv)m(ely)-8
e2520247 13057b(.)63 b(If)37 b(the)630 4051 y Fr(name)f Fu(is)30 b(not)h(found,)e
d052bd6f 13058(then)h(nothing)g(is)h(prin)m(ted,)f(and)g Ft(type)f
e2520247 13059Fu(returns)g(a)i(failure)f(status.)630 4181 y(If)25 b(the)h
d052bd6f 13060Ft(-p)f Fu(option)g(is)h(used,)g Ft(type)e Fu(either)i(returns)e(the)i
e2520247 13061(name)f(of)h(the)g(executable)h(\014le)e(that)630 4291
d052bd6f
CR
13062y(w)m(ould)30 b(b)s(e)g(found)f(b)m(y)h(searc)m(hing)h
13063Ft($PATH)p Fu(,)f(or)g(nothing)g(if)h Ft(-t)e Fu(w)m(ould)i(not)f
e2520247 13064(return)f(`)p Ft(file)p Fu('.)630 4422 y(The)h Ft(-P)g
d052bd6f
CR
13065Fu(option)h(forces)g(a)g(path)f(searc)m(h)h(for)g(eac)m(h)g
13066Fr(name)p Fu(,)g(ev)m(en)g(if)g Ft(-t)f Fu(w)m(ould)g(not)h(return)630
e2520247 130674531 y(`)p Ft(file)p Fu('.)630 4662 y(If)e(a)h Fr(name)k
d052bd6f 13068Fu(is)29 b(presen)m(t)h(in)f(the)g(table)h(of)g(hashed)e(commands,)i
e2520247 13069(options)f Ft(-p)g Fu(and)g Ft(-P)f Fu(prin)m(t)630 4771
d052bd6f
CR
13070y(the)j(hashed)e(v)-5 b(alue,)31 b(whic)m(h)f(is)h(not)f(necessarily)i
13071(the)e(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g Ft($PATH)p
e2520247 13072Fu(.)630 4902 y(If)e(the)h Ft(-a)f Fu(option)h(is)f(used,)h
d052bd6f 13073Ft(type)e Fu(returns)g(all)j(of)e(the)h(places)g(that)g(con)m(tain)h(a)
e2520247 13074f(command)630 5011 y(named)c Fr(name)p Fu(.)39 b(This)25
d052bd6f 13075b(includes)g(aliases,)j(reserv)m(ed)e(w)m(ords,)g(functions,)h(and)d
e2520247 13076(builtins,)j(but)630 5121 y(the)34 b(path)f(searc)m(h)i(options)f(\()p
d052bd6f 13077Ft(-p)f Fu(and)h Ft(-P)p Fu(\))f(can)h(b)s(e)f(supplied)g(to)h
e2520247 13078(restrict)h(the)f(output)f(to)630 5230 y(executable)k(\014les.)55
d052bd6f
CR
13079b(If)34 b Ft(-a)h Fu(is)g(supplied)f(with)h Ft(-p)p Fu(,)h
13080Ft(type)e Fu(do)s(es)g(not)i(lo)s(ok)g(in)e(the)i(table)g(of)630
e2520247
CR
130815340 y(hashed)30 b(commands,)g(and)g(only)g(p)s(erforms)f(a)i
13082Ft(PATH)e Fu(searc)m(h)i(for)f Fr(name)p Fu(.)p eop end
13083%%Page: 67 73
13084TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
13085b(Shell)30 b(Builtin)h(Commands)2069 b(67)630 299 y(If)30
13086b(the)g Ft(-f)g Fu(option)g(is)h(used,)e Ft(type)g Fu(do)s(es)h(not)h
13087(attempt)g(to)g(\014nd)d(shell)j(functions,)f(as)g(with)630
13088408 y(the)h Ft(command)d Fu(builtin.)630 540 y(The)j(return)e(status)j
13089(is)f(zero)h(if)f(all)g(of)h(the)f Fr(name)5 b Fu(s)31
13090b(are)g(found,)f(non-zero)i(if)f(an)m(y)g(are)h(not)630
13091650 y(found.)150 804 y Ft(typeset)870 936 y(typeset)46
13092b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p Ft([=)p Fj(value)p
13093Ft(])d(...)o(])630 1068 y Fu(The)31 b Ft(typeset)e Fu(command)i(is)g
13094(supplied)f(for)h(compatibilit)m(y)i(with)e(the)g(Korn)f(shell.)44
13095b(It)31 b(is)630 1178 y(a)g(synon)m(ym)f(for)g(the)g
13096Ft(declare)f Fu(builtin)h(command.)150 1332 y Ft(ulimit)870
130971464 y(ulimit)46 b([-HS])g(-a)870 1574 y(ulimit)g([-HS])g
13098([-bcdefiklmnpqrstuvxPRT])c([)p Fj(limit)p Ft(])630 1706
13099y(ulimit)25 b Fu(pro)m(vides)h(con)m(trol)i(o)m(v)m(er)g(the)f
13100(resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)f(started)h(b)m
13101(y)g(the)630 1815 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e
13102(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i(it)e(is)h(in)m
13103(terpreted)630 1925 y(as)i(follo)m(ws:)630 2079 y Ft(-S)384
13104b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)g(asso)s(ciated)h
13105(with)e(a)h(resource.)630 2233 y Ft(-H)384 b Fu(Change)30
13106b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h(with)e(a)h
13107(resource.)630 2388 y Ft(-a)384 b Fu(All)31 b(curren)m(t)f(limits)h
13108(are)g(rep)s(orted;)f(no)g(limits)h(are)g(set.)630 2542
13109y Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i(bu\013er)e
13110(size.)630 2696 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g
13111(core)g(\014les)f(created.)630 2851 y Ft(-d)384 b Fu(The)30
13112b(maxim)m(um)g(size)h(of)g(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630
131133005 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m
13114(y)f(\()p Ft(")p Fu(nice)p Ft(")p Fu(\).)630 3159 y Ft(-f)384
13115b Fu(The)30 b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)
13116g(shell)h(and)f(its)h(c)m(hildren.)630 3314 y Ft(-i)384
13117b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e
13118(signals.)630 3468 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s
13119(er)f(of)i(kqueues)f(that)h(ma)m(y)g(b)s(e)e(allo)s(cated.)630
131203622 y Ft(-l)384 b Fu(The)30 b(maxim)m(um)g(size)h(that)g(ma)m(y)g(b)s
13121(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8 b(.)630 3777
237c32ba 13122y Ft(-m)384 b Fu(The)36 b(maxim)m(um)g(residen)m(t)h(set)g(size)g
e2520247
CR
13123(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 3886
13124y(limit\).)630 4041 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s
237c32ba 13125(er)e(of)i(op)s(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do)1110
e2520247
CR
131264150 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)
13127630 4304 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630
131284459 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
13129(ytes)g(in)f Fm(posix)f Fu(message)j(queues.)630 4613
d37a4722 13130y Ft(-r)384 b Fu(The)30 b(maxim)m(um)g(real-time)i(sc)m(heduling)f
e2520247
CR
13131(priorit)m(y)-8 b(.)630 4767 y Ft(-s)384 b Fu(The)30
13132b(maxim)m(um)g(stac)m(k)i(size.)630 4922 y Ft(-t)384
d37a4722 13133b Fu(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)h(in)f(seconds.)
e2520247 13134630 5076 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
d37a4722 13135(pro)s(cesses)f(a)m(v)-5 b(ailable)33 b(to)e(a)f(single)i(user.)630
e2520247 131365230 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f
d37a4722 13137(memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110
e2520247 131385340 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)p
d052bd6f 13139eop end
e2520247
CR
13140%%Page: 68 74
13141TeXDict begin 68 73 bop 150 -116 a Fu(Chapter)30 b(4:)41
13142b(Shell)30 b(Builtin)h(Commands)2069 b(68)630 299 y Ft(-x)384
13143b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(\014le)f(lo)s(c)m
13144(ks.)630 462 y Ft(-P)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f
13145(of)i(pseudoterminals.)630 624 y Ft(-R)384 b Fu(The)27
13146b(maxim)m(um)h(time)h(a)f(real-time)i(pro)s(cess)d(can)i(run)d(b)s
13147(efore)i(blo)s(c)m(king,)h(in)1110 734 y(microseconds.)630
13148896 y Ft(-T)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
13149(threads.)630 1059 y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h
e59452c7 13150Ft(-a)f Fu(option)h(is)f(not)h(used,)h Fr(limit)h Fu(is)e(the)g(new)f
e2520247 13151(v)-5 b(alue)37 b(of)g(the)630 1169 y(sp)s(eci\014ed)c(resource.)51
e59452c7
CR
13152b(The)34 b(sp)s(ecial)g Fr(limit)j Fu(v)-5 b(alues)34
13153b Ft(hard)p Fu(,)g Ft(soft)p Fu(,)g(and)f Ft(unlimited)e
e2520247 13154Fu(stand)630 1278 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
e59452c7 13155(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h(resp)s(ectiv)m(ely)-8
e2520247 13156b(.)48 b(A)630 1388 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b)
e59452c7 13157m(y)g(a)h(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)j(a)d(soft)g
e2520247 13158(limit)h(ma)m(y)630 1497 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5
e59452c7 13159b(alue)38 b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39
e2520247 13160b(the)f(curren)m(t)f(v)-5 b(alue)630 1607 y(of)39 b(the)g(soft)h(limit)
e59452c7 13161g(for)f(the)g(sp)s(eci\014ed)f(resource)h(is)g(prin)m(ted,)i(unless)e
e2520247 13162(the)g Ft(-H)f Fu(option)i(is)630 1717 y(supplied.)47
e59452c7 13163b(When)33 b(more)g(than)g(one)g(resource)g(is)g(sp)s(eci\014ed,)g(the)g
e2520247 13164(limit)h(name)f(and)f(unit,)630 1826 y(if)27 b(appropriate,)h(are)f
e59452c7 13165(prin)m(ted)g(b)s(efore)g(the)g(v)-5 b(alue.)40 b(When)27
e2520247 13166b(setting)h(new)e(limits,)j(if)e(neither)630 1936 y Ft(-H)38
e59452c7
CR
13167b Fu(nor)g Ft(-S)g Fu(is)h(supplied,)h(b)s(oth)e(the)h(hard)f(and)g
13168(soft)h(limits)g(are)g(set.)67 b(If)38 b(no)h(option)g(is)630
e2520247 131692045 y(giv)m(en,)c(then)f Ft(-f)e Fu(is)i(assumed.)49
e59452c7 13170b(V)-8 b(alues)35 b(are)e(in)h(1024-b)m(yte)i(incremen)m(ts,)f(except)f
e2520247 13171(for)f Ft(-t)p Fu(,)630 2155 y(whic)m(h)e(is)g(in)g(seconds;)h
e59452c7 13172Ft(-R)p Fu(,)g(whic)m(h)f(is)g(in)g(microseconds;)h Ft(-p)p
e2520247 13173Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g(512-)630 2265
e59452c7
CR
13174y(b)m(yte)k(blo)s(c)m(ks;)j Ft(-P)p Fu(,)e Ft(-T)p Fu(,)f
13175Ft(-b)p Fu(,)h Ft(-k)p Fu(,)f Ft(-n)g Fu(and)f Ft(-u)p
13176Fu(,)h(whic)m(h)g(are)g(unscaled)g(v)-5 b(alues;)37 b(and,)f(when)630
e2520247
CR
131772374 y(in)g Fm(posix)f Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g
13178(POSIX)d(Mo)s(de],)k(page)f(108\),)i Ft(-c)c Fu(and)g
13179Ft(-f)p Fu(,)630 2484 y(whic)m(h)30 b(are)h(in)f(512-b)m(yte)j
13180(incremen)m(ts.)630 2620 y(The)h(return)g(status)h(is)f(zero)i(unless)e
e59452c7 13181(an)g(in)m(v)-5 b(alid)36 b(option)f(or)f(argumen)m(t)i(is)e(supplied,)
e2520247
CR
13182h(or)630 2729 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
13183(limit.)150 2892 y Ft(unalias)870 3028 y(unalias)46 b([-a])g([)p
13184Fj(name)h Ft(...)g(])630 3164 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f
d052bd6f
CR
13185Fr(name)k Fu(from)39 b(the)i(list)f(of)g(aliases.)71
13186b(If)40 b Ft(-a)f Fu(is)h(supplied,)h(all)g(aliases)h(are)630
e2520247
CR
131873274 y(remo)m(v)m(ed.)g(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section)
13188i(6.6)f([Aliases],)h(page)f(102.)150 3520 y Fs(4.3)68
13189b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 3744 y Fk(4.3.1)63
13190b(The)41 b(Set)g(Builtin)150 3891 y Fu(This)35 b(builtin)h(is)g(so)g
d052bd6f
CR
13191(complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59
13192b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
e2520247 131934000 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
d052bd6f 13194(p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h
e2520247
CR
13195(and)150 4110 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
131964274 y Ft(set)870 4410 y(set)47 b([-abefhkmnptuvxBCEHPT])42
d052bd6f 13197b([-o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
e2520247 13198Ft(...)o(])870 4520 y(set)i([+abefhkmnptuvxBCEHPT])42
25e43d2c 13199b([+o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
e2520247 13200Ft(...)o(])630 4656 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g
abfcfa4e 13201(are)g(supplied,)g Ft(set)f Fu(displa)m(ys)g(the)h(names)g(and)f(v)-5
e2520247 13202b(alues)23 b(of)g(all)630 4766 y(shell)j(v)-5 b(ariables)27
abfcfa4e 13203b(and)e(functions,)h(sorted)g(according)h(to)g(the)f(curren)m(t)f(lo)s
e2520247 13204(cale,)k(in)c(a)i(format)630 4875 y(that)i(ma)m(y)h(b)s(e)e(reused)g
abfcfa4e 13205(as)h(input)f(for)h(setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h
e2520247 13206(v)-5 b(ariables.)630 4985 y(Read-only)37 b(v)-5 b(ariables)37
fc527055 13207b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fm(posix)g Fu(mo)s(de,)i(only)f
e2520247
CR
13208(shell)f(v)-5 b(ariables)38 b(are)630 5094 y(listed.)630
132095230 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f
fc527055 13210(shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630
e2520247
CR
132115340 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)p
13212eop end
13213%%Page: 69 75
13214TeXDict begin 69 74 bop 150 -116 a Fu(Chapter)30 b(4:)41
13215b(Shell)30 b(Builtin)h(Commands)2069 b(69)630 299 y Ft(-a)384
13216b Fu(Eac)m(h)37 b(v)-5 b(ariable)36 b(or)g(function)g(that)g(is)g
13217(created)h(or)f(mo)s(di\014ed)f(is)h(giv)m(en)h(the)1110
13218408 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for)g(exp)s(ort)g
13219(to)h(the)g(en)m(vironmen)m(t)f(of)h(sub-)1110 518 y(sequen)m(t)i
13220(commands.)630 682 y Ft(-b)384 b Fu(Cause)44 b(the)h(status)g(of)f
13221(terminated)h(bac)m(kground)g(jobs)f(to)h(b)s(e)f(rep)s(orted)1110
13222792 y(immediately)-8 b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g
13223(the)g(next)g(primary)g(prompt.)630 956 y Ft(-e)384 b
13224Fu(Exit)65 b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g
13225(3.2.3)h([Pip)s(elines],)1110 1066 y(page)51 b(10\),)58
13226b(whic)m(h)50 b(ma)m(y)h(consist)h(of)e(a)i(single)f(simple)g(command)f
13227(\(see)1110 1176 y(Section)30 b(3.2.2)i([Simple)d(Commands],)g(page)h
13228(9\),)h(a)f(list)g(\(see)h(Section)f(3.2.4)1110 1285
13229y([Lists],)60 b(page)55 b(10\),)60 b(or)54 b(a)g(comp)s(ound)e(command)
13230h(\(see)i(Section)f(3.2.5)1110 1395 y([Comp)s(ound)60
13231b(Commands],)70 b(page)63 b(11\))g(returns)e(a)i(non-zero)f(status.)
132321110 1504 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)
13233f(that)h(fails)f(is)g(part)g(of)h(the)1110 1614 y(command)g(list)h
13234(immediately)g(follo)m(wing)g(a)g Ft(while)e Fu(or)h
13235Ft(until)e Fu(k)m(eyw)m(ord,)1110 1724 y(part)61 b(of)g(the)g(test)h
13236(in)e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
13237(command)1110 1833 y(executed)50 b(in)e(a)h Ft(&&)f Fu(or)h
13238Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
132391943 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f
7a257517 13240(in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110
e2520247 132412052 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
7a257517 13242(with)e Ft(!)p Fu(.)48 b(If)33 b(a)g(comp)s(ound)1110
e2520247
CR
132432162 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
13244(status)f(b)s(ecause)1110 2271 y(a)k(command)g(failed)g(while)g
7a257517 13245Ft(-e)f Fu(w)m(as)i(b)s(eing)e(ignored,)j(the)e(shell)g(do)s(es)g(not)
e2520247 132461110 2381 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g
7a257517 13247(is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110
e2520247
CR
132482518 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
13249(and)f(eac)m(h)h(subshell)f(en-)1110 2628 y(vironmen)m(t)j(separately)i
7a257517 13250(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
e2520247
CR
132512737 y(vironmen)m(t],)i(page)f(44\),)i(and)d(ma)m(y)h(cause)f
13252(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 2847 y(cuting)d(all)g
13253(the)g(commands)f(in)g(the)g(subshell.)1110 2984 y(If)41
7a257517 13254b(a)g(comp)s(ound)e(command)i(or)g(shell)g(function)g(executes)h(in)f
e2520247 13255(a)g(con)m(text)1110 3093 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g
7a257517 13256(ignored,)h(none)f(of)h(the)f(commands)g(executed)h(within)1110
e2520247
CR
132573203 y(the)j(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g(will)
13258h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 3313 y Ft(-e)25
7a257517 13259b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f Fu(is)h(set)g(and)f(a)h(command)
e2520247 13260g(returns)e(a)i(failure)g(status.)1110 3422 y(If)32 b(a)i(comp)s(ound)d
7a257517 13261(command)i(or)g(shell)g(function)f(sets)i Ft(-e)e Fu(while)h(executing)
e2520247 132621110 3532 y(in)40 b(a)h(con)m(text)i(where)d Ft(-e)g
d052bd6f 13263Fu(is)h(ignored,)j(that)d(setting)h(will)f(not)g(ha)m(v)m(e)h(an)m(y)
e2520247
CR
132641110 3641 y(e\013ect)g(un)m(til)e(the)h(comp)s(ound)e(command)h(or)g
13265(the)g(command)g(con)m(taining)1110 3751 y(the)31 b(function)f(call)h
13266(completes.)630 3915 y Ft(-f)384 b Fu(Disable)31 b(\014lename)g
13267(expansion)f(\(globbing\).)630 4080 y Ft(-h)384 b Fu(Lo)s(cate)33
237c32ba 13268b(and)e(remem)m(b)s(er)h(\(hash\))g(commands)f(as)h(they)g(are)g(lo)s
e2520247
CR
13269(ok)m(ed)h(up)e(for)1110 4189 y(execution.)42 b(This)29
13270b(option)i(is)g(enabled)f(b)m(y)g(default.)630 4354 y
237c32ba
CR
13271Ft(-k)384 b Fu(All)34 b(argumen)m(ts)g(in)f(the)h(form)f(of)g
13272(assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110
e2520247
CR
132734463 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
13274(those)i(that)f(precede)g(the)1110 4573 y(command)30
13275b(name.)630 4737 y Ft(-m)384 b Fu(Job)28 b(con)m(trol)h(is)f(enabled)g
13276(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(117\).)41
13277b(All)1110 4847 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
fc527055 13278(cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
e2520247
CR
132794956 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
13280(taining)i(its)f(exit)g(status.)630 5121 y Ft(-n)384
fc527055 13281b Fu(Read)38 b(commands)f(but)f(do)i(not)f(execute)i(them.)62
e2520247 13282b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 5230 y(c)m(hec)m(k)d(a)e
fc527055 13283(script)g(for)g(syn)m(tax)h(errors.)42 b(This)30 b(option)i(is)f
e2520247
CR
13284(ignored)g(b)m(y)g(in)m(terac-)1110 5340 y(tiv)m(e)h(shells.)p
13285eop end
13286%%Page: 70 76
13287TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(4:)41
13288b(Shell)30 b(Builtin)h(Commands)2069 b(70)630 299 y Ft(-o)30
13289b Fj(option-name)1110 408 y Fu(Set)h(the)f(option)h(corresp)s(onding)e
13290(to)i Fr(option-name)5 b Fu(:)1110 575 y Ft(allexport)1590
13291685 y Fu(Same)30 b(as)h Ft(-a)p Fu(.)1110 852 y Ft(braceexpand)1590
13292962 y Fu(Same)f(as)h Ft(-B)p Fu(.)1110 1129 y Ft(emacs)240
13293b Fu(Use)25 b(an)f Ft(emacs)p Fu(-st)m(yle)h(line)f(editing)h(in)m
13294(terface)h(\(see)g(Chapter)e(8)1590 1238 y([Command)33
13295b(Line)g(Editing],)h(page)h(121\).)51 b(This)32 b(also)i(a\013ects)1590
132961348 y(the)d(editing)g(in)m(terface)h(used)d(for)h Ft(read)f(-e)p
13297Fu(.)1110 1515 y Ft(errexit)144 b Fu(Same)30 b(as)h Ft(-e)p
13298Fu(.)1110 1682 y Ft(errtrace)96 b Fu(Same)30 b(as)h Ft(-E)p
13299Fu(.)1110 1849 y Ft(functrace)1590 1958 y Fu(Same)f(as)h
13300Ft(-T)p Fu(.)1110 2125 y Ft(hashall)144 b Fu(Same)30
13301b(as)h Ft(-h)p Fu(.)1110 2292 y Ft(histexpand)1590 2402
13302y Fu(Same)f(as)h Ft(-H)p Fu(.)1110 2569 y Ft(history)144
d052bd6f 13303b Fu(Enable)39 b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h
e2520247
CR
13304(Section)h(9.1)1590 2679 y([Bash)d(History)g(F)-8 b(acilities],)41
13305b(page)c(156.)60 b(This)36 b(option)h(is)f(on)1590 2788
d052bd6f 13306y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110
e2520247
CR
133072955 y Ft(ignoreeof)1590 3065 y Fu(An)d(in)m(teractiv)m(e)j(shell)e
13308(will)g(not)f(exit)h(up)s(on)e(reading)i(EOF.)1110 3232
d052bd6f 13309y Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110
e2520247
CR
133103399 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)1110
133113566 y Ft(noclobber)1590 3675 y Fu(Same)f(as)h Ft(-C)p
13312Fu(.)1110 3842 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p
13313Fu(.)1110 4009 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p
13314Fu(.)1110 4176 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110
133154343 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110
133164510 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110
133174677 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110
133184844 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110
133195011 y Ft(pipefail)96 b Fu(If)44 b(set,)k(the)d(return)e(v)-5
d37a4722 13320b(alue)45 b(of)f(a)h(pip)s(eline)e(is)i(the)f(v)-5 b(alue)45
e2520247
CR
13321b(of)1590 5121 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
13322(exit)g(with)f(a)g(non-zero)1590 5230 y(status,)28 b(or)f(zero)g(if)f
d37a4722 13323(all)i(commands)e(in)g(the)h(pip)s(eline)f(exit)i(suc-)1590
e2520247
CR
133245340 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
13325(default.)p eop end
13326%%Page: 71 77
13327TeXDict begin 71 76 bop 150 -116 a Fu(Chapter)30 b(4:)41
13328b(Shell)30 b(Builtin)h(Commands)2069 b(71)1110 299 y
13329Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m(vior)h(of)f(Bash)g(where)
13330g(the)g(default)h(op)s(era-)1590 408 y(tion)25 b(di\013ers)f(from)g
13331(the)h Fm(posix)f Fu(standard)f(to)i(matc)m(h)h(the)f(stan-)1590
13332518 y(dard)h(\(see)j(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)
13333f(108\).)1590 628 y(This)37 b(is)g(in)m(tended)g(to)h(mak)m(e)g(Bash)g
13334(b)s(eha)m(v)m(e)g(as)g(a)f(strict)h(su-)1590 737 y(p)s(erset)30
13335b(of)h(that)f(standard.)1110 911 y Ft(privileged)1590
133361020 y Fu(Same)g(as)h Ft(-p)p Fu(.)1110 1194 y Ft(verbose)144
13337b Fu(Same)30 b(as)h Ft(-v)p Fu(.)1110 1367 y Ft(vi)384
13338b Fu(Use)36 b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g(editing)g(in)m
13339(terface.)58 b(This)35 b(also)h(a\013ects)1590 1477 y(the)31
13340b(editing)g(in)m(terface)h(used)d(for)h Ft(read)f(-e)p
13341Fu(.)1110 1650 y Ft(xtrace)192 b Fu(Same)30 b(as)h Ft(-x)p
13342Fu(.)630 1824 y Ft(-p)384 b Fu(T)-8 b(urn)33 b(on)h(privileged)h(mo)s
13343(de.)51 b(In)34 b(this)g(mo)s(de,)h(the)f Ft($BASH_ENV)e
13344Fu(and)h Ft($ENV)1110 1934 y Fu(\014les)23 b(are)h(not)f(pro)s(cessed,)
13345h(shell)g(functions)e(are)i(not)f(inherited)g(from)f(the)i(en-)1110
133462043 y(vironmen)m(t,)h(and)e(the)g Ft(SHELLOPTS)p Fu(,)f
13347Ft(BASHOPTS)p Fu(,)h Ft(CDPATH)e Fu(and)i Ft(GLOBIGNORE)1110
133482153 y Fu(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m
13349(vironmen)m(t,)i(are)e(ignored.)38 b(If)20 b(the)h(shell)1110
133502262 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d
13351(\(group\))g(id)g(not)g(equal)h(to)g(the)f(real)1110
133522372 y(user)h(\(group\))h(id,)i(and)d(the)h Ft(-p)f Fu(option)i(is)e
13353(not)i(supplied,)f(these)h(actions)1110 2482 y(are)32
13354b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f
13355(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 2591 y
13356Ft(-p)i Fu(option)h(is)g(supplied)f(at)h(startup,)h(the)f(e\013ectiv)m
13357(e)i(user)d(id)g(is)h(not)g(reset.)1110 2701 y(T)-8 b(urning)35
13358b(this)i(option)g(o\013)g(causes)g(the)g(e\013ectiv)m(e)i(user)d(and)g
13359(group)g(ids)g(to)1110 2810 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f
13360(and)g(group)g(ids.)630 2984 y Ft(-r)384 b Fu(Enable)32
13361b(restricted)h(shell)f(mo)s(de.)45 b(This)31 b(option)i(cannot)g(b)s(e)
13362e(unset)h(once)g(it)1110 3093 y(has)e(b)s(een)g(set.)630
133633267 y Ft(-t)384 b Fu(Exit)31 b(after)g(reading)f(and)g(executing)h
13364(one)g(command.)630 3440 y Ft(-u)384 b Fu(T)-8 b(reat)25
13365b(unset)e(v)-5 b(ariables)25 b(and)e(parameters)h(other)h(than)e(the)h
13366(sp)s(ecial)h(param-)1110 3550 y(eters)32 b(`)p Ft(@)p
13367Fu(')f(or)h(`)p Ft(*)p Fu(',)g(or)f(arra)m(y)h(v)-5 b(ariables)32
13368b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p
13369Fu(',)f(as)h(an)1110 3660 y(error)24 b(when)g(p)s(erforming)g
13370(parameter)h(expansion.)39 b(An)24 b(error)h(message)h(will)1110
133713769 y(b)s(e)37 b(written)h(to)h(the)f(standard)f(error,)i(and)f(a)g
13372(non-in)m(teractiv)m(e)j(shell)d(will)1110 3879 y(exit.)630
133734052 y Ft(-v)384 b Fu(Prin)m(t)30 b(shell)h(input)e(lines)i(as)g(they)f
13374(are)h(read.)630 4226 y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f
13375(simple)f(commands,)i Ft(for)e Fu(commands,)i Ft(case)d
13376Fu(commands,)1110 4335 y Ft(select)29 b Fu(commands,)j(and)e
13377(arithmetic)j Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110
133784445 y(men)m(ts)g(or)g(asso)s(ciated)h(w)m(ord)e(lists)h(to)g(standard)
13379f(error)g(after)i(they)e(are)h(ex-)1110 4555 y(panded)20
d052bd6f 13380b(and)h(b)s(efore)g(they)g(are)h(executed.)39 b(The)21
e2520247 13381b(shell)g(prin)m(ts)g(the)h(expanded)1110 4664 y(v)-5
d052bd6f
CR
13382b(alue)28 b(of)f(the)g Ft(PS4)g Fu(v)-5 b(ariable)28
13383b(b)s(efore)f(the)g(command)g(and)g(its)g(expanded)g(ar-)1110
e2520247 133844774 y(gumen)m(ts.)630 4947 y Ft(-B)384 b Fu(The)41 b(shell)g(will)g(p)
d052bd6f 13385s(erform)f(brace)h(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110
e2520247
CR
133865057 y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g
13387(b)m(y)h(default.)630 5230 y Ft(-C)384 b Fu(Prev)m(en)m(t)25
5e6f45d9
CR
13388b(output)e(redirection)h(using)f(`)p Ft(>)p Fu(',)i(`)p
13389Ft(>&)p Fu(',)g(and)e(`)p Ft(<>)p Fu(')g(from)h(o)m(v)m(erwriting)1110
e2520247
CR
133905340 y(existing)31 b(\014les.)p eop end
13391%%Page: 72 78
13392TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(4:)41
13393b(Shell)30 b(Builtin)h(Commands)2069 b(72)630 299 y Ft(-E)384
13394b Fu(If)39 b(set,)j(an)m(y)e(trap)f(on)g Ft(ERR)g Fu(is)g(inherited)g
13395(b)m(y)g(shell)h(functions,)h(command)1110 408 y(substitutions,)35
5e6f45d9 13396b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.)
e2520247
CR
133971110 518 y(The)d Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g
13398(in)g(suc)m(h)g(cases.)630 670 y Ft(-H)384 b Fu(Enable)38
5e6f45d9 13399b(`)p Ft(!)p Fu(')h(st)m(yle)h(history)e(substitution)g(\(see)h
e2520247
CR
13400(Section)h(9.3)f([History)g(In-)1110 780 y(teraction],)g(page)d(158\).)
1340157 b(This)34 b(option)i(is)f(on)g(b)m(y)h(default)f(for)g(in)m
13402(teractiv)m(e)1110 890 y(shells.)630 1042 y Ft(-P)384
5e6f45d9 13403b Fu(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g
e2520247 13404(when)f(p)s(erforming)g(commands)1110 1152 y(suc)m(h)29
5e6f45d9 13405b(as)h Ft(cd)f Fu(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory)
e2520247
CR
13406-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 1261 y(tory)j(is)g(used)
13407f(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i
13408(c)m(hain)f(of)1110 1371 y(directories)j(when)d(p)s(erforming)h
5e6f45d9 13409(commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110
e2520247 134101480 y(directory)-8 b(.)1110 1611 y(F)g(or)42 b(example,)i(if)d
5e6f45d9 13411Ft(/usr/sys)e Fu(is)i(a)g(sym)m(b)s(olic)g(link)g(to)h
e2520247
CR
13412Ft(/usr/local/sys)1110 1721 y Fu(then:)1350 1852 y Ft($)47
13413b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1962 y(/usr/sys)1350
134142071 y($)g(cd)h(..;)f(pwd)1350 2181 y(/usr)1110 2312
13415y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 2443
13416y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 2552 y(/usr/local/sys)
134171350 2662 y($)g(cd)h(..;)f(pwd)1350 2771 y(/usr/local)630
134182924 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g
5e6f45d9 13419Ft(DEBUG)e Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i
e2520247
CR
13420(func-)1110 3033 y(tions,)k(command)d(substitutions,)h(and)f(commands)g
13421(executed)h(in)f(a)h(sub-)1110 3143 y(shell)33 b(en)m(vironmen)m(t.)49
5e6f45d9 13422b(The)32 b Ft(DEBUG)g Fu(and)g Ft(RETURN)f Fu(traps)h(are)i(normally)f
e2520247
CR
13423(not)1110 3253 y(inherited)d(in)g(suc)m(h)g(cases.)630
134243405 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e
d052bd6f 13425(option,)k(then)c(the)h(p)s(ositional)g(parame-)1110
e2520247
CR
134263515 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional)
13427i(parameters)f(are)f(set)h(to)h(the)1110 3624 y Fr(argumen)m(ts)p
d052bd6f 13428Fu(,)f(ev)m(en)g(if)f(some)h(of)g(them)f(b)s(egin)g(with)g(a)h(`)p
e2520247 13429Ft(-)p Fu('.)630 3777 y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h
d052bd6f 13430(options,)k(cause)c(all)h(remaining)e Fr(argumen)m(ts)49
e2520247 13431b Fu(to)d(b)s(e)1110 3886 y(assigned)33 b(to)h(the)g(p)s(ositional)g
d052bd6f 13432(parameters.)49 b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)
e2520247
CR
134331110 3996 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m
13434(ts,)j(the)e(p)s(ositional)g(parameters)1110 4105 y(remain)30
13435b(unc)m(hanged.)630 4258 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)
237c32ba 13436p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g
e2520247 13437(o\013.)40 b(The)27 b(options)h(can)630 4367 y(also)36
237c32ba
CR
13438b(b)s(e)f(used)f(up)s(on)g(in)m(v)m(o)s(cation)j(of)e(the)g(shell.)56
13439b(The)34 b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g(b)s(e)630
e2520247 134404477 y(found)29 b(in)h Ft($-)p Fu(.)630 4608 y(The)43
5e6f45d9 13441b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g
e2520247 13442(parameters)g(and)f(are)h(assigned,)j(in)630 4717 y(order,)30
5e6f45d9
CR
13443b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42
13444b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f
e2520247 13445Fu(is)g(set)h(to)g(N.)630 4848 y(The)f(return)f(status)i(is)f(alw)m(a)m
5e6f45d9 13446(ys)i(zero)f(unless)f(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
e2520247
CR
13447(supplied.)150 5041 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
134485188 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
5e6f45d9 13449(additional)f(shell)f(optional)i(b)s(eha)m(vior.)150
e2520247
CR
134505340 y Ft(shopt)p eop end
13451%%Page: 73 79
13452TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(4:)41
13453b(Shell)30 b(Builtin)h(Commands)2069 b(73)870 299 y Ft(shopt)46
76112093 13454b([-pqsu])g([-o])h([)p Fj(optname)e Ft(...])630 427 y
e2520247
CR
13455Fu(T)-8 b(oggle)37 b(the)e(v)-5 b(alues)35 b(of)g(settings)h(con)m
13456(trolling)g(optional)g(shell)f(b)s(eha)m(vior.)55 b(The)34
76112093 13457b(settings)630 536 y(can)24 b(b)s(e)g(either)h(those)f(listed)h(b)s
e2520247 13458(elo)m(w,)h(or,)f(if)g(the)f Ft(-o)f Fu(option)i(is)f(used,)h(those)g
76112093 13459(a)m(v)-5 b(ailable)26 b(with)630 646 y(the)k Ft(-o)f
e2520247 13460Fu(option)i(to)f(the)g Ft(set)f Fu(builtin)h(command)f(\(see)i(Section)
76112093 13461g(4.3.1)g([The)f(Set)g(Builtin],)630 756 y(page)i(68\).)45
e2520247
CR
13462b(With)32 b(no)f(options,)h(or)g(with)f(the)g Ft(-p)g
13463Fu(option,)h(a)g(list)g(of)f(all)i(settable)g(options)630
76112093 13464865 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h(of)f(whether)g
e2520247 13465(or)g(not)g(eac)m(h)h(is)g(set;)h(if)e Fr(optname)5 b
76112093 13466Fu(s)34 b(are)630 975 y(supplied,)25 b(the)g(output)g(is)g(restricted)g
e2520247 13467(to)h(those)g(options.)39 b(The)24 b Ft(-p)h Fu(option)g(causes)g
76112093 13468(output)630 1084 y(to)30 b(b)s(e)f(displa)m(y)m(ed)g(in)g(a)h(form)f
e2520247 13469(that)g(ma)m(y)h(b)s(e)f(reused)f(as)i(input.)39 b(Other)29
76112093
CR
13470b(options)g(ha)m(v)m(e)i(the)630 1194 y(follo)m(wing)h(meanings:)630
134711340 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f
13472Fr(optname)p Fu(.)630 1486 y Ft(-u)384 b Fu(Disable)31
13473b(\(unset\))g(eac)m(h)h Fr(optname)p Fu(.)630 1632 y
e2520247 13474Ft(-q)384 b Fu(Suppresses)28 b(normal)h(output;)h(the)g(return)e
76112093 13475(status)i(indicates)h(whether)e(the)1110 1742 y Fr(optname)37
e2520247
CR
13476b Fu(is)31 b(set)h(or)f(unset.)43 b(If)31 b(m)m(ultiple)h
13477Fr(optname)37 b Fu(argumen)m(ts)31 b(are)h(giv)m(en)1110
76112093 134781851 y(with)d Ft(-q)p Fu(,)f(the)i(return)d(status)j(is)f(zero)g(if)g
e2520247 13479(all)h Fr(optname)5 b Fu(s)29 b(are)h(enabled;)f(non-)1110
76112093 134801961 y(zero)i(otherwise.)630 2107 y Ft(-o)384 b Fu(Restricts)22
e2520247
CR
13481b(the)f(v)-5 b(alues)22 b(of)f Fr(optname)27 b Fu(to)22
13482b(b)s(e)e(those)i(de\014ned)e(for)h(the)g Ft(-o)f Fu(option)1110
76112093
CR
134832217 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)h(4.3.1)g
13484([The)e(Set)g(Builtin],)i(page)f(68\).)630 2363 y(If)e(either)i
e2520247
CR
13485Ft(-s)e Fu(or)h Ft(-u)f Fu(is)h(used)f(with)g(no)h Fr(optname)35
13486b Fu(argumen)m(ts,)c Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630
76112093
CR
134872472 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m
13488(ely)-8 b(.)630 2600 y(Unless)30 b(otherwise)h(noted,)g(the)g
e2520247 13489Ft(shopt)d Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32
76112093 13490b(b)m(y)e(default.)630 2728 y(The)d(return)f(status)i(when)e(listing)j
e2520247 13491(options)e(is)h(zero)g(if)f(all)i Fr(optname)5 b Fu(s)27
76112093 13492b(are)h(enabled,)g(non-)630 2838 y(zero)40 b(otherwise.)66
e2520247 13493b(When)39 b(setting)h(or)f(unsetting)g(options,)i(the)e(return)f
76112093 13494(status)h(is)g(zero)630 2947 y(unless)30 b(an)g Fr(optname)36
e2520247 13495b Fu(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)630
76112093
CR
134963075 y(The)f(list)h(of)f Ft(shopt)f Fu(options)i(is:)630
134973221 y Ft(array_expand_once)1110 3331 y Fu(If)39 b(set,)j(the)d(shell)g
13498(suppresses)e(m)m(ultiple)j(ev)-5 b(aluation)41 b(of)e(asso)s(ciativ)m
13499(e)j(and)1110 3440 y(indexed)37 b(arra)m(y)h(subscripts)e(during)g
13500(arithmetic)j(expression)e(ev)-5 b(aluation,)1110 3550
13501y(while)23 b(executing)h(builtins)f(that)g(can)h(p)s(erform)d(v)-5
13502b(ariable)24 b(assignmen)m(ts,)i(and)1110 3660 y(while)k(executing)i
13503(builtins)e(that)h(p)s(erform)e(arra)m(y)i(dereferencing.)630
135043806 y Ft(assoc_expand_once)1110 3915 y Fu(Deprecated;)h(a)f(synon)m
13505(ym)f(for)g Ft(array_expand_once)p Fu(.)630 4061 y Ft(autocd)192
13506b Fu(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h
13507(a)f(directory)h(is)f(executed)1110 4171 y(as)j(if)f(it)h(w)m(ere)f
13508(the)h(argumen)m(t)g(to)g(the)f Ft(cd)g Fu(command.)40
13509b(This)29 b(option)g(is)h(only)1110 4281 y(used)g(b)m(y)g(in)m
13510(teractiv)m(e)j(shells.)630 4427 y Ft(cdable_vars)1110
135114536 y Fu(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f
13512Ft(cd)f Fu(builtin)h(command)f(that)i(is)f(not)1110 4646
13513y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h(name)f(of)h(a)g(v)
13514-5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 4756
13515y(the)g(directory)f(to)i(c)m(hange)f(to.)630 4902 y Ft(cdspell)144
13516b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g(sp)s(elling)h(of)f(a)g
13517(directory)h(comp)s(onen)m(t)f(in)g(a)h Ft(cd)1110 5011
13518y Fu(command)i(will)h(b)s(e)f(corrected.)43 b(The)30
13519b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110
e2520247 135205121 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
8e1a6eaa 13521b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74
e2520247
CR
13522b(If)42 b(a)1110 5230 y(correction)25 b(is)e(found,)g(the)h(corrected)g
13523(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 5340
220537f2 13524y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m
e2520247
CR
13525(teractiv)m(e)k(shells.)p eop end
13526%%Page: 74 80
13527TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(4:)41
13528b(Shell)30 b(Builtin)h(Commands)2069 b(74)630 299 y Ft(checkhash)1110
13529408 y Fu(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
13530(command)f(found)g(in)g(the)h(hash)f(table)1110 518 y(exists)k(b)s
13531(efore)f(trying)h(to)h(execute)g(it.)48 b(If)32 b(a)h(hashed)e(command)
13532i(no)f(longer)1110 628 y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g
13533(p)s(erformed.)630 792 y Ft(checkjobs)1110 902 y Fu(If)d(set,)i(Bash)e
13534(lists)h(the)g(status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e
13535(jobs)i(b)s(efore)1110 1011 y(exiting)42 b(an)f(in)m(teractiv)m(e)j
13536(shell.)72 b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)
135371110 1121 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f
13538(second)h(exit)g(is)g(attempted)h(without)e(an)1110 1230
13539y(in)m(terv)m(ening)d(command)f(\(see)h(Chapter)e(7)h([Job)g(Con)m
13540(trol],)i(page)f(117\).)40 b(The)1110 1340 y(shell)31
13541b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h(if)g(an)m(y)f(jobs)g(are)h
13542(stopp)s(ed.)630 1504 y Ft(checkwinsize)1110 1614 y Fu(If)23
13543b(set,)j(Bash)e(c)m(hec)m(ks)h(the)f(windo)m(w)f(size)h(after)h(eac)m
13544(h)f(external)h(\(non-builtin\))1110 1724 y(command)55
13545b(and,)60 b(if)55 b(necessary)-8 b(,)62 b(up)s(dates)54
13546b(the)h(v)-5 b(alues)55 b(of)g Ft(LINES)f Fu(and)1110
135471833 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
13548(default.)630 1998 y Ft(cmdhist)144 b Fu(If)33 b(set,)j(Bash)e
13549(attempts)h(to)g(sa)m(v)m(e)g(all)g(lines)f(of)g(a)h(m)m(ultiple-line)g
13550(command)1110 2107 y(in)c(the)g(same)g(history)g(en)m(try)-8
13551b(.)42 b(This)30 b(allo)m(ws)i(easy)g(re-editing)g(of)f(m)m(ulti-line)
135521110 2217 y(commands.)79 b(This)43 b(option)g(is)h(enabled)f(b)m(y)g
13553(default,)k(but)c(only)g(has)g(an)1110 2326 y(e\013ect)30
13554b(if)e(command)g(history)g(is)h(enabled)f(\(see)h(Section)g(9.1)h
13555([Bash)e(History)1110 2436 y(F)-8 b(acilities],)34 b(page)d(156\).)630
135562600 y Ft(compat31)630 2710 y(compat32)630 2819 y(compat40)630
135572929 y(compat41)630 3039 y(compat42)630 3148 y(compat43)630
135583258 y(compat44)96 b Fu(These)39 b(con)m(trol)i(asp)s(ects)f(of)f(the)h
d052bd6f 13559(shell's)g(compatibilit)m(y)h(mo)s(de)e(\(see)h(Sec-)1110
e2520247
CR
135603367 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g
13561(113\).)630 3532 y Ft(complete_fullquote)1110 3641 y
237c32ba 13562Fu(If)g(set,)g(Bash)h(quotes)f(all)h(shell)f(metac)m(haracters)i(in)e
e2520247 13563(\014lenames)g(and)g(direc-)1110 3751 y(tory)g(names)f(when)g(p)s
237c32ba 13564(erforming)f(completion.)43 b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m
e2520247
CR
13565(es)1110 3861 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
13566(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)1110 3970
237c32ba 13567y(that)f(will)g(b)s(e)f(quoted)g(in)g(completed)i(\014lenames)e(when)f
e2520247 13568(these)i(metac)m(har-)1110 4080 y(acters)29 b(app)s(ear)e(in)g(shell)h
237c32ba 13569(v)-5 b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e
e2520247 13570(completed.)1110 4189 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)
237c32ba 13571-5 b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
e2520247
CR
135724299 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
13573g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 4408
d052bd6f
CR
13574y(\014lenames)i(will)g(not)g(b)s(e)g(quoted,)g(either.)41
13575b(This)27 b(is)h(activ)m(e)i(only)e(when)f(Bash)1110
e2520247
CR
135764518 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
13577(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 4628
fffe80d4 13578y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
e2520247
CR
13579(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 4737 y(through)30
13580b(4.2.)630 4902 y Ft(direxpand)1110 5011 y Fu(If)k(set,)i(Bash)f
fffe80d4 13581(replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
e2520247
CR
13582(ex-)1110 5121 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
13583(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 5230
e9c75143 13584y(con)m(ten)m(ts)c(of)e(the)h(Readline)f(editing)h(bu\013er.)52
e2520247
CR
13585b(If)33 b(not)i(set,)h(Bash)e(attempts)1110 5340 y(to)d(preserv)m(e)g
13586(what)f(the)g(user)g(t)m(yp)s(ed.)p eop end
13587%%Page: 75 81
13588TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(4:)41
13589b(Shell)30 b(Builtin)h(Commands)2069 b(75)630 299 y Ft(dirspell)96
e9c75143 13590b Fu(If)26 b(set,)i(Bash)f(attempts)g(sp)s(elling)g(correction)g(on)g
e2520247 13591(directory)g(names)f(during)1110 408 y(w)m(ord)36 b(completion)h(if)f
e9c75143 13592(the)g(directory)g(name)g(initially)h(supplied)e(do)s(es)h(not)1110
e2520247 13593518 y(exist.)630 682 y Ft(dotglob)144 b Fu(If)36 b(set,)i(Bash)e
e9c75143 13594(includes)g(\014lenames)g(b)s(eginning)f(with)h(a)g(`.')58
e2520247 13595b(in)36 b(the)g(results)1110 792 y(of)f(\014lename)f(expansion.)53
e59452c7 13596b(The)33 b(\014lenames)i(`)p Ft(.)p Fu(')f(and)g(`)p
e2520247 13597Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 902
50fc6e33 13598y(matc)m(hed)31 b(explicitly)-8 b(,)33 b(ev)m(en)e(if)f
e2520247
CR
13599Ft(dotglob)f Fu(is)h(set.)630 1066 y Ft(execfail)96 b
13600Fu(If)24 b(this)h(is)f(set,)j(a)e(non-in)m(teractiv)m(e)i(shell)e(will)
13601f(not)h(exit)h(if)e(it)h(cannot)h(execute)1110 1176 y(the)i(\014le)g
13602(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the)f
13603Ft(exec)f Fu(builtin)h(command.)39 b(An)1110 1285 y(in)m(teractiv)m(e)
e59452c7 1360433 b(shell)e(do)s(es)f(not)g(exit)i(if)e Ft(exec)f Fu(fails.)630
e2520247 136051450 y Ft(expand_aliases)1110 1559 y Fu(If)j(set,)h(aliases)g(are)g
50fc6e33 13606(expanded)e(as)h(describ)s(ed)f(b)s(elo)m(w)h(under)f(Aliases,)i(Sec-)
e2520247
CR
136071110 1669 y(tion)i(6.6)h([Aliases],)h(page)e(102.)55
13608b(This)33 b(option)i(is)g(enabled)f(b)m(y)h(default)f(for)1110
136091778 y(in)m(teractiv)m(e)f(shells.)630 1943 y Ft(extdebug)96
e230f997
CR
13610b Fu(If)35 b(set)i(at)f(shell)g(in)m(v)m(o)s(cation,)k(or)c(in)f(a)h
13611(shell)h(startup)e(\014le,)i(arrange)g(to)f(ex-)1110
e2520247
CR
136122052 y(ecute)h(the)f(debugger)g(pro\014le)g(b)s(efore)g(the)g(shell)h
13613(starts,)h(iden)m(tical)g(to)f(the)1110 2162 y Ft(--debugger)32
e230f997 13614b Fu(option.)56 b(If)35 b(set)h(after)g(in)m(v)m(o)s(cation,)j(b)s(eha)
e2520247
CR
13615m(vior)c(in)m(tended)g(for)1110 2271 y(use)30 b(b)m(y)g(debuggers)g(is)
13616h(enabled:)1159 2408 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g
e230f997 13617Ft(declare)d Fu(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290
e2520247
CR
136182518 y(Builtins],)29 b(page)g(57\))g(displa)m(ys)f(the)g(source)h
13619(\014le)f(name)g(and)f(line)h(n)m(um-)1290 2628 y(b)s(er)h(corresp)s
d052bd6f 13620(onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i(an)f(argu-)
e2520247 136211290 2737 y(men)m(t.)1159 2874 y(2.)61 b(If)20 b(the)h(command)g(run)e
d052bd6f 13622(b)m(y)i(the)f Ft(DEBUG)g Fu(trap)g(returns)g(a)h(non-zero)g(v)-5
e2520247
CR
13623b(alue,)1290 2984 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
13624(not)i(executed.)1159 3121 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
d052bd6f 13625(y)i(the)f Ft(DEBUG)f Fu(trap)h(returns)f(a)i(v)-5 b(alue)38
e2520247
CR
13626b(of)f(2,)1290 3230 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
13627(subroutine)e(\(a)i(shell)g(function)f(or)1290 3340 y(a)h(shell)g
d052bd6f 13628(script)f(executed)h(b)m(y)g(the)f Ft(.)h Fu(or)f Ft(source)f
e2520247
CR
13629Fu(builtins\),)i(the)g(shell)1290 3450 y(sim)m(ulates)d(a)g(call)h(to)f
13630Ft(return)p Fu(.)1159 3587 y(4.)61 b Ft(BASH_ARGC)34
d052bd6f 13631b Fu(and)i Ft(BASH_ARGV)e Fu(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
e2520247
CR
13632g(their)1290 3696 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
13633(V)-8 b(ariables],)32 b(page)f(80\).)1159 3833 y(5.)61
d052bd6f 13634b(F)-8 b(unction)57 b(tracing)g(is)g(enabled:)93 b(command)56
e2520247 13635b(substitution,)63 b(shell)1290 3943 y(functions,)32
237c32ba 13636b(and)e(subshells)h(in)m(v)m(ok)m(ed)i(with)e Ft(\()f
e2520247
CR
13637Fj(command)e Ft(\))j Fu(inherit)h(the)1290 4052 y Ft(DEBUG)d
13638Fu(and)h Ft(RETURN)e Fu(traps.)1159 4189 y(6.)61 b(Error)41
237c32ba 13639b(tracing)i(is)f(enabled:)63 b(command)42 b(substitution,)i(shell)f
e2520247 13640(func-)1290 4299 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i
237c32ba 13641(with)e Ft(\()g Fj(command)f Ft(\))h Fu(inherit)h(the)g
e2520247 13642Ft(ERR)1290 4408 y Fu(trap.)630 4573 y Ft(extglob)144
237c32ba 13643b Fu(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g
e2520247
CR
13644(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 4682 y(Section)j(3.5.8.1)i
13645([P)m(attern)f(Matc)m(hing],)g(page)f(37\))h(are)f(enabled.)630
136464847 y Ft(extquote)96 b Fu(If)51 b(set,)58 b Ft($')p
237c32ba 13647Fj(string)p Ft(')49 b Fu(and)i Ft($")p Fj(string)p Ft(")e
e2520247 13648Fu(quoting)k(is)e(p)s(erformed)f(within)1110 4956 y Ft(${)p
237c32ba 13649Fj(parameter)p Ft(})31 b Fu(expansions)k(enclosed)g(in)g(double)f
e2520247
CR
13650(quotes.)55 b(This)33 b(option)1110 5066 y(is)d(enabled)h(b)m(y)f
13651(default.)630 5230 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d
237c32ba 13652(whic)m(h)g(fail)h(to)h(matc)m(h)f(\014lenames)f(during)g(\014lename)g
e2520247
CR
13653(ex-)1110 5340 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)p
13654eop end
13655%%Page: 76 82
13656TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(4:)41
13657b(Shell)30 b(Builtin)h(Commands)2069 b(76)630 299 y Ft(force_fignore)
136581110 408 y Fu(If)43 b(set,)k(the)d(su\016xes)f(sp)s(eci\014ed)f(b)m(y)i
13659(the)f Ft(FIGNORE)f Fu(shell)h(v)-5 b(ariable)44 b(cause)1110
13660518 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h(when)f(p)s(erforming)f(w)m
13661(ord)h(completion)i(ev)m(en)f(if)g(the)1110 628 y(ignored)37
13662b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g(completions.)62
13663b(See)37 b(Section)h(5.2)1110 737 y([Bash)24 b(V)-8 b(ariables],)27
13664b(page)e(80,)h(for)d(a)h(description)g(of)g Ft(FIGNORE)p
13665Fu(.)37 b(This)22 b(option)1110 847 y(is)30 b(enabled)h(b)m(y)f
13666(default.)630 993 y Ft(globasciiranges)1110 1103 y Fu(If)j(set,)h
13667(range)f(expressions)g(used)f(in)h(pattern)g(matc)m(hing)h(brac)m(k)m
13668(et)h(expres-)1110 1212 y(sions)28 b(\(see)h(Section)h(3.5.8.1)g([P)m
13669(attern)g(Matc)m(hing],)h(page)e(37\))g(b)s(eha)m(v)m(e)g(as)g(if)1110
136701322 y(in)i(the)g(traditional)i(C)d(lo)s(cale)j(when)d(p)s(erforming)g
13671(comparisons.)44 b(That)31 b(is,)1110 1431 y(the)d(curren)m(t)g(lo)s
13672(cale's)i(collating)h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g
13673(accoun)m(t,)i(so)1110 1541 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i
13674(b)s(et)m(w)m(een)e(`)p Ft(A)p Fu(')g(and)f(`)p Ft(B)p
13675Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m(w)m(er-)1110
136761650 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i(together.)630
136771797 y Ft(globskipdots)1110 1906 y Fu(If)38 b(set,)k(\014lename)d
13678(expansion)f(will)h(nev)m(er)g(matc)m(h)h(the)f(\014lenames)g(`)p
13679Ft(.)p Fu(')g(and)1110 2016 y(`)p Ft(..)p Fu(',)c(ev)m(en)g(if)g(the)f
13680(pattern)g(b)s(egins)g(with)g(a)h(`)p Ft(.)p Fu('.)52
13681b(This)34 b(option)h(is)f(enabled)1110 2125 y(b)m(y)c(default.)630
136822271 y Ft(globstar)96 b Fu(If)38 b(set,)j(the)e(pattern)f(`)p
13683Ft(**)p Fu(')h(used)e(in)i(a)f(\014lename)h(expansion)f(con)m(text)j
13684(will)1110 2381 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)f(more)
13685g(directories)h(and)e(sub)s(directories.)54 b(If)1110
136862491 y(the)30 b(pattern)g(is)g(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p
13687Ft(/)p Fu(',)f(only)g(directories)h(and)f(sub)s(directories)1110
136882600 y(matc)m(h.)630 2746 y Ft(gnu_errfmt)1110 2856 y
13689Fu(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)h(the)g
13690(standard)f Fm(gnu)g Fu(error)1110 2966 y(message)c(format.)630
136913112 y Ft(histappend)1110 3221 y Fu(If)c(set,)j(the)e(history)g(list)g
237c32ba 13692(is)g(app)s(ended)e(to)j(the)f(\014le)g(named)f(b)m(y)h(the)g(v)-5
e2520247 13693b(alue)29 b(of)1110 3331 y(the)d Ft(HISTFILE)d Fu(v)-5
237c32ba 13694b(ariable)26 b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m
e2520247
CR
13695(erwriting)1110 3440 y(the)31 b(\014le.)630 3587 y Ft(histreedit)1110
136963696 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
5e6f45d9 13697(user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110
e2520247
CR
136983806 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
136993952 y Ft(histverify)1110 4061 y Fu(If)35 b(set,)i(and)e(Readline)h(is)
237c32ba 13700f(b)s(eing)g(used,)h(the)f(results)g(of)g(history)h(substitu-)1110
e2520247
CR
137014171 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
13702(parser.)59 b(Instead,)38 b(the)1110 4281 y(resulting)i(line)f(is)h
5e6f45d9 13703(loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h(allo)m(wing)
e2520247
CR
137041110 4390 y(further)29 b(mo)s(di\014cation.)630 4536
13705y Ft(hostcomplete)1110 4646 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f
5e6f45d9 13706(b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110
e2520247
CR
137074756 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
13708(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 4865 y(pleted)g(\(see)h
fffe80d4 13709(Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g
e2520247
CR
13710(143\).)1110 4975 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
13711630 5121 y Ft(huponexit)1110 5230 y Fu(If)i(set,)i(Bash)f(will)h(send)d
fffe80d4 13712Ft(SIGHUP)h Fu(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
e2520247
CR
137131110 5340 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
13714(page)f(46\).)p eop end
13715%%Page: 77 83
13716TeXDict begin 77 82 bop 150 -116 a Fu(Chapter)30 b(4:)41
13717b(Shell)30 b(Builtin)h(Commands)2069 b(77)630 299 y Ft(inherit_errexit)
137181110 408 y Fu(If)29 b(set,)h(command)g(substitution)f(inherits)g(the)g
13719(v)-5 b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110
13720518 y(tion,)33 b(instead)g(of)f(unsetting)g(it)h(in)f(the)g(subshell)f
13721(en)m(vironmen)m(t.)46 b(This)32 b(op-)1110 628 y(tion)f(is)f(enabled)h
13722(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 792
13723y Ft(interactive_comments)1110 902 y Fu(Allo)m(w)d(a)g(w)m(ord)e(b)s
fffe80d4 13724(eginning)g(with)h(`)p Ft(#)p Fu(')g(to)h(cause)f(that)h(w)m(ord)f(and)
e2520247 13725f(all)i(remain-)1110 1011 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g
fffe80d4 13726(to)g(b)s(e)f(ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110
e2520247
CR
137271121 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
137281285 y Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
fc527055 13729(not)f(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
e2520247
CR
137301395 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
13731(kground)g(in)g(the)g(curren)m(t)g(shell)1110 1504 y(en)m(vironmen)m
13732(t.)630 1669 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h
50fc6e33 13733Ft(cmdhist)e Fu(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
e2520247
CR
137341778 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
13735(edded)g(newlines)h(rather)g(than)f(using)1110 1888 y(semicolon)32
13736b(separators)f(where)e(p)s(ossible.)630 2052 y Ft(localvar_inherit)1110
137372162 y Fu(If)j(set,)h(lo)s(cal)g(v)-5 b(ariables)33 b(inherit)f(the)g
50fc6e33 13738(v)-5 b(alue)32 b(and)g(attributes)h(of)f(a)g(v)-5 b(ariable)1110
e2520247
CR
137392271 y(of)36 b(the)g(same)g(name)g(that)h(exists)f(at)h(a)f(previous)g
13740(scop)s(e)g(b)s(efore)f(an)m(y)h(new)1110 2381 y(v)-5
e59452c7 13741b(alue)31 b(is)f(assigned.)41 b(The)30 b Ft(nameref)e
e2520247
CR
13742Fu(attribute)k(is)e(not)h(inherited.)630 2545 y Ft(localvar_unset)1110
137432655 y Fu(If)i(set,)i(calling)g Ft(unset)d Fu(on)i(lo)s(cal)g(v)-5
d052bd6f 13744b(ariables)35 b(in)e(previous)g(function)g(scop)s(es)1110
e2520247
CR
137452765 y(marks)26 b(them)g(so)g(subsequen)m(t)g(lo)s(okups)f(\014nd)g
13746(them)h(unset)f(un)m(til)i(that)g(func-)1110 2874 y(tion)40
237c32ba 13747b(returns.)68 b(This)39 b(is)g(iden)m(tical)j(to)e(the)g(b)s(eha)m
e2520247
CR
13748(vior)g(of)g(unsetting)g(lo)s(cal)1110 2984 y(v)-5 b(ariables)31
13749b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 3148
13750y Ft(login_shell)1110 3258 y Fu(The)35 b(shell)h(sets)g(this)f(option)h
237c32ba 13751(if)g(it)g(is)f(started)h(as)g(a)g(login)g(shell)g(\(see)g(Sec-)1110
e2520247 137523367 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(93\).)41
237c32ba 13753b(The)28 b(v)-5 b(alue)29 b(ma)m(y)g(not)f(b)s(e)g(c)m(hanged.)630
e2520247 137543532 y Ft(mailwarn)96 b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
237c32ba 13755(Bash)f(is)h(c)m(hec)m(king)h(for)f(mail)g(has)f(b)s(een)g(accessed)
e2520247 137561110 3641 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
237c32ba 13757(ed,)k(the)c(message)h Ft("The)k(mail)h(in)f Fj(mail-)1110
e2520247
CR
137583751 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630
137593915 y Ft(no_empty_cmd_completion)1110 4025 y Fu(If)g(set,)g(and)g
5e6f45d9 13760(Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e
e2520247 13761(searc)m(h)1110 4134 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f
5e6f45d9 13762(completions)j(when)d(completion)i(is)f(attempted)h(on)1110
e2520247
CR
137634244 y(an)k(empt)m(y)h(line.)630 4408 y Ft(nocaseglob)1110
137644518 y Fu(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
13765(case-insensitiv)m(e)j(fashion)c(when)1110 4628 y(p)s(erforming)29
13766b(\014lename)i(expansion.)630 4792 y Ft(nocasematch)1110
137674902 y Fu(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
13768(case-insensitiv)m(e)i(fashion)d(when)1110 5011 y(p)s(erforming)31
e59452c7 13769b(matc)m(hing)i(while)f(executing)i Ft(case)d Fu(or)h
e2520247 13770Ft([[)g Fu(conditional)h(com-)1110 5121 y(mands)25 b(\(see)i(Section)f
e59452c7 13771(3.2.5.2)j([Conditional)e(Constructs],)f(page)h(12,)h(when)1110
e2520247
CR
137725230 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h
13773(or)f(when)g(\014ltering)1110 5340 y(p)s(ossible)j(completions)h(as)g
13774(part)f(of)h(programmable)f(completion.)p eop end
13775%%Page: 78 84
13776TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(4:)41
13777b(Shell)30 b(Builtin)h(Commands)2069 b(78)630 299 y Ft
13778(noexpand_translation)1110 408 y Fu(If)23 b(set,)j(Bash)d(encloses)i
e59452c7 13779(the)e(translated)h(results)g(of)f($)p Ft(")p Fu(...)p
e2520247 13780Ft(")h Fu(quoting)g(in)f(single)1110 518 y(quotes)k(instead)g(of)g
e59452c7 13781(double)f(quotes.)40 b(If)26 b(the)h(string)f(is)h(not)g(translated,)h
e2520247 13782(this)1110 628 y(has)i(no)g(e\013ect.)630 786 y Ft(nullglob)96
e59452c7 13783b Fu(If)23 b(set,)j(Bash)e(allo)m(ws)g(\014lename)g(patterns)g(whic)m
e2520247 13784(h)f(matc)m(h)h(no)g(\014les)f(to)i(expand)1110 896 y(to)31
d052bd6f 13785b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630
e2520247 137861054 y Ft(patsub_replacement)1110 1163 y Fu(If)38 b(set,)k(Bash)d
e59452c7 13787(expands)e(o)s(ccurrences)i(of)g(`)p Ft(&)p Fu(')g(in)f(the)h
e2520247 13788(replacemen)m(t)h(string)1110 1273 y(of)47 b(pattern)g(substitution)g
e59452c7 13789(to)h(the)f(text)h(matc)m(hed)g(b)m(y)f(the)g(pattern,)52
e2520247
CR
13790b(as)1110 1383 y(describ)s(ed)45 b(ab)s(o)m(v)m(e)i(\(see)f(Section)h
13791(3.5.3)g([Shell)f(P)m(arameter)h(Expansion],)1110 1492
e59452c7 13792y(page)31 b(26\).)42 b(This)30 b(option)g(is)h(enabled)f(b)m(y)g
e2520247 13793(default.)630 1650 y Ft(progcomp)96 b Fu(If)25 b(set,)i(the)f
e59452c7 13794(programmable)g(completion)g(facilities)i(\(see)f(Section)f(8.6)h
e2520247
CR
13795([Pro-)1110 1760 y(grammable)45 b(Completion],)k(page)c(147\))h(are)f
13796(enabled.)82 b(This)44 b(option)h(is)1110 1870 y(enabled)30
13797b(b)m(y)h(default.)630 2028 y Ft(progcomp_alias)1110
137982138 y Fu(If)23 b(set,)j(and)d(programmable)h(completion)h(is)f
13799(enabled,)h(Bash)f(treats)h(a)f(com-)1110 2247 y(mand)34
50fc6e33 13800b(name)h(that)g(do)s(esn't)f(ha)m(v)m(e)i(an)m(y)g(completions)f(as)g
e2520247 13801(a)g(p)s(ossible)g(alias)1110 2357 y(and)40 b(attempts)i(alias)h
d052bd6f 13802(expansion.)72 b(If)41 b(it)g(has)g(an)g(alias,)k(Bash)c(attempts)1110
e2520247
CR
138032466 y(programmable)28 b(completion)h(using)e(the)h(command)f(w)m(ord)h
13804(resulting)f(from)1110 2576 y(the)k(expanded)e(alias.)630
138052734 y Ft(promptvars)1110 2844 y Fu(If)50 b(set,)56 b(prompt)49
d052bd6f 13806b(strings)h(undergo)g(parameter)h(expansion,)k(command)1110
e2520247
CR
138072953 y(substitution,)35 b(arithmetic)g(expansion,)g(and)e(quote)i(remo)
13808m(v)-5 b(al)35 b(after)f(b)s(eing)1110 3063 y(expanded)53
d052bd6f 13809b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)f(6.9)h([Con)m
e2520247 13810(trolling)g(the)1110 3173 y(Prompt],)30 b(page)h(106\).)43
d052bd6f 13811b(This)29 b(option)i(is)g(enabled)f(b)m(y)g(default.)630
e2520247 138123331 y Ft(restricted_shell)1110 3440 y Fu(The)40 b(shell)h(sets)g(this)
d052bd6f 13813g(option)g(if)g(it)h(is)e(started)i(in)e(restricted)i(mo)s(de)e(\(see)
e2520247
CR
138141110 3550 y(Section)32 b(6.10)h([The)d(Restricted)j(Shell],)e(page)h
13815(108\).)45 b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110
138163660 y(b)s(e)g(c)m(hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f
13817(the)h(startup)g(\014les)f(are)i(executed,)1110 3769
d052bd6f 13818y(allo)m(wing)k(the)e(startup)f(\014les)h(to)g(disco)m(v)m(er)h
e2520247
CR
13819(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 3879
13820y(stricted.)630 4037 y Ft(shift_verbose)1110 4147 y Fu(If)g(this)g(is)g
d052bd6f 13821(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m(ts)f(an)h(error)g(message)
e2520247
CR
13822i(when)d(the)1110 4256 y(shift)30 b(coun)m(t)h(exceeds)g(the)g(n)m(um)m
13823(b)s(er)e(of)h(p)s(ositional)i(parameters.)630 4415 y
13824Ft(sourcepath)1110 4524 y Fu(If)40 b(set,)45 b(the)c
d052bd6f
CR
13825Ft(.)f Fu(\()p Ft(source)p Fu(\))g(builtin)g(uses)h(the)g(v)-5
13826b(alue)41 b(of)g Ft(PATH)f Fu(to)h(\014nd)f(the)1110
e2520247
CR
138274634 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h
13828(an)g(argumen)m(t.)44 b(This)30 b(option)1110 4743 y(is)g(enabled)h(b)m
13829(y)f(default.)630 4902 y Ft(varredir_close)1110 5011
5e6f45d9 13830y Fu(If)i(set,)h(the)f(shell)h(automatically)i(closes)e(\014le)f
e2520247 13831(descriptors)g(assigned)g(using)1110 5121 y(the)40 b
5e6f45d9 13832Ft({varname})c Fu(redirection)k(syn)m(tax)g(\(see)h(Section)f(3.6)g
e2520247
CR
13833([Redirections],)1110 5230 y(page)h(39\))f(instead)h(of)e(lea)m(ving)j
13834(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 5340
13835y(pletes.)p eop end
d052bd6f 13836%%Page: 79 85
e2520247
CR
13837TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(4:)41
13838b(Shell)30 b(Builtin)h(Commands)2069 b(79)630 299 y Ft(xpg_echo)96
13839b Fu(If)31 b(set,)h(the)g Ft(echo)e Fu(builtin)h(expands)f(bac)m
13840(kslash-escap)s(e)j(sequences)f(b)m(y)f(de-)1110 408
13841y(fault.)150 649 y Fs(4.4)68 b(Sp)t(ecial)45 b(Builtins)150
13842809 y Fu(F)-8 b(or)35 b(historical)h(reasons,)g(the)e
13843Fm(posix)g Fu(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e
13844(commands)g(as)h Fl(sp)-5 b(e-)150 918 y(cial)p Fu(.)47
13845b(When)33 b(Bash)f(is)h(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g
13846(sp)s(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150
138471028 y(commands)e(in)g(three)h(resp)s(ects:)199 1162
13848y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h
13849(functions)f(during)f(command)h(lo)s(okup.)199 1297 y(2.)61
13850b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g(status,)h
13851(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 1431
13852y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f(command)
13853g(sta)m(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m(t)330
138541541 y(after)i(the)f(command)h(completes.)275 1700 y(When)36
13855b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f Fu(mo)s(de,)j(these)f
13856(builtins)f(b)s(eha)m(v)m(e)h(no)f(di\013eren)m(tly)h(than)150
138571810 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
13858b(The)30 b(Bash)g Fm(posix)g Fu(mo)s(de)g(is)g(describ)s(ed)f(in)h
13859(Section)h(6.11)150 1919 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(108.)275
138602054 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h(builtins:)390
138612188 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
13862(readonly)f(return)h(set)390 2298 y(shift)g(trap)h(unset)p
13863eop end
13864%%Page: 80 86
13865TeXDict begin 80 85 bop 3659 -116 a Fu(80)150 299 y Fp(5)80
091c6bc4 13866b(Shell)53 b(V)-13 b(ariables)150 504 y Fu(This)21 b(c)m(hapter)i
c302751c
CR
13867(describ)s(es)e(the)i(shell)f(v)-5 b(ariables)23 b(that)f(Bash)h(uses.)
1386837 b(Bash)23 b(automatically)h(assigns)f(default)150
091c6bc4
CR
13869614 y(v)-5 b(alues)31 b(to)g(a)g(n)m(um)m(b)s(er)e(of)h(v)-5
13870b(ariables.)150 843 y Fs(5.1)68 b(Bourne)45 b(Shell)g(V)-11
13871b(ariables)150 1003 y Fu(Bash)30 b(uses)g(certain)h(shell)g(v)-5
c302751c 13872b(ariables)31 b(in)f(the)g(same)h(w)m(a)m(y)g(as)g(the)f(Bourne)g
091c6bc4 13873(shell.)41 b(In)30 b(some)g(cases,)i(Bash)150 1112 y(assigns)f(a)f
c302751c 13874(default)h(v)-5 b(alue)31 b(to)g(the)f(v)-5 b(ariable.)150
091c6bc4 138751260 y Ft(CDPATH)192 b Fu(A)39 b(colon-separated)i(list)e(of)g
c302751c 13876(directories)h(used)f(as)g(a)g(searc)m(h)h(path)e(for)h(the)g
091c6bc4 13877Ft(cd)f Fu(builtin)630 1370 y(command.)150 1518 y Ft(HOME)288
6e51e0d0
CR
13878b Fu(The)23 b(curren)m(t)h(user's)f(home)g(directory;)k(the)d(default)g
13879(for)f(the)h Ft(cd)f Fu(builtin)g(command.)38 b(The)630
091c6bc4 138801628 y(v)-5 b(alue)37 b(of)f(this)g(v)-5 b(ariable)37
37c41ab1 13881b(is)g(also)g(used)e(b)m(y)h(tilde)h(expansion)f(\(see)i(Section)f
e59452c7 13882(3.5.2)h([Tilde)630 1737 y(Expansion],)30 b(page)h(25\).)150
091c6bc4 138831885 y Ft(IFS)336 b Fu(A)25 b(list)i(of)e(c)m(haracters)i(that)f
37c41ab1 13884(separate)g(\014elds;)h(used)e(when)f(the)i(shell)f(splits)h(w)m(ords)e
091c6bc4 13885(as)i(part)630 1995 y(of)31 b(expansion.)150 2143 y Ft(MAIL)288
6e51e0d0 13886b Fu(If)44 b(this)g(parameter)h(is)g(set)g(to)g(a)f(\014lename)h(or)f
091c6bc4 13887(directory)h(name)g(and)f(the)g Ft(MAILPATH)630 2252
6e51e0d0 13888y Fu(v)-5 b(ariable)32 b(is)e(not)h(set,)h(Bash)f(informs)f(the)h(user)
e05be32d 13889f(of)h(the)g(arriv)-5 b(al)31 b(of)g(mail)g(in)g(the)g(sp)s(eci\014ed)
091c6bc4
CR
13890630 2362 y(\014le)f(or)h(Maildir-format)g(directory)-8
13891b(.)150 2510 y Ft(MAILPATH)96 b Fu(A)33 b(colon-separated)i(list)f(of)f
37c41ab1 13892(\014lenames)h(whic)m(h)f(the)g(shell)g(p)s(erio)s(dically)h(c)m(hec)m
091c6bc4 13893(ks)g(for)f(new)630 2619 y(mail.)60 b(Eac)m(h)37 b(list)g(en)m(try)g
37c41ab1 13894(can)g(sp)s(ecify)f(the)h(message)h(that)f(is)g(prin)m(ted)f(when)f
091c6bc4 13895(new)h(mail)630 2729 y(arriv)m(es)31 b(in)g(the)g(mail)g(\014le)g(b)m
122f603c 13896(y)g(separating)h(the)f(\014lename)g(from)f(the)h(message)h(with)e(a)i
091c6bc4 13897(`)p Ft(?)p Fu('.)630 2839 y(When)g(used)f(in)h(the)g(text)i(of)e(the)g
6e51e0d0 13898(message,)i Ft($_)e Fu(expands)f(to)i(the)f(name)g(of)h(the)f(curren)m
091c6bc4 13899(t)630 2948 y(mail)f(\014le.)150 3096 y Ft(OPTARG)192
6e51e0d0
CR
13900b Fu(The)30 b(v)-5 b(alue)31 b(of)f(the)h(last)g(option)g(argumen)m(t)g
13901(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f Fu(builtin.)150
091c6bc4 139023244 y Ft(OPTIND)192 b Fu(The)30 b(index)g(of)g(the)h(last)g(option)g
6e51e0d0 13903(argumen)m(t)g(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f
091c6bc4 13904Fu(builtin.)150 3392 y Ft(PATH)288 b Fu(A)32 b(colon-separated)i(list)f
37c41ab1 13905(of)f(directories)h(in)e(whic)m(h)h(the)g(shell)g(lo)s(oks)h(for)f
091c6bc4 13906(commands.)45 b(A)630 3502 y(zero-length)e(\(n)m(ull\))g(directory)f
6e51e0d0 13907(name)g(in)g(the)g(v)-5 b(alue)42 b(of)g Ft(PATH)f Fu(indicates)i(the)f
091c6bc4 13908(curren)m(t)630 3611 y(directory)-8 b(.)49 b(A)33 b(n)m(ull)f
37c41ab1 13909(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
13910(colons,)g(or)f(as)g(an)630 3721 y(initial)f(or)e(trailing)h(colon.)150
139113869 y Ft(PS1)336 b Fu(The)35 b(primary)f(prompt)h(string.)55
6e51e0d0 13912b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Ft(\\s-\\v\\$)28
e59452c7 13913b Fu('.)56 b(See)36 b(Section)g(6.9)630 3979 y([Con)m(trolling)i(the)e
e2520247 13914(Prompt],)i(page)f(106,)i(for)d(the)h(complete)h(list)e(of)h(escap)s(e)
e59452c7
CR
13915g(sequences)630 4088 y(that)31 b(are)g(expanded)e(b)s(efore)h
13916Ft(PS1)g Fu(is)g(displa)m(y)m(ed.)150 4236 y Ft(PS2)336
124d67cd
CR
13917b Fu(The)28 b(secondary)g(prompt)g(string.)40 b(The)28
13918b(default)g(v)-5 b(alue)29 b(is)g(`)p Ft(>)h Fu('.)40
091c6bc4 13919b Ft(PS2)28 b Fu(is)g(expanded)g(in)g(the)630 4346 y(same)j(w)m(a)m(y)g
124d67cd 13920(as)g Ft(PS1)e Fu(b)s(efore)h(b)s(eing)g(displa)m(y)m(ed.)150
091c6bc4 139214575 y Fs(5.2)68 b(Bash)45 b(V)-11 b(ariables)150 4734
6e51e0d0 13922y Fu(These)45 b(v)-5 b(ariables)46 b(are)g(set)g(or)f(used)f(b)m(y)h
c302751c 13923(Bash,)50 b(but)44 b(other)i(shells)f(do)h(not)f(normally)h(treat)g
091c6bc4 13924(them)150 4844 y(sp)s(ecially)-8 b(.)275 4973 y(A)24
c302751c
CR
13925b(few)g(v)-5 b(ariables)24 b(used)g(b)m(y)f(Bash)i(are)f(describ)s(ed)f
13926(in)h(di\013eren)m(t)g(c)m(hapters:)38 b(v)-5 b(ariables)25
091c6bc4 13927b(for)f(con)m(trolling)150 5082 y(the)31 b(job)f(con)m(trol)h
37c41ab1 13928(facilities)i(\(see)e(Section)g(7.3)h([Job)e(Con)m(trol)h(V)-8
e2520247 13929b(ariables],)32 b(page)g(120\).)150 5230 y Ft(_)432 b
d37a4722
CR
13930Fu(\($)p 716 5230 28 4 v 41 w(,)34 b(an)g(underscore.\))49
13931b(A)m(t)35 b(shell)f(startup,)g(set)g(to)g(the)g(pathname)f(used)g(to)h
13932(in)m(v)m(ok)m(e)i(the)630 5340 y(shell)e(or)g(shell)h(script)f(b)s
13933(eing)f(executed)j(as)e(passed)g(in)f(the)i(en)m(vironmen)m(t)f(or)g
13934(argumen)m(t)p eop end
e2520247
CR
13935%%Page: 81 87
13936TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(5:)41
13937b(Shell)30 b(V)-8 b(ariables)2459 b(81)630 299 y(list.)55
d37a4722
CR
13938b(Subsequen)m(tly)-8 b(,)35 b(expands)f(to)i(the)f(last)g(argumen)m(t)h
13939(to)f(the)g(previous)f(simple)h(com-)630 408 y(mand)21
13940b(executed)i(in)e(the)i(foreground,)g(after)f(expansion.)38
13941b(Also)22 b(set)h(to)f(the)g(full)g(pathname)630 518
13942y(used)h(to)i(in)m(v)m(ok)m(e)h(eac)m(h)g(command)e(executed)h(and)f
13943(placed)g(in)g(the)g(en)m(vironmen)m(t)h(exp)s(orted)630
13944628 y(to)33 b(that)g(command.)45 b(When)32 b(c)m(hec)m(king)i(mail,)g
13945(this)e(parameter)g(holds)g(the)g(name)g(of)h(the)630
13946737 y(mail)e(\014le.)150 920 y Ft(BASH)288 b Fu(The)30
13947b(full)g(pathname)g(used)g(to)h(execute)h(the)e(curren)m(t)g(instance)h
13948(of)g(Bash.)150 1103 y Ft(BASHOPTS)96 b Fu(A)31 b(colon-separated)h
13949(list)f(of)g(enabled)f(shell)h(options.)41 b(Eac)m(h)31
13950b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5 b(alid)630
139511212 y(argumen)m(t)37 b(for)g(the)g Ft(-s)f Fu(option)i(to)f(the)g
13952Ft(shopt)f Fu(builtin)g(command)h(\(see)g(Section)h(4.3.2)630
e2520247 139531322 y([The)e(Shopt)g(Builtin],)i(page)f(72\).)60 b(The)36
091c6bc4
CR
13954b(options)h(app)s(earing)f(in)g Ft(BASHOPTS)e Fu(are)i(those)630
139551431 y(rep)s(orted)e(as)h(`)p Ft(on)p Fu(')f(b)m(y)h(`)p
13956Ft(shopt)p Fu('.)53 b(If)34 b(this)g(v)-5 b(ariable)36
13957b(is)f(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)630
139581541 y(starts)25 b(up,)f(eac)m(h)i(shell)e(option)h(in)e(the)i(list)g
8f714a7c 13959(will)f(b)s(e)g(enabled)g(b)s(efore)g(reading)g(an)m(y)g(startup)630
091c6bc4
CR
139601650 y(\014les.)41 b(This)29 b(v)-5 b(ariable)31 b(is)g(readonly)-8
13961b(.)150 1833 y Ft(BASHPID)144 b Fu(Expands)35 b(to)i(the)f(pro)s(cess)f
e05be32d 13962(ID)i(of)f(the)g(curren)m(t)g(Bash)g(pro)s(cess.)58 b(This)35
091c6bc4 13963b(di\013ers)h(from)g Ft($$)630 1943 y Fu(under)31 b(certain)j
8f714a7c 13964(circumstances,)h(suc)m(h)e(as)g(subshells)f(that)i(do)f(not)g(require)
091c6bc4 13965g(Bash)g(to)h(b)s(e)630 2052 y(re-initialized.)57 b(Assignmen)m(ts)35
7e92fb35 13966b(to)h Ft(BASHPID)d Fu(ha)m(v)m(e)j(no)f(e\013ect.)56
091c6bc4 13967b(If)34 b Ft(BASHPID)f Fu(is)i(unset,)h(it)630 2162 y(loses)31
7e92fb35 13968b(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
091c6bc4
CR
13969(subsequen)m(tly)f(reset.)150 2345 y Ft(BASH_ALIASES)630
139702454 y Fu(An)40 b(asso)s(ciativ)m(e)j(arra)m(y)d(v)-5
7e92fb35 13971b(ariable)41 b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m
091c6bc4 13972(ternal)h(list)630 2564 y(of)c(aliases)h(as)f(main)m(tained)g(b)m(y)g
7e92fb35 13973(the)g Ft(alias)e Fu(builtin.)59 b(\(see)37 b(Section)h(4.1)f([Bourne)g
e2520247 13974(Shell)630 2673 y(Builtins],)31 b(page)g(49\).)42 b(Elemen)m(ts)31
7e92fb35 13975b(added)e(to)i(this)f(arra)m(y)h(app)s(ear)f(in)g(the)g(alias)h(list;)h
091c6bc4 13976(ho)m(w-)630 2783 y(ev)m(er,)k(unsetting)f(arra)m(y)g(elemen)m(ts)g
7e92fb35 13977(curren)m(tly)g(do)s(es)f(not)g(cause)h(aliases)h(to)f(b)s(e)f(remo)m
091c6bc4 13978(v)m(ed)630 2892 y(from)25 b(the)h(alias)h(list.)40 b(If)25
7e92fb35 13979b Ft(BASH_ALIASES)d Fu(is)k(unset,)g(it)g(loses)h(its)f(sp)s(ecial)g
091c6bc4
CR
13980(prop)s(erties,)g(ev)m(en)630 3002 y(if)k(it)h(is)g(subsequen)m(tly)f
13981(reset.)150 3185 y Ft(BASH_ARGC)630 3294 y Fu(An)39 b(arra)m(y)g(v)-5
7e92fb35 13982b(ariable)40 b(whose)f(v)-5 b(alues)39 b(are)h(the)f(n)m(um)m(b)s(er)f
d052bd6f
CR
13983(of)h(parameters)g(in)g(eac)m(h)h(frame)630 3404 y(of)h(the)g(curren)m
13984(t)g(Bash)g(execution)h(call)g(stac)m(k.)73 b(The)41
091c6bc4 13985b(n)m(um)m(b)s(er)e(of)i(parameters)g(to)h(the)630 3513
d052bd6f 13986y(curren)m(t)c(subroutine)f(\(shell)i(function)e(or)i(script)f
037a8b7f 13987(executed)h(with)e Ft(.)h Fu(or)g Ft(source)p Fu(\))f(is)h(at)630
091c6bc4 139883623 y(the)27 b(top)g(of)g(the)g(stac)m(k.)41 b(When)27
037a8b7f 13989b(a)g(subroutine)f(is)h(executed,)i(the)e(n)m(um)m(b)s(er)f(of)h
091c6bc4 13990(parameters)630 3733 y(passed)44 b(is)h(pushed)e(on)m(to)j
037a8b7f 13991Ft(BASH_ARGC)p Fu(.)81 b(The)44 b(shell)h(sets)g Ft(BASH_ARGC)e
091c6bc4 13992Fu(only)i(when)e(in)630 3842 y(extended)34 b(debugging)f(mo)s(de)g
e2520247 13993(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g(72,)g(for)
091c6bc4 13994630 3952 y(a)e(description)g(of)f(the)h Ft(extdebug)d
a2851804 13995Fu(option)j(to)h(the)e Ft(shopt)g Fu(builtin\).)47 b(Setting)33
091c6bc4 13996b Ft(extdebug)630 4061 y Fu(after)c(the)g(shell)g(has)g(started)g(to)g
8d125d8b 13997(execute)i(a)e(script,)g(or)g(referencing)g(this)f(v)-5
091c6bc4 13998b(ariable)30 b(when)630 4171 y Ft(extdebug)e Fu(is)j(not)f(set,)h(ma)m
8d125d8b 13999(y)g(result)g(in)f(inconsisten)m(t)h(v)-5 b(alues.)150
d052bd6f
CR
140004354 y Ft(BASH_ARGV)630 4463 y Fu(An)23 b(arra)m(y)g(v)-5
14001b(ariable)24 b(con)m(taining)g(all)g(of)f(the)h(parameters)f(in)g(the)g
14002(curren)m(t)g(Bash)g(execution)630 4573 y(call)35 b(stac)m(k.)53
8d125d8b 14003b(The)34 b(\014nal)g(parameter)g(of)g(the)g(last)h(subroutine)e(call)i
091c6bc4 14004(is)f(at)h(the)f(top)h(of)f(the)630 4682 y(stac)m(k;)28
8d125d8b 14005b(the)c(\014rst)f(parameter)i(of)f(the)g(initial)i(call)f(is)f(at)h
091c6bc4 14006(the)f(b)s(ottom.)39 b(When)24 b(a)g(subroutine)630 4792
8d125d8b 14007y(is)40 b(executed,)j(the)d(parameters)h(supplied)d(are)i(pushed)f(on)m
091c6bc4 14008(to)i Ft(BASH_ARGV)p Fu(.)66 b(The)40 b(shell)630 4902
8d125d8b 14009y(sets)28 b Ft(BASH_ARGV)e Fu(only)i(when)f(in)h(extended)g(debugging)g
091c6bc4 14010(mo)s(de)g(\(see)h(Section)f(4.3.2)i([The)630 5011 y(Shopt)g(Builtin],)
e2520247 14011h(page)g(72,)g(for)g(a)f(description)h(of)f(the)h Ft(extdebug)d
091c6bc4 14012Fu(option)j(to)g(the)f Ft(shopt)630 5121 y Fu(builtin\).)64
8d125d8b 14013b(Setting)38 b Ft(extdebug)e Fu(after)j(the)f(shell)g(has)g(started)g
091c6bc4 14014(to)h(execute)g(a)g(script,)h(or)630 5230 y(referencing)35
8d125d8b 14015b(this)f(v)-5 b(ariable)35 b(when)e Ft(extdebug)f Fu(is)j(not)f(set,)j
091c6bc4
CR
14016(ma)m(y)e(result)f(in)g(inconsisten)m(t)630 5340 y(v)-5
14017b(alues.)p eop end
e2520247
CR
14018%%Page: 82 88
14019TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(5:)41
14020b(Shell)30 b(V)-8 b(ariables)2459 b(82)150 299 y Ft(BASH_ARGV0)630
091c6bc4
CR
14021408 y Fu(When)31 b(referenced,)g(this)g(v)-5 b(ariable)32
14022b(expands)e(to)h(the)h(name)f(of)g(the)g(shell)g(or)g(shell)g(script)
14023630 518 y(\(iden)m(tical)42 b(to)e Ft($0)p Fu(;)j(See)d(Section)g
e59452c7 14024(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)j(page)d(23,)j(for)c(the)h(de-)
091c6bc4
CR
14025630 628 y(scription)32 b(of)g(sp)s(ecial)g(parameter)g(0\).)45
14026b(Assignmen)m(t)32 b(to)h Ft(BASH_ARGV0)c Fu(causes)j(the)f(v)-5
14027b(alue)630 737 y(assigned)34 b(to)h(also)g(b)s(e)e(assigned)h(to)g
14028Ft($0)p Fu(.)51 b(If)33 b Ft(BASH_ARGV0)f Fu(is)h(unset,)i(it)f(loses)h
14029(its)f(sp)s(ecial)630 847 y(prop)s(erties,)c(ev)m(en)h(if)f(it)h(is)g
d37a4722
CR
14030(subsequen)m(tly)f(reset.)150 1048 y Ft(BASH_CMDS)630
140311157 y Fu(An)k(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
091c6bc4 14032b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m(ternal)h
d37a4722 14033(hash)630 1267 y(table)c(of)g(commands)f(as)g(main)m(tained)h(b)m(y)g
091c6bc4 14034(the)f Ft(hash)f Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
e2520247 140351377 y(Shell)42 b(Builtins],)k(page)d(49\).)77 b(Elemen)m(ts)43
8d125d8b 14036b(added)e(to)i(this)f(arra)m(y)h(app)s(ear)f(in)f(the)i(hash)630
d37a4722 140371486 y(table;)k(ho)m(w)m(ev)m(er,)e(unsetting)c(arra)m(y)g(elemen)m(ts)
091c6bc4 14038i(curren)m(tly)d(do)s(es)h(not)g(cause)g(command)630
d37a4722 140391596 y(names)36 b(to)g(b)s(e)f(remo)m(v)m(ed)i(from)e(the)h(hash)f
091c6bc4 14040(table.)58 b(If)36 b Ft(BASH_CMDS)d Fu(is)j(unset,)h(it)f(loses)h(its)
d37a4722
CR
14041630 1705 y(sp)s(ecial)31 b(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
14042(subsequen)m(tly)f(reset.)150 1906 y Ft(BASH_COMMAND)630
140432016 y Fu(The)39 b(command)h(curren)m(tly)g(b)s(eing)f(executed)i(or)e
8d125d8b 14044(ab)s(out)h(to)g(b)s(e)f(executed,)44 b(unless)39 b(the)630
d37a4722 140452125 y(shell)g(is)g(executing)g(a)g(command)g(as)g(the)f(result)h(of)g
8d125d8b 14046(a)g(trap,)i(in)d(whic)m(h)g(case)i(it)f(is)g(the)630
d37a4722 140472235 y(command)30 b(executing)i(at)g(the)f(time)g(of)g(the)g(trap.)41
e2169ae9 14048b(If)30 b Ft(BASH_COMMAND)e Fu(is)i(unset,)h(it)g(loses)630
d37a4722
CR
140492345 y(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)f
14050(subsequen)m(tly)g(reset.)150 2545 y Ft(BASH_COMPAT)630
140512655 y Fu(The)i(v)-5 b(alue)33 b(is)g(used)f(to)h(set)g(the)g(shell's)g
14052(compatibilit)m(y)i(lev)m(el.)49 b(See)33 b(Section)h(6.12)g([Shell)630
e2520247 140532765 y(Compatibilit)m(y)j(Mo)s(de],)h(page)e(113,)i(for)e(a)g
d37a4722
CR
14054(description)g(of)f(the)h(v)-5 b(arious)36 b(compatibilit)m(y)630
140552874 y(lev)m(els)g(and)f(their)g(e\013ects.)55 b(The)34
14056b(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
14057(\(e.g.,)k(4.2\))e(or)f(an)630 2984 y(in)m(teger)44 b(\(e.g.,)j(42\))d
14058(corresp)s(onding)d(to)i(the)g(desired)e(compatibilit)m(y)k(lev)m(el.)
1405978 b(If)42 b Ft(BASH_)630 3093 y(COMPAT)28 b Fu(is)j(unset)e(or)h(set)h
14060(to)g(the)f(empt)m(y)h(string,)f(the)h(compatibilit)m(y)h(lev)m(el)g
14061(is)e(set)h(to)g(the)630 3203 y(default)39 b(for)g(the)g(curren)m(t)g
14062(v)m(ersion.)67 b(If)38 b Ft(BASH_COMPAT)e Fu(is)j(set)h(to)f(a)h(v)-5
14063b(alue)39 b(that)h(is)f(not)630 3313 y(one)31 b(of)f(the)h(v)-5
14064b(alid)31 b(compatibilit)m(y)i(lev)m(els,)f(the)f(shell)f(prin)m(ts)g
14065(an)h(error)f(message)i(and)e(sets)630 3422 y(the)i(compatibilit)m(y)j
14066(lev)m(el)e(to)g(the)g(default)f(for)g(the)g(curren)m(t)g(v)m(ersion.)
1406747 b(The)31 b(v)-5 b(alid)33 b(v)-5 b(alues)630 3532
14068y(corresp)s(ond)31 b(to)i(the)g(compatibilit)m(y)i(lev)m(els)f(describ)
14069s(ed)d(b)s(elo)m(w)i(\(see)g(Section)h(6.12)g([Shell)630
e2520247 140703641 y(Compatibilit)m(y)d(Mo)s(de],)f(page)g(113\).)42
d37a4722
CR
14071b(F)-8 b(or)30 b(example,)h(4.2)f(and)f(42)h(are)g(v)-5
14072b(alid)30 b(v)-5 b(alues)29 b(that)630 3751 y(corresp)s(ond)d(to)i(the)
14073f Ft(compat42)e(shopt)g Fu(option)j(and)e(set)i(the)f(compatibilit)m(y)
14074i(lev)m(el)g(to)f(42.)630 3861 y(The)i(curren)m(t)g(v)m(ersion)h(is)f
14075(also)i(a)e(v)-5 b(alid)31 b(v)-5 b(alue.)150 4061 y
14076Ft(BASH_ENV)96 b Fu(If)28 b(this)g(v)-5 b(ariable)30
967625cd 14077b(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 14078(shell)h(script,)g(its)g(v)-5 b(alue)29 b(is)630 4171
967625cd 14079y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)g(a)h(startup)f(\014le)g
d37a4722 14080(to)h(read)f(b)s(efore)g(executing)i(the)630 4281 y(script.)41
e2520247 14081b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(95.)150
d37a4722 140824482 y Ft(BASH_EXECUTION_STRING)630 4591 y Fu(The)f(command)g(argumen)m
967625cd 14083(t)h(to)g(the)g Ft(-c)e Fu(in)m(v)m(o)s(cation)k(option.)150
e59452c7
CR
140844792 y Ft(BASH_LINENO)630 4902 y Fu(An)38 b(arra)m(y)g(v)-5
14085b(ariable)39 b(whose)f(mem)m(b)s(ers)f(are)i(the)f(line)h(n)m(um)m(b)s
14086(ers)d(in)i(source)g(\014les)g(where)630 5011 y(eac)m(h)h(corresp)s
14087(onding)e(mem)m(b)s(er)g(of)h Ft(FUNCNAME)d Fu(w)m(as)k(in)m(v)m(ok)m
14088(ed.)64 b Ft(${BASH_LINENO[$i]})630 5121 y Fu(is)74 b(the)g(line)h(n)m
14089(um)m(b)s(er)e(in)g(the)i(source)f(\014le)g(\()p Ft
14090(${BASH_SOURCE[$i+1]})p Fu(\))69 b(where)630 5230 y Ft(${FUNCNAME[$i]})
1409132 b Fu(w)m(as)37 b(called)g(\(or)g Ft(${BASH_LINENO[$i-1]})31
14092b Fu(if)36 b(referenced)g(within)630 5340 y(another)31
14093b(shell)f(function\).)41 b(Use)31 b Ft(LINENO)d Fu(to)j(obtain)g(the)g
14094(curren)m(t)f(line)h(n)m(um)m(b)s(er.)p eop end
e2520247
CR
14095%%Page: 83 89
14096TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(5:)41
14097b(Shell)30 b(V)-8 b(ariables)2459 b(83)150 299 y Ft
d37a4722
CR
14098(BASH_LOADABLES_PATH)630 408 y Fu(A)39 b(colon-separated)i(list)f(of)f
14099(directories)h(in)f(whic)m(h)g(the)g(shell)h(lo)s(oks)f(for)g
14100(dynamically)630 518 y(loadable)32 b(builtins)d(sp)s(eci\014ed)h(b)m(y)
14101g(the)h Ft(enable)e Fu(command.)150 673 y Ft(BASH_REMATCH)630
14102783 y Fu(An)43 b(arra)m(y)i(v)-5 b(ariable)44 b(whose)g(mem)m(b)s(ers)f
091c6bc4 14103(are)h(assigned)g(b)m(y)f(the)h(`)p Ft(=~)p Fu(')g(binary)f(op)s
d37a4722
CR
14104(erator)630 892 y(to)37 b(the)f Ft([[)g Fu(conditional)i(command)e
14105(\(see)h(Section)g(3.2.5.2)i([Conditional)e(Constructs],)630
e59452c7 141061002 y(page)e(12\).)52 b(The)33 b(elemen)m(t)j(with)d(index)g(0)i(is)f
091c6bc4 14107(the)g(p)s(ortion)f(of)h(the)g(string)g(matc)m(hing)h(the)630
d37a4722 141081112 y(en)m(tire)29 b(regular)f(expression.)40 b(The)27
091c6bc4 14109b(elemen)m(t)j(with)d(index)h Fr(n)f Fu(is)h(the)g(p)s(ortion)g(of)g
d37a4722
CR
14110(the)g(string)630 1221 y(matc)m(hing)j(the)g Fr(n)p Fu(th)f(paren)m
14111(thesized)h(sub)s(expression.)150 1377 y Ft(BASH_SOURCE)630
141121486 y Fu(An)40 b(arra)m(y)h(v)-5 b(ariable)41 b(whose)f(mem)m(b)s(ers)
091c6bc4 14113g(are)h(the)g(source)f(\014lenames)h(where)f(the)g(corre-)630
d37a4722 141141596 y(sp)s(onding)27 b(shell)i(function)f(names)g(in)g(the)h
8d125d8b 14115Ft(FUNCNAME)d Fu(arra)m(y)j(v)-5 b(ariable)30 b(are)f(de\014ned.)38
d37a4722 14116b(The)630 1705 y(shell)26 b(function)g Ft(${FUNCNAME[$i]})c
8d125d8b 14117Fu(is)k(de\014ned)f(in)g(the)h(\014le)h Ft(${BASH_SOURCE[$i]})21
d37a4722
CR
14118b Fu(and)630 1815 y(called)32 b(from)d Ft(${BASH_SOURCE[$i+1]})150
141191970 y(BASH_SUBSHELL)630 2080 y Fu(Incremen)m(ted)24
091c6bc4 14120b(b)m(y)f(one)h(within)f(eac)m(h)i(subshell)d(or)i(subshell)e(en)m
d37a4722 14121(vironmen)m(t)i(when)f(the)h(shell)630 2189 y(b)s(egins)j(executing)i
091c6bc4
CR
14122(in)e(that)h(en)m(vironmen)m(t.)41 b(The)27 b(initial)i(v)-5
14123b(alue)28 b(is)f(0.)40 b(If)28 b Ft(BASH_SUBSHELL)630
d37a4722 141242299 y Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)
091c6bc4 14125f(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)150
7a8455e4 141262454 y Ft(BASH_VERSINFO)630 2564 y Fu(A)i(readonly)g(arra)m(y)g(v)-5
e2520247 14127b(ariable)32 b(\(see)h(Section)g(6.7)f([Arra)m(ys],)h(page)g(102\))g
7a8455e4 14128(whose)f(mem)m(b)s(ers)630 2673 y(hold)g(v)m(ersion)h(information)f
091c6bc4 14129(for)g(this)g(instance)h(of)g(Bash.)46 b(The)32 b(v)-5
d37a4722
CR
14130b(alues)32 b(assigned)h(to)g(the)630 2783 y(arra)m(y)e(mem)m(b)s(ers)e
14131(are)i(as)g(follo)m(ws:)630 2938 y Ft(BASH_VERSINFO[0])1110
141323048 y Fu(The)f(ma)5 b(jor)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
14133Fr(release)5 b Fu(\).)630 3203 y Ft(BASH_VERSINFO[1])1110
141343313 y Fu(The)30 b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
14135Fr(v)m(ersion)p Fu(\).)630 3468 y Ft(BASH_VERSINFO[2])1110
141363577 y Fu(The)f(patc)m(h)h(lev)m(el.)630 3733 y Ft(BASH_VERSINFO[3])
141371110 3842 y Fu(The)f(build)f(v)m(ersion.)630 3998 y Ft
14138(BASH_VERSINFO[4])1110 4107 y Fu(The)h(release)i(status)e(\(e.g.,)j
e59452c7
CR
14139Ft(beta1)p Fu(\).)630 4262 y Ft(BASH_VERSINFO[5])1110
141404372 y Fu(The)d(v)-5 b(alue)31 b(of)f Ft(MACHTYPE)p Fu(.)150
141414527 y Ft(BASH_VERSION)630 4637 y Fu(The)g(v)m(ersion)h(n)m(um)m(b)s
14142(er)e(of)h(the)h(curren)m(t)f(instance)h(of)g(Bash.)150
d37a4722 141434792 y Ft(BASH_XTRACEFD)630 4902 y Fu(If)f(set)h(to)h(an)e(in)m(teger)i
8f714a7c 14144(corresp)s(onding)e(to)h(a)g(v)-5 b(alid)31 b(\014le)g(descriptor,)g
d37a4722 14145(Bash)g(will)g(write)g(the)630 5011 y(trace)37 b(output)f(generated)h
6e51e0d0 14146(when)f(`)p Ft(set)29 b(-x)p Fu(')36 b(is)g(enabled)h(to)g(that)f
d37a4722 14147(\014le)h(descriptor.)58 b(This)630 5121 y(allo)m(ws)29
8f714a7c 14148b(tracing)h(output)d(to)i(b)s(e)f(separated)g(from)g(diagnostic)h(and)f
d37a4722 14149(error)f(messages.)41 b(The)630 5230 y(\014le)31 b(descriptor)f(is)h
6e51e0d0 14150(closed)g(when)f Ft(BASH_XTRACEFD)d Fu(is)k(unset)f(or)g(assigned)h(a)g
d37a4722 14151(new)f(v)-5 b(alue.)630 5340 y(Unsetting)45 b Ft(BASH_XTRACEFD)40
6e51e0d0 14152b Fu(or)k(assigning)g(it)g(the)g(empt)m(y)h(string)e(causes)i(the)f
d37a4722 14153(trace)p eop end
e2520247
CR
14154%%Page: 84 90
14155TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(5:)41
14156b(Shell)30 b(V)-8 b(ariables)2459 b(84)630 299 y(output)33
d37a4722
CR
14157b(to)i(b)s(e)d(sen)m(t)j(to)f(the)g(standard)e(error.)50
14158b(Note)35 b(that)g(setting)f Ft(BASH_XTRACEFD)c Fu(to)630
14159408 y(2)39 b(\(the)h(standard)e(error)g(\014le)h(descriptor\))h(and)e
14160(then)h(unsetting)g(it)g(will)g(result)g(in)g(the)630
14161518 y(standard)30 b(error)g(b)s(eing)f(closed.)150 664
14162y Ft(CHILD_MAX)630 774 y Fu(Set)35 b(the)h(n)m(um)m(b)s(er)e(of)h
14163(exited)h(c)m(hild)g(status)f(v)-5 b(alues)36 b(for)f(the)g(shell)g(to)
14164h(remem)m(b)s(er.)55 b(Bash)630 883 y(will)37 b(not)g(allo)m(w)i(this)e
14165(v)-5 b(alue)37 b(to)h(b)s(e)e(decreased)i(b)s(elo)m(w)f(a)g
14166Fm(posix)p Fu(-mandated)f(minim)m(um,)630 993 y(and)30
091c6bc4
CR
14167b(there)g(is)g(a)h(maxim)m(um)f(v)-5 b(alue)30 b(\(curren)m(tly)h
14168(8192\))h(that)f(this)f(ma)m(y)g(not)h(exceed.)41 b(The)630
d37a4722
CR
141691103 y(minim)m(um)30 b(v)-5 b(alue)30 b(is)h(system-dep)s(enden)m(t.)
14170150 1249 y Ft(COLUMNS)144 b Fu(Used)32 b(b)m(y)f(the)h
14171Ft(select)e Fu(command)h(to)i(determine)f(the)f(terminal)i(width)d
14172(when)h(prin)m(ting)630 1358 y(selection)39 b(lists.)63
14173b(Automatically)41 b(set)d(if)f(the)h Ft(checkwinsize)d
14174Fu(option)j(is)f(enabled)h(\(see)630 1468 y(Section)44
e2520247 14175b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d(72\),)k(or)43
d37a4722
CR
14176b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630 1577
14177y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 1724 y
14178Ft(COMP_CWORD)630 1833 y Fu(An)38 b(index)g(in)m(to)h
8d125d8b 14179Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
d37a4722 14180(curren)m(t)g(cursor)g(p)s(o-)630 1943 y(sition.)72 b(This)40
8d125d8b
CR
14181b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)43 b(only)e(in)f(shell)h
14182(functions)f(in)m(v)m(ok)m(ed)i(b)m(y)e(the)h(pro-)630
d37a4722 141832052 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g
e2520247 14184([Programmable)g(Completion],)630 2162 y(page)31 b(147\).)150
d37a4722 141852308 y Ft(COMP_LINE)630 2418 y Fu(The)38 b(curren)m(t)h(command)f
8d125d8b 14186(line.)66 b(This)37 b(v)-5 b(ariable)40 b(is)f(a)m(v)-5
d37a4722 14187b(ailable)41 b(only)d(in)h(shell)f(functions)630 2527
8d125d8b 14188y(and)25 b(external)h(commands)f(in)m(v)m(ok)m(ed)h(b)m(y)f(the)h
d37a4722 14189(programmable)f(completion)i(facilities)g(\(see)630 2637
e2520247 14190y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(147\).)150
d37a4722 141912783 y Ft(COMP_POINT)630 2892 y Fu(The)25 b(index)g(of)h(the)g(curren)m
7e92fb35 14192(t)f(cursor)g(p)s(osition)h(relativ)m(e)i(to)e(the)g(b)s(eginning)f(of)
d37a4722 14193g(the)h(curren)m(t)630 3002 y(command.)40 b(If)27 b(the)h(curren)m(t)g
7e92fb35 14194(cursor)g(p)s(osition)g(is)g(at)g(the)g(end)g(of)g(the)g(curren)m(t)g
d37a4722 14195(command,)630 3112 y(the)i(v)-5 b(alue)30 b(of)g(this)g(v)-5
7e92fb35
CR
14196b(ariable)31 b(is)f(equal)g(to)h Ft(${#COMP_LINE})p Fu(.)37
14197b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630
d37a4722
CR
141983221 y(only)36 b(in)f(shell)h(functions)f(and)g(external)h(commands)g
14199(in)m(v)m(ok)m(ed)h(b)m(y)e(the)h(programmable)630 3331
7e92fb35 14200y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g
e2520247 14201(Completion],)h(page)f(147\).)150 3477 y Ft(COMP_TYPE)630
d37a4722 142023587 y Fu(Set)c(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
7e92fb35 14203b(corresp)s(onding)e(to)h(the)h(t)m(yp)s(e)f(of)g(completion)h
e59452c7
CR
14204(attempted)g(that)630 3696 y(caused)j(a)g(completion)h(function)e(to)h
14205(b)s(e)f(called:)43 b Ft(TAB)p Fu(,)30 b(for)g(normal)h(completion,)h
14206(`)p Ft(?)p Fu(',)f(for)630 3806 y(listing)k(completions)h(after)f
14207(successiv)m(e)g(tabs,)h(`)p Ft(!)p Fu(',)g(for)e(listing)h(alternativ)
14208m(es)i(on)d(partial)630 3915 y(w)m(ord)22 b(completion,)k(`)p
14209Ft(@)p Fu(',)f(to)e(list)g(completions)h(if)f(the)g(w)m(ord)f(is)h(not)
14210g(unmo)s(di\014ed,)f(or)h(`)p Ft(\045)p Fu(',)h(for)630
142114025 y(men)m(u)i(completion.)41 b(This)25 b(v)-5 b(ariable)27
14212b(is)g(a)m(v)-5 b(ailable)28 b(only)f(in)f(shell)g(functions)g(and)g
14213(external)630 4134 y(commands)32 b(in)m(v)m(ok)m(ed)i(b)m(y)e(the)g
14214(programmable)h(completion)g(facilities)i(\(see)e(Section)g(8.6)630
e2520247 142154244 y([Programmable)e(Completion],)h(page)f(147\).)150
d37a4722 142164390 y Ft(COMP_KEY)96 b Fu(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
d3ad40de 14217(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
14218(curren)m(t)g(completion)630 4500 y(function.)150 4646
14219y Ft(COMP_WORDBREAKS)630 4756 y Fu(The)f(set)i(of)e(c)m(haracters)j
d3ad40de 14220(that)e(the)g(Readline)g(library)g(treats)g(as)g(w)m(ord)g(separators)g
d37a4722 14221(when)630 4865 y(p)s(erforming)i(w)m(ord)h(completion.)51
6e51e0d0 14222b(If)33 b Ft(COMP_WORDBREAKS)c Fu(is)34 b(unset,)g(it)f(loses)i(its)e
d37a4722
CR
14223(sp)s(ecial)630 4975 y(prop)s(erties,)d(ev)m(en)h(if)f(it)h(is)g
14224(subsequen)m(tly)f(reset.)150 5121 y Ft(COMP_WORDS)630
142255230 y Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(consisting)g(of)f(the)
d3ad40de 14226g(individual)f(w)m(ords)h(in)f(the)h(curren)m(t)g(command)630
d37a4722
CR
142275340 y(line.)94 b(The)47 b(line)i(is)f(split)g(in)m(to)h(w)m(ords)e(as)
14228h(Readline)h(w)m(ould)f(split)g(it,)53 b(using)47 b Ft(COMP_)p
091c6bc4 14229eop end
e2520247
CR
14230%%Page: 85 91
14231TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41
14232b(Shell)30 b(V)-8 b(ariables)2459 b(85)630 299 y Ft(WORDBREAKS)34
d37a4722
CR
14233b Fu(as)i(describ)s(ed)g(ab)s(o)m(v)m(e.)60 b(This)36
14234b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39 b(only)e(in)f(shell)h
14235(func-)630 408 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)m(y)d(the)i
14236(programmable)f(completion)h(facilities)h(\(see)f(Section)g(8.6)g
e2520247 14237([Pro-)630 518 y(grammable)e(Completion],)g(page)g(147\).)150
d37a4722
CR
14238676 y Ft(COMPREPLY)630 786 y Fu(An)37 b(arra)m(y)h(v)-5
14239b(ariable)38 b(from)f(whic)m(h)g(Bash)g(reads)g(the)h(p)s(ossible)e
14240(completions)j(generated)630 896 y(b)m(y)33 b(a)g(shell)h(function)f
14241(in)m(v)m(ok)m(ed)h(b)m(y)f(the)g(programmable)h(completion)g(facilit)m
14242(y)h(\(see)f(Sec-)630 1005 y(tion)g(8.6)g([Programmable)g(Completion],)
e2520247 14243h(page)f(147\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
d37a4722
CR
14244630 1115 y(one)c(p)s(ossible)f(completion.)150 1273 y
14245Ft(COPROC)192 b Fu(An)27 b(arra)m(y)g(v)-5 b(ariable)28
14246b(created)g(to)f(hold)g(the)g(\014le)g(descriptors)g(for)g(output)f
14247(from)h(and)f(input)630 1383 y(to)31 b(an)f(unnamed)f(copro)s(cess)i
e59452c7 14248(\(see)g(Section)h(3.2.6)g([Copro)s(cesses],)f(page)g(18\).)150
d37a4722
CR
142491541 y Ft(DIRSTACK)96 b Fu(An)26 b(arra)m(y)h(v)-5 b(ariable)28
14250b(con)m(taining)g(the)f(curren)m(t)f(con)m(ten)m(ts)j(of)e(the)f
14251(directory)i(stac)m(k.)41 b(Direc-)630 1650 y(tories)33
14252b(app)s(ear)f(in)g(the)h(stac)m(k)h(in)e(the)h(order)f(they)h(are)g
14253(displa)m(y)m(ed)g(b)m(y)f(the)h Ft(dirs)e Fu(builtin.)630
142541760 y(Assigning)f(to)h(mem)m(b)s(ers)f(of)g(this)g(arra)m(y)g(v)-5
14255b(ariable)31 b(ma)m(y)g(b)s(e)e(used)h(to)h(mo)s(dify)e(directories)630
142561870 y(already)41 b(in)f(the)h(stac)m(k,)k(but)40 b(the)h
14257Ft(pushd)e Fu(and)h Ft(popd)f Fu(builtins)h(m)m(ust)h(b)s(e)e(used)h
14258(to)i(add)630 1979 y(and)37 b(remo)m(v)m(e)h(directories.)63
14259b(Assignmen)m(t)37 b(to)h(this)f(v)-5 b(ariable)38 b(will)g(not)f(c)m
14260(hange)i(the)e(cur-)630 2089 y(ren)m(t)c(directory)-8
14261b(.)47 b(If)32 b Ft(DIRSTACK)e Fu(is)i(unset,)g(it)h(loses)g(its)g(sp)s
14262(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)630
142632198 y(subsequen)m(tly)d(reset.)150 2357 y Ft(EMACS)240
14264b Fu(If)31 b(Bash)h(\014nds)d(this)j(v)-5 b(ariable)32
14265b(in)f(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)f(starts)h(with)f
14266(v)-5 b(alue)630 2466 y(`)p Ft(t)p Fu(',)36 b(it)f(assumes)f(that)h
14267(the)g(shell)f(is)h(running)e(in)h(an)g(Emacs)h(shell)g(bu\013er)e(and)
14268h(disables)630 2576 y(line)d(editing.)150 2734 y Ft(ENV)336
e9c75143
CR
14269b Fu(Expanded)33 b(and)h(executed)i(similarly)f(to)g
14270Ft(BASH_ENV)d Fu(\(see)k(Section)f(6.2)h([Bash)f(Startup)630
e2520247 142712844 y(Files],)k(page)e(95\))h(when)d(an)h(in)m(teractiv)m(e)j(shell)d
e9c75143 14272(is)h(in)m(v)m(ok)m(ed)g(in)f Fm(posix)g Fu(Mo)s(de)g(\(see)h(Sec-)630
e2520247 142732953 y(tion)31 b(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(108\).)150
e9c75143 142743112 y Ft(EPOCHREALTIME)630 3221 y Fu(Eac)m(h)38 b(time)f(this)g
d37a4722 14275(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)f(n)m(um)m(b)s
e9c75143
CR
14276(er)f(of)h(seconds)630 3331 y(since)f(the)g(Unix)f(Ep)s(o)s(c)m(h)g(as)
14277h(a)g(\015oating)h(p)s(oin)m(t)f(v)-5 b(alue)36 b(with)f(micro-second)i
14278(gran)m(ularit)m(y)630 3440 y(\(see)k(the)g(do)s(cumen)m(tation)h(for)e
14279(the)h(C)f(library)g(function)g Ft(time)g Fu(for)g(the)h(de\014nition)f
14280(of)630 3550 y(Ep)s(o)s(c)m(h\).)82 b(Assignmen)m(ts)44
14281b(to)h Ft(EPOCHREALTIME)c Fu(are)j(ignored.)83 b(If)43
14282b Ft(EPOCHREALTIME)e Fu(is)630 3660 y(unset,)30 b(it)h(loses)g(its)g
14283(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m
14284(tly)f(reset.)150 3818 y Ft(EPOCHSECONDS)630 3927 y Fu(Eac)m(h)38
14285b(time)f(this)g(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)
14286f(n)m(um)m(b)s(er)f(of)h(seconds)630 4037 y(since)d(the)g(Unix)g(Ep)s
14287(o)s(c)m(h)f(\(see)i(the)f(do)s(cumen)m(tation)h(for)e(the)i(C)e
14288(library)h(function)f Ft(time)630 4147 y Fu(for)41 b(the)g
14289(de\014nition)g(of)h(Ep)s(o)s(c)m(h\).)73 b(Assignmen)m(ts)41
14290b(to)h Ft(EPOCHSECONDS)c Fu(are)k(ignored.)73 b(If)630
142914256 y Ft(EPOCHSECONDS)27 b Fu(is)j(unset,)g(it)g(loses)h(its)g(sp)s
14292(ecial)f(prop)s(erties,)g(ev)m(en)h(if)f(it)g(is)g(subsequen)m(tly)630
142934366 y(reset.)150 4524 y Ft(EUID)288 b Fu(The)30 b(n)m(umeric)g
14294(e\013ectiv)m(e)j(user)d(id)g(of)g(the)h(curren)m(t)f(user.)40
14295b(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150
142964682 y Ft(EXECIGNORE)630 4792 y Fu(A)29 b(colon-separated)h(list)f(of)g
14297(shell)g(patterns)f(\(see)i(Section)f(3.5.8.1)i([P)m(attern)f(Matc)m
e2520247 14298(hing],)630 4902 y(page)j(37\))g(de\014ning)e(the)h(list)g(of)g
e9c75143
CR
14299(\014lenames)g(to)g(b)s(e)g(ignored)g(b)m(y)f(command)h(searc)m(h)g
14300(using)630 5011 y Ft(PATH)p Fu(.)k(Files)22 b(whose)f(full)g(pathnames)
14301g(matc)m(h)h(one)f(of)g(these)h(patterns)e(are)i(not)f(considered)630
d514a087
CR
143025121 y(executable)j(\014les)e(for)g(the)h(purp)s(oses)d(of)j
14303(completion)h(and)d(command)i(execution)g(via)g Ft(PATH)630
143045230 y Fu(lo)s(okup.)56 b(This)35 b(do)s(es)g(not)h(a\013ect)i(the)d(b)
14305s(eha)m(vior)h(of)g(the)g Ft([)p Fu(,)h Ft(test)p Fu(,)f(and)f
14306Ft([[)g Fu(commands.)630 5340 y(F)-8 b(ull)42 b(pathnames)e(in)h(the)g
14307(command)g(hash)f(table)i(are)g(not)f(sub)5 b(ject)41
14308b(to)g Ft(EXECIGNORE)p Fu(.)p eop end
e2520247
CR
14309%%Page: 86 92
14310TeXDict begin 86 91 bop 150 -116 a Fu(Chapter)30 b(5:)41
14311b(Shell)30 b(V)-8 b(ariables)2459 b(86)630 299 y(Use)30
d514a087
CR
14312b(this)f(v)-5 b(ariable)30 b(to)g(ignore)g(shared)f(library)g(\014les)g
14313(that)h(ha)m(v)m(e)h(the)f(executable)h(bit)e(set,)630
14314408 y(but)36 b(are)h(not)g(executable)i(\014les.)60 b(The)36
14315b(pattern)h(matc)m(hing)h(honors)e(the)h(setting)h(of)f(the)630
e2520247 14316518 y Ft(extglob)28 b Fu(shell)j(option.)150 692 y Ft(FCEDIT)192
d514a087
CR
14317b Fu(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f
14318Ft(-e)g Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)150
e2520247 14319866 y Ft(FIGNORE)144 b Fu(A)35 b(colon-separated)i(list)f(of)g
d37a4722 14320(su\016xes)e(to)i(ignore)g(when)e(p)s(erforming)g(\014lename)i(comple-)
e2520247 14321630 976 y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i
d37a4722 14322(one)f(of)g(the)g(en)m(tries)g(in)g Ft(FIGNORE)d Fu(is)j(excluded)630
e2520247 143231085 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
091c6bc4 14324b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Ft(.o:~)p
e2520247 14325Fu(')150 1259 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
091c6bc4 14326b(ariable)36 b(con)m(taining)h(the)f(names)g(of)g(all)g(shell)g
e2520247 14327(functions)g(curren)m(tly)f(in)h(the)630 1369 y(execution)g(call)h
d37a4722 14328(stac)m(k.)57 b(The)34 b(elemen)m(t)j(with)e(index)g(0)h(is)f(the)g
e2520247 14329(name)h(of)f(an)m(y)h(curren)m(tly-)630 1479 y(executing)f(shell)f
d37a4722 14330(function.)51 b(The)34 b(b)s(ottom-most)h(elemen)m(t)g(\(the)g(one)f
e2520247 14331(with)g(the)g(highest)630 1588 y(index\))e(is)h Ft("main")p
d37a4722 14332Fu(.)44 b(This)32 b(v)-5 b(ariable)33 b(exists)g(only)g(when)e(a)i
e2520247 14333(shell)f(function)g(is)g(executing.)630 1698 y(Assignmen)m(ts)23
091c6bc4
CR
14334b(to)f Ft(FUNCNAME)e Fu(ha)m(v)m(e)k(no)e(e\013ect.)39
14335b(If)22 b Ft(FUNCNAME)e Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)
e2520247
CR
14336630 1807 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m
14337(tly)f(reset.)630 1949 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)
091c6bc4 14338g(with)g Ft(BASH_LINENO)d Fu(and)j Ft(BASH_SOURCE)p Fu(.)40
e2520247 14339b(Eac)m(h)32 b(elemen)m(t)630 2059 y(of)g Ft(FUNCNAME)d
091c6bc4 14340Fu(has)j(corresp)s(onding)e(elemen)m(ts)j(in)f Ft(BASH_LINENO)c
e2520247 14341Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 2168 y(describ)s(e)39
091c6bc4
CR
14342b(the)h(call)h(stac)m(k.)70 b(F)-8 b(or)41 b(instance,)i
14343Ft(${FUNCNAME[$i]})35 b Fu(w)m(as)41 b(called)f(from)g(the)630
e2520247 143442278 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27
091c6bc4 14345b(line)h(n)m(um)m(b)s(er)d Ft(${BASH_LINENO[$i]})p Fu(.)34
e2520247 14346b(The)27 b Ft(caller)630 2388 y Fu(builtin)j(displa)m(ys)g(the)h
091c6bc4 14347(curren)m(t)f(call)i(stac)m(k)g(using)d(this)i(information.)150
e2520247 143482562 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5
d7935593 14349b(alue)36 b(greater)g(than)e(0,)j(de\014nes)d(a)h(maxim)m(um)g
e2520247 14350(function)g(nesting)630 2671 y(lev)m(el.)42 b(F)-8 b(unction)29
9ec5ed66 14351b(in)m(v)m(o)s(cations)h(that)f(exceed)h(this)e(nesting)h(lev)m(el)h
e2520247
CR
14352(will)f(cause)g(the)f(curren)m(t)630 2781 y(command)i(to)h(ab)s(ort.)
14353150 2955 y Ft(GLOBIGNORE)630 3064 y Fu(A)k(colon-separated)i(list)f(of)
a2851804 14354f(patterns)g(de\014ning)f(the)i(set)f(of)g(\014le)h(names)f(to)g(b)s(e)
e2520247 14355g(ignored)630 3174 y(b)m(y)28 b(\014lename)h(expansion.)40
7e92fb35 14356b(If)28 b(a)h(\014le)g(name)g(matc)m(hed)g(b)m(y)g(a)g(\014lename)f
e2520247 14357(expansion)h(pattern)630 3284 y(also)k(matc)m(hes)g(one)f(of)g(the)g
6e51e0d0 14358(patterns)g(in)f Ft(GLOBIGNORE)p Fu(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
e2520247 14359e(the)h(list)h(of)630 3393 y(matc)m(hes.)41 b(The)27
967625cd 14360b(pattern)g(matc)m(hing)h(honors)f(the)g(setting)i(of)e(the)h
e2520247 14361Ft(extglob)d Fu(shell)i(option.)150 3567 y Ft(GLOBSORT)96
d052bd6f
CR
14362b Fu(Con)m(trol)41 b(ho)m(w)f(the)g(results)g(of)h(\014lename)f
14363(expansion)g(are)g(sorted.)70 b(The)40 b(v)-5 b(alue)41
e2520247 14364b(of)f(this)630 3677 y(v)-5 b(ariable)45 b(sp)s(eci\014es)e(the)h(sort)
d052bd6f 14365g(criteria)h(and)e(sort)h(order)f(for)g(the)h(results)g(of)g
e2520247 14366(\014lename)630 3786 y(expansion.)c(If)29 b(this)g(v)-5
d052bd6f 14367b(ariable)30 b(is)f(unset)f(or)h(set)h(to)g(the)f(n)m(ull)g(string,)h
e2520247 14368(\014lename)f(expansion)630 3896 y(uses)g(the)h(historial)g(b)s(eha)m
d052bd6f 14369(vior)f(of)h(sorting)g(b)m(y)f(name.)41 b(If)29 b(set,)h(a)g(v)-5
e2520247 14370b(alid)29 b(v)-5 b(alue)30 b(b)s(egins)f(with)630 4006
d052bd6f
CR
14371y(an)42 b(optional)h(`)p Ft(+)p Fu(',)i(whic)m(h)d(is)g(ignored,)j(or)d
14372(`)p Ft(-)p Fu(',)j(whic)m(h)d(rev)m(erses)h(the)f(sort)g(order)f(from)
e2520247 14373630 4115 y(ascending)34 b(to)g(descending,)g(follo)m(w)m(ed)h(b)m(y)e
d052bd6f 14374(a)h(sort)f(sp)s(eci\014er.)50 b(The)32 b(v)-5 b(alid)34
e2520247 14375b(sort)g(sp)s(eci\014ers)630 4225 y(are)21 b(`)p Ft(name)p
d052bd6f
CR
14376Fu(',)h(`)p Ft(size)p Fu(',)g(`)p Ft(mtime)p Fu(',)g(`)p
14377Ft(atime)p Fu(',)g(`)p Ft(ctime)p Fu(',)f(and)f(`)p Ft(blocks)p
e2520247 14378Fu(',)i(whic)m(h)e(sort)h(the)g(\014les)f(on)630 4334
d052bd6f
CR
14379y(name,)30 b(\014le)h(size,)g(mo)s(di\014cation)f(time,)h(access)h
14380(time,)f(ino)s(de)e(c)m(hange)j(time,)f(and)e(n)m(um)m(b)s(er)630
e2520247
CR
143814444 y(of)i(blo)s(c)m(ks,)g(resp)s(ectiv)m(ely)-8 b(.)630
143824586 y(F)g(or)33 b(example,)g(a)f(v)-5 b(alue)33 b(of)f
d052bd6f 14383Ft(-mtime)e Fu(sorts)i(the)g(results)g(in)f(descending)h(order)f(b)m(y)
e2520247
CR
14384h(mo)s(di-)630 4695 y(\014cation)f(time)g(\(new)m(est)h(\014rst\).)630
143854837 y(A)26 b(sort)h(sp)s(eci\014er)e(of)h(`)p Ft(nosort)p
14386Fu(')f(disables)h(sorting)h(completely;)i(the)e(results)f(are)g
14387(returned)630 4947 y(in)k(the)h(order)f(they)g(are)h(read)f(from)g(the)
14388h(\014le)f(system,.)630 5089 y(If)c(the)h(sort)f(sp)s(eci\014er)g(is)h
14389(missing,)g(it)g(defaults)g(to)g Fr(name)p Fu(,)g(so)g(a)g(v)-5
14390b(alue)27 b(of)f(`)p Ft(+)p Fu(')h(is)f(equiv)-5 b(alen)m(t)630
143915198 y(to)31 b(the)g(n)m(ull)f(string,)h(and)e(a)i(v)-5
d052bd6f 14392b(alue)31 b(of)f(`)p Ft(-)p Fu(')h(sorts)f(b)m(y)h(name)f(in)g
e2520247 14393(descending)g(order.)630 5340 y(An)m(y)g(in)m(v)-5 b(alid)31
d052bd6f 14394b(v)-5 b(alue)31 b(restores)g(the)g(historical)g(sorting)g(b)s(eha)m
e2520247
CR
14395(vior.)p eop end
14396%%Page: 87 93
14397TeXDict begin 87 92 bop 150 -116 a Fu(Chapter)30 b(5:)41
14398b(Shell)30 b(V)-8 b(ariables)2459 b(87)150 299 y Ft(GROUPS)192
14399b Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)
14400h(of)f(groups)g(of)g(whic)m(h)f(the)i(curren)m(t)e(user)h(is)g(a)630
14401408 y(mem)m(b)s(er.)41 b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d
14402Fu(ha)m(v)m(e)i(no)g(e\013ect.)42 b(If)30 b Ft(GROUPS)f
14403Fu(is)i(unset,)f(it)h(loses)h(its)630 518 y(sp)s(ecial)f(prop)s
14404(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
14405682 y Ft(histchars)630 792 y Fu(Up)c(to)g(three)g(c)m(haracters)i(whic)
14406m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g(substitution,)g
14407(and)630 902 y(tok)m(enization)k(\(see)f(Section)f(9.3)h([History)f(In)
14408m(teraction],)i(page)f(158\).)41 b(The)29 b(\014rst)e(c)m(harac-)630
144091011 y(ter)j(is)f(the)g Fr(history)g(expansion)g Fu(c)m(haracter,)j
d052bd6f 14410(that)e(is,)f(the)h(c)m(haracter)h(whic)m(h)d(signi\014es)i(the)630
e2520247 144111121 y(start)25 b(of)f(a)h(history)f(expansion,)i(normally)e(`)p
d052bd6f 14412Ft(!)p Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m
e2520247 14413(haracter)630 1230 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h
d052bd6f 14414(substitution')f(when)f(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e
e2520247 14415(a)g(line,)630 1340 y(normally)27 b(`)p Ft(^)p Fu('.)39
d052bd6f 14416b(The)26 b(optional)i(third)d(c)m(haracter)j(is)e(the)h(c)m(haracter)h
e2520247 14417(whic)m(h)e(indicates)h(that)630 1450 y(the)34 b(remainder)f(of)h(the)g
d052bd6f 14418(line)g(is)f(a)h(commen)m(t)h(when)e(found)f(as)i(the)g(\014rst)f(c)m
e2520247 14419(haracter)i(of)f(a)630 1559 y(w)m(ord,)i(usually)f(`)p
d052bd6f 14420Ft(#)p Fu('.)55 b(The)34 b(history)h(commen)m(t)h(c)m(haracter)h
e2520247 14421(causes)e(history)g(substitution)630 1669 y(to)27 b(b)s(e)f(skipp)s(ed)
d052bd6f 14422f(for)i(the)f(remaining)h(w)m(ords)f(on)h(the)f(line.)40
e2520247 14423b(It)27 b(do)s(es)f(not)h(necessarily)g(cause)630 1778
d052bd6f 14424y(the)k(shell)f(parser)g(to)h(treat)g(the)g(rest)g(of)f(the)h(line)f
e2520247 14425(as)h(a)g(commen)m(t.)150 1943 y Ft(HISTCMD)144 b Fu(The)44
d052bd6f 14426b(history)h(n)m(um)m(b)s(er,)j(or)d(index)g(in)f(the)h(history)g(list,)
e2520247 1442750 b(of)45 b(the)g(curren)m(t)g(command.)630 2052 y(Assignmen)m(ts)37
d052bd6f 14428b(to)h Ft(HISTCMD)d Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e
e2520247 14429Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)630 2162
d052bd6f 14430y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f
e2520247 14431(reset.)150 2326 y Ft(HISTCONTROL)630 2436 y Fu(A)40
d052bd6f 14432b(colon-separated)i(list)f(of)f(v)-5 b(alues)40 b(con)m(trolling)i(ho)m
e2520247 14433(w)e(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)630 2545
d052bd6f 14434y(history)29 b(list.)41 b(If)28 b(the)h(list)h(of)f(v)-5
6e51e0d0 14435b(alues)29 b(includes)f(`)p Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g
e2520247 14436(b)s(egin)f(with)630 2655 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g
9ec5ed66 14437(sa)m(v)m(ed)g(in)g(the)g(history)f(list.)66 b(A)39 b(v)-5
e2520247 14438b(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 2765 y(causes)34
9ec5ed66
CR
14439b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h
14440(to)g(not)f(b)s(e)f(sa)m(v)m(ed.)53 b(A)34 b(v)-5 b(alue)630
e2520247 144412874 y(of)32 b(`)p Ft(ignoreboth)p Fu(')d(is)j(shorthand)e(for)i(`)p
6e51e0d0 14442Ft(ignorespace)p Fu(')d(and)i(`)p Ft(ignoredups)p Fu('.)42
e2520247 14443b(A)32 b(v)-5 b(alue)32 b(of)630 2984 y(`)p Ft(erasedups)p
d37a4722 14444Fu(')f(causes)i(all)h(previous)f(lines)g(matc)m(hing)h(the)f(curren)m
e2520247 14445(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630 3093 y(from)42
d37a4722
CR
14446b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g(sa)m(v)m(ed.)78
14447b(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
e2520247 144483203 y(list)35 b(is)g(ignored.)53 b(If)34 b Ft(HISTCONTROL)e
d37a4722 14449Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h(v)-5
e2520247 14450b(alid)35 b(v)-5 b(alue,)36 b(all)630 3313 y(lines)30
37c41ab1
CR
14451b(read)g(b)m(y)g(the)g(shell)g(parser)g(are)g(sa)m(v)m(ed)h(on)f(the)g
14452(history)g(list,)h(sub)5 b(ject)30 b(to)g(the)g(v)-5
e2520247 14453b(alue)630 3422 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42
37c41ab1 14454b(second)g(and)g(subsequen)m(t)f(lines)h(of)h(a)f(m)m(ulti-line)h(comp)
e2520247 14455s(ound)630 3532 y(command)33 b(are)h(not)g(tested,)i(and)d(are)h(added)
d37a4722 14456f(to)h(the)g(history)g(regardless)g(of)g(the)f(v)-5 b(alue)630
e2520247 144573641 y(of)31 b Ft(HISTCONTROL)p Fu(.)150 3806 y Ft(HISTFILE)96
091c6bc4
CR
14458b Fu(The)27 b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)f(the)g(command)
14459f(history)h(is)g(sa)m(v)m(ed.)41 b(The)27 b(default)h(v)-5
e2520247
CR
14460b(alue)630 3915 y(is)30 b Ft(~/.bash_history)p Fu(.)150
144614080 y Ft(HISTFILESIZE)630 4189 y Fu(The)c(maxim)m(um)f(n)m(um)m(b)s
091c6bc4 14462(er)g(of)h(lines)h(con)m(tained)g(in)f(the)g(history)g(\014le.)39
e2520247 14463b(When)26 b(this)g(v)-5 b(ariable)630 4299 y(is)25 b(assigned)h(a)g(v)
091c6bc4
CR
14464-5 b(alue,)27 b(the)f(history)f(\014le)h(is)f(truncated,)i(if)e
14465(necessary)-8 b(,)28 b(to)e(con)m(tain)g(no)g(more)630
e2520247 144664408 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 14467(ving)h(the)f(oldest)h(en)m(tries.)62 b(The)37 b(history)g(\014le)g(is)
e2520247 14468630 4518 y(also)i(truncated)f(to)h(this)e(size)i(after)g(writing)f(it)g
9f178efb 14469(when)f(a)h(shell)h(exits.)64 b(If)37 b(the)h(v)-5 b(alue)39
e2520247 14470b(is)630 4628 y(0,)g(the)e(history)f(\014le)h(is)g(truncated)f(to)i
9f178efb 14471(zero)f(size.)60 b(Non-n)m(umeric)37 b(v)-5 b(alues)37
e2520247 14472b(and)f(n)m(umeric)630 4737 y(v)-5 b(alues)31 b(less)f(than)g(zero)h
9f178efb 14473(inhibit)f(truncation.)41 b(The)29 b(shell)i(sets)f(the)h(default)f(v)
e2520247 14474-5 b(alue)31 b(to)g(the)630 4847 y(v)-5 b(alue)31 b(of)f
6e51e0d0 14475Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
e2520247 144765011 y Ft(HISTIGNORE)630 5121 y Fu(A)j(colon-separated)h(list)f(of)g
09767ff0 14477(patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
e2520247 14478630 5230 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47
09767ff0 14479b(Eac)m(h)33 b(pattern)g(is)f(anc)m(hored)h(at)g(the)f(b)s(eginning)g
e2520247 14480(of)h(the)630 5340 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g
6e51e0d0 14481(complete)h(line)e(\(no)h(implicit)g(`)p Ft(*)p Fu(')f(is)g(app)s
e2520247
CR
14482(ended\).)75 b(Eac)m(h)p eop end
14483%%Page: 88 94
14484TeXDict begin 88 93 bop 150 -116 a Fu(Chapter)30 b(5:)41
14485b(Shell)30 b(V)-8 b(ariables)2459 b(88)630 299 y(pattern)42
14486b(is)g(tested)g(against)h(the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)
14487s(eci\014ed)e(b)m(y)h Ft(HISTCONTROL)630 408 y Fu(are)37
14488b(applied.)59 b(In)36 b(addition)h(to)g(the)g(normal)g(shell)f(pattern)
14489h(matc)m(hing)h(c)m(haracters,)i(`)p Ft(&)p Fu(')630
14490518 y(matc)m(hes)d(the)f(previous)g(history)g(line.)57
14491b(`)p Ft(&)p Fu(')36 b(ma)m(y)h(b)s(e)e(escap)s(ed)h(using)g(a)g(bac)m
14492(kslash;)k(the)630 628 y(bac)m(kslash)34 b(is)g(remo)m(v)m(ed)h(b)s
14493(efore)e(attempting)i(a)g(matc)m(h.)51 b(The)34 b(second)f(and)h
14494(subsequen)m(t)630 737 y(lines)e(of)h(a)g(m)m(ulti-line)g(comp)s(ound)e
14495(command)h(are)h(not)f(tested,)i(and)e(are)g(added)g(to)h(the)630
14496847 y(history)k(regardless)h(of)f(the)g(v)-5 b(alue)38
14497b(of)f Ft(HISTIGNORE)p Fu(.)58 b(The)37 b(pattern)g(matc)m(hing)i
14498(honors)630 956 y(the)31 b(setting)g(of)g(the)f Ft(extglob)f
14499Fu(shell)h(option.)630 1085 y Ft(HISTIGNORE)20 b Fu(subsumes)g(the)j
14500(function)f(of)h Ft(HISTCONTROL)p Fu(.)35 b(A)23 b(pattern)f(of)h(`)p
14501Ft(&)p Fu(')g(is)f(iden)m(tical)630 1195 y(to)k Ft(ignoredups)p
d052bd6f
CR
14502Fu(,)e(and)h(a)h(pattern)g(of)f(`)p Ft([)31 b(]*)p Fu(')25
14503b(is)h(iden)m(tical)h(to)f Ft(ignorespace)p Fu(.)36 b(Com)m(bining)630
e2520247
CR
145041305 y(these)30 b(t)m(w)m(o)h(patterns,)f(separating)g(them)g(with)f(a)
14505h(colon,)h(pro)m(vides)e(the)h(functionalit)m(y)h(of)630
145061414 y Ft(ignoreboth)p Fu(.)150 1562 y Ft(HISTSIZE)96
d052bd6f
CR
14507b Fu(The)37 b(maxim)m(um)g(n)m(um)m(b)s(er)e(of)j(commands)f(to)g
14508(remem)m(b)s(er)g(on)g(the)g(history)g(list.)62 b(If)37
e2520247 14509b(the)630 1672 y(v)-5 b(alue)26 b(is)g(0,)i(commands)d(are)h(not)h(sa)m
d052bd6f 14510(v)m(ed)g(in)e(the)h(history)g(list.)40 b(Numeric)26
e2520247 14511b(v)-5 b(alues)26 b(less)g(than)630 1782 y(zero)i(result)e(in)h(ev)m
45c0f7f8 14512(ery)g(command)g(b)s(eing)f(sa)m(v)m(ed)i(on)f(the)g(history)f(list)i
e2520247 14513(\(there)f(is)g(no)g(limit\).)630 1891 y(The)j(shell)g(sets)h(the)g
45c0f7f8 14514(default)f(v)-5 b(alue)31 b(to)g(500)h(after)f(reading)f(an)m(y)h
e2520247
CR
14515(startup)f(\014les.)150 2039 y Ft(HISTTIMEFORMAT)630
145162149 y Fu(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m
45c0f7f8 14517(ull,)k(its)d(v)-5 b(alue)44 b(is)g(used)g(as)g(a)h(format)f(string)g
e2520247 14518(for)630 2259 y Ft(strftime)26 b Fu(to)k(prin)m(t)e(the)g(time)i(stamp)
e59452c7 14519e(asso)s(ciated)i(with)e(eac)m(h)i(history)f(en)m(try)f(displa)m(y)m
e2520247 14520(ed)630 2368 y(b)m(y)34 b(the)f Ft(history)f Fu(builtin.)50
d052bd6f 14521b(If)33 b(this)h(v)-5 b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g
e2520247 14522(written)f(to)i(the)630 2478 y(history)26 b(\014le)g(so)g(they)g(ma)m
d052bd6f 14523(y)h(b)s(e)e(preserv)m(ed)g(across)i(shell)f(sessions.)39
e2520247 14524b(This)25 b(uses)h(the)g(history)630 2587 y(commen)m(t)31
d052bd6f 14525b(c)m(haracter)h(to)f(distinguish)f(timestamps)h(from)f(other)g
e2520247 14526(history)h(lines.)150 2736 y Ft(HOSTFILE)96 b Fu(Con)m(tains)33
d052bd6f 14527b(the)g(name)f(of)h(a)g(\014le)f(in)g(the)h(same)g(format)g(as)f
e2520247 14528Ft(/etc/hosts)e Fu(that)j(should)f(b)s(e)630 2845 y(read)21
d052bd6f 14529b(when)g(the)g(shell)h(needs)f(to)h(complete)h(a)e(hostname.)38
e2520247 14530b(The)21 b(list)h(of)g(p)s(ossible)f(hostname)630 2955
d052bd6f 14531y(completions)27 b(ma)m(y)f(b)s(e)f(c)m(hanged)h(while)f(the)h(shell)g
e2520247 14532(is)f(running;)h(the)g(next)f(time)i(hostname)630 3064
d052bd6f 14533y(completion)33 b(is)g(attempted)g(after)g(the)f(v)-5
d37a4722 14534b(alue)33 b(is)f(c)m(hanged,)i(Bash)e(adds)f(the)i(con)m(ten)m(ts)h(of)
e2520247 14535630 3174 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53
d37a4722 14536b(If)34 b Ft(HOSTFILE)e Fu(is)j(set,)h(but)e(has)g(no)h(v)-5
e2520247 14537b(alue,)36 b(or)e(do)s(es)630 3284 y(not)d(name)f(a)h(readable)g
d37a4722 14538(\014le,)g(Bash)f(attempts)i(to)f(read)f Ft(/etc/hosts)e
e2520247 14539Fu(to)j(obtain)g(the)f(list)630 3393 y(of)h(p)s(ossible)f(hostname)h
d37a4722 14540(completions.)43 b(When)31 b Ft(HOSTFILE)d Fu(is)j(unset,)f(the)h
e2520247 14541(hostname)g(list)630 3503 y(is)f(cleared.)150 3651 y
d37a4722 14542Ft(HOSTNAME)96 b Fu(The)30 b(name)g(of)h(the)f(curren)m(t)h(host.)150
e2520247
CR
145433799 y Ft(HOSTTYPE)96 b Fu(A)30 b(string)h(describing)f(the)g(mac)m
14544(hine)h(Bash)g(is)f(running)f(on.)150 3948 y Ft(IGNOREEOF)630
145454057 y Fu(Con)m(trols)e(the)h(action)g(of)f(the)g(shell)g(on)g(receipt)
d37a4722 14546h(of)f(an)g Ft(EOF)f Fu(c)m(haracter)i(as)g(the)f(sole)h(input.)630
e2520247 145474167 y(If)i(set,)i(the)f(v)-5 b(alue)32 b(denotes)f(the)g(n)m(um)m(b)s
8d125d8b 14548(er)f(of)h(consecutiv)m(e)i Ft(EOF)d Fu(c)m(haracters)i(that)f(can)h(b)
e2520247 14549s(e)630 4276 y(read)40 b(as)f(the)h(\014rst)f(c)m(haracter)i(on)f(an)f
8d125d8b 14550(input)g(line)h(b)s(efore)f(the)h(shell)g(will)g(exit.)70
e2520247 14551b(If)39 b(the)630 4386 y(v)-5 b(ariable)39 b(exists)f(but)g(do)s(es)f
12beeabf 14552(not)h(ha)m(v)m(e)h(a)g(n)m(umeric)f(v)-5 b(alue,)40
e2520247 14553b(or)e(has)g(no)g(v)-5 b(alue,)40 b(then)e(the)630 4495
12beeabf
CR
14554y(default)31 b(is)g(10.)43 b(If)30 b(the)h(v)-5 b(ariable)31
14555b(do)s(es)g(not)g(exist,)h(then)e Ft(EOF)g Fu(signi\014es)h(the)g(end)f
e2520247 14556(of)h(input)630 4605 y(to)g(the)g(shell.)41 b(This)29
12beeabf 14557b(is)i(only)f(in)g(e\013ect)i(for)e(in)m(teractiv)m(e)j(shells.)150
e2520247 145584753 y Ft(INPUTRC)144 b Fu(The)68 b(name)h(of)f(the)h(Readline)g
12beeabf 14559(initialization)j(\014le,)78 b(o)m(v)m(erriding)69 b(the)g(default)g
e2520247
CR
14560(of)630 4863 y Ft(~/.inputrc)p Fu(.)150 5011 y Ft(INSIDE_EMACS)630
145615121 y Fu(If)29 b(Bash)h(\014nds)e(this)h(v)-5 b(ariable)31
b52e30b8 14562b(in)e(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)g(starts,)g(it)g
e2520247 14563(assumes)630 5230 y(that)i(the)g(shell)g(is)f(running)f(in)i(an)f
b52e30b8 14564(Emacs)h(shell)g(bu\013er)e(and)h(ma)m(y)i(disable)e(line)h(editing)630
e2520247
CR
145655340 y(dep)s(ending)d(on)h(the)h(v)-5 b(alue)31 b(of)f
14566Ft(TERM)p Fu(.)p eop end
14567%%Page: 89 95
14568TeXDict begin 89 94 bop 150 -116 a Fu(Chapter)30 b(5:)41
14569b(Shell)30 b(V)-8 b(ariables)2459 b(89)150 299 y Ft(LANG)288
14570b Fu(Used)28 b(to)h(determine)f(the)g(lo)s(cale)h(category)h(for)e(an)m
14571(y)h(category)h(not)e(sp)s(eci\014cally)g(selected)630
14572408 y(with)i(a)h(v)-5 b(ariable)31 b(starting)g(with)f
14573Ft(LC_)p Fu(.)150 555 y Ft(LC_ALL)192 b Fu(This)28 b(v)-5
14574b(ariable)29 b(o)m(v)m(errides)h(the)f(v)-5 b(alue)29
14575b(of)g Ft(LANG)f Fu(and)g(an)m(y)h(other)g Ft(LC_)f Fu(v)-5
14576b(ariable)29 b(sp)s(ecifying)630 664 y(a)i(lo)s(cale)h(category)-8
14577b(.)150 810 y Ft(LC_COLLATE)630 920 y Fu(This)37 b(v)-5
14578b(ariable)38 b(determines)g(the)g(collation)i(order)d(used)g(when)f
14579(sorting)i(the)g(results)g(of)630 1029 y(\014lename)e(expansion,)i(and)
14580e(determines)g(the)h(b)s(eha)m(vior)f(of)g(range)h(expressions,)h
14581(equiv-)630 1139 y(alence)e(classes,)h(and)e(collating)i(sequences)e
14582(within)f(\014lename)h(expansion)g(and)f(pattern)630
145831249 y(matc)m(hing)d(\(see)h(Section)f(3.5.8)h([Filename)g(Expansion],)
14584e(page)h(36\).)150 1395 y Ft(LC_CTYPE)96 b Fu(This)36
14585b(v)-5 b(ariable)37 b(determines)f(the)h(in)m(terpretation)h(of)f(c)m
14586(haracters)h(and)e(the)g(b)s(eha)m(vior)h(of)630 1504
14587y(c)m(haracter)46 b(classes)g(within)e(\014lename)h(expansion)g(and)f
14588(pattern)h(matc)m(hing)h(\(see)f(Sec-)630 1614 y(tion)31
14589b(3.5.8)h([Filename)g(Expansion],)e(page)h(36\).)150
145901760 y Ft(LC_MESSAGES)630 1870 y Fu(This)25 b(v)-5 b(ariable)27
7e92fb35 14591b(determines)f(the)g(lo)s(cale)i(used)d(to)i(translate)g(double-quoted)
e2520247 14592f(strings)g(pre-)630 1979 y(ceded)31 b(b)m(y)f(a)h(`)p
7e92fb35 14593Ft($)p Fu(')f(\(see)h(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
e2520247
CR
14594b(ranslation],)32 b(page)f(7\).)150 2125 y Ft(LC_NUMERIC)630
145952235 y Fu(This)f(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h
7e92fb35 14596(category)g(used)e(for)g(n)m(um)m(b)s(er)f(formatting.)150
e2520247 145972381 y Ft(LC_TIME)144 b Fu(This)25 b(v)-5 b(ariable)26
7e92fb35 14598b(determines)g(the)g(lo)s(cale)h(category)h(used)d(for)g(data)h(and)f
e2520247 14599(time)i(formatting.)150 2527 y Ft(LINENO)192 b Fu(The)32
e2169ae9
CR
14600b(line)h(n)m(um)m(b)s(er)e(in)i(the)f(script)h(or)f(shell)h(function)f
14601(curren)m(tly)h(executing.)49 b(If)32 b Ft(LINENO)630
e2520247 146022637 y Fu(is)e(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)
d052bd6f 14603f(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)150
e2520247 146042783 y Ft(LINES)240 b Fu(Used)43 b(b)m(y)g(the)g Ft(select)e
d37a4722 14605Fu(command)i(to)g(determine)g(the)g(column)g(length)g(for)g(prin)m
e2520247 14606(ting)630 2892 y(selection)c(lists.)63 b(Automatically)41
d37a4722 14607b(set)d(if)f(the)h Ft(checkwinsize)d Fu(option)j(is)f(enabled)h(\(see)
e2520247
CR
14608630 3002 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d
14609(72\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630
146103112 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 3258
d37a4722
CR
14611y Ft(MACHTYPE)96 b Fu(A)26 b(string)g(that)h(fully)f(describ)s(es)f
14612(the)h(system)g(t)m(yp)s(e)h(on)f(whic)m(h)f(Bash)i(is)f(executing,)i
e2520247
CR
14613(in)e(the)630 3367 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h
14614Fu(format.)150 3513 y Ft(MAILCHECK)630 3623 y Fu(Ho)m(w)d(often)g(\(in)
091c6bc4 14615g(seconds\))g(that)g(the)f(shell)h(should)f(c)m(hec)m(k)i(for)e(mail)h
e2520247 14616(in)f(the)h(\014les)g(sp)s(eci\014ed)630 3733 y(in)i(the)h
091c6bc4
CR
14617Ft(MAILPATH)e Fu(or)i Ft(MAIL)e Fu(v)-5 b(ariables.)43
14618b(The)30 b(default)h(is)f(60)i(seconds.)42 b(When)30
e2520247 14619b(it)h(is)g(time)630 3842 y(to)37 b(c)m(hec)m(k)h(for)e(mail,)j(the)e
091c6bc4 14620(shell)f(do)s(es)g(so)h(b)s(efore)f(displa)m(ying)h(the)f(primary)g
e2520247 14621(prompt.)57 b(If)630 3952 y(this)37 b(v)-5 b(ariable)38
091c6bc4 14622b(is)f(unset,)h(or)f(set)h(to)g(a)f(v)-5 b(alue)38 b(that)f(is)g(not)h
e2520247 14623(a)f(n)m(um)m(b)s(er)f(greater)i(than)f(or)630 4061 y(equal)31
091c6bc4 14624b(to)g(zero,)g(the)g(shell)g(disables)f(mail)h(c)m(hec)m(king.)150
e2520247 146254208 y Ft(MAPFILE)144 b Fu(An)35 b(arra)m(y)h(v)-5 b(ariable)36
091c6bc4 14626b(created)g(to)h(hold)e(the)g(text)i(read)e(b)m(y)g(the)h
e2520247
CR
14627Ft(mapfile)d Fu(builtin)i(when)630 4317 y(no)30 b(v)-5
14628b(ariable)31 b(name)g(is)f(supplied.)150 4463 y Ft(OLDPWD)192
091c6bc4 14629b Fu(The)30 b(previous)g(w)m(orking)g(directory)h(as)g(set)g(b)m(y)f
e2520247 14630(the)h Ft(cd)e Fu(builtin.)150 4609 y Ft(OPTERR)192 b
091c6bc4
CR
14631Fu(If)35 b(set)i(to)f(the)h(v)-5 b(alue)36 b(1,)i(Bash)e(displa)m(ys)g
14632(error)f(messages)i(generated)g(b)m(y)f(the)g Ft(getopts)630
e2520247 146334719 y Fu(builtin)30 b(command.)150 4865 y Ft(OSTYPE)192
091c6bc4 14634b Fu(A)30 b(string)h(describing)f(the)g(op)s(erating)h(system)g(Bash)f
d052bd6f 14635(is)h(running)d(on.)150 5011 y Ft(PIPESTATUS)630 5121
7a8455e4 14636y Fu(An)48 b(arra)m(y)g(v)-5 b(ariable)49 b(\(see)g(Section)g(6.7)g
e2520247 14637([Arra)m(ys],)k(page)c(102\))g(con)m(taining)h(a)e(list)h(of)630
d052bd6f 146385230 y(exit)32 b(status)f(v)-5 b(alues)31 b(from)f(the)h(pro)s(cesses)g
7a8455e4 14639(in)g(the)g(most-recen)m(tly-executed)j(foreground)630
d052bd6f
CR
146405340 y(pip)s(eline)c(\(whic)m(h)g(ma)m(y)h(con)m(tain)h(only)f(a)f
14641(single)h(command\).)p eop end
e2520247
CR
14642%%Page: 90 96
14643TeXDict begin 90 95 bop 150 -116 a Fu(Chapter)30 b(5:)41
14644b(Shell)30 b(V)-8 b(ariables)2459 b(90)150 299 y Ft(POSIXLY_CORRECT)630
d052bd6f 14645408 y Fu(If)32 b(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m
7a8455e4 14646(vironmen)m(t)g(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g
d052bd6f 14647Fm(posix)630 518 y Fu(mo)s(de)46 b(\(see)h(Section)g(6.11)g([Bash)g
e2520247 14648(POSIX)e(Mo)s(de],)50 b(page)d(108\))h(b)s(efore)e(reading)g(the)630
d052bd6f 14649628 y(startup)38 b(\014les,)j(as)e(if)g(the)g Ft(--posix)d
602eae4d 14650Fu(in)m(v)m(o)s(cation)41 b(option)e(had)f(b)s(een)g(supplied.)64
d052bd6f 14651b(If)39 b(it)g(is)630 737 y(set)31 b(while)f(the)h(shell)f(is)h
602eae4d 14652(running,)e(Bash)h(enables)h Fm(posix)f Fu(mo)s(de,)g(as)g(if)h(the)f
d052bd6f 14653(command)870 870 y Ft(set)47 b(-o)g(posix)630 1002 y
602eae4d
CR
14654Fu(had)33 b(b)s(een)g(executed.)51 b(When)33 b(the)h(shell)f(en)m(ters)
14655h Fm(posix)f Fu(mo)s(de,)h(it)g(sets)g(this)g(v)-5 b(ariable)34
d052bd6f
CR
14656b(if)630 1112 y(it)d(w)m(as)g(not)f(already)h(set.)150
146571267 y Ft(PPID)288 b Fu(The)30 b(pro)s(cess)g Fm(id)g
602eae4d 14658Fu(of)h(the)f(shell's)h(paren)m(t)g(pro)s(cess.)40 b(This)30
d052bd6f
CR
14659b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150 1422 y
14660Ft(PROMPT_COMMAND)630 1532 y Fu(If)23 b(this)h(v)-5 b(ariable)24
9c10def1
CR
14661b(is)g(set,)i(and)d(is)h(an)f(arra)m(y)-8 b(,)27 b(the)d(v)-5
14662b(alue)24 b(of)g(eac)m(h)g(set)h(elemen)m(t)g(is)f(in)m(terpreted)630
d052bd6f 146631641 y(as)29 b(a)g(command)f(to)i(execute)g(b)s(efore)e(prin)m(ting)h
9c10def1 14664(the)g(primary)f(prompt)f(\()p Ft($PS1)p Fu(\).)40 b(If)28
d052bd6f 14665b(this)h(is)630 1751 y(set)c(but)f(not)g(an)h(arra)m(y)g(v)-5
9c10def1 14666b(ariable,)26 b(its)f(v)-5 b(alue)25 b(is)f(used)g(as)h(a)f(command)g
d052bd6f
CR
14667(to)i(execute)f(instead.)150 1906 y Ft(PROMPT_DIRTRIM)630
146682016 y Fu(If)i(set)g(to)h(a)g(n)m(um)m(b)s(er)e(greater)i(than)f(zero,)
14669i(the)e(v)-5 b(alue)28 b(is)f(used)g(as)g(the)h(n)m(um)m(b)s(er)e(of)h
14670(trailing)630 2125 y(directory)c(comp)s(onen)m(ts)h(to)f(retain)h(when)
14671e(expanding)g(the)h Ft(\\w)g Fu(and)f Ft(\\W)g Fu(prompt)h(string)f
14672(es-)630 2235 y(cap)s(es)i(\(see)h(Section)g(6.9)g([Con)m(trolling)g
e2520247 14673(the)f(Prompt],)i(page)e(106\).)41 b(Characters)24 b(remo)m(v)m(ed)630
d052bd6f
CR
146742345 y(are)31 b(replaced)g(with)f(an)g(ellipsis.)150
146752500 y Ft(PS0)336 b Fu(The)32 b(v)-5 b(alue)33 b(of)g(this)g(parameter)
14676g(is)g(expanded)e(lik)m(e)j Ft(PS1)e Fu(and)g(displa)m(y)m(ed)i(b)m(y)e
14677(in)m(teractiv)m(e)630 2609 y(shells)e(after)h(reading)g(a)g(command)f
14678(and)f(b)s(efore)h(the)h(command)f(is)h(executed.)150
146792765 y Ft(PS3)336 b Fu(The)34 b(v)-5 b(alue)35 b(of)f(this)g(v)-5
14680b(ariable)35 b(is)g(used)e(as)i(the)f(prompt)g(for)g(the)g
14681Ft(select)f Fu(command.)52 b(If)630 2874 y(this)30 b(v)-5
14682b(ariable)31 b(is)g(not)f(set,)i(the)e Ft(select)f Fu(command)h
14683(prompts)f(with)h(`)p Ft(#?)g Fu(')150 3029 y Ft(PS4)336
14684b Fu(The)38 b(v)-5 b(alue)39 b(of)g(this)g(parameter)g(is)g(expanded)f
14685(lik)m(e)i Ft(PS1)e Fu(and)g(the)h(expanded)f(v)-5 b(alue)39
14686b(is)630 3139 y(the)c(prompt)f(prin)m(ted)g(b)s(efore)g(the)h(command)f
14687(line)h(is)g(ec)m(ho)s(ed)g(when)f(the)h Ft(-x)f Fu(option)h(is)630
146883249 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e
e2520247 14689(68\).)67 b(The)38 b(\014rst)g(c)m(haracter)j(of)e(the)630
d052bd6f 146903358 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g
091c6bc4 14691(times,)h(as)f(necessary)-8 b(,)35 b(to)f(indicate)g(m)m(ultiple)630
d052bd6f
CR
146923468 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p
14693Ft(+)h Fu('.)150 3623 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
091c6bc4 14694(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Ft(cd)f
d052bd6f 14695Fu(builtin.)150 3778 y Ft(RANDOM)192 b Fu(Eac)m(h)26
091c6bc4 14696b(time)g(this)f(parameter)h(is)g(referenced,)g(it)g(expands)f(to)h(a)g
d052bd6f 14697(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 3888 y(0)e(and)e(32767.)41
091c6bc4
CR
14698b(Assigning)25 b(a)f(v)-5 b(alue)25 b(to)g(this)f(v)-5
14699b(ariable)25 b(seeds)f(the)h(random)e(n)m(um)m(b)s(er)g(gener-)630
d052bd6f 147003998 y(ator.)41 b(If)27 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g(loses)h
091c6bc4 14701(its)f(sp)s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)g(it)g(is)f
d052bd6f
CR
14702(subsequen)m(tly)630 4107 y(reset.)150 4262 y Ft(READLINE_ARGUMENT)630
147034372 y Fu(An)m(y)37 b(n)m(umeric)f(argumen)m(t)h(giv)m(en)g(to)g(a)g
e59452c7 14704(Readline)g(command)f(that)h(w)m(as)g(de\014ned)e(using)630
d052bd6f 147054482 y(`)p Ft(bind)29 b(-x)p Fu(')h(\(see)i(Section)f(4.2)g([Bash)g
e2520247 14706(Builtins],)g(page)h(57,)f(when)e(it)i(w)m(as)g(in)m(v)m(ok)m(ed.)150
d052bd6f 147074637 y Ft(READLINE_LINE)630 4746 y Fu(The)c(con)m(ten)m(ts)i(of)f(the)g
e59452c7 14708(Readline)g(line)g(bu\013er,)f(for)h(use)f(with)g(`)p
d052bd6f 14709Ft(bind)j(-x)p Fu(')d(\(see)h(Section)h(4.2)630 4856
e2520247 14710y([Bash)i(Builtins],)g(page)g(57\).)150 5011 y Ft(READLINE_MARK)630
d052bd6f 147115121 y Fu(The)26 b(p)s(osition)h(of)g(the)g Fr(mark)32
e59452c7 14712b Fu(\(sa)m(v)m(ed)c(insertion)f(p)s(oin)m(t\))g(in)g(the)g(Readline)g
d052bd6f 14713(line)g(bu\013er,)g(for)630 5230 y(use)36 b(with)f(`)p
e59452c7 14714Ft(bind)30 b(-x)p Fu(')35 b(\(see)i(Section)g(4.2)g([Bash)f(Builtins],)
e2520247 14715i(page)f(57\).)58 b(The)35 b(c)m(haracters)630 5340 y(b)s(et)m(w)m(een)
e59452c7 14716c(the)g(insertion)f(p)s(oin)m(t)g(and)g(the)h(mark)f(are)h(often)f
d052bd6f 14717(called)i(the)f Fr(region)p Fu(.)p eop end
e2520247
CR
14718%%Page: 91 97
14719TeXDict begin 91 96 bop 150 -116 a Fu(Chapter)30 b(5:)41
14720b(Shell)30 b(V)-8 b(ariables)2459 b(91)150 299 y Ft(READLINE_POINT)630
d052bd6f 14721408 y Fu(The)23 b(p)s(osition)g(of)g(the)h(insertion)f(p)s(oin)m(t)g
e59452c7 14722(in)g(the)g(Readline)h(line)f(bu\013er,)h(for)f(use)g(with)g(`)p
d052bd6f 14723Ft(bind)630 518 y(-x)p Fu(')30 b(\(see)h(Section)h(4.2)f([Bash)g
e2520247 14724(Builtins],)g(page)g(57\).)150 678 y Ft(REPLY)240 b Fu(The)30
d052bd6f
CR
14725b(default)g(v)-5 b(ariable)32 b(for)e(the)g Ft(read)g
14726Fu(builtin.)150 838 y Ft(SECONDS)144 b Fu(This)40 b(v)-5
14727b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s(er)e(of)i(seconds)g
14728(since)g(the)f(shell)h(w)m(as)g(started.)630 948 y(Assignmen)m(t)i(to)g
14729(this)g(v)-5 b(ariable)43 b(resets)g(the)g(coun)m(t)g(to)g(the)g(v)-5
14730b(alue)43 b(assigned,)j(and)c(the)630 1058 y(expanded)35
14731b(v)-5 b(alue)36 b(b)s(ecomes)h(the)f(v)-5 b(alue)36
14732b(assigned)g(plus)f(the)h(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630
147331167 y(the)41 b(assignmen)m(t.)72 b(The)40 b(n)m(um)m(b)s(er)f(of)i
14734(seconds)f(at)h(shell)g(in)m(v)m(o)s(cation)i(and)c(the)i(curren)m(t)
14735630 1277 y(time)30 b(are)g(alw)m(a)m(ys)g(determined)f(b)m(y)g
14736(querying)g(the)h(system)f(clo)s(c)m(k.)42 b(If)29 b
14737Ft(SECONDS)e Fu(is)i(unset,)630 1386 y(it)i(loses)g(its)g(sp)s(ecial)g
14738(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)e(reset.)150
147391547 y Ft(SHELL)240 b Fu(This)24 b(en)m(vironmen)m(t)i(v)-5
5e6f45d9 14740b(ariable)26 b(expands)e(to)i(the)g(full)f(pathname)g(to)h(the)f
d052bd6f 14741(shell.)39 b(If)25 b(it)g(is)h(not)630 1656 y(set)36
5e6f45d9 14742b(when)f(the)h(shell)g(starts,)i(Bash)e(assigns)h(to)f(it)h(the)f(full)
d052bd6f
CR
14743f(pathname)h(of)g(the)g(curren)m(t)630 1766 y(user's)30
14744b(login)h(shell.)150 1926 y Ft(SHELLOPTS)630 2035 y Fu(A)g
14745(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)41
14746b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
14747b(alid)630 2145 y(argumen)m(t)28 b(for)f(the)h Ft(-o)e
e59452c7 14748Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)h(command)g(\(see)i(Section)
e2520247 14749f(4.3.1)h([The)630 2255 y(Set)g(Builtin],)h(page)f(68\).)42
e59452c7 14750b(The)28 b(options)h(app)s(earing)f(in)g Ft(SHELLOPTS)e
d052bd6f 14751Fu(are)j(those)h(rep)s(orted)630 2364 y(as)g(`)p Ft(on)p
e59452c7
CR
14752Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p Fu('.)40 b(If)29 b(this)h(v)-5
14753b(ariable)30 b(is)g(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)h
d052bd6f
CR
14754(starts)g(up,)630 2474 y(eac)m(h)41 b(shell)e(option)h(in)f(the)h(list)
14755g(will)f(b)s(e)g(enabled)h(b)s(efore)f(reading)g(an)m(y)h(startup)f
14756(\014les.)630 2583 y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8
14757b(.)150 2744 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)
e59452c7 14758m(h)h(time)f(a)h(new)e(instance)h(of)g(Bash)g(is)g(started.)38
d052bd6f 14759b(This)20 b(is)h(in)m(tended)630 2853 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
e59452c7 14760(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)150
d052bd6f 147613013 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37
e59452c7 14762b(expands)f(to)h(a)g(32-bit)h(pseudo-random)d(n)m(um)m(b)s(er)g(eac)m
d052bd6f 14763(h)j(time)f(it)g(is)g(ref-)630 3123 y(erenced.)47 b(The)32
e59452c7 14764b(random)g(n)m(um)m(b)s(er)f(generator)j(is)e(not)h(linear)g(on)f
d052bd6f 14765(systems)h(that)g(supp)s(ort)630 3232 y Ft(/dev/urandom)26
e59452c7 14766b Fu(or)k Ft(arc4random)p Fu(,)d(so)j(eac)m(h)g(returned)f(n)m(um)m(b)s
d052bd6f 14767(er)f(has)h(no)g(relationship)h(to)630 3342 y(the)39
e59452c7 14768b(n)m(um)m(b)s(ers)e(preceding)i(it.)66 b(The)38 b(random)g(n)m(um)m(b)
d052bd6f 14769s(er)f(generator)j(cannot)g(b)s(e)e(seeded,)630 3452
e59452c7
CR
14770y(so)c(assignmen)m(ts)g(to)g(this)f(v)-5 b(ariable)34
14771b(ha)m(v)m(e)h(no)e(e\013ect.)51 b(If)33 b Ft(SRANDOM)e
d052bd6f 14772Fu(is)j(unset,)g(it)f(loses)i(its)630 3561 y(sp)s(ecial)c(prop)s
e59452c7 14773(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
d052bd6f 147743721 y Ft(TIMEFORMAT)630 3831 y Fu(The)g(v)-5 b(alue)32
e59452c7 14775b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)g(format)h(string)f(sp)s
d052bd6f 14776(ecifying)f(ho)m(w)h(the)g(tim-)630 3941 y(ing)37 b(information)f(for)h
e59452c7 14777(pip)s(elines)f(pre\014xed)f(with)h(the)h Ft(time)e Fu(reserv)m(ed)i(w)
d052bd6f 14778m(ord)f(should)g(b)s(e)630 4050 y(displa)m(y)m(ed.)k(The)27
e59452c7 14779b(`)p Ft(\045)p Fu(')h(c)m(haracter)h(in)m(tro)s(duces)e(an)h(escap)s
d052bd6f 14780(e)g(sequence)g(that)g(is)f(expanded)g(to)630 4160 y(a)37
e59452c7
CR
14781b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)59
14782b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
d052bd6f
CR
147834269 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h
14784(p)s(ortions.)630 4430 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p
14785Ft(\045)p Fu('.)630 4590 y Ft(\045[)p Fj(p)p Ft(][l]R)96
14786b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 4750
e59452c7
CR
14787y 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
14788(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
d052bd6f 147894910 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
e59452c7 14790(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
d052bd6f
CR
147915070 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
14792(as)h(\(\045U)f Ft(+)g Fu(\045S\))g(/)h(\045R.)630 5230
e59452c7
CR
14793y(The)23 b(optional)j Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
14794(precision,)i(the)e(n)m(um)m(b)s(er)f(of)h(fractional)h(digits)630
d052bd6f 147955340 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35
e59452c7 14796b(v)-5 b(alue)36 b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h
d052bd6f 14797(fraction)g(to)g(b)s(e)p eop end
e2520247
CR
14798%%Page: 92 98
14799TeXDict begin 92 97 bop 150 -116 a Fu(Chapter)30 b(5:)41
14800b(Shell)30 b(V)-8 b(ariables)2459 b(92)630 299 y(output.)48
d052bd6f
CR
14801b(A)m(t)34 b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m
14802(t)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630
14803408 y(of)31 b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g
14804(3.)42 b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5
14805b(alue)30 b(3)h(is)g(used.)630 543 y(The)54 b(optional)h
e2169ae9 14806Ft(l)f Fu(sp)s(eci\014es)g(a)h(longer)f(format,)61 b(including)54
d052bd6f 14807b(min)m(utes,)61 b(of)54 b(the)g(form)630 653 y Fr(MM)10
e2169ae9
CR
14808b Fu(m)p Fr(SS)p Fu(.)p Fr(FF)d Fu(s.)103 b(The)50 b(v)-5
14809b(alue)52 b(of)f Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f
d052bd6f
CR
14810(fraction)h(is)630 762 y(included.)630 897 y(If)30 b(this)g(v)-5
14811b(ariable)31 b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f(it)h(had)f
14812(the)h(v)-5 b(alue)870 1031 y Ft($'\\nreal\\t\0453lR\\nuser\\t\0453)o
14813(lU\\n)o(sys\\)o(t\0453)o(lS')630 1166 y Fu(If)37 b(the)g(v)-5
14814b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f(information)h(is)f(displa)m
14815(y)m(ed.)62 b(A)37 b(trailing)i(newline)e(is)630 1275
14816y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m(y)m(ed.)150
148171435 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
8d125d8b 14818b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e
d052bd6f 14819(the)h(default)g(timeout)g(for)g(the)630 1544 y Ft(read)31
8d125d8b 14820b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
e2520247 14821(57\).)47 b(The)32 b Ft(select)e Fu(command)630 1654
d37a4722 14822y(\(see)f(Section)h(3.2.5.2)g([Conditional)g(Constructs],)e(page)i
d052bd6f 14823(12\))f(terminates)g(if)g(input)e(do)s(es)630 1763 y(not)k(arriv)m(e)g
8d125d8b 14824(after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)
d052bd6f
CR
14825h(terminal.)630 1898 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
14826(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
14827(of)h(seconds)f(to)630 2007 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
14828e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
14829b(terminates)h(after)630 2117 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
14830(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
14831(es)h(not)h(arriv)m(e.)150 2276 y Ft(TMPDIR)192 b Fu(If)39
14832b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
14833g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 2386
14834y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
148352545 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
14836(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
14837b(is)f(readonly)-8 b(.)p eop end
e2520247
CR
14838%%Page: 93 99
14839TeXDict begin 93 98 bop 3659 -116 a Fu(93)150 299 y Fp(6)80
967625cd
CR
14840b(Bash)54 b(F)-13 b(eatures)150 502 y Fu(This)30 b(c)m(hapter)h
14841(describ)s(es)e(features)i(unique)e(to)i(Bash.)150 731
14842y Fs(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 890 y Ft(bash)h([long-opt])e
6e51e0d0 14843([-ir])h([-abefhkmnptuvxdBCDHP])c([-o)47 b Fj(option)p
12beeabf
CR
14844Ft(])581 1000 y([-O)g Fj(shopt_option)p Ft(])d([)p Fj(argument)h
14845Ft(...)o(])390 1110 y(bash)i([long-opt])e([-abefhkmnptuvxdBCDHP])c([-o)
1484647 b Fj(option)p Ft(])581 1219 y([-O)g Fj(shopt_option)p
14847Ft(])d(-c)j Fj(string)f Ft([)p Fj(argument)g Ft(...)o(])390
148481329 y(bash)h([long-opt])e(-s)i([-abefhkmnptuvxdBCDHP])42
14849b([-o)k Fj(option)p Ft(])581 1438 y([-O)h Fj(shopt_option)p
14850Ft(])d([)p Fj(argument)h Ft(...)o(])275 1567 y Fu(All)31
14851b(of)g(the)f(single-c)m(haracter)k(options)d(used)f(with)g(the)h
14852Ft(set)f Fu(builtin)g(\(see)h(Section)h(4.3.1)g([The)f(Set)150
e2520247 148531676 y(Builtin],)45 b(page)c(68\))i(can)e(b)s(e)f(used)h(as)g(options)g
12beeabf
CR
14854(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)74 b(In)41
14855b(addition,)j(there)150 1786 y(are)38 b(sev)m(eral)h(m)m(ulti-c)m
14856(haracter)h(options)d(that)h(y)m(ou)g(can)g(use.)61 b(These)38
14857b(options)f(m)m(ust)h(app)s(ear)e(on)i(the)150 1896 y(command)30
14858b(line)h(b)s(efore)f(the)g(single-c)m(haracter)j(options)e(to)g(b)s(e)f
14859(recognized.)150 2043 y Ft(--debugger)630 2152 y Fu(Arrange)j(for)g
14860(the)g(debugger)g(pro\014le)g(to)h(b)s(e)e(executed)i(b)s(efore)f(the)g
14861(shell)g(starts.)49 b(T)-8 b(urns)630 2262 y(on)35 b(extended)g
14862(debugging)f(mo)s(de)h(\(see)g(Section)h(4.3.2)h([The)d(Shopt)g
e2520247 14863(Builtin],)j(page)f(72,)630 2371 y(for)30 b(a)h(description)f(of)h(the)
12beeabf
CR
14864f Ft(extdebug)f Fu(option)h(to)h(the)g Ft(shopt)e Fu(builtin\).)150
148652519 y Ft(--dump-po-strings)630 2628 y Fu(A)37 b(list)g(of)f(all)i
6e51e0d0 14866(double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p Ft($)p
967625cd 14867Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630 2738
6e51e0d0
CR
14868y(output)29 b(in)g(the)g Fm(gnu)g Ft(gettext)f Fu(PO)g(\(p)s(ortable)i
14869(ob)5 b(ject\))30 b(\014le)g(format.)40 b(Equiv)-5 b(alen)m(t)31
967625cd
CR
14870b(to)f Ft(-D)630 2847 y Fu(except)h(for)f(the)h(output)f(format.)150
148712995 y Ft(--dump-strings)630 3104 y Fu(Equiv)-5 b(alen)m(t)31
14872b(to)g Ft(-D)p Fu(.)150 3251 y Ft(--help)192 b Fu(Displa)m(y)32
6e51e0d0 14873b(a)e(usage)h(message)h(on)e(standard)g(output)g(and)f(exit)j
967625cd
CR
14874(successfully)-8 b(.)150 3399 y Ft(--init-file)27 b Fj(filename)150
148753508 y Ft(--rcfile)h Fj(filename)630 3618 y Fu(Execute)23
6e51e0d0
CR
14876b(commands)e(from)g Fr(\014lename)28 b Fu(\(instead)22
14877b(of)g Ft(~/.bashrc)p Fu(\))e(in)h(an)h(in)m(teractiv)m(e)i(shell.)150
967625cd
CR
148783765 y Ft(--login)144 b Fu(Equiv)-5 b(alen)m(t)31 b(to)g
14879Ft(-l)p Fu(.)150 3912 y Ft(--noediting)630 4022 y Fu(Do)h(not)e(use)h
6e51e0d0 14880(the)g Fm(gnu)f Fu(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)
e2520247 14881f(Line)g(Editing],)630 4131 y(page)h(121\))h(to)f(read)g(command)f
6e51e0d0 14882(lines)g(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150
967625cd 148834278 y Ft(--noprofile)630 4388 y Fu(Don't)22 b(load)g(the)g
6e51e0d0 14884(system-wide)f(startup)g(\014le)h Ft(/etc/profile)c Fu(or)j(an)m(y)h
967625cd 14885(of)f(the)h(p)s(ersonal)f(ini-)630 4498 y(tialization)34
6e51e0d0 14886b(\014les)e Ft(~/.bash_profile)p Fu(,)c Ft(~/.bash_login)p
967625cd 14887Fu(,)g(or)k Ft(~/.profile)c Fu(when)j(Bash)630 4607 y(is)f(in)m(v)m(ok)
6e51e0d0
CR
14888m(ed)i(as)f(a)g(login)g(shell.)150 4754 y Ft(--norc)192
14889b Fu(Don't)35 b(read)f(the)g Ft(~/.bashrc)e Fu(initialization)k(\014le)
14890f(in)e(an)h(in)m(teractiv)m(e)j(shell.)52 b(This)33 b(is)h(on)630
967625cd 148914864 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
14892e Ft(sh)p Fu(.)150 5011 y Ft(--posix)144 b Fu(Change)24
14893b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i(default)f(op)s
14894(eration)h(di\013ers)f(from)f(the)i Fm(posix)630 5121
14895y Fu(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
eb0b2ad8 14896b(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 14897(as)g(a)630 5230 y(strict)22 b(sup)s(erset)e(of)h(that)g(standard.)37
e2520247 14898b(See)21 b(Section)h(6.11)g([Bash)f(POSIX)f(Mo)s(de],)k(page)d(108,)630
602eae4d 148995340 y(for)30 b(a)h(description)f(of)h(the)f(Bash)h Fm(posix)f
6e51e0d0 14900Fu(mo)s(de.)p eop end
e2520247
CR
14901%%Page: 94 100
14902TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(6:)41
14903b(Bash)30 b(F)-8 b(eatures)2484 b(94)150 299 y Ft(--restricted)630
6e51e0d0
CR
14904408 y Fu(Mak)m(e)54 b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h
14905(Section)g(6.10)h([The)d(Restricted)j(Shell],)630 518
e2520247 14906y(page)31 b(108\).)150 677 y Ft(--verbose)630 787 y Fu(Equiv)-5
6e51e0d0 14907b(alen)m(t)31 b(to)g Ft(-v)p Fu(.)41 b(Prin)m(t)30 b(shell)g(input)g
560db36b
CR
14908(lines)g(as)h(they're)g(read.)150 946 y Ft(--version)630
149091056 y Fu(Sho)m(w)d(v)m(ersion)g(information)g(for)g(this)g(instance)h
14910(of)f(Bash)g(on)g(the)g(standard)f(output)h(and)630 1166
14911y(exit)j(successfully)-8 b(.)275 1325 y(There)28 b(are)i(sev)m(eral)g
6e51e0d0 14912(single-c)m(haracter)i(options)d(that)h(ma)m(y)g(b)s(e)e(supplied)g(at)
560db36b 14913i(in)m(v)m(o)s(cation)h(whic)m(h)e(are)150 1435 y(not)i(a)m(v)-5
6e51e0d0 14914b(ailable)32 b(with)e(the)h Ft(set)e Fu(builtin.)150
560db36b
CR
149151594 y Ft(-c)384 b Fu(Read)66 b(and)f(execute)i(commands)e(from)g(the)h
14916(\014rst)e(non-option)i(argumen)m(t)g Fr(com-)630 1704
14917y(mand)p 859 1704 28 4 v 39 w(string)p Fu(,)34 b(then)e(exit.)49
fc527055 14918b(If)32 b(there)h(are)g(argumen)m(ts)g(after)g(the)g
560db36b
CR
14919Fr(command)p 3303 1704 V 40 w(string)p Fu(,)h(the)630
149201813 y(\014rst)e(argumen)m(t)h(is)g(assigned)g(to)h Ft($0)e
fc527055 14921Fu(and)h(an)m(y)g(remaining)g(argumen)m(ts)g(are)g(assigned)g(to)630
560db36b 149221923 y(the)38 b(p)s(ositional)h(parameters.)65 b(The)37
fc527055 14923b(assignmen)m(t)i(to)g Ft($0)f Fu(sets)g(the)h(name)f(of)g(the)g
560db36b
CR
14924(shell,)630 2032 y(whic)m(h)30 b(is)h(used)e(in)h(w)m(arning)g(and)g
14925(error)g(messages.)150 2192 y Ft(-i)384 b Fu(F)-8 b(orce)22
eb0b2ad8
CR
14926b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
14927b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
e2520247 14928(6.3)630 2301 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(96.)150
560db36b 149292461 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
eb0b2ad8 14930(had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44
560db36b 14931b(When)31 b(the)h(shell)630 2570 y(is)37 b(in)m(teractiv)m(e,)43
eb0b2ad8 14932b(this)37 b(is)g(equiv)-5 b(alen)m(t)39 b(to)f(starting)h(a)e(login)i
6e51e0d0 14933(shell)e(with)g(`)p Ft(exec)30 b(-l)g(bash)p Fu('.)630
560db36b 149342680 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
eb0b2ad8 14935(login)h(shell)g(startup)f(\014les)g(will)g(b)s(e)g(executed.)630
560db36b 149362790 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29
6e51e0d0 14937b(bash)g(--login)p Fu(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
560db36b 14938h(with)g(a)630 2899 y(Bash)26 b(login)g(shell.)39 b(See)26
e2520247 14939b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(95,)i(for)d(a)h
560db36b
CR
14940(description)630 3009 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
14941f(a)h(login)g(shell.)150 3168 y Ft(-r)384 b Fu(Mak)m(e)54
37c41ab1 14942b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)
e2520247 14943d(Restricted)j(Shell],)630 3278 y(page)31 b(108\).)150
560db36b 149443437 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
eb0b2ad8 14945(if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h
560db36b 14946(then)630 3547 y(commands)i(are)h(read)g(from)f(the)h(standard)f
eb0b2ad8 14947(input.)39 b(This)28 b(option)h(allo)m(ws)h(the)f(p)s(ositional)630
560db36b
CR
149483656 y(parameters)i(to)h(b)s(e)e(set)i(when)d(in)m(v)m(oking)k(an)d(in)
14949m(teractiv)m(e)k(shell)d(or)g(when)f(reading)h(input)630
149503766 y(through)f(a)g(pip)s(e.)150 3925 y Ft(-D)384 b
14951Fu(A)37 b(list)g(of)f(all)i(double-quoted)e(strings)g(preceded)g(b)m(y)
14952h(`)p Ft($)p Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630
149534035 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
14954b(ject)38 b(to)h(language)g(translation)g(when)630 4144
6e51e0d0
CR
14955y(the)e(curren)m(t)g(lo)s(cale)h(is)f(not)g Ft(C)g Fu(or)f
14956Ft(POSIX)g Fu(\(see)h(Section)h(3.1.2.5)h([Lo)s(cale)g(T)-8
560db36b 14957b(ranslation],)630 4254 y(page)31 b(7\).)42 b(This)29
6e51e0d0 14958b(implies)i(the)f Ft(-n)g Fu(option;)h(no)f(commands)g(will)h(b)s(e)f
560db36b
CR
14959(executed.)150 4413 y Ft([-+]O)f([)p Fj(shopt_option)p
14960Ft(])630 4523 y Fr(shopt)p 854 4523 V 40 w(option)44
6e51e0d0 14961b Fu(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
560db36b 14962Ft(shopt)d Fu(builtin)i(\(see)630 4633 y(Section)32 b(4.3.2)h([The)e
e2520247 14963(Shopt)f(Builtin],)i(page)g(72\).)44 b(If)31 b Fr(shopt)p
560db36b
CR
149642724 4633 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f
14965Fu(sets)630 4742 y(the)24 b(v)-5 b(alue)24 b(of)g(that)h(option;)h
6e51e0d0 14966Ft(+O)e Fu(unsets)f(it.)39 b(If)23 b Fr(shopt)p 2423
560db36b
CR
149674742 V 40 w(option)h Fu(is)g(not)g(supplied,)g(the)g(names)630
149684852 y(and)31 b(v)-5 b(alues)32 b(of)g(the)g(shell)g(options)g
6e51e0d0 14969(accepted)h(b)m(y)f Ft(shopt)e Fu(are)i(prin)m(ted)f(on)h(the)g
560db36b 14970(standard)630 4961 y(output.)40 b(If)29 b(the)h(in)m(v)m(o)s(cation)h
6e51e0d0 14971(option)f(is)f Ft(+O)p Fu(,)h(the)f(output)g(is)h(displa)m(y)m(ed)g(in)
560db36b 14972f(a)h(format)f(that)630 5071 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.)
fc527055 14973150 5230 y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i
6e51e0d0 14974(options)f(and)g(disables)g(further)f(option)h(pro)s(cessing.)64
fc527055
CR
14975b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f Ft(--)g
14976Fu(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p
14977eop end
e2520247
CR
14978%%Page: 95 101
14979TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(6:)41
14980b(Bash)30 b(F)-8 b(eatures)2484 b(95)275 299 y(A)27 b
fc527055
CR
14981Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)m
14982(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Ft(-)p
14983Fu(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
037a8b7f 14984408 y Ft(--login)h Fu(option.)275 555 y(An)g Fl(inter)-5
fc527055
CR
14985b(active)37 b Fu(shell)30 b(is)f(one)g(started)h(without)f(non-option)h
14986(argumen)m(ts,)g(unless)e Ft(-s)h Fu(is)g(sp)s(eci\014ed,)150
037a8b7f 14987665 y(without)k(sp)s(ecifying)h(the)f Ft(-c)g Fu(option,)i(and)e(whose)
fc527055 14988g(input)g(and)f(output)h(are)h(b)s(oth)f(connected)h(to)g(ter-)150
037a8b7f 14989774 y(minals)g(\(as)g(determined)f(b)m(y)h Ft(isatty\(3\))p
fc527055 14990Fu(\),)e(or)i(one)g(started)g(with)f(the)h Ft(-i)f Fu(option.)51
037a8b7f 14991b(See)33 b(Section)i(6.3)150 884 y([In)m(teractiv)m(e)e(Shells],)e
e2520247 14992(page)g(96,)g(for)f(more)h(information.)275 1031 y(If)i(argumen)m(ts)h
fc527055 14993(remain)g(after)h(option)f(pro)s(cessing,)h(and)e(neither)h(the)g
037a8b7f 14994Ft(-c)g Fu(nor)f(the)h Ft(-s)g Fu(option)g(has)150 1140
fc527055
CR
14995y(b)s(een)44 b(supplied,)j(the)d(\014rst)g(argumen)m(t)h(is)g(assumed)e
14996(to)j(b)s(e)d(the)i(name)g(of)f(a)h(\014le)g(con)m(taining)h(shell)150
037a8b7f 149971250 y(commands)30 b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)
e2520247 14998h(47\).)41 b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h
037a8b7f 14999(fashion,)150 1359 y Ft($0)37 b Fu(is)g(set)h(to)h(the)e(name)h(of)f
fc527055 15000(the)h(\014le,)i(and)c(the)i(p)s(ositional)g(parameters)g(are)g(set)g
037a8b7f 15001(to)g(the)g(remaining)150 1469 y(argumen)m(ts.)h(Bash)26
fc527055 15002b(reads)f(and)g(executes)h(commands)f(from)g(this)g(\014le,)i(then)e
037a8b7f 15003(exits.)40 b(Bash's)25 b(exit)i(status)150 1579 y(is)f(the)h(exit)h
fc527055 15004(status)e(of)h(the)g(last)g(command)f(executed)h(in)g(the)f(script.)40
037a8b7f
CR
15005b(If)26 b(no)g(commands)g(are)h(executed,)150 1688 y(the)k(exit)g
15006(status)g(is)f(0.)150 1947 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
150072107 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
c302751c 15008(its)g(startup)f(\014les.)38 b(If)24 b(an)m(y)h(of)f(the)h(\014les)f
037a8b7f 15009(exist)h(but)e(cannot)150 2216 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
122f603c 15010(an)h(error.)40 b(Tildes)30 b(are)g(expanded)f(in)h(\014lenames)g(as)g
037a8b7f 15011(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2326 y(Tilde)f(Expansion)g
e59452c7 15012(\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(25\).)275
037a8b7f 150132473 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
e2520247 15014(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(96.)150
037a8b7f
CR
150152684 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
15016(shell,)g(or)g(with)e Fh(--login)150 2831 y Fu(When)c(Bash)f(is)h(in)m
6e51e0d0 15017(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 15018(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 2940
6e51e0d0
CR
15019y Ft(--login)30 b Fu(option,)k(it)f(\014rst)e(reads)h(and)g(executes)i
15020(commands)e(from)f(the)i(\014le)f Ft(/etc/profile)p Fu(,)e(if)i(that)
037a8b7f 15021150 3050 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
6e51e0d0 15022(\014le,)j(it)d(lo)s(oks)g(for)f Ft(~/.bash_profile)p
037a8b7f 15023Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 3160 y Ft(~/.profile)p
6e51e0d0 15024Fu(,)25 b(in)i(that)g(order,)h(and)e(reads)h(and)f(executes)j(commands)
037a8b7f 15025d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 3269
6e51e0d0
CR
15026y(and)j(is)h(readable.)42 b(The)30 b Ft(--noprofile)d
15027Fu(option)k(ma)m(y)g(b)s(e)f(used)g(when)g(the)h(shell)f(is)h(started)g
037a8b7f 15028(to)g(inhibit)150 3379 y(this)f(b)s(eha)m(vior.)275 3526
0385211b
CR
15029y(When)h(an)g(in)m(teractiv)m(e)k(login)d(shell)g(exits,)h(or)f(a)g
15030(non-in)m(teractiv)m(e)i(login)f(shell)e(executes)i(the)f
037a8b7f 15031Ft(exit)150 3635 y Fu(builtin)g(command,)i(Bash)e(reads)h(and)f
0385211b 15032(executes)i(commands)e(from)g(the)h(\014le)g Ft(~/.bash_logout)p
037a8b7f 15033Fu(,)d(if)i(it)150 3745 y(exists.)150 3956 y Fk(In)m(v)m(ok)m(ed)40
0385211b 15034b(as)h(an)f(in)m(teractiv)m(e)f(non-login)k(shell)150
037a8b7f 150354103 y Fu(When)g(an)h(in)m(teractiv)m(e)i(shell)e(that)g(is)f(not)h(a)g
6e51e0d0 15036(login)g(shell)g(is)f(started,)48 b(Bash)c(reads)f(and)g(executes)150
037a8b7f 150374213 y(commands)31 b(from)g Ft(~/.bashrc)p Fu(,)f(if)h(that)h(\014le)g
6e51e0d0 15038(exists.)44 b(This)31 b(ma)m(y)h(b)s(e)f(inhibited)g(b)m(y)g(using)g
037a8b7f 15039(the)h Ft(--norc)150 4322 y Fu(option.)40 b(The)27 b
6e51e0d0 15040Ft(--rcfile)h Fj(file)e Fu(option)h(will)g(force)h(Bash)f(to)h(read)f
037a8b7f
CR
15041(and)f(execute)j(commands)d(from)h Fr(\014le)150 4432
15042y Fu(instead)k(of)f Ft(~/.bashrc)p Fu(.)275 4579 y(So,)g(t)m(ypically)
6e51e0d0 15043-8 b(,)33 b(y)m(our)d Ft(~/.bash_profile)c Fu(con)m(tains)32
037a8b7f
CR
15044b(the)f(line)390 4725 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
15045(~/.bashrc;)e(fi)150 4872 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
15046(login-sp)s(eci\014c)g(initializations.)150 5083 y Fk(In)m(v)m(ok)m(ed)
1504740 b(non-in)m(teractiv)m(ely)150 5230 y Fu(When)33 b(Bash)g(is)g
6e51e0d0
CR
15048(started)h(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h
15049(script,)g(for)f(example,)i(it)e(lo)s(oks)h(for)f(the)150
037a8b7f 150505340 y(v)-5 b(ariable)35 b Ft(BASH_ENV)d Fu(in)i(the)h(en)m(vironmen)m
6e51e0d0 15051(t,)h(expands)e(its)g(v)-5 b(alue)35 b(if)g(it)g(app)s(ears)e(there,)j
037a8b7f 15052(and)e(uses)g(the)p eop end
e2520247
CR
15053%%Page: 96 102
15054TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41
15055b(Bash)30 b(F)-8 b(eatures)2484 b(96)150 299 y(expanded)30
037a8b7f
CR
15056b(v)-5 b(alue)30 b(as)h(the)g(name)f(of)h(a)f(\014le)h(to)g(read)f(and)
15057g(execute.)42 b(Bash)31 b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m
15058(wing)150 408 y(command)g(w)m(ere)h(executed:)390 552
15059y Ft(if)47 b([)h(-n)f("$BASH_ENV")e(];)i(then)f(.)i("$BASH_ENV";)c(fi)
15060150 696 y Fu(but)30 b(the)g(v)-5 b(alue)31 b(of)g(the)f
15061Ft(PATH)f Fu(v)-5 b(ariable)32 b(is)e(not)h(used)e(to)i(searc)m(h)g
15062(for)f(the)h(\014lename.)275 840 y(As)42 b(noted)g(ab)s(o)m(v)m(e,)47
fc527055 15063b(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 15064(with)e(the)h Ft(--login)d Fu(option,)46 b(Bash)150 949
fc527055 15065y(attempts)31 b(to)g(read)g(and)e(execute)j(commands)e(from)g(the)h
037a8b7f
CR
15066(login)g(shell)g(startup)e(\014les.)150 1158 y Fk(In)m(v)m(ok)m(ed)40
15067b(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 15068(with)e(the)g(name)g Ft(sh)p Fu(,)i(it)f(tries)f(to)h(mimic)g(the)f
037a8b7f 15069(startup)g(b)s(eha)m(vior)g(of)h(historical)150 1414
fc527055
CR
15070y(v)m(ersions)31 b(of)f Ft(sh)g Fu(as)h(closely)h(as)e(p)s(ossible,)g
15071(while)h(conforming)f(to)h(the)g Fm(posix)e Fu(standard)h(as)h(w)m
037a8b7f 15072(ell.)275 1558 y(When)50 b(in)m(v)m(ok)m(ed)j(as)f(an)f(in)m(teractiv)m
fc527055 15073(e)j(login)e(shell,)57 b(or)51 b(as)g(a)h(non-in)m(teractiv)m(e)h
037a8b7f 15074(shell)f(with)f(the)150 1668 y Ft(--login)31 b Fu(option,)k(it)e
fc527055 15075(\014rst)g(attempts)h(to)g(read)f(and)g(execute)h(commands)f(from)g
037a8b7f 15076Ft(/etc/profile)d Fu(and)150 1777 y Ft(~/.profile)p Fu(,)d(in)i(that)i
fc527055 15077(order.)39 b(The)30 b Ft(--noprofile)c Fu(option)k(ma)m(y)g(b)s(e)f
037a8b7f 15078(used)g(to)h(inhibit)f(this)h(b)s(eha)m(vior.)150 1887
fc527055
CR
15079y(When)36 b(in)m(v)m(ok)m(ed)i(as)e(an)g(in)m(teractiv)m(e)j(shell)e
15080(with)f(the)g(name)h Ft(sh)p Fu(,)g(Bash)f(lo)s(oks)h(for)f(the)h(v)-5
037a8b7f 15081b(ariable)37 b Ft(ENV)p Fu(,)150 1997 y(expands)29 b(its)i(v)-5
6e51e0d0
CR
15082b(alue)30 b(if)h(it)f(is)g(de\014ned,)g(and)f(uses)h(the)g(expanded)g
15083(v)-5 b(alue)30 b(as)h(the)f(name)g(of)g(a)h(\014le)f(to)h(read)150
037a8b7f 150842106 y(and)g(execute.)46 b(Since)32 b(a)g(shell)g(in)m(v)m(ok)m(ed)h
6e51e0d0 15085(as)f Ft(sh)f Fu(do)s(es)g(not)h(attempt)h(to)g(read)e(and)g(execute)i
037a8b7f 15086(commands)150 2216 y(from)39 b(an)m(y)g(other)h(startup)e(\014les,)k
6e51e0d0 15087(the)d Ft(--rcfile)e Fu(option)j(has)f(no)g(e\013ect.)69
037a8b7f 15088b(A)39 b(non-in)m(teractiv)m(e)j(shell)150 2325 y(in)m(v)m(ok)m(ed)32
6e51e0d0 15089b(with)e(the)g(name)h Ft(sh)f Fu(do)s(es)g(not)g(attempt)i(to)f(read)f
037a8b7f 15090(an)m(y)h(other)g(startup)e(\014les.)275 2469 y(When)h(in)m(v)m(ok)m
6e51e0d0
CR
15091(ed)h(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e
15092Fu(mo)s(de)h(after)h(the)g(startup)f(\014les)g(are)h(read.)150
037a8b7f
CR
150932678 y Fk(In)m(v)m(ok)m(ed)40 b(in)h Fg(posix)g Fk(mo)s(de)150
150942824 y Fu(When)28 b(Bash)h(is)g(started)g(in)g Fm(posix)f
6e51e0d0 15095Fu(mo)s(de,)g(as)h(with)g(the)g Ft(--posix)d Fu(command)j(line)g
037a8b7f 15096(option,)h(it)f(follo)m(ws)150 2934 y(the)24 b Fm(posix)f
6e51e0d0
CR
15097Fu(standard)h(for)f(startup)h(\014les.)38 b(In)24 b(this)g(mo)s(de,)h
15098(in)m(teractiv)m(e)i(shells)d(expand)f(the)h Ft(ENV)f
037a8b7f 15099Fu(v)-5 b(ariable)150 3044 y(and)30 b(commands)g(are)g(read)h(and)e
c302751c 15100(executed)j(from)d(the)i(\014le)f(whose)g(name)h(is)f(the)h(expanded)e
037a8b7f
CR
15101(v)-5 b(alue.)41 b(No)150 3153 y(other)31 b(startup)f(\014les)g(are)h
15102(read.)150 3362 y Fk(In)m(v)m(ok)m(ed)40 b(b)m(y)g(remote)h(shell)h
15103(daemon)150 3509 y Fu(Bash)36 b(attempts)h(to)g(determine)f(when)f(it)i
c302751c 15104(is)f(b)s(eing)g(run)e(with)i(its)g(standard)g(input)f(connected)i(to)g
6392d7af
CR
15105(a)150 3618 y(net)m(w)m(ork)29 b(connection,)g(as)f(when)f(executed)i
15106(b)m(y)e(the)h(historical)h(remote)g(shell)f(daemon,)g(usually)g
15107Ft(rshd)p Fu(,)150 3728 y(or)e(the)g(secure)g(shell)g(daemon)f
15108Ft(sshd)p Fu(.)38 b(If)26 b(Bash)g(determines)f(it)i(is)e(b)s(eing)h
15109(run)e(non-in)m(teractiv)m(ely)29 b(in)c(this)150 3837
15110y(fashion,)i(it)g(reads)e(and)h(executes)h(commands)f(from)f
15111Ft(~/.bashrc)p Fu(,)g(if)h(that)h(\014le)f(exists)h(and)e(is)h
15112(readable.)150 3947 y(It)g(will)f(not)h(do)g(this)f(if)g(in)m(v)m(ok)m
15113(ed)i(as)f Ft(sh)p Fu(.)39 b(The)25 b Ft(--norc)e Fu(option)j(ma)m(y)g
15114(b)s(e)f(used)g(to)h(inhibit)f(this)h(b)s(eha)m(vior,)150
151154057 y(and)g(the)h Ft(--rcfile)e Fu(option)j(ma)m(y)f(b)s(e)f(used)g
15116(to)i(force)g(another)f(\014le)g(to)g(b)s(e)g(read,)h(but)e(neither)h
15117Ft(rshd)e Fu(nor)150 4166 y Ft(sshd)k Fu(generally)j(in)m(v)m(ok)m(e)g
15118(the)f(shell)f(with)g(those)h(options)g(or)f(allo)m(w)i(them)e(to)i(b)s
15119(e)d(sp)s(eci\014ed.)150 4375 y Fk(In)m(v)m(ok)m(ed)40
15120b(with)g(unequal)h(e\013ectiv)m(e)e(and)i(real)g Fg(uid/gid)p
15121Fk(s)150 4522 y Fu(If)34 b(Bash)h(is)g(started)g(with)f(the)h
15122(e\013ectiv)m(e)i(user)d(\(group\))h(id)f(not)h(equal)g(to)g(the)g
15123(real)g(user)f(\(group\))h(id,)150 4631 y(and)26 b(the)i
15124Ft(-p)e Fu(option)h(is)g(not)h(supplied,)e(no)h(startup)g(\014les)g
15125(are)g(read,)h(shell)f(functions)g(are)g(not)g(inherited)150
151264741 y(from)41 b(the)g(en)m(vironmen)m(t,)j(the)d Ft(SHELLOPTS)p
15127Fu(,)h Ft(BASHOPTS)p Fu(,)g Ft(CDPATH)p Fu(,)g(and)e
15128Ft(GLOBIGNORE)e Fu(v)-5 b(ariables,)45 b(if)150 4850
15129y(they)28 b(app)s(ear)f(in)h(the)g(en)m(vironmen)m(t,)i(are)e(ignored,)
15130h(and)e(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)g(to)h(the)f(real)h
15131(user)150 4960 y(id.)62 b(If)38 b(the)f Ft(-p)h Fu(option)g(is)f
15132(supplied)g(at)h(in)m(v)m(o)s(cation,)k(the)c(startup)f(b)s(eha)m(vior)
15133h(is)g(the)g(same,)i(but)d(the)150 5070 y(e\013ectiv)m(e)c(user)d(id)g
15134(is)g(not)h(reset.)150 5324 y Fs(6.3)68 b(In)l(teractiv)l(e)47
15135b(Shells)p eop end
e2520247
CR
15136%%Page: 97 103
15137TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(6:)41
15138b(Bash)30 b(F)-8 b(eatures)2484 b(97)150 299 y Fk(6.3.1)63
fc527055 15139b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
5e6f45d9
CR
15140446 y Fu(An)f(in)m(teractiv)m(e)j(shell)e(is)f(one)h(started)g(without)
15141f(non-option)g(argumen)m(ts)h(\(unless)f Ft(-s)g Fu(is)g(sp)s
15142(eci\014ed\))150 555 y(and)29 b(without)h(sp)s(ecifying)g(the)g
15143Ft(-c)f Fu(option,)i(whose)e(input)g(and)g(error)h(output)f(are)h(b)s
15144(oth)f(connected)i(to)150 665 y(terminals)g(\(as)g(determined)f(b)m(y)g
15145Ft(isatty\(3\))p Fu(\),)e(or)j(one)f(started)h(with)f(the)h
d37a4722 15146Ft(-i)f Fu(option.)275 808 y(An)g(in)m(teractiv)m(e)j(shell)d
fc527055 15147(generally)i(reads)e(from)g(and)g(writes)g(to)h(a)g(user's)f(terminal.)
d37a4722 15148275 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 15149(e)g(used)f(to)i(set)f(the)g(p)s(ositional)h(parameters)f(when)f(an)h
d37a4722
CR
15150(in)m(ter-)150 1061 y(activ)m(e)g(shell)d(is)h(started.)150
151511269 y Fk(6.3.2)63 b(Is)41 b(this)g(Shell)g(In)m(teractiv)m(e?)150
151521416 y Fu(T)-8 b(o)30 b(determine)g(within)f(a)h(startup)g(script)f
fc527055 15153(whether)g(or)h(not)g(Bash)g(is)g(running)e(in)m(teractiv)m(ely)-8
d37a4722 15154b(,)33 b(test)e(the)150 1526 y(v)-5 b(alue)30 b(of)g(the)f(`)p
6e51e0d0
CR
15155Ft(-)p Fu(')h(sp)s(ecial)g(parameter.)41 b(It)29 b(con)m(tains)i
15156Ft(i)e Fu(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)44
d37a4722
CR
15157b(F)-8 b(or)30 b(example:)390 1669 y Ft(case)47 b("$-")f(in)390
151581779 y(*i*\))h(echo)f(This)h(shell)f(is)h(interactive)e(;;)390
151591888 y(*\))i(echo)g(This)f(shell)h(is)g(not)g(interactive)e(;;)390
151601998 y(esac)275 2141 y Fu(Alternativ)m(ely)-8 b(,)28
6e51e0d0
CR
15161b(startup)23 b(scripts)h(ma)m(y)g(examine)g(the)g(v)-5
15162b(ariable)25 b Ft(PS1)p Fu(;)g(it)g(is)e(unset)h(in)f(non-in)m
d37a4722
CR
15163(teractiv)m(e)150 2251 y(shells,)31 b(and)e(set)i(in)f(in)m(teractiv)m
15164(e)k(shells.)40 b(Th)m(us:)390 2394 y Ft(if)47 b([)h(-z)f("$PS1")f(];)h
15165(then)772 2503 y(echo)f(This)h(shell)f(is)i(not)f(interactive)390
151662613 y(else)772 2723 y(echo)f(This)h(shell)f(is)i(interactive)390
151672832 y(fi)150 3040 y Fk(6.3.3)63 b(In)m(teractiv)m(e)38
15168b(Shell)k(Beha)m(vior)150 3187 y Fu(When)30 b(the)h(shell)f(is)h
c302751c 15169(running)d(in)m(teractiv)m(ely)-8 b(,)34 b(it)d(c)m(hanges)h(its)f(b)s
d37a4722 15170(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3330
37c41ab1
CR
15171y(1.)61 b(Startup)37 b(\014les)g(are)h(read)f(and)g(executed)h(as)f
15172(describ)s(ed)g(in)g(Section)h(6.2)g([Bash)g(Startup)e(Files],)330
e2520247
CR
151733440 y(page)31 b(95.)199 3579 y(2.)61 b(Job)32 b(Con)m(trol)h(\(see)g
15174(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(117\))h(is)e(enabled)g(b)m
d37a4722 15175(y)g(default.)46 b(When)32 b(job)330 3689 y(con)m(trol)j(is)f(in)f
37c41ab1 15176(e\013ect,)k(Bash)d(ignores)g(the)g(k)m(eyb)s(oard-generated)h(job)e
d37a4722
CR
15177(con)m(trol)i(signals)g Ft(SIGTTIN)p Fu(,)330 3798 y
15178Ft(SIGTTOU)p Fu(,)29 b(and)g Ft(SIGTSTP)p Fu(.)199 3937
124d67cd
CR
15179y(3.)61 b(Bash)25 b(expands)e(and)h(displa)m(ys)h Ft(PS1)e
15180Fu(b)s(efore)h(reading)h(the)f(\014rst)g(line)h(of)f(a)h(command,)h
d37a4722 15181(and)e(expands)330 4047 y(and)33 b(displa)m(ys)h Ft(PS2)f
124d67cd 15182Fu(b)s(efore)h(reading)g(the)g(second)g(and)f(subsequen)m(t)g(lines)i
d37a4722 15183(of)f(a)g(m)m(ulti-line)h(com-)330 4156 y(mand.)42 b(Bash)31
124d67cd 15184b(expands)f(and)h(displa)m(ys)g Ft(PS0)f Fu(after)h(it)h(reads)f(a)g
e59452c7
CR
15185(command)g(but)f(b)s(efore)h(executing)330 4266 y(it.)54
15186b(See)35 b(Section)h(6.9)f([Con)m(trolling)i(the)d(Prompt],)i(page)g
e2520247 15187(106,)h(for)d(a)h(complete)i(list)e(of)g(prompt)330 4375
d37a4722 15188y(string)30 b(escap)s(e)h(sequences.)199 4514 y(4.)61
3c5683a4
CR
15189b(Bash)31 b(executes)i(the)e(v)-5 b(alues)32 b(of)g(the)f(set)h(elemen)
15190m(ts)g(of)g(the)f Ft(PROMPT_COMMAND)d Fu(arra)m(y)k(v)-5
15191b(ariable)32 b(as)330 4624 y(commands)27 b(b)s(efore)f(prin)m(ting)h
15192(the)g(primary)g(prompt,)g Ft($PS1)f Fu(\(see)i(Section)f(5.2)i([Bash)e
e2520247 15193(V)-8 b(ariables],)330 4733 y(page)31 b(80\).)199 4872
d37a4722 15194y(5.)61 b(Readline)27 b(\(see)g(Chapter)e(8)h([Command)g(Line)g
e2520247 15195(Editing],)h(page)g(121\))g(is)f(used)g(to)g(read)g(commands)330
d37a4722
CR
151964982 y(from)k(the)g(user's)g(terminal.)199 5121 y(6.)61
15197b(Bash)36 b(insp)s(ects)g(the)h(v)-5 b(alue)37 b(of)f(the)g
15198Ft(ignoreeof)e Fu(option)j(to)g Ft(set)29 b(-o)36 b Fu(instead)h(of)f
15199(exiting)i(imme-)330 5230 y(diately)f(when)e(it)i(receiv)m(es)h(an)e
15200Ft(EOF)f Fu(on)h(its)g(standard)f(input)g(when)h(reading)g(a)g(command)
15201g(\(see)330 5340 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g
e2520247
CR
15202(68\).)p eop end
15203%%Page: 98 104
15204TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(6:)41
15205b(Bash)30 b(F)-8 b(eatures)2484 b(98)199 299 y(7.)61
d37a4722 15206b(Command)43 b(history)h(\(see)h(Section)g(9.1)g([Bash)f(History)h(F)-8
e2520247 15207b(acilities],)51 b(page)45 b(156\))h(and)d(history)330
d37a4722 15208408 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m(teraction],)k
e2520247 15209(page)45 b(158\))h(are)f(enabled)g(b)m(y)f(default.)330
d37a4722
CR
15210518 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g(the)
15211g(\014le)g(named)f(b)m(y)h Ft($HISTFILE)d Fu(when)h(a)i(shell)g(with)
15212330 628 y(history)i(enabled)h(exits.)199 762 y(8.)61
15213b(Alias)31 b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i(page)e
e2520247 15214(102\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199 896
d37a4722
CR
15215y(9.)61 b(In)24 b(the)g(absence)h(of)f(an)m(y)h(traps,)g(Bash)g
15216(ignores)f Ft(SIGTERM)f Fu(\(see)i(Section)g(3.7.6)h([Signals],)g(page)
e2520247 15217f(46\).)154 1030 y(10.)61 b(In)29 b(the)g(absence)h(of)g(an)m(y)g
d37a4722 15218(traps,)f Ft(SIGINT)f Fu(is)h(caugh)m(t)i(and)e(handled)f(\(see)j
e2520247 15219(Section)f(3.7.6)h([Signals],)330 1140 y(page)g(46\).)42
d37a4722
CR
15220b Ft(SIGINT)29 b Fu(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)154
152211274 y(11.)61 b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
6e51e0d0 15222Ft(SIGHUP)d Fu(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
d37a4722 15223Ft(huponexit)e Fu(shell)330 1383 y(option)31 b(has)f(b)s(een)g(enabled)
e2520247 15224g(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(46\).)154
d37a4722 152251517 y(12.)61 b(The)29 b Ft(-n)g Fu(in)m(v)m(o)s(cation)j(option)e(is)g
6e51e0d0 15226(ignored,)g(and)f(`)p Ft(set)h(-n)p Fu(')f(has)h(no)f(e\013ect)j(\(see)
e2520247 15227e(Section)h(4.3.1)g([The)330 1627 y(Set)g(Builtin],)g(page)g(68\).)154
d37a4722 152281761 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
15229(dically)-8 b(,)34 b(dep)s(ending)c(on)i(the)g(v)-5 b(alues)32
15230b(of)g(the)h Ft(MAIL)p Fu(,)e Ft(MAILPATH)p Fu(,)330
d37a4722 152311871 y(and)f Ft(MAILCHECK)e Fu(shell)i(v)-5 b(ariables)31
6e51e0d0 15232b(\(see)h(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32
e2520247 15233b(page)f(80\).)154 2005 y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i
6e51e0d0
CR
15234(references)f(to)h(un)m(b)s(ound)c(shell)j(v)-5 b(ariables)34
15235b(after)g(`)p Ft(set)29 b(-u)p Fu(')k(has)g(b)s(een)330
d37a4722 152362114 y(enabled)d(will)h(not)g(cause)g(the)f(shell)h(to)g(exit)g(\(see)g
e2520247 15237(Section)h(4.3.1)g([The)e(Set)h(Builtin],)g(page)g(68\).)154
d37a4722 152382248 y(15.)61 b(The)48 b(shell)h(will)f(not)h(exit)g(on)g(expansion)f
6e51e0d0 15239(errors)g(caused)g(b)m(y)h Fr(v)-5 b(ar)54 b Fu(b)s(eing)48
d37a4722 15240b(unset)g(or)h(n)m(ull)f(in)330 2358 y Ft(${)p Fj(var)p
6e51e0d0 15241Ft(:?)p Fj(word)p Ft(})27 b Fu(expansions)j(\(see)h(Section)h(3.5.3)g
e59452c7 15242([Shell)e(P)m(arameter)i(Expansion],)e(page)h(26\).)154
d37a4722 152432492 y(16.)61 b(Redirection)31 b(errors)f(encoun)m(tered)h(b)m(y)f
6e51e0d0 15244(shell)h(builtins)f(will)g(not)h(cause)g(the)f(shell)h(to)g(exit.)154
d37a4722 152452626 y(17.)61 b(When)26 b(running)f(in)i Fm(posix)e Fu(mo)s(de,)j(a)f
6e51e0d0 15246(sp)s(ecial)g(builtin)f(returning)g(an)g(error)h(status)g(will)g(not)f
d37a4722 15247(cause)330 2736 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h
e2520247 15248([Bash)f(POSIX)e(Mo)s(de],)i(page)g(108\).)154 2870 y(18.)61
6e51e0d0
CR
15249b(A)34 b(failed)g Ft(exec)f Fu(will)h(not)g(cause)g(the)g(shell)g(to)g
15250(exit)h(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
e2520247 152512980 y(page)e(49\).)154 3114 y(19.)61 b(P)m(arser)31
37c41ab1 15252b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.)
fffe80d4
CR
15253154 3248 y(20.)61 b(If)28 b(the)g Ft(cdspell)f Fu(shell)h(option)h(is)g
15254(enabled,)g(the)f(shell)h(will)f(attempt)i(simple)e(sp)s(elling)h
15255(correction)330 3357 y(for)f(directory)h(argumen)m(ts)g(to)g(the)g
15256Ft(cd)e Fu(builtin)h(\(see)i(the)e(description)h(of)f(the)h
15257Ft(cdspell)d Fu(option)j(to)330 3467 y(the)j Ft(shopt)e
15258Fu(builtin)h(in)h(Section)g(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g
e2520247 15259(72\).)46 b(The)31 b Ft(cdspell)e Fu(option)330 3576
fffe80d4
CR
15260y(is)h(only)h(e\013ectiv)m(e)i(in)d(in)m(teractiv)m(e)j(shells.)154
152613711 y(21.)61 b(The)42 b(shell)h(will)g(c)m(hec)m(k)h(the)f(v)-5
15262b(alue)43 b(of)f(the)h Ft(TMOUT)e Fu(v)-5 b(ariable)44
15263b(and)e(exit)h(if)g(a)g(command)f(is)h(not)330 3820 y(read)30
15264b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)g(of)i(seconds)f
15265(after)g(prin)m(ting)g Ft($PS1)f Fu(\(see)i(Section)g(5.2)h([Bash)330
e2520247 152663930 y(V)-8 b(ariables],)32 b(page)f(80\).)150 4170 y
fffe80d4
CR
15267Fs(6.4)68 b(Bash)45 b(Conditional)h(Expressions)150 4329
15268y Fu(Conditional)25 b(expressions)f(are)g(used)g(b)m(y)g(the)g
15269Ft([[)g Fu(comp)s(ound)e(command)i(\(see)h(Section)g(3.2.5.2)i([Condi-)
15270150 4439 y(tional)h(Constructs],)g(page)f(12\))h(and)e(the)h
15271Ft(test)f Fu(and)g Ft([)h Fu(builtin)f(commands)h(\(see)g(Section)h
e2520247 15272(4.1)g([Bourne)150 4548 y(Shell)37 b(Builtins],)j(page)e(49\).)63
fffe80d4
CR
15273b(The)36 b Ft(test)g Fu(and)h Ft([)g Fu(commands)g(determine)g(their)h
15274(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
15275(argumen)m(ts;)h(see)f(the)h(descriptions)e(of)i(those)f(commands)g
15276(for)f(an)m(y)i(other)f(command-)150 4768 y(sp)s(eci\014c)h(actions.)
15277275 4902 y(Expressions)22 b(ma)m(y)h(b)s(e)g(unary)f(or)h(binary)-8
15278b(,)24 b(and)f(are)g(formed)g(from)g(the)g(follo)m(wing)h(primaries.)38
15279b(Unary)150 5011 y(expressions)c(are)g(often)g(used)g(to)g(examine)h
15280(the)f(status)g(of)h(a)f(\014le.)52 b(There)33 b(are)h(string)g(op)s
15281(erators)h(and)150 5121 y(n)m(umeric)c(comparison)g(op)s(erators)h(as)f
15282(w)m(ell.)44 b(Bash)31 b(handles)g(sev)m(eral)h(\014lenames)g(sp)s
15283(ecially)g(when)e(they)150 5230 y(are)35 b(used)e(in)i(expressions.)52
a6ae8f35 15284b(If)34 b(the)h(op)s(erating)f(system)h(on)f(whic)m(h)g(Bash)h(is)f
fffe80d4 15285(running)f(pro)m(vides)h(these)150 5340 y(sp)s(ecial)22
a6ae8f35 15286b(\014les,)i(Bash)e(will)g(use)f(them;)k(otherwise)d(it)g(will)g(em)m
fffe80d4
CR
15287(ulate)h(them)f(in)m(ternally)h(with)e(this)h(b)s(eha)m(vior:)p
15288eop end
e2520247
CR
15289%%Page: 99 105
15290TeXDict begin 99 104 bop 150 -116 a Fu(Chapter)30 b(6:)41
15291b(Bash)30 b(F)-8 b(eatures)2484 b(99)150 299 y(If)27
fffe80d4
CR
15292b(the)g Fr(\014le)33 b Fu(argumen)m(t)27 b(to)h(one)g(of)f(the)h
15293(primaries)f(is)g(of)h(the)f(form)g Ft(/dev/fd/)p Fj(N)p
15294Fu(,)e(then)i(\014le)h(descriptor)f Fr(N)150 408 y Fu(is)g(c)m(hec)m(k)
15295m(ed.)42 b(If)26 b(the)h Fr(\014le)32 b Fu(argumen)m(t)c(to)f(one)h(of)
15296f(the)g(primaries)f(is)h(one)h(of)f Ft(/dev/stdin)p Fu(,)e
15297Ft(/dev/stdout)p Fu(,)150 518 y(or)30 b Ft(/dev/stderr)p
15298Fu(,)e(\014le)i(descriptor)h(0,)g(1,)g(or)f(2,)h(resp)s(ectiv)m(ely)-8
15299b(,)32 b(is)f(c)m(hec)m(k)m(ed.)275 655 y(When)37 b(used)g(with)g
15300Ft([[)p Fu(,)i(the)f(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
15301Fu(')h(op)s(erators)g(sort)g(lexicographically)i(using)d(the)h(curren)m
15302(t)150 765 y(lo)s(cale.)k(The)30 b Ft(test)f Fu(command)i(uses)f(ASCI)s
15303(I)e(ordering.)275 902 y(Unless)44 b(otherwise)h(sp)s(eci\014ed,)j
e59452c7 15304(primaries)c(that)h(op)s(erate)g(on)g(\014les)f(follo)m(w)i(sym)m(b)s
fffe80d4 15305(olic)f(links)g(and)150 1011 y(op)s(erate)31 b(on)f(the)h(target)h(of)e
e59452c7 15306(the)h(link,)f(rather)h(than)f(the)g(link)h(itself.)150
fffe80d4
CR
153071175 y Ft(-a)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
15308Fr(\014le)36 b Fu(exists.)150 1337 y Ft(-b)30 b Fj(file)162
e59452c7
CR
15309b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
15310b(and)f(is)g(a)h(blo)s(c)m(k)g(sp)s(ecial)g(\014le.)150
fffe80d4 153111499 y Ft(-c)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
e59452c7 15312Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
fffe80d4 15313f(\014le.)150 1661 y Ft(-d)f Fj(file)162 b Fu(T)-8 b(rue)30
e59452c7 15314b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(directory)-8
fffe80d4
CR
15315b(.)150 1823 y Ft(-e)30 b Fj(file)162 b Fu(T)-8 b(rue)30
15316b(if)g Fr(\014le)36 b Fu(exists.)150 1985 y Ft(-f)30
6e51e0d0 15317b Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
124d67cd 15318b Fu(exists)31 b(and)f(is)g(a)h(regular)f(\014le.)150
fffe80d4 153192147 y Ft(-g)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15320Fr(\014le)36 b Fu(exists)31 b(and)f(its)g(set-group-id)h(bit)g(is)f
fffe80d4 15321(set.)150 2309 y Ft(-h)g Fj(file)162 b Fu(T)-8 b(rue)30
124d67cd 15322b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g
fffe80d4 15323(link.)150 2471 y Ft(-k)f Fj(file)162 b Fu(T)-8 b(rue)30
124d67cd 15324b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g Ft(")p
fffe80d4 15325Fu(stic)m(ky)p Ft(")h Fu(bit)g(is)f(set.)150 2633 y Ft(-p)g
fc527055 15326Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
124d67cd 15327Fu(exists)31 b(and)f(is)g(a)h(named)f(pip)s(e)f(\(FIF)m(O\).)150
fffe80d4 153282795 y Ft(-r)h Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15329Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(readable.)150
fffe80d4 153302957 y Ft(-s)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15331Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(a)g(size)i(greater)f(than)f
fffe80d4 15332(zero.)150 3119 y Ft(-t)g Fj(fd)258 b Fu(T)-8 b(rue)30
124d67cd 15333b(if)g(\014le)h(descriptor)f Fr(fd)j Fu(is)e(op)s(en)e(and)h(refers)g
fffe80d4 15334(to)h(a)g(terminal.)150 3281 y Ft(-u)f Fj(file)162 b
124d67cd 15335Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g
fffe80d4 15336(set-user-id)h(bit)f(is)h(set.)150 3443 y Ft(-w)f Fj(file)162
6e51e0d0 15337b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
fffe80d4 15338b(and)f(is)g(writable.)150 3605 y Ft(-x)g Fj(file)162
6e51e0d0 15339b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
fffe80d4 15340b(and)f(is)g(executable.)150 3767 y Ft(-G)g Fj(file)162
124d67cd
CR
15341b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
15342b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j(group)d(id.)150
fffe80d4 153433929 y Ft(-L)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15344Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150
fffe80d4 153454091 y Ft(-N)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
124d67cd 15346Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(b)s(een)f(mo)s(di\014ed)h
fffe80d4 15347(since)g(it)h(w)m(as)g(last)g(read.)150 4253 y Ft(-O)f
6e51e0d0 15348Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
124d67cd 15349Fu(exists)31 b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j
fffe80d4 15350(user)d(id.)150 4416 y Ft(-S)g Fj(file)162 b Fu(T)-8
124d67cd 15351b(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
15352(k)m(et.)150 4578 y Fj(file1)e Ft(-ef)g Fj(file2)630
153534687 y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(and)30
124d67cd 15354b Fr(\014le2)38 b Fu(refer)30 b(to)i(the)e(same)h(device)g(and)f(ino)s
fffe80d4
CR
15355(de)g(n)m(um)m(b)s(ers.)150 4849 y Fj(file1)f Ft(-nt)g
15356Fj(file2)630 4959 y Fu(T)-8 b(rue)23 b(if)h Fr(\014le1)32
124d67cd
CR
15357b Fu(is)24 b(new)m(er)g(\(according)h(to)g(mo)s(di\014cation)f(date\))h
15358(than)f Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le1)31 b
fffe80d4 15359Fu(exists)630 5068 y(and)f Fr(\014le2)38 b Fu(do)s(es)30
e59452c7 15360b(not.)150 5230 y Fj(file1)f Ft(-ot)g Fj(file2)630 5340
124d67cd
CR
15361y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(is)31 b(older)f(than)g
15362Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le2)38 b Fu(exists)31
e59452c7 15363b(and)f Fr(\014le1)38 b Fu(do)s(es)30 b(not.)p eop end
e2520247
CR
15364%%Page: 100 106
15365TeXDict begin 100 105 bop 150 -116 a Fu(Chapter)30 b(6:)41
15366b(Bash)30 b(F)-8 b(eatures)2439 b(100)150 299 y Ft(-o)30
e59452c7
CR
15367b Fj(optname)630 408 y Fu(T)-8 b(rue)41 b(if)g(the)g(shell)h(option)f
15368Fr(optname)47 b Fu(is)41 b(enabled.)73 b(The)41 b(list)h(of)f(options)h
15369(app)s(ears)e(in)630 518 y(the)33 b(description)h(of)f(the)g
15370Ft(-o)g Fu(option)g(to)h(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)g
e2520247 15371(4.3.1)h([The)e(Set)630 628 y(Builtin],)e(page)g(68\).)150
e59452c7
CR
15372783 y Ft(-v)f Fj(varname)630 892 y Fu(T)-8 b(rue)30 b(if)g(the)h(shell)
15373f(v)-5 b(ariable)32 b Fr(v)-5 b(arname)35 b Fu(is)30
15374b(set)h(\(has)g(b)s(een)e(assigned)i(a)g(v)-5 b(alue\).)150
153751047 y Ft(-R)30 b Fj(varname)630 1157 y Fu(T)-8 b(rue)30
15376b(if)g(the)h(shell)f(v)-5 b(ariable)32 b Fr(v)-5 b(arname)35
15377b Fu(is)30 b(set)h(and)f(is)h(a)f(name)h(reference.)150
153781312 y Ft(-z)f Fj(string)66 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)g
15379(of)f Fr(string)38 b Fu(is)31 b(zero.)150 1467 y Ft(-n)f
15380Fj(string)150 1576 y(string)192 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)
15381g(of)f Fr(string)38 b Fu(is)31 b(non-zero.)150 1731 y
15382Fj(string1)d Ft(==)i Fj(string2)150 1841 y(string1)e
15383Ft(=)i Fj(string2)630 1951 y Fu(T)-8 b(rue)43 b(if)h(the)g(strings)g
15384(are)g(equal.)82 b(When)44 b(used)f(with)g(the)h Ft([[)g
15385Fu(command,)j(this)d(p)s(er-)630 2060 y(forms)d(pattern)g(matc)m(hing)i
15386(as)f(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.2.5.2)i
15387([Conditional)630 2170 y(Constructs],)30 b(page)h(12\).)630
153882302 y(`)p Ft(=)p Fu(')g(should)e(b)s(e)h(used)f(with)h(the)h
15389Ft(test)e Fu(command)h(for)g Fm(posix)g Fu(conformance.)150
153902457 y Fj(string1)e Ft(!=)i Fj(string2)630 2567 y Fu(T)-8
fc527055 15391b(rue)30 b(if)g(the)h(strings)f(are)h(not)f(equal.)150
e59452c7 153922722 y Fj(string1)e Ft(<)i Fj(string2)630 2831 y Fu(T)-8
fc527055 15393b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(b)s(efore)f
e59452c7
CR
15394Fr(string2)38 b Fu(lexicographically)-8 b(.)150 2986
15395y Fj(string1)28 b Ft(>)i Fj(string2)630 3096 y Fu(T)-8
fc527055 15396b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(after)g
e59452c7
CR
15397Fr(string2)38 b Fu(lexicographically)-8 b(.)150 3251
15398y Fj(arg1)29 b Ft(OP)h Fj(arg2)630 3361 y Ft(OP)j Fu(is)h(one)g(of)h(`)
fc527055
CR
15399p Ft(-eq)p Fu(',)f(`)p Ft(-ne)p Fu(',)h(`)p Ft(-lt)p
15400Fu(',)g(`)p Ft(-le)p Fu(',)f(`)p Ft(-gt)p Fu(',)h(or)f(`)p
15401Ft(-ge)p Fu('.)51 b(These)34 b(arithmetic)h(binary)630
e59452c7 154023470 y(op)s(erators)h(return)e(true)i(if)f Fr(arg1)44
fc527055 15403b Fu(is)36 b(equal)g(to,)i(not)e(equal)g(to,)i(less)e(than,)h(less)f
e59452c7 15404(than)f(or)630 3580 y(equal)29 b(to,)g(greater)h(than,)e(or)g(greater)i
fc527055 15405(than)d(or)i(equal)f(to)h Fr(arg2)p Fu(,)h(resp)s(ectiv)m(ely)-8
e59452c7 15406b(.)42 b Fr(Arg1)36 b Fu(and)630 3689 y Fr(arg2)41 b
124d67cd
CR
15407Fu(ma)m(y)34 b(b)s(e)f(p)s(ositiv)m(e)h(or)f(negativ)m(e)j(in)m
15408(tegers.)50 b(When)33 b(used)g(with)g(the)g Ft([[)g Fu(command,)630
e59452c7 154093799 y Fr(Arg1)41 b Fu(and)33 b Fr(Arg2)41 b Fu(are)33
124d67cd 15410b(ev)-5 b(aluated)35 b(as)e(arithmetic)i(expressions)d(\(see)j(Section)
e2520247 15411f(6.5)g([Shell)630 3908 y(Arithmetic],)e(page)f(100\).)150
e59452c7 154124145 y Fs(6.5)68 b(Shell)45 b(Arithmetic)150 4304 y Fu(The)26
b729dac1
CR
15413b(shell)h(allo)m(ws)h(arithmetic)f(expressions)g(to)g(b)s(e)f(ev)-5
15414b(aluated,)29 b(as)d(one)h(of)g(the)g(shell)f(expansions)h(or)f(b)m(y)
e59452c7 15415150 4414 y(using)h(the)g Ft(\(\()g Fu(comp)s(ound)e(command,)j(the)g
b729dac1 15416Ft(let)e Fu(builtin,)i(or)f(the)g Ft(-i)g Fu(option)h(to)f(the)h
e59452c7 15417Ft(declare)d Fu(builtin.)275 4546 y(Ev)-5 b(aluation)27
b729dac1
CR
15418b(is)g(done)f(in)g(\014xed-width)g(in)m(tegers)i(with)e(no)h(c)m(hec)m
15419(k)h(for)e(o)m(v)m(er\015o)m(w,)j(though)d(division)h(b)m(y)150
e59452c7 154204656 y(0)g(is)g(trapp)s(ed)f(and)h(\015agged)g(as)h(an)f(error.)39
b729dac1 15421b(The)26 b(op)s(erators)h(and)g(their)g(precedence,)h(asso)s(ciativit)m
e59452c7 15422(y)-8 b(,)32 b(and)150 4765 y(v)-5 b(alues)35 b(are)h(the)f(same)g(as)h
b729dac1 15423(in)e(the)h(C)g(language.)56 b(The)35 b(follo)m(wing)h(list)g(of)f(op)s
e59452c7 15424(erators)g(is)g(group)s(ed)f(in)m(to)150 4875 y(lev)m(els)27
b729dac1
CR
15425b(of)f(equal-precedence)i(op)s(erators.)39 b(The)25 b(lev)m(els)j(are)e
15426(listed)h(in)e(order)h(of)g(decreasing)g(precedence.)150
e59452c7 154275030 y Fj(id)p Ft(++)j Fj(id)p Ft(--)67 b Fu(v)-5 b(ariable)31
b729dac1 15428b(p)s(ost-incremen)m(t)g(and)f(p)s(ost-decremen)m(t)150
e59452c7
CR
154295185 y Ft(++)p Fj(id)f Ft(--)p Fj(id)67 b Fu(v)-5 b(ariable)31
15430b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150 5340
15431y Ft(-)g(+)354 b Fu(unary)29 b(min)m(us)h(and)g(plus)p
15432eop end
e2520247
CR
15433%%Page: 101 107
15434TeXDict begin 101 106 bop 150 -116 a Fu(Chapter)30 b(6:)41
15435b(Bash)30 b(F)-8 b(eatures)2439 b(101)150 299 y Ft(!)30
e59452c7
CR
15436b(~)354 b Fu(logical)33 b(and)d(bit)m(wise)h(negation)150
15437482 y Ft(**)384 b Fu(exp)s(onen)m(tiation)150 664 y Ft(*)30
15438b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d(remainder)150
15439847 y Ft(+)g(-)354 b Fu(addition,)31 b(subtraction)150
154401030 y Ft(<<)f(>>)258 b Fu(left)31 b(and)f(righ)m(t)h(bit)m(wise)g
15441(shifts)150 1213 y Ft(<=)f(>=)g(<)g(>)102 b Fu(comparison)150
154421395 y Ft(==)30 b(!=)258 b Fu(equalit)m(y)32 b(and)e(inequalit)m(y)150
154431578 y Ft(&)432 b Fu(bit)m(wise)31 b(AND)150 1761 y Ft(^)432
15444b Fu(bit)m(wise)31 b(exclusiv)m(e)h(OR)150 1944 y Ft(|)432
15445b Fu(bit)m(wise)31 b(OR)150 2126 y Ft(&&)384 b Fu(logical)33
15446b(AND)150 2309 y Ft(||)384 b Fu(logical)33 b(OR)150 2492
d052bd6f
CR
15447y Ft(expr)c(?)h(if-true-expr)d(:)j(if-false-expr)630
154482601 y Fu(conditional)i(op)s(erator)150 2784 y Ft(=)e(*=)g(/=)g(\045=)f
15449(+=)h(-=)g(<<=)f(>>=)h(&=)g(^=)f(|=)630 2894 y Fu(assignmen)m(t)150
154503076 y Ft(expr1)g(,)h(expr2)630 3186 y Fu(comma)275 3380
15451y(Shell)38 b(v)-5 b(ariables)39 b(are)g(allo)m(w)m(ed)i(as)e(op)s
15452(erands;)i(parameter)e(expansion)g(is)f(p)s(erformed)g(b)s(efore)g(the)
15453150 3490 y(expression)g(is)g(ev)-5 b(aluated.)66 b(Within)38
15454b(an)h(expression,)h(shell)e(v)-5 b(ariables)39 b(ma)m(y)g(also)g(b)s
15455(e)f(referenced)g(b)m(y)150 3600 y(name)31 b(without)f(using)g(the)h
15456(parameter)g(expansion)f(syn)m(tax.)42 b(A)31 b(shell)f(v)-5
15457b(ariable)32 b(that)f(is)f(n)m(ull)h(or)f(unset)150 3709
15458y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b)m(y)g(name)h
15459(without)f(using)g(the)g(parameter)h(expansion)f(syn)m(tax.)150
154603819 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5 b(ariable)36
15461b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h(expression)f(when)f
15462(it)h(is)g(referenced,)i(or)150 3928 y(when)27 b(a)h(v)-5
15463b(ariable)29 b(whic)m(h)e(has)h(b)s(een)f(giv)m(en)i(the)f
15464Ft(integer)e Fu(attribute)i(using)g(`)p Ft(declare)g(-i)p
e59452c7
CR
15465Fu(')g(is)g(assigned)150 4038 y(a)33 b(v)-5 b(alue.)49
15466b(A)33 b(n)m(ull)g(v)-5 b(alue)34 b(ev)-5 b(aluates)34
15467b(to)g(0.)49 b(A)33 b(shell)g(v)-5 b(ariable)34 b(need)e(not)i(ha)m(v)m
15468(e)g(its)f Ft(integer)e Fu(attribute)150 4148 y(turned)e(on)h(to)i(b)s
15469(e)d(used)h(in)g(an)g(expression.)275 4305 y(In)m(teger)41
15470b(constan)m(ts)g(follo)m(w)h(the)e(C)g(language)i(de\014nition,)g
15471(without)f(su\016xes)e(or)h(c)m(haracter)i(con-)150 4415
15472y(stan)m(ts.)f(Constan)m(ts)31 b(with)f(a)g(leading)h(0)f(are)h(in)m
15473(terpreted)f(as)g(o)s(ctal)i(n)m(um)m(b)s(ers.)39 b(A)30
15474b(leading)h(`)p Ft(0x)p Fu(')f(or)g(`)p Ft(0X)p Fu(')150
154754525 y(denotes)g(hexadecimal.)42 b(Otherwise,)30 b(n)m(um)m(b)s(ers)f
15476(tak)m(e)i(the)f(form)g([)p Fr(base)5 b Ft(#)p Fu(])p
15477Fr(n)p Fu(,)30 b(where)f(the)i(optional)g Fr(base)150
154784634 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
15479(and)e(64)i(represen)m(ting)g(the)f(arithmetic)i(base,)e(and)g
15480Fr(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
15481b(If)30 b Fr(base)5 b Ft(#)30 b Fu(is)f(omitted,)i(then)f(base)g(10)g
15482(is)g(used.)40 b(When)30 b(sp)s(ecifying)f Fr(n)p Fu(,)h(if)f(a)i
e59452c7 15483(non-digit)f(is)150 4853 y(required,)k(the)g(digits)h(greater)g(than)e
602eae4d 15484(9)i(are)f(represen)m(ted)g(b)m(y)f(the)h(lo)m(w)m(ercase)j(letters,)f
e59452c7 15485(the)e(upp)s(ercase)150 4963 y(letters,)26 b(`)p Ft(@)p
602eae4d
CR
15486Fu(',)g(and)d(`)p Ft(_)p Fu(',)i(in)e(that)i(order.)38
15487b(If)23 b Fr(base)29 b Fu(is)23 b(less)h(than)g(or)f(equal)h(to)h(36,)h
e59452c7 15488(lo)m(w)m(ercase)g(and)d(upp)s(ercase)150 5073 y(letters)32
602eae4d
CR
15489b(ma)m(y)f(b)s(e)e(used)h(in)m(terc)m(hangeably)i(to)f(represen)m(t)g
15490(n)m(um)m(b)s(ers)e(b)s(et)m(w)m(een)i(10)g(and)f(35.)275
e59452c7 154915230 y(Op)s(erators)44 b(are)h(ev)-5 b(aluated)46 b(in)f(order)f(of)h
602eae4d 15492(precedence.)85 b(Sub-expressions)44 b(in)g(paren)m(theses)i(are)150
e59452c7
CR
154935340 y(ev)-5 b(aluated)32 b(\014rst)d(and)h(ma)m(y)h(o)m(v)m(erride)g
15494(the)g(precedence)g(rules)f(ab)s(o)m(v)m(e.)p eop end
e2520247
CR
15495%%Page: 102 108
15496TeXDict begin 102 107 bop 150 -116 a Fu(Chapter)30 b(6:)41
15497b(Bash)30 b(F)-8 b(eatures)2439 b(102)150 299 y Fs(6.6)68
d052bd6f
CR
15498b(Aliases)150 458 y Fr(Aliases)31 b Fu(allo)m(w)d(a)f(string)f(to)i(b)s
15499(e)d(substituted)h(for)g(a)h(w)m(ord)f(that)h(is)g(in)f(a)h(p)s
15500(osition)f(in)g(the)h(input)e(where)h(it)150 568 y(can)33
15501b(b)s(e)e(the)i(\014rst)f(w)m(ord)g(of)g(a)h(simple)f(command.)47
15502b(Aliases)34 b(ha)m(v)m(e)f(names)f(and)g(corresp)s(onding)g(v)-5
15503b(alues)150 677 y(that)25 b(are)g(set)g(and)f(unset)g(using)g(the)h
15504Ft(alias)e Fu(and)h Ft(unalias)f Fu(builtin)h(commands)g(\(see)i
e2520247 15505(Chapter)e(4)h([Shell)150 787 y(Builtin)31 b(Commands],)f(page)h(49\).)
d052bd6f
CR
15506275 934 y(If)g(the)g(shell)h(reads)f(an)g(unquoted)g(w)m(ord)g(in)g
15507(the)h(righ)m(t)g(p)s(osition,)g(it)g(c)m(hec)m(ks)h(the)f(w)m(ord)f
15508(to)h(see)g(if)f(it)150 1044 y(matc)m(hes)h(an)f(alias)h(name.)43
15509b(If)30 b(it)i(matc)m(hes,)g(the)f(shell)g(replaces)h(the)f(w)m(ord)g
15510(with)f(the)i(alias)g(v)-5 b(alue,)32 b(and)150 1153
15511y(reads)h(that)h(v)-5 b(alue)33 b(as)h(if)f(it)h(had)e(b)s(een)h(read)g
15512(instead)g(of)h(the)f(w)m(ord.)49 b(The)33 b(shell)g(do)s(esn't)g(lo)s
15513(ok)h(at)g(an)m(y)150 1263 y(c)m(haracters)e(follo)m(wing)g(the)e(w)m
15514(ord)g(b)s(efore)g(attempting)i(alias)f(substitution.)275
155151410 y(The)d(c)m(haracters)i(`)p Ft(/)p Fu(',)f(`)p Ft($)p
15516Fu(',)g(`)p Ft(`)p Fu(',)g(`)p Ft(=)p Fu(')g(and)f(an)m(y)h(of)g(the)f
15517(shell)h(metac)m(haracters)i(or)e(quoting)f(c)m(haracters)150
155181519 y(listed)g(ab)s(o)m(v)m(e)h(ma)m(y)f(not)g(app)s(ear)f(in)g(an)g
15519(alias)i(name.)40 b(The)27 b(replacemen)m(t)i(text)g(ma)m(y)f(con)m
15520(tain)h(an)m(y)f(v)-5 b(alid)150 1629 y(shell)28 b(input,)g(including)g
15521(shell)g(metac)m(haracters.)42 b(The)28 b(\014rst)f(w)m(ord)h(of)g(the)
15522g(replacemen)m(t)i(text)f(is)f(tested)150 1738 y(for)e(aliases,)j(but)d
15523(a)h(w)m(ord)f(that)h(is)g(iden)m(tical)h(to)f(an)g(alias)g(b)s(eing)f
15524(expanded)g(is)h(not)f(expanded)g(a)h(second)150 1848
15525y(time.)41 b(This)28 b(means)h(that)g(one)g(ma)m(y)h(alias)g
15526Ft(ls)e Fu(to)i Ft("ls)f(-F")p Fu(,)g(for)f(instance,)j(and)d(Bash)h
15527(do)s(es)f(not)h(try)g(to)150 1958 y(recursiv)m(ely)i(expand)f(the)g
15528(replacemen)m(t)i(text.)275 2104 y(If)25 b(the)i(last)g(c)m(haracter)h
15529(of)e(the)g(alias)i(v)-5 b(alue)26 b(is)h(a)f Ft(blank)p
15530Fu(,)g(then)g(the)g(next)h(command)f(w)m(ord)f(follo)m(wing)150
155312214 y(the)31 b(alias)g(is)g(also)g(c)m(hec)m(k)m(ed)h(for)e(alias)i
15532(expansion.)275 2361 y(Aliases)d(are)f(created)i(and)d(listed)i(with)f
15533(the)g Ft(alias)f Fu(command,)h(and)g(remo)m(v)m(ed)h(with)f(the)g
15534Ft(unalias)150 2471 y Fu(command.)275 2617 y(There)44
15535b(is)h(no)g(mec)m(hanism)g(for)f(using)h(argumen)m(ts)g(in)f(the)h
15536(replacemen)m(t)i(text,)i(as)d(in)e Ft(csh)p Fu(.)83
15537b(If)150 2727 y(argumen)m(ts)44 b(are)g(needed,)j(use)d(a)g(shell)g
15538(function)g(\(see)g(Section)h(3.3)g([Shell)f(F)-8 b(unctions],)48
15539b(page)d(19\))150 2837 y(instead.)275 2984 y(Aliases)33
15540b(are)h(not)e(expanded)g(when)g(the)h(shell)g(is)g(not)g(in)m(teractiv)
15541m(e,)j(unless)c(the)h Ft(expand_aliases)150 3093 y Fu(shell)e(option)f
15542(is)h(set)g(using)f Ft(shopt)f Fu(\(see)i(Section)g(4.3.2)h([The)e
e2520247 15543(Shopt)g(Builtin],)h(page)g(72\).)275 3240 y(The)38 b(rules)h
d052bd6f
CR
15544(concerning)h(the)f(de\014nition)g(and)g(use)g(of)g(aliases)i(are)e
15545(somewhat)h(confusing.)67 b(Bash)150 3350 y(alw)m(a)m(ys)37
15546b(reads)f(at)h(least)g(one)f(complete)i(line)e(of)g(input,)h(and)e(all)
15547i(lines)f(that)g(mak)m(e)h(up)e(a)h(comp)s(ound)150 3459
15548y(command,)29 b(b)s(efore)g(executing)i(an)m(y)e(of)h(the)f(commands)g
15549(on)g(that)h(line)f(or)h(the)f(comp)s(ound)f(command.)150
155503569 y(Aliases)g(are)g(expanded)e(when)g(a)i(command)f(is)g(read,)h
15551(not)f(when)f(it)i(is)f(executed.)41 b(Therefore,)28
15552b(an)f(alias)150 3678 y(de\014nition)36 b(app)s(earing)h(on)f(the)h
15553(same)g(line)g(as)g(another)g(command)f(do)s(es)g(not)h(tak)m(e)i
15554(e\013ect)f(un)m(til)f(the)150 3788 y(next)i(line)g(of)g(input)f(is)h
15555(read.)66 b(The)38 b(commands)h(follo)m(wing)h(the)f(alias)h
15556(de\014nition)e(on)h(that)g(line)h(are)150 3898 y(not)33
15557b(a\013ected)h(b)m(y)f(the)g(new)f(alias.)49 b(This)32
15558b(b)s(eha)m(vior)h(is)g(also)g(an)g(issue)g(when)e(functions)i(are)g
15559(executed.)150 4007 y(Aliases)c(are)g(expanded)e(when)g(a)i(function)e
15560(de\014nition)h(is)g(read,)h(not)f(when)g(the)g(function)g(is)g
15561(executed,)150 4117 y(b)s(ecause)36 b(a)h(function)f(de\014nition)f(is)
15562i(itself)g(a)f(command.)58 b(As)36 b(a)h(consequence,)h(aliases)g
15563(de\014ned)d(in)h(a)150 4226 y(function)28 b(are)h(not)g(a)m(v)-5
d61300ec 15564b(ailable)31 b(un)m(til)e(after)g(that)g(function)f(is)g(executed.)41
fc527055 15565b(T)-8 b(o)29 b(b)s(e)f(safe,)i(alw)m(a)m(ys)g(put)e(alias)150
d052bd6f 155664336 y(de\014nitions)i(on)g(a)h(separate)g(line,)g(and)f(do)g(not)h
fc527055 15567(use)f Ft(alias)f Fu(in)h(comp)s(ound)f(commands.)275
d052bd6f 155684483 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
fc527055 15569(functions)f(are)g(preferred)g(o)m(v)m(er)h(aliases.)150
d052bd6f 155704742 y Fs(6.7)68 b(Arra)l(ys)150 4902 y Fu(Bash)33 b(pro)m(vides)g
fc527055 15571(one-dimensional)g(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
c302751c 15572b(ariables.)49 b(An)m(y)33 b(v)-5 b(ariable)33 b(ma)m(y)150
d052bd6f 155735011 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
6e51e0d0 15574Ft(declare)e Fu(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y)
d052bd6f 15575-8 b(.)46 b(There)32 b(is)150 5121 y(no)h(maxim)m(um)g(limit)h(on)f
c302751c 15576(the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i(requiremen)
d052bd6f 15577m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 5230
c302751c
CR
15578y(or)26 b(assigned)h(con)m(tiguously)-8 b(.)41 b(Indexed)25
15579b(arra)m(ys)i(are)f(referenced)g(using)g(in)m(tegers)i(\(including)e
e2520247
CR
15580(arithmetic)150 5340 y(expressions)34 b(\(see)h(Section)h(6.5)f([Shell)
15581g(Arithmetic],)i(page)e(100\)\))h(and)e(are)h(zero-based;)i(asso)s
d052bd6f 15582(ciativ)m(e)p eop end
e2520247
CR
15583%%Page: 103 109
15584TeXDict begin 103 108 bop 150 -116 a Fu(Chapter)30 b(6:)41
15585b(Bash)30 b(F)-8 b(eatures)2439 b(103)150 299 y(arra)m(ys)37
d052bd6f
CR
15586b(use)f(arbitrary)g(strings.)59 b(Unless)36 b(otherwise)h(noted,)h
15587(indexed)e(arra)m(y)h(indices)f(m)m(ust)g(b)s(e)g(non-)150
15588408 y(negativ)m(e)d(in)m(tegers.)275 541 y(An)26 b(indexed)h(arra)m(y)h
15589(is)f(created)h(automatically)j(if)c(an)m(y)g(v)-5 b(ariable)28
15590b(is)g(assigned)f(to)h(using)f(the)g(syn)m(tax)390 674
15591y Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p Fj(value)150
15592806 y Fu(The)34 b Fr(subscript)h Fu(is)g(treated)g(as)g(an)f
15593(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5 b(aluate)36
15594b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150 916 y(explicitly)32
15595b(declare)f(an)g(arra)m(y)-8 b(,)31 b(use)390 1049 y
15596Ft(declare)46 b(-a)h Fj(name)150 1181 y Fu(The)30 b(syn)m(tax)390
155971314 y Ft(declare)46 b(-a)h Fj(name)p Ft([)p Fj(subscript)p
15598Ft(])150 1447 y Fu(is)30 b(also)i(accepted;)g(the)e Fr(subscript)h
15599Fu(is)g(ignored.)150 1579 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h
15600(created)h(using)390 1712 y Ft(declare)46 b(-A)h Fj(name)275
156011845 y Fu(A)m(ttributes)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g
e59452c7 15602(arra)m(y)g(v)-5 b(ariable)47 b(using)e(the)h Ft(declare)e
d052bd6f 15603Fu(and)h Ft(readonly)150 1954 y Fu(builtins.)40 b(Eac)m(h)31
e59452c7 15604b(attribute)g(applies)g(to)g(all)g(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)
d052bd6f
CR
15605-8 b(.)275 2087 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
15606(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 2220 y Fj(name)p
15607Ft(=\()p Fj(value1)44 b(value2)j Ft(...)f(\))150 2352
e59452c7
CR
15608y Fu(where)33 b(eac)m(h)i Fr(v)-5 b(alue)40 b Fu(ma)m(y)34
15609b(b)s(e)g(of)g(the)g(form)f Ft([)p Fj(subscript)p Ft(]=)p
15610Fr(string)p Fu(.)48 b(Indexed)33 b(arra)m(y)h(assignmen)m(ts)h(do)150
d052bd6f 156112462 y(not)26 b(require)f(an)m(ything)g(but)g Fr(string)p
e59452c7 15612Fu(.)39 b(When)25 b(assigning)h(to)g(indexed)f(arra)m(ys,)i(if)e(the)h
d052bd6f 15613(optional)g(subscript)150 2571 y(is)h(supplied,)f(that)h(index)g(is)f
e59452c7 15614(assigned)h(to;)i(otherwise)e(the)g(index)g(of)f(the)h(elemen)m(t)i
d052bd6f 15615(assigned)d(is)h(the)g(last)150 2681 y(index)j(assigned)h(to)g(b)m(y)f
e59452c7 15616(the)g(statemen)m(t)j(plus)c(one.)41 b(Indexing)30 b(starts)h(at)g
d052bd6f
CR
15617(zero.)275 2814 y(Eac)m(h)36 b Fr(v)-5 b(alue)41 b Fu(in)35
15618b(the)h(list)h(undergo)s(es)d(the)i(shell)g(expansions)f(describ)s(ed)g
15619(ab)s(o)m(v)m(e)i(\(see)f(Section)h(3.5)150 2923 y([Shell)e
15620(Expansions],)g(page)g(24\),)i(but)d Fr(v)-5 b(alue)5
15621b Fu(s)35 b(that)g(are)g(v)-5 b(alid)35 b(v)-5 b(ariable)35
15622b(assignmen)m(ts)h(including)e(the)150 3033 y(brac)m(k)m(ets)22
15623b(and)e(subscript)f(do)h(not)h(undergo)f(brace)h(expansion)f(and)g(w)m
15624(ord)g(splitting,)k(as)c(with)h(individual)150 3142 y(v)-5
15625b(ariable)31 b(assignmen)m(ts.)275 3275 y(When)k(assigning)i(to)g(an)f
15626(asso)s(ciativ)m(e)i(arra)m(y)-8 b(,)39 b(the)d(w)m(ords)f(in)h(a)h
15627(comp)s(ound)d(assignmen)m(t)j(ma)m(y)g(b)s(e)150 3385
15628y(either)31 b(assignmen)m(t)h(statemen)m(ts,)h(for)e(whic)m(h)g(the)g
15629(subscript)f(is)h(required,)g(or)g(a)g(list)h(of)f(w)m(ords)f(that)i
15630(is)150 3494 y(in)m(terpreted)g(as)g(a)g(sequence)f(of)h(alternating)h
15631(k)m(eys)f(and)f(v)-5 b(alues:)44 b Fr(name)5 b Fu(=\()p
15632Fr(k)m(ey1)40 b(v)-5 b(alue1)40 b(k)m(ey2)g(v)-5 b(alue2)156
156333604 y Fu(.)22 b(.)g(.)47 b(\).)57 b(These)35 b(are)i(treated)f(iden)m
15634(tically)i(to)e Fr(name)5 b Fu(=\()36 b([)p Fr(k)m(ey1)7
15635b Fu(]=)p Fr(v)-5 b(alue1)46 b Fu([)p Fr(k)m(ey2)7 b
15636Fu(]=)p Fr(v)-5 b(alue2)51 b Fu(.)22 b(.)h(.)46 b(\).)57
15637b(The)150 3713 y(\014rst)25 b(w)m(ord)f(in)h(the)h(list)g(determines)f
15638(ho)m(w)g(the)h(remaining)f(w)m(ords)g(are)h(in)m(terpreted;)h(all)f
15639(assignmen)m(ts)g(in)150 3823 y(a)31 b(list)f(m)m(ust)h(b)s(e)e(of)h
15640(the)h(same)f(t)m(yp)s(e.)41 b(When)30 b(using)g(k)m(ey/v)-5
15641b(alue)32 b(pairs,)e(the)g(k)m(eys)h(ma)m(y)g(not)f(b)s(e)g(missing)150
156423933 y(or)g(empt)m(y;)h(a)g(\014nal)f(missing)g(v)-5
15643b(alue)31 b(is)g(treated)g(lik)m(e)h(the)e(empt)m(y)h(string.)275
156444065 y(This)f(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f
15645Ft(declare)f Fu(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h
15646(ma)m(y)g(b)s(e)150 4175 y(assigned)e(to)g(using)f(the)g
15647Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p Fj(value)25 b
15648Fu(syn)m(tax)31 b(in)m(tro)s(duced)e(ab)s(o)m(v)m(e.)275
156494308 y(When)h(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8
d37a4722 15650b(,)32 b(if)f Fr(name)36 b Fu(is)31 b(subscripted)e(b)m(y)i(a)g
d052bd6f 15651(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 4417 y(n)m(um)m(b)s(er)43
d37a4722
CR
15652b(is)h(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)f(greater)i(than)e
15653(the)g(maxim)m(um)g(index)g(of)h Fr(name)p Fu(,)j(so)150
d052bd6f 156544527 y(negativ)m(e)30 b(indices)d(coun)m(t)h(bac)m(k)g(from)f(the)g
d37a4722 15655(end)g(of)g(the)h(arra)m(y)-8 b(,)29 b(and)e(an)g(index)g(of)g(-1)h
d052bd6f 15656(references)g(the)f(last)150 4636 y(elemen)m(t.)275 4769
7a8455e4
CR
15657y(The)j(`)p Ft(+=)p Fu(')g(op)s(erator)h(will)g(app)s(end)e(to)i(an)g
15658(arra)m(y)g(v)-5 b(ariable)32 b(when)d(assigning)i(using)g(the)f(comp)s
d052bd6f 15659(ound)150 4879 y(assignmen)m(t)h(syn)m(tax;)g(see)g(Section)g(3.4)h
7a8455e4 15660([Shell)e(P)m(arameters],)i(page)g(21,)f(ab)s(o)m(v)m(e.)275
d052bd6f 156615011 y(An)m(y)d(elemen)m(t)h(of)g(an)f(arra)m(y)g(ma)m(y)h(b)s(e)f
d37a4722 15662(referenced)g(using)g Ft(${)p Fj(name)p Ft([)p Fj(subscript)p
d052bd6f 15663Ft(]})p Fu(.)35 b(The)27 b(braces)i(are)150 5121 y(required)f(to)j(a)m
d37a4722
CR
15664(v)m(oid)f(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion)
15665f(op)s(erators.)41 b(If)28 b(the)i Fr(subscript)g Fu(is)150
d052bd6f 156665230 y(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)f(the)h(w)m(ord)f
d37a4722
CR
15667(expands)f(to)i(all)g(mem)m(b)s(ers)e(of)i(the)f(arra)m(y)h
15668Fr(name)p Fu(.)40 b(These)29 b(subscripts)f(di\013er)h(only)150
d052bd6f 156695340 y(when)36 b(the)g(w)m(ord)g(app)s(ears)g(within)g(double)g
d37a4722 15670(quotes.)60 b(If)36 b(the)h(w)m(ord)f(is)g(double-quoted,)j
d052bd6f 15671Ft(${)p Fj(name)p Ft([*]})p eop end
e2520247
CR
15672%%Page: 104 110
15673TeXDict begin 104 109 bop 150 -116 a Fu(Chapter)30 b(6:)41
15674b(Bash)30 b(F)-8 b(eatures)2439 b(104)150 299 y(expands)25
d052bd6f
CR
15675b(to)h(a)g(single)h(w)m(ord)e(with)g(the)h(v)-5 b(alue)26
15676b(of)g(eac)m(h)h(arra)m(y)f(mem)m(b)s(er)f(separated)h(b)m(y)g(the)f
15677(\014rst)g(c)m(harac-)150 408 y(ter)j(of)g(the)h Ft(IFS)e
15678Fu(v)-5 b(ariable,)29 b(and)f Ft(${)p Fj(name)p Ft([@]})d
15679Fu(expands)i(eac)m(h)i(elemen)m(t)h(of)e Fr(name)33 b
15680Fu(to)c(a)f(separate)h(w)m(ord.)150 518 y(When)j(there)h(are)f(no)g
15681(arra)m(y)h(mem)m(b)s(ers,)f Ft(${)p Fj(name)p Ft([@]})e
15682Fu(expands)h(to)i(nothing.)47 b(If)31 b(the)i(double-quoted)150
15683628 y(expansion)39 b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d
15684(expansion)h(of)g(the)f(\014rst)g(parameter)h(is)g(joined)f(with)h(the)
15685150 737 y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e
15686(and)g(the)h(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f
15687(with)150 847 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
122f603c 15688b(This)28 b(is)h(analogous)h(to)f(the)h(expansion)e(of)h(the)g(sp)s
d052bd6f 15689(ecial)h(param-)150 956 y(eters)g(`)p Ft(@)p Fu(')f(and)g(`)p
6e51e0d0
CR
15690Ft(*)p Fu('.)41 b Ft(${#)p Fj(name)p Ft([)p Fj(subscript)p
15691Ft(]})24 b Fu(expands)k(to)i(the)g(length)g(of)f Ft(${)p
15692Fj(name)p Ft([)p Fj(subscript)p Ft(]})p Fu(.)35 b(If)150
d052bd6f 156931066 y Fr(subscript)28 b Fu(is)g(`)p Ft(@)p Fu(')f(or)h(`)p
8a0829e9
CR
15694Ft(*)p Fu(',)g(the)g(expansion)f(is)g(the)h(n)m(um)m(b)s(er)e(of)i
15695(elemen)m(ts)g(in)f(the)h(arra)m(y)-8 b(.)41 b(If)27
d052bd6f
CR
15696b(the)g Fr(subscript)150 1176 y Fu(used)34 b(to)h(reference)g(an)f
15697(elemen)m(t)i(of)f(an)f(indexed)g(arra)m(y)h(ev)-5 b(aluates)36
15698b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero,)i(it)150
156991285 y(is)c(in)m(terpreted)h(as)f(relativ)m(e)i(to)f(one)f(greater)h
8a0829e9 15700(than)f(the)h(maxim)m(um)f(index)f(of)h(the)h(arra)m(y)-8
d052bd6f 15701b(,)33 b(so)g(negativ)m(e)150 1395 y(indices)d(coun)m(t)h(bac)m(k)h
8a0829e9 15702(from)e(the)g(end)g(of)g(the)h(arra)m(y)-8 b(,)31 b(and)f(an)g(index)g
7a8455e4 15703(of)h(-1)g(refers)f(to)h(the)g(last)g(elemen)m(t.)275
d052bd6f 157041544 y(Referencing)41 b(an)f(arra)m(y)h(v)-5 b(ariable)42
7a8455e4 15705b(without)e(a)h(subscript)e(is)i(equiv)-5 b(alen)m(t)42
d052bd6f 15706b(to)f(referencing)g(with)g(a)150 1653 y(subscript)35
7a8455e4 15707b(of)h(0.)57 b(An)m(y)36 b(reference)g(to)h(a)f(v)-5
8a0829e9 15708b(ariable)36 b(using)g(a)g(v)-5 b(alid)36 b(subscript)f(is)h(legal,)j
d052bd6f
CR
15709(and)c Ft(bash)g Fu(will)150 1763 y(create)d(an)e(arra)m(y)h(if)f
15710(necessary)-8 b(.)275 1912 y(An)35 b(arra)m(y)i(v)-5
7a8455e4
CR
15711b(ariable)37 b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s
15712(een)g(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
d052bd6f
CR
157132021 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
157142170 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i
e59452c7
CR
15715(\(indices\))f(of)f(an)h(arra)m(y)g(as)f(w)m(ell)i(as)f(the)f(v)-5
15716b(alues.)41 b($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p
d052bd6f 15717Fi(})150 2280 y Fu(and)39 b($)p Fi({)p Fu(!)p Fr(name)5
e59452c7
CR
15718b Fu([*])p Fi(})43 b Fu(expand)c(to)i(the)f(indices)h(assigned)f(in)g
15719(arra)m(y)g(v)-5 b(ariable)41 b Fr(name)p Fu(.)70 b(The)39
d052bd6f 15720b(treatmen)m(t)150 2389 y(when)i(in)g(double)g(quotes)h(is)f(similar)h
e59452c7 15721(to)h(the)e(expansion)h(of)f(the)h(sp)s(ecial)g(parameters)g(`)p
d052bd6f
CR
15722Ft(@)p Fu(')g(and)f(`)p Ft(*)p Fu(')150 2499 y(within)30
15723b(double)g(quotes.)275 2648 y(The)25 b Ft(unset)g Fu(builtin)g(is)h
879213c6
CR
15724(used)f(to)i(destro)m(y)f(arra)m(ys.)40 b Ft(unset)29
15725b Fj(name)p Ft([)p Fj(subscript)p Ft(])22 b Fu(destro)m(ys)k(the)g
d052bd6f 15726(arra)m(y)150 2757 y(elemen)m(t)40 b(at)e(index)g Fr(subscript)p
879213c6 15727Fu(.)62 b(Negativ)m(e)41 b(subscripts)c(to)i(indexed)e(arra)m(ys)i(are)
d052bd6f 15728f(in)m(terpreted)h(as)f(de-)150 2867 y(scrib)s(ed)30
e59452c7
CR
15729b(ab)s(o)m(v)m(e.)42 b(Unsetting)31 b(the)g(last)g(elemen)m(t)h(of)f
15730(an)g(arra)m(y)g(v)-5 b(ariable)31 b(do)s(es)f(not)h(unset)f(the)h(v)-5
d052bd6f 15731b(ariable.)150 2977 y Ft(unset)29 b Fj(name)p Fu(,)39
fffe80d4
CR
15732b(where)e Fr(name)43 b Fu(is)37 b(an)h(arra)m(y)-8 b(,)41
15733b(remo)m(v)m(es)e(the)f(en)m(tire)g(arra)m(y)-8 b(.)64
15734b Ft(unset)29 b Fj(name)p Ft([)p Fj(subscript)p Ft(])150
d052bd6f 157353086 y Fu(b)s(eha)m(v)m(es)h(di\013eren)m(tly)g(dep)s(ending)d(on)j
fffe80d4
CR
15736(the)f(arra)m(y)h(t)m(yp)s(e)f(when)g(giv)m(en)h(a)f(subscript)g(of)g
15737(`)p Ft(*)p Fu(')g(or)h(`)p Ft(@)p Fu('.)40 b(When)150
d052bd6f 157383196 y Fr(name)46 b Fu(is)40 b(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8
fffe80d4
CR
15739b(,)44 b(it)d(remo)m(v)m(es)h(the)f(elemen)m(t)h(with)e(k)m(ey)h(`)p
15740Ft(*)p Fu(')g(or)f(`)p Ft(@)p Fu('.)72 b(If)40 b Fr(name)45
d052bd6f 15741b Fu(is)c(an)150 3305 y(indexed)30 b(arra)m(y)-8 b(,)31
fffe80d4
CR
15742b Ft(unset)e Fu(remo)m(v)m(es)j(all)f(of)g(the)f(elemen)m(ts,)i(but)e
15743(do)s(es)g(not)h(remo)m(v)m(e)h(the)e(arra)m(y)h(itself.)275
d052bd6f 157443454 y(When)k(using)g(a)i(v)-5 b(ariable)36 b(name)g(with)g(a)g
fffe80d4 15745(subscript)e(as)i(an)g(argumen)m(t)g(to)h(a)f(command,)h(suc)m(h)f(as)
d052bd6f 15746150 3564 y(with)k Ft(unset)p Fu(,)h(without)e(using)h(the)g(w)m(ord)f
e59452c7 15747(expansion)h(syn)m(tax)g(describ)s(ed)f(ab)s(o)m(v)m(e,)44
d052bd6f 15748b(the)c(argumen)m(t)g(is)150 3673 y(sub)5 b(ject)25 b(to)h(the)g
e59452c7 15749(shell's)g(\014lename)f(expansion.)39 b(If)25 b(\014lename)h(expansion)
d052bd6f
CR
15750f(is)g(not)h(desired,)g(the)f(argumen)m(t)150 3783 y(should)k(b)s(e)h
15751(quoted.)275 3932 y(The)20 b Ft(declare)p Fu(,)h Ft(local)p
e59452c7
CR
15752Fu(,)h(and)e Ft(readonly)f Fu(builtins)h(eac)m(h)i(accept)g(a)g
15753Ft(-a)e Fu(option)h(to)h(sp)s(ecify)f(an)f(indexed)150
d052bd6f 157544042 y(arra)m(y)28 b(and)f(a)h Ft(-A)e Fu(option)i(to)g(sp)s(ecify)f
e59452c7
CR
15755(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 b(.)40 b(If)27
15756b(b)s(oth)g(options)h(are)g(supplied,)f Ft(-A)f Fu(tak)m(es)150
d052bd6f 157574151 y(precedence.)55 b(The)35 b Ft(read)f Fu(builtin)h(accepts)h(a)g
e59452c7 15758Ft(-a)e Fu(option)i(to)g(assign)f(a)g(list)h(of)f(w)m(ords)g(read)g
d052bd6f 15759(from)g(the)150 4261 y(standard)h(input)g(to)i(an)f(arra)m(y)-8
e59452c7 15760b(,)40 b(and)c(can)h(read)g(v)-5 b(alues)38 b(from)e(the)h(standard)g
d052bd6f 15761(input)f(in)m(to)i(individual)150 4370 y(arra)m(y)f(elemen)m(ts.)62
e59452c7
CR
15762b(The)36 b Ft(set)g Fu(and)h Ft(declare)d Fu(builtins)j(displa)m(y)g
15763(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
d052bd6f
CR
157644480 y(them)30 b(to)h(b)s(e)f(reused)g(as)g(input.)150
157654742 y Fs(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150
157664902 y Fu(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m
124d67cd 15767(tly-visited)j(directories.)39 b(The)20 b Ft(pushd)g
d052bd6f 15768Fu(builtin)h(adds)g(directories)150 5011 y(to)42 b(the)f(stac)m(k)i(as)
124d67cd
CR
15769e(it)h(c)m(hanges)g(the)f(curren)m(t)g(directory)-8 b(,)45
15770b(and)40 b(the)i Ft(popd)e Fu(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)
d052bd6f 15771150 5121 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j
124d67cd 15772(the)e(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)
d052bd6f 1577341 b(The)150 5230 y Ft(dirs)34 b Fu(builtin)g(displa)m(ys)h(the)g(con)m
124d67cd 15774(ten)m(ts)i(of)e(the)g(directory)h(stac)m(k.)56 b(The)34
d052bd6f
CR
15775b(curren)m(t)h(directory)g(is)g(alw)m(a)m(ys)150 5340
15776y(the)c Ft(")p Fu(top)p Ft(")f Fu(of)g(the)h(directory)g(stac)m(k.)p
15777eop end
e2520247
CR
15778%%Page: 105 111
15779TeXDict begin 105 110 bop 150 -116 a Fu(Chapter)30 b(6:)41
15780b(Bash)30 b(F)-8 b(eatures)2439 b(105)275 299 y(The)35
d052bd6f
CR
15781b(con)m(ten)m(ts)i(of)f(the)h(directory)f(stac)m(k)h(are)f(also)h
15782(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g Ft(DIRSTACK)e
15783Fu(shell)150 408 y(v)-5 b(ariable.)150 600 y Fk(6.8.1)63
15784b(Directory)40 b(Stac)m(k)g(Builtins)150 768 y Ft(dirs)870
15785898 y(dirs)47 b([-clpv])e([+)p Fj(N)i Ft(|)h(-)p Fj(N)p
15786Ft(])630 1029 y Fu(Displa)m(y)35 b(the)f(list)g(of)g(curren)m(tly)g
15787(remem)m(b)s(ered)f(directories.)51 b(Directories)36
15788b(are)e(added)f(to)630 1138 y(the)28 b(list)h(with)f(the)g
15789Ft(pushd)f Fu(command;)i(the)f Ft(popd)f Fu(command)h(remo)m(v)m(es)h
15790(directories)g(from)630 1248 y(the)i(list.)41 b(The)30
15791b(curren)m(t)g(directory)h(is)f(alw)m(a)m(ys)i(the)f(\014rst)e
15792(directory)i(in)f(the)h(stac)m(k.)630 1399 y Ft(-c)384
15793b Fu(Clears)31 b(the)f(directory)h(stac)m(k)h(b)m(y)e(deleting)h(all)h
15794(of)e(the)h(elemen)m(ts.)630 1551 y Ft(-l)384 b Fu(Pro)s(duces)31
15795b(a)h(listing)h(using)e(full)h(pathnames;)h(the)f(default)g(listing)h
15796(format)1110 1660 y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h
15797(directory)-8 b(.)630 1812 y Ft(-p)384 b Fu(Causes)30
15798b Ft(dirs)f Fu(to)i(prin)m(t)f(the)h(directory)g(stac)m(k)h(with)e(one)
15799g(en)m(try)h(p)s(er)e(line.)630 1963 y Ft(-v)384 b Fu(Causes)36
15800b Ft(dirs)f Fu(to)i(prin)m(t)f(the)g(directory)h(stac)m(k)h(with)e(one)
15801h(en)m(try)f(p)s(er)f(line,)1110 2073 y(pre\014xing)30
15802b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i(the)f(stac)m(k.)630
158032224 y Ft(+)p Fj(N)384 b Fu(Displa)m(ys)23 b(the)f Fr(N)10
15804b Fu(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h(left)g(of)g(the)g
15805(list)g(prin)m(ted)1110 2334 y(b)m(y)30 b Ft(dirs)f Fu(when)h(in)m(v)m
15806(ok)m(ed)i(without)e(options\),)h(starting)g(with)g(zero.)630
158072485 y Ft(-)p Fj(N)384 b Fu(Displa)m(ys)47 b(the)g Fr(N)10
15808b Fu(th)46 b(directory)h(\(coun)m(ting)g(from)f(the)g(righ)m(t)h(of)g
15809(the)f(list)1110 2595 y(prin)m(ted)25 b(b)m(y)g Ft(dirs)g
15810Fu(when)f(in)m(v)m(ok)m(ed)j(without)f(options\),)h(starting)g(with)e
15811(zero.)150 2746 y Ft(popd)870 2876 y(popd)47 b([-n])f([+)p
15812Fj(N)h Ft(|)h(-)p Fj(N)p Ft(])630 3007 y Fu(Remo)m(v)m(es)34
15813b(elemen)m(ts)g(from)e(the)h(directory)g(stac)m(k.)49
15814b(The)32 b(elemen)m(ts)i(are)f(n)m(um)m(b)s(ered)e(from)630
158153116 y(0)38 b(starting)h(at)f(the)g(\014rst)f(directory)h(listed)g(b)m
15816(y)g Ft(dirs)p Fu(;)j(that)d(is,)i Ft(popd)c Fu(is)i(equiv)-5
15817b(alen)m(t)39 b(to)630 3226 y Ft(popd)29 b(+0)p Fu(.)630
158183357 y(When)j(no)g(argumen)m(ts)h(are)g(giv)m(en,)h Ft(popd)d
15819Fu(remo)m(v)m(es)j(the)f(top)f(directory)h(from)f(the)g(stac)m(k)630
158203466 y(and)e(c)m(hanges)h(to)g(the)g(new)f(top)g(directory)-8
15821b(.)630 3597 y(Argumen)m(ts,)31 b(if)f(supplied,)f(ha)m(v)m(e)j(the)e
15822(follo)m(wing)i(meanings:)630 3748 y Ft(-n)384 b Fu(Suppresses)27
15823b(the)j(normal)g(c)m(hange)g(of)g(directory)g(when)e(remo)m(ving)j
15824(directo-)1110 3858 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only)
15825f(the)h(stac)m(k)g(is)g(manipulated.)630 4009 y Ft(+)p
15826Fj(N)384 b Fu(Remo)m(v)m(es)22 b(the)f Fr(N)10 b Fu(th)20
15827b(directory)g(\(coun)m(ting)i(from)e(the)g(left)h(of)g(the)f(list)h
15828(prin)m(ted)1110 4119 y(b)m(y)30 b Ft(dirs)p Fu(\),)g(starting)h(with)f
15829(zero,)i(from)e(the)g(stac)m(k.)630 4270 y Ft(-)p Fj(N)384
15830b Fu(Remo)m(v)m(es)46 b(the)g Fr(N)10 b Fu(th)44 b(directory)h(\(coun)m
15831(ting)h(from)f(the)g(righ)m(t)g(of)g(the)g(list)1110
158324380 y(prin)m(ted)30 b(b)m(y)g Ft(dirs)p Fu(\),)g(starting)h(with)f
15833(zero,)i(from)e(the)g(stac)m(k.)630 4531 y(If)d(the)h(top)g(elemen)m(t)
15834h(of)f(the)g(directory)g(stac)m(k)h(is)e(mo)s(di\014ed,)h(and)f(the)h
15835Ft(-n)f Fu(option)h(w)m(as)g(not)630 4641 y(supplied,)j
15836Ft(popd)g Fu(uses)g(the)h Ft(cd)f Fu(builtin)g(to)i(c)m(hange)g(to)f
15837(the)g(directory)g(at)h(the)f(top)g(of)g(the)630 4750
15838y(stac)m(k.)42 b(If)30 b(the)h Ft(cd)e Fu(fails,)j Ft(popd)d
15839Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 4881 y(Otherwise,)34
15840b Ft(popd)f Fu(returns)f(an)h(unsuccessful)g(status)g(if)h(an)f(in)m(v)
15841-5 b(alid)34 b(option)g(is)g(encoun-)630 4990 y(tered,)39
15842b(the)d(directory)h(stac)m(k)i(is)d(empt)m(y)-8 b(,)39
15843b(or)e(a)g(non-existen)m(t)h(directory)f(stac)m(k)h(en)m(try)f(is)630
158445100 y(sp)s(eci\014ed.)630 5230 y(If)32 b(the)h Ft(popd)f
15845Fu(command)h(is)g(successful,)g(Bash)g(runs)f Ft(dirs)f
15846Fu(to)j(sho)m(w)f(the)g(\014nal)f(con)m(ten)m(ts)630
158475340 y(of)f(the)f(directory)h(stac)m(k,)h(and)e(the)g(return)g(status)g
15848(is)h(0.)p eop end
e2520247
CR
15849%%Page: 106 112
15850TeXDict begin 106 111 bop 150 -116 a Fu(Chapter)30 b(6:)41
15851b(Bash)30 b(F)-8 b(eatures)2439 b(106)150 299 y Ft(pushd)870
d052bd6f
CR
15852432 y(pushd)46 b([-n])h([+)p Fj(N)g Ft(|)g Fj(-N)h Ft(|)f
15853Fj(dir)p Ft(])630 565 y Fu(Adds)27 b(a)h(directory)h(to)g(the)f(top)g
15854(of)g(the)g(directory)h(stac)m(k,)h(or)e(rotates)h(the)f(stac)m(k,)j
15855(making)630 674 y(the)37 b(new)g(top)g(of)g(the)g(stac)m(k)i(the)e
15856(curren)m(t)f(w)m(orking)i(directory)-8 b(.)61 b(With)38
15857b(no)e(argumen)m(ts,)630 784 y Ft(pushd)29 b Fu(exc)m(hanges)j(the)e
15858(top)h(t)m(w)m(o)h(elemen)m(ts)f(of)g(the)f(directory)h(stac)m(k.)630
15859917 y(Argumen)m(ts,)g(if)f(supplied,)f(ha)m(v)m(e)j(the)e(follo)m(wing)
15860i(meanings:)630 1073 y Ft(-n)384 b Fu(Suppresses)24 b(the)j(normal)f(c)
15861m(hange)h(of)g(directory)f(when)g(rotating)h(or)f(adding)1110
158621182 y(directories)31 b(to)h(the)e(stac)m(k,)i(so)f(that)g(only)f(the)h
15863(stac)m(k)h(is)e(manipulated.)630 1339 y Ft(+)p Fj(N)384
15864b Fu(Brings)29 b(the)f Fr(N)10 b Fu(th)29 b(directory)g(\(coun)m(ting)h
15865(from)e(the)g(left)i(of)e(the)h(list)g(prin)m(ted)1110
158661448 y(b)m(y)34 b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)
15867f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i(the)1110
158681558 y(stac)m(k.)630 1714 y Ft(-)p Fj(N)384 b Fu(Brings)23
15869b(the)g Fr(N)10 b Fu(th)23 b(directory)h(\(coun)m(ting)g(from)e(the)i
15870(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110 1824 y(b)m(y)34
fffe80d4 15871b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f(top)g(of)h
d052bd6f
CR
15872(the)f(list)h(b)m(y)f(rotating)i(the)1110 1933 y(stac)m(k.)630
158732089 y Fj(dir)336 b Fu(Mak)m(es)32 b Fr(dir)k Fu(b)s(e)30
15874b(the)g(top)h(of)f(the)h(stac)m(k.)630 2246 y(After)39
15875b(the)g(stac)m(k)h(has)e(b)s(een)g(mo)s(di\014ed,)i(if)f(the)g
15876Ft(-n)f Fu(option)h(w)m(as)g(not)g(supplied,)g Ft(pushd)630
158772355 y Fu(uses)29 b(the)h Ft(cd)f Fu(builtin)g(to)h(c)m(hange)g(to)h
15878(the)e(directory)h(at)g(the)g(top)g(of)f(the)h(stac)m(k.)42
15879b(If)29 b(the)h Ft(cd)630 2465 y Fu(fails,)h Ft(pushd)e
15880Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 2598 y(Otherwise,)34
15881b(if)g(no)f(argumen)m(ts)h(are)g(supplied,)f Ft(pushd)f
15882Fu(returns)g(0)i(unless)f(the)g(directory)630 2707 y(stac)m(k)g(is)f
15883(empt)m(y)-8 b(.)46 b(When)32 b(rotating)h(the)f(directory)g(stac)m(k,)
15884i Ft(pushd)d Fu(returns)f(0)j(unless)e(the)630 2817 y(directory)g(stac)
15885m(k)h(is)e(empt)m(y)h(or)f(a)h(non-existen)m(t)h(directory)f(stac)m(k)g
15886(elemen)m(t)h(is)f(sp)s(eci\014ed.)630 2950 y(If)e(the)g
15887Ft(pushd)f Fu(command)h(is)g(successful,)h(Bash)f(runs)f
15888Ft(dirs)g Fu(to)i(sho)m(w)f(the)g(\014nal)g(con)m(ten)m(ts)630
158893059 y(of)i(the)f(directory)h(stac)m(k.)150 3297 y Fs(6.9)68
15890b(Con)l(trolling)47 b(the)e(Prompt)150 3456 y Fu(Bash)37
e59452c7
CR
15891b(examines)h(the)f(v)-5 b(alue)37 b(of)g(the)h(arra)m(y)f(v)-5
15892b(ariable)38 b Ft(PROMPT_COMMAND)33 b Fu(just)j(b)s(efore)h(prin)m
d052bd6f 15893(ting)g(eac)m(h)150 3566 y(primary)c(prompt.)49 b(If)33
e59452c7
CR
15894b(an)m(y)h(elemen)m(ts)h(in)f Ft(PROMPT_COMMAND)29 b
15895Fu(are)34 b(set)h(and)e(non-n)m(ull,)h(Bash)g(executes)150
d052bd6f 158963675 y(eac)m(h)e(v)-5 b(alue,)31 b(in)f(n)m(umeric)g(order,)g(just)g
d37a4722 15897(as)g(if)h(it)g(had)e(b)s(een)h(t)m(yp)s(ed)g(on)g(the)h(command)f
d052bd6f 15898(line.)275 3808 y(In)d(addition,)j(the)f(follo)m(wing)h(table)f
d37a4722 15899(describ)s(es)f(the)h(sp)s(ecial)g(c)m(haracters)h(whic)m(h)f(can)f
d052bd6f 15900(app)s(ear)g(in)h(the)150 3918 y(prompt)g(v)-5 b(ariables)32
d37a4722 15901b Ft(PS0)p Fu(,)d Ft(PS1)p Fu(,)h Ft(PS2)p Fu(,)g(and)f
d052bd6f
CR
15902Ft(PS4)p Fu(:)150 4074 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m
15903(haracter.)150 4230 y Ft(\\d)384 b Fu(The)30 b(date,)h(in)f
d37a4722
CR
15904Ft(")p Fu(W)-8 b(eekda)m(y)32 b(Mon)m(th)f(Date)p Ft(")h
15905Fu(format)f(\(e.g.,)h Ft(")p Fu(T)-8 b(ue)30 b(Ma)m(y)h(26)p
d052bd6f
CR
15906Ft(")p Fu(\).)150 4386 y Ft(\\D{)p Fj(format)p Ft(})630
159074496 y Fu(The)c Fr(format)i Fu(is)f(passed)e(to)i Ft(strftime)p
e59452c7 15908Fu(\(3\))f(and)f(the)i(result)f(is)g(inserted)g(in)m(to)h(the)g(prompt)
d052bd6f 15909630 4606 y(string;)42 b(an)d(empt)m(y)f Fr(format)j Fu(results)d(in)g
e59452c7 15910(a)h(lo)s(cale-sp)s(eci\014c)h(time)f(represen)m(tation.)65
d052bd6f 15911b(The)630 4715 y(braces)31 b(are)f(required.)150 4871
e59452c7 15912y Ft(\\e)384 b Fu(An)30 b(escap)s(e)h(c)m(haracter.)150
d052bd6f
CR
159135028 y Ft(\\h)384 b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e
15914(`.'.)150 5184 y Ft(\\H)384 b Fu(The)30 b(hostname.)150
159155340 y Ft(\\j)384 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(jobs)g(curren)m
15916(tly)h(managed)g(b)m(y)f(the)g(shell.)p eop end
e2520247
CR
15917%%Page: 107 113
15918TeXDict begin 107 112 bop 150 -116 a Fu(Chapter)30 b(6:)41
15919b(Bash)30 b(F)-8 b(eatures)2439 b(107)150 299 y Ft(\\l)384
d37a4722 15920b Fu(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g
d052bd6f
CR
15921(name.)150 487 y Ft(\\n)384 b Fu(A)30 b(newline.)150
15922676 y Ft(\\r)384 b Fu(A)30 b(carriage)i(return.)150 864
15923y Ft(\\s)384 b Fu(The)22 b(name)g(of)h(the)f(shell,)i(the)f(basename)f
15924(of)h Ft($0)f Fu(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f(\014nal)e
15925(slash\).)150 1052 y Ft(\\t)384 b Fu(The)30 b(time,)h(in)f(24-hour)h
15926(HH:MM:SS)g(format.)150 1241 y Ft(\\T)384 b Fu(The)30
15927b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)150 1429
15928y Ft(\\@)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(am/pm)f(format.)150
159291617 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f(24-hour)h(HH:MM)g(format.)
15930150 1806 y Ft(\\u)384 b Fu(The)30 b(username)g(of)g(the)h(curren)m(t)f
15931(user.)150 1994 y Ft(\\v)384 b Fu(The)30 b(v)m(ersion)h(of)f(Bash)h
15932(\(e.g.,)h(2.00\))150 2183 y Ft(\\V)384 b Fu(The)30 b(release)i(of)e
15933(Bash,)h(v)m(ersion)g Ft(+)f Fu(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\))
15934150 2371 y Ft(\\w)384 b Fu(The)27 b(v)-5 b(alue)28 b(of)g(the)g
e59452c7
CR
15935Ft(PWD)f Fu(shell)h(v)-5 b(ariable)28 b(\()p Ft($PWD)p
15936Fu(\),)g(with)g Ft($HOME)e Fu(abbreviated)i(with)f(a)h(tilde)630
d052bd6f
CR
159372480 y(\(uses)i(the)h Ft($PROMPT_DIRTRIM)26 b Fu(v)-5
15938b(ariable\).)150 2669 y Ft(\\W)384 b Fu(The)30 b(basename)h(of)f
e59452c7 15939Ft($PWD)p Fu(,)g(with)g Ft($HOME)f Fu(abbreviated)h(with)g(a)h(tilde.)
d052bd6f
CR
15940150 2857 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i
15941(this)f(command.)150 3046 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m
15942(b)s(er)f(of)i(this)f(command.)150 3234 y Ft(\\$)384
e59452c7 15943b Fu(If)30 b(the)g(e\013ectiv)m(e)j(uid)d(is)g(0,)h Ft(#)p
d052bd6f 15944Fu(,)g(otherwise)g Ft($)p Fu(.)150 3422 y Ft(\\)p Fj(nnn)288
e59452c7 15945b Fu(The)30 b(c)m(haracter)i(whose)e(ASCI)s(I)f(co)s(de)h(is)h(the)f(o)
d052bd6f
CR
15946s(ctal)i(v)-5 b(alue)31 b Fr(nnn)p Fu(.)150 3611 y Ft(\\\\)384
15947b Fu(A)30 b(bac)m(kslash.)150 3799 y Ft(\\[)384 b Fu(Begin)38
d37a4722
CR
15948b(a)f(sequence)g(of)g(non-prin)m(ting)g(c)m(haracters.)61
15949b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)g(a)630
d052bd6f
CR
159503909 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.)
15951150 4097 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m
15952(ting)g(c)m(haracters.)275 4300 y(The)25 b(command)h(n)m(um)m(b)s(er)f
d37a4722 15953(and)h(the)g(history)g(n)m(um)m(b)s(er)f(are)i(usually)f(di\013eren)m
d052bd6f 15954(t:)39 b(the)26 b(history)g(n)m(um)m(b)s(er)150 4409
d37a4722 15955y(of)h(a)f(command)h(is)f(its)h(p)s(osition)f(in)g(the)h(history)f
fc527055 15956(list,)i(whic)m(h)f(ma)m(y)g(include)f(commands)g(restored)g(from)150
d052bd6f 159574519 y(the)39 b(history)h(\014le)f(\(see)h(Section)g(9.1)h([Bash)e
e2520247 15958(History)h(F)-8 b(acilities],)45 b(page)40 b(156\),)j(while)d(the)f
d052bd6f 15959(command)150 4629 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g
fc527055 15960(the)g(sequence)h(of)f(commands)g(executed)h(during)e(the)i(curren)m(t)
d052bd6f 15961f(shell)150 4738 y(session.)275 4902 y(After)28 b(the)g(string)g(is)g
e59452c7 15962(deco)s(ded,)g(it)g(is)g(expanded)f(via)i(parameter)f(expansion,)h
d052bd6f 15963(command)f(substitu-)150 5011 y(tion,)g(arithmetic)f(expansion,)g(and)e
e59452c7 15964(quote)i(remo)m(v)-5 b(al,)29 b(sub)5 b(ject)25 b(to)i(the)f(v)-5
d052bd6f 15965b(alue)27 b(of)f(the)g Ft(promptvars)e Fu(shell)150 5121
e59452c7 15966y(option)i(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)j(page)e
e2520247 15967(72\).)41 b(This)25 b(can)h(ha)m(v)m(e)h(un)m(w)m(an)m(ted)f(side)g
d052bd6f 15968(e\013ects)150 5230 y(if)i(escap)s(ed)f(p)s(ortions)g(of)h(the)g
e59452c7 15969(string)f(app)s(ear)g(within)g(command)h(substitution)f(or)h(con)m
d052bd6f
CR
15970(tain)g(c)m(haracters)150 5340 y(sp)s(ecial)j(to)g(w)m(ord)f
15971(expansion.)p eop end
e2520247
CR
15972%%Page: 108 114
15973TeXDict begin 108 113 bop 150 -116 a Fu(Chapter)30 b(6:)41
15974b(Bash)30 b(F)-8 b(eatures)2439 b(108)150 299 y Fs(6.10)68
d052bd6f
CR
15975b(The)45 b(Restricted)h(Shell)150 458 y Fu(If)34 b(Bash)g(is)g(started)
15976g(with)g(the)g(name)h Ft(rbash)p Fu(,)e(or)h(the)h Ft(--restricted)30
15977b Fu(or)k Ft(-r)g Fu(option)g(is)g(supplied)f(at)150
15978568 y(in)m(v)m(o)s(cation,)d(the)d(shell)g(b)s(ecomes)h(restricted.)40
15979b(A)27 b(restricted)h(shell)f(is)g(used)f(to)i(set)f(up)f(an)h(en)m
15980(vironmen)m(t)150 677 y(more)g(con)m(trolled)i(than)e(the)g(standard)g
15981(shell.)40 b(A)27 b(restricted)h(shell)f(b)s(eha)m(v)m(es)h(iden)m
15982(tically)h(to)f Ft(bash)e Fu(with)150 787 y(the)31 b(exception)g(that)g
15983(the)g(follo)m(wing)h(are)e(disallo)m(w)m(ed)i(or)e(not)h(p)s
15984(erformed:)225 919 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)g
15985(the)f Ft(cd)g Fu(builtin.)225 1050 y Fq(\017)60 b Fu(Setting)33
d37a4722
CR
15986b(or)g(unsetting)f(the)h(v)-5 b(alues)33 b(of)f(the)h
15987Ft(SHELL)p Fu(,)f Ft(PATH)p Fu(,)g Ft(HISTFILE)p Fu(,)f
15988Ft(ENV)p Fu(,)h(or)g Ft(BASH_ENV)e Fu(v)-5 b(ari-)330
d052bd6f
CR
159891160 y(ables.)225 1292 y Fq(\017)60 b Fu(Sp)s(ecifying)30
15990b(command)g(names)g(con)m(taining)i(slashes.)225 1424
15991y Fq(\017)60 b Fu(Sp)s(ecifying)30 b(a)h(\014lename)f(con)m(taining)i
15992(a)f(slash)f(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(.)h
15993Fu(builtin)e(command.)225 1555 y Fq(\017)60 b Fu(Sp)s(ecifying)33
15994b(a)i(\014lename)f(con)m(taining)h(a)g(slash)e(as)i(an)e(argumen)m(t)i
15995(to)g(the)f Ft(history)e Fu(builtin)h(com-)330 1665 y(mand.)225
159961797 y Fq(\017)60 b Fu(Sp)s(ecifying)32 b(a)g(\014lename)h(con)m
15997(taining)h(a)e(slash)g(as)h(an)f(argumen)m(t)h(to)g(the)f
15998Ft(-p)g Fu(option)h(to)g(the)f Ft(hash)330 1906 y Fu(builtin)e
15999(command.)225 2038 y Fq(\017)60 b Fu(Imp)s(orting)30
16000b(function)g(de\014nitions)g(from)f(the)i(shell)g(en)m(vironmen)m(t)g
16001(at)g(startup.)225 2170 y Fq(\017)60 b Fu(P)m(arsing)31
16002b(the)f(v)-5 b(alue)31 b(of)g Ft(SHELLOPTS)d Fu(from)h(the)i(shell)g
16003(en)m(vironmen)m(t)g(at)g(startup.)225 2301 y Fq(\017)60
16004b Fu(Redirecting)31 b(output)f(using)g(the)h(`)p Ft(>)p
16005Fu(',)g(`)p Ft(>|)p Fu(',)f(`)p Ft(<>)p Fu(',)h(`)p Ft(>&)p
16006Fu(',)f(`)p Ft(&>)p Fu(',)h(and)e(`)p Ft(>>)p Fu(')i(redirection)g(op)s
16007(erators.)225 2433 y Fq(\017)60 b Fu(Using)31 b(the)f
16008Ft(exec)f Fu(builtin)h(to)h(replace)h(the)e(shell)h(with)f(another)h
16009(command.)225 2565 y Fq(\017)60 b Fu(Adding)24 b(or)g(deleting)i
16010(builtin)e(commands)g(with)h(the)f Ft(-f)g Fu(and)g Ft(-d)g
16011Fu(options)h(to)h(the)e Ft(enable)f Fu(builtin.)225 2696
16012y Fq(\017)60 b Fu(Using)31 b(the)f Ft(enable)f Fu(builtin)h(command)g
16013(to)h(enable)g(disabled)f(shell)g(builtins.)225 2828
16014y Fq(\017)60 b Fu(Sp)s(ecifying)30 b(the)g Ft(-p)g Fu(option)h(to)g
16015(the)g Ft(command)d Fu(builtin.)225 2960 y Fq(\017)60
16016b Fu(T)-8 b(urning)29 b(o\013)i(restricted)g(mo)s(de)f(with)g(`)p
16017Ft(set)g(+r)p Fu(')g(or)g(`)p Ft(shopt)f(-u)h(restricted_shell)p
16018Fu('.)275 3114 y(These)g(restrictions)h(are)g(enforced)f(after)h(an)m
16019(y)g(startup)f(\014les)g(are)h(read.)275 3245 y(When)j(a)i(command)e
16020(that)i(is)f(found)f(to)h(b)s(e)g(a)g(shell)g(script)g(is)g(executed)h
16021(\(see)g(Section)g(3.8)g([Shell)150 3355 y(Scripts],)25
e2520247 16022b(page)e(47\),)j Ft(rbash)c Fu(turns)g(o\013)i(an)m(y)f(restrictions)h
d052bd6f
CR
16023(in)f(the)g(shell)h(spa)m(wned)e(to)i(execute)g(the)g(script.)275
160243487 y(The)32 b(restricted)h(shell)g(mo)s(de)g(is)g(only)g(one)g(comp)s
16025(onen)m(t)g(of)g(a)g(useful)f(restricted)i(en)m(vironmen)m(t.)49
16026b(It)150 3596 y(should)22 b(b)s(e)f(accompanied)j(b)m(y)e(setting)i
16027Ft(PATH)d Fu(to)j(a)f(v)-5 b(alue)23 b(that)g(allo)m(ws)h(execution)f
16028(of)g(only)g(a)g(few)f(v)m(eri\014ed)150 3706 y(commands)35
16029b(\(commands)g(that)h(allo)m(w)g(shell)f(escap)s(es)h(are)f
16030(particularly)h(vulnerable\),)h(c)m(hanging)f(the)150
160313815 y(curren)m(t)28 b(directory)g(to)h(a)f(non-writable)g(directory)g
e59452c7 16032(other)g(than)g Ft($HOME)e Fu(after)j(login,)g(not)f(allo)m(wing)i(the)
d052bd6f 16033150 3925 y(restricted)25 b(shell)g(to)h(execute)g(shell)f(scripts,)h
e59452c7 16034(and)e(cleaning)i(the)f(en)m(vironmen)m(t)h(of)f(v)-5
d052bd6f 16035b(ariables)25 b(that)g(cause)150 4035 y(some)31 b(commands)f(to)h(mo)s
e59452c7 16036(dify)e(their)i(b)s(eha)m(vior)f(\(e.g.,)j Ft(VISUAL)28
d052bd6f 16037b Fu(or)j Ft(PAGER)p Fu(\).)275 4166 y(Mo)s(dern)e(systems)g(pro)m
e59452c7 16038(vide)h(more)g(secure)g(w)m(a)m(ys)g(to)h(implemen)m(t)f(a)g
d052bd6f 16039(restricted)h(en)m(vironmen)m(t,)f(suc)m(h)150 4276 y(as)h
e59452c7 16040Ft(jails)p Fu(,)e Ft(zones)p Fu(,)g(or)h Ft(containers)p
d052bd6f
CR
16041Fu(.)150 4511 y Fs(6.11)68 b(Bash)45 b(and)g(POSIX)150
160424733 y Fk(6.11.1)63 b(What)40 b(is)i(POSIX?)150 4879
16043y Fm(posix)22 b Fu(is)g(the)g(name)h(for)f(a)g(family)h(of)g(standards)
16044e(based)h(on)g(Unix.)38 b(A)22 b(n)m(um)m(b)s(er)f(of)i(Unix)f
16045(services,)j(to)s(ols,)150 4989 y(and)33 b(functions)g(are)h(part)f(of)
16046h(the)f(standard,)h(ranging)g(from)f(the)g(basic)h(system)g(calls)g
16047(and)f(C)g(library)150 5099 y(functions)d(to)h(common)g(applications)g
16048(and)f(to)s(ols)h(to)g(system)g(administration)g(and)e(managemen)m(t.)
16049275 5230 y(The)22 b Fm(posix)g Fu(Shell)g(and)g(Utilities)j(standard)c
16050(w)m(as)i(originally)h(dev)m(elop)s(ed)f(b)m(y)g(IEEE)f(W)-8
16051b(orking)24 b(Group)150 5340 y(1003.2)46 b(\(POSIX.2\).)80
16052b(The)43 b(\014rst)f(edition)i(of)g(the)f(1003.2)j(standard)c(w)m(as)i
16053(published)e(in)h(1992.)81 b(It)p eop end
e2520247
CR
16054%%Page: 109 115
16055TeXDict begin 109 114 bop 150 -116 a Fu(Chapter)30 b(6:)41
16056b(Bash)30 b(F)-8 b(eatures)2439 b(109)150 299 y(w)m(as)31
d052bd6f
CR
16057b(merged)g(with)g(the)g(original)h(IEEE)e(1003.1)k(W)-8
16058b(orking)32 b(Group)e(and)g(is)h(curren)m(tly)g(main)m(tained)h(b)m(y)
16059150 408 y(the)41 b(Austin)g(Group)g(\(a)h(join)m(t)g(w)m(orking)g
16060(group)e(of)i(the)f(IEEE,)g(The)g(Op)s(en)f(Group)g(and)h(ISO/IEC)150
16061518 y(SC22/W)m(G15\).)i(T)-8 b(o)s(da)m(y)28 b(the)g(Shell)g(and)f
16062(Utilities)j(are)e(a)g(v)m(olume)h(within)e(the)h(set)h(of)f(do)s
16063(cumen)m(ts)f(that)150 628 y(mak)m(e)34 b(up)e(IEEE)g(Std)g
16064(1003.1-2017,)38 b(and)32 b(th)m(us)h(the)g(former)f(POSIX.2)h(\(from)f
16065(1992\))j(is)e(no)m(w)g(part)g(of)150 737 y(the)e(curren)m(t)f
16066(uni\014ed)f Fm(posix)g Fu(standard.)275 869 y(The)k(Shell)h(and)g
16067(Utilities)i(v)m(olume)f(concen)m(trates)h(on)e(the)g(command)g(in)m
16068(terpreter)h(in)m(terface)h(and)150 979 y(utilit)m(y)i(programs)f
16069(commonly)g(executed)g(from)g(the)g(command)f(line)h(or)g(b)m(y)g
16070(other)g(programs.)59 b(The)150 1089 y(standard)37 b(is)g(freely)h(a)m
16071(v)-5 b(ailable)40 b(on)d(the)h(w)m(eb)g(at)g Ft(https:)6
16072b(/)g(/)g(pubs)g(.)g(opengrou)o(p)g(.)g(o)o(rg)g(/)f(onl)o(inep)o(ubs)g
16073(/)150 1198 y(9699919799/utilities/con)o(tent)o(s.ht)o(ml)p
16074Fu(.)275 1330 y(Bash)25 b(is)g(concerned)h(with)f(the)g(asp)s(ects)h
16075(of)f(the)h(shell's)g(b)s(eha)m(vior)f(de\014ned)f(b)m(y)h(the)h
16076Fm(posix)e Fu(Shell)i(and)150 1440 y(Utilities)35 b(v)m(olume.)49
16077b(The)33 b(shell)g(command)f(language)j(has)d(of)i(course)f(b)s(een)f
16078(standardized,)h(including)150 1550 y(the)42 b(basic)g(\015o)m(w)g(con)
16079m(trol)i(and)d(program)g(execution)i(constructs,)j(I/O)41
16080b(redirection)i(and)e(pip)s(elines,)150 1659 y(argumen)m(t)31
16081b(handling,)f(v)-5 b(ariable)31 b(expansion,)f(and)g(quoting.)275
160821791 y(The)40 b Fl(sp)-5 b(e)g(cial)52 b Fu(builtins,)44
16083b(whic)m(h)d(m)m(ust)g(b)s(e)g(implemen)m(ted)h(as)f(part)g(of)h(the)f
16084(shell)g(to)h(pro)m(vide)g(the)150 1901 y(desired)25
16085b(functionalit)m(y)-8 b(,)28 b(are)e(sp)s(eci\014ed)f(as)g(b)s(eing)g
16086(part)h(of)f(the)h(shell;)h(examples)f(of)g(these)g(are)f
16087Ft(eval)g Fu(and)150 2010 y Ft(export)p Fu(.)39 b(Other)28
16088b(utilities)i(app)s(ear)f(in)f(the)h(sections)h(of)f(POSIX)f(not)h(dev)
16089m(oted)h(to)g(the)f(shell)g(whic)m(h)g(are)150 2120 y(commonly)24
16090b(\(and)f(in)g(some)h(cases)g(m)m(ust)f(b)s(e\))g(implemen)m(ted)h(as)f
16091(builtin)g(commands,)i(suc)m(h)e(as)g Ft(read)g Fu(and)150
160922230 y Ft(test)p Fu(.)39 b(POSIX)28 b(also)h(sp)s(eci\014es)g(asp)s
16093(ects)g(of)g(the)g(shell's)g(in)m(teractiv)m(e)i(b)s(eha)m(vior,)f
16094(including)e(job)g(con)m(trol)150 2339 y(and)36 b(command)g(line)h
16095(editing.)59 b(Only)36 b(vi-st)m(yle)i(line)f(editing)g(commands)f(ha)m
16096(v)m(e)h(b)s(een)f(standardized;)150 2449 y(emacs)31
16097b(editing)g(commands)f(w)m(ere)h(left)g(out)g(due)e(to)j(ob)5
16098b(jections.)150 2643 y Fk(6.11.2)63 b(Bash)41 b(POSIX)g(Mo)s(de)150
160992790 y Fu(Although)29 b(Bash)g(is)g(an)g(implemen)m(tation)h(of)f(the)g
16100Fm(posix)f Fu(shell)h(sp)s(eci\014cation,)i(there)e(are)g(areas)g
16101(where)150 2900 y(the)g(Bash)g(default)g(b)s(eha)m(vior)g(di\013ers)f
16102(from)g(the)h(sp)s(eci\014cation.)41 b(The)28 b(Bash)h
16103Fr(p)s(osix)g(mo)s(de)k Fu(c)m(hanges)d(the)150 3009
16104y(Bash)h(b)s(eha)m(vior)f(in)g(these)h(areas)g(so)g(that)g(it)f
16105(conforms)h(to)g(the)f(standard)g(more)g(closely)-8 b(.)275
161063142 y(Starting)26 b(Bash)g(with)f(the)h Ft(--posix)e
16107Fu(command-line)j(option)f(or)g(executing)h(`)p Ft(set)j(-o)f(posix)p
16108Fu(')c(while)150 3251 y(Bash)h(is)g(running)e(will)j(cause)f(Bash)g(to)
16109h(conform)f(more)g(closely)h(to)g(the)f Fm(posix)f Fu(standard)g(b)m(y)
16110h(c)m(hanging)150 3361 y(the)31 b(b)s(eha)m(vior)f(to)h(matc)m(h)g
16111(that)g(sp)s(eci\014ed)f(b)m(y)g Fm(posix)g Fu(in)g(areas)h(where)f
16112(the)h(Bash)f(default)h(di\013ers.)275 3493 y(When)f(in)m(v)m(ok)m(ed)h
16113(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e Fu(mo)s(de)h(after)h
16114(reading)g(the)f(startup)g(\014les.)275 3625 y(The)f(follo)m(wing)j
52e46969 16115(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)p Fm(posix)h
d052bd6f 16116Fu(mo)s(de')h(is)f(in)g(e\013ect:)199 3757 y(1.)61 b(Bash)31
52e46969 16117b(ensures)e(that)i(the)f Ft(POSIXLY_CORRECT)d Fu(v)-5
d052bd6f 16118b(ariable)31 b(is)f(set.)199 3889 y(2.)61 b(When)28 b(a)i(command)e(in)
52e46969 16119g(the)h(hash)f(table)i(no)e(longer)h(exists,)h(Bash)f(will)g(re-searc)m
d052bd6f 16120(h)h Ft($PATH)d Fu(to)i(\014nd)330 3999 y(the)i(new)e(lo)s(cation.)43
52e46969 16121b(This)29 b(is)i(also)g(a)m(v)-5 b(ailable)33 b(with)d(`)p
d052bd6f 16122Ft(shopt)f(-s)h(checkhash)p Fu('.)199 4131 y(3.)61 b(Bash)36
d37a4722 16123b(will)g(not)g(insert)g(a)g(command)f(without)h(the)g(execute)h(bit)f
d052bd6f 16124(set)g(in)m(to)h(the)f(command)g(hash)330 4241 y(table,)c(ev)m(en)f(if)
d37a4722 16125f(it)h(returns)e(it)i(as)g(a)f(\(last-ditc)m(h\))j(result)d(from)g(a)h
d052bd6f 16126Ft($PATH)e Fu(searc)m(h.)199 4373 y(4.)61 b(The)42 b(message)h(prin)m
d37a4722 16127(ted)e(b)m(y)h(the)g(job)g(con)m(trol)i(co)s(de)e(and)f(builtins)h
d052bd6f
CR
16128(when)f(a)h(job)g(exits)h(with)f(a)330 4483 y(non-zero)31
16129b(status)g(is)f(`Done\(status\)'.)199 4615 y(5.)61 b(The)40
d37a4722
CR
16130b(message)h(prin)m(ted)f(b)m(y)g(the)h(job)f(con)m(trol)h(co)s(de)g
16131(and)f(builtins)f(when)h(a)g(job)g(is)h(stopp)s(ed)e(is)330
d052bd6f 161324724 y(`Stopp)s(ed\()p Fr(signame)5 b Fu(\)',)31 b(where)f
d37a4722 16133Fr(signame)36 b Fu(is,)31 b(for)f(example,)h Ft(SIGTSTP)p
d052bd6f
CR
16134Fu(.)199 4856 y(6.)61 b(Alias)31 b(expansion)g(is)f(alw)m(a)m(ys)i
16135(enabled,)e(ev)m(en)i(in)e(non-in)m(teractiv)m(e)j(shells.)199
161364989 y(7.)61 b(Reserv)m(ed)40 b(w)m(ords)g(app)s(earing)f(in)h(a)g(con)
16137m(text)i(where)d(reserv)m(ed)h(w)m(ords)f(are)i(recognized)g(do)f(not)
16138330 5098 y(undergo)30 b(alias)h(expansion.)199 5230 y(8.)61
6d69b625 16139b(Alias)45 b(expansion)e(is)h(p)s(erformed)f(when)f(initially)k
d052bd6f 16140(parsing)d(a)h(command)g(substitution.)80 b(The)330 5340
6d69b625 16141y(default)44 b(mo)s(de)g(generally)h(defers)f(it,)k(when)43
d052bd6f
CR
16142b(enabled,)48 b(un)m(til)c(the)g(command)g(substitution)g(is)p
16143eop end
e2520247
CR
16144%%Page: 110 116
16145TeXDict begin 110 115 bop 150 -116 a Fu(Chapter)30 b(6:)41
16146b(Bash)30 b(F)-8 b(eatures)2439 b(110)330 299 y(executed.)77
d052bd6f
CR
16147b(This)42 b(means)g(that)h(command)f(substitution)f(will)i(not)g
16148(expand)e(aliases)j(that)f(are)330 408 y(de\014ned)34
6d69b625 16149b(after)h(the)g(command)f(substitution)h(is)g(initially)h(parsed)e
d052bd6f
CR
16150(\(e.g.,)k(as)d(part)f(of)h(a)g(function)330 518 y(de\014nition\).)199
16151658 y(9.)61 b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g
16152Fu(expansions)g(of)i(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n)m(um)m(b)
16153s(er)f(and)g(`)p Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(')h(are)330
16154768 y(enabled,)26 b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e
16155(on)i(the)g(v)-5 b(alues)25 b(of)g Ft(PS1)f Fu(and)h
16156Ft(PS2)f Fu(regardless)330 877 y(of)31 b(the)f(setting)i(of)e(the)h
16157Ft(promptvars)c Fu(option.)154 1017 y(10.)61 b(The)30
6d69b625
CR
16158b Fm(posix)g Fu(startup)f(\014les)i(are)g(executed)g(\()p
16159Ft($ENV)p Fu(\))f(rather)g(than)g(the)h(normal)f(Bash)g(\014les.)154
d052bd6f 161601157 y(11.)61 b(Tilde)30 b(expansion)g(is)f(only)h(p)s(erformed)f(on)h
6d69b625 16161(assignmen)m(ts)g(preceding)g(a)g(command)g(name,)g(rather)330
d052bd6f
CR
161621267 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h
16163(line.)154 1407 y(12.)61 b(The)30 b(default)g(history)h(\014le)f(is)h
6d69b625 16164Ft(~/.sh_history)26 b Fu(\(this)31 b(is)f(the)h(default)g(v)-5
d052bd6f 16165b(alue)30 b(of)h Ft($HISTFILE)p Fu(\).)154 1547 y(13.)61
e59452c7
CR
16166b(Redirection)25 b(op)s(erators)f(do)g(not)g(p)s(erform)f(\014lename)h
16167(expansion)g(on)g(the)g(w)m(ord)f(in)h(the)g(redirection)330
d052bd6f
CR
161681657 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154
161691797 y(14.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e
d61300ec 16170(w)m(ord)h(splitting)h(on)f(the)h(w)m(ord)f(in)g(the)g(redirection.)154
d052bd6f 161711937 y(15.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5
b52e30b8 16172b(alid)35 b(shell)f Ft(name)p Fu(s.)52 b(That)34 b(is,)i(they)f(ma)m(y)
d052bd6f 16173g(not)g(con)m(tain)g(c)m(haracters)330 2046 y(other)e(than)g(letters,)h
b52e30b8 16174(digits,)h(and)d(underscores,)h(and)f(ma)m(y)h(not)g(start)h(with)e(a)h
d052bd6f 16175(digit.)49 b(Declaring)330 2156 y(a)31 b(function)f(with)g(an)g(in)m(v)
b52e30b8 16176-5 b(alid)31 b(name)g(causes)f(a)h(fatal)h(syn)m(tax)f(error)f(in)g
d052bd6f 16177(non-in)m(teractiv)m(e)j(shells.)154 2296 y(16.)61 b(F)-8
b52e30b8
CR
16178b(unction)31 b(names)f(ma)m(y)h(not)g(b)s(e)f(the)g(same)h(as)g(one)f
16179(of)h(the)f Fm(posix)g Fu(sp)s(ecial)h(builtins.)154
d052bd6f
CR
161802436 y(17.)61 b(Ev)m(en)27 b(if)h(a)f(shell)h(function)f(whose)g(name)g
16181(con)m(tains)i(a)f(slash)f(w)m(as)g(de\014ned)g(b)s(efore)f(en)m
16182(tering)j Fm(posix)330 2545 y Fu(mo)s(de,)h(the)h(shell)f(will)h(not)g
16183(execute)g(a)g(function)f(whose)g(name)h(con)m(tains)g(one)g(or)f(more)
16184h(slashes.)154 2685 y(18.)61 b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e
16185(are)i(found)e(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s
16186(okup.)154 2826 y(19.)61 b(When)48 b(prin)m(ting)g(shell)h(function)f
124d67cd 16187(de\014nitions)g(\(e.g.,)55 b(b)m(y)48 b Ft(type)p Fu(\),)k(Bash)d(do)s
d052bd6f
CR
16188(es)f(not)h(prin)m(t)f(the)330 2935 y Ft(function)28
16189b Fu(k)m(eyw)m(ord.)154 3075 y(20.)61 b(Literal)28 b(tildes)g(that)f
b52e30b8
CR
16190(app)s(ear)f(as)i(the)f(\014rst)f(c)m(haracter)j(in)d(elemen)m(ts)j(of)
16191e(the)g Ft(PATH)f Fu(v)-5 b(ariable)27 b(are)h(not)330
d052bd6f
CR
161923185 y(expanded)i(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)j(under)d(Section)
16193i(3.5.2)h([Tilde)f(Expansion],)f(page)h(25.)154 3325
16194y(21.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s
b52e30b8 16195(e)g(used)f(b)m(y)h(itself)g(as)g(a)h(command.)40 b(When)30
d052bd6f 16196b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 3434 y(it)33
b52e30b8
CR
16197b(displa)m(ys)g(timing)g(statistics)h(for)e(the)h(shell)g(and)f(its)g
16198(completed)i(c)m(hildren.)47 b(The)32 b Ft(TIMEFORMAT)330
d052bd6f
CR
161993544 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f
16200(timing)h(information.)154 3684 y(22.)61 b(When)33 b(parsing)g(and)f
b52e30b8
CR
16201(expanding)h(a)h($)p Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33
16202b Fu(expansion)g(that)h(app)s(ears)f(within)f(double)h(quotes,)330
d052bd6f 162033794 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
e59452c7 16204(cannot)i(b)s(e)e(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330
d052bd6f 162053903 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s
e59452c7 16206(erator)f(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e
d052bd6f 16207(pattern)330 4013 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)
e59452c7 16208e(do)g(not)h(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)154
d052bd6f 162094153 y(23.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
d37a4722 16210Ft(time)d Fu(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
d052bd6f
CR
16211(en)h(b)s(egins)d(with)i(a)330 4262 y(`)p Ft(-)p Fu('.)154
162124402 y(24.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h(do)s(es)e
e59452c7 16213(not)h(in)m(tro)s(duce)g(history)f(expansion)h(within)f(a)h
d052bd6f
CR
16214(double-quoted)g(string,)330 4512 y(ev)m(en)g(if)f(the)h
16215Ft(histexpand)d Fu(option)i(is)h(enabled.)154 4652 y(25.)61
e59452c7
CR
16216b(If)24 b(a)g Fm(posix)g Fu(sp)s(ecial)h(builtin)f(returns)f(an)h
16217(error)g(status,)i(a)e(non-in)m(teractiv)m(e)j(shell)e(exits.)39
d052bd6f 16218b(The)24 b(fatal)330 4762 y(errors)30 b(are)h(those)f(listed)h(in)f
e59452c7 16219(the)h Fm(posix)e Fu(standard,)h(and)g(include)g(things)g(lik)m(e)i
d052bd6f 16220(passing)e(incorrect)330 4871 y(options,)43 b(redirection)d(errors,)i
e59452c7 16221(v)-5 b(ariable)41 b(assignmen)m(t)g(errors)e(for)g(assignmen)m(ts)i
d052bd6f
CR
16222(preceding)f(the)330 4981 y(command)30 b(name,)h(and)f(so)g(on.)154
162235121 y(26.)61 b(The)35 b Ft(unset)e Fu(builtin)i(with)g(the)g
16224Ft(-v)f Fu(option)i(sp)s(eci\014ed)e(returns)g(a)i(fatal)g(error)f(if)g
16225(it)g(attempts)h(to)330 5230 y(unset)22 b(a)h Ft(readonly)d
16226Fu(or)i Ft(non-unsettable)c Fu(v)-5 b(ariable,)25 b(or)e(encoun)m(ters)
16227f(a)h(v)-5 b(ariable)23 b(name)f(argumen)m(t)330 5340
16228y(that)31 b(is)f(an)h(in)m(v)-5 b(alid)31 b(iden)m(ti\014er,)f(whic)m
16229(h)g(causes)h(a)g(non-in)m(teractiv)m(e)i(shell)e(to)g(exit.)p
16230eop end
e2520247
CR
16231%%Page: 111 117
16232TeXDict begin 111 116 bop 150 -116 a Fu(Chapter)30 b(6:)41
16233b(Bash)30 b(F)-8 b(eatures)2439 b(111)154 299 y(27.)61
d052bd6f 16234b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h(error)g
6d69b625 16235(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g(error)e(o)s
d052bd6f
CR
16236(ccurs)330 408 y(when)38 b(no)h(command)g(name)g(follo)m(ws)i(the)e
16237(assignmen)m(t)h(statemen)m(ts.)69 b(A)39 b(v)-5 b(ariable)40
16238b(assignmen)m(t)330 518 y(error)30 b(o)s(ccurs,)g(for)g(example,)i
16239(when)d(trying)i(to)g(assign)f(a)h(v)-5 b(alue)31 b(to)g(a)g(readonly)f
16240(v)-5 b(ariable.)154 658 y(28.)61 b(A)31 b(non-in)m(teractiv)m(e)j
16241(shell)d(exits)h(with)e(an)h(error)g(status)g(if)g(a)g(v)-5
16242b(ariable)32 b(assignmen)m(t)g(error)e(o)s(ccurs)330
16243768 y(in)g(an)g(assignmen)m(t)i(statemen)m(t)g(preceding)e(a)h(sp)s
16244(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f(other)h(simple)330
16245877 y(command.)38 b(F)-8 b(or)23 b(an)m(y)g(other)g(simple)g(command,)h
16246(the)f(shell)g(ab)s(orts)f(execution)i(of)f(that)g(command,)330
16247987 y(and)44 b(execution)i(con)m(tin)m(ues)g(at)g(the)f(top)g(lev)m(el)
16248h(\()p Ft(")p Fu(the)f(shell)h(shall)f(not)g(p)s(erform)e(an)m(y)i
16249(further)330 1096 y(pro)s(cessing)30 b(of)h(the)f(command)g(in)g(whic)m
16250(h)h(the)f(error)g(o)s(ccurred)p Ft(")p Fu(\).)154 1236
16251y(29.)61 b(A)43 b(non-in)m(teractiv)m(e)i(shell)e(exits)h(with)f(an)f
16252(error)h(status)g(if)g(the)g(iteration)h(v)-5 b(ariable)44
16253b(in)f(a)g Ft(for)330 1346 y Fu(statemen)m(t)32 b(or)f(the)f(selection)
16254i(v)-5 b(ariable)32 b(in)e(a)g Ft(select)f Fu(statemen)m(t)j(is)f(a)f
16255(readonly)h(v)-5 b(ariable.)154 1486 y(30.)61 b(Non-in)m(teractiv)m(e)
1625634 b(shells)c(exit)h(if)g Fr(\014lename)k Fu(in)30 b
16257Ft(.)g Fr(\014lename)36 b Fu(is)31 b(not)f(found.)154
162581626 y(31.)61 b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f(a)g
16259(syn)m(tax)g(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f(in)h
16260(an)330 1736 y(in)m(v)-5 b(alid)31 b(expression.)154
162611876 y(32.)61 b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g(a)f
16262(parameter)h(expansion)g(error)f(o)s(ccurs.)154 2016
16263y(33.)61 b(Non-in)m(teractiv)m(e)27 b(shells)c(exit)i(if)e(there)h(is)f
16264(a)h(syn)m(tax)g(error)f(in)g(a)h(script)f(read)g(with)h(the)f
16265Ft(.)g Fu(or)h Ft(source)330 2125 y Fu(builtins,)30 b(or)g(in)g(a)h
16266(string)g(pro)s(cessed)e(b)m(y)i(the)f Ft(eval)f Fu(builtin.)154
162672265 y(34.)61 b(While)32 b(v)-5 b(ariable)32 b(indirection)f(is)g(a)m
16268(v)-5 b(ailable,)34 b(it)d(ma)m(y)h(not)f(b)s(e)g(applied)g(to)g(the)h
16269(`)p Ft(#)p Fu(')f(and)f(`)p Ft(?)p Fu(')h(sp)s(ecial)330
162702375 y(parameters.)154 2515 y(35.)61 b(Expanding)21 b(the)h(`)p
e9c75143 16271Ft(*)p Fu(')g(sp)s(ecial)h(parameter)f(in)g(a)g(pattern)h(con)m(text)g
d052bd6f 16272(where)f(the)g(expansion)g(is)g(double-)330 2625 y(quoted)31
e9c75143 16273b(do)s(es)f(not)g(treat)i(the)e Ft($*)g Fu(as)h(if)f(it)h(w)m(ere)g
d052bd6f 16274(double-quoted.)154 2765 y(36.)61 b(Assignmen)m(t)23
e9c75143 16275b(statemen)m(ts)h(preceding)e Fm(posix)f Fu(sp)s(ecial)i(builtins)f(p)s
d052bd6f
CR
16276(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 2874
16277y(after)31 b(the)f(builtin)g(completes.)154 3014 y(37.)61
e9c75143
CR
16278b(The)31 b Ft(command)e Fu(builtin)i(do)s(es)g(not)h(prev)m(en)m(t)f
16279(builtins)g(that)h(tak)m(e)h(assignmen)m(t)f(statemen)m(ts)h(as)f(ar-)
d052bd6f 16280330 3124 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)h(assignmen)m
e9c75143 16281(t)g(statemen)m(ts;)46 b(when)38 b(not)i(in)f Fm(posix)f
d052bd6f 16282Fu(mo)s(de,)330 3233 y(assignmen)m(t)k(builtins)e(lose)h(their)g
e9c75143 16283(assignmen)m(t)h(statemen)m(t)h(expansion)d(prop)s(erties)g(when)g
d052bd6f
CR
16284(pre-)330 3343 y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154
162853483 y(38.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h(required)f
e9c75143 16286(format)h(to)g(describ)s(e)f(eac)m(h)i(job)e(placed)h(in)f(the)h(bac)m
d052bd6f 16287(kground,)330 3593 y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g
e9c75143 16288(indication)h(of)f(whether)f(the)h(job)g(is)g(the)h(curren)m(t)e(or)h
d052bd6f 16289(previous)g(job.)154 3733 y(39.)61 b(The)23 b(output)f(of)i(`)p
d37a4722
CR
16290Ft(kill)29 b(-l)p Fu(')23 b(prin)m(ts)f(all)i(the)g(signal)f(names)g
16291(on)g(a)h(single)g(line,)h(separated)e(b)m(y)g(spaces,)330
d052bd6f
CR
162923842 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
162933982 y(40.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept)
124d67cd 16294h(signal)f(names)f(with)g(a)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
d052bd6f 162954122 y(41.)61 b(The)38 b Ft(export)f Fu(and)g Ft(readonly)f
124d67cd 16296Fu(builtin)i(commands)g(displa)m(y)h(their)f(output)g(in)g(the)h
d052bd6f
CR
16297(format)g(re-)330 4232 y(quired)30 b(b)m(y)g Fm(posix)p
16298Fu(.)154 4372 y(42.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g
124d67cd 16299(signal)i(names)e(without)g(the)h(leading)g Ft(SIG)p
d052bd6f 16300Fu(.)154 4512 y(43.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g
e59452c7 16301(c)m(hec)m(k)h(the)g(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e
d052bd6f 16302(signal)i(sp)s(eci\014cation)330 4622 y(and)30 b(rev)m(ert)i(the)e
e59452c7 16303(signal)i(handling)e(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g
d052bd6f 16304(is,)g(unless)f(that)h(argumen)m(t)330 4731 y(consists)e(solely)g(of)g
e59452c7
CR
16305(digits)g(and)f(is)g(a)h(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38
16306b(If)28 b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
d052bd6f 163074841 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
d37a4722 16308(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
d052bd6f 16309f(argumen)m(t.)154 4981 y(44.)61 b Ft(trap)29 b(-p)24
237c32ba 16310b Fu(without)g(argumen)m(ts)g(displa)m(ys)g(signals)g(whose)g(disp)s
d052bd6f
CR
16311(ositions)g(are)g(set)h(to)f(SIG)p 3360 4981 28 4 v 40
16312w(DFL)h(and)330 5090 y(those)31 b(that)g(w)m(ere)g(ignored)f(when)g
237c32ba 16313(the)g(shell)h(started,)g(not)f(just)g(trapp)s(ed)f(signals.)154
d052bd6f 163145230 y(45.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f
d37a4722 16315Fu(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f(directory)h
d052bd6f 16316(for)g(the)g(\014lename)f(argumen)m(t)330 5340 y(if)30
d37a4722 16317b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g Ft(PATH)p
d052bd6f 16318Fu(.)p eop end
e2520247
CR
16319%%Page: 112 118
16320TeXDict begin 112 117 bop 150 -116 a Fu(Chapter)30 b(6:)41
16321b(Bash)30 b(F)-8 b(eatures)2439 b(112)154 299 y(46.)61
d052bd6f
CR
16322b(Enabling)21 b Fm(posix)g Fu(mo)s(de)g(has)g(the)g(e\013ect)i(of)e
16323(setting)i(the)e Ft(inherit_errexit)d Fu(option,)23 b(so)f(subshells)
16324330 408 y(spa)m(wned)27 b(to)i(execute)g(command)e(substitutions)h
16325(inherit)f(the)h(v)-5 b(alue)28 b(of)g(the)g Ft(-e)f
16326Fu(option)h(from)g(the)330 518 y(paren)m(t)37 b(shell.)62
16327b(When)37 b(the)g Ft(inherit_errexit)c Fu(option)38 b(is)f(not)h
16328(enabled,)h(Bash)e(clears)h(the)g Ft(-e)330 628 y Fu(option)31
16329b(in)f(suc)m(h)g(subshells.)154 765 y(47.)61 b(Enabling)32
16330b Fm(posix)f Fu(mo)s(de)h(has)g(the)h(e\013ect)g(of)g(setting)g(the)g
16331Ft(shift_verbose)28 b Fu(option,)34 b(so)e(n)m(umeric)330
16332874 y(argumen)m(ts)f(to)g Ft(shift)f Fu(that)h(exceed)h(the)e(n)m(um)m
16333(b)s(er)g(of)h(p)s(ositional)g(parameters)g(will)g(result)g(in)f(an)330
16334984 y(error)g(message.)154 1121 y(48.)61 b(When)43 b(the)g
16335Ft(alias)f Fu(builtin)g(displa)m(ys)i(alias)g(de\014nitions,)i(it)d(do)
16336s(es)g(not)g(displa)m(y)h(them)f(with)g(a)330 1230 y(leading)31
16337b(`)p Ft(alias)e Fu(')i(unless)f(the)g Ft(-p)g Fu(option)h(is)f
16338(supplied.)154 1367 y(49.)61 b(When)40 b(the)g Ft(set)f
16339Fu(builtin)h(is)g(in)m(v)m(ok)m(ed)h(without)f(options,)j(it)e(do)s(es)
16340f(not)g(displa)m(y)g(shell)g(function)330 1477 y(names)30
16341b(and)g(de\014nitions.)154 1614 y(50.)61 b(When)36 b(the)g
16342Ft(set)g Fu(builtin)g(is)g(in)m(v)m(ok)m(ed)i(without)e(options,)i(it)f
16343(displa)m(ys)f(v)-5 b(ariable)37 b(v)-5 b(alues)37 b(without)330
163441724 y(quotes,)26 b(unless)d(they)i(con)m(tain)g(shell)f(metac)m
16345(haracters,)k(ev)m(en)d(if)f(the)g(result)g(con)m(tains)i(nonprin)m
16346(ting)330 1833 y(c)m(haracters.)154 1970 y(51.)61 b(When)35
16347b(the)h Ft(cd)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed)g(in)f(logical)j(mo)
16348s(de,)e(and)f(the)h(pathname)f(constructed)g(from)330
163492080 y Ft($PWD)i Fu(and)h(the)h(directory)f(name)h(supplied)e(as)i(an)f
16350(argumen)m(t)h(do)s(es)f(not)g(refer)h(to)g(an)f(existing)330
163512189 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f
e59452c7 16352(falling)h(bac)m(k)h(to)f(ph)m(ysical)g(mo)s(de.)154
d052bd6f 163532326 y(52.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m
fffe80d4 16354(hange)h(a)f(directory)g(b)s(ecause)g(the)g(length)g(of)f(the)h
d052bd6f 16355(pathname)330 2436 y(constructed)27 b(from)g Ft($PWD)f
fffe80d4 16356Fu(and)h(the)g(directory)h(name)f(supplied)f(as)i(an)f(argumen)m(t)g
d052bd6f 16357(exceeds)h Ft(PATH_)330 2545 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g
fffe80d4 16358(links)g(are)g(expanded,)g Ft(cd)f Fu(will)h(fail)h(instead)f(of)g
d052bd6f
CR
16359(attempting)h(to)f(use)g(only)330 2655 y(the)31 b(supplied)e(directory)
16360i(name.)154 2792 y(53.)61 b(The)36 b Ft(pwd)f Fu(builtin)h(v)m
fffe80d4
CR
16361(eri\014es)h(that)g(the)f(v)-5 b(alue)37 b(it)g(prin)m(ts)e(is)i(the)f
16362(same)h(as)f(the)h(curren)m(t)f(directory)-8 b(,)330
d052bd6f 163632902 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
fffe80d4 16364(the)f(\014le)f(system)h(with)f(the)h Ft(-P)e Fu(option.)154
d052bd6f 163653039 y(54.)61 b(When)35 b(listing)g(the)g(history)-8
fffe80d4 16366b(,)36 b(the)f Ft(fc)g Fu(builtin)f(do)s(es)g(not)h(include)g(an)f
d052bd6f
CR
16367(indication)i(of)f(whether)f(or)330 3148 y(not)d(a)f(history)h(en)m
16368(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 3285 y(55.)61
fffe80d4 16369b(The)30 b(default)g(editor)h(used)f(b)m(y)g Ft(fc)g
d052bd6f
CR
16370Fu(is)g Ft(ed)p Fu(.)154 3422 y(56.)61 b(If)38 b(there)h(are)g(to)s(o)g
16371(man)m(y)g(argumen)m(ts)g(supplied)e(to)i Ft(fc)30 b(-s)p
16372Fu(,)40 b Ft(fc)e Fu(prin)m(ts)g(an)h(error)f(message)i(and)330
163733532 y(returns)29 b(failure.)154 3669 y(57.)61 b(The)37
16374b Ft(type)g Fu(and)g Ft(command)f Fu(builtins)i(will)g(not)g(rep)s(ort)
16375f(a)i(non-executable)g(\014le)f(as)g(ha)m(ving)h(b)s(een)330
163763778 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
122f603c 16377(execute)g(suc)m(h)f(a)g(\014le)g(if)g(it)g(is)g(the)g(only)g(so-named)
d052bd6f
CR
16378g(\014le)330 3888 y(found)i(in)h Ft($PATH)p Fu(.)154
163794025 y(58.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m
a6ae8f35 16380(ok)m(e)i(the)e Ft(vi)g Fu(editor)h(directly)f(when)f(the)i(`)p
d052bd6f
CR
16381Ft(v)p Fu(')f(command)g(is)g(run,)330 4134 y(instead)e(of)f(c)m(hec)m
16382(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 4271
16383y(59.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j
a6ae8f35 16384(Bash)d(do)s(es)g(not)g(attempt)h(to)g(in)m(terpret)f(an)m(y)h(ar-)330
d052bd6f 163854381 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54
1c72c0cd 16386b(Eac)m(h)35 b(argumen)m(t)g(is)f(displa)m(y)m(ed,)j(after)e(escap)s(e)
d052bd6f
CR
16387g(c)m(haracters)h(are)330 4491 y(con)m(v)m(erted.)154
163884628 y(60.)61 b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m
6e51e0d0 16389(k)g(size)g(of)g(512)g(b)m(ytes)g(for)f(the)h Ft(-c)f
d052bd6f 16390Fu(and)g Ft(-f)f Fu(options.)154 4765 y(61.)61 b(The)39
e59452c7
CR
16391b(arriv)-5 b(al)41 b(of)f Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h
16392(on)f Ft(SIGCHLD)e Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g
d052bd6f 16393Ft(wait)330 4874 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f
e1e48bba 16394(immediately)-8 b(.)62 b(The)37 b(trap)f(command)h(is)g(run)e(once)j
d052bd6f
CR
16395(for)f(eac)m(h)330 4984 y(c)m(hild)31 b(that)g(exits.)154
163965121 y(62.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m
124d67cd 16397(terrupted)h(b)m(y)g(a)h(signal)f(for)g(whic)m(h)g(a)h(trap)f(has)g(b)s
d052bd6f 16398(een)f(set.)40 b(If)27 b(Bash)330 5230 y(receiv)m(es)41
124d67cd
CR
16399b(a)f(trapp)s(ed)e(signal)i(while)f(executing)h Ft(read)p
16400Fu(,)h(the)e(trap)h(handler)e(executes)i(and)f Ft(read)330
d052bd6f 164015340 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)p
7a8455e4 16402eop end
e2520247
CR
16403%%Page: 113 119
16404TeXDict begin 113 118 bop 150 -116 a Fu(Chapter)30 b(6:)41
16405b(Bash)30 b(F)-8 b(eatures)2439 b(113)154 299 y(63.)61
d052bd6f
CR
16406b(The)33 b Ft(printf)f Fu(builtin)i(uses)f Ft(double)f
16407Fu(\(via)j Ft(strtod)p Fu(\))d(to)j(con)m(v)m(ert)g(argumen)m(ts)f
16408(corresp)s(onding)f(to)330 408 y(\015oating)40 b(p)s(oin)m(t)f(con)m(v)
16409m(ersion)h(sp)s(eci\014ers,)h(instead)e(of)g Ft(long)29
16410b(double)38 b Fu(if)h(it's)g(a)m(v)-5 b(ailable.)69 b(The)39
16411b(`)p Ft(L)p Fu(')330 518 y(length)31 b(mo)s(di\014er)e(forces)i
16412Ft(printf)e Fu(to)i(use)f Ft(long)f(double)g Fu(if)h(it's)h(a)m(v)-5
16413b(ailable.)154 650 y(64.)61 b(Bash)27 b(remo)m(v)m(es)h(an)e(exited)i
16414(bac)m(kground)e(pro)s(cess's)h(status)g(from)f(the)h(list)g(of)g(suc)m
16415(h)f(statuses)h(after)330 759 y(the)k Ft(wait)e Fu(builtin)h(is)g(used)
16416g(to)h(obtain)g(it.)154 891 y(65.)61 b(A)39 b(double)f(quote)i(c)m
16417(haracter)g(\(`)p Ft(")p Fu('\))g(is)f(treated)g(sp)s(ecially)h(when)e
16418(it)h(app)s(ears)f(in)h(a)g(bac)m(kquoted)330 1000 y(command)24
16419b(substitution)f(in)h(the)g(b)s(o)s(dy)e(of)i(a)g(here-do)s(cumen)m(t)g
16420(that)h(undergo)s(es)e(expansion.)38 b(That)330 1110
16421y(means,)29 b(for)f(example,)i(that)f(a)g(bac)m(kslash)g(preceding)f(a)
16422h(double)f(quote)h(c)m(haracter)h(will)f(escap)s(e)f(it)330
164231219 y(and)i(the)g(bac)m(kslash)h(will)g(b)s(e)f(remo)m(v)m(ed.)154
164241351 y(66.)61 b(Command)25 b(substitutions)g(don't)g(set)h(the)g(`)p
16425Ft(?)p Fu(')g(sp)s(ecial)g(parameter.)40 b(The)25 b(exit)h(status)g(of)
16426g(a)g(simple)330 1461 y(command)i(without)g(a)h(command)f(w)m(ord)f(is)
16427i(still)g(the)f(exit)h(status)g(of)f(the)g(last)h(command)f(substi-)330
164281570 y(tution)f(that)h(o)s(ccurred)e(while)h(ev)-5 b(aluating)28
16429b(the)g(v)-5 b(ariable)27 b(assignmen)m(ts)h(and)e(redirections)i(in)e
16430(that)330 1680 y(command,)h(but)f(that)g(do)s(es)g(not)h(happ)s(en)d
16431(un)m(til)j(after)g(all)g(of)f(the)h(assignmen)m(ts)g(and)e
16432(redirections.)275 1833 y(There)34 b(is)g(other)h Fm(posix)f
16433Fu(b)s(eha)m(vior)h(that)g(Bash)g(do)s(es)f(not)h(implemen)m(t)g(b)m(y)
16434g(default)f(ev)m(en)i(when)d(in)150 1943 y Fm(posix)d
16435Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199 2074 y(1.)61
16436b(The)30 b Ft(fc)f Fu(builtin)h(c)m(hec)m(ks)i Ft($EDITOR)c
16437Fu(as)j(a)f(program)g(to)h(edit)g(history)f(en)m(tries)h(if)f
16438Ft(FCEDIT)f Fu(is)h(unset,)330 2184 y(rather)g(than)g(defaulting)h
7a8455e4 16439(directly)g(to)g Ft(ed)p Fu(.)40 b Ft(fc)30 b Fu(uses)g
d052bd6f
CR
16440Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 2315 y(2.)61
16441b(A)37 b(non-in)m(teractiv)m(e)i(shell)e(do)s(es)f(not)h(exit)h(if)e(a)
16442h(v)-5 b(ariable)38 b(assignmen)m(t)f(preceding)g(the)g
16443Ft(command)330 2425 y Fu(builtin)30 b(or)g(another)h(non-sp)s(ecial)g
16444(builtin)f(fails.)199 2557 y(3.)61 b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i
16445(Bash)e(requires)g(the)g Ft(xpg_echo)e Fu(option)j(to)g(b)s(e)e
16446(enabled)h(for)g(the)g Ft(echo)f Fu(builtin)330 2666
16447y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 2820 y(Bash)c(can)g(b)s(e)f
16448(con\014gured)h(to)g(b)s(e)g Fm(posix)p Fu(-conforman)m(t)g(b)m(y)g
16449(default,)h(b)m(y)f(sp)s(ecifying)g(the)g Ft(--enable-)150
164502929 y(strict-posix-default)c Fu(to)27 b Ft(configure)e
16451Fu(when)h(building)h(\(see)h(Section)g(10.8)g([Optional)g(F)-8
e2520247 16452b(eatures],)150 3039 y(page)31 b(165\).)150 3274 y Fs(6.12)68
d052bd6f
CR
16453b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 3433 y Fu(Bash-4.0)33
16454b(in)m(tro)s(duced)f(the)f(concept)i(of)f(a)g Fr(shell)g(compatibilit)m
16455(y)i(lev)m(el)p Fu(,)g(sp)s(eci\014ed)d(as)h(a)g(set)h(of)f(options)150
164563543 y(to)f(the)f(shopt)g(builtin)g(\()p Ft(compat31)p
16457Fu(,)e Ft(compat32)p Fu(,)h Ft(compat40)p Fu(,)f Ft(compat41)p
16458Fu(,)g(and)i(so)g(on\).)41 b(There)30 b(is)g(only)150
164593652 y(one)f(curren)m(t)f(compatibilit)m(y)j(lev)m(el)f({)f(eac)m(h)h
16460(option)f(is)g(m)m(utually)g(exclusiv)m(e.)41 b(The)28
16461b(compatibilit)m(y)j(lev)m(el)150 3762 y(is)39 b(in)m(tended)g(to)h
16462(allo)m(w)g(users)e(to)i(select)h(b)s(eha)m(vior)e(from)f(previous)h(v)
16463m(ersions)g(that)h(is)f(incompatible)150 3871 y(with)d(new)m(er)g(v)m
16464(ersions)g(while)g(they)g(migrate)h(scripts)f(to)h(use)f(curren)m(t)f
16465(features)i(and)e(b)s(eha)m(vior.)58 b(It's)150 3981
16466y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f(solution.)275
164674113 y(This)k(section)j(do)s(es)e(not)h(men)m(tion)g(b)s(eha)m(vior)g
16468(that)g(is)f(standard)g(for)g(a)h(particular)g(v)m(ersion)g(\(e.g.,)150
164694222 y(setting)d Ft(compat32)c Fu(means)i(that)i(quoting)e(the)h(rhs)f
16470(of)g(the)h(regexp)g(matc)m(hing)h(op)s(erator)e(quotes)h(sp)s(e-)150
164714332 y(cial)39 b(regexp)e(c)m(haracters)i(in)e(the)g(w)m(ord,)i(whic)m
16472(h)e(is)g(default)h(b)s(eha)m(vior)f(in)g(bash-3.2)h(and)f(subsequen)m
16473(t)150 4441 y(v)m(ersions\).)275 4573 y(If)29 b(a)h(user)f(enables,)h
16474(sa)m(y)-8 b(,)31 b Ft(compat32)p Fu(,)d(it)i(ma)m(y)g(a\013ect)h(the)f
16475(b)s(eha)m(vior)g(of)g(other)g(compatibilit)m(y)h(lev)m(els)150
164764682 y(up)23 b(to)h(and)f(including)h(the)g(curren)m(t)f(compatibilit)m
16477(y)j(lev)m(el.)41 b(The)23 b(idea)h(is)g(that)g(eac)m(h)h(compatibilit)
16478m(y)h(lev)m(el)150 4792 y(con)m(trols)35 b(b)s(eha)m(vior)f(that)g(c)m
16479(hanged)g(in)f(that)h(v)m(ersion)g(of)g(Bash,)h(but)e(that)h(b)s(eha)m
16480(vior)g(ma)m(y)g(ha)m(v)m(e)h(b)s(een)150 4902 y(presen)m(t)f(in)g
16481(earlier)g(v)m(ersions.)52 b(F)-8 b(or)35 b(instance,)g(the)f(c)m
16482(hange)h(to)g(use)f(lo)s(cale-based)h(comparisons)f(with)150
164835011 y(the)e Ft([[)f Fu(command)g(came)h(in)g(bash-4.1,)h(and)d
16484(earlier)j(v)m(ersions)f(used)f(ASCI)s(I-based)f(comparisons,)i(so)150
164855121 y(enabling)27 b Ft(compat32)e Fu(will)i(enable)g(ASCI)s(I-based)e
16486(comparisons)i(as)g(w)m(ell.)41 b(That)26 b(gran)m(ularit)m(y)i(ma)m(y)
16487g(not)150 5230 y(b)s(e)i(su\016cien)m(t)i(for)f(all)g(uses,)g(and)g(as)
16488g(a)g(result)g(users)f(should)g(emplo)m(y)i(compatibilit)m(y)h(lev)m
16489(els)g(carefully)-8 b(.)150 5340 y(Read)31 b(the)f(do)s(cumen)m(tation)
16490h(for)g(a)f(particular)h(feature)g(to)g(\014nd)e(out)h(the)h(curren)m
16491(t)f(b)s(eha)m(vior.)p eop end
e2520247
CR
16492%%Page: 114 120
16493TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(6:)41
16494b(Bash)30 b(F)-8 b(eatures)2439 b(114)275 299 y(Bash-4.3)44
d052bd6f
CR
16495b(in)m(tro)s(duced)e(a)h(new)f(shell)h(v)-5 b(ariable:)65
16496b Ft(BASH_COMPAT)p Fu(.)75 b(The)42 b(v)-5 b(alue)43
16497b(assigned)g(to)g(this)150 408 y(v)-5 b(ariable)32 b(\(a)g(decimal)h(v)
16498m(ersion)e(n)m(um)m(b)s(er)f(lik)m(e)j(4.2,)g(or)e(an)h(in)m(teger)g
16499(corresp)s(onding)f(to)h(the)f Ft(compat)p Fr(NN)150
16500518 y Fu(option,)g(lik)m(e)h(42\))f(determines)g(the)f(compatibilit)m
e2520247 16501(y)j(lev)m(el.)275 649 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s
d052bd6f 16502(egun)f(deprecating)h(older)h(compatibilit)m(y)h(lev)m(els.)44
e2520247 16503b(Ev)m(en)m(tu-)150 758 y(ally)-8 b(,)32 b(the)e(options)h(will)g(b)s
d37a4722 16504(e)f(remo)m(v)m(ed)h(in)f(fa)m(v)m(or)i(of)e Ft(BASH_COMPAT)p
e2520247 16505Fu(.)275 889 y(Bash-5.0)36 b(is)f(the)g(\014nal)f(v)m(ersion)i(for)e
d37a4722 16506(whic)m(h)h(there)g(will)g(b)s(e)f(an)h(individual)f(shopt)h(option)g
e2520247 16507(for)g(the)150 998 y(previous)30 b(v)m(ersion.)41 b(Users)30
d37a4722 16508b(should)g(use)g Ft(BASH_COMPAT)d Fu(on)j(bash-5.0)h(and)f(later)i(v)m
e2520247 16509(ersions.)275 1129 y(The)24 b(follo)m(wing)i(table)g(describ)s(es)e
e59452c7 16510(the)i(b)s(eha)m(vior)f(c)m(hanges)h(con)m(trolled)g(b)m(y)f(eac)m(h)h
e2520247 16511(compatibilit)m(y)h(lev)m(el)150 1238 y(setting.)43 b(The)30
e59452c7
CR
16512b Ft(compat)p Fr(NN)39 b Fu(tag)32 b(is)f(used)f(as)h(shorthand)e(for)h
16513(setting)i(the)f(compatibilit)m(y)i(lev)m(el)f(to)g Fr(NN)150
e2520247 165141348 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m(hanisms.)63
e59452c7 16515b(F)-8 b(or)39 b(v)m(ersions)f(prior)f(to)h(bash-5.0,)j(the)d
e2520247 16516(compatibilit)m(y)150 1457 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i(using)e
e59452c7
CR
16517(the)i(corresp)s(onding)e Ft(compat)p Fr(NN)41 b Fu(shopt)33
16518b(option.)50 b(F)-8 b(or)34 b(bash-4.3)f(and)g(later)150
e2520247 165191567 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5
e59452c7 16520b(ariable)39 b(is)e(preferred,)i(and)e(it)i(is)f(required)f(for)g
e2520247
CR
16521(bash-5.1)i(and)e(later)150 1677 y(v)m(ersions.)150 1828
16522y Ft(compat31)705 1958 y Fq(\017)60 b Fu(quoting)34 b(the)g(rhs)e(of)i
d052bd6f 16523(the)f Ft([[)g Fu(command's)h(regexp)f(matc)m(hing)i(op)s(erator)f(\(=)
e2520247
CR
16524p Ft(~)p Fu(\))f(has)810 2068 y(no)d(sp)s(ecial)h(e\013ect)150
165252219 y Ft(compat40)705 2350 y Fq(\017)60 b Fu(the)35
16526b(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h(to)g(the)g
16527Ft([[)f Fu(command)h(do)f(not)h(consider)f(the)h(curren)m(t)810
165282459 y(lo)s(cale)41 b(when)d(comparing)i(strings;)k(they)c(use)f(ASCI)s
16529(I)f(ordering.)67 b(Bash)40 b(v)m(ersions)810 2569 y(prior)f(to)i
16530(bash-4.1)f(use)g(ASCI)s(I)e(collation)k(and)d(strcmp\(3\);)45
16531b(bash-4.1)c(and)e(later)810 2679 y(use)30 b(the)h(curren)m(t)f(lo)s
16532(cale's)i(collation)h(sequence)d(and)g(strcoll\(3\).)150
165332830 y Ft(compat41)705 2960 y Fq(\017)60 b Fu(in)29 b(p)s(osix)f(mo)s
16534(de,)i Ft(time)e Fu(ma)m(y)h(b)s(e)g(follo)m(w)m(ed)i(b)m(y)e(options)g
16535(and)g(still)h(b)s(e)e(recognized)j(as)810 3070 y(a)g(reserv)m(ed)f(w)m
16536(ord)g(\(this)h(is)f Fm(posix)g Fu(in)m(terpretation)i(267\))705
165373200 y Fq(\017)60 b Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e
16538(requires)g(that)i(an)f(ev)m(en)g(n)m(um)m(b)s(er)f(of)h(single)g
16539(quotes)810 3310 y(o)s(ccur)28 b(in)g(the)h Fr(w)m(ord)i
16540Fu(p)s(ortion)d(of)h(a)g(double-quoted)f($)p Fi({)6 b
16541Fu(.)23 b(.)f(.)11 b Fi(})29 b Fu(parameter)g(expansion)810
165423420 y(and)34 b(treats)h(them)f(sp)s(ecially)-8 b(,)37
16543b(so)e(that)g(c)m(haracters)g(within)f(the)h(single)g(quotes)g(are)810
165443529 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e
16545Fu(in)m(terpretation)j(221\))150 3680 y Ft(compat42)705
165463811 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g
d37a4722 16547(double-quoted)h(pattern)f(substitution)g(do)s(es)g(not)h(un-)810
e2520247
CR
165483921 y(dergo)h(quote)g(remo)m(v)-5 b(al,)32 b(as)e(it)h(do)s(es)f(in)g
16549(v)m(ersions)h(after)g(bash-4.2)705 4051 y Fq(\017)60
d37a4722 16550b Fu(in)39 b(p)s(osix)g(mo)s(de,)j(single)e(quotes)g(are)g(considered)f
e2520247 16551(sp)s(ecial)h(when)f(expanding)g(the)810 4161 y Fr(w)m(ord)d
d37a4722
CR
16552Fu(p)s(ortion)c(of)g(a)h(double-quoted)g($)p Fi({)6 b
16553Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(parameter)g(expansion)f(and)g(can)h
e2520247 16554(b)s(e)810 4270 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g
d37a4722 16555(other)h(sp)s(ecial)f(c)m(haracter)i(\(this)e(is)g(part)g(of)810
e2520247 165564380 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42
d37a4722 16557b(in)36 b(later)h(v)m(ersions,)h(single)f(quotes)g(are)g(not)f(sp)s
e2520247
CR
16558(ecial)810 4489 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)150
165594641 y Ft(compat43)705 4771 y Fq(\017)60 b Fu(the)31
16560b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h(w)m(arning)g(message)h(if)f
16561(an)g(attempt)h(is)f(made)f(to)i(use)f(a)810 4881 y(quoted)36
16562b(comp)s(ound)e(assignmen)m(t)i(as)g(an)g(argumen)m(t)g(to)g(declare)h
16563(\(e.g.,)i(declare)d(-a)810 4990 y(fo)s(o='\(1)31 b(2\)'\).)42
16564b(Later)31 b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h(is)g
16565(deprecated)705 5121 y Fq(\017)60 b Fu(w)m(ord)21 b(expansion)g(errors)
16566g(are)h(considered)f(non-fatal)h(errors)f(that)h(cause)g(the)f(curren)m
16567(t)810 5230 y(command)k(to)g(fail,)i(ev)m(en)e(in)g(p)s(osix)f(mo)s(de)
16568h(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g(mak)m(e)h(them)810
165695340 y(fatal)32 b(errors)d(that)i(cause)g(the)g(shell)f(to)i(exit\))p
d052bd6f 16570eop end
e2520247
CR
16571%%Page: 115 121
16572TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(6:)41
16573b(Bash)30 b(F)-8 b(eatures)2439 b(115)705 299 y Fq(\017)60
16574b Fu(when)37 b(executing)i(a)g(shell)f(function,)i(the)f(lo)s(op)f
16575(state)h(\(while/un)m(til/etc.\))68 b(is)38 b(not)810
16576408 y(reset,)c(so)g Ft(break)d Fu(or)i Ft(continue)e
16577Fu(in)h(that)i(function)f(will)g(break)g(or)g(con)m(tin)m(ue)h(lo)s
16578(ops)810 518 y(in)h(the)g(calling)h(con)m(text.)57 b(Bash-4.4)37
16579b(and)d(later)i(reset)g(the)f(lo)s(op)g(state)i(to)e(prev)m(en)m(t)810
16580628 y(this)150 776 y Ft(compat44)705 905 y Fq(\017)60
16581b Fu(the)41 b(shell)g(sets)g(up)e(the)i(v)-5 b(alues)41
16582b(used)f(b)m(y)h Ft(BASH_ARGV)d Fu(and)i Ft(BASH_ARGC)e
16583Fu(so)j(they)810 1014 y(can)26 b(expand)f(to)h(the)g(shell's)g(p)s
16584(ositional)g(parameters)g(ev)m(en)h(if)e(extended)h(debugging)810
165851124 y(mo)s(de)k(is)g(not)h(enabled)705 1253 y Fq(\017)60
16586b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g(its)g(paren)m(t)g
16587(con)m(text,)k(so)c Ft(break)e Fu(or)i Ft(continue)810
165881363 y Fu(will)35 b(cause)g(the)f(subshell)f(to)i(exit.)54
16589b(Bash-5.0)36 b(and)d(later)j(reset)f(the)f(lo)s(op)h(state)g(to)810
165901472 y(prev)m(en)m(t)c(the)g(exit)705 1601 y Fq(\017)60
16591b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f(builtins)f(lik)m
16592(e)i Ft(export)d Fu(and)h Ft(readonly)e Fu(that)j(set)810
165931711 y(attributes)37 b(con)m(tin)m(ue)h(to)g(a\013ect)g(v)-5
16594b(ariables)37 b(with)g(the)f(same)h(name)g(in)g(the)f(calling)810
165951820 y(en)m(vironmen)m(t)31 b(ev)m(en)g(if)f(the)h(shell)g(is)f(not)h
16596(in)f(p)s(osix)f(mo)s(de)150 1969 y Ft(compat50)f(\(set)h(using)g
16597(BASH_COMPAT\))705 2078 y Fq(\017)60 b Fu(Bash-5.1)29
7a8455e4 16598b(c)m(hanged)g(the)f(w)m(a)m(y)g Ft($RANDOM)e Fu(is)i(generated)h(to)f
e2520247 16599(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 2188 y(randomness.)39
7a8455e4 16600b(If)30 b(the)f(shell)h(compatibilit)m(y)i(lev)m(el)f(is)f(set)g(to)h
e2520247 16601(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)810 2297 y(to)e(the)g(metho)s
7a8455e4 16602(d)f(from)g(bash-5.0)h(and)f(previous)g(v)m(ersions,)i(so)e(seeding)h
e2520247 16603(the)g(random)810 2407 y(n)m(um)m(b)s(er)36 b(generator)j(b)m(y)e
7a8455e4 16604(assigning)h(a)g(v)-5 b(alue)38 b(to)g Ft(RANDOM)e Fu(will)i(pro)s
e2520247
CR
16605(duce)e(the)i(same)810 2516 y(sequence)31 b(as)f(in)g(bash-5.0)705
166062645 y Fq(\017)60 b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f
7a8455e4 16607(empt)m(y)-8 b(,)25 b(Bash)d(v)m(ersions)g(prior)g(to)h(bash-5.1)f
e2520247 16608(prin)m(ted)810 2755 y(an)29 b(informational)i(message)g(to)f(that)g
7a8455e4 16609(e\013ect,)h(ev)m(en)g(when)d(pro)s(ducing)g(output)h(that)810
e2520247 166102865 y(can)40 b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42
7a8455e4 16611b(suppresses)c(that)j(message)g(when)e(the)i Ft(-l)810
e2520247
CR
166122974 y Fu(option)31 b(is)f(supplied.)150 3122 y Ft(compat51)e(\(set)h
16613(using)g(BASH_COMPAT\))705 3232 y Fq(\017)60 b Fu(The)38
7a8455e4
CR
16614b Ft(unset)g Fu(builtin)g(will)h(unset)f(the)h(arra)m(y)g
16615Ft(a)g Fu(giv)m(en)g(an)g(argumen)m(t)g(lik)m(e)h(`)p
e2520247 16616Ft(a[@])p Fu('.)810 3342 y(Bash-5.2)32 b(will)f(unset)f(an)g(elemen)m
7a8455e4 16617(t)i(with)e(k)m(ey)i(`)p Ft(@)p Fu(')e(\(asso)s(ciativ)m(e)k(arra)m
e2520247 16618(ys\))d(or)f(remo)m(v)m(e)810 3451 y(all)h(the)g(elemen)m(ts)h(without)
7a8455e4 16619e(unsetting)g(the)h(arra)m(y)g(\(indexed)f(arra)m(ys\))705
e2520247 166203580 y Fq(\017)60 b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55
7a8455e4 16621b(\))f(and)34 b(the)g(expressions)h(in)f(an)g(arithmetic)i(for)810
e2520247
CR
166223690 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705
166233819 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h
7a8455e4 16624(arithmetic)f(op)s(erators)g(in)g(the)g Ft([[)f Fu(conditional)810
e2520247
CR
166253928 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705
166264057 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e
5e6f45d9 16627(parameter)j(brace)f(expansion)g(can)g(b)s(e)g(expanded)810
e2520247 166284167 y(more)c(than)f(once)705 4296 y Fq(\017)60 b Fu(the)39
5e6f45d9 16629b(expressions)f(in)g(the)h($\(\()h(...)66 b(\)\))f(w)m(ord)39
e2520247
CR
16630b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 4405
16631y(than)30 b(once)705 4534 y Fq(\017)60 b Fu(arithmetic)36
16632b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i(subscripts)d(can)i(b)s
16633(e)g(expanded)810 4644 y(more)c(than)f(once)705 4773
16634y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g
5e6f45d9 16635(argumen)m(t)g(of)f(`)p Ft(A[@])p Fu(',)h(where)f Fr(A)h
e2520247 16636Fu(is)f(an)h(existing)g(asso-)810 4882 y(ciativ)m(e)h(arra)m(y)-8
5e6f45d9 16637b(,)37 b(will)d(return)f(true)g(if)h(the)h(arra)m(y)f(has)g(an)m(y)g
e2520247
CR
16638(set)g(elemen)m(ts.)53 b(Bash-5.2)810 4992 y(will)31
16639b(lo)s(ok)g(for)f(and)g(rep)s(ort)f(on)i(a)f(k)m(ey)i(named)d(`)p
16640Ft(@)p Fu(')705 5121 y Fq(\017)60 b Fu(the)40 b($)p Fi({)p
16641Fr(parameter)7 b Fu([:]=)p Fr(v)-5 b(alue)5 b Fi(})42
16642b Fu(w)m(ord)e(expansion)f(will)i(return)d Fr(v)-5 b(alue)p
16643Fu(,)43 b(b)s(efore)d(an)m(y)810 5230 y(v)-5 b(ariable-sp)s(eci\014c)34
16644b(transformations)f(ha)m(v)m(e)h(b)s(een)e(p)s(erformed)f(\(e.g.,)36
16645b(con)m(v)m(erting)e(to)810 5340 y(lo)m(w)m(ercase\).)43
16646b(Bash-5.2)32 b(will)f(return)e(the)i(\014nal)f(v)-5
16647b(alue)31 b(assigned)f(to)i(the)e(v)-5 b(ariable.)p eop
16648end
d052bd6f 16649%%Page: 116 122
e2520247
CR
16650TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(6:)41
16651b(Bash)30 b(F)-8 b(eatures)2439 b(116)705 299 y Fq(\017)60
16652b Fu(P)m(arsing)37 b(command)f(substitutions)g(will)g(b)s(eha)m(v)m(e)h
16653(as)g(if)f(extended)g(glob)h(\(see)g(Sec-)810 408 y(tion)30
16654b(4.3.2)h([The)f(Shopt)f(Builtin],)h(page)h(72\))f(is)g(enabled,)g(so)g
16655(that)g(parsing)f(a)h(com-)810 518 y(mand)38 b(substitution)g(con)m
16656(taining)i(an)f(extglob)h(pattern)f(\(sa)m(y)-8 b(,)42
16657b(as)d(part)g(of)g(a)g(shell)810 628 y(function\))30
16658b(will)h(not)g(fail.)41 b(This)30 b(assumes)g(the)h(in)m(ten)m(t)g(is)g
16659(to)g(enable)g(extglob)g(b)s(efore)810 737 y(the)i(command)f(is)g
16660(executed)h(and)f(w)m(ord)g(expansions)g(are)h(p)s(erformed.)45
16661b(It)33 b(will)f(fail)810 847 y(at)42 b(w)m(ord)f(expansion)h(time)g
16662(if)f(extglob)i(hasn't)e(b)s(een)g(enabled)h(b)m(y)f(the)h(time)g(the)
16663810 956 y(command)30 b(is)h(executed.)p eop end
16664%%Page: 117 123
16665TeXDict begin 117 122 bop 3614 -116 a Fu(117)150 299
4d63a619
CR
16666y Fp(7)80 b(Job)54 b(Con)l(trol)150 518 y Fu(This)25
16667b(c)m(hapter)i(discusses)f(what)g(job)f(con)m(trol)j(is,)f(ho)m(w)f(it)
16668h(w)m(orks,)g(and)f(ho)m(w)g(Bash)g(allo)m(ws)h(y)m(ou)g(to)g(access)
16669150 628 y(its)k(facilities.)150 863 y Fs(7.1)68 b(Job)45
037a8b7f
CR
16670b(Con)l(trol)h(Basics)150 1022 y Fu(Job)27 b(con)m(trol)i(refers)e(to)h
16671(the)g(abilit)m(y)h(to)f(selectiv)m(ely)j(stop)c(\(susp)s(end\))f(the)i
16672(execution)h(of)e(pro)s(cesses)h(and)150 1132 y(con)m(tin)m(ue)38
16673b(\(resume\))g(their)f(execution)h(at)g(a)g(later)g(p)s(oin)m(t.)61
16674b(A)37 b(user)g(t)m(ypically)i(emplo)m(ys)f(this)f(facilit)m(y)150
967625cd 166751241 y(via)27 b(an)e(in)m(teractiv)m(e)k(in)m(terface)f(supplied)d
c302751c 16676(join)m(tly)h(b)m(y)g(the)h(op)s(erating)f(system)g(k)m(ernel's)h
967625cd 16677(terminal)f(driv)m(er)150 1351 y(and)k(Bash.)275 1482
6e51e0d0 16678y(The)23 b(shell)i(asso)s(ciates)h(a)f Fr(job)h Fu(with)e(eac)m(h)i
c302751c 16679(pip)s(eline.)38 b(It)25 b(k)m(eeps)f(a)h(table)h(of)e(curren)m(tly)h
967625cd 16680(executing)g(jobs,)150 1592 y(whic)m(h)33 b(ma)m(y)i(b)s(e)e(listed)h
6e51e0d0 16681(with)f(the)h Ft(jobs)f Fu(command.)50 b(When)33 b(Bash)h(starts)g(a)g
967625cd
CR
16682(job)g(async)m(hronously)-8 b(,)34 b(it)150 1701 y(prin)m(ts)c(a)h
16683(line)f(that)h(lo)s(oks)g(lik)m(e:)390 1833 y Ft([1])47
16684b(25647)150 1965 y Fu(indicating)34 b(that)g(this)f(job)g(is)g(job)g(n)
6e51e0d0 16685m(um)m(b)s(er)f(1)i(and)f(that)g(the)h(pro)s(cess)f Fm(id)g
967625cd 16686Fu(of)g(the)h(last)g(pro)s(cess)f(in)g(the)150 2074 y(pip)s(eline)42
c302751c
CR
16687b(asso)s(ciated)i(with)e(this)g(job)g(is)h(25647.)78
16688b(All)43 b(of)g(the)g(pro)s(cesses)f(in)g(a)h(single)g(pip)s(eline)f
967625cd 16689(are)150 2184 y(mem)m(b)s(ers)30 b(of)g(the)h(same)f(job.)41
6e51e0d0 16690b(Bash)30 b(uses)g(the)h Fr(job)h Fu(abstraction)f(as)g(the)g(basis)f
967625cd 16691(for)g(job)g(con)m(trol.)275 2315 y(T)-8 b(o)23 b(facilitate)j(the)d
c302751c 16692(implemen)m(tation)i(of)f(the)f(user)f(in)m(terface)j(to)f(job)f(con)m
967625cd 16693(trol,)j(the)d(op)s(erating)h(system)150 2425 y(main)m(tains)j(the)f
c302751c 16694(notion)h(of)f(a)g(curren)m(t)g(terminal)g(pro)s(cess)g(group)g
6e51e0d0 16695Fm(id)p Fu(.)39 b(Mem)m(b)s(ers)26 b(of)g(this)g(pro)s(cess)f(group)150
967625cd 166962534 y(\(pro)s(cesses)h(whose)g(pro)s(cess)g(group)g
6e51e0d0 16697Fm(id)g Fu(is)h(equal)g(to)g(the)f(curren)m(t)g(terminal)h(pro)s(cess)f
967625cd 16698(group)f Fm(id)p Fu(\))i(receiv)m(e)150 2644 y(k)m(eyb)s
6e51e0d0
CR
16699(oard-generated)22 b(signals)g(suc)m(h)e(as)h Ft(SIGINT)p
16700Fu(.)36 b(These)21 b(pro)s(cesses)g(are)g(said)g(to)g(b)s(e)g(in)f(the)
967625cd 16701h(foreground.)150 2754 y(Bac)m(kground)38 b(pro)s(cesses)f(are)h(those)
6e51e0d0 16702g(whose)f(pro)s(cess)g(group)g Fm(id)h Fu(di\013ers)f(from)g(the)g
967625cd 16703(terminal's;)42 b(suc)m(h)150 2863 y(pro)s(cesses)24
37c41ab1
CR
16704b(are)g(imm)m(une)g(to)g(k)m(eyb)s(oard-generated)h(signals.)40
16705b(Only)23 b(foreground)g(pro)s(cesses)h(are)g(allo)m(w)m(ed)150
967625cd 167062973 y(to)g(read)e(from)h(or,)h(if)f(the)g(user)f(so)i(sp)s(eci\014es)e
6e51e0d0 16707(with)h Ft(stty)29 b(tostop)p Fu(,)23 b(write)g(to)g(the)h(terminal.)38
967625cd 16708b(Bac)m(kground)150 3082 y(pro)s(cesses)27 b(whic)m(h)g(attempt)h(to)f
6e51e0d0 16709(read)g(from)g(\(write)g(to)h(when)e Ft(stty)j(tostop)d
967625cd 16710Fu(is)h(in)f(e\013ect\))j(the)e(terminal)150 3192 y(are)32
6e51e0d0 16711b(sen)m(t)g(a)g Ft(SIGTTIN)e Fu(\()p Ft(SIGTTOU)p Fu(\))g(signal)i(b)m
602bb739 16712(y)g(the)g(k)m(ernel's)g(terminal)g(driv)m(er,)g(whic)m(h,)g(unless)f
967625cd
CR
16713(caugh)m(t,)150 3302 y(susp)s(ends)d(the)i(pro)s(cess.)275
167143433 y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)g(is)h
602bb739 16715(running)d(supp)s(orts)h(job)h(con)m(trol,)j(Bash)e(con)m(tains)150
967625cd 167163543 y(facilities)30 b(to)f(use)f(it.)40 b(T)m(yping)28
6e51e0d0
CR
16717b(the)g Fr(susp)s(end)h Fu(c)m(haracter)h(\(t)m(ypically)g(`)p
16718Ft(^Z)p Fu(',)f(Con)m(trol-Z\))g(while)f(a)g(pro)s(cess)150
967625cd 167193652 y(is)42 b(running)f(causes)i(that)g(pro)s(cess)f(to)h(b)s(e)f
602bb739 16720(stopp)s(ed)f(and)h(returns)f(con)m(trol)j(to)f(Bash.)77
967625cd 16721b(T)m(yping)42 b(the)150 3762 y Fr(dela)m(y)m(ed)k(susp)s(end)f
6e51e0d0 16722Fu(c)m(haracter)h(\(t)m(ypically)g(`)p Ft(^Y)p Fu(',)i(Con)m(trol-Y\))e
602bb739 16723(causes)e(the)h(pro)s(cess)e(to)i(b)s(e)f(stopp)s(ed)150
967625cd 167243871 y(when)26 b(it)i(attempts)h(to)f(read)f(input)g(from)f(the)i
602bb739 16725(terminal,)h(and)e(con)m(trol)h(to)g(b)s(e)f(returned)f(to)j(Bash.)39
967625cd 16726b(The)150 3981 y(user)e(then)g(manipulates)h(the)g(state)h(of)f(this)f
6e51e0d0 16727(job,)j(using)d(the)h Ft(bg)f Fu(command)g(to)h(con)m(tin)m(ue)h(it)f
967625cd 16728(in)g(the)150 4091 y(bac)m(kground,)g(the)f Ft(fg)g Fu(command)f(to)i
602bb739 16729(con)m(tin)m(ue)g(it)f(in)f(the)h(foreground,)h(or)f(the)g
967625cd 16730Ft(kill)f Fu(command)g(to)150 4200 y(kill)27 b(it.)40
6e51e0d0 16731b(A)27 b(`)p Ft(^Z)p Fu(')g(tak)m(es)h(e\013ect)g(immediately)-8
602bb739 16732b(,)29 b(and)d(has)h(the)f(additional)i(side)e(e\013ect)j(of)d(causing)
967625cd 16733h(p)s(ending)150 4310 y(output)j(and)g(t)m(yp)s(eahead)h(to)g(b)s(e)e
c302751c 16734(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 16735(ys)g(to)h(refer)e(to)h(a)g(job)f(in)g(the)h(shell.)47
6e51e0d0 16736b(The)32 b(c)m(haracter)i(`)p Ft(\045)p Fu(')f(in)m(tro)s(duces)150
967625cd 167374551 y(a)e(job)f(sp)s(eci\014cation)h(\()p Fr(jobsp)s(ec)6
6e51e0d0
CR
16738b Fu(\).)275 4682 y(Job)31 b(n)m(um)m(b)s(er)f Ft(n)h
16739Fu(ma)m(y)h(b)s(e)f(referred)g(to)h(as)g(`)p Ft(\045n)p
16740Fu('.)44 b(The)31 b(sym)m(b)s(ols)g(`)p Ft(\045\045)p
16741Fu(')h(and)f(`)p Ft(\045+)p Fu(')g(refer)h(to)g(the)g(shell's)150
c302751c 167424792 y(notion)k(of)f(the)g(curren)m(t)g(job,)h(whic)m(h)f(is)g(the)g
eb2bb562 16743(last)h(job)f(stopp)s(ed)f(while)h(it)h(w)m(as)g(in)e(the)i(foreground)
c302751c 16744e(or)150 4902 y(started)27 b(in)g(the)g(bac)m(kground.)40
6e51e0d0 16745b(A)27 b(single)g(`)p Ft(\045)p Fu(')g(\(with)g(no)g(accompan)m(ying)i
c302751c 16746(job)d(sp)s(eci\014cation\))i(also)g(refers)150 5011
09767ff0 16747y(to)k(the)e(curren)m(t)h(job.)42 b(The)30 b(previous)g(job)h(ma)m(y)g
6e51e0d0 16748(b)s(e)f(referenced)h(using)f(`)p Ft(\045-)p Fu('.)42
c302751c 16749b(If)30 b(there)h(is)g(only)g(a)g(single)150 5121 y(job,)g(`)p
6e51e0d0 16750Ft(\045+)p Fu(')g(and)f(`)p Ft(\045-)p Fu(')h(can)h(b)s(oth)e(b)s(e)g
09767ff0 16751(used)h(to)g(refer)g(to)h(that)g(job.)42 b(In)30 b(output)h(p)s
c302751c 16752(ertaining)g(to)g(jobs)g(\(e.g.,)150 5230 y(the)39 b(output)f(of)g(the)
6e51e0d0
CR
16753h Ft(jobs)e Fu(command\),)k(the)d(curren)m(t)h(job)f(is)g(alw)m(a)m(ys)
16754i(\015agged)f(with)f(a)h(`)p Ft(+)p Fu(',)i(and)d(the)150
167555340 y(previous)30 b(job)g(with)g(a)h(`)p Ft(-)p Fu('.)p
c302751c 16756eop end
e2520247
CR
16757%%Page: 118 124
16758TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(7:)41
16759b(Job)30 b(Con)m(trol)2526 b(118)275 299 y(A)38 b(job)g(ma)m(y)h(also)g
ad4aef08 16760(b)s(e)f(referred)f(to)j(using)d(a)i(pre\014x)e(of)i(the)f(name)h(used)
d37a4722
CR
16761e(to)i(start)g(it,)i(or)e(using)f(a)150 408 y(substring)g(that)j(app)s
16762(ears)e(in)g(its)h(command)f(line.)69 b(F)-8 b(or)41
16763b(example,)i(`)p Ft(\045ce)p Fu(')c(refers)g(to)i(a)f(stopp)s(ed)e(job)
16764150 518 y(whose)30 b(command)g(name)g(b)s(egins)g(with)g(`)p
16765Ft(ce)p Fu('.)40 b(Using)31 b(`)p Ft(\045?ce)p Fu(',)f(on)g(the)g
16766(other)h(hand,)e(refers)h(to)h(an)m(y)f(job)150 628 y(con)m(taining)e
16767(the)e(string)h(`)p Ft(ce)p Fu(')f(in)g(its)h(command)f(line.)40
16768b(If)26 b(the)g(pre\014x)g(or)g(substring)f(matc)m(hes)j(more)e(than)
16769150 737 y(one)31 b(job,)f(Bash)g(rep)s(orts)g(an)g(error.)275
16770869 y(Simply)g(naming)h(a)g(job)g(can)g(b)s(e)f(used)h(to)g(bring)f(it)
6e51e0d0 16771i(in)m(to)g(the)f(foreground:)41 b(`)p Ft(\0451)p Fu(')31
d37a4722 16772b(is)g(a)h(synon)m(ym)e(for)150 978 y(`)p Ft(fg)g(\0451)p
6e51e0d0
CR
16773Fu(',)i(bringing)f(job)g(1)g(from)g(the)h(bac)m(kground)f(in)m(to)i
16774(the)e(foreground.)44 b(Similarly)-8 b(,)32 b(`)p Ft(\0451)e(&)p
d37a4722
CR
16775Fu(')i(resumes)150 1088 y(job)e(1)h(in)f(the)g(bac)m(kground,)h(equiv)
16776-5 b(alen)m(t)32 b(to)f(`)p Ft(bg)f(\0451)p Fu(')275
167771219 y(The)g(shell)i(learns)f(immediately)i(whenev)m(er)e(a)h(job)f(c)m
37c41ab1 16778(hanges)h(state.)45 b(Normally)-8 b(,)33 b(Bash)e(w)m(aits)i(un)m(til)
d37a4722 16779150 1329 y(it)25 b(is)g(ab)s(out)f(to)i(prin)m(t)e(a)h(prompt)f(b)s
37c41ab1 16780(efore)g(rep)s(orting)h(c)m(hanges)g(in)g(a)g(job's)f(status)h(so)g(as)
d37a4722 16781g(to)g(not)g(in)m(terrupt)150 1439 y(an)m(y)k(other)f(output.)40
6e51e0d0
CR
16782b(If)28 b(the)g Ft(-b)g Fu(option)g(to)h(the)g Ft(set)e
16783Fu(builtin)h(is)g(enabled,)h(Bash)g(rep)s(orts)e(suc)m(h)h(c)m(hanges)
d37a4722 16784150 1548 y(immediately)d(\(see)g(Section)g(4.3.1)g([The)f(Set)g
e2520247 16785(Builtin],)i(page)f(68\).)40 b(An)m(y)24 b(trap)f(on)h
d37a4722
CR
16786Ft(SIGCHLD)e Fu(is)i(executed)150 1658 y(for)30 b(eac)m(h)i(c)m(hild)e
16787(pro)s(cess)g(that)h(exits.)275 1789 y(If)25 b(an)h(attempt)h(to)g
d3ad40de 16788(exit)g(Bash)f(is)h(made)f(while)g(jobs)f(are)i(stopp)s(ed,)f(\(or)h
d37a4722 16789(running,)e(if)h(the)g Ft(checkjobs)150 1899 y Fu(option)e(is)f
d3ad40de 16790(enabled)h({)g(see)g(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)j(page)
e2520247 16791e(72\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
d37a4722 167922009 y(message,)k(and)c(if)i(the)f Ft(checkjobs)e Fu(option)j(is)f
d3ad40de 16793(enabled,)i(lists)e(the)h(jobs)f(and)f(their)i(statuses.)39
d37a4722 16794b(The)25 b Ft(jobs)150 2118 y Fu(command)36 b(ma)m(y)h(then)f(b)s(e)f
d3ad40de 16795(used)g(to)i(insp)s(ect)f(their)g(status.)59 b(If)36
d37a4722 16796b(a)g(second)g(attempt)i(to)f(exit)g(is)f(made)150 2228
d3ad40de
CR
16797y(without)e(an)f(in)m(terv)m(ening)i(command,)f(Bash)g(do)s(es)f(not)h
16798(prin)m(t)g(another)f(w)m(arning,)i(and)e(an)m(y)h(stopp)s(ed)150
d37a4722 167992337 y(jobs)c(are)h(terminated.)275 2469 y(When)f(the)h(shell)g(is)f(w)
7e92fb35
CR
16800m(aiting)i(for)f(a)g(job)f(or)h(pro)s(cess)f(using)g(the)h
16801Ft(wait)f Fu(builtin,)g(and)g(job)h(con)m(trol)h(is)150
d37a4722 168022578 y(enabled,)i Ft(wait)f Fu(will)g(return)g(when)f(the)i(job)f(c)m
9128f932 16803(hanges)h(state.)51 b(The)33 b Ft(-f)g Fu(option)h(causes)f
d37a4722
CR
16804Ft(wait)g Fu(to)h(w)m(ait)150 2688 y(un)m(til)d(the)f(job)g(or)h(pro)s
16805(cess)f(terminates)h(b)s(efore)f(returning.)150 2923
16806y Fs(7.2)68 b(Job)45 b(Con)l(trol)h(Builtins)150 3104
16807y Ft(bg)870 3236 y(bg)h([)p Fj(jobspec)f Ft(...)o(])630
168083367 y Fu(Resume)24 b(eac)m(h)h(susp)s(ended)d(job)i
7e92fb35 16809Fr(jobsp)s(ec)29 b Fu(in)24 b(the)g(bac)m(kground,)h(as)g(if)f(it)h
d37a4722 16810(had)e(b)s(een)g(started)630 3477 y(with)32 b(`)p Ft(&)p
7e92fb35
CR
16811Fu('.)45 b(If)31 b Fr(jobsp)s(ec)37 b Fu(is)32 b(not)g(supplied,)f(the)
16812h(curren)m(t)g(job)f(is)h(used.)45 b(The)31 b(return)g(status)630
d37a4722 168133586 y(is)i(zero)g(unless)f(it)h(is)g(run)e(when)h(job)g(con)m(trol)i
7e92fb35 16814(is)f(not)g(enabled,)h(or,)f(when)f(run)f(with)h(job)630
d37a4722 168153696 y(con)m(trol)h(enabled,)g(an)m(y)f Fr(jobsp)s(ec)37
7e92fb35 16816b 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
16817(w)m(as)g(started)630 3806 y(without)e(job)g(con)m(trol.)150
168183959 y Ft(fg)870 4091 y(fg)47 b([)p Fj(jobspec)p Ft(])630
168194222 y Fu(Resume)c(the)g(job)g Fr(jobsp)s(ec)48 b Fu(in)43
7e92fb35 16820b(the)g(foreground)g(and)f(mak)m(e)j(it)e(the)h(curren)m(t)f(job.)78
d37a4722 16821b(If)630 4332 y Fr(jobsp)s(ec)41 b Fu(is)c(not)f(supplied,)h(the)f
7e92fb35 16822(curren)m(t)h(job)f(is)g(used.)58 b(The)36 b(return)f(status)h(is)h
d37a4722 16823(that)g(of)630 4441 y(the)d(command)g(placed)h(in)m(to)g(the)f
37c41ab1 16824(foreground,)g(or)g(non-zero)h(if)f(run)f(when)g(job)g(con)m(trol)630
d37a4722 168254551 y(is)i(disabled)g(or,)i(when)d(run)g(with)h(job)g(con)m(trol)h
6e51e0d0 16826(enabled,)h Fr(jobsp)s(ec)j Fu(do)s(es)35 b(not)h(sp)s(ecify)f(a)630
d37a4722 168274660 y(v)-5 b(alid)31 b(job)f(or)g Fr(jobsp)s(ec)35 b
6e51e0d0 16828Fu(sp)s(eci\014es)30 b(a)h(job)f(that)h(w)m(as)g(started)g(without)f
d37a4722
CR
16829(job)g(con)m(trol.)150 4814 y Ft(jobs)870 4945 y(jobs)47
16830b([-lnprs])e([)p Fj(jobspec)p Ft(])870 5055 y(jobs)i(-x)g
16831Fj(command)f Ft([)p Fj(arguments)p Ft(])630 5187 y Fu(The)30
6e51e0d0 16832b(\014rst)f(form)h(lists)h(the)g(activ)m(e)h(jobs.)41
37c41ab1 16833b(The)30 b(options)g(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
7e92fb35
CR
168345340 y Ft(-l)384 b Fu(List)31 b(pro)s(cess)f Fm(id)p
16835Fu(s)g(in)g(addition)h(to)g(the)f(normal)h(information.)p
602bb739 16836eop end
e2520247
CR
16837%%Page: 119 125
16838TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(7:)41
16839b(Job)30 b(Con)m(trol)2526 b(119)630 299 y Ft(-n)384
7e92fb35
CR
16840b Fu(Displa)m(y)26 b(information)f(only)h(ab)s(out)e(jobs)h(that)g(ha)m
16841(v)m(e)i(c)m(hanged)e(status)h(since)1110 408 y(the)31
16842b(user)e(w)m(as)i(last)g(noti\014ed)f(of)h(their)f(status.)630
9c317a6a 16843570 y Ft(-p)384 b Fu(List)31 b(only)f(the)h(pro)s(cess)f
7e92fb35 16844Fm(id)g Fu(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)630
9c317a6a
CR
16845731 y Ft(-r)384 b Fu(Displa)m(y)32 b(only)e(running)f(jobs.)630
16846892 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630
168471053 y(If)23 b Fr(jobsp)s(ec)28 b Fu(is)23 b(giv)m(en,)i(output)e(is)g
6e51e0d0 16848(restricted)h(to)g(information)f(ab)s(out)g(that)h(job.)37
9c317a6a
CR
16849b(If)23 b Fr(jobsp)s(ec)630 1163 y Fu(is)30 b(not)h(supplied,)e(the)i
16850(status)g(of)f(all)h(jobs)f(is)h(listed.)630 1298 y(If)k(the)g
6e51e0d0
CR
16851Ft(-x)f Fu(option)i(is)f(supplied,)g Ft(jobs)f Fu(replaces)i(an)m(y)f
16852Fr(jobsp)s(ec)40 b Fu(found)34 b(in)h Fr(command)j Fu(or)630
9c317a6a 168531408 y Fr(argumen)m(ts)j Fu(with)c(the)h(corresp)s(onding)e(pro)s(cess)
7e92fb35 16854h(group)f Fm(id)p Fu(,)k(and)c(executes)j Fr(command)p
9c317a6a
CR
16855Fu(,)630 1517 y(passing)30 b(it)h Fr(argumen)m(t)r Fu(s,)g(returning)f
16856(its)g(exit)i(status.)150 1678 y Ft(kill)870 1814 y(kill)47
6e51e0d0 16857b([-s)g Fj(sigspec)p Ft(])e([-n)i Fj(signum)p Ft(])f([-)p
9c317a6a
CR
16858Fj(sigspec)p Ft(])f Fj(jobspec)h Ft(or)h Fj(pid)870 1923
16859y Ft(kill)g(-l|-L)f([)p Fj(exit_status)p Ft(])630 2059
900a813b
CR
16860y Fu(Send)22 b(a)i(signal)g(sp)s(eci\014ed)f(b)m(y)g
16861Fr(sigsp)s(ec)29 b Fu(or)24 b Fr(sign)m(um)f Fu(to)h(the)g(pro)s(cess)f
9c317a6a 16862(named)g(b)m(y)g(job)g(sp)s(eci\014-)630 2168 y(cation)k
900a813b
CR
16863Fr(jobsp)s(ec)j Fu(or)25 b(pro)s(cess)g Fm(id)h Fr(pid)p
16864Fu(.)38 b Fr(sigsp)s(ec)31 b Fu(is)25 b(either)h(a)g(case-insensitiv)m
9c317a6a 16865(e)i(signal)e(name)630 2278 y(suc)m(h)37 b(as)g Ft(SIGINT)f
900a813b 16866Fu(\(with)h(or)g(without)g(the)g Ft(SIG)g Fu(pre\014x\))f(or)h(a)h
9c317a6a 16867(signal)g(n)m(um)m(b)s(er;)h Fr(sign)m(um)630 2388 y
900a813b
CR
16868Fu(is)g(a)f(signal)i(n)m(um)m(b)s(er.)63 b(If)39 b Fr(sigsp)s(ec)44
16869b Fu(and)38 b Fr(sign)m(um)g Fu(are)h(not)g(presen)m(t,)h
9c317a6a 16870Ft(SIGTERM)d Fu(is)h(used.)630 2497 y(The)27 b Ft(-l)h
900a813b
CR
16871Fu(option)g(lists)h(the)f(signal)h(names.)39 b(If)28
16872b(an)m(y)g(argumen)m(ts)h(are)f(supplied)f(when)g Ft(-l)g
9c317a6a 16873Fu(is)630 2607 y(giv)m(en,)32 b(the)g(names)e(of)i(the)f(signals)g
900a813b 16874(corresp)s(onding)f(to)i(the)f(argumen)m(ts)g(are)h(listed,)g(and)630
9c317a6a
CR
168752716 y(the)c(return)f(status)h(is)g(zero.)41 b Fr(exit)p
168761796 2716 28 4 v 41 w(status)32 b Fu(is)c(a)g(n)m(um)m(b)s(er)f(sp)s
16877(ecifying)g(a)i(signal)f(n)m(um)m(b)s(er)f(or)630 2826
900a813b
CR
16878y(the)h(exit)h(status)g(of)f(a)h(pro)s(cess)e(terminated)i(b)m(y)f(a)h
16879(signal.)40 b(The)28 b Ft(-L)g Fu(option)g(is)g(equiv)-5
9c317a6a 16880b(alen)m(t)630 2935 y(to)34 b Ft(-l)p Fu(.)47 b(The)32
900a813b 16881b(return)g(status)h(is)g(zero)g(if)g(at)g(least)h(one)f(signal)h(w)m
9c317a6a 16882(as)f(successfully)g(sen)m(t,)h(or)630 3045 y(non-zero)d(if)f(an)h
900a813b 16883(error)f(o)s(ccurs)g(or)g(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
9c317a6a 16884(encoun)m(tered.)150 3206 y Ft(wait)870 3342 y(wait)47
fc35c477 16885b([-fn])f([-p)h Fj(varname)p Ft(])e([)p Fj(jobspec)h
9c317a6a 16886Ft(or)h Fj(pid)g Ft(...)o(])630 3477 y Fu(W)-8 b(ait)28
fc35c477
CR
16887b(un)m(til)f(the)f(c)m(hild)h(pro)s(cess)f(sp)s(eci\014ed)g(b)m(y)g
16888(eac)m(h)h(pro)s(cess)f Fm(id)h Fr(pid)i Fu(or)d(job)g(sp)s
9c317a6a 16889(eci\014cation)630 3587 y Fr(jobsp)s(ec)40 b Fu(exits)35
fc35c477 16890b(and)f(return)g(the)g(exit)i(status)f(of)g(the)g(last)g(command)f(w)m
9c317a6a 16891(aited)i(for.)53 b(If)35 b(a)630 3696 y(job)g(sp)s(ec)f(is)h(giv)m(en,)
fc35c477 16892i(all)f(pro)s(cesses)f(in)f(the)h(job)g(are)g(w)m(aited)h(for.)54
9c317a6a 16893b(If)35 b(no)f(argumen)m(ts)i(are)630 3806 y(giv)m(en,)28
fc35c477 16894b Ft(wait)c Fu(w)m(aits)j(for)e(all)i(running)c(bac)m(kground)j(jobs)f
9c317a6a 16895(and)g(the)h(last-executed)h(pro)s(cess)630 3915 y(substitution,)37
d37a4722
CR
16896b(if)f(its)g(pro)s(cess)f(id)h(is)f(the)h(same)g(as)g
16897Fr($!)p Fu(,)i(and)d(the)h(return)f(status)h(is)g(zero.)630
9c317a6a 168984025 y(If)h(the)h Ft(-n)f Fu(option)h(is)f(supplied,)i
e59452c7 16899Ft(wait)d Fu(w)m(aits)j(for)e(a)h(single)g(job)f(from)h(the)f(list)i
9c317a6a 16900(of)e Fr(pid)t Fu(s)630 4134 y(or)31 b Fr(jobsp)s(ec)6
e59452c7 16901b Fu(s)30 b(or,)i(if)f(no)g(argumen)m(ts)h(are)f(supplied,)g(an)m(y)g
9c317a6a 16902(job,)h(to)g(complete)h(and)d(returns)630 4244 y(its)36
e59452c7
CR
16903b(exit)h(status.)56 b(If)35 b(none)h(of)g(the)g(supplied)e(argumen)m
16904(ts)i(is)f(a)h(c)m(hild)g(of)g(the)g(shell,)h(or)f(if)630
9c317a6a 169054354 y(no)31 b(argumen)m(ts)g(are)g(supplied)f(and)g(the)h(shell)g(has)
e59452c7 16906g(no)f(un)m(w)m(aited-for)i(c)m(hildren,)f(the)g(exit)630
9c317a6a 169074463 y(status)k(is)g(127.)55 b(If)34 b(the)h Ft(-p)g
e59452c7 16908Fu(option)g(is)g(supplied,)f(the)h(pro)s(cess)g(or)f(job)h(iden)m
9c317a6a 16909(ti\014er)g(of)g(the)630 4573 y(job)j(for)g(whic)m(h)f(the)i(exit)g
e59452c7 16910(status)f(is)g(returned)f(is)h(assigned)h(to)g(the)f(v)-5
9c317a6a 16911b(ariable)39 b Fr(v)-5 b(arname)630 4682 y Fu(named)29
e59452c7
CR
16912b(b)m(y)f(the)i(option)f(argumen)m(t.)41 b(The)28 b(v)-5
16913b(ariable)30 b(will)g(b)s(e)e(unset)h(initially)-8 b(,)31
9c317a6a 16914b(b)s(efore)e(an)m(y)630 4792 y(assignmen)m(t.)76 b(This)41
e59452c7 16915b(is)h(useful)f(only)h(when)f(the)h Ft(-n)f Fu(option)i(is)f(supplied.)
9c317a6a
CR
1691674 b(Supplying)630 4902 y(the)31 b Ft(-f)g Fu(option,)g(when)f(job)h
16917(con)m(trol)i(is)e(enabled,)g(forces)g Ft(wait)f Fu(to)i(w)m(ait)g(for)
16918f(eac)m(h)h Fr(pid)i Fu(or)630 5011 y Fr(jobsp)s(ec)40
16919b Fu(to)d(terminate)f(b)s(efore)f(returning)g(its)h(status,)h(instead)f
16920(of)f(returning)g(when)f(it)630 5121 y(c)m(hanges)j(status.)58
16921b(If)35 b(neither)h Fr(jobsp)s(ec)41 b Fu(nor)36 b Fr(pid)i
16922Fu(sp)s(eci\014es)e(an)g(activ)m(e)i(c)m(hild)e(pro)s(cess)g(of)630
169235230 y(the)28 b(shell,)h(the)e(return)g(status)h(is)g(127.)41
16924b(If)27 b Ft(wait)g Fu(is)g(in)m(terrupted)g(b)m(y)h(a)g(signal,)h(the)
16925f(return)630 5340 y(status)j(will)f(b)s(e)g(greater)i(than)e(128,)i(as)
16926e(describ)s(ed)g(ab)s(o)m(v)m(e)h(\(see)h(Section)f(3.7.6)h([Signals],)
16927p eop end
e2520247
CR
16928%%Page: 120 126
16929TeXDict begin 120 125 bop 150 -116 a Fu(Chapter)30 b(7:)41
16930b(Job)30 b(Con)m(trol)2526 b(120)630 299 y(page)33 b(46\).)48
9c317a6a
CR
16931b(Otherwise,)32 b(the)h(return)e(status)i(is)f(the)g(exit)i(status)e
16932(of)h(the)f(last)h(pro)s(cess)f(or)630 408 y(job)e(w)m(aited)h(for.)150
16933568 y Ft(disown)870 702 y(disown)46 b([-ar])g([-h])h([)p
16934Fj(jobspec)f Ft(...)h(|)g Fj(pid)g Ft(...)g(])630 837
16935y Fu(Without)33 b(options,)h(remo)m(v)m(e)g(eac)m(h)f
16936Fr(jobsp)s(ec)38 b Fu(from)32 b(the)h(table)g(of)g(activ)m(e)h(jobs.)47
16937b(If)32 b(the)h Ft(-h)630 946 y Fu(option)j(is)f(giv)m(en,)i(the)f(job)
16938f(is)g(not)g(remo)m(v)m(ed)h(from)f(the)g(table,)j(but)c(is)i(mark)m
16939(ed)f(so)g(that)630 1056 y Ft(SIGHUP)e Fu(is)j(not)f(sen)m(t)h(to)g
16940(the)f(job)g(if)g(the)g(shell)h(receiv)m(es)h(a)e Ft(SIGHUP)p
16941Fu(.)54 b(If)34 b Fr(jobsp)s(ec)40 b Fu(is)c(not)630
169421166 y(presen)m(t,)41 b(and)d(neither)h(the)g Ft(-a)f
16943Fu(nor)g(the)h Ft(-r)f Fu(option)h(is)g(supplied,)g(the)g(curren)m(t)g
16944(job)f(is)630 1275 y(used.)g(If)25 b(no)h Fr(jobsp)s(ec)k
16945Fu(is)c(supplied,)f(the)h Ft(-a)f Fu(option)h(means)g(to)g(remo)m(v)m
16946(e)h(or)e(mark)h(all)g(jobs;)630 1385 y(the)31 b Ft(-r)e
16947Fu(option)i(without)g(a)f Fr(jobsp)s(ec)36 b Fu(argumen)m(t)30
16948b(restricts)h(op)s(eration)g(to)g(running)e(jobs.)150
169491544 y Ft(suspend)870 1679 y(suspend)46 b([-f])630 1813
16950y Fu(Susp)s(end)31 b(the)i(execution)h(of)g(this)f(shell)g(un)m(til)h
16951(it)g(receiv)m(es)h(a)e Ft(SIGCONT)f Fu(signal.)50 b(A)33
16952b(login)630 1923 y(shell,)25 b(or)f(a)g(shell)f(without)h(job)f(con)m
16953(trol)i(enabled,)g(cannot)f(b)s(e)f(susp)s(ended;)h(the)g
16954Ft(-f)e Fu(option)630 2032 y(can)35 b(b)s(e)g(used)f(to)i(o)m(v)m
6392d7af 16955(erride)g(this)f(and)f(force)i(the)f(susp)s(ension.)53
9c317a6a 16956b(The)34 b(return)g(status)h(is)h(0)630 2142 y(unless)43
6392d7af 16957b(the)g(shell)h(is)f(a)h(login)g(shell)g(or)f(job)g(con)m(trol)i(is)e
9c317a6a
CR
16958(not)h(enabled)f(and)g Ft(-f)f Fu(is)i(not)630 2252 y(supplied.)275
169592411 y(When)30 b(job)f(con)m(trol)j(is)e(not)h(activ)m(e,)i(the)d
fc35c477 16960Ft(kill)f Fu(and)h Ft(wait)f Fu(builtins)g(do)h(not)h(accept)h
9c317a6a 16961Fr(jobsp)s(ec)j Fu(argu-)150 2521 y(men)m(ts.)41 b(They)30
fc35c477 16962b(m)m(ust)g(b)s(e)g(supplied)f(pro)s(cess)h Fm(id)p Fu(s.)150
9c317a6a
CR
169632761 y Fs(7.3)68 b(Job)45 b(Con)l(trol)h(V)-11 b(ariables)150
169642946 y Ft(auto_resume)630 3055 y Fu(This)31 b(v)-5 b(ariable)32
fc35c477 16965b(con)m(trols)g(ho)m(w)g(the)f(shell)h(in)m(teracts)h(with)e(the)h
9c317a6a 16966(user)e(and)h(job)g(con)m(trol.)45 b(If)630 3165 y(this)28
fc35c477 16967b(v)-5 b(ariable)30 b(exists)f(then)f(single)h(w)m(ord)f(simple)h
9c317a6a 16968(commands)f(without)g(redirections)i(are)630 3274 y(treated)h(as)g
fc35c477 16969(candidates)f(for)g(resumption)g(of)g(an)g(existing)h(job.)41
9c317a6a 16970b(There)29 b(is)h(no)h(am)m(biguit)m(y)630 3384 y(allo)m(w)m(ed;)f(if)d
fc35c477 16971(there)g(is)g(more)g(than)f(one)h(job)g(b)s(eginning)f(with)g(the)h
9c317a6a 16972(string)g(t)m(yp)s(ed,)g(then)g(the)630 3494 y(most)j(recen)m(tly)h
fc35c477 16973(accessed)f(job)f(will)h(b)s(e)f(selected.)42 b(The)29
9c317a6a 16974b(name)g(of)h(a)g(stopp)s(ed)e(job,)i(in)f(this)630 3603
fc35c477
CR
16975y(con)m(text,)h(is)e(the)g(command)g(line)g(used)f(to)h(start)g(it.)41
16976b(If)27 b(this)h(v)-5 b(ariable)28 b(is)g(set)g(to)h(the)e(v)-5
9c317a6a 16977b(alue)630 3713 y(`)p Ft(exact)p Fu(',)33 b(the)g(string)g(supplied)f
37c41ab1 16978(m)m(ust)h(matc)m(h)g(the)h(name)f(of)g(a)g(stopp)s(ed)f(job)h
9c317a6a 16979(exactly;)j(if)630 3822 y(set)29 b(to)h(`)p Ft(substring)p
6e51e0d0 16980Fu(',)d(the)i(string)g(supplied)e(needs)i(to)g(matc)m(h)h(a)f
9c317a6a 16981(substring)f(of)h(the)g(name)630 3932 y(of)38 b(a)f(stopp)s(ed)g(job.)
6e51e0d0 1698262 b(The)37 b(`)p Ft(substring)p Fu(')e(v)-5 b(alue)38
37c41ab1 16983b(pro)m(vides)f(functionalit)m(y)i(analogous)g(to)630
9c317a6a 169844042 y(the)c(`)p Ft(\045?)p Fu(')g(job)g Fm(id)g Fu(\(see)h(Section)g
e2520247 16985(7.1)g([Job)e(Con)m(trol)i(Basics],)i(page)e(117\).)56
9c317a6a 16986b(If)34 b(set)i(to)g(an)m(y)630 4151 y(other)c(v)-5 b(alue,)32
4d63a619 16987b(the)g(supplied)e(string)i(m)m(ust)f(b)s(e)g(a)h(pre\014x)f(of)h(a)g
9c317a6a 16988(stopp)s(ed)e(job's)i(name;)g(this)630 4261 y(pro)m(vides)e
4d63a619
CR
16989(functionalit)m(y)i(analogous)g(to)f(the)g(`)p Ft(\045)p
16990Fu(')f(job)g Fm(id)p Fu(.)p eop end
e2520247
CR
16991%%Page: 121 127
16992TeXDict begin 121 126 bop 3614 -116 a Fu(121)150 299
037a8b7f
CR
16993y Fp(8)80 b(Command)54 b(Line)f(Editing)150 635 y Fu(This)28
16994b(c)m(hapter)i(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g
16995Fm(gnu)f Fu(command)h(line)g(editing)h(in)m(terface.)42
16996b(Com-)150 745 y(mand)c(line)i(editing)f(is)g(pro)m(vided)g(b)m(y)g
16997(the)g(Readline)h(library)-8 b(,)41 b(whic)m(h)e(is)g(used)f(b)m(y)h
16998(sev)m(eral)h(di\013eren)m(t)150 855 y(programs,)34 b(including)e
16999(Bash.)49 b(Command)32 b(line)i(editing)f(is)g(enabled)g(b)m(y)g
17000(default)g(when)f(using)h(an)g(in-)150 964 y(teractiv)m(e)h(shell,)d
17001(unless)g(the)g Ft(--noediting)d Fu(option)k(is)f(supplied)e(at)j
17002(shell)f(in)m(v)m(o)s(cation.)45 b(Line)31 b(editing)150
170031074 y(is)g(also)h(used)f(when)f(using)h(the)g Ft(-e)g
17004Fu(option)h(to)g(the)f Ft(read)f Fu(builtin)h(command)g(\(see)h
e2520247 17005(Section)g(4.2)h([Bash)150 1183 y(Builtins],)j(page)f(57\).)52
037a8b7f
CR
17006b(By)35 b(default,)g(the)f(line)h(editing)f(commands)g(are)h(similar)f
17007(to)h(those)f(of)g(Emacs.)150 1293 y(A)h(vi-st)m(yle)h(line)f(editing)g
17008(in)m(terface)h(is)e(also)i(a)m(v)-5 b(ailable.)55 b(Line)34
17009b(editing)h(can)g(b)s(e)f(enabled)g(at)h(an)m(y)g(time)150
170101402 y(using)h(the)g Ft(-o)30 b(emacs)35 b Fu(or)h Ft(-o)30
17011b(vi)35 b Fu(options)i(to)g(the)f Ft(set)f Fu(builtin)h(command)g
17012(\(see)h(Section)g(4.3.1)h([The)150 1512 y(Set)31 b(Builtin],)g(page)g
e2520247 17013(68\),)h(or)e(disabled)g(using)g(the)h Ft(+o)e(emacs)g
037a8b7f
CR
17014Fu(or)i Ft(+o)e(vi)h Fu(options)h(to)g Ft(set)p Fu(.)150
170151804 y Fs(8.1)68 b(In)l(tro)t(duction)45 b(to)g(Line)h(Editing)150
170161963 y Fu(The)30 b(follo)m(wing)i(paragraphs)d(describ)s(e)h(the)h
17017(notation)g(used)f(to)h(represen)m(t)f(k)m(eystrok)m(es.)275
170182132 y(The)35 b(text)i Fj(C-k)f Fu(is)g(read)g(as)h(`Con)m(trol-K')g
17019(and)f(describ)s(es)f(the)h(c)m(haracter)i(pro)s(duced)d(when)g(the)h
17020Ft(k)150 2242 y Fu(k)m(ey)31 b(is)g(pressed)e(while)h(the)h(Con)m(trol)
17021g(k)m(ey)g(is)g(depressed.)275 2410 y(The)g(text)i Fj(M-k)e
17022Fu(is)h(read)f(as)i(`Meta-K')g(and)f(describ)s(es)f(the)h(c)m(haracter)
17023h(pro)s(duced)e(when)f(the)i(Meta)150 2520 y(k)m(ey)i(\(if)f(y)m(ou)h
17024(ha)m(v)m(e)g(one\))g(is)f(depressed,)g(and)f(the)h Ft(k)g
17025Fu(k)m(ey)h(is)f(pressed.)48 b(The)32 b(Meta)j(k)m(ey)e(is)h(lab)s
17026(eled)f Ft(ALT)150 2629 y Fu(on)c(man)m(y)h(k)m(eyb)s(oards.)40
17027b(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 17028Ft(ALT)e Fu(\(usually)i(to)g(either)g(side)g(of)g(the)150
967625cd 170292739 y(space)h(bar\),)f(the)g Ft(ALT)f Fu(on)h(the)g(left)h(side)f(is)g
c302751c 17030(generally)h(set)f(to)h(w)m(ork)f(as)g(a)h(Meta)g(k)m(ey)-8
967625cd 17031b(.)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
17032(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
17033(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
170342958 y(mo)s(di\014er,)i(suc)m(h)g(as)g(a)h(Comp)s(ose)f(k)m(ey)h(for)f
17035(t)m(yping)h(accen)m(ted)h(c)m(haracters.)275 3127 y(If)23
6e51e0d0
CR
17036b(y)m(ou)i(do)f(not)h(ha)m(v)m(e)h(a)f(Meta)g(or)g Ft(ALT)e
17037Fu(k)m(ey)-8 b(,)27 b(or)e(another)f(k)m(ey)i(w)m(orking)e(as)h(a)g
967625cd 17038(Meta)h(k)m(ey)-8 b(,)27 b(the)d(iden)m(tical)150 3236
c302751c 17039y(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
17040Ft(ESC)e Fl(\014rst)p Fu(,)j(and)e(then)g(t)m(yping)h
17041Ft(k)p Fu(.)40 b(Either)28 b(pro)s(cess)g(is)g(kno)m(wn)150
967625cd
CR
170423346 y(as)j Fr(metafying)39 b Fu(the)30 b Ft(k)g Fu(k)m(ey)-8
17043b(.)275 3515 y(The)39 b(text)j Fj(M-C-k)d Fu(is)h(read)g(as)h
c302751c 17044(`Meta-Con)m(trol-k')j(and)39 b(describ)s(es)h(the)g(c)m(haracter)i
967625cd
CR
17045(pro)s(duced)d(b)m(y)150 3624 y Fr(metafying)g Fj(C-k)p
17046Fu(.)275 3793 y(In)c(addition,)j(sev)m(eral)f(k)m(eys)g(ha)m(v)m(e)g
c302751c 17047(their)f(o)m(wn)g(names.)58 b(Sp)s(eci\014cally)-8 b(,)38
6e51e0d0 17048b Ft(DEL)p Fu(,)f Ft(ESC)p Fu(,)g Ft(LFD)p Fu(,)g Ft(SPC)p
967625cd 17049Fu(,)g Ft(RET)p Fu(,)150 3902 y(and)d Ft(TAB)f Fu(all)j(stand)e(for)g
c302751c 17050(themselv)m(es)i(when)d(seen)i(in)f(this)g(text,)j(or)d(in)h(an)f(init)
967625cd 17051h(\014le)f(\(see)i(Section)f(8.3)150 4012 y([Readline)f(Init)g(File],)i
e2520247 17052(page)e(124\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
6e51e0d0 17053Ft(LFD)f Fu(k)m(ey)-8 b(,)36 b(t)m(yping)e Ft(C-j)e Fu(will)i(pro)s
967625cd 17054(duce)150 4122 y(the)d(desired)e(c)m(haracter.)43 b(The)30
6e51e0d0
CR
17055b Ft(RET)f Fu(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
17056Ft(Return)d Fu(or)j Ft(Enter)d Fu(on)j(some)g(k)m(eyb)s(oards.)150
170574413 y Fs(8.2)68 b(Readline)47 b(In)l(teraction)150 4573
17058y Fu(Often)32 b(during)g(an)g(in)m(teractiv)m(e)j(session)e(y)m(ou)g(t)
c302751c
CR
17059m(yp)s(e)g(in)f(a)h(long)g(line)g(of)f(text,)j(only)d(to)i(notice)g
17060(that)f(the)150 4682 y(\014rst)f(w)m(ord)g(on)g(the)g(line)h(is)g
37c41ab1 17061(missp)s(elled.)46 b(The)32 b(Readline)h(library)f(giv)m(es)h(y)m(ou)g
a9fac3b2 17062(a)g(set)g(of)f(commands)g(for)150 4792 y(manipulating)e(the)g(text)h
37c41ab1
CR
17063(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
17064(just)e(\014x)g(y)m(our)h(t)m(yp)s(o,)g(and)g(not)g(forcing)150
a9fac3b2 170654902 y(y)m(ou)e(to)h(ret)m(yp)s(e)g(the)f(ma)5 b(jorit)m(y)29
37c41ab1 17066b(of)f(the)h(line.)40 b(Using)28 b(these)h(editing)g(commands,)f(y)m
a9fac3b2 17067(ou)h(mo)m(v)m(e)g(the)g(cursor)150 5011 y(to)35 b(the)f(place)i(that)e
37c41ab1 17068(needs)g(correction,)j(and)d(delete)h(or)f(insert)h(the)f(text)h(of)g
c302751c
CR
17069(the)f(corrections.)54 b(Then,)150 5121 y(when)24 b(y)m(ou)h(are)g
17070(satis\014ed)g(with)g(the)g(line,)i(y)m(ou)e(simply)f(press)g
6e51e0d0 17071Ft(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 17072(at)h(the)h(end)150 5230 y(of)33 b(the)h(line)g(to)g(press)e
6e51e0d0 17073Ft(RET)p Fu(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
c302751c
CR
17074(of)f(the)h(lo)s(cation)h(of)e(the)h(cursor)150 5340
17075y(within)c(the)g(line.)p eop end
e2520247
CR
17076%%Page: 122 128
17077TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(8:)41
17078b(Command)29 b(Line)i(Editing)2062 b(122)150 299 y Fk(8.2.1)63
6e51e0d0 17079b(Readline)40 b(Bare)h(Essen)m(tials)150 446 y Fu(In)31
ad4aef08
CR
17080b(order)h(to)h(en)m(ter)g(c)m(haracters)g(in)m(to)g(the)g(line,)g
17081(simply)e(t)m(yp)s(e)i(them.)46 b(The)31 b(t)m(yp)s(ed)h(c)m(haracter)i
17082(app)s(ears)150 555 y(where)e(the)h(cursor)e(w)m(as,)j(and)e(then)g
17083(the)h(cursor)e(mo)m(v)m(es)j(one)f(space)g(to)g(the)g(righ)m(t.)47
17084b(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
17085(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 17086(delete)j(the)f(mist)m(yp)s(ed)e(c)m(haracter.)275 806
a9fac3b2
CR
17087y(Sometimes)i(y)m(ou)g(ma)m(y)h(mist)m(yp)s(e)e(a)i(c)m(haracter,)g
17088(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 17089m(yp)s(ed)150 916 y(sev)m(eral)e(other)f(c)m(haracters.)42
a9fac3b2 17090b(In)28 b(that)i(case,)g(y)m(ou)f(can)g(t)m(yp)s(e)h
6e51e0d0 17091Fj(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 170921026 y(then)f(correct)i(y)m(our)e(mistak)m(e.)42 b(Afterw)m(ards,)31
37c41ab1 17093b(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 17094(with)f Fj(C-f)p Fu(.)275 1167 y(When)i(y)m(ou)h(add)f(text)h(in)f(the)
a9fac3b2 17095h(middle)f(of)h(a)g(line,)h(y)m(ou)e(will)h(notice)h(that)f(c)m
c302751c 17096(haracters)h(to)g(the)e(righ)m(t)150 1277 y(of)d(the)g(cursor)f(are)h
5e13499c 17097(`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 17098(that)f(y)m(ou)g(ha)m(v)m(e)h(inserted.)40 b(Lik)m(ewise,)150
c302751c 170991386 y(when)d(y)m(ou)g(delete)i(text)g(b)s(ehind)c(the)j(cursor,)h(c)m
37c41ab1 17100(haracters)g(to)f(the)g(righ)m(t)g(of)g(the)g(cursor)e(are)i(`pulled)
c302751c 17101150 1496 y(bac)m(k')24 b(to)f(\014ll)g(in)f(the)h(blank)f(space)i
37c41ab1 17102(created)f(b)m(y)g(the)g(remo)m(v)-5 b(al)24 b(of)f(the)g(text.)39
c302751c 17103b(A)23 b(list)g(of)g(the)g(bare)f(essen)m(tials)150 1605
37c41ab1 17104y(for)30 b(editing)h(the)g(text)g(of)g(an)f(input)f(line)i(follo)m(ws.)
6e51e0d0
CR
17105150 1775 y Fj(C-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(k)g(one)e(c)m
17106(haracter.)150 1941 y Fj(C-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(one)
17107h(c)m(haracter.)150 2108 y Ft(DEL)e Fu(or)i Ft(Backspace)630
171082217 y Fu(Delete)i(the)d(c)m(haracter)i(to)f(the)g(left)g(of)f(the)h
17109(cursor.)150 2384 y Fj(C-d)336 b Fu(Delete)33 b(the)d(c)m(haracter)i
c302751c
CR
17110(underneath)d(the)i(cursor.)150 2550 y(Prin)m(ting)g(c)m(haracters)630
171112660 y(Insert)f(the)g(c)m(haracter)i(in)m(to)g(the)e(line)h(at)g(the)g
6e51e0d0
CR
17112(cursor.)150 2826 y Fj(C-_)e Fu(or)i Fj(C-x)e(C-u)630
171132936 y Fu(Undo)k(the)h(last)g(editing)g(command.)50 b(Y)-8
c302751c 17114b(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
e9c75143
CR
17115(empt)m(y)630 3045 y(line.)150 3215 y(\(Dep)s(ending)c(on)g(y)m(our)g
17116(con\014guration,)h(the)f Ft(Backspace)d Fu(k)m(ey)k(migh)m(t)g(b)s(e)e
17117(set)i(to)g(delete)g(the)f(c)m(haracter)150 3324 y(to)h(the)f(left)h
17118(of)f(the)g(cursor)f(and)h(the)g Ft(DEL)f Fu(k)m(ey)i(set)g(to)f
17119(delete)i(the)e(c)m(haracter)h(underneath)e(the)h(cursor,)150
171203434 y(lik)m(e)i Fj(C-d)p Fu(,)d(rather)i(than)f(the)g(c)m(haracter)i
17121(to)f(the)g(left)g(of)g(the)f(cursor.\))150 3640 y Fk(8.2.2)63
17122b(Readline)40 b(Mo)m(v)m(emen)m(t)h(Commands)150 3787
17123y Fu(The)27 b(ab)s(o)m(v)m(e)i(table)g(describ)s(es)e(the)g(most)i
17124(basic)f(k)m(eystrok)m(es)h(that)f(y)m(ou)g(need)g(in)f(order)g(to)i
17125(do)e(editing)i(of)150 3897 y(the)k(input)f(line.)49
17126b(F)-8 b(or)34 b(y)m(our)f(con)m(v)m(enience,)j(man)m(y)d(other)g
17127(commands)f(ha)m(v)m(e)j(b)s(een)d(added)g(in)h(addition)150
171284006 y(to)j Fj(C-b)p Fu(,)f Fj(C-f)p Fu(,)g Fj(C-d)p
17129Fu(,)h(and)e Ft(DEL)p Fu(.)54 b(Here)35 b(are)g(some)h(commands)e(for)h
17130(mo)m(ving)h(more)f(rapidly)f(ab)s(out)h(the)150 4116
17131y(line.)150 4286 y Fj(C-a)336 b Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h
17132(of)g(the)f(line.)150 4452 y Fj(C-e)336 b Fu(Mo)m(v)m(e)32
17133b(to)g(the)e(end)g(of)g(the)h(line.)150 4618 y Fj(M-f)336
17134b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(a)h(w)m(ord,)f(where)g(a)h(w)m(ord)f
17135(is)g(comp)s(osed)g(of)h(letters)h(and)d(digits.)150
171364785 y Fj(M-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(kw)m(ard)f(a)g(w)m(ord.)
17137150 4951 y Fj(C-l)336 b Fu(Clear)31 b(the)f(screen,)h(reprin)m(ting)f
17138(the)h(curren)m(t)f(line)h(at)g(the)f(top.)275 5121 y(Notice)c(ho)m(w)f
17139Fj(C-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(c)m(haracter,)j(while)d
17140Fj(M-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(w)m(ord.)39
17141b(It)24 b(is)h(a)g(lo)s(ose)150 5230 y(con)m(v)m(en)m(tion)32
37c41ab1
CR
17142b(that)f(con)m(trol)g(k)m(eystrok)m(es)h(op)s(erate)e(on)g(c)m
17143(haracters)h(while)f(meta)h(k)m(eystrok)m(es)h(op)s(erate)e(on)150
171445340 y(w)m(ords.)p eop end
e2520247
CR
17145%%Page: 123 129
17146TeXDict begin 123 128 bop 150 -116 a Fu(Chapter)30 b(8:)41
17147b(Command)29 b(Line)i(Editing)2062 b(123)150 299 y Fk(8.2.3)63
6e51e0d0
CR
17148b(Readline)40 b(Killing)i(Commands)150 446 y Fr(Killing)35
17149b Fu(text)28 b(means)e(to)h(delete)h(the)f(text)g(from)g(the)f(line,)i
c302751c 17150(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 17151(usually)150 555 y(b)m(y)g Fr(y)m(anking)35 b Fu(\(re-inserting\))28
c302751c
CR
17152b(it)g(bac)m(k)f(in)m(to)h(the)f(line.)40 b(\(`Cut')27
17153b(and)g(`paste')h(are)f(more)g(recen)m(t)h(jargon)f(for)150
17154665 y(`kill')32 b(and)d(`y)m(ank'.\))275 801 y(If)g(the)i(description)f
17155(for)g(a)h(command)f(sa)m(ys)g(that)h(it)g(`kills')g(text,)h(then)e(y)m
17156(ou)g(can)h(b)s(e)e(sure)h(that)h(y)m(ou)150 911 y(can)g(get)g(the)g
17157(text)g(bac)m(k)g(in)f(a)h(di\013eren)m(t)g(\(or)g(the)f(same\))h
17158(place)h(later.)275 1047 y(When)23 b(y)m(ou)g(use)g(a)h(kill)g
17159(command,)g(the)g(text)g(is)f(sa)m(v)m(ed)i(in)e(a)g
6e51e0d0 17160Fr(kill-ring)p Fu(.)39 b(An)m(y)24 b(n)m(um)m(b)s(er)e(of)h(consecutiv)
c302751c 17161m(e)150 1157 y(kills)31 b(sa)m(v)m(e)i(all)f(of)f(the)g(killed)h(text)g
37c41ab1 17162(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 17163(ou)g(get)g(it)f(all.)43 b(The)150 1267 y(kill)33 b(ring)f(is)g(not)h
37c41ab1
CR
17164(line)g(sp)s(eci\014c;)g(the)g(text)g(that)g(y)m(ou)g(killed)f(on)h(a)f
17165(previously)g(t)m(yp)s(ed)h(line)f(is)h(a)m(v)-5 b(ailable)150
c302751c
CR
171661376 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)
17167i(are)g(t)m(yping)f(another)h(line.)275 1513 y(Here)f(is)h(the)f(list)h
6e51e0d0
CR
17168(of)g(commands)f(for)g(killing)h(text.)150 1675 y Fj(C-k)336
17169b Fu(Kill)31 b(the)f(text)i(from)e(the)g(curren)m(t)g(cursor)g(p)s
c302751c 17170(osition)h(to)g(the)f(end)g(of)g(the)h(line.)150 1836
6e51e0d0 17171y Fj(M-d)336 b Fu(Kill)27 b(from)f(the)g(cursor)g(to)h(the)f(end)g(of)h
37c41ab1 17172(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 17173g(to)g(the)630 1946 y(end)j(of)g(the)h(next)f(w)m(ord.)41
37c41ab1 17174b(W)-8 b(ord)30 b(b)s(oundaries)f(are)i(the)g(same)f(as)h(those)g(used)
e9c75143
CR
17175f(b)m(y)g Fj(M-f)p Fu(.)150 2107 y Fj(M-DEL)240 b Fu(Kill)34
17176b(from)f(the)g(cursor)g(to)h(the)g(start)g(of)g(the)f(curren)m(t)g(w)m
17177(ord,)h(or,)h(if)e(b)s(et)m(w)m(een)h(w)m(ords,)g(to)630
171782217 y(the)28 b(start)g(of)g(the)g(previous)f(w)m(ord.)39
17179b(W)-8 b(ord)28 b(b)s(oundaries)e(are)i(the)g(same)g(as)g(those)g(used)
17180f(b)m(y)630 2326 y Fj(M-b)p Fu(.)150 2487 y Fj(C-w)336
17181b Fu(Kill)35 b(from)g(the)g(cursor)f(to)i(the)f(previous)g(whitespace.)
1718255 b(This)34 b(is)h(di\013eren)m(t)h(than)e Fj(M-DEL)630
6e51e0d0
CR
171832597 y Fu(b)s(ecause)c(the)h(w)m(ord)f(b)s(oundaries)f(di\013er.)275
171842759 y(Here)42 b(is)f(ho)m(w)h(to)g Fr(y)m(ank)47 b Fu(the)42
c302751c
CR
17185b(text)g(bac)m(k)h(in)m(to)f(the)g(line.)74 b(Y)-8 b(anking)43
17186b(means)e(to)h(cop)m(y)h(the)e(most-)150 2869 y(recen)m(tly-killed)33
6e51e0d0
CR
17187b(text)e(from)f(the)g(kill)i(bu\013er.)150 3031 y Fj(C-y)336
17188b Fu(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)h(killed)f(text)g(bac)m
c302751c 17189(k)g(in)m(to)h(the)e(bu\013er)g(at)h(the)f(cursor.)150
6e51e0d0 171903192 y Fj(M-y)336 b Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h
c302751c 17191(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
17192(the)g(prior)630 3302 y(command)30 b(is)h Fj(C-y)e Fu(or)h
17193Fj(M-y)p Fu(.)150 3503 y Fk(8.2.4)63 b(Readline)40 b(Argumen)m(ts)150
171943650 y Fu(Y)-8 b(ou)40 b(can)f(pass)g(n)m(umeric)f(argumen)m(ts)i(to)f
c302751c
CR
17195(Readline)h(commands.)67 b(Sometimes)39 b(the)g(argumen)m(t)h(acts)150
171963760 y(as)g(a)h(rep)s(eat)f(coun)m(t,)j(other)e(times)f(it)h(is)f(the)g
6e51e0d0 17197Fl(sign)47 b Fu(of)41 b(the)f(argumen)m(t)g(that)h(is)f(signi\014can)m
c302751c 17198(t.)71 b(If)40 b(y)m(ou)150 3869 y(pass)33 b(a)h(negativ)m(e)i(argumen)
37c41ab1 17199m(t)e(to)g(a)g(command)f(whic)m(h)g(normally)h(acts)g(in)f(a)h(forw)m
c302751c 17200(ard)f(direction,)i(that)150 3979 y(command)g(will)h(act)g(in)f(a)h
37c41ab1 17201(bac)m(kw)m(ard)f(direction.)57 b(F)-8 b(or)36 b(example,)h(to)f(kill)g
c302751c 17202(text)g(bac)m(k)g(to)g(the)g(start)g(of)150 4088 y(the)31
6e51e0d0
CR
17203b(line,)g(y)m(ou)f(migh)m(t)h(t)m(yp)s(e)g(`)p Ft(M--)f(C-k)p
17204Fu('.)275 4225 y(The)d(general)i(w)m(a)m(y)h(to)e(pass)g(n)m(umeric)g
37c41ab1 17205(argumen)m(ts)h(to)g(a)f(command)g(is)g(to)h(t)m(yp)s(e)f(meta)i
c302751c 17206(digits)e(b)s(efore)150 4334 y(the)j(command.)42 b(If)30
37c41ab1 17207b(the)h(\014rst)f(`digit')i(t)m(yp)s(ed)f(is)g(a)g(min)m(us)f(sign)h
6e51e0d0 17208(\(`)p Ft(-)p Fu('\),)h(then)f(the)g(sign)f(of)h(the)g(argumen)m(t)150
c302751c 172094444 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 17210(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 17211(started,)i(y)m(ou)150 4554 y(can)29 b(t)m(yp)s(e)g(the)g(remainder)f
37c41ab1 17212(of)h(the)g(digits,)h(and)f(then)f(the)h(command.)40
6e51e0d0
CR
17213b(F)-8 b(or)30 b(example,)g(to)f(giv)m(e)i(the)e Fj(C-d)150
172144663 y Fu(command)37 b(an)g(argumen)m(t)h(of)g(10,)i(y)m(ou)e(could)f
17215(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 17216(delete)h(the)e(next)h(ten)150 4773 y(c)m(haracters)32
6e51e0d0
CR
17217b(on)e(the)h(input)e(line.)150 4974 y Fk(8.2.5)63 b(Searc)m(hing)40
17218b(for)i(Commands)g(in)f(the)g(History)150 5121 y Fu(Readline)35
c302751c
CR
17219b(pro)m(vides)f(commands)g(for)g(searc)m(hing)h(through)e(the)i
17220(command)f(history)g(\(see)h(Section)g(9.1)150 5230 y([Bash)i(History)h
e2520247 17221(F)-8 b(acilities],)42 b(page)37 b(156\))i(for)d(lines)h(con)m(taining)
c302751c 17222i(a)e(sp)s(eci\014ed)f(string.)60 b(There)36 b(are)i(t)m(w)m(o)150
6e51e0d0
CR
172235340 y(searc)m(h)31 b(mo)s(des:)40 b Fr(incremen)m(tal)35
17224b Fu(and)30 b Fr(non-incremen)m(tal)p Fu(.)p eop end
e2520247
CR
17225%%Page: 124 130
17226TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(8:)41
17227b(Command)29 b(Line)i(Editing)2062 b(124)275 299 y(Incremen)m(tal)26
ad4aef08
CR
17228b(searc)m(hes)h(b)s(egin)e(b)s(efore)g(the)h(user)f(has)h(\014nished)e
17229(t)m(yping)i(the)g(searc)m(h)g(string.)39 b(As)26 b(eac)m(h)150
17230408 y(c)m(haracter)37 b(of)e(the)h(searc)m(h)g(string)f(is)h(t)m(yp)s
17231(ed,)g(Readline)g(displa)m(ys)g(the)f(next)h(en)m(try)g(from)e(the)i
17232(history)150 518 y(matc)m(hing)25 b(the)f(string)g(t)m(yp)s(ed)g(so)g
17233(far.)39 b(An)23 b(incremen)m(tal)j(searc)m(h)e(requires)g(only)g(as)g
17234(man)m(y)g(c)m(haracters)i(as)150 628 y(needed)i(to)i(\014nd)d(the)i
17235(desired)f(history)h(en)m(try)-8 b(.)41 b(T)-8 b(o)29
17236b(searc)m(h)h(bac)m(kw)m(ard)f(in)f(the)h(history)g(for)f(a)i
6e51e0d0
CR
17237(particular)150 737 y(string,)g(t)m(yp)s(e)f Fj(C-r)p
17238Fu(.)40 b(T)m(yping)29 b Fj(C-s)g Fu(searc)m(hes)h(forw)m(ard)f
ad4aef08
CR
17239(through)g(the)g(history)-8 b(.)41 b(The)29 b(c)m(haracters)i(presen)m
17240(t)150 847 y(in)38 b(the)g(v)-5 b(alue)38 b(of)g(the)g
6e51e0d0 17241Ft(isearch-terminators)33 b Fu(v)-5 b(ariable)39 b(are)f(used)f(to)i
ad4aef08
CR
17242(terminate)g(an)f(incremen)m(tal)150 956 y(searc)m(h.)71
17243b(If)40 b(that)h(v)-5 b(ariable)41 b(has)f(not)h(b)s(een)e(assigned)i
6e51e0d0
CR
17244(a)f(v)-5 b(alue,)44 b(the)c Ft(ESC)g Fu(and)f Fj(C-J)h
17245Fu(c)m(haracters)i(will)150 1066 y(terminate)h(an)g(incremen)m(tal)g
17246(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
17247(searc)m(h)f(and)f(restore)h(the)150 1176 y(original)30
17248b(line.)41 b(When)28 b(the)h(searc)m(h)h(is)f(terminated,)h(the)f
17249(history)g(en)m(try)g(con)m(taining)h(the)f(searc)m(h)h(string)150
9128f932 172501285 y(b)s(ecomes)h(the)f(curren)m(t)g(line.)275 1416
ad4aef08 17251y(T)-8 b(o)31 b(\014nd)e(other)j(matc)m(hing)g(en)m(tries)g(in)e(the)h
6e51e0d0 17252(history)g(list,)h(t)m(yp)s(e)g Fj(C-r)e Fu(or)h Fj(C-s)f
9128f932 17253Fu(as)h(appropriate.)43 b(This)150 1525 y(will)26 b(searc)m(h)h(bac)m
37c41ab1
CR
17254(kw)m(ard)g(or)f(forw)m(ard)g(in)f(the)i(history)f(for)g(the)g(next)g
17255(en)m(try)h(matc)m(hing)g(the)f(searc)m(h)h(string)150
9128f932 172561635 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 17257(sequence)f(b)s(ound)e(to)i(a)g(Readline)h(command)e(will)h(terminate)h
9128f932 17258(the)150 1744 y(searc)m(h)26 b(and)f(execute)i(that)f(command.)39
6e51e0d0 17259b(F)-8 b(or)26 b(instance,)h(a)f Ft(RET)f Fu(will)g(terminate)i(the)f
9128f932 17260(searc)m(h)g(and)e(accept)150 1854 y(the)30 b(line,)g(thereb)m(y)f
c302751c 17261(executing)i(the)e(command)g(from)g(the)h(history)f(list.)41
9128f932 17262b(A)29 b(mo)m(v)m(emen)m(t)j(command)d(will)150 1964
c302751c
CR
17263y(terminate)i(the)g(searc)m(h,)g(mak)m(e)h(the)e(last)h(line)g(found)e
17264(the)i(curren)m(t)f(line,)h(and)f(b)s(egin)g(editing.)275
9128f932 172652094 y(Readline)35 b(remem)m(b)s(ers)f(the)h(last)h(incremen)m(tal)g
6e51e0d0 17266(searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fj(C-r)p
9128f932 17267Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2204 y(an)m(y)i(in)m(terv)m
c302751c
CR
17268(ening)g(c)m(haracters)h(de\014ning)e(a)h(new)f(searc)m(h)h(string,)h
17269(an)m(y)f(remem)m(b)s(ered)e(searc)m(h)i(string)g(is)150
9128f932 172702313 y(used.)275 2444 y(Non-incremen)m(tal)48 b(searc)m(hes)g(read)e
c302751c 17271(the)h(en)m(tire)h(searc)m(h)f(string)g(b)s(efore)f(starting)h(to)h
9128f932 17272(searc)m(h)f(for)150 2553 y(matc)m(hing)d(history)e(lines.)78
c302751c 17273b(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
17274(the)h(user)f(or)h(b)s(e)f(part)g(of)h(the)150 2663 y(con)m(ten)m(ts)32
17275b(of)f(the)f(curren)m(t)g(line.)150 2896 y Fs(8.3)68
17276b(Readline)47 b(Init)e(File)150 3055 y Fu(Although)f(the)g(Readline)g
c302751c 17277(library)f(comes)i(with)e(a)h(set)h(of)f(Emacs-lik)m(e)h(k)m
9128f932 17278(eybindings)f(installed)g(b)m(y)150 3165 y(default,)26
c302751c
CR
17279b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)m(t)f(set)g(of)g(k)
17280m(eybindings.)38 b(An)m(y)25 b(user)f(can)h(customize)h(programs)150
e59452c7
CR
172813274 y(that)39 b(use)g(Readline)g(b)m(y)f(putting)h(commands)f(in)g(an)
17282h Fr(inputrc)k Fu(\014le,)e(con)m(v)m(en)m(tionally)h(in)c(their)h
9128f932 17283(home)150 3384 y(directory)-8 b(.)59 b(The)35 b(name)i(of)f(this)g
c302751c 17284(\014le)g(is)g(tak)m(en)h(from)f(the)g(v)-5 b(alue)37
6e51e0d0 17285b(of)f(the)g(shell)h(v)-5 b(ariable)36 b Ft(INPUTRC)p
9128f932 17286Fu(.)56 b(If)150 3493 y(that)36 b(v)-5 b(ariable)36 b(is)f(unset,)h
6e51e0d0
CR
17287(the)f(default)h(is)f Ft(~/.inputrc)p Fu(.)52 b(If)35
17288b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h(b)s(e)150
9128f932
CR
172893603 y(read,)f(the)f(ultimate)h(default)f(is)g Ft(/etc/inputrc)p
17290Fu(.)47 b(The)33 b Ft(bind)g Fu(builtin)g(command)h(can)g(also)h(b)s(e)
17291e(used)150 3713 y(to)e(set)g(Readline)g(k)m(eybindings)f(and)g(v)-5
17292b(ariables.)41 b(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)g
e2520247 17293(57.)275 3843 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g
6e51e0d0 17294(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f(the)
9128f932 17295150 3953 y(k)m(ey)i(bindings)e(are)i(set.)275 4083 y(In)26
6e51e0d0
CR
17296b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g(this)f(init)
17297h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m(hanges)150
9128f932
CR
172984193 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g(it.)150
172994384 y Fk(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
173004531 y Fu(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
c302751c 17301m(ed)h(in)d(the)h(Readline)h(init)f(\014le.)73 b(Blank)41
9128f932 17302b(lines)h(are)150 4641 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
6e51e0d0
CR
17303(a)g(`)p Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41
17304b(b)s(eginning)f(with)g(a)i(`)p Ft($)p Fu(')f(indicate)150
9128f932 173054750 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
e2520247 17306([Conditional)g(Init)e(Constructs],)j(page)e(133\).)64
9128f932
CR
17307b(Other)150 4860 y(lines)31 b(denote)g(v)-5 b(ariable)31
17308b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8
17309b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
c302751c 17310(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g(b)m(y)f(altering)h
9128f932 17311(the)g(v)-5 b(alues)41 b(of)630 5230 y(v)-5 b(ariables)34
6e51e0d0 17312b(in)f(Readline)i(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h
9128f932
CR
17313(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p
17314eop end
e2520247
CR
17315%%Page: 125 131
17316TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(8:)41
17317b(Command)29 b(Line)i(Editing)2062 b(125)870 299 y Ft(set)47
6d69b625 17318b Fj(variable)e(value)630 432 y Fu(Here,)29 b(for)e(example,)h(is)g(ho)
9128f932 17319m(w)f(to)h(c)m(hange)g(from)f(the)g(default)h(Emacs-lik)m(e)h(k)m(ey)f
6d69b625
CR
17320(binding)e(to)630 542 y(use)k Ft(vi)g Fu(line)h(editing)g(commands:)870
17321675 y Ft(set)47 b(editing-mode)d(vi)630 808 y Fu(V)-8
9128f932 17322b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36 b(where)f(appropriate,)h
6d69b625 17323(are)g(recognized)g(without)f(regard)630 917 y(to)c(case.)42
9128f932 17324b(Unrecognized)31 b(v)-5 b(ariable)31 b(names)g(are)f(ignored.)630
6d69b625 173251050 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f
9128f932 17326(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)
6d69b625 17327g(v)-5 b(alue)26 b(is)630 1160 y(n)m(ull)e(or)g(empt)m(y)-8
6e51e0d0 17328b(,)27 b Fr(on)d Fu(\(case-insensitiv)m(e\),)29 b(or)24
1c72c0cd 17329b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
6d69b625
CR
17330-5 b(ariable)630 1270 y(b)s(eing)30 b(set)h(to)g(o\013.)630
173311403 y(The)37 b Ft(bind)30 b(-V)37 b Fu(command)g(lists)i(the)f(curren)
1c72c0cd 17332m(t)f(Readline)i(v)-5 b(ariable)38 b(names)g(and)f(v)-5
6d69b625 17333b(alues.)630 1512 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)
e2520247 17334g(57.)630 1645 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g
1c72c0cd 17335(is)g(c)m(hangeable)j(with)d(the)g(follo)m(wing)i(v)-5
6d69b625
CR
17336b(ariables.)630 1802 y Ft(active-region-start-colo)o(r)1110
173371911 y Fu(A)27 b(string)f(v)-5 b(ariable)27 b(that)g(con)m(trols)h(the)
17338f(text)g(color)h(and)e(bac)m(kground)g(when)1110 2021
17339y(displa)m(ying)50 b(the)f(text)h(in)f(the)h(activ)m(e)h(region)f
17340(\(see)g(the)g(description)f(of)1110 2131 y Ft(enable-active-region)25
17341b Fu(b)s(elo)m(w\).)43 b(This)30 b(string)h(m)m(ust)f(not)h(tak)m(e)i
17342(up)d(an)m(y)1110 2240 y(ph)m(ysical)25 b(c)m(haracter)h(p)s(ositions)f
17343(on)g(the)f(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(consist)h(only)
173441110 2350 y(of)37 b(terminal)g(escap)s(e)g(sequences.)61
17345b(It)36 b(is)h(output)g(to)g(the)g(terminal)g(b)s(efore)1110
173462459 y(displa)m(ying)h(the)f(text)i(in)e(the)h(activ)m(e)h(region.)63
17347b(This)37 b(v)-5 b(ariable)38 b(is)f(reset)h(to)1110
173482569 y(the)29 b(default)g(v)-5 b(alue)29 b(whenev)m(er)f(the)h
17349(terminal)g(t)m(yp)s(e)g(c)m(hanges.)41 b(The)28 b(default)1110
173502679 y(v)-5 b(alue)30 b(is)f(the)g(string)g(that)h(puts)e(the)i
17351(terminal)f(in)g(standout)g(mo)s(de,)g(as)h(ob-)1110
173522788 y(tained)40 b(from)f(the)h(terminal's)g(terminfo)g(description.)68
17353b(A)40 b(sample)f(v)-5 b(alue)1110 2898 y(migh)m(t)31
17354b(b)s(e)f(`)p Ft(\\e[01;33m)p Fu('.)630 3054 y Ft
17355(active-region-end-color)1110 3164 y Fu(A)48 b(string)g(v)-5
17356b(ariable)48 b(that)h Ft(")p Fu(undo)s(es)p Ft(")d Fu(the)i(e\013ects)h
17357(of)f Ft(active-region-)1110 3273 y(start-color)36 b
17358Fu(and)i(restores)h Ft(")p Fu(normal)p Ft(")f Fu(terminal)h(displa)m(y)
17359g(app)s(earance)1110 3383 y(after)26 b(displa)m(ying)h(text)f(in)g(the)
17360g(activ)m(e)i(region.)40 b(This)25 b(string)h(m)m(ust)f(not)h(tak)m(e)
173611110 3493 y(up)e(an)m(y)h(ph)m(ysical)h(c)m(haracter)h(p)s(ositions)d
17362(on)h(the)h(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(con-)1110
173633602 y(sist)29 b(only)h(of)f(terminal)h(escap)s(e)f(sequences.)41
17364b(It)29 b(is)g(output)g(to)h(the)f(terminal)1110 3712
17365y(after)36 b(displa)m(ying)g(the)g(text)h(in)e(the)h(activ)m(e)i
17366(region.)58 b(This)34 b(v)-5 b(ariable)37 b(is)f(re-)1110
173673821 y(set)e(to)g(the)g(default)g(v)-5 b(alue)34 b(whenev)m(er)f(the)h
17368(terminal)g(t)m(yp)s(e)f(c)m(hanges.)51 b(The)1110 3931
17369y(default)38 b(v)-5 b(alue)39 b(is)f(the)h(string)f(that)h(restores)f
17370(the)h(terminal)f(from)g(stand-)1110 4041 y(out)30 b(mo)s(de,)f(as)g
17371(obtained)h(from)f(the)g(terminal's)h(terminfo)f(description.)41
17372b(A)1110 4150 y(sample)31 b(v)-5 b(alue)30 b(migh)m(t)h(b)s(e)f(`)p
17373Ft(\\e[0m)p Fu('.)630 4307 y Ft(bell-style)1110 4416
17374y Fu(Con)m(trols)44 b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m
17375(ts)f(to)h(ring)e(the)h(termi-)1110 4526 y(nal)37 b(b)s(ell.)61
17376b(If)37 b(set)h(to)g(`)p Ft(none)p Fu(',)g(Readline)g(nev)m(er)g(rings)
17377e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 4635 y(`)p
17378Ft(visible)p Fu(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g
17379(one)g(is)g(a)m(v)-5 b(ailable.)51 b(If)33 b(set)g(to)1110
173804745 y(`)p Ft(audible)p Fu(')j(\(the)i(default\),)i(Readline)e
17381(attempts)g(to)h(ring)e(the)g(terminal's)1110 4855 y(b)s(ell.)630
173825011 y Ft(bind-tty-special-chars)1110 5121 y Fu(If)e(set)g(to)h(`)p
17383Ft(on)p Fu(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d
17384(the)i(con)m(trol)1110 5230 y(c)m(haracters)30 b(treated)g(sp)s
17385(ecially)g(b)m(y)f(the)g(k)m(ernel's)h(terminal)f(driv)m(er)g(to)h
17386(their)1110 5340 y(Readline)h(equiv)-5 b(alen)m(ts.)p
17387eop end
e2520247
CR
17388%%Page: 126 132
17389TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41
17390b(Command)29 b(Line)i(Editing)2062 b(126)630 299 y Ft
6d69b625
CR
17391(blink-matching-paren)1110 408 y Fu(If)36 b(set)g(to)h(`)p
17392Ft(on)p Fu(',)h(Readline)f(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j
17393(the)f(cursor)e(to)i(an)1110 518 y(op)s(ening)k(paren)m(thesis)h(when)f
17394(a)h(closing)h(paren)m(thesis)e(is)h(inserted.)74 b(The)1110
17395628 y(default)31 b(is)f(`)p Ft(off)p Fu('.)630 792 y
17396Ft(colored-completion-prefi)o(x)1110 902 y Fu(If)f(set)h(to)g(`)p
17397Ft(on)p Fu(',)g(when)e(listing)i(completions,)h(Readline)f(displa)m(ys)
17398g(the)f(com-)1110 1011 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s
17399(ossible)f(completions)h(using)f(a)h(di\013eren)m(t)g(color.)1110
174001121 y(The)f(color)h(de\014nitions)f(are)h(tak)m(en)g(from)f(the)g(v)-5
17401b(alue)26 b(of)g(the)f Ft(LS_COLORS)e Fu(en-)1110 1230
25e43d2c
CR
17402y(vironmen)m(t)34 b(v)-5 b(ariable.)50 b(If)33 b(there)h(is)g(a)f
17403(color)i(de\014nition)e(in)g Ft(LS_COLORS)e Fu(for)1110
6d69b625
CR
174041340 y(the)22 b(custom)g(su\016x)f(`)p Ft(readline-colored-complet)o
17405(ion)o(-pre)o(fix)p Fu(',)c(Read-)1110 1450 y(line)24
25e43d2c 17406b(uses)e(this)i(color)g(for)f(the)h(common)f(pre\014x)f(instead)i(of)f
6d69b625
CR
17407(its)h(default.)38 b(The)1110 1559 y(default)31 b(is)f(`)p
17408Ft(off)p Fu('.)630 1724 y Ft(colored-stats)1110 1833
25e43d2c
CR
17409y Fu(If)c(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(displa)m(ys)g(p)s
17410(ossible)f(completions)h(using)f(di\013eren)m(t)1110
6d69b625 174111943 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
abe2eb5b 17412b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
6d69b625 174132052 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Ft(LS_COLORS)d
6e51e0d0 17414Fu(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
6d69b625
CR
174152162 y(is)30 b(`)p Ft(off)p Fu('.)630 2326 y Ft(comment-begin)1110
174162436 y Fu(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
17417h(the)h(line)f(when)g(the)1110 2545 y Ft(insert-comment)26
6e51e0d0 17418b Fu(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
6d69b625
CR
17419b(alue)31 b(is)f Ft("#")p Fu(.)630 2710 y Ft(completion-display-width)
174201110 2819 y Fu(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
17421g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 2929
17422y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
17423b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
174243039 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
9128f932 17425b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
6d69b625 174263148 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 17427(line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
6d69b625 174283313 y Ft(completion-ignore-case)1110 3422 y Fu(If)d(set)h(to)g(`)p
6e51e0d0 17429Ft(on)p Fu(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
6d69b625 17430(and)e(completion)1110 3532 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
25e43d2c 1743140 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Ft(off)p
6d69b625 17432Fu('.)630 3696 y Ft(completion-map-case)1110 3806 y Fu(If)22
8a0829e9 17433b(set)g(to)h(`)p Ft(on)p Fu(',)h(and)e Fr(completion-ignore-case)31
6d69b625 17434b Fu(is)22 b(enabled,)i(Readline)f(treats)1110 3915 y(h)m(yphens)29
fc527055
CR
17435b(\(`)p Ft(-)p Fu('\))j(and)e(underscores)g(\(`)p Ft(_)p
17436Fu('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
6d69b625
CR
174374025 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
17438(completion.)85 b(The)44 b(default)1110 4134 y(v)-5 b(alue)31
17439b(is)f(`)p Ft(off)p Fu('.)630 4299 y Ft(completion-prefix-displa)o
17440(y-le)o(ngth)1110 4408 y Fu(The)h(length)g(in)g(c)m(haracters)i(of)f
12beeabf 17441(the)f(common)h(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110
6d69b625
CR
174424518 y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
17443(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 4628
fc527055 17444y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
6d69b625 17445(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4737
ad4aef08 17446y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
6d69b625
CR
17447f(completions.)630 4902 y Ft(completion-query-items)1110
174485011 y Fu(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
17449(that)g(determines)f(when)f(the)i(user)1110 5121 y(is)43
e6983002 17450b(ask)m(ed)g(whether)f(the)g(list)h(of)g(p)s(ossibilities)g(should)f(b)
6d69b625 17451s(e)g(displa)m(y)m(ed.)77 b(If)1110 5230 y(the)29 b(n)m(um)m(b)s(er)f
e6983002 17452(of)h(p)s(ossible)g(completions)h(is)f(greater)h(than)f(or)g(equal)g
6d69b625
CR
17453(to)h(this)1110 5340 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g
17454(whether)f(or)h(not)g(the)g(user)f(wishes)g(to)i(view)p
17455eop end
e2520247
CR
17456%%Page: 127 133
17457TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(8:)41
17458b(Command)29 b(Line)i(Editing)2062 b(127)1110 299 y(them;)33
6d69b625
CR
17459b(otherwise,)f(they)g(are)g(simply)g(listed.)45 b(This)31
17460b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110 408
17461y(to)43 b(an)e(in)m(teger)j(v)-5 b(alue)42 b(greater)h(than)f(or)g
e59452c7 17462(equal)g(to)h(zero.)76 b(A)42 b(zero)g(v)-5 b(alue)1110
6d69b625 17463518 y(means)40 b(Readline)h(should)f(nev)m(er)g(ask;)46
e59452c7 17464b(negativ)m(e)d(v)-5 b(alues)41 b(are)f(treated)i(as)1110
6d69b625 17465628 y(zero.)g(The)29 b(default)i(limit)g(is)g Ft(100)p
b9ed20ac 17466Fu(.)630 774 y Ft(convert-meta)1110 883 y Fu(If)22 b(set)g(to)h(`)p
6d69b625 17467Ft(on)p Fu(',)h(Readline)f(will)f(con)m(v)m(ert)i(c)m(haracters)f(with)
b9ed20ac 17468f(the)g(eigh)m(th)h(bit)f(set)1110 993 y(to)33 b(an)e
6d69b625 17469Fm(asci)r(i)h Fu(k)m(ey)h(sequence)f(b)m(y)g(stripping)f(the)h(eigh)m
b9ed20ac 17470(th)h(bit)f(and)f(pre\014xing)1110 1103 y(an)24 b Ft(ESC)g
6d69b625 17471Fu(c)m(haracter,)j(con)m(v)m(erting)f(them)f(to)g(a)g(meta-pre\014xed)f
b9ed20ac 17472(k)m(ey)h(sequence.)1110 1212 y(The)i(default)h(v)-5
6d69b625
CR
17473b(alue)28 b(is)f(`)p Ft(on)p Fu(',)i(but)d(will)i(b)s(e)f(set)h(to)g(`)
17474p Ft(off)p Fu(')g(if)f(the)h(lo)s(cale)h(is)f(one)1110
b9ed20ac
CR
174751322 y(that)21 b(con)m(tains)h(eigh)m(t-bit)h(c)m(haracters.)39
17476b(This)20 b(v)-5 b(ariable)21 b(is)g(dep)s(enden)m(t)f(on)h(the)1110
174771431 y Ft(LC_CTYPE)26 b Fu(lo)s(cale)31 b(category)-8
17478b(,)31 b(and)d(ma)m(y)h(c)m(hange)h(if)e(the)h(lo)s(cale)h(is)f(c)m
17479(hanged.)630 1577 y Ft(disable-completion)1110 1687 y
17480Fu(If)36 b(set)h(to)h(`)p Ft(On)p Fu(',)g(Readline)f(will)g(inhibit)f
17481(w)m(ord)h(completion.)60 b(Completion)1110 1797 y(c)m(haracters)28
17482b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
17483(had)e(b)s(een)g(mapp)s(ed)1110 1906 y(to)31 b Ft(self-insert)p
17484Fu(.)38 b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630
174852052 y Ft(echo-control-characters)1110 2162 y Fu(When)f(set)h(to)g(`)p
17486Ft(on)p Fu(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
e9c75143
CR
17487(supp)s(ort)1110 2271 y(it,)e(Readline)g(ec)m(ho)s(es)g(a)f(c)m
17488(haracter)i(corresp)s(onding)d(to)i(a)f(signal)h(generated)1110
174892381 y(from)h(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
b9ed20ac
CR
17490Ft(on)p Fu('.)630 2527 y Ft(editing-mode)1110 2637 y
17491Fu(The)d Ft(editing-mode)e Fu(v)-5 b(ariable)29 b(con)m(trols)h(whic)m
17492(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 2746 y(ings)25
17493b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h
17494(Emacs)g(editing)h(mo)s(de,)1110 2856 y(where)j(the)g(k)m(eystrok)m(es)
17495i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5
17496b(ariable)30 b(can)1110 2966 y(b)s(e)g(set)h(to)g(either)g(`)p
17497Ft(emacs)p Fu(')e(or)h(`)p Ft(vi)p Fu('.)630 3112 y Ft
17498(emacs-mode-string)1110 3221 y Fu(If)j(the)h Fr(sho)m(w-mo)s
17499(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
17500(is)h(dis-)1110 3331 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
17501g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
175023440 y(emacs)g(editing)h(mo)s(de)e(is)h(activ)m(e.)40
17503b(The)21 b(v)-5 b(alue)22 b(is)g(expanded)f(lik)m(e)h(a)h(k)m(ey)f
17504(bind-)1110 3550 y(ing,)27 b(so)f(the)f(standard)g(set)h(of)f(meta-)i
17505(and)e(con)m(trol)i(pre\014xes)d(and)h(bac)m(kslash)1110
175063660 y(escap)s(e)f(sequences)h(is)e(a)m(v)-5 b(ailable.)41
17507b(Use)25 b(the)f(`)p Ft(\\1)p Fu(')f(and)h(`)p Ft(\\2)p
17508Fu(')g(escap)s(es)g(to)g(b)s(egin)1110 3769 y(and)37
17509b(end)g(sequences)h(of)f(non-prin)m(ting)h(c)m(haracters,)j(whic)m(h)c
17510(can)h(b)s(e)f(used)1110 3879 y(to)h(em)m(b)s(ed)f(a)g(terminal)h(con)m
17511(trol)h(sequence)f(in)m(to)g(the)f(mo)s(de)g(string.)61
17512b(The)1110 3988 y(default)31 b(is)f(`)p Ft(@)p Fu('.)630
6d69b625 175134134 y Ft(enable-active-region)1110 4244 y Fu(The)46
25e43d2c 17514b Fr(p)s(oin)m(t)j Fu(is)e(the)g(curren)m(t)f(cursor)g(p)s(osition,)52
6d69b625 17515b(and)46 b Fr(mark)52 b Fu(refers)46 b(to)i(a)1110 4354
25e43d2c 17516y(sa)m(v)m(ed)37 b(cursor)f(p)s(osition)g(\(see)i(Section)f(8.4.1)h
e2520247 17517([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 4463 y(page)d(137\).)50
25e43d2c 17518b(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
6d69b625
CR
17519(is)g(referred)f(to)i(as)1110 4573 y(the)h Fr(region)p
17520Fu(.)53 b(When)34 b(this)g(v)-5 b(ariable)36 b(is)e(set)h(to)g(`)p
17521Ft(On)p Fu(',)h(Readline)f(allo)m(ws)g(cer-)1110 4682
17522y(tain)30 b(commands)f(to)g(designate)i(the)e(region)h(as)f
17523Fr(activ)m(e)p Fu(.)43 b(When)29 b(the)g(region)1110
175244792 y(is)g(activ)m(e,)j(Readline)e(highligh)m(ts)g(the)g(text)g(in)f
17525(the)g(region)h(using)f(the)g(v)-5 b(alue)1110 4902 y(of)35
17526b(the)g Ft(active-region-start-color)p Fu(,)30 b(whic)m(h)35
17527b(defaults)g(to)h(the)f(string)1110 5011 y(that)23 b(enables)f(the)g
17528(terminal's)h(standout)e(mo)s(de.)38 b(The)21 b(activ)m(e)k(region)d
17529(sho)m(ws)1110 5121 y(the)32 b(text)h(inserted)f(b)m(y)g(brac)m(k)m
17530(eted-paste)i(and)e(an)m(y)g(matc)m(hing)h(text)g(found)1110
175315230 y(b)m(y)f(incremen)m(tal)i(and)e(non-incremen)m(tal)i(history)e
17532(searc)m(hes.)48 b(The)32 b(default)1110 5340 y(is)e(`)p
17533Ft(On)p Fu('.)p eop end
e2520247
CR
17534%%Page: 128 134
17535TeXDict begin 128 133 bop 150 -116 a Fu(Chapter)30 b(8:)41
17536b(Command)29 b(Line)i(Editing)2062 b(128)630 299 y Ft
7a8455e4
CR
17537(enable-bracketed-paste)1110 408 y Fu(When)36 b(set)h(to)g(`)p
17538Ft(On)p Fu(',)h(Readline)f(con\014gures)f(the)h(terminal)f(to)i(insert)
17539e(eac)m(h)1110 518 y(paste)27 b(in)m(to)g(the)f(editing)h(bu\013er)e
17540(as)h(a)h(single)g(string)f(of)g(c)m(haracters,)j(instead)1110
17541628 y(of)d(treating)i(eac)m(h)g(c)m(haracter)f(as)g(if)f(it)h(had)f(b)s
17542(een)f(read)i(from)e(the)i(k)m(eyb)s(oard.)1110 737 y(This)36
17543b(is)h(called)h(putting)f(the)h(terminal)f(in)m(to)h
17544Fr(brac)m(k)m(eted)h(paste)e(mo)s(de)5 b Fu(;)40 b(it)1110
17545847 y(prev)m(en)m(ts)30 b(Readline)h(from)e(executing)i(an)m(y)f
17546(editing)h(commands)e(b)s(ound)f(to)1110 956 y(k)m(ey)j(sequences)g
17547(app)s(earing)f(in)g(the)g(pasted)h(text.)42 b(The)29
b9ed20ac
CR
17548b(default)i(is)f(`)p Ft(On)p Fu('.)630 1113 y Ft(enable-keypad)1110
175491223 y Fu(When)23 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g
7a8455e4 17550(try)f(to)h(enable)g(the)f(application)i(k)m(eypad)1110
b9ed20ac
CR
175511332 y(when)h(it)h(is)f(called.)41 b(Some)27 b(systems)f(need)h(this)f
17552(to)h(enable)g(the)g(arro)m(w)g(k)m(eys.)1110 1442 y(The)j(default)g
17553(is)h(`)p Ft(off)p Fu('.)630 1598 y Ft(enable-meta-key)1110
175541708 y Fu(When)40 b(set)g(to)g(`)p Ft(on)p Fu(',)j(Readline)d(will)g
7a8455e4 17555(try)g(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110
b9ed20ac
CR
175561817 y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h
17557(is)g(called.)76 b(On)41 b(man)m(y)1110 1927 y(terminals,)c(the)e(meta)
7a8455e4 17558h(k)m(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
b9ed20ac
CR
17559b(The)1110 2037 y(default)31 b(is)f(`)p Ft(on)p Fu('.)630
175602193 y Ft(expand-tilde)1110 2303 y Fu(If)d(set)h(to)h(`)p
7a8455e4 17561Ft(on)p Fu(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
b9ed20ac
CR
17562(Readline)h(attempts)1110 2412 y(w)m(ord)i(completion.)42
17563b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 2569
17564y Ft(history-preserve-point)1110 2679 y Fu(If)41 b(set)h(to)h(`)p
7a8455e4 17565Ft(on)p Fu(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
b9ed20ac 17566(p)s(oin)m(t)f(\(the)1110 2788 y(curren)m(t)35 b(cursor)g(p)s
7a8455e4 17567(osition\))g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g
b9ed20ac 17568(line)1110 2898 y(retriev)m(ed)h(with)f Ft(previous-history)c
7a8455e4 17569Fu(or)37 b Ft(next-history)p Fu(.)55 b(The)36 b(default)1110
b9ed20ac
CR
175703007 y(is)30 b(`)p Ft(off)p Fu('.)630 3164 y Ft(history-size)1110
175713273 y Fu(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
17572(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 3383
7a8455e4 17573y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
b9ed20ac 17574(en)m(tries)g(are)g(deleted)h(and)e(no)1110 3493 y(new)e(en)m(tries)i
7a8455e4
CR
17575(are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
17576b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
b9ed20ac 175773602 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
7a8455e4 17578b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
b9ed20ac
CR
175793712 y(en)m(tries)j(is)f(not)g(limited.)49 b(If)32 b(an)h(attempt)h(is)
17580f(made)g(to)h(set)f Fr(history-size)39 b Fu(to)1110 3821
7a8455e4 17581y(a)34 b(non-n)m(umeric)f(v)-5 b(alue,)34 b(the)g(maxim)m(um)f(n)m(um)m
b9ed20ac
CR
17582(b)s(er)f(of)h(history)h(en)m(tries)g(will)1110 3931
17583y(b)s(e)c(set)h(to)g(500.)630 4088 y Ft(horizontal-scroll-mode)1110
175844197 y Fu(This)k(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
7a8455e4 17585(`)p Ft(on)p Fu(')g(or)g(`)p Ft(off)p Fu('.)57 b(Setting)36
b9ed20ac 17586b(it)g(to)h(`)p Ft(on)p Fu(')1110 4307 y(means)26 b(that)h(the)f(text)h
eb0b2ad8 17587(of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
b9ed20ac
CR
17588(tally)1110 4416 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
17589(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 4526
e59452c7 17590y(screen,)c(instead)g(of)f(wrapping)f(on)m(to)i(a)g(new)e(screen)i
b9ed20ac 17591(line.)40 b(This)26 b(v)-5 b(ariable)28 b(is)1110 4635
e59452c7 17592y(automatically)k(set)e(to)g(`)p Ft(on)p Fu(')f(for)g(terminals)g(of)h
b9ed20ac 17593(heigh)m(t)g(1.)41 b(By)29 b(default,)h(this)1110 4745
e59452c7 17594y(v)-5 b(ariable)31 b(is)g(set)f(to)i(`)p Ft(off)p Fu('.)630
b9ed20ac 175954902 y Ft(input-meta)1110 5011 y Fu(If)f(set)g(to)h(`)p
e59452c7 17596Ft(on)p Fu(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
b9ed20ac 17597i(will)f(not)h(clear)1110 5121 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
e59452c7 17598(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
b9ed20ac 175995230 y(terminal)k(claims)h(it)f(can)g(supp)s(ort.)79
e59452c7 17600b(The)44 b(default)g(v)-5 b(alue)44 b(is)g(`)p Ft(off)p
b9ed20ac
CR
17601Fu(',)j(but)1110 5340 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p
17602Ft(on)p Fu(')e(if)h(the)g(lo)s(cale)i(con)m(tains)f(eigh)m(t-bit)g(c)m
17603(haracters.)p eop end
e2520247
CR
17604%%Page: 129 135
17605TeXDict begin 129 134 bop 150 -116 a Fu(Chapter)30 b(8:)41
17606b(Command)29 b(Line)i(Editing)2062 b(129)1110 299 y(The)29
b9ed20ac
CR
17607b(name)g Ft(meta-flag)e Fu(is)i(a)h(synon)m(ym)f(for)g(this)g(v)-5
17608b(ariable.)42 b(This)28 b(v)-5 b(ariable)1110 408 y(is)35
17609b(dep)s(enden)m(t)f(on)h(the)g Ft(LC_CTYPE)e Fu(lo)s(cale)k(category)-8
17610b(,)39 b(and)34 b(ma)m(y)i(c)m(hange)g(if)1110 518 y(the)31
17611b(lo)s(cale)h(is)e(c)m(hanged.)630 675 y Ft(isearch-terminators)1110
17612784 y Fu(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
17613(terminate)j(an)f(incremen)m(tal)1110 894 y(searc)m(h)25
17614b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
17615(command)1110 1003 y(\(see)38 b(Section)g(8.2.5)h([Searc)m(hing],)h
e2520247 17616(page)e(123\).)62 b(If)37 b(this)g(v)-5 b(ariable)38
b9ed20ac
CR
17617b(has)f(not)1110 1113 y(b)s(een)e(giv)m(en)h(a)g(v)-5
17618b(alue,)37 b(the)f(c)m(haracters)h Ft(ESC)d Fu(and)h
17619Fj(C-J)g Fu(will)h(terminate)g(an)1110 1223 y(incremen)m(tal)c(searc)m
17620(h.)630 1379 y Ft(keymap)192 b Fu(Sets)64 b(Readline's)i(idea)f(of)f
17621(the)h(curren)m(t)f(k)m(eymap)h(for)f(k)m(ey)h(binding)1110
176221489 y(commands.)71 b(Built-in)41 b Ft(keymap)e Fu(names)h(are)h
17623Ft(emacs)p Fu(,)h Ft(emacs-standard)p Fu(,)1110 1598
17624y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
17625Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
176261708 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44 b Fu(is)h(equiv)-5
17627b(alen)m(t)46 b(to)g Ft(vi-command)c Fu(\()p Ft(vi-move)h
17628Fu(is)i(also)h(a)1110 1817 y(synon)m(ym\);)41 b Ft(emacs)c
17629Fu(is)h(equiv)-5 b(alen)m(t)39 b(to)f Ft(emacs-standard)p
17630Fu(.)59 b(Applications)1110 1927 y(ma)m(y)32 b(add)e(additional)i
a6ae8f35 17631(names.)43 b(The)30 b(default)h(v)-5 b(alue)32 b(is)f
b9ed20ac 17632Ft(emacs)p Fu(.)41 b(The)30 b(v)-5 b(alue)1110 2037 y(of)31
a6ae8f35 17633b(the)f Ft(editing-mode)d Fu(v)-5 b(ariable)31 b(also)h(a\013ects)f
b9ed20ac
CR
17634(the)g(default)g(k)m(eymap.)630 2193 y Ft(keyseq-timeout)1110
176352303 y Fu(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
17636(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 2412
b729dac1 17637y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
b9ed20ac 17638(form)g(a)g(complete)h(k)m(ey)1110 2522 y(sequence)j(using)e(the)i
b729dac1 17639(input)e(read)h(so)g(far,)h(or)g(can)f(tak)m(e)i(additional)f(input)
b9ed20ac 176401110 2632 y(to)g(complete)g(a)f(longer)h(k)m(ey)f(sequence\).)49
b729dac1 17641b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h(within)1110
b9ed20ac
CR
176422741 y(the)43 b(timeout,)48 b(Readline)43 b(will)g(use)g(the)g(shorter)
17643g(but)f(complete)j(k)m(ey)e(se-)1110 2851 y(quence.)c(Readline)26
b729dac1 17644b(uses)f(this)h(v)-5 b(alue)26 b(to)g(determine)g(whether)f(or)g(not)h
b9ed20ac 17645(input)1110 2960 y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m
b729dac1 17646(t)f(input)g(source)h(\()p Ft(rl_instream)d Fu(b)m(y)i(default\).)1110
b9ed20ac 176473070 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
8a0829e9 17648(milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
b9ed20ac 176491110 3180 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
8a0829e9 17650(additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
b9ed20ac 17651b(is)1110 3289 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
8a0829e9 17652(equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
b9ed20ac 17653b(alue,)1110 3399 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
6d69b625 17654(k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
b9ed20ac
CR
176553508 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
17656b(alue)31 b(is)g Ft(500)p Fu(.)630 3665 y Ft(mark-directories)1110
176573774 y Fu(If)38 b(set)g(to)h(`)p Ft(on)p Fu(',)i(completed)e(directory)
6d69b625 17658f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
b9ed20ac
CR
176593884 y(The)30 b(default)g(is)h(`)p Ft(on)p Fu('.)630
176604041 y Ft(mark-modified-lines)1110 4150 y Fu(This)k(v)-5
6d69b625 17661b(ariable,)38 b(when)d(set)h(to)h(`)p Ft(on)p Fu(',)g(causes)g
b9ed20ac 17662(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 4260 y(terisk)f(\(`)p
6d69b625 17663Ft(*)p Fu('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f
b9ed20ac 17664(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 4369 y(This)d(v)-5
6d69b625 17665b(ariable)31 b(is)f(`)p Ft(off)p Fu(')g(b)m(y)g(default.)630
b9ed20ac 176664526 y Ft(mark-symlinked-directori)o(es)1110 4635 y Fu(If)59
6d69b625 17667b(set)h(to)g(`)p Ft(on)p Fu(',)67 b(completed)60 b(names)f(whic)m(h)g
b9ed20ac 17668(are)h(sym)m(b)s(olic)g(links)f(to)1110 4745 y(directories)71
6d69b625 17669b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
b9ed20ac 17670b(to)g(the)g(v)-5 b(alue)70 b(of)1110 4855 y Ft(mark-directories)p
6d69b625 17671Fu(\).)37 b(The)30 b(default)g(is)g(`)p Ft(off)p Fu('.)630
7a8455e4 176725011 y Ft(match-hidden-files)1110 5121 y Fu(This)21 b(v)-5
6d69b625 17673b(ariable,)25 b(when)d(set)g(to)h(`)p Ft(on)p Fu(',)h(causes)f
7a8455e4 17674(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 5230
6d69b625 17675y(names)44 b(b)s(egin)g(with)g(a)g(`)p Ft(.)p Fu(')g(\(hidden)f
7a8455e4 17676(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 5340
6d69b625 17677y(completion.)75 b(If)41 b(set)g(to)h(`)p Ft(off)p Fu(',)i(the)e
7a8455e4
CR
17678(leading)g(`)p Ft(.)p Fu(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)p
17679eop end
e2520247
CR
17680%%Page: 130 136
17681TeXDict begin 130 135 bop 150 -116 a Fu(Chapter)30 b(8:)41
17682b(Command)29 b(Line)i(Editing)2062 b(130)1110 299 y(the)34
7a8455e4
CR
17683b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)53
17684b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Ft(on)p Fu(')g(b)m(y)1110
d052bd6f
CR
17685408 y(default.)630 555 y Ft(menu-complete-display-pr)o(efix)1110
17686664 y Fu(If)f(set)h(to)g(`)p Ft(on)p Fu(',)h(men)m(u)e(completion)i
7a8455e4 17687(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
d052bd6f
CR
17688774 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)s
17689(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 883 y(through)30
7a8455e4 17690b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Ft(off)p
d052bd6f 17691Fu('.)630 1029 y Ft(output-meta)1110 1139 y Fu(If)35
7a8455e4 17692b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)f(c)m
d052bd6f 17693(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1249 y(set)h(directly)g
7a8455e4 17694(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
d052bd6f 17695b(The)1110 1358 y(default)26 b(is)f(`)p Ft(off)p Fu(',)i(but)e
7a8455e4 17696(Readline)h(will)g(set)g(it)g(to)h(`)p Ft(on)p Fu(')e(if)h(the)f(lo)s
d052bd6f 17697(cale)j(con)m(tains)1110 1468 y(eigh)m(t-bit)38 b(c)m(haracters.)61
b9ed20ac 17698b(This)36 b(v)-5 b(ariable)37 b(is)g(dep)s(enden)m(t)e(on)h(the)h
d052bd6f 17699Ft(LC_CTYPE)1110 1577 y Fu(lo)s(cale)32 b(category)-8
b9ed20ac 17700b(,)33 b(and)d(ma)m(y)h(c)m(hange)g(if)g(the)f(lo)s(cale)i(is)f(c)m
d052bd6f 17701(hanged.)630 1724 y Ft(page-completions)1110 1833 y Fu(If)i(set)i(to)f
b9ed20ac 17702(`)p Ft(on)p Fu(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
7a8455e4 17703Ft(more)p Fu(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
d052bd6f 177041943 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
7a8455e4 1770547 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Ft(on)p Fu(')1110
d052bd6f
CR
177062052 y(b)m(y)e(default.)630 2198 y Ft(print-completions-horizo)o(ntal)o
17707(ly)1110 2308 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g
7a8455e4 17708(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
d052bd6f
CR
177092418 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
17710(than)g(do)m(wn)g(the)h(screen.)1110 2527 y(The)30 b(default)g(is)h(`)p
17711Ft(off)p Fu('.)630 2673 y Ft(revert-all-at-newline)1110
177122783 y Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f
7a8455e4 17713(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
d052bd6f
CR
177142892 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41
17715b(By)29 b(default,)g(history)g(lines)1110 3002 y(ma)m(y)42
a8fd3f3e 17716b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
d052bd6f
CR
17717(across)g(calls)h(to)1110 3112 y Ft(readline\(\))p Fu(.)38
17718b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 3258
17719y Ft(search-ignore-case)1110 3367 y Fu(If)j(set)g(to)h(`)p
17720Ft(on)p Fu(',)h(Readline)e(p)s(erforms)f(incremen)m(tal)i(and)f
17721(non-incremen)m(tal)1110 3477 y(history)27 b(list)g(searc)m(hes)h(in)f
17722(a)g(case-insensitiv)m(e)j(fashion.)39 b(The)26 b(default)h(v)-5
17723b(alue)1110 3587 y(is)30 b(`)p Ft(off)p Fu('.)630 3733
17724y Ft(show-all-if-ambiguous)1110 3842 y Fu(This)f(alters)i(the)f
6d69b625 17725(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
d052bd6f 17726b(If)29 b(set)1110 3952 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h)
6d69b625 17727g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
d052bd6f
CR
177281110 4061 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
17729(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 4171 y(The)30
15baad62 17730b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(off)p Fu('.)630
d052bd6f 177314317 y Ft(show-all-if-unmodified)1110 4427 y Fu(This)38
15baad62 17732b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
d052bd6f 17733(functions)e(in)h(a)1110 4536 y(fashion)25 b(similar)h(to)g
15baad62 17734Fr(sho)m(w-all-if-am)m(biguous)p Fu(.)41 b(If)25 b(set)h(to)h(`)p
d052bd6f 17735Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)1110 4646 y(ha)m(v)m(e)32
15baad62 17736b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
d052bd6f
CR
17737(ossible)f(par-)1110 4756 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
17738f(completions)h(don't)f(share)g(a)h(common)1110 4865
15baad62 17739y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
d052bd6f 17740(immediately)i(instead)e(of)h(ring-)1110 4975 y(ing)g(the)f(b)s(ell.)41
15baad62 17741b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
d052bd6f 17742Fu('.)630 5121 y Ft(show-mode-in-prompt)1110 5230 y Fu(If)24
e59452c7 17743b(set)h(to)g(`)p Ft(on)p Fu(',)g(add)f(a)h(string)f(to)h(the)f(b)s
d052bd6f 17744(eginning)g(of)g(the)h(prompt)e(indicating)1110 5340
e59452c7 17745y(the)33 b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)
d052bd6f 17746h(insertion.)49 b(The)32 b(mo)s(de)p eop end
e2520247
CR
17747%%Page: 131 137
17748TeXDict begin 131 136 bop 150 -116 a Fu(Chapter)30 b(8:)41
17749b(Command)29 b(Line)i(Editing)2062 b(131)1110 299 y(strings)45
e59452c7 17750b(are)h(user-settable)g(\(e.g.,)51 b Fr(emacs-mo)s(de-string)8
d052bd6f
CR
17751b Fu(\).)87 b(The)45 b(default)1110 408 y(v)-5 b(alue)31
17752b(is)f(`)p Ft(off)p Fu('.)630 558 y Ft(skip-completed-text)1110
17753667 y Fu(If)i(set)i(to)f(`)p Ft(on)p Fu(',)h(this)f(alters)g(the)g
17754(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
17755777 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
17756b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)1110
17757887 y(ing)k(completion)i(in)e(the)g(middle)g(of)g(a)h(w)m(ord.)46
17758b(If)32 b(enabled,)g(Readline)h(do)s(es)1110 996 y(not)41
e59452c7 17759b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
d052bd6f
CR
17760(c)m(haracters)1110 1106 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
17761(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
177621215 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
e59452c7 17763b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
d052bd6f
CR
177641325 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
17765(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 1435 y(`)p Ft(Makefile)p
b729dac1 17766Fu(')c(will)i(result)f(in)g(`)p Ft(Makefile)p Fu(')f(rather)h(than)h(`)
d052bd6f 17767p Ft(Makefilefile)p Fu(',)1110 1544 y(assuming)d(there)g(is)h(a)f
b729dac1 17768(single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
d052bd6f
CR
17769b(alue)1110 1654 y(is)30 b(`)p Ft(off)p Fu('.)630 1803
17770y Ft(vi-cmd-mode-string)1110 1913 y Fu(If)j(the)h Fr(sho)m(w-mo)s
879213c6 17771(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i(this)f(string)f
d052bd6f 17772(is)h(dis-)1110 2022 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)
879213c6 17773g(last)h(line)f(of)h(the)f(primary)f(prompt)g(when)1110
d052bd6f 177742132 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)
879213c6 17775g(mo)s(de.)46 b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110
d052bd6f 177762242 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f
879213c6 17777(standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110
d052bd6f 177782351 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is)
879213c6 17779g(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Ft(\\1)p
d052bd6f 17780Fu(')1110 2461 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s
879213c6 17781(egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110
d052bd6f
CR
177822570 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)
17783h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 2680
879213c6 17784y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
d052bd6f
CR
17785Ft(\(cmd\))p Fu('.)630 2829 y Ft(vi-ins-mode-string)1110
177862939 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5
879213c6 17787b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
d052bd6f
CR
177883049 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
17789(of)h(the)f(primary)f(prompt)g(when)1110 3158 y(vi)35
879213c6 17790b(editing)h(mo)s(de)e(is)i(activ)m(e)h(and)d(in)h(insertion)g(mo)s(de.)
d052bd6f 1779154 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 3268 y(panded)26
879213c6 17792b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g
d052bd6f 17793(meta-)h(and)e(con)m(trol)1110 3377 y(pre\014xes)34 b(and)g(bac)m
879213c6 17794(kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57
d052bd6f 17795b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 3487 y(and)23
879213c6 17796b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g
d052bd6f 17797(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 3597
6d69b625 17798y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h
d052bd6f 17799(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 3706
6d69b625 17800y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p
d052bd6f 17801Ft(\(ins\))p Fu('.)630 3856 y Ft(visible-stats)1110 3965
6d69b625
CR
17802y Fu(If)h(set)i(to)f(`)p Ft(on)p Fu(',)h(a)f(c)m(haracter)i(denoting)e
17803(a)g(\014le's)g(t)m(yp)s(e)g(is)g(app)s(ended)e(to)j(the)1110
d052bd6f
CR
178044075 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
17805b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)150 4224
17806y(Key)f(Bindings)630 4334 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h
6d69b625 17807(k)m(ey)g(bindings)e(in)h(the)g(init)g(\014le)g(is)g(simple.)75
d052bd6f 17808b(First)43 b(y)m(ou)630 4443 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)
6d69b625 17809h(the)g(command)f(that)i(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41
d052bd6f 17810b(The)27 b(follo)m(wing)630 4553 y(sections)37 b(con)m(tain)g(tables)g
6d69b625 17811(of)f(the)g(command)f(name,)j(the)e(default)g(k)m(eybinding,)h(if)f(an)
d052bd6f
CR
17812m(y)-8 b(,)630 4663 y(and)30 b(a)h(short)f(description)g(of)h(what)f
17813(the)g(command)h(do)s(es.)630 4792 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g
6d69b625 17814(name)g(of)g(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g
d052bd6f 17815(the)g(init)630 4902 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m
6d69b625 17816(ou)g(wish)f(to)h(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)
d052bd6f 17817630 5011 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
220537f2 17818b(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
d052bd6f 17819(and)630 5121 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
e59452c7 17820(terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
d052bd6f 17821b(The)40 b(name)h(of)630 5230 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
e59452c7 17822(expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
d052bd6f
CR
17823(what)h(y)m(ou)g(\014nd)e(most)630 5340 y(comfortable.)p
17824eop end
e2520247
CR
17825%%Page: 132 138
17826TeXDict begin 132 137 bop 150 -116 a Fu(Chapter)30 b(8:)41
17827b(Command)29 b(Line)i(Editing)2062 b(132)630 299 y(In)33
d052bd6f
CR
17828b(addition)h(to)g(command)g(names,)g(Readline)g(allo)m(ws)h(k)m(eys)g
17829(to)f(b)s(e)f(b)s(ound)f(to)i(a)g(string)630 408 y(that)d(is)f
17830(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g(\(a)h
17831Fr(macro)5 b Fu(\).)630 538 y(The)42 b Ft(bind)30 b(-p)42
17832b Fu(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)f
17833(bindings)g(in)h(a)630 647 y(format)28 b(that)h(can)f(b)s(e)f(put)g
17834(directly)i(in)m(to)f(an)g(initialization)j(\014le.)40
e2520247 17835b(See)28 b(Section)h(4.2)g([Bash)630 757 y(Builtins],)i(page)g(57.)630
d052bd6f
CR
17836906 y Fr(k)m(eyname)5 b Fu(:)42 b Fr(function-name)35
17837b Fu(or)c Fr(macro)1110 1015 y(k)m(eyname)k Fu(is)29
17838b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s(elled)e(out)h(in)g(English.)39
17839b(F)-8 b(or)30 b(example:)1350 1144 y Ft(Control-u:)45
17840b(universal-argument)1350 1254 y(Meta-Rubout:)f(backward-kill-word)1350
178411363 y(Control-o:)h(">)i(output")1110 1493 y Fu(In)94
17842b(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
17843(to)i(the)f(function)1110 1602 y Ft(universal-argument)p
17844Fu(,)124 b Fj(M-DEL)107 b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110
178451712 y Ft(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g
17846Fu(is)h(b)s(ound)e(to)j(run)d(the)i(macro)1110 1821 y(expressed)45
17847b(on)h(the)g(righ)m(t)g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)
17848h(text)h(`)p Ft(>)1110 1931 y(output)p Fu(')29 b(in)m(to)i(the)g
17849(line\).)1110 2060 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m
17850(haracter)g(names)f(are)g(recognized)h(while)1110 2170
17851y(pro)s(cessing)40 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60
17852b Fr(DEL)p Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f
17853Fr(LFD)p Fu(,)1110 2279 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p
17854Fu(,)f Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h Fr(SP)-8
17855b(A)m(CE)p Fu(,)31 b Fr(SPC)p Fu(,)e(and)h Fr(T)-8 b(AB)p
17856Fu(.)630 2428 y Ft(")p Fr(k)m(eyseq)r Ft(")p Fu(:)41
17857b Fr(function-name)36 b Fu(or)30 b Fr(macro)1110 2538
17858y(k)m(eyseq)k Fu(di\013ers)d(from)f Fr(k)m(eyname)37
17859b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110
178602647 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s(e)f(sp)s(eci\014ed,)h(b)m
17861(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)1110 2757
17862y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h Fu(Emacs)f(st)m(yle)i(k)m
17863(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110 2866
17864y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s(ecial)h(c)m
17865(haracter)g(names)f(are)g(not)1110 2976 y(recognized.)1350
178663105 y Ft("\\C-u":)46 b(universal-argument)1350 3215
17867y("\\C-x\\C-r":)f(re-read-init-file)1350 3324 y("\\e[11~":)g("Function)
17868h(Key)g(1")1110 3453 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
6d69b625 17869b Fj(C-u)64 b Fu(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
d052bd6f
CR
178703563 y Ft(universal-argument)39 b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g
17871(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 3673
6d69b625
CR
17872y(C-r)p Fu(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
17873Ft(re-read-init-file)p Fu(,)c(and)j(`)p Ft(ESC)h([)g(1)g(1)1110
d052bd6f
CR
178743782 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
17875Ft(Function)e(Key)g(1)p Fu('.)630 3931 y(The)g(follo)m(wing)i
6e51e0d0 17876Fm(gnu)f Fu(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
d052bd6f
CR
17877b(ailable)32 b(when)d(sp)s(ecifying)630 4041 y(k)m(ey)i(sequences:)630
178784189 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630
178794338 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 4487 y
6e51e0d0 17880Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630
d052bd6f 178814635 y Fj(\\\\)384 b Fu(bac)m(kslash)630 4784 y Fj(\\)p
6e51e0d0 17882Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark)630
d052bd6f
CR
178834933 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s
17884(ostrophe)630 5082 y(In)d(addition)h(to)g(the)g Fm(gnu)f
e59452c7 17885Fu(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
d052bd6f
CR
17886(bac)m(kslash)630 5191 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
178875340 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))p eop end
e2520247
CR
17888%%Page: 133 139
17889TeXDict begin 133 138 bop 150 -116 a Fu(Chapter)30 b(8:)41
17890b(Command)29 b(Line)i(Editing)2062 b(133)630 299 y Ft(\\b)384
d052bd6f
CR
17891b Fu(bac)m(kspace)630 456 y Ft(\\d)g Fu(delete)630 613
17892y Ft(\\f)g Fu(form)30 b(feed)630 770 y Ft(\\n)384 b Fu(newline)630
17893928 y Ft(\\r)g Fu(carriage)32 b(return)630 1085 y Ft(\\t)384
17894b Fu(horizon)m(tal)32 b(tab)630 1242 y Ft(\\v)384 b Fu(v)m(ertical)32
17895b(tab)630 1399 y Ft(\\)p Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m
17896(haracter)g(whose)e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5
17897b(alue)35 b Fr(nnn)e Fu(\(one)i(to)1110 1509 y(three)c(digits\))630
178981666 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g
b9ed20ac 17899(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
d052bd6f
CR
17900b(alue)39 b Fr(HH)1110 1775 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
17901(digits\))630 1933 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g
b9ed20ac 17902(macro,)i(single)e(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)
d052bd6f 17903630 2042 y(indicate)23 b(a)e(macro)h(de\014nition.)38
b9ed20ac 17904b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f
d052bd6f 17905(name.)38 b(In)630 2152 y(the)22 b(macro)f(b)s(o)s(dy)-8
b9ed20ac 17906b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m
d052bd6f 17907(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 2261 y(will)j(quote)h(an)m
b9ed20ac 17908(y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
6e51e0d0 17909b(`)p Ft(")p Fu(')h(and)g(`)p Ft(')p Fu('.)69 b(F)-8
d052bd6f 17910b(or)630 2371 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
6e51e0d0 17911(mak)m(e)h(`)p Fj(C-x)j Ft(\\)p Fu(')c(insert)f(a)h(single)h(`)p
d052bd6f
CR
17912Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 2504 y Ft("\\C-x\\\\":)45
17913b("\\\\")150 2701 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
17914150 2848 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
278286c9 17915(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
d052bd6f 179162958 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
278286c9 17917(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
d052bd6f 17918(erformed)f(as)i(the)150 3067 y(result)f(of)h(tests.)41
278286c9 17919b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
d052bd6f 179203225 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h
278286c9 17921(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
d052bd6f 17922(the)630 3334 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h
879213c6 17923(application)g(using)f(Readline.)59 b(The)36 b(text)h(of)f(the)h(test,)
d052bd6f 17924630 3444 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f
6d69b625 17925(to)h(the)g(end)f(of)h(the)f(line;)i(unless)e(otherwise)630
d052bd6f
CR
179263553 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i
17927(it.)630 3711 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e
6d69b625 17928Fu(form)i(of)g(the)h Ft($if)e Fu(directiv)m(e)j(is)e(used)f(to)i(test)g
d052bd6f 17929(whether)e(Read-)1110 3820 y(line)44 b(is)f(in)g Ft(emacs)f
6d69b625 17930Fu(or)h Ft(vi)g Fu(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g
d052bd6f 17931(conjunction)1110 3930 y(with)c(the)h(`)p Ft(set)29 b(keymap)p
6d69b625 17932Fu(')38 b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
d052bd6f
CR
179334039 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
17934Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 4149 y(starting)f(out)g
17935(in)f Ft(emacs)f Fu(mo)s(de.)630 4306 y Ft(term)288 b
6e51e0d0 17936Fu(The)26 b Ft(term=)g Fu(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
d052bd6f 17937(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 4416 y(ings,)38
6e51e0d0 17938b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
d052bd6f 17939(the)g(terminal's)1110 4525 y(function)24 b(k)m(eys.)39
6e51e0d0 17940b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
d052bd6f 17941Ft(=)p Fu(')g(is)g(tested)h(against)1110 4635 y(b)s(oth)k(the)h(full)g
6e51e0d0 17942(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
d052bd6f 17943(terminal)1110 4744 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
6e51e0d0 17944Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i Ft(sun)e Fu(to)h(matc)m(h)g(b)s
d052bd6f
CR
17945(oth)f Ft(sun)g Fu(and)1110 4854 y Ft(sun-cmd)p Fu(,)c(for)h(instance.)
17946630 5011 y Ft(version)144 b Fu(The)44 b Ft(version)f
e59452c7 17947Fu(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s(erform)d(comparisons)i
d052bd6f 17948(against)1110 5121 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74
e59452c7 17949b(The)42 b Ft(version)d Fu(expands)i(to)h(the)g(curren)m(t)1110
d052bd6f 179505230 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h
e59452c7 17951(op)s(erators)f(includes)f(`)p Ft(=)p Fu(')h(\(and)1110
d052bd6f 179525340 y(`)p Ft(==)p Fu('\),)33 b(`)p Ft(!=)p Fu(',)f(`)p
e59452c7
CR
17953Ft(<=)p Fu(',)h(`)p Ft(>=)p Fu(',)f(`)p Ft(<)p Fu(',)h(and)e(`)p
17954Ft(>)p Fu('.)46 b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h
d052bd6f 17955(on)p eop end
e2520247
CR
17956%%Page: 134 140
17957TeXDict begin 134 139 bop 150 -116 a Fu(Chapter)30 b(8:)41
17958b(Command)29 b(Line)i(Editing)2062 b(134)1110 299 y(the)34
d052bd6f
CR
17959b(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g(consists)h(of)f(a)g(ma)5
17960b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110 408 y(an)45
b9ed20ac 17961b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44 b(an)i(optional)g(minor)f
d052bd6f 17962(v)m(ersion)h(\(e.g.,)1110 518 y(`)p Ft(7.1)p Fu('\).)40
b9ed20ac 17963b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g(omitted,)h(it)f(is)g(assumed)
d052bd6f 17964f(to)h(b)s(e)f(`)p Ft(0)p Fu('.)40 b(The)1110 628 y(op)s(erator)34
b9ed20ac 17965b(ma)m(y)g(b)s(e)f(separated)g(from)g(the)h(string)f
d052bd6f 17966Ft(version)f Fu(and)h(from)g(the)1110 737 y(v)m(ersion)39
6d69b625 17967b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f(whitespace.)67
d052bd6f 17968b(The)38 b(follo)m(wing)i(example)1110 847 y(sets)31
6d69b625 17969b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m(ersion)f(b)s(eing)g
d052bd6f
CR
17970(used)g(is)g(7.0)i(or)e(new)m(er:)1350 981 y Ft($if)47
17971b(version)f(>=)h(7.0)1350 1091 y(set)g(show-mode-in-prompt)42
17972b(on)1350 1200 y($endif)630 1360 y(application)1110 1469
6d69b625 17973y Fu(The)21 b Fr(application)j Fu(construct)e(is)g(used)f(to)i(include)
d052bd6f 17974f(application-sp)s(eci\014c)h(set-)1110 1579 y(tings.)39
6d69b625 17975b(Eac)m(h)26 b(program)e(using)g(the)h(Readline)g(library)g(sets)g(the)
d052bd6f 17976g Fr(application)1110 1689 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g
6d69b625 17977(for)f(a)g(particular)h(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g
d052bd6f 17978(used)f(to)1110 1798 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e
6d69b625 17979(useful)g(for)h(a)g(sp)s(eci\014c)f(program.)48 b(F)-8
d052bd6f
CR
17980b(or)1110 1908 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f
17981(a)i(k)m(ey)f(sequence)h(that)f(quotes)1110 2017 y(the)e(curren)m(t)f
17982(or)g(previous)g(w)m(ord)g(in)g(Bash:)1350 2152 y Ft($if)47
17983b(Bash)1350 2262 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)
179841350 2371 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 2481 y($endif)630
179852640 y(variable)96 b Fu(The)33 b Fr(v)-5 b(ariable)39
879213c6 17986b Fu(construct)33 b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g
d052bd6f 17987(Readline)1110 2750 y(v)-5 b(ariables)32 b(and)f(v)-5
879213c6 17988b(alues.)45 b(The)32 b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i
d052bd6f 17989(`)p Ft(=)p Fu(',)1110 2859 y(`)p Ft(==)p Fu(',)49 b(and)44
879213c6 17990b(`)p Ft(!=)p Fu('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
d052bd6f 17991(b)s(e)g(separated)g(from)g(the)1110 2969 y(comparison)25
879213c6 17992b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
d052bd6f 17993(e)f(separated)1110 3078 y(from)33 b(the)h(v)-5 b(alue)35
879213c6 17994b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52
d052bd6f 17995b(Both)35 b(string)1110 3188 y(and)i(b)s(o)s(olean)g(v)-5
879213c6 17996b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39
d052bd6f 17997b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 3298 y(tested)46
879213c6
CR
17998b(against)g(the)f(v)-5 b(alues)46 b Fr(on)f Fu(and)f
17999Fr(o\013)p Fu(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110
d052bd6f
CR
180003407 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e
18001Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 3542 y
18002Ft($if)47 b(editing-mode)d(==)k(emacs)1350 3651 y(set)f
18003(show-mode-in-prompt)42 b(on)1350 3761 y($endif)150 3920
6d69b625
CR
18004y($endif)192 b Fu(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)
18005g(example,)h(terminates)g(an)g Ft($if)e Fu(command.)150
d052bd6f 180064080 y Ft($else)240 b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
6d69b625 18007(the)f Ft($if)g Fu(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
d052bd6f 18008(fails.)150 4239 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m
6d69b625 18009(es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
d052bd6f 18010(commands)630 4349 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
6d69b625 18011b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
d052bd6f
CR
18012(from)630 4458 y Ft(/etc/inputrc)p Fu(:)870 4593 y Ft($include)46
18013b(/etc/inputrc)150 4792 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150
180144939 y Fu(Here)27 b(is)f(an)h(example)g(of)f(an)h Fr(inputrc)k
e59452c7 18015Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
d052bd6f 18016b(ariable)27 b(assignmen)m(t,)i(and)150 5049 y(conditional)j(syn)m
e59452c7 18017(tax.)p eop end
e2520247
CR
18018%%Page: 135 141
18019TeXDict begin 135 140 bop 150 -116 a Fu(Chapter)30 b(8:)41
18020b(Command)29 b(Line)i(Editing)2062 b(135)390 408 y Ft(#)47
278286c9
CR
18021b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
18022(editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
18023(Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
18024g(FTP,)g(Bash,)h(and)g(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g
18025(re-read)f(the)h(inputrc)f(file)g(with)h(C-x)g(C-r.)390
18026956 y(#)g(Lines)g(beginning)e(with)i('#')g(are)g(comments.)390
d76edd30
CR
180271066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(system-wide)e
18028(bindings)h(and)g(variable)390 1285 y(#)h(assignments)e(from)i
18029(/etc/Inputrc)390 1395 y($include)f(/etc/Inputrc)390
180301614 y(#)390 1724 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)
18031390 1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
5e13499c
CR
180322381 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the)
18033h(function)f(name)g(is)h(ignored)390 2600 y(#)390 2710
18034y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390 2819 y(#)390
180352929 y(#"\\M-OD":)379 b(backward-char)390 3039 y(#"\\M-OC":)g
18036(forward-char)390 3148 y(#"\\M-OA":)g(previous-history)390
180373258 y(#"\\M-OB":)g(next-history)390 3367 y(#)390 3477
18038y(#)47 b(Arrow)g(keys)f(in)i(ANSI)e(mode)390 3587 y(#)390
180393696 y("\\M-[D":)380 b(backward-char)390 3806 y("\\M-[C":)g
18040(forward-char)390 3915 y("\\M-[A":)g(previous-history)390
180414025 y("\\M-[B":)g(next-history)390 4134 y(#)390 4244
18042y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390
180434354 y(#)390 4463 y(#"\\M-\\C-OD":)331 b(backward-char)390
180444573 y(#"\\M-\\C-OC":)g(forward-char)390 4682 y(#"\\M-\\C-OA":)g
18045(previous-history)390 4792 y(#"\\M-\\C-OB":)g(next-history)390
180464902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
18047390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
37c41ab1 180485340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
e2520247
CR
18049%%Page: 136 142
18050TeXDict begin 136 141 bop 150 -116 a Fu(Chapter)30 b(8:)41
18051b(Command)29 b(Line)i(Editing)2062 b(136)390 299 y Ft(#"\\M-\\C-[A":)
ad4aef08 18052331 b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
37c41ab1
CR
18053628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
18054y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the)
18055g(default.)390 1176 y(TAB:)g(complete)390 1395 y(#)g(Macros)g(that)f
18056(are)h(convenient)e(for)i(shell)f(interaction)390 1504
18057y($if)h(Bash)390 1614 y(#)g(edit)g(the)g(path)390 1724
18058y("\\C-xp":)f("PATH=${PATH}\\e\\C-e\\C-a)o(\\ef)o(\\C-f)o(")390
180591833 y(#)h(prepare)f(to)h(type)g(a)h(quoted)e(word)g(--)390
5e13499c
CR
180601943 y(#)h(insert)g(open)f(and)h(close)f(double)h(quotes)390
180612052 y(#)g(and)g(move)g(to)g(just)g(after)f(the)h(open)g(quote)390
180622162 y("\\C-x\\"":)e("\\"\\"\\C-b")390 2271 y(#)i(insert)g(a)g
18063(backslash)e(\(testing)h(backslash)f(escapes)390 2381
18064y(#)i(in)h(sequences)d(and)i(macros\))390 2491 y("\\C-x\\\\":)e("\\\\")
18065390 2600 y(#)i(Quote)g(the)g(current)f(or)h(previous)e(word)390
180662710 y("\\C-xq":)h("\\eb\\"\\ef\\"")390 2819 y(#)h(Add)g(a)h(binding)e
18067(to)h(refresh)f(the)h(line,)f(which)g(is)h(unbound)390
180682929 y("\\C-xr":)f(redraw-current-line)390 3039 y(#)h(Edit)g(variable)f
18069(on)h(current)f(line.)390 3148 y("\\M-\\C-v":)f
18070("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-)o(a\\C-)o(y=")390 3258
18071y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
18072(available)390 3587 y(set)f(bell-style)e(visible)390
180733806 y(#)i(don't)g(strip)f(characters)f(to)i(7)h(bits)e(when)h(reading)
18074390 3915 y(set)g(input-meta)e(on)390 4134 y(#)i(allow)g(iso-latin1)e
18075(characters)g(to)i(be)g(inserted)f(rather)390 4244 y(#)h(than)g
18076(converted)e(to)j(prefix-meta)c(sequences)390 4354 y(set)j
18077(convert-meta)d(off)390 4573 y(#)j(display)f(characters)f(with)i(the)g
18078(eighth)f(bit)h(set)g(directly)390 4682 y(#)g(rather)g(than)f(as)h
18079(meta-prefixed)e(characters)390 4792 y(set)i(output-meta)e(on)390
e6983002
CR
180805011 y(#)i(if)h(there)e(are)h(150)g(or)g(more)g(possible)e(completions)
18081g(for)i(a)g(word,)390 5121 y(#)g(ask)g(whether)f(or)h(not)g(the)g(user)
18082g(wants)f(to)h(see)g(all)g(of)g(them)390 5230 y(set)g
37c41ab1 18083(completion-query-items)42 b(150)p eop end
e2520247
CR
18084%%Page: 137 143
18085TeXDict begin 137 142 bop 150 -116 a Fu(Chapter)30 b(8:)41
18086b(Command)29 b(Line)i(Editing)2062 b(137)390 299 y Ft(#)47
278286c9 18087b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
5e13499c 18088628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
124d67cd
CR
18089847 y($endif)150 1089 y Fs(8.4)68 b(Bindable)45 b(Readline)i(Commands)
18090150 1248 y Fu(This)32 b(section)h(describ)s(es)f(Readline)h(commands)f
c302751c 18091(that)h(ma)m(y)h(b)s(e)d(b)s(ound)g(to)i(k)m(ey)g(sequences.)48
124d67cd 18092b(Y)-8 b(ou)33 b(can)150 1358 y(list)40 b(y)m(our)f(k)m(ey)i(bindings)d
6e51e0d0 18093(b)m(y)h(executing)i Ft(bind)29 b(-P)39 b Fu(or,)j(for)d(a)h(more)g
124d67cd 18094(terse)g(format,)i(suitable)e(for)f(an)150 1468 y Fr(inputrc)34
6e51e0d0 18095b Fu(\014le,)29 b Ft(bind)g(-p)p Fu(.)40 b(\(See)30 b(Section)f(4.2)h
e2520247 18096([Bash)g(Builtins],)g(page)g(57.\))41 b(Command)28 b(names)h(without)
124d67cd
CR
18097150 1577 y(an)h(accompan)m(ying)i(k)m(ey)f(sequence)g(are)g(un)m(b)s
18098(ound)d(b)m(y)i(default.)275 1713 y(In)25 b(the)h(follo)m(wing)i
6e51e0d0
CR
18099(descriptions,)f Fr(p)s(oin)m(t)h Fu(refers)e(to)h(the)f(curren)m(t)g
18100(cursor)g(p)s(osition,)h(and)f Fr(mark)31 b Fu(refers)150
124d67cd 181011822 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 18102Ft(set-mark)d Fu(command.)66 b(The)38 b(text)i(b)s(et)m(w)m(een)g(the)f
124d67cd
CR
18103(p)s(oin)m(t)g(and)150 1932 y(mark)30 b(is)h(referred)e(to)i(as)g(the)f
18104Fr(region)p Fu(.)150 2132 y Fk(8.4.1)63 b(Commands)42
18105b(F)-10 b(or)41 b(Mo)m(ving)150 2304 y Ft(beginning-of-line)26
18106b(\(C-a\))630 2414 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f
18107(curren)m(t)g(line.)150 2574 y Ft(end-of-line)d(\(C-e\))630
181082684 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
181092844 y Ft(forward-char)c(\(C-f\))630 2954 y Fu(Mo)m(v)m(e)32
18110b(forw)m(ard)e(a)h(c)m(haracter.)150 3114 y Ft(backward-char)c(\(C-b\))
18111630 3223 y Fu(Mo)m(v)m(e)32 b(bac)m(k)g(a)e(c)m(haracter.)150
181123384 y Ft(forward-word)d(\(M-f\))630 3493 y Fu(Mo)m(v)m(e)32
5e13499c 18113b(forw)m(ard)e(to)h(the)f(end)g(of)g(the)h(next)f(w)m(ord.)41
37c41ab1 18114b(W)-8 b(ords)30 b(are)h(comp)s(osed)f(of)g(letters)i(and)630
124d67cd
CR
181153603 y(digits.)150 3763 y Ft(backward-word)27 b(\(M-b\))630
181163873 y Fu(Mo)m(v)m(e)36 b(bac)m(k)e(to)g(the)g(start)g(of)g(the)g
37c41ab1 18117(curren)m(t)f(or)g(previous)g(w)m(ord.)50 b(W)-8 b(ords)34
124d67cd 18118b(are)g(comp)s(osed)630 3982 y(of)d(letters)g(and)f(digits.)150
602eae4d
CR
181194143 y Ft(shell-forward-word)25 b(\(M-C-f\))630 4252
18120y 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)
18121m(ord.)40 b(W)-8 b(ords)28 b(are)g(delimited)h(b)m(y)f(non-quoted)630
124d67cd 181224362 y(shell)j(metac)m(haracters.)150 4522 y Ft(shell-backward-word)25
602eae4d
CR
18123b(\(M-C-b\))630 4632 y Fu(Mo)m(v)m(e)37 b(bac)m(k)e(to)h(the)f(start)g
18124(of)g(the)g(curren)m(t)g(or)f(previous)h(w)m(ord.)53
18125b(W)-8 b(ords)35 b(are)g(delimited)630 4741 y(b)m(y)30
18126b(non-quoted)h(shell)f(metac)m(haracters.)150 4902 y
18127Ft(previous-screen-line)25 b(\(\))630 5011 y Fu(A)m(ttempt)41
18128b(to)g(mo)m(v)m(e)h(p)s(oin)m(t)e(to)h(the)f(same)h(ph)m(ysical)g
18129(screen)f(column)g(on)g(the)g(previous)630 5121 y(ph)m(ysical)26
18130b(screen)f(line.)39 b(This)24 b(will)i(not)f(ha)m(v)m(e)h(the)f
18131(desired)g(e\013ect)h(if)f(the)h(curren)m(t)e(Readline)630
181325230 y(line)k(do)s(es)f(not)g(tak)m(e)i(up)d(more)i(than)f(one)g(ph)m
18133(ysical)h(line)g(or)f(if)g(p)s(oin)m(t)h(is)f(not)h(greater)g(than)630
181345340 y(the)j(length)f(of)h(the)f(prompt)g(plus)f(the)i(screen)f(width.)
18135p eop end
e2520247
CR
18136%%Page: 138 144
18137TeXDict begin 138 143 bop 150 -116 a Fu(Chapter)30 b(8:)41
18138b(Command)29 b(Line)i(Editing)2062 b(138)150 299 y Ft(next-screen-line)
124d67cd
CR
1813926 b(\(\))630 408 y Fu(A)m(ttempt)g(to)f(mo)m(v)m(e)i(p)s(oin)m(t)d(to)
18140i(the)e(same)i(ph)m(ysical)f(screen)g(column)f(on)h(the)f(next)h(ph)m
18141(ysical)630 518 y(screen)e(line.)39 b(This)23 b(will)g(not)h(ha)m(v)m
18142(e)h(the)e(desired)g(e\013ect)i(if)e(the)g(curren)m(t)h(Readline)g
18143(line)f(do)s(es)630 628 y(not)k(tak)m(e)i(up)e(more)g(than)g(one)g(ph)m
18144(ysical)h(line)g(or)f(if)g(the)h(length)f(of)h(the)f(curren)m(t)g
18145(Readline)630 737 y(line)k(is)f(not)h(greater)g(than)f(the)h(length)g
18146(of)f(the)h(prompt)e(plus)h(the)g(screen)h(width.)150
e6983002 18147916 y Ft(clear-display)c(\(M-C-l\))630 1026 y Fu(Clear)33
d37a4722 18148b(the)g(screen)g(and,)h(if)e(p)s(ossible,)i(the)f(terminal's)g
e6983002 18149(scrollbac)m(k)i(bu\013er,)e(then)f(redra)m(w)630 1136
d37a4722 18150y(the)f(curren)m(t)f(line,)h(lea)m(ving)h(the)e(curren)m(t)h(line)f(at)
e6983002
CR
18151h(the)g(top)g(of)f(the)h(screen.)150 1315 y Ft(clear-screen)c(\(C-l\))
18152630 1424 y Fu(Clear)35 b(the)f(screen,)i(then)e(redra)m(w)g(the)h
d37a4722 18153(curren)m(t)f(line,)i(lea)m(ving)g(the)f(curren)m(t)f(line)h(at)g(the)
e6983002
CR
18154630 1534 y(top)c(of)f(the)h(screen.)150 1713 y Ft(redraw-current-line)
1815525 b(\(\))630 1823 y Fu(Refresh)30 b(the)g(curren)m(t)h(line.)41
18156b(By)30 b(default,)h(this)f(is)h(un)m(b)s(ound.)150 2041
d37a4722 18157y Fk(8.4.2)63 b(Commands)42 b(F)-10 b(or)41 b(Manipulating)h(The)f
e6983002
CR
18158(History)150 2223 y Ft(accept-line)27 b(\(Newline)h(or)i(Return\))630
181592333 y Fu(Accept)25 b(the)e(line)h(regardless)g(of)f(where)g(the)h
d37a4722 18160(cursor)e(is.)39 b(If)23 b(this)g(line)h(is)f(non-empt)m(y)-8
e6983002 18161b(,)26 b(add)c(it)630 2442 y(to)27 b(the)f(history)g(list)h(according)g
d37a4722 18162(to)g(the)f(setting)i(of)e(the)g Ft(HISTCONTROL)d Fu(and)j
e6983002 18163Ft(HISTIGNORE)630 2552 y Fu(v)-5 b(ariables.)42 b(If)30
d37a4722 18164b(this)h(line)g(is)g(a)g(mo)s(di\014ed)e(history)i(line,)g(then)f
e6983002
CR
18165(restore)i(the)f(history)f(line)h(to)630 2662 y(its)g(original)g
18166(state.)150 2841 y Ft(previous-history)26 b(\(C-p\))630
181672950 y Fu(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
18168(fetc)m(hing)g(the)g(previous)f(command.)150 3129 y Ft(next-history)d
18169(\(C-n\))630 3239 y Fu(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
d37a4722 18170(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
e6983002 181713418 y Ft(beginning-of-history)25 b(\(M-<\))630 3528
d37a4722 18172y Fu(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
e6983002 18173b(.)150 3707 y Ft(end-of-history)26 b(\(M->\))630 3816
d37a4722
CR
18174y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
18175b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150
e6983002 181763995 y Ft(reverse-search-history)24 b(\(C-r\))630 4105
d37a4722
CR
18177y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
18178(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
e6983002
CR
181794215 y(tory)26 b(as)h(necessary)-8 b(.)40 b(This)25 b(is)i(an)f
18180(incremen)m(tal)h(searc)m(h.)40 b(This)25 b(command)h(sets)h(the)f
18181(region)630 4324 y(to)31 b(the)g(matc)m(hed)g(text)g(and)f(activ)-5
18182b(ates)33 b(the)d(mark.)150 4503 y Ft(forward-search-history)24
18183b(\(C-s\))630 4613 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
d37a4722 18184(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
e6983002
CR
18185630 4723 y(history)38 b(as)g(necessary)-8 b(.)65 b(This)38
18186b(is)g(an)g(incremen)m(tal)h(searc)m(h.)65 b(This)37
18187b(command)h(sets)h(the)630 4832 y(region)31 b(to)g(the)g(matc)m(hed)g
18188(text)g(and)f(activ)-5 b(ates)33 b(the)d(mark.)150 5011
18189y Ft(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
18190b(\(M-p\))630 5121 y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
37c41ab1 18191(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
e6983002 18192(his-)630 5230 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
d37a4722 18193(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
e6983002
CR
181945340 y(user.)k(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
18195(ywhere)g(in)f(a)h(history)f(line.)p eop end
e2520247
CR
18196%%Page: 139 145
18197TeXDict begin 139 144 bop 150 -116 a Fu(Chapter)30 b(8:)41
18198b(Command)29 b(Line)i(Editing)2062 b(139)150 299 y Ft
e6983002
CR
18199(non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24
18200b(\(M-n\))630 408 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h(the)
18201e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)630
18202518 y(history)27 b(as)f(necessary)i(using)e(a)h(non-incremen)m(tal)g
18203(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i(the)630
18204628 y(user.)40 b(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
18205(ywhere)g(in)f(a)h(history)f(line.)150 784 y Ft(history-search-forward)
1820624 b(\(\))630 894 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i
18207(history)f(for)g(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f
18208(the)630 1003 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h
18209(p)s(oin)m(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h
18210(at)g(the)630 1113 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
18211b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
18212b(By)33 b(default,)g(this)630 1223 y(command)d(is)h(un)m(b)s(ound.)150
182131379 y Ft(history-search-backward)24 b(\(\))630 1489
18214y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
18215(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
182161598 y(start)g(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)
d37a4722 1821758 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
e6983002 182181708 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
d37a4722 18219b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
e6983002
CR
18220b(By)33 b(default,)g(this)630 1817 y(command)d(is)h(un)m(b)s(ound.)150
182211974 y Ft(history-substring-search)o(-for)o(ward)24 b(\(\))630
182222084 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
74d0116b 18223(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
e6983002 182242193 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
74d0116b 18225(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
e6983002 18226630 2303 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
124d67cd 18227(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
e6983002 18228(command)630 2412 y(is)e(un)m(b)s(ound.)150 2569 y Ft
124d67cd 18229(history-substring-search)o(-bac)o(kwar)o(d)24 b(\(\))630
e6983002 182302679 y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g
124d67cd 18231(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
e6983002 182322788 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
124d67cd 18233(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
e6983002 18234630 2898 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
124d67cd 18235(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
e6983002
CR
18236(command)630 3007 y(is)e(un)m(b)s(ound.)150 3164 y Ft(yank-nth-arg)d
18237(\(M-C-y\))630 3273 y Fu(Insert)37 b(the)g(\014rst)f(argumen)m(t)i(to)f
124d67cd 18238(the)h(previous)e(command)h(\(usually)g(the)g(second)g(w)m(ord)630
e6983002 182393383 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
124d67cd 18240b(With)32 b(an)g(argumen)m(t)g Fr(n)p Fu(,)g(insert)g(the)g
e6983002 18241Fr(n)p Fu(th)f(w)m(ord)g(from)630 3493 y(the)k(previous)f(command)h
124d67cd 18242(\(the)g(w)m(ords)g(in)f(the)h(previous)g(command)f(b)s(egin)h(with)f
e6983002 18243(w)m(ord)630 3602 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f
124d67cd 18244(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 18245(previous)630 3712 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h
124d67cd 18246Fr(n)e Fu(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e
e6983002
CR
18247(if)630 3821 y(the)e(`)p Ft(!)p Fj(n)p Fu(')f(history)g(expansion)g
18248(had)g(b)s(een)g(sp)s(eci\014ed.)150 3978 y Ft(yank-last-arg)d(\(M-.)i
18249(or)h(M-_\))630 4088 y Fu(Insert)k(last)i(argumen)m(t)g(to)g(the)f
124d67cd 18250(previous)f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
e6983002 182514197 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
6e51e0d0 18252(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Ft(yank-nth-arg)p
e6983002 18253Fu(.)630 4307 y(Successiv)m(e)26 b(calls)g(to)f Ft(yank-last-arg)c
6e51e0d0 18254Fu(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
e6983002 18255(inserting)630 4416 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
278286c9 18256s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
e6983002 18257(of)f(eac)m(h)h(line)630 4526 y(in)36 b(turn.)58 b(An)m(y)36
278286c9 18258b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
e6983002 18259(calls)h(determines)630 4635 y(the)d(direction)g(to)h(mo)m(v)m(e)g
278286c9 18260(through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
e6983002 18261(switc)m(hes)h(the)630 4745 y(direction)23 b(through)g(the)g(history)f
278286c9 18262(\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
e6983002 18263(facilities)630 4855 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
6e51e0d0 18264(argumen)m(t,)h(as)e(if)h(the)g(`)p Ft(!$)p Fu(')f(history)g(expansion)
e6983002
CR
18265h(had)f(b)s(een)630 4964 y(sp)s(eci\014ed.)150 5121 y
18266Ft(operate-and-get-next)e(\(C-o\))630 5230 y Fu(Accept)30
d37a4722 18267b(the)g(curren)m(t)e(line)i(for)f(return)f(to)h(the)h(calling)g
e6983002 18268(application)h(as)e(if)g(a)h(newline)f(had)630 5340 y(b)s(een)22
d37a4722 18269b(en)m(tered,)k(and)d(fetc)m(h)h(the)f(next)g(line)h(relativ)m(e)h(to)f
e6983002 18270(the)f(curren)m(t)g(line)h(from)f(the)g(history)p eop
d37a4722 18271end
e2520247
CR
18272%%Page: 140 146
18273TeXDict begin 140 145 bop 150 -116 a Fu(Chapter)30 b(8:)41
18274b(Command)29 b(Line)i(Editing)2062 b(140)630 299 y(for)31
e6983002
CR
18275b(editing.)43 b(A)31 b(n)m(umeric)f(argumen)m(t,)i(if)f(supplied,)f(sp)
18276s(eci\014es)h(the)g(history)f(en)m(try)i(to)f(use)630
e59452c7
CR
18277408 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 565
18278y Ft(fetch-history)d(\(\))630 675 y Fu(With)e(a)f(n)m(umeric)g(argumen)
18279m(t,)i(fetc)m(h)f(that)g(en)m(try)f(from)g(the)g(history)g(list)h(and)e
18280(mak)m(e)i(it)g(the)630 784 y(curren)m(t)30 b(line.)41
18281b(Without)30 b(an)g(argumen)m(t,)h(mo)m(v)m(e)g(bac)m(k)g(to)f(the)g
18282(\014rst)f(en)m(try)h(in)g(the)g(history)630 894 y(list.)150
182831090 y Fk(8.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
18284b(ext)150 1261 y Fj(end-of-file)27 b Ft(\(usually)h(C-d\))630
182851370 y Fu(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
e6983002 18286(for)f(example,)i(b)m(y)e Ft(stty)p Fu(.)39 b(If)25 b(this)h(c)m
e59452c7 18287(harac-)630 1480 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
e6983002 18288(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 18289(eginning)630 1590 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
e6983002 18290(it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fm(eof)p
e59452c7 18291Fu(.)150 1746 y Ft(delete-char)e(\(C-d\))630 1856 y Fu(Delete)35
c61bfbfd 18292b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
e59452c7 18293(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 1966
c61bfbfd
CR
18294y(as)e(the)f(tt)m(y)i Fm(eof)d Fu(c)m(haracter,)j(as)f
18295Fj(C-d)e Fu(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
e59452c7
CR
18296(e\013ects.)150 2122 y Ft(backward-delete-char)25 b(\(Rubout\))630
182972232 y Fu(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
d37a4722 18298b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
e59452c7
CR
182992341 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
183002498 y Ft(forward-backward-delete-)o(char)24 b(\(\))630
183012608 y Fu(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
37c41ab1 18302(unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
e59452c7 183032717 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
d37a4722 18304(ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
e59452c7
CR
183052827 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
183062983 y Ft(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 3093
6e51e0d0 18307y Fu(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
37c41ab1 18308(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
e59452c7
CR
183093203 y(sequences)d(lik)m(e)g Fj(C-q)p Fu(,)f(for)g(example.)150
183103359 y Ft(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
183113469 y Fu(Insert)g(y)m(ourself.)150 3626 y Ft(bracketed-paste-begin)25
18312b(\(\))630 3735 y Fu(This)f(function)h(is)f(in)m(tended)h(to)h(b)s(e)e
124d67cd 18313(b)s(ound)f(to)i(the)g Ft(")p Fu(brac)m(k)m(eted)h(paste)p
e59452c7 18314Ft(")f Fu(escap)s(e)h(sequence)630 3845 y(sen)m(t)38
124d67cd
CR
18315b(b)m(y)f(some)h(terminals,)i(and)d(suc)m(h)g(a)h(binding)e(is)i
18316(assigned)f(b)m(y)h(default.)62 b(It)38 b(allo)m(ws)630
e59452c7 183173954 y(Readline)33 b(to)g(insert)g(the)f(pasted)h(text)g(as)g(a)g
124d67cd 18318(single)g(unit)f(without)h(treating)h(eac)m(h)f(c)m(har-)630
e59452c7 183194064 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h(from)f(the)h(k)
124d67cd 18320m(eyb)s(oard.)66 b(The)39 b(c)m(haracters)h(are)f(inserted)630
e59452c7 183214173 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e(to)j
12beeabf 18322Ft(self-insert)c Fu(instead)j(of)h(executing)g(an)m(y)f(editing)630
e59452c7 183234283 y(commands.)630 4416 y(Brac)m(k)m(eted)38 b(paste)f(sets)f(the)h
e6983002 18324(region)f(\(the)h(c)m(haracters)g(b)s(et)m(w)m(een)g(p)s(oin)m(t)f(and)
e59452c7 18325g(the)g(mark\))630 4526 y(to)j(the)g(inserted)f(text.)65
e6983002 18326b(It)39 b(uses)f(the)g(concept)h(of)g(an)f Fl(active)i(mark)10
e59452c7 18327b Fu(:)57 b(when)38 b(the)g(mark)630 4635 y(is)d(activ)m(e,)k(Readline)
e6983002 18328c(redispla)m(y)h(uses)e(the)h(terminal's)h(standout)f(mo)s(de)f(to)i
e59452c7
CR
18329(denote)g(the)630 4745 y(region.)150 4902 y Ft(transpose-chars)26
18330b(\(C-t\))630 5011 y Fu(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)
e6983002 18331g(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
e59452c7 18332(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
e6983002 18333(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
e59452c7 18334g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
e6983002 18335(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
e59452c7
CR
18336b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
18337b(no)e(e\013ect.)p eop end
e2520247
CR
18338%%Page: 141 147
18339TeXDict begin 141 146 bop 150 -116 a Fu(Chapter)30 b(8:)41
18340b(Command)29 b(Line)i(Editing)2062 b(141)150 299 y Ft(transpose-words)
e59452c7
CR
1834126 b(\(M-t\))630 408 y Fu(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s
18342(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)
18343s(oin)m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
18344b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
18345(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
18346(w)m(ords)e(on)g(the)h(line.)150 797 y Ft(upcase-word)c(\(M-u\))630
18347907 y Fu(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
18348(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
183491016 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
18350(the)e(cursor.)150 1186 y Ft(downcase-word)d(\(M-l\))630
183511296 y Fu(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
18352(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
18353(ercase)630 1405 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
18354(v)m(e)i(the)f(cursor.)150 1575 y Ft(capitalize-word)26
18355b(\(M-c\))630 1684 y Fu(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
e6983002 18356(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
e59452c7
CR
18357(capitalize)630 1794 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
18358(mo)m(v)m(e)i(the)f(cursor.)150 1964 y Ft(overwrite-mode)26
18359b(\(\))630 2073 y Fu(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
a9fac3b2 18360b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
e59452c7 18361h(switc)m(hes)630 2183 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
a9fac3b2 18362b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
e59452c7 18363(t,)i(switc)m(hes)e(to)630 2292 y(insert)30 b(mo)s(de.)41
6e51e0d0 18364b(This)30 b(command)h(a\013ects)h(only)e Ft(emacs)f Fu(mo)s(de;)i
e59452c7 18365Ft(vi)f Fu(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2402
a9fac3b2 18366y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
d37a4722 18367Ft(readline\(\))c Fu(starts)k(in)f(insert)g(mo)s(de.)630
e59452c7 183682541 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
d37a4722 18369(ound)c(to)j Ft(self-insert)c Fu(replace)k(the)g(text)g(at)630
e59452c7 183702651 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
d37a4722 18371(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
e59452c7
CR
183722761 y Ft(backward-delete-char)25 b Fu(replace)31 b(the)g(c)m(haracter)
18373h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2900
d37a4722 18374y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
e59452c7
CR
183753110 y Fk(8.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
183763287 y Ft(kill-line)28 b(\(C-k\))630 3396 y Fu(Kill)k(the)f(text)i
7a257517
CR
18377(from)d(p)s(oin)m(t)i(to)g(the)f(end)g(of)g(the)h(line.)44
18378b(With)31 b(a)h(negativ)m(e)i(n)m(umeric)d(argu-)630
e59452c7 183793506 y(men)m(t,)g(kill)g(bac)m(kw)m(ard)g(from)f(the)g(cursor)g(to)h
7a257517 18380(the)g(b)s(eginning)e(of)i(the)g(curren)m(t)f(line.)150
e59452c7
CR
183813675 y Ft(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
183823785 y Fu(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h(cursor)g(to)g(the)g
7a257517 18383(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70 b(With)41
e59452c7 18384b(a)630 3895 y(negativ)m(e)47 b(n)m(umeric)e(argumen)m(t,)50
7a257517 18385b(kill)c(forw)m(ard)e(from)h(the)g(cursor)g(to)h(the)f(end)f(of)i(the)
e59452c7
CR
18386630 4004 y(curren)m(t)30 b(line.)150 4174 y Ft(unix-line-discard)c
18387(\(C-u\))630 4283 y Fu(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f
7a257517 18388(to)h(the)f(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150
e59452c7 183894453 y Ft(kill-whole-line)c(\(\))630 4562 y Fu(Kill)37
7a257517
CR
18390b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g
18391(where)f(p)s(oin)m(t)h(is.)59 b(By)36 b(default,)630
e59452c7
CR
183924672 y(this)30 b(is)h(un)m(b)s(ound.)150 4842 y Ft(kill-word)d(\(M-d\))
18393630 4951 y Fu(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
7a257517 18394(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 18395(the)g(end)630 5061 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
7a257517 18396b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Ft(forward-word)p
e59452c7
CR
18397Fu(.)150 5230 y Ft(backward-kill-word)25 b(\(M-DEL\))630
183985340 y Fu(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
7a257517 18399b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
e59452c7 18400Ft(backward-word)p Fu(.)p eop end
e2520247
CR
18401%%Page: 142 148
18402TeXDict begin 142 147 bop 150 -116 a Fu(Chapter)30 b(8:)41
18403b(Command)29 b(Line)i(Editing)2062 b(142)150 299 y Ft(shell-kill-word)
e59452c7
CR
1840426 b(\(M-C-d\))630 408 y Fu(Kill)k(from)f(p)s(oin)m(t)g(to)h(the)g(end)
18405e(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
18406(ords,)f(to)h(the)g(end)630 518 y(of)h(the)f(next)h(w)m(ord.)40
18407b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
18408Ft(shell-forward-word)p Fu(.)150 692 y Ft(shell-backward-kill-word)24
18409b(\(\))630 801 y Fu(Kill)e(the)h(w)m(ord)e(b)s(ehind)g(p)s(oin)m(t.)38
a9fac3b2 18410b(W)-8 b(ord)22 b(b)s(oundaries)f(are)h(the)g(same)h(as)f
e59452c7
CR
18411Ft(shell-backward-)630 911 y(word)p Fu(.)150 1084 y Ft
18412(shell-transpose-words)j(\(M-C-t\))630 1194 y Fu(Drag)33
602eae4d
CR
18413b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g(the)h(w)m(ord)f
18414(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)g(that)630
e59452c7 184151304 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27 b(the)i(insertion)f(p)s(oin)m
602eae4d 18416(t)h(is)f(at)h(the)g(end)e(of)i(the)f(line,)i(this)e(transp)s(oses)g
e59452c7 18417(the)630 1413 y(last)j(t)m(w)m(o)h(w)m(ords)d(on)i(the)f(line.)41
602eae4d 18418b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)f(as)h
e59452c7
CR
18419Ft(shell-forward-)630 1523 y(word)e Fu(and)h Ft(shell-backward-word)p
18420Fu(.)150 1696 y Ft(unix-word-rubout)c(\(C-w\))630 1806
602eae4d
CR
18421y Fu(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
18422(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
e59452c7
CR
18423b(The)31 b(killed)630 1915 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
18424(kill-ring.)150 2089 y Ft(unix-filename-rubout)25 b(\(\))630
184252199 y Fu(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
e6983002 18426(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630
e59452c7
CR
184272308 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g
18428(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150 2482 y Ft
18429(delete-horizontal-space)24 b(\(\))630 2591 y Fu(Delete)33
e6983002 18430b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
e59452c7
CR
18431b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 2765
18432y Ft(kill-region)d(\(\))630 2874 y Fu(Kill)k(the)f(text)i(in)e(the)g
e6983002 18433(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
e59452c7
CR
18434m(b)s(ound.)150 3048 y Ft(copy-region-as-kill)25 b(\(\))630
184353158 y Fu(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
e6983002 18436(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
18437(a)m(w)m(a)m(y)-8 b(.)630 3267 y(By)31 b(default,)f(this)h(command)f
18438(is)g(un)m(b)s(ound.)150 3441 y Ft(copy-backward-word)25
18439b(\(\))630 3550 y Fu(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
d37a4722 18440(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
e59452c7 18441f(are)i(the)630 3660 y(same)31 b(as)f Ft(backward-word)p
d37a4722 18442Fu(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
e59452c7 184433833 y Ft(copy-forward-word)26 b(\(\))630 3943 y Fu(Cop)m(y)31
124d67cd
CR
18444b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
18445(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
e59452c7 184464053 y(same)f(as)f Ft(forward-word)p Fu(.)38 b(By)30
602eae4d 18447b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
e59452c7 184484226 y Ft(yank)f(\(C-y\))630 4336 y Fu(Y)-8 b(ank)31
602eae4d 18449b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
e59452c7 18450(p)s(oin)m(t.)150 4509 y Ft(yank-pop)d(\(M-y\))630 4619
602eae4d
CR
18451y Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
18452b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
e59452c7
CR
184534728 y(command)30 b(is)h Ft(yank)e Fu(or)h Ft(yank-pop)p
18454Fu(.)150 4942 y Fk(8.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
18455(ts)150 5121 y Ft(digit-argument)26 b(\()p Fj(M-0)p Ft(,)j
18456Fj(M-1)p Ft(,)h(...)f Fj(M--)p Ft(\))630 5230 y Fu(Add)d(this)h(digit)g
124d67cd 18457(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
e59452c7
CR
18458(new)f(argumen)m(t.)630 5340 y Fj(M--)j Fu(starts)i(a)g(negativ)m(e)i
18459(argumen)m(t.)p eop end
e2520247
CR
18460%%Page: 143 149
18461TeXDict begin 143 148 bop 150 -116 a Fu(Chapter)30 b(8:)41
18462b(Command)29 b(Line)i(Editing)2062 b(143)150 299 y Ft
e59452c7
CR
18463(universal-argument)25 b(\(\))630 408 y Fu(This)g(is)g(another)h(w)m(a)
18464m(y)g(to)h(sp)s(ecify)e(an)g(argumen)m(t.)40 b(If)25
18465b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m(y)f(one)630
18466518 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h(leading)h(min)m(us)
18467e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630 628
18468y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)m(y)f
18469(digits,)i(executing)f Ft(universal-argument)630 737
18470y Fu(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
8a0829e9 18471(otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
e59452c7
CR
18472847 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)d
18473(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
18474956 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
8a0829e9 18475(the)h(next)f(command)g(is)g(m)m(ultiplied)h(b)m(y)630
e59452c7
CR
184761066 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
18477(one,)h(so)e(executing)i(this)e(function)f(the)i(\014rst)630
184781176 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
18479(second)g(time)g(mak)m(es)h(the)e(argumen)m(t)h(coun)m(t)630
184801285 y(sixteen,)i(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g
18481(not)h(b)s(ound)d(to)k(a)e(k)m(ey)-8 b(.)150 1468 y Fk(8.4.6)63
18482b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
18483b(Y)-10 b(ou)150 1632 y Ft(complete)28 b(\(TAB\))630
184841741 y Fu(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
18485(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
184861851 y(p)s(erformed)33 b(is)h(application-sp)s(eci\014c.)53
18487b(Bash)35 b(attempts)g(completion)g(treating)h(the)e(text)630
184881961 y(as)39 b(a)h(v)-5 b(ariable)39 b(\(if)h(the)f(text)h(b)s(egins)e
18489(with)h(`)p Ft($)p Fu('\),)j(username)c(\(if)i(the)f(text)h(b)s(egins)e
18490(with)630 2070 y(`)p Ft(~)p Fu('\),)31 b(hostname)f(\(if)g(the)g(text)h
18491(b)s(egins)e(with)h(`)p Ft(@)p Fu('\),)h(or)f(command)f(\(including)h
18492(aliases)i(and)630 2180 y(functions\))j(in)f(turn.)53
e6983002 18493b(If)34 b(none)g(of)h(these)h(pro)s(duces)d(a)i(matc)m(h,)i(\014lename)
e59452c7
CR
18494e(completion)h(is)630 2289 y(attempted.)150 2433 y Ft
18495(possible-completions)25 b(\(M-?\))630 2542 y Fu(List)35
e6983002 18496b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
e59452c7 18497(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 2652
e6983002
CR
18498y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
18499(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
e59452c7 18500b(of)630 2761 y Ft(completion-display-width)o Fu(,)g(the)j(v)-5
e6983002 18501b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
e59452c7
CR
18502b Ft(COLUMNS)p Fu(,)630 2871 y(or)30 b(the)h(screen)f(width,)g(in)g
18503(that)h(order.)150 3014 y Ft(insert-completions)25 b(\(M-*\))630
185043124 y Fu(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
e6983002 18505(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
185063233 y(b)m(y)g Ft(possible-completions)p Fu(.)150 3376
18507y Ft(menu-complete)d(\(\))630 3486 y Fu(Similar)d(to)g
d37a4722 18508Ft(complete)p Fu(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
e59452c7 18509(completed)i(with)e(a)i(single)f(matc)m(h)630 3596 y(from)37
d37a4722 18510b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
e59452c7 18511b(execution)g(of)f Ft(menu-complete)630 3705 y Fu(steps)i(through)g
d37a4722 18512(the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
e59452c7 18513(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 18514(of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
e59452c7 18515b(ject)36 b(to)i(the)f(setting)630 3924 y(of)f Ft(bell-style)p
d37a4722
CR
18516Fu(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
18517b(An)36 b(argumen)m(t)h(of)f Fr(n)f Fu(mo)m(v)m(es)i
e59452c7 18518Fr(n)630 4034 y Fu(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
a9fac3b2 18519(matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
e59452c7 18520(used)g(to)630 4143 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
a9fac3b2 18521(list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
e59452c7
CR
18522(ound)e(to)630 4253 y Ft(TAB)p Fu(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
18523(y)i(default.)150 4396 y Ft(menu-complete-backward)24
18524b(\(\))630 4506 y Fu(Iden)m(tical)36 b(to)g Ft(menu-complete)p
6e51e0d0 18525Fu(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
e59452c7 18526(p)s(ossible)630 4615 y(completions,)d(as)e(if)h Ft(menu-complete)26
124d67cd 18527b Fu(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
e59452c7 185284758 y Ft(delete-char-or-list)25 b(\(\))630 4868 y Fu(Deletes)41
6e51e0d0 18529b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
e59452c7 18530(eginning)e(or)h(end)f(of)h(the)630 4978 y(line)50 b(\(lik)m(e)h
6e51e0d0 18531Ft(delete-char)p Fu(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
e59452c7 1853255 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 5087
124d67cd 18533y Ft(possible-completions)p Fu(.)35 b(This)30 b(command)g(is)g(un)m(b)s
e59452c7
CR
18534(ound)e(b)m(y)i(default.)150 5230 y Ft(complete-filename)c(\(M-/\))630
185355340 y Fu(A)m(ttempt)32 b(\014lename)e(completion)i(on)e(the)h(text)g
18536(b)s(efore)f(p)s(oin)m(t.)p eop end
e2520247
CR
18537%%Page: 144 150
18538TeXDict begin 144 149 bop 150 -116 a Fu(Chapter)30 b(8:)41
18539b(Command)29 b(Line)i(Editing)2062 b(144)150 299 y Ft
e59452c7
CR
18540(possible-filename-comple)o(tion)o(s)24 b(\(C-x)30 b(/\))630
18541408 y Fu(List)f(the)g(p)s(ossible)f(completions)h(of)g(the)g(text)g(b)s
18542(efore)g(p)s(oin)m(t,)g(treating)h(it)f(as)g(a)f(\014lename.)150
18543577 y Ft(complete-username)e(\(M-~\))630 687 y Fu(A)m(ttempt)32
e6983002 18544b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s(oin)m(t,)g(treating)i
e59452c7
CR
18545(it)f(as)f(a)h(username.)150 856 y Ft(possible-username-comple)o(tion)o
18546(s)24 b(\(C-x)30 b(~\))630 965 y Fu(List)25 b(the)g(p)s(ossible)g
18547(completions)h(of)f(the)g(text)h(b)s(efore)f(p)s(oin)m(t,)h(treating)g
18548(it)g(as)f(a)g(username.)150 1134 y Ft(complete-variable)h(\(M-$\))630
185491244 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)
18550s(oin)m(t,)g(treating)i(it)f(as)f(a)h(shell)g(v)-5 b(ariable.)150
185511412 y Ft(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30
18552b($\))630 1522 y Fu(List)42 b(the)g(p)s(ossible)g(completions)h(of)f
18553(the)g(text)h(b)s(efore)e(p)s(oin)m(t,)46 b(treating)d(it)f(as)g(a)h
18554(shell)630 1632 y(v)-5 b(ariable.)150 1800 y Ft(complete-hostname)26
18555b(\(M-@\))630 1910 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i
e6983002 18556(b)s(efore)e(p)s(oin)m(t,)g(treating)i(it)f(as)f(a)h(hostname.)150
e59452c7
CR
185572079 y Ft(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30
18558b(@\))630 2188 y Fu(List)25 b(the)g(p)s(ossible)f(completions)h(of)g
e6983002 18559(the)g(text)g(b)s(efore)g(p)s(oin)m(t,)h(treating)g(it)f(as)f(a)h
e59452c7
CR
18560(hostname.)150 2357 y Ft(complete-command)h(\(M-!\))630
185612467 y Fu(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p)
e6983002 18562s(oin)m(t,)h(treating)h(it)g(as)f(a)g(command)g(name.)630
e59452c7
CR
185632576 y(Command)46 b(completion)i(attempts)g(to)f(matc)m(h)h(the)f(text)
18564h(against)g(aliases,)53 b(reserv)m(ed)630 2686 y(w)m(ords,)36
e6983002 18565b(shell)g(functions,)h(shell)e(builtins,)i(and)e(\014nally)g
e59452c7
CR
18566(executable)i(\014lenames,)g(in)e(that)630 2796 y(order.)150
185672964 y Ft(possible-command-complet)o(ions)24 b(\(C-x)29
18568b(!\))630 3074 y Fu(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h
e6983002 18569(text)g(b)s(efore)f(p)s(oin)m(t,)h(treating)g(it)g(as)g(a)f(command)630
e59452c7
CR
185703184 y(name.)150 3352 y Ft(dynamic-complete-history)e(\(M-TAB\))630
185713462 y Fu(A)m(ttempt)31 b(completion)h(on)e(the)g(text)h(b)s(efore)f(p)
e6983002 18572s(oin)m(t,)g(comparing)h(the)f(text)h(against)h(lines)630
e59452c7
CR
185733572 y(from)e(the)g(history)h(list)g(for)f(p)s(ossible)g(completion)i
18574(matc)m(hes.)150 3740 y Ft(dabbrev-expand)26 b(\(\))630
185753850 y Fu(A)m(ttempt)i(men)m(u)e(completion)i(on)f(the)g(text)g(b)s
e6983002 18576(efore)f(p)s(oin)m(t,)i(comparing)f(the)g(text)h(against)630
e59452c7
CR
185773960 y(lines)j(from)e(the)i(history)f(list)h(for)g(p)s(ossible)e
18578(completion)j(matc)m(hes.)150 4128 y Ft(complete-into-braces)25
18579b(\(M-{\))630 4238 y Fu(P)m(erform)f(\014lename)f(completion)i(and)f
124d67cd 18580(insert)f(the)h(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630
e59452c7 185814348 y(within)34 b(braces)h(so)f(the)h(list)g(is)g(a)m(v)-5
124d67cd 18582b(ailable)37 b(to)e(the)g(shell)g(\(see)g(Section)h(3.5.1)g([Brace)g
e59452c7
CR
18583(Ex-)630 4457 y(pansion],)30 b(page)h(24\).)150 4666
18584y Fk(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 4842 y Ft(start-kbd-macro)
1858526 b(\(C-x)j(\(\))630 4952 y Fu(Begin)i(sa)m(ving)h(the)e(c)m
124d67cd 18586(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
18587g(macro.)150 5121 y Ft(end-kbd-macro)d(\(C-x)i(\)\))630
185885230 y Fu(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
124d67cd 18589(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 18590(the)630 5340 y(de\014nition.)p eop end
e2520247
CR
18591%%Page: 145 151
18592TeXDict begin 145 150 bop 150 -116 a Fu(Chapter)30 b(8:)41
18593b(Command)29 b(Line)i(Editing)2062 b(145)150 299 y Ft
e59452c7
CR
18594(call-last-kbd-macro)25 b(\(C-x)k(e\))630 408 y Fu(Re-execute)37
18595b(the)e(last)h(k)m(eyb)s(oard)f(macro)h(de\014ned,)f(b)m(y)h(making)f
18596(the)g(c)m(haracters)i(in)e(the)630 518 y(macro)c(app)s(ear)f(as)g(if)h
18597(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s(oard.)150 671 y Ft
18598(print-last-kbd-macro)25 b(\(\))630 780 y Fu(Prin)m(t)30
e9c75143
CR
18599b(the)g(last)h(k)m(eyb)s(oard)f(macro)h(de\014ned)e(in)h(a)g(format)h
18600(suitable)g(for)f(the)g Fr(inputrc)35 b Fu(\014le.)150
18601973 y Fk(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150
e59452c7
CR
186021141 y Ft(re-read-init-file)26 b(\(C-x)j(C-r\))630 1251
18603y Fu(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
18604Fr(inputrc)27 b Fu(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
18605(or)i(v)-5 b(ariable)630 1360 y(assignmen)m(ts)31 b(found)e(there.)150
186061513 y Ft(abort)g(\(C-g\))630 1622 y Fu(Ab)s(ort)d(the)h(curren)m(t)f
18607(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
18608b(ject)26 b(to)i(the)630 1732 y(setting)j(of)g Ft(bell-style)p
18609Fu(\).)150 1885 y Ft(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p
18610Fj(x)p Ft(,)g(...)o(\))630 1994 y Fu(If)35 b(the)g(meta\014ed)g(c)m
18611(haracter)i Fr(x)k Fu(is)35 b(upp)s(er)e(case,)k(run)d(the)h(command)g
18612(that)g(is)g(b)s(ound)e(to)630 2104 y(the)g(corresp)s(onding)f
18613(meta\014ed)h(lo)m(w)m(er)i(case)f(c)m(haracter.)50 b(The)32
18614b(b)s(eha)m(vior)h(is)g(unde\014ned)e(if)630 2213 y Fr(x)37
18615b Fu(is)30 b(already)h(lo)m(w)m(er)h(case.)150 2366 y
18616Ft(prefix-meta)27 b(\(ESC\))630 2476 y Fu(Metafy)39 b(the)e(next)h(c)m
18617(haracter)h(t)m(yp)s(ed.)62 b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f
18618(without)g(a)h(meta)g(k)m(ey)-8 b(.)630 2585 y(T)m(yping)30
18619b(`)p Ft(ESC)g(f)p Fu(')g(is)h(equiv)-5 b(alen)m(t)31
18620b(to)g(t)m(yping)g Fj(M-f)p Fu(.)150 2738 y Ft(undo)e(\(C-_)g(or)h(C-x)
18621g(C-u\))630 2847 y Fu(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s
18622(ered)f(for)g(eac)m(h)i(line.)150 3000 y Ft(revert-line)27
18623b(\(M-r\))630 3109 y Fu(Undo)33 b(all)h(c)m(hanges)g(made)f(to)h(this)f
18624(line.)49 b(This)32 b(is)h(lik)m(e)i(executing)f(the)f
18625Ft(undo)f Fu(command)630 3219 y(enough)e(times)h(to)g(get)h(bac)m(k)f
18626(to)g(the)f(b)s(eginning.)150 3372 y Ft(tilde-expand)d(\(M-&\))630
186273481 y Fu(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m
18628(ord.)150 3634 y Ft(set-mark)d(\(C-@\))630 3743 y Fu(Set)33
18629b(the)g(mark)f(to)i(the)f(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g
18630(argumen)m(t)g(is)g(supplied,)f(the)h(mark)g(is)f(set)630
186313853 y(to)f(that)g(p)s(osition.)150 4006 y Ft(exchange-point-and-mark)
1863224 b(\(C-x)29 b(C-x\))630 4115 y Fu(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)
18633g(the)g(mark.)43 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f
18634(set)h(to)f(the)h(sa)m(v)m(ed)630 4225 y(p)s(osition,)f(and)e(the)i
18635(old)g(cursor)e(p)s(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150
186364377 y Ft(character-search)26 b(\(C-]\))630 4487 y Fu(A)f(c)m(haracter)
18637h(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
18638(o)s(ccurrence)g(of)g(that)g(c)m(haracter.)630 4596 y(A)30
e9c75143 18639b(negativ)m(e)j(argumen)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
e59452c7
CR
18640(ccurrences.)150 4749 y Ft(character-search-backwar)o(d)24
18641b(\(M-C-]\))630 4859 y Fu(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
124d67cd 18642(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
e9c75143
CR
18643g(that)630 4968 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(argumen)m(t)f
18644(searc)m(hes)g(for)g(subsequen)m(t)e(o)s(ccurrences.)150
e59452c7 186455121 y Ft(skip-csi-sequence)d(\(\))630 5230 y Fu(Read)i(enough)f(c)m
124d67cd 18646(haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
e59452c7 18647(as)g(those)h(de\014ned)630 5340 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
124d67cd 18648(and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
e59452c7 18649(trol)g(Sequence)p eop end
e2520247
CR
18650%%Page: 146 152
18651TeXDict begin 146 151 bop 150 -116 a Fu(Chapter)30 b(8:)41
18652b(Command)29 b(Line)i(Editing)2062 b(146)630 299 y(Indicator)37
e59452c7
CR
18653b(\(CSI\),)f(usually)h(ESC-[.)59 b(If)36 b(this)g(sequence)h(is)g(b)s
18654(ound)d(to)k Ft("\\)p Fu(e[)p Ft(")p Fu(,)g(k)m(eys)f(pro-)630
e9c75143
CR
18655408 y(ducing)29 b(suc)m(h)g(sequences)g(will)h(ha)m(v)m(e)h(no)e
18656(e\013ect)i(unless)d(explicitly)j(b)s(ound)d(to)i(a)f(Readline)630
18657518 y(command,)j(instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g
e59452c7
CR
18658(in)m(to)g(the)f(editing)h(bu\013er.)44 b(This)31 b(is)630
18659628 y(un)m(b)s(ound)d(b)m(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)
18660j(ESC-[.)150 792 y Ft(insert-comment)26 b(\(M-#\))630
18661902 y Fu(Without)36 b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5
18662b(alue)36 b(of)g(the)g Ft(comment-begin)c Fu(v)-5 b(ariable)36
18663b(is)g(in-)630 1011 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
18664(curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
18665(supplied,)630 1121 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
18666b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
18667(line)630 1230 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
18668b(alue)31 b(of)f Ft(comment-begin)p Fu(,)e(the)i(v)-5
18669b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 1340
18670y(c)m(haracters)42 b(in)d Ft(comment-begin)e Fu(are)j(deleted)h(from)f
18671(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 1450
18672y(either)37 b(case,)j(the)e(line)f(is)g(accepted)i(as)e(if)g(a)g
18673(newline)g(had)g(b)s(een)f(t)m(yp)s(ed.)60 b(The)37 b(default)630
186741559 y(v)-5 b(alue)32 b(of)g Ft(comment-begin)c Fu(causes)k(this)f
18675(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g(a)g(shell)630
186761669 y(commen)m(t.)40 b(If)26 b(a)h(n)m(umeric)f(argumen)m(t)h(causes)g
18677(the)f(commen)m(t)i(c)m(haracter)g(to)f(b)s(e)f(remo)m(v)m(ed,)630
186781778 y(the)31 b(line)f(will)h(b)s(e)f(executed)h(b)m(y)f(the)h(shell.)
18679150 1943 y Ft(dump-functions)26 b(\(\))630 2052 y Fu(Prin)m(t)g(all)i
18680(of)e(the)h(functions)f(and)g(their)g(k)m(ey)h(bindings)e(to)j(the)e
18681(Readline)h(output)f(stream.)630 2162 y(If)31 b(a)h(n)m(umeric)g
18682(argumen)m(t)g(is)g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f
18683(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
18684(part)f(of)g(an)h Fr(inputrc)k Fu(\014le.)41 b(This)29
18685b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k(default.)150
186862436 y Ft(dump-variables)26 b(\(\))630 2545 y Fu(Prin)m(t)21
18687b(all)h(of)g(the)f(settable)i(v)-5 b(ariables)22 b(and)f(their)g(v)-5
18688b(alues)22 b(to)g(the)f(Readline)h(output)f(stream.)630
186892655 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
74d0116b 18690(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
e59452c7 186912765 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fr(inputrc)k
6e51e0d0 18692Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
e59452c7
CR
18693(default.)150 2929 y Ft(dump-macros)c(\(\))630 3039 y
18694Fu(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f(b)s
18695(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
186963148 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
eb0b2ad8 18697(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
e59452c7 186983258 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 18699Fr(inputrc)35 b Fu(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
e59452c7
CR
18700d(b)m(y)630 3367 y(default.)150 3532 y Ft(spell-correct-word)e(\(C-x)30
18701b(s\))630 3641 y Fu(P)m(erform)36 b(sp)s(elling)h(correction)h(on)e
18702(the)h(curren)m(t)f(w)m(ord,)i(treating)f(it)g(as)g(a)g(directory)g(or)
18703630 3751 y(\014lename,)g(in)e(the)h(same)f(w)m(a)m(y)i(as)e(the)h
18704Ft(cdspell)d Fu(shell)j(option.)56 b(W)-8 b(ord)36 b(b)s(oundaries)e
18705(are)630 3861 y(the)d(same)f(as)h(those)g(used)e(b)m(y)i
18706Ft(shell-forward-word)p Fu(.)150 4025 y Ft(glob-complete-word)25
18707b(\(M-g\))630 4134 y Fu(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g
18708(treated)h(as)f(a)h(pattern)f(for)f(pathname)h(expansion,)g(with)g(an)
18709630 4244 y(asterisk)d(implicitly)h(app)s(ended.)37 b(This)23
602eae4d 18710b(pattern)i(is)f(used)g(to)h(generate)h(a)e(list)h(of)g(matc)m(hing)630
e59452c7
CR
187114354 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150
187124518 y Ft(glob-expand-word)c(\(C-x)j(*\))630 4628 y Fu(The)40
602eae4d 18713b(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 18714(for)f(pathname)g(expansion,)k(and)630 4737 y(the)c(list)g(of)f(matc)m
602eae4d 18715(hing)i(\014le)e(names)g(is)h(inserted,)h(replacing)g(the)e(w)m(ord.)67
e59452c7 18716b(If)39 b(a)h(n)m(umeric)630 4847 y(argumen)m(t)31 b(is)f(supplied,)g
602eae4d 18717(a)g(`)p Ft(*)p Fu(')h(is)f(app)s(ended)f(b)s(efore)h(pathname)g
e59452c7
CR
18718(expansion.)150 5011 y Ft(glob-list-expansions)25 b(\(C-x)k(g\))630
187195121 y Fu(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h
602eae4d 18720(b)s(een)f(generated)h(b)m(y)f Ft(glob-expand-word)630
e59452c7 187215230 y Fu(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.)
602eae4d 1872250 b(If)33 b(a)h(n)m(umeric)g(argumen)m(t)g(is)f(supplied,)h(a)g(`)p
e59452c7
CR
18723Ft(*)p Fu(')630 5340 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g
18724(expansion.)p eop end
e2520247
CR
18725%%Page: 147 153
18726TeXDict begin 147 152 bop 150 -116 a Fu(Chapter)30 b(8:)41
18727b(Command)29 b(Line)i(Editing)2062 b(147)150 299 y Ft
e59452c7
CR
18728(display-shell-version)25 b(\(C-x)k(C-v\))630 408 y Fu(Displa)m(y)j(v)m
18729(ersion)e(information)h(ab)s(out)f(the)h(curren)m(t)f(instance)h(of)f
18730(Bash.)150 566 y Ft(shell-expand-line)c(\(M-C-e\))630
d052bd6f
CR
18731676 y Fu(Expand)j(the)h(line)g(b)m(y)g(p)s(erforming)f(shell)h(w)m(ord)
18732g(expansions.)40 b(This)29 b(p)s(erforms)f(alias)k(and)630
18733785 y(history)40 b(expansion,)j($')p Fr(string)8 b Fu(')41
18734b(and)f($)p Ft(")p Fr(string)8 b Ft(")39 b Fu(quoting,)44
18735b(tilde)d(expansion,)i(parame-)630 895 y(ter)g(and)f(v)-5
18736b(ariable)44 b(expansion,)h(arithmetic)f(expansion,)i(w)m(ord)c
18737(splitting,)47 b(and)42 b(quote)630 1004 y(remo)m(v)-5
18738b(al.)150 1162 y Ft(history-expand-line)25 b(\(M-^\))630
187391272 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)h(curren)m(t)f
18740(line.)150 1429 y Ft(magic-space)d(\(\))630 1539 y Fu(P)m(erform)c
18741(history)g(expansion)g(on)g(the)g(curren)m(t)g(line)g(and)g(insert)g(a)
18742g(space)h(\(see)g(Section)g(9.3)630 1649 y([History)31
e2520247 18743b(In)m(teraction],)i(page)e(158\).)150 1806 y Ft(alias-expand-line)26
d052bd6f
CR
18744b(\(\))630 1916 y Fu(P)m(erform)e(alias)i(expansion)e(on)h(the)g
18745(curren)m(t)f(line)h(\(see)g(Section)h(6.6)f([Aliases],)j(page)d
e2520247 18746(102\).)150 2073 y Ft(history-and-alias-expand)o(-lin)o(e)f(\(\))630
d052bd6f
CR
187472183 y Fu(P)m(erform)30 b(history)h(and)e(alias)j(expansion)e(on)g(the)
18748h(curren)m(t)f(line.)150 2341 y Ft(insert-last-argument)25
18749b(\(M-.)k(or)h(M-_\))630 2450 y Fu(A)g(synon)m(ym)g(for)g
18750Ft(yank-last-arg)p Fu(.)150 2608 y Ft(edit-and-execute-command)24
18751b(\(C-x)29 b(C-e\))630 2718 y Fu(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)
18752g(the)g(curren)m(t)f(command)h(line,)h(and)e(execute)i(the)f(result)g
18753(as)g(shell)630 2827 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)
18754m(ok)m(e)h Ft($VISUAL)p Fu(,)f Ft($EDITOR)p Fu(,)h(and)d
18755Ft(emacs)g Fu(as)h(the)630 2937 y(editor,)31 b(in)f(that)h(order.)150
187563176 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 3335
d37a4722
CR
18757y Fu(While)32 b(the)g(Readline)g(library)f(do)s(es)g(not)h(ha)m(v)m(e)h
18758(a)f(full)f(set)h(of)g Ft(vi)f Fu(editing)h(functions,)f(it)h(do)s(es)g
d052bd6f 18759(con)m(tain)150 3445 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f
d37a4722 18760(the)g(line.)52 b(The)34 b(Readline)g Ft(vi)g Fu(mo)s(de)f(b)s(eha)m(v)
d052bd6f
CR
18761m(es)i(as)f(sp)s(eci\014ed)f(in)150 3554 y(the)e Fm(posix)e
18762Fu(standard.)275 3688 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
d37a4722
CR
18763m(ely)j(b)s(et)m(w)m(een)d Ft(emacs)f Fu(and)g Ft(vi)g
18764Fu(editing)h(mo)s(des,)h(use)f(the)g(`)p Ft(set)30 b(-o)150
d052bd6f 187653798 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p
d37a4722 18766Fu(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
e2520247 18767(page)e(68\).)83 b(The)150 3907 y(Readline)31 b(default)g(is)f
d052bd6f 18768Ft(emacs)f Fu(mo)s(de.)275 4041 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
d37a4722 18769(in)g Ft(vi)f Fu(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
d052bd6f 18770(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 4150 y(had)f(t)m(yp)s
d37a4722
CR
18771(ed)g(an)g(`)p Ft(i)p Fu('.)41 b(Pressing)29 b Ft(ESC)f
18772Fu(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h(where)e(y)m
d052bd6f 18773(ou)i(can)g(edit)g(the)150 4260 y(text)35 b(of)f(the)g(line)g(with)f
d37a4722 18774(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)
d052bd6f 18775f(to)f(previous)g(history)f(lines)h(with)150 4370 y(`)p
d37a4722 18776Ft(k)p Fu(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
d052bd6f
CR
18777Ft(j)p Fu(',)g(and)g(so)h(forth.)150 4609 y Fs(8.6)68
18778b(Programmable)47 b(Completion)150 4768 y Fu(When)25
d37a4722 18779b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g
d052bd6f 18780(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4878
d37a4722
CR
18781y(sp)s(eci\014cation)40 b(\(a)h Fr(compsp)s(ec)6 b Fu(\))39
18782b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Ft(complete)d
d052bd6f 18783Fu(builtin)j(\(see)g(Section)h(8.7)150 4987 y([Programmable)h
e2520247 18784(Completion)f(Builtins],)k(page)d(150\),)j(the)c(programmable)g
d052bd6f
CR
18785(completion)i(facilities)150 5097 y(are)31 b(in)m(v)m(ok)m(ed.)275
187865230 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
d37a4722 18787b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h
d052bd6f 18788(command,)150 5340 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i
d37a4722 18789(the)e(list)g(of)g(p)s(ossible)g(completions)h(for)e(the)h(w)m(ord.)81
d052bd6f 18790b(If)44 b(the)p eop end
e2520247
CR
18791%%Page: 148 154
18792TeXDict begin 148 153 bop 150 -116 a Fu(Chapter)30 b(8:)41
18793b(Command)29 b(Line)i(Editing)2062 b(148)150 299 y(command)36
d052bd6f
CR
18794b(w)m(ord)g(is)g(the)g(empt)m(y)h(string)f(\(completion)i(attempted)f
18795(at)g(the)g(b)s(eginning)e(of)h(an)h(empt)m(y)150 408
18796y(line\),)30 b(an)m(y)g(compsp)s(ec)f(de\014ned)f(with)h(the)h
18797Ft(-E)e Fu(option)i(to)g Ft(complete)d Fu(is)i(used.)40
18798b(If)29 b(the)g(command)g(w)m(ord)150 518 y(is)e(a)h(full)e(pathname,)i
18799(a)g(compsp)s(ec)e(for)h(the)g(full)g(pathname)g(is)g(searc)m(hed)h
18800(for)f(\014rst.)39 b(If)26 b(no)h(compsp)s(ec)g(is)150
18801628 y(found)22 b(for)g(the)h(full)g(pathname,)h(an)f(attempt)h(is)f
18802(made)g(to)g(\014nd)f(a)h(compsp)s(ec)f(for)h(the)g(p)s(ortion)f(follo)
18803m(wing)150 737 y(the)34 b(\014nal)g(slash.)53 b(If)34
18804b(those)g(searc)m(hes)i(do)e(not)g(result)h(in)f(a)g(compsp)s(ec,)h(an)
18805m(y)g(compsp)s(ec)f(de\014ned)f(with)150 847 y(the)k
18806Ft(-D)g Fu(option)g(to)h Ft(complete)d Fu(is)i(used)g(as)g(the)g
18807(default.)61 b(If)37 b(there)g(is)h(no)f(default)g(compsp)s(ec,)i(Bash)
18808150 956 y(attempts)e(alias)h(expansion)e(on)g(the)h(command)f(w)m(ord)g
18809(as)h(a)f(\014nal)g(resort,)j(and)c(attempts)j(to)f(\014nd)e(a)150
188101066 y(compsp)s(ec)30 b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h
18811(successful)f(expansion)275 1207 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s
e59452c7 18812(een)f(found,)h(it)h(is)f(used)f(to)i(generate)h(the)e(list)h(of)f
d052bd6f 18813(matc)m(hing)h(w)m(ords.)51 b(If)150 1316 y(a)37 b(compsp)s(ec)f(is)g
e59452c7 18814(not)h(found,)f(the)h(default)f(Bash)h(completion)g(describ)s(ed)e(ab)s
d052bd6f 18815(o)m(v)m(e)j(\(see)f(Section)g(8.4.6)150 1426 y([Commands)30
e2520247 18816b(F)-8 b(or)31 b(Completion],)g(page)g(143\))h(is)f(p)s(erformed.)275
d052bd6f 188171567 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s
e59452c7 18818(ec)h(are)g(used.)40 b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h
d052bd6f 18819(pre\014xed)150 1677 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h
e59452c7
CR
18820(are)g(returned.)44 b(When)31 b(the)h Ft(-f)f Fu(or)h
18821Ft(-d)f Fu(option)h(is)f(used)g(for)h(\014lename)150
d052bd6f 188221786 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
e59452c7 18823b(ariable)31 b Ft(FIGNORE)d Fu(is)i(used)f(to)i(\014lter)g(the)f(matc)m
d052bd6f 18824(hes.)42 b(See)150 1896 y(Section)31 b(5.2)h([Bash)e(V)-8
e2520247 18825b(ariables],)33 b(page)e(80,)g(for)f(a)h(description)g(of)f
d052bd6f 18826Ft(FIGNORE)p Fu(.)275 2037 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f
6e51e0d0 18827(b)m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g
d052bd6f 18828Ft(-G)e Fu(option)i(are)g(generated)150 2146 y(next.)41
6e51e0d0
CR
18829b(The)29 b(w)m(ords)g(generated)h(b)m(y)g(the)g(pattern)f(need)h(not)f
18830(matc)m(h)i(the)f(w)m(ord)f(b)s(eing)g(completed.)41
d052bd6f 18831b(The)150 2256 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32
6e51e0d0 18832b(is)g(not)g(used)e(to)i(\014lter)g(the)g(matc)m(hes,)h(but)d(the)i
d052bd6f
CR
18833Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 2365 y(is)30
18834b(used.)275 2506 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the)
e6983002 18835g(argumen)m(t)h(to)g(the)f Ft(-W)f Fu(option)i(is)f(considered.)60
d052bd6f 18836b(The)37 b(string)150 2616 y(is)c(\014rst)e(split)i(using)f(the)h(c)m
e6983002
CR
18837(haracters)h(in)e(the)h Ft(IFS)e Fu(sp)s(ecial)j(v)-5
18838b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150
d052bd6f 188392725 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide)
e6983002 18840f(a)h(mec)m(hanism)f(for)g(the)g(w)m(ords)g(to)g(con)m(tain)i(shell)150
d052bd6f 188412835 y(metac)m(haracters)e(or)e(c)m(haracters)i(in)e(the)g(v)-5
e6983002 18842b(alue)31 b(of)g Ft(IFS)p Fu(.)42 b(Eac)m(h)32 b(w)m(ord)e(is)h(then)g
d052bd6f 18843(expanded)f(using)h(brace)150 2945 y(expansion,)g(tilde)h(expansion,)f
e6983002 18844(parameter)g(and)g(v)-5 b(ariable)32 b(expansion,)f(command)f
d052bd6f 18845(substitution,)i(and)150 3054 y(arithmetic)c(expansion,)f(as)g(describ)
e6983002 18846s(ed)e(ab)s(o)m(v)m(e)i(\(see)h(Section)f(3.5)g([Shell)g(Expansions],)g
d052bd6f 18847(page)g(24\).)40 b(The)150 3164 y(results)23 b(are)h(split)g(using)f
e6983002 18848(the)h(rules)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)g(Section)f(3.5.7)
e2520247 18849h([W)-8 b(ord)24 b(Splitting],)i(page)e(36\).)150 3273
e6983002
CR
18850y(The)j(results)h(of)f(the)h(expansion)g(are)g(pre\014x-matc)m(hed)g
18851(against)h(the)f(w)m(ord)f(b)s(eing)g(completed,)j(and)d(the)150
d052bd6f
CR
188523383 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f
18853(completions.)275 3524 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s
e6983002 18854(een)f(generated,)h(an)m(y)g(shell)f(function)g(or)g(command)g(sp)s
d052bd6f 18855(eci\014ed)f(with)150 3634 y(the)36 b Ft(-F)f Fu(and)g
e6983002
CR
18856Ft(-C)g Fu(options)h(is)g(in)m(v)m(ok)m(ed.)59 b(When)35
18857b(the)h(command)g(or)f(function)h(is)g(in)m(v)m(ok)m(ed,)i(the)e
d052bd6f 18858Ft(COMP_)150 3743 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p
d37a4722
CR
18859Fu(,)d Ft(COMP_KEY)p Fu(,)i(and)e Ft(COMP_TYPE)f Fu(v)-5
18860b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed)
d052bd6f 18861150 3853 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
e2520247 18862b(ariables],)36 b(page)d(80\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
d052bd6f 18863(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 3962 y Ft(COMP_WORDS)j
602eae4d 18864Fu(and)i Ft(COMP_CWORD)d Fu(v)-5 b(ariables)42 b(are)g(also)h(set.)74
d052bd6f 18865b(When)41 b(the)h(function)f(or)h(command)f(is)150 4072
12933b5b
CR
18866y(in)m(v)m(ok)m(ed,)c(the)e(\014rst)f(argumen)m(t)h(\($1\))h(is)e(the)h
18867(name)g(of)f(the)h(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150
d052bd6f 188684181 y(completed,)30 b(the)f(second)f(argumen)m(t)h(\($2\))h(is)f(the)g
45c0f7f8 18869(w)m(ord)f(b)s(eing)g(completed,)i(and)e(the)h(third)e(argumen)m(t)150
d052bd6f 188704291 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s
45c0f7f8 18871(eing)g(completed)i(on)e(the)h(curren)m(t)f(command)h(line.)65
d052bd6f 18872b(No)150 4401 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g
45c0f7f8 18873(against)h(the)e(w)m(ord)g(b)s(eing)f(completed)i(is)g(p)s(erformed;)f
d052bd6f
CR
18874(the)150 4510 y(function)d(or)g(command)h(has)f(complete)i(freedom)e
18875(in)g(generating)h(the)g(matc)m(hes.)275 4651 y(An)m(y)j(function)h(sp)
a6ae8f35 18876s(eci\014ed)f(with)g Ft(-F)g Fu(is)h(in)m(v)m(ok)m(ed)h(\014rst.)53
6e51e0d0 18877b(The)35 b(function)f(ma)m(y)h(use)g(an)m(y)g(of)g(the)g(shell)150
d052bd6f 188784761 y(facilities,)50 b(including)44 b(the)h Ft(compgen)d
6e51e0d0 18879Fu(and)i Ft(compopt)e Fu(builtins)i(describ)s(ed)f(b)s(elo)m(w)h(\(see)
d052bd6f 18880i(Section)f(8.7)150 4870 y([Programmable)31 b(Completion)h(Builtins],)f
e2520247 18881(page)h(150\),)g(to)g(generate)g(the)f(matc)m(hes.)42
d052bd6f 18882b(It)31 b(m)m(ust)g(put)f(the)150 4980 y(p)s(ossible)g(completions)h
124d67cd 18883(in)f(the)h Ft(COMPREPLY)d Fu(arra)m(y)j(v)-5 b(ariable,)31
e59452c7 18884b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275 5121 y(Next,)26
124d67cd
CR
18885b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h Ft(-C)f
18886Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m(vironmen)m(t)h
e59452c7 18887(equiv)-5 b(alen)m(t)150 5230 y(to)26 b(command)e(substitution.)39
6e51e0d0 18888b(It)25 b(should)f(prin)m(t)h(a)g(list)h(of)f(completions,)i(one)e(p)s
e59452c7 18889(er)f(line,)j(to)f(the)f(standard)150 5340 y(output.)40
6e51e0d0 18890b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f
e59452c7 18891(newline,)h(if)f(necessary)-8 b(.)p eop end
e2520247
CR
18892%%Page: 149 155
18893TeXDict begin 149 154 bop 150 -116 a Fu(Chapter)30 b(8:)41
18894b(Command)29 b(Line)i(Editing)2062 b(149)275 299 y(After)24
6e51e0d0
CR
18895b(all)i(of)f(the)f(p)s(ossible)g(completions)i(are)f(generated,)i(an)m
18896(y)e(\014lter)g(sp)s(eci\014ed)e(with)i(the)g Ft(-X)e
e59452c7 18897Fu(option)150 408 y(is)34 b(applied)g(to)g(the)h(list.)52
6e51e0d0 18898b(The)33 b(\014lter)h(is)g(a)h(pattern)f(as)g(used)f(for)h(pathname)g
e59452c7 18899(expansion;)i(a)e(`)p Ft(&)p Fu(')g(in)g(the)150 518
6e51e0d0
CR
18900y(pattern)28 b(is)f(replaced)h(with)g(the)f(text)i(of)f(the)f(w)m(ord)h
18901(b)s(eing)f(completed.)40 b(A)28 b(literal)h(`)p Ft(&)p
e59452c7 18902Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)150 628 y(with)38
6e51e0d0
CR
18903b(a)h(bac)m(kslash;)k(the)38 b(bac)m(kslash)h(is)g(remo)m(v)m(ed)g(b)s
18904(efore)f(attempting)h(a)g(matc)m(h.)65 b(An)m(y)39 b(completion)150
e59452c7 18905737 y(that)32 b(matc)m(hes)g(the)g(pattern)g(will)f(b)s(e)g(remo)m(v)m
6e51e0d0 18906(ed)h(from)f(the)h(list.)44 b(A)32 b(leading)g(`)p Ft(!)p
e59452c7 18907Fu(')f(negates)i(the)f(pattern;)150 847 y(in)d(this)g(case)h(an)m(y)g
8a0829e9 18908(completion)h(not)e(matc)m(hing)h(the)g(pattern)f(will)h(b)s(e)e(remo)m
e59452c7 18909(v)m(ed.)42 b(If)29 b(the)g Ft(nocasematch)150 956 y
8a0829e9
CR
18910Fu(shell)k(option)f(\(see)i(the)e(description)g(of)h
18911Ft(shopt)e Fu(in)h(Section)h(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g
e2520247 18912(72\))h(is)150 1066 y(enabled,)d(the)f(matc)m(h)h(is)g(p)s(erformed)e
8a0829e9 18913(without)h(regard)g(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m
e59452c7 18914(haracters.)275 1203 y(Finally)-8 b(,)42 b(an)m(y)c(pre\014x)g(and)f
6e51e0d0 18915(su\016x)h(sp)s(eci\014ed)f(with)i(the)f Ft(-P)g Fu(and)g
e59452c7 18916Ft(-S)f Fu(options)i(are)g(added)f(to)h(eac)m(h)150 1313
6e51e0d0 18917y(mem)m(b)s(er)31 b(of)g(the)h(completion)h(list,)f(and)f(the)h(result)
e59452c7
CR
18918f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)150
189191422 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)275
189201559 y(If)d(the)h(previously-applied)f(actions)i(do)f(not)g(generate)h
18921(an)m(y)f(matc)m(hes,)i(and)d(the)h Ft(-o)h(dirnames)d
18922Fu(op-)150 1669 y(tion)j(w)m(as)f(supplied)f(to)i Ft(complete)d
18923Fu(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g(directory)g(name)h
18924(completion)150 1778 y(is)h(attempted.)275 1915 y(If)35
18925b(the)g Ft(-o)30 b(plusdirs)j Fu(option)j(w)m(as)g(supplied)e(to)i
18926Ft(complete)e Fu(when)g(the)i(compsp)s(ec)f(w)m(as)h(de\014ned,)150
189272025 y(directory)g(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h
6e51e0d0 18928(matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h(the)150
e59452c7 189292134 y(other)31 b(actions.)275 2271 y(By)g(default,)i(if)e(a)h(compsp)s
6e51e0d0 18930(ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e(returned)g(to)h
e59452c7 18931(the)g(completion)150 2381 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g
6e51e0d0 18932(p)s(ossible)f(completions.)39 b(The)20 b(default)h(Bash)g(completions)
e59452c7 18933h(are)g(not)f(attempted,)150 2491 y(and)30 b(the)g(Readline)h(default)f
e6983002 18934(of)g(\014lename)h(completion)g(is)f(disabled.)41 b(If)29
e59452c7 18935b(the)i Ft(-o)e(bashdefault)e Fu(option)150 2600 y(w)m(as)d(supplied)e
e6983002 18936(to)j Ft(complete)c Fu(when)i(the)g(compsp)s(ec)h(w)m(as)g(de\014ned,)g
e59452c7 18937(the)f(default)h(Bash)g(completions)h(are)150 2710 y(attempted)j(if)f
e6983002
CR
18938(the)h(compsp)s(ec)f(generates)h(no)f(matc)m(hes.)41
18939b(If)27 b(the)g Ft(-o)j(default)25 b Fu(option)j(w)m(as)f(supplied)f
e59452c7 18940(to)150 2819 y Ft(complete)f Fu(when)h(the)h(compsp)s(ec)f(w)m(as)i
e6983002 18941(de\014ned,)e(Readline's)i(default)f(completion)h(will)f(b)s(e)f(p)s
e59452c7 18942(erformed)150 2929 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)
e6983002 18943g(the)g(default)f(Bash)h(completions\))h(generate)g(no)e(matc)m(hes.)
e59452c7 18944275 3066 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g
e6983002 18945(name)f(completion)h(is)f(desired,)i(the)e(programmable)150
e59452c7 189463176 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d
d37a4722 18947(a)i(slash)g(to)g(completed)h(names)e(whic)m(h)h(are)g(sym-)150
e59452c7 189483285 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5
d37a4722 18949b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fr(mark-directories)
e59452c7 1895045 b Fu(Readline)c(v)-5 b(ariable,)150 3395 y(regardless)31
d37a4722 18951b(of)f(the)h(setting)g(of)g(the)f Fr(mark-symlink)m(ed-directories)36
e59452c7 18952b Fu(Readline)31 b(v)-5 b(ariable.)275 3532 y(There)25
d37a4722
CR
18953b(is)i(some)g(supp)s(ort)e(for)h(dynamically)h(mo)s(difying)f
18954(completions.)40 b(This)26 b(is)g(most)h(useful)f(when)150
e59452c7 189553641 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
d37a4722 18956g(sp)s(eci\014ed)f(with)g Ft(-D)p Fu(.)72 b(It's)42 b(p)s(ossible)f
e59452c7 18957(for)g(shell)150 3751 y(functions)28 b(executed)h(as)f(completion)i
d37a4722 18958(handlers)d(to)i(indicate)g(that)g(completion)g(should)e(b)s(e)h
e59452c7 18959(retried)g(b)m(y)150 3861 y(returning)j(an)i(exit)g(status)f(of)h(124.)
d37a4722 1896048 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c(c)m(hanges)j
e59452c7 18961(the)e(compsp)s(ec)150 3970 y(asso)s(ciated)43 b(with)e(the)g(command)g
602eae4d 18962(on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g(attempted)h(\(supplied)e
e59452c7 18963(as)i(the)150 4080 y(\014rst)29 b(argumen)m(t)h(when)e(the)i(function)f
602eae4d 18964(is)g(executed\),)j(programmable)d(completion)i(restarts)f(from)f(the)
e59452c7 18965150 4189 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)
602eae4d 18966e(compsp)s(ec)i(for)f(that)h(command.)39 b(This)27 b(allo)m(ws)h(a)g
e59452c7 18967(set)g(of)150 4299 y(completions)33 b(to)f(b)s(e)g(built)f(dynamically)
602eae4d 18968i(as)f(completion)h(is)f(attempted,)h(rather)f(than)f(b)s(eing)g
e59452c7 18969(loaded)150 4408 y(all)g(at)g(once.)275 4545 y(F)-8 b(or)38
602eae4d
CR
18970b(instance,)h(assuming)e(that)h(there)f(is)h(a)f(library)g(of)g(compsp)
18971s(ecs,)i(eac)m(h)g(k)m(ept)e(in)g(a)h(\014le)f(corre-)150
e59452c7 189724655 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
602eae4d 18973(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
e59452c7
CR
189744765 y(load)31 b(completions)g(dynamically:)390 4902
18975y Ft(_completion_loader\(\))390 5011 y({)581 5121 y(.)47
602eae4d 18976b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
e59452c7
CR
18977(return)f(124)390 5230 y(})390 5340 y(complete)g(-D)h(-F)g
18978(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)p
18979eop end
e2520247
CR
18980%%Page: 150 156
18981TeXDict begin 150 155 bop 150 -116 a Fu(Chapter)30 b(8:)41
18982b(Command)29 b(Line)i(Editing)2062 b(150)150 299 y Fs(8.7)68
e59452c7
CR
18983b(Programmable)47 b(Completion)f(Builtins)150 458 y Fu(Three)21
18984b(builtin)g(commands)f(are)i(a)m(v)-5 b(ailable)24 b(to)e(manipulate)f
18985(the)h(programmable)f(completion)h(facilities:)150 568
18986y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f(argumen)m(ts)h(to)g(a)g
18987(particular)g(command)f(are)h(to)g(b)s(e)f(completed,)j(and)d(t)m(w)m
18988(o)150 677 y(to)e(mo)s(dify)f(the)g(completion)i(as)e(it)h(is)g(happ)s
d052bd6f
CR
18989(ening.)150 851 y Ft(compgen)870 990 y(compgen)46 b([-V)h
18990Fj(varname)p Ft(])e([)p Fj(option)p Ft(])h([)p Fj(word)p
18991Ft(])630 1129 y Fu(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)
18992g(for)e Fr(w)m(ord)k Fu(according)e(to)f(the)g Fr(option)p
18993Fu(s,)h(whic)m(h)630 1239 y(ma)m(y)g(b)s(e)f(an)m(y)i(option)f
18994(accepted)h(b)m(y)e(the)h Ft(complete)e Fu(builtin)h(with)h(the)g
18995(exceptions)g(of)g Ft(-p)p Fu(,)630 1348 y Ft(-r)p Fu(,)j
18996Ft(-D)p Fu(,)g Ft(-E)p Fu(,)g(and)g Ft(-I)p Fu(,)g(and)g(write)g(the)h
18997(matc)m(hes)g(to)g(the)g(standard)e(output.)630 1487
18998y(If)f(the)i Ft(-V)e Fu(option)h(is)g(supplied,)f Ft(compgen)f
18999Fu(stores)j(the)f(generated)h(completions)g(in)m(to)g(the)630
190001597 y(indexed)24 b(arra)m(y)g(v)-5 b(ariable)25 b Fr(v)-5
19001b(arname)29 b Fu(instead)24 b(of)h(writing)f(them)g(to)h(the)f
19002(standard)f(output.)630 1736 y(When)38 b(using)g(the)h
19003Ft(-F)e Fu(or)i Ft(-C)f Fu(options,)j(the)d(v)-5 b(arious)39
19004b(shell)f(v)-5 b(ariables)39 b(set)g(b)m(y)g(the)f(pro-)630
190051846 y(grammable)31 b(completion)h(facilities,)g(while)f(a)m(v)-5
19006b(ailable,)33 b(will)d(not)h(ha)m(v)m(e)h(useful)d(v)-5
19007b(alues.)630 1985 y(The)34 b(matc)m(hes)h(will)g(b)s(e)f(generated)h
e59452c7 19008(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h(programmable)f(com-)630
d052bd6f
CR
190092094 y(pletion)d(co)s(de)g(had)f(generated)i(them)e(directly)i(from)e
19010(a)h(completion)h(sp)s(eci\014cation)f(with)630 2204
e59452c7
CR
19011y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j Fu(is)d(sp)s
19012(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
d052bd6f
CR
19013Fr(w)m(ord)j Fu(will)630 2313 y(b)s(e)d(displa)m(y)m(ed.)630
190142453 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in)
e6983002 19015m(v)-5 b(alid)25 b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m
d052bd6f
CR
19016(ere)630 2562 y(generated.)150 2731 y Ft(complete)870
190172870 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
19018Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])870 2980 y([-G)g
19019Fj(globpat)p Ft(])e([-W)i Fj(wordlist)p Ft(])f([-F)h
19020Fj(function)p Ft(])e([-C)i Fj(command)p Ft(])870 3089
19021y([-X)g Fj(filterpat)p Ft(])e([-P)i Fj(prefix)p Ft(])f([-S)h
19022Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f Ft(...])870
190233199 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f Ft(...)o(])630
190243338 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i(eac)m(h)g
19025Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63 b(If)38
19026b(the)f Ft(-p)g Fu(option)630 3447 y(is)30 b(supplied,)e(or)i(if)g(no)f
19027(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s
19028(eci\014cations)g(are)630 3557 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g
d37a4722 19029(that)h(allo)m(ws)g(them)e(to)i(b)s(e)e(reused)f(as)i(input.)38
d052bd6f 19030b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 3667
d37a4722
CR
19031y(a)i(completion)h(sp)s(eci\014cation)f(for)g(eac)m(h)h
19032Fr(name)p Fu(,)f(or,)h(if)e(no)h Fr(name)5 b Fu(s)27
d052bd6f 19033b(are)h(supplied,)g(all)g(com-)630 3776 y(pletion)i(sp)s
d37a4722 19034(eci\014cations.)42 b(The)29 b Ft(-D)g Fu(option)h(indicates)h(that)f
d052bd6f 19035(other)g(supplied)e(options)j(and)630 3886 y(actions)c(should)e(apply)g
d37a4722 19036(to)i(the)f(\\default")h(command)e(completion;)k(that)e(is,)g
d052bd6f 19037(completion)630 3995 y(attempted)g(on)f(a)h(command)f(for)g(whic)m(h)g
d37a4722 19038(no)g(completion)i(has)d(previously)h(b)s(een)g(de\014ned.)630
d052bd6f
CR
190394105 y(The)e Ft(-E)g Fu(option)h(indicates)g(that)g(other)g(supplied)e
19040(options)h(and)g(actions)i(should)d(apply)h(to)630 4215
d37a4722 19041y(\\empt)m(y")33 b(command)e(completion;)i(that)f(is,)g(completion)h
d052bd6f 19042(attempted)f(on)g(a)f(blank)g(line.)630 4324 y(The)24
d37a4722 19043b Ft(-I)g Fu(option)h(indicates)g(that)g(other)g(supplied)e(options)h
d052bd6f 19044(and)g(actions)i(should)d(apply)h(to)630 4434 y(completion)29
d37a4722 19045b(on)g(the)f(initial)h(non-assignmen)m(t)g(w)m(ord)f(on)g(the)g(line,)i
d052bd6f 19046(or)e(after)h(a)f(command)630 4543 y(delimiter)41 b(suc)m(h)g(as)f(`)p
d37a4722 19047Ft(;)p Fu(')h(or)g(`)p Ft(|)p Fu(',)i(whic)m(h)e(is)f(usually)h
d052bd6f 19048(command)f(name)h(completion.)72 b(If)630 4653 y(m)m(ultiple)26
d37a4722
CR
19049b(options)g(are)g(supplied,)g(the)f Ft(-D)g Fu(option)h(tak)m(es)i
19050(precedence)e(o)m(v)m(er)g Ft(-E)p Fu(,)h(and)e(b)s(oth)630
d052bd6f 190514762 y(tak)m(e)34 b(precedence)f(o)m(v)m(er)h Ft(-I)p
d37a4722
CR
19052Fu(.)47 b(If)32 b(an)m(y)h(of)g Ft(-D)p Fu(,)g Ft(-E)p
19053Fu(,)f(or)h Ft(-I)f Fu(are)h(supplied,)f(an)m(y)h(other)g
d052bd6f 19054Fr(name)630 4872 y Fu(argumen)m(ts)k(are)g(ignored;)j(these)d
b52e30b8 19055(completions)h(only)e(apply)g(to)i(the)f(case)g(sp)s(eci\014ed)f(b)m(y)
d052bd6f 19056630 4982 y(the)31 b(option.)630 5121 y(The)e(pro)s(cess)g(of)h
b52e30b8 19057(applying)g(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m(ord)i
e59452c7 19058(completion)630 5230 y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m
12beeabf 19059(v)m(e)j(\(see)f(Section)g(8.6)g([Programmable)g(Completion],)630
e2520247
CR
190605340 y(page)31 b(147\).)p eop end
19061%%Page: 151 157
19062TeXDict begin 151 156 bop 150 -116 a Fu(Chapter)30 b(8:)41
19063b(Command)29 b(Line)i(Editing)2062 b(151)630 299 y(Other)28
e59452c7
CR
19064b(options,)i(if)f(sp)s(eci\014ed,)g(ha)m(v)m(e)h(the)f(follo)m(wing)i
19065(meanings.)40 b(The)29 b(argumen)m(ts)g(to)h(the)630
19066408 y Ft(-G)p Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h
19067Fu(options)h(\(and,)h(if)f(necessary)-8 b(,)42 b(the)e
19068Ft(-P)f Fu(and)f Ft(-S)h Fu(options\))h(should)f(b)s(e)630
19069518 y(quoted)28 b(to)h(protect)g(them)f(from)f(expansion)h(b)s(efore)g
19070(the)g Ft(complete)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630
19071669 y Ft(-o)i Fj(comp-option)1110 778 y Fu(The)c Fr(comp-option)i
6e51e0d0 19072Fu(con)m(trols)g(sev)m(eral)h(asp)s(ects)e(of)g(the)g(compsp)s(ec's)g
e59452c7 19073(b)s(eha)m(v-)1110 888 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
6e51e0d0 19074(generation)h(of)e(completions.)41 b Fr(comp-option)27
e59452c7
CR
19075b Fu(ma)m(y)1110 998 y(b)s(e)j(one)g(of:)1110 1148 y
19076Ft(bashdefault)1590 1258 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
19077(default)f(Bash)h(completions)g(if)g(the)1590 1367 y(compsp)s(ec)i
19078(generates)i(no)e(matc)m(hes.)1110 1518 y Ft(default)144
e6983002 19079b Fu(Use)22 b(Readline's)g(default)g(\014lename)g(completion)g(if)g
e59452c7
CR
19080(the)g(comp-)1590 1628 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
190811778 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
19082(completion)g(if)f(the)g(compsp)s(ec)1590 1888 y(generates)32
19083b(no)e(matc)m(hes.)1110 2039 y Ft(filenames)1590 2148
19084y Fu(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j
19085(\014lenames,)1590 2258 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h
e6983002 19086(\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)1590
e59452c7
CR
190872367 y(adding)22 b(a)g(slash)g(to)h(directory)f(names,)i(quoting)f(sp)s
19088(ecial)f(c)m(har-)1590 2477 y(acters,)39 b(or)d(suppressing)f(trailing)
19089i(spaces\).)59 b(This)35 b(option)i(is)1590 2587 y(in)m(tended)30
8a0829e9 19090b(to)g(b)s(e)g(used)f(with)g(shell)i(functions)e(sp)s(eci\014ed)g(with)
e59452c7 190911590 2696 y Ft(-F)p Fu(.)1110 2847 y Ft(noquote)144 b
e6983002 19092Fu(T)-8 b(ell)28 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)m
e59452c7
CR
19093(ords)f(if)h(they)1590 2956 y(are)j(\014lenames)f(\(quoting)h
19094(\014lenames)g(is)f(the)h(default\).)1110 3107 y Ft(nosort)192
e6983002 19095b 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
19096(ossible)g(completions)1590 3217 y(alphab)s(etically)-8
19097b(.)1110 3367 y Ft(nospace)144 b Fu(T)-8 b(ell)40 b(Readline)g(not)g
e6983002 19098(to)g(app)s(end)d(a)j(space)g(\(the)f(default\))h(to)1590
e59452c7
CR
190993477 y(w)m(ords)30 b(completed)h(at)g(the)g(end)f(of)g(the)h(line.)1110
191003628 y Ft(plusdirs)96 b Fu(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d
19101(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 3737 y(ated,)g
d37a4722 19102(directory)f(name)g(completion)i(is)d(attempted)i(and)f(an)m(y)1590
e59452c7
CR
191033847 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h
19104(other)g(actions.)630 3998 y Ft(-A)f Fj(action)66 b Fu(The)25
602eae4d 19105b 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
19106(generate)i(a)e(list)h(of)f(p)s(ossible)1110 4107 y(completions:)1110
191074258 y Ft(alias)240 b Fu(Alias)31 b(names.)41 b(Ma)m(y)31
a6ae8f35 19108b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i Ft(-a)p Fu(.)1110
e59452c7
CR
191094408 y Ft(arrayvar)96 b Fu(Arra)m(y)31 b(v)-5 b(ariable)31
19110b(names.)1110 4559 y Ft(binding)144 b Fu(Readline)30
a6ae8f35 19111b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h([Bindable)1590
e2520247 191124669 y(Readline)h(Commands],)f(page)h(137\).)1110 4819
a6ae8f35 19113y Ft(builtin)144 b Fu(Names)21 b(of)g(shell)f(builtin)h(commands.)37
e59452c7
CR
19114b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 4929
19115y(as)31 b Ft(-b)p Fu(.)1110 5080 y Ft(command)144 b Fu(Command)29
b52e30b8 19116b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i
e59452c7 19117Ft(-c)p Fu(.)1110 5230 y Ft(directory)1590 5340 y Fu(Directory)h
b52e30b8 19118(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g
e59452c7 19119Ft(-d)p Fu(.)p eop end
e2520247
CR
19120%%Page: 152 158
19121TeXDict begin 152 157 bop 150 -116 a Fu(Chapter)30 b(8:)41
19122b(Command)29 b(Line)i(Editing)2062 b(152)1110 299 y Ft(disabled)96
e59452c7 19123b Fu(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110
9c317a6a
CR
19124455 y Ft(enabled)144 b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)
191251110 610 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v)
e59452c7 19126-5 b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
9c317a6a 19127720 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 876 y Ft(file)288
12beeabf 19128b Fu(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
9c317a6a
CR
19129(as)i Ft(-f)p Fu(.)1110 1031 y Ft(function)96 b Fu(Names)31
19130b(of)g(shell)f(functions.)1110 1187 y Ft(group)240 b
12beeabf 19131Fu(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
9c317a6a 19132(as)g Ft(-g)p Fu(.)1110 1343 y Ft(helptopic)1590 1452
e59452c7 19133y Fu(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
9c317a6a 19134Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 1562 y(tion)31
e2520247 19135b(4.2)g([Bash)g(Builtins],)g(page)g(57\).)1110 1718 y
12beeabf 19136Ft(hostname)96 b Fu(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
9c317a6a 19137(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 1827 y(the)55 b
12beeabf 19138Ft(HOSTFILE)e Fu(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
e2520247 19139([Bash)1590 1937 y(V)-8 b(ariables],)32 b(page)f(80\).)1110
9c317a6a 191402093 y Ft(job)336 b Fu(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f
12beeabf 19141(activ)m(e.)46 b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590
9c317a6a 191422202 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 2358 y Ft(keyword)144
12beeabf 19143b Fu(Shell)30 b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32
e6983002 19144b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i Ft(-k)p Fu(.)1110
9c317a6a
CR
191452514 y Ft(running)144 b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f
19146(con)m(trol)h(is)g(activ)m(e.)1110 2669 y Ft(service)144
e6983002 19147b Fu(Service)31 b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s
9c317a6a 19148(eci\014ed)g(as)g Ft(-s)p Fu(.)1110 2825 y Ft(setopt)192
e6983002 19149b Fu(V)-8 b(alid)39 b(argumen)m(ts)g(for)f(the)h Ft(-o)e
9c317a6a 19150Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 2935
e2520247 19151y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(68\).)
9c317a6a 191521110 3091 y Ft(shopt)240 b Fu(Shell)40 b(option)g(names)g(as)g
e6983002 19153(accepted)i(b)m(y)e(the)g Ft(shopt)e Fu(builtin)1590
e2520247 191543200 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(57\).)
9c317a6a
CR
191551110 3356 y Ft(signal)192 b Fu(Signal)31 b(names.)1110
191563512 y Ft(stopped)144 b Fu(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g
19157(job)g(con)m(trol)i(is)f(activ)m(e.)1110 3667 y Ft(user)288
e6983002 19158b Fu(User)30 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
9c317a6a 19159(as)i Ft(-u)p Fu(.)1110 3823 y Ft(variable)96 b Fu(Names)36
e6983002 19160b(of)g(all)g(shell)g(v)-5 b(ariables.)56 b(Ma)m(y)37
9c317a6a
CR
19161b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590 3933 y Ft(-v)p
19162Fu(.)630 4088 y Ft(-C)30 b Fj(command)1110 4198 y Fr(command)35
e6983002 19163b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m(vironmen)m(t,)i(and)f
9c317a6a
CR
19164(its)g(output)g(is)1110 4308 y(used)38 b(as)h(the)g(p)s(ossible)f
19165(completions.)67 b(Argumen)m(ts)39 b(are)g(passed)f(as)h(with)1110
191664417 y(the)31 b Ft(-F)e Fu(option.)630 4573 y Ft(-F)h
19167Fj(function)1110 4682 y Fu(The)39 b(shell)g(function)g
19168Fr(function)g Fu(is)g(executed)h(in)f(the)g(curren)m(t)g(shell)g(en)m
19169(vi-)1110 4792 y(ronmen)m(t.)72 b(When)41 b(it)g(is)g(executed,)k($1)c
19170(is)g(the)g(name)g(of)g(the)g(command)1110 4902 y(whose)34
19171b(argumen)m(ts)h(are)g(b)s(eing)f(completed,)j($2)e(is)f(the)h(w)m(ord)
19172f(b)s(eing)g(com-)1110 5011 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m
19173(ord)g(preceding)f(the)h(w)m(ord)f(b)s(eing)h(completed,)1110
191745121 y(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(\(see)g(Section)f(8.6)h
e2520247 19175([Programmable)g(Completion],)1110 5230 y(page)30 b(147\).)42
9c317a6a
CR
19176b(When)29 b(it)h(\014nishes,)e(the)h(p)s(ossible)g(completions)h(are)g
19177(retriev)m(ed)1110 5340 y(from)g(the)g(v)-5 b(alue)31
19178b(of)g(the)f Ft(COMPREPLY)e Fu(arra)m(y)j(v)-5 b(ariable.)p
19179eop end
e2520247
CR
19180%%Page: 153 159
19181TeXDict begin 153 158 bop 150 -116 a Fu(Chapter)30 b(8:)41
19182b(Command)29 b(Line)i(Editing)2062 b(153)630 299 y Ft(-G)30
e59452c7
CR
19183b Fj(globpat)1110 408 y Fu(The)39 b(\014lename)h(expansion)g(pattern)g
19184Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)1110 518
19185y(the)31 b(p)s(ossible)e(completions.)630 708 y Ft(-P)h
b52e30b8
CR
19186Fj(prefix)66 b Fr(pre\014x)39 b Fu(is)34 b(added)f(at)i(the)f(b)s
19187(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
e59452c7
CR
19188817 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
191891007 y Ft(-S)g Fj(suffix)66 b Fr(su\016x)26 b Fu(is)20
a8fd3f3e 19190b(app)s(ended)f(to)i(eac)m(h)h(p)s(ossible)e(completion)i(after)f(all)g
e59452c7
CR
19191(other)g(options)1110 1116 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
191921306 y Ft(-W)h Fj(wordlist)1110 1416 y Fu(The)24 b Fr(w)m(ordlist)k
6e51e0d0 19193Fu(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i
e59452c7 19194Ft(IFS)e Fu(sp)s(ecial)h(v)-5 b(ariable)1110 1525 y(as)36
5cdaaf76 19195b(delimiters,)i(and)e(eac)m(h)h(resultan)m(t)g(w)m(ord)e(is)h
e59452c7 19196(expanded.)57 b(The)35 b(p)s(ossible)1110 1635 y(completions)c(are)e
5cdaaf76 19197(the)h(mem)m(b)s(ers)f(of)g(the)h(resultan)m(t)g(list)g(whic)m(h)f
e59452c7
CR
19198(matc)m(h)i(the)1110 1744 y(w)m(ord)f(b)s(eing)g(completed.)630
191991934 y Ft(-X)g Fj(filterpat)1110 2043 y Fr(\014lterpat)d
6e51e0d0 19200Fu(is)e(a)g(pattern)g(as)f(used)g(for)h(\014lename)g(expansion.)38
e59452c7 19201b(It)25 b(is)g(applied)f(to)1110 2153 y(the)30 b(list)f(of)h(p)s
6e51e0d0 19202(ossible)f(completions)h(generated)h(b)m(y)e(the)g(preceding)h(options)
e59452c7
CR
192031110 2263 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m
19204(hing)g Fr(\014lterpat)h Fu(is)e(remo)m(v)m(ed)1110 2372
6e51e0d0
CR
19205y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p Ft(!)p
19206Fu(')e(in)g Fr(\014lterpat)j Fu(negates)f(the)f(pattern;)g(in)f(this)
e59452c7
CR
192071110 2482 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g
19208Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)630 2671 y(The)35
6e51e0d0
CR
19209b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in)m(v)-5
19210b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h(other)630
d052bd6f
CR
192112781 y(than)29 b Ft(-p)p Fu(,)g Ft(-r)p Fu(,)h Ft(-D)p
19212Fu(,)f Ft(-E)p Fu(,)g(or)h Ft(-I)e Fu(is)i(supplied)e(without)h(a)h
19213Fr(name)35 b Fu(argumen)m(t,)30 b(an)f(attempt)i(is)630
192142891 y(made)24 b(to)g(remo)m(v)m(e)i(a)e(completion)h(sp)s
19215(eci\014cation)g(for)e(a)h Fr(name)29 b Fu(for)24 b(whic)m(h)f(no)h(sp)
19216s(eci\014cation)630 3000 y(exists,)31 b(or)g(an)f(error)g(o)s(ccurs)g
19217(adding)g(a)h(completion)g(sp)s(eci\014cation.)150 3190
19218y Ft(compopt)870 3339 y(compopt)46 b([-o)h Fj(option)p
19219Ft(])f([-DEI])g([+o)h Fj(option)p Ft(])e([)p Fj(name)p
19220Ft(])630 3489 y Fu(Mo)s(dify)33 b(completion)h(options)g(for)f(eac)m(h)
19221h Fr(name)39 b Fu(according)34 b(to)g(the)f Fr(option)p
19222Fu(s,)i(or)e(for)g(the)630 3598 y(curren)m(tly-executing)46
19223b(completion)f(if)f(no)f Fr(name)5 b Fu(s)44 b(are)h(supplied.)80
19224b(If)43 b(no)h Fr(option)p Fu(s)h(are)630 3708 y(giv)m(en,)30
19225b(displa)m(y)e(the)g(completion)h(options)g(for)e(eac)m(h)i
19226Fr(name)34 b Fu(or)27 b(the)i(curren)m(t)e(completion.)630
192273818 y(The)f(p)s(ossible)g(v)-5 b(alues)27 b(of)f Fr(option)h
19228Fu(are)g(those)g(v)-5 b(alid)26 b(for)g(the)h Ft(complete)d
19229Fu(builtin)i(describ)s(ed)630 3927 y(ab)s(o)m(v)m(e.)41
19230b(The)27 b Ft(-D)f Fu(option)i(indicates)g(that)g(other)f(supplied)f
19231(options)i(should)e(apply)h(to)h(the)630 4037 y(\\default")33
19232b(command)f(completion;)i(that)f(is,)g(completion)g(attempted)g(on)f(a)
19233g(command)630 4146 y(for)g(whic)m(h)g(no)g(completion)i(has)e
19234(previously)g(b)s(een)g(de\014ned.)45 b(The)32 b Ft(-E)f
19235Fu(option)i(indicates)630 4256 y(that)23 b(other)f(supplied)e(options)j
19236(should)e(apply)g(to)i(\\empt)m(y")g(command)f(completion;)k(that)630
192374366 y(is,)36 b(completion)g(attempted)g(on)e(a)h(blank)g(line.)54
19238b(The)34 b Ft(-I)g Fu(option)h(indicates)g(that)h(other)630
192394475 y(supplied)23 b(options)i(should)f(apply)g(to)i(completion)g(on)e
19240(the)h(initial)h(non-assignmen)m(t)f(w)m(ord)630 4585
19241y(on)37 b(the)f(line,)j(or)e(after)g(a)g(command)f(delimiter)i(suc)m(h)
19242e(as)h(`)p Ft(;)p Fu(')g(or)f(`)p Ft(|)p Fu(',)j(whic)m(h)e(is)f
19243(usually)630 4694 y(command)30 b(name)h(completion.)630
192444844 y(If)k(m)m(ultiple)i(options)f(are)g(supplied,)g(the)g
19245Ft(-D)g Fu(option)g(tak)m(es)h(precedence)g(o)m(v)m(er)g
19246Ft(-E)p Fu(,)g(and)630 4954 y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m
19247(v)m(er)i Ft(-I)630 5103 y Fu(The)23 b(return)g(v)-5
19248b(alue)25 b(is)f(true)g(unless)f(an)h(in)m(v)-5 b(alid)24
19249b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f(made)630
192505213 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h
b52e30b8 19251Fr(name)k Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f
e59452c7
CR
19252(exists,)630 5322 y(or)e(an)h(output)f(error)g(o)s(ccurs.)p
19253eop end
e2520247
CR
19254%%Page: 154 160
19255TeXDict begin 154 159 bop 150 -116 a Fu(Chapter)30 b(8:)41
19256b(Command)29 b(Line)i(Editing)2062 b(154)150 299 y Fs(8.8)68
e59452c7
CR
19257b(A)44 b(Programmable)j(Completion)f(Example)150 458
19258y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h(additional)g
19259(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i(default)150
19260568 y(actions)29 b Ft(complete)d Fu(and)i Ft(compgen)e
19261Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g(and)g(bind)e(it)
19262j(to)g(a)g(particular)150 677 y(command)h(using)g Ft(complete)e(-F)p
19263Fu(.)275 829 y(The)j(follo)m(wing)j(function)e(pro)m(vides)g
19264(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46 b(It)32
19265b(is)h(a)f(reasonably)h(go)s(o)s(d)150 939 y(example)41
b52e30b8 19266b(of)g(what)f(shell)h(functions)f(m)m(ust)g(do)h(when)e(used)h(for)g
e59452c7 19267(completion.)73 b(This)39 b(function)h(uses)150 1049
b52e30b8
CR
19268y(the)32 b(w)m(ord)f(passed)g(as)h Ft($2)f Fu(to)h(determine)g(the)f
19269(directory)h(name)g(to)g(complete.)46 b(Y)-8 b(ou)32
e59452c7 19270b(can)g(also)g(use)g(the)150 1158 y Ft(COMP_WORDS)c Fu(arra)m(y)i(v)-5
68d220cb 19271b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g(indexed)g(b)m(y)g
e59452c7 19272(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275 1310 y(The)42
8a0829e9
CR
19273b(function)h(relies)h(on)e(the)i Ft(complete)c Fu(and)j
19274Ft(compgen)e Fu(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h(w)m(ork,)
e59452c7 19275150 1420 y(adding)25 b(only)h(the)g(things)g(that)g(the)g(Bash)g
8a0829e9 19276Ft(cd)f Fu(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e(directory)g
e59452c7
CR
19277(names:)38 b(tilde)150 1529 y(expansion)22 b(\(see)h(Section)g(3.5.2)g
19278([Tilde)g(Expansion],)g(page)g(25\),)i(searc)m(hing)e(directories)g(in)
19279e Fr($CDP)-8 b(A)g(TH)p Fu(,)150 1639 y(whic)m(h)21 b(is)h(describ)s
19280(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f
e2520247 19281(Builtins],)j(page)e(49\),)j(and)c(basic)h(supp)s(ort)150
e59452c7 192821748 y(for)31 b(the)h Ft(cdable_vars)d Fu(shell)i(option)h(\(see)h
e2520247 19283(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)f(72\).)46
e59452c7 19284b Ft(_comp_)150 1858 y(cd)30 b Fu(mo)s(di\014es)g(the)h(v)-5
8a0829e9
CR
19285b(alue)31 b(of)g Fr(IFS)36 b Fu(so)31 b(that)g(it)g(con)m(tains)h(only)
19286f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
e59452c7 192871968 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
6e51e0d0 19288Fu(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
e59452c7 19289(p)s(er)150 2077 y(line.)275 2229 y(P)m(ossible)24 b(completions)h(go)g
6e51e0d0
CR
19290(in)m(to)g(the)f Fr(COMPREPL)-8 b(Y)36 b Fu(arra)m(y)24
19291b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c(arra)m(y)150
e59452c7 192922339 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
6e51e0d0 19293(retriev)m(es)h(the)g(completions)g(from)f(there)g(when)150
e59452c7
CR
192942448 y(the)h(function)f(returns.)390 2600 y Ft(#)47 b(A)h(completion)d
19295(function)g(for)i(the)g(cd)g(builtin)390 2710 y(#)g(based)g(on)g(the)g
e6983002 19296(cd)g(completion)e(function)h(from)g(the)h(bash_completion)d(package)
e59452c7
CR
19297390 2819 y(_comp_cd\(\))390 2929 y({)581 3039 y(local)i(IFS=$')g
19298(\\t\\n')190 b(#)47 b(normalize)f(IFS)581 3148 y(local)g(cur)h
19299(_skipdot)f(_cdpath)581 3258 y(local)g(i)i(j)f(k)581
193003477 y(#)g(Tilde)g(expansion,)e(which)h(also)h(expands)f(tilde)g(to)h
19301(full)g(pathname)581 3587 y(case)g("$2")f(in)581 3696
19302y(\\~*\))190 b(eval)46 b(cur="$2")g(;;)581 3806 y(*\))286
19303b(cur=$2)46 b(;;)581 3915 y(esac)581 4134 y(#)h(no)h(cdpath)e(or)h
e6983002 19304(absolute)e(pathname)h(--)h(straight)f(directory)f(completion)581
e59452c7
CR
193054244 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h
19306(@\(./*|../*|/*\))d(]];)j(then)772 4354 y(#)g(compgen)f(prints)g(paths)
e6983002 19307h(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772
e59452c7
CR
193084463 y(IFS=$'\\n')772 4573 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g
19309("$cur"\))f(\))772 4682 y(IFS=$')g(\\t\\n')581 4792 y(#)h
e6983002 19310(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j(not)e(in)i
e59452c7
CR
19311(CDPATH)581 4902 y(else)772 5011 y(IFS=$'\\n')772 5121
19312y(_skipdot=false)772 5230 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d
19313(null)i(directory)e(names)i(to)g(.)772 5340 y(_cdpath=${CDPATH/#:/.:})p
19314eop end
e2520247
CR
19315%%Page: 155 161
19316TeXDict begin 155 160 bop 150 -116 a Fu(Chapter)30 b(8:)41
19317b(Command)29 b(Line)i(Editing)2062 b(155)772 299 y Ft
e59452c7
CR
19318(_cdpath=${_cdpath//::/:.)o(:})772 408 y(_cdpath=${_cdpath/\045:/:.})
19319772 518 y(for)47 b(i)g(in)g(${_cdpath//:/$'\\n'};)c(do)963
19320628 y(if)k([[)g($i)g(-ef)g(.)h(]];)f(then)f(_skipdot=true;)e(fi)963
19321737 y(k="${#COMPREPLY[@]}")963 847 y(for)j(j)g(in)g($\()g(compgen)f(-d)
19322h(--)h("$i/$cur")d(\);)i(do)1154 956 y(COMPREPLY[k++]=${j#$i/})375
19323b(#)48 b(cut)f(off)f(directory)963 1066 y(done)772 1176
19324y(done)772 1285 y($_skipdot)f(||)i(COMPREPLY+=\()e($\(compgen)g(-d)i
19325(--)g("$cur"\))f(\))772 1395 y(IFS=$')g(\\t\\n')581 1504
19326y(fi)581 1724 y(#)h(variable)f(names)g(if)h(appropriate)e(shell)i
19327(option)f(set)h(and)f(no)i(completions)581 1833 y(if)f(shopt)f(-q)i
19328(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c(-eq)k(0)g(]];)g(then)772
193291943 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g("$cur"\))f(\))581
193302052 y(fi)581 2271 y(return)g(0)390 2381 y(})275 2516
19331y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h(function)e(using)f(the)
19332i Ft(-F)f Fu(option)h(to)g Ft(complete)p Fu(:)390 2650
19333y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f(and)i(append)f
19334(slashes)g(to)h(directories;)390 2760 y(#)g(use)g(the)g(bash)g(default)
19335f(completion)f(for)i(other)f(arguments)390 2869 y(complete)g(-o)h
19336(filenames)e(-o)i(nospace)f(-o)h(bashdefault)e(-F)i(_comp_cd)f(cd)150
193373004 y Fu(Since)33 b(w)m(e'd)g(lik)m(e)i(Bash)e(and)f(Readline)i(to)g
19338(tak)m(e)g(care)g(of)f(some)h(of)f(the)g(other)h(details)g(for)e(us,)i
19339(w)m(e)f(use)150 3113 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g
19340(Bash)f(and)f(Readline)i(what)f(to)g(do.)76 b(The)41
19341b Ft(-o)30 b(filenames)39 b Fu(option)150 3223 y(tells)j(Readline)g
19342(that)g(the)f(p)s(ossible)g(completions)h(should)f(b)s(e)f(treated)i
19343(as)g(\014lenames,)i(and)d(quoted)150 3333 y(appropriately)-8
19344b(.)53 b(That)34 b(option)h(will)g(also)g(cause)g(Readline)g(to)g(app)s
19345(end)e(a)h(slash)g(to)h(\014lenames)g(it)g(can)150 3442
19346y(determine)i(are)g(directories)h(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i
19347(migh)m(t)f(w)m(an)m(t)h(to)g(extend)f Ft(_comp_cd)e
19348Fu(to)i(app)s(end)f(a)150 3552 y(slash)22 b(if)g(w)m(e're)h(using)f
19349(directories)h(found)e(via)i Fr(CDP)-8 b(A)g(TH)10 b
19350Fu(:)37 b(Readline)23 b(can't)g(tell)g(those)g(completions)h(are)150
193513661 y(directories\).)45 b(The)31 b Ft(-o)f(nospace)f
19352Fu(option)j(tells)g(Readline)g(to)h(not)e(app)s(end)f(a)i(space)g(c)m
19353(haracter)h(to)f(the)150 3771 y(directory)c(name,)h(in)f(case)h(w)m(e)f
19354(w)m(an)m(t)h(to)f(app)s(end)f(to)h(it.)41 b(The)27 b
19355Ft(-o)j(bashdefault)25 b Fu(option)j(brings)f(in)h(the)150
e9c75143
CR
193563880 y(rest)e(of)g(the)g Ft(")p Fu(Bash)g(default)p Ft(")g
19357Fu(completions)h({)f(p)s(ossible)f(completions)i(that)g(Bash)f(adds)f
19358(to)i(the)f(default)150 3990 y(Readline)i(set.)40 b(These)28
9128f932 19359b(include)f(things)g(lik)m(e)i(command)e(name)h(completion,)h(v)-5
e59452c7 19360b(ariable)28 b(completion)h(for)150 4100 y(w)m(ords)e(b)s(eginning)h
9128f932
CR
19361(with)f(`)p Ft($)p Fu(')h(or)g(`)p Ft(${)p Fu(',)h(completions)g(con)m
19362(taining)g(pathname)f(expansion)g(patterns)g(\(see)150
d052bd6f 193634209 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i(36\),)f(and)f
e59452c7 19364(so)h(on.)275 4344 y(Once)39 b(installed)i(using)e Ft(complete)p
9128f932 19365Fu(,)h Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m
e59452c7
CR
19366(e)g(attempt)h(w)m(ord)150 4453 y(completion)32 b(for)e(a)h
19367Ft(cd)e Fu(command.)275 4588 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
a6ae8f35 19368(extensiv)m(e)h(collection)i(of)c(completions)i(for)f(most)g(of)g(the)g
e59452c7 19369(common)150 4697 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
a6ae8f35 19370(a)m(v)-5 b(ailable)36 b(as)e(part)f(of)h(the)f(bash)p
e59452c7
CR
193712943 4697 28 4 v 39 w(completion)i(pro)5 b(ject.)150
193724807 y(This)33 b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h
a6ae8f35 19373(GNU/Lin)m(ux)f(distributions.)51 b(Originally)35 b(written)f(b)m(y)g
e59452c7 19374(Ian)150 4917 y(Macdonald,)48 b(the)c(pro)5 b(ject)44
9128f932
CR
19375b(no)m(w)g(liv)m(es)h(at)f Ft(https:)11 b(/)g(/)g(github)g(.)g(com)g(/)
19376g(sc)o(op)g(/)f(bash)o(-co)o(mple)o(tion)g(/)h Fu(.)150
e59452c7
CR
193775026 y(There)30 b(are)h(p)s(orts)e(for)h(other)h(systems)f(suc)m(h)g
19378(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275 5161 y(An)54
19379b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 5161 V
9128f932 1938040 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f(with)h(bash)
e59452c7 19381f(in)h(the)150 5270 y Ft(examples/complete)26 b Fu(sub)s(directory)-8
a6ae8f35 19382b(.)p eop end
e2520247
CR
19383%%Page: 156 162
19384TeXDict begin 156 161 bop 3614 -116 a Fu(156)150 299
037a8b7f 19385y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
a2851804 19386554 y Fu(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
6e51e0d0 19387f Fm(gnu)h Fu(History)g(Library)e(in)m(teractiv)m(ely)-8
a2851804 19388b(,)50 b(from)42 b(a)h(user's)150 664 y(standp)s(oin)m(t.)76
37c41ab1 19389b(It)42 b(should)f(b)s(e)h(considered)g(a)g(user's)g(guide.)76
6e51e0d0 19390b(F)-8 b(or)43 b(information)f(on)g(using)g(the)g Fm(gnu)150
a2851804
CR
19391774 y Fu(History)31 b(Library)f(in)g(other)g(programs,)g(see)h(the)g
19392Fm(gnu)f Fu(Readline)h(Library)f(Man)m(ual.)150 1025
19393y Fs(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)150
193941184 y Fu(When)44 b(the)g Ft(-o)30 b(history)42 b Fu(option)i(to)h(the)
6e51e0d0 19395f Ft(set)f Fu(builtin)h(is)g(enabled)g(\(see)g(Section)h(4.3.1)h([The)e
e2520247 19396(Set)150 1294 y(Builtin],)32 b(page)g(68\),)h(the)e(shell)h(pro)m
6e51e0d0 19397(vides)f(access)h(to)g(the)f Fr(command)g(history)p Fu(,)h(the)f(list)h
a2851804 19398(of)f(commands)150 1404 y(previously)h(t)m(yp)s(ed.)47
6e51e0d0
CR
19399b(The)33 b(v)-5 b(alue)33 b(of)f(the)h Ft(HISTSIZE)e
19400Fu(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 19401(of)i(com-)150 1513 y(mands)i(to)i(sa)m(v)m(e)h(in)e(a)g(history)h
6e51e0d0 19402(list.)58 b(The)36 b(text)h(of)g(the)f(last)h Ft($HISTSIZE)d
a2851804 19403Fu(commands)i(\(default)g(500\))150 1623 y(is)h(sa)m(v)m(ed.)61
6e51e0d0
CR
19404b(The)36 b(shell)h(stores)h(eac)m(h)g(command)e(in)h(the)g(history)g
19405(list)g(prior)f(to)i(parameter)f(and)f(v)-5 b(ari-)150
a2851804 194061732 y(able)33 b(expansion)g(but)f(after)h(history)f(expansion)h(is)g
6e51e0d0 19407(p)s(erformed,)e(sub)5 b(ject)33 b(to)g(the)g(v)-5 b(alues)33
a2851804
CR
19408b(of)g(the)g(shell)150 1842 y(v)-5 b(ariables)31 b Ft(HISTIGNORE)d
19409Fu(and)h Ft(HISTCONTROL)p Fu(.)275 1984 y(When)g(the)g(shell)h(starts)g
37c41ab1 19410(up,)f(the)h(history)f(is)h(initialized)h(from)e(the)h(\014le)f(named)g
a2851804 19411(b)m(y)h(the)f Ft(HISTFILE)150 2093 y Fu(v)-5 b(ariable)26
6e51e0d0
CR
19412b(\(default)g Ft(~/.bash_history)p Fu(\).)35 b(The)24
19413b(\014le)i(named)e(b)m(y)h(the)h(v)-5 b(alue)25 b(of)h
a2851804 19414Ft(HISTFILE)c Fu(is)k(truncated,)150 2203 y(if)42 b(necessary)-8
37c41ab1
CR
19415b(,)45 b(to)e(con)m(tain)g(no)f(more)g(than)f(the)h(n)m(um)m(b)s(er)f
19416(of)h(lines)g(sp)s(eci\014ed)f(b)m(y)h(the)g(v)-5 b(alue)42
a2851804 19417b(of)g(the)150 2312 y Ft(HISTFILESIZE)28 b Fu(v)-5 b(ariable.)46
9f178efb 19418b(When)31 b(a)h(shell)g(with)g(history)f(enabled)h(exits,)h(the)f(last)
a2851804 19419h Ft($HISTSIZE)c Fu(lines)150 2422 y(are)35 b(copied)g(from)g(the)g
9f178efb 19420(history)f(list)i(to)f(the)g(\014le)g(named)f(b)m(y)h
6e51e0d0 19421Ft($HISTFILE)p Fu(.)51 b(If)35 b(the)g Ft(histappend)d
a2851804 19422Fu(shell)150 2532 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h
e2520247 19423([Bash)f(Builtins],)h(page)g(57\),)h(the)e(lines)g(are)g(app)s(ended)e
a2851804 19424(to)i(the)g(history)150 2641 y(\014le,)36 b(otherwise)f(the)g(history)f
6e51e0d0
CR
19425(\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Ft(HISTFILE)e
19426Fu(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150
a2851804 194272751 y(un)m(writable,)f(the)f(history)g(is)g(not)h(sa)m(v)m(ed.)49
9f178efb 19428b(After)34 b(sa)m(ving)g(the)f(history)-8 b(,)34 b(the)g(history)f
a2851804 19429(\014le)g(is)g(truncated)150 2860 y(to)g(con)m(tain)h(no)f(more)g(than)
6e51e0d0 19430f Ft($HISTFILESIZE)d Fu(lines.)48 b(If)33 b Ft(HISTFILESIZE)c
a2851804 19431Fu(is)k(unset,)g(or)f(set)i(to)f(n)m(ull,)h(a)150 2970
9f178efb
CR
19432y(non-n)m(umeric)c(v)-5 b(alue,)31 b(or)f(a)h(n)m(umeric)f(v)-5
19433b(alue)31 b(less)g(than)f(zero,)h(the)g(history)f(\014le)h(is)f(not)h
a2851804 19434(truncated.)275 3112 y(If)g(the)h Ft(HISTTIMEFORMAT)d
6e51e0d0 19435Fu(is)j(set,)h(the)f(time)h(stamp)f(information)g(asso)s(ciated)i(with)
a2851804 19436e(eac)m(h)h(history)150 3221 y(en)m(try)d(is)h(written)f(to)h(the)f
d3ad40de 19437(history)h(\014le,)f(mark)m(ed)h(with)f(the)g(history)g(commen)m(t)h(c)
a2851804 19438m(haracter.)43 b(When)30 b(the)150 3331 y(history)22
d3ad40de
CR
19439b(\014le)h(is)g(read,)h(lines)f(b)s(eginning)e(with)i(the)f(history)h
19440(commen)m(t)g(c)m(haracter)h(follo)m(w)m(ed)h(immediately)150
a2851804 194413440 y(b)m(y)30 b(a)h(digit)g(are)g(in)m(terpreted)g(as)f(timestamps)h
037a8b7f 19442(for)f(the)h(follo)m(wing)h(history)e(en)m(try)-8 b(.)275
a2851804 194433582 y(The)19 b(builtin)h(command)g Ft(fc)g Fu(ma)m(y)h(b)s(e)f(used)f
037a8b7f 19444(to)i(list)g(or)g(edit)g(and)e(re-execute)j(a)f(p)s(ortion)f(of)g(the)h
a2851804 19445(history)150 3692 y(list.)41 b(The)27 b Ft(history)f
037a8b7f 19446Fu(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 19447(the)h(history)g(list)h(and)f(manipulate)150 3801 y(the)j(history)g
037a8b7f
CR
19448(\014le.)42 b(When)31 b(using)f(command-line)h(editing,)h(searc)m(h)f
19449(commands)g(are)g(a)m(v)-5 b(ailable)33 b(in)e(eac)m(h)150
a2851804 194503911 y(editing)45 b(mo)s(de)g(that)g(pro)m(vide)g(access)h(to)f(the)g
037a8b7f 19451(history)f(list)i(\(see)f(Section)h(8.4.2)g([Commands)e(F)-8
e2520247 19452b(or)150 4020 y(History],)31 b(page)h(138\).)275 4162
037a8b7f
CR
19453y(The)47 b(shell)i(allo)m(ws)h(con)m(trol)f(o)m(v)m(er)h(whic)m(h)e
19454(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)h(history)f(list.)95
a2851804 19455b(The)150 4272 y Ft(HISTCONTROL)25 b Fu(and)j Ft(HISTIGNORE)e
037a8b7f 19456Fu(v)-5 b(ariables)29 b(ma)m(y)h(b)s(e)d(set)j(to)f(cause)g(the)g
a2851804 19457(shell)f(to)i(sa)m(v)m(e)g(only)f(a)g(subset)150 4381
037a8b7f
CR
19458y(of)e(the)g(commands)f(en)m(tered.)40 b(The)26 b Ft(cmdhist)f
19459Fu(shell)i(option,)h(if)f(enabled,)g(causes)h(the)e(shell)h(to)h
a2851804 19460(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 19461(ulti-line)g(command)f(in)g(the)h(same)f(history)g(en)m(try)-8
a2851804 19462b(,)25 b(adding)d(semicolons)h(where)150 4600 y(necessary)37
037a8b7f
CR
19463b(to)f(preserv)m(e)h(syn)m(tactic)h(correctness.)58 b(The)36
19464b Ft(lithist)e Fu(shell)i(option)h(causes)g(the)f(shell)g(to)150
a2851804
CR
194654710 y(sa)m(v)m(e)41 b(the)e(command)g(with)f(em)m(b)s(edded)g
19466(newlines)h(instead)g(of)g(semicolons.)68 b(The)39 b
19467Ft(shopt)e Fu(builtin)i(is)150 4820 y(used)30 b(to)i(set)g(these)g
19468(options.)43 b(See)32 b(Section)g(4.3.2)h([The)e(Shopt)f(Builtin],)j
e2520247 19469(page)f(72,)g(for)f(a)h(description)150 4929 y(of)f Ft(shopt)p
a2851804
CR
19470Fu(.)150 5181 y Fs(9.2)68 b(Bash)45 b(History)h(Builtins)150
194715340 y Fu(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g
19472(whic)m(h)g(manipulate)g(the)h(history)f(list)h(and)f(history)g
19473(\014le.)p eop end
e2520247
CR
19474%%Page: 157 163
19475TeXDict begin 157 162 bop 150 -116 a Fu(Chapter)30 b(9:)41
19476b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(157)150
d37a4722
CR
19477299 y Ft(fc)870 430 y(fc)47 b([-e)g Fj(ename)p Ft(])f([-lnr])g([)p
19478Fj(first)p Ft(])g([)p Fj(last)p Ft(])870 540 y(fc)h(-s)g([)p
a2851804 19479Fj(pat)p Ft(=)p Fj(rep)p Ft(])f([)p Fj(command)p Ft(])630
d37a4722
CR
19480671 y Fu(The)32 b(\014rst)g(form)g(selects)j(a)e(range)g(of)f(commands)
19481h(from)f Fr(\014rst)i Fu(to)f Fr(last)j Fu(from)c(the)h(history)630
19482781 y(list)41 b(and)f(displa)m(ys)g(or)g(edits)h(and)e(re-executes)j
19483(them.)71 b(Both)40 b Fr(\014rst)i Fu(and)e Fr(last)j
19484Fu(ma)m(y)e(b)s(e)630 891 y(sp)s(eci\014ed)33 b(as)h(a)g(string)g(\(to)
19485h(lo)s(cate)h(the)e(most)g(recen)m(t)h(command)f(b)s(eginning)f(with)g
19486(that)630 1000 y(string\))28 b(or)g(as)h(a)f(n)m(um)m(b)s(er)f(\(an)h
19487(index)g(in)m(to)h(the)f(history)g(list,)h(where)f(a)g(negativ)m(e)i(n)
19488m(um)m(b)s(er)630 1110 y(is)g(used)g(as)h(an)f(o\013set)h(from)f(the)h
19489(curren)m(t)f(command)g(n)m(um)m(b)s(er\).)630 1241 y(When)j(listing,)h
19490(a)f Fr(\014rst)h Fu(or)f Fr(last)j Fu(of)d(0)g(is)g(equiv)-5
19491b(alen)m(t)34 b(to)g(-1)f(and)g(-0)g(is)g(equiv)-5 b(alen)m(t)34
19492b(to)g(the)630 1351 y(curren)m(t)k(command)h(\(usually)g(the)g
19493Ft(fc)f Fu(command\);)43 b(otherwise)c(0)g(is)g(equiv)-5
19494b(alen)m(t)40 b(to)f(-1)630 1461 y(and)30 b(-0)h(is)f(in)m(v)-5
19495b(alid.)630 1592 y(If)33 b Fr(last)j Fu(is)e(not)f(sp)s(eci\014ed,)h
19496(it)g(is)f(set)h(to)g Fr(\014rst)p Fu(.)49 b(If)33 b
19497Fr(\014rst)i Fu(is)e(not)h(sp)s(eci\014ed,)f(it)h(is)g(set)g(to)g(the)
19498630 1702 y(previous)g(command)f(for)h(editing)h(and)e
19499Fq(\000)p Fu(16)i(for)f(listing.)53 b(If)33 b(the)h Ft(-l)g
19500Fu(\015ag)g(is)g(giv)m(en,)j(the)630 1811 y(commands)27
19501b(are)h(listed)g(on)f(standard)g(output.)39 b(The)27
19502b Ft(-n)g Fu(\015ag)h(suppresses)e(the)h(command)630
195031921 y(n)m(um)m(b)s(ers)h(when)h(listing.)42 b(The)29
19504b Ft(-r)g Fu(\015ag)i(rev)m(erses)f(the)g(order)f(of)i(the)f(listing.)
1950541 b(Otherwise,)630 2030 y(the)i(editor)h(giv)m(en)g(b)m(y)f
19506Fr(ename)49 b Fu(is)43 b(in)m(v)m(ok)m(ed)i(on)e(a)g(\014le)h(con)m
19507(taining)g(those)g(commands.)630 2140 y(If)c Fr(ename)46
19508b Fu(is)40 b(not)h(giv)m(en,)j(the)d(v)-5 b(alue)41 b(of)f(the)h(follo)
19509m(wing)h(v)-5 b(ariable)41 b(expansion)f(is)g(used:)630
195102250 y Ft(${FCEDIT:-${EDITOR:-vi}})o Fu(.)34 b(This)25
19511b(sa)m(ys)i(to)g(use)f(the)g(v)-5 b(alue)27 b(of)f(the)h
19512Ft(FCEDIT)d Fu(v)-5 b(ariable)630 2359 y(if)33 b(set,)i(or)e(the)h(v)-5
19513b(alue)33 b(of)h(the)f Ft(EDITOR)f Fu(v)-5 b(ariable)34
19514b(if)f(that)h(is)f(set,)i(or)e Ft(vi)f Fu(if)i(neither)f(is)g(set.)630
195152469 y(When)d(editing)h(is)g(complete,)h(the)e(edited)h(commands)f(are)
19516h(ec)m(ho)s(ed)g(and)e(executed.)630 2600 y(In)34 b(the)g(second)g
19517(form,)h Fr(command)j Fu(is)c(re-executed)i(after)f(eac)m(h)g(instance)
19518g(of)f Fr(pat)j Fu(in)d(the)630 2710 y(selected)29 b(command)e(is)h
19519(replaced)f(b)m(y)h Fr(rep)p Fu(.)39 b Fr(command)31
19520b Fu(is)c(in)m(terpreted)h(the)f(same)h(as)g Fr(\014rst)630
195212819 y Fu(ab)s(o)m(v)m(e.)630 2951 y(A)j(useful)f(alias)i(to)g(use)e
19522(with)h(the)g Ft(fc)f Fu(command)h(is)g Ft(r='fc)e(-s')p
19523Fu(,)h(so)h(that)h(t)m(yping)f(`)p Ft(r)f(cc)p Fu(')630
195243061 y(runs)35 b(the)h(last)h(command)f(b)s(eginning)g(with)g
19525Ft(cc)f Fu(and)h(t)m(yping)g(`)p Ft(r)p Fu(')h(re-executes)h(the)e
19526(last)630 3170 y(command)30 b(\(see)h(Section)h(6.6)f([Aliases],)h
e2520247 19527(page)g(102\).)150 3324 y Ft(history)870 3455 y(history)46
d37a4722
CR
19528b([)p Fj(n)p Ft(])870 3565 y(history)g(-c)870 3674 y(history)g(-d)h
19529Fj(offset)870 3784 y Ft(history)f(-d)h Fj(start)p Ft(-)p
19530Fj(end)870 3893 y Ft(history)f([-anrw])g([)p Fj(filename)p
19531Ft(])870 4003 y(history)g(-ps)h Fj(arg)630 4134 y Fu(With)26
6e51e0d0
CR
19532b(no)g(options,)h(displa)m(y)f(the)g(history)g(list)g(with)f(line)h(n)m
19533(um)m(b)s(ers.)38 b(Lines)26 b(pre\014xed)e(with)630
d37a4722 195344244 y(a)35 b(`)p Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)
6e51e0d0 1953553 b(An)34 b(argumen)m(t)h(of)g Fr(n)f Fu(lists)i(only)f(the)g(last)g
d37a4722 19536Fr(n)f Fu(lines.)54 b(If)35 b(the)630 4354 y(shell)30
6e51e0d0 19537b(v)-5 b(ariable)31 b Ft(HISTTIMEFORMAT)26 b Fu(is)k(set)h(and)e(not)i
37c41ab1 19538(n)m(ull,)f(it)h(is)f(used)f(as)h(a)h(format)f(string)630
d37a4722 195394463 y(for)36 b Fr(strftime)41 b Fu(to)36 b(displa)m(y)g(the)g(time)h
37c41ab1 19540(stamp)f(asso)s(ciated)h(with)f(eac)m(h)h(displa)m(y)m(ed)f(history)630
d37a4722 195414573 y(en)m(try)-8 b(.)47 b(No)33 b(in)m(terv)m(ening)g(blank)f(is)g
37c41ab1 19542(prin)m(ted)g(b)s(et)m(w)m(een)h(the)g(formatted)f(time)h(stamp)g(and)
d37a4722
CR
19543630 4682 y(the)e(history)f(line.)630 4814 y(Options,)g(if)h(supplied,)e
19544(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 4967
6e51e0d0 19545y Ft(-c)384 b Fu(Clear)23 b(the)g(history)g(list.)39
37c41ab1 19546b(This)22 b(ma)m(y)i(b)s(e)e(com)m(bined)h(with)f(the)h(other)h
d37a4722
CR
19547(options)1110 5077 y(to)31 b(replace)g(the)g(history)f(list)h
19548(completely)-8 b(.)630 5230 y Ft(-d)30 b Fj(offset)66
7e92fb35
CR
19549b Fu(Delete)38 b(the)f(history)f(en)m(try)h(at)f(p)s(osition)h
19550Fr(o\013set)p Fu(.)59 b(If)36 b Fr(o\013set)j Fu(is)d(p)s(ositiv)m(e,)j
d37a4722 19551(it)1110 5340 y(should)32 b(b)s(e)h(sp)s(eci\014ed)f(as)i(it)g(app)s
7e92fb35 19552(ears)e(when)g(the)i(history)f(is)g(displa)m(y)m(ed.)50
d37a4722 19553b(If)p eop end
e2520247
CR
19554%%Page: 158 164
19555TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(9:)41
19556b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(158)1110
d37a4722
CR
19557299 y Fr(o\013set)26 b Fu(is)d(negativ)m(e,)k(it)c(is)g(in)m(terpreted)
19558h(as)f(relativ)m(e)i(to)f(one)f(greater)h(than)f(the)1110
19559408 y(last)36 b(history)f(p)s(osition,)h(so)f(negativ)m(e)i(indices)e
19560(coun)m(t)h(bac)m(k)f(from)g(the)g(end)1110 518 y(of)h(the)g(history)-8
19561b(,)37 b(and)e(an)h(index)f(of)h(`)p Ft(-1)p Fu(')f(refers)g(to)i(the)f
19562(curren)m(t)f Ft(history)1110 628 y(-d)30 b Fu(command.)630
e59452c7
CR
19563785 y Ft(-d)g Fj(start)p Ft(-)p Fj(end)1110 895 y Fu(Delete)e(the)e
19564(range)h(of)f(history)g(en)m(tries)h(b)s(et)m(w)m(een)f(p)s(ositions)g
19565Fr(start)j Fu(and)c Fr(end)p Fu(,)1110 1004 y(inclusiv)m(e.)44
19566b(P)m(ositiv)m(e)33 b(and)e(negativ)m(e)i(v)-5 b(alues)31
19567b(for)g Fr(start)j Fu(and)d Fr(end)j Fu(are)d(in)m(ter-)1110
195681114 y(preted)f(as)h(describ)s(ed)e(ab)s(o)m(v)m(e.)630
195691271 y Ft(-a)384 b Fu(App)s(end)28 b(the)i(new)f(history)g(lines)h(to)h
19570(the)e(history)h(\014le.)41 b(These)29 b(are)h(history)1110
195711381 y(lines)36 b(en)m(tered)g(since)f(the)h(b)s(eginning)f(of)g(the)h
19572(curren)m(t)f(Bash)h(session,)h(but)1110 1490 y(not)31
19573b(already)g(app)s(ended)d(to)j(the)g(history)f(\014le.)630
195741648 y Ft(-n)384 b Fu(App)s(end)32 b(the)i(history)f(lines)h(not)g
19575(already)g(read)g(from)f(the)h(history)f(\014le)h(to)1110
195761758 y(the)26 b(curren)m(t)f(history)g(list.)40 b(These)25
19577b(are)h(lines)g(app)s(ended)e(to)i(the)f(history)h(\014le)1110
195781867 y(since)31 b(the)f(b)s(eginning)g(of)g(the)h(curren)m(t)f(Bash)h
19579(session.)630 2025 y Ft(-r)384 b Fu(Read)31 b(the)f(history)g(\014le)h
19580(and)f(app)s(end)e(its)j(con)m(ten)m(ts)h(to)f(the)g(history)f(list.)
19581630 2182 y Ft(-w)384 b Fu(W)-8 b(rite)32 b(out)e(the)h(curren)m(t)f
19582(history)g(list)h(to)h(the)e(history)g(\014le.)630 2339
19583y Ft(-p)384 b Fu(P)m(erform)31 b(history)f(substitution)h(on)f(the)h
19584Fr(arg)8 b Fu(s)31 b(and)f(displa)m(y)h(the)f(result)h(on)1110
d37a4722
CR
195852449 y(the)d(standard)f(output,)i(without)f(storing)g(the)g(results)g
19586(in)g(the)g(history)g(list.)630 2606 y Ft(-s)384 b Fu(The)30
6e51e0d0 19587b Fr(arg)8 b Fu(s)30 b(are)h(added)f(to)h(the)f(end)g(of)h(the)f
c302751c 19588(history)h(list)g(as)f(a)h(single)g(en)m(try)-8 b(.)630
e9c75143
CR
195892764 y(If)35 b(a)h Fr(\014lename)41 b Fu(argumen)m(t)c(is)e(supplied)g
19590(when)g(an)m(y)h(of)g(the)g Ft(-w)p Fu(,)g Ft(-r)p Fu(,)h
19591Ft(-a)p Fu(,)g(or)e Ft(-n)h Fu(options)630 2873 y(is)j(used,)i(Bash)e
19592(uses)f Fr(\014lename)44 b Fu(as)c(the)f(history)g(\014le.)66
19593b(If)39 b(not,)i(then)e(the)g(v)-5 b(alue)40 b(of)f(the)630
195942983 y Ft(HISTFILE)28 b Fu(v)-5 b(ariable)31 b(is)g(used.)630
195953117 y(The)j(return)g(v)-5 b(alue)35 b(is)g(0)g(unless)f(an)h(in)m(v)-5
19596b(alid)35 b(option)g(is)g(encoun)m(tered,)h(an)f(error)f(o)s(ccurs)630
195973226 y(while)h(reading)g(or)g(writing)f(the)h(history)g(\014le,)h(an)f
e59452c7 19598(in)m(v)-5 b(alid)36 b Fr(o\013set)h Fu(or)e(range)g(is)g(supplied)630
e9c75143 195993336 y(as)c(an)g(argumen)m(t)g(to)h Ft(-d)p Fu(,)e(or)h(the)g(history)g
e59452c7 19600(expansion)f(supplied)g(as)h(an)g(argumen)m(t)g(to)h
e9c75143
CR
19601Ft(-p)630 3445 y Fu(fails.)150 3684 y Fs(9.3)68 b(History)46
19602b(Expansion)150 3844 y Fu(The)f(History)h(library)e(pro)m(vides)i(a)f
e59452c7 19603(history)g(expansion)g(feature)h(that)g(is)f(similar)h(to)g(the)f
e9c75143 19604(history)150 3953 y(expansion)g(pro)m(vided)f(b)m(y)h
6e51e0d0 19605Ft(csh)p Fu(.)83 b(This)44 b(section)i(describ)s(es)e(the)h(syn)m(tax)h
e9c75143
CR
19606(used)e(to)i(manipulate)f(the)150 4063 y(history)30 b(information.)275
196074196 y(History)h(expansions)f(in)m(tro)s(duce)g(w)m(ords)g(from)g(the)h
c302751c 19608(history)f(list)h(in)m(to)g(the)g(input)f(stream,)h(making)150
e9c75143 196094306 y(it)g(easy)g(to)g(rep)s(eat)g(commands,)f(insert)g(the)h(argumen)
37c41ab1 19610m(ts)f(to)h(a)g(previous)f(command)g(in)m(to)i(the)e(curren)m(t)150
e9c75143
CR
196114415 y(input)f(line,)i(or)g(\014x)f(errors)f(in)h(previous)g(commands)g
19612(quic)m(kly)-8 b(.)275 4549 y(History)24 b(expansion)f(is)h(p)s
c8cd6da3 19613(erformed)e(immediately)j(after)f(a)g(complete)h(line)f(is)g(read,)h(b)
e9c75143 19614s(efore)e(the)h(shell)150 4659 y(breaks)32 b(it)i(in)m(to)f(w)m(ords,)g
8d125d8b 19615(and)f(is)h(p)s(erformed)e(on)h(eac)m(h)i(line)f(individually)-8
e9c75143 19616b(.)48 b(Bash)33 b(attempts)g(to)h(inform)150 4768 y(the)d(history)f
8d125d8b 19617(expansion)g(functions)g(ab)s(out)g(quoting)h(still)g(in)f(e\013ect)i
e9c75143 19618(from)e(previous)g(lines.)275 4902 y(History)37 b(expansion)f(tak)m(es)
8d125d8b 19619i(place)g(in)e(t)m(w)m(o)i(parts.)59 b(The)36 b(\014rst)g(is)h(to)g
e9c75143 19620(determine)g(whic)m(h)f(line)h(from)150 5011 y(the)42
8d125d8b
CR
19621b(history)f(list)h(should)e(b)s(e)h(used)f(during)g(substitution.)74
19622b(The)40 b(second)i(is)f(to)h(select)h(p)s(ortions)e(of)150
e9c75143 196235121 y(that)31 b(line)g(for)f(inclusion)h(in)m(to)g(the)g(curren)m(t)f
8d125d8b 19624(one.)42 b(The)30 b(line)h(selected)h(from)e(the)h(history)f(is)h
e9c75143 19625(called)h(the)150 5230 y Fr(ev)m(en)m(t)p Fu(,)e(and)c(the)i(p)s
8d125d8b
CR
19626(ortions)e(of)i(that)f(line)h(that)g(are)f(acted)i(up)s(on)c(are)j
19627(called)g Fr(w)m(ords)p Fu(.)39 b(V)-8 b(arious)28 b
e9c75143 19628Fr(mo)s(di\014ers)150 5340 y Fu(are)33 b(a)m(v)-5 b(ailable)36
8d125d8b 19629b(to)d(manipulate)h(the)f(selected)h(w)m(ords.)48 b(The)32
e9c75143
CR
19630b(line)i(is)f(brok)m(en)f(in)m(to)i(w)m(ords)f(in)f(the)i(same)p
19631eop end
e2520247
CR
19632%%Page: 159 165
19633TeXDict begin 159 164 bop 150 -116 a Fu(Chapter)30 b(9:)41
19634b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(159)150
e9c75143
CR
19635299 y(fashion)23 b(that)g(Bash)g(do)s(es,)h(so)f(that)h(sev)m(eral)g(w)
19636m(ords)e(surrounded)e(b)m(y)j(quotes)g(are)g(considered)g(one)g(w)m
19637(ord.)150 408 y(History)37 b(expansions)g(are)g(in)m(tro)s(duced)f(b)m
19638(y)h(the)g(app)s(earance)g(of)g(the)g(history)f(expansion)h(c)m
19639(haracter,)150 518 y(whic)m(h)30 b(is)h(`)p Ft(!)p Fu(')f(b)m(y)g
19640(default.)275 655 y(History)c(expansion)g(implemen)m(ts)h(shell-lik)m
19641(e)h(quoting)f(con)m(v)m(en)m(tions:)40 b(a)27 b(bac)m(kslash)g(can)f
19642(b)s(e)g(used)f(to)150 764 y(remo)m(v)m(e)h(the)e(sp)s(ecial)g
19643(handling)g(for)g(the)g(next)g(c)m(haracter;)k(single)d(quotes)g
19644(enclose)g(v)m(erbatim)g(sequences)150 874 y(of)k(c)m(haracters,)i(and)
19645e(can)g(b)s(e)g(used)f(to)i(inhibit)f(history)g(expansion;)g(and)g(c)m
19646(haracters)i(enclosed)e(within)150 983 y(double)h(quotes)i(ma)m(y)f(b)s
19647(e)f(sub)5 b(ject)31 b(to)h(history)f(expansion,)g(since)g(bac)m
19648(kslash)g(can)h(escap)s(e)f(the)g(history)150 1093 y(expansion)e(c)m
19649(haracter,)j(but)d(single)h(quotes)g(ma)m(y)h(not,)f(since)g(they)g
19650(are)g(not)f(treated)i(sp)s(ecially)f(within)150 1202
19651y(double)g(quotes.)275 1339 y(When)41 b(using)g(the)h(shell,)i(only)e
19652(`)p Ft(\\)p Fu(')g(and)e(`)p Ft(')p Fu(')i(ma)m(y)g(b)s(e)f(used)g(to)
19653h(escap)s(e)g(the)g(history)f(expansion)150 1448 y(c)m(haracter,)e(but)
1965434 b(the)i(history)g(expansion)f(c)m(haracter)i(is)f(also)g(treated)h
19655(as)e(quoted)h(if)g(it)g(immediately)150 1558 y(precedes)30
8d125d8b 19656b(the)h(closing)g(double)f(quote)h(in)f(a)h(double-quoted)g(string.)275
e9c75143 196571695 y(Sev)m(eral)48 b(shell)g(options)h(settable)g(with)e(the)h
8d125d8b 19658Ft(shopt)f Fu(builtin)g(\(see)i(Section)f(4.3.2)i([The)e(Shopt)150
e2520247 196591804 y(Builtin],)24 b(page)e(72\))h(ma)m(y)e(b)s(e)g(used)g(to)h
d37a4722 19660(tailor)g(the)g(b)s(eha)m(vior)f(of)h(history)f(expansion.)37
e9c75143 19661b(If)21 b(the)h Ft(histverify)150 1914 y Fu(shell)35
d37a4722 19662b(option)f(is)h(enabled,)g(and)f(Readline)h(is)f(b)s(eing)g(used,)h
e9c75143 19663(history)g(substitutions)e(are)i(not)g(immedi-)150 2023
d37a4722
CR
19664y(ately)i(passed)d(to)i(the)g(shell)f(parser.)55 b(Instead,)37
19665b(the)e(expanded)g(line)g(is)h(reloaded)g(in)m(to)g(the)f(Readline)150
e9c75143 196662133 y(editing)29 b(bu\013er)f(for)h(further)e(mo)s(di\014cation.)41
d37a4722 19667b(If)28 b(Readline)h(is)g(b)s(eing)f(used,)h(and)f(the)h
e9c75143 19668Ft(histreedit)d Fu(shell)150 2242 y(option)e(is)g(enabled,)h(a)g
d37a4722 19669(failed)f(history)g(expansion)g(will)g(b)s(e)f(reloaded)h(in)m(to)h
e9c75143 19670(the)f(Readline)g(editing)h(bu\013er)150 2352 y(for)31
d37a4722
CR
19671b(correction.)43 b(The)30 b Ft(-p)g Fu(option)h(to)h(the)f
19672Ft(history)e Fu(builtin)h(command)h(ma)m(y)g(b)s(e)f(used)g(to)i(see)f
e9c75143 19673(what)g(a)150 2462 y(history)25 b(expansion)g(will)g(do)g(b)s(efore)g
d37a4722 19674(using)f(it.)40 b(The)24 b Ft(-s)h Fu(option)g(to)h(the)f
e9c75143 19675Ft(history)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)150 2571
d37a4722
CR
19676y(to)36 b(add)f(commands)g(to)h(the)g(end)f(of)g(the)h(history)f(list)i
19677(without)e(actually)i(executing)g(them,)g(so)e(that)150
e9c75143 196782681 y(they)c(are)f(a)m(v)-5 b(ailable)33 b(for)d(subsequen)m(t)g
d37a4722 19679(recall.)42 b(This)29 b(is)i(most)g(useful)e(in)h(conjunction)h(with)f
e9c75143 19680(Readline.)275 2817 y(The)j(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g
d37a4722 19681(v)-5 b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)g
e9c75143 19682(expansion)g(mec)m(h-)150 2927 y(anism)h(with)g(the)g
d37a4722
CR
19683Ft(histchars)d Fu(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
19684i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
e2520247 196853036 y(page)32 b(80\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
d37a4722 19686(commen)m(t)i(c)m(haracter)f(to)g(mark)f(history)g(timestamps)h(when)
e9c75143
CR
19687150 3146 y(writing)e(the)h(history)f(\014le.)150 3347
19688y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 3494
d37a4722
CR
19689y Fu(An)32 b(ev)m(en)m(t)j(designator)e(is)g(a)g(reference)g(to)h(a)f
19690(command)f(line)h(en)m(try)g(in)g(the)g(history)g(list.)48
e9c75143 19691b(Unless)33 b(the)150 3604 y(reference)e(is)f(absolute,)i(ev)m(en)m(ts)
d37a4722 19692f(are)g(relativ)m(e)i(to)e(the)f(curren)m(t)g(p)s(osition)h(in)f(the)h
e9c75143 19693(history)f(list.)150 3766 y Ft(!)432 b Fu(Start)34 b(a)f(history)h
d37a4722 19694(substitution,)g(except)g(when)f(follo)m(w)m(ed)i(b)m(y)e(a)h(space,)h
e9c75143 19695(tab,)f(the)g(end)f(of)630 3876 y(the)i(line,)g(`)p Ft(=)p
d37a4722
CR
19696Fu(')g(or)f(`)p Ft(\()p Fu(')h(\(when)e(the)i Ft(extglob)d
19697Fu(shell)j(option)f(is)h(enabled)f(using)g(the)g Ft(shopt)630
e9c75143
CR
196983985 y Fu(builtin\).)150 4147 y Ft(!)p Fj(n)384 b Fu(Refer)30
19699b(to)i(command)e(line)g Fr(n)p Fu(.)150 4308 y Ft(!-)p
d37a4722 19700Fj(n)336 b Fu(Refer)30 b(to)i(the)e(command)g Fr(n)g
e9c75143 19701Fu(lines)h(bac)m(k.)150 4469 y Ft(!!)384 b Fu(Refer)30
d37a4722 19702b(to)i(the)e(previous)g(command.)40 b(This)30 b(is)g(a)h(synon)m(ym)f
e9c75143 19703(for)g(`)p Ft(!-1)p Fu('.)150 4631 y Ft(!)p Fj(string)144
d37a4722
CR
19704b Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g
19705(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
e9c75143 197064740 y(list)31 b(starting)g(with)f Fr(string)p Fu(.)150
e59452c7 197074902 y Ft(!?)p Fj(string)p Ft([?])630 5011 y Fu(Refer)25
d37a4722 19708b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)
e59452c7 19709g(p)s(osition)g(in)g(the)g(history)630 5121 y(list)32
d37a4722
CR
19710b(con)m(taining)i Fr(string)p Fu(.)45 b(The)31 b(trailing)i(`)p
19711Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f(the)g Fr(string)39
e59452c7 19712b Fu(is)32 b(follo)m(w)m(ed)630 5230 y(immediately)f(b)m(y)e(a)h
d37a4722 19713(newline.)40 b(If)29 b Fr(string)38 b Fu(is)29 b(missing,)h(the)g
e59452c7 19714(string)f(from)g(the)h(most)g(recen)m(t)630 5340 y(searc)m(h)h(is)f
d37a4722 19715(used;)g(it)h(is)g(an)f(error)g(if)g(there)h(is)f(no)g(previous)g
e59452c7 19716(searc)m(h)h(string.)p eop end
e2520247
CR
19717%%Page: 160 166
19718TeXDict begin 160 165 bop 150 -116 a Fu(Chapter)30 b(9:)41
19719b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(160)150
e59452c7
CR
19720299 y Ft(^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)630
19721408 y Fu(Quic)m(k)32 b(Substitution.)44 b(Rep)s(eat)32
19722b(the)g(last)h(command,)f(replacing)g Fr(string1)40 b
19723Fu(with)31 b Fr(string2)p Fu(.)630 518 y(Equiv)-5 b(alen)m(t)31
19724b(to)g Ft(!!:s^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)p
19725Fu(.)150 673 y Ft(!#)384 b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m
19726(yp)s(ed)f(so)h(far.)150 867 y Fk(9.3.2)63 b(W)-10 b(ord)41
19727b(Designators)150 1014 y Fu(W)-8 b(ord)27 b(designators)h(are)g(used)e
19728(to)i(select)h(desired)d(w)m(ords)h(from)f(the)i(ev)m(en)m(t.)41
19729b(A)27 b(`)p Ft(:)p Fu(')g(separates)h(the)f(ev)m(en)m(t)150
197301124 y(sp)s(eci\014cation)38 b(from)e(the)h(w)m(ord)f(designator.)61
c302751c 19731b(It)37 b(ma)m(y)h(b)s(e)e(omitted)i(if)e(the)h(w)m(ord)g(designator)g
e59452c7 19732(b)s(egins)150 1233 y(with)30 b(a)g(`)p Ft(^)p Fu(',)g(`)p
6e51e0d0
CR
19733Ft($)p Fu(',)g(`)p Ft(*)p Fu(',)h(`)p Ft(-)p Fu(',)f(or)g(`)p
19734Ft(\045)p Fu('.)41 b(W)-8 b(ords)30 b(are)g(n)m(um)m(b)s(ered)e(from)i
d37a4722 19735(the)g(b)s(eginning)f(of)h(the)g(line,)g(with)g(the)150
e59452c7
CR
197361343 y(\014rst)f(w)m(ord)f(b)s(eing)h(denoted)h(b)m(y)f(0)h(\(zero\).)
1973741 b(W)-8 b(ords)30 b(are)g(inserted)f(in)m(to)h(the)g(curren)m(t)f
19738(line)g(separated)h(b)m(y)150 1452 y(single)h(spaces.)275
197391584 y(F)-8 b(or)31 b(example,)150 1739 y Ft(!!)384 b
19740Fu(designates)37 b(the)f(preceding)g(command.)57 b(When)35
19741b(y)m(ou)i(t)m(yp)s(e)f(this,)h(the)f(preceding)g(com-)630
197421849 y(mand)30 b(is)g(rep)s(eated)g(in)g(toto.)150 2003
19743y Ft(!!:$)288 b Fu(designates)23 b(the)g(last)g(argumen)m(t)g(of)f(the)
19744h(preceding)f(command.)38 b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630
197452113 y(to)31 b Ft(!$)p Fu(.)150 2267 y Ft(!fi:2)240 b
19746Fu(designates)30 b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f
19747(recen)m(t)i(command)e(starting)h(with)f(the)630 2377
19748y(letters)j Ft(fi)p Fu(.)275 2531 y(Here)e(are)h(the)g(w)m(ord)f
19749(designators:)150 2686 y Ft(0)g(\(zero\))114 b Fu(The)30
19750b Ft(0)p Fu(th)g(w)m(ord.)40 b(F)-8 b(or)31 b(man)m(y)g(applications,)h
19751(this)e(is)g(the)h(command)f(w)m(ord.)150 2840 y Fj(n)432
19752b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150 2995 y Ft(^)432
19753b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m(ord)g(1.)150
197543150 y Ft($)432 b Fu(The)30 b(last)h(argumen)m(t.)150
197553304 y Ft(\045)432 b Fu(The)40 b(\014rst)h(w)m(ord)f(matc)m(hed)i(b)m
fc35c477
CR
19756(y)f(the)g(most)g(recen)m(t)h(`)p Ft(?)p Fj(string)p
19757Ft(?)p Fu(')d(searc)m(h,)44 b(if)d(the)g(searc)m(h)630
e59452c7
CR
197583414 y(string)30 b(b)s(egins)g(with)g(a)h(c)m(haracter)h(that)f(is)f
19759(part)h(of)f(a)h(w)m(ord.)150 3568 y Fj(x)p Ft(-)p Fj(y)336
fc35c477 19760b Fu(A)30 b(range)h(of)g(w)m(ords;)f(`)p Ft(-)p Fj(y)p
e59452c7 19761Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p Fu('.)150 3723
fc35c477
CR
19762y Ft(*)432 b Fu(All)28 b(of)g(the)g(w)m(ords,)g(except)h(the)e
19763Ft(0)p Fu(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
6e51e0d0 19764Ft(1-$)p Fu('.)39 b(It)28 b(is)g(not)g(an)f(error)630
e59452c7 197653832 y(to)j(use)g(`)p Ft(*)p Fu(')f(if)h(there)g(is)g(just)f(one)h(w)m
122f603c 19766(ord)f(in)g(the)h(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)e(is)h
e59452c7 19767(returned)e(in)630 3942 y(that)j(case.)150 4097 y Fj(x)p
900a813b 19768Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p Ft(-$)p Fu(')150
e59452c7 197694251 y Fj(x)p Ft(-)384 b Fu(Abbreviates)27 b(`)p Fj(x)p
fc35c477
CR
19770Ft(-$)p Fu(')g(lik)m(e)h(`)p Fj(x)p Ft(*)p Fu(',)g(but)e(omits)i(the)f
19771(last)h(w)m(ord.)39 b(If)27 b(`)p Ft(x)p Fu(')g(is)g(missing,)g(it)h
e59452c7 19772(defaults)630 4361 y(to)j(0.)275 4515 y(If)i(a)h(w)m(ord)g(designator)g
fc35c477 19773(is)g(supplied)f(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h
e59452c7
CR
19774(the)e(previous)f(command)150 4625 y(is)d(used)g(as)h(the)f(ev)m(en)m
19775(t.)150 4819 y Fk(9.3.3)63 b(Mo)s(di\014ers)150 4966
fc35c477
CR
19776y Fu(After)29 b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g
19777(add)f(a)h(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)
e59452c7 19778150 5076 y(mo)s(di\014ers,)33 b(eac)m(h)h(preceded)f(b)m(y)g(a)h(`)p
fc35c477 19779Ft(:)p Fu('.)50 b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g
e59452c7
CR
19780(w)m(ord)f(or)g(w)m(ords)g(selected)h(from)150 5185 y(the)d(history)f
19781(ev)m(en)m(t.)150 5340 y Ft(h)432 b Fu(Remo)m(v)m(e)32
6e51e0d0 19782b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the)
e59452c7 19783h(head.)p eop end
e2520247
CR
19784%%Page: 161 167
19785TeXDict begin 161 166 bop 150 -116 a Fu(Chapter)30 b(9:)41
19786b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(161)150
e59452c7
CR
19787299 y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s
19788(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 458 y Ft(r)432
19789b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g(the)h(form)f(`)p
19790Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)j(the)f(basename.)150
19791618 y Ft(e)432 b Fu(Remo)m(v)m(e)32 b(all)f(but)f(the)h(trailing)g
19792(su\016x.)150 777 y Ft(p)432 b Fu(Prin)m(t)30 b(the)h(new)f(command)g
19793(but)g(do)g(not)g(execute)i(it.)150 936 y Ft(q)432 b
19794Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)g(escaping)h(further)e
19795(substitutions.)150 1096 y Ft(x)432 b Fu(Quote)32 b(the)f(substituted)g
19796(w)m(ords)f(as)i(with)f(`)p Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m
19797(ords)d(at)i(spaces,)h(tabs,)630 1205 y(and)38 b(newlines.)66
19798b(The)39 b(`)p Ft(q)p Fu(')g(and)f(`)p Ft(x)p Fu(')h(mo)s(di\014ers)f
19799(are)h(m)m(utually)g(exclusiv)m(e;)45 b(the)39 b(last)h(one)630
198001315 y(supplied)29 b(is)i(used.)150 1474 y Ft(s/)p Fj(old)p
19801Ft(/)p Fj(new)p Ft(/)630 1584 y Fu(Substitute)g Fr(new)39
fc35c477
CR
19802b Fu(for)32 b(the)g(\014rst)f(o)s(ccurrence)h(of)f Fr(old)36
19803b Fu(in)31 b(the)h(ev)m(en)m(t)h(line.)46 b(An)m(y)31
e59452c7 19804b(c)m(haracter)630 1694 y(ma)m(y)k(b)s(e)e(used)h(as)g(the)h(delimiter)
d37a4722 19805g(in)f(place)h(of)f(`)p Ft(/)p Fu('.)53 b(The)33 b(delimiter)i(ma)m(y)g
e59452c7 19806(b)s(e)f(quoted)g(in)630 1803 y Fr(old)40 b Fu(and)c
fc35c477
CR
19807Fr(new)44 b Fu(with)36 b(a)h(single)g(bac)m(kslash.)60
19808b(If)36 b(`)p Ft(&)p Fu(')h(app)s(ears)e(in)i Fr(new)p
e59452c7 19809Fu(,)g(it)h(is)e(replaced)h(b)m(y)630 1913 y Fr(old)p
fc35c477
CR
19810Fu(.)k(A)31 b(single)g(bac)m(kslash)g(will)g(quote)g(the)g(`)p
19811Ft(&)p Fu('.)41 b(If)31 b Fr(old)j Fu(is)c(n)m(ull,)h(it)g(is)g(set)g
e59452c7 19812(to)g(the)g(last)g Fr(old)630 2022 y Fu(substituted,)j(or,)g(if)f(no)g
fc35c477 19813(previous)g(history)g(substitutions)g(to)s(ok)h(place,)h(the)e(last)h
e9c75143
CR
19814Fr(string)630 2132 y Fu(in)d(a)g(!?)p Fr(string)8 b Ft([?])30
19815b Fu(searc)m(h.)44 b(If)31 b Fr(new)38 b Fu(is)31 b(n)m(ull,)h(eac)m(h)
19816g(matc)m(hing)g Fr(old)j Fu(is)c(deleted.)44 b(The)30
19817b(\014nal)630 2242 y(delimiter)h(is)g(optional)g(if)f(it)h(is)g(the)f
19818(last)h(c)m(haracter)h(on)f(the)f(input)g(line.)150 2401
19819y Ft(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)g(substitution.)150
e59452c7 198202560 y Ft(g)150 2670 y(a)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f
fc35c477 19821(applied)h(o)m(v)m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66
e59452c7 19822b(Used)39 b(in)f(conjunction)630 2780 y(with)30 b(`)p
fc35c477 19823Ft(s)p Fu(',)h(as)f(in)h Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p
e59452c7 19824Ft(/)p Fu(,)c(or)j(with)h(`)p Ft(&)p Fu('.)150 2939 y
fc35c477
CR
19825Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i(`)p Ft(s)p
19826Fu(')f(or)f(`)p Ft(&)p Fu(')h(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m
19827(ord)e(in)g(the)g(ev)m(en)m(t.)p eop end
e2520247
CR
19828%%Page: 162 168
19829TeXDict begin 162 167 bop 3614 -116 a Fu(162)150 299
e59452c7 19830y Fp(10)80 b(Installing)52 b(Bash)150 539 y Fu(This)31
037a8b7f
CR
19831b(c)m(hapter)h(pro)m(vides)g(basic)g(instructions)f(for)g(installing)i
19832(Bash)f(on)f(the)h(v)-5 b(arious)31 b(supp)s(orted)f(plat-)150
e59452c7 19833648 y(forms.)40 b(The)28 b(distribution)h(supp)s(orts)e(the)j
037a8b7f 19834Fm(gnu)f Fu(op)s(erating)h(systems,)f(nearly)h(ev)m(ery)g(v)m(ersion)f
e59452c7 19835(of)h(Unix,)150 758 y(and)d(sev)m(eral)j(non-Unix)d(systems)h(suc)m(h)g
037a8b7f 19836(as)g(BeOS)g(and)f(In)m(terix.)40 b(Other)28 b(indep)s(enden)m(t)e(p)s
e59452c7
CR
19837(orts)h(exist)i(for)150 867 y Fm(ms-dos)p Fu(,)h Fm(os/2)p
19838Fu(,)g(and)g(Windo)m(ws)g(platforms.)150 1111 y Fs(10.1)68
19839b(Basic)45 b(Installation)150 1270 y Fu(These)30 b(are)h(installation)h
19840(instructions)e(for)h(Bash.)275 1407 y(The)e(simplest)i(w)m(a)m(y)g(to)
19841g(compile)h(Bash)e(is:)199 1543 y(1.)61 b Ft(cd)38 b
6e51e0d0
CR
19842Fu(to)h(the)f(directory)h(con)m(taining)h(the)f(source)f(co)s(de)h(and)
19843f(t)m(yp)s(e)g(`)p Ft(./configure)p Fu(')e(to)j(con\014gure)330
e59452c7 198441653 y(Bash)c(for)f(y)m(our)h(system.)54 b(If)34 b(y)m(ou're)h(using)f
6e51e0d0 19845Ft(csh)g Fu(on)g(an)h(old)g(v)m(ersion)g(of)g(System)f(V,)h(y)m(ou)g
e59452c7 19846(migh)m(t)330 1762 y(need)21 b(to)g(t)m(yp)s(e)g(`)p
6e51e0d0
CR
19847Ft(sh)30 b(./configure)p Fu(')18 b(instead)j(to)g(prev)m(en)m(t)h
19848Ft(csh)e Fu(from)g(trying)h(to)g(execute)h Ft(configure)330
e59452c7 198491872 y Fu(itself.)330 2007 y(Running)30 b Ft(configure)f
6e51e0d0 19850Fu(tak)m(es)k(some)e(time.)45 b(While)32 b(running,)e(it)i(prin)m(ts)f
e59452c7
CR
19851(messages)h(telling)h(whic)m(h)330 2117 y(features)e(it)g(is)f(c)m(hec)
19852m(king)i(for.)199 2252 y(2.)61 b(T)m(yp)s(e)30 b(`)p
6e51e0d0 19853Ft(make)p Fu(')g(to)h(compile)g(Bash)g(and)e(build)h(the)g
e59452c7 19854Ft(bashbug)f Fu(bug)g(rep)s(orting)h(script.)199 2388
6e51e0d0 19855y(3.)61 b(Optionally)-8 b(,)32 b(t)m(yp)s(e)e(`)p Ft(make)g(tests)p
e59452c7
CR
19856Fu(')f(to)i(run)e(the)h(Bash)h(test)g(suite.)199 2523
19857y(4.)61 b(T)m(yp)s(e)42 b(`)p Ft(make)30 b(install)p
19858Fu(')41 b(to)i(install)h Ft(bash)d Fu(and)i Ft(bashbug)p
19859Fu(.)76 b(This)42 b(will)h(also)g(install)h(the)f(man-)330
198602633 y(ual)30 b(pages)g(and)g(Info)f(\014le,)h(message)h(translation)g
19861(\014les,)f(some)g(supplemen)m(tal)h(do)s(cumen)m(tation,)g(a)330
198622742 y(n)m(um)m(b)s(er)c(of)h(example)h(loadable)g(builtin)f(commands,)
19863g(and)g(a)g(set)h(of)f(header)g(\014les)g(for)g(dev)m(eloping)330
198642852 y(loadable)36 b(builtins.)55 b(Y)-8 b(ou)36 b(ma)m(y)f(need)g
19865(additional)h(privileges)g(to)g(install)g Ft(bash)e Fu(to)i(y)m(our)f
19866(desired)330 2962 y(destination,)f(so)f(`)p Ft(sudo)d(make)f(install)p
19867Fu(')i(migh)m(t)i(b)s(e)f(required.)47 b(More)33 b(information)g(ab)s
19868(out)f(con-)330 3071 y(trolling)c(the)g(lo)s(cations)g(where)f
19869Ft(bash)f Fu(and)h(other)g(\014les)g(are)h(installed)g(is)f(b)s(elo)m
19870(w)g(\(see)h(Section)g(10.4)330 3181 y([Installation)k(Names],)g(page)f
e2520247 19871(164\).)275 3343 y(The)20 b Ft(configure)f Fu(shell)i(script)g
e59452c7
CR
19872(attempts)h(to)g(guess)f(correct)i(v)-5 b(alues)21 b(for)g(v)-5
19873b(arious)21 b(system-dep)s(enden)m(t)150 3453 y(v)-5
19874b(ariables)38 b(used)f(during)f(compilation.)64 b(It)37
19875b(uses)g(those)h(v)-5 b(alues)38 b(to)g(create)h(a)f
19876Ft(Makefile)d Fu(in)i(eac)m(h)i(di-)150 3562 y(rectory)32
19877b(of)f(the)h(pac)m(k)-5 b(age)33 b(\(the)f(top)f(directory)-8
19878b(,)33 b(the)e Ft(builtins)p Fu(,)f Ft(doc)p Fu(,)h Ft(po)p
19879Fu(,)g(and)f Ft(support)g Fu(directories,)150 3672 y(eac)m(h)38
19880b(directory)g(under)d Ft(lib)p Fu(,)j(and)f(sev)m(eral)h(others\).)61
19881b(It)38 b(also)g(creates)g(a)f Ft(config.h)e Fu(\014le)i(con)m(taining)
19882150 3781 y(system-dep)s(enden)m(t)31 b(de\014nitions.)44
19883b(Finally)-8 b(,)34 b(it)e(creates)h(a)f(shell)g(script)f(named)g
19884Ft(config.status)d Fu(that)150 3891 y(y)m(ou)35 b(can)h(run)d(in)i(the)
19885g(future)f(to)i(recreate)g(the)g(curren)m(t)e(con\014guration,)j(a)f
19886(\014le)f Ft(config.cache)c Fu(that)150 4001 y(sa)m(v)m(es)39
19887b(the)e(results)g(of)g(its)h(tests)g(to)g(sp)s(eed)e(up)h
19888(recon\014guring,)h(and)f(a)h(\014le)f Ft(config.log)d
19889Fu(con)m(taining)150 4110 y(compiler)c(output)g(\(useful)f(mainly)h
19890(for)f(debugging)h Ft(configure)p Fu(\).)38 b(If)29 b(at)i(some)f(p)s
19891(oin)m(t)f Ft(config.cache)150 4220 y Fu(con)m(tains)j(results)e(y)m
19892(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
19893(e)h(or)e(edit)h(it.)275 4356 y(T)-8 b(o)37 b(\014nd)f(out)i(more)f(ab)
19894s(out)h(the)f(options)h(and)f(argumen)m(ts)g(that)h(the)g
19895Ft(configure)d Fu(script)i(under-)150 4466 y(stands,)30
19896b(t)m(yp)s(e)390 4602 y Ft(bash-4.2$)45 b(./configure)g(--help)150
198974738 y Fu(at)31 b(the)g(Bash)f(prompt)g(in)g(y)m(our)g(Bash)h(source)f
19898(directory)-8 b(.)275 4875 y(If)34 b(y)m(ou)h(w)m(an)m(t)g(to)g(build)f
19899(Bash)g(in)h(a)g(directory)g(separate)g(from)f(the)h(source)g
19900(directory)g({)g(to)g(build)150 4984 y(for)30 b(m)m(ultiple)i(arc)m
19901(hitectures,)g(for)e(example)h({)g(just)f(use)h(the)f(full)h(path)f(to)
d052bd6f
CR
19902h(the)g(con\014gure)f(script.)41 b(The)150 5094 y(follo)m(wing)23
19903b(commands)e(will)h(build)f(Bash)h(in)f(a)h(directory)g(under)f
19904Ft(/usr/local/build)c Fu(from)k(the)h(source)150 5204
e59452c7
CR
19905y(co)s(de)31 b(in)f Ft(/usr/local/src/bash-4.4)o Fu(:)390
199065340 y Ft(mkdir)46 b(/usr/local/build/bash-4.4)p eop
19907end
e2520247
CR
19908%%Page: 163 169
19909TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(10:)41
19910b(Installing)31 b(Bash)2356 b(163)390 299 y Ft(cd)47
e59452c7
CR
19911b(/usr/local/build/bash-4.4)390 408 y(bash)g(/usr/local/src/bash-4.4)o
19912(/con)o(fig)o(ure)390 518 y(make)275 652 y Fu(See)27
19913b(Section)h(10.3)g([Compiling)g(F)-8 b(or)27 b(Multiple)h(Arc)m
e2520247 19914(hitectures],)i(page)d(163,)j(for)c(more)i(information)150
e59452c7
CR
19915762 y(ab)s(out)i(building)g(in)g(a)g(directory)h(separate)h(from)e(the)
19916g(source.)275 896 y(If)53 b(y)m(ou)h(need)f(to)i(do)e(un)m(usual)g
19917(things)g(to)i(compile)g(Bash,)k(please)c(try)e(to)i(\014gure)e(out)h
19918(ho)m(w)150 1006 y Ft(configure)47 b Fu(could)j(c)m(hec)m(k)h(whether)e
19919(or)g(not)h(to)h(do)e(them,)55 b(and)49 b(mail)h(di\013s)f(or)h
19920(instructions)f(to)150 1115 y Ft(bash-maintainers@gnu.org)24
19921b Fu(so)30 b(they)h(can)g(b)s(e)e(considered)i(for)f(the)g(next)h
19922(release.)275 1250 y(The)e(\014le)g Ft(configure.ac)d
19923Fu(is)k(used)e(to)j(create)g Ft(configure)c Fu(b)m(y)i(a)h(program)f
19924(called)i(Auto)s(conf.)40 b(Y)-8 b(ou)150 1359 y(only)34
19925b(need)g Ft(configure.ac)d Fu(if)i(y)m(ou)i(w)m(an)m(t)g(to)f(c)m
19926(hange)i(it)e(or)g(regenerate)i Ft(configure)31 b Fu(using)j(a)g(new)m
19927(er)150 1469 y(v)m(ersion)25 b(of)f(Auto)s(conf.)39 b(If)24
19928b(y)m(ou)h(do)f(this,)i(mak)m(e)f(sure)f(y)m(ou)h(are)f(using)g(Auto)s
19929(conf)h(v)m(ersion)f(2.69)i(or)f(new)m(er.)275 1603 y(Y)-8
19930b(ou)29 b(can)f(remo)m(v)m(e)i(the)f(program)g(binaries)f(and)g(ob)5
19931b(ject)29 b(\014les)g(from)f(the)h(source)f(co)s(de)h(directory)g(b)m
19932(y)150 1713 y(t)m(yping)j(`)p Ft(make)d(clean)p Fu('.)42
19933b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g
a2851804 19934Ft(configure)e Fu(created)j(\(so)g(y)m(ou)g(can)f(compile)150
e59452c7
CR
199351822 y(Bash)g(for)f(a)g(di\013eren)m(t)h(kind)f(of)g(computer\),)h(t)m
19936(yp)s(e)g(`)p Ft(make)e(distclean)p Fu('.)150 2063 y
19937Fs(10.2)68 b(Compilers)46 b(and)f(Options)150 2222 y
a2851804
CR
19938Fu(Some)28 b(systems)h(require)f(un)m(usual)f(options)i(for)f
19939(compilation)i(or)f(linking)f(that)h(the)g Ft(configure)d
e59452c7 19940Fu(script)150 2332 y(do)s(es)32 b(not)g(kno)m(w)g(ab)s(out.)44
a2851804
CR
19941b(Y)-8 b(ou)33 b(can)f(giv)m(e)h Ft(configure)d Fu(initial)j(v)-5
19942b(alues)32 b(for)g(v)-5 b(ariables)32 b(b)m(y)g(setting)h(them)150
e59452c7 199432441 y(in)k(the)g(en)m(vironmen)m(t.)62 b(Using)38 b(a)f
a2851804 19944(Bourne-compatible)i(shell,)g(y)m(ou)f(can)g(do)f(that)h(on)f(the)g
e59452c7 19945(command)150 2551 y(line)31 b(lik)m(e)g(this:)390 2685
a2851804 19946y Ft(CC=c89)46 b(CFLAGS=-O2)f(LIBS=-lposix)g(./configure)275
e59452c7 199472819 y Fu(On)29 b(systems)h(that)h(ha)m(v)m(e)h(the)f
6e51e0d0 19948Ft(env)e Fu(program,)h(y)m(ou)h(can)g(do)f(it)h(lik)m(e)h(this:)390
e59452c7
CR
199492954 y Ft(env)47 b(CPPFLAGS=-I/usr/local/in)o(clud)o(e)42
19950b(LDFLAGS=-s)j(./configure)275 3088 y Fu(The)29 b(con\014guration)i
37c41ab1 19951(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
19952b(ailable.)150 3328 y Fs(10.3)68 b(Compiling)46 b(F)-11
19953b(or)45 b(Multiple)g(Arc)l(hitectures)150 3488 y Fu(Y)-8
c302751c
CR
19954b(ou)27 b(can)g(compile)g(Bash)g(for)f(more)h(than)f(one)h(kind)f(of)g
19955(computer)h(at)g(the)g(same)g(time,)h(b)m(y)e(placing)i(the)150
e59452c7 199563597 y(ob)5 b(ject)31 b(\014les)f(for)g(eac)m(h)i(arc)m(hitecture)f(in)
c302751c
CR
19957f(their)g(o)m(wn)h(directory)-8 b(.)41 b(T)-8 b(o)31
19958b(do)f(this,)g(y)m(ou)h(m)m(ust)f(use)g(a)g(v)m(ersion)150
e59452c7 199593707 y(of)36 b Ft(make)e Fu(that)i(supp)s(orts)e(the)i
a2851804
CR
19960Ft(VPATH)e Fu(v)-5 b(ariable,)38 b(suc)m(h)d(as)h(GNU)g
19961Ft(make)p Fu(.)55 b Ft(cd)35 b Fu(to)i(the)e(directory)h(where)150
e59452c7 199623817 y(y)m(ou)k(w)m(an)m(t)h(the)g(ob)5 b(ject)41 b(\014les)f(and)f
a2851804 19963(executables)j(to)e(go)h(and)f(run)e(the)j Ft(configure)c
e59452c7 19964Fu(script)j(from)g(the)150 3926 y(source)32 b(directory)h(\(see)g
e2520247 19965(Section)f(10.1)i([Basic)f(Installation],)i(page)e(162\).)47
e59452c7 19966b(Y)-8 b(ou)32 b(ma)m(y)h(need)f(to)g(supply)150 4036
a2851804
CR
19967y(the)43 b Ft(--srcdir=PATH)c Fu(argumen)m(t)k(to)h(tell)g
19968Ft(configure)c Fu(where)i(the)h(source)g(\014les)g(are.)78
e59452c7 19969b Ft(configure)150 4145 y Fu(automatically)33 b(c)m(hec)m(ks)f(for)e
a2851804 19970(the)h(source)f(co)s(de)h(in)f(the)h(directory)f(that)h
e59452c7 19971Ft(configure)d Fu(is)j(in)f(and)f(in)h(`..'.)275 4280
e9c75143
CR
19972y(If)22 b(y)m(ou)i(ha)m(v)m(e)g(to)g(use)f(a)g Ft(make)f
19973Fu(that)i(do)s(es)f(not)g(supp)s(ort)e(the)j Ft(VPATH)d
19974Fu(v)-5 b(ariable,)26 b(y)m(ou)d(can)h(compile)g(Bash)150
e59452c7 199754389 y(for)33 b(one)h(arc)m(hitecture)h(at)f(a)g(time)g(in)f(the)h
37c41ab1 19976(source)g(co)s(de)f(directory)-8 b(.)51 b(After)34 b(y)m(ou)g(ha)m(v)m
e59452c7 19977(e)h(installed)f(Bash)150 4499 y(for)c(one)h(arc)m(hitecture,)h(use)e
6e51e0d0 19978(`)p Ft(make)g(distclean)p Fu(')e(b)s(efore)i(recon\014guring)g(for)g
e59452c7 19979(another)g(arc)m(hitecture.)275 4633 y(Alternativ)m(ely)-8
6e51e0d0 19980b(,)30 b(if)c(y)m(our)g(system)h(supp)s(orts)d(sym)m(b)s(olic)j(links,)
e59452c7 19981g(y)m(ou)g(can)g(use)f(the)g Ft(support/mkclone)150 4743
6e51e0d0
CR
19982y Fu(script)d(to)h(create)g(a)f(build)f(tree)i(whic)m(h)f(has)f(sym)m
19983(b)s(olic)i(links)e(bac)m(k)i(to)g(eac)m(h)g(\014le)f(in)g(the)g
e59452c7 19984(source)g(directory)-8 b(.)150 4852 y(Here's)41 b(an)f(example)i(that)f
6e51e0d0 19985(creates)h(a)e(build)g(directory)h(in)f(the)h(curren)m(t)f(directory)h
e59452c7
CR
19986(from)f(a)h(source)150 4962 y(directory)31 b Ft(/usr/gnu/src/bash-2.0)p
19987Fu(:)390 5096 y Ft(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o
6e51e0d0 19988(mkcl)o(one)41 b(-s)47 b(/usr/gnu/src/bash-2.0)42 b(.)150
e59452c7 199895230 y Fu(The)c Ft(mkclone)e Fu(script)i(requires)g(Bash,)i(so)f(y)m
6e51e0d0 19990(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
19991h(one)150 5340 y(arc)m(hitecture)32 b(b)s(efore)e(y)m(ou)h(can)f
19992(create)i(build)e(directories)h(for)f(other)h(arc)m(hitectures.)p
967625cd 19993eop end
e2520247
CR
19994%%Page: 164 170
19995TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(10:)41
19996b(Installing)31 b(Bash)2356 b(164)150 299 y Fs(10.4)68
e59452c7
CR
19997b(Installation)47 b(Names)150 458 y Fu(By)36 b(default,)g(`)p
19998Ft(make)30 b(install)p Fu(')j(will)j(install)g(in)m(to)g
19999Ft(/usr/local/bin)p Fu(,)d Ft(/usr/local/man)p Fu(,)g(etc.;)39
20000b(that)150 568 y(is,)i(the)d Fr(installation)i(pre\014x)k
20001Fu(defaults)38 b(to)h Ft(/usr/local)p Fu(.)62 b(Y)-8
20002b(ou)39 b(can)g(sp)s(ecify)f(an)g(installation)i(pre\014x)150
20003677 y(other)34 b(than)g Ft(/usr/local)d Fu(b)m(y)j(giving)h
20004Ft(configure)d Fu(the)i(option)g Ft(--prefix=)p Fj(PATH)p
20005Fu(,)e(or)i(b)m(y)g(sp)s(ecifying)150 787 y(a)h(v)-5
20006b(alue)34 b(for)h(the)f Ft(prefix)f Fu(`)p Ft(make)p
20007Fu(')g(v)-5 b(ariable)35 b(when)f(running)e(`)p Ft(make)e(install)p
20008Fu(')i(\(e.g.,)37 b(`)p Ft(make)30 b(install)150 897
20009y(prefix=)p Fj(PATH)p Fu('\).)35 b(The)21 b Ft(prefix)f
20010Fu(v)-5 b(ariable)22 b(pro)m(vides)g(a)f(default)h(for)f
20011Ft(exec_prefix)e Fu(and)i(other)g(v)-5 b(ariables)150
d052bd6f 200121006 y(used)30 b(when)f(installing)i(Bash.)275 1159 y(Y)-8
e59452c7
CR
20013b(ou)71 b(can)h(sp)s(ecify)f(separate)h(installation)h(pre\014xes)d
20014(for)h(arc)m(hitecture-sp)s(eci\014c)i(\014les)f(and)150
200151268 y(arc)m(hitecture-indep)s(enden)m(t)44 b(\014les.)80
20016b(If)43 b(y)m(ou)h(giv)m(e)h Ft(configure)c Fu(the)j(option)g
20017Ft(--exec-prefix=)p Fj(PATH)p Fu(,)150 1378 y(`)p Ft(make)29
20018b(install)p Fu(')63 b(will)h(use)f Fr(P)-8 b(A)g(TH)75
20019b Fu(as)64 b(the)g(pre\014x)e(for)i(installing)h(programs)e(and)h
20020(libraries.)150 1488 y(Do)s(cumen)m(tation)32 b(and)e(other)h(data)g
20021(\014les)f(will)h(still)g(use)f(the)h(regular)f(pre\014x.)275
200221640 y(If)35 b(y)m(ou)i(w)m(ould)e(lik)m(e)j(to)e(c)m(hange)i(the)e
20023(installation)i(lo)s(cations)f(for)f(a)h(single)f(run,)h(y)m(ou)f(can)g
20024(sp)s(ecify)150 1750 y(these)28 b(v)-5 b(ariables)27
20025b(as)h(argumen)m(ts)f(to)h Ft(make)p Fu(:)38 b(`)p Ft(make)29
20026b(install)g(exec_prefix=/)p Fu(')23 b(will)28 b(install)g
20027Ft(bash)e Fu(and)150 1859 y Ft(bashbug)i Fu(in)m(to)k
20028Ft(/bin)d Fu(instead)i(of)f(the)h(default)f Ft(/usr/local/bin)p
d052bd6f
CR
20029Fu(.)275 2012 y(If)42 b(y)m(ou)i(w)m(an)m(t)g(to)g(see)g(the)f(\014les)
20030h(Bash)f(will)h(install)g(and)e(where)h(it)h(will)g(install)g(them)f
e59452c7
CR
20031(without)150 2122 y(c)m(hanging)35 b(an)m(ything)f(on)f(y)m(our)h
20032(system,)h(sp)s(ecify)e(the)h(v)-5 b(ariable)35 b Ft(DESTDIR)d
20033Fu(as)i(an)f(argumen)m(t)h(to)h Ft(make)p Fu(.)150 2231
20034y(Its)29 b(v)-5 b(alue)29 b(should)f(b)s(e)g(the)h(absolute)h
20035(directory)f(path)g(y)m(ou'd)g(lik)m(e)h(to)g(use)e(as)i(the)f(ro)s(ot)
20036g(of)g(y)m(our)g(sample)150 2341 y(installation)j(tree.)42
20037b(F)-8 b(or)31 b(example,)390 2493 y Ft(mkdir)46 b(/fs1/bash-install)
20038390 2603 y(make)h(install)e(DESTDIR=/fs1/bash-install)150
200392756 y Fu(will)37 b(install)g Ft(bash)e Fu(in)m(to)j
20040Ft(/fs1/bash-install/usr/l)o(ocal)o(/bin)o(/ba)o(sh)p
20041Fu(,)32 b(the)37 b(do)s(cumen)m(tation)g(in)m(to)150
200422865 y(directories)44 b(within)e Ft(/fs1/bash-install/usr/l)o(ocal)o
20043(/sha)o(re)p Fu(,)e(the)i(example)i(loadable)g(builtins)150
200442975 y(in)m(to)35 b Ft(/fs1/bash-install/usr/loc)o(al/l)o(ib/b)o(ash)o
20045Fu(,)30 b(and)k(so)g(on.)53 b(Y)-8 b(ou)34 b(can)h(use)f(the)h(usual)e
20046Ft(exec_)150 3084 y(prefix)c Fu(and)g Ft(prefix)g Fu(v)-5
20047b(ariables)31 b(to)g(alter)h(the)e(directory)h(paths)f(b)s(eneath)g
20048(the)h(v)-5 b(alue)30 b(of)h Ft(DESTDIR)p Fu(.)275 3237
20049y(The)24 b(GNU)i(Mak)m(e\014le)h(standards)d(pro)m(vide)i(a)f(more)h
20050(complete)g(description)g(of)f(these)h(v)-5 b(ariables)26
20051b(and)150 3346 y(their)k(e\013ects.)150 3614 y Fs(10.5)68
20052b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)150 3774
e9c75143
CR
20053y Fu(There)c(ma)m(y)h(b)s(e)e(some)i(features)g Ft(configure)c
20054Fu(can)k(not)g(\014gure)e(out)i(automatically)-8 b(,)49
20055b(but)41 b(needs)h(to)150 3883 y(determine)26 b(b)m(y)g(the)g(t)m(yp)s
e59452c7 20056(e)g(of)g(host)g(Bash)g(will)g(run)f(on.)39 b(Usually)26
a2851804 20057b Ft(configure)d Fu(can)k(\014gure)e(that)h(out,)i(but)150
e59452c7 200583993 y(if)g(it)g(prin)m(ts)f(a)h(message)g(sa)m(ying)h(it)f(can)g(not)f
a2851804 20059(guess)h(the)g(host)f(t)m(yp)s(e,)i(giv)m(e)g(it)f(the)g
e59452c7 20060Ft(--host=TYPE)c Fu(option.)150 4103 y(`)p Ft(TYPE)p
a2851804
CR
20061Fu(')29 b(can)h(either)g(b)s(e)g(a)g(short)f(name)h(for)f(the)h(system)
20062g(t)m(yp)s(e,)h(suc)m(h)e(as)h(`)p Ft(sun4)p Fu(',)g(or)f(a)h
e59452c7 20063(canonical)i(name)150 4212 y(with)e(three)h(\014elds:)40
a2851804 20064b(`)p Ft(CPU-COMPANY-SYSTEM)p Fu(')26 b(\(e.g.,)32 b(`)p
e59452c7 20065Ft(i386-unknown-freebsd4.2)p Fu('\).)275 4365 y(See)e(the)h(\014le)f
a2851804 20066Ft(support/config.sub)c Fu(for)k(the)g(p)s(ossible)g(v)-5
e59452c7
CR
20067b(alues)31 b(of)f(eac)m(h)i(\014eld.)150 4633 y Fs(10.6)68
20068b(Sharing)45 b(Defaults)150 4792 y Fu(If)d(y)m(ou)i(w)m(an)m(t)g(to)f
6e51e0d0
CR
20069(set)h(default)f(v)-5 b(alues)43 b(for)g Ft(configure)d
20070Fu(scripts)j(to)h(share,)i(y)m(ou)d(can)g(create)i(a)e(site)150
e59452c7 200714902 y(shell)48 b(script)f(called)i Ft(config.site)44
6e51e0d0
CR
20072b Fu(that)k(giv)m(es)h(default)f(v)-5 b(alues)48 b(for)f(v)-5
20073b(ariables)48 b(lik)m(e)h Ft(CC)p Fu(,)j Ft(cache_)150
e59452c7 200745011 y(file)p Fu(,)c(and)d Ft(prefix)p Fu(.)85 b Ft(configure)43
6e51e0d0 20075b Fu(lo)s(oks)j(for)f Ft(PREFIX/share/config.site)39
e59452c7 20076b Fu(if)46 b(it)g(exists,)k(then)150 5121 y Ft(PREFIX/etc/config.site)
6e51e0d0
CR
2007724 b Fu(if)31 b(it)g(exists.)42 b(Or,)30 b(y)m(ou)h(can)g(set)g(the)g
20078Ft(CONFIG_SITE)c Fu(en)m(vironmen)m(t)k(v)-5 b(ari-)150
e59452c7 200795230 y(able)40 b(to)g(the)g(lo)s(cation)h(of)e(the)h(site)g(script.)67
6e51e0d0 20080b(A)40 b(w)m(arning:)58 b(the)40 b(Bash)g Ft(configure)c
e59452c7
CR
20081Fu(lo)s(oks)k(for)f(a)h(site)150 5340 y(script,)31 b(but)e(not)i(all)g
20082Ft(configure)d Fu(scripts)i(do.)p eop end
e2520247
CR
20083%%Page: 165 171
20084TeXDict begin 165 170 bop 150 -116 a Fu(Chapter)30 b(10:)41
20085b(Installing)31 b(Bash)2356 b(165)150 299 y Fs(10.7)68
e59452c7 20086b(Op)t(eration)46 b(Con)l(trols)150 458 y Ft(configure)28
6e51e0d0 20087b Fu(recognizes)k(the)e(follo)m(wing)i(options)f(to)g(con)m(trol)h(ho)m
e59452c7
CR
20088(w)e(it)h(op)s(erates.)150 606 y Ft(--cache-file=)p Fj(file)630
20089716 y Fu(Use)d(and)g(sa)m(v)m(e)h(the)f(results)g(of)g(the)h(tests)f
20090(in)g Fr(\014le)33 b Fu(instead)28 b(of)h Ft(./config.cache)p
20091Fu(.)36 b(Set)28 b Fr(\014le)630 825 y Fu(to)j Ft(/dev/null)d
20092Fu(to)j(disable)g(cac)m(hing,)h(for)e(debugging)g Ft(configure)p
20093Fu(.)150 973 y Ft(--help)192 b Fu(Prin)m(t)30 b(a)h(summary)e(of)i(the)
20094f(options)h(to)g Ft(configure)p Fu(,)d(and)i(exit.)150
200951121 y Ft(--quiet)150 1230 y(--silent)150 1340 y(-q)384
20096b Fu(Do)31 b(not)g(prin)m(t)f(messages)h(sa)m(ying)g(whic)m(h)g(c)m
20097(hec)m(ks)g(are)g(b)s(eing)f(made.)150 1487 y Ft(--srcdir=)p
20098Fj(dir)630 1597 y Fu(Lo)s(ok)i(for)g(the)g(Bash)g(source)h(co)s(de)f
20099(in)g(directory)g Fr(dir)p Fu(.)45 b(Usually)33 b Ft(configure)c
20100Fu(can)j(deter-)630 1707 y(mine)e(that)h(directory)g(automatically)-8
20101b(.)150 1854 y Ft(--version)630 1964 y Fu(Prin)m(t)29
20102b(the)h(v)m(ersion)g(of)g(Auto)s(conf)f(used)g(to)h(generate)h(the)f
20103Ft(configure)d Fu(script,)j(and)f(exit.)275 2112 y Ft(configure)34
20104b Fu(also)k(accepts)g(some)g(other,)h(not)e(widely)g(used,)h(b)s
20105(oilerplate)g(options.)61 b(`)p Ft(configure)150 2221
20106y(--help)p Fu(')29 b(prin)m(ts)h(the)g(complete)i(list.)150
201072450 y Fs(10.8)68 b(Optional)46 b(F)-11 b(eatures)150
201082610 y Fu(The)29 b(Bash)h Ft(configure)d Fu(has)j(a)g(n)m(um)m(b)s(er)f
20109(of)h Ft(--enable-)p Fj(feature)25 b Fu(options,)30 b(where)g
20110Fr(feature)35 b Fu(indicates)150 2719 y(an)e(optional)i(part)e(of)h
20111(Bash.)50 b(There)33 b(are)g(also)i(sev)m(eral)g Ft(--with-)p
20112Fj(package)29 b Fu(options,)35 b(where)e Fr(pac)m(k)-5
20113b(age)150 2829 y Fu(is)32 b(something)h(lik)m(e)h(`)p
20114Ft(bash-malloc)p Fu(')c(or)i(`)p Ft(purify)p Fu('.)45
20115b(T)-8 b(o)33 b(turn)e(o\013)i(the)f(default)h(use)f(of)g(a)h(pac)m(k)
20116-5 b(age,)35 b(use)150 2939 y Ft(--without-)p Fj(package)p
20117Fu(.)46 b(T)-8 b(o)34 b(con\014gure)g(Bash)g(without)f(a)i(feature)f
20118(that)g(is)g(enabled)g(b)m(y)f(default,)i(use)150 3048
20119y Ft(--disable-)p Fj(feature)p Fu(.)275 3177 y(Here)28
20120b(is)g(a)h(complete)g(list)g(of)f(the)h Ft(--enable-)c
20121Fu(and)j Ft(--with-)e Fu(options)i(that)h(the)f(Bash)g
20122Ft(configure)150 3286 y Fu(recognizes.)150 3434 y Ft(--with-afs)630
201233544 y Fu(De\014ne)j(if)f(y)m(ou)h(are)f(using)g(the)h(Andrew)e(File)j
20124(System)e(from)g(T)-8 b(ransarc.)150 3691 y Ft(--with-bash-malloc)630
201253801 y Fu(Use)34 b(the)g(Bash)h(v)m(ersion)f(of)g Ft(malloc)e
20126Fu(in)i(the)g(directory)h Ft(lib/malloc)p Fu(.)48 b(This)34
20127b(is)g(not)g(the)630 3911 y(same)e Ft(malloc)e Fu(that)j(app)s(ears)e
20128(in)g Fm(gnu)h Fu(lib)s(c,)g(but)f(an)h(older)f(v)m(ersion)i
20129(originally)g(deriv)m(ed)630 4020 y(from)f(the)h(4.2)g
20130Fm(bsd)f Ft(malloc)p Fu(.)45 b(This)31 b Ft(malloc)g
20131Fu(is)i(v)m(ery)f(fast,)i(but)e(w)m(astes)h(some)g(space)g(on)630
201324130 y(eac)m(h)j(allo)s(cation.)58 b(This)34 b(option)i(is)f(enabled)g
20133(b)m(y)g(default.)56 b(The)34 b Ft(NOTES)g Fu(\014le)h(con)m(tains)i(a)
20134630 4239 y(list)29 b(of)f(systems)f(for)h(whic)m(h)g(this)g(should)e(b)
20135s(e)i(turned)e(o\013,)j(and)f Ft(configure)d Fu(disables)j(this)630
201364349 y(option)j(automatically)i(for)d(a)h(n)m(um)m(b)s(er)e(of)i
20137(systems.)150 4497 y Ft(--with-curses)630 4606 y Fu(Use)h(the)h(curses)
967625cd 20138e(library)h(instead)g(of)h(the)f(termcap)g(library)-8
e59452c7 20139b(.)46 b(This)32 b(should)f(b)s(e)g(supplied)630 4716
6e51e0d0 20140y(if)f(y)m(our)h(system)f(has)g(an)h(inadequate)g(or)f(incomplete)i
e59452c7
CR
20141(termcap)e(database.)150 4863 y Ft(--with-gnu-malloc)630
201424973 y Fu(A)g(synon)m(ym)g(for)g Ft(--with-bash-malloc)p
20143Fu(.)150 5121 y Ft(--with-installed-readlin)o(e[=)p Fj(P)o(REFI)o(X)p
20144Ft(])630 5230 y Fu(De\014ne)c(this)f(to)h(mak)m(e)h(Bash)f(link)f(with)
6e51e0d0 20145g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)630
e59452c7 201465340 y(than)f(the)h(v)m(ersion)g(in)f Ft(lib/readline)p
6e51e0d0 20147Fu(.)36 b(This)25 b(w)m(orks)g(only)h(with)f(Readline)h(5.0)h(and)e
e59452c7 20148(later)p eop end
e2520247
CR
20149%%Page: 166 172
20150TeXDict begin 166 171 bop 150 -116 a Fu(Chapter)30 b(10:)41
20151b(Installing)31 b(Bash)2356 b(166)630 299 y(v)m(ersions.)46
e59452c7
CR
20152b(If)32 b Fr(PREFIX)41 b Fu(is)32 b Ft(yes)f Fu(or)i(not)f(supplied,)f
20153Ft(configure)f Fu(uses)i(the)g(v)-5 b(alues)32 b(of)h(the)630
20154408 y(mak)m(e)28 b(v)-5 b(ariables)29 b Ft(includedir)24
20155b Fu(and)j Ft(libdir)p Fu(,)g(whic)m(h)g(are)h(sub)s(directories)f(of)g
20156Ft(prefix)f Fu(b)m(y)630 518 y(default,)44 b(to)d(\014nd)f(the)h
20157(installed)g(v)m(ersion)h(of)f(Readline)g(if)g(it)g(is)g(not)g(in)g
20158(the)g(standard)630 628 y(system)35 b(include)f(and)g(library)g
20159(directories.)54 b(If)34 b Fr(PREFIX)43 b Fu(is)35 b
20160Ft(no)p Fu(,)g(Bash)f(links)h(with)f(the)630 737 y(v)m(ersion)42
20161b(in)e Ft(lib/readline)p Fu(.)70 b(If)40 b Fr(PREFIX)51
20162b Fu(is)41 b(set)g(to)h(an)m(y)g(other)f(v)-5 b(alue,)44
20163b Ft(configure)630 847 y Fu(treats)27 b(it)g(as)f(a)h(directory)g
20164(pathname)f(and)f(lo)s(oks)i(for)f(the)g(installed)h(v)m(ersion)g(of)f
20165(Readline)630 956 y(in)34 b(sub)s(directories)f(of)h(that)h(directory)g
20166(\(include)f(\014les)g(in)g Fr(PREFIX)9 b Fu(/)p Ft(include)32
20167b Fu(and)i(the)630 1066 y(library)c(in)g Fr(PREFIX)9
20168b Fu(/)p Ft(lib)p Fu(\).)150 1236 y Ft(--with-libintl-prefix[=)p
20169Fj(P)o(REFI)o(X)p Ft(])630 1345 y Fu(De\014ne)45 b(this)f(to)h(mak)m(e)
20170g(Bash)g(link)f(with)g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g
9c317a6a
CR
20171(the)f(libin)m(tl)630 1455 y(library)30 b(instead)h(of)f(the)h(v)m
20172(ersion)g(in)f Ft(lib/intl)p Fu(.)150 1625 y Ft
20173(--with-libiconv-prefix[=)o Fj(PREF)o(IX)p Ft(])630 1734
20174y Fu(De\014ne)g(this)g(to)g(mak)m(e)h(Bash)f(lo)s(ok)g(for)g(libicon)m
20175(v)h(in)e Fr(PREFIX)39 b Fu(instead)30 b(of)g(the)g(standard)630
201761844 y(system)h(lo)s(cations.)42 b(There)30 b(is)g(no)g(v)m(ersion)h
20177(included)f(with)g(Bash.)150 2014 y Ft(--enable-minimal-config)630
201782123 y Fu(This)23 b(pro)s(duces)f(a)i(shell)g(with)f(minimal)h
20179(features,)h(close)g(to)f(the)g(historical)h(Bourne)e(shell.)275
e59452c7
CR
201802298 y(There)35 b(are)i(sev)m(eral)h Ft(--enable-)c Fu(options)j(that)g
20181(alter)g(ho)m(w)g(Bash)f(is)h(compiled,)i(link)m(ed,)f(and)e(in-)150
201822408 y(stalled,)c(rather)e(than)g(c)m(hanging)h(run-time)f(features.)
20183150 2583 y Ft(--enable-largefile)630 2692 y Fu(Enable)36
20184b(supp)s(ort)f(for)g(large)j(\014les)e(\()p Ft(http:)5
20185b(/)g(/)g(www)g(.)g(unix)g(.)g(org)t(/)g(v)o(ersi)o(on2)t(/)g(w)o(hats)
20186o(new)t(/)630 2802 y(lfs20mar)h(.)g(html)p Fu(\))35 b(if)j(the)g(op)s
20187(erating)g(system)g(requires)f(sp)s(ecial)i(compiler)f(options)g(to)630
201882911 y(build)33 b(programs)g(whic)m(h)h(can)g(access)h(large)g
20189(\014les.)51 b(This)33 b(is)h(enabled)g(b)m(y)g(default,)h(if)f(the)630
201903021 y(op)s(erating)d(system)f(pro)m(vides)h(large)g(\014le)g(supp)s
20191(ort.)150 3191 y Ft(--enable-profiling)630 3300 y Fu(This)g(builds)f(a)
3c5683a4 20192i(Bash)g(binary)f(that)h(pro)s(duces)e(pro\014ling)h(information)h(to)h
e59452c7
CR
20193(b)s(e)d(pro)s(cessed)630 3410 y(b)m(y)g Ft(gprof)f Fu(eac)m(h)j(time)f
20194(it)g(is)f(executed.)150 3580 y Ft(--enable-separate-helpfi)o(les)630
201953689 y Fu(Use)i(external)h(\014les)f(for)g(the)g(do)s(cumen)m(tation)h
3c5683a4 20196(displa)m(y)m(ed)f(b)m(y)g(the)g Ft(help)f Fu(builtin)h(instead)630
e59452c7
CR
201973799 y(of)f(storing)f(the)h(text)g(in)m(ternally)-8 b(.)150
201983969 y Ft(--enable-static-link)630 4078 y Fu(This)37
3c5683a4
CR
20199b(causes)h(Bash)f(to)h(b)s(e)f(link)m(ed)h(statically)-8
20200b(,)43 b(if)37 b Ft(gcc)g Fu(is)g(b)s(eing)g(used.)61
e59452c7
CR
20201b(This)37 b(could)h(b)s(e)630 4188 y(used)30 b(to)h(build)e(a)i(v)m
20202(ersion)g(to)g(use)f(as)g(ro)s(ot's)h(shell.)275 4363
6e51e0d0 20203y(The)f(`)p Ft(minimal-config)p Fu(')d(option)k(can)g(b)s(e)f(used)f
37c41ab1 20204(to)j(disable)e(all)i(of)f(the)f(follo)m(wing)i(options,)g(but)d(it)150
e59452c7 202054472 y(is)h(pro)s(cessed)g(\014rst,)g(so)h(individual)f(options)g(ma)m
6e51e0d0 20206(y)h(b)s(e)f(enabled)g(using)g(`)p Ft(enable-)p Fj(feature)p
e59452c7
CR
20207Fu('.)275 4617 y(All)133 b(of)g(the)g(follo)m(wing)i(options)e(except)h
20208(for)f(`)p Ft(alt-array-implementation)o Fu(',)150 4727
20209y(`)p Ft(disabled-builtins)p Fu(',)212 b(`)p Ft(direxpand-default)p
20210Fu(',)h(`)p Ft(strict-posix-default)p Fu(',)f(and)150
202114836 y(`)p Ft(xpg-echo-default)p Fu(')28 b(are)33 b(enabled)f(b)m(y)g
20212(default,)h(unless)e(the)i(op)s(erating)f(system)h(do)s(es)e(not)i(pro)
20213m(vide)150 4946 y(the)e(necessary)f(supp)s(ort.)150 5121
20214y Ft(--enable-alias)630 5230 y Fu(Allo)m(w)41 b(alias)g(expansion)f
20215(and)f(include)g(the)h Ft(alias)f Fu(and)g Ft(unalias)e
20216Fu(builtins)j(\(see)g(Sec-)630 5340 y(tion)31 b(6.6)g([Aliases],)i
e2520247
CR
20217(page)e(102\).)p eop end
20218%%Page: 167 173
20219TeXDict begin 167 172 bop 150 -116 a Fu(Chapter)30 b(10:)41
20220b(Installing)31 b(Bash)2356 b(167)150 299 y Ft
e59452c7 20221(--enable-alt-array-imple)o(ment)o(atio)o(n)630 408 y
d052bd6f
CR
20222Fu(This)32 b(builds)g(Bash)h(using)f(an)g(alternate)j(implemen)m
20223(tation)f(of)f(arra)m(ys)h(\(see)f(Section)h(6.7)630
e2520247 20224518 y([Arra)m(ys],)43 b(page)d(102\))h(that)f(pro)m(vides)g(faster)g
7a8455e4 20225(access)h(at)f(the)g(exp)s(ense)f(of)h(using)f(more)630
e59452c7
CR
20226628 y(memory)30 b(\(sometimes)i(man)m(y)e(times)h(more,)g(dep)s(ending)
20227e(on)h(ho)m(w)h(sparse)f(an)g(arra)m(y)h(is\).)150 774
20228y Ft(--enable-arith-for-comma)o(nd)630 883 y Fu(Include)21
20229b(supp)s(ort)g(for)g(the)i(alternate)g(form)f(of)g(the)g
20230Ft(for)f Fu(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
20231993 y(C)30 b(language)i Ft(for)d Fu(statemen)m(t)j(\(see)g(Section)f
20232(3.2.5.1)i([Lo)s(oping)d(Constructs],)h(page)g(11\).)150
202331139 y Ft(--enable-array-variables)630 1249 y Fu(Include)h(supp)s(ort)g
37c41ab1 20234(for)h(one-dimensional)h(arra)m(y)f(shell)h(v)-5 b(ariables)33
e2520247 20235b(\(see)h(Section)g(6.7)h([Ar-)630 1358 y(ra)m(ys],)c(page)g(102\).)150
e59452c7 202361504 y Ft(--enable-bang-history)630 1614 y Fu(Include)36
6e51e0d0 20237b(supp)s(ort)f(for)h Ft(csh)p Fu(-lik)m(e)h(history)g(substitution)f
e59452c7 20238(\(see)h(Section)g(9.3)h([History)f(In-)630 1724 y(teraction],)c(page)e
e2520247 20239(158\).)150 1870 y Ft(--enable-brace-expansion)630 1979
6e51e0d0
CR
20240y Fu(Include)40 b Ft(csh)p Fu(-lik)m(e)h(brace)f(expansion)g(\()h
20241Ft(b{a,b}c)d Fq(7!)i Ft(bac)30 b(bbc)39 b Fu(\).)71 b(See)40
e59452c7
CR
20242b(Section)h(3.5.1)630 2089 y([Brace)32 b(Expansion],)e(page)h(24,)h
20243(for)e(a)g(complete)i(description.)150 2235 y Ft
20244(--enable-casemod-attribu)o(tes)630 2345 y Fu(Include)37
09767ff0 20245b(supp)s(ort)g(for)g(case-mo)s(difying)i(attributes)g(in)e(the)h
e59452c7
CR
20246Ft(declare)e Fu(builtin)i(and)f(as-)630 2454 y(signmen)m(t)43
20247b(statemen)m(ts.)78 b(V)-8 b(ariables)44 b(with)e(the)g
20248Ft(uppercase)e Fu(attribute,)46 b(for)c(example,)630
202492564 y(will)31 b(ha)m(v)m(e)g(their)g(v)-5 b(alues)30
20250b(con)m(v)m(erted)i(to)f(upp)s(ercase)f(up)s(on)f(assignmen)m(t.)150
202512710 y Ft(--enable-casemod-expansi)o(on)630 2819 y Fu(Include)h(supp)s
20252(ort)e(for)i(case-mo)s(difying)i(w)m(ord)e(expansions.)150
202532966 y Ft(--enable-command-timing)630 3075 y Fu(Include)43
20254b(supp)s(ort)f(for)h(recognizing)i Ft(time)e Fu(as)g(a)h(reserv)m(ed)g
20255(w)m(ord)f(and)g(for)h(displa)m(ying)630 3185 y(timing)37
20256b(statistics)h(for)e(the)g(pip)s(eline)g(follo)m(wing)i
20257Ft(time)d Fu(\(see)i(Section)g(3.2.3)h([Pip)s(elines],)630
202583294 y(page)j(10\).)70 b(This)40 b(allo)m(ws)h(pip)s(elines)e(as)h(w)m
20259(ell)h(as)f(shell)h(builtins)e(and)g(functions)h(to)h(b)s(e)630
202603404 y(timed.)150 3550 y Ft(--enable-cond-command)630
202613660 y Fu(Include)33 b(supp)s(ort)f(for)i(the)g Ft([[)f
20262Fu(conditional)i(command.)51 b(\(see)34 b(Section)h(3.2.5.2)h([Condi-)
20263630 3769 y(tional)c(Constructs],)e(page)h(12\).)150 3915
20264y Ft(--enable-cond-regexp)630 4025 y Fu(Include)k(supp)s(ort)f(for)i
3c5683a4 20265(matc)m(hing)h Fm(posix)e Fu(regular)h(expressions)g(using)f(the)h(`)p
e59452c7 20266Ft(=~)p Fu(')g(binary)630 4134 y(op)s(erator)25 b(in)f(the)h
d37a4722 20267Ft([[)f Fu(conditional)h(command.)39 b(\(see)25 b(Section)h(3.2.5.2)h
e59452c7
CR
20268([Conditional)e(Con-)630 4244 y(structs],)31 b(page)g(12\).)150
202694390 y Ft(--enable-coprocesses)630 4500 y Fu(Include)23
6e51e0d0 20270b(supp)s(ort)f(for)i(copro)s(cesses)g(and)f(the)h Ft(coproc)e
d37a4722 20271Fu(reserv)m(ed)i(w)m(ord)g(\(see)h(Section)f(3.2.3)630
e59452c7
CR
202724609 y([Pip)s(elines],)31 b(page)g(10\).)150 4756 y Ft
20273(--enable-debugger)630 4865 y Fu(Include)f(supp)s(ort)e(for)i(the)h
d052bd6f
CR
20274(Bash)g(debugger)f(\(distributed)f(separately\).)150
202755011 y Ft(--enable-dev-fd-stat-bro)o(ken)630 5121 y Fu(If)d(calling)j
3c5683a4
CR
20276Ft(stat)d Fu(on)g(/dev/fd/)p Fr(N)38 b Fu(returns)25
20277b(di\013eren)m(t)j(results)f(than)f(calling)j Ft(fstat)c
e59452c7 20278Fu(on)i(\014le)630 5230 y(descriptor)g Fr(N)p Fu(,)i(supply)c(this)j
3c5683a4 20279(option)g(to)g(enable)f(a)h(w)m(ork)-5 b(around.)39 b(This)27
e59452c7
CR
20280b(has)g(implications)630 5340 y(for)j(conditional)i(commands)e(that)h
20281(test)g(\014le)g(attributes.)p eop end
e2520247
CR
20282%%Page: 168 174
20283TeXDict begin 168 173 bop 150 -116 a Fu(Chapter)30 b(10:)41
20284b(Installing)31 b(Bash)2356 b(168)150 299 y Ft
e59452c7
CR
20285(--enable-direxpand-defau)o(lt)630 408 y Fu(Cause)53
20286b(the)g Ft(direxpand)d Fu(shell)j(option)h(\(see)g(Section)f(4.3.2)i
e2520247 20287([The)e(Shopt)f(Builtin],)630 518 y(page)29 b(72\))g(to)f(b)s(e)f
e59452c7
CR
20288(enabled)h(b)m(y)g(default)g(when)e(the)i(shell)g(starts.)41
20289b(It)27 b(is)h(normally)g(disabled)630 628 y(b)m(y)i(default.)150
20290807 y Ft(--enable-directory-stack)630 917 y Fu(Include)j(supp)s(ort)g
20291(for)h(a)g Ft(csh)p Fu(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
20292Ft(pushd)p Fu(,)f Ft(popd)p Fu(,)g(and)f Ft(dirs)630
202931026 y Fu(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
e2520247 20294(k],)g(page)f(104\).)150 1205 y Ft(--enable-disabled-builti)o(ns)630
e59452c7
CR
202951315 y Fu(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
20296(ed)i(via)f(`)p Ft(builtin)29 b(xxx)p Fu(')37 b(ev)m(en)j(after)f
20297Ft(xxx)e Fu(has)630 1425 y(b)s(een)31 b(disabled)g(using)g(`)p
6e51e0d0 20298Ft(enable)d(-n)i(xxx)p Fu('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
e2520247 20299(Builtins],)i(page)f(57,)630 1534 y(for)e(details)i(of)e(the)h
6e51e0d0 20300Ft(builtin)d Fu(and)i Ft(enable)e Fu(builtin)i(commands.)150
e59452c7 203011714 y Ft(--enable-dparen-arithmet)o(ic)630 1823 y Fu(Include)42
6e51e0d0 20302b(supp)s(ort)f(for)h(the)h Ft(\(\(...)o(\)\))f Fu(command)g(\(see)i
e59452c7
CR
20303(Section)f(3.2.5.2)i([Conditional)630 1933 y(Constructs],)30
20304b(page)h(12\).)150 2112 y Ft(--enable-extended-glob)630
203052222 y Fu(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
09767ff0 20306(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m(v)m(e)630
e59452c7 203072331 y(under)29 b(Section)i(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i
e2520247 20308(page)e(37.)150 2511 y Ft(--enable-extended-glob-d)o(efau)o(lt)630
e59452c7
CR
203092620 y Fu(Set)37 b(the)f(default)h(v)-5 b(alue)37 b(of)f(the)h
20310Ft(extglob)d Fu(shell)j(option)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(under)
e2520247 20311c(Sec-)630 2730 y(tion)d(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(72,)
e59452c7
CR
20312h(to)f(b)s(e)f(enabled.)150 2909 y Ft(--enable-function-import)630
203133019 y Fu(Include)23 b(supp)s(ort)g(for)g(imp)s(orting)h(function)g
8a0829e9 20314(de\014nitions)f(exp)s(orted)h(b)m(y)g(another)g(instance)630
e59452c7
CR
203153128 y(of)31 b(the)f(shell)h(from)f(the)g(en)m(vironmen)m(t.)41
20316b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)150
203173308 y Ft(--enable-glob-asciirange)o(-def)o(ault)630
203183417 y Fu(Set)f(the)f(default)h(v)-5 b(alue)29 b(of)f(the)h
20319Ft(globasciiranges)24 b Fu(shell)29 b(option)g(describ)s(ed)e(ab)s(o)m
20320(v)m(e)j(un-)630 3527 y(der)c(Section)i(4.3.2)h([The)d(Shopt)g
e2520247 20321(Builtin],)j(page)f(72,)g(to)g(b)s(e)e(enabled.)40 b(This)26
e59452c7
CR
20322b(con)m(trols)i(the)630 3636 y(b)s(eha)m(vior)40 b(of)f(c)m(haracter)i
20323(ranges)f(when)f(used)f(in)i(pattern)f(matc)m(hing)i(brac)m(k)m(et)g
20324(expres-)630 3746 y(sions.)150 3925 y Ft(--enable-help-builtin)630
203254035 y Fu(Include)24 b(the)h Ft(help)f Fu(builtin,)h(whic)m(h)g(displa)
20326m(ys)f(help)h(on)f(shell)h(builtins)f(and)h(v)-5 b(ariables)25
20327b(\(see)630 4144 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f
e2520247 20328(57\).)150 4324 y Ft(--enable-history)630 4433 y Fu(Include)e(command)g
e59452c7
CR
20329(history)h(and)f(the)h Ft(fc)f Fu(and)g Ft(history)e
20330Fu(builtin)j(commands)f(\(see)h(Sec-)630 4543 y(tion)h(9.1)g([Bash)g
e2520247 20331(History)g(F)-8 b(acilities],)34 b(page)d(156\).)150
e59452c7
CR
203324722 y Ft(--enable-job-control)630 4832 y Fu(This)h(enables)i(the)f
20333(job)g(con)m(trol)i(features)e(\(see)i(Chapter)d(7)i([Job)f(Con)m
e2520247 20334(trol],)i(page)f(117\),)630 4941 y(if)c(the)h(op)s(erating)g(system)f
e59452c7
CR
20335(supp)s(orts)f(them.)150 5121 y Ft(--enable-multibyte)630
203365230 y Fu(This)g(enables)i(supp)s(ort)d(for)i(m)m(ultib)m(yte)h(c)m
20337(haracters)g(if)f(the)g(op)s(erating)h(system)f(pro)m(vides)630
203385340 y(the)h(necessary)f(supp)s(ort.)p eop end
e2520247
CR
20339%%Page: 169 175
20340TeXDict begin 169 174 bop 150 -116 a Fu(Chapter)30 b(10:)41
20341b(Installing)31 b(Bash)2356 b(169)150 299 y Ft
e59452c7
CR
20342(--enable-net-redirection)o(s)630 408 y Fu(This)23 b(enables)h(the)g
20343(sp)s(ecial)h(handling)e(of)h(\014lenames)g(of)g(the)g(form)g
20344Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 518 y Fu(and)31
20345b Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)26 b Fu(when)31
20346b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h([Redirec-)630
e2520247 20347628 y(tions],)e(page)g(39\).)150 787 y Ft(--enable-process-substit)o
5e6f45d9 20348(utio)o(n)630 897 y Fu(This)49 b(enables)i(pro)s(cess)f(substitution)g
e59452c7 20349(\(see)h(Section)g(3.5.6)h([Pro)s(cess)e(Substitution],)630
d052bd6f 203501006 y(page)31 b(35\))h(if)e(the)h(op)s(erating)f(system)h(pro)m(vides)
5e6f45d9
CR
20351f(the)h(necessary)g(supp)s(ort.)150 1166 y Ft(--enable-progcomp)630
203521275 y Fu(Enable)d(the)g(programmable)g(completion)i(facilities)g
20353(\(see)f(Section)g(8.6)g([Programmable)630 1385 y(Completion],)i(page)h
e2520247 20354(147\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g
5e6f45d9
CR
20355(has)f(no)g(e\013ect.)150 1544 y Ft(--enable-prompt-string-d)o(ecod)o
20356(ing)630 1654 y Fu(T)-8 b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f
e59452c7 20357(a)g(n)m(um)m(b)s(er)e(of)i(bac)m(kslash-escap)s(ed)g(c)m(haracters)i
5e6f45d9 20358(in)d(the)630 1763 y Ft($PS0)p Fu(,)36 b Ft($PS1)p Fu(,)g
e59452c7
CR
20359Ft($PS2)p Fu(,)h(and)e Ft($PS4)f Fu(prompt)h(strings.)57
20360b(See)36 b(Section)h(6.9)g([Con)m(trolling)g(the)630
e2520247 203611873 y(Prompt],)30 b(page)h(106,)h(for)f(a)f(complete)i(list)f(of)g
5e6f45d9
CR
20362(prompt)e(string)i(escap)s(e)f(sequences.)150 2032 y
20363Ft(--enable-readline)630 2142 y Fu(Include)e(supp)s(ort)f(for)h
e59452c7 20364(command-line)h(editing)g(and)f(history)g(with)g(the)h(Bash)g(v)m
5e6f45d9 20365(ersion)g(of)630 2252 y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8)
e2520247 20366g([Command)g(Line)g(Editing],)h(page)g(121\).)150 2411
5e6f45d9 20367y Ft(--enable-restricted)630 2521 y Fu(Include)41 b(supp)s(ort)f(for)i
e59452c7 20368(a)g Fr(restricted)g(shell)p Fu(.)75 b(If)42 b(this)f(is)h(enabled,)j
5e6f45d9 20369(Bash,)g(when)c(called)630 2630 y(as)f Ft(rbash)p Fu(,)h(en)m(ters)f(a)
e59452c7 20370g(restricted)h(mo)s(de.)68 b(See)40 b(Section)h(6.10)g([The)f
e2520247 20371(Restricted)h(Shell],)630 2740 y(page)31 b(108,)h(for)e(a)h
5e6f45d9
CR
20372(description)f(of)h(restricted)g(mo)s(de.)150 2899 y
20373Ft(--enable-select)630 3009 y Fu(Include)25 b(the)h Ft(select)f
e59452c7 20374Fu(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j(the)e(generation)h
5e6f45d9
CR
20375(of)f(simple)630 3118 y(men)m(us)k(\(see)h(Section)g(3.2.5.2)i
20376([Conditional)e(Constructs],)g(page)g(12\).)150 3278
20377y Ft(--enable-single-help-str)o(ings)630 3387 y Fu(Store)40
3c5683a4
CR
20378b(the)g(text)h(displa)m(y)m(ed)g(b)m(y)e(the)i Ft(help)d
20379Fu(builtin)i(as)g(a)g(single)h(string)f(for)f(eac)m(h)i(help)630
5e6f45d9 203803497 y(topic.)54 b(This)33 b(aids)i(in)f(translating)h(the)g(text)g(to)
e59452c7 20381g(di\013eren)m(t)g(languages.)54 b(Y)-8 b(ou)35 b(ma)m(y)g(need)630
5e6f45d9
CR
203823606 y(to)c(disable)g(this)f(if)g(y)m(our)h(compiler)g(cannot)f(handle)
20383g(v)m(ery)h(long)g(string)f(literals.)150 3766 y Ft
20384(--enable-strict-posix-de)o(faul)o(t)630 3875 y Fu(Mak)m(e)c(Bash)f
3c5683a4 20385Fm(posix)p Fu(-conforman)m(t)g(b)m(y)f(default)h(\(see)g(Section)h
5e6f45d9 20386(6.11)g([Bash)f(POSIX)e(Mo)s(de],)630 3985 y(page)31
e2520247 20387b(108\).)150 4144 y Ft(--enable-translatable-st)o(ring)o(s)630
5e6f45d9
CR
203884254 y Fu(Enable)h(supp)s(ort)e(for)i Ft($")p Fj(string)p
20389Ft(")e Fu(translatable)j(strings)f(\(see)h(Section)g(3.1.2.5)h([Lo)s
20390(cale)630 4364 y(T)-8 b(ranslation],)32 b(page)f(7\).)150
203914523 y Ft(--enable-usg-echo-defaul)o(t)630 4633 y Fu(A)f(synon)m(ym)g
20392(for)g Ft(--enable-xpg-echo-default)p Fu(.)150 4792 y
20393Ft(--enable-xpg-echo-defaul)o(t)630 4902 y Fu(Mak)m(e)c(the)f
20394Ft(echo)e Fu(builtin)i(expand)f(bac)m(kslash-escap)s(ed)h(c)m
20395(haracters)h(b)m(y)f(default,)h(without)630 5011 y(requiring)d(the)h
20396Ft(-e)f Fu(option.)39 b(This)23 b(sets)h(the)g(default)g(v)-5
20397b(alue)24 b(of)g(the)g Ft(xpg_echo)e Fu(shell)h(option)630
203985121 y(to)28 b Ft(on)p Fu(,)g(whic)m(h)f(mak)m(es)h(the)g(Bash)f
20399Ft(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
20400(eci\014ed)f(in)g(the)630 5230 y(Single)35 b(Unix)f(Sp)s
20401(eci\014cation,)i(v)m(ersion)e(3.)53 b(See)35 b(Section)g(4.2)g([Bash)g
e2520247 20402(Builtins],)h(page)f(57,)630 5340 y(for)30 b(a)h(description)f(of)h
5e6f45d9
CR
20403(the)f(escap)s(e)h(sequences)g(that)g Ft(echo)e Fu(recognizes.)p
20404eop end
e2520247
CR
20405%%Page: 170 176
20406TeXDict begin 170 175 bop 150 -116 a Fu(Chapter)30 b(10:)41
20407b(Installing)31 b(Bash)2356 b(170)275 299 y(The)28 b(\014le)i
3c5683a4
CR
20408Ft(config-top.h)c Fu(con)m(tains)31 b(C)d(Prepro)s(cessor)h(`)p
20409Ft(#define)p Fu(')f(statemen)m(ts)j(for)f(options)f(whic)m(h)150
5e6f45d9 20410408 y(are)35 b(not)g(settable)i(from)d Ft(configure)p
3c5683a4 20411Fu(.)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 20412m(hanged;)k(b)s(ew)m(are)d(of)150 518 y(the)h(consequences)g(if)f(y)m
3c5683a4 20413(ou)h(do.)55 b(Read)36 b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e
5e6f45d9
CR
20414(eac)m(h)i(de\014nition)e(for)g(more)150 628 y(information)c(ab)s(out)f
20415(its)h(e\013ect.)p eop end
e2520247
CR
20416%%Page: 171 177
20417TeXDict begin 171 176 bop 3614 -116 a Fu(171)150 299
037a8b7f
CR
20418y Fp(App)t(endix)52 b(A)81 b(Rep)t(orting)53 b(Bugs)150
20419533 y Fu(Please)33 b(rep)s(ort)e(all)h(bugs)f(y)m(ou)h(\014nd)e(in)i
20420(Bash.)44 b(But)32 b(\014rst,)g(y)m(ou)g(should)e(mak)m(e)j(sure)e
20421(that)h(it)g(really)h(is)f(a)150 643 y(bug,)d(and)g(that)h(it)g(app)s
20422(ears)f(in)g(the)h(latest)h(v)m(ersion)f(of)g(Bash.)40
20423b(The)29 b(latest)j(v)m(ersion)e(of)f(Bash)h(is)f(alw)m(a)m(ys)150
e59452c7
CR
20424752 y(a)m(v)-5 b(ailable)43 b(for)d(FTP)g(from)g Ft(ftp:)8
20425b(/)g(/)g(ftp)g(.)g(gnu)g(.)g(org)g(/)g(pub)g(/)g(gnu)g(/)g(bash)g(/)45
20426b Fu(and)40 b(from)g Ft(http:)8 b(/)g(/)g(git)g(.)150
20427862 y(savannah.gnu.org/cgit/ba)o(sh.g)o(it/s)o(nap)o(shot)o(/bas)o(h-m)
d052bd6f
CR
20428o(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)
20429h(determined)f(that)h(a)f(bug)g(actually)h(exists,)j(use)c(the)g
20430Ft(bashbug)e Fu(command)i(to)150 1106 y(submit)21 b(a)g(bug)g(rep)s
20431(ort)g(or)g(use)g(the)h(form)e(at)j(the)e(Bash)h(pro)5
20432b(ject)21 b(page)h(\()p Ft(https://savannah.gnu.org/)150
204331215 y(projects/bash/)p Fu(\).)35 b(If)24 b(y)m(ou)h(ha)m(v)m(e)h(a)f
20434(\014x,)g(y)m(ou)g(are)g(encouraged)g(to)g(submit)f(that)h(as)g(w)m
20435(ell!)39 b(Suggestions)150 1325 y(and)33 b(`philosophical')i(bug)e(rep)
20436s(orts)g(ma)m(y)h(b)s(e)f(mailed)h(to)g Ft(bug-bash@gnu)s(.)s(org)29
20437b Fu(or)k Ft(help-bash@gnu)s(.)150 1435 y(org)p Fu(.)275
204381569 y(All)e(bug)e(rep)s(orts)h(should)f(include:)225
204391704 y Fq(\017)60 b Fu(The)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(of)h
20440(Bash.)225 1838 y Fq(\017)60 b Fu(The)30 b(hardw)m(are)g(and)g(op)s
20441(erating)g(system.)225 1973 y Fq(\017)60 b Fu(The)30
20442b(compiler)h(used)e(to)i(compile)h(Bash.)225 2107 y Fq(\017)60
20443b Fu(A)30 b(description)h(of)f(the)h(bug)f(b)s(eha)m(viour.)225
204442242 y Fq(\017)60 b Fu(A)30 b(short)h(script)f(or)g(`recip)s(e')h(whic)
20445m(h)f(exercises)i(the)e(bug)g(and)g(ma)m(y)h(b)s(e)f(used)f(to)i(repro)
20446s(duce)e(it.)150 2401 y Ft(bashbug)d Fu(inserts)i(the)h(\014rst)f
20447(three)g(items)h(automatically)i(in)m(to)f(the)e(template)i(it)f(pro)m
20448(vides)f(for)g(\014ling)h(a)150 2511 y(bug)h(rep)s(ort.)275
204492645 y(Please)h(send)f(all)h(rep)s(orts)f(concerning)g(this)h(man)m
20450(ual)f(to)h Ft(bug-bash@gnu.org)p Fu(.)p eop end
e2520247
CR
20451%%Page: 172 178
20452TeXDict begin 172 177 bop 3614 -116 a Fu(172)150 141
037a8b7f
CR
20453y Fp(App)t(endix)58 b(B)81 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13
20454b(rom)54 b(The)g(Bourne)1088 299 y(Shell)150 530 y Fu(Bash)26
c302751c
CR
20455b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f
20456(and)g(v)-5 b(ariable)27 b(expansion,)g(redirec-)150
20457640 y(tion,)i(and)e(quoting)g(as)h(the)g(Bourne)f(Shell.)40
6e51e0d0 20458b(Bash)27 b(uses)g(the)h Fm(posix)f Fu(standard)f(as)i(the)g(sp)s
c302751c
CR
20459(eci\014cation)g(of)150 749 y(ho)m(w)34 b(these)h(features)g(are)g(to)g
20460(b)s(e)f(implemen)m(ted.)53 b(There)34 b(are)h(some)g(di\013erences)g
20461(b)s(et)m(w)m(een)g(the)g(tradi-)150 859 y(tional)e(Bourne)e(shell)h
ac18b312
CR
20462(and)f(Bash;)i(this)f(section)g(quic)m(kly)h(details)g(the)e
20463(di\013erences)h(of)g(signi\014cance.)46 b(A)150 969
20464y(n)m(um)m(b)s(er)24 b(of)h(these)h(di\013erences)f(are)h(explained)f
20465(in)g(greater)h(depth)f(in)g(previous)f(sections.)40
20466b(This)25 b(section)150 1078 y(uses)33 b(the)i(v)m(ersion)f(of)g
6e51e0d0 20467Ft(sh)f Fu(included)g(in)h(SVR4.2)h(\(the)f(last)h(v)m(ersion)f(of)g
ac18b312 20468(the)g(historical)i(Bourne)d(shell\))150 1188 y(as)e(the)f(baseline)h
6e51e0d0
CR
20469(reference.)225 1322 y Fq(\017)60 b Fu(Bash)32 b(is)h
20470Fm(posix)p Fu(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
20471Fm(posix)g Fu(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
204721431 y Ft(sh)e Fu(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
e2520247 20473(POSIX)g(Mo)s(de],)h(page)g(108\).)225 1565 y Fq(\017)60
6e51e0d0 20474b Fu(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
1c72c0cd 20475(options)f(\(see)f(Section)h(6.1)g([In)m(v)m(oking)g(Bash],)h(page)e
e2520247 20476(93\).)225 1699 y Fq(\017)60 b Fu(Bash)40 b(has)f(command-line)h
9f178efb 20477(editing)g(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)k(page)d
e2520247 20478(121\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225
6e51e0d0 204791943 y Fq(\017)60 b Fu(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
1c72c0cd 20480(ord)f(completion)i(mec)m(hanism)f(\(see)h(Section)g(8.6)g([Pro-)330
e2520247 204812052 y(grammable)39 b(Completion],)i(page)e(147\),)i(and)d(builtin)g
6e51e0d0
CR
20482(commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330
204832162 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225
204842296 y Fq(\017)60 b Fu(Bash)26 b(has)f(command)h(history)f(\(see)i
37c41ab1 20485(Section)f(9.1)h([Bash)f(History)h(F)-8 b(acilities],)30
e2520247 20486b(page)c(156\))i(and)d(the)330 2405 y Ft(history)k Fu(and)h
6e51e0d0 20487Ft(fc)g Fu(builtins)g(to)h(manipulate)g(it.)42 b(The)30
37c41ab1 20488b(Bash)h(history)g(list)g(main)m(tains)g(timestamp)330
1c72c0cd 204892515 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31
6e51e0d0
CR
20490b(of)f(the)h Ft(HISTTIMEFORMAT)26 b Fu(v)-5 b(ariable)32
20491b(to)f(displa)m(y)f(it.)225 2649 y Fq(\017)60 b Fu(Bash)48
20492b(implemen)m(ts)h Ft(csh)p Fu(-lik)m(e)g(history)f(expansion)g(\(see)h
1c72c0cd 20493(Section)g(9.3)h([History)f(In)m(teraction],)330 2759
e2520247 20494y(page)31 b(158\).)225 2892 y Fq(\017)60 b Fu(Bash)29
7a8455e4 20495b(has)h(one-dimensional)g(arra)m(y)f(v)-5 b(ariables)30
e2520247 20496b(\(see)h(Section)f(6.7)g([Arra)m(ys],)h(page)f(102\),)h(and)e(the)330
1c72c0cd 204973002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g
37c41ab1 20498(assignmen)m(t)h(syn)m(tax)g(to)g(use)f(them.)67 b(Sev)m(eral)40
1c72c0cd 20499b(of)g(the)330 3112 y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h
37c41ab1 20500(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 20501(er)f(of)h(built-in)f(arra)m(y)330 3221 y(v)-5 b(ariables.)225
6e51e0d0 205023355 y Fq(\017)60 b Fu(The)37 b Ft($'...)n(')g Fu(quoting)g(syn)m(tax,)
37c41ab1 20503j(whic)m(h)d(expands)f(ANSI-C)h(bac)m(kslash-escap)s(ed)h(c)m
1c72c0cd 20504(haracters)g(in)330 3465 y(the)26 b(text)h(b)s(et)m(w)m(een)g(the)g
37c41ab1 20505(single)f(quotes,)i(is)e(supp)s(orted)f(\(see)i(Section)g(3.1.2.4)h
1c72c0cd 20506([ANSI-C)e(Quoting],)330 3574 y(page)31 b(6\).)225 3708
6e51e0d0
CR
20507y Fq(\017)60 b Fu(Bash)30 b(supp)s(orts)f(the)h Ft($"...)o(")f
20508Fu(quoting)i(syn)m(tax)g(to)f(do)g(lo)s(cale-sp)s(eci\014c)i
20509(translation)g(of)e(the)g(c)m(har-)330 3818 y(acters)g(b)s(et)m(w)m
20510(een)f(the)f(double)g(quotes.)41 b(The)28 b Ft(-D)p Fu(,)h
20511Ft(--dump-strings)p Fu(,)c(and)j Ft(--dump-po-strings)330
205123927 y Fu(in)m(v)m(o)s(cation)42 b(options)d(list)i(the)e(translatable)
20513i(strings)f(found)e(in)h(a)h(script)g(\(see)g(Section)g(3.1.2.5)330
205144037 y([Lo)s(cale)32 b(T)-8 b(ranslation],)31 b(page)h(7\).)225
205154171 y Fq(\017)60 b Fu(Bash)44 b(implemen)m(ts)g(the)f
20516Ft(!)h Fu(k)m(eyw)m(ord)g(to)g(negate)h(the)f(return)e(v)-5
20517b(alue)44 b(of)g(a)g(pip)s(eline)f(\(see)h(Sec-)330 4281
e59452c7
CR
20518y(tion)36 b(3.2.3)h([Pip)s(elines],)g(page)f(10\).)57
20519b(V)-8 b(ery)36 b(useful)f(when)f(an)h Ft(if)g Fu(statemen)m(t)i(needs)
20520e(to)h(act)h(only)330 4390 y(if)32 b(a)g(test)g(fails.)45
20521b(The)31 b(Bash)h(`)p Ft(-o)e(pipefail)p Fu(')g(option)i(to)g
20522Ft(set)f Fu(will)h(cause)g(a)g(pip)s(eline)g(to)g(return)f(a)330
205234500 y(failure)g(status)f(if)h(an)m(y)f(command)g(fails.)225
6e51e0d0
CR
205244634 y Fq(\017)60 b Fu(Bash)34 b(has)g(the)g Ft(time)f
20525Fu(reserv)m(ed)h(w)m(ord)g(and)f(command)h(timing)h(\(see)g(Section)g
e59452c7
CR
20526(3.2.3)g([Pip)s(elines],)330 4743 y(page)d(10\).)43 b(The)31
20527b(displa)m(y)g(of)g(the)g(timing)h(statistics)h(ma)m(y)e(b)s(e)f(con)m
6e51e0d0
CR
20528(trolled)j(with)e(the)g Ft(TIMEFORMAT)330 4853 y Fu(v)-5
20529b(ariable.)225 4987 y Fq(\017)60 b Fu(Bash)28 b(implemen)m(ts)g(the)f
20530Ft(for)j(\(\()g Fj(expr1)f Ft(;)h Fj(expr2)f Ft(;)h Fj(expr3)f
20531Ft(\)\))e Fu(arithmetic)h(for)g(command,)g(sim-)330 5096
d37a4722 20532y(ilar)j(to)g(the)g(C)f(language)h(\(see)h(Section)f(3.2.5.1)i([Lo)s
e59452c7 20533(oping)d(Constructs],)h(page)g(11\).)225 5230 y Fq(\017)60
6e51e0d0
CR
20534b Fu(Bash)31 b(includes)f(the)g Ft(select)f Fu(comp)s(ound)g(command,)i
20535(whic)m(h)f(allo)m(ws)i(the)f(generation)g(of)g(simple)330
d37a4722 205365340 y(men)m(us)f(\(see)h(Section)g(3.2.5.2)i([Conditional)e
e59452c7 20537(Constructs],)g(page)g(12\).)p eop end
e2520247
CR
20538%%Page: 173 179
20539TeXDict begin 173 178 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20540b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
e2520247 20541b(The)f(Bourne)g(Shell)1258 b(173)225 299 y Fq(\017)60
6e51e0d0 20542b Fu(Bash)40 b(includes)g(the)g Ft([[)g Fu(comp)s(ound)e(command,)43
1c72c0cd 20543b(whic)m(h)c(mak)m(es)i(conditional)h(testing)f(part)f(of)330
d37a4722 20544408 y(the)f(shell)g(grammar)g(\(see)h(Section)f(3.2.5.2)j([Conditional)
e59452c7 20545d(Constructs],)i(page)f(12\),)i(including)330 518 y(optional)32
6e51e0d0
CR
20546b(regular)e(expression)g(matc)m(hing.)225 653 y Fq(\017)60
20547b Fu(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m
20548(hing)f(for)e(the)g Ft(case)g Fu(and)f Ft([[)h Fu(constructs.)225
20549789 y Fq(\017)60 b Fu(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h
e59452c7 20550(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(24\))h(and)d(tilde)330
1c72c0cd 20551898 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f
e59452c7 20552(page)h(25\).)225 1034 y Fq(\017)60 b Fu(Bash)24 b(implemen)m(ts)h
6e51e0d0
CR
20553(command)e(aliases)j(and)d(the)i Ft(alias)d Fu(and)i
20554Ft(unalias)e Fu(builtins)h(\(see)i(Section)g(6.6)330
e2520247 205551143 y([Aliases],)32 b(page)f(102\).)225 1279 y Fq(\017)60
6e51e0d0 20556b Fu(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e
d37a4722 20557Ft(\(\()g Fu(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.5.2)j([Con-)
e59452c7 20558330 1388 y(ditional)d(Constructs],)e(page)i(12\),)g(and)e(arithmetic)i
1c72c0cd 20559(expansion)e(\(see)i(Section)f(6.5)h([Shell)f(Arith-)330
e2520247
CR
205601498 y(metic],)h(page)f(100\).)225 1633 y Fq(\017)60
20561b Fu(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g
20562(en)m(vironmen)m(t)g(are)g(automatically)i(exp)s(orted)d(to)h(c)m(hild)
20563330 1743 y(pro)s(cesses.)38 b(The)23 b(Bourne)g(shell)g(do)s(es)g(not)g
37c41ab1 20564(normally)g(do)g(this)g(unless)g(the)g(v)-5 b(ariables)24
1c72c0cd 20565b(are)f(explicitly)330 1852 y(mark)m(ed)30 b(using)g(the)h
6e51e0d0
CR
20566Ft(export)e Fu(command.)225 1988 y Fq(\017)60 b Fu(Bash)26
20567b(supp)s(orts)d(the)j(`)p Ft(+=)p Fu(')f(assignmen)m(t)i(op)s(erator,)g
1c72c0cd
CR
20568(whic)m(h)e(app)s(ends)f(to)i(the)g(v)-5 b(alue)26 b(of)f(the)h(v)-5
20569b(ariable)330 2097 y(named)30 b(on)g(the)h(left)g(hand)e(side.)225
6e51e0d0
CR
205702233 y Fq(\017)60 b Fu(Bash)36 b(includes)g(the)g Fm(posix)f
20571Fu(pattern)h(remo)m(v)-5 b(al)37 b(`)p Ft(\045)p Fu(',)h(`)p
20572Ft(#)p Fu(',)g(`)p Ft(\045\045)p Fu(')e(and)f(`)p Ft(##)p
20573Fu(')h(expansions)g(to)g(remo)m(v)m(e)330 2342 y(leading)f(or)f
1c72c0cd
CR
20574(trailing)h(substrings)e(from)g(v)-5 b(ariable)35 b(v)-5
20575b(alues)35 b(\(see)g(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
e59452c7 205762452 y(Expansion],)30 b(page)h(26\).)225 2587 y Fq(\017)60
6e51e0d0
CR
20577b Fu(The)46 b(expansion)g Ft(${#xx})p Fu(,)j(whic)m(h)d(returns)f(the)i
20578(length)f(of)h Ft(${xx})p Fu(,)i(is)e(supp)s(orted)d(\(see)j(Sec-)330
1c72c0cd 205792697 y(tion)31 b(3.5.3)h([Shell)f(P)m(arameter)g(Expansion],)f(page)i
e59452c7 20580(26\).)225 2832 y Fq(\017)60 b Fu(The)30 b(expansion)g
6e51e0d0
CR
20581Ft(${var:)p Fr(o\013set)r Ft([:)p Fr(length)p Ft(]})p
20582Fu(,)g(whic)m(h)g(expands)g(to)h(the)g(substring)e(of)i
20583Ft(var)p Fu('s)e(v)-5 b(alue)330 2942 y(of)43 b(length)g
20584Fr(length)p Fu(,)k(b)s(eginning)42 b(at)i Fr(o\013set)p
20585Fu(,)j(is)c(presen)m(t)g(\(see)g(Section)h(3.5.3)h([Shell)e(P)m
e59452c7
CR
20586(arameter)330 3051 y(Expansion],)30 b(page)h(26\).)225
205873187 y Fq(\017)60 b Fu(The)21 b(expansion)f Ft(${)p Fj(var)p
20588Ft(/[/])p Fr(pattern)p Ft([/)p Fr(replacemen)m(t)r Ft(]})p
20589Fu(,)i(whic)m(h)e(matc)m(hes)j Fr(pattern)e Fu(and)f(replaces)330
205903296 y(it)30 b(with)f Fr(replacemen)m(t)k Fu(in)c(the)h(v)-5
20591b(alue)30 b(of)g Fr(v)-5 b(ar)p Fu(,)30 b(is)f(a)m(v)-5
20592b(ailable)32 b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
205933406 y(Expansion],)g(page)h(26\).)225 3541 y Fq(\017)60
6e51e0d0
CR
20594b Fu(The)33 b(expansion)g Ft(${!)p Fj(prefix)p Ft(*})d
20595Fu(expansion,)k(whic)m(h)e(expands)h(to)h(the)f(names)g(of)g(all)h
20596(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)g(names)g(b)s(egin)g
20597(with)g Fr(pre\014x)p Fu(,)g(is)g(a)m(v)-5 b(ailable)39
20598b(\(see)e(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
e59452c7
CR
205993761 y(Expansion],)30 b(page)h(26\).)225 3896 y Fq(\017)60
20600b Fu(Bash)22 b(has)g(indirect)g(v)-5 b(ariable)22 b(expansion)g(using)f
20601Ft(${!word})f Fu(\(see)i(Section)h(3.5.3)h([Shell)e(P)m(arameter)330
206024006 y(Expansion],)30 b(page)h(26\).)225 4141 y Fq(\017)60
20603b Fu(Bash)31 b(can)f(expand)g(p)s(ositional)h(parameters)g(b)s(ey)m
20604(ond)e Ft($9)h Fu(using)g Ft(${)p Fj(num)p Ft(})p Fu(.)225
206054276 y Fq(\017)60 b Fu(The)27 b Fm(posix)g Ft($\(\))g
20606Fu(form)g(of)h(command)g(substitution)f(is)h(implemen)m(ted)g(\(see)h
20607(Section)f(3.5.4)i([Com-)330 4386 y(mand)38 b(Substitution],)k(page)e
3011048a 20608(34\),)j(and)38 b(preferred)g(to)i(the)g(Bourne)f(shell's)h
e59452c7
CR
20609Ft(``)e Fu(\(whic)m(h)i(is)f(also)330 4495 y(implemen)m(ted)31
20610b(for)f(bac)m(kw)m(ards)h(compatibilit)m(y\).)225 4631
20611y Fq(\017)60 b Fu(Bash)31 b(has)f(pro)s(cess)g(substitution)g(\(see)h
d052bd6f 20612(Section)g(3.5.6)h([Pro)s(cess)f(Substitution],)f(page)h(35\).)225
e59452c7
CR
206134766 y Fq(\017)60 b Fu(Bash)55 b(automatically)j(assigns)e(v)-5
20614b(ariables)55 b(that)h(pro)m(vide)f(information)h(ab)s(out)f(the)g
20615(curren)m(t)330 4876 y(user)40 b(\()p Ft(UID)p Fu(,)i
20616Ft(EUID)p Fu(,)g(and)e Ft(GROUPS)p Fu(\),)h(the)g(curren)m(t)f(host)g
20617(\()p Ft(HOSTTYPE)p Fu(,)h Ft(OSTYPE)p Fu(,)h Ft(MACHTYPE)p
20618Fu(,)f(and)330 4985 y Ft(HOSTNAME)p Fu(\),)55 b(and)c(the)g(instance)h
20619(of)g(Bash)f(that)h(is)f(running)f(\()p Ft(BASH)p Fu(,)56
20620b Ft(BASH_VERSION)p Fu(,)e(and)330 5095 y Ft(BASH_VERSINFO)p
20621Fu(\).)37 b(See)31 b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33
e2520247 20622b(page)e(80,)g(for)f(details.)225 5230 y Fq(\017)60 b
e59452c7
CR
20623Fu(The)44 b Ft(IFS)f Fu(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f
20624(only)g(the)g(results)g(of)h(expansion,)i(not)d(all)h(w)m(ords)f(\(see)
20625330 5340 y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f
e2520247 20626(36\).)41 b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h
e59452c7 20627(hole.)p eop end
e2520247
CR
20628%%Page: 174 180
20629TeXDict begin 174 179 bop 150 -116 a Fu(App)s(endix)29
37c41ab1 20630b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
e2520247 20631b(The)f(Bourne)g(Shell)1258 b(174)225 299 y Fq(\017)60
6e51e0d0
CR
20632b Fu(The)36 b(\014lename)h(expansion)f(brac)m(k)m(et)i(expression)f(co)
20633s(de)f(uses)g(`)p Ft(!)p Fu(')h(and)f(`)p Ft(^)p Fu(')h(to)g(negate)h
ad4aef08
CR
20634(the)f(set)g(of)330 408 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f
20635(brac)m(k)m(ets.)43 b(The)29 b(Bourne)i(shell)f(uses)g(only)h(`)p
6e51e0d0
CR
20636Ft(!)p Fu('.)225 536 y Fq(\017)60 b Fu(Bash)38 b(implemen)m(ts)g(the)g
20637(full)g(set)g(of)g Fm(posix)f Fu(\014lename)h(expansion)g(op)s
e59452c7
CR
20638(erators,)i(including)d(c)m(har-)330 646 y(acter)j(classes,)i(equiv)-5
20639b(alence)39 b(classes,)j(and)c(collating)j(sym)m(b)s(ols)d(\(see)i
20640(Section)f(3.5.8)h([Filename)330 756 y(Expansion],)30
d052bd6f 20641b(page)h(36\).)225 883 y Fq(\017)60 b Fu(Bash)35 b(implemen)m(ts)g
e59452c7
CR
20642(extended)g(pattern)g(matc)m(hing)h(features)f(when)f(the)h
20643Ft(extglob)d Fu(shell)j(option)330 993 y(is)30 b(enabled)h(\(see)g
e2520247 20644(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(37\).)225
e59452c7
CR
206451121 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
20646(v)-5 b(ariable)23 b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j
6e51e0d0
CR
20647Ft(sh)d Fu(do)s(es)g(not)g(separate)330 1230 y(the)31
20648b(t)m(w)m(o)g(name)g(spaces.)225 1358 y Fq(\017)60 b
20649Fu(Bash)30 b(functions)e(are)i(p)s(ermitted)f(to)h(ha)m(v)m(e)h(lo)s
20650(cal)g(v)-5 b(ariables)30 b(using)f(the)g Ft(local)f
20651Fu(builtin,)i(and)e(th)m(us)330 1468 y(useful)i(recursiv)m(e)g
20652(functions)g(ma)m(y)h(b)s(e)f(written)g(\(see)i(Section)f(4.2)g([Bash)g
e2520247 20653(Builtins],)g(page)h(57\).)225 1596 y Fq(\017)60 b Fu(V)-8
6e51e0d0
CR
20654b(ariable)25 b(assignmen)m(ts)g(preceding)e(commands)h(a\013ect)h(only)
20655f(that)g(command,)h(ev)m(en)f(builtins)g(and)330 1705
20656y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page)
e2520247 20657e(45\).)60 b(In)35 b Ft(sh)p Fu(,)j(all)f(v)-5 b(ariable)37
6e51e0d0
CR
20658b(assignmen)m(ts)330 1815 y(preceding)30 b(commands)g(are)h(global)h
20659(unless)d(the)i(command)f(is)h(executed)g(from)f(the)g(\014le)h
20660(system.)225 1943 y Fq(\017)60 b Fu(Bash)44 b(p)s(erforms)e(\014lename)
20661i(expansion)f(on)h(\014lenames)g(sp)s(eci\014ed)f(as)h(op)s(erands)e
20662(to)j(input)e(and)330 2052 y(output)30 b(redirection)h(op)s(erators)g
e2520247 20663(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(39\).)225
6e51e0d0
CR
206642180 y Fq(\017)60 b Fu(Bash)29 b(con)m(tains)h(the)f(`)p
20665Ft(<>)p Fu(')f(redirection)i(op)s(erator,)f(allo)m(wing)i(a)e(\014le)g
20666(to)g(b)s(e)f(op)s(ened)g(for)h(b)s(oth)f(read-)330 2290
20667y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p Ft(&>)p Fu(')g(redirection)
20668g(op)s(erator,)h(for)f(directing)g(standard)f(output)h(and)330
206692399 y(standard)30 b(error)g(to)h(the)f(same)h(\014le)f(\(see)i
e2520247 20670(Section)f(3.6)g([Redirections],)h(page)g(39\).)225 2527
6e51e0d0
CR
20671y Fq(\017)60 b Fu(Bash)21 b(includes)f(the)h(`)p Ft(<<<)p
20672Fu(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f(to)i(b)s
20673(e)e(used)g(as)h(the)g(standard)330 2637 y(input)29 b(to)j(a)e
20674(command.)225 2765 y Fq(\017)60 b Fu(Bash)32 b(implemen)m(ts)f(the)h(`)
20675p Ft([n]<&)p Fj(word)p Fu(')d(and)i(`)p Ft([n]>&)p Fj(word)p
20676Fu(')e(redirection)j(op)s(erators,)g(whic)m(h)f(mo)m(v)m(e)330
206772874 y(one)g(\014le)f(descriptor)g(to)h(another.)225
206783002 y Fq(\017)60 b Fu(Bash)25 b(treats)h(a)f(n)m(um)m(b)s(er)e(of)i
20679(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g(used)f(in)g
20680(redirection)i(op)s(erators)330 3112 y(\(see)31 b(Section)h(3.6)f
e2520247 20681([Redirections],)h(page)f(39\).)225 3240 y Fq(\017)60
6e51e0d0
CR
20682b Fu(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i(connections)f(to)h
20683(arbitrary)e(mac)m(hines)h(and)f(services)h(with)f(the)h(redi-)330
206843349 y(rection)e(op)s(erators)g(\(see)g(Section)g(3.6)h
e2520247 20685([Redirections],)g(page)f(39\).)225 3477 y Fq(\017)60
6e51e0d0 20686b Fu(The)29 b Ft(noclobber)e Fu(option)j(is)g(a)m(v)-5
37c41ab1 20687b(ailable)32 b(to)e(a)m(v)m(oid)h(o)m(v)m(erwriting)g(existing)g
ad4aef08 20688(\014les)e(with)h(output)f(redi-)330 3587 y(rection)39
e2520247 20689b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(68\).)66
6e51e0d0 20690b(The)38 b(`)p Ft(>|)p Fu(')h(redirection)g(op)s(erator)330
ad4aef08 206913696 y(ma)m(y)31 b(b)s(e)f(used)f(to)i(o)m(v)m(erride)h
6e51e0d0
CR
20692Ft(noclobber)p Fu(.)225 3824 y Fq(\017)60 b Fu(The)34
20693b(Bash)g Ft(cd)g Fu(and)f Ft(pwd)g Fu(builtins)h(\(see)h(Section)g(4.1)
e2520247 20694g([Bourne)g(Shell)f(Builtins],)h(page)g(49\))h(eac)m(h)330
6e51e0d0
CR
206953934 y(tak)m(e)c Ft(-L)e Fu(and)f Ft(-P)h Fu(options)h(to)g(switc)m(h)g
20696(b)s(et)m(w)m(een)g(logical)i(and)c(ph)m(ysical)i(mo)s(des.)225
206974061 y Fq(\017)60 b Fu(Bash)25 b(allo)m(ws)h(a)g(function)e(to)i(o)m(v)
20698m(erride)g(a)g(builtin)e(with)h(the)g(same)g(name,)i(and)d(pro)m(vides)
20699h(access)h(to)330 4171 y(that)34 b(builtin's)f(functionalit)m(y)h
20700(within)f(the)g(function)g(via)h(the)f Ft(builtin)f Fu(and)g
20701Ft(command)g Fu(builtins)330 4281 y(\(see)f(Section)h(4.2)f([Bash)g
e2520247 20702(Builtins],)g(page)g(57\).)225 4408 y Fq(\017)60 b Fu(The)35
6e51e0d0
CR
20703b Ft(command)e Fu(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f
20704(functions)g(when)g(command)g(lo)s(okup)g(is)330 4518
20705y(p)s(erformed)29 b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g
e2520247 20706(57\).)225 4646 y Fq(\017)60 b Fu(Individual)23 b(builtins)g(ma)m(y)i
6e51e0d0
CR
20707(b)s(e)e(enabled)h(or)g(disabled)g(using)f(the)h Ft(enable)f
20708Fu(builtin)g(\(see)i(Section)g(4.2)330 4756 y([Bash)31
e2520247 20709b(Builtins],)g(page)g(57\).)225 4883 y Fq(\017)60 b Fu(The)26
6e51e0d0 20710b(Bash)h Ft(exec)e Fu(builtin)h(tak)m(es)i(additional)f(options)g(that)
d3ad40de 20711g(allo)m(w)h(users)d(to)j(con)m(trol)g(the)e(con)m(ten)m(ts)330
ad4aef08 207124993 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g(executed)g
d3ad40de 20713(command,)h(and)d(what)i(the)f(zeroth)h(argumen)m(t)330
ad4aef08 207145103 y(to)c(the)g(command)f(is)g(to)h(b)s(e)f(\(see)h(Section)h(4.1)f
e2520247 20715([Bourne)f(Shell)h(Builtins],)g(page)g(49\).)225 5230
6e51e0d0 20716y Fq(\017)60 b Fu(Shell)29 b(functions)g(ma)m(y)h(b)s(e)f(exp)s(orted)g
37c41ab1 20717(to)h(c)m(hildren)f(via)h(the)g(en)m(vironmen)m(t)g(using)f
6e51e0d0 20718Ft(export)f(-f)h Fu(\(see)330 5340 y(Section)i(3.3)h([Shell)e(F)-8
e59452c7 20719b(unctions],)32 b(page)f(19\).)p eop end
e2520247
CR
20720%%Page: 175 181
20721TeXDict begin 175 180 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20722b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
e2520247 20723b(The)f(Bourne)g(Shell)1258 b(175)225 299 y Fq(\017)60
6e51e0d0
CR
20724b Fu(The)40 b(Bash)h Ft(export)p Fu(,)h Ft(readonly)p
20725Fu(,)f(and)g Ft(declare)d Fu(builtins)j(can)g(tak)m(e)h(a)f
20726Ft(-f)f Fu(option)i(to)f(act)h(on)330 408 y(shell)30
20727b(functions,)f(a)h Ft(-p)f Fu(option)g(to)i(displa)m(y)e(v)-5
20728b(ariables)30 b(with)f(v)-5 b(arious)30 b(attributes)g(set)g(in)f(a)h
20729(format)330 518 y(that)g(can)g(b)s(e)f(used)g(as)g(shell)h(input,)f(a)h
20730Ft(-n)f Fu(option)h(to)g(remo)m(v)m(e)h(v)-5 b(arious)30
20731b(v)-5 b(ariable)30 b(attributes,)h(and)330 628 y(`)p
20732Ft(name=value)p Fu(')d(argumen)m(ts)j(to)g(set)g(v)-5
37c41ab1 20733b(ariable)31 b(attributes)g(and)f(v)-5 b(alues)30 b(sim)m(ultaneously)
6e51e0d0
CR
20734-8 b(.)225 765 y Fq(\017)60 b Fu(The)42 b(Bash)h Ft(hash)f
20735Fu(builtin)g(allo)m(ws)j(a)e(name)g(to)g(b)s(e)f(asso)s(ciated)j(with)d
1c72c0cd 20736(an)h(arbitrary)f(\014lename,)330 874 y(ev)m(en)30 b(when)e(that)h
37c41ab1 20737(\014lename)g(cannot)h(b)s(e)e(found)g(b)m(y)h(searc)m(hing)g(the)g
6e51e0d0 20738Ft($PATH)p Fu(,)g(using)f(`)p Ft(hash)h(-p)p Fu(')g(\(see)330
e2520247 20739984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(49\).)225
6e51e0d0
CR
207401121 y Fq(\017)60 b Fu(Bash)27 b(includes)f(a)i Ft(help)d
20741Fu(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
e2520247 20742(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(57\).)225
6e51e0d0 207431367 y Fq(\017)60 b Fu(The)42 b Ft(printf)g Fu(builtin)g(is)h(a)m(v)-5
37c41ab1 20744b(ailable)45 b(to)f(displa)m(y)f(formatted)g(output)g(\(see)h(Section)g
e2520247 20745(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(57\).)225
6e51e0d0 207461614 y Fq(\017)60 b Fu(The)26 b(Bash)h Ft(read)f Fu(builtin)g(\(see)i
e2520247 20747(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(57\))g(will)f(read)g(a)g
6e51e0d0
CR
20748(line)g(ending)330 1724 y(in)i(`)p Ft(\\)p Fu(')h(with)f(the)g
20749Ft(-r)g Fu(option,)i(and)d(will)i(use)f(the)h Ft(REPLY)e
20750Fu(v)-5 b(ariable)30 b(as)g(a)f(default)h(if)f(no)h(non-option)330
207511833 y(argumen)m(ts)h(are)h(supplied.)42 b(The)30 b(Bash)i
20752Ft(read)e Fu(builtin)g(also)j(accepts)f(a)g(prompt)e(string)h(with)g
20753(the)330 1943 y Ft(-p)c Fu(option)h(and)f(will)g(use)h(Readline)g(to)g
20754(obtain)g(the)g(line)f(when)g(giv)m(en)h(the)g Ft(-e)f
20755Fu(option.)40 b(The)27 b Ft(read)330 2052 y Fu(builtin)h(also)i(has)e
20756(additional)i(options)f(to)g(con)m(trol)h(input:)39 b(the)29
20757b Ft(-s)f Fu(option)h(will)g(turn)e(o\013)j(ec)m(hoing)330
207582162 y(of)f(input)f(c)m(haracters)j(as)e(they)g(are)h(read,)f(the)g
20759Ft(-t)g Fu(option)g(will)h(allo)m(w)g Ft(read)e Fu(to)i(time)g(out)f
20760(if)g(input)330 2271 y(do)s(es)i(not)h(arriv)m(e)g(within)f(a)h(sp)s
20761(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(seconds,)g(the)f
20762Ft(-n)g Fu(option)h(will)g(allo)m(w)h(reading)330 2381
20763y(only)38 b(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(c)m(haracters)h
20764(rather)e(than)g(a)h(full)g(line,)i(and)d(the)h Ft(-d)f
20765Fu(option)h(will)330 2491 y(read)30 b(un)m(til)h(a)g(particular)f(c)m
20766(haracter)i(rather)f(than)f(newline.)225 2628 y Fq(\017)60
20767b Fu(The)33 b Ft(return)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)f(to)i(ab)
20768s(ort)f(execution)h(of)f(scripts)g(executed)h(with)f(the)g
20769Ft(.)g Fu(or)330 2737 y Ft(source)c Fu(builtins)g(\(see)j(Section)f
e2520247 20770(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(49\).)225
6e51e0d0
CR
207712874 y Fq(\017)60 b Fu(Bash)43 b(includes)g(the)g Ft(shopt)f
20772Fu(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g
d3ad40de 20773(capabilities)h(\(see)330 2984 y(Section)c(4.3.2)g([The)f(Shopt)f
e2520247 20774(Builtin],)k(page)d(72\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
d3ad40de
CR
20775(b)s(e)f(set)i(and)330 3093 y(unset)30 b(at)h(shell)g(in)m(v)m(o)s
20776(cation)h(\(see)f(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)g(page)h
e2520247 20777(93\).)225 3230 y Fq(\017)60 b Fu(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
d3ad40de 20778(optional)h(b)s(eha)m(vior)e(con)m(trollable)j(with)e(the)f
6e51e0d0 20779Ft(set)g Fu(builtin)g(\(see)h(Sec-)330 3340 y(tion)31
e2520247 20780b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(68\).)225 3477
6e51e0d0
CR
20781y Fq(\017)60 b Fu(The)31 b(`)p Ft(-x)p Fu(')g(\()p Ft(xtrace)p
20782Fu(\))g(option)h(displa)m(ys)f(commands)h(other)f(than)h(simple)f
20783(commands)g(when)g(p)s(er-)330 3587 y(forming)f(an)g(execution)i(trace)
e2520247 20784f(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(68\).)225
6e51e0d0 207853724 y Fq(\017)60 b Fu(The)28 b Ft(test)g Fu(builtin)h(\(see)h(Section)
e2520247 20786f(4.1)h([Bourne)f(Shell)g(Builtins],)h(page)g(49\))g(is)f(sligh)m(tly)h
1c72c0cd 20787(di\013eren)m(t,)330 3833 y(as)23 b(it)g(implemen)m(ts)f(the)h
6e51e0d0 20788Fm(posix)f Fu(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m
1c72c0cd 20789(vior)f(based)g(on)h(the)f(n)m(um)m(b)s(er)330 3943 y(of)31
6e51e0d0
CR
20790b(argumen)m(ts.)225 4080 y Fq(\017)60 b Fu(Bash)31 b(includes)g(the)h
20791Ft(caller)d Fu(builtin,)j(whic)m(h)f(displa)m(ys)g(the)g(con)m(text)i
1c72c0cd 20792(of)f(an)m(y)g(activ)m(e)h(subroutine)330 4189 y(call)28
37c41ab1 20793b(\(a)f(shell)f(function)h(or)f(a)h(script)f(executed)h(with)f(the)h
6e51e0d0 20794Ft(.)f Fu(or)g Ft(source)f Fu(builtins\).)39 b(This)26
e59452c7 20795b(supp)s(orts)330 4299 y(the)31 b(Bash)f(debugger.)225
6e51e0d0 207964436 y Fq(\017)60 b Fu(The)42 b Ft(trap)f Fu(builtin)h(\(see)i(Section)
e2520247 20797f(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(49\))h(allo)m(ws)g(a)e
6e51e0d0
CR
20798Ft(DEBUG)330 4545 y Fu(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
20799(to)g Ft(EXIT)p Fu(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
20800Ft(DEBUG)e Fu(trap)330 4655 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
20801(simple)f(command,)j Ft(for)c Fu(command,)k Ft(case)c
20802Fu(command,)k Ft(select)330 4765 y Fu(command,)35 b(ev)m(ery)g
20803(arithmetic)g Ft(for)e Fu(command,)i(and)f(b)s(efore)g(the)g(\014rst)f
1c72c0cd 20804(command)h(executes)h(in)330 4874 y(a)29 b(shell)g(function.)40
6e51e0d0 20805b(The)28 b Ft(DEBUG)g Fu(trap)g(is)h(not)g(inherited)f(b)m(y)h(shell)g
1c72c0cd 20806(functions)f(unless)g(the)h(function)330 4984 y(has)35
6e51e0d0
CR
20807b(b)s(een)g(giv)m(en)i(the)f Ft(trace)e Fu(attribute)i(or)g(the)g
20808Ft(functrace)d Fu(option)j(has)f(b)s(een)g(enabled)g(using)330
208095093 y(the)28 b Ft(shopt)e Fu(builtin.)39 b(The)27 b
20810Ft(extdebug)f Fu(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
20811(the)g Ft(DEBUG)e Fu(trap.)330 5230 y(The)21 b Ft(trap)e
20812Fu(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
e2520247 20813(page)e(49\))g(allo)m(ws)g(an)f Ft(ERR)f Fu(pseudo-)330
1c72c0cd 208145340 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g
6e51e0d0
CR
20815Ft(EXIT)f Fu(and)g Ft(DEBUG)p Fu(.)39 b(Commands)28 b(sp)s(eci\014ed)h
20816(with)g(an)g Ft(ERR)g Fu(trap)p eop end
e2520247
CR
20817%%Page: 176 182
20818TeXDict begin 176 181 bop 150 -116 a Fu(App)s(endix)29
1c72c0cd 20819b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
e2520247 20820b(The)f(Bourne)g(Shell)1258 b(176)330 299 y(are)40 b(executed)g(after)g
1c72c0cd 20821(a)f(simple)h(command)f(fails,)j(with)d(a)h(few)f(exceptions.)68
6e51e0d0
CR
20822b(The)39 b Ft(ERR)g Fu(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h
20823(shell)g(functions)f(unless)g(the)h Ft(-o)29 b(errtrace)37
20824b Fu(option)i(to)g(the)g Ft(set)f Fu(builtin)g(is)330
20825518 y(enabled.)330 650 y(The)g Ft(trap)g Fu(builtin)h(\(see)g(Section)h
e2520247 20826(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(49\))g(allo)m(ws)g(a)g
e9c75143
CR
20827Ft(RETURN)330 759 y Fu(pseudo-signal)f(sp)s(eci\014cation,)k(similar)d
20828(to)g Ft(EXIT)e Fu(and)g Ft(DEBUG)p Fu(.)66 b(Commands)38
20829b(sp)s(eci\014ed)h(with)g(a)330 869 y Ft(RETURN)g Fu(trap)i(are)g
20830(executed)h(b)s(efore)e(execution)i(resumes)e(after)h(a)g(shell)g
20831(function)g(or)g(a)g(shell)330 978 y(script)36 b(executed)g(with)g
20832Ft(.)f Fu(or)h Ft(source)e Fu(returns.)56 b(The)35 b
20833Ft(RETURN)f Fu(trap)i(is)g(not)g(inherited)f(b)m(y)h(shell)330
208341088 y(functions)k(unless)h(the)g(function)f(has)h(b)s(een)f(giv)m(en)i
20835(the)f Ft(trace)e Fu(attribute)j(or)e(the)h Ft(functrace)330
208361198 y Fu(option)31 b(has)f(b)s(een)g(enabled)g(using)g(the)g
20837Ft(shopt)f Fu(builtin.)225 1329 y Fq(\017)60 b Fu(The)30
20838b(Bash)g Ft(type)f Fu(builtin)h(is)g(more)g(extensiv)m(e)i(and)d(giv)m
20839(es)j(more)e(information)h(ab)s(out)f(the)g(names)330
967625cd 208401439 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i
e2520247 20841(page)f(57\).)225 1570 y Fq(\017)60 b Fu(The)27 b(Bash)h
6e51e0d0
CR
20842Ft(umask)e Fu(builtin)h(p)s(ermits)g(a)h Ft(-p)f Fu(option)h(to)h
20843(cause)f(the)g(output)f(to)h(b)s(e)f(displa)m(y)m(ed)h(in)g(the)330
967625cd 208441680 y(form)i(of)h(a)g Ft(umask)f Fu(command)g(that)i(ma)m(y)f(b)s(e)f
6e51e0d0 20845(reused)g(as)h(input)f(\(see)i(Section)f(4.1)h([Bourne)f(Shell)330
e2520247 208461789 y(Builtins],)g(page)g(49\).)225 1921 y Fq(\017)60
6e51e0d0
CR
20847b Fu(Bash)34 b(implemen)m(ts)h(a)g Ft(csh)p Fu(-lik)m(e)g(directory)f
20848(stac)m(k,)j(and)d(pro)m(vides)g(the)g Ft(pushd)p Fu(,)g
e59452c7
CR
20849Ft(popd)p Fu(,)g(and)g Ft(dirs)330 2030 y Fu(builtins)d(to)i
20850(manipulate)f(it)h(\(see)g(Section)f(6.8)h([The)f(Directory)h(Stac)m
e2520247 20851(k],)h(page)f(104\).)47 b(Bash)32 b(also)330 2140 y(mak)m(es)f(the)g
6e51e0d0
CR
20852(directory)g(stac)m(k)g(visible)g(as)g(the)f(v)-5 b(alue)31
20853b(of)g(the)f Ft(DIRSTACK)f Fu(shell)h(v)-5 b(ariable.)225
967625cd 208542272 y Fq(\017)60 b Fu(Bash)28 b(in)m(terprets)h(sp)s(ecial)g(bac)m
6e51e0d0 20855(kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e(strings)h
967625cd 20856(when)f(in)m(ter-)330 2381 y(activ)m(e)33 b(\(see)e(Section)g(6.9)h
e2520247 20857([Con)m(trolling)f(the)g(Prompt],)f(page)h(106\).)225
967625cd 208582513 y Fq(\017)60 b Fu(The)46 b(Bash)h(restricted)g(mo)s(de)f(is)h
1c72c0cd 20859(more)f(useful)g(\(see)h(Section)h(6.10)g([The)e(Restricted)i(Shell],)
e2520247 20860330 2622 y(page)31 b(108\);)h(the)f(SVR4.2)g(shell)g(restricted)g(mo)s
602eae4d 20861(de)f(is)g(to)s(o)h(limited.)225 2754 y Fq(\017)60 b
6e51e0d0 20862Fu(The)30 b Ft(disown)f Fu(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f
1c72c0cd 20863(from)g(the)h(in)m(ternal)g(shell)g(job)f(table)i(\(see)f(Section)h
e2520247 20864(7.2)330 2863 y([Job)e(Con)m(trol)h(Builtins],)g(page)g(118\))g(or)g
900a813b 20865(suppress)d(the)i(sending)g(of)g Ft(SIGHUP)e Fu(to)j(a)g(job)f(when)f
967625cd
CR
20866(the)330 2973 y(shell)i(exits)g(as)f(the)h(result)f(of)h(a)f
20867Ft(SIGHUP)p Fu(.)225 3104 y Fq(\017)60 b Fu(Bash)31 b(includes)f(a)g(n)
1c72c0cd 20868m(um)m(b)s(er)f(of)i(features)g(to)g(supp)s(ort)d(a)j(separate)g
967625cd 20869(debugger)f(for)h(shell)f(scripts.)225 3236 y Fq(\017)60
6e51e0d0
CR
20870b Fu(The)28 b(SVR4.2)h(shell)f(has)g(t)m(w)m(o)i(privilege-related)g
20871(builtins)e(\()p Ft(mldmode)e Fu(and)i Ft(priv)p Fu(\))f(not)i(presen)m
967625cd 20872(t)f(in)330 3346 y(Bash.)225 3477 y Fq(\017)60 b Fu(Bash)31
6e51e0d0 20873b(do)s(es)f(not)g(ha)m(v)m(e)i(the)e Ft(stop)g Fu(or)g
967625cd 20874Ft(newgrp)f Fu(builtins.)225 3609 y Fq(\017)60 b Fu(Bash)31
6e51e0d0 20875b(do)s(es)f(not)g(use)g(the)h Ft(SHACCT)d Fu(v)-5 b(ariable)32
967625cd 20876b(or)e(p)s(erform)f(shell)i(accoun)m(ting.)225 3740 y
6e51e0d0
CR
20877Fq(\017)60 b Fu(The)30 b(SVR4.2)h Ft(sh)f Fu(uses)g(a)g
20878Ft(TIMEOUT)f Fu(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e(uses)g
967625cd 20879Ft(TMOUT)p Fu(.)150 3894 y(More)h(features)g(unique)e(to)i(Bash)g(ma)m
1c72c0cd 20880(y)g(b)s(e)f(found)f(in)h(Chapter)f(6)i([Bash)g(F)-8
e2520247 20881b(eatures],)32 b(page)f(93.)150 4128 y Fs(B.1)67 b(Implemen)l(tation)48
c302751c 20882b(Di\013erences)e(F)-11 b(rom)44 b(The)h(SVR4.2)g(Shell)150
967625cd 208834288 y Fu(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
c302751c 20884(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
20885(limi-)150 4397 y(tations)f(of)e(the)h(SVR4.2)g(shell.)41
20886b(F)-8 b(or)31 b(instance:)225 4529 y Fq(\017)60 b Fu(Bash)32
37c41ab1
CR
20887b(do)s(es)f(not)h(fork)f(a)h(subshell)e(when)h(redirecting)h(in)m(to)h
20888(or)e(out)h(of)g(a)g(shell)f(con)m(trol)i(structure)330
967625cd 208894639 y(suc)m(h)d(as)h(an)f Ft(if)g Fu(or)g Ft(while)f
6e51e0d0 20890Fu(statemen)m(t.)225 4770 y Fq(\017)60 b Fu(Bash)29 b(do)s(es)f(not)h
37c41ab1 20891(allo)m(w)h(un)m(balanced)f(quotes.)41 b(The)28 b(SVR4.2)h(shell)g
967625cd 20892(will)g(silen)m(tly)i(insert)d(a)h(needed)330 4880 y(closing)g(quote)g
6e51e0d0 20893(at)f Ft(EOF)f Fu(under)g(certain)h(circumstances.)41
37c41ab1 20894b(This)27 b(can)h(b)s(e)g(the)g(cause)g(of)g(some)h(hard-)330
6e51e0d0 208954989 y(to-\014nd)h(errors.)225 5121 y Fq(\017)60 b Fu(The)45
37c41ab1 20896b(SVR4.2)h(shell)f(uses)g(a)g(baro)s(que)g(memory)g(managemen)m(t)i(sc)
6e51e0d0
CR
20897m(heme)e(based)g(on)g(trapping)330 5230 y Ft(SIGSEGV)p
20898Fu(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)e(a)i(pro)s(cess)f
20899(with)g Ft(SIGSEGV)e Fu(blo)s(c)m(k)m(ed)k(\(e.g.,)h(b)m(y)d(using)330
209005340 y(the)31 b Ft(system\(\))d Fu(C)i(library)g(function)g(call\),)i
1c72c0cd 20901(it)f(misb)s(eha)m(v)m(es)g(badly)-8 b(.)p eop end
e2520247
CR
20902%%Page: 177 183
20903TeXDict begin 177 182 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 20904b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
e2520247 20905b(The)f(Bourne)g(Shell)1258 b(177)225 299 y Fq(\017)60
6e51e0d0
CR
20906b Fu(In)30 b(a)i(questionable)g(attempt)g(at)g(securit)m(y)-8
20907b(,)33 b(the)e(SVR4.2)h(shell,)g(when)e(in)m(v)m(ok)m(ed)j(without)e
20908(the)h Ft(-p)330 408 y Fu(option,)39 b(will)d(alter)i(its)e(real)h(and)
20909f(e\013ectiv)m(e)j Fm(uid)d Fu(and)g Fm(gid)h Fu(if)f(they)h(are)f
20910(less)h(than)f(some)h(magic)330 518 y(threshold)30 b(v)-5
20911b(alue,)31 b(commonly)g(100.)42 b(This)29 b(can)i(lead)g(to)g(unexp)s
20912(ected)f(results.)225 653 y Fq(\017)60 b Fu(The)30 b(SVR4.2)h(shell)g
20913(do)s(es)f(not)g(allo)m(w)i(users)e(to)h(trap)f Ft(SIGSEGV)p
20914Fu(,)f Ft(SIGALRM)p Fu(,)f(or)j Ft(SIGCHLD)p Fu(.)225
20915787 y Fq(\017)60 b Fu(The)34 b(SVR4.2)h(shell)g(do)s(es)g(not)f(allo)m
20916(w)j(the)d Ft(IFS)p Fu(,)h Ft(MAILCHECK)p Fu(,)f Ft(PATH)p
20917Fu(,)h Ft(PS1)p Fu(,)g(or)f Ft(PS2)g Fu(v)-5 b(ariables)35
20918b(to)330 897 y(b)s(e)30 b(unset.)225 1031 y Fq(\017)60
20919b Fu(The)30 b(SVR4.2)h(shell)g(treats)g(`)p Ft(^)p Fu(')f(as)h(the)g
20920(undo)s(cumen)m(ted)e(equiv)-5 b(alen)m(t)31 b(of)g(`)p
20921Ft(|)p Fu('.)225 1166 y Fq(\017)60 b Fu(Bash)37 b(allo)m(ws)h(m)m
20922(ultiple)f(option)g(argumen)m(ts)g(when)e(it)i(is)g(in)m(v)m(ok)m(ed)h
20923(\()p Ft(-x)30 b(-v)p Fu(\);)40 b(the)c(SVR4.2)i(shell)330
1c72c0cd 209241275 y(allo)m(ws)c(only)f(one)g(option)g(argumen)m(t)g(\()p
6e51e0d0 20925Ft(-xv)p Fu(\).)47 b(In)32 b(fact,)i(some)f(v)m(ersions)g(of)g(the)g
1c72c0cd 20926(shell)f(dump)f(core)330 1385 y(if)f(the)h(second)f(argumen)m(t)h(b)s
6e51e0d0
CR
20927(egins)f(with)g(a)h(`)p Ft(-)p Fu('.)225 1519 y Fq(\017)60
20928b Fu(The)26 b(SVR4.2)i(shell)f(exits)g(a)g(script)g(if)g(an)m(y)g
ac18b312 20929(builtin)f(fails;)j(Bash)e(exits)g(a)g(script)g(only)g(if)g(one)g(of)g
6e51e0d0 20930(the)330 1629 y Fm(posix)34 b Fu(sp)s(ecial)h(builtins)f(fails,)i(and)e
ac18b312 20931(only)h(for)f(certain)h(failures,)h(as)f(en)m(umerated)g(in)f(the)h
6e51e0d0
CR
20932Fm(posix)330 1738 y Fu(standard.)225 1873 y Fq(\017)60
20933b Fu(The)30 b(SVR4.2)h(shell)g(b)s(eha)m(v)m(es)f(di\013eren)m(tly)h
20934(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 20935(con)m(trol\).)p eop end
e2520247
CR
20936%%Page: 178 184
20937TeXDict begin 178 183 bop 3614 -116 a Fu(178)150 299
037a8b7f
CR
20938y Fp(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13 b(ree)53
20939b(Do)t(cumen)l(tation)e(License)1359 502 y Fu(V)-8 b(ersion)31
20940b(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
20941632 y(c)817 635 y Fq(\015)e Fu(2000,)j(2001,)f(2002,)g(2007,)h(2008)f
20942(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31
20943b(Inc.)390 745 y Ft(http://fsf.org/)390 964 y Fu(Ev)m(ery)m(one)g(is)g
20944(p)s(ermitted)f(to)h(cop)m(y)g(and)f(distribute)g(v)m(erbatim)h(copies)
20945390 1074 y(of)g(this)f(license)h(do)s(cumen)m(t,)g(but)e(c)m(hanging)j
20946(it)f(is)f(not)h(allo)m(w)m(ed.)199 1207 y(0.)61 b(PREAMBLE)330
1231ac47
CR
209471340 y(The)37 b(purp)s(ose)e(of)i(this)g(License)h(is)f(to)h(mak)m(e)g
20948(a)g(man)m(ual,)h(textb)s(o)s(ok,)h(or)d(other)g(functional)h(and)330
6e51e0d0 209491450 y(useful)29 b(do)s(cumen)m(t)h Fr(free)36 b Fu(in)29
37c41ab1 20950b(the)i(sense)f(of)g(freedom:)41 b(to)31 b(assure)e(ev)m(ery)m(one)j
c2a47ea9 20951(the)e(e\013ectiv)m(e)j(freedom)330 1559 y(to)f(cop)m(y)g(and)f
37c41ab1 20952(redistribute)g(it,)h(with)g(or)f(without)g(mo)s(difying)g(it,)i
c2a47ea9 20953(either)f(commercially)h(or)e(non-)330 1669 y(commercially)-8
37c41ab1 20954b(.)56 b(Secondarily)-8 b(,)36 b(this)f(License)g(preserv)m(es)g(for)f
c2a47ea9 20955(the)h(author)f(and)g(publisher)f(a)i(w)m(a)m(y)330 1778
37c41ab1
CR
20956y(to)i(get)g(credit)g(for)f(their)g(w)m(ork,)i(while)e(not)g(b)s(eing)g
20957(considered)g(resp)s(onsible)f(for)h(mo)s(di\014cations)330
c2a47ea9 209581888 y(made)30 b(b)m(y)h(others.)330 2021 y(This)22 b(License)i(is)f(a)
37c41ab1
CR
20959h(kind)e(of)i(\\cop)m(yleft",)j(whic)m(h)c(means)g(that)h(deriv)-5
20960b(ativ)m(e)24 b(w)m(orks)f(of)h(the)f(do)s(cumen)m(t)330
c2a47ea9 209612131 y(m)m(ust)34 b(themselv)m(es)h(b)s(e)e(free)h(in)g(the)g(same)g
37c41ab1 20962(sense.)51 b(It)34 b(complemen)m(ts)h(the)f(GNU)g(General)h(Public)330
c2a47ea9
CR
209632240 y(License,)c(whic)m(h)f(is)h(a)f(cop)m(yleft)i(license)g(designed)
20964e(for)g(free)h(soft)m(w)m(are.)330 2373 y(W)-8 b(e)31
37c41ab1
CR
20965b(ha)m(v)m(e)f(designed)g(this)f(License)h(in)f(order)g(to)i(use)e(it)h
20966(for)f(man)m(uals)h(for)f(free)h(soft)m(w)m(are,)h(b)s(ecause)330
c2a47ea9 209672483 y(free)42 b(soft)m(w)m(are)i(needs)e(free)g(do)s(cumen)m(tation:)
37c41ab1 2096865 b(a)42 b(free)h(program)f(should)f(come)i(with)f(man)m(uals)330
c2a47ea9 209692592 y(pro)m(viding)29 b(the)g(same)g(freedoms)f(that)i(the)f(soft)m(w)
37c41ab1 20970m(are)h(do)s(es.)40 b(But)29 b(this)f(License)i(is)f(not)g(limited)g
c2a47ea9 20971(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 20972(for)g(an)m(y)h(textual)h(w)m(ork,)f(regardless)g(of)g(sub)5
c2a47ea9 20973b(ject)30 b(matter)i(or)330 2812 y(whether)f(it)h(is)f(published)f(as)i
37c41ab1 20974(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
20975(License)g(principally)f(for)330 2921 y(w)m(orks)f(whose)h(purp)s(ose)d
20976(is)j(instruction)f(or)g(reference.)199 3054 y(1.)61
20977b(APPLICABILITY)29 b(AND)j(DEFINITIONS)330 3187 y(This)39
37c41ab1 20978b(License)i(applies)f(to)g(an)m(y)h(man)m(ual)f(or)g(other)g(w)m(ork,)i
c2a47ea9 20979(in)e(an)m(y)g(medium,)i(that)e(con)m(tains)i(a)330 3297
37c41ab1
CR
20980y(notice)h(placed)f(b)m(y)f(the)h(cop)m(yrigh)m(t)h(holder)e(sa)m(ying)
20981h(it)g(can)g(b)s(e)f(distributed)f(under)g(the)i(terms)330
c2a47ea9 209823407 y(of)c(this)f(License.)62 b(Suc)m(h)37 b(a)h(notice)h(gran)m(ts)f
37c41ab1 20983(a)g(w)m(orld-wide,)h(ro)m(y)m(alt)m(y-free)i(license,)f(unlimited)d
c2a47ea9 20984(in)330 3516 y(duration,)49 b(to)d(use)f(that)g(w)m(ork)h(under)d(the)j
37c41ab1 20985(conditions)f(stated)h(herein.)85 b(The)45 b(\\Do)s(cumen)m(t",)330
c2a47ea9 209863626 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 20987(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 20988(a)h(licensee,)i(and)330 3735 y(is)25 b(addressed)f(as)h(\\y)m(ou".)40
37c41ab1
CR
20989b(Y)-8 b(ou)26 b(accept)g(the)f(license)h(if)f(y)m(ou)h(cop)m(y)-8
20990b(,)27 b(mo)s(dify)d(or)h(distribute)g(the)g(w)m(ork)330
c2a47ea9
CR
209913845 y(in)30 b(a)h(w)m(a)m(y)g(requiring)f(p)s(ermission)f(under)g(cop)
20992m(yrigh)m(t)j(la)m(w.)330 3978 y(A)i(\\Mo)s(di\014ed)f(V)-8
37c41ab1 20993b(ersion")35 b(of)f(the)g(Do)s(cumen)m(t)g(means)g(an)m(y)g(w)m(ork)f
c2a47ea9 20994(con)m(taining)j(the)e(Do)s(cumen)m(t)g(or)330 4088 y(a)k(p)s(ortion)f
37c41ab1 20995(of)h(it,)i(either)e(copied)g(v)m(erbatim,)i(or)d(with)h(mo)s
c2a47ea9
CR
20996(di\014cations)f(and/or)h(translated)g(in)m(to)330 4197
20997y(another)31 b(language.)330 4330 y(A)26 b(\\Secondary)g(Section")h(is)
37c41ab1 20998f(a)h(named)e(app)s(endix)f(or)i(a)h(fron)m(t-matter)g(section)g(of)f
c2a47ea9 20999(the)g(Do)s(cumen)m(t)330 4440 y(that)c(deals)g(exclusiv)m(ely)h(with)e
37c41ab1 21000(the)g(relationship)h(of)f(the)h(publishers)d(or)i(authors)g(of)h(the)f
c2a47ea9 21001(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 21002(erall)g(sub)5 b(ject)37 b(\(or)h(to)g(related)g(matters\))g(and)f(con)
c2a47ea9 21003m(tains)h(nothing)f(that)330 4659 y(could)j(fall)h(directly)g(within)f
37c41ab1
CR
21004(that)h(o)m(v)m(erall)i(sub)5 b(ject.)70 b(\(Th)m(us,)42
21005b(if)e(the)h(Do)s(cumen)m(t)g(is)f(in)g(part)h(a)330
c2a47ea9 210064769 y(textb)s(o)s(ok)24 b(of)g(mathematics,)j(a)d(Secondary)f(Section)
37c41ab1 21007h(ma)m(y)g(not)g(explain)g(an)m(y)g(mathematics.\))40
c2a47ea9 21008b(The)330 4878 y(relationship)28 b(could)f(b)s(e)g(a)g(matter)i(of)e
37c41ab1 21009(historical)i(connection)f(with)f(the)h(sub)5 b(ject)27
c2a47ea9 21010b(or)g(with)g(related)330 4988 y(matters,)38 b(or)d(of)h(legal,)i
37c41ab1 21011(commercial,)h(philosophical,)f(ethical)f(or)e(p)s(olitical)i(p)s
c2a47ea9 21012(osition)f(regarding)330 5097 y(them.)330 5230 y(The)25
37c41ab1
CR
21013b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
21014(Sections)g(whose)f(titles)i(are)f(designated,)i(as)330
c2a47ea9 210155340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
37c41ab1 21016b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
c2a47ea9 21017(cumen)m(t)g(is)g(released)p eop end
e2520247
CR
21018%%Page: 179 185
21019TeXDict begin 179 184 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 21020b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21021b(179)330 299 y(under)26 b(this)i(License.)40 b(If)27
ad4aef08 21022b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
c2a47ea9 21023(de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
37c41ab1
CR
21024y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
21025b(arian)m(t.)46 b(The)31 b(Do)s(cumen)m(t)i(ma)m(y)f(con)m(tain)i(zero)
c2a47ea9 21026e(In)m(v)-5 b(arian)m(t)330 518 y(Sections.)39 b(If)25
37c41ab1
CR
21027b(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)
21028-5 b(arian)m(t)25 b(Sections)h(then)e(there)h(are)g(none.)330
1231ac47 21029669 y(The)36 b(\\Co)m(v)m(er)i(T)-8 b(exts")38 b(are)f(certain)g(short)
c2a47ea9 21030g(passages)g(of)g(text)g(that)h(are)f(listed,)i(as)d(F)-8
1231ac47 21031b(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 21032j(T)-8 b(exts,)27 b(in)d(the)h(notice)i(that)e(sa)m(ys)h(that)g(the)f
1231ac47 21033(Do)s(cumen)m(t)h(is)f(released)g(under)330 888 y(this)h(License.)40
c2a47ea9
CR
21034b(A)25 b(F)-8 b(ron)m(t-Co)m(v)m(er)29 b(T)-8 b(ext)26
21035b(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
21036(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
21037(ords.)330 1148 y(A)36 b(\\T)-8 b(ransparen)m(t")36 b(cop)m(y)g(of)g
c2a47ea9 21038(the)f(Do)s(cumen)m(t)h(means)g(a)g(mac)m(hine-readable)h(cop)m(y)-8
1231ac47 21039b(,)38 b(represen)m(ted)330 1258 y(in)d(a)h(format)g(whose)g(sp)s
37c41ab1 21040(eci\014cation)g(is)g(a)m(v)-5 b(ailable)38 b(to)f(the)f(general)g
1231ac47 21041(public,)h(that)f(is)g(suitable)g(for)330 1367 y(revising)c(the)g(do)s
37c41ab1 21042(cumen)m(t)f(straigh)m(tforw)m(ardly)i(with)e(generic)i(text)g(editors)
1231ac47 21043f(or)f(\(for)h(images)h(com-)330 1477 y(p)s(osed)23 b(of)h(pixels\))g
37c41ab1 21044(generic)h(pain)m(t)f(programs)g(or)f(\(for)h(dra)m(wings\))g(some)g
1231ac47 21045(widely)g(a)m(v)-5 b(ailable)26 b(dra)m(wing)330 1587
37c41ab1
CR
21046y(editor,)k(and)f(that)g(is)g(suitable)h(for)f(input)f(to)i(text)g
21047(formatters)f(or)g(for)g(automatic)i(translation)f(to)330
1231ac47 210481696 y(a)d(v)-5 b(ariet)m(y)28 b(of)f(formats)g(suitable)h(for)e(input)
37c41ab1 21049g(to)i(text)g(formatters.)40 b(A)27 b(cop)m(y)g(made)g(in)g(an)g
1231ac47 21050(otherwise)330 1806 y(T)-8 b(ransparen)m(t)37 b(\014le)h(format)g
5e13499c 21051(whose)f(markup,)i(or)e(absence)h(of)g(markup,)g(has)g(b)s(een)f
1231ac47 21052(arranged)g(to)330 1915 y(th)m(w)m(art)27 b(or)g(discourage)g
37c41ab1 21053(subsequen)m(t)f(mo)s(di\014cation)h(b)m(y)g(readers)f(is)g(not)h(T)-8
1231ac47 21054b(ransparen)m(t.)39 b(An)27 b(image)330 2025 y(format)35
37c41ab1
CR
21055b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
21056(substan)m(tial)h(amoun)m(t)g(of)g(text.)53 b(A)35 b(cop)m(y)g(that)g
1231ac47
CR
21057(is)330 2134 y(not)c(\\T)-8 b(ransparen)m(t")31 b(is)f(called)i
21058(\\Opaque".)330 2285 y(Examples)53 b(of)g(suitable)h(formats)f(for)g(T)
6e51e0d0
CR
21059-8 b(ransparen)m(t)53 b(copies)h(include)f(plain)g Fm(asci)r(i)g
21060Fu(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
c302751c 21061(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
6e51e0d0
CR
21062Ff(SGML)f Fu(or)f Ff(XML)g Fu(using)g(a)g(publicly)330
210632504 y(a)m(v)-5 b(ailable)42 b Ff(DTD)p Fu(,)h(and)c
21064(standard-conforming)g(simple)h Ff(HTML)p Fu(,)i(P)m(ostScript)e(or)f
21065Ff(PDF)h Fu(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
21066b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
21067Ff(PNG)p Fu(,)i Ff(X)n(CF)330 2724 y Fu(and)e Ff(JPG)p
21068Fu(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
21069h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
21070b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
21071Ff(SGML)54 b Fu(or)f Ff(XML)h Fu(for)g(whic)m(h)f(the)h
21072Ff(DTD)g Fu(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
21073(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
21074(hine-generated)j Ff(HTML)p Fu(,)330 3052 y(P)m(ostScript)31
21075b(or)f Ff(PDF)h Fu(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
21076(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
210773203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
21078s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
21079(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
21080b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
21081(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
21082b(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
21083(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
210843532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
21085(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
210863641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
210873792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
21088m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
210893902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
21090(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
21091(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
21092(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
21093(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
21094b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
21095(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
21096(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
21097(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
21098y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
21099(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
211004600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
21101(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
21102-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
21103(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
21104(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
21105b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
21106(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
21107(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
21108(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
21109b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
211105189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
211115340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
e2520247
CR
21112%%Page: 180 186
21113TeXDict begin 180 185 bop 150 -116 a Fu(App)s(endix)29
c2a47ea9 21114b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21115b(180)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
1231ac47
CR
21116(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
21117(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
21118b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
21119(and)42 b(the)h(license)330 518 y(notice)37 b(sa)m(ying)g(this)e
21120(License)i(applies)e(to)i(the)f(Do)s(cumen)m(t)g(are)g(repro)s(duced)e
21121(in)i(all)g(copies,)j(and)330 628 y(that)27 b(y)m(ou)g(add)f(no)h
21122(other)f(conditions)h(whatso)s(ev)m(er)h(to)f(those)g(of)g(this)f
21123(License.)40 b(Y)-8 b(ou)27 b(ma)m(y)g(not)g(use)330
21124737 y(tec)m(hnical)35 b(measures)d(to)i(obstruct)f(or)g(con)m(trol)h
21125(the)f(reading)g(or)g(further)e(cop)m(ying)j(of)f(the)g(copies)330
21126847 y(y)m(ou)25 b(mak)m(e)g(or)g(distribute.)38 b(Ho)m(w)m(ev)m(er,)28
37c41ab1 21127b(y)m(ou)d(ma)m(y)g(accept)h(comp)s(ensation)f(in)f(exc)m(hange)j(for)d
1231ac47 21128(copies.)330 956 y(If)32 b(y)m(ou)g(distribute)g(a)h(large)g(enough)f
37c41ab1 21129(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 21130(the)f(conditions)330 1066 y(in)e(section)i(3.)330 1200
37c41ab1
CR
21131y(Y)-8 b(ou)21 b(ma)m(y)h(also)f(lend)g(copies,)i(under)d(the)h(same)g
21132(conditions)g(stated)h(ab)s(o)m(v)m(e,)i(and)c(y)m(ou)h(ma)m(y)g
1231ac47
CR
21133(publicly)330 1310 y(displa)m(y)31 b(copies.)199 1443
21134y(3.)61 b(COPYING)30 b(IN)g(QUANTITY)330 1577 y(If)25
37c41ab1
CR
21135b(y)m(ou)g(publish)f(prin)m(ted)g(copies)i(\(or)g(copies)g(in)f(media)g
21136(that)h(commonly)g(ha)m(v)m(e)g(prin)m(ted)f(co)m(v)m(ers\))i(of)330
1231ac47 211371687 y(the)32 b(Do)s(cumen)m(t,)h(n)m(um)m(b)s(ering)e(more)h(than)f
37c41ab1 21138(100,)j(and)d(the)h(Do)s(cumen)m(t's)h(license)f(notice)h(requires)330
1231ac47 211391797 y(Co)m(v)m(er)i(T)-8 b(exts,)36 b(y)m(ou)f(m)m(ust)f(enclose)i
37c41ab1 21140(the)e(copies)h(in)f(co)m(v)m(ers)i(that)f(carry)-8 b(,)36
1231ac47 21141b(clearly)f(and)f(legibly)-8 b(,)37 b(all)330 1906 y(these)j(Co)m(v)m
37c41ab1 21142(er)g(T)-8 b(exts:)59 b(F)-8 b(ron)m(t-Co)m(v)m(er)41
5e13499c
CR
21143b(T)-8 b(exts)40 b(on)f(the)g(fron)m(t)g(co)m(v)m(er,)44
21144b(and)38 b(Bac)m(k-Co)m(v)m(er)k(T)-8 b(exts)40 b(on)330
1231ac47 211452016 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 21146m(ust)e(also)h(clearly)g(and)f(legibly)h(iden)m(tify)f(y)m(ou)h(as)f
1231ac47 21147(the)h(publisher)330 2125 y(of)k(these)h(copies.)53 b(The)34
37c41ab1 21148b(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 21149(with)d(all)j(w)m(ords)d(of)i(the)f(title)330 2235 y(equally)e
37c41ab1
CR
21150(prominen)m(t)e(and)g(visible.)43 b(Y)-8 b(ou)31 b(ma)m(y)g(add)g
21151(other)g(material)h(on)f(the)g(co)m(v)m(ers)h(in)e(addition.)330
1231ac47 211522345 y(Cop)m(ying)36 b(with)g(c)m(hanges)h(limited)g(to)g(the)g(co)m(v)
37c41ab1 21153m(ers,)i(as)d(long)h(as)g(they)f(preserv)m(e)g(the)h(title)g(of)g(the)
1231ac47 21154330 2454 y(Do)s(cumen)m(t)h(and)e(satisfy)i(these)f(conditions,)j(can)d
37c41ab1 21155(b)s(e)g(treated)h(as)f(v)m(erbatim)h(cop)m(ying)g(in)f(other)330
1231ac47 211562564 y(resp)s(ects.)330 2698 y(If)32 b(the)h(required)f(texts)i(for)e
37c41ab1 21157(either)h(co)m(v)m(er)i(are)e(to)s(o)g(v)m(oluminous)g(to)g(\014t)g
1231ac47 21158(legibly)-8 b(,)35 b(y)m(ou)e(should)f(put)330 2807 y(the)h(\014rst)f
37c41ab1
CR
21159(ones)h(listed)g(\(as)h(man)m(y)f(as)g(\014t)g(reasonably\))g(on)g(the)
21160g(actual)h(co)m(v)m(er,)h(and)e(con)m(tin)m(ue)h(the)330
1231ac47 211612917 y(rest)d(on)m(to)g(adjacen)m(t)h(pages.)330 3051
37c41ab1
CR
21162y(If)27 b(y)m(ou)g(publish)e(or)i(distribute)g(Opaque)f(copies)i(of)f
21163(the)h(Do)s(cumen)m(t)f(n)m(um)m(b)s(ering)f(more)i(than)e(100,)330
1231ac47 211643160 y(y)m(ou)i(m)m(ust)g(either)h(include)e(a)i(mac)m(hine-readable)g
37c41ab1 21165(T)-8 b(ransparen)m(t)28 b(cop)m(y)h(along)g(with)e(eac)m(h)i(Opaque)
1231ac47 21166330 3270 y(cop)m(y)-8 b(,)38 b(or)d(state)h(in)f(or)g(with)g(eac)m(h)h
37c41ab1 21167(Opaque)e(cop)m(y)i(a)g(computer-net)m(w)m(ork)g(lo)s(cation)h(from)d
1231ac47 21168(whic)m(h)330 3380 y(the)24 b(general)i(net)m(w)m(ork-using)f(public)e
37c41ab1 21169(has)h(access)i(to)f(do)m(wnload)f(using)g(public-standard)f(net)m(w)m
1231ac47 21170(ork)330 3489 y(proto)s(cols)40 b(a)f(complete)h(T)-8
5e13499c 21171b(ransparen)m(t)39 b(cop)m(y)g(of)g(the)h(Do)s(cumen)m(t,)i(free)d(of)g
1231ac47 21172(added)f(material.)67 b(If)330 3599 y(y)m(ou)39 b(use)g(the)g(latter)h
37c41ab1 21173(option,)h(y)m(ou)f(m)m(ust)e(tak)m(e)j(reasonably)e(pruden)m(t)e
1231ac47 21174(steps,)k(when)d(y)m(ou)h(b)s(egin)330 3708 y(distribution)f(of)g
37c41ab1
CR
21175(Opaque)g(copies)h(in)e(quan)m(tit)m(y)-8 b(,)43 b(to)38
21176b(ensure)g(that)h(this)f(T)-8 b(ransparen)m(t)38 b(cop)m(y)h(will)330
1231ac47 211773818 y(remain)30 b(th)m(us)g(accessible)i(at)f(the)f(stated)h(lo)s
37c41ab1 21178(cation)h(un)m(til)e(at)h(least)h(one)e(y)m(ear)h(after)g(the)f(last)h
1231ac47 21179(time)330 3927 y(y)m(ou)37 b(distribute)f(an)h(Opaque)f(cop)m(y)i
37c41ab1 21180(\(directly)g(or)e(through)g(y)m(our)h(agen)m(ts)h(or)f(retailers\))h
1231ac47
CR
21181(of)f(that)330 4037 y(edition)31 b(to)g(the)g(public.)330
211824171 y(It)k(is)f(requested,)i(but)e(not)h(required,)g(that)g(y)m(ou)g
5e13499c 21183(con)m(tact)h(the)f(authors)f(of)h(the)g(Do)s(cumen)m(t)g(w)m(ell)330
1231ac47 211844281 y(b)s(efore)28 b(redistributing)g(an)m(y)h(large)h(n)m(um)m(b)s
37c41ab1 21185(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
21186(vide)g(y)m(ou)330 4390 y(with)h(an)g(up)s(dated)f(v)m(ersion)i(of)g
21187(the)f(Do)s(cumen)m(t.)199 4524 y(4.)61 b(MODIFICA)-8
21188b(TIONS)330 4658 y(Y)g(ou)26 b(ma)m(y)g(cop)m(y)g(and)f(distribute)g(a)
37c41ab1 21189h(Mo)s(di\014ed)f(V)-8 b(ersion)26 b(of)g(the)g(Do)s(cumen)m(t)g(under)
1231ac47 21190e(the)h(conditions)330 4768 y(of)c(sections)h(2)g(and)e(3)h(ab)s(o)m(v)
37c41ab1 21191m(e,)k(pro)m(vided)20 b(that)i(y)m(ou)f(release)i(the)e(Mo)s(di\014ed)f
1231ac47 21192(V)-8 b(ersion)22 b(under)d(precisely)330 4877 y(this)29
37c41ab1
CR
21193b(License,)h(with)f(the)g(Mo)s(di\014ed)f(V)-8 b(ersion)30
21194b(\014lling)f(the)g(role)h(of)f(the)g(Do)s(cumen)m(t,)h(th)m(us)f
1231ac47 21195(licensing)330 4987 y(distribution)k(and)h(mo)s(di\014cation)g(of)h
37c41ab1 21196(the)f(Mo)s(di\014ed)f(V)-8 b(ersion)35 b(to)g(who)s(ev)m(er)f(p)s
1231ac47 21197(ossesses)f(a)i(cop)m(y)g(of)330 5096 y(it.)41 b(In)30
37c41ab1 21198b(addition,)h(y)m(ou)f(m)m(ust)h(do)f(these)h(things)f(in)g(the)h(Mo)s
1231ac47 21199(di\014ed)e(V)-8 b(ersion:)357 5230 y(A.)60 b(Use)33
c2a47ea9
CR
21200b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
21201(an)m(y\))g(a)g(title)h(distinct)f(from)g(that)g(of)g(the)510
1231ac47 212025340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
c2a47ea9 21203(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
1231ac47 21204b(,)p eop end
e2520247
CR
21205%%Page: 181 187
21206TeXDict begin 181 186 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 21207b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21208b(181)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
ad4aef08
CR
21209(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
21210h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
21211i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
21212545 y(B.)61 b(List)31 b(on)f(the)h(Title)g(P)m(age,)i(as)d(authors,)h
21213(one)g(or)f(more)h(p)s(ersons)e(or)h(en)m(tities)j(resp)s(onsible)c
21214(for)510 655 y(authorship)c(of)h(the)h(mo)s(di\014cations)f(in)g(the)g
21215(Mo)s(di\014ed)f(V)-8 b(ersion,)28 b(together)g(with)d(at)i(least)h
21216(\014v)m(e)510 765 y(of)c(the)g(principal)g(authors)f(of)i(the)f(Do)s
21217(cumen)m(t)g(\(all)h(of)g(its)f(principal)g(authors,)h(if)f(it)g(has)g
21218(few)m(er)510 874 y(than)30 b(\014v)m(e\),)h(unless)f(they)h(release)g
21219(y)m(ou)g(from)f(this)g(requiremen)m(t.)359 1011 y(C.)60
1231ac47
CR
21220b(State)32 b(on)e(the)h(Title)h(page)f(the)g(name)g(of)g(the)g
21221(publisher)e(of)i(the)g(Mo)s(di\014ed)f(V)-8 b(ersion,)32
21222b(as)f(the)510 1121 y(publisher.)355 1258 y(D.)61 b(Preserv)m(e)31
21223b(all)g(the)g(cop)m(yrigh)m(t)h(notices)f(of)g(the)f(Do)s(cumen)m(t.)
21224363 1395 y(E.)60 b(Add)30 b(an)i(appropriate)f(cop)m(yrigh)m(t)i
21225(notice)f(for)g(y)m(our)f(mo)s(di\014cations)g(adjacen)m(t)i(to)f(the)g
21226(other)510 1504 y(cop)m(yrigh)m(t)g(notices.)365 1641
21227y(F.)61 b(Include,)28 b(immediately)h(after)f(the)h(cop)m(yrigh)m(t)g
21228(notices,)h(a)e(license)h(notice)g(giving)g(the)f(public)510
212291751 y(p)s(ermission)23 b(to)j(use)e(the)g(Mo)s(di\014ed)g(V)-8
21230b(ersion)25 b(under)e(the)i(terms)f(of)h(this)f(License,)j(in)d(the)g
21231(form)510 1861 y(sho)m(wn)30 b(in)g(the)g(Addendum)f(b)s(elo)m(w.)353
212321998 y(G.)61 b(Preserv)m(e)23 b(in)g(that)g(license)h(notice)g(the)f
37c41ab1 21233(full)g(lists)g(of)g(In)m(v)-5 b(arian)m(t)23 b(Sections)h(and)e
1231ac47
CR
21234(required)g(Co)m(v)m(er)510 2107 y(T)-8 b(exts)31 b(giv)m(en)g(in)f
21235(the)h(Do)s(cumen)m(t's)g(license)h(notice.)357 2244
37c41ab1 21236y(H.)60 b(Include)30 b(an)g(unaltered)g(cop)m(y)h(of)g(this)f(License.)
1231ac47 21237392 2381 y(I.)60 b(Preserv)m(e)33 b(the)f(section)h(En)m(titled)g
37c41ab1 21238(\\History",)h(Preserv)m(e)f(its)f(Title,)i(and)d(add)h(to)h(it)f(an)g
1231ac47 21239(item)510 2491 y(stating)d(at)g(least)g(the)g(title,)h(y)m(ear,)g(new)d
37c41ab1 21240(authors,)i(and)e(publisher)f(of)j(the)f(Mo)s(di\014ed)f(V)-8
1231ac47 21241b(ersion)510 2600 y(as)32 b(giv)m(en)g(on)f(the)h(Title)g(P)m(age.)45
37c41ab1 21242b(If)31 b(there)h(is)f(no)g(section)i(En)m(titled)f(\\History")h(in)e
1231ac47 21243(the)g(Do)s(cu-)510 2710 y(men)m(t,)37 b(create)f(one)f(stating)h(the)f
37c41ab1 21244(title,)i(y)m(ear,)g(authors,)f(and)e(publisher)f(of)i(the)g(Do)s
1231ac47 21245(cumen)m(t)510 2819 y(as)h(giv)m(en)h(on)f(its)h(Title)g(P)m(age,)i
37c41ab1 21246(then)d(add)g(an)g(item)g(describing)g(the)g(Mo)s(di\014ed)g(V)-8
1231ac47
CR
21247b(ersion)37 b(as)510 2929 y(stated)31 b(in)f(the)h(previous)f(sen)m
21248(tence.)378 3066 y(J.)60 b(Preserv)m(e)33 b(the)g(net)m(w)m(ork)g(lo)s
37c41ab1 21249(cation,)i(if)d(an)m(y)-8 b(,)34 b(giv)m(en)f(in)g(the)f(Do)s(cumen)m
1231ac47 21250(t)h(for)g(public)e(access)j(to)510 3176 y(a)e(T)-8 b(ransparen)m(t)30
37c41ab1 21251b(cop)m(y)i(of)g(the)f(Do)s(cumen)m(t,)h(and)f(lik)m(ewise)h(the)g(net)
1231ac47 21252m(w)m(ork)g(lo)s(cations)g(giv)m(en)g(in)510 3285 y(the)g(Do)s(cumen)m
37c41ab1 21253(t)g(for)g(previous)f(v)m(ersions)h(it)g(w)m(as)g(based)f(on.)45
1231ac47 21254b(These)31 b(ma)m(y)h(b)s(e)f(placed)h(in)g(the)510 3395
37c41ab1
CR
21255y(\\History")27 b(section.)40 b(Y)-8 b(ou)25 b(ma)m(y)h(omit)g(a)f(net)
21256m(w)m(ork)h(lo)s(cation)g(for)f(a)h(w)m(ork)f(that)g(w)m(as)h
1231ac47 21257(published)510 3504 y(at)36 b(least)h(four)e(y)m(ears)i(b)s(efore)e
37c41ab1 21258(the)h(Do)s(cumen)m(t)h(itself,)h(or)d(if)h(the)g(original)h(publisher)
1231ac47
CR
21259d(of)i(the)510 3614 y(v)m(ersion)31 b(it)g(refers)f(to)h(giv)m(es)h(p)s
21260(ermission.)354 3751 y(K.)60 b(F)-8 b(or)24 b(an)m(y)h(section)f(En)m
37c41ab1 21261(titled)h(\\Ac)m(kno)m(wledgemen)m(ts")i(or)d(\\Dedications",)k
1231ac47 21262(Preserv)m(e)c(the)g(Title)510 3861 y(of)j(the)f(section,)j(and)d
37c41ab1 21263(preserv)m(e)h(in)f(the)h(section)g(all)h(the)e(substance)h(and)f(tone)
1231ac47 21264h(of)f(eac)m(h)i(of)f(the)510 3970 y(con)m(tributor)k(ac)m(kno)m
37c41ab1 21265(wledgemen)m(ts)i(and/or)d(dedications)h(giv)m(en)h(therein.)368
1231ac47 212664107 y(L.)60 b(Preserv)m(e)36 b(all)g(the)g(In)m(v)-5
37c41ab1 21267b(arian)m(t)36 b(Sections)g(of)f(the)h(Do)s(cumen)m(t,)h(unaltered)f
1231ac47 21268(in)f(their)g(text)i(and)510 4217 y(in)f(their)g(titles.)58
37c41ab1
CR
21269b(Section)37 b(n)m(um)m(b)s(ers)d(or)i(the)g(equiv)-5
21270b(alen)m(t)38 b(are)e(not)g(considered)g(part)g(of)g(the)510
1231ac47 212714326 y(section)c(titles.)341 4463 y(M.)61 b(Delete)33
37c41ab1
CR
21272b(an)m(y)e(section)h(En)m(titled)f(\\Endorsemen)m(ts".)42
21273b(Suc)m(h)30 b(a)i(section)f(ma)m(y)h(not)f(b)s(e)f(included)510
1231ac47
CR
212744573 y(in)g(the)h(Mo)s(di\014ed)e(V)-8 b(ersion.)357
212754710 y(N.)60 b(Do)29 b(not)g(retitle)h(an)m(y)e(existing)i(section)f
37c41ab1 21276(to)g(b)s(e)f(En)m(titled)h(\\Endorsemen)m(ts")g(or)f(to)h(con\015ict)g
1231ac47
CR
21277(in)510 4819 y(title)j(with)e(an)m(y)h(In)m(v)-5 b(arian)m(t)31
21278b(Section.)354 4956 y(O.)60 b(Preserv)m(e)31 b(an)m(y)g(W)-8
21279b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
37c41ab1 21280(V)-8 b(ersion)34 b(includes)f(new)g(fron)m(t-matter)i(sections)f(or)f
1231ac47 21281(app)s(endices)g(that)h(qualify)330 5230 y(as)28 b(Secondary)g
37c41ab1 21282(Sections)g(and)f(con)m(tain)j(no)d(material)j(copied)e(from)f(the)h
1231ac47 21283(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 21284(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
1231ac47 21285b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
c2a47ea9 21286eop end
e2520247
CR
21287%%Page: 182 188
21288TeXDict begin 182 187 bop 150 -116 a Fu(App)s(endix)29
c2a47ea9 21289b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21290b(182)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
1231ac47
CR
21291b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
21292b(ersion's)36 b(license)g(notice.)57 b(These)330 408
21293y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
21294(section)g(titles.)330 551 y(Y)-8 b(ou)43 b(ma)m(y)g(add)f(a)g(section)
21295i(En)m(titled)f(\\Endorsemen)m(ts",)j(pro)m(vided)c(it)h(con)m(tains)g
21296(nothing)g(but)330 661 y(endorsemen)m(ts)30 b(of)g(y)m(our)f(Mo)s
37c41ab1 21297(di\014ed)g(V)-8 b(ersion)31 b(b)m(y)e(v)-5 b(arious)30
1231ac47 21298b(parties|for)g(example,)g(statemen)m(ts)i(of)330 770
37c41ab1
CR
21299y(p)s(eer)27 b(review)g(or)g(that)h(the)f(text)i(has)d(b)s(een)h(appro)
21300m(v)m(ed)g(b)m(y)g(an)h(organization)h(as)e(the)h(authoritativ)m(e)330
1231ac47 21301880 y(de\014nition)i(of)h(a)f(standard.)330 1022 y(Y)-8
37c41ab1
CR
21302b(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
21303(ords)e(as)i(a)g(F)-8 b(ron)m(t-Co)m(v)m(er)30 b(T)-8
1231ac47 21304b(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
21305(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
21306(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 21307(di\014ed)330 1241 y(V)-8 b(ersion.)58 b(Only)35 b(one)h(passage)h(of)f
37c41ab1 21308(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 21309(k-Co)m(v)m(er)j(T)-8 b(ext)36 b(ma)m(y)h(b)s(e)330 1351
37c41ab1
CR
21310y(added)27 b(b)m(y)g(\(or)h(through)f(arrangemen)m(ts)h(made)g(b)m(y\))
21311g(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 21312g(already)330 1461 y(includes)34 b(a)g(co)m(v)m(er)h(text)g(for)f(the)g
37c41ab1 21313(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 21314(y)g(arrangemen)m(t)330 1570 y(made)h(b)m(y)g(the)h(same)f(en)m(tit)m
37c41ab1 21315(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 21316(not)f(add)g(another;)j(but)330 1680 y(y)m(ou)c(ma)m(y)h(replace)g(the)
37c41ab1 21317f(old)g(one,)i(on)e(explicit)h(p)s(ermission)e(from)g(the)i(previous)e
1231ac47
CR
21318(publisher)f(that)330 1789 y(added)e(the)g(old)h(one.)330
213191932 y(The)25 b(author\(s\))h(and)f(publisher\(s\))f(of)i(the)f(Do)s
37c41ab1 21320(cumen)m(t)h(do)g(not)f(b)m(y)h(this)f(License)h(giv)m(e)h(p)s
1231ac47 21321(ermission)330 2041 y(to)k(use)f(their)g(names)h(for)f(publicit)m(y)g
37c41ab1 21322(for)h(or)f(to)h(assert)g(or)f(imply)g(endorsemen)m(t)g(of)h(an)m(y)g
1231ac47
CR
21323(Mo)s(di\014ed)330 2151 y(V)-8 b(ersion.)199 2293 y(5.)61
21324b(COMBINING)31 b(DOCUMENTS)330 2436 y(Y)-8 b(ou)39 b(ma)m(y)g(com)m
37c41ab1 21325(bine)h(the)f(Do)s(cumen)m(t)g(with)g(other)f(do)s(cumen)m(ts)h
1231ac47 21326(released)g(under)f(this)g(License,)330 2545 y(under)f(the)h(terms)g
37c41ab1 21327(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 21328(v)m(ersions,)k(pro)m(vided)d(that)h(y)m(ou)330 2655
37c41ab1
CR
21329y(include)25 b(in)g(the)g(com)m(bination)i(all)f(of)g(the)f(In)m(v)-5
21330b(arian)m(t)26 b(Sections)g(of)g(all)g(of)f(the)h(original)g(do)s
1231ac47 21331(cumen)m(ts,)330 2765 y(unmo)s(di\014ed,)g(and)g(list)h(them)g(all)g
37c41ab1 21332(as)g(In)m(v)-5 b(arian)m(t)28 b(Sections)f(of)g(y)m(our)g(com)m(bined)
1231ac47 21333g(w)m(ork)f(in)h(its)g(license)330 2874 y(notice,)32
37c41ab1 21334b(and)e(that)h(y)m(ou)f(preserv)m(e)h(all)g(their)g(W)-8
1231ac47 21335b(arran)m(t)m(y)32 b(Disclaimers.)330 3017 y(The)e(com)m(bined)g(w)m
37c41ab1 21336(ork)h(need)e(only)i(con)m(tain)g(one)g(cop)m(y)g(of)f(this)g(License,)
1231ac47 21337i(and)d(m)m(ultiple)i(iden)m(tical)330 3126 y(In)m(v)-5
37c41ab1
CR
21338b(arian)m(t)33 b(Sections)g(ma)m(y)g(b)s(e)f(replaced)h(with)f(a)h
21339(single)g(cop)m(y)-8 b(.)48 b(If)32 b(there)h(are)g(m)m(ultiple)g(In)m
1231ac47 21340(v)-5 b(arian)m(t)330 3236 y(Sections)27 b(with)g(the)g(same)g(name)g
37c41ab1 21341(but)f(di\013eren)m(t)h(con)m(ten)m(ts,)i(mak)m(e)f(the)f(title)h(of)f
1231ac47 21342(eac)m(h)h(suc)m(h)f(section)330 3345 y(unique)33 b(b)m(y)h(adding)f
37c41ab1 21343(at)i(the)f(end)g(of)g(it,)h(in)f(paren)m(theses,)i(the)e(name)g(of)g
1231ac47 21344(the)g(original)h(author)f(or)330 3455 y(publisher)23
37c41ab1 21345b(of)i(that)h(section)g(if)f(kno)m(wn,)h(or)f(else)h(a)f(unique)f(n)m
5e13499c 21346(um)m(b)s(er.)38 b(Mak)m(e)26 b(the)g(same)f(adjustmen)m(t)330
1231ac47 213473565 y(to)g(the)g(section)g(titles)h(in)e(the)h(list)g(of)f(In)m(v)-5
37c41ab1 21348b(arian)m(t)26 b(Sections)f(in)f(the)g(license)i(notice)g(of)e(the)h
1231ac47 21349(com)m(bined)330 3674 y(w)m(ork.)330 3817 y(In)41 b(the)g(com)m
37c41ab1
CR
21350(bination,)46 b(y)m(ou)41 b(m)m(ust)g(com)m(bine)h(an)m(y)g(sections)g
21351(En)m(titled)g(\\History")h(in)e(the)g(v)-5 b(ari-)330
1231ac47 213523926 y(ous)32 b(original)h(do)s(cumen)m(ts,)g(forming)f(one)g(section)h
37c41ab1 21353(En)m(titled)g(\\History";)i(lik)m(ewise)f(com)m(bine)f(an)m(y)330
1231ac47 213544036 y(sections)g(En)m(titled)f(\\Ac)m(kno)m(wledgemen)m(ts",)k(and)31
37c41ab1 21355b(an)m(y)h(sections)h(En)m(titled)g(\\Dedications".)47
1231ac47
CR
21356b(Y)-8 b(ou)330 4145 y(m)m(ust)30 b(delete)i(all)f(sections)h(En)m
21357(titled)f(\\Endorsemen)m(ts.")199 4288 y(6.)61 b(COLLECTIONS)28
21358b(OF)i(DOCUMENTS)330 4430 y(Y)-8 b(ou)32 b(ma)m(y)h(mak)m(e)g(a)f
37c41ab1 21359(collection)i(consisting)f(of)f(the)g(Do)s(cumen)m(t)g(and)g(other)g
1231ac47 21360(do)s(cumen)m(ts)f(released)330 4540 y(under)41 b(this)h(License,)k
37c41ab1 21361(and)c(replace)h(the)g(individual)f(copies)h(of)f(this)g(License)h(in)f
1231ac47 21362(the)h(v)-5 b(arious)330 4650 y(do)s(cumen)m(ts)42 b(with)g(a)h(single)
37c41ab1 21363g(cop)m(y)h(that)f(is)f(included)g(in)g(the)h(collection,)48
1231ac47 21364b(pro)m(vided)42 b(that)i(y)m(ou)330 4759 y(follo)m(w)38
37c41ab1
CR
21365b(the)g(rules)e(of)h(this)g(License)h(for)f(v)m(erbatim)h(cop)m(ying)g
21366(of)f(eac)m(h)h(of)f(the)h(do)s(cumen)m(ts)e(in)h(all)330
1231ac47 213674869 y(other)31 b(resp)s(ects.)330 5011 y(Y)-8 b(ou)32
37c41ab1
CR
21368b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
21369(collection,)i(and)d(distribute)g(it)h(individu-)330
1231ac47 213705121 y(ally)k(under)d(this)i(License,)i(pro)m(vided)e(y)m(ou)g(insert)g
37c41ab1 21371(a)g(cop)m(y)h(of)f(this)g(License)g(in)m(to)h(the)g(extracted)330
1231ac47 213725230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
37c41ab1 21373(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
1231ac47 213745340 y(that)d(do)s(cumen)m(t.)p eop end
e2520247
CR
21375%%Page: 183 189
21376TeXDict begin 183 188 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 21377b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21378b(183)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
ad4aef08
CR
21379(W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
21380(its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
21381s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
21382(on)f(a)g(v)m(olume)h(of)g(a)f(storage)i(or)e(distribution)g(medium,)g
21383(is)h(called)330 661 y(an)c(\\aggregate")k(if)c(the)g(cop)m(yrigh)m(t)i
21384(resulting)e(from)f(the)i(compilation)g(is)f(not)h(used)e(to)i(limit)g
21385(the)330 770 y(legal)d(righ)m(ts)f(of)g(the)g(compilation's)h(users)e
21386(b)s(ey)m(ond)g(what)g(the)h(individual)f(w)m(orks)g(p)s(ermit.)39
1231ac47
CR
21387b(When)330 880 y(the)g(Do)s(cumen)m(t)g(is)f(included)g(in)g(an)g
21388(aggregate,)44 b(this)38 b(License)h(do)s(es)f(not)h(apply)f(to)h(the)g
21389(other)330 989 y(w)m(orks)30 b(in)g(the)h(aggregate)i(whic)m(h)d(are)h
21390(not)g(themselv)m(es)g(deriv)-5 b(ativ)m(e)32 b(w)m(orks)f(of)f(the)h
21391(Do)s(cumen)m(t.)330 1132 y(If)22 b(the)h(Co)m(v)m(er)h(T)-8
21392b(ext)23 b(requiremen)m(t)g(of)g(section)h(3)f(is)g(applicable)h(to)f
21393(these)h(copies)f(of)g(the)g(Do)s(cumen)m(t,)330 1241
21394y(then)f(if)g(the)h(Do)s(cumen)m(t)g(is)g(less)f(than)g(one)h(half)f
21395(of)h(the)g(en)m(tire)g(aggregate,)k(the)c(Do)s(cumen)m(t's)g(Co)m(v)m
21396(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
21397(ers)h(that)f(brac)m(k)m(et)h(the)f(Do)s(cumen)m(t)g(within)f(the)h
21398(aggregate,)j(or)d(the)330 1461 y(electronic)37 b(equiv)-5
21399b(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
21400(in)g(electronic)i(form.)54 b(Otherwise)35 b(they)330
214011570 y(m)m(ust)30 b(app)s(ear)g(on)g(prin)m(ted)g(co)m(v)m(ers)i(that)f
21402(brac)m(k)m(et)h(the)f(whole)f(aggregate.)199 1713 y(8.)61
21403b(TRANSLA)-8 b(TION)330 1855 y(T)g(ranslation)41 b(is)f(considered)f(a)
37c41ab1 21404i(kind)e(of)h(mo)s(di\014cation,)j(so)d(y)m(ou)g(ma)m(y)h(distribute)e
1231ac47 21405(translations)330 1965 y(of)45 b(the)f(Do)s(cumen)m(t)h(under)e(the)h
37c41ab1 21406(terms)h(of)f(section)i(4.)83 b(Replacing)45 b(In)m(v)-5
1231ac47 21407b(arian)m(t)45 b(Sections)g(with)330 2074 y(translations)h(requires)f
37c41ab1 21408(sp)s(ecial)h(p)s(ermission)f(from)g(their)g(cop)m(yrigh)m(t)i
1231ac47 21409(holders,)i(but)c(y)m(ou)g(ma)m(y)330 2184 y(include)24
37c41ab1
CR
21410b(translations)i(of)e(some)h(or)g(all)g(In)m(v)-5 b(arian)m(t)25
21411b(Sections)g(in)f(addition)h(to)g(the)g(original)h(v)m(ersions)330
1231ac47 214122293 y(of)32 b(these)f(In)m(v)-5 b(arian)m(t)33 b(Sections.)44
37c41ab1 21413b(Y)-8 b(ou)32 b(ma)m(y)g(include)f(a)h(translation)g(of)g(this)f
1231ac47 21414(License,)i(and)d(all)j(the)330 2403 y(license)42 b(notices)g(in)f(the)
37c41ab1 21415h(Do)s(cumen)m(t,)j(and)40 b(an)m(y)i(W)-8 b(arran)m(t)m(y)42
1231ac47 21416b(Disclaimers,)k(pro)m(vided)41 b(that)h(y)m(ou)330 2513
37c41ab1
CR
21417y(also)f(include)f(the)g(original)h(English)f(v)m(ersion)g(of)g(this)g
21418(License)h(and)e(the)h(original)h(v)m(ersions)g(of)330
1231ac47 214192622 y(those)35 b(notices)g(and)e(disclaimers.)53 b(In)33
37c41ab1 21420b(case)i(of)g(a)f(disagreemen)m(t)h(b)s(et)m(w)m(een)g(the)f
1231ac47 21421(translation)i(and)330 2732 y(the)f(original)i(v)m(ersion)e(of)h(this)f
37c41ab1 21422(License)h(or)f(a)g(notice)i(or)e(disclaimer,)i(the)f(original)g(v)m
1231ac47 21423(ersion)g(will)330 2841 y(prev)-5 b(ail.)330 2984 y(If)28
37c41ab1
CR
21424b(a)h(section)h(in)e(the)h(Do)s(cumen)m(t)h(is)e(En)m(titled)i(\\Ac)m
21425(kno)m(wledgemen)m(ts",)i(\\Dedications",)g(or)d(\\His-)330
1231ac47 214263093 y(tory",)f(the)f(requiremen)m(t)f(\(section)i(4\))f(to)g(Preserv)m
37c41ab1 21427(e)g(its)f(Title)i(\(section)f(1\))g(will)g(t)m(ypically)h(require)330
1231ac47
CR
214283203 y(c)m(hanging)j(the)g(actual)h(title.)199 3345 y(9.)61
21429b(TERMINA)-8 b(TION)330 3488 y(Y)g(ou)30 b(ma)m(y)h(not)f(cop)m(y)-8
37c41ab1 21430b(,)31 b(mo)s(dify)-8 b(,)30 b(sublicense,)g(or)g(distribute)f(the)h
1231ac47
CR
21431(Do)s(cumen)m(t)g(except)h(as)f(expressly)330 3598 y(pro)m(vided)38
21432b(under)f(this)i(License.)65 b(An)m(y)39 b(attempt)h(otherwise)f(to)g
21433(cop)m(y)-8 b(,)42 b(mo)s(dify)-8 b(,)40 b(sublicense,)h(or)330
214343707 y(distribute)30 b(it)h(is)f(v)m(oid,)h(and)f(will)h(automatically)
21435i(terminate)f(y)m(our)e(righ)m(ts)h(under)e(this)h(License.)330
214363850 y(Ho)m(w)m(ev)m(er,)35 b(if)e(y)m(ou)f(cease)i(all)f(violation)i
21437(of)d(this)g(License,)i(then)e(y)m(our)h(license)g(from)f(a)h
21438(particular)330 3959 y(cop)m(yrigh)m(t)k(holder)e(is)h(reinstated)h
21439(\(a\))f(pro)m(visionally)-8 b(,)39 b(unless)c(and)g(un)m(til)h(the)g
21440(cop)m(yrigh)m(t)h(holder)330 4069 y(explicitly)42 b(and)e(\014nally)h
21441(terminates)g(y)m(our)g(license,)j(and)c(\(b\))h(p)s(ermanen)m(tly)-8
21442b(,)43 b(if)e(the)g(cop)m(yrigh)m(t)330 4178 y(holder)34
21443b(fails)h(to)g(notify)g(y)m(ou)g(of)f(the)h(violation)h(b)m(y)e(some)h
21444(reasonable)g(means)g(prior)e(to)i(60)h(da)m(ys)330 4288
21445y(after)31 b(the)f(cessation.)330 4430 y(Moreo)m(v)m(er,)k(y)m(our)d
21446(license)i(from)e(a)h(particular)f(cop)m(yrigh)m(t)i(holder)e(is)h
21447(reinstated)g(p)s(ermanen)m(tly)f(if)330 4540 y(the)d(cop)m(yrigh)m(t)h
21448(holder)f(noti\014es)g(y)m(ou)g(of)g(the)g(violation)h(b)m(y)f(some)g
21449(reasonable)h(means,)f(this)g(is)g(the)330 4650 y(\014rst)f(time)i(y)m
21450(ou)f(ha)m(v)m(e)h(receiv)m(ed)g(notice)g(of)f(violation)i(of)e(this)f
21451(License)i(\(for)f(an)m(y)g(w)m(ork\))g(from)f(that)330
214524759 y(cop)m(yrigh)m(t)33 b(holder,)g(and)e(y)m(ou)h(cure)g(the)g
21453(violation)i(prior)d(to)i(30)f(da)m(ys)h(after)f(y)m(our)g(receipt)h
21454(of)f(the)330 4869 y(notice.)330 5011 y(T)-8 b(ermination)28
21455b(of)g(y)m(our)f(righ)m(ts)h(under)e(this)i(section)g(do)s(es)f(not)h
21456(terminate)h(the)e(licenses)i(of)f(parties)330 5121 y(who)38
21457b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
21458(under)f(this)h(License.)64 b(If)38 b(y)m(our)g(righ)m(ts)h(ha)m(v)m(e)
21459330 5230 y(b)s(een)25 b(terminated)i(and)e(not)h(p)s(ermanen)m(tly)g
21460(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
21461(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
21462(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
e2520247
CR
21463%%Page: 184 190
21464TeXDict begin 184 189 bop 150 -116 a Fu(App)s(endix)29
1231ac47 21465b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21466b(184)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
1231ac47
CR
21467330 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
21468b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
21469(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
21470b(License)e(from)g(time)h(to)g(time.)46 b(Suc)m(h)31
21471b(new)h(v)m(ersions)g(will)h(b)s(e)e(similar)h(in)g(spirit)330
21472653 y(to)j(the)g(presen)m(t)f(v)m(ersion,)i(but)e(ma)m(y)h(di\013er)f
21473(in)g(detail)h(to)g(address)f(new)g(problems)f(or)i(concerns.)330
6e51e0d0 21474762 y(See)c Ft(http://www.gnu.org/copy)o(left)o(/)p Fu(.)330
1231ac47
CR
21475897 y(Eac)m(h)f(v)m(ersion)g(of)g(the)f(License)h(is)g(giv)m(en)g(a)g
21476(distinguishing)f(v)m(ersion)h(n)m(um)m(b)s(er.)39 b(If)29
21477b(the)g(Do)s(cumen)m(t)330 1006 y(sp)s(eci\014es)45 b(that)h(a)g
21478(particular)f(n)m(um)m(b)s(ered)f(v)m(ersion)i(of)f(this)g(License)h
21479(\\or)g(an)m(y)g(later)g(v)m(ersion")330 1116 y(applies)33
21480b(to)g(it,)h(y)m(ou)e(ha)m(v)m(e)i(the)f(option)g(of)f(follo)m(wing)i
21481(the)f(terms)f(and)g(conditions)h(either)g(of)f(that)330
214821225 y(sp)s(eci\014ed)37 b(v)m(ersion)i(or)e(of)h(an)m(y)h(later)g(v)m
37c41ab1 21483(ersion)f(that)g(has)g(b)s(een)f(published)f(\(not)j(as)f(a)g(draft\))g
1231ac47 21484(b)m(y)330 1335 y(the)33 b(F)-8 b(ree)34 b(Soft)m(w)m(are)f(F)-8
37c41ab1 21485b(oundation.)49 b(If)32 b(the)h(Do)s(cumen)m(t)g(do)s(es)g(not)g(sp)s
1231ac47 21486(ecify)f(a)h(v)m(ersion)g(n)m(um)m(b)s(er)f(of)330 1445
37c41ab1
CR
21487y(this)i(License,)j(y)m(ou)d(ma)m(y)i(c)m(ho)s(ose)f(an)m(y)g(v)m
21488(ersion)g(ev)m(er)g(published)e(\(not)i(as)g(a)f(draft\))h(b)m(y)f(the)
1231ac47
CR
21489h(F)-8 b(ree)330 1554 y(Soft)m(w)m(are)33 b(F)-8 b(oundation.)46
21490b(If)32 b(the)g(Do)s(cumen)m(t)g(sp)s(eci\014es)g(that)g(a)h(pro)m(xy)f
21491(can)g(decide)g(whic)m(h)g(future)330 1664 y(v)m(ersions)h(of)g(this)f
21492(License)h(can)g(b)s(e)f(used,)g(that)i(pro)m(xy's)e(public)g(statemen)
21493m(t)i(of)f(acceptance)i(of)e(a)330 1773 y(v)m(ersion)e(p)s(ermanen)m
21494(tly)f(authorizes)h(y)m(ou)g(to)g(c)m(ho)s(ose)g(that)g(v)m(ersion)g
21495(for)f(the)h(Do)s(cumen)m(t.)154 1908 y(11.)61 b(RELICENSING)330
214962042 y(\\Massiv)m(e)39 b(Multiauthor)f(Collab)s(oration)g(Site")h(\(or)
21497e(\\MMC)h(Site"\))h(means)e(an)m(y)h(W)-8 b(orld)37 b(Wide)330
214982152 y(W)-8 b(eb)36 b(serv)m(er)g(that)h(publishes)d(cop)m(yrigh)m
21499(table)k(w)m(orks)e(and)f(also)i(pro)m(vides)e(prominen)m(t)h
21500(facilities)330 2262 y(for)27 b(an)m(yb)s(o)s(dy)g(to)h(edit)g(those)g
21501(w)m(orks.)39 b(A)28 b(public)f(wiki)h(that)g(an)m(yb)s(o)s(dy)e(can)i
21502(edit)g(is)f(an)h(example)g(of)330 2371 y(suc)m(h)33
21503b(a)h(serv)m(er.)51 b(A)34 b(\\Massiv)m(e)i(Multiauthor)e(Collab)s
21504(oration")h(\(or)f(\\MMC"\))h(con)m(tained)g(in)f(the)330
215052481 y(site)d(means)f(an)m(y)h(set)g(of)g(cop)m(yrigh)m(table)h(w)m
21506(orks)e(th)m(us)g(published)f(on)h(the)h(MMC)f(site.)330
215072615 y(\\CC-BY-SA")36 b(means)f(the)g(Creativ)m(e)i(Commons)e(A)m
21508(ttribution-Share)g(Alik)m(e)i(3.0)f(license)g(pub-)330
215092725 y(lished)27 b(b)m(y)f(Creativ)m(e)j(Commons)d(Corp)s(oration,)h(a)
21510g(not-for-pro\014t)g(corp)s(oration)h(with)e(a)h(principal)330
215112834 y(place)g(of)f(business)e(in)i(San)f(F)-8 b(rancisco,)29
21512b(California,)f(as)e(w)m(ell)h(as)f(future)f(cop)m(yleft)i(v)m(ersions)
21513f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
21514(organization.)330 3078 y(\\Incorp)s(orate")h(means)e(to)h(publish)e
21515(or)i(republish)e(a)i(Do)s(cumen)m(t,)g(in)g(whole)g(or)f(in)g(part,)h
21516(as)g(part)330 3188 y(of)g(another)f(Do)s(cumen)m(t.)330
215173323 y(An)c(MMC)g(is)h(\\eligible)h(for)e(relicensing")h(if)g(it)f(is)h
21518(licensed)f(under)f(this)h(License,)i(and)e(if)g(all)h(w)m(orks)330
215193432 y(that)43 b(w)m(ere)f(\014rst)f(published)f(under)h(this)h
21520(License)g(somewhere)g(other)g(than)g(this)g(MMC,)h(and)330
215213542 y(subsequen)m(tly)34 b(incorp)s(orated)h(in)f(whole)h(or)g(in)f
21522(part)h(in)m(to)h(the)f(MMC,)g(\(1\))h(had)e(no)h(co)m(v)m(er)h(texts)
21523330 3651 y(or)30 b(in)m(v)-5 b(arian)m(t)32 b(sections,)g(and)d(\(2\))j
21524(w)m(ere)f(th)m(us)f(incorp)s(orated)g(prior)g(to)h(No)m(v)m(em)m(b)s
21525(er)g(1,)g(2008.)330 3786 y(The)40 b(op)s(erator)h(of)g(an)f(MMC)h
21526(Site)g(ma)m(y)g(republish)e(an)h(MMC)h(con)m(tained)h(in)e(the)h(site)
21527g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
21528(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
21529330 4005 y(eligible)h(for)e(relicensing.)p eop end
e2520247
CR
21530%%Page: 185 191
21531TeXDict begin 185 190 bop 150 -116 a Fu(App)s(endix)29
ad4aef08 21532b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
e2520247 21533b(185)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
6e51e0d0 21534(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fu(T)-8 b(o)35
ad4aef08
CR
21535b(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)
21536i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
21537568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
21538m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
6e51e0d0
CR
21539680 y Fe(Copyright)42 b(\(C\))79 b Fd(year)g(your)40
21540b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
ad4aef08
CR
21541(distribute)g(and/or)g(modify)f(this)g(document)468 854
21542y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
21543(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
21544(published)h(by)d(the)h(Free)g(Software)h(Foundation;)468
215451029 y(with)g(no)e(Invariant)j(Sections,)f(no)f(Front-Cover)h(Texts,)g
21546(and)f(no)f(Back-Cover)468 1116 y(Texts.)80 b(A)40 b(copy)g(of)g(the)f
21547(license)i(is)f(included)h(in)f(the)g(section)g(entitled)h(``GNU)468
6e51e0d0 215481203 y(Free)g(Documentation)h(License''.)275 1337 y Fu(If)d(y)m(ou)h
ad4aef08
CR
21549(ha)m(v)m(e)h(In)m(v)-5 b(arian)m(t)41 b(Sections,)i(F)-8
21550b(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
21551(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
21552b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
215531559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
6e51e0d0
CR
21554Fd(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
21555(Texts)e(being)g Fd(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
21556(Texts)547 1733 y(being)f Fd(list)p Fe(.)275 1868 y Fu(If)34
21557b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
21558(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
21559(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
21560(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
21561y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
21562(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
215632222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
21564(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
21565b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
21566(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
21567eop end
e2520247
CR
21568%%Page: 186 192
21569TeXDict begin 186 191 bop 3614 -116 a Fu(186)150 299
037a8b7f
CR
21570y Fp(App)t(endix)52 b(D)81 b(Indexes)150 639 y Fs(D.1)68
21571b(Index)45 b(of)g(Shell)g(Builtin)g(Commands)146 806
e2520247 21572y(.)150 922 y Fe(.)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f
CR
21573(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
21574f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 21575(:)33 b Fb(49)146 1157 y Fs(:)150 1273 y Fe(:)19 b Fc(:)13
037a8b7f
CR
21576b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21577(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247
CR
21578f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(49)146
215791510 y Fs([)150 1626 y Fe([)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f
CR
21580(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21581g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 21582(:)g(:)g(:)33 b Fb(53)146 1862 y Fs(A)150 1978 y Fe(alias)9
037a8b7f 21583b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21584(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247
CR
21585g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(57)146 2213 y
21586Fs(B)150 2329 y Fe(bg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21587(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21588g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29
e2520247 21589b Fb(118)150 2416 y Fe(bind)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21590(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21591h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 21592b Fb(57)150 2503 y Fe(break)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21593(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21594g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
e2520247 21595b Fb(50)150 2590 y Fe(builtin)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
c302751c 21596(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21597h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e2520247 21598b Fb(58)146 2825 y Fs(C)150 2941 y Fe(caller)6 b Fc(:)15
037a8b7f
CR
21599b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21600(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21601g(:)g(:)g(:)h(:)f(:)20 b Fb(58)150 3029 y Fe(cd)c Fc(:)e(:)f(:)g(:)g(:)
037a8b7f
CR
21602g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21603(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 21604g(:)g(:)g(:)g(:)g(:)31 b Fb(50)150 3116 y Fe(command)22
037a8b7f
CR
21605b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21606(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 21607h(:)f(:)g(:)g(:)g(:)35 b Fb(59)150 3203 y Fe(compgen)18
037a8b7f 21608b Fc(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
c302751c 21609g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 21610(:)h(:)f(:)g(:)33 b Fb(150)150 3290 y Fe(complete)16
037a8b7f
CR
21611b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21612g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 21613(:)g(:)g(:)31 b Fb(150)150 3378 y Fe(compopt)18 b Fc(:)d(:)e(:)g(:)h(:)
c302751c 21614f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
037a8b7f 21615(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33
e2520247 21616b Fb(153)150 3465 y Fe(continue)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
c302751c 21617(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 21618g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
e2520247 21619Fb(50)146 3699 y Fs(D)150 3816 y Fe(declare)22 b Fc(:)13
037a8b7f
CR
21620b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21621(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 21622g(:)g(:)g(:)35 b Fb(59)150 3903 y Fe(dirs)9 b Fc(:)14
e59452c7
CR
21623b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21624(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 21625h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(105)150 3990 y Fe(disown)e
e59452c7
CR
21626Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21627(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 21628g(:)g(:)g(:)g(:)g(:)36 b Fb(120)146 4225 y Fs(E)150 4341
e59452c7
CR
21629y Fe(echo)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21630(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21631g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b
e2520247 21632Fb(60)150 4428 y Fe(enable)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)
e59452c7
CR
21633h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21634(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
e2520247 21635b Fb(61)150 4515 y Fe(eval)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7
CR
21636(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21637h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 21638b Fb(50)150 4603 y Fe(exec)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21639(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21640h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 21641b Fb(51)150 4690 y Fe(exit)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21642(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21643h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 21644b Fb(51)150 4777 y Fe(export)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g
037a8b7f
CR
21645(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21646g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
e2520247
CR
21647b Fb(51)146 5023 y Fs(F)150 5139 y Fe(false)9 b Fc(:)14
21648b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21649(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21650g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(51)150 5227 y Fe(fc)14
21651b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
037a8b7f 21652g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247
CR
21653(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29 b Fb(157)150
216545314 y Fe(fg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21655g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21656(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29
21657b Fb(118)2021 871 y Fs(G)2025 988 y Fe(getopts)22 b Fc(:)13
21658b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 21659(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247
CR
21660h(:)f(:)g(:)35 b Fb(51)2021 1250 y Fs(H)2025 1369 y Fe(hash)11
21661b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21662g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21663(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(52)2025 1457
21664y Fe(help)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21665(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21666g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b
21667Fb(62)2025 1544 y Fe(history)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
21668g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21669(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(157)2021
216701806 y Fs(J)2025 1924 y Fe(jobs)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
e59452c7
CR
21671(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21672g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
e2520247
CR
21673b Fb(118)2021 2186 y Fs(K)2025 2303 y Fe(kill)9 b Fc(:)14
21674b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21675(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
21676g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(119)2021 2554 y Fs(L)2025
216772672 y Fe(let)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21678(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21679g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
21680b Fb(62)2025 2760 y Fe(local)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21681(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21682g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
21683b Fb(62)2025 2848 y Fe(logout)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
21684(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21685h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
21686b Fb(63)2021 3110 y Fs(M)2025 3227 y Fe(mapfile)h Fc(:)13
21687b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21688(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21689h(:)f(:)g(:)35 b Fb(63)2021 3489 y Fs(P)2025 3608 y Fe(popd)9
21690b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21691(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21692g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(105)2025 3696
21693y Fe(printf)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21694(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21695g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(63)2025
216963784 y Fe(pushd)6 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21697(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21698g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b
21699Fb(105)2025 3871 y Fe(pwd)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f
CR
21700(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
21701f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e2520247 21702b Fb(52)2021 4133 y Fs(R)2025 4251 y Fe(read)11 b Fc(:)j(:)f(:)g(:)g(:)
c302751c
CR
21703g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21704(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21705g(:)g(:)g(:)26 b Fb(64)2025 4339 y Fe(readarray)15 b
037a8b7f
CR
21706Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21707(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 21708g(:)g(:)30 b Fb(66)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g
037a8b7f
CR
21709(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21710h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
e2520247 21711b Fb(53)2025 4515 y Fe(return)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21712(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21713h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
e2520247 21714b Fb(53)2021 4765 y Fs(S)2025 4884 y Fe(set)14 b Fc(:)f(:)g(:)h(:)f(:)g
037a8b7f
CR
21715(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21716g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 21717(:)g(:)h(:)f(:)28 b Fb(68)2025 4972 y Fe(shift)9 b Fc(:)14
037a8b7f
CR
21718b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21719(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21720g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(53)2025 5060 y Fe(shopt)9
037a8b7f 21721b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
c302751c 21722(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 21723g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(72)2025 5148
037a8b7f
CR
21724y Fe(source)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21725(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21726g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(66)2025
037a8b7f
CR
217275235 y Fe(suspend)d Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21728(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247
CR
21729f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(120)p eop end
21730%%Page: 187 193
21731TeXDict begin 187 192 bop 150 -116 a Fu(App)s(endix)29
21732b(D:)i(Indexes)2623 b(187)146 294 y Fs(T)150 410 y Fe(test)11
037a8b7f 21733b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
6e51e0d0 21734g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 21735(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(53)150 497
037a8b7f
CR
21736y Fe(times)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21737g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 21738(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(55)150
037a8b7f
CR
21739584 y Fe(trap)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21740(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21741g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 21742b Fb(55)150 671 y Fe(true)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21743(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21744h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247
CR
21745b Fb(56)150 758 y Fe(type)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21746(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
21747h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
21748b Fb(66)150 846 y Fe(typeset)d Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f
CR
21749g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21750(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e2520247 21751b Fb(67)146 1090 y Fs(U)150 1206 y Fe(ulimit)6 b Fc(:)15
037a8b7f
CR
21752b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21753(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21754g(:)g(:)g(:)h(:)f(:)20 b Fb(67)150 1293 y Fe(umask)9
037a8b7f
CR
21755b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21756(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21757g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(56)150 1380 y
037a8b7f
CR
21758Fe(unalias)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21759(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21760g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(68)150 1467 y
037a8b7f
CR
21761Fe(unset)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21762(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247
CR
21763g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(56)2021
21764294 y Fs(W)2025 434 y Fe(wait)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f
c302751c 21765(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 21766g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
e2520247 21767b Fb(119)150 2167 y Fs(D.2)68 b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h
e59452c7
CR
21768(W)-11 b(ords)146 2704 y(!)150 2820 y Fe(!)19 b Fc(:)13
21769b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21770(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21771f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(10)146
0fcb3344 217723056 y Fs([)150 3172 y Fe([[)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
037a8b7f
CR
21773g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21774(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 21775g(:)31 b Fb(14)146 3414 y Fs(])150 3530 y Fe(]])16 b
037a8b7f
CR
21776Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21777(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 21778g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(14)146
0fcb3344 217793770 y Fa({)150 3886 y Fe({)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
c302751c 21780(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21781g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e59452c7 21782(:)g(:)g(:)33 b Fb(17)146 4125 y Fa(})150 4241 y Fe(})19
0fcb3344
CR
21783b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21784(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21785g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
e59452c7 21786Fb(17)146 4475 y Fs(C)150 4591 y Fe(case)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
0fcb3344 21787g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
6e51e0d0 21788(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21789g(:)h(:)25 b Fb(13)146 4825 y Fs(D)150 4941 y Fe(do)16
0fcb3344
CR
21790b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21791g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 21792(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(11)150
0fcb3344
CR
217935028 y Fe(done)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21794(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21795g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e59452c7 21796b Fb(11)146 5261 y Fs(E)150 5377 y Fe(elif)11 b Fc(:)j(:)f(:)g(:)h(:)f
0fcb3344
CR
21797(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21798g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e59452c7 21799(:)g(:)h(:)25 b Fb(12)150 5465 y Fe(else)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
037a8b7f 21800g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
0fcb3344 21801(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e59452c7 21802g(:)h(:)25 b Fb(12)150 5552 y Fe(esac)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
0fcb3344
CR
21803(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21804g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 21805(:)h(:)25 b Fb(13)2021 2703 y Fs(F)2025 2836 y Fe(fi)16
0fcb3344 21806b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
037a8b7f 21807f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 21808(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)31 b Fb(12)2025
0fcb3344
CR
218092928 y Fe(for)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21810(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21811g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e59452c7 21812b Fb(12)2025 3015 y Fe(function)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
21813(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21814g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e59452c7 21815Fb(19)2021 3359 y Fs(I)2025 3491 y Fe(if)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)
0fcb3344
CR
21816g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
21817(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e59452c7 21818g(:)g(:)g(:)g(:)31 b Fb(12)2025 3578 y Fe(in)16 b Fc(:)e(:)f(:)g(:)g(:)
0fcb3344 21819g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
6e51e0d0 21820(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21821f(:)g(:)g(:)g(:)g(:)31 b Fb(13)2021 3921 y Fs(S)2025
0fcb3344
CR
218224048 y Fe(select)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21823(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21824g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
e59452c7 21825Fb(13)2021 4392 y Fs(T)2025 4524 y Fe(then)11 b Fc(:)j(:)f(:)g(:)g(:)g
0fcb3344
CR
21826(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21827g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7
CR
21828(:)g(:)g(:)26 b Fb(12)2025 4611 y Fe(time)11 b Fc(:)j(:)f(:)g(:)g(:)g
21829(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21830g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21831(:)g(:)g(:)26 b Fb(10)2021 4954 y Fs(U)2025 5081 y Fe(until)9
21832b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21833(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21834g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(11)2021 5425
21835y Fs(W)2025 5552 y Fe(while)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
21836(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21837g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
21838b Fb(12)p eop end
e2520247
CR
21839%%Page: 188 194
21840TeXDict begin 188 193 bop 150 -116 a Fu(App)s(endix)29
21841b(D:)i(Indexes)2623 b(188)150 299 y Fs(D.3)68 b(P)l(arameter)47
6d69b625 21842b(and)d(V)-11 b(ariable)46 b(Index)146 955 y(!)150 1072
0fcb3344
CR
21843y Fe(!)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21844(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21845g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
7a8455e4 21846b Fb(24)146 1314 y Fs(#)150 1431 y Fe(#)19 b Fc(:)13
037a8b7f
CR
21847b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21848(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21849f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(23)146
6d69b625 218501676 y Fs($)150 1794 y Fe($)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
c302751c 21851(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
0fcb3344 21852g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
6d69b625 21853(:)g(:)g(:)33 b Fb(23)150 1881 y Fe($!)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
21854(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
21855g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
7a8455e4 21856(:)g(:)g(:)g(:)31 b Fb(24)150 1969 y Fe($#)16 b Fc(:)e(:)f(:)g(:)g(:)g
d7935593 21857(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
037a8b7f 21858f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
6d69b625 21859(:)g(:)g(:)g(:)g(:)31 b Fb(23)150 2057 y Fe($$)16 b Fc(:)e(:)f(:)g(:)g
d7935593 21860(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21861h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
6d69b625 21862(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(23)150 2144 y Fe($*)16
037a8b7f
CR
21863b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21864g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7 21865(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(23)150
6d69b625 218662232 y Fe($-)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
0fcb3344
CR
21867g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
21868(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31
6d69b625 21869b Fb(23)150 2320 y Fe($?)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
0fcb3344
CR
21870g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
21871(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
6d69b625 2187231 b Fb(23)150 2407 y Fe($@)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344
CR
21873(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21874g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
6d69b625 21875(:)31 b Fb(23)150 2495 y Fe($_)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
21876(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21877g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 21878(:)g(:)31 b Fb(80)150 2582 y Fe($0)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h
0fcb3344
CR
21879(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21880g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
7a8455e4 21881(:)g(:)g(:)31 b Fb(24)146 2834 y Fs(*)150 2950 y Fe(*)19
037a8b7f 21882b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
d7935593 21883(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
037a8b7f 21884g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
6d69b625 21885Fb(23)146 3193 y Fs({)150 3310 y Fe(-)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)
037a8b7f
CR
21886g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21887(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
6d69b625 21888g(:)h(:)f(:)g(:)g(:)33 b Fb(23)146 3553 y Fs(?)150 3670
0fcb3344 21889y Fe(?)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
037a8b7f
CR
21890(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
21891g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
6d69b625 21892b Fb(23)146 3912 y Fs(@)150 4029 y Fe(@)19 b Fc(:)13
037a8b7f 21893b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
d7935593 21894(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e59452c7 21895f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(23)p
6d69b625 21896156 4272 41 6 v 150 4389 a Fe(_)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
0fcb3344
CR
21897(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
21898g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 21899(:)f(:)g(:)g(:)33 b Fb(80)146 4631 y Fs(0)150 4748 y
0fcb3344 21900Fe(0)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
037a8b7f 21901(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
0fcb3344 21902g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
7a8455e4 21903b Fb(24)146 4991 y Fs(A)150 5108 y Fe(active-region-end-color)12
6d69b625 21904b Fc(:)18 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 21905(:)g(:)g(:)g(:)h(:)26 b Fb(125)150 5196 y Fe(active-region-start-color)
6d69b625 219067 b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 21907g(:)g(:)h(:)21 b Fb(125)150 5283 y Fe(auto_resume)8 b
0fcb3344
CR
21908Fc(:)16 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21909(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 2191023 b Fb(120)2021 954 y Fs(B)2025 1074 y Fe(BASH)11 b
0fcb3344
CR
21911Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21912(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 21913g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(81)2025 1163
0fcb3344
CR
21914y Fe(BASH_ALIASES)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21915(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21916g(:)g(:)g(:)g(:)h(:)22 b Fb(81)2025 1251 y Fe(BASH_ARGC)15
0fcb3344
CR
21917b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
21918g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 21919(:)g(:)g(:)30 b Fb(81)2025 1340 y Fe(BASH_ARGV)15 b Fc(:)g(:)f(:)f(:)g
8a0829e9 21920(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
0fcb3344 21921g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e2520247 21922b Fb(81)2025 1429 y Fe(BASH_ARGV0)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
7e92fb35 21923(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21924g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(82)2025
7e92fb35
CR
219251517 y Fe(BASH_CMDS)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21926(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21927g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(82)2025 1606
7e92fb35
CR
21928y Fe(BASH_COMMAND)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21929(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21930g(:)g(:)g(:)g(:)h(:)22 b Fb(82)2025 1695 y Fe(BASH_COMPAT)10
037a8b7f
CR
21931b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21932(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21933g(:)25 b Fb(82)2025 1783 y Fe(BASH_ENV)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g
037a8b7f
CR
21934(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
21935f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
e2520247 21936b Fb(82)2025 1872 y Fe(BASH_EXECUTION_STRING)24 b Fc(:)13
037a8b7f 21937b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 21938(:)g(:)g(:)g(:)g(:)34 b Fb(82)2025 1960 y Fe(BASH_LINENO)10
037a8b7f
CR
21939b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21940(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21941g(:)25 b Fb(82)2025 2049 y Fe(BASH_LOADABLES_PATH)7 b
037a8b7f 21942Fc(:)17 b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 21943(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(83)2025
7e92fb35 219442138 y Fe(BASH_REMATCH)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
bce12dd7 21945h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 21946(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(83)2025 2226 y Fe(BASH_SOURCE)10
037a8b7f
CR
21947b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21948(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21949g(:)25 b Fb(83)2025 2315 y Fe(BASH_SUBSHELL)g Fc(:)13
037a8b7f
CR
21950b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
21951(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 21952b Fb(83)2025 2403 y Fe(BASH_VERSINFO)25 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
037a8b7f 21953(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21954g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(83)2025 2492
037a8b7f
CR
21955y Fe(BASH_VERSION)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
21956(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21957g(:)g(:)g(:)g(:)h(:)22 b Fb(83)2025 2581 y Fe(BASH_XTRACEFD)j
037a8b7f
CR
21958Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
21959(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 21960b Fb(83)2025 2669 y Fe(BASHOPTS)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
037a8b7f
CR
21961(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21962g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e2520247 21963Fb(81)2025 2758 y Fe(BASHPID)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21964(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 21965g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
e2520247 21966b Fb(81)2025 2847 y Fe(bell-style)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f
037a8b7f 21967(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21968g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(125)2025
7e92fb35 219692935 y Fe(bind-tty-special-chars)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g
037a8b7f 21970(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
e2520247 21971b Fb(125)2025 3022 y Fe(blink-matching-paren)24 b Fc(:)13
037a8b7f 21972b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 21973(:)g(:)g(:)g(:)h(:)34 b Fb(126)2021 3297 y Fs(C)2025
7e92fb35 219743417 y Fe(CDPATH)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f
CR
21975(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
21976g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
e2520247 21977Fb(80)2025 3506 y Fe(CHILD_MAX)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f 21978(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 21979f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(84)2025
7e92fb35 219803595 y Fe(colored-completion-prefix)7 b Fc(:)18 b(:)13
037a8b7f 21981b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
e2520247 21982b Fb(126)2025 3683 y Fe(colored-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
037a8b7f 21983(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 21984g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(126)2025 3772 y Fe(COLUMNS)22
037a8b7f 21985b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
c302751c 21986(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 21987g(:)g(:)h(:)f(:)g(:)35 b Fb(84)2025 3860 y Fe(comment-begin)23
037a8b7f
CR
21988b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
21989(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
e2520247 21990b Fb(126)2025 3949 y Fe(COMP_CWORD)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
037a8b7f 21991(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21992g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(84)2025
7e92fb35 219934038 y Fe(COMP_KEY)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 21994(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 21995g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(84)2025 4126
037a8b7f
CR
21996y Fe(COMP_LINE)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
21997(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 21998g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(84)2025 4215 y Fe(COMP_POINT)13
037a8b7f
CR
21999b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22000g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22001(:)h(:)27 b Fb(84)2025 4303 y Fe(COMP_TYPE)15 b Fc(:)g(:)f(:)f(:)g(:)g
037a8b7f
CR
22002(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22003g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e2520247 22004b Fb(84)2025 4392 y Fe(COMP_WORDBREAKS)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g
037a8b7f 22005(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22006h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(84)2025 4481 y Fe(COMP_WORDS)13
037a8b7f
CR
22007b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22008g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22009(:)h(:)27 b Fb(84)2025 4569 y Fe(completion-display-width)9
037a8b7f 22010b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22011(:)h(:)f(:)g(:)24 b Fb(126)2025 4658 y Fe(completion-ignore-case)14
037a8b7f 22012b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22013(:)g(:)g(:)h(:)f(:)29 b Fb(126)2025 4747 y Fe(completion-map-case)d
037a8b7f 22014Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22015(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(126)2025 4835
037a8b7f 22016y Fe(completion-prefix-display-leng)q(th)29 b Fc(:)13
e2520247 22017b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(126)2025 4924
037a8b7f
CR
22018y Fe(completion-query-items)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
22019(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
e2520247 22020b Fb(126)2025 5012 y Fe(COMPREPLY)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g
037a8b7f
CR
22021(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22022h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b
e2520247 22023Fb(85)2025 5101 y Fe(convert-meta)25 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 22024g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22025(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(127)2025 5188
037a8b7f
CR
22026y Fe(COPROC)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22027(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22028g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(85)p
0fcb3344 22029eop end
e2520247
CR
22030%%Page: 189 195
22031TeXDict begin 189 194 bop 150 -116 a Fu(App)s(endix)29
22032b(D:)i(Indexes)2623 b(189)146 294 y Fs(D)150 414 y Fe(DIRSTACK)18
0fcb3344
CR
22033b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22034g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22035(:)g(:)h(:)f(:)32 b Fb(85)150 501 y Fe(disable-completion)7
0fcb3344 22036b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22037(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(127)146
d052bd6f 22038772 y Fs(E)150 892 y Fe(echo-control-characters)12 b
0fcb3344 22039Fc(:)18 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22040g(:)g(:)g(:)h(:)26 b Fb(127)150 981 y Fe(editing-mode)f
0fcb3344
CR
22041Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22042(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
e2520247 22043b Fb(127)150 1069 y Fe(emacs-mode-string)10 b Fc(:)17
0fcb3344 22044b(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22045(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25 b Fb(127)150 1158
0fcb3344
CR
22046y Fe(EMACS)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22047g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22048(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(85)150
d052bd6f 220491246 y Fe(enable-active-region)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 22050(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
e2520247 22051b Fb(127)150 1335 y Fe(enable-bracketed-paste)14 b Fc(:)k(:)c(:)f(:)g
e59452c7 22052(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
e2520247 22053b Fb(128)150 1423 y Fe(enable-keypad)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
037a8b7f 22054(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22055g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(128)150 1511 y Fe(ENV)14
037a8b7f
CR
22056b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22057h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22058(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(85)150
d052bd6f 220591600 y Fe(EPOCHREALTIME)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f 22060(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22061g(:)g(:)g(:)g(:)37 b Fb(85)150 1688 y Fe(EPOCHSECONDS)8
7e92fb35
CR
22062b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22063(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 2206422 b Fb(85)150 1777 y Fe(EUID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g
7e92fb35
CR
22065(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22066g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 22067b Fb(85)150 1865 y Fe(EXECIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 22068g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22069(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(85)150
d052bd6f 220701953 y Fe(expand-tilde)e Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
037a8b7f 22071(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22072g(:)g(:)g(:)h(:)37 b Fb(128)146 2224 y Fs(F)150 2344
037a8b7f
CR
22073y Fe(FCEDIT)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22074(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22075g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(86)150
d052bd6f 220762432 y Fe(FIGNORE)i Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
037a8b7f 22077(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22078g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(86)150
d052bd6f 220792521 y Fe(FUNCNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22080(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22081h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(86)150 2608
037a8b7f
CR
22082y Fe(FUNCNEST)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22083(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22084f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(86)146 2868 y
d052bd6f 22085Fs(G)150 2988 y Fe(GLOBIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22086(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22087h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(86)150
d052bd6f
CR
220883076 y Fe(GLOBSORT)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22089(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22090h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(86)150 3164
d052bd6f
CR
22091y Fe(GROUPS)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22092(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22093g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(87)146
d052bd6f
CR
220943423 y Fs(H)150 3543 y Fe(histchars)15 b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g
22095(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22096g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30 b
e2520247 22097Fb(87)150 3632 y Fe(HISTCMD)22 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
d052bd6f
CR
22098(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22099h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
e2520247 22100b Fb(87)150 3720 y Fe(HISTCONTROL)10 b Fc(:)16 b(:)d(:)g(:)g(:)h(:)f(:)
bce12dd7 22101g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22102(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(87)150
d052bd6f 221033809 y Fe(HISTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22104(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22105h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(87)150 3897
037a8b7f 22106y Fe(HISTFILESIZE)8 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
bce12dd7 22107(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22108g(:)g(:)h(:)f(:)g(:)22 b Fb(87)150 3986 y Fe(HISTIGNORE)13
037a8b7f
CR
22109b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22110g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22111(:)g(:)27 b Fb(87)150 4074 y Fe(history-preserve-point)14
037a8b7f 22112b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22113h(:)f(:)g(:)g(:)29 b Fb(128)150 4163 y Fe(history-size)c
037a8b7f
CR
22114Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22115(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
e2520247 22116b Fb(128)150 4251 y Fe(HISTSIZE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
e05be32d 22117(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
037a8b7f 22118g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
e2520247 22119Fb(88)150 4340 y Fe(HISTTIMEFORMAT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
220537f2 22120(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22121g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(88)150 4428 y Fe(HOME)11
037a8b7f
CR
22122b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22123g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22124(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(80)150 4517
037a8b7f 22125y Fe(horizontal-scroll-mode)14 b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22126(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(128)150
d052bd6f 221274605 y Fe(HOSTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22128(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22129h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(88)150 4693
037a8b7f
CR
22130y Fe(HOSTNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22131(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22132f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(88)150 4781 y
037a8b7f
CR
22133Fe(HOSTTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22134(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22135g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(88)2021 294 y Fs(I)2025
b52e30b8 22136420 y Fe(IFS)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
037a8b7f 22137g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
0fcb3344 22138(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
e2520247 22139b Fb(80)2025 510 y Fe(IGNOREEOF)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
0fcb3344 22140(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22141f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(88)2025
b52e30b8 22142600 y Fe(input-meta)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22143(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22144h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(128)2025 691 y Fe(INPUTRC)c
0fcb3344
CR
22145Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22146(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22147g(:)g(:)h(:)f(:)g(:)35 b Fb(88)2025 781 y Fe(INSIDE_EMACS)8
b52e30b8
CR
22148b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22149(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 2215022 b Fb(88)2025 868 y Fe(isearch-terminators)k Fc(:)13
b52e30b8 22151b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22152(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(129)2021 1167 y Fs(K)2025
b52e30b8
CR
221531290 y Fe(keymap)22 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22154(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22155g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(129)2021
e59452c7
CR
221561601 y Fs(L)2025 1727 y Fe(LANG)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
22157(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22158h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35
e2520247 22159b Fb(8,)26 b(89)2025 1817 y Fe(LC_ALL)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
e59452c7
CR
22160(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22161g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
e2520247 22162b Fb(89)2025 1907 y Fe(LC_COLLATE)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
b52e30b8 22163(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22164g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(89)2025
b52e30b8
CR
221651998 y Fe(LC_CTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22166(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22167g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(89)2025 2088
b52e30b8
CR
22168y Fe(LC_MESSAGES)21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22169(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22170g(:)g(:)g(:)34 b Fb(8,)26 b(89)2025 2178 y Fe(LC_NUMERIC)13
037a8b7f
CR
22171b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22172g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22173(:)h(:)27 b Fb(89)2025 2269 y Fe(LC_TIME)22 b Fc(:)13
b52e30b8 22174b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
8a0829e9 22175(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22176h(:)f(:)g(:)35 b Fb(89)2025 2359 y Fe(LINENO)6 b Fc(:)14
b52e30b8
CR
22177b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22178(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22179g(:)g(:)g(:)g(:)g(:)21 b Fb(89)2025 2446 y Fe(LINES)9
b52e30b8
CR
22180b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22181(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22182g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(89)2021 2746
b52e30b8 22183y Fs(M)2025 2872 y Fe(MACHTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
0fcb3344
CR
22184(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22185g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
e2520247 22186Fb(89)2025 2962 y Fe(MAIL)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
0fcb3344 22187(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
b52e30b8 22188g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
e2520247 22189b Fb(80)2025 3052 y Fe(MAILCHECK)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)
b52e30b8 22190g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22191(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(89)2025
b52e30b8
CR
221923143 y Fe(MAILPATH)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22193(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22194g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(80)2025 3233
b52e30b8
CR
22195y Fe(MAPFILE)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22196(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22197g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(89)2025 3323
b52e30b8
CR
22198y Fe(mark-modified-lines)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22199(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 22200b Fb(129)2025 3414 y Fe(mark-symlinked-directories)27
b52e30b8 22201b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 2220236 b Fb(129)2025 3504 y Fe(match-hidden-files)7 b Fc(:)17
b52e30b8 22203b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22204(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(129)2025 3594
b52e30b8 22205y Fe(menu-complete-display-prefix)17 b Fc(:)h(:)13 b(:)h(:)f(:)g(:)g(:)
e2520247 22206g(:)g(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(130)2025 3681 y Fe(meta-flag)13
b52e30b8
CR
22207b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22208g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22209(:)f(:)28 b Fb(128)2021 3992 y Fs(O)2025 4118 y Fe(OLDPWD)6
b52e30b8
CR
22210b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22211(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22212h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(89)2025 4208 y Fe(OPTARG)6
b52e30b8
CR
22213b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22214(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22215h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(80)2025 4299 y Fe(OPTERR)6
b52e30b8
CR
22216b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22217(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22218h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(89)2025 4389 y Fe(OPTIND)6
b52e30b8
CR
22219b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22220(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22221h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(80)2025 4480 y Fe(OSTYPE)6
b52e30b8
CR
22222b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22223(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22224h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(89)2025 4567 y Fe(output-meta)8
b52e30b8
CR
22225b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22226(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247
CR
2222723 b Fb(130)p eop end
22228%%Page: 190 196
22229TeXDict begin 190 195 bop 150 -116 a Fu(App)s(endix)29
22230b(D:)i(Indexes)2623 b(190)146 294 y Fs(P)150 410 y Fe(page-completions)
0fcb3344 2223113 b Fc(:)j(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22232(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(130)150
0fcb3344
CR
22233497 y Fe(PATH)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22234(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22235g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
e2520247 22236b Fb(80)150 584 y Fe(PIPESTATUS)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22237(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22238h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(89)150
0fcb3344
CR
22239671 y Fe(POSIXLY_CORRECT)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22240g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22241(:)g(:)g(:)32 b Fb(90)150 758 y Fe(PPID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
0fcb3344
CR
22242(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22243g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22244(:)h(:)25 b Fb(90)150 846 y Fe(PROMPT_COMMAND)e Fc(:)13
9c10def1
CR
22245b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22246(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
e2520247 22247b Fb(90)150 933 y Fe(PROMPT_DIRTRIM)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
9c10def1 22248(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22249g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(90)150 1020 y Fe(PS0)14
9c10def1
CR
22250b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22251h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22252(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(90)150
9c10def1
CR
222531107 y Fe(PS1)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22254(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22255g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e2520247 22256b Fb(80)150 1194 y Fe(PS2)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
22257(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22258g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e2520247 22259b Fb(80)150 1281 y Fe(PS3)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
22260(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22261g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e2520247 22262b Fb(90)150 1369 y Fe(PS4)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
22263(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22264g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e2520247 22265b Fb(90)150 1456 y Fe(PWD)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
9c10def1
CR
22266(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22267g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
e2520247 22268b Fb(90)146 1689 y Fs(R)150 1804 y Fe(RANDOM)6 b Fc(:)15
9c10def1
CR
22269b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22270(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22271g(:)g(:)g(:)h(:)f(:)20 b Fb(90)150 1892 y Fe(READLINE_ARGUMENT)12
e59452c7 22272b Fc(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22273(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(90)150
e59452c7
CR
222741979 y Fe(READLINE_LINE)f Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22275(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22276g(:)g(:)g(:)g(:)37 b Fb(90)150 2066 y Fe(READLINE_MARK)25
037a8b7f
CR
22277b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22278(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
e2520247 22279b Fb(90)150 2153 y Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
e59452c7 22280(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22281g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(91)150 2240 y Fe(REPLY)9
e59452c7
CR
22282b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22283(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22284g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(91)150 2327 y
e59452c7
CR
22285Fe(revert-all-at-newline)17 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22286(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32
e2520247 22287b Fb(130)146 2560 y Fs(S)150 2676 y Fe(search-ignore-case)7
d052bd6f 22288b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22289(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(130)150
d052bd6f
CR
222902763 y Fe(SECONDS)g Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22291(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22292g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(91)150
d052bd6f
CR
222932851 y Fe(SHELL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22294(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22295h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
e2520247 22296b Fb(91)150 2938 y Fe(SHELLOPTS)15 b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h
d052bd6f 22297(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22298g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30 b Fb(91)150
d052bd6f
CR
222993025 y Fe(SHLVL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22300(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22301h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
e2520247 22302b Fb(91)150 3112 y Fe(show-all-if-ambiguous)17 b Fc(:)h(:)13
d052bd6f 22303b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22304(:)g(:)g(:)32 b Fb(130)150 3199 y Fe(show-all-if-unmodified)14
d052bd6f 22305b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22306h(:)f(:)g(:)g(:)29 b Fb(130)2025 260 y Fe(show-mode-in-prompt)d
d052bd6f 22307Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22308(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(130)2025 351 y
d052bd6f
CR
22309Fe(skip-completed-text)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22310(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 22311b Fb(131)2025 438 y Fe(SRANDOM)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
d052bd6f
CR
22312(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22313g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
e2520247 22314b Fb(91)2021 758 y Fs(T)2025 887 y Fe(TEXTDOMAIN)15 b
d052bd6f
CR
22315Fc(:)g(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22316(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22317f(:)g(:)30 b Fb(8)2025 978 y Fe(TEXTDOMAINDIR)7 b Fc(:)16
22318b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22319(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23
22320b Fb(8)2025 1069 y Fe(TIMEFORMAT)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)
22321g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22322(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(91)2025
d052bd6f 223231161 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
52e46969
CR
22324(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22325g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
e2520247 22326b Fb(92)2025 1248 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
52e46969
CR
22327(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22328h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
e2520247 22329b Fb(92)2021 1567 y Fs(U)2025 1692 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g
9f178efb 22330(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
037a8b7f 22331g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22332(:)g(:)h(:)f(:)28 b Fb(92)2021 2012 y Fs(V)2025 2140
037a8b7f
CR
22333y Fe(vi-cmd-mode-string)7 b Fc(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22334(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
e2520247 22335b Fb(131)2025 2232 y Fe(vi-ins-mode-string)7 b Fc(:)17
037a8b7f 22336b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22337(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(131)2025 2319
037a8b7f
CR
22338y Fe(visible-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22339(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22340f(:)g(:)35 b Fb(131)150 3838 y Fs(D.4)68 b(F)-11 b(unction)44
d052bd6f 22341b(Index)146 4324 y(A)150 4441 y Fe(abort)27 b(\(C-g\))15
037a8b7f
CR
22342b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22343g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
e2520247 22344b Fb(145)150 4529 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12
037a8b7f 22345b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)27
e2520247 22346b Fb(138)150 4616 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14
037a8b7f 22347b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22348(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(147)146 4872 y Fs(B)150
d052bd6f 223494989 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)
037a8b7f 22350g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22351(:)26 b Fb(137)150 5077 y Fe(backward-delete-char)k(\(Rubout\))22
037a8b7f 22352b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
e2520247 22353b Fb(140)150 5165 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e
037a8b7f 22354Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
e2520247 22355Fb(141)150 5252 y Fe(backward-kill-word)30 b(\(M-DEL\))11
037a8b7f 22356b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 2235726 b Fb(141)150 5340 y Fe(backward-word)j(\(M-b\))12
037a8b7f 22358b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22359f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(137)2025 4294
e59452c7 22360y Fe(beginning-of-history)k(\(M-<\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
e2520247 22361(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(138)2025
d052bd6f 223624383 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)
037a8b7f 22363f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
e2520247 22364b Fb(137)2025 4471 y Fe(bracketed-paste-begin)c(\(\))16
0fcb3344 22365b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22366g(:)g(:)31 b Fb(140)2021 4768 y Fs(C)2025 4891 y Fe
0fcb3344 22367(call-last-kbd-macro)f(\(C-x)c(e\))15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g
e2520247 22368(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(145)2025 4981
0fcb3344
CR
22369y Fe(capitalize-word)f(\(M-c\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
22370h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
e2520247 22371b Fb(141)2025 5071 y Fe(character-search)29 b(\(C-]\))22
967625cd 22372b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22373(:)h(:)f(:)g(:)g(:)36 b Fb(145)2025 5161 y Fe
0fcb3344 22374(character-search-backward)31 b(\(M-C-]\))10 b Fc(:)15
e2520247 22375b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(145)2025 5250
d37a4722
CR
22376y Fe(clear-display)j(\(M-C-l\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)
22377h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
e2520247 22378b Fb(138)2025 5340 y Fe(clear-screen)28 b(\(C-l\))14
d37a4722 22379b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22380f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(138)p eop
e59452c7 22381end
e2520247
CR
22382%%Page: 191 197
22383TeXDict begin 191 196 bop 150 -116 a Fu(App)s(endix)29
22384b(D:)i(Indexes)2623 b(191)150 264 y Fe(complete)27 b(\(TAB\))7
e59452c7
CR
22385b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22386(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
e2520247 22387b Fb(143)150 352 y Fe(complete-command)29 b(\(M-!\))23
e59452c7 22388b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22389(:)f(:)g(:)g(:)g(:)36 b Fb(144)150 440 y Fe(complete-filename)29
d37a4722 22390b(\(M-/\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22391g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(143)150 528 y Fe(complete-hostname)
d37a4722 22392c(\(M-@\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22393g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(144)150 616 y Fe
10db6565 22394(complete-into-braces)d(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22395(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(144)150 704
10db6565
CR
22396y Fe(complete-username)j(\(M-~\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
22397(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
e2520247 22398b Fb(144)150 792 y Fe(complete-variable)c(\(M-$\))20
0fcb3344 22399b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22400(:)g(:)h(:)f(:)33 b Fb(144)150 880 y Fe(copy-backward-word)d(\(\))7
037a8b7f 22401b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22402(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(142)150 968 y Fe(copy-forward-word)
0fcb3344 2240329 b(\(\))9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22404(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(142)150
e59452c7
CR
224051056 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13
22406b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22407(:)g(:)g(:)36 b Fb(142)146 1320 y Fs(D)150 1438 y Fe(dabbrev-expand)29
0fcb3344
CR
22408b(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22409(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
e2520247 22410b Fb(144)150 1527 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
0fcb3344 22411f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22412(:)g(:)g(:)g(:)g(:)32 b Fb(140)150 1615 y Fe(delete-char-or-list)e
0fcb3344 22413(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22414g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(143)150 1703 y Fe
0fcb3344 22415(delete-horizontal-space)31 b(\(\))11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22416(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(142)150
e59452c7 224171791 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
0fcb3344 22418Fe(,)f(...)g Fd(M--)p Fe(\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 2241926 b Fb(142)150 1879 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
0fcb3344 22420Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
e2520247 22421Fb(147)150 1958 y Fe(do-lowercase-version)30 b(\(M-A,)227
e59452c7 224222046 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
0fcb3344 22423(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22424g(:)g(:)g(:)g(:)g(:)25 b Fb(145)150 2134 y Fe(downcase-word)k(\(M-l\))
0fcb3344 2242512 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22426(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(141)150 2222
0fcb3344
CR
22427y Fe(dump-functions)j(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22428(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 2242932 b Fb(146)150 2310 y Fe(dump-macros)c(\(\))7 b Fc(:)14
0fcb3344
CR
22430b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22431(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
e2520247 22432b Fb(146)150 2398 y Fe(dump-variables)29 b(\(\))17 b
0fcb3344 22433Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22434(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(146)150
e59452c7 224352485 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
e2520247 22436(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(144)146 2749 y Fs(E)150
e59452c7 224372868 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
e2520247 22438b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(147)150 2956
7e92fb35
CR
22439y Fe(end-kbd-macro)g(\(C-x)d(\)\))13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f(:)g
22440(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
e2520247 22441b Fb(144)150 3044 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
0fcb3344 22442b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22443(:)g(:)35 b Fb(140)150 3132 y Fe(end-of-history)29 b(\(M->\))9
037a8b7f 22444b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22445(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(138)150 3220 y
037a8b7f
CR
22446Fe(end-of-line)k(\(C-e\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22447g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
e2520247 22448b Fb(137)150 3308 y Fe(exchange-point-and-mark)f(\(C-x)26
037a8b7f 22449b(C-x\))17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)32
e2520247 22450b Fb(145)146 3571 y Fs(F)150 3690 y Fe(fetch-history)d(\(\))19
e59452c7 22451b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22452(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(140)150
e59452c7 224533778 y Fe(forward-backward-delete-char)e(\(\))15 b Fc(:)f(:)f(:)g(:)g
e2520247 22454(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(140)150 3867 y Fe(forward-char)e
e59452c7
CR
22455(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22456h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b
e2520247 22457Fb(137)150 3955 y Fe(forward-search-history)i(\(C-s\))24
e59452c7 22458b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
e2520247 22459b Fb(138)150 4042 y Fe(forward-word)28 b(\(M-f\))14 b
e59452c7 22460Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22461(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(137)146 4295
e59452c7 22462y Fs(G)150 4414 y Fe(glob-complete-word)h(\(M-g\))16
037a8b7f 22463b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22464g(:)g(:)31 b Fb(146)150 4502 y Fe(glob-expand-word)e(\(C-x)e(*\))c
037a8b7f 22465Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22466(:)g(:)g(:)38 b Fb(146)150 4590 y Fe(glob-list-expansions)30
037a8b7f 22467b(\(C-x)d(g\))13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22468(:)g(:)h(:)27 b Fb(146)2021 294 y Fs(H)2025 422 y Fe
0fcb3344 22469(history-and-alias-expand-line)32 b(\(\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22470g(:)g(:)g(:)g(:)28 b Fb(147)2025 513 y Fe(history-expand-line)i
0fcb3344 22471(\(M-^\))13 b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22472g(:)g(:)g(:)h(:)28 b Fb(147)2025 604 y Fe(history-search-backward)j
0fcb3344 22473(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22474(:)g(:)g(:)26 b Fb(139)2025 695 y Fe(history-search-forward)k(\(\))13
0fcb3344 22475b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247
CR
22476h(:)28 b Fb(139)2025 786 y Fe(history-substring-search-backw)q(ard)k
22477(\(\))20 b Fc(:)13 b(:)g(:)g(:)g(:)35 b Fb(139)2025 874
7e92fb35 22478y Fe(history-substring-search-forwa)q(rd)d(\(\))22 b
e2520247 22479Fc(:)13 b(:)h(:)f(:)g(:)g(:)37 b Fb(139)2021 1200 y Fs(I)2025
124d67cd 224801329 y Fe(insert-comment)29 b(\(M-#\))9 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f
0fcb3344 22481(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 2248224 b Fb(146)2025 1420 y Fe(insert-completions)29 b(\(M-*\))16
7e92fb35 22483b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22484g(:)g(:)31 b Fb(143)2025 1507 y Fe(insert-last-argument)f(\(M-.)c(or)g
7e92fb35 22485(M-_\))7 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
e2520247 22486b Fb(147)2021 1834 y Fs(K)2025 1962 y Fe(kill-line)27
7e92fb35
CR
22487b(\(C-k\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22488(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 22489b Fb(141)2025 2053 y Fe(kill-region)28 b(\(\))7 b Fc(:)14
7e92fb35
CR
22490b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22491(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
e2520247 22492b Fb(142)2025 2144 y Fe(kill-whole-line)29 b(\(\))14
7e92fb35 22493b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22494f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(141)2025
124d67cd 224952231 y Fe(kill-word)e(\(M-d\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
0fcb3344 22496(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22497g(:)g(:)g(:)37 b Fb(141)2021 2548 y Fs(M)2025 2676 y
0fcb3344
CR
22498Fe(magic-space)28 b(\(\))7 b Fc(:)14 b(:)f(:)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(:)
e2520247 22500g(:)g(:)h(:)f(:)22 b Fb(147)2025 2767 y Fe(menu-complete)28
0fcb3344
CR
22501b(\(\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22502(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34
e2520247 22503b Fb(143)2025 2854 y Fe(menu-complete-backward)c(\(\))13
0fcb3344 22504b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22505h(:)28 b Fb(143)2021 3181 y Fs(N)2025 3309 y Fe(next-history)g(\(C-n\))
0fcb3344 2250614 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22507(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(138)2025
124d67cd
CR
225083401 y Fe(next-screen-line)g(\(\))12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g
22509(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 2251027 b Fb(138)2025 3472 y Fe(non-incremental-forward-)2102
124d67cd
CR
225113560 y(search-history)h(\(M-n\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
22512(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 22513b Fb(139)2025 3647 y Fe(non-incremental-reverse-)2102
124d67cd
CR
225143734 y(search-history)28 b(\(M-p\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
22515(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
e2520247 22516b Fb(138)2021 4070 y Fs(O)2025 4198 y Fe(operate-and-get-next)30
124d67cd 22517b(\(C-o\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22518(:)g(:)g(:)g(:)26 b Fb(139)2025 4285 y Fe(overwrite-mode)j(\(\))17
124d67cd 22519b Fc(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22520g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(141)p
0fcb3344 22521eop end
e2520247
CR
22522%%Page: 192 198
22523TeXDict begin 192 197 bop 150 -116 a Fu(App)s(endix)29
22524b(D:)i(Indexes)2623 b(192)146 294 y Fs(P)150 411 y Fe
0fcb3344 22525(possible-command-completions)32 b(\(C-x)26 b(!\))9 b
e2520247 22526Fc(:)14 b(:)g(:)f(:)g(:)g(:)24 b Fb(144)150 499 y Fe
0fcb3344 22527(possible-completions)30 b(\(M-?\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g
e2520247 22528(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(143)150
602eae4d 22529586 y Fe(possible-filename-completions)32 b(\(C-x)27
e2520247 22530b(/\))7 b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(144)150 674
0fcb3344 22531y Fe(possible-hostname-completions)32 b(\(C-x)27 b(@\))7
e2520247 22532b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(144)150 762 y Fe
0fcb3344 22533(possible-username-completions)32 b(\(C-x)27 b(~\))7
e2520247 22534b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(144)150 849 y Fe
0fcb3344 22535(possible-variable-completions)32 b(\(C-x)27 b($\))7
e2520247 22536b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(144)150 937 y Fe(prefix-meta)28
0fcb3344
CR
22537b(\(ESC\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22538(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
e2520247 22539b Fb(145)150 1025 y Fe(previous-history)d(\(C-p\))23
0fcb3344 22540b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22541(:)f(:)g(:)g(:)g(:)36 b Fb(138)150 1112 y Fe(previous-screen-line)30
0fcb3344 22542b(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22543(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(137)150 1200 y Fe
124d67cd 22544(print-last-kbd-macro)d(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22545(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(145)146
e59452c7 225461454 y Fs(Q)150 1571 y Fe(quoted-insert)c(\(C-q)d(or)g(C-v\))8
124d67cd 22547b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22548(:)g(:)22 b Fb(140)146 1825 y Fs(R)150 1943 y Fe(re-read-init-file)29
0fcb3344 22549b(\(C-x)e(C-r\))15 b Fc(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22550(:)g(:)g(:)g(:)30 b Fb(145)150 2030 y Fe(redraw-current-line)g(\(\))22
0fcb3344 22551b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22552(:)f(:)g(:)g(:)g(:)36 b Fb(138)150 2118 y Fe(reverse-search-history)31
0fcb3344 22553b(\(C-r\))24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22554g(:)38 b Fb(138)150 2205 y Fe(revert-line)28 b(\(M-r\))17
0fcb3344 22555b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22556g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(145)146
e59452c7 225572449 y Fs(S)150 2567 y Fe(self-insert)c(\(a,)e(b,)g(A,)g(1,)h(!,)f
0fcb3344 22558(...\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
e2520247 22559b Fb(140)150 2654 y Fe(set-mark)g(\(C-@\))7 b Fc(:)15
0fcb3344 22560b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
037a8b7f 22561(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
e2520247 22562b Fb(145)150 2742 y Fe(shell-backward-kill-word)31 b(\(\))8
0fcb3344 22563b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 2256423 b Fb(142)150 2830 y Fe(shell-backward-word)30 b(\(M-C-b\))8
602eae4d 22565b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 2256623 b Fb(137)150 2917 y Fe(shell-expand-line)29 b(\(M-C-e\))13
602eae4d 22567b Fc(:)j(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22568g(:)28 b Fb(147)150 3005 y Fe(shell-forward-word)i(\(M-C-f\))11
602eae4d 22569b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 2257026 b Fb(137)150 3093 y Fe(shell-kill-word)j(\(M-C-d\))20
602eae4d 22571b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22572(:)g(:)h(:)f(:)33 b Fb(142)150 3180 y Fe(shell-transpose-words)d
602eae4d 22573(\(M-C-t\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22574(:)35 b Fb(142)2025 264 y Fe(skip-csi-sequence)29 b(\(\))9
602eae4d 22575b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22576(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(145)2025 361 y
e59452c7 22577Fe(spell-correct-word)29 b(\(C-x)e(s\))18 b Fc(:)13 b(:)g(:)h(:)f(:)g
e2520247 22578(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fb(146)2025
e59452c7
CR
22579448 y Fe(start-kbd-macro)c(\(C-x)d(\(\))8 b Fc(:)14 b(:)f(:)g(:)h(:)f
22580(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23
e2520247 22581b Fb(144)2021 891 y Fs(T)2025 1038 y Fe(tilde-expand)28
602eae4d
CR
22582b(\(M-&\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22583(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
e2520247 22584b Fb(145)2025 1135 y Fe(transpose-chars)g(\(C-t\))7 b
602eae4d 22585Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
e2520247 22586(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(140)2025 1222 y Fe(transpose-words)
602eae4d 2258729 b(\(M-t\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22588(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(141)2021
e59452c7 225891676 y Fs(U)2025 1823 y Fe(undo)k(\(C-_)h(or)f(C-x)g(C-u\))10
602eae4d 22590b Fc(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22591g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(145)2025 1920 y Fe
602eae4d
CR
22592(universal-argument)k(\(\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22593f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
e2520247 22594b Fb(143)2025 2017 y Fe(unix-filename-rubout)30 b(\(\))19
0fcb3344 22595b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22596(:)g(:)g(:)g(:)34 b Fb(142)2025 2114 y Fe(unix-line-discard)29
602eae4d 22597b(\(C-u\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22598f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(141)2025 2211 y Fe
602eae4d
CR
22599(unix-word-rubout)29 b(\(C-w\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
22600(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
e2520247 22601b Fb(142)2025 2298 y Fe(upcase-word)28 b(\(M-u\))17 b
602eae4d 22602Fc(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e2520247 22603(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(141)2021
e59452c7 226042752 y Fs(Y)2025 2899 y Fe(yank)26 b(\(C-y\))18 b Fc(:)c(:)f(:)g(:)h(:)
602eae4d
CR
22605f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22606(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
e2520247 22607b Fb(142)2025 2996 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))8
602eae4d 22608b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22609(:)h(:)22 b Fb(139)2025 3093 y Fe(yank-nth-arg)28 b(\(M-C-y\))9
602eae4d 22610b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22611(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(139)2025 3180
602eae4d 22612y Fe(yank-pop)j(\(M-y\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
037a8b7f 22613(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22614g(:)g(:)h(:)f(:)22 b Fb(142)150 3929 y Fs(D.5)68 b(Concept)45
d052bd6f 22615b(Index)146 4523 y(A)150 4645 y Fb(alias)27 b(expansion)22
7a8455e4
CR
22616b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22617(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
e2520247
CR
22618b Fb(102)150 4735 y(arithmetic)26 b(ev)l(aluation)21
22619b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22620(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(100)150 4824
22621y(arithmetic)26 b(expansion)11 b Fc(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22622(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
2262326 b Fb(35)150 4914 y(arithmetic)g(op)r(erators)18 b
22624Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22625(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(100)150 5003
22626y(arithmetic,)27 b(shell)21 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22627(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22628g(:)g(:)g(:)36 b Fb(100)150 5090 y(arra)n(ys)19 b Fc(:)13
d052bd6f 22629b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
d052bd6f 22630(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247
CR
22631g(:)g(:)g(:)g(:)34 b Fb(102)2021 4523 y Fs(B)2025 4641
22632y Fb(bac)n(kground)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22633(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22634f(:)g(:)g(:)g(:)g(:)g(:)28 b Fb(117)2025 4729 y(Bash)e(con\014guration)
2263511 b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22636(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(162)2025
226374817 y(Bash)g(installation)9 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)
22638g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22639(:)g(:)g(:)g(:)24 b Fb(162)2025 4905 y(binary)h(arithmetic)h(op)r
22640(erators)16 b Fc(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22641g(:)g(:)g(:)g(:)h(:)31 b Fb(100)2025 4993 y(bit)n(wise)26
22642b(arithmetic)h(op)r(erators)8 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
22643(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)23 b Fb(100)2025
226445081 y(Bourne)j(shell)20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22645g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22646(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Fb(5)2025 5169
22647y(brace)26 b(expansion)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22648(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22649g(:)g(:)g(:)g(:)24 b Fb(24)2025 5256 y(builtin)15 b Fc(:)e(:)g(:)g(:)g
22650(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22651g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22652(:)g(:)g(:)30 b Fb(3)p eop end
22653%%Page: 193 199
22654TeXDict begin 193 198 bop 150 -116 a Fu(App)s(endix)29
22655b(D:)i(Indexes)2623 b(193)146 294 y Fs(C)150 413 y Fb(command)26
0fcb3344
CR
22656b(editing)19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22657g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34
e2520247 22658b Fb(122)150 501 y(command)26 b(execution)12 b Fc(:)h(:)g(:)g(:)g(:)g
0fcb3344 22659(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22660g(:)h(:)f(:)g(:)g(:)26 b Fb(43)150 590 y(command)g(expansion)c
0fcb3344 22661Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22662(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(43)150
d052bd6f 22663678 y(command)26 b(history)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344 22664(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22665g(:)g(:)g(:)33 b Fb(156)150 766 y(command)26 b(searc)n(h)16
0fcb3344
CR
22666b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22667g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
e2520247 22668b Fb(43)150 855 y(command)c(substitution)21 b Fc(:)13
0fcb3344 22669b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
d052bd6f 22670(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(34)150 943 y(command)26
e59452c7
CR
22671b(timing)11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22672g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
d052bd6f 22673b Fb(10)150 1031 y(commands,)h(comp)r(ound)c Fc(:)13
d37a4722 22674b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
d052bd6f 22675(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1120 y(commands,)26
d37a4722
CR
22676b(conditional)10 b Fc(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22677f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25
d052bd6f 22678b Fb(12)150 1208 y(commands,)h(grouping)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
0fcb3344 22679(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
d052bd6f 22680g(:)g(:)g(:)29 b Fb(17)150 1296 y(commands,)d(lists)10
e59452c7
CR
22681b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22682(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)24
d052bd6f 22683b Fb(10)150 1385 y(commands,)i(lo)r(oping)e Fc(:)13 b(:)g(:)g(:)g(:)h
e59452c7 22684(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
d052bd6f 22685g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1473 y(commands,)26
e59452c7
CR
22686b(pip)r(elines)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22687(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)30
d052bd6f 22688b Fb(10)150 1561 y(commands,)c(shell)c Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
e59452c7 22689g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
d052bd6f 22690(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(9)150 1649 y(commands,)26
0fcb3344
CR
22691b(simple)e Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22692g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
d052bd6f 22693b Fb(9)150 1738 y(commen)n(ts,)26 b(shell)13 b Fc(:)i(:)e(:)g(:)g(:)g
037a8b7f 22694(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22695g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28 b Fb(9)150
d052bd6f 226961826 y(Compatibilit)n(y)f(Lev)n(el)10 b Fc(:)j(:)g(:)g(:)g(:)g(:)h(:)f
d37a4722 22697(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22698g(:)g(:)25 b Fb(113)150 1914 y(Compatibilit)n(y)i(Mo)r(de)22
d37a4722 22699b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
e2520247 22700(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(113)150
d052bd6f 227012003 y(completion)27 b(builtins)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
d37a4722 22702(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247
CR
22703g(:)g(:)36 b Fb(150)150 2091 y(conditional)27 b(arithmetic)f(op)r
22704(erator)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22705(:)37 b Fb(100)150 2179 y(con\014guration)22 b Fc(:)13
22706b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22707(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
22708b Fb(162)150 2268 y(con)n(trol)26 b(op)r(erator)8 b Fc(:)15
0fcb3344
CR
22709b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22710(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
d052bd6f 22711b Fb(3)150 2355 y(copro)r(cess)18 b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344
CR
22712(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
22713f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)32 b
d052bd6f 22714Fb(18)146 2621 y Fs(D)150 2739 y Fb(directory)26 b(stac)n(k)9
e59452c7
CR
22715b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22716g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
e2520247 22717b Fb(104)146 3005 y Fs(E)150 3124 y Fb(editing)i(command)g(lines)17
0fcb3344 22718b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22719f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(122)150 3213 y(en)n(vironmen)n(t)18
0fcb3344
CR
22720b Fc(:)12 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22721(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247
CR
22722f(:)32 b Fb(45)150 3301 y(ev)l(aluation,)26 b(arithmetic)9
22723b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22724(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(100)150 3389
22725y(ev)n(en)n(t)h(designators)c Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
037a8b7f 22726(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22727g(:)h(:)34 b Fb(159)150 3478 y(execution)26 b(en)n(vironmen)n(t)17
0fcb3344 22728b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
e2520247 22729(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)31 b Fb(44)150 3566
0fcb3344
CR
22730y(exit)25 b(status)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22731g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
d052bd6f 22732(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(3,)k(45)150 3654 y(expansion)9
0fcb3344
CR
22733b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
22734(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
d052bd6f 22735g(:)g(:)g(:)g(:)24 b Fb(24)150 3743 y(expansion,)i(arithmetic)18
0fcb3344 22736b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22737g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(35)150 3831
0fcb3344 22738y(expansion,)26 b(brace)16 b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
8a0829e9 22739(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
d052bd6f 22740f(:)g(:)g(:)30 b Fb(24)150 3919 y(expansion,)c(\014lename)18
0fcb3344 22741b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
d052bd6f
CR
22742(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(36)150
227434008 y(expansion,)26 b(parameter)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
0fcb3344 22744(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
d052bd6f 22745g(:)34 b Fb(26)150 4096 y(expansion,)26 b(pathname)7
0fcb3344 22746b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
d052bd6f
CR
22747(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(36)150
227484184 y(expansion,)k(tilde)14 b Fc(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22749(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247
CR
22750h(:)f(:)g(:)g(:)g(:)28 b Fb(25)150 4272 y(expressions,)f(arithmetic)11
22751b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22752h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(100)150 4360 y(expressions,)h
0fcb3344 22753(conditional)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247 22754g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(98)2021
e59452c7 22755294 y Fs(F)2025 414 y Fb(\014eld)21 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
0fcb3344
CR
22756(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22757g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 22758(:)h(:)36 b Fb(3)2025 503 y(\014lename)21 b Fc(:)14 b(:)f(:)g(:)g(:)g
0fcb3344
CR
22759(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22760g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36
e59452c7 22761b Fb(3)2025 591 y(\014lename)26 b(expansion)11 b Fc(:)i(:)h(:)f(:)g(:)g
037a8b7f 22762(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
d052bd6f 22763g(:)g(:)h(:)f(:)g(:)g(:)26 b Fb(36)2025 680 y(foreground)9
4d63a619
CR
22764b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22765(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22766h(:)f(:)24 b Fb(117)2025 767 y(functions,)i(shell)9 b
4d63a619 22767Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22768(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
e59452c7 22769b Fb(19)2021 1038 y Fs(H)2025 1158 y Fb(history)h(builtins)20
0fcb3344
CR
22770b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22771(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35
e2520247 22772b Fb(156)2025 1247 y(history)25 b(ev)n(en)n(ts)8 b Fc(:)13
037a8b7f 22773b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22774(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
e2520247 22775b Fb(159)2025 1335 y(history)i(expansion)14 b Fc(:)g(:)f(:)g(:)g(:)h(:)
0fcb3344 22776f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22777(:)g(:)g(:)g(:)h(:)f(:)29 b Fb(158)2025 1424 y(history)c(list)9
0fcb3344
CR
22778b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22779(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22780g(:)g(:)24 b Fb(156)2025 1511 y(History)-6 b(,)25 b(ho)n(w)h(to)g(use)
0fcb3344 2278119 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22782(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(155)2021
e59452c7 227831782 y Fs(I)2025 1903 y Fb(iden)n(ti\014er)12 b Fc(:)g(:)h(:)h(:)f(:)g
0fcb3344
CR
22784(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22785g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)27
e59452c7 22786b Fb(3)2025 1991 y(initialization)h(\014le,)e(readline)17
0fcb3344 22787b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
e2520247 22788f(:)g(:)g(:)g(:)32 b Fb(124)2025 2080 y(installation)21
0fcb3344
CR
22789b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22790(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
e2520247 22791g(:)34 b Fb(162)2025 2168 y(in)n(teraction,)26 b(readline)7
0fcb3344 22792b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22793(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(121)2025
e59452c7 227942257 y(in)n(teractiv)n(e)k(shell)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
0fcb3344 22795(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22796h(:)f(:)g(:)34 b Fb(95,)27 b(96)2025 2346 y(in)n(ternationalization)22
0fcb3344
CR
22797b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22798(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
e59452c7
CR
22799b Fb(7)2025 2433 y(in)n(ternationalized)27 b(scripts)13
22800b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22801f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)28 b Fb(7)2021 2704 y
22802Fs(J)2025 2824 y Fb(job)23 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
8a0829e9 22803(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7
CR
22804g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22805(:)38 b Fb(3)2025 2911 y(job)26 b(con)n(trol)17 b Fc(:)d(:)f(:)g(:)g(:)
22806g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
e2520247 22807(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(3,)c(117)2021
e59452c7
CR
228083183 y Fs(K)2025 3303 y Fb(kill)f(ring)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)
22809g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22810(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
e2520247 22811b Fb(123)2025 3390 y(killing)k(text)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
4d63a619 22812(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7 22813g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b
e2520247 22814Fb(123)2021 3661 y Fs(L)2025 3782 y Fb(lo)r(calization)i
e59452c7
CR
22815Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
22816(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22817g(:)g(:)h(:)35 b Fb(7)2025 3869 y(login)26 b(shell)6
22818b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22819(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
e2520247 22820g(:)g(:)g(:)g(:)21 b Fb(95)2021 4140 y Fs(M)2025 4260
e59452c7
CR
22821y Fb(matc)n(hing,)26 b(pattern)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22822(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22823h(:)f(:)g(:)g(:)24 b Fb(37)2025 4347 y(metac)n(haracter)7
e59452c7
CR
22824b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22825(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
22826h(:)22 b Fb(3)p eop end
e2520247
CR
22827%%Page: 194 200
22828TeXDict begin 194 199 bop 150 -116 a Fu(App)s(endix)29
22829b(D:)i(Indexes)2623 b(194)146 294 y Fs(N)150 410 y Fb(name)19
0fcb3344 22830b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
037a8b7f 22831(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
0fcb3344
CR
22832g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(3)150 497
22833y(nativ)n(e)25 b(languages)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
037a8b7f 22834(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
0fcb3344
CR
22835h(:)f(:)g(:)g(:)g(:)34 b Fb(7)150 584 y(notation,)27
22836b(readline)13 b Fc(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
22837(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
e2520247 22838b Fb(122)146 827 y Fs(O)150 943 y Fb(op)r(erator,)g(shell)c
0fcb3344
CR
22839Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22840(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
d052bd6f 2284137 b Fb(3)146 1186 y Fs(P)150 1302 y Fb(parameter)26
0fcb3344
CR
22842b(expansion)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22843(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28
d052bd6f 22844b Fb(26)150 1389 y(parameters)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
74d0116b 22845(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e59452c7 22846g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fb(21)150
d052bd6f 228471476 y(parameters,)27 b(p)r(ositional)7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g
037a8b7f 22848(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
d052bd6f 22849f(:)g(:)21 b Fb(23)150 1563 y(parameters,)27 b(sp)r(ecial)7
0fcb3344
CR
22850b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
22851(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)21
d052bd6f 22852b Fb(23)150 1650 y(pathname)k(expansion)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g
037a8b7f 22853(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
d052bd6f 22854h(:)f(:)g(:)32 b Fb(36)150 1738 y(pattern)25 b(matc)n(hing)c
0fcb3344
CR
22855Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22856(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
e2520247 22857b Fb(37)150 1825 y(pip)r(eline)10 b Fc(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g
e59452c7
CR
22858(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22859g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
d052bd6f 22860b Fb(10)150 1912 y(POSIX)e Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e59452c7
CR
22861g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22862(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
d052bd6f 22863b Fb(3)150 1999 y(POSIX)25 b(description)10 b Fc(:)j(:)g(:)g(:)g(:)h(:)
602eae4d 22864f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e2520247 22865(:)g(:)g(:)g(:)g(:)25 b Fb(108)150 2086 y(POSIX)g(Mo)r(de)14
d052bd6f
CR
22866b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
22867g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
e2520247 22868b Fb(109)150 2174 y(pro)r(cess)e(group)15 b Fc(:)e(:)h(:)f(:)g(:)g(:)g
0fcb3344 22869(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
d052bd6f
CR
22870g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)30 b Fb(3)150
228712261 y(pro)r(cess)d(group)e(ID)11 b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g
22872(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22873g(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(3)150 2348 y(pro)r(cess)h(substitution)
2287411 b Fc(:)h(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22875(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25 b Fb(35)150
228762435 y(programmable)i(completion)8 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
22877(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23
e2520247 22878b Fb(147)150 2522 y(prompting)15 b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
d052bd6f 22879(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22880g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)30 b Fb(106)146
d052bd6f
CR
228812765 y Fs(Q)150 2881 y Fb(quoting)16 b Fc(:)d(:)g(:)g(:)g(:)g(:)h(:)f
22882(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22883g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)31
22884b Fb(6)150 2968 y(quoting,)26 b(ANSI)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
d37a4722 22885(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
d052bd6f
CR
22886f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(6)146
228873211 y Fs(R)150 3327 y Fb(Readline,)26 b(ho)n(w)g(to)g(use)11
22888b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22889g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(120)150 3414
d052bd6f 22890y(redirection)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
d37a4722 22891(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
e2520247 22892g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(39)150 3501 y(reserv)n(ed)f(w)n
d052bd6f
CR
22893(ord)13 b Fc(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22894g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22895(:)h(:)f(:)28 b Fb(3)150 3589 y(reserv)n(ed)e(w)n(ords)15
22896b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22897f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30
22898b Fb(9)150 3676 y(restricted)c(shell)12 b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)
22899g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22900(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(108)150 3763 y(return)e(status)
d052bd6f
CR
2290110 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
22902(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
e2520247
CR
22903g(:)g(:)25 b Fb(4)2021 294 y Fs(S)2025 418 y Fb(shell)h(arithmetic)15
22904b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22905f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)30
22906b Fb(100)2025 508 y(shell)c(function)18 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
22907(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22908g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(19)2025
d052bd6f 22909597 y(shell)26 b(script)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
e59452c7 22910(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247 22911g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(47)2025 687
d052bd6f
CR
22912y(shell)h(v)l(ariable)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22913(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22914h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(21)2025 777 y(shell,)k(in)n
22915(teractiv)n(e)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
22916g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e2520247 22917(:)h(:)34 b Fb(96)2025 867 y(signal)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f
d052bd6f
CR
22918(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22919g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
22920(:)28 b Fb(4)2025 956 y(signal)f(handling)6 b Fc(:)13
22921b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22922(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21
e2520247 22923b Fb(46)2025 1046 y(sp)r(ecial)27 b(builtin)16 b Fc(:)d(:)g(:)g(:)g(:)g
e59452c7 22924(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
e2520247 22925g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(4,)26 b(79)2025
d052bd6f
CR
229261136 y(startup)f(\014les)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
22927g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
e2520247 22928(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(95)2025 1226
d052bd6f 22929y(string)h(translations)8 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g
e59452c7 22930(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
d052bd6f
CR
22931f(:)g(:)g(:)g(:)23 b Fb(7)2025 1313 y(susp)r(ending)i(jobs)10
22932b Fc(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
22933g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)25
e2520247 22934b Fb(117)2021 1610 y Fs(T)2025 1734 y Fb(tilde)h(expansion)7
d052bd6f
CR
22935b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22936(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)22
22937b Fb(25)2025 1823 y(tok)n(en)17 b Fc(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g
22938(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
22939f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32
22940b Fb(4)2025 1911 y(translation,)27 b(nativ)n(e)e(languages)c
22941Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22942(:)g(:)g(:)g(:)34 b Fb(7)2021 2207 y Fs(U)2025 2329 y
e2520247
CR
22943Fb(unary)25 b(arithmetic)h(op)r(erators)10 b Fc(:)15
22944b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
22945(:)g(:)25 b Fb(100)2021 2626 y Fs(V)2025 2750 y Fb(v)l(ariable,)h
22946(shell)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22947(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
22948g(:)g(:)28 b Fb(21)2025 2837 y(v)l(ariables,)f(readline)7
22949b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
22950(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22
22951b Fb(125)2021 3134 y Fs(W)2025 3258 y Fb(w)n(ord)10 b
22952Fc(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
037a8b7f 22953(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
e2520247
CR
22954g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(4)2025 3345
22955y(w)n(ord)h(splitting)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22956(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22957g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(36)2021 3642 y Fs(Y)2025
229583763 y Fb(y)n(anking)h(text)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g
22959(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
22960g(:)h(:)f(:)g(:)g(:)g(:)g(:)28 b Fb(123)p eop end
5e13499c 22961%%Trailer
37c41ab1 22962
5e13499c
CR
22963userdict /end-hook known{end-hook}if
22964%%EOF