aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetWeb/doc
diff options
context:
space:
mode:
Diffstat (limited to 'Carpet/CarpetWeb/doc')
-rw-r--r--Carpet/CarpetWeb/doc/documentation.ps5526
-rw-r--r--Carpet/CarpetWeb/doc/first-steps.ps2719
-rw-r--r--Carpet/CarpetWeb/doc/internals.ps2859
3 files changed, 11104 insertions, 0 deletions
diff --git a/Carpet/CarpetWeb/doc/documentation.ps b/Carpet/CarpetWeb/doc/documentation.ps
new file mode 100644
index 000000000..4eb199555
--- /dev/null
+++ b/Carpet/CarpetWeb/doc/documentation.ps
@@ -0,0 +1,5526 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software
+%%Title: documentation.dvi
+%%Pages: 10
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%DocumentFonts: CMR17 CMR12 CMMI12 CMBX9 CMR9 CMBX12 CMR10 CMTI10
+%%+ CMCSC10 CMTT10 CMITT10 CMMI10 CMMI7 CMSY7 CMR7 CMSY10 CMBX10
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips documentation.dvi -o documentation.ps
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2003.05.03:1520
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: f7b6d320.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmb10 cmbx10 cmbx12 cmbx5 cmbx6 cmbx7 cmbx8 cmbx9 cmbxsl10
+% cmdunh10 cmr10 cmr12 cmr17cmr6 cmr7 cmr8 cmr9 cmsl10 cmsl12 cmsl8
+% cmsl9 cmss10cmss12 cmss17 cmss8 cmss9 cmssbx10 cmssdc10 cmssi10
+% cmssi12 cmssi17 cmssi8cmssi9 cmssq8 cmssqi8 cmvtt10
+%
+/TeXf7b6d320Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /dollar /percent /ampersand
+/quoteright /parenleft /parenright /asterisk /plus /comma /hyphen
+/period /slash /zero /one /two /three /four /five /six /seven /eight
+/nine /colon /semicolon /exclamdown /equal /questiondown /question /at
+/A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X
+/Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: aae443f0.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmmi10 cmmi12 cmmi5 cmmi6 cmmi7 cmmi8 cmmi9 cmmib10
+%
+/TeXaae443f0Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa
+/lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi
+/omega /epsilon /theta1 /pi1 /rho1 /sigma1 /phi1 /arrowlefttophalf
+/arrowleftbothalf /arrowrighttophalf /arrowrightbothalf /arrowhookleft
+/arrowhookright /triangleright /triangleleft /zerooldstyle /oneoldstyle
+/twooldstyle /threeoldstyle /fouroldstyle /fiveoldstyle /sixoldstyle
+/sevenoldstyle /eightoldstyle /nineoldstyle /period /comma /less /slash
+/greater /star /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /flat /natural /sharp /slurbelow
+/slurabove /lscript /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p
+/q /r /s /t /u /v /w /x /y /z /dotlessi /dotlessj /weierstrass /vector
+/tie /psi /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/.notdef /.notdef /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta
+/theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon
+/phi /chi /psi /tie /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 74afc74c.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmbxti10 cmff10 cmfi10 cmfib8 cmti10 cmti12 cmti7 cmti8cmti9 cmu10
+%
+/TeX74afc74cEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /sterling /percent
+/ampersand /quoteright /parenleft /parenright /asterisk /plus /comma
+/hyphen /period /slash /zero /one /two /three /four /five /six /seven
+/eight /nine /colon /semicolon /exclamdown /equal /questiondown /question
+/at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W
+/X /Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 0ef0afca.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmr5
+%
+/TeX0ef0afcaEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/arrowup /arrowdown /quotesingle /exclamdown /questiondown /dotlessi
+/dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls
+/ae /oe /oslash /AE /OE /Oslash /suppress /exclam /quotedblright
+/numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon
+/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K
+/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /quotedblleft
+/bracketright /circumflex /dotaccent /quoteleft /a /b /c /d /e /f /g /h
+/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /endash /emdash
+/hungarumlaut /tilde /dieresis /suppress /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda
+/Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup
+/arrowdown /quotesingle /exclamdown /questiondown /dotlessi /dotlessj
+/grave /acute /caron /breve /macron /ring /cedilla /germandbls /ae /oe
+/oslash /AE /OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 09fbbfac.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmsltt10 cmtt10 cmtt12 cmtt8 cmtt9
+/TeX09fbbfacEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown
+/dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla
+/germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam
+/quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon /less
+/equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright
+/asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l
+/m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright
+/asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi
+/Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown
+/quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: b6a4d7c7.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmitt10
+%
+/TeXb6a4d7c7Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/arrowup /arrowdown /quotesingle /exclamdown /questiondown /dotlessi
+/dotlessj /grave /acute /caron /breve /macron /ring /cedilla /germandbls
+/ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam /quotedbl
+/numbersign /sterling /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon /less
+/equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright
+/asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l
+/m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright
+/asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi
+/Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown
+/quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: bbad153f.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmsy10 cmsy5 cmsy6 cmsy7 cmsy8 cmsy9
+%
+/TeXbbad153fEncoding [
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /circlemultiply
+/circledivide /circledot /circlecopyrt /openbullet /bullet
+/equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal
+/greaterequal /precedesequal /followsequal /similar /approxequal
+/propersubset /propersuperset /lessmuch /greatermuch /precedes /follows
+/arrowleft /arrowright /arrowup /arrowdown /arrowboth /arrownortheast
+/arrowsoutheast /similarequal /arrowdblleft /arrowdblright /arrowdblup
+/arrowdbldown /arrowdblboth /arrownorthwest /arrowsouthwest /proportional
+/prime /infinity /element /owner /triangle /triangleinv /negationslash
+/mapsto /universal /existential /logicalnot /emptyset /Rfractur /Ifractur
+/latticetop /perpendicular /aleph /A /B /C /D /E /F /G /H /I /J /K
+/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /union /intersection
+/unionmulti /logicaland /logicalor /turnstileleft /turnstileright
+/floorleft /floorright /ceilingleft /ceilingright /braceleft /braceright
+/angbracketleft /angbracketright /bar /bardbl /arrowbothv /arrowdblbothv
+/backslash /wreathproduct /radical /coproduct /nabla /integral
+/unionsq /intersectionsq /subsetsqequal /supersetsqequal /section
+/dagger /daggerdbl /paragraph /club /diamond /heart /spade /arrowleft
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /.notdef /.notdef
+/circlemultiply /circledivide /circledot /circlecopyrt /openbullet
+/bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset
+/lessequal /greaterequal /precedesequal /followsequal /similar
+/approxequal /propersubset /propersuperset /lessmuch /greatermuch
+/precedes /follows /arrowleft /spade /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
+@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+TeXDict begin @defspecial
+
+ /DvipsToPDF { 72.27 mul Resolution div } def /PDFToDvips { 72.27 div
+Resolution mul } def /HyperBorder { 1 PDFToDvips } def /H.V {pdf@hoff
+pdf@voff null} def /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+/H.S { currentpoint HyperBorder add /pdf@lly exch def dup DvipsToPDF
+/pdf@hoff exch def HyperBorder sub /pdf@llx exch def } def /H.L { 2
+sub dup /HyperBasePt exch def PDFToDvips /HyperBaseDvips exch def currentpoint
+HyperBaseDvips sub /pdf@ury exch def /pdf@urx exch def } def /H.A {
+H.L currentpoint exch pop vsize 72 sub exch DvipsToPDF HyperBasePt
+sub sub /pdf@voff exch def } def /H.R { currentpoint HyperBorder sub
+/pdf@ury exch def HyperBorder add /pdf@urx exch def currentpoint exch
+pop vsize 72 sub exch DvipsToPDF sub /pdf@voff exch def } def systemdict
+/pdfmark known not {userdict /pdfmark systemdict /cleartomark get put}
+if
+
+@fedspecial end
+%%BeginFont: CMBX10
+%!PS-AdobeFont-1.1: CMBX10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:06
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-301 -250 1164 946}readonly def
+/UniqueID 5000768 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
+7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
+77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
+2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
+FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
+DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
+7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
+9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
+CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
+6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
+E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
+8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
+3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
+EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
+0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
+4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
+1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
+757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
+0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
+6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
+E067598E1B8B78188FA4BCFB0B51692D07B0BEBB930C6F0997B437E2C51B876B
+61A563A2673932C2045833FAA35DB22ADE12102335D5DC734AE3AC5EEE6658D7
+92EB62131E1DFBA441F53EFF9021D9D4C491F26BE8F54C61165CAD778CE8695C
+EEAF70E3B20C64D4C2B34A084B5770BAB2A974E898F62BFE90F132A37E2DCA4F
+43E13DB13C94DFA8ECE2B7374827AE168634FA007F8981ADA046CED3448BF453
+FCD9A4F194FA648F9FC0971734BB69CB75348A88CC361FF06E984C86AF0EA429
+DAA5808CCE3583664AEFE0C59EDA04A147FB51227A5AB0C13942323E9B3733DD
+3EE7DF7F774DE5D0D0980DA8C0192983F1E3EF18481EAF1EFEDA0068BCBDB28A
+7FC7D9191EFFC574588DEC1E180341DC959F8EF56ED5B19F50AA82A4653649B7
+CDCA11A1FF27AFA7FF189A7E8A7C0E94AEEC901DDEB541604DEC0FE90FA0685A
+FDEADEC90DFCF25D074ECABBEF0F518FF620E5DC46EEFB4EFF37B0A862754A46
+567F057C58A40714D712EA5A6F783D9A1C7AECD26458D64C2C203CBD059208D6
+F0AC8240A745488259475394331C07AE954D0E9CA3C467D52C6CE4D2A88834CE
+A8080C90A3D588D03885566B2E3741E7102381706FAF2CF674AD2CF636B21F3A
+4AFCA5BE7EF0EF0AFF8D3E86184D202DB2A604EF829AB3A8CE59C3435203B9B1
+DF6D4D9072461F746B195404E168882E7A8D19838D3B0D2E3FE7A0A34BEE528C
+AAC354769FDED60D2579D19856BE19DDFCDEBABDD9819120AD8F1C30036A9650
+1525A1F34CF876D717F5BB665C5C28DB9369F7CF4AABA63E272C9C2E794C9A47
+907DD0D581FC2918B682FADA1E3A01E3196B921FF78C085F63A338201F0FB1F8
+BBBFE9606A51416D767D1F6F8B0638F5FBE8DA00619EAC1B3A7A4376135FB148
+F506D88E3259D9E4B6BC9F7C427969A05C4724F440CA075123BA15AA1280188F
+9969CE4D13F0E26A3ED368659B937BE4A9DC752D7690056ABC5A22F60A668D5F
+39C9BF9D2881DEA6255133A272E9E782C3DB39C2721920D20C636A3AAAEA3274
+474DD92A522C41BCC160FB1D79C130216C2D17C277A517A84CB49C6E7631B841
+CDB145AABA5A831F26C7FC9A8B19B3999A6697A845AF1FA486A2B36900589DDD
+D56FEED8DB7CA8856A41A32B27AA81A345831F935A958CC2D7AA320A195B7AF1
+CCE46D69A9E54CE3315A4EA1B609F6C6C8F2636FB548CEBA7F1BEFDABC0A80B5
+695B5B5E96EF4904DB23B6D652E67D3145999D392516F22F6BD199FD55D10933
+4CFE595E725B35956A059EAF34A2C3A26B82630B5B4572E504B4F843F7EB000C
+BD14DD5D5F5C097192DC61B521AA66724290030EF8C70AE1C5704D6A8F1EC61E
+3F527BB0E6260943DFB1B2883387C75713423EABA1BA4C17D10D1A0C6A012990
+358F44DDF1E5C907D581D1064484FB77439F81E85C0185C573CC4F460A4041DC
+738D8ED174889BC04EF654D148866E6B7B899AB09074BC0EA9EA18E8229CCF1B
+3ADBB3D49F4C8D7D3C6855585C9A8D2AC5F3CA9CFE4C28F7A07AF0E575487EF5
+C3E300C93B8F8F5A263E4218C4A7304209FBF563E7AFC317F021CAF7E5BEDDB3
+B20DCA3070D31347A0CEFDA2007435CB5A407BCA937386F47755EB9DB0D003AB
+9F82E7D0865AAAE900ABEE5B6E444E809E4B10C8302CDCFF8538EF680A7D8B96
+C2C0B6C1E20E33F540765DEFEECA4BE6A406E48F6325A82BCEF6BFF60AB28BE3
+DFE4C7DF111620E99613FA68BD62DF083F42E19E0FC1DAAD39CF5B39C9D15AEA
+AAFFE14F11F4442F93DB1A44AA320506C916AAA01B573CDEC700B0EDB158F7AD
+75C8EACB329FE17A40CD9B0ED657EEB701F895A8C973B34BBFB8BBC9ECEB00E6
+8D48D725AB630CA43581DE8C919CF17FD8E50E3CBFE786AA2DBDF2522E316232
+91072570B045C5FE4BF4B2DA252B4BCF571C4796C50EA6C1170937A35576DEA8
+3693721550547BEFCB7281B656F7ECECE01BE35972FDC0963533BE4E6218BF8D
+74D6F164158DE6F9FDC890AB1F2DE46F05FC2F7201E9E3F8D7B6EED156D4D7D0
+76CA56CC27972B4BB5D844F0715A8F315DA1627C6E1EAAB6A2FC1B2539DF9F2D
+32546FE8CE9E58AC4BFC530EB634249EC290F1BF1029E7EEC0F29D35E992A2E2
+ABE54B3B9A85CD0092AB16A27340E6236BA97A53B42F237F70934F64D3354C3F
+AFABCD1A1D429435EFCA638135319725B4CCA3CB8AB5B1FDBFDDC58681FB1675
+6474875AA44B1C287F08C35CBD3193AF1C40AC9CB1325E3733695E41AED75418
+F89AB5418855F7F888900DA23D1F5E4C3AE5222C9DDB1F07D39C7AABE563A8E0
+E7CB906DEDF6527DC38DCF8B3C28D5B612583FE4D1AC51653D251A1613544A95
+E6555BEDFED94FC6ECD635731BD0C33CB9BC98FBDD794C47A756565018FB7CA6
+4CC29FA3B6D015062AEDDBD74BBE440729CAC222282C230466E1565ED16F80E3
+D245729F3908E82DAA12C738328F24911F4B37FC3B73922DAB646F504E864901
+7FC6D2F306654148AC50A566CF49A2D3C47F40D7E74A518C740D4E209C5EB594
+B1B5B0B132DA87EF82D88D1C8DC6F93F2B4BA854756FF6CA5E272F15C3793597
+CEA3A0B6B893B356E15A4C5F2A97D3390BE0C1EF2F342062BE3FA17447139089
+73BBD2AA76EE380481F3A918BC690D2B081CA89F36D8EC7049F1B5476FC1F122
+7C26F64E4A44B936479F77B1987D858F05238F53DA8D0665F81B154839A6667C
+7F50972594E5A3537AFEA8E93B7AEFBD3AA596332A25176264B0128B10477EAB
+E6EFB5C250C48DA04CA9E6B1392B45C8BABC0D4DCDC5873391C5B5886AE40200
+E84AF8CC19AC4D3F56343710F6244BB63555FD433354F5E9FBB671F2B94DAE4D
+2BFCA17CF39E2AFC2F2C23B978480CF0EF866A87AD69B22CDA98845CFAA1F509
+3045C65036CBAD06C4AC62FA63B7CF4500BE98A7A282A38A0F47E4F8E97354B8
+838445943847E70998133269B6675B90F334D3712536EAE5500C35BC1B624DA7
+EA4F08EA931E52A71C3401728919CE45F7A0778B4A9090EB9C90441CEA964EB5
+6BBD611E254EA159DAD28F63280FE10B4310535DCEFB254F1BB5DC96E149D828
+012C009FDFAAC8DCB4FC6D05C32AAEF9CD62E09ECAC010DD118CDE2636F2EFD7
+E06EDCDBD1708F299D8E63708055A9EE406D4EB1AEE53BAC799179B5D3B7DFC5
+B277DCC04117624C1244DFB181106982F576085BB00769503880AEF390B15A57
+EA942861205FE331E06B5D3E5BC56B19F13022EF7C24339C17E82B02AAF4E4F8
+6C619F0C7685409AD850F947D10A6D3C0A1E87C18D08C301224AE2997FB20246
+BA24A2A2E2C9D71B5B4993E1465007707788BB549C1618D3DEA99298C7F56E32
+0C03731D75275DD56CB0EBFA2DC055CFFCEB0237DCBFFED8657C1D995DD165BF
+3E4AC14C81EEF4843DF1BCA520DF14A45BF26681CBC21A291E0819BC5D279B58
+C82EA479A411633508B7B4EB002CCF7B6F37662F3B25C1568D54E0E1AA56CCBF
+A54237C74D8822E011047738868095CC99A8C08AE6F36E854B4C5857ACC8811D
+2FBB0E444340A61FEEEAABAF88AC68645829CB5B6947F1BC72009704E484211D
+E40C7CCFFF4DBBDA8DED3E0F858AB20F85D52FC9E0DD0336B239C55C654B86EB
+02E3259772F81F0C146F66E66C49E42108E6F7C5236DBA6FCC620C8CA0FD2CC5
+E989B406B7A0F96FA1FA8BF9B263D2448209497303D370A8361CF870EA8C91F7
+7E35FA41A7E2D6C26BE24C9341160B875A3042DEDC1F3D027880E2E74E2301A2
+6101EFA7B8EB1CAB4286B77F73BB93719A22BFD57609251A0247D80C117F05C4
+B3DC2CD2FC713704934BFFCBF0625882D0015F9B07A01AC68A7F30E59667667B
+F47D5FF94350BE67698844E8EDEEA4E69F2BF44547AE459B53969F544D53461F
+1AABD70D531C6A9E8013B24FF34C86381E123296119799D45C3F675BF67676CB
+F0191994DDAC75F7EFDA7B1BDF952E5F6BFBEE4885C7675CC50B22CAEFE8BECD
+0D286A72727B018861805E5D51DCF0E9076B3C66D35A22609E8A20861B33E429
+5AF85F6453BF23E9576104A27A1E7211696AFB0C7E542C10CE962C3FFC18DFE0
+49C737943D2484528F769C17ABFE7BAD92F5E3C323BECEF539666D575977715C
+D247DEA25D4689518FB80173915421C8901F255389EBF48F190DEB4A1A915D18
+9B94FAE37AC86554CC2784AEB393C719424F1CEEB0366BBBD4C91D4578DC5C68
+787904465BE1DDB2FE3DD3897B25AA89FB4556C4C06053DDB60854A45EB4A6B4
+047460880237B773E044B6DA6970DE6B2EC776472E955FA85CEB99F30B97C210
+E685C30FAFE08A34DEA9517975148BA776C2FA66EAAAE6E85604D97ED64953C8
+402518CD8AACDDDEAC9DBE5BB343254E1C5509DC1BE406AECE5ABD1D79C75C6C
+BC89953606E25AB6DF7A311B4A53EFCB7918467CAA0FCFC1DC02F28064F10FF9
+20816E0635F4D66D234F499C009A95E6A24FC623067010D7E6D5F959332248D6
+5FB884389007569CABD15D09330B9FC0E939B2684F3FD092B5CC2AD023A75028
+7D0E6DC5FC7969B3F809362B5201CF82DEA32154F76B4184F8D0857D97384480
+59DA5290E6BAB3446941F7C4ED741349B409E3A8181F398D8C227C1E62856AB1
+722982C7A8CE3406768796AFC50097EDA703ABD0A1E3A7D836D080A8E4E2EFBB
+9F03B4935048AD73A5FE68E9EA63CFF232323F8DD229FB5DD7336BD33272834D
+6B292F98DD362BD2B43E379AD0F5B8079720BCB8C23FE3E795858E00B02DCBF4
+244F917F6BD04BB9ADF003D2375B0DFC2C77D217BDBE4A16E28A83FFC98AE13F
+6F62EC8B905089AD8869683858F95A8BDCC304F6E198A4D3ABC1080AF2DBDFEC
+1630351D742E58A27C2159DE1FE572BCCF3A057C5CC0439DF3602F3CF53E7BAD
+28CC355E117EA3F165E82DBB139170356DC8D19DD572725FD9D251E05B4397B1
+5D8275BD2F46F224B5E6A3098FF2F3CF23C03FE974AAB16DD591D324E13350C1
+783C47A54DDA92E41223339FD885E24741018301FB9401520DCA09BCA6D57681
+1075100804990EB6B4A75BAC2BA6F58D5CDCA604B7C7792771CA6D5C113557F9
+AD54BD1E2BF734152FBB6E4EFE43D596149EC4A3C0598F86453BFD65475C49CA
+9BD8769474A33C127984D7B3AF8480B52025F816AA8A8FE7AD9BC8253BA36674
+F9F2F46F8737B93D65C838A7EDF6B054397E8B1CA665EF4D93098AD128CF8537
+B3E068BC55104759BE8097C9725430C220E53BB3F4A03DD9AAADAD7ACBE4FCD1
+F73C403B484BE8318D40CDDC1F978BA7FF55FBA5AB4AE07B783E4EF1F0F84D67
+B6BDF65B2C23F63F6A9F571E9D3A0693387820C4BC4E9164637A3023C65E34E3
+315A930B54D90388F98CBBE8DFD05EAFDFD47E943C21B5F8024D12129B5EEB45
+6B64E197B3B7E4454F699DF2E8FAF0B8187DA20C70F6F207C8C8F609667DE1D9
+5390477A6875526E28270D1E63EBCD6227A378CEA032064F960FE596AD9AB4B5
+A6BD2D9098B1D73A801D0A401A1F5D5BC7EC33F6851C123FA2A43C6F159DDBDD
+B12EE2A4FEEB571EB1F2B48EF4540E01545AAB9915FF45B5E9589613BAC37E35
+D3DDE8DBDFD5D87AB7198A81C3EC6BB4CE6D67526BC5B34991ABACB004D91007
+B74B7EDD3E868FFA9FE4D2BF3565546E6CD60DF0F844E28D183844C314EB8876
+9DA8B658D84A8AEC8FC43694B3C7D05A5292C7DA7E1B90D8923A0EC0980516C4
+84A1892E106B206CFCD5C4C8290E784BEC3D79762E24A7F2B7782E12D1CCB888
+EAEE0064364BD688455979DE47F23B684BA02E52C1CFAD3A8A22C2039F8F12E1
+CCEF4D53E838496508080B6AAD0C613EEAA22A7A294E44297A51E21A259B4CBD
+01742C691D898DFE48FEE0392E7FFF5257A513B9EB8ED4D235A7C4746C87060F
+94F2CFECA76E02B52FDA8945763A1F52CC0BA2985B41B6E3CD8DCCF03393190A
+51AE0B2E348C6D4F97223BE957E67BD06E2E49EF2B9419C660FBF341526A34C1
+3E3AF14FE76771DB8767C4035AF12A090D9703257AE61DDFC2653E650BD34981
+02FDDEFC30DD74805C2BC8D196366874956584F8CBA0364FF14BE992F355CB7A
+50034FA335C1BD0A76CB970ABA59D7DA07C16DA3F6EA51E98BE5D6F9E5DB0567
+2A533B320B0A65CDD21FDE37840B43350EE2AB507DDFA2BD68EAF787D69C383B
+7210BF5BEBF05343171CE9B153B41C7EAF71FC0BF1BCE71C6E22F8A81C7F93C9
+7DB6B26F6D6019BF0087A2EB2BF2A51482DEEAA3A4380FE757D6CC3E2B719262
+0C7B4720CD3E076ABFC7354F200576A1731790C9F606D69A1D5FD2329074F59A
+D01807BB552B3B9504D4C0B0E26A795E9E4C25780E75F9E9F469526B338254AB
+4134D831880AD275A751568D2DE6358015D8610D3B66496A18A5AE50E3FB64DF
+C2CA5497B8D2EF10AA44BA1B16588047956FEFF9CE74C8CDC8C6875BC72D6C17
+F3651D9B306EDD63EDD338B52C37E8340C672642A734A39C0C96129508AD4C3F
+5970A105F254B06BFE0763304DA0A88443C881863BDFA1F5D2E5096ED7880308
+444A90885B6A2D0FA03CEE8A85BE5468293B29676272545F8E050D0A30E3BACE
+9897D0A91368351B6339A334E4ED8F8F352EBE25B73A9F1232185D249B2D6302
+589B45E644329D8C5BE422037D4F1103B5353B82C932FD2874FDB16F6021901D
+784F16CD71CA13E719C6F1696F7BA894BAD4A972FC51F91A1321F9A5C9AD2C0D
+BCB31BFE72290DD1F2E022BFD1D1C92885F22AC5AB324D08BD46776A9F8A014A
+D5205973ACD5CAF6BD01B1306004896C023E52B63FE0B7AC56AF60556053ACC5
+AEA040B4CCEC0A174E1CFED070F106B0681C1FE79478BC97F7C94F3C4381C95E
+247E52F7061CB8CF96CEE2905E7E817F5DE3D717CBD0D3C448B642BD15C4FB57
+69CEE7BA1F715EDA4DAA82F6CA4CD83B28DFFA7938B165BDD95C413F2906B41E
+A19A484F7F22BE67629F3BE885FCBC7FF90A23ADE8008B0226ABDB5B9B48D7F0
+709A7A554B965144C062ECF96D3A12868165659F4FFB234D54B7E994347E6F3F
+F1565E2D256CF1E44FDDB9FDB88F7D2F4FDB9407000994CCA0BD704134819A45
+3D5FAD56781BA05288EA00EDB0AA71F9DA9CC705A90FD0D234DF67AD25733197
+C9676053F4ADA54E008FA6677642FCEC4133C04B5A59A752181C4A53FC06A33C
+43AF44FD99C613AB1F1738E59316768369ADD00620D443841DCC2DA5608B37ED
+D3DD6D5FA974294646307DCE6CFD27C80C4E77752D7534C5270D68FD3C44ADC9
+1D41E388D22D8E08D07845F90BD29EA35A68EC73339E50AE8559DFE6231CBB4E
+56410B8DC285F5B9A5B2FACC1212B254CDB8A98C96EB1013AB15D907C69EA85B
+0A6969C0D8672D1C69612D7763DE13FB711C38FE116EAE3F6F9AD38AA2CF409A
+F08DA21DF8F41BEC25DA86F17695B9E2C710B53E20382D067BE480114739A971
+49FC35393B7B02D3C07F478F389B5CAA66BA3B72835DF14B263466CF1969851F
+FA3778A6B00A0E0C4676A29D3232ABBD7E281402137EF1D38E2434DD44721E4F
+04BA87E268AAE96334AC95BC1ADB8AB36571B54088C6DEC51AC90C40475F5AC6
+B5BAC9DA8CB52E2B6810100F098E528BD24F04B0EBC5F5C8700E0C4F21093405
+389E8D9EF6073BC18799A6A75F2999C4DA0B514E830370A0BA830A45090E7C6B
+13B2D9229EC8A15CB9101666F03172D175F39CAFA4583CC1F6BAD5CB3C1B9456
+4276507E9DFDE0C2DA8618AF4E7A4AD50A59754F21DD5006B38CE98F304BAC57
+7586558BF06E3DF8FBBEA0BA133CA0338CC261FA587CC82BFC4BEC64E6051B3C
+58D42EB54D019D6BDA2CD7F5BE0177163EA3D174B390457B4DBED31E439DAD5E
+FE801A103F0C081F1D6B194A3384BED5757FDEF166E18FCA03593407E34A2469
+AD04745D435822F0BEAE52A0DC0621F8AF598CFC2AB5BCD3B6B12CC05EFD38AF
+F85150DE196D073F5EA81C070EC3412BFD14ECA9D4A21EC14CF3225A2B79E717
+E29B7E036D5BCFCCFDBBD2DFC83F07B64D1489DFD91005F99F1B8E7990C38AA6
+89656F91E5A0DC6F6F5DFA16B54CB16CD5918522FA4A7969DEC60D8C467FA6C6
+CC412521012F615CAA04FC42FF9B5EDBE96E6FBB2B4F9F0C61081C67DE180CC3
+A72093C4FEC91E6E03BCAAFE7F97BD164064D570D06F232E516A8A36324DBE6C
+CCC32F95BAB18A974BE4
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.1: CMSY10 1.0
+%%CreationDate: 1991 Aug 15 07:20:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMSY10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.035 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSY10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-29 -960 1116 775}readonly def
+/UniqueID 5000820 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
+7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
+A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
+E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
+221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
+27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
+5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
+0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
+DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
+71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
+4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
+515DB70A8D4F6146FE068DC1E5DE8BC570317AAEA74A842CFD26F9591866F5A0
+9B4EAD7395F5196B36997F1D59E88165C94739E74C2B40820F8C972B175ED79D
+87C9E323C3CDD5C2BEE6409017767534E19F45AFCE2C6687733451AD2E75D112
+42040BADFF90F5FCF3F5308FBF66505A3059072ABA7DB259E6A8B13044045E7B
+AE33DD9B09E70C6896BD1B5061109910CED683C5DAD9CB4023FD7686F53F06A1
+2F949D09F68203A5ABF98C6EE1E579F4CE20970D7B1866C9624C726C5E8F081A
+1387DD4A2B6E313B12BE585019D985BF4D772F63DFE677ED6DC3ECC5AEC2BDC9
+7522D9C6B68275107873C670138A759D61257CB2235A7BFA0BDDFA54D89BDEC1
+181B04F008B02EA011E7727FB18B65955E332B3702005FC7B93063A19A7CD746
+3A8FA175030D14DC5F6C1D7486E82B456A4351444B7255851767397A37782B74
+7C7B897F47B857A4AFD2F75D097BA3943EF92C22FF1565D6E37A0EBE0EC03F1E
+B58D310C1F86537C1F4B7B5C44FDD25F5478F6574CD2CAEBE0F7CB2A4505CBF2
+5CF4E8AF2F7EFC472BC630140C3D4A4B2E9947BC443A2877FBF4A4DAA26C4671
+FA1B25363EC75DACC02E065A5F0F
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR7
+%!PS-AdobeFont-1.1: CMR7 1.0
+%%CreationDate: 1991 Aug 20 16:39:21
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR7 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-27 -250 1122 750}readonly def
+/UniqueID 5000790 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6CC3F1E9AE32F234EB60FE7D
+E34995B1ACFF52428EA20C8ED4FD73E3935CEBD40E0EAD70C0887A451E1B1AC8
+47AEDE4191CCDB8B61345FD070FD30C4F375D8418DDD454729A251B3F61DAE7C
+8882384282FDD6102AE8EEFEDE6447576AFA181F27A48216A9CAD730561469E4
+78B286F22328F2AE84EF183DE4119C402771A249AAC1FA5435690A28D1B47486
+1060C8000D3FE1BF45133CF847A24B4F8464A63CEA01EC84AA22FD005E74847E
+01426B6890951A7DD1F50A5F3285E1F958F11FC7F00EE26FEE7C63998EA1328B
+C9841C57C80946D2C2FC81346249A664ECFB08A2CE075036CEA7359FCA1E90C0
+F686C3BB27EEFA45D548F7BD074CE60E626A4F83C69FE93A5324133A78362F30
+8E8DCC80DD0C49E137CDC9AC08BAE39282E26A7A4D8C159B95F227BDA2A281AF
+A9DAEBF31F504380B20812A211CF9FEB112EC29A3FB3BD3E81809FC6293487A7
+455EB3B879D2B4BD46942BB1243896264722CB59146C3F65BD59B96A74B12BB2
+9A1354AF174932210C6E19FE584B1B14C00E746089CBB17E68845D7B3EA05105
+EEE461E3697FCF835CBE6D46C75523478E766832751CF6D96EC338BDAD57D53B
+52F5340FAC9FE0456AD13101824234B262AC0CABA43B62EBDA39795BAE6CFE97
+563A50AAE1F195888739F2676086A9811E5C9A4A7E0BF34F3E25568930ADF80F
+0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB
+7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1
+0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4
+1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A4CD5C7347D2E
+1D0D6630F446F3708FCB29A85F40B4DAB4D60AA8F5B2DBD67F2E45D80C7A7E86
+144669F75F8FA14609F8E4246FEC475ED262E03D30393C78C7828206842B565A
+DBE20EA52EE9C4C3862B2F5F12CF89D935B89B84A45CEFCEAEE8EC8806339364
+56FF1FE2E5112803E3E40162D5188D2210A54816AA9960611721C23A292AE80A
+8F8C0FB114D71C111700B0FEA8804F37C5D31ECD7006603C53F4BDF7208286AF
+3A25CEE58E88BF81A4800B68C2A19EBDADF9B1074702E779A7DD915EFE09D35E
+BD176D7346D859D0944520171C4E97696AE0502C43C391FCE5E8FB1789065E18
+BE3AF62200D57912360411CE848B4550D1B0A3BA576F9B41CED3A23E753631A7
+25375ABE8A4B55BC65AE2EAFAE452766961965093084D218637FB447795CC991
+EB1EF26BF82B7A81FA847ABD3B559D35828AD7DDC5FC7B43C6C14E6ADEDD7663
+F272AA9A121630C5263D58773BCB1437EC2FC54C4AF90E677A8E7D1738D003D4
+18998C03CC9AE182E7758767FEB5E1B03C6CC32AD30D0ABAE6552290771E2CB1
+A23F469A8447C1868C6DEC2C3C2BCFC691867E
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMSY7
+%!PS-AdobeFont-1.1: CMSY7 1.0
+%%CreationDate: 1991 Aug 15 07:21:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMSY7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.035 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSY7 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-15 -951 1252 782}readonly def
+/UniqueID 5000817 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
+7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
+A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
+E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
+221A37D9A807DD01161779DDE7D251491EBF65A98C9FE2B1CF8D725A70281949
+8F4AFFE638BBA6B12386C7F32BA350D62EA218D5B24EE612C2C20F43CD3BFD0D
+F02B185B692D7B27BEC7290EEFDCF92F95DDEB507068DE0B0B0351E3ECB8E443
+E611BE0A41A1F8C89C3BC16B352C3443AB6F665EAC5E0CC4229DECFC58E15765
+424C919C273E7FA240BE7B2E951AB789D127625BBCB7033E005050EB2E12B1C8
+E5F3AD1F44A71957AD2CC53D917BFD09235601155886EE36D0C3DD6E7AA2EF9C
+C402C77FF1549E609A711FC3C211E64E8F263D60A57E9F2B47E3480B978AAF63
+868AEA25DA3D5413467B76D2F02F8097D2841EDA6677731A6ACFEC0BABF1016A
+089B2D24F47B9D66B677886B90AA787AD865B5F78EE434AA47B7B0F1244A4215
+251FDCC670FD01A92226E2C667C2344298D001575BDF782D969D836ECA11E229
+C7A17E28F70F9B17273FF243452DA885068A8BCB5165534F3996CBD8D97307DB
+593D606C197AFC259E691C242F6E1E651575B6852AAD54567905E6F542DCA109
+7F6DA24DC9112FBF7CE48B387953787B2BCB841873AED2DFA83339D39E14F4DD
+3A51584527AC3A93630D121E2AE0C89D9C3F2FFA767743B1276BE1E648041010
+0FD510F1A8
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMMI7
+%!PS-AdobeFont-1.1: CMMI7 1.100
+%%CreationDate: 1996 Jul 23 07:53:53
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI7 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{0 -250 1171 750}readonly def
+/UniqueID 5087382 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D77639DF1232A4D6233A9CAF69B151DFD33F
+C0962EAC6E3EBFB8AD256A3C654EAAF9A50C51BC6FA90B61B60401C235AFAB7B
+B078D20B4B8A6D7F0300CF694E6956FF9C29C84FCC5C9E8890AA56B1BC60E868
+DA8488AC4435E6B5CE34EA88E904D5C978514D7E476BF8971D419363125D4811
+4D886EDDDCDDA8A6B0FDA5CF0603EA9FA5D4393BEBB26E1AB11C2D74FFA6FEE3
+FAFBC6F05B801C1C3276B11080F5023902B56593F3F6B1F37997038F36B9E3AB
+76C2E97E1F492D27A8E99F3E947A47166D0D0D063E4E6A9B535DC9F1BED129C5
+123775D5D68787A58C93009FD5DA55B19511B95168C83429BD2D878207C39770
+012318EA7AA39900C97B9D3859E3D0B04750B8390BF1F1BC29DC22BCAD50ECC6
+A3C633D0937A59E859E5185AF9F56704708D5F1C50F78F43DFAC43C4E7DC9413
+44CEFE43279AFD3C167C942889A352F2FF806C2FF8B3EB4908D50778AA58CFFC
+4D1B14597A06A994ED8414BBE8B26E74D49F6CF54176B7297CDA112A69518050
+01337CBA5478EB984CDD22020DAED9CA8311C33FBCC84177F5CE870E709FC608
+D28B3A7208EFF72988C136142CE79B4E9C7B3FE588E9824ABC6F04D141E589B3
+914A73A42801305439862414F893D5B6C327A7EE2730DEDE6A1597B09C258F05
+261BC634F64C9F8477CD51634BA648FC70F659C90DC042C0D6B68CD1DF36D615
+24F362B85A58D65A8E6DFD583EF9A79A428F2390A0B5398EEB78F4B5A89D9AD2
+A517E0361749554ABD6547072398FFDD863E40501C316F28FDDF8B550FF8D663
+9843D0BEA42289F85BD844891DB42EC7C51229D33EE7E83B1290404C799B8E8C
+889787CDC7AA8BEF7021B3C18A0A61A68CCEA80153A2EBF193130A4DD63DCAA5
+B689119E6593852F32596F0D45B483B7FC96075C6154039D2F9E83ADECA4FBDC
+A0A5E10AE08F1EE1D881CE688E1201FF4C96C4EFB50C3C6540FB74553C1857E6
+39FC3DB7E2885F413ED1DA3E61BE83F148A857A81069DEAF0716F44E9695D347
+E548E8E69E98860CD08BE06BA44EA7C49C08C80A6B79755DB7A6B6056E888D4D
+9B8E0534836287CBC842375D619772DC60905044272D1023ABA45F38738BDA5A
+161F26492ED84D0DD7935E0C6760809AD184EB8F51591F236BD17A6FE75B2186
+A2CFF5D4D6513BBABBC298BC83B716D87261F2F175D73663B4B8CC160B6F60CB
+FF027B46F06F0F127D4A4869E5366E469CC962AA6830AB9DDA82E0ECA267A776
+3F9329AFF02A816A321D9072E38A05A8D599E727AB5746DBB88D273F9F2CC3E0
+85C87C2CE892510715A4E5D5ECC81922A7AADE1E69D5A1BF21E69471777C925E
+E4F141255D439828CE23B5EF89BA9BBED4F2EF632E2BA49AEF29461B7A0F9D30
+3970358FDD2F048AE153E97947056AB384260E13510582EF0445292113BAE7AE
+C920324A3FAC8948F8E5453ADF1F48D9619A6B3D8811E6E5B7B550720330CBF7
+31B7EC28C5D52BD194818A78DAAA056986BA446D108B5A9B07ACB628CA2EDBDA
+33106AB016FE432C5683FB5400CE6A517CEADA0658FB0713AEDE6186EE3E44C2
+E6E1EF363D3EFBA26EBC8DB48C7B0E89FF26D2EC628C60E9C9B20706F0126CBE
+ADF85094568F7429296E392FC52EF482D3EA33DB207586546E00C88E5B352048
+D487755327503593BBD872785DDE1EBC47BBF7E0D51EF3B3C912A394F577EA6C
+721A0C81F5B3DB66896CDD495E04E0C16F2DCCDECB904DAF5CC87AC8B04507C3
+E14821F48E1F56ACAA2846DB99882F2C6B8051BC3FDBB13F4838E0F1FF89F15B
+6379204D817DD9BAE0141CCE4BB724C4DFA2187BC4C50E90CB17E6D3B07B41F7
+C2A0ECA729FE3D5BE522B30505D06BA64B99390D0555B79E59C41DABC6FBA969
+8AE84300DE70D7E9E2249256C00569BDF0F1125E523DA84B28D87F8FB7DD6942
+DF64CA9809AFB91EF1265D50F64B1A1F5B6630003900ABB4B4F05FB2C4DCAD
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.1: CMMI10 1.100
+%%CreationDate: 1996 Jul 23 07:53:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-32 -250 1048 750}readonly def
+/UniqueID 5087385 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
+990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
+6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
+DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
+59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
+D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
+8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
+6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
+1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
+03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
+95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
+74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
+3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
+47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
+AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
+42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
+40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
+B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
+956017667589EE6908966A17DDDE40C2FA52A4C9DA871EB00FA63CF1B8CA7EC1
+54766CA4DA3A90C2527262A754335F7F361649073540AAF85B7995FB5D2F6E00
+62D0D0805D2D5682D5AFFBC041924368601B68FE333BAC8A58A7175A052BDEE4
+186944AA16B0BE190A6155AA7E3F754B87B7268BA7DE37BB9EC4F332F315EC61
+363F8A7653391C915F916CC8207B7A7B6A0B9157EB101A04D916B37D96B9D5DF
+61CB0F996EED6AFBA20C95B94ABBC54A0F7E24A6AC9C18DA3D3AB34BEE51F245
+075210C06020BEAE8F8925F80D12AEEF4BEE38A60ECCC6DD8EBE8788FE16A8FD
+CC4F03C4E328421C57DE91E6DE8EF3777B1AE502DB22053B909E36C625C6685E
+4A3EC4C54DFDBCF63B1E244D060B8B0FFD20296EB0E9F459C161BCBEA03CD05D
+74474323D74CF724CB2A2963CFF80DBA8EEB1406196B196F87DF6A218C0155AE
+387EB279B83546CEB55F809C2705218C0DF08EDE7D392FC9981D0B63BE6F2722
+4CA93A9B206760DB784F5167D9023851E167D0146576A786F3F71D9EE878708E
+EDC9AD3023FA77BB446DD6E533ECEE879D8DFF7CC7C069A843A068458BF453AF
+0D4D12863F97B7463B4D57E175BC02EDE74AC7B2143D7DC2CBC3A67A1D0EB3AE
+3C96A18FD26524116F250457E0E4DFEC040F258E36E8841F1773247CBD4F8770
+BBE96808920AAA1112E44682788A0A511AB014DDE59A251E67C8618C68C3FE88
+F5643D845A2B2515E4168CC848B679BF676B51982C2E3863940A1DAA2EDDB162
+27ECE62B925333B37DF910A3D55496468D75B5E411E4D524B63B383B23A6DEDE
+D04E876E0B7E49B271ED5922450F299EBCDF78E0A612882B7E2D8F10A6EE3918
+04A30388586071A6136A505CEF407DCB2FD02CC6318D05D4E2D23832404D0C45
+AEAF54AE4C890355C7CBEAB4BAE57FDD1289C05A47469906AC7885082EF9684E
+F64220D410FEF2B755FECF25B38D3DAB61F46557DFD2D131EBE932C1669C5C3C
+663CD8DC07FA01E816C43A2E306DF5F0830F828F11CCAB3AB7146BA135BCA1BD
+167927265DEA80480D7ED71B1E4F2D4D83570218841B19FE332C7734FFDF2AF3
+1E04F13752DCB49CEA4288BB39BD7FE26BB36AE639D216F37DBBFF28A2EF1309
+67BED6AE2C51620892D4D6BD33EDF5799B71E3EFF6258BE95BCE6141B0743AD8
+46FA27204B9D2995B1EC4D2F315092A3A9FF3E1EE4BA8FA94484C8B88875AF02
+808F5AE57AAFF59BDBEB04C7CD75B60E7F370DF2DBC2BCB2F1A7C7617E497E03
+1C603F59390725B1BB31EDEEEFF359B172A35FD8DEE868AC1CCC609CBD565B75
+D3D5A21746D588821D5B64CD8B4CFF439FB6992AF8C88F923C3E11FE34B81C66
+34E1E9FADB43F7B17686E652931A47E54697F9075A445A235693384465EFEBE7
+720D3D81A52E3BE6B3329107CFA616853E5A88350F4C45D47CA8FB9EAA3FB84F
+9B5A5EB6FA0AE65AA571CF343C21E218447904FC34AB9BF9396428E9A2FBD92A
+CE5D3FA9064E39DC7A012E03AA4A53DE5C8518C8027DE015DFAF58F1392FB9AE
+BFEBB69158560785FE26C5706B52D1470025A26129D9B2EF7E3573559704F053
+18C70C05287A4067EC6AE9B3D53DC98FC901F252EBA57833DDCF07DB06312E4D
+DBA19B3BA0A2DE342076B4ADAAEA8BE790CB0AA58B0351C1E1E2954119105C07
+C030F25A58589DD1359595C6AE90695956E8372360E274062DCB120819860875
+DB18F191F6F23034F0CF2F66B07BFC8BB77CB22CF9A560A4BFC48F511CB719F9
+ACE28E1E3D9F8F26E4AEEC054E0936C13F5165C2A51F59F0298C5FF280B38002
+01B4BF17079D599E28FCE29AD26F5995F16B3788152B034FDB00F0977962165C
+6D3BB652AA49440CD13406C91ECCB48CE91A2F767DB46826347840866A55CF06
+2BA0AC876673FC28DC7C128A54D5D4948227E1961BDE532DDD2D42C2ED447EE2
+1E069BAE97B8DC7F9C50FF4EF472EEBD838A331661E14AD977374ABBFC265D7B
+87B25C9F0D0B9263620591586424E8C00BB3AC276A7A8F9FB52647EA25F1860D
+F9421E7C710B4377D301E545C88106C8125BDA7EF2E490346CE8BABFE4D0DE7E
+A3C5E1E487C2A827D62671A91AA1D076FF36E8D02742706298352A27B3566DF9
+4A6642753F5BE301AAE708BBFF1E49E6EF62746EF32DFA28B1B4B7E24D249B52
+04E3D6533242BE959C6F82667117A66304F952DF207E025C31E18F2964F35378
+4652A2FA807874E7B45C5993FA6A700EF7455A1DDFD2EDFEDBEE6E181C138CD6
+0787C26396FA0091B0771BBCD65BD7E27A4036659DDD80C85B938577D8EBBD59
+CCE88C5B1A7B11EDEE9BA7A62A5EA39391948BB82D3A5E9AC8F3C482E8C01412
+3851FA889624DD0C547588C4CF4383CA77B89910205B3754714ECE684374F19F
+BAFAE78F9BADE4CF36C547F2B37D39FC61289A6F84384EE9CC94C89F3B77EEF5
+422161E96C3EE43B715BFEA39F0960707222A00992821939F47DE593496D032E
+26AAACFB6B654BB23134FA513B071F222B46899CCDE689B21DFE1E3564B3B723
+A3FECCB4DB42B36A732309ABBBFC4162F6B4BB4D04B2E79866092196BFDF42C2
+CB432A208B3617EFD785FEEB65B86E5F72B437546123322B4ACDAA813459EDE9
+AFA77402E821FB0CFE232DF99A78146CC98978D8587BB11C41A0CEAA33DC242D
+F35E2E2F3158636C7AE07846C8B8F9F50EAD2B1CB295FE99470EDF5559839F58
+AD101C1291084E19C89A26F8B5AA57263202DDEFD234D20540686EDADA9BD723
+D486660A7AE16E1A81BFEEAE526A17B7912EEC6F91566BB5C323030365735FBF
+3E1FA11D9F20C0227C8480CF861F617E90EB04457725A1E0346541E1472EBAFE
+4DDF11B6DAF6694090D79B47EA8106E7E8445E5BBCEC43FACD971443A14C187A
+B30CE1735052EFDDE8A23A8E1B4C9263C8CC11DA4D188F8FBFA46BD401D52BC0
+43E685B581E9E10C9EBA6CFD1F37EB1B4070860C44CE83D76B44ADA06F1A1941
+649BD12436ABE450F01D4CC88A0C93B76AA72819A0A73CFBE81A1BDD13357D81
+00015CCF79954998C377332EDD62B855C59DE9A3AC4184F4C6CE5FA52E7D8CCB
+0B4614BE0008FCE23E592501E4FD0B01A7F2932BBD045FE05A18A2824CEC1094
+E1E5D882F0570F02E31192614C2FE5EBAD13C3E7F33B4D3EF46E88B3FA6CD2E5
+34A9C65CBE2EC576C01C3C7E7DC89BA1C0E8779CB9C5382740A27A3FE4B10D48
+41342DA0B4A2CEF1635E3CA52CF292A9E582F4C883929C460FF0E9B3ACCB7612
+B7415FC92E7E8797051A9CB5B46A3879627B49E907D80B50CA7C6ECC1FDCC5E3
+0F5FF5140D8F1469F7505D5C21A11D5643C2B945723AE5A1CD8BE23BE7566BF1
+3022E58B36339BD8B86500D9FF843EF43D0A512EB6CED1DD3F369B37573ABFCC
+382DD5740E28DE595B6C5962BB7EBC54D0536D43AA5FE4AB01F04493DA480AC8
+0FFC3352A4D1E03E3FD76596234A31CD63BDAEFCEC5E04F953E293B162EBF2F8
+6F97E1C8F6C1FE372CCE00A951D16793E865F0D24BC3471EE64FFEDA4FD723A0
+9F25D39B69862327C82C21B786DC97E4DB8F7BFA4DC9387D6BCA442530A85675
+36C8EA5EC1472281CA6297C0A27E41AD936D48FB2E7FFC3B779721AA4532B84F
+2959D2246DF54087D48432D7BCBB1FD1D57C90FE107D47EB6F83D2C13986D8D0
+302064C44333F759EEEE2757B16266E3A6B986552612384838E736ABB33492EE
+0CED4ED94CDDDF630BEF143560CE7FFCE1D91CD5EFC89CEB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMITT10
+%!PS-AdobeFont-1.1: CMITT10 1.0
+%%CreationDate: 1991 Aug 18 17:48:50
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMITT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMITT10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{11 -233 669 696}readonly def
+/UniqueID 5000779 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D004D606918A40B8D7BFA821B73E118040992A4
+E1BF99740F8FAA47E4349853C8149C0F8BE2F23C6F332BC0373C867D0715E8FA
+FF163A60AFD0FED665D5829739975C5DE12EB30895604D211F645D4E13330DB7
+64B6E35463C93B752F691FDDC44595B0A0E9E57C6F649809C4DBC7DB58102A60
+46349E9A5740893A1BD4536B99ECE72B147B713619037400669C07291022F84F
+4F3302F8244D2F0F1380466E81E0B5E00AF33E021A55620A7A93F3BD49C7040A
+67C096167F502EF2051B526405B9391B4340A3FFEC103E317E315A88D31661E1
+7E4104A2B925D1DDA9586861904FF6FFCE6A8E808385E4C4014F5A494874E2FB
+C3758D6989AB68C4CEF82F92B9439794FC404A29D086ED6B27997735BC3A24F0
+473FFD74BAECF5282E2EBFCB92D69B81C568D394055E2E30A7E3F448796E4EB8
+019AC2E075377F777183BD87FDD194E855ABFA35AFA73304DBB181C267431B16
+70456FD8470B525011891C1E140B8FF24A474B89F1CEAAB509F91FCAF512E16D
+8413BAC0C664FDCD31245C5996F4883305D3EDF1C8D1E6F0B1E79A06028BBDDF
+6AA5B515DF33BA8FFF2394262F3FE1DF95AD661322BFA5179E325BD1B1EECE49
+69F64789FF1BE8DE5CD7485571A07471BD6CAB4891BAB122BE4C4A1B7176F33E
+A1A434F745811B71EA8AF73407F32E9F4EAAE1C1FAA979523C18A24F754C307C
+CE056DCB71B20292D4FBCBF9AB9E9B81DADAB90E60BE926315049E5BF0F50315
+66D82E4963CB556F19461F43EF80302912AC1168884A1692AC59BFBC431B14AC
+A5FC06C4AB595F9DF66CE5EB69568038445A9EDDE20CF92BA308A239E220C108
+B441B0CD257914F4BB909D017F84BDE7803F8C274AA842E618CE08D3BAECE39F
+8D5BED9E69EE27E42206AB6612C400E86CFF5A9899D03E387D88EB6D0902FA3A
+5E40FDAB80A8DA0BAF3B1E4E6A55CC7616A2F58CC7991190E95CA9AE13360AFD
+57973F2D1C9197CCE7C66F8188D5A26507F69C8AAB1502C52691A60513EF2A41
+7A525786856DD77E2823F7F3E69B61D3739432E5EBB73A78ACD89F62DB04052C
+7ABA54E37A555A688C91CD1A02D5B7458283054BE7865B202A1504E0CB4E6098
+6F371F76139DE72A18E7FEBE5D1A8A2123C7405E3C93830CE5F1FE4140142463
+6C978D76B21FE9148C2BEF436DF915BD56A9C74702770D39F54AF1D8E45A0BDB
+13DB80345E88474C1A6FA482AD20048FF67102467E7C43DA12FDC0C195ECAC80
+F2C9F26C8DDD16A634CBF0812755ED87C3377772F9CF4681CD9EFDEBE4C37CFB
+A2A5E7FA9010CC4DC059BC1247F8517DC5183D3C640C4544A32E582BAEEADE53
+648325E71402972963C37CD98A907B0758B2EF76FE338314C7CDA7A76854C59A
+CCA74828C487425E9D43D4C834F25A65FED230D3D40C1DB1FCAE8A83FA7C468E
+7B179B86BEB6DCEB5FB68D425B03EF8A8E995AAF4CF2666A4B42A41CB91D2789
+94A0438DC096F0E04D73F57480B343D797E87F9BB277084FD9D14E47CF95EFB6
+81B2278AAF16343A11F9DD10C8D37E1D06637769F6327268AA338A7FD65BB3DD
+921B4A78F29323DC8A1B2F9359468462AF6AE4FEEB6DE189DFCC2B05F31C52EB
+336D9D0D805B1047EFF5CA3E10164A5487EE87110BC9CE5EE3A0B0B3B8E64D72
+80DF8899E1837D400E8EBF6EF10CC42A80ACB3A96199690F85683B81E9C69E00
+34BDDDCDC452A9DD8EA071C214775AFA850F5679A11C3DCB5218E2DD98AA271C
+B3723481A55A6F23DD6A684AA209CDB6C5098F3969B2A9CA8A02EA88F6EEA4B8
+9A49D0FC9A9607AE7F6D75584B023BEF2D0A0EF42465FC68B8D181DED304F60B
+C3E5917F75D62F5863372A97920FDB944538A4B6D8ABB9D890D9B1A2D72C54E3
+9FE960BCD048518874AD0DA55D2A364365069DEC50C30CA992B156213486DB7B
+91B90FC2CA4C126BB826E12F8547C566310163E9BB557E2794727EA62D650D65
+13BFFFED3ADBC75152C351175DC2ECD0AF98ACA21E004F16D14C673E4B0B3448
+68C2170A727921188E9540E2BB42EC7CC025C5AB99DFEADF3E1C7F1CB4A032F2
+971E065692EC018310C8FB8FC1909120AC46782B0E95DB77245BA6679479BAD0
+6D83CB891C84ED38536A272E7BBD17004CB539F5F80ACCBF645762AA075B8D88
+0FEE93DF27B7C5E966BCA52CF3CCB81D879F9D284EA9F9A0D257018930C8B4D4
+3643F654E57BF2D6068F2A68395AF6BE27CCB5A4651A7E5B43399D148739F9C8
+EE3CA9AA2D7BC32443E7952B5DC5E500833BDD303ACE8794FF3011EC74A968CE
+7273A103B06C95CAA3B03516ECA099F6F6E114AA988B70FD0DD795A595043E40
+8ACA143F9AD65C78794C62846F73666098D839B1F3CA40A892EE12B6B0B05D4F
+E3DD0AB63B73514327F056C95D7E2464C1B068153E4C17B23391C8F98326A11A
+DE2DFDF51C840ADA2517E85A9BB9E1E42C3876E6765D24819A6F5CB1870120E6
+42A1264B7739F4A462942148C8A59D5ABEBF06E2FB4906D51DDDC9DC10BD8FB2
+08E00641B3982B59B28574961EAC4A284C31F86AB611E8AFD84AC06B79AFBEA8
+123EE35722A2D4D2631DFA6494A8BF3F7D3F9414A728CD31F7EAA5AB910AA6D5
+F24BD226B8DDA3C9D06AE7EDDEC51465832A77F973B8A5A91DE426E44FE6F915
+03B15EB86D0920632816BEE499A2262C9F0BF79D5AC665323B519D409E1B446D
+6D41544D16AE26FC325DD0C5431EF4A38499C679351F87E8D10DBAB49561B314
+ED3EBF05CA93949F3CC893A5AB49CF2FBAC82F7B675A3E4AC18F1D0D2A7098A7
+16D0DFBC98ED8F85493226FC9A79F4099556155FF0D1C4898B221071540890C7
+B476E09083274B816EED40BC50C992268A25B81A5E77BF1B3D680307D3B91686
+63E63093267413229455F25B6ED1B19BA481418CA8B752C1482B5064A65F55E1
+FDD4
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.1: CMTT10 1.00B
+%%CreationDate: 1992 Apr 26 10:42:42
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-4 -235 731 800}readonly def
+/UniqueID 5000832 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
+38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
+D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
+EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
+A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
+F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
+4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
+6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
+A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
+E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
+1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
+452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
+8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
+5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
+DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
+BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
+741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
+E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
+E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
+D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
+C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
+726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
+CEBEF0C9440DC034DAD9C19FB27DB399BDAEE22053591D6538587C768C1B7B0B
+7D1E222D2D8AF3A6473CC4C0D6C3E0DB49068CEB8C9BD1C5CD486A50DAA10BC7
+7D6286142355E3F21DD254E27C00C442728A0BAEC9D3F17AE9CE320D365152E9
+EB0D5E3874F2BCEDA98521D23FCFC30B4B69DAD2ADBE80E5964ED0ABEF6C73B6
+DAD30E2C57D77005F194AC881C702966F7A907846744065EC951369C37D1382C
+520669C312E70913B46707EBC5FF89378A24C8710AE53CF7B820037A908ABDF0
+7F0397CD075EF9CD41082CCBF63E849C48835E1054DB1E8E3B5DF7016CCDA7C3
+6A31B58E9B9A55BE350F3FE91DEC2F77B043E463BA83AB1D578004557FCEB4B6
+5EF62046F385DC3613F378022133B24D6A28B495296D6F766EFD6B0F90599C01
+A82A5E230905B36A856C799E0EF935044927D0D57939ADB4852B22FDD7C6E7D2
+3DE0BD07AF3FBFA551A68A85624CD4262561683322148856A2F385A82CA990A3
+E4A81CBB9CEF042A5F11724F6C4DEA0CD938EFB1826378937B985755706C4E12
+E6F6E56B2389AE2A6357E03826EF386C56B8981C682AAE950282A4CD40C3B8DC
+A13F57B7EC9BE8C9847479061F95C96F703D78D1DCE7350A147758612AA8F479
+2F2F5F04FDB35F190FD4284E722C05642446FB4083EE8BC29FAEE90982CA3FAA
+70A26757AD09278BC7CD4399F08141D7B16D6BD448C4DFAF6FE95E002D8A3F28
+238886FF0456712BAE1316CD2108563C077F7B6542BB955B51614DC140C53DD4
+77A3690DA1249F31003C093533A0FBEB51EE57334655BDFFEE5B8DCBEA4E4804
+C07814F63D4815C610E18E8565EB59A5773D2633CFEC3F10809EE9E592C4F519
+E6C56610BB422D7A2ED72A737595855C4D0D3D3E50EEE7AD2965805E7D6536A1
+2B27974AF657EB9BB624C7A7D34C29F89C28469F25FA5B2AD61570B9809C8DDA
+C352D8CCA595D80662C5517F1007DFCCCD4E9D867A7520BCBA4E6F1DAF770813
+DF21395C5ADF03B4B2E4978C1291565E82505946A8A1A3CE24B99DD5F1B63817
+2E6EF93222C61C371708B208F4522750FBD3612DC8EE240D68E5E03072C214A0
+BC53C99C3C872CDBA53087939ECA67072BEBC3A21F232AB8AA6E4F3845035BB0
+79C538EE56D7E1B34D5863A006FB50DFDBEA54B89088C72E6185242A5FEC0C47
+4E1C4FE12A82748DF51A8A73E1F5C1F824C1E9C1514B5ACDE961D828B0838838
+D84915D5C5D2A56C195D53E400DC891F93C7D1378CB421EAF1AE7CEAAEF12DDF
+23A813CC33139ED942C21275F9CBC6FDD139D10C86F006CB7B869C9739EDB68A
+E328F1D7823DEF0CC4F57530A6A014C9B62B56CEA7730C1E0D307C8501F38436
+08B30772623A1EDC5A3ED07C0CE839B5F68CCDC433375452AA391AE6CC448D6B
+6282F6AF3CF5A28EBA2D03E91A067C0C3F87EDC628E34426D2DBA00E86BF4DAA
+EF233A4FC5CC892016A8E18FEF14267755B3EC5AD047933D1ED727460786AD3B
+3E382624A45FE5D12E8E937CFA857901A43E6A92EE507A5657BC77515CF4E96B
+F18C3EB8D9EE369AB11C1AD6D39E048CB1DCAE868CADE3E57857B2226A8019FE
+05C120D2752805C245BF4197ADAE07FA75C893868AA883DDC81401BAFE207F94
+62283872FB219B7A8B69A9B6F843B98FEFBE8F21D881FB73384D5EFEA8EE65AD
+0A19C3C99808BC1BD4725E0C401BB62FF6B16C8312BBDA4CEC405E90E15B4E80
+D757337698F191D31DF8546E5D15B225599CFA630C64423DD2C0436E79377517
+BEE6A70DDB07EF2B094CE8F87724071FB1EAB4D95AF0CA8A70742F9B2ED032A3
+7A46B79DBAB1EC68F8DEFF2E80A6B6DCF04BDF19D35DA47DFC25C6D8EEFC7D11
+95A3D3AE6357EF72566D6E9F083649748871A5333AB7807B4BB79D1C7EFAC203
+CFA26E939370A939A63A01CAE2925E486CD7ADF568FEDE0D6CD6360D40EAB4D0
+87EA521C1ADE95A72C7D321729CCC3B79F33AE4366256F99FA0364F7067B1E15
+E0252C72E9E241F40EECF1CD93966A37FABEA009EA33C80A316CC1FD52EBB223
+29B8B57F11EC7F1ADF681ECCDF1D222E40E41DDE6A0C163893C265D72995316D
+7B2E69D84494A69196BEFBA207896B2EC68A5F60EED832D7200350463126812F
+B5F961037586A19D04A7F19D753C4EC267FE4882CC9DBDF44AA52E01524A1B60
+48FF228C0D55AFA2B9644F80F069242F2AF21F1994958D60E62C1FCC5D8A556E
+36888E0395B2A99A8FB15E2AEB09F9AD85DA96A2702DCB69FB8E314F77B2B0BB
+0A9F48747AAD3A6E188FAD71263F272592BFF9D9D6845F00B347D837CCA3B843
+B9CBC842940C0FDCA3CF0CF063662A2B54E9B3E69C9BC7A67714081F051E680E
+126EB16E7F80E5C61C9925D9B5F25FEFCEE9E399FF655BE9B43D09EAECB0B748
+2372B2A7FCD9F54A5B89CDB1BDDC6C03A0866E6BDBAAC9E83DB832E94B9226D8
+632BBC8341FB404F9669E6699F156D02CFBE26B5110CE6F48C7537F3136D584C
+6F540546F93C1E75A90F011C919EB2318CA6E6712EA341C5B6D790194D26AC33
+BF868739042697236F95E2CCAA2B496C58A5578A91DD01F4E41D817F36B954B0
+1FE9AA3F0B4C513A907F13ADC1D28D770224087B74B8BE1FB39EBA6C9AD7E429
+19DE41B950BE642CEFEFC50FBCC148F132D4534515AF1C1D9417DCA4D12ACD4D
+A27AB4C5DC37C26D7E1F6591FDB32469943688B5DE824A48F4C92F7A029F40C1
+0CAB294FA8FDA6354116DAD3D86683ABC290E12B15BEC6E8CC30EEA63FA29F29
+759E17F56F85504C67DB97DFAA08601EDA4EEC89B17EE043EADCA6D2E52C8101
+E9ADDC22B72401C79F9FD459A0D842FDD93C7BFD40AB18347192F395972C4049
+51A9A5DEB100F70184AF68DC0AD5AB6BF2DB707F5B8A646A97523A6668E58476
+A65A903D094E9DC397DBAE9F28189BA38834F3C7870FC8200DCB0EF4F0BBF6DF
+5891AF0ACDCF98AF6F2333A62000DD57A3CB7B5B632A54D61A5992FD4C9B67A6
+2810F1E8230349B781C0FA96BF24C1D8475C2F70B9A6DF0AFC0475A4469FD8F0
+F19151AC0201BF37E367827DF5956A599104E297ED3C8051464D44288911433D
+CC9C73C2ACC5DD1935E2328AE61C619EB8B4D55F449074B0E5B6A765B7BDC992
+086C4F2002A76DE7144FD9AAA48A24C38749E6C656994A1C06F897C082226FE1
+06D8625E8FFC12F38543FEE52DF4C62F2FECD94512A8DAE9CD562EDF08716E3E
+EE26803FF8B92FF6B27A57BF3BF41629290EBBC3D65D2E9C84480F863BECAE2C
+25376E8BA9299383387F86FA61ED99FC31E7E19BB4970FF48B7434C474B83863
+CA48F7F5655D7C4D91A9BB7CCC4CDEB0C9693F195E41E14D4BB2672ADAA40AED
+158A653E8E2D1C821BBEA0F098E205EDE18E1A705C054EF7B1B25ABCF62A556C
+8DE6DB89B2FD1BA70F6FFAC1462AB5E23FD95E193BDEA3C2D516B4DF079F4F42
+687226F6388C79A6B3E25E69757D2F7505A43475F428CD3C1E8DFB4BCE7CEE7D
+13904295C3C0B91257E20355FA5F3ADCFC35D01BFE609C9819F7F9AA299556BF
+AEF513F6CDDBCF7C56971B1408C805784DD90A5C6E25BC65691D3A2541EF652D
+34C3A151AAF879093AA4A6E2C7E01CA5315491D2717C33D0BB3D5819C033D1B3
+00EB477EAFE9F4FC4917883C852E4DA27417603968F54069B903A8083F20A975
+85FD8C632C3F3134FB0444F3A4E12DE87C7FE60E87A75663EF396DBA8925D41C
+4A35ADE42218B62C28997F653AC8B42EFBEDD3B1C3807AB66214CFE2F15465EF
+BF481CAC58269F20B592C45A228F4DAC3C16C5896CEA64EFB0ACA09D0C77111C
+A00A64544D04AA5F701B2D9D8257739C468B87AAFC14D5585282BEE94A6FC403
+BD98BBD249117B7EABD7CC9B0BBFF3D13703EE2DDDB9D9771CD8A1E955982373
+7427C3DDC752A19B23FE8BB5F6EAEFB35C60579238B7998940BC65084B5CA362
+4F5F8C13D1F2E044A3BE5C3DE3398055898DA2F6D91140A415F1DFC3C4C7B486
+98BFACEC54A918504C1D27A750DE2C7F128018D91CCC583EDADC6B3880B3E89C
+AC128504E8A5D450B47C6C43F7A98264EE13FAB026929B20843EAE793E82994D
+AE65B3D67316D8239805D9CFA14AC80FDFD605DEC42348BCD827DB40BE9E447D
+872690A562579E8A2CEFA2AEE3991D87A65EACB9AE0B4E826D3F2EAC3DC1053C
+D665B723B94C87BDC853FA2905ED91D9922BA702FB268B11B2651F340E669170
+79A14C1F0B6B2811E43AD3A0E886C27F143011F5EA7C0B04CBA5552B81B71108
+F9E3DD19F503074EC7562ECD401C8A5BE45EAF99893647763E88D187E9D52279
+6BD918D034445D8187BC8A1985BB6B7841C3543589DF478704DD45EBBA151FFC
+C5742BE144CB0B411021B45086F8E1F401572F0B883D7DCEB72E158F8D959540
+14951D2B5ED9A56655753F27F37F4E506601BC72E3D8175126719EE6617AA277
+7E6A17E914A83EBA0241F25BE6D72FBA06FCA103861A396DE9D5B62E94FEF28E
+49884FC961D2F99DA863799589D04080FAD209DF2CE3E89784C764A6E518695E
+62D97D10FBBB37EBDBAA54EC82D8E6691185B3E85AB1EFDA43E15ED7CD54BDD3
+6997164ECC2A7925E9A7EF7FAC979375B804C8383DC4BF7A9C3D3B8079A62B38
+8D6896170CDEFD30D963554257C27BE9903836A94A991F33EF30E0B7B6E2501A
+C5209F9A5211585222A291DD79AF1595F5A693658EA6221736551FD1D94AE564
+9ED960F917FE8A8F0ED6D8B31642651659DFAE7314A63C8BA287BFA13EA794AE
+C539BDEC6A96585EA26A136F3B563CBBA242DF695DC0A273ABF60AFE68AEFF89
+154542F6FE3F2C2B54E842708C7AD6F23609A58203D26FB9F0FB9669E474D242
+07876186DD126F9F631F68C7E2E8943D5C3C06097B7FA362A4813A32694251A6
+7B0D3FCF1DB38C54AB30B6064FAF2F4104F3355FEFA4D9D58AE7270CDC6958F6
+602ED003FDD8CAC1A34A8C7B348AD8C6145AD39887154E8C9912438AEAA5F9CD
+EE47C5FFD442025CACA47BA21914DBE707D7EBCAB91E2D6C8ECB6239F93C878B
+6DDDB5269D3D28A539D4EFFD4FD18984819305F93ABB8FA1132DED9D4594F85C
+755EF3EE7D2C8C3F5BCAEFC19E8CC5314C801B8B4835C896C53F8CA7C577728B
+7E492BEC8B7A2B33E52E5F42F0DB1A14AB711ECDAEFF878188B57E886ECC2BE1
+4A8F789B50900C0233B7907650628D0DAC99BC020FC064F7CFED72E02549D2DF
+ED11A43EB7F2EB2728EEEA60362975AE645FAC489A0B11B18C67DABA794F695F
+48EE269EA0AF3792654105036E2C433D0BD6F40FB3E1CA62B6A1094ECB51C704
+D7E959BE4CC92AA485BFBAE5C4C33CA742DE01C89604F6CAB46C9905582FCEB8
+F39CF97EC4A4B3731BFF86C91FFE8BCA46C30ED63FAC1254D761C871BCAD40E3
+6591B3FD75810706003893D4E02C39A6BAA900B2D21E89070F363462BFE9431D
+E3787B935C6391AD97C4B918AB48C9F3017EC93B176E40254BE456750FCDEEED
+C871D0DF853A58B4259483D3A79252DD7BCE76B4FB67E5976C21179908B182A1
+F5EA373D6F575FDFAFE46BA5A13D55A0B5526B384480A1C8696177D5D9F0F109
+AEB138664D5E9D81C2EBF3868683EA2BDE0F1BBC81EE5A086F3F97E9DB82F1E7
+444126C3F51E16B561F6FA861224067745C164BFCDF5C26B213E51EC1790004C
+25987AECF6C5E23889BB4A71056FB29EC241886476FDB3D23A678118A6A956B2
+5E47FB052C79C3695AAB63F8E45BDD97AD57B62C0360BBE6BBC958E29E86623B
+1B3BA1E686CE1E5CF27C5FD7504A4A755CD17FD2083D7BC591FD4B5DE815A995
+BD15C51CE51392968F60F4790690DEB870B01385DAF9F1D42A0FF4F0FECCA31E
+E0524C7FACC1A97557E03EF0973111AF04E4A32A70D82D22F6E9E221FC58034E
+30B7B283A822646D988E3BF22AA9FCCF8424A9C21B7ACC6184FEF76FAE207B51
+37C3176F923BE40856EDDBC53C7D88F8FCC7883A3EE393AB038511BB97B0CCBA
+59C165FD755BF5BEE9416DF96C796AB7DBEC2B89B4E816EE1E0230E384356313
+BA18B20D2743BF1FF57244E3A173BDE6E60146E340053F63EEB32AD5BA990D60
+52D097C80A61E6ABBD8D3D95F4292FCAF6920D2F7EF1812D81165922397DFA52
+6BD40F44A4E7A4CEB9D421612F2A512094547C56A9570FD8231203202CA02662
+4226FF7DEA1758810A955BA8C1B53558A67F5DDC0D16CEE0F9FBEB8BA8867861
+2B179F5204AB1EA39F032A607360B80B6E4CCE6979E755EFB15CF339209F1175
+BAAD4505F602D193E618F497DA9924F11BABE792DF024532D81306EDAF35CE8A
+387334F5F88F9BDD05D5CD1CFEEC76B943FAE980F29BA6A43FE1F14976DD8A4E
+0B1037B12D7822EB863C804DEAB78BC9DCDA7A3FE6B4D5262629289BE9427272
+5F6709EECE18D55487857F222FE98FA1742F393FAC2EEA8E5D175327DFD6A152
+73945499D0B9C573AC4C9EB56FA303C5E1DDD9B7BFEB38A89BF9B7F6C7BD13F4
+9DFA2F3F5CE16400621ADE841E7C687605844A837F31F8977F90D754223072E9
+276DB412E1238D09C30A21EDA6421C87132B323FB743E06E4B80C6DA838AA90F
+AB962E4EC7F2186421A39F7939094180A1B2C58E6F4A6DEC96E208C77CA8E21F
+C16AA3DA387C2A6770560589B41E989ADAE601223D809186E41647C4D05329D9
+35310773D0FA37940A8185B48B77715A1979C8C60406A9937B86AACC2AB0B81B
+E76E744159A1FFDEBB197A6061A46B7A7D88E2EFCDD048B3ECF8BB523D77CD81
+135EDC9694A9D542445B1969C4880A26DB5A47D305844CE534EAAFAD06E3FD0C
+CFED0DEC3F890E44BB54B45D24E7669EEDD8646FEBD5E9652371C7C11F79FCDF
+71A54BDC95572FD53B1F2D5DC1B0DD5FA39C45D3EF147B775DAEF3F8CCB42ECA
+B0C493EC4A9C5916D821934C3179D3A474F7D462D23345033E95E74378CFCAA0
+5FA36A89423A82311202D1D62D1510825EDBF75B5D104A8CB200FE2A75AE0F2E
+5093E60CB5D3FAE4C1FE11063407F1B3B68DE97670954A4F67BCFAB8C0D78187
+EFA92C6E32CEA973B2ABDD850E1BEBF8198F9EC261118AB750E246289B1B1C12
+AD4B569D189B740546F08011C98A071DEF88C5824D9AA172449C60500584306F
+EE3E022F1B33151AE0C478AC5422423B185845010271772A014F008BE16E4298
+AA081E8C035D4F873B44C70B4F8892ED33EDAEE02A9C4CFFAC863FA97A531BEF
+081896119050B16ADF7F42845553B59F4ECC6CAC54440F225C0079355DB34CA9
+7FADEA182156CEB95D9D313F5838FE0302DAA99927713F093D3F7436D73AB8AC
+C5F724DB91134FC6E592DB7D40EF34B79DC6A816F24D29741118EAD03F128522
+C6B935F82417AA2D6F379E1A98868AFCF131DC3E2BD60B75820C55BE512580D7
+1A8DAE974C4CCBA81553CF6CF50F0682FF99C2986502E8681F9886FDF2278479
+8A619B611F25FC6CFD7EB4F316DDB9225D48B5F008FBA4E3B8EF24383A582432
+A9E06C3F8551B0A9DE2B7762BDDDB155C4514BC63BD1FB79DD66DA7A92A6429C
+FA2C5C655E7DFC118A2E75409ADF5905FE9A7D63E3F8DF55FF79CCB5662F0EC9
+5768A7B494DAF0130280AA391574FC22EED219390A3152834F30926A3B999948
+5922C948B3B2E9543187066CDCF501499F4932824BBC558032BDDF75222422E8
+BF934556DAEC2ABBC1D3A96CA94B22281DE3E6460F8DD232867F080F1E2411BC
+B161B6A75ABB10D5DB5A8F0684130BB138F284F5F2CB8BF0CB787629ED82DB73
+A4C6FEA7AE98E0F66E29213A97FA0C64C0C93D37D6C3541BC4232D9FC3632B3F
+F77D5CDF00337F6346DFCED172E9F829BEC006425EF1BA94574352B4834DE290
+7F9E6DA02FBEC99496B1D7AE4D2D19D9D981E5A8E19AC2F76A78390EAAF05057
+0D976F6DBCF41064C3B9C55468FBF8B31468F4BEA052B1DB3096F69C653D332C
+39DD4E00BD11B2A57E44DFD0CD738589B9F11ACC02DB375BA1521017BECD00C2
+60B8F5F54B21DD50853BB3BF3A31DC75C73C5A23FE71CAFF6EB5A1C063C2C252
+F9CA93E2AE6377DC57A486A3E3170E91971DE32F8C634942EBC3AB01E26ADDEB
+4329BF747D9270FA94C85755A6854333AD24466CF9017962CB10BD6D105B6D22
+4DB5C394490146FE2C52590EE14EE1AAA0BB9D74AC2DC054A7417B78A0FD57EE
+00182960E634FF6BFE810E8290F282B3AC10CE29E2CBD526E0B2840575771931
+0D605444E5E11886B4E2025865E335033E1D6629AC3A5C85784989BF5BEC6B53
+56430CDF1FE72436D5897CBA116B8FE40C92DC3A21AE66E81FDABD5D4BB1EDC7
+3EC0479DDE68049EF83B543989928C85E979D6A45CFE54FE2437F92658138FE8
+0AB5A774B6184868ABC0CE8CEC581E4E135B08DCDA613BAA78D2F0460AC30DB5
+E5A8FFEED0E42950FE33C85D39BF2016C4C93DE5862D714733A2C126BC897F68
+8AA5049D76F27E0EEF50B42BC47BD58A2AEAAC26FE8F40AC489B01CBD252E19C
+56F51E326C08AA037ABC561AB27D45683F9355C77DCC84DF90672C6963804EBA
+7F66055D6F813C4AC44FE0FF1049FB7FFC511E59869D22C4160CDAB04E30F0E7
+135D3C624791A24B4E91C506A1F1A7208EDD7E21EF5F00CDCD0087AD78B7A55E
+16A2CC14899059CC5719AD2D781E53D365021A5E5B302CE1A5FC90CB16F6CD37
+C2694856325462F541ACF2C369A8283C85A67DF4DC775F81253FE6FBE1F0F6CF
+EF8A1EAB8D10490F7DA590C44EB9CD01CBFB8C23F382A27A297E5FFC492E7E12
+E4519DADAF58572CE6B3F881D0BA8C81115CE25B7F34DFB7EFECA478C58BDFAB
+66A972AC5FEF735634EAF2B076C765CF549CC235C02181292307642A3F07D125
+90EE544C1CF87E610A26390F50F9F858708079837C045040C60607B66DCA4BBC
+2AC881C3BE244C66B41B9CDC71F7E98E81CD28DE887E38668EEAC4DB6E066EDC
+E28BB1519F029983B80F309A21A8481BE42D79263EF71D9E11E512CC8B606D64
+5CB3BD0094ED9F66C2E0C3A5FA94E37F7FD3F5742FC1A8984B63E7ED6A1963BB
+2B3904EAC93055A6EB66A43B7FEBCBCC5C8C7E449D40FDDDB935DC6D37B0C446
+4726FBED31F0B78062639F1968D701265DC61105E2B7D12D59FB1F4DC14D9857
+716A080D2BBA517A65F213107FA2B72E56460663A01E33E0493CCA43B927A9A9
+ABA4D6C3767E25BB7B92552B56FB4199E2668AC6D6848C233F4A749D0ABC3E14
+CC3109F0709EBCCFFDC61F69CF028761B1F2944ED82DED13A20FD23A97A42DA5
+97FC3BD1EE19ADB3CB803FD6B57703ACB6B08F9B238DA7FE7E3A89BB18F004D9
+D8736B65E9E9ACC00DC07AE5399EDFCCF1BC166BB877B60F2A88AAEA69D00907
+447312168BF7BE64D50957EACAD6F655D80BF5C0F489D0720F91C083475FA815
+245DFC142C234035A8F4C44566040E323EAEE31A283B953C51AA4CAE024486B8
+2907E5456F36ACE1E6519AEF73C094EFFF9CFCA969D1D6C682188B6DD5750D53
+7C0AF155149F978BD627DEE143EAB28A1E882BA2C53968765CA315981D8B65C2
+FAABCA9A3D7370AB11B4FF995C6D84B6286C7D6FAC7DB3FD296322BE3163E6F0
+CD7F466AF7A32DEAC1ED71C8870C614EC36D05887742B373646FE6C56D7BB575
+8CC6C5BF1297EC91FFA543DBB4BCB6D0A01DD2F249FB3B5E554AEDC28A092015
+82BA4E0EF563843D527A918A0872E981FAF30D5FB29C948BCF6DDB8EC8DE4961
+82190DCBCABBB867A12F7C7E0112429A36DFDEB656F261684F81310D7B32827A
+50F995E86FFA51E4BAFEA27685B37D4D5749A7049DB00F3317D5A8DA32BD0E21
+FF816ECF0E59C9A5A3A40CD149397AB4F41AA2FF7E1BBADE676C91C00AC7CF56
+AE526C4194B534C9FB943D29BE07602FB66998FB321BC940721933CB0C81E041
+F842AE2A595183C54A52ED6DBC58E369DFFE052794A8BBDD888FEEF0720DD4FD
+B9B2E3043981D5438A0341C1A097CF58C19896DE5A7143866ABC4534DE598D07
+37DD09A7EEFA52CB468973F66C9B0CDD709CA493888A795A20D5FBEA1C7CBEA3
+70EDDD3483A99BF747ADE5470CCB656E204EB82FA85B0B745A15AAEBA8362FE9
+16EAD034CECC6FFE0AC86EACB48429E3D1E497747114183077A6D256075ACB4C
+2AEA605D86388F0E208F82F152D2AEE75ECA87D6FC3544144155CAB79C1A9A08
+5FD0189094217AD4E2973B3FDAB6DE3095E410EE08D9A8DFA9CFFC45EF2D3041
+1A903DAECBF3A8B3752B47B06AC006F25111E63DAE7A42541273A4EA772ACF8F
+F1426CFCD25AA1581F15AFC1CFA4FF019308FB762E8568DF012C97A3AF6E0AA0
+558EB834A2A1572D5665B03DDFC868CCA96FCDFAF777AC5DCB55230FD814DCB9
+0DAE562BA54FD01DFF2546DF6E59E2776DB6C8062AF45ED56A99B34F2794C38A
+2FB1E2D36BDBCFCAF50CA5F3BB2E5FAD1A31C7E71A5D97F2654685A366A2C6B5
+A90962D9142F7FA2FEE24D95E2F4E087FB20D742861602CB5547313B9F069FF3
+AE759E2D0959A4EEBFE3247D3AFD04C1F83ADFFAD2DEC7E4170905E372943A9D
+4469649FA534286F97FAD71C1104C2F495B930F832EAC70749A3889F8F1308EE
+2481226A3E653BECB5B98FC16216213319C3C055E7B1CC8AE431CF0C057A1A8E
+BB0B1548F656E9AD865D498C6F2DE40D1DE76A2637319AE8172657AD66DEDAEB
+F676935E02BC50B9DF89DE3462A9E459E9AB9BA1B1D95774732DE0383FB98DF7
+0ED926BA8FD29A8160CEFCD4E71E995870E92A697871D8A4C90EC95E83560552
+110C29D27FF31EFC3D974B551DEEEAB636A27EEBE2BABB3BB114E634FC187FDC
+5DA79F0DAF13671EEC47988D183CD9A26DF8769782CA381829A7C1335D6FC351
+09AC1847D557D2E76A82B37AC35FEC78F2B686D927FA8C57AB65102C3D90DE53
+9D0FC34551B57AA9C48B08ABC163B10521D27F521C327DDA55F3D217977FB3AC
+CE31FA86926DE4A80DA81FA56F781720C69A292FB91A146809A3774EA1DAA017
+B0183AEF8D77B39B1B44957B45B349412B45EFA0490047C7BB16CE5F3F5D0842
+C653875A8DDB1D2EDA87CF21FA5A4C35A5E6D798410FBE27512CAFB088BA2A05
+C730577067423D8D4FD5DBF9A602240986D1E671D6C850AF80DC5ED176675550
+51863FBA4A3F7650CFF664C2DCD7599C7C5A56D7F3EC3163F85C9F0CF0A2145C
+13106D9AC46BAE3373A57E8BEEEC295C079B86CF3B2F49D8A66CF010D21769BA
+6D964A102F8137520C9DF44079FBD7E76D46CE89063C1D059A41984CC1579D39
+98CC85EE377FD1B98E7EF1FB80CC550775A61D50747F317E6972545875718B4E
+E52E2D97C78A25E51ABB805140A06E54F7394E1EB36D74E2D8D188ACB9DEAA85
+E378751110EA72E3FD9E274553E785B6D682B5896EB9A83B119454B8EB50D0B2
+93BCB05CD705ADCB582314856F5DB6D6EEB14B1117CC953534072E660613C1EF
+46177DAA0DFA5B1FC1B9F573EC47C7C54D4299185DFEA011101DCE52E586E84E
+7F549DF9270F34E45CA060CB1F40BA4470C301CD2B5B69411035CCA381BC8E30
+2424D4F5986058AAD4FFF859AD373DCD68CB4E4907B8B217C9C1C716CA7118E3
+AD469A222DD94F9A19D25D0C0E1D3AA9B24FAD74A85B304DDCF02516BAAD26C0
+AA4150AB1E5699AE1FE63AAF5E2B7D210099063C3ADCE495E700A25613A61B90
+1482DBB37A89EFBBA315F95B722F5876867414B368CFC29D02A83160ECAAD622
+B849FD04232FD2F1DEAA35BC1BE29FFC261731AE5A07C17A50437103D67BD88B
+AFBC1C9DDD8E7516643C76F34ACC082D5E999CCC1CC5912BBAD01E736D8ED1D8
+2AC09479D305A9705875942426286CB7D10A305802545ACA124F96BC16C08B52
+CC74F480324F98652CBF1B5313FB68749C791ACEE702A983585978000FCF8624
+3008EE3BF8C090577CA778D1859E4C8D997E1E74FDFEBACE0BE53353E8FC5B26
+E76987DC5859B689A84B27952CFE665EC295CD5ED4D2352DFADEE1869B946967
+D30E6C142BA6830AC5179413CACF57BE0A74628151F028A58DD9769A02F1A785
+70BB5886D59E518902EF8175655CED531414F7B4BD4CC875EF4F51D64988B67F
+A2A44C60187D6D7F61EB187E1315D94FFB06851E43D02E708BDA0F9206CD4D6B
+BE2C38F72EAD5B8D5CFA5966616997DAC60B9429ED2CC832B900DDD150F6700D
+DB923D55C0C82B7BC25D7604718F70223FFA2998C449F2B647CD3CE61978799B
+1C9D1C6DFD60355F97BB11662652A26378E8E811927A7C3C8DB61AA1633A1CF7
+1F71204F661EE80022DAE06EA76393774A026B9B716023F8336E32347AA8EF91
+56F34F01C212D23502782DC1F3B4C4EC088AA25BCABD03C53F065DEEE6344E0E
+CC9FABCA09069ECD310E730C8E12575854B311BD057B561101901EE66760595C
+511E9F1929373B31829D7D38F9A93A05D461D09760E69AD0F182359E5287E8EC
+EE690731B95E89E46C0E6055D3CB2A2F48243507BC673371CDD6E3C8AFAFEE80
+10C8492A55B515E7F753880156886B544D17FBDE655009A000022DC699A4E18C
+162DFB0A3F8E44F6ECAF31BC2E766E7B598B4B3D5E9ECE9AD304700635009144
+94C3F3059F3E1DA6A849CBE49A5602A49F94AE4012A783F8E7CBF6D710B641E7
+A71EE26C8557AD5511D8BC1072CA1DCCCEAF459619F8AB434AEC4597C7D1CFB7
+3058BE49F4465F5BD1124B8E3933BE09BA989CA4993A59C30A16DB3C2B5780BA
+A4BF543D07D9E6AE773C26675C0AD961317E350CA11B5DE9AFB8E409BE5D2C8F
+AE5DC9F0FD473DFC18CC981A13FCA64B31B94EBCE6BE55D67539E421B60BB909
+1E8C1EE99485E083072980C851692A371C4FDFE197A607A2D6B1257295391844
+7F280F51DF6FADFE0AC539AAA83D69576B6925887EFF6FFC6C9073A9A4362F56
+5E3719F2A83951E47D92ECE8033DCAB213FC6A71857D97B0840E197B24B1942F
+29B658148DFD48142639C7729BFCA54A1A4B4368DEB39666AC5F1AAA817D91FC
+B8C833B96F43DA6A19F2D5D99B7BA2AAABCD8D603D5D68616546722A49152D49
+EF845383FB1DD94619EE7A317AB9606D97B9EC7F5ACE623D96EDBF4342D307E1
+20F0CE63DA347393D7B951CBC6031C1D3CE5ADB2949C59E6CACD6279CCD1A159
+5866C15BCDB938975C2C7E668C134BA27855E751DA88F5C75434DC8099D3E45B
+60C362C8FEE346C9D52EE2769D9AFD4CE1E995E6D9F5963272ADFE2671E889E6
+6936064E4EE7137394AAAE8291B439CF103272A0BF86B7AB26EDA3C7F1E68174
+E3B57D3E8CE59E14C19211F64AB7C4A00BAAB61EA42F62E9EF2A1F8D168E48A5
+353B5CFF6FC094088C98713465CC80BB851127694EEDADE92F177312634ADF44
+49EAD077CF3AFE8CB8482349F36EB21B8838ABAC32B188C2F13134A2AF2C95F7
+A543C1CAC0F0B5838599DB0BC7BD5A9F228C826276B1B8C856C9F22ACA3CB106
+18B32EDFA8CBD6F93C65C06B0A61B71E1E474C61AA8CD81BD7195F83F44A2AD9
+5D52A4CDB18B182E5014F4D7896010CE646D86C3E52192D1AF62090AA8269816
+25A2FB6A5339EF866FB41DB10B8B2AE4FC6E1A48F451ADE111EF12D2A66EEE14
+C6B57342010187A6DDBD3BB7886D7401CC35EDCFCCC70B182C139CF9D651230F
+69BB0B0F72ECAF1EEDE049A3E0F7574599432E8783DA487626E7FEC1945DA40D
+1B81B37FA156C775E5519B7C20F175A5DABEED9625C2E6E72349B3C0E0FF2C72
+580369B5645681913AB96AE7F9FC1E1B4C3B6BE5263748F695D5EDE23D50863D
+E6E602FE35FD8993EFF84EF58BFEC5BC10091C6C066C1BE307238EA2CB8B63D5
+F118FAA5ACE68CF79A17F5B56FE680B92B0B6B9FA04BBCC6FA928C08BB133E60
+4D51841DA848B5D7F69BD8C74F8325B47639DF0E7D77E979D965F6B4CE427891
+6EB149014BF3CB0ABD97C460AEC4B276D1746B62B8A89F61DE16AE3AF012B1D9
+E3C7FBDD5E4451AC3FEC65D92237B3A021CC2B23A110FA0A4669956D3830D108
+9A9CEA3DCA631317C78EE14A0022764E2D5F6CA8DDE0B381415F17979E89CCB6
+8AE4A108FE6924887EA9EFC55408D8B02365156A600162A581DDE5F720254D61
+B981FEB4D667766A030711BE460CC363DB70F6ED932F0C34D72830B7D64CAE5C
+77AAF0414D987CEF5ED01C99EB65DCDFDC92CEBB4E0C6E0222E094D910CBC840
+4F2DE1790BC0CFA04C886631EFEEBA9A84B5B7404D9FEE4BF32E3D996031758D
+0CA4338D57E7B99A39CA5221FDF114BDD260ED80BBCAD7CD4A763886BE665092
+E5C3835868CA5EC825A56B684CBC5AAF074E19F530CC5B1322A132ACD13F008D
+AAAE26C52EC3C36E74AEE0208C7B6E1D06720AA4BE6B0D15A740E0AFB8F6BD93
+10D7002F64976BB7DA14E790B4B9C32135FC22BF0CC052C95B1B657DD2C1BB0E
+14D5323870AC1492E6D7F9E0E792C06442D613B3FFD8908C638A30158C5023C4
+BDF26E9FAD6B0C891544D5B41B322CF83C811F0F7E3D857C1C955F7D43BB8CFF
+3AAF42D071321AA362364957F80A493255684DD5CFD0A24C8FF7BE567E8C984A
+EBB31BDD60EB4699E0BA029FFB4A0B324A6C283FB626C53112E6950A60E0B5CB
+039BAD4EB23B52289717A17FB5BB62578BD5942456EB8ADBB128EABD8B0E7368
+3498E8AE1650762DE105FC7C9EA3CB4CFD9E4C24C9FF7A6F458E5B3A609A1428
+1E6B2706930D08434E4B4D52B00489C3AB4A9DAEE69D5C7D99E6614EC894D72E
+91A333C5C7ACF0FBAEE0087EE7AAEDAAABF3CD8711BDEC5AA7E412E346CBE3A1
+897FF1B8C4BF513C62311D74347DD90AD7AE7C34CA7FEBF2E7A938E1C9B01713
+A29C12C6FF9E2CF4EA58F1146729B14730CB82A9A2FE62D139ECCDD2EDC1BC0A
+DD61311FA876042A8E0965E289FA9CA760CBC0F205A189E77C770CFDD43D2875
+4F88945499ED7AFF05F83C5611C95F1C4ABDC2996BB085BA4F1FBEB1209E5A06
+2F489222B06D929E366180A98771ED40CC947CD39B6FF24E7EF6F0DE3B06C50B
+19D01F235C2F89C4481C52EA09CF2BF724D398F1ACC037F3C8112A3F174AF508
+BF17344732D519D71B9729D0B0712C09250BFFF7A5221C4760673711398E7B51
+CBB2F1A3DF2EA083DDFE1D53A19F9674A28103E8EF156D130F72357DD020AD03
+779D685D473A005C2A6C858B54D4E50C509C190EE5CFE9B1E2EA3EE7BB6FADCC
+282AD33F0D5C9BB80D378EB07799AC745979E77FB4EB9A50D4C23C5C6E3FDB1C
+A2CDBB9F8B25E6D3AB941FC52404D93680C9F2F617E1BA8F6F2AA35BB0DB589E
+9E114B397EE125E8312778195CE5FD2C9A0A4D4EF0DE2B7902B6AC2BD3C879CC
+818C521B73E7CA1C8F5A57517EF1DD6D21C97DB04BEE6642247CC26FCAEC1E75
+009055915E85B00847C353B7A7ED0E1A2145D7E605F43198254CE938FF439E90
+7A528E54472754E7D1DEB5F1673EC25C0A90FA3934AAB835731FA78741B85C07
+E7FABD8CD7349B22338201B53CBE54415C9599C1C2920E7AE8264ECF44F2AAC9
+911355ADFBFB77C5EAF67A614FCC13C5B1D11E82C008BB8B494CBB7972900417
+40C2D6A2939E998564499097440CB9AFBE2FB0486295E4BC71931BD140FB2693
+D55A0F50F900C3E47289CCB97024D39307522CEB03391A22AEB93810AF0324BF
+C1D883067ECAE7B856C1F987DBD72A71B6B495FFC0492DDD8FD64B87740E91A4
+0E237B49EBE041D13CA86A2555F00131475C565A9B203C1C55213B91DFECA2D8
+025D9556F80FCF1537E04DF26D1A81DA71559CD5F37B6ADDE61BCA730A991892
+80475D99B2B8D418314184DC368201CA65A95396CFAD656361E5A8BC6EF6C2D0
+EB4F205F44F31191B1FBC88F892018DA6E28E3BF5250640BAA6AB33B31169567
+713093A4ED0AADD10AF8C92EE1A5A3B9005527FB757A79DC2E2FEE06FB92E04D
+B057171674D60778EACAC0C9BD8F7E253AAA9B3BCB173166DA149D8CB8819B7C
+2FC3262BEA6029B5FC0CAFDD8107785EFF6E72BDE892E2A744936D37FE7B9978
+4C4236B618312B60FB490B6CC1EF67CE437361C72551C042A7894E513ACBD9E0
+BFE5F7161A3A8419659045B5CBDB9F23803C452ABB56D5676FD00D4B1CBF0405
+4C53DDC3B3BECD56A3F2603D04FB72B74E921C72265B6DD70B36DA79BEA00C54
+E522C1CE6E0ABE134E28AE42C57520EBCA1B29B67FAF678A66655677EB8D06CB
+B0663F2E0181CA668BC133D5257F09ECEB92901FAAFB8F4B88108C7126051BFD
+A5FC151BF3DA481E4DADA710A0BBEFA8D8C8E1E0DA3DE98CA4B1B0088E8CAC4E
+5D6F3AA05D2228C62FF0DF3003FF97E0D936B39E0972CC543AC6DC00A23F4993
+AE844C6477EC1CD8C581B44535B5730F761F16E6E23A267C54383374A57B2994
+7155E17F76D48650BD95DCE2E0BE5DECEA3D2BB8D7AC00E0F192459AEE146E9A
+5B12E4DD2AD69F33034365523FDA513F08FA29EB13F50995DE4F5757FF68C6C0
+DC83E092E5E27B9C5D8DD45105C03029D4DDC8EFFF7B7E77A7AA51D17DBE4C56
+CF50FE17092D3D96A3A16EDD2E62B7913C9FED11A61D753379D9759D707A383D
+7DA686BDD6069A29B2A0FA0020AE5CF4E38292FC5BE96B9AE3E5A1E512A87A6B
+47E8C6A1DDE4CFC9A8CE4085F0F75EA09921061A73C2994FDE699777FBF46B7A
+6F842E4A9D80CA3E727753C99BC258840D97F24F82CCB47D
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMCSC10
+%!PS-AdobeFont-1.1: CMCSC10 1.0
+%%CreationDate: 1991 Aug 18 17:46:49
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMCSC10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMCSC10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{14 -250 1077 750}readonly def
+/UniqueID 5000772 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
+900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
+87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
+076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
+9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
+FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
+B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
+CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
+40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
+C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
+7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
+FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
+81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
+5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
+CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6AD4B2482A
+0E7D070D7497892E9E942DF58E88CAF0C8221BF36BF7C435BF2C683A4A2EF4CB
+E85820A8AD3486155A40143011BA9D76297F46DEF69ECA4596D6E4CAABF84091
+22A96A4BC78A8DD072FEB759A68A44BE1164638B6D952147EE3C628F9A022060
+1D1941E73310943FA782532ABB1116532AD67AEFE0758C051241E301C7E13A98
+6447EB0180BF6799814BEA4DC0F727D0A40B7BC3B1269CDE174453D6A3C4479C
+146001CF717DE25AC1BE5AEA5F2F1C17719251C429D3AED19EF17A6A68A46008
+E2D14BDE7B192E308040892B6E2353E03BCCA072EEB185D483838D0188848F95
+30B3CDF8A092D8BEE0DED21103F8D96F558B53DFF27690C1C55B275BA5D4FB76
+E9D9B47B8282CFCAE3989A1E0E619BC924F0221AE100F1A77C011A70A9B1F553
+6BCD7FF2C1C34393D1B286ECB33E50924668D8BC8BBAC2F47537EBA2DFF172A4
+E81596A542BE634B8D2BC811364FA8C4D0EC72A9B782859FBEE9E61E8488FDF0
+5C8028648567DB54D9B1BAB4FAAD84B813879E0940CEF9B7E23230436079A72F
+20BC5A7BD99BE0AC09DFB36A7004A76B3A64F6589336F521450AEED068FEEB86
+3B31DD3DDA1E6EAFEAB83C3C950AC9C353BA860F15C689A29118366667D5D3D9
+8E7EC7D858F5419EA67D26BBE8550B756A74EF623A37FA52BB371D53BE8508F5
+5268B21E77BA5F05FF93234FCECAA5993C9155C270597AA9829418E3AC0D2D15
+440857FD171B076381AF0F8CC14C2C334507E2DF9B300FDAC1CA9B0263FC3973
+B4B624801C326643B0D9BBD1132979DC553083BE29D2D36D01F30A68BD9A05A4
+351F90940213850BBF393110E3F6DE9BBA821C5B38259583C6B1A23EF460D9DD
+C304C664A245F3FDF879F6C425503E8FF61D41CE7D43BDDFBF55C64C3EF065CB
+64446F9F85908BBBBC20C22C188680E432D20A0BC50CF0B494FC68276C9C9605
+FFA567DC5333B88B4064849F4E63AB7E95CD92B722FD714173D3C3B51CBD90E7
+B41434F9A9538EA07204CCFB586268C75D55A66ECB5FE5E2506259D1F6EFA884
+B976C4B964F973D3515771AA43355832E3C2C2FF7707046FF63F5A5A0313389A
+010E6C135DBF77202292A97CB3C71081E1263ADD50E24ECA6523A2754D8FEB3D
+AC686A5E6249EFF2647F18E3AD3488486243F7A5369B07E6271D0D96A3683B3A
+BFBF91D735A80875C58C5508A475A7DF6863F88F3370F571338BFDCDBCFE2BEB
+8F3E29E3A18DD5B94677EC261879090C056BB343BE742C1951641A3CFF3B5A45
+B4B54CE368FE610549AC7092B16B7517D802DFFCB3CCF4FC39E0F80197942104
+493CDFB97A5C95FC12486AB34550AD6C7574374514E94EA1ECBDEE7D761F42D0
+39A526FC3182499BA9F64750050E9417428AF001221ADB4CA0328CD17FE8DD72
+F2EB64853922A1A85670DF5ED0814517930A94BE3BDE4751CFE23A8F37B84C0D
+A610F2163FE4D0C5191ED6D93B24A2549E254493599B1691E834DADAB236DEA6
+519F200C7026B92A5B8957425C6656215E624755A5332E8018148462FA3F0251
+AA1B1E85844D25AA0126D98E50D1F9A783FD7FE32087EE9585E06FF06808368E
+262AE001DA6BB224FF37EC6E78DF63501B3A86E55E351FBC61A7A3BD8956E6E3
+4F1494C81D8FD19CFEC510D9128C17F7C3C124B6EA286FB1160BEDCCA7D43EE3
+CCC6A4AF6FE739383665E52C5B3116C44BB0E6BF3C8CC0E0AC827CFED839B011
+6B9E3BD4832E4760A5CD8D444A6C519D5A4E695629E2BF157855F639241E2B9B
+403B1639802DC19629EC2CE0EFADB578BEEC6717F9810B85613549445F8E8DE2
+9169C803A5FBBAA9EC3AAC2A8224CA360A4537211D5CFFCA208999EA59DF25AF
+1D252F6C3941CE6B5D98DC64B9B6B65F1887A39387490DA4D5F696FC61E56CA2
+3119AA8978ACEDBD6C92A790F52CD4AECA8A5F0415379B104FF37C7AA67DDCF3
+6AC743639C3E30483F3E4D499A5CC0A34A302557F7423713CB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMTI10
+%!PS-AdobeFont-1.1: CMTI10 1.00B
+%%CreationDate: 1992 Feb 19 19:56:16
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMTI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMTI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-163 -250 1146 969}readonly def
+/UniqueID 5000828 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
+21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
+06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
+55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
+B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
+0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
+1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
+7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
+7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
+356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
+19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
+C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
+244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
+AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
+5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC
+D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D
+993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363
+2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B
+E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3
+309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513
+F42EDDCF39AE522A1DC2DC523F046EEC4CCAE25792B702C288732F5B13B5CCE7
+E8B6A1A1DB86B1EA38883E481BEAB54023EDD9BB94E7780DEEA577ADAA169E66
+AB7D8607B409619E79F242CF52E618AC0DAE43317C507CDB27EA8A1472D4E8D9
+17E62C98DFB049C78AD15560CE44A39581BD6B555165091C5D41071212A9D2E3
+05965AA02B8A67AEB04D915DADC1B84A531A1D60569ECC2EEFB7B6B0263B8B5C
+E6EE63CED9FA74FC7C03610F6394D64BAE1BF3B50FB613A39C300CA5F4F16CAE
+F9B9F4DACFC69B69AF30E4FE9E41A6DB0FC987A13A3AF3F99127E5A44E7FE781
+399BF303B773BC0096427B18DFD0DEACAE196EB3927A7EEAE7434F70FEA9BF58
+81A9D616F87D300EE8D00E5133F8C8F4CC003E313EBBEB7900321482D9DDFDE7
+1208ACB39BE071CE8782DBCE969790F60A3D8D8DB321F9655DA2577C284AF543
+847780B6C8180221C63954214012810FF5587FC771E18013003CEA5BC5617BC0
+82B7738A9369335BEC45481E256325DBE2534EAD65078B702B38A4AAD3D5A918
+416A966D615A6359878FE529348904FBFBCFC583BC7C13947048E82CC9DC5AEB
+C93CAAF0E4A7EE6122B1BAC7D90198095CE7E3A97C442E22C2C3F7A901A6DAF4
+1F8A5ED47EF9893FC2FCBBC751A9062C53022123D90BC0AD5B284D6EDF4A8F32
+6E81114AA6C450B76A39479DD8B9BCF8C9CE2DE50EC865A05C51248D1B673EBD
+9C73FD10ADCD944C346212E59A4D600D5B2A14D37B069FD21D7D818F1A54648A
+874232873ACE88BF568875202F0221345F208DDBFB813785D054B9785733939B
+BA7776B4D388112431EA93230EE6D48ED168EB785DA2A30951289D3C0F3CC9FB
+525555735767B7D23E09F09BAF68EBC16161AB9AA18EB402E35CD7DF3FBABAED
+FFFF7FC78DB8BC9CEC143A337860AF2C05BD0FABEED88F43CC587629F89FAB58
+B677398D3FEFF710F350B6473D2E1E63AB7360C191B378EBB6E3A38FCD85D534
+67AD6A625D054FECBA0B796534FCE1786FC3F8897D66686FFB4785B002ECF126
+81D04EA847D9A2C6B86616B72DF3A3D28372EA726679800CF216C2B34D3DBF88
+22295E2E99A5CB8B26459429B0C29CFEBF1516CB05A17A6C481AA58ACB433574
+35090CFB7FEC2536E3DA126C1727A5259000C3B6E4E0F689B6BB99A4DC3AF737
+C7390B9234131FC503982FFB735A4138920623E5272B01926189E9F23BD1D263
+FB4C331448709A7BDC8047CC1AC89D940A359083D32E338E92E74118F7813825
+5FEF390A14D0497AFD059F996BE65AB6BE05D8F22FFAF76ADFB57D80243687B1
+4564D4E47831E691D5804E98D45A8607589CCCB3133DEB7A7901BAFC4E8F68EF
+62F16D906853206E3941F85DA2F89113FE1CFC024F16D7AE3E15C83EC3060A20
+E16B4A6E7BD0EE68DC4C5B858493CDB14C18ACB9F4A72A0E60FBD9E6CE5E57B5
+A10D740B9CEE5AC883D967D53328C44E37BDD96AC79CC34B6B1DF66EAFD564E8
+C008B7CBDC214BA5EB193DD6EDDCB1F4038266578981A82D9EDBC85CAC0D71B2
+401D7AF66C51550441448B75FC621EC9B4154BA36DC163AE75F9B06DA3BFE396
+9839CEF25D1F6FF7A6AD79EEF1FE6C26127B1DF1908931D910E1D98A11550688
+78B3CD95BBB18D581052FFF62D1A09A4E6946B89E6E07205D9AD33C76E4A892C
+7C7DAF7420E94BD6E2D94846F0D1E7476D4FD9D569A5DE0442D8F13521C5059F
+6A09903180ED96EF2A969FF1C8DFE7AA209DE315AD012D396513B85962A8B5FB
+56F7184D95D4E60137E7F822DCAA1C152740D9FC190396B9DF8E604B278E3226
+F205030C959CDF927D2916BA3EC21BE727DBB9C4657997B67D0EDED8F17804F1
+07A5463750FC3F1EE5A40FEA3868318004E847C7BD0358361C72B9A412993F16
+F2CEA0BABC078C57640BEB74A5A7F385972B3E4C131E479BC6FE552A0653BF66
+07F8D32A6472136ED1CA65B7488D13AA73E049DABF2E1159D284CACF536FB9A9
+BA6A66433C1B206A4DF057AD4A5B946A06CA94F9976FD9C21CD2E42DC3333EF2
+12A96EA0E2FF7C33BD41381CC6AA9EB564606C648E5401117F271DA778CFC0A8
+D4F637DF08D2679FA5CB8E3BBABF7163F8990D9A4460EB3BE8CFE5C0D9942B86
+83404878CDC3E792589DAF3309A1DF01869C89641F36E0A113D2A3F51ED1D8DC
+2324011E156F4FE2BFE476333A4C9FD49EE0A11A77708B38786151226B2571FF
+68A8EC713FEBB8C283E9457EBD23132E322F0FC64D78CC718D133037D32B4F10
+7D09D9F5DE7817AC6EEA754F7F47DEB5592C5AF33EA0DAB635F47D55209C7D95
+D4F50FEC1E0D651B9043FC9A45344E08D807915EBA34F2B9C66797E01021F7D1
+C38544F5AEEE14D456A31FD8B6099F87022E4D0280E4737469D1E9ED2192D239
+BE3CA5D684848E211AC878AEC5AFF9213D2D5DC6CD626B24A753145BBA10AB34
+873FAD9A701727B0A636895002F91629D6352525EB0EE90560A030C50E4CF49B
+D0E166526E70033BD723FF89619234FAF7D9F448885F4CA280F3E1AA7110AED5
+A610CFC6E7B0856FCA15CD7B8588C61C31F14297622D5FACF318F87709854E9B
+7B9533F8756A325DADB23D60076E372140C2CC5E313B6D0EF3F035D48CF4F5B2
+D2A8F40F47A1BDB5B48629F41899B445521217F3EAC18131DBBC19968E46DE0A
+5A251517EE0E0ECB9E67BFB18DA49EA29311B970C2254FBDC8AAEED57D4290F0
+B98F9C41E6DDB7F5787B57EF7126AA0CB882A49F6E3E912115D97C3F1F2FF091
+A4B2DCDD9546E4067CA7248FA17E503AD39B6FEE9501C61FFF7AAF60F7E04E16
+51F8C789E10BC7626E5B181FFFE44197E16366513B924EC2F8C2A16692F47BAA
+7F308BB9668960E7367A3CF9BE8F26C3129799A72D6EF707773A9984EF7403FB
+34B7FBB37D2C262F912A7287ACEB44B2C38E37BD4407FBB9FA9278BEC067F132
+A8C5019B04A746A0E0A5DE0AC799E8E92803645D02B208A81740248C057423AD
+354016DA23E06DA52360C452DA8EF0B6318B570DB0FEE846733974F1449A6E83
+689414E771A7D2E1B88202E6220A0324B01224B259F2869045275483B473873F
+0936F76A09B6ADBCBA60FF974A64D9E782B664A6D61FE7F658200A61337E8037
+CCBFBDA6F8C19687C9C185DC0117B9A42347CC38D2D96479F445644BD98D78BD
+D126823779A7B8DABFD98FCD628D9417B076BCE796630666A5A7F55377A0F94D
+F66310035586291CD29DF969EA8E5000636D7FCFD52241BBEDA800A7EB401DC2
+BE6169D02AAFBEC9D060C731EED65759B94756A9DA79CF2978E45B495A515466
+A2716DB59E86BEC1C1F0F295DCF0F544FC3F368F2B5838F0F3A5F2FC0FA8E627
+0ECA3634DA71FE6123DF97FD8CBCCC28B80735D5E07C9FAB5CF23E772CDCE3DB
+4C642F91B40E4ADF04B9135DF0293207307DD83BC6537088674A4E520A3C0328
+35D7CA16E55851337FA72249241E59EE3D7904F54FE68A41FA571146B72DD2DB
+9614BD062F58BCADF082C518241309B963B1CFA997FA1CF5499DBB73D97671B6
+29707793F1195432F05B6E2F9DA079E3A05740CB23089FC8EA4EC841D871464A
+BBD8727A32E56D93606624754D94AE285649740DDEA43ABC7837272A1E510D64
+00405F26EA9ED974780DDEAF358BA5A294DE83E7B457E00B61DD5946972CE08F
+CA1FE9EDEE6DBD378795901FDDF71DFE2E4873206E9DEABA5EDB4083AB6D8EE0
+2DAB24F4453B14C77DD40946DC17ADCC6638B84919DFCF936ECED9B89EBB2277
+2EF60C5AD2AC6AF70C415DAB6CB5FCD605E110B31F7F7D2A65A37BDB387B182E
+9F1132CD9F0A33FEEA9BAC8C0917036B53709B8E0764FF130DD04AF697B60D56
+A06AC319C30AC796E4E4DDD0DB6F752BCF314D110595B5B8E69548AD1BB7E473
+1EFA105A848A9BC8F5632BB234EE6543ECB9766B750A60C1B18DE882EA3C74B8
+6DA884FB61C677CEC00ECC662B9D2EBD0C411ED082CDED36DC4A12D91F2692EE
+A08F59EB954195581D7C91917A16AB7405D2083594E29647914637DA6A7C6959
+11137E86F19857196A5837F08CEC603ECD977FFE6D2696C4BAA10DF2EE8EAB34
+CF477EC9B3599BB9F2B793D1180FAE6AA01D217D2AE7C32394BD4A47B70A2770
+95222BF74285F25049E0E4E03C7FF658CA3E70E075CF36169B86502CC615E3B2
+D29D93DE2DE2EFDD4B0BFEC97D0D6447711790BDCCD7D9C4951A42F7FC727D2C
+2D5CFAFA4ED9372767E1A637FE1E11AB36891B43ECD3B81FB1D2284BAB32B4BA
+21B86A1A71E19A94EB6B3F35B56E193CD78573AB2E18D0E53D348CBF05094973
+53C28D0A88808428009E8568522987831E028E10DBD043ED5375F6C16CE7A953
+57AAB2CC7D0A246701DB755B957C7DBA92B22E660C5934C4E4589519DFE2161D
+2D50D599C88804F0119E6859B0DB093CFAE3DFF7412FCDBAB436D55241349A60
+ED07557F0EF3A9068461FFEAF11EEB657BB4EB8C183D62C5BACD3733472266DA
+04342780234E0F5D06FEBCFA2A127747CE25F85B963B9F18A5F97D7ABCFEBA7E
+405211A79540E8662D45DEAA47FA2E3924BD4E79FB5309AEA74B2CE703670CEE
+C6444CBDF653EBBA3E836747B6FE59D763443F504534518221B5728AC4AFFE36
+6955C9A0FF10CD2276E9CC8D53D9E79C9780D07266AB3AB316A29553A8BB6D54
+3582492756E77D3520BC84F44E0C7CB801C082BF13081DEA8DF7030B69C422EC
+CBCCF114C5F21B455753F8430397E77756ADD9E92993E2380EEC0100C97FAB77
+3C45FDCF2DF4F5729E19EBE2A5565F11D967D8821089216BBDF85D8E927C846E
+D33D0A97CE991AA5095913AB57C8B24591DA0871DAA6AF8F5F52CC1C77DF1C21
+A9C9F45DB72B3F7278F42C8952CA1DB26D71572AAFA72FBF45F07EAB3A868157
+D1D75E41FCF8E23DE39ABC9193BABBAE95C14368573AA426C57ADAB4044F34AD
+DFB78ABABCCC073F64AAE38F7FA74008DE75DEC22182CB2542DD23562A8FE1CC
+3614748EE7A29CC425EF263EBD90456097CDD03D39DE1556C1D98D2E298A344D
+0F7F0043C936FC97BBE12C8552CFC24C949F8912285D4295036A2AE054ACBCDA
+6C681A930C592D7C3AF7287D95658F34F77FEF800CAC63006663DEB2595ABD7D
+2FA53FC8B5AE3AB888946E232681FFFD38CF0C646BE2A95734409D62CB7DBE57
+B0DBCCC40C3C82DC965C3ED1F8401CA5B736773C974A151FE0E04F4148B78162
+9B0FBE5E97A0EFA1DF8A71E5A8404E62C4A1017C3A54C3DD39FAF8DB24D1CDAD
+1C8ED40C514718D98FBD999BE50A127C45E6300A0452689BCA250F296D768A0B
+0BF2DBCCDB33600A9C980DC2F0668750F652C7976A4A7C4DC95983CE2E15370D
+E89B115EC133BA2B41067CD5DF0AC51816932A8EA121DE0524E1696F439E02EF
+8CF213200946C501ABDC0F250C93C78D09F47A42D911983223C832DF670337D5
+BCBC22E305B6A872E21D24A74DAA5A3D7F7FB56BA9D9E0F8704AB8457662F3F8
+1EE9A63D2189857F5E6360BE45B30FFDB803F869D6E2110FD11E2BA63AAF819C
+4E6EEF8084DB5682BB7F5A925A9BD1BD08A496016EE16F721A18830F1C80B9CB
+5D30E0AAA64FF2EFD36D834B9AC9CD6566E9EB9C85F8DB2F358EA342B4C058F5
+D32A2F59E001F7B01EAF036AA63248FFF5C12EB6F9C85DCD4FBFE1BD240DECEC
+F6B255FA3307E3826AC230F5735BB695F6DE183488E979AE70C06D832B18A137
+9C1D9268EC9FCD98F7BF4D4622622F19FDD12871DD48394ECA17E54A81F84CB9
+008B3D6BA142EE03434F244EBA932FDE2C4480F281FF579946C219693F753C70
+619278D78236B133982BD13CEB947443DA5D99BA09284FCC4EF84287C8F9BF80
+86221B71B950556E47CE506D3AE0F6894413809AFC56FF4847060E0A02FE84BC
+B74F9841955F92F33E85D2AB370268596A452E296D20426BE58085FC9B099469
+9967BF81F4CD41FED39AD0784EFA3A4CAF45A7F9F65AA9B5F5A25F4F53019C37
+5721252D9C8B45DD8F673D78BC56DED6CE9042A64A3F1FF14C8C88D9D5B5349A
+6F38AD60FB6169CA6BF46FE56CC8F9A2EBEE468B883CAA38542ECD22648840AE
+52D4523D3B0AB2BCCFA9C47E878C64B29564BE546054E5C94ED7888001132777
+6F740D2C77AF00929D680B55664B0DF9D60A11872A4397391280817425E69DB4
+EE06081618A760894AAF5DF817563297528D651B8DA79FA1D8D4C7C008F92EBA
+AB76FE5C6AE46B262E42F0B87F63614F58FBE34FBCFDA8819476AF99724A1388
+B6923AE4ACEC74620B2D609DEDFE1517C648EF6A4E7EB29CC55C3DE830CEB385
+326B37D2A049146AB23574B81B350184BACEB2638AA1D16D469A11180F338246
+F4F8409F07041DB2B0E89BD6D546C408F23E4FB38D3C6DEB55987C9CD580A9EB
+444E19B3B022565549DE123FA4A399ACF8FE3ABACCD7BC87F270B5CD46BAC97C
+E8C0D8922B10B016EE5B5F789C616C4065A53B881A39D854E4700ACF9B4BE4E2
+CB51F1881946259CAC963697E16F7FF98B58A6D12125C91C5724AD0C2C9EE5B9
+67E45804DADB1FB1C26B51C5EFAA5FE952D967865B960AF7CD53E953EA1C7A7D
+A835717B50597C42597E90779634E092BD934CD57F03BB31AC6146C7A348D9E0
+A13D72001AB0A08D2995987E2BB3CB749982B3F1D7D64F89FA8460B310EAC993
+08C21A961AB05C252C89BB3C31B9F78DB7BF98701877F36F65EAB2391338035D
+78B8DC516A9F981085CA2983E14462ADF901FFBEF17FD28D65B3054A0FF30D97
+E96CA7766FB6F6E8895434BDF46B39349C09F51AFD2EC708DD34A663106AFEF4
+BF467CB08631BE9DDC706910E05FB47A3995A0FA84E0757D1B06E8416FBE1939
+C87033DEE9B79A1153F38EE3896532BDC999E07302E8151069964AE90E5EE330
+67D385A4946B8EEA3E1A964BC32C413925868E533F482B9F246E003EF6F56256
+8DF8E279A646EFE77686B11694330CC84F866CA65A1A9951DB54A68433CB769C
+B4D49F3FE04A8B716EEEE57CD70353714E541A9CECA049D855A665ECE4643240
+E6078982ADA038E50AF8DC5C34D7A8507DB808739618D85AEE1C7B18626C80AC
+291ABB68F153E3A73E3054BBAC7E2F562CCC879DFF7B83FABBE64FD93556BD98
+36C8A72F27A60B7460D2DE35ED18EFAB2CF96EFD7F0E986151DDE3C76215193C
+1187CED055687CD39CB65D2EFF6108EB5C2E038731C79A51202A026F2681C8A6
+7D780D60FABCF9BA28F9FBBDD97D3798647AA41A6BBFC33B94DC23F14FCBF374
+170AA553FF5B09D30F1F7A5771740AADE1B17B881223629896DBACEB6B4F864A
+9B316ADFFF28FF484E79F97749393B4B3087F19864968C8EA38A8B0B7DB218D5
+30FB8BF9CFF38698447558CE7783280755D3BE24629EF26E75015492E27D82EE
+14B3EDB69C2414BBBFDB5662BF59CC0D3D5FA3E09C875A7ABF1D6172BCC7CD86
+CD579FB9222606F7E96A8D4199DB65A569AD2B12DD76DB3B1B1A5DB6A6D35B73
+6C4CDB1CFD80B89908DCEBBFD560E1B512DAB5C5283D8EBB5242B36B510CFB77
+FBDA07CB9FFDECB03B320CAD8A64187D496D7DC86D7CC9A1949C2190C9B27E53
+E993ECEC353401B504EAFA850E0ED68C272216C228B3D2F4C5F8DA9FC77C19F2
+FC97CB6B70266100C5359038FF649D792E1423D6E9FA96B46F257E04E7168230
+352B81D3DC5DB365B1477331B64589778C2B5DBB6A257A37762CE3A028668A29
+938D86E6C5198F140231FB94C1502A07FDF4549039C12FE18E4D4BC4BDCB10B9
+EEFEFF193880F185BF69D65BBC65B911A4096F476F74C16515B20C1E25C85F03
+365FA9DBE88FCF29A78257589DD6F937A0849C51FF0B03F82372647FE83160A7
+ED037A3B37B7EF1F9726675D4BEC401A6BA89933905B3ED73731D7746B3561D0
+1EC8F968B53AD8BF5EDF4267BA4FAC7EA160C8FAA84E5E30EB67E79083773C2D
+FD15FFF052042ED9F4FDE3BF8F47E7AE71EE118C87CD353F841AC458530128F0
+66CE8DF25E63B63DDCF55DCFB0D669D59D646401E3691FE1BD718B164E8FC9B4
+EED0F147B9AAB2B823CAF79FF1DEF3AED953CF90DF4E82224690F1FFF996912A
+E0A4FF9D6410ABE55E515D06F74DDD5EE9ACCB9D130FA8A480BDEE8372028EE5
+46D08A914F14DC9AA8E2EF7495B372C1A819C2DF4E9EDF7BBA796C4F206BC254
+3E2DD44BF5A78B564F5E0C52215AB9BA512F50B427319209F3C1A517F968C5A9
+154D88252BDBB01409AB87D853CDFC7CC15E82FEA5E95D611273EA4A91903BD7
+1F549637264E363375C01584DDFE8C7D67EF0CD12E449AD9510E231A33BD8429
+EFA1CDB43A88BE39632D7BD7FE8C21CFD081A7887B05C1D36F974A3BA1040307
+47335515136F70193D151C9CB219672D02B4C3B342B2E890A2D3C9B7BF244CB9
+28C6947975642590EB58E29687D84F9E5681C3EC651BF07E9B1D21A9D45615AF
+A672415609092D3A27337979E418DB38D1B4C70B7C6AFAF8D2AF6FE8CBCFC897
+BAE7A5B0163B7072892737491624D8CE33AE1F5FA4BC261B87618D9C1D8AC5E5
+558213126F5DAD1A00E6DB44D4544E7848F317208ABA64ED7C2539CA37C373BC
+1CFC769DF0085E5A642611042CBFDC131A5BB131CC0BB8F8834BC68B410144B0
+C6CB5D6A9C63E149F6DF818CA87D4100DD7EED802D110975C982A552E72FCC65
+863DA091703D660F7D231907F0B1A45DC5C7E616FD4281C7FB621669D4F1DFB6
+0844BE8CAAAF0D7E95A220A4F01DF8CD810918B8CB23BF5957638DB4BBB3BB26
+7424C1CCD5869ABF2C51D9D78115A40E98EC4186E37CED646981B4D28495C91D
+874D9653939282637746825F5062B691CF719DE2C204ED584F254F5445286EAA
+FDD2340509E18C1F882DF26527C63DB6E219DF28862A57FE4D7317F4002D860D
+F08D42ABB8B857FA1D2A9F9B437597A5A1A7169532290EFBB2907E147CB012E9
+1F0E8D2EEA8DBDE39C41FD6AE38D973DEBBE51FC678531AB7D0B36B0671E9D46
+B17E239705AC7D7538C4064F97A1FBC5C00D286763856947CD23D150CC91A8B8
+C2CCAF635E7389B7D25BD0DC2AA002A6828B73450E09C87EED0FC42E3D3B4BF6
+9132840DC4D5BBDFAF84DB9388989B3EA6B5F465C38D553071F677166294C316
+71152021AAD24E98179F9951ABA97F23186C317A5F3D579B89655BEDC917EAFC
+AF2FF561D065D24F1CC3D93D83EEF4E6A44F50E5CF4238DA0460F97DD9E4DB91
+9F765B1699170C8EE07CE303A84301086E8DC1644707F3A27AF43648F6E10A99
+BD1EB8E7F2F97815D9759672B7B9CC4BA9DCAC459C48A40D52B3D62887DA1525
+2DABCEC91CDDE0E9CBA2B61DB771D049753E49F019B1810C6B1CEA13242955EA
+D421FD4ADF880D3ADD6D0EE8E889845AA073B89C9CD5CA34AC0921DD38618F31
+0DC2860EF43EF952529350C6D35E8140217CC8AEBBE02C2D7434F1131DAE3EEC
+5AB169CDAD64FD02803D7B527C93BB79A36E0C71587E4269373E1F7BAFDF6F3A
+0EEFA4E8D7AC7B3BC95371FD3A40830B10AC4B3F035AF788AB56EA28A4572739
+D9650F676DE15E077CBE2901E211963B58C73E52BAF0F57401AE17F9F0F3B6D8
+1B6F5A77DFCE1786E031CCFC3F5D68477F00AB729707168B03E14D897984C0E5
+97D04009C5C586D822E98C193A40427E9346F9089DD43F5B3BB18A3F4DD6C839
+FE64A3D2B605685C2E64A909508E2862A233BD1F02E0AF38DEF065AF9E31F6DF
+6612A5A726AD67853C590B149608C9BF4726C9A5AF14CCD77E546B97FE747E42
+4ABBF59E8952D0A9042F4B0835D9C7731F8C420F54CB415FE88057773BED8C15
+9F8C46D54CDA8B3C320A34554991E3EE50BEDCC60FBB29EF9D7CA783632D5DE4
+EB1761CCB53A5FBF0ADA10AAC10D810C16CB6FD3579FA03FFAE54CD66BC88155
+77DD7C912D2DB2D35F956866CDD20377A7DEED73C7A721AC8945A89170A6ADE2
+C4150BAE03AC7D5962891E7E321F438E5EC88207643A4389E7B578128B88A03C
+FAB2274D4F68985E8A6671A16BEB2910B17DEA7FA44AEFCDC13A9A8A08EEA9E6
+704BB2D9E515A493045B9C583EC5ECCE3A27B3E2B6106E50D5D43C4D9CC99680
+11F072963C40EFE34B757A8FAA87CD0C53A11B19EB9177100FB3AF4CA3F1A406
+C86A248B038F22F7F929C5C990599367098B039970412E1C2A20300D86BC34C4
+B6A9F4E08D8BEF062CA72793B21153FBDF3C7D5CDD693D05874534BDD4810122
+DC936615B97142753DA81C48B246FE22F4E1CAF624FA7B9F6695DDDFE2580D27
+00D22735157B34F1B5FFFABE4B95D51947FD3A7A4572883EBBDFF81A5121CAFE
+7845830F854106807823A0F0AE934C76A22AD0C52905C234703CC77F078B2510
+177B6451B6B0A6837AD3FECA71D12052C5A2531D2A26548107063EB251838C32
+32D07752C23AA3D208C042F688021D552532731C53D58C1A3EE12F39500855A4
+FAB9AF1EED11A22BCA4DD1A07AF91441EF2DDA1AB96DEF8F4217DE62F7D0D62C
+65A39EBD1310B8C094F54905588006CF450087AEB1B6FF1CDD4E60DDB780A42F
+883333F0D66DFAC0EB64C2E5C5339E9CF9C0E0110CED2E2166FE5CE3832045C0
+7200EA4E4897F9D65CAB47ABF9035505ACFA3DF0DF2D87E9A1BA09451843D24A
+DA03920AD4BB9B51AF3AA7AC2F20FAF26274EC184117B71946F7B6EA0E24A39A
+2E685ACEA0A7DC6CF009FC1F049506C1BD0F0B37C22AA537C881D637FE746F40
+7C23CB264A3C146392B38D7EFC889CA2A06C37B72FBF0CA8A57742EEE5390A2D
+420F21691F3B23EA
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.1: CMR10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-251 -250 1009 969}readonly def
+/UniqueID 5000793 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
+295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
+409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
+4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
+2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
+0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
+B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
+24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
+43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
+D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
+5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
+96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
+7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
+0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
+B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
+AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
+97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
+FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
+20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
+0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
+F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
+3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
+A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
+5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA1566B96E221864A
+45A24ADAEC63F61C9FD18376D3984449A1F998C318A8FE36D0D5020E18A49625
+0F3BB603BA1F3E66FF412F6A32433FF8BD2968D79CE4273AD0E0CDDA5153C2BF
+F8A46A2244F9394A49D339F763F5A7411A3C29336B21CCB01723705AF589B078
+3763035411FE36AB5D744E81379106890688CB5BC41184548B7FEBA08DE7288E
+E6570FEA20C51FACE8E8F824BB61A4A038AB817C47B87391611B77928B2565A9
+3B27A573C05D36ED01D8F27CB2C793370FA9B90021B5696280A55F2CB6117B64
+293EAE0EA5A243F56FD007773CA35DF71B3D28643C25210CCE25F37A5095D6E5
+9CAFD99DD1DB0D7EAD454C13464DF6FF5DD42339797AE5AE467084550FC00139
+6EE818C6365007B2FD6E26285B832CFE6EA7E99665A224C9813C036CED262639
+3FB39C1F05FF8F31D2DEF37BB9B883334F51EA1243332FE1E3FC91864C8AEA79
+16A726F924AFD84F2F4215FB795FC41DCFFC835C90B9E31D291E47AA4BB8C05C
+620F69DF31E91A0FBA8E217CDBFAD7C4D480EBC1EB396029CDE615C227A367AD
+72834BA95539D39A38EA0CA3CF7F1123F70792CF315BAAA38BBCB6DFA80B4493
+5025F33C3696DAD6A0ADF584C71BCB1D29E523EA4B81FFCE15F3204022BBBEA0
+A9483EE8EAC07D581162672A0D66199174821ABD097561A263C0C0F24066FBE6
+0951F31FBBF2675141F3FB4457CC2A94A40191EA0AB2A606CF540BBB8887B6DE
+715EDB1041EBB9D05D0F4A4672F534397B9529EF8743BE88BBA10C81E0A46259
+2F2AA7B638E20C9C8A3A827977AB58ABF7525BE15DB66CE8E9B81457552073B5
+85DF3FA70B5231C447C5724E14730B90FA35ED1B5723036F1658CA8E19EF5A6D
+D333B78E91E4D7032EFBFD40A5A2269B0DFD9F7C3438DB58F94B507EB93032F9
+99E5F15D9F5D8CB031BBBFBCA8A15A617ACEDDE70DD9C2D9EE21179FB17AD913
+B4BF577A9046994689D1BC6A6985FF5F5A67D699C2FD288FD9E5BCAD5453EEC5
+68287BD7B8872726C28CD288B4DED2246B843577173450B6E5760852CF2E1727
+01FDB0FFFBE12CA13ACF6434AEF4B59EFF3E0DB1E87D35075B1D55AC12633167
+5A83A39056C077EAE6F2F7D1DDED300BA43830B8034F0A6AEC562D3023270601
+6C594D0359DF6F230F7B80B54EBAE4880AF338956B813E3B8DB8BC778BE0F612
+7D84939C2878B43EAA45BF10E257F22C28C2C148FF48843D2B52626148E3CAA7
+4527B9F246C17BDE21C6E7EAB4906BB6D9E84906CD1832C4BD9E405AFFE33AA2
+AE086C25EA26BC23D68986639366B99C87359915EBB76D7162AA667ADE4954D0
+B1E18027FAC2468CB2FEA2568E23DBC201E9B6A1151FBF21129A088D89E3E728
+28B2785C1A8B2637F368A93EAB459F80506435BE23A85396969E2AC4E0D6E4B0
+8B12EACD150049EF8942C108B96843159D4408424394B33603F565D1622FCB78
+0290F784C53309D68795E81FC040FC646FFB498B0BF0C38B9ED604F703551885
+EA5E14AC9EC356F3ECB8A8755599F616F019ED01D6A03471FF6B3CCD92B80E32
+0A6A9BB302F27BFFDE531C2C0F26F468A4E81C56E58A7A1E9092F6E71E855062
+0F052738C1AAC57D0692DCC0905BAED906D1CD74C84342DEA80974777C07B8B4
+669FE2FE12C0009C1BF52ECA36A06168E45B460ACD3CF4D0A7538940A45E7B2A
+495714721BA74DB337FFDCD51DB52E698DB41907F2724CD2B8FE102BD0BA38C5
+D87B9089A3AACDA1625E91F2C396B7E55CC7962F48B8552F946404D03EB99B8E
+EED8EA4CEE868AD564D2A708531B71A0D6E0232F066C79B54676FF52E9C6AAC4
+AD89618BB711AF215AE896AAB085B4B071D4112CCFBC65187CA1713C69F4A2C2
+471AF106C5DB1B42915CDD9C7DFC516E6D36FEB1CF4D3A3F65357A18F3BC3AD6
+FA983518BDB503CB002A028BB670B4EEC1104D8A2456E7B9A383EED588D17D69
+F66EA721C8473112F83F7C012767D11EDC2C3B0EC19ABADADDE49AA4DA901D81
+235D698819406A78ED07ACC8993559BC2C6B3759E485D6A100AFBA6BCE2F280F
+5C909A50A8E21D928D1A990025C0A42133B1C623AD220208F656345699B8D3D7
+FCE44DD3FDED1CD32EFE1A28F6D933124AC9A6A88AF94EEC6A5B145EE48C25D2
+DBEE6334BD9A32C18784C4F39E6526059E1EBDFC98497C3B758AC6F8B6E27800
+24D19EA0C4A26C4BC38ABB1C4715F8FF9A22506D415B33D9C0FACCE78AD32F24
+1522369B4163F61C7B5982967CE9E9D501692EA82B8CD7FD50E0B96AB41D22D4
+0AC2BE7E2E8EC8A24B833D07A9370C76F7B28FC04BD4BA241CBE9DD5F05EA561
+29631C4B62B1C49E409BCFBA31A96173750E4F0533599153667F08B1A20B3923
+42F105AC9549256A4F94A2BC033721C459A4C13C0AAC79CF77F0237F76B85D1D
+8688A139DEE1A7CB91447B0727B1FEF45BAEAD5549BC3DA0264E90CEDEE03944
+ACC82EDC8502C5C0AF7445CCAB80F97BC04C28348E970127EFA0B37A862EAA86
+A82FA713F042AA4899EDEA42DD4D4EB34584E43A042236CA4EEAE9CC874B0961
+5D5DCDC5CC6B1C053F7DEFCC4EBEE5B844B8CF8750F86B0B62DD57F43C6F639A
+1DBF68B72CDEA4793C6985AE1F25181188E8E822C86C3E54A3C30B4E020ED83A
+3660B2C9D13F91B1B7AD8A47E4C28762526045C24818C088BF533C77063D3177
+71C758D850BC0CEE2A1D94E77927E2549087AF4F51FC6CB62A5F6DABC33E6177
+8B9E320A26E8132B9590644641DFDDC0C4242C373AE036B74910297740FC1D58
+8E7F68583262EE1CC5FF36AD2355DC30BD4FB61718AC3981E3F55AE0C19DA046
+41AECCD147A7212BF768EFA88C960BA243CB487A04C04D5C17073EA8CB10584E
+F447223816BDD4B401B90523ED078B8F1B381F0EA471BA5B2A253C7EDECADCDF
+00F60BFA5E2EE3EEE82DB20BB8B627880899CB2337CAB801640475734B97985F
+4736599C46251CA5C6AB9F9A32242B0EE7946BF8FA4489D0B9FDAEBEF5032A9C
+413CEFE8334CD7DBBAFB1AAB12B853857EC49E611D471B4359A14FEABD806CF0
+80E84D83332139AACC609C18647E1DA18A0CBEF4674E9E04CAECC6DEA69707E1
+74666A3FD7DD3AD3E84F49985A1E0DBFF3476A34C3F10B0F240F143C9B55EDC7
+78E79CA834E74179A8DE230BD6D41C496F96B66A698FA16CA4252A2A331A4B86
+80E405164DDE48743DD18449D13C2B7B3BAF708F3B04CA5277295BB50567F8D7
+B4723AD4C9F567898251E9E5609C81112472AC830C04E5C5027BAB933F0DEF0E
+8C259A441E32BCF605F2EFC482D0B1CCBB9BD44C9A9C5AF564E5AB0FC8622D04
+7701FAEF8590B0FF4E7A97C82E5641B2503E3E661A3CAF25DD50A9E0A9940563
+0A0944F714D3A80ABF69E6A9974BC93EA89F59D1BF0D256B0F6144C134D0F261
+BA9204C50A18513BCC83821B02AFF6CA19B880E179A941434B595355A905DDC5
+4526F6829FCDAD454D28622DB78C76F0ADB199748D4FA77DEEAF69F32F695700
+0969475888584E30D3630DFB20FE00BC8F43C87E571C92D469E16F239BF66765
+5BDD86D433CE301914A3DF3B1BD988C3FB3CB4465A4F222597490E4756F46DAD
+D64EB4845AA5625968DCDB93DE4611BDD0159DC1B5AB20718B7342FDF37B9E91
+1D52806465CDFA7BCFE1B1AA7FD8D5CF94C2035F2489BE268FB7537ED8DA31CC
+B9D3222AA891C8ADDFB70955E7C1C71F043BF8503A19BAFF18B5A62C7B2176CF
+143CC77AB3C1C0399D7C894B8AD8E7171A23B2F8E9E78C2A22631A78D4F8DF38
+43E799557663D57F08C258B38A323622480A6C7715DC67959732DAA4D00C0DA1
+54D09F27F98D968448126D8042DA54478276731B132F501E4D3BCF9E5AA85EC6
+9B6C7BFF3E60333C77A928AA28AC1F7C2EC05102BD89A4472120A43F03F97072
+6999D44AEE5C63F41EDA189E9DA8D569DAF437059229B0275A90FBDC7AEAA05F
+900D0862EAC0B5BA210B2DF8035AFC1C764E118843710645D7A443F6484DFD09
+CD966036D77E46F3B544FE262564FA374A2B1D8301C98B87F1A2C75B80C91C91
+95ECAC136266441480C23DC001E2A26E3FDCDA663FC716BBEEACBE2D1E80BBCC
+5069FE7C356F46B957252B401086E6CB144C2943852C6B2CC63888A3A8EE3136
+D50E95BEFDCA9925ABE1DFAB0C65146877FCD60D35832CD963C824EDA4547A76
+64BD7C58065A674CDFB0200602DFCCFDE5105CA153AF97D989EAD1779C1BBDBF
+A6DE6A71BBFEEFF43487BFD652FA80DB5F64B998D0AAD760F5E7280A3970A4BF
+85AB625897B76CD6D3AD0F38A92E1108AFEB2A5FD9A3E4EE48EB75C1A9D57277
+06AE147DE39177D263628040A5F88E6AA3AA3C3E2514B4EF1604ADE9C23E9CB0
+E686BDAF27EF001A4BB607E78D118C75D79BAFF427E3495AB2E507D3F14E5D0A
+4F0F2793118ABE20DF90493FCED41DC3D71A33F1C310C14DC7C2168FE760A45D
+487268CF316318FD55A456B67DD97222780C151E5F02C86687C0B8E1264C3728
+EB76ECACE79673128ED06CE010CC3213B5ECB46BDBEDF203770485EAEE14687B
+55B498D5AE2A65C9F6E974614C6ED462740C95B91AEBE73DED2A9E455CD066AE
+75D0531E62C497CD40576F80D1959741DF3D2D9E215848F6580F04B30488A346
+2E842B09867F2CD0A009BB11B5A535C0BC7503D3172DC35A36436B81586576EF
+F287AFBC3C740BDD1D01623120E34B94178644D1633B06E4C84B0646285CE644
+5955BAC4FAD013A687D4C7797505028B33DEC20DCBE7D982EC2E89E9C2FCDCBE
+F0C3D84DA608A12E2220A2C6F57E2784D543BC7EEEAE597267DDED89FF0AC761
+738050229A687773F98F96F8C7925E5F8F01DE7E3F19485006AA45E6C93AD397
+B1189B212DC0C732629BC0240925CA84F61344E49EA7A1A9EED07184038406BD
+B170E688776038BF3B7BC1A93939EC5D3D1539771E560DF8A77A23729AB955B5
+B721D7442363547CEDABA8A02D9D72CAFE9B2ECC9AAD41DBF03635CFA6624714
+20C6C66BB620F09AC35E4F32875C917D89E9BE6B85741A383C375EAFDB6E70E9
+DBE946445877262E7949BBCC9B0C7D10FC8CA562CBF82E000C37DC504383C461
+5A9C9C390B0D5C2C256727379DCE21BB5F45A5118FD85EF24B29B2BA388CD700
+8321EF0DCD88A3EA13B0822F56CDB9D190B7C638CC21BF551F5FE14C410235D5
+44FCB4BEF0ABADB3B7E0DAC79BFC79A20DFA810800AC086C33CE3EA222935CA1
+AE7D1FB034E87DC39551E20931E0F67DBA379CEBD2A68CF14C2B8D21F6DEFF52
+3D8AC5A2C3047BC72AD1C1724FAA11B4E29AF58F40025D338683D16584C5F10D
+1416B71DAAC3284D78CD1B1100058089B90FAB5F1AB9B65DE37D999DF360D8A1
+AB0F673F17EEA3028C431ADE53C78FC8039F1ABBCB53A0A853FEBA45A6E1525E
+F2ECAAA084E55D2C1331C52392D6AD8410AD78E6C470B65C5ABC6C0D842E13C8
+0939C4538432072100EB693040168BCE6F1460256B54885288E0DA834340AFEF
+52CAE36A68AF16D3AD222B5B3247971877B0E16E8CF1A8614C7E2A1029FBC178
+366C2221CA8C4A218DF916F82B812177B6F3AA9D8A4B3D34D2671F428F17DC4A
+2F3FB9D69FD205709571980C62F8A7E68BF13316B432340F44CA60C3B304C423
+421738601D258EB3DF40CCB8DCC512AAE85D0DE2A969CA17951FCB36EE3E7F84
+220792353A0B2F0ABB114A904C4BD0060A3EC8013B1F862B93AB339690700FB0
+058EE2E274F3CFB4EE1F63602187222279F00381F779BD89D2B12BF1154D64E6
+2136EF9ED1C9047DECA752028FEB199FC6C5410B62CF798E1B796B0A8FE8596A
+B9C34C095A02C68006B9D3133E0ECE786F371F145009A6D978DB5FF89254CAF7
+0686D4952BDACF2674D68958A1AA837D565B03FE8611AF8BDE66131246DC77F6
+01EC809041B651D9A18549EE91CFD6B4AAC66269A53BC4721DE9943FC11F4B1F
+FC30F7AA87BF51B9722F24D89A8C02721C3EE5569DA179B9C9AC4145A4A9DF56
+683D248F4AADD1069ABD40B563CFE294583138CF7568BD98D18046E26804CF70
+B53295BBED05FECF4A1EE8FC5D1290C060CD566FA39B1F91408F60195BDF6AEE
+35C794415CB6949783EBE6F96848D2A2D1A3BD92F05039CEF27E5BC28A515D0D
+090CE887E80FAFF6BF0793B41414784F268E37F1E58525695A3C8F1F0EC77472
+62D6AEAAB73E779A6115ED6275B63BBD2F95ABCEC80E2AAFE68384CE04756660
+E072A9625CB32E2C5F76EE7F4C2DE617A93912E3829A501B505F28D93A9610AA
+238474EEA8E7F3844ADC8B2C72224755621F9D94335DE8E0F5A214F27170B339
+8C7238ABE579B812FA4A4B14048FD27C21735889C521FEAC24D662986787E66D
+D46DEBE90703AB1BA082BFC05CB67D7A24622CEFA31314B24C9A1F2E996BCA8A
+4A85858A78E6F0E893BB49342404B0B28D0F473F3B9E7C643B5BD6B3485C7DE7
+49E9C847D1619B68064BD9382ECD5CD2E75CEDF57DF4DA6F661F576525CAB80D
+D95E67966E9771607314A50BB4551A6A69FE237EBB4BEAFEBE59A08B2B8E1262
+F153CBE00EDDBF3BE0053B887A1F36A95AF99AC750F6AC9B9B82F3CAD0E55FB6
+1EB6F7427880085C6204643DD765368299714EF119B7D538FB7A2A159E6E9B4A
+4E556339DE089100A2A6E0FC6C234EA80E0664EE9FCCAB202FC5E0B5D0E53408
+A883A7292F287B208509860770D3394EA4D3380EF348180E02DAD7068760EECD
+3153D99CC2C9355B627F5C54CBA064025DB6CDE14A2F2C77706523BB96583F50
+B110C3B7C97B0BF4FEC92C55704A72CFC81CB5857D2337F5980FAFA554A78094
+35FEDA40CB1A5460FA611FA376F9A62CA7478CBE6CF1674180E595075D354C59
+A5F9E7680C9C8E6ECD6C5E9A84B6CE8FC18BED74D76C9E3BCE09F0523939CA40
+32AA4A9A97443BC7F5C4FB522DFE420604F36D8B2D5F76E3FF36E8439A583AA5
+867CB7A3395F078341FEC0716367C00D26925DB76868C1756150F6832F0A2532
+218A36811C4E97BFE2E3F8C4961A1C230B67A9CA28A163D450C3D9AC61FEB1BE
+FB668E6CA039C41CB67598FA42239E09216E66E2AB4C62B03728AAFFBFC8455D
+A4CE5582215D227028E6F5A61490D984EFD0C8888F695227F5A5FE4F12CD6022
+CA30F7DFEA5D10D08263416E2A9067AB6065F3A7FBAC0A40E5DD8BC5733A02B7
+BDDDA7FF6F80F4191E3FC198A1D8CC19EC42CEA1D139D8BEDB5D7C8AC83F4B25
+D31BF181C60514262EE1993D31B494DC339882A17C1092C92A2F17BC991477C5
+756A08FD347520966DAB6D92B65D9AE47F7CC10C0F2C517AC17A23789B85A76C
+82B4C1599FABC47526AD10EB17E30C8BC1CA82FBC514871A012654ADDA42FBFF
+2E1C79B9A16370079E36D6512BA0F6DE79A850ACB7227A6E2E33E5A8CF7F6934
+79834C17D20A7B2873667A96527E9CCA6BBC15624D3AFF942BA3292C0EBC3E31
+12CD8755AADC301E8B595ECD27C0CE43746222E62EBFBA432C448AEC1A78456E
+0BE8EDC018CC38E1C14A86D9247A4B7B042FE5E156A01A3B14D4FA8BD6861F56
+3D82484B5AA7042E3E5CF0BB8D0B9C166CD1051FCBBBB9C7B819ADB81CE5974B
+E7A9740B7E6A2163145417DDBB032CF09F8C0B4873E5CA312D5FD640F454FD36
+42D190C39642B6111A3D621CC1D7E1131A85920F9FDB9E96C67D42BCEB80A48D
+E597F42123507D587F98CE85BFBA27517796136B2A00FBADBDCD0AF59E9EFF6E
+6E8CE558CA68BCC96845DAECB6077E72CF8121D623A5254F3A0882BE047D6441
+195254B462A76267F28786E0D6E6EBB266127F1CB81A96BA414D58D54FD1F26C
+20643D26B5B9A874B902FBDC07F156A6A43D5D3D5F800957612144253575B5D8
+CF062B2A019D0F5A82A0EAF54EA661F9B26C8F9AC066D9C2CDF1A12ECDC7B225
+62143183F927893BC7C7EF78B718D0F1F1CCDE9D84FC793CC8B7F85AFE4F6E2E
+2F21A2FF352714EE12EA9E725AA0A2C2F612B86EF894F96559694BEB35D52026
+7FD67531262EFCC9F4F06798870AA07EEC59A516D1CD62CD62093205068C2005
+A706C113B38D17DE1E88AEF05B653087E641B29CC7F7BC59494151A1090F3240
+260E9561D49D76D76D1D09B403522783EADDE11DB46366753DD921B965DB9C15
+3164094587C9081C4A5B7BE7ADE3CBDB160BEFFD7FB4C8D2CFBCB3585511E92B
+C07943EA765BFAE12A10091563831999675F0CC57181FDC2BE1541F2FA5A9D72
+34AD5B69D1C31FD08754C93A1377F6E944017C857563CA9408AAE156583A0126
+F1B9D7380FE3C350E1594FC79252289B4A6C880B77E35CAAFF2D4937F1325F88
+284C04A615426DBAFFD541685ADF1B8E09A80CE4A43CA436A211714FB739D3FE
+C5D8ACD1819EF42E62A270A3D54CA08DD380C3D5A31EEFDB4A6E78A9263B3C51
+13067E52575BD9510585A2ED9CD1304E0A79AA78089136DFC42332A98F5ADA20
+1F700F343B55C79269A3741E8B54203D0665BC3E61C1B315BDD6F86369F4E353
+D6B6D23535C979862C98773F0B91A3C202F182C474DCD1D0951AE167823D28EE
+AD8E7F5397B8A7162DD0F7FFD0C06E464BBD8C7C6CD44FABAC6C3ED1D55E04E3
+01315AB50FE2FBC3D83C197457441C8167AE78BF7AEE6A742F1D4E84FB028BCD
+40D645753F6EE686002E3C9EAFE404B70BA370B6BA92D8B4259AF47C132F9B52
+339B78A5EDD567E45762B3B23DEF008B955EC36EF5FDF43CE2F13F8F1629DFA9
+6EFD20E4BF7398B9365E7AA5AB93BCAAC6AAC048B26DC7CCAB8576FB5A2E48A0
+490237956D91393E35BF84D0960C0D6D4D197C1B1DEE232E7FC6042B5D9CFA83
+D518D58110BEDB56BAB674086C2ECA695CEF25832D358745E82588905BBEC2B9
+8453B5859F7B896305A235A713392544B69C38F0FB20F768AB5AF2F91FFA1A8A
+AC97B0AD8F0FA466F789C9FBC26F651E567215AF09A612CF9C56B85685FFFE8F
+CE20C2452B0E4165637C48D6A77965D2950BF1F3655B78E80B95D1F792772AF7
+3677291AA358943177A3DC4BD85E3A5FC30A2735ACD1ABF14DC1F53FDC75ED3A
+30A85B60AB873CCC7C3BDF87E66318D3DDCD85C55B2BDC5C7E0B2C7B086FD6A3
+4BBD087558A3BCD7E6FC0EAAAB0A54DDF50B6DE1A73349F6AA349F8B57ACF52F
+7FB5D338A86E87145DB5E1DA2DA338D48388082E301B00BF16D1D1D97EDDB987
+737393EBE184625713A378DF538436FF07A512826F370330EAFFCD4B63EE28D7
+3E5FC47604058ADE79497AD324573CAD9CD147DDDB85E986F2F6D624359FADAB
+35BDAE9D29D9B3AE3D98848E28D4384700E7BEA1C262F3A15F449D8019DA495D
+12EB6AA185812107D8797B916CA89C1E2178277D8CC6D93DB846CE65707E0E7A
+9989157BAB3E835F6155756A24CFCC0CC61E17FE04B02EB43708FCA21A7E077D
+DF0D4899846CC74265187D6CC764853466E36B3DA04FBCBCB1F0AEAC2726C5CC
+EC0696EE09C2242A3AA5D3E6D9D237D69DC3914F2857A9AA8A4C1EB771325756
+9606128C2D929EC9F614E59B17AB90A3DA7E43DE4E89FFEE7F94BE617D2E9AE8
+F2F9F1A029C50B2DDAD89369C5640649C7EA0B3EA2D69BC5B4CE7780A07B0697
+26BB163A9A1AC1CC0640D0D414035466CB56932ED20D62A0A17E714934E1455A
+3ECB406BBC320EFEF83A5E15F45FE544A1049CC0186E85B4CD648B2067C6C5DA
+54E5E6295BE9B9529FBDEDE027C65E20B5E3075BD8756A51993613BCE468F435
+81ECA8D664ACCBE36E73F19DD66DD9BCEB3E18105363A4CEB258D3F413C5444E
+BDFA0F8E84D3FD824497966755F70EA68EBD25533A68438AFD7121A3050001D2
+4C35CF2E767AF8B49A0F216AC26ADB4D1E34C9B2727CD54E4C39835C666FBD57
+062742C86DFC02F7B7A0607234988F33C4079BA5C6F018358C8E1EC21D808FAE
+B2D5D96736C598AA40E4D81C0A3F2C7728B21109BC85614480260C68277B1062
+5A6FD884D718D67E3082BE8D65C047A57546B6AEF3F50C910952CBA770027912
+60F2AE5AF2386347D33D0AC79E414B95B4855D125A15342C64A034FBD2551C3E
+D3602AF5AAAED24CB8657A843D909AB399A4778967E83A1DDE590F106DC7C386
+BE3E3B9203BBC88A15881A430838D51CFED4B6012FE749B6141554DBF4D7860E
+D1196F3D19CAFA33830EDA660916AB7719D5D6174C87FA6837F3702FE74C9DE9
+91FC9518B09ECB84B65BC01E475A533E0090C0C838D3C5288532C1EAA5543181
+D3027531CD05E4A8DE4A7ABB637E40EEF067479A91C99D31D2BA78B815AF7FB5
+C4846B87CD6486AEA24F7CCB4F9A528AB3641366CA355727111ABE42AD9C5AB3
+292F1C9601D8DB4A640CA555F381459DB1836764FB1B4CF06D3C737698A71839
+517C25747F6E4638F440DFB117B76FCE927C9F4D5097B2D0A35EF318D2C5E7F8
+F8A69DB02FE61FC5841FCCD666DDA7B4493B02F1D692AD499DD07E17503FF352
+2B181F4B40F924D4D0B762485AFC30D4BB0CD929A07138C07CC12165EE82B7B8
+10E346C1335428ECE41F7987292A579E2875C61D462BE1914C961514542D8F91
+BFBEB5C4ED9DF3A16B61CD590678C3D92833383682A833BDFE2BE06A950FEE48
+666F025A2536EF97893EB4FDD9A01A570B7C4CC6700592C57C7A6015978081BE
+87B5B1848390B5A1BB3B03DD3967EBF78317A5EB2DF8377A3365A6E1A501CA06
+5D9852878C98AD53FDABB234DBD8E3CD2189F925C5C04C532A0B880C1C95D242
+83869931B6080BEDB8F64974DC4AA2C6DEAFA3FB4AC3359017BE16AB6C9D614B
+A16C570E325D96146CD3D448C2AA1FDF9E066BD5E2C05863F41C19A4B67A97E5
+DE8F3DE2150B50098A783090A044126A82D6E41636850669AF85435DFE77D032
+A40A007411AE1F43C329488D84735C1AA792D6C735525BE05B7D7137FE9CEA03
+342A73FB69B59659A2F3D4794ED5E1618616D3C47F1BECEC1331F3FC49573F62
+B6E11AEB2305EAE74B32161F2CDA353459B1940F5ACB372847B90A2868F80209
+7D9A2F4D7EFE09AFD8FDAA444DCBC2266192EAA5AA98BAC0B1C2DB3399CE990F
+51430A426D02AA859D9455DFB0EDBF2535F52156D49110A2B0F79D59DB6A09A9
+129C6CDD18F21480327353D4B9FDF14AC51E43FC8823BAD29DED354321230135
+53DAFAD9DE6F3966006B1943471F6322618BA48B555EAB448137E7D9A8D2B2C0
+FEB2CAEA03FFA8BE7E3DCD4ED15115D13D30CDE52FA9C239241E1D069EFEB4CE
+D69BD070D0DC72EDA36820616FA022E6D7B94AEE27DE38CD19B29BF0E070CAD7
+B803B59B7FC26C274132B6FF13E65BC691BAB06E58DFF4D788AAC82EF8633613
+5440302EFEDE90892FD544CF5B3C7CE263EEA7EAA86B3C4B346A654BD0C616E3
+90A3A0E597233DEFCD35DFD11C609C70DE28BACAE19A079BADDB3A731C55D76C
+69FBD4EC5BFB21B8CF7B9FD12F525473F87582E2C08D568C22A985437A145481
+1BA72A09183C92005F2F9C8F08550D15B501C8468E51BAF07998E3F6CB201890
+DD0F36D29B05921F968413E44AFC37DE0D50016BDEABE2E87D28DE73097B05E2
+AC14F06499F4C47CC300A1CFCD532746BDE9AD830BDABB74E471321B5CD09D0D
+3A91D39BAE84791C57039C5D7E878266BA15285B97A04ED5B3BDBB3F442C58E2
+84CF6E6E86D838ED8E9A0367D1782C6B5C21F806E0488AE173D6FA05AA5F348D
+F34F425B4D786A3B3AB1B29B30843EC23A755014C5BCC1A035856BEC41815081
+CC08649E3FE729E56B5D6D36D92FC270E92B419AC3EE27442A3109214F72D229
+D8E464911A47191AE9329CDD32FF2DD2A1EAA2BA460D2ADA44A07B9D3F920614
+997F3DDFF9C987B1643B37942DB33B91AACE625F2586335AFE25BBCC7E0AAA93
+CED4ED54F42898C4A1C27F01ABA5D3DA1063CC6125DA18A58CF91DC68DE5A175
+7E8A5368C85F089FCA09222EA108A56810CC166518D4D31F1F926E578941523D
+4A4516B58C7B12C047D20B4A14DCAC96B9BE1FAC3CD997399832EFD140D4E865
+037AAD2F4DD170BCA222977F38CB5023C421FD0507A943A7A0AC172DAF3672E3
+CD332711E44A9AE8DBEB439688C30DC16F36487E8EB5AA9A388C95C36690D61D
+0110542BAE8D1065A2F40C0C732478D43ADAD0AB52BFAB90D0275D20BEE518F2
+679C7CB3DE9FA3916D7D28897566010C0C3D8023F7C745DC0A6E4FA2A2007E8A
+E903BD73DE5383A642F51BFDC14E7CFC2C3A7D826782B321214A0681F1D481FB
+A0ADB9B38A4B14D7682995F0A48D8C29CE51AEAB923F488D675C984D09D8A7DD
+FDE4ECE11EE3AB2868B9B55F5B31F95606FA7003CC08B162979BA4D334545813
+487FA6236DF01C353E1DD5B5C54D7C8A0A5BADD1A8A103F7592F1A2C35B032EB
+D9F41179691CDDB69F79F042AA0163B7EDB54C67156CED4B2AE78A51CB5E8C0B
+2090C99BCC93F57862819CD5B4B5602843FDDA81CC2F780C44F1A10DA3EACB59
+63656C11289E2E1622C32F2CA42B9E2F0A54142A579FDBC600C8265AAE781EF2
+8CE62609A846EADEDAB6C80650367AF78A35E192F83A9FA8AD33686C18F6CD48
+D1353BED5582D886885034480939E709D72913EE77CC89182D3DC208A352DC2E
+E160106813EDE45538D1E6A42B058374EFFC4CA57588D72D6D91FF4462B7997F
+2074C95FFC2C1A3E2E61D51D6607592B37E7C69262C99FE651C83220B6248A53
+1A7A876DFA75BAD2B74EDBEBBF57FE3F3DDE41EC182162392D3A7A55CFAF4E45
+687EBCF348904DF69E9DBFE4C7CA8732CC14317AD05189BC7F45926EF8920D15
+D0117E5C9E4158C763CC4EA90AA3C6F5224D96D64F5D2C949B0FF6408C5D2EBF
+BB413E10933751924021DEF7205E7186EEB43CBB733F571AFBAE80C9E75CED44
+4B4BBA96637F17472AEE4E88587C25FD55C05BAFB5F6C1BFE79932E4D5F0BE06
+931CFFB9DA799BB561DB4CAB5953A7396BC3824AB9E3A1E6E83F142BB6D5B169
+6E71D77C8B3A9CA3DFFCF92817B12E5CCA35B0E61DCAFEBD7D5D2373109ED6B3
+3B5DF4B1400ED5DEF119564D16832FD6342FB107C290DBCAAED574E3456CBE7B
+DEAEA8D2F063762C156732D8803188589DFDE81999044428CAF7531B1938498D
+D62BD8364709E318162794D3C78DBD4B385F9490E14337399C534D83500A8E01
+18720385CD80928C7B739410CA632DAD790C4D520AA87D3F995F1BE0AA5BFCAC
+EDF9C32DA415028720A9D9347727586F32A838D1A41427C8C2733CCAF6780B42
+282ABFEF4C67D33F3C0D64EC67FFC314C56C2FF6991D3979CBB95FDB9552790D
+6DEF38596B3B7F03046E363B783693AF4AE72E023B0B63215B65D6BA94B56A84
+E8099835F0D1E4FA0CFE5BEBB0812CC72188C706CA5EADD3D15533EFA54E0087
+F5962216710F6832ECAF1E79B2B01BDF8726BBBE22A650A4FA882690773781D5
+822BE67B2F8E944C08CBE60F7764882E1221BF1D9CF0C0BE55CDA80F966F7057
+78FFE0C328B60D02F9AF285A7C8A1BF590551622429C18C1DB51CF076882C141
+10EFCD59D8308ACFBAB91C18538AF23229AA71188858C8292261743CA5088697
+CF67A8E070C8018FAC621106AF4C702227D28C36A535A1E42FF5B07D0A5C835C
+12DAE66A9DBBDA8B66C3CF9C9A01E2FBBE45468D0CC43F52065A1C9E41FA2083
+9DBBC2B58DF600AC43163C22CB3D44E83EFF2E2FFD2938C7D8C0184760ED5C89
+422F8B6EC49530EBF0FC0E9BAED65D3F3E77AE0CD84FEA18D5C94832038C16EA
+E2C92B3C8310038600BB5614A8453E19CF2E3638B08A97BB88E4EAB72E372A43
+22723A41C14A58A07E2F39DFB44DCEF8E0EC08A02CEB33240E38F854A1C5F12C
+7298F13D70E27FD2DC10CE4D1B3F4C3EC940C7BAB62025729B408F12B001909D
+054A87B9C006B5994155F967AFC7804DFA4DAB8E69CBCA980A236BA46DB82496
+7AF668918576FED3D444797D0039261096DCA549D75ADEC62EC06F0FF99C63BC
+CF9493F76BE4D6F4ADA83D31AF623518E9F6A3E9065030D4A5EC146123C2E56D
+6C9AAC46CD09003995DCFFF5445FFCAFAEB794DFB21A3F57DC9FE8BBC09F9A39
+D91E42EC7EF7E045415CEBFB9EE4C055E0606001A9D9CDE0466F867815307B4C
+C34434866DE68262E84F0B7B6A6882C941D943501E09772E88FF06405123F00B
+B030DB4BE5A247A6794901C9065DF937B26B11A2C354315AC3DD23D50674E1D9
+42F217A002F319D2AA76600C687625AD4739AA6C75E3EFBA83C7D861C46FCE8E
+4BD9A479CA938C03DA2511B9C7CEE79D0AA8603892578957DB09D7EFEA9AB8D4
+A9AB219C8B0F7D9F8AADE5A03FDAFC52733C5F86B3032363CD880D4668D9204B
+1B60248A5FBCE97ADF14451CBFEE285BA1C94C55AE0F950FAA236F97392F1297
+6696A64A9565FC2EA94982BE7E0FFD3C0784659B0374C956C2679B46A8A0F5F6
+A3DC4298606334CD4976425EE31E3D48C2BA195E409C560FE09C7F5C556817DB
+8FA9D689EEC1C380C5617592630C002025FAA269C41BF8EA5504923DBBF00194
+750AD95E1E46781345C2010DEA5124FD7168DB98131F050ABC289EA1F0999112
+A632ABE28D20E7A21FE4BA087437B1D69BA76EF06493D3B04B0AB6602B8264AD
+32C04A3B99E790183D1B26E9D1357C66471099CF3D6E2E25B14B8F253143D080
+B7402D08022ED72C4FDDBA53D9C939C2F7982EC6B7EFEFDF32810C68AB89A390
+A4BE42723847D8ADA39A04A90F16A0144225DDEA4E00DCF444F7235422620606
+582D792C7D175DCBB91E157894439D8088F84202168EF2B6F6A2BBB74D84D2E7
+1828D293047B8F694005E644F499403F9E52FEDFC9D9D751144E115D555FEF2D
+0A8729447D05387749BA9241CEFE63EB08972754874C3A95E03D7AE4B479124D
+4026A964BF9460497CE0F867E0A8672FBF827806F0C5E704600607F58684F53A
+80F1E72555D16EDB2044FB43E73701DEA9546861AC79209B0753354550C0FBD3
+B421E6F1450DEF1836A9CB95AAC5E02DEA6F0674216777BB6E34A897789C3FF1
+3C06E30EFC83E3A6B9A3CC9EC9BFD19368F46F5E502CF35B4DA58B8FC25139B7
+E6D38B82B0C96C8472744CE23EDCAE7360767DBDEE1DB6B9FFBF52C523343C02
+7398C68587776D8206535D07562EA5A810B708FE37E8C027CD56B9F430C1B8A6
+26AC2ABB2ACBDA66CF3071D6EAF7FC9153C6FD646C71AE8A80C0EB0B21CC8571
+6E6F7885EFFDD2D21F734C493218AAC2B2A388585391ADEC1FCC4A6327972E76
+F33B6730F6E8D4A03C6211994E3FB80600385343076A7FA18ED645E7E973E3D2
+6899DF62E594608B64DA6A31F6B67E51979366ABBA449265B8531BCE82AB4FFD
+8A1623D1EA596C527E7E8DC59EA93686AAF866C6266CB4E3185C369FE1C1CC2F
+37481F51D119638A15209DAE28928D7F1CEA6FA475C8E00B5A6EE66FD24E5B07
+DF25AC2C6C9DE8F4083EB14AE83A1FDDBC990B05E76D75EEC1330B07EF9F2515
+3CB3A2DECE0EA079D6266A75F3FBFB994570E09BF8C2B17BA6BA3828BF56D6CB
+DFD7DADCBE27EB84D53DC0563FC2D88B81F6128F05C5C2332539B0E074C8FE62
+98B8FE245C67D79DF5A3B24EA7349965974F7037FFF9E5DF665C12E2B7D22385
+7B17D49E25A85F0951DD39EEF8E0B0924FFA1A3263064E5B73D9DA0DC00A61E5
+1C18B5D0F1CFADA56199D6FD46C4787CD23978ADEFF827EEF8E671C1C3E095F3
+32DCFD84CF8CFC8E9636F5D4B1DC98746670B2D6D6E201BAB498EBC2B5013A7D
+6F41F15CF0B617B85DA4C2FA824FA3C2F6187973149F7CDD8EACEE621456EB11
+6202FA4F3980624822BDB7FCC34B72BB78234B48826869F285A6213B7BEE0DC9
+EA517FEA86931B510F814E9F3161446379EC6CD1547462E7DD2A9BDF7434C5B1
+6051A4E37BD55F8621E1AD88EC5BF0C2DF959EEBEA57D6BFA7AB1F5275EE4396
+0B7EE99EB9792CAE0CD2D0830497C1CB7F65B26977853660CB511C2CD8C6C78C
+6994B1E678D74C94679C234DBC4A46D2A58F97066594AC3D8D6657160315376F
+E399C9531264DF10BF198A362FE814C738AAC1FC92628610AD3EEA045284C156
+38BE96F4EDAF53400E1E9007DAD2870DF92921E9009DF9B9461277F37848D2DB
+6615995E43F25526AC41B8FAFC7DD84702B8674419D8083CC6F5FB81AAEDE9CC
+05CCADADDE0AFEA7195C0711E4A23AB77D104417E6E1DCA38048A503C57C8478
+2F842732FAE8CB7DF9313BB5BF9C8BD34F8FA3E60A4E383321C9CA6A45F5C303
+C1107B39BD6339788E2E9A053951CA0754FC2989072FDBDBC31F793DBEE2D241
+E508D7AA00536F8EE2317887A48BD094E5EBD87726673508A91F20B303D1097A
+705FD4A05F9254F3E976887469CB60532399BAEF2D2A6A3261A580A7BBE982D3
+1C5349C6532B49C448662DE8CF77065AD53F107E518BD2BBF7598BEED804B598
+5E5A6CF4F33CEF6C753F3E39A0D9F71ABB5265FEF341EAFF6B6765DB583B7334
+71AFB58EAFC67A52AE85D25C4D23749C629063A5A30616C47554CD365A681DA4
+D800637710A09AFA352FD5A239342AF5674C1A03E789962AC52E367AA3A26DB2
+A2695F8065008FF37768F504EB4A1469709BDD677463FB56994057793A2213E0
+40A78666D20BB7F0A9FA19546D3D125FAA5830D4DDBFCB5B8385C731A01BA374
+36CE241BB0BDAC2ABDF5C6159FE9004D64FDA508148C2E52EFD8411E423C93A0
+31DC5116B13B528FA885D80912BE401490C72564C2E884CB8A876EB7C7027A09
+B4737ABD4B3DE2AAD3036E9A69BC2A8B992CF64EB084CD1217D8C2BA7F3D1AE2
+FA30C4E8AFA4DAE7710D5E42E21EB42391D9032BAE202836140B05F25BD1D39E
+CBEA5E5BCAF1134957757006D7F2D911F259B146A0A50A28344496A6EEE5837F
+DF12865B34FC0BC7098FC48CD6A38FF1AB13FCA38F41EACAB40AEAE48EB38622
+7C6B8AF3FCD466FF69AEAC16C92A43D6565DF5544B72370F0B9CF72ABCAB260C
+4897670977E6B4548E1283F4140151A22002FDF6B1DAFEA352642FF9F5EA0CF3
+90D3ECDFE6E36670919C0A89A9774F4D4A2578DFFF6F7A19468E11110E79E3B9
+96EEFE445EA31DB9EB1AAB2898DFE59074FFE0BC5C116094F5F90DA5586CA1C9
+83187B8843EC9A67F8E0B2F8CE60F98607FA233AB58862F57815BFE9A2353C68
+5FB99917F5159AB617883A326FAEB440CE8F3D89163061B1D267720E6430D60B
+17CEAA9922E78C4313F32FBD296B9780DA937E9057DB524FF32E24D9EB5BC282
+E4E95F580227DC454D90A2B9CF028ACFCBD64740112D21C87BDDA6FF63631CCE
+DEEA055CB8FFBD62ADE13B70B546158CC3C0C5C4C7F528CD5A3A04976F1844CE
+E06F6625EFB715A911F68F7C9EA740BF81CC81585C76EF3DBA8ABEF9C801A5AE
+C2F6AB80DA3CE5EEDF7E62C2E77B6F2D39B281DABEBE484C1AF45738D03FC8EA
+B19D501569D8493A821F12B2C7BBD5831A5BB2E5E1B7A20E9539B4AC027F84BD
+87E4108427523AF7ADECBF27E34449BF394555FD3A5CD93E77E07F6614DE381B
+0647C6946CC965940E32CFCCEAA0EF8D583750CECEE9F6F9B1811AC85F969C17
+711F90E023E46E94F954CA82C5CC4A261F13710D1CCF3C4FA29A487C31AB3917
+19276AFBA2D30969DA9B57FD53D8D95188390EB1844288A88BF24C6E72DE2923
+291375527CE8B3ABA0007F94B9A327BB14FBBD979E2493D063744B00B9BE0BB2
+95782982D62D9F339C39A0DE21BAB95A8AEF01B9F859B96A9AC88A1B30E77F87
+945A0DBE672B0CBE378B295CB1E77ABB92122EF18C862FF81E46E033948A76BD
+AC1947F6B7426C2CBC0C8D8DD54308096D28FD776A9311684BBB217DFDC5ED68
+748F6A8B594188188F08EB37CAA1642BC39EE931FCC943E131965A8AF3CF6E3D
+C0AA67C637EF6462EBB26A823ABF3A45E043D55684AF6B1E3677CA612B8565A4
+4CA9B2A8DCF7FA3E632C1AC3D90D4B049008A746B9B1988934CF3F71D326EDE9
+26C2F488BB4FEC813A25B7C00134D1F13046D968BBD8C1183B2F38A84CEF0A10
+199A9326DF070A0CCEF8D582C0BA8751BF8EFF07C39675DFC6C8856CDED4FAEE
+D36FBAE49AF8780AE0B0B1799C15E8BDE0180CFEAD7AC531E0EA0831D28B1DAB
+7053E185B46050FE779C47C5567DC49EB40129F756F95AA1E5F1D1AB23E6B943
+3AAB440FCAA6D24B794B6316F7B448012D553602C50D58C43BD15FB4AEF3BE6A
+F2FDF1804B6A2F03D29184164BA09546736F964267C503D9AB5330F1B75C43CC
+92CDD1CE007C691FD06744024946027E1577A046133B0139679375D2A3F351CB
+1371418735B0F50862BB71183AB0FD181FC839E2AD58986DC04641FF366C5CBF
+05E092593F45C3E7FF17056AD025DE3A102964B8AB8DFB5003F8A59F1686B1A2
+5DF77E234D5A8477C3910A5341334F6343CAF64E95F9F8ED998C55B9A1E01402
+55A44B138F9B8D9E6E0E7C55ED63861910B575280A574A11DCC77D950FAB137F
+81AD6F311C5E8D038A3E848F9DBB9995940DDD01C2FB82686FB155E5686FED96
+5B677A9AAF678A392826886D8A72BB022094335594338F33D12751F0482D99CE
+E78C1315ED0566808A31601FDB81295B3D819D5E3373AAB3027D238448E82591
+AD7189BCE3C8F7E6CD01B1807C6951F840357388EC04DD8293703A8FCF34B10E
+5B2BFDDE9219C46F7E1265E0B23E4451E94C8C883F731D843D49A37C346AF1D1
+A1A02E5647EEC7D93F86417C59170C49F1BCDF0FF84EA68E99018EFBE7A3B04A
+4E791E506EF5B6E9CC81596A2F733C79BF95E965E75A42088273CEA162108693
+408A1CF32D257EDDE9B4578BB74DF1A532A548EA49EEAEF474538380C5B42845
+217EBC88D1B7E7833A2CC7A136B2BBCF1056C365A15D7F90727FED240F705357
+F70C17BD938B103EE0A637F6EEF47FA2004895BC2E53A224A36B8C7CCBC84D97
+3B030A367720F54722F61D17FFB0512DC24D78C31786CF048F826B0CF1A3A761
+B56F14C8C817D5AB06209CBE5413498A3D2606C31DF3A38DD069852329A73F1D
+9FE5152DC88AA4F1B54F20F004B5AD0B7C0B9CCA2B1D04BADC8729F155AE14EA
+483B0C81B45130F8F6383901CF6682A3CD03585E
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMBX12
+%!PS-AdobeFont-1.1: CMBX12 1.0
+%%CreationDate: 1991 Aug 20 16:34:54
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-53 -251 1139 750}readonly def
+/UniqueID 5000769 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
+B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
+AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
+7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
+20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
+B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
+68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
+D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
+26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
+F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
+77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
+BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
+C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
+30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
+148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
+E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
+E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
+337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
+0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
+472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
+A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
+3318B32500F76B1038FA6122C2AF6261B025BDD004EB9575D102D625A351A20C
+914D7D79EDB0FE343726526D57A9A8E3916B437A95C895F542DF4685E4683CC7
+5729A4B41F0C51BF910AE542A1270EAD05AA2FEB6B95C3C5D068210D457D1D9B
+9901C8946E0E7F47B23BA12743FE43A1E7DD18C56A6CC68C5E4A22180E24EB3D
+2F5A6484A170FF45D2C5CDFEC7958ACD37C305412BF2757630252907C69FE044
+85724CFCBA4A85C02D4F9BD5A5405E4C0FB1EFF4AF9CC41401B5ED407E78B0D1
+5C0676C625A5277809A8DD0E44091329701D8ACE4A981EAA0BDFEB0B26110396
+B24839B5C59B1FE13EDD5D4B4E7893CD85A4712726BE26357F427EF53B157DCF
+77791447877951ACC19D5AF1C2D7375BE53F8AEA5E0CD8A2A049A9A010F44016
+8EA0B32EE9732E0263BC6BC08CE2C21DED168F01F84901DCEDE4E7322BB0B188
+72E01DF47C8A09E4D1F8B9101D3CB4F99F14D73CE3C6513F42C07DC2A44B9882
+3E71C143105B500C6BCBE3EBC7822156F09B6218AE132A02318AB74AC975C384
+66FB129B40786C5A9916ED434F37B849432693B652DB8E763926F35877BD680F
+07D3F37A1530A7C1CF9C4736CBD6F37D8FDA3F3E315920308FE8E03D444710E0
+0C3A7CDE50CAEEF26F336033C286CE4A6A49AE54F1C04408F05871C1A97526B5
+2F7D454656CAD1F8E6EB9F00E5D92F477882784CC7B353DB1223EB8CECDB306F
+504CBDBD674580DD1F1D83377C7B0330174052B3F1BCE44D2DF40531E0F04EBC
+3F2F78F2DDC87555003EA9221898CB0DCF91536992D09DAC5CC3B4DFB5FB8795
+F7440C4C5D2093E742A68FBB91B62BB460A94FCB1E40359DE96CA2DADB381C09
+3785CC885CBFD3F0FF6E071447ED5A66F709220E694B7BE98DBF8EB0C58D283F
+D96B830E155CC238B74C746E9452CDF87C235FA620677341FA29030F6670CE34
+05E07A27695B172BE7A490FDA7A039DEC9A8F0EFFFB443A0F845B4AB29BE64BA
+CF1458E617D8E4641D4498A63F611726D1FA46D041A06B0A2D6EAE84CCE159CC
+F8E9BC776EF171CC1FC759B464BAD8958A3D59CE4A085E00FB67356600B242D4
+141C0BE6CF443BDB33A982D8D878E2E72542E415385E374924CEAA3DD022B523
+420011661E4C9CE26D00E2F6D81079BF2985A98941CDCAFDF7F79E2089DD82E4
+F4CBFC2F91549EA859FEC8FA310D80767A2CE6A6C22D3304BCE453CD627230E4
+D68A71441EDA836FB02466981BBCCA43EEE7D4A4DBB6DA80113EF317EE6F9921
+D7BE3711FFC06D672D6B9065AAC922A6C5ED4E083C781CCD144361BC9335BABD
+CCBCFA8CA1A6604E4CA6C6E733E64A9C64F14B37B06DE93A26C00539A0556291
+7DB29A10EEB205C938E7E221E501B383510674963A5646333432D64CF0086FB6
+E6FC471089EB6A2EE2707E7A654680106970720DC03123F6167114AEEBE9D7C5
+0169A9E8229BC43262DE297BB5417FC747C017BB8EA882990446EAC4C5E748CF
+F5CBC4B322AC52C526BD5C93C5E85B33FF89CAAF22280820FA37D7BCED9F5FC5
+FA1102AF04E97E376BB87097B685493A045092085DD52DA388E8FE37309BB9C9
+2CAA18ADCA556F3565A5A469123C9181E01940C8DC8F830AF7BE26B578E0A6A0
+27FB0050847EA0B904741AC997D7FE61137A40AA3F01F8DE0F5F395DCE3CA642
+6BADC8667F8CB0B55407C7E63BC3B2558BD7719689AA9A321ACF68902974D9B7
+9966412BE222A5F6FC314ECB68CF3EE36D3893AFFBB328175E91383508F7CE08
+E6805ED0207EF98D24E81F582551EC58F4E4B11A5F10567D6559A0BC43F52358
+9886589897A9B83E147BBEA3AD853DE76925F746F5820926FF0648081EA205AC
+0DEFAFB51CF9E6DAD1C54EFB2C5CEA2A0B06BA6E9F05AC0522A90B9B6202AC92
+C62CA81D8BBE71F6E0FE077FE7548F8F0129115504BAACAFA7D3644EB7F21013
+1709728DD27A5FA0EECC81A5CB67A7B4D62A9D8936A8A6E66E8902FD5816A95A
+5F5E93AF6C2194819E2AB7A14DED341A918AEBE313868E9157A0C181DAA8738B
+1D49BA8DDA1D53EA12D2830FFFE678C90974B608C9D2B64D4F5D03325DA85FE0
+4BE31BE362CC2EF7E1282838E3CF32BB77DE7BAE06D4323C4D88552A20368E35
+4EAB8AB8589A08B163F4B52445BA621436703B14085D86D607B77207A8196827
+135612C8F68A3CE8823452258ACD62B49197693DBE921B538BBC576F4490212F
+D3273C96234FD9CF8CCA91FBC604DEEF29FAB1886647242EECAAF9F3B459CA4B
+FC39D1558A995007E983E56D8CC102F54BDD83EE9B6BBE97F14BA59FE7768CFA
+9E66B67BE552295782D9EC921AF10827ADF4CE1F665B5E99B0AA0B1ED2347DD1
+CABED5C69A070A9E966B0AA2C446D72A213EA63C963F5ED259FDBC159A56758E
+17FAEE2261F2218C991F4C01CCF0588764C50FBAB5CD4A9D82EA5ADCF0ECD6F6
+2D0DD12467C9E56E5AC86AB4464A943232BAECDB35FC1570755357FDC6448678
+37F495DF81FA6B14E7CEB15DBD684413186F6926925B4446ADA6B2C435EBB83C
+1414A3510826C886EF3644D6D9EE1C8BC1D08EB8D2E89D0FDA8D620877B5476A
+4ABA3BB30EA169105717428CA3FDA5951F5CB9F9F25D6A728DE7793771FED8CB
+9A95114D62E9E0D8386B6A20BB2A29BDC89E9FEB443DEACD6BB98203C5ABC058
+F2A77135B0D1025FDD3FA69760FFACA3554FBA2D6D7869D57022D2DCF8FC0ABD
+C42D9A8ADECD313645C1875D95332005853FF338502191CBA545D54F4394B2B5
+C01E590FA3E1A05FE533D05E30E8D1273EB1F1CD50598E681E01795F07DA7D38
+8B13CD980633D0F912417CF6A03FB58422A41F7805238131DD6B5F386F794F3F
+91C1706E93A7CB8F4D52931039309CB64402A47ADD4D912B25733A83525C793F
+DEB65C79DF5B5ED1EC7BE0983F109DFF1AB8352D96B09E79CE067BA9A97AAFFA
+7079D65B671498382426CDB813C21C92CE2A7905377649FAEE71E92312E13FDC
+CC76BDDF5ADC6C1638FA64D24B1A20E3050A16374FF6D684085CD6DC7813B8D6
+AAB8940A5B3EB2765FC3DB232A2A7276E3098DA0D4149334B9063DEE4CF08F41
+6DF7C4B9E3905497CDC3AF27910997AF0F439BD717BBEF97631F1D686B8CB995
+B04C1EFF6D9A3128781327EFDD83DB00CA01ED39D487A65297063467B62F4A66
+BC1F3157E11654FFB57220752926716D2D76BDF2906713B36329E84AFFF83EA8
+6A52BAC88B8BBC21C9CC320D5642C594EDB81BF5F274F8CC0D7D271022E68D98
+076B6C83FC3FFC03F68CBC8F50121938CECA1C420764EE42103CBA57C3B42F3F
+97CD855C82C05EBA1F18A248AE741EAFA860C3D81E87320C2B4CCB9D8FFFC35C
+D25418221C663185F5704527CDF5A3269024C71BD9108DD611CBCA539F280BFB
+8C73A102FD9AE46CCED9AEFCCEF3C7641616FE4348F843326600D25C52625CAA
+46CF38F2506B7E9F899F161E424B0DBC6232A8C6D7DCE41A88BC996FCD0C0254
+8D19EC9263B30AD1D47536068E9A10CEFB585B56158C9408E9B67AD217FF6981
+AE5C27D9AC1BC7C1D8D549F9F1C4A20F9E94D6923F9E3257D41AD5C1030A05AF
+5B4A4BF214C8B2EBFFCF7196EB0D9AD416097460E744046356C388F5D61F4EAB
+ECC0BBB95E4F633A0753914C5FF19DE55AF5C2128DA653700F15E1496F4051AA
+E93EF416CD1709A9FCA1353D4F39BD52AB1F3FEE7F76A925A911447DB6643A53
+CFEC3605EACD5B77344E96A1616B23332C610F3C350FA60768CC69F7CEF3EC3A
+E83F45A7B8B93B32E5E8E155972F4BF5CF94D2EAEDFABE1411B657ADD719868B
+4E25F0AFF33C425BF0293FE25EEC2C1A5425B9EF2504DF462715978A95DB52C4
+E0C59A5F00ACDEC355348862CC3209BDA712504CDABA0450D9CB6D3CCFCA7AD7
+68F2216FF98DD2DB3C52EF34F2CEBCC4C918D6D12904EAAFE6D9864FB53C2A75
+0906419E1406D9A690D37202174F0BA55760E4C8C7C8C540DE62BF3C71FE57EE
+F40813776C01732E6006878D387D2495A985D479241BDCC39FEDBEDC3EB3373A
+3CD74B5CD0DF67B87B83211EE3FB7E3E0F724CF726F2F7CF4BA0FC99B4E0AF18
+61F2BD33C511A4F8A9125E123A571A1956B7959FD98FD69755D0938305A31936
+7FF05D3025920719E895D444D9D4466F815703EFFE9EA5207D63F3C0F637072D
+944E9B7278E39155D500BDADF2335FBFA219630A921D49447005E52E90EA2974
+F47F8525EC53A701E015866B3A5D49D2B96FED76BE9CB393046CA16BF5E345CE
+D57BA7357733D7E0A0256DCD83AA568E77CA62F015FB78B9A7C2FB34E9F88DBA
+FCB509E9DE54324DF2A345BB6823BA139264676E796B67C89169E247371B597F
+D52E59A47CBCF6F2D7A5B0DE6325CD92F25C05AC16B9E847E28C1F367D0CAC6B
+70E56C2A4259532F8BE34F3BF73D0E91F28D4F24DCBFDDE5F0B03D7002A0806E
+72A3FE6757BE5F9F6AC00F8A13E4D8A57B3DA9840FA78047F81338BA4A73719C
+08867BC242BA625EA95036438F786A6AE9C279700B0F8AE6770D900A4A03EC2C
+582C57444C4BE292C3E3F2D2A6F44EE0B438FC56CEA00B39DE2419530F5EC182
+2148A4F5B4051783480A877A9AC2DCDA457AA22CEAAC3ED8359D1A69FE4C5B05
+631F6EBCA62F5243CE6A12760D30E93ED9C4ED85434CC5CA892AC0BD436C3276
+E719027B7854CF43C64AFB7F1AFE440AA2BA051774B036DFC96829964D176D93
+7681181358C73866ADC17E2D123ED07025ACDDA6339D80FA49D367775DFAD732
+E18B657D720634274EFAEA275F986314F1DB4AD016C39955DB03E358D23E5F0A
+B20BDD2C8992C9A37AB53E9CBDE159BAE1A8C0E847627F956FAEBA8E4C88D742
+A59B1802590677C15CB01AAC4E800D0F389792FC3F069CB1435F0C127E0EAC37
+E546970E12B73B54015B69D03069DADE098C845A023880DB7A999019DD9A5C10
+B7EAA4C08925910EAA931FA54D984519E680DCE8AA9F1BB37B86E390FF69568E
+2435DFB1ECC0A76F5DA3A388C92C8AD2DFFDB343AAE97D2297B3A7DE009DC317
+40659B3AF073940FAD177CD36AAB3602A1AD2457672FD78660CEE647802E9619
+A95A171C59EB6659B736D84993108E3A3528664ADC37E421FC770CB42B1A0554
+4B0231840D50BDCACA9FAAE04CC1E616E83797026A1318E19B171E7ED02C58A9
+97C47B0EBCCBDA62BBEE544F1EBBD941CCC562174DEB2C0970C1F46A565D781B
+ED017D747F56E4B8E95F24F25C9E044BC1796C2D677762D59E27E79552B8EBD2
+7A6F3E6914BBE29CE44C1611CF15320D57121B47C59AF4FAABAB32CFC01C6FD6
+9B8ACABAA6BE1AADC1281E063B365AA0A7347336B572D074471FEAA3DBEE5A0A
+E28002D8500F14909565DC60061E9DE5100194D9D05F5BBD1C66CDA1713431D6
+DA26B6FBC5F9B6862FB974F0E55938F8C6B951593BAC412186F5AF2E812739D5
+A03EF04CF484523C95A741C3B51B8D74852ABEA8657049535228C3647E9BDAE3
+622CA31985132362D3FBD1D65A9875AFD0D453A520F645BE3BA48FABF53D6D7F
+F4FA4A09E300E437C19142740DF86801AAFBB446E857DB5E69E0BDD1224C7332
+924A21B233E92F1BED79DE12AA891D5518CF17334D00A0BB3B9F56E841A5D4E3
+80E42693D170D418127AEE7D758A501E34C1B434A8012BC94E7C5F3740D2F58F
+96DB1CA4B41CF9670BB76B0122893E8AAEFD7E2B255509A0C3B09D84334EF805
+C5473E7C2FEA7AED67C5D7D5F7AAC1D49F4DEC5E94A4AE87C9D17C114F71DCFB
+97B84C764BCDD59B13E100148C68B4DCF091145086AFEA1BE28F5147A47B4795
+3A60F6E3C2124C4102103F2EF933C6A05B1978ED95DED0381449DEE0A2890766
+66AD30C5398C985A54F8251DCE7F7D675EB6969F9B158C680DA99E509D1F446F
+0D69D74644F72E2D4CE98E964DA7CE4F834907842B4CB6053C029CC7DCDFE5EC
+DBF8898B1FB9743E86AB0524C182ADEEA78119762C7F01D93B3D06D8BAB22FEA
+EA21227B12B6AE49895607815CAACFFC6DCE06EBDE4EB89BCFDBF9EA53F8DDD2
+9C38CC226077455CC02411DFC73090D4579E68C4E9B2944701E64B2330BC0852
+FCE0B86ACC6E14315312F6D9D27AE6F45362160331C1E9324386EAAFA42C273B
+2E3A86A8AFF28BB15F37E006EB8050C51F1EEC39319EE91C8DF452D31856B3BF
+B35EE1CD1D484CF31CEE9AA4AB5CC08D7781140AEF44E67F36639D40761BFF30
+6C13FB87D3F99164EB7FB7A0DD947C11D896FA6BB7945436E2260EAE3E0405CE
+BD760023BC3AE6D16DFD44EF7FC446A31DAAEEF9F46D78F89CB778DC7F3D1F5F
+9622D3788C72FCC307B85C892C1A53EFFFC750E70010725D5D94E5CBD1B61426
+14A366B8D542F9C0DD1799206BD37BA61E6D3C073FD88DF142D9C3D9AE0ADE9C
+D8D7483581C7836C979EA816B5C9F7E725D119DF7C83D5A2F8FCC6243D380C34
+3E49852251BD6F2D7B6CFE9ED257948C25DF3118111C5215C37AC1616F8C4EA2
+E0285698A1F9F953F374D68B8E01553D5B4CBB354E8D37AC55C8C596678081C9
+75D7AC1168BF59B7DF5088B670E10011EC15CD7E43FA23427A18708A613E2159
+1F7313AEAA360D729FBA11BF7EB1B49490F87046DA0DDBC4D5AF2AEA5447ECCD
+449CB28AEB38F39A70B27151388A5BE0B6DC6A0166E70D1D5907A204892E8CC3
+C1A1FD3F4248619530CDD48D8DE663B19192544223B7D952DA788EA7324DE02A
+8A5BD917249831880E6EB84D94C28CF2FE8EF24210451A2CC4456DD827EF8E72
+B95440D3B4E3C6D4D93F21913E3F411D1B5DF381CC983F43672486EADAC9D6C0
+FBA62AD4602F1BAAA2F49E94B69A0A464B43959D8ABB6678F7452B5A44665F74
+5FB8F64752C0E60D9B6B1BDC28D3818FCE37158944AF9EE6125A1FF9247BD993
+C026316E6986FCA3F7D1558C923F0CEABE652176DA56A49329973F8E5709C428
+26CD37E5517710DE625BF642EDD8D1DAC9B7B0D36190F446D99887701136C4DD
+89091502F978DA69C4F4150F077F5EE77E8453063F0502CEB33478782748A519
+01D2A300E74102D5DD3EFC135D6A142217E5F22296863CED10CBD38257E9E83B
+17C1030715D375CEC6D149642BC50A444033EFF550EB346CC64B1E39233801A4
+997866DE97BE21D9967389FB4A2B39A9F5EAB73B9A36AB7E37861E23EAF0EF7E
+8463FFD79C38433AC0E63CD67A9D7CE835AA25CF92909EAB0E70D2BDAF4018C5
+ECB8D98E8A647EB8BBAABA4AE130C2BDA7CBC1F8F26EB70B8484D70F33830737
+BBDE88359F09476BBD6F1743C544F30E11DEE728DB0607A1EA183E3BEB1CF94E
+73CD46E16343B13831909499B291B712BB749A376FBDB968042497138364A66E
+394CB0B37135ED3A6A0A2A93B4EDA2E8202870FFEFFD26A78F8D31C5AAD59C47
+CEC85ACF77B340A5D0F93AB0E75F54C25C8F0685FF58169D3AE759B8B4869467
+291303B20529F6811B267879B06376BB43D987C5DC7B295DDA27961DB73E012F
+981192F6ABB391821228B61E08270C5E030354A736E6149ECB3B387DDF247E13
+2A96F9DDB2A385ED93575CA9885DC757C880969FCECC57E4184B44CDC324FB24
+9161D894444061B728699DC54CE2B8F71561BF2FBB3431C1424705D5360EBAC0
+7092D224B79DC24A5825347157B533A89C8AB759CE33C13617C685375BFF81CA
+034176A7340940196D4CBDEBE1E5A73B173B609B880BD7758DB6BCF2D6130351
+5C0153B5BEE6B08AE39BA07CA17DCD865DA8CE2176D86DEB5AD2202FEAAE1A36
+3182F60D8471E09C6BC3566C7543190F8FD85D2B0F6ACA6CA364BE0EADCB48C3
+EF35B897FAA70A8062AEB8610D092302723B476320C4E1899444BCF0C0B7BF81
+9E31215B9D3BAC548CD3DCD92AEEF29DC0C0E8DB063F446D0BD36DA181FD9C73
+C5D9BD4116449A0B5560A1BCD50C11F87797379B19FB70CD50CAD6552DF81E06
+B49F5365D63CF885DDDC6A49C3D1E75E42654451B3B232426D169E42C3238CA5
+CE2E5BA0A1917C69106D714E3F86CC261D58B19CE6F1F1DEFB9AA9325DABE8B1
+3B763A5B5720EA8285560C857A3E34DDD805970CE8168AB3360C3E71CEBE1811
+96B0C99E6C0BE400DA7BC384E99A3EA43325232D5F40CCE8C955924BF0D39466
+C27D857BE94A12117A4A89AA9153ABEDBEE210B5BD9F566EC066CAE8D548CBC5
+8E4ABCDD22AC6FE79DBB194905DA1C6601C7CE67DA2657C4C1527892C97D8EBA
+1EE90197513859C5F99163D802DAA9221F96BF35F1006486BE4ED43950219B9C
+C6B86C9B314CC1C87820F4B6DEAEFBA4F2B5DFC1DBC114DD467B9D452FE7F2D6
+142119C23737EA34368B449489135F9CA052DB22B5594AA4983FDB7FCD9C8EE0
+F68B5D27151D54C82D17011D4ED2FBC6167CB5B0767BEBCBE181C7480F984032
+968D03D771800F06069DDE864E835ACA60AC928FDEFE289647D559AE3CD19500
+E534A4A1D010C35BD8FCF83C2010AE5ADE65323D6AE65140B1000FC2B716E4BA
+F7321279EA9E7582C8F69DFA73436515150F634A66263C48975B266AE6BE19CA
+5FB1C51CD76BD1E92950D9C923D91E6B276FA90F8DE86F211FEB5B898D661AB3
+8B81EBD14533F060E436B636D8066CCF045AACB2682991CAA20A42C01086932F
+F59CC4972FA7ABFA283621D03A50BAFED17D287447696B88550B1FC94A4FC9F2
+018A0B73B99CB807B68C76EB227E15CC40F31AFE14900ED94B8CBAA6E499FE93
+23396B7FE08B116564B3BB6A02DD3759D8FA2E6C2784C068941DDDD42E22FC19
+83099E0636F47B242FB26F581119E891C82DC5965517DB3DDABB19D2F5845FF8
+49F10CABD7A2076120D08B27A3DC954976B71EE181BE5F1F5FBE93097B2C1C35
+CDB6F746D1EFDD7E1E94B59ABBC71A0B87B7D1C724E81047A95C1142AAFB6200
+9475A1DC6E14FD42E7BC2980EF7C5532E0E6C9AE9C848A57F42439006FB390AF
+29639EAC6130693439FBDF281824599F0E0F4EFCD9E4C2C4A9FEAF353D8C7CE9
+7946F4E5EE8725B924A2F013C348CA722A3ADE32557F175F6D5E3A748F4AF3B8
+AD86D55B8539BFA5C514291BFF0A4F0A339B808A94010561583F1F4D55129A6E
+46873035DF4FEFA423FA4E428056A2F2057613696C88A041D81D0C08F9AD85DA
+9C0480C8E035FAA865E5D788119F457C3BB2FC2CABE3C4F2FFF33257AED6D7F9
+A3A1B8514C4762E0A1F37F570FE125DD805E6413E92C9FD60F6414E20461B616
+2471612799765BB9F9496DBE0C591323C8A198BB8E7851BEC63CB06DFADCE548
+152589887B7E31A3EB33FF2D069E31AE2B105881377DFFD5B5A02622E36BDBB2
+6313E8F9744A5CA6F552F5F314A0CC4CA858E879ACF0835E7CBA5F66020BD5F2
+2ABC7BCE72CAAB9D536717C4A17AD39C2CB36657B85C3F519666B62B5ED0131E
+41BD3831B2463659017A5ADB6A86250A1C4130E6994AEBE1D1B3E5E5A92FA73C
+54E2FB2C8053C71F1D5D2DB72EC07B2F2C3DE0EB8618A679227988F05424A4BD
+C308C56194D712C295C8669CF11D737D7EE2CC60466045A32A150EE3BB27A3E7
+5A87BE8CE1C18AC0F299DABA3E732C7E78D8841E2DD596952E1F8D03B7304677
+68E206737C46CACD88A9B30276436C4C3C8EEC851E7EF2346D266BF084BC7B64
+929D3FBCA08679BB70509B9D204C3FE9B063A4E3BAA78813C49D31638ADF45B9
+DFD7C8DE89BEB2828DDC3677B3EEC76E57BE284E90CD3F7A6D1AC44B8CA056B2
+5E5315D88F1E0696AFC7605D535C5266ECD451EF8D210292BB4F4E29485F977B
+19AB3BCF5E47E163AC4565259FB82F92E129BABAF2C7DA2445D736CCBA83CB1C
+F54570D5BD67C5F68B8AF18649AFFA26268EB9F912887A42CFBAADC1CA4E9B02
+42ACB4B7F272DB81321B6D306478D9223E0BF4B3BB2A821BF07C9DD97F73E761
+5C26CE174A45D3D575F8B519F6692FEA7F5742AF3588D704C23F4F40C4BDDB48
+A941D6B19784908C6D03C1F0463BA8D00D31EB991D387C063BC99A31FEA107B7
+5194AD45E037646FE7BA8B2BAD19D47A6CF66D4BF1DAD3B604BEF519C2A3FF20
+C5C85F739E0FDB1E72B079117902EB0366368CC348E6273B5BAD3F0253D6F644
+96A71DA9537CB0FD1A6576FB12AC32A623DEACE9A909EA913397BD198C0702F4
+19B0943BBCF8DD7202F4370C2182A94F1169F7A25682945592F12E9E6FE2CE81
+1A1F152DFA151D7AE181C60026FA688D823AA6CC79290D7C9131DA5DDB45CB39
+7BD765244E40C93C2B17E1EEE5AF10F76EA8E4C5ED6D1B74C432BB1A46B449D4
+D56127DDF5AAF7BF24B2EE267292A5A089E84A9772D87EE2D5E0C013BEFB7E3B
+5023A01481A3AA04859B1DCCC54049FF4EDA30162044A1CC40B751AE480B090A
+80F5A58250D164778704AC5B38798F960CC32DDC290C75E33DDB4F8BEDF7A029
+E24EC4AAED86D67A5275D462F35006C918DF4FB85F52570555237BBACA64784E
+6B3A34863C9E2C97F9D7A8184462E552D2D03D71A5CCDC0003A680DA1A042F20
+4AB96497589A525761DF586B2FE5658CF3AB87C4A452A7BC7DC7D027D2AAEA11
+1AA28A42DDA555AA09290DF7C6F273094429CEF2C6DE53FFCCF55F3D1028F935
+8423DAC334702D73AAA9C34CC53E7C5234216DDCE243BF6F0AB4FBD5E3A9660B
+ECC4F3282D75799D809A54E1B7459F764F25E92CAA44C455A104D3BEF8A70292
+CDB279B2326540FBC2BDBDE1A73BAC2FC38A464A308900DA9698614F64FCACBC
+40D181EAD7014C3891E359E4CBAB61C30FA4F3E8E4BE20E2144D4D368F225003
+260122DC1C09A98DFDD96B3163F47D6C102935D7F1B08732009F1B707B3C9DBE
+8EFFA6D497CF1E501542FC1A5FA4B36E60DE763F80C6C970E5CCC4BB95FDCCB9
+031045ECDCBBB119B5C0F668C563C2D7F638B9B56A0FD3F2C463D1B8BEBFDA3A
+2B72DFBBBF93F68F917F914E9C4FF0C02339A2319590A53480E31C7F6841A491
+80DB1FB6EA8DB26A4BD7DAE14C537939473D8018CA6FE0B676C1090D5F2BC198
+E526A5655A2FCA3014A7CD3655C9C378CCFCC9A8BF35A99829DBADE9FA1E7CBF
+C7FDE60BF3207999267A3B3AC88551982F0BB9569D4D5B57304706657336F94F
+6A02933AF2A23B930BAEEA5EF015FBBA97249A6AB73D362430A8CE190D861097
+1929757AC73A517A42B858F06FFD40CFE4D38845B94C4C4F9A178911D369C389
+4A6DD604D8C21C08567CC1A43886433FA53DD2087A028E06D4D580AF800C59F5
+ED261A8840EA452303892B46ECEDEB66CA4D3D33DE25629214F08FB9760560CA
+973C20E48975D0FE19D43346F5034FEDC317A1F459B94AA5EB11AB1074FF82D1
+CEC86A4314262F0109E1AD306DF4CA87E79235D1C244702B54A749DAE1C6C992
+967BB77512D82DD92D54325B85DDDC6B393CED65E5AD8552695566E6A3A531DC
+0F9A8CC8172FAEE5D5866E9D7791D3FA1E925A31C10267263CEEE93DF75E7FC0
+9EF9E912CDB745AC92C0855FE60D
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR9
+%!PS-AdobeFont-1.1: CMR9 1.0
+%%CreationDate: 1991 Aug 20 16:39:59
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR9 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-39 -250 1036 750}readonly def
+/UniqueID 5000792 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FADB679CF58BAFDD3E51DFDD314B91A605515D729EE20C42505FD4E0835
+3C9D365B14C003BC6DD352F0228A8C161F172D2551CD1C67CD0B1B21DED53203
+046FAFF9B1129167921DD82C5964F9DDDFE0D2686875BD075FC81831A941F20E
+C5CD90040A092E559F6D1D3B0E9BB71733595AE0EA6093F986377A96060BF12A
+A1B525CD9FA741FE051DD54A32BECD55A868DD63119A4370F8322CCBEC889BC2
+A723CB4015FC4AA90AE873EA14DE13382CA9CF0D8DFB65F0ABEDFD9A64BB3F4D
+731E2E1C9A1789228FF44116230A70C339C9819676022AB31B5C9C589AE9094B
+09882051AD4637C1710D93E8DD117B4E7B478493B91EA6306FDB3FA6D738AAB1
+49FBB21A00AC2A999C21445DE3177F21D8B6AAB33869C882613EA6B5EC56476B
+5634181ECBF03BFEDB57F079EACE3B334F6F384BDF9D70AEBD592C8ECF21378B
+54A8B5DBF7CB9282E16AA517E14843909339B5E7C55B038BF3BB493F3B884A1C
+C25F9E8FB912CBE23199AD9D2C3E573727701BA301526C66C3617B9514D6F11F
+11930B1D97C17816C85B1BFD9B973A191B33CC3B391815AD14F1CBE935942AEC
+D4004E6BEF379066FD72209DC88D2E634E79BCC2B98C766CBD92C561F2703F8A
+109E6C6CEC7B866F2FC7ADF646BF492E520319F3B949AB5D84AE990B33344A40
+3971F58DFDF8D8D67FA0B8F2A0D884F8C09A5A721319B911DBA0A35903877343
+C37BC36C5EB32353272D1E6ED5FCA611BE319A7E1E842CB7576E7DFA3E3E18CE
+63E072E2EFD7BF3769BADB61CD818E402C55D5B239A8DDD7A8BC41B57AB3EE50
+131276C8DCFF04DFCAE55A8434BBF3F08D6C1EED04E9F93B14F88F055F3E3892
+459B28EE8A5D64C8398F6822D9D327FCAE4C2ED8F3A87E63E91DDA5B9D704B53
+8DA806B27327A97238E593EFEC36A5C40520EFFEAFC4E1D93CBC519D168F538A
+F95D93E30F242082FE0F9BECB5A8557B51C0990E1166E77CDAAC2A30F1C59FB1
+9DBE0E2C81EC1D428F5149F2805FA0BDB1F5B4E9826A66228E1A2D15B08416D5
+15F15E0C1893F4BB16EB1F1C0F21481BEFDB595867CB165B1DCFAB5453BAB2B1
+7C114656ABF30B35452784D5272AE403A3255961A73427BF7B075DEA7327FA25
+8CFF1349F5FD952DAEDF4F80E39BC3C2ED66978993546F8C7E51E3A3E94488B8
+61E40576A4F38D4549A179FDEE124FB9206EE1E6F7BEE5C7332311EC56D7DE64
+6713D0A974F00C25878A26F289DB0F6C0DA4DD7637A5A2130448D79F9F629997
+A8870EBFCB2B757431825C169D0860738E6194465D4B9E30D440C15624EEAFB8
+2E55EE46F106C67E6988CE3A954A7AC2C079C053BBC0B6F14F51F0D8C47C26E7
+BD5C2AB7344039CB1497A1C6B4AAEC09D5819E68615126B36DB8B38AA1B21BF1
+418584C901500A51278230ADBE0A20CC80388489C1D8FEFC4F429BEC0BB482A2
+6AA148AFAD67C60E0E948385FB5053A53259ED6AFF7C3A69701ABD12FCC81CAF
+BC8B2307419AF854921223ACD8BD5437E5EBDB4344E8C4F54EE6BFBC097797C9
+B3046C039448F8D28D2E0783C6E17E351CDF4593B6A94742A6D31862DE266FAD
+ABA27F15D07B7637F3379DE52B13158D21B1DFB52D3647665DA43EF01EA7A2F7
+A70DA2F946F974F06905C6277C7C010E51B6EDA2E49EF31B4EFFCB167A7CB77C
+C7FACFCF12DA7CB9E0D0301D7D24DCC7603A4ABC412C8F615FF8E6AB47E9DBC6
+A8603C0BFC32B1A7677CEA5D9F5FBA33F7BFF3166A6BFE136B869E6870088613
+6C3C90B7137F4EDE3CEE34FB0835672B45710FB6707115C4F77F582DEF5A3C1D
+9E65B5EC4C75ACFCB783E9AEFE62C543539BCEE60B0E4A9B1F71E4A49E191A19
+5B892294617A45638664D8465B1AD25F797B041F2B70FBABE9D223AB33AEDE26
+8D910D45A09F42A59B94C54C410CC38C67D92BD90B4491ADA51CEFA5D9E34BA8
+70D7F052C65C0F0A0BA71E7AB7355714E8215A57EA72B5FB34342C3149DEBE4C
+45C2F595F71B761BADADCB10D5C307FCADD779F5DC198DEB13A342581813E1E5
+E8CB4F70F64A60432C433EC4A4E1F2185A546026DAAC6FF19B85BA7C05FCFA54
+879595A44C7EC59B443E4E2AD287651496FD52B4CB8A0D69736CF826C4639C2E
+392FFBB02BC240D9378F8F1169BA8D57D1549D27FDB6B5B2E7EDD1703EA81921
+F07F8058B82C8B94E59F1B40D6EBBAEBD215B362D7FA64626BEB9CCD2714E1B4
+98CCE6F04215C2453578DB8C3C855BFA4173B05701B87E54430171062D503BC7
+7236AD54A2AAD7BE390412430137625BD8257AFA11920208096F2F5665D2A37E
+FA7974CD929F4D115A2A766EB3065F10D783DB4FB0B07B398D4905829CE5D1F0
+571B19809DB8DA5876445D17B6ECBEBE9675842076EF29334FC4003EE6795EEE
+8926B560683E95B82FA3308BAD522EF20242E1807FFEB5B5241D5C287F1E1D3F
+089FEAEFE9ACDE1CFD9D9F5A1C3A8D3B7C849C18F085F94641D053F02CE0F3CF
+03F6B4CA6352813648DD86D814D4C86541F27F8937B52F21797350386E30966B
+FFC6818F8C1697557F521F32C9DDA6CB6668A17B5A94666ED867C6A1FEC254E5
+9BD02F35EA56C7778B218E6B3F6FB9F822F8CE0986CC21A14B3D3610294C0046
+74B5C4CDB227CDE6408A8BFD9DF94F5A7E86649E5F08555339720762DCCCFC93
+8BD6E2CACBE2AACE78EB9720E7A61ADBE61A400BFCD5C4549C8878C39AD645AB
+B1BE9DB9174D601E6B6B2CFA17DF38AFD7784C90B1466130D5EEA334A748449B
+29CF52B9E7FC60F15463132F4979F603D7F2A1EB9F6A7A80A6E02754CFE31EBA
+118881581E976BD6E2949AD242D87222C816DAA183B0D07B9A45B3E3CC11A4A0
+9C94CCF90C829CED22B2BB25110E9F424A76DE3069D68BE120D3AD9F6AFBCFCA
+E1F50AE2EC109A662C311894F1D2A143A6CC62DB509A8AF53FBA164CBC529A03
+D8479BEAC96DD5FE822FB6306BB1B7BCD354446FB5A0B20975BA0D9D3C3E6C40
+05247661AFBD81C029625C5AAF2EB1018EE97B8752D4D5178CC05AA22FC2F9F6
+31124A55227A08E030D7C5AD7BA23DAB34F2766BD2C265CF5256603BC3DAABEB
+B188F224D3806F9295341063480EE319DC5D58F4F27F838DD099F0674EA583DC
+A655545173D48DB7E8D3BC8D45BA87DC3FCE2C70978793B75F6210F6776605F7
+9F82536856B4AFAB70184A1172CE3C8B356D696C8D0E68BD327606094B234296
+2FDCFA6925528EB1E23CA007824BF682172515BFB44A8E79612A799BC2C4CC5E
+FE5027F0A143B8DF716ABCE50CBE1F32D0BE9E1712F286B197C25D444444ED76
+E51B63D16739B24E5F301FB38AE80B2180FD8FE5387795BDA231FC1179331DA2
+F253186228DEBC67EC0A1E9E8D42E1728EAE4BF4665F5C49293E398CFF4C5766
+7E00B6F75FDDB4983114DD164D42602EFA865E7EB0773ACC36030CD55A369A19
+E2C5A7DB609749C4E7AFCD8197902F42C4BA107DF5CD3FAA0EA5AA5E928C2C3D
+6CB2273C1C3625836C79B7C0948BFC6B7B8B888BFA9B420957A57E01105A9C60
+7A57DAF55BE1B63D39F3293F06A586BC5ADA0224485C4B1DD3C4D8C776879303
+9DFCE42A1BF41F443BA1394D3C62D2EBD657FEB318A52B4F4BA63BDB4025A7AC
+41C271EFA7C164BA06D92D3A4E6F6D7116BCCF5AB3F735562DB423F4BDADF275
+730645CABC617CD8339CA528DD5C671833A4C13BD744FD67B414C09BE70A2F59
+92745FA60D88B4FBDDA36FFC4C3179CF1F62F6BA2960DEAF6730026C50F2D30E
+B710E2B77D9DEBEF27782F5AC35F142E863407D8EC80AC986A42200DA8B7C9A9
+BCA966127B563ED701A0C5FA999965DD5A3265A45688FA70F75A94BE49012B69
+B5C0C2D23EB6530BC275EED5FDDEA5B5439B6171ED36E76E261492717377E9A0
+3C4EB9985B7D15B7A3EE519C857CCEFAEC5B4C666C8F3FD3A5ED68EBD8FB3ADE
+0A298A04DBF72C2A27A28726A8242A137AC8829FFE20842C5F8F35F33CC68135
+990852728D410C5C4F390859F38B7AED1D123F30493E4DD5B7847473B670985C
+2FAB5766E5E5B3F07D2DE17394F365483880BCC2A2E6836D4C1BA9AB280428CA
+50D23D685E2BBEDBCE069FD3D11F7C215426EE438793E57D4F39A24FDFABB3C9
+21C5746BB857FE49862DE205C84C3A8A13815CE21A00A52A9B1330749A134E35
+A54FEBA355DE3E0A042555E9E389D27DFDE57E5310ABADAACA14C7B0E964E08F
+5BB207650FF80F3EF1E2CB23D6811805F10F23BC37F0C9E256DA454430A872BD
+4075CCE6E9717DBEFA49FFBC06D693D558063C7B47F2D7E0BA0F59239DA68573
+D23F428FDA1991EB5E317049EE4BEB2882016CC6FA62DCF760665328DD5AC092
+00C51D2A6AD65A37F20F12EA539B704533C5A7C3ABE89EB1232F02DA156DE3EA
+0A841BD2C8D59219DD4CCCC6BF3FD73E60E387FD6770BE73A7B5F6D7F78D481E
+0E39F51F41E7D049C8747F2FD2FF936682834EBBA3EA6527A470487F9978EF0B
+69DFBB987958BDCDD7B8D4FB28230BBFB9FFDCA490CD144BB5412358251B808A
+A3DDE020B244BE69DA6CC61A69C8CD5ADA0B79D5CB5C9ADF6BD3044C8C86C082
+9D348B81BE6FABA5369103BEE449DD9E10EB68B895A7837C2DA4AD79E84E902A
+449F89775C1B0DC88758709771CB1A7273EEE4C6149A1A0736F4DF9EC823969C
+A00DF4EC14AD56632CEA367B281F3A7628D13EDAE2FB4E3DFC0B7BE7DA87F87E
+F46E9411FC00C4B7B7FFC4855BA849D0F20021F7AC18ED93B6DFEFD421C64FFA
+61E0F022FA27D1B9040D13F83259F63DD006AD379B8F5E10CE73F632660E520E
+A0772D73773326583ADAB686B8FD3302DDF78C07376135850145BC66132A6E2D
+93DF3A518F83F0390361BA40C02E8394A3F9B108D38D34636E7ADFC255C898B6
+4D6047335489EBE093619455A9E7B34AAFFCEC599BA4119DAF50CC81AE88AF7D
+4015B5F2EF8DCE32310AA38AA727BB208F95787B5A382AE308F520B473EBE6D2
+EB843A563EEC76C10D80613DBAB50E022045854322552BC4CCCD33F57671A9D2
+048CEC4B9913860F8CE9505A403DE262FD271DA4BE8FB2BCEBE4B5F015B9D435
+F605EE341A8E8746752E0DD6CDA01431EDDDFDF58F6AA2276A1410FABDFE9779
+812922E63FF707D2FAE6DFD34CC44933BCFD9573EDA0F3575F2D7BC65C2F38D6
+1A43FA675F073FAFF5C7E0BF8B9F66E58D5ED2D15A6A6B2F7CE42DC5C1FBCC7B
+E40D616C34A703B225677D3E7B2F8150EC055ED83D9134C3C01718584C45E218
+105B5AAB06A0C489192EAF746C53BED70846ACE1E36B56CBE0E0CB35696EC725
+E443546886B0514917E71C24376E6122DC70F664EDDC0A09013BC81B8B6F3BA0
+918EDCA65B7F7B0C038A9A21A1A9DFACAA3EEC866ACC71ABDF131F9693C17CA4
+2E67A91076A8DC72881276DD33D35BFBCA8E1343E7E450B880CED188FC942470
+433A8104D6FFD1376C422FDBD89A40A5979886274FF225E9284308D37E98CFFF
+C3B63AD4D03246843138BF0F09B5701F0B9F4EBE597F151A8CF11C4BD423C2C6
+B833576F121F4113AC497FABE7B3884C359CB8D534856AFC713B3AE26446D381
+C3C915F6F6F6D6018001E8FEA21C60E3484653BD238732808D654D5BEFE0D46E
+6125C8BD72FBE692BF9318BC7801E7BBA87E05F76840266506C54072566CFDC0
+8C3EDB387B3E191DFDBB324F1C37AD0E053EC503E7621918491F84F85C24ECF5
+576A6D812DEFB85619E8D61434A633F1251122C3F04AF582F7B14B93AB91FE5E
+D5D070C85750912FA1923DC24ECF8995836EE232562D5FE3FC2F24A4D2ACA68F
+BD323F1692F7D951E09F13C236074F52A5BCFCF5AC2EAE00519391E0CF6D6E88
+D13295EBBCEE8282B7D6B19526330F83CC54100C74D097500A722D3D6A07BE95
+63B50DA459492AA59BAF95196494CE992D6F30985E1A6C929B2947C91F51EC0D
+01D45180EBFB7D3BC63ED4FE7E865DFBF2B14E870290E7FE1B2A9D91750D5C61
+DDFC4DEC2DAD98B608B2F2058A92CA6C3D5FD7AE388F25BE1118B6FD90198D4F
+6F356D01A3CD73FADEBC968034120B2A08EB3B7CEF0FD31DC44D83109E7FD0E7
+D1A698FB8175C65E11406690FCAC945E53B4E0E1B17464195C62DC32B4CB5269
+3D9917CAA17343479D75B5156244312D1931DD6CA6A07063E99F2C62E0B80661
+76A33674AA7FD869A408A8AFA3555EC75D24283FDDF7C6C72A14D040DAFFB120
+234923F07BD1A4FAC6711E87926392799A304D500CFDCA7233682106C714BC45
+09630B201FDB43788994BC22CD99133E8CA129E0C5B73FD1D33DBF46C49EC385
+0D824B45CECAD29EC520BED06E54BB33E9B09D8049AC30D65D6F8B63E2C9B7D5
+23562368B8A599CEC00F5B2434A667C707F7B2B6B36DDCC2CD59A3DBD676947A
+BF2AD22334E7691893FFD94BD63141D3FB9EF9E5258057899BB7C4FF9183E47C
+9EB53C54209A9A4A805CFD05468037BC3ACC812748665C99DD49FEE5E2AB7E3B
+A41EE7FD82F86161C28C3C878F986D3C1B775AB1F7F7741DF5C751093886B8F0
+27DE5DB1495CE22D15A58852BAB1524BB3845C18E63B00827697A5D3FC562B1B
+94A856DEAD8E305A9F3BD012EE211BBC7F114FFF48015119760B195B6DE28E6A
+EBB79D9A75C4408C81518B7C3DF54ACA93FA47014BA7A73CC489EF63E4BF3753
+AA1D134CA33D6AF529F2F0647083F0141BD8751DE1592FF64A2E641CFCCC9818
+AF316AF2F571E6AC2CD8E57C38623C0E3845F28479072CB8FFF1DD00FB4CCE74
+9509646B420DC6619B508413C53E389E1F5638F3A94D8C017575175DFADF6775
+E35D523A88D8B545A784DFEE3BF4FEAA925021E64A928EB736FAE0A7954E52BE
+73C0DB1ABBB5766887CBCA6B1538BA22463F4047AABE05A821762302070D095C
+4EDAB4693E9297483CB35D1ADD782CB056ECA35D30F19419D58467D366F118E2
+25C5A15552A945876049C51C9B20DF162738879DF1F7F9C2926C3D254BDE01DD
+208A0DA4B375B3502D4B4361B5A12F473E7660C83264BE42379772ED3A7BFAB7
+A0E13F632AFC25858A7D4B0862842F459E0094463E6BF69402C8779C93D68DB5
+BF1B5ECC79F2774C622045ADB80CDA15BBF15CF7D80AF5E463FD645D75AAEA4B
+0BBB342ED49BA0DCBA9CDEB26FAEA20D1E4EA32C13AE94F4DE086ADA496541B7
+94BCCD6D6E4660D7104E11F6EA6CEF4F42FDEBB9DE2C0E43C61107909E4C6FCB
+0CC137B3D5F1C692FD587821E3E3D889E644547A28FD9BBAC840EC7E2A0E9EC1
+5472C2F917598EF668DCA1B409A05080D08BFDD45AB50391BE7CAF5D14103801
+F25F5C1E2C1FD69EC4AF68FD2EAA011CC01D6C5BB537B4C001C7D58E49D0B4BB
+3B81C85112D221BDF816AC2AF829AF31DB37438ABFB204AA722F5D4EC30F1F11
+A3520DBBF04212C336C6B2EC9DC1DFFBD60C52FD39B5B0864E02E57BA0D4B584
+FE3110F64CDFBFB29B424D4803785B1C3173511F4DEFBB71256FF9F95757BBD2
+CFFB9F07FBD9082499488DCC75D42A736F28C1ADCDC11173DF73F21F3504FBE6
+74E1151EFB2719D8C12CC41AD1FA0C197CC1331A182763F2AB292E5E3A2688FE
+B6C76A12B2671596756E5C00E86C71BF96626A81616C7D0196BC44F5F5048EBD
+7F6AFE9D281298778FE7478DAFFE60D8B24E2EF805F5CB5D1B2E8A6F5AD7BAD8
+EE1AF675264A8FB7E005564331CC811C788B7520B78F08B9D58383070AAF1DA4
+096F985AA7106C600DA50F762D61418620D1B78BE2D73A8264ECD241BE1E5BBE
+A9A8EF0F7345C6754954EE7CF22A152A299A83D3C3C3CB8150B11527F50C10E6
+54468BE6D4DF727F6B71DE9DAFED7AE8C67E51ADD09E3374F071693DE23374CC
+E7E8E89C65F6DE6DE6F8BCF15A9FA8EA5059ACC9C16B7AD9056D9429E07978DF
+C2DC03DA3345063F53EB443BB493375602DF07AA28F9716B30A21FB2FE10A628
+2F1C4C24E6C087B7086B01777D2839E248216BC53BBFD4E1232372FB0087F0C4
+FCEDD9DD7ED8610A818320C06FFF1760F54156D8F23156BB480ADB56C29831CD
+61E52861B5A1CCBD7E6168DEA14B0CAE4E79A873C1886D3F2B3C12A2AD7BB262
+F6752DBA98B4F56EF7BBB439CD8D7C96526C859E3377463ABF4706D0D4FB7CCB
+CE1FACEFDAD169C2F09308CDDD73BC43382740EE7A373C7AFFA2C1F46BF1A59A
+04579C5A4B104205A39EB0B6F7B5375C56394BEACC3A6E5371ADD2047679550A
+53D6972C28E9DEFDE2630EAC1C1095CED943D255393656085C6B3A38410B1866
+D7CA471D93A2A0071FD6E29EFBCF7F921E2CECC55A95D349DA68A93FEA72E0F4
+5489719CA26C1A36B23335FCB33EEA59E8242DE95BBBB882B2CC6FBE601F51E8
+D85158FC88FAD8FB02C86E6B9242200BD753CB806004088AEDD103E15A7CA5D7
+8C5718F701DEFDBE8E682CB0C438D8B2BE4F3C0FF9CE
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMBX9
+%!PS-AdobeFont-1.1: CMBX9 1.0
+%%CreationDate: 1991 Aug 20 16:36:25
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX9 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-58 -250 1195 750}readonly def
+/UniqueID 5000767 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
+B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
+AEBE70DAAED49EA45AF94F081934AA47894A370D635D93B1823EC35EB8316AA1
+86031FCC99F57CB21E8400E54AA474B57112F0D4754A16BEC19117E9D3638986
+0777A71B135CC18E20E193AE6C2BCD89F4A27516DBD2BFE69FF9920D547796F9
+89E0825B6BD5F492B36AF136EA91B826501ADB1979A4204B2CB5C0517F2B9494
+9B2077F316D2B3DA256C99F7549E6BC4B04FE12072B09B4F5D482A126AE351F3
+97DB85F3026A793B51E6B28B54661FEB087F011F0BFF67272DD1E8825C180723
+22AE77CD6166D2605D0C0F131537417CB60086F08E7197AA916D590944BD801B
+DEE8F29FFC516E11396CCB8395CFEC9262E22521882DC0316B0A129DBFA5FB57
+E656890C2471675E0566FE461028FB05532E274E6DF77E7D320D09B2203BBB5A
+8B185B66B2F8A18A49589C4EE27596DD56260D0D759D2A12CEF7FC3010BA1B36
+85A2FD45129DC01A0C7570423305C25D957DFF9215102FFF35F428C823D549E5
+014E7F99ACA6C10B3C92805376D0F3F280D65852CEA54F5CC9DEF9EC1347824B
+0733D3341B34937316E77E952AD9366D3B2ED045165565F07CB636385E5A5911
+2620E185B105EF6C93890833054E05B6301137338A3F1D6AB2F80095E57AE60D
+6E5EE2764624849978C811EC38E014AE4A5823734C5CEB2BC22DDA46BB408D00
+4F25CA8ED287D35E26A4CACA77D2D4B986ED2ADD3BC0C3405741CAD56DE28C7C
+68E8944967C022CC55907B3DFACC1EFAFD38D3EDDA1AADB6E2C006ECBEFAC8D7
+18ED3C46C331623D8FAACC6CF9292B8F1B407806A0D4808F51A5BC97F6A34ACE
+2073F11C6D604D7E8C79CD5F8ADDA187DD1ACA932A19D7017C48B3F140403421
+F5ED72DC0725D98CD494C4BF567B19DAA4F8AFEB76A4A8ABFCD790BE1D051E8C
+5C14175D16AA464081AC43CE0AA358C70627B232E0D1C066D57B47402D48ED1C
+B8EA3BC935F3B38185D619E4E34B197E7F59DB9EA1D85DDADB729351699F0AAE
+F4132DF9D505F6889456B7937D3B73F8BFF8562FEB81A3B72E3467758F3FF242
+7123633290FBA60BFA4B7023BE0127D85FD885D41D9A3D0D6ABCAF8BD4AC78D8
+14EFA95F4B2448CDB65F9D8C6D3EE62599A5A31E84CB17506DAB61F507A9BCA5
+1DD2F0AA183EACA8856078170D26BC14F9EE0C5E95FA7916E06E9F4F4ECB512D
+911894DC3720B430D764EF2A5428A2204E662C245266884D302EE02BD3F21A66
+D0123D211E5FC6DAC195C9CEB60D4C507D030ECDC907BD1CBE870660B89837CC
+BB8597FD85F65A8550E18BD37914F72D703DCCC732976312F933DA76761E1F06
+D29BD4DFE04F98FCD434B15377DBE41F36AC9CC265DCED60D221BDD291918144
+1FAC1D42A8E835705B4B7503A63F445B1D428B270F8E05ABB4E73A694C9CE996
+0296064ECF7349C5F2C28795E852AD8B74534152808E9110FCC93992C73DF618
+8D61D8162013C681EED5B7FFBAD76D81832FCA75DE8055C2AC33E7E183BB9249
+34FE841A220AA648D57235CFE35F99FC2AED92027C7D38DCCB4B700E228F7E68
+BA0977D9CAA4D8E402BDBC9FEB94AB73CDEEFF3490C634A418E3EE806D6B91A0
+5FCF43298EEA638CE359BCE62C57A90EB5F77B72F86AF8DD2175DCF93FB31395
+889051AD071D679FB0F631B106CA803150A78371B5D83A4F83E46F58E62D6BD5
+3182B45FACD67EBB30BB94B848F07410DFDBC393DAD9B1C80B821AF5E20CEC51
+59D6FCF7EADEEF915F9CB028D0E8127634161D1DF6A125E0B4FD0C067F11BCCA
+6AF35D74E8A2322FEDE3FFDE98CEE06707EF26EA7E30C269F9C3D7C4E8DF2831
+C0368FF77798E6F819DA285DA48E488A8FE2268731BAB4824605033AE20D99D0
+EE6342D62F822F9673DE14F95F46135BE95B5FDFF28F0ECBEB5CC117E24AF4D2
+40422AF0BA83B58815074DA6F659E3E6AB5151C106EE1322CACA4FD375C626F9
+481BAA8BC48B7B43C34BCB9DD9A0A74B82DC24FAF981BCD70A4C25A20FECC24A
+766E5FE75023121F0B40DBC949B154FCD1DA098A7BD0843351C7C3CDD1D39FE6
+FD64713B11863D0E20364D51946C80FA78AD49B20675F6BD62C22CD990783368
+F9BFFAAA073BB9FD50507A9927A9D75544BDCFEEF402957AA471C6271162C614
+1CCDB937FD88F07BA4AD3919CD2CF2D37DB0829C19098B674DACBDF3EF4702D0
+0385BDCF093323767D6ADFCC9C02BAC06FE50318263633B4C917C0574EDCFE53
+4788D65E13E35C422D0FC268549883A757863D7B6FB3357DDA59E677A15CD273
+5A89EF223E373847923822D2258DC2DDB6A5C91FB2A6801C262F8178FD4FF333
+624B352357BCB5DA1DB50DABAFE7BCCF4DD1660E5B3D53BAE1BB02853A21B4AF
+D32B7CA41D0A8E1BA1F3152120A7608788515DB31EC737AC33B81C570CEEB54B
+338F5F95A7061EA4B323B6039A81D7378F1AC0C4E06C42C316A4AB13999CCB8F
+2D920CC1E50F61CF613F0A1BCBDD9246C9FB9EB0DB67A2B7332712A63480132D
+36
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMMI12
+%!PS-AdobeFont-1.1: CMMI12 1.100
+%%CreationDate: 1996 Jul 27 08:57:55
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-30 -250 1026 750}readonly def
+/UniqueID 5087386 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
+5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
+4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
+3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
+EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
+4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
+2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
+323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
+2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
+D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
+5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
+0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
+A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
+2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
+00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
+CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
+99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
+C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
+5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
+55B50047CD58E912E67E22C1B92F41D0BEE742201DF198F3766AE35EA71D8195
+A8C94D661C40D718CB09497485FAA34204229AECFE644C93FFDA54C789E4F751
+3D2519F7CB9E79B2ABE3101DF2EBFAD375469CDC687FB3DC2833EDC0F946B41F
+F28D72FFF2A9B8B0D76DC542537612E2BE0F3FB9601C897386359C55E867A547
+F872005F5C56C6EC5E9685E03D7A82653BE8B69741C4DF332AEEB2AA450B23F3
+EABD5ED060606CC7DB1762632EC3C6C4A66ADAF61A97D949DEA5156B4CF34765
+67AC3F10AE17199A710A882D47979F9D41AA2CB794648BE47479F0B00E18BF04
+923F54CEC1214BAFA39BB65ECB013875899E9901B7882D16D2E2C97AD3353668
+A6070081E4DC627AF9192599F5876369908FBDFA11E8D6CB2E83896E9C897CEC
+FD1D25651D66A333AF531FF74E1B0DEB1E3D1B5B7D3FB9D1C8BF60517B31C8D2
+1C264F44BC9AF3D9BA5280D1618EED96C11ED24F789FAA263394C658DFCA8DE9
+D47D9E188E212F9EC1DCF449DFDAB8437FAB9EA9AF01AE1714E8F932855182
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR12
+%!PS-AdobeFont-1.1: CMR12 1.0
+%%CreationDate: 1991 Aug 20 16:38:05
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-34 -251 988 750}readonly def
+/UniqueID 5000794 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
+68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
+3645B82392D5CAE11A7CB49D7E2E82DCD485CBA04C77322EB2E6A79D73DC194E
+59C120A2DABB9BF72E2CF256DD6EB54EECBA588101ABD933B57CE8A3A0D16B28
+51D7494F73096DF53BDC66BBF896B587DF9643317D5F610CD9088F9849126F23
+DDE030F7B277DD99055C8B119CAE9C99158AC4E150CDFC2C66ED92EBB4CC092A
+AA078CE16247A1335AD332DAA950D20395A7384C33FF72EAA31A5B89766E635F
+45C4C068AD7EE867398F0381B07CB94D29FF097D59FF9961D195A948E3D87C31
+821E9295A56D21875B41988F7A16A1587050C3C71B4E4355BB37F255D6B237CE
+96F25467F70FA19E0F85785FF49068949CCC79F2F8AE57D5F79BB9C5CF5EED5D
+9857B9967D9B96CDCF73D5D65FF75AFABB66734018BAE264597220C89FD17379
+26764A9302D078B4EB0E29178C878FD61007EEA2DDB119AE88C57ECFEF4B71E4
+140A34951DDC3568A84CC92371A789021A103A1A347050FDA6ECF7903F67D213
+1D0C7C474A9053866E9C88E65E6932BA87A73686EAB0019389F84D159809C498
+1E7A30ED942EB211B00DBFF5BCC720F4E276C3339B31B6EABBB078430E6A09BB
+377D3061A20B1EB98796B8607EECBC699445EAA866C38E02DF59F5EDD378303A
+0733B90E7835C0AAF32BA04F1566D8161EA89CD4D14DDB953F8B910BFC8A7F03
+5020F55EF8FC2640ADADA156F6CF8F2EB6610F7EE8874A26CBE7CD154469B9F4
+ED76886B3FB679FFDEB59BB6C55AF7087BA48B75EE2FB374B19BCC421A963E15
+FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671CCDDCBA50602
+34052CD9880110AC8AE2063D59E8A32D51B6B31E9B2E8157822D2D733D49AA46
+B3082E60FD96213DBFD8134DA343A180A28150509288C42EA981D39EF1D16265
+88B8B318A2E4B0FA324E600F1B29DCC913C8874AE5539315516911E0FAF77D88
+70DA5552627283F65FA116CB3989FE37FAAEB1167A1A56D131824749A159CD03
+CA45DFEFA0E5C3248F5F7B54C8349545BF6657A1C423D5C42951C92B1FBD0F72
+B2A30D169D864E5456DE060325B33E44A1290F3663409DFF11D7EB370C75EC96
+A063AA7D6B09C918C58A31A635FB2BEAC5EA7D0D198C01CABB67C715E519C7CD
+04856B309F3B18FB8B6DA72533DF9F97CF0B5A08FD887472B4BB0C20EEE83415
+A8D31091D529962E274620336D54ECEE5004E8DD2C727410A945850BF20F0C37
+51FCBE954A834D67C74991F6874C2635462505475C03325204E87B6056CE5A6D
+CDC12BAB3BBD011C5105EE6F50D66C08775966645674B60A6D0E26882BDB2C80
+3B1AD2D5C8116AA3FC57AD3EC487B742F999CC9243D4CF8E41B0E0B3E30F259C
+E642C432DF24AD0272A3CC2EF5A1EB0888F3B6413995F685E59F3C747690BC7A
+DA8B0394DFC23A6F4EF5D88F6A651888A6C710941157212E1CFAD92F1AF4FDC3
+FD66ACFBD064E39F3F8CB9975B48791CA27DE61173C05D0A60D1A541602F556E
+277FD52BEDA399A16F711C0426147C4B77C57C4698E7BBE08262014C5764EB18
+BA4DA064CC8440E681B8ACCAA0955239F05956CC6C97C6B236D3ED9D8687D139
+730DED7816622F0934BB39C0A6D566A175B9A1067FEE9666CFD26F412F4AD570
+03054E8772EAA37EBB5A84C05242C1F1EC777D3222B964E547F4F1A04EEC7E42
+4898138802C1A7A7621F80FCD8F75DAAD05899A68439BA2FDF4B4E566FA8259D
+CFE36D5CD192A8F307ED6D04414AD56AAB56A5707EE5DBD308D109DCC00361D3
+34508B991EDB4AFD6A838E2E8A6E0A9D94396106B5CBA5A2CD916B853EB95AFD
+9525B6109C42AF3EFBC49CFBF08E2CD35E4CC7A50C21324075D2B17F6EE8E6CD
+75427143D38D6805A7912DCA8152EC3A0C1F9E35D19AE210A9205C0EDADB58A3
+5EDA7E49E34424BF1B7574719DAF7EE18D59BF29DF5CE2C9F3BB91F0A0F27D85
+FA54B6711FB5DD73249C53DC27563E23620A2A9DF35E0B99CDA94BDE4F832E65
+566A0E489EF4977C14AFDE41725E032CE647D20B4A14E35E8EC7DC8F153800E3
+30932CD86290EBF60E895B13883CF4B1F593E79A11BFDD6B434D25819CCB1589
+7449FECB047BD725FD0BB8C6057C8F5A881209C537E9AF2EA4FC56D9EC36B94A
+3BA65BA043F13579A51DAECCF0E00ABC5D0C2A4AEB3ED8959D49AA1DD972C0F0
+C75AF40D4E3BD7B49513C7B144A3BC38C3D6AA5EA7CEB5F06FCA224CC9F7990A
+3F2DFFB3EEEC9B20DB5B7F5479091E23FD1142B198297194EBA505C2C40A045A
+C15528024D5124B1E36FA1D0E33E04D6D28DAF6753017590BCAE5248DAB217F2
+281C58057BEC929CEA3EA7B4007DE2C6DC7BD62E200DA8E9A0E7C15A2DFB64FB
+B5C418A417C464592EFE8D8DCF53756F812B67CD4962AE56C74E4DA654F71052
+0D236263EC5E0B77F14DFDD84F63DD111D1E07B09DD5F896CC0D7F47754360BD
+CF77DA022D6E00EA84C1462BF45689B9F8FC28FE776543D7F6606C9F5EDE8DAD
+86E1ED112BD6272AFE714B09B42351E3B812E3CBF0A6E307C9F474F40F3D534E
+71E75EA3FA7246911DC054F2AF192F6D9087DAC0AB341195C5D46C92BA8D62C6
+100587A91506F6AD7FCE1510D2F3BF8F53B8A2492383CE4B025247FB36333BED
+AF2CC7D6AA7711B9A2D7F1E879FB012C2D3C7061A0A8FAC88D85585B5911A7AE
+E962185150FBDD874FB5637901FA36BA9BBFC17C4CC9421ED5A43EEA7C4B89B1
+9E912A40B86534A2626F53DB2D928D9510A87756DF830AA96CFE3D986DDB4B1D
+37BEFC5500C3D310524563BF41E91ECCC90D549BD36DB7FFAC5A7992FB94BA76
+574D2F522C55EE631F81AF2DDEAA67C75FA8ADF9A28A7FBC35941D8DE270A1B3
+07093BCCDC55B14F470C2138E6395399787D07C48A851BA5BD77CA3397857C1B
+D2995C78F93A733754FD305DDC29EDA6E0FE596EE6791F4B4F3AD06A4B3D0AF8
+FB71EAC1597B0638135B30BD20C689BDA9072945CB66C4DE11E1CD29B8877CE3
+E78775D0917B374563EBF5F5CA3788D614F063E68AD6A4AF56ED7E1A30023983
+39D4ADFFF516AC1F478A30059F35963B7C0256FACC38D66743911533D0B20C1F
+12BF00B75F96106B058FB7A4E6865218708FE791A71DA4B642482415EB221942
+4FE09246DE4707EBED8BE7EDAD4180C22BA39B9070E026A03100448DFB11FF65
+C8FC7C834326CFE1A2D863A87E3B005A3FAC682EC6379AD4FA377537A398A2B9
+07C78B34523C9917D7E362DC66874F067F5F04E65D7738EBA89946964E15C1C4
+662175C76D32A0AEDA25FF864D0A0EC39C1E118244E06FA11B53BC84ADEAC681
+252F98CD6957C7E9770F68B137357B3878526577623C1FE63EAA0C22F465D98C
+D807DFCF3C584D565DECDC8AD547B6E47503113826DD854F8EB1F144F95D865B
+932C709BB225D548BA3ECD12BF6C250DB52816B1449818CE24C7F79DFD10F713
+1F01164BA0E27942A27AFBDE60770F3000F4E984A986A91E67B8E977DDF386E1
+2A7A14F316CE69A2D0CC961DD8EDDAA5DA0BF873000F5A560055C077C938262E
+96E1A3BA2281A1A3B1F8D2E8A6C3A02D2F768EA7B5AF7AD124F9BC6BD7B911F3
+14473B7F06B3D3AF0580DBD0102783464EF05DF766CBCC4353C6BEE7D976B37F
+FA71C026266B80AD7FCBBBC4B5C08967B38E5B00DEC9465AACA6F97A3BAF6D0F
+EA3346C45BE6ED39C3C47A324E903B17B213A5EC3CBF9E27FB2BECB6959CC4CC
+C04FACFB7023F4327AF8A81EADE3F6FD794D6A193B6ED1BF5C844AB7C2E31AE8
+BA9B48016F3C3D25D6926F4704B01B851DD344910DB069B81847C5AF8D5B56B2
+B57D4C350670DB3269932508DF3BD09131177B7DDA109B715455A95B0CFE95A6
+A9548DE3B31098FBCCF995DA569A7B26B847A27B1F05F14D391BD3859F3D80BE
+45A8761950B2A814E0E13F496CCC81A63716CBC093914E1679FC9CD6E35F48D8
+7FAD6CDC14B612FAB5E961C7228B37F1FBAA2DE9C322BE82DABDEA2525F0732F
+50B1937E8E587C0574015759D37A42E121469C4A6E592EF3D192D38A624A686D
+AD9C1B75FEA433F56AF52B3DA5F4539E1910F56375B6817510FAA0E6CF5ED0D7
+6F3294090C905642C77823444B25B358ECDA7F5306CFBFF5D4960ACCB02C41EA
+C13756E4BAEEC996914C12AF2C095262807694C5E07ABCD368F25BA60DA57251
+DB888567B393DA3E296F93861D44D98F92F5394EFDB21BE2AF940F87571F3D33
+87883DD9A8A54457EC22F0A8FAD945CF8609BF94E9A7CD6A83AC4F9D3BE230B6
+60CEE33A941253B8BAA47E9BA499B0EB97F28C1FDD4CF6EFB03165F81CF7AB6A
+7463AE3B32C259F693BAB8B4BE3C2764DBA9A477481A2DD8C323FD96EA318CC1
+3966E0F98F767858372813A76DE1D9D49E7DF28B5C72D6C461B3374FEDB94AD1
+1962AC2FB9504EDB1C39C8651C769B6F10612C7027DA51CF9DA4C48D37BABB55
+B4D3B88DEAA88FD10EF0E2C8884584513C57CA80E354DB4E0266E549EF1A485D
+6A6CEF7263D1C7D4C7563900DADAFF6B092BDD24B8705724980D355E97E06E97
+7F5E04B9F7C45BEF6ABF12705133449D310F7033884DFB1E4AA2FCA15CFCB257
+7E9FFD8DF143365F8A682BDE66F620AD82751AB87DC914F6BBF9B22A683EAC6E
+72E07C3AE4B1422147E20D72CB161126577AD0614D0BDC5835B3ED2FB2E709A0
+95272C2015AFE6664DCDCCF8AB5556196787B21CB89196CB77D7E29CC97C6C8A
+B782CDCDECFCCF15C722BC88D7D23770C3DACDB8DE2F3511D58C65FE1CFCC47D
+2C3E76D0857416DF8B3FE52B026096653A419A730C66722260C416BEFABF7A67
+E64599B9C855C69FE285383463B07CFC72B460A7E3B3211E621BFDAC75E6B6F3
+19F5774E4EF9EEF512AF2C8EAE034387B0669459305C9BBCE8ED19D1D9A44EBA
+4964187A723FC593F9D3F15228C893917F13F0CFBD818AC9FC6FE0FECFDC5F6F
+2BA2242527306749D900FE416BD3D7F5977FE0F4120876468598EE46D54305E7
+AB98F3965FC684729CE1402543B6EB4361E4246D5FAA31358F3CF2EDDA61F86C
+232FBD3420BB9354C452E72A76D1B2FA1147CC6D03F60D11E56B4DE0902BE99B
+8CF1160270DC1101914DCEA10D459DB1D69D0E4D1C9F2086376696648E3D00B8
+DED41481AE6A5439B64E87AE28C08C347411ECF3F9D52FE440313626CDD0DAE2
+1B5788A03998FE60ACD370BD3136AE515969751B5230748CCBA6FFE5A23189C3
+B87061820CE0234B41BC4077683E7BCC92540E34B4A9E20FFBC3C7A7D2056C6B
+4B3BD1A01F6F47F539E0E0452A8E1954B89FBED9E598BF42683F971ED65DA76C
+8F19B5862F04F4494B987E86D0929A9CB88F1B3D2FB2EA2995DFE7A890013CB4
+6289387C9403826DD77FF8C8605EA59FD207F26AC23F6BB4343009214E448757
+4123C48E667D79A942185DD181D2F996BB3084791FA72EA65AF5FE2267DB9EC6
+64BD96039C6B91A8731EDD8B142BC85C17C9ECD09E8EC213245AE716B569A947
+F6164B6AA5624065E6BB2B797B8AFCDE2749B85012CB477B5073C2F767D89EFC
+8679E9407E5B8BB76D22B5AE13E16CA9402E9A89101872528BF2E052F5BC3DBD
+C57194A0CCF73FD57FF585092BAF92E1EAFC94F160F4D2C42990BE027FA0C3AE
+3CE77F5E6FB62F2F28C052379B2700A7D253CA23C1BFD279FFD5CA9CC8D4A578
+7098E4C4FDB3397F49F5C54355D79A4BA62CE972CFD3CFF8153588494A6CF8F7
+C2B773F53919F051D3807B610F3EEF47C31F69E699CAE5E7FED38F4FE76AF5FA
+26F520AC52B69B81B8BAEA835883521783F41E3E5924296483F6A54B1FF1BD82
+FE96460D486550D489E9F11952C9B0867ABEFC1F2D5ED7611EB55682FBA60B0F
+9ADD019F830831CF4ABFC1FCAF469FDEF30A667EF12CC88DA8396D765EED5E9B
+D227312AE318BD106F2ECB6D46952D71B75B2CCB4E08248D92C0C442F159014C
+90B2B0CDE95053438DD8E5D4D2513A2C6F4D85F0996984E1BBF0A1F20A923C22
+FF4350F461699AF9B858AED0445B621B58CBF6F221A9399C1346169A65E9435F
+8EE42D7DF09EB5E58FDB066334989861A7B4CADB3DB938171205B8D5E0104A1D
+EA5DEB85C489166061DA2072855239E1C057F502B3D5889DB06822D66141210C
+9CD436AAB9206D348025732473949AC24054B8DCFF1DCFF59455D5C594A4E3B4
+ED579B037C21DE9F1A606E3DAAA4CEA292758A5EC2389E9F645C995D4F9DDCE3
+31BB1450B58C5CE588C29C07000D9E34EFF1AB111E31D4D655A1D19875630A97
+4F434C3FDD7379B9D5F0E4606D6B7DBEE4CAF7BCB45BE85CC552DC8AD78AC849
+47116B1326C08A38DA987B55810C27C8C47FEF5A8225BC81857F68EED0135C35
+B98CBDA1478F2559D0A98B24DE9461A971CB77B83934D1F2D3CCF8080B745FC7
+F8E06868246F0B609E9BE48EED638DED3E511CE1D3FF950BAAE9E9D42BA159D2
+61E44FC4A463B7F9B7EED350D842C6CD676F9B12AC314550A9477CB9CC81616B
+23CF340B6F9C8E4376379BB2C900A7FEA0F796EF5F85A1A509B115937A341F8C
+D000AD49C5D13B5B5ABC57A059E451A75AE35F302958D4C6B0F9CF9374A4F382
+DD310878185EEA83AFE602DD4327DDAC547D361299EE7BEDD8D638A9E94B1016
+D7EEE97526854A08C9F561608E143795EA3E5993EE3E1845EA5C66246DEDC457
+C3AF6EFEE247A65ADF33A61D87056AF0FE5164609EBC07C5323EEB6FBEEF057A
+BF203107503D4083D0108CBE57505C3B8E1F482A571CC8833A969935F5EB0C0E
+08AD5A6A67487F226405D2C33828255BE778B9543D9CE8EDD024B8171C72B30C
+9EEDA8B269F67F367DAEE81D00D63A859EF42FFEEFDD248479AC883D9E0E9D4D
+68720536558DDB34699884FB349EBF7987AF49732D1C55167D95874DEAABB006
+B90CCA09F96F6FE195B4FAB37E7999A6A1FB1EF495B781C9D38B01C8D80025A1
+1310AC76E7443A33D57AA2CBB96B47D7C06845A42DA58A26B7DFD39D52C3F3D1
+AC1C778039A7D7BF7083A84B6912BA238F323978B11BAE4A8E5CBD8A9CB27370
+53B12F944BCC6D50C3AC214D679279CE0CCD40E739583A05CBDACE31A358F63F
+FCFE33DC36CF0805D7F7D8AD28E98C58D2A612329147410D068E6E9C2F99172C
+E1A071E4A77691DD092F53ECFD4D41ADE0F48C6DD456B579B307E648F67FE1CA
+C3EBA3CE54928B6D46ECF935AC0568DB3224CF603B8EE613D30FCF2AB824EFF4
+6F9550BFD6639E3D24AB37A2428EB9300715FB589A4B78501E2245C67A343CEB
+542A463D7E2535AE76748051A5269C271EE5A7F0778D611AEF10574BA833438A
+CBA5C81738C942C01C6DF7369D2A2EB2C3A0F37510E676ABE933C76DA7981763
+DF2D516104553884B32BB7335A223AE1EB289259F8A6D09C9335933AE6454EBC
+DF356C114FAB18D969CFD52CE16336365F870D5E515DC811DF11BFD8EA4C63C0
+1C029EC2DA5F7058912ACCA033997633EF7E2C535C9D5BC360D28A9B82C6F091
+FBB1B451630741BC615671F804B2A410EAC0E315231DDD748A4EDCEE41130E68
+6EE8164D0F6A26C7ECB8502A3E0F1C9A01465C06C65F72A5674EA063824BD58B
+94B99535D7
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR17
+%!PS-AdobeFont-1.1: CMR17 1.0
+%%CreationDate: 1991 Aug 20 16:38:24
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR17) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR17 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-33 -250 945 749}readonly def
+/UniqueID 5000795 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F075EA0A10A15B0ED05D5039DA41B32B16E95
+A3CE9725A429B35BAD796912FC328E3A28F96FCADA20A598E247755E7E7FF801
+BDB00E9B9B086BDBE6EDCF841A3EAFC6F5284FED3C634085BA4EE0FC6A026E96
+96D55575481B007BF93CA452EE3F71D83FAAB3D9DEDD2A8F96C5840EAE5BE5DC
+9322E81DFF5E250DEB386E12A49FC9FBF9B4C25C3283F3CEA74B8278A1B09DA7
+E9AE4FBAAF23EDF5A3E07D39385D521547C3AAAB8EB70549756EBA8EF445AF4A
+497CA924ACCC3DD5456F8E2C7E36946A5BF14E2E959895F7C94F49137256BE46
+4A238684D52792234869EAE1A6D8ADF4E138B79472D2A90A6CA99E2394CC20CD
+3841733046175B20CEBE372327BF13428EED6A3E2FDF84C2DBA4B0AD584EE9DF
+B51828D3B8F385846158C29C9AC3496CB9692DD10219697B2ED4D425C3957FD8
+C4600D76E045C561216EF05D38177243C314877A69A1C22E3BEC611A2EE5A216
+9B7C264CF6D1839DBBD78A40610F2C0D7C2FE09FFA9822FF55035AD52546970F
+83EED2D30EABB1F303091EBC11A5379B12BB3F405E371519A53EA9D66174ED25
+A2E55463EC71A97BE4C04B39E68112956117C8252DB6FB14AB64534B4BCD568B
+246DB833982B38CDE7268BBF74B6B0C18091E1B1F87D32D66F4DD023D1F10D2A
+7736A960F72AC01F733A11023832CD68FB6288A5977743F781214D8FA9C0C3F7
+80001321D4397771F728FD9EE57CFE7D9192B887EC883EB1505068261DC40089
+7B7D2820F06515CD74513521F6397FEAB3AD3572D9A8269430E407E357422461
+1785FC2782047F4C0339D79B16862D939F3A37F78E4E2174E4FBF132539CB760
+207999FF86F6A3EBE48EB0A1CA635450FDEEF79EB16D853F3BF4B2B072EFA56A
+F8BA95D15BD9104B5B7597DE24CC36EEAA17617CEF2ED0321C284D0A614770BF
+C5312D940FC24C50D86178FC27B3FC29ECCD66E87074AF889D222DD12CB54D4A
+6EDB093B55DB97A23C7F8942FD0C686E6CE3128FFF13F684DCC58721B3E646BB
+467D917F83E1B5A2E2D289EB82237B20D14B336AEB7FC833BE218DDF26C773DB
+DA501CAA8503B879B461B2DA58EA61B57CAE5772B6D3E88277824DB0612C4839
+71A17C6FC89E25D79F7632F29E2B44065E05757C0C8E04C9D1DDC14A35BE1A77
+91A0C7807CC53D05E311F721429145D9485C591B6DFD5072D31924D2AC442C20
+CF9A8DC4F8ED521F53FB732F3EA247633FA1B516040B68A5E5E4A0F8A032C7E0
+989A5E63D87B054EB2DF57CFD65B64D89F437D2F91C269DAADE6A8944952B1C8
+791D8554FC381C56AF5BAE2573521AEF93FB419163B3B17F08BED7208D56CCD3
+1B619C39E7F27D3AD18562D94ECE4144136544C55EE6A6669AAF7A8B9AE17E03
+E258E91C43251920C067A0BCB4A62A3D6D89B5E5B8E0879C5FB9EF9E8A36DACA
+2E309C1472CF020A4F938A653D840E7BF47100A3878B954C546F86CB01AE95ED
+041BC9F618FBC569900F53C1E00E72011E57998B49C0EB2CE5E541ECA3257EAC
+5087A9F80654DAB8EB500B82D8FFB5BB481B489BCA61C945382BE92B4F44B952
+C69F5998F05FF221B777FD524385DA63EF8942DC9D1F2E090B5BC8F426959436
+659D5B7239A3800F6B2E091B8D5FF4281FB3FC55B98371C822B491BEA7917814
+D9E67117FB4EC2FDC3ACF03CF1C9E4478D717D504EA1AD79CE84489CB0615FEF
+A33A9F71D2EB3608FCDD9C7C34BB03C2ED03F78B7CB8A9EDC490F1EA0708FE9B
+24C0C9DC14983BC4229E2D028CA994FEBD20007AC87288A2F442109CB88B04AF
+E691A90974F19FCBDB214B88E0C2B67D233E7B6923414736139B40A5FAB548EF
+2DCC62E48264375E3F1AC532B006ECDC199508BF7D3ACE0602335CB4CE5A5C9D
+1E7EDD9E94B793BB81E6616062DE743CE17927ED60360D54DFF41221B54F390D
+2984F14954BD4AB08134605500EFD6ADA43D32DAE5A7B6F3A01368322ACF8229
+3492061C5F65EBD45F87631D48B16EEF1FE7500DC256D08078C0E4E67421BB98
+EF0C0D6E01C9293586D471A1BDD80481393969FDD38641FDE412F294B07B7DF3
+A7D6BD4CFDA1A103F253E7D34F68594287586FFE7001CAB60AE1A8A0B177BA9D
+1AAD7041C8802A7F8126D5295D2503234AAE5976C96CFCD67D79B2C06D2FDD9E
+A5FDAAC5713762F3C0DB512C2EA5DB13E8EA9A30CE11198398D807D2ACCAB525
+03565FCBF0004570F87EA4B0A13319FED515C1FD55870AF494C0964710F52813
+C5D99A21D507A5887DBDD1CAF282816C7367022872150C713D9F2B9B9EBD1653
+596CA51AB56D5E719F4410F1463E0CF93830544ABEC5F6D8D1A10CFA1F114AFD
+ACCB696017564EB2441953DE952DC86413F1
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+TeXDict begin 40258437 52099151 1000 600 600 (documentation.dvi)
+@start /Fa 132[48 1[50 1[69 1[53 37 38 39 1[53 48 53
+80 27 2[27 53 48 29 44 53 42 1[46 9[99 1[73 4[65 6[36
+75 75 7[45 16[27 1[27 4[27 26[53 12[{ TeXf7b6d320Encoding ReEncodeFont }
+31 83.022 /CMBX10 rf /Fb 205[55 34[42 14[65{
+ TeXbbad153fEncoding ReEncodeFont }3 83.022 /CMSY10 rf
+/Fc 205[33 33 49[{ TeXf7b6d320Encoding ReEncodeFont }2
+58.1154 /CMR7 rf /Fd 255[52{ TeXbbad153fEncoding ReEncodeFont }1
+58.1154 /CMSY7 rf /Fe 139[25 5[41 5[39 104[{
+ TeXaae443f0Encoding ReEncodeFont }3 58.1154 /CMMI7 rf
+/Ff 133[39 41 47 1[40 48 30 5[50 3[34 3[41 1[43 37[65
+1[65 23 23 58[{ TeXaae443f0Encoding ReEncodeFont }14
+83.022 /CMMI10 rf /Fg 134[44 3[44 2[44 2[44 44 1[44 2[44
+1[44 103[{ TeXb6a4d7c7Encoding ReEncodeFont }8 83.022
+/CMITT10 rf /Fh 130[44 1[44 1[44 44 44 44 44 44 44 44
+1[44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 1[44
+1[44 1[44 1[44 44 44 1[44 44 44 44 1[44 44 44 44 44 44
+44 44 44 44 44 44 44 44 44 44 44 2[44 1[44 44 44 1[44
+44 44 44 44 1[44 44 44 44 44 44 44 44 44 44 3[44 44 44
+34[{ TeX09fbbfacEncoding ReEncodeFont }75 83.022 /CMTT10
+rf /Fi 139[49 1[50 2[53 51 12[51 26[59 14[46 55[{
+ TeX0ef0afcaEncoding ReEncodeFont }7 83.022 /CMCSC10
+rf /Fj 129[42 3[34 40 39 55 38 45 28 34 35 1[42 42 47
+68 21 38 25 25 42 38 25 38 42 38 38 42 9[83 2[59 4[64
+5[32 2[54 5[64 5[25 10[42 25 30 32[47 12[{
+ TeX74afc74cEncoding ReEncodeFont }37 83.022 /CMTI10
+rf /Fk 128[42 4[37 44 44 60 44 46 32 33 33 44 46 42 46
+69 23 44 25 23 46 42 25 37 46 37 46 42 3[23 42 23 1[62
+1[85 62 62 60 46 61 1[57 65 62 76 52 1[43 30 62 65 54
+57 63 60 59 62 3[65 1[23 23 42 42 42 42 42 42 42 42 42
+42 42 23 28 23 65 1[32 32 23 4[42 23 18[69 46 46 48 11[{
+ TeXf7b6d320Encoding ReEncodeFont }79 83.022 /CMR10 rf
+/Fl 134[59 59 1[59 62 44 44 46 1[62 56 62 93 31 59 1[31
+62 2[51 62 50 1[54 9[116 2[78 62 84 1[77 84 1[106 67
+2[42 88 88 70 74 1[81 80 7[31 4[56 56 56 56 56 2[31 37
+31 31[62 12[{ TeXf7b6d320Encoding ReEncodeFont }44 99.6264
+/CMBX12 rf /Fm 134[71 71 97 71 75 52 53 55 71 75 67 75
+112 37 71 1[37 75 67 41 61 75 60 1[65 7[102 1[139 2[94
+1[100 101 1[101 1[128 3[50 2[85 88 1[97 1[102 9[67 67
+67 67 67 67 67 49[{ TeXf7b6d320Encoding ReEncodeFont }42
+119.552 /CMBX12 rf /Fn 134[41 41 55 41 43 30 30 30 1[43
+38 43 64 21 2[21 43 38 23 34 43 34 43 38 11[58 55 3[52
+7[58 60 3[55 20[21 1[21 29[64 1[43 12[{
+ TeXf7b6d320Encoding ReEncodeFont }32 74.7198 /CMR9 rf
+/Fo 139[34 35 36 14[39 49 43 31[67 65[{
+ TeXf7b6d320Encoding ReEncodeFont }7 74.7198 /CMBX9 rf
+/Fp 193[76 1[76 60[{ TeXaae443f0Encoding ReEncodeFont }2
+99.6264 /CMMI12 rf /Fq 138[54 38 38 38 3[54 2[51 1[27
+54 49 1[43 54 43 54 49 13[54 13[66 75 3[76 5[27 2[49
+49 49 49 49 49 49 49 49 27 33 45[{ TeXf7b6d320Encoding ReEncodeFont }30
+99.6264 /CMR12 rf /Fr 139[51 1[51 1[73 10[58 3[66 29[96
+67[{ TeXf7b6d320Encoding ReEncodeFont }6 143.462 /CMR17
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 0 a
+SDict begin [ /Title () /Subject () /Creator (LaTeX with hyperref package)
+/Author () /Producer (dvips + Distiller) /Keywords () /DOCINFO pdfmark
+end
+ 0 0 a 0 -137
+a
+SDict begin H.S end
+ 0 -137 a 0 -137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.1) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 0 71 a
+SDict begin [ /Count -3 /Dest (section.1) cvn /Title (Overview) /OUT
+pdfmark end
+
+0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.1.1) cvn /Title (Fixed Mesh Refinement, aka Box-in-Box)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.1.2) cvn /Title (Carpet)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.1.3) cvn /Title (Cactus)
+/OUT pdfmark end
+ 0 71 a 0 71
+a
+SDict begin [ /Count -3 /Dest (section.2) cvn /Title (Introduction)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.2.1) cvn /Title (Fixed Mesh Refinement)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.2.2) cvn /Title (Carpet)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.2.3) cvn /Title (WaveToy)
+/OUT pdfmark end
+ 0 71 a 0
+71 a
+SDict begin [ /Count -4 /Dest (section.3) cvn /Title (Compiling Cactus With Carpet)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.3.1) cvn /Title (Hurdle 1: FlexIO)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.3.2) cvn /Title (Hurdle 2: STL)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.3.3) cvn /Title (Hurdle 3: Templates)
+/OUT pdfmark end
+ 0 71 a
+0 71 a
+SDict begin [ /Count -0 /Dest (subsection.3.4) cvn /Title (WaveToy)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (section.4) cvn /Title (Running The Example Applications)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -4 /Dest (section.5) cvn /Title (Fold Your Own FMR Application)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.5.1) cvn /Title (Multiple Processors)
+/OUT pdfmark end
+ 0 71
+a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.5.2) cvn /Title (Multiple Resolution Levels)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.5.3) cvn /Title (Multiple Grid Components)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (subsection.5.4) cvn /Title (Example)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Count -0 /Dest (section.6) cvn /Title (Further documentation)
+/OUT pdfmark end
+ 0
+71 a 0 71 a
+SDict begin [ /Count -0 /Dest (section.7) cvn /Title (Frequently Asked Questions)
+/OUT pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ /Page 1 /View [ /Fit ] /PageMode /UseOutlines /DOCVIEW
+pdfmark end
+ 0 71 a 0 71 a
+SDict begin [ {Catalog} << /ViewerPreferences << >> >> /PUT pdfmark
+end
+ 0 71 a 0 71 a
+SDict begin H.S end
+
+0 71 a 0 71 a
+SDict begin 12 H.A end
+ 0 71 a 0 71 a
+SDict begin [ /View [/XYZ H.V] /Dest (Doc-Start) cvn H.B /DEST pdfmark
+end
+ 0 71 a 1691 503 a Fr(Carp)t(et)901
+760 y Fq(Erik)34 b(Sc)m(hnetter)g Fp(<)p Fq(sc)m
+(hnetter@uni-tuebingen.de)p Fp(>)1302 978 y Fq(Date:)43
+b(2003/05/02)31 b(14:47:46)1721 1276 y Fo(Abstract)323
+1407 y Fn(This)c(text)e(describ)r(es)i(the)f(Carp)r(et)h(arrangemen)n
+(t.)37 b(Carp)r(et)26 b(is)h(a)g(mesh)f(re\014nemen)n(t)f(driv)n(er)h
+(for)h(Cactus)g(that)208 1498 y(can)35 b(replace)i(PUGH,)e(the)g
+(standard)h(unigrid)f(driv)n(er.)64 b(Carp)r(et)36 b(supp)r(orts)g(m)n
+(ultiple)f(re\014nemen)n(t)g(lev)n(els)h(and)208 1589
+y(m)n(ultiple)23 b(grid)g(patc)n(hes.)34 b(Carp)r(et)24
+b(can)f(run)g(in)g(parallel,)i(but)e(not)g(y)n(et)f(v)n(ery)g
+(e\016cien)n(tly)i(so.)34 b(Carp)r(et)24 b(do)r(es)g(not)f(y)n(et)208
+1681 y(supp)r(ort)i(m)n(ultiple)h(grid)g(hierarc)n(hies,)h(i.e.)f
+(shado)n(w)h(hierarc)n(hies)f(or)h(automatic)f(con)n(v)n(ergence)g
+(tests.)0 1820 y
+SDict begin H.S end
+ 0 1820 a 0 1820 a
+SDict begin 12 H.A end
+ 0 1820 a 0 1820 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.1) cvn H.B /DEST pdfmark
+end
+
+0 1820 a 152 x Fm(1)135 b(Ov)l(erview)0 2054 y
+SDict begin H.S end
+ 0 2054
+a 0 2054 a
+SDict begin 12 H.A end
+ 0 2054 a 0 2054 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.1) cvn H.B /DEST
+pdfmark end
+ 0 2054 a 133 x Fl(1.1)112
+b(Fixed)39 b(Mesh)f(Re\014nemen)m(t,)g(ak)-6 b(a)39 b(Bo)m(x-in-Bo)m(x)
+0 2357 y Fk(Fixed)h(Mesh)f(Re\014nemen)n(t)h(\(FMR\),)h(also)e(kno)n
+(wn)g(as)g(b)r(o)n(x-in-b)r(o)n(x,)i(is)e(a)g(w)n(a)n(y)g(to)g
+(increase)g(the)h(lo)r(cal)f(resolution)0 2456 y(in)33
+b(unigrid)g(applications,)h(while)g(retaining)e(the)i(basic)e(unigrid)h
+(c)n(haracter)e(of)i(an)g(application.)53 b(A)34 b(small)f(n)n(um)n(b)r
+(er)0 2556 y(\(ma)n(yb)r(e)26 b(t)n(w)n(o)f(or)g(three\))g(of)h(grids)f
+(with)h(v)-5 b(arying)25 b(resolution)g(o)n(v)n(erla)n(y)e(eac)n(h)i
+(other,)g(where)h(the)g(coarsest)e(grid)h(has)g(the)0
+2655 y(largest)e(exten)n(t.)36 b(This)24 b(allo)n(ws)e(the)j
+(application)f(to)g(b)r(ene\014t)h(from)e(the)i(higher)e(resolution)g
+(of)h(the)h(smaller)e(grids)g(while)0 2755 y(k)n(eeping)j(the)h(outer)g
+(b)r(oundary)f(far)g(out)h(at)f(the)i(same)e(time.)37
+b(The)27 b(main)g(adv)-5 b(an)n(tage)25 b(of)i(FMR)g(are)f(that)h(it)g
+(needs)g(far)0 2855 y(less)g(resources)f(than)h(globally)g(increasing)f
+(the)i(resolution.)0 2987 y
+SDict begin H.S end
+ 0 2987 a 0 2987 a
+SDict begin 12 H.A end
+ 0 2987
+a 0 2987 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2) cvn H.B /DEST
+pdfmark end
+ 0 2987 a 117 x Fl(1.2)112 b(Carp)s(et)0 3274
+y Fk(Carp)r(et)37 b(is)g(the)g(name)g(of)g(an)g(FMR)g(driv)n(er,)h
+(i.e.)f(the)h(bac)n(k)e(end)h(that)h(handles)e(storage)f(allo)r(cation)
+h(for)h(the)g(grid)0 3373 y(functions,)25 b(parallelism,)f(I/O,)g(and)g
+(the)h(v)-5 b(arious)24 b(in)n(ter-grid)f(op)r(erations.)34
+b(Carp)r(et)24 b(w)n(as)g(dev)n(elop)r(ed)g(in)h(early)e(summer)0
+3473 y(of)33 b(2000)e(b)n(y)i(Erik)f(Sc)n(hnetter)h([)1009
+3473 y
+SDict begin H.S end
+ 1009 3473 a Fk(Sc)n(h)1136 3415 y
+SDict begin H.R end
+ 1136 3415 a
+1136 3473 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__erik-schnetter) cvn H.B /ANN pdfmark end
+ 1136 3473 a Fk(],)i(then)f(a)f(researc)n(h)e(sc)n(holar)g
+(in)i(the)h(Departmen)n(t)f(for)g(Astronom)n(y)f(and)h(Astro-)0
+3572 y(ph)n(ysics)27 b([)310 3572 y
+SDict begin H.S end
+ 310 3572 a Fk(AA)435
+3516 y
+SDict begin H.R end
+ 435 3516 a 435 3572 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__astro-psu-edu) cvn H.B /ANN pdfmark end
+ 435 3572 a Fk(])g(of)h(P)n(enn)f(State)h
+(Univ)n(ersit)n(y)f([)1431 3572 y
+SDict begin H.S end
+ 1431 3572 a Fk(P)n(en)1568
+3516 y
+SDict begin H.R end
+ 1568 3516 a 1568 3572 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__psu-edu) cvn H.B /ANN pdfmark end
+ 1568 3572 a Fk(].)38 b(In)28
+b(spring)e(2001,)g(Carp)r(et)i(w)n(as)f(coupled)g(to)h(Cactus)f(as)g(a)
+g(drop-in)0 3672 y(enhancemen)n(t)g(for)h(the)f(standard)g(unigrid)g
+(Cactus)h(driv)n(er)e(PUGH.)0 3804 y
+SDict begin H.S end
+ 0 3804 a 0 3804
+a
+SDict begin 12 H.A end
+ 0 3804 a 0 3804 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3) cvn H.B /DEST
+pdfmark end
+ 0 3804 a 117 x Fl(1.3)112 b(Cactus)0
+4091 y Fk(F)-7 b(rom)27 b(the)h(main)g(Cactus)f(w)n(eb)g(pages)g([)1264
+4091 y
+SDict begin H.S end
+ 1264 4091 a Fk(Cac)1402 4034 y
+SDict begin H.R end
+ 1402 4034 a 1402
+4091 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__cactuscode-org) cvn H.B /ANN pdfmark end
+ 1402 4091 a Fk(]:)208 4274 y(Cactus)g(is)h(an)f(op)r(en)h
+(source)f(problem)g(solving)g(en)n(vironmen)n(t)g(designed)h(for)f
+(scien)n(tests)g(and)h(engineers.)208 4373 y(Its)33 b(mo)r(dular)g
+(structure)f(easily)h(enables)g(parallel)f(computation)h(across)e
+(di\013eren)n(t)i(arc)n(hitectures)f(and)208 4473 y(collab)r(orativ)n
+(e)26 b(co)r(de)i(dev)n(elopmen)n(t)g(b)r(et)n(w)n(een)g(di\013eren)n
+(t)h(groups.)37 b(Cactus)28 b(originated)f(in)i(the)g(academic)208
+4572 y(researc)n(h)18 b(comm)n(unit)n(y)-7 b(,)23 b(where)d(it)h(w)n
+(as)f(dev)n(elop)r(ed)h(and)g(used)g(o)n(v)n(er)e(man)n(y)h(y)n(ears)f
+(b)n(y)i(a)g(large)e(in)n(ternational)208 4672 y(collab)r(oration)25
+b(of)j(ph)n(ysicists)f(and)g(computational)g(scien)n(tists.)0
+4813 y
+SDict begin H.S end
+ 0 4813 a 0 4813 a
+SDict begin 12 H.A end
+ 0 4813 a 0 4813 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.2) cvn H.B /DEST pdfmark
+end
+ 0 4813 a 150
+x Fm(2)135 b(In)l(tro)t(duction)0 5045 y
+SDict begin H.S end
+ 0 5045 a 0 5045
+a
+SDict begin 12 H.A end
+ 0 5045 a 0 5045 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.2.1) cvn H.B /DEST
+pdfmark end
+ 0 5045 a 133 x Fl(2.1)112 b(Fixed)39
+b(Mesh)f(Re\014nemen)m(t)0 5348 y Fk(A)32 b(standard)f(w)n(a)n(y)g(of)g
+(solving)g(partial)g(di\013eren)n(tial)h(equations)f(are)f(\014nite)j
+(di\013erences)e(on)h(a)f(regular)f(grid.)49 b(This)32
+b(is)0 5448 y(also)22 b(called)g Fj(unigrid)p Fk(.)36
+b(Suc)n(h)23 b(an)f(application)g(discretises)g(its)h(problem)f(space)g
+(on)n(to)g(a)h(single,)g(rectangular)e(grid)h(whic)n(h)0
+5547 y(has)i(ev)n(erywhere)f(the)i(same)g(grid)f(spacing.)35
+b(This)25 b(grid)f(migh)n(t)g(b)r(e)i(brok)n(en)d(up)i(in)n(to)g(sev)n
+(eral)e(parts)h(for)g(parallelisation)0 5647 y(purp)r(oses,)j(but)h
+(parallelisation)e(should)h(b)r(e)h(transparen)n(t)e(to)i(the)g(ph)n
+(ysics)e(part)i(of)f(the)h(application.)1869 5989 y(1)p
+eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.2) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 125 154 a Fk(Increasing)23
+b(the)j(resolution)f(in)g(a)g(unigrid)g(application)g(is)h(somewhat)e
+(exp)r(ensiv)n(e.)36 b(F)-7 b(or)25 b(example,)g(increasing)f(the)0
+254 y(resolution)e(b)n(y)h(a)g(factor)g(of)g(t)n(w)n(o)f(requires)g(a)h
+(factor)g(of)g(eigh)n(t)g(more)f(storage)g(in)h(three)g(dimensions.)35
+b(Giv)n(en)23 b(a)g(constan)n(t)0 353 y(Couran)n(t)i(factor,)g(the)i
+(calculation)e(time)i(will)f(ev)n(en)g(go)f(up)h(b)n(y)g(a)g(factor)f
+(of)h(sixteen.)36 b(This)26 b(b)r(eha)n(viour)f(mak)n(es)g(it)i(easy)0
+453 y(to)33 b(\014nd)g(problems)g(that)g(cannot)g(b)r(e)g(solv)n(ed)f
+(on)h(con)n(temp)r(orary)e(sup)r(ercomputers,)j(no)f(matter)f(ho)n(w)h
+(big)g(and)g(fast)0 552 y(those)27 b(computers)g(are.)125
+669 y(Apart)h(from)g(ph)n(ysical)g(insigh)n(t,)h(whic)n(h)f(often)h
+(has)f(to)h(b)r(e)g(used)f(to)h(decrease)e(the)i(problem)f(size)g(un)n
+(til)h(it)g(\014ts)g(the)0 768 y(curren)n(t)20 b(hardw)n(are,)g(there)g
+(are)f(also)h(n)n(umerical)f(and)i(algorithmic)e(metho)r(ds)i(to)f
+(decrease)f(the)i(resource)e(requiremen)n(ts)0 868 y(of)30
+b(the)g(application.)44 b(Most)30 b(applications)f(need)h(the)g(high)g
+(resolution)f(only)h(in)g(a)g(part)f(of)h(the)g(sim)n(ulation)g
+(domain.)0 968 y(Discretisation)h(metho)r(ds)h(that)h(don't)f(require)f
+(a)g(uniform)h(resolution,)g(suc)n(h)g(as)f(\014nite)h(elemen)n(ts,)h
+(can)f(implemen)n(t)0 1067 y(non-uniform)c(resolutions)f(v)n(ery)h
+(naturally)-7 b(.)39 b(One)29 b(problem)f(with)h(\014nite)g(elemen)n
+(ts)g(is)f(that)h(man)n(y)f(ph)n(ysicists)g(to)r(da)n(y)0
+1167 y(are)h(not)g(familiar)g(with)i(\014nite)f(elemen)n(ts,)g(or)f(sh)
+n(y)g(a)n(w)n(a)n(y)e(from)j(their)f(p)r(erceiv)n(ed)g(complexit)n(y)-7
+b(,)30 b(or)f(are)f(not)i(willing)g(to)0 1266 y(adapt)d(existing)g
+(\014nite)i(di\013erence)e(co)r(de.)125 1383 y(Fixed)k(Mesh)g
+(Re\014nemen)n(t)g(\(FMR\))h(is)f(a)g(p)r(o)r(or)f(man's)h(w)n(a)n(y)f
+(of)h(implemen)n(ting)g(a)f(non-uniform)h(resolution)f(in)n(to)0
+1482 y(a)g(unigrid)h(application)f(with)h(minimal)g(c)n(hanges)f(to)g
+(its)h(structure.)46 b(Instead)31 b(of)f(only)h(one)f(grid,)h(there)g
+(are)e(sev)n(eral)0 1582 y(grids)g(or)f(grid)h(patc)n(hes)g(with)h
+(di\013eren)n(t)f(resolutions.)42 b(The)29 b(coarsest)f(grid)h(usually)
+g(encloses)f(the)i(whole)f(sim)n(ulation)0 1682 y(domain.)44
+b(Successiv)n(ely)29 b(\014ner)h(grids)g(o)n(v)n(erla)n(y)d(the)k
+(coarse)d(grid)i(at)g(those)g(lo)r(cations)f(where)h(a)f(higher)h
+(resolutions)f(is)0 1781 y(needed.)37 b(The)28 b(coarser)d(grids)i(pro)
+n(vide)f(b)r(oundary)h(conditions)g(to)g(the)h(\014ner)g(grid)f
+(through)g(in)n(terp)r(olation.)125 1897 y(Instead)i(of)g(up)r(dating)g
+(only)g(one)g(grid,)g(the)g(application)g(has)g(to)g(up)r(date)g(all)g
+(grids.)41 b(The)29 b(usual)g(approac)n(h)f(is)h(to)0
+1997 y(\014rst)21 b(tak)n(e)f(a)g(step)h(on)g(the)g(coarsest)e(grid,)j
+(and)e(then)i(recursiv)n(ely)d(tak)n(e)h(sev)n(eral)f(smaller)h(steps)g
+(on)h(the)g(\014ner)g(grids.)34 b(The)0 2097 y(Couran)n(t)27
+b(criterion)h(requires)f(that)i(the)h(step)e(sizes)g(on)h(the)g
+(\014ner)f(grids)g(b)r(e)h(smaller)f(than)h(on)f(the)h(coarse)e(grid.)
+40 b(The)0 2196 y(b)r(oundary)30 b(v)-5 b(alues)31 b(for)f(the)h
+(\014ner)g(grids)f(are)g(found)h(through)f(in)n(terp)r(olation)g(in)i
+(space)e(and)h(time)g(from)g(the)g(coarser)0 2296 y(grid.)36
+b(In)28 b(the)g(end,)g(the)g(information)f(on)g(the)h(\014ner)f(grids)g
+(is)g(injected)i(in)n(to)e(the)h(coarse)e(grids.)125
+2412 y(Strictly)j(sp)r(eaking)f(there)h(is)g(no)g(need)g(for)g(a)g
+(coarse)e(grid)i(on)f(the)i(regions)e(co)n(v)n(ered)f(b)n(y)i(the)g
+(\014ner)g(grids.)41 b(But)29 b(as)0 2512 y(stated)19
+b(ab)r(o)n(v)n(e,)h(the)g(resources)e(required)g(for)h(treating)g(the)h
+(o)n(v)n(erlapping)e(region)g(on)h(the)h(coarse)e(grid)h(are)f(only)h
+(minimal)0 2611 y(compared)26 b(to)i(treating)f(the)h(\014ner)f(grids.)
+36 b(And)28 b(b)r(ecause)g(a)f(coarse)f(grid)h(with)h(a)f(hole)g(often)
+h(creates)e(complications,)0 2711 y(this)i(ob)n(vious)e(optimisation)h
+(is)h(often)g(left)g(out.)0 2843 y
+SDict begin H.S end
+ 0 2843 a 0 2843 a
+SDict begin 12 H.A end
+
+0 2843 a 0 2843 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.2.2) cvn H.B /DEST
+pdfmark end
+ 0 2843 a 117 x Fl(2.2)112 b(Carp)s(et)0
+3130 y Fk(Carp)r(et)24 b(is)h(a)g(C++)f(library)f(that)i(pro)n(vides)e
+(infrastructure)h(to)h(describ)r(e)f(regions)g(of)g(v)-5
+b(arying)24 b(resolution)g(in)h(a)f(con)n(v)n(e-)0 3230
+y(nien)n(t)h(and)g(e\016cien)n(t)g(w)n(a)n(y)-7 b(.)34
+b(Carp)r(et)25 b(con)n(tains)f(routines)g(to)h(manage)e(grid)h(hierarc)
+n(hies,)g(con)n(taining)g(the)h(relationships)0 3329
+y(b)r(et)n(w)n(een)34 b(the)h(comp)r(onen)n(ts)e(of)i(the)f(grid)g(on)g
+(the)g(di\013eren)n(t)h(re\014nemen)n(t)f(and)g(con)n(v)n(ergence)d
+(lev)n(els.)56 b(Carp)r(et)34 b(has)g(a)0 3429 y(notion)29
+b(of)h(sim)n(ulation)f(time)h(and)f(grid)g(spacing,)g(whic)n(h)h(are)e
+(necessary)g(for)h(in)n(terp)r(olation,)g(and)h(con)n(tains)e
+(e\016cien)n(t)0 3528 y(in)n(terp)r(olators.)125 3645
+y(Carp)r(et)35 b(can)g(run)g(on)g(sev)n(eral)f(pro)r(cessors)f(in)j
+(parallel)e(using)h(MPI)g(for)g(comm)n(unication.)60
+b(Eac)n(h)34 b(grid)h(can)g(b)r(e)0 3744 y(brok)n(en)25
+b(do)n(wn)h(in)n(to)g(sev)n(eral)f(comp)r(onen)n(ts,)h(and)g(ev)n(ery)f
+(comp)r(onen)n(t)h(has)g(a)g(home)g(pro)r(cessor.)34
+b(Carp)r(et)26 b(also)g(con)n(tains)0 3844 y(op)r(erators)g(to)h(mo)n
+(v)n(e)g(certain)g(regions)f(to)h(a)g(di\013eren)n(t)h(pro)r(cessor,)d
+(or)i(to)h(sync)n(hronise)e(all)h(comp)r(onen)n(ts)g(of)g(a)h(grid.)125
+3960 y(Carp)r(et)21 b(is)g(also)f(an)h(arrangemen)n(t)e(of)i(thorns)g
+(for)g(Cactus,)h(implemen)n(ting)g(a)f(driv)n(er)f(and)h(asso)r(ciated)
+f(I/O)g(routines)0 4060 y(for)j(b)r(oth)h(ASCI)r(I)h(and)e(binary)g
+(I/O.)g(It)i(should)e(b)r(e)h(p)r(ossible)g(to)f(substitute)i(Carp)r
+(et)e(for)h(the)g(standard)f(Cactus)g(driv)n(er)0 4159
+y(PUGH)30 b(without)h(c)n(hanges)e(to)g(the)i(application)e(thorns)h
+(and)g(th)n(us)g(use)g(Carp)r(et)g(as)f(a)h(unigrid)f(driv)n(er.)43
+b(Making)30 b(use)0 4259 y(of)i(the)h(FMR)f(capabilities)g(of)g(Carp)r
+(et)g(usually)g(requires)f(some)g(rearranging)e(of)j(the)h
+(application,)g(comparable)d(in)0 4359 y(general)c(to)i(the)g(c)n
+(hanges)e(necessary)g(for)h(a)g(unipro)r(cessor)f(application)h(to)g
+(run)h(on)f(m)n(ultiple)h(pro)r(cessors.)125 4475 y(The)20
+b(driv)n(er)g(section)h(of)f(Carp)r(et)h(con)n(tains)f(the)h(logic)f
+(to)h(manage)f(storage)f(for)h(the)h(grid)f(functions,)j(to)e(tra)n(v)n
+(erse)d(the)0 4575 y(grid)k(hierarc)n(h)n(y)e(for)h(all)h(sc)n(heduled)
+g(routines,)h(and)f(to)g(automatically)f(apply)h(the)h(necessary)d(in)n
+(ter-grid)h(op)r(erators)f(for)0 4674 y(prolongation)g(\(in)n(terp)r
+(olation)h(of)h(the)g(\014ne)g(grid)f(b)r(oundaries\))h(and)f
+(restriction)g(\(injecting)i(the)f(\014ne)g(grid)f(information)0
+4774 y(bac)n(k)27 b(in)n(to)g(the)h(coarse)e(grid\).)125
+4890 y(The)31 b(ASCI)r(I)g(I/O)g(routines)f(use)h(the)g(quasi-standard)
+f(gn)n(uplot)g([)2237 4906 y
+SDict begin H.S end
+ 2237 4906 a -16 x Fk(gn)n(u)2369
+4854 y
+SDict begin H.R end
+ 2369 4854 a 2369 4890 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__gnuplot-info) cvn H.B /ANN pdfmark end
+ 2369 4890 a Fk(])h(format.)47
+b(The)31 b(binary)f(I/O)g(routines)h(use)0 4990 y(the)i(FlexIO)f
+(library)f([)731 4990 y
+SDict begin H.S end
+ 731 4990 a Fk(Sha)865 4932 y
+SDict begin H.R end
+
+865 4932 a 865 4990 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__FlexIO) cvn H.B /ANN pdfmark end
+ 865 4990 a Fk(])h(written)h(b)n(y)f(John)g
+(Shalf.)51 b(It)33 b(allo)n(ws)e(e\016cien)n(t)h(and)h(platform)f
+(indep)r(enden)n(t)h(I/O.)f(The)0 5089 y(FlexIO)27 b(format)g(is)h
+(based)f(on)g(HDF)i([)1211 5089 y
+SDict begin H.S end
+ 1211 5089 a Fk(HDF)1391
+5033 y
+SDict begin H.R end
+ 1391 5033 a 1391 5089 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__HDF) cvn H.B /ANN pdfmark end
+ 1391 5089 a Fk(])e(and)h(also)e(supp)r
+(orted)i(b)n(y)f(sev)n(eral)f(visualisation)g(pac)n(k)-5
+b(ages.)125 5205 y(Carp)r(et)29 b(is)h(cop)n(yrigh)n(ted)f(b)n(y)g
+(Erik)g(Sc)n(hnetter,)i(and)f(is)g(a)n(v)-5 b(ailable)28
+b(under)i(the)h(GPL)e(licence)h(from)g(a)g(CVS)g([)3588
+5205 y
+SDict begin H.S end
+ 3588 5205 a Fk(CVS)3756 5149 y
+SDict begin H.R end
+ 3756 5149 a 3756
+5205 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__CVS) cvn H.B /ANN pdfmark end
+ 3756 5205 a Fk(])0 5305 y(rep)r(ository)-7 b(.)1869
+5989 y(2)p eop end
+%%Page: 3 3
+TeXDict begin 3 2 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.3) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 0 71 a
+SDict begin H.S end
+ 0 71 a 0 71
+a
+SDict begin 12 H.A end
+ 0 71 a 0 71 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.2.3) cvn H.B /DEST
+pdfmark end
+ 0 71 a 83 x Fl(2.3)112 b(W)-9 b(a)m(v)m(eT)g(o)m(y)0
+324 y Fk(Cactus)35 b(comes)g(with)h(a)f(sample)g(application)g(called)h
+Fj(WaveT)-6 b(oy)p Fk(,)39 b(whic)n(h)c(solv)n(es)f(the)i(scalar)e(w)n
+(a)n(v)n(e)g(equation)h(with)0 423 y(v)-5 b(arious)28
+b(initial)h(data)g(and)g(b)r(oundary)f(conditions.)41
+b(An)29 b(an)g(example,)g(I)g(ha)n(v)n(e)f(extended)h(W)-7
+b(a)n(v)n(eT)g(o)n(y)27 b(so)i(that)g(is)g(uses)0 523
+y(Carp)r(et's)j(FMR)h(capabilities.)51 b(W)-7 b(a)n(v)n(eT)g(o)n(y)31
+b(serv)n(es)g(b)r(oth)h(as)g(a)g(test)h(case)f(for)g(Carp)r(et,)h(and)g
+(as)e(example)h(of)h(ho)n(w)f(to)0 623 y(con)n(v)n(ert)26
+b(an)h(application)g(to)h(using)f(FMR.)125 739 y(The)19
+b(equation)g(solv)n(ed)f(b)n(y)h(W)-7 b(a)n(v)n(eT)g(o)n(y)17
+b(is)j(the)f(w)n(ell)g(kno)n(wn)g(scalar)f(w)n(a)n(v)n(e)f(equation,)k
+(discretised)e(using)f(the)i(Leapfrog)0 839 y(metho)r(d)28
+b(with)g(three)g(time)g(lev)n(els,)f(yielding)g(second)h(order)e
+(accuracy)g(in)i(space)f(and)g(time.)38 b(A)28 b(t)n(ypical)f(set)h(of)
+f(initial)0 938 y(data)22 b(are)g(a)g(plane)g(w)n(a)n(v)n(e,)g(and)g(a)
+g(t)n(ypical)g(b)r(oundary)g(condition)g(is)h(p)r(erio)r(dicit)n(y)-7
+b(.)35 b(Those)22 b(allo)n(w)f(long)h(term)g(sim)n(ulations)0
+1038 y(as)27 b(w)n(ell)g(as)g(easy)g(and)g(meaningful)h(comparisons)e
+(to)h(the)h(analytic)f(solution.)0 1179 y
+SDict begin H.S end
+ 0 1179 a 0
+1179 a
+SDict begin 12 H.A end
+ 0 1179 a 0 1179 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.3) cvn H.B /DEST pdfmark
+end
+ 0 1179 a 150 x Fm(3)135 b(Compiling)46
+b(Cactus)f(With)g(Carp)t(et)0 1527 y Fk(Carp)r(et)36
+b(has)g(b)r(een)g(written)h(in)g(C++,)g(using)f(templates)h(and)f(the)g
+(STL)h(\(Standard)f(T)-7 b(emplate)36 b(Library\).)62
+b(Both)0 1627 y(templates)28 b(and)f(the)h(STL)g(mak)n(e)f(writing)g
+(and)h(debugging)e(co)r(de)i(a)f(lot)h(easier.)36 b(Without)28
+b(templates,)g(I)g(w)n(ould)f(ha)n(v)n(e)0 1727 y(had)e(to)h(put)g(m)n
+(uc)n(h)g(e\013ort)f(in)n(to)h(making)f(Carp)r(et)g(supp)r(ort)g(all)h
+(of)f(Cactus')h(data)f(t)n(yp)r(es.)36 b(Without)27 b(the)f(STL,)f(I)h
+(w)n(ould)0 1826 y(ha)n(v)n(e)34 b(had)g(to)h(sp)r(end)h(quite)f(some)f
+(time)i(implemen)n(ting)f(basic)f(con)n(tainers)f(suc)n(h)i(as)f(lists)
+h(or)f(sets.)59 b(I)35 b(still)g(had)g(to)0 1926 y(implemen)n(t)g(a)e
+(custom)h(v)n(ector)f(t)n(yp)r(e,)j(b)r(ecause)e(STL's)g(v)n(ector)f(t)
+n(yp)r(e)h(is)g(optimised)g(for)g(large)f(v)n(ectors)f(only)-7
+b(,)36 b(and)e(I)0 2026 y(needed)28 b(threedimensional)f(v)n(ectors)f
+(of)h(in)n(tegers.)125 2142 y(The)32 b(inner)h(lo)r(ops)f(of)g(Carp)r
+(et)h(are)e(the)i(in)n(ter-grid)f(op)r(erators,)g(that)h(is)f(the)h
+(routines)f(that)h(cop)n(y)-7 b(,)33 b(restrict,)h(and)0
+2241 y(prolongate)24 b(b)r(et)n(w)n(een)i(grids.)35 b(Due)27
+b(to)f(Cactus)f(it)i(w)n(as)d(rather)h(easy)g(to)h(write)g(these)g(in)g
+Fi(F)n(or)-6 b(tran)30 b(77)p Fk(,)c(whic)n(h)g(mak)n(es)0
+2341 y(them)i(b)r(oth)g(fast)g(and)f(p)r(ortable.)125
+2457 y(Carp)r(et)35 b(is)g(an)h(arrangemen)n(t)d(in)j(Cactus.)61
+b(It)36 b(can)f(theoretically)g(b)r(e)h(compiled)f(without)h(an)n(y)f
+(other)g(external)0 2557 y(library)-7 b(,)22 b(if)h(y)n(ou)f(don't)h
+(include)g(the)g(binary)f(I/O)f(supp)r(ort)i(whic)n(h)f(requires)g
+(FlexIO.)g(I)g(do)h(recommend)f(using)g(FlexIO,)0 2657
+y(so)32 b(y)n(ou)g(should)g(install)h(the)g(FlexIO)f(library)g
+(\014rst.)52 b(Although)33 b(FlexIO)f(is)g(already)g(part)g(of)h
+(Cactus)f(in)h(the)g(thorn)0 2756 y(called)d(CactusExternal/FlexIO,)f
+(this)i(seems)f(to)h(b)r(e)g(a)f(v)n(ersion)g(that)h(has)f(FMR)h(supp)r
+(ort)g(disabled)f(and)h(is)g(hence)0 2856 y(not)d(usable.)36
+b(Y)-7 b(ou)28 b(will)f(ha)n(v)n(e)g(to)g(install)h(a)f(complete)h(cop)
+n(y)e(of)i(FlexIO)f(b)n(y)g(hand.)0 2988 y
+SDict begin H.S end
+ 0 2988 a 0
+2988 a
+SDict begin 12 H.A end
+ 0 2988 a 0 2988 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.1) cvn H.B /DEST
+pdfmark end
+ 0 2988 a 117 x Fl(3.1)112 b(Hurdle)38
+b(1:)50 b(FlexIO)0 3275 y Fk(I)21 b(suggest)f(that)h(y)n(ou)f(enable)g
+(supp)r(ort)h(for)f(the)h(HDF)h(format)e(in)h(the)g(FlexIO)g(library)-7
+b(,)21 b(although)f(this)h(is)f(not)h(necessary)-7 b(.)0
+3374 y(If)28 b(y)n(ou)f(don't)h(w)n(an)n(t)f(to)g(do)g(this,)h(then)g
+(y)n(ou)f(don't)h(ha)n(v)n(e)e(to)i(install)f(the)h(HDF)h(libraries)d
+(in)i(the)g(follo)n(wing.)0 3457 y
+SDict begin H.S end
+ 0 3457 a 0 3457 a
+SDict begin 12 H.A end
+
+0 3457 a 0 3457 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.1) cvn H.B /DEST pdfmark
+end
+ 0 3457 a 101 3574 a Fk(1.)42 b(Install)22
+b(the)h(HDF4)h(and)f(HDF5)g(libraries.)34 b(They)22 b(are)g(a)n(v)-5
+b(ailable)22 b(from)g(the)i(HDF)f(w)n(eb)g(pages)f([)3214
+3574 y
+SDict begin H.S end
+ 3214 3574 a Fk(HDF)3394 3517 y
+SDict begin H.R end
+ 3394 3517 a 3394
+3574 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (cite.Carpet__HDF) cvn H.B /ANN pdfmark end
+ 3394 3574 a Fk(],)i(and)e(they)208 3673 y(can)28
+b(b)r(e)i(installed)e(with)i(the)f(usual)g Fh(./configure;)39
+b(make;)i(make)h(install)26 b Fk(triplet.)41 b(They)29
+b(should)g(already)208 3773 y(b)r(e)i(installed)g(b)n(y)g(default)h(on)
+f(most)g(mac)n(hines.)46 b(The)32 b(con)n(v)n(ersion)c(utilities)k(b)r
+(et)n(w)n(een)f(HDF4)h(and)f(HDF5)h(are)208 3872 y(installed)26
+b(automatically)g(when)h(y)n(ou)f(install)h(HDF5)g(while)g(HDF4)g(is)g
+(already)e(installed.)37 b(\(That)27 b(means)f(that)208
+3972 y(y)n(ou)g(should)i(install)f(HDF4)h(\014rst,)g(and)f(then)h
+(HDF5.\))0 4026 y
+SDict begin H.S end
+ 0 4026 a 0 4026 a
+SDict begin 12 H.A end
+ 0 4026 a 0 4026 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.2) cvn H.B /DEST pdfmark
+end
+
+0 4026 a 101 4138 a Fk(2.)42 b(Get)28 b(the)g(FlexIO)f(library)f(from)h
+(the)h(Cactus)f(CVS)h(serv)n(er:)208 4238 y Fh(cvs)42
+b(-d)h(:pserver:)p Fg(yourlo)o(gin)8 b Fh(@cvs.cactuscode)o(.or)o(g:)o
+(/pa)o(ck)o(ag)o(es)37 b(checkout)j(FlexIO)p Fk(.)21
+b(If)i(y)n(ou)f(do)h(not)208 4337 y(ha)n(v)n(e)30 b(a)h(login,)h(then)g
+(use)f(the)h(login)f Fh(cvs)p 1538 4337 27 4 v 30 w(anon)f
+Fk(for)h(anon)n(ymous)f(access.)48 b(The)31 b(Cactus)g(w)n(eb)h(pages)e
+(describ)r(e)208 4437 y(ho)n(w)d(to)g(do)g(this.)0 4470
+y
+SDict begin H.S end
+ 0 4470 a 0 4470 a
+SDict begin 12 H.A end
+ 0 4470 a 0 4470 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.3) cvn H.B /DEST pdfmark
+end
+ 0 4470 a 101 4603
+a Fk(3.)42 b(Con\014gure)h(FlexIO)h(while)h(pro)n(viding)f(the)h(paths)
+g(to)f(the)h(HDF4)h(and)e(HDF5)h(libraries:)70 b Fh(./configure)208
+4703 y(--with-hdf4=/us)o(r)38 b(--with-hdf5=/us)o(r)p
+Fk(,)20 b(assuming)k(that)h(HDF4)h(and)f(HDF5)h(are)e(installed)h
+(under)g Fh(/usr)p Fk(.)208 4802 y(Y)-7 b(ou)28 b(can)f(also)g
+(con\014gure)g(without)i(HDF)g(supp)r(ort,)f(but)h(then)f(y)n(ou)g
+(will)g(not)g(b)r(e)h(able)e(to)h(read)g(or)f(write)h(HDF)208
+4902 y(\014les.)36 b(FlexIO)28 b(will)f(then)h(supp)r(ort)g(only)f(the)
+h(built-in)g Fh(IEEEIO)d Fk(format.)0 4951 y
+SDict begin H.S end
+ 0 4951 a
+0 4951 a
+SDict begin 12 H.A end
+ 0 4951 a 0 4951 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.4) cvn H.B /DEST pdfmark
+end
+ 0 4951 a 101 5068 a Fk(4.)42
+b(Edit)32 b(the)g(top)g(of)g(the)g(\014le)h Fh(FlexIO/Makefile)26
+b Fk(to)31 b(matc)n(h)h(y)n(our)f(actual)g(con\014guration.)49
+b(The)32 b Fh(./configure)208 5168 y Fk(script)d(of)h(FlexIO)g(is)g(a)g
+(bit)g(simplistic,)i(so)d(don't)h(sp)r(end)h(to)r(o)f(m)n(uc)n(h)f
+(e\013ort)h(trying)g(to)g(con)n(vince)f(it)h(to)g(do)g(the)208
+5267 y(righ)n(t)c(thing.)208 5400 y(On)33 b(m)n(y)h(mac)n(hine,)h(I)f
+(had)g(to)g(c)n(hange)f(the)h(settings)g Fh(CC)43 b(=)g(mpicc)p
+Fk(,)34 b Fh(C++)42 b(=)h(mpiCC)f(-DMPICH)p 3266 5400
+27 4 v 28 w(SKIP)p 3470 5400 V 30 w(MPICXX)p Fk(,)208
+5500 y(and)29 b Fh(HDFINCLUDES)39 b(=)44 b(-I$\(HDFROOT\)/in)o(clu)o
+(de)o(/h)o(df)24 b Fk(b)n(y)29 b(hand.)44 b(I)30 b(am)g(using)g(Debian)
+g(Lin)n(ux)g(on)g(an)f(IA32)208 5599 y(with)e(gcc)g(2.95.4)e(and)i
+(MPICH)h(1.2.4,)e(and)h(I)g(ha)n(v)n(e)f(an)h(HDF5)h(library)e(where)g
+(supp)r(ort)h(for)g(parallel)f(I/O)h(w)n(as)208 5699
+y(enabled.)1869 5989 y(3)p eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.4) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 0 71 a
+SDict begin H.S end
+ 0 71 a 0 71
+a
+SDict begin 12 H.A end
+ 0 71 a 0 71 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.5) cvn H.B /DEST pdfmark
+end
+ 0 71 a 101 154 a Fk(5.)42 b(Compile)27
+b(the)h(library)e(with)i Fh(make)p Fk(.)0 203 y
+SDict begin H.S end
+ 0 203
+a 0 203 a
+SDict begin 12 H.A end
+ 0 203 a 0 203 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.6) cvn H.B /DEST pdfmark
+end
+ 0 203 a 101 320 a Fk(6.)42
+b(The)29 b(library)f(cannot)h(b)r(e)g(installed)h(automatically)-7
+b(.)40 b(Y)-7 b(ou)30 b(usually)f(use)g(the)g(include)h(and)f(library)f
+(\014les)h(where)208 420 y(they)24 b(are.)34 b(If)25
+b(y)n(ou)e(w)n(an)n(t)h(to)g(install)f(the)i(library)-7
+b(,)23 b(cop)n(y)h(all)f(the)i(header)e(\014les)h(\()p
+Fh(*.h)43 b(*.hh)e(*.H)p Fk(\))24 b(and)f(the)i(library)208
+519 y(\014les)i(\()p Fh(*.a)p Fk(\).)125 719 y(Y)-7 b(es,)27
+b(I)h(also)e(think)j(that)e(this)h(is)g(w)n(a)n(y)e(to)r(o)h
+(complicated.)0 851 y
+SDict begin H.S end
+ 0 851 a 0 851 a
+SDict begin 12 H.A end
+ 0 851 a 0 851 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.2) cvn H.B /DEST
+pdfmark end
+
+0 851 a 117 x Fl(3.2)112 b(Hurdle)38 b(2:)50 b(STL)0
+1137 y Fk(Some)34 b(op)r(erating)f(systems)g(do)h(not)g(ha)n(v)n(e)f(a)
+h(complian)n(t)f(STL)h(\(Standard)g(T)-7 b(emplate)34
+b(Library\))f(installed.)56 b(If)35 b(not,)0 1237 y(then)28
+b(y)n(ou)f(are)g(in)g(trouble.)37 b(Carp)r(et)27 b(do)r(es)g(mak)n(e)g
+(use)h(of)f(the)h(STL,)g(and)f(there)h(is)f(no)g(w)n(a)n(y)g(around)f
+(that.)0 1369 y
+SDict begin H.S end
+ 0 1369 a 0 1369 a
+SDict begin 12 H.A end
+ 0 1369 a 0 1369 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.3) cvn H.B /DEST
+pdfmark end
+ 0
+1369 a 117 x Fl(3.3)112 b(Hurdle)38 b(3:)50 b(T)-9 b(emplates)0
+1656 y Fk(Some)32 b(compilers)f(con)n(tain)h(switc)n(hes)f(to)h(instan)
+n(tiate)g(some)g(or)f(all)h(templates)g(automatically)-7
+b(.)50 b(This)32 b(usually)g(do)r(es)0 1755 y(not)c(w)n(ork)e(when)j
+(\014les)f(are)e(put)j(in)n(to)f(libraries,)e(whic)n(h)i(is)g(what)g
+(Cactus)g(do)r(es.)37 b(The)28 b(sc)n(heme)g(that)g(I)g(found)g(w)n
+(orking)0 1855 y(on)g(all)g(mac)n(hines)f(is)h(to)g(instan)n(tiate)f
+(most)h(templates)g(b)n(y)g(hand,)g(and)g(ha)n(v)n(e)f(the)i(compiler)e
+(instan)n(tiate)h(the)g(missing)0 1955 y(templates)38
+b(for)g(ev)n(ery)f(ob)5 b(ject)39 b(\014le.)69 b(This)38
+b(is)g(the)h(default)g(for)f(gcc.)68 b(On)39 b(SGIs,)i(y)n(ou)c(ha)n(v)
+n(e)h(to)g(pass)f(the)i(options)0 2054 y Fh(-no)p 137
+2054 27 4 v 30 w(auto)p 343 2054 V 30 w(include)i(-ptused)24
+b Fk(to)k(the)g(C++)f(compiler.)125 2171 y(The)k(C++)g(standard)g(sp)r
+(eci\014es)g(a)g(limit)i(when)e(using)h(templates)f(as)g(template)h
+(parameters.)47 b(Carp)r(et's)31 b(use)h(of)0 2270 y(the)c(GNU)g(STL)g
+(exceeds)f(this)h(limit.)37 b(Gcc)28 b(requires)e(the)i(option)g
+Fh(-ftemplate-dept)o(h-3)o(0)21 b Fk(to)28 b(enable)f(this.)0
+2405 y
+SDict begin H.S end
+ 0 2405 a 0 2405 a
+SDict begin 12 H.A end
+ 0 2405 a 0 2405 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.4) cvn H.B /DEST
+pdfmark end
+ 0 2405 a 114
+x Fl(3.4)112 b(W)-9 b(a)m(v)m(eT)g(o)m(y)0 2689 y Fk(Unfortunately)i(,)
+31 b(PUGH)g(and)f(Carp)r(et)g(cannot)g(y)n(et)g(b)r(e)h(b)r(oth)f
+(compiled)h(in)n(to)f(a)g(single)g(application.)44 b(\(This)31
+b(will)f(b)r(e)0 2789 y(\014xed)k(so)r(on.\))56 b(That)34
+b(means)g(that)h(y)n(ou)e(will)h(ha)n(v)n(e)f(separate)g(executables)h
+(for)f(unigrid)h(and)g(for)g(mesh)g(re\014nemen)n(t)0
+2888 y(applications.)125 3005 y(Con\014guring)28 b(Carp)r(et)h(is)h
+(not)g(quite)g(trivial,)g(b)r(ecause)f(Cactus)g(pro)n(vides)g(curren)n
+(tly)g(no)g(w)n(a)n(y)g(to)g(auto)r(detect)h(the)0 3104
+y(settings)35 b(for)f(Carp)r(et.)59 b(Hence)36 b(y)n(ou)e(will)h(ha)n
+(v)n(e)f(to)h(set)g(the)h(settings)e(man)n(ually)-7 b(.)59
+b(I)35 b(prop)r(ose)f(that)h(y)n(ou)g(start)f(with)0
+3204 y(on)29 b(of)h(the)g(pre-made)f(options)g(\014les)g(in)h(the)g
+(directory)g Fh(Carpet/Carpet/o)o(pt)o(ion)o(s)p Fk(.)37
+b(T)-7 b(ry)29 b(e.g.)g Fh(carpet-harpo-sgi)0 3303 y
+Fk(for)j(an)f(SGI,)i(or)e Fh(carpet-lilypond)26 b Fk(for)31
+b(Lin)n(ux)h(with)h(gcc,)f(or)f Fh(carpet-lilypond-i)o(c)26
+b Fk(for)32 b(Lin)n(ux)f(with)i(the)f(In)n(tel)0 3403
+y(compilers.)j(Once)25 b(y)n(ou)g(ha)n(v)n(e)f(a)h(w)n(orking)f
+(options)g(\014le)i(for)f(y)n(our)f(mac)n(hine,)h(send)h(it)f(to)h(me,)
+g(so)e(that)i(I)f(can)g(include)h(it.)125 3519 y(As)h(for)h(the)g
+(thorn)f(list:)38 b(Carp)r(et)27 b(has)g(its)h(o)n(wn)f(ASCI)r(I)i
+(output)f(thorn,)g(whic)n(h)f(outputs)h(more)f(information)g(than)0
+3619 y(CactusBase/IO)n(ASCI)r(I.)f(The)h(thorn)g(list)h(that)g(I)g(use)
+f(is)0 3818 y Fh(CactusBase/Bound)o(ary)691 b(#)43 b(boundary)d
+(\(grid\))h([)i(])g({)h(})0 3918 y(CactusBase/CartG)o(rid)o(3D)604
+b(#)43 b(grid)f(\()h(\))g([)g(])g({driver})0 4017 y(#CactusBase/IOAS)o
+(CII)734 b(#)43 b(IOASCII)e(\(IO,Hyperslab\))d([)43 b(])g({IO})0
+4117 y(CactusBase/IOBas)o(ic)735 b(#)43 b(IOBasic)d(\(IO\))i([)h(])h
+({IO})0 4217 y(CactusBase/IOUti)o(l)779 b(#)43 b(IO)f(\()i(\))f([)g(])g
+({)g(})0 4316 y(CactusBase/Local)o(Int)o(er)o(p)561 b(#)43
+b(LocalInterp)c(\()k(\))g([)g(])g({)h(})0 4416 y(CactusBase/Time)866
+b(#)43 b(time)f(\()h(\))g([)g(])g({)g(})0 4516 y(CactusConnect/HT)o
+(TPD)691 b(#)43 b(HTTPD)e(\(Socket\))f([)k(])f({Cactus})0
+4615 y(CactusConnect/HT)o(TPD)o(Ex)o(tr)o(a)474 b(#)43
+b(http_utils)c(\(httpd,IO\))h([)j(])g({)g(})0 4715 y(CactusConnect/So)o
+(cke)o(t)648 b(#)43 b(Socket)e(\()i(\))g([)g(])g({)h(})0
+4814 y(#CactusExternal/)o(Fle)o(xI)o(O)604 b(#)43 b(FlexIO)e(\()j(\))f
+([)g(])g({)g(})0 4914 y(CactusExternal/j)o(peg)o(6b)604
+b(#)43 b(jpeg6b)e(\()i(\))g([)g(])g({)h(})0 5014 y(CactusIO/IOJpeg)866
+b(#)43 b(IOJpeg)e(\(IO,Hyperslab,jp)o(eg)o(6b\))c([)43
+b(])g({IO})0 5113 y(CactusUtils/NaNC)o(hec)o(ke)o(r)561
+b(#)43 b(NaNChecker)c(\()k(\))g([)h(])f({)g(})0 5213
+y(CactusWave/IDSca)o(lar)o(Wa)o(ve)517 b(#)43 b(idscalarwave)38
+b(\(wavetoy,grid\))g([)43 b(])g({grid})0 5313 y(CactusWave/IDSca)o(lar)
+o(Wa)o(ve)o(C)474 b(#)43 b(idscalarwave)38 b(\(wavetoy,grid\))g([)43
+b(])g({grid})0 5412 y(CactusWave/IDSca)o(lar)o(Wa)o(ve)o(CXX)386
+b(#)43 b(idscalarwave)38 b(\(wavetoy,grid\))g([)43 b(])g({grid})0
+5512 y(#CactusWave/IDSc)o(ala)o(rW)o(av)o(eEl)o(li)o(pti)o(c)168
+b(#)43 b(idscalarwaveellip)o(ti)o(c)38 b(\(grid,wavetoy,e)o(llb)o(as)o
+(e\))f([)43 b(])g({idscalarwave})0 5611 y(CactusWave/WaveB)o(ina)o(ry)o
+(So)o(urc)o(e)343 b(#)43 b(binarysource)38 b(\(wavetoy,grid,ids)o(ca)o
+(lar)o(wa)o(ve\))f([)43 b(])g({)g(})0 5711 y(CactusWave/WaveT)o(oyC)691
+b(#)43 b(wavetoy)d(\(Grid,Boundary\))e([)43 b(])g({)g(})1869
+5989 y Fk(4)p eop end
+%%Page: 5 5
+TeXDict begin 5 4 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.5) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 291 x Fh(CactusWave/WaveT)o(oyC)o(XX)
+604 b(#)43 b(wavetoy)d(\(Grid,Boundary\))e([)43 b(])g({)g(})0
+254 y(CactusWave/WaveT)o(oyF)o(77)604 b(#)43 b(wavetoy)d
+(\(Grid,Boundary\))e([)43 b(])g({)g(})0 353 y(#CactusWave/Wave)o(Toy)o
+(F9)o(0)604 b(#)43 b(wavetoy)e(\(Grid,Boundary\))c([)44
+b(])f({)g(})0 453 y(#CactusWave/Wave)o(Toy)o(Fr)o(ee)o(F90)429
+b(#)43 b(wavetoy)e(\(Grid,Boundary\))c([)44 b(])f({)g(})0
+552 y(Carpet/Carpet)954 b(#)43 b(driver)e(\(CarpetLib\))e([)k(])g
+({Cactus,IO})0 652 y(Carpet/CarpetIOA)o(SCI)o(I)648 b(#)43
+b(IOASCII)d(\(CarpetLib,driver)o(,Hy)o(pe)o(rs)o(lab)o(\))d([)44
+b(])f({IO})0 752 y(Carpet/CarpetIOF)o(lex)o(IO)604 b(#)43
+b(IOFlexIO)d(\(CarpetLib,drive)o(r,H)o(yp)o(er)o(sla)o(b\))d([)43
+b(])g({IO})0 851 y(#Carpet/CarpetIO)o(HDF)o(5)691 b(#)43
+b(IOHDF5)e(\(CarpetLib,driver)o(,Hy)o(pe)o(rs)o(lab)o(\))c([)44
+b(])f({IO})0 951 y(#Carpet/CarpetIO)o(Ser)734 b(#)43
+b(IOSer)f(\(CarpetLib,drive)o(r,)o(Hyp)o(er)o(sl)o(ab\))37
+b([)43 b(])g({IO})0 1051 y(Carpet/CarpetLib)822 b(#)43
+b(CarpetLib)d(\()j(\))g([)g(])g({)g(})0 1150 y(Carpet/CarpetRed)o(uce)
+691 b(#)43 b(reduce)e(\(CarpetLib,drive)o(r\))c([)43
+b(])g({)g(})0 1250 y(Carpet/CarpetReg)o(rid)691 b(#)43
+b(CarpetRegrid)38 b(\(CarpetLib,driver)o(\))f([)44 b(])f({)g(})0
+1349 y(Carpet/CarpetSla)o(b)779 b(#)43 b(Hyperslab)d(\(CarpetLib,driv)o
+(er\))d([)43 b(])g({)g(})125 1549 y Fk(The)21 b(thorns)h(pre\014xed)f
+(with)h Fh(#)g Fk(are)f(disabled.)35 b(IO)n(ASCI)r(I)21
+b(con\015icts)h(with)g(Carp)r(etIO)n(ASCI)r(I,)g(and)f(FlexIO)h
+(con\015icts)0 1648 y(with)36 b(the)f(external)g(FlexIO)f(library)g
+(that)i(Carp)r(etIOFlexIO)d(uses.)60 b(I)35 b(disabled)g(IDScalarW)-7
+b(a)n(v)n(eElliptic)33 b(b)r(ecause)0 1748 y(there)24
+b(is)h(no)f(elliptic)h(solv)n(er)e(for)h(mesh)h(re\014nemen)n(t,)g(and)
+f(I)h(disabled)f(W)-7 b(a)n(v)n(eT)g(o)n(yF90)22 b(and)i(W)-7
+b(a)n(v)n(eT)g(o)n(yF)g(reeF90)22 b(b)r(ecause)0 1848
+y(gcc)28 b(do)r(es)g(not)h(con)n(tain)e(a)i(F)-7 b(ortran)27
+b(90)h(compiler.)39 b(Carp)r(etIOHDF5)28 b(is)g(not)h(y)n(et)f
+(\014nished,)h(and)f(Carp)r(etIOSer)g(needs)0 1947 y(the)g(Ser)f
+(library)f(whic)n(h)i(is)f(not)h(publically)g(a)n(v)-5
+b(ailable.)125 2063 y(The)33 b(CactusConnect,)i(CactusExternal,)f
+(CactusIO,)f(and)g(CactusUtils)h(thorns)f(are)g(not)h(necessary)-7
+b(,)33 b(but)i(are)0 2163 y(nice)28 b(to)f(ha)n(v)n(e)g(around.)35
+b(Y)-7 b(ou)28 b(can)f(safely)g(omit)h(these.)0 2304
+y
+SDict begin H.S end
+ 0 2304 a 0 2304 a
+SDict begin 12 H.A end
+ 0 2304 a 0 2304 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.4) cvn H.B /DEST pdfmark
+end
+ 0 2304 a 150 x
+Fm(4)135 b(Running)44 b(The)h(Example)h(Applications)0
+2653 y Fk(Although)32 b(Carp)r(et)f(w)n(orks)f(\014ne)i(with)g(the)g
+(standard)e(W)-7 b(a)n(v)n(eT)g(o)n(y)30 b(thorns,)i(all)g(the)g
+(example)f(parameter)f(\014les)h(in)h(the)0 2752 y(CactusW)-7
+b(a)n(v)n(e)26 b(arrangemen)n(t)g(use)h(PUGH,)h(and)f(can)h(therefore)e
+(not)i(b)r(e)g(directly)f(used.)125 2869 y(The)c(co)r(ordinate)f(thorn)
+g(CactusBase/CartGrid3D)f(do)r(es)i(not)g(pro)n(vide)f(p)r(erio)r(dic)h
+(b)r(oundary)f(conditions.)35 b(These)0 2968 y(are)18
+b(normally)f(pro)n(vided)h(b)n(y)h(the)g(driv)n(er)e(PUGH.)i(Ho)n(w)n
+(ev)n(er,)g(Carp)r(et)f(do)r(es)h(not)g(con)n(tain)f(an)n(y)g(b)r
+(oundary)g(conditions.)33 b(If)0 3068 y(y)n(ou)20 b(w)n(an)n(t)g(to)g
+(apply)g(p)r(erio)r(dic)h(b)r(oundaries,)g(y)n(ou)e(will)i(therefore)f
+(ha)n(v)n(e)f(to)h(use)h(the)g(AlphaThorns/Cart3d)d(co)r(ordinate)0
+3167 y(thorn)26 b(instead,)h(whic)n(h)f(do)r(es)g(pro)n(vide)f(p)r
+(erio)r(dicit)n(y)-7 b(.)37 b(Unfortunately)-7 b(,)26
+b(AlphaThorns/Cart3d)e(is)j(incompatible)f(with)0 3267
+y(CactusBase/CartGrid3D.)17 b(There)h(is)i(a)f(v)n(ersion)e(of)j(W)-7
+b(a)n(v)n(eT)g(o)n(y)17 b(in)j(the)g(Carp)r(et)f(arrangemen)n(t)e(that)
+i(has)g(b)r(een)h(adapted)0 3367 y(to)30 b(AlphaThorns/Cart3d.)41
+b(I)29 b(suggest)g(that)h(y)n(ou)f(use)h(this)g(v)n(ersion)e(of)i(W)-7
+b(a)n(v)n(eT)g(o)n(y)27 b(instead)j(of)g(CactusW)-7 b(a)n(v)n(e)28
+b(to)i(run)0 3466 y(test)e(problems,)f(b)r(ecause)g(p)r(erio)r(dicit)n
+(y)g(mak)n(es)g(for)g(nice)h(testing)f(setups.)125 3583
+y(Y)-7 b(ou)30 b(can)f(\014nd)i(quite)f(a)g(few)g(example)f(parameter)g
+(\014les)h(in)g(the)g(directory)g Fh(Carpet/WaveToyF77)o(/p)o(ar)p
+Fk(.)38 b(I)30 b(esp)r(e-)0 3682 y(cially)i(recommend)f(the)i
+Fh(wavetoyf77)p 1264 3682 27 4 v 27 w(periodic)p 1643
+3682 V 28 w(*)f Fk(set,)h(whic)n(h)f(comes)g(in)g(t)n(w)n(o)f(sizes)h
+(\()p Fh(coarse)e Fk(and)i Fh(fine)p Fk(,)g(corre-)0
+3782 y(sp)r(onding)26 b(to)g(a)g(small)g(and)g(a)g(large)f(sim)n
+(ulation)h(domain\))g(and)g(three)g(di\013eren)n(t)g(re\014nemen)n(t)g
+(hierarc)n(hies)f(\(with)i(one,)0 3881 y(t)n(w)n(o,)37
+b(and)e(three)h(lev)n(el)f(altogether,)h(resp)r(ectiv)n(ely\).)60
+b(This)36 b(set)f(th)n(us)h(forms)f(a)g(con)n(v)n(ergence)e(test,)38
+b(whic)n(h)d(y)n(ou)g(can)0 3981 y(run)26 b(and)f(test)i(y)n(ourself.)
+35 b(The)26 b(set)g Fh(wavetoyf77)p 1552 3981 V 27 w(rad)p
+1711 3981 V 30 w(full)p 1917 3981 V 30 w(*)f Fk(uses)h(radiativ)n(e)e
+(instead)i(of)g(p)r(erio)r(dic)g(b)r(oundaries)f(and)0
+4081 y(should)h(also)f(b)r(e)i(nice)g(to)f(lo)r(ok)g(at.)36
+b(The)26 b(\014le)h Fh(wavetoyf77)p 1868 4081 V 27 w(rad)p
+2027 4081 V 30 w(automatic.par)21 b Fk(is)27 b(an)f(attempt)h(at)f
+(adaptiv)n(e)g(mesh)0 4180 y(re\014nemen)n(t,)h(whic)n(h)h(ma)n(y)f(or)
+g(ma)n(y)f(not)i(w)n(ork,)e(dep)r(ending)i(on)g(the)g(curren)n(t)e
+(status)i(of)f(Carp)r(et.)125 4297 y(Second)34 b(order)g(con)n(v)n
+(ergence)f(requires)h(second)g(order)g(in)n(terp)r(olation)g(in)h
+(time,)j(whic)n(h)d(requires)f(that)h(at)g(least)0 4396
+y(three)27 b(time)i(lev)n(els)d(are)h(presen)n(t.)0 4537
+y
+SDict begin H.S end
+ 0 4537 a 0 4537 a
+SDict begin 12 H.A end
+ 0 4537 a 0 4537 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.5) cvn H.B /DEST pdfmark
+end
+ 0 4537 a 150 x
+Fm(5)135 b(F)-11 b(old)44 b(Y)-11 b(our)44 b(Own)h(FMR)f(Application)0
+4886 y Fk(There)33 b(are)f(three)h(steps)g(to)g(tak)n(e)f(from)h(a)f
+(simple)i(unigrid)e(unipro)r(cessor)g(to)n(y)g(application)h(to)f(a)h
+(full-blo)n(wn)g(FMR)0 4985 y(m)n(ultipro)r(cessor)27
+b(pro)r(duction)h(application.)38 b(Those)28 b(steps)g(are)g(almost)g
+(indep)r(enden)n(t,)h(and)f(I)h(w)n(ould)f(lik)n(e)g(to)g(explain)0
+5085 y(them)g(and)g(their)f(implications)g(in)h(some)f(detail)h(b)r
+(elo)n(w.)0 5217 y
+SDict begin H.S end
+ 0 5217 a 0 5217 a
+SDict begin 12 H.A end
+ 0 5217 a 0 5217
+a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.5.1) cvn H.B /DEST
+pdfmark end
+ 0 5217 a 117 x Fl(5.1)112 b(Multiple)39 b(Pro)s(cessors)0
+5504 y Fk(The)29 b(probably)f(b)r(est)i(kno)n(wn)f(of)g(these)g(is)g
+(the)h(step)f(from)g(using)g(one)g(to)g(using)g(sev)n(eral)e(pro)r
+(cessors,)h(also)g(kno)n(wn)g(as)0 5604 y(parallelisation.)35
+b(Because)27 b(man)n(y)g(p)r(eople)g(are)g(already)f(familiar)h(with)h
+(this)g(step,)g(I)f(will)h(describ)r(e)f(it)h(\014rst.)1869
+5989 y(5)p eop end
+%%Page: 6 6
+TeXDict begin 6 5 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.6) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 125 154 a Fk(In)28
+b(a)g(unipro)r(cessor)e(application,)i(it)g(is)g(p)r(ossible)g(to)g
+(access)f(ev)n(ery)g(grid)g(p)r(oin)n(t)h(in)h(arbitrary)d(manners.)38
+b(In)28 b(order)0 254 y(to)d(allo)n(w)f(m)n(ultiple)h(pro)r(cessors)e
+(to)i(run)f(e\016cien)n(tly)h(in)h(parallel,)e(the)h(grid)g(is)f(brok)n
+(en)g(do)n(wn)h(in)n(to)f(sev)n(eral)g(rectangular)0
+353 y(comp)r(onen)n(ts,)j(and)h(eac)n(h)e(pro)r(cessor)g(is)h(assigned)
+g(one)g(of)g(these)h(comp)r(onen)n(ts.)125 469 y(The)41
+b(comp)r(onen)n(ts)g(will)g(usually)g(o)n(v)n(erlap)e(b)n(y)i(a)g(few)g
+(grid)g(p)r(oin)n(ts,)j(so)d(as)f(to)h(allo)n(w)f(the)i(pro)r(cessors)d
+(to)i(e.g.)0 569 y(calculate)24 b(spatial)h(deriv)-5
+b(ativ)n(es)24 b(\(whic)n(h)h(require)f(neigh)n(b)r(ouring)g(grid)g(p)r
+(oin)n(ts\))h(without)h(ha)n(ving)e(to)h(comm)n(unicate)f(for)0
+669 y(ev)n(ery)j(grid)h(p)r(oin)n(t.)40 b(F)-7 b(rom)29
+b(time)g(to)f(time)h(it)g(is)g(then)g(necessary)e(to)h(sync)n(hronise)f
+(the)i(o)n(v)n(erlapping)e(region,)g(whic)n(h)i(is)0
+768 y(the)i(only)g(time)g(at)f(whic)n(h)h(comm)n(unication)f(happ)r
+(ens.)47 b(This)30 b(allo)n(ws)g(the)h(application)f(to)h(run)f(almost)
+g(unc)n(hanged,)0 868 y(i.e.)k(without)f(in)n(v)n(oking)f(comm)n
+(unication)h(itself.)55 b(The)33 b(sync)n(hronisation)e(routine)i(is)h
+(pro)n(vided)e(b)n(y)h(the)h(driv)n(er)e(and)0 968 y(not)c(b)n(y)f(the)
+h(application.)125 1084 y(Of)g(course)g(a)g(serial)f(applicate)h
+(usually)g(will)h(ha)n(v)n(e)f(to)g(b)r(e)h(c)n(hanged)f(to)g(supp)r
+(ort)h(m)n(ultiple)g(pro)r(cessors.)37 b(In)29 b(order)0
+1183 y(to)d(do)g(so,)g(all)f(the)i(op)r(erations)e(that)h(the)g
+(application)g(p)r(erforms)f(ha)n(v)n(e)g(to)h(b)r(e)g(classi\014ed)g
+(in)n(to)g(one)f(of)h(t)n(w)n(o)g(categories:)125 1300
+y(One)19 b(category)g(con)n(tains)g(the)i(so-called)e
+Fj(lo)l(c)l(al)30 b Fk(op)r(erations.)j(These)20 b(are)f(op)r(erations)
+g(that)i(are)e(applied)h(to)g(eac)n(h)g(and)0 1399 y(ev)n(ery)25
+b(grid)h(p)r(oin)n(t)h(individually)-7 b(,)26 b(and)h(that)f(do)h(not)f
+(dep)r(end)h(on)f(an)n(y)g(other)g(grid)f(p)r(oin)n(t)i(except)g(nearb)
+n(y)e(neigh)n(b)r(ours.)0 1499 y(Eac)n(h)18 b(lo)r(cal)g(op)r(eration)g
+(will)h(th)n(us)g(in)n(v)n(olv)n(e)f(a)g(lo)r(op)h(o)n(v)n(er)e(all)i
+(grid)f(p)r(oin)n(ts,)i(and)f(in)h(order)d(to)i(run)g(on)f(m)n(ultiple)
+i(pro)r(cessors,)0 1599 y(after)25 b(eac)n(h)g(suc)n(h)h(lo)r(op)f(the)
+h(sync)n(hronisation)e(routine)h(has)g(to)h(b)r(e)g(called.)36
+b(An)26 b(example)f(of)h(a)f(lo)r(cal)g(op)r(eration)g(w)n(ould)0
+1698 y(b)r(e)j(calculating)f(a)g(spatial)g(deriv)-5 b(ativ)n(e.)125
+1814 y(The)21 b(other)g(category)e(con)n(tains)i(so-called)f
+Fj(glob)l(al)32 b Fk(op)r(erations.)h(These)21 b(op)r(erations)f(do)i
+(not)f(dep)r(end)h(on)f(individual)0 1914 y(grid)h(p)r(oin)n(ts,)h(and)
+f(th)n(us)h(do)f(not)g(in)n(v)n(olv)n(e)f(lo)r(ops)h(o)n(v)n(er)f(grid)
+g(p)r(oin)n(ts.)35 b(The)23 b(result)f(of)g(a)g(global)g(op)r(eration)f
+(is)h(the)h(same)f(on)0 2014 y(all)f(pro)r(cessors;)f(therefore)g
+(global)g(op)r(erations)g(don't)h(in)n(v)n(olv)n(e)e(comm)n(unication)h
+(and)h(don't)g(require)f(sync)n(hronisation.)0 2113 y(An)30
+b(example)f(of)h(a)f(global)g(op)r(eration)f(w)n(ould)i(b)r(e)g(to)f(c)
+n(hec)n(k)g(ho)n(w)g(man)n(y)g(time)h(steps)g(ha)n(v)n(e)e(b)r(een)i
+(tak)n(en,)g(and)g(decide)0 2213 y(whether)d(the)h(sim)n(ulation)g
+(should)f(b)r(e)h(terminated.)125 2329 y(T)n(ypically)19
+b(most)h(op)r(erations)g(can)g(b)r(e)h(classi\014ed)e(or)h(rewritten)g
+(to)h(b)r(e)f(either)h(lo)r(cal)f(or)f(global.)34 b(But)21
+b(often)f(there)h(are)0 2429 y(op)r(erations)h(that)i(\014t)g(neither)g
+(category)-7 b(,)22 b(and)i(these)f(parts)g(of)g(an)h(application)f
+(are)f(hardest)h(to)g(parallelise.)34 b(Applying)0 2528
+y(the)25 b(b)r(oundary)f(conditions,)g(to)h(giv)n(e)e(another)h
+(example,)g(migh)n(t)h(seem)f(at)g(\014rst)g(to)h(b)r(e)g(neither)f(lo)
+r(cal)g(nor)g(global.)34 b(But)0 2628 y(in)28 b(a)f(sligh)n(t)h(\(y)n
+(et)g(completely)f(correct\))g(stretc)n(h)g(of)h(the)g(term)g("applied)
+f(to)h(all)g(grid)f(p)r(oin)n(ts",)g(b)r(oundary)g(conditions)0
+2728 y(can)g(b)r(e)h(classi\014ed)f(as)g(lo)r(cal;)g(they)h(are)e(a)i
+(lo)r(cal)f(op)r(eration)f(that)i(just)g(do)r(es)g(nothing)f(to)g(most)
+h(grid)f(p)r(oin)n(ts.)125 2844 y(T)-7 b(o)18 b(giv)n(e)h(one)g(more)f
+(example,)j(calculating)d(an)h(error)f(norm)g(do)r(es)h(not)g(\014t)h
+(these)g(categories.)32 b(It)19 b(is)g(neither)h(lo)r(cal)e(nor)0
+2944 y(global.)33 b(It)19 b(is)f(not)h(lo)r(cal)f(b)r(ecause)h(the)g
+(results)f(in)n(v)n(olv)n(ed)f(all)h(grid)g(p)r(oin)n(ts)h(\(and)g(not)
+g(only)f(nearb)n(y)f(neigh)n(b)r(ours\),)j(and)f(it)g(is)0
+3043 y(not)25 b(global)f(b)r(ecause)h(it)h(do)r(es)f(in)n(v)n(olv)n(e)f
+(the)h(grid)g(p)r(oin)n(ts.)36 b(All)26 b(op)r(erations)e(that)h(do)g
+(not)g(\014t)h(the)g(t)n(w)n(o)e(category)g(require)0
+3143 y(t)n(ypically)39 b(sp)r(ecial)h(handling,)j(and)d(often)g
+(require)f(hand-co)r(ded)g(comm)n(unication)g(in)i(the)f(application.)
+73 b(Luc)n(kily)0 3242 y(calculating)25 b(v)-5 b(arious)25
+b(norms)g(is)h(suc)n(h)f(a)h(common)f(case)g(that)i(there)e(are)g(sp)r
+(ecial)h(routines)f(for)h(that)g(already)e(presen)n(t,)0
+3342 y(called)j Fj(r)l(e)l(duction)j(op)l(er)l(ators)p
+Fk(.)0 3474 y
+SDict begin H.S end
+ 0 3474 a 0 3474 a
+SDict begin 12 H.A end
+ 0 3474 a 0 3474 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.5.2) cvn H.B /DEST
+pdfmark end
+ 0 3474
+a 117 x Fl(5.2)112 b(Multiple)39 b(Resolution)e(Lev)m(els)0
+3761 y Fk(There)25 b(are)f(sev)n(eral)g(reasons)g(wh)n(y)h(an)g
+(application)g(migh)n(t)g(w)n(an)n(t)g(to)g(incorp)r(orate)f(more)h
+(than)h(one)f(grid,)g(o)n(v)n(erlapping)0 3861 y(and)i(eac)n(h)g(with)h
+(a)g(di\013eren)n(t)f(resolution.)125 3977 y(The)k(most)h(commonly)f
+(kno)n(wn)g(reason)f(is)h(probably)g(a)g(con)n(v)n(ergence)f(test,)j
+(where)e(the)h(v)n(ery)e(same)i(problem)f(is)0 4076 y(treated)e(in)g
+(di\013eren)n(t)g(resolutions.)40 b(Di\013erences)29
+b(in)h(the)f(result)g(are)f(then)i(lik)n(ely)e(caused)h(b)n(y)f
+(insu\016cien)n(t)i(resolution)0 4176 y(on)24 b(the)h(coarser)d(\(or)h
+(on)h(all\))h(grids.)34 b(F)-7 b(or)24 b(a)g(con)n(v)n(ergence)e(test,)
+j(the)g(grids)e(are)g(completely)h(indep)r(enden)n(t,)i(and)e(it)h(do)r
+(es)0 4276 y(not)i(matter)f(whether)h(the)g(sim)n(ulation)g(runs)f(on)h
+(all)f(grids)g(sim)n(ultaneously)g(or)g(sequen)n(tially)-7
+b(.)36 b(In)27 b(order)e(to)i(treat)f(the)0 4375 y(grid)h(sequen)n
+(tially)-7 b(,)27 b(the)h(application)f(do)r(es)g(not)h(ha)n(v)n(e)e
+(to)h(b)r(e)h(c)n(hanged)f(at)h(all.)125 4491 y(The)35
+b(reason)g(of)g(in)n(terest)h(here)f(is)h(of)g(course)e(FMR.)j(F)-7
+b(or)35 b(FMR,)h(the)h(order)d(in)i(whic)n(h)g(the)g(grids)f(are)g
+(treated)0 4591 y(is)d(\014xed.)52 b(As)33 b(describ)r(ed)f(ab)r(o)n(v)
+n(e,)h(there)f(is)h(\014rst)f(a)g(time)h(step)g(on)f(the)h(coarse)e
+(grid,)i(and)g(then)g(recursiv)n(ely)d(sev)n(eral)0 4691
+y(smaller)24 b(steps)g(on)g(the)h(\014ner)f(grids.)35
+b(This)25 b(order)e(do)r(es)h(require)g(certain)g(c)n(hanges)f(in)h
+(the)h(application.)36 b(The)24 b(sequence)0 4790 y(of)j(op)r(erations)
+e(that)i(form)g(a)f(single)g(time)h(step)g(ha)n(v)n(e)f(to)h(b)r(e)g
+(iden)n(ti\014ed)g(and)g(isolated.)35 b(\(Whic)n(h)28
+b(is)f(to)f(sa)n(y)g(that)h(there)0 4890 y(has)32 b(to)h(b)r(e)g(a)g
+(routine)f(that)h(calculates)f(a)g(time)i(step,)g(that)f(is,)h(a)e
+(complete)h(time)h(step,)g(and)e(nothing)h(else.\))53
+b(It)33 b(is)0 4990 y(then)28 b(the)g(task)f(of)h(the)g(FMR)g(driv)n
+(er)e(to)i(call)f(this)h(routine)f(for)g(the)h(correct)e(grids)h(in)h
+(the)g(correct)e(order.)125 5106 y(Other)g(reasons)g(for)h(m)n(ultiple)
+h(resolution)e(lev)n(els)h(are)f(e.g.)h(m)n(ultigrid)g(algorithms)f
+(for)h(elliptic)h(equations,)f(whic)n(h)0 5205 y(I)i(do)g(not)h(w)n(an)
+n(t)e(to)i(men)n(tion)f(here,)g(or)g(shado)n(w)f(hierarc)n(hies)f(to)i
+(determine)h(truncation)f(errors,)e(whic)n(h)j(I)f(also)f(w)n(an)n(t)0
+5305 y(to)f(skip)h(here.)36 b(Shado)n(w)27 b(hierarc)n(hies)f(are)g(v)n
+(ery)h(similar)g(to)g(the)h(con)n(v)n(ergence)d(lev)n(els)i(describ)r
+(ed)g(ab)r(o)n(v)n(e.)125 5421 y(Apart)33 b(from)g(this)h(order)e(in)i
+(whic)n(h)g(the)g(op)r(erations)e(are)h(p)r(erformed)g(on)g(the)h
+(grids,)g(there)g(is)f(one)g(more)g(com-)0 5521 y(plication)d(for)g
+(FMR.)i(The)e(b)r(oundary)g(v)-5 b(alues)30 b(of)h(the)g(\014ner)f
+(grids)g(ha)n(v)n(e)f(to)i(b)r(e)g(calculated)f(from)g(the)h(coarser)e
+(grids)0 5621 y(through)j(in)n(terp)r(olation.)53 b(An)33
+b(b)r(ecause)g(the)h(time)f(steps)g(on)g(the)g(\014ner)g(grids)f(are)g
+(smaller,)i(there)f(is)g(not)g(alw)n(a)n(ys)e(a)0 5720
+y(corresp)r(onding)20 b(v)-5 b(alue)22 b(on)g(the)h(coarser)d(grids)h
+(a)n(v)-5 b(ailable.)34 b(This)22 b(mak)n(es)f(it)i(necessary)e(to)h
+(in)n(terp)r(olate)f(in)i(time)g(b)r(et)n(w)n(een)1869
+5989 y(6)p eop end
+%%Page: 7 7
+TeXDict begin 7 6 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.7) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 291 x Fk(time)27 b(steps)g(on)g(the)g
+(coarser)d(grids.)36 b(The)27 b(alternativ)n(e)e(w)n(ould)i(b)r(e)g(to)
+g(tak)n(e)f(smaller)g(steps)g(on)h(the)g(coarser)e(grids,)h(and)0
+254 y(this)i(w)n(ould)f(b)r(e)h(v)n(ery)e(exp)r(ensiv)n(e.)125
+370 y(These)33 b(in)n(terp)r(olations)g(in)i(time)f(mak)n(e)f(it)i
+(necessary)d(that)i(the)h(driv)n(er)e(kno)n(ws)g(whic)n(h)h(grid)f
+(function)i(con)n(tains)0 469 y(v)-5 b(alues)28 b(corresp)r(onding)e
+(to)i(what)g(time.)39 b(The)29 b(usual)e(w)n(a)n(y)g(to)h(ac)n(hiev)n
+(e)f(this)i(is)f(to)g(ha)n(v)n(e)f(sev)n(eral)f(time)j(lev)n(els)e(p)r
+(er)h(grid)0 569 y(function;)d(three)d(time)g(lev)n(els)g(allo)n(w)f
+(for)g(a)h(second)g(order)e(in)n(terp)r(olation)i(in)g(time.)36
+b(Only)22 b(grid)f(functions)i(with)f(enough)0 669 y(time)28
+b(lev)n(els)f(can)g(b)r(e)h(in)n(terp)r(olated,)f(i.e.)h(b)r(oundary)f
+(conditions)g(can)g(b)r(e)h(calculated)f(only)g(for)h(those.)125
+785 y(F)-7 b(ortunately)21 b(time)h(lev)n(els)e(are)h(rather)f
+(widespread)h(in)h(applications,)f(so)g(they)h(are)e(no)i(new)f
+(concept)h(to)f(in)n(tro)r(duce.)0 885 y(Unfortunately)j(they)h(are)e
+(often)i(abused,)f(so)g(that)h(v)-5 b(alues)24 b(corresp)r(onding)e(to)
+i(the)h(wrong)e(time)i(are)e(stored)h(in)g(a)g(time)0
+984 y(lev)n(el,)33 b(usually)f(with)g(the)h(excuse)f(of)g(sa)n(ving)e
+(storage.)49 b(This)32 b(will)h(in)f(general)f(not)h(w)n(ork)f(with)i
+(FMR,)f(b)r(ecause)g(the)0 1084 y(driv)n(er)26 b(then)i(cannot)g(in)n
+(terp)r(olate)e(in)i(time,)h(leading)d(to)i(incorrect)e(v)-5
+b(alues)28 b(on)f(the)h(b)r(oundaries)f(of)g(the)h(\014ner)f(grids.)0
+1216 y
+SDict begin H.S end
+ 0 1216 a 0 1216 a
+SDict begin 12 H.A end
+ 0 1216 a 0 1216 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.5.3) cvn H.B /DEST
+pdfmark end
+ 0 1216 a 117
+x Fl(5.3)112 b(Multiple)39 b(Grid)e(Comp)s(onen)m(ts)0
+1503 y Fk(Sometimes)24 b(it)h(is)f(con)n(v)n(enien)n(t)f(to)h(ha)n(v)n
+(e)f(a)g(sim)n(ulation)h(domain)f(that)i(is)f(not)g(a)g(rectangle.)34
+b(It)25 b(migh)n(t)f(instead)g(b)r(e)g(an)g(L-)0 1602
+y(shap)r(ed)h(sim)n(ulation)g(domain,)h(or)e(a)h(domain)g(that)h
+(consists)e(of)i(t)n(w)n(o)e(disconnected)i(rectangular)d(regions.)35
+b(This)25 b(issue)0 1702 y(b)r(ecomes)33 b(more)g(imp)r(ortan)n(t)g
+(with)h(FMR,)h(b)r(ecause)e(there)g(it)h(is)g(often)g(con)n(v)n(enien)n
+(t)e(to)i(ha)n(v)n(e)e(sev)n(eral)g(disconnected)0 1802
+y(re\014ned)24 b(regions.)35 b(As)25 b(long)f(as)g(there)g(are)g
+(enough)g(pro)r(cessors)e(a)n(v)-5 b(ailable,)24 b(eac)n(h)g(pro)r
+(cessor)f(can)h(b)r(e)h(assigned)f(a)g(region)0 1901
+y(or)29 b(a)g(part)g(thereof,)h(and)g(no)f(new)h(concept)g(need)g(b)r
+(e)g(in)n(tro)r(duced.)43 b(If,)31 b(ho)n(w)n(ev)n(er,)d(there)h(are)g
+(few)n(er)g(pro)r(cessors)e(than)0 2001 y(regions,)f(then)i(a)f(new)h
+(problem)f(arises.)125 2117 y(A)38 b(common)h(case)e(for)h(that)h
+(problem)f(migh)n(t)h(b)r(e)g(a)f(sim)n(ulation)g(con)n(taining)g(just)
+h(t)n(w)n(o)f(re\014ned)g(regions,)i(and)0 2217 y(running)25
+b(on)h(a)f(single)g(pro)r(cessor.)34 b(The)26 b(re\014ned)f(grid)g(the)
+h(consists)f(of)h(t)n(w)n(o)f(comp)r(onen)n(t.)36 b(The)25
+b(problem)h(then)g(is)f(that)0 2316 y(the)g(t)n(w)n(o)f(comp)r(onen)n
+(ts)g(cannot)g(b)r(e)h(treated)g(sequen)n(tially:)34
+b(Imagine)24 b(the)h(time)h(ev)n(olution)e(routine)g(w)n(orking)f(on)h
+(\(sa)n(y\))0 2416 y(the)d(\014rst)f(comp)r(onen)n(t.)35
+b(It)21 b(will)f(at)h(some)f(time)h(call)f(the)h(sync)n(hronisation)e
+(routine.)34 b(A)n(t)21 b(that)g(time)g(there)f(are)g(no)g(v)-5
+b(alues)0 2516 y(from)23 b(the)h(second)e(comp)r(onen)n(t)h(a)n(v)-5
+b(ailable,)23 b(b)r(ecause)g(the)h(second)f(comp)r(onen)n(t)g(has)g
+(not)g(b)r(een)h(treated)f(y)n(et.)35 b(Therefore)0 2615
+y(the)25 b(sync)n(hronisation)d(routine)i(cannot)g(complete.)36
+b(That)25 b(means)f(in)g(turn)h(that)g(the)f(time)h(ev)n(olution)f
+(routine)g(cannot)0 2715 y(complete)35 b(w)n(orking)e(on)h(the)h
+(\014rst)g(comp)r(onen)n(t,)h(leading)e(to)h(a)f(deadlo)r(c)n(k.)57
+b(W)-7 b(ork)34 b(on)h(neither)f(comp)r(onen)n(t)h(can)f(b)r(e)0
+2814 y(completed)28 b(b)r(efore)f(w)n(ork)f(on)h(the)h(other)f(comp)r
+(onen)n(t.)125 2931 y(The)j(solution)g(is)h(to)f(break)g(up)h(the)g
+(time)g(ev)n(olution)f(routine)g(in)n(to)g(sev)n(eral)f(smaller)h
+(routines,)h(eac)n(h)e(consisting)0 3030 y(of)k(a)f(single)h(either)f
+(lo)r(cal)h(or)f(global)g(op)r(eration.)51 b(\(\\Lo)r(cal")32
+b(and)g(\\global")f(ha)n(v)n(e)h(here)g(the)i(exact)e(same)g(meanings)0
+3130 y(that)h(w)n(ere)f(de\014ned)h(ab)r(o)n(v)n(e)f(for)g
+(parallelisation.\))51 b(A)34 b(lo)r(cal)e(op)r(eration)g(w)n(orks,)g
+(b)n(y)h(de\014nition,)i(on)d(individual)h(grid)0 3230
+y(p)r(oin)n(ts.)j(Hence)26 b(the)g(lo)r(cal)g(routines)f(ha)n(v)n(e)f
+(to)i(b)r(e)g(called)g(once)f(for)g(ev)n(ery)g(grid)g(comp)r(onen)n(t.)
+36 b(A)26 b(global)f(op)r(eration,)g(b)n(y)0 3329 y(de\014nition,)j(do)
+r(es)g(not)f(dep)r(end)i(on)e(individual)h(grid)f(p)r(oin)n(ts.)38
+b(Hence)28 b(it)g(has)f(to)h(b)r(e)g(called)f(only)h(once)f(p)r(er)h
+(pro)r(cessor,)0 3429 y(and)f(not)g(once)g(p)r(er)h(comp)r(onen)n(t.)36
+b(That)27 b(means)g(that)h(the)f(driv)n(er)f(has)h(to)g(b)r(e)h(told)g
+(the)f(category)f(individual)h(routine)0 3528 y(is)g(in.)0
+3645 y
+SDict begin H.S end
+ 0 3645 a 0 3645 a
+SDict begin 12 H.A end
+ 0 3645 a 0 3645 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.5.4) cvn H.B /DEST
+pdfmark end
+ 0 3645 a 132
+x Fl(5.4)112 b(Example)0 3947 y Fk(Let)28 b(me)g(\014nish)f(this)h
+(section)f(with)i(an)e(detailed)h(example.)36 b(Supp)r(ose)28
+b(y)n(ou)e(w)n(an)n(t)h(to)h(solv)n(e)e(the)i(equation)1570
+4169 y
+SDict begin H.S end
+ 1570 4169 a 1570 4169 a
+SDict begin 12 H.A end
+ 1570 4169 a 1570 4169
+a
+SDict begin [ /View [/XYZ H.V] /Dest (equation.1) cvn H.B /DEST pdfmark
+end
+ 1570 4169 a 1595 4112 a Ff(d)p 1580 4149 74 4 v 1580
+4226 a(dt)1663 4169 y(u)83 b Fk(=)g Ff(f)9 b Fk(\()p
+Ff(u)p Fk(\))82 b Ff(;)1464 b Fk(\(1\))0 4374 y(in)n(tegrating)34
+b(using)i(the)g(midp)r(oin)n(t)g(rule,)i(i.e.)d(the)i(simplemost)e
+(second-order)e(time)k(in)n(tegration)d(sc)n(heme.)61
+b(Giv)n(en)0 4474 y(v)-5 b(alues)30 b(at)h(the)g(previous)e(time)i
+Ff(u)1074 4444 y Fe(n)p Fd(\000)p Fc(1)1204 4474 y Fk(,)h(one)e
+(\014rst)g(calculates)g(a)g(\014rst)h(order)e(solution)h(using)g(an)h
+(Euler)f(step,)h(leading)0 4574 y(to)c(the)h(in)n(termediate)g(result)
+1344 4756 y
+SDict begin H.S end
+ 1344 4756 a 1344 4756 a
+SDict begin 12 H.A end
+ 1344 4756 a 1344
+4756 a
+SDict begin [ /View [/XYZ H.V] /Dest (equation.2) cvn H.B /DEST pdfmark
+end
+ 1344 4756 a Ff(v)1387 4722 y Fe(n)1515 4756 y
+Fk(=)83 b Ff(u)1711 4722 y Fe(n)p Fd(\000)p Fc(1)1859
+4756 y Fk(+)18 b Ff(dt)23 b(f)9 b Fk(\()p Ff(u)2168 4722
+y Fe(n)p Fd(\000)p Fc(1)2298 4756 y Fk(\))83 b Ff(:)1237
+b Fk(\(2\))0 4939 y(The)28 b(second)f(and)g(\014nal)h(step)f(is)h(then)
+g(calculated)f(via)1193 5156 y
+SDict begin H.S end
+ 1193 5156 a 1193 5156
+a
+SDict begin 12 H.A end
+ 1193 5156 a 1193 5156 a
+SDict begin [ /View [/XYZ H.V] /Dest (equation.3) cvn H.B /DEST pdfmark
+end
+ 1193 5156 a Ff(u)1241 5122
+y Fe(n)1368 5156 y Fk(=)83 b Ff(u)1564 5122 y Fe(n)p
+Fd(\000)p Fc(1)1712 5156 y Fk(+)18 b Ff(dt)23 b(f)9 b
+Fk(\()1983 5100 y(1)p 1983 5137 42 4 v 1983 5213 a(2)2035
+5156 y([)p Ff(u)2106 5122 y Fe(n)p Fd(\000)p Fc(1)2254
+5156 y Fk(+)18 b Ff(v)2380 5122 y Fe(n)2425 5156 y Fk(]\))84
+b Ff(:)1086 b Fk(\(3\))125 5379 y(The)27 b(corresp)r(onding)f(pseudo)h
+(co)r(de)g(w)n(ould)h(lo)r(ok)e(lik)n(e)0 5445 y
+SDict begin H.S end
+ 0 5445
+a 0 5445 a
+SDict begin 12 H.A end
+ 0 5445 a 0 5445 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.7) cvn H.B /DEST pdfmark
+end
+ 0 5445 a 101 5561 a Fk(1.)42
+b(Calculate)27 b(Euler)f(step,)i(storing)f(the)h(result)f(in)n(to)g
+Ff(u)1866 5531 y Fe(n)0 5611 y
+SDict begin H.S end
+ 0 5611 a 0 5611 a
+SDict begin 12 H.A end
+ 0 5611
+a 0 5611 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.8) cvn H.B /DEST pdfmark
+end
+ 0 5611 a 101 5727 a Fk(2.)42 b(Apply)28 b(b)r(oundary)e
+(conditions)i(to)f Ff(u)1377 5697 y Fe(n)1869 5989 y
+Fk(7)p eop end
+%%Page: 8 8
+TeXDict begin 8 7 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.8) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 0 71 a
+SDict begin H.S end
+ 0 71 a 0 71
+a
+SDict begin 12 H.A end
+ 0 71 a 0 71 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.9) cvn H.B /DEST pdfmark
+end
+ 0 71 a 101 154 a Fk(3.)42 b(Sync)n(hronise)26
+b Ff(u)713 124 y Fe(n)0 203 y
+SDict begin H.S end
+ 0 203 a 0 203 a
+SDict begin 12 H.A end
+ 0 203 a
+0 203 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.10) cvn H.B /DEST pdfmark
+end
+ 0 203 a 101 320 a Fk(4.)42 b(Calculate)27 b(a)n(v)n(erage)d(of)
+k Ff(u)1017 290 y Fe(n)p Fd(\000)p Fc(1)1174 320 y Fk(and)g
+Ff(u)1384 290 y Fe(n)1428 320 y Fk(,)g(storing)f(the)g(result)h(in)n
+(to)f Ff(v)2342 290 y Fe(n)0 369 y
+SDict begin H.S end
+ 0 369 a 0 369 a
+SDict begin 12 H.A end
+ 0
+369 a 0 369 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.11) cvn H.B /DEST pdfmark
+end
+ 0 369 a 101 486 a Fk(5.)42 b(Calculate)27
+b(second)g(step,)g(storing)g(the)h(result)f(again)f(in)n(to)i
+Ff(u)2133 456 y Fe(n)0 535 y
+SDict begin H.S end
+ 0 535 a 0 535 a
+SDict begin 12 H.A end
+ 0 535 a
+0 535 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.12) cvn H.B /DEST pdfmark
+end
+ 0 535 a 101 652 a Fk(6.)42 b(Apply)28 b(b)r(oundary)e
+(conditions)i(again)e(to)h Ff(u)1598 622 y Fe(n)0 701
+y
+SDict begin H.S end
+ 0 701 a 0 701 a
+SDict begin 12 H.A end
+ 0 701 a 0 701 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.13) cvn H.B /DEST pdfmark
+end
+ 0 701 a 101 818 a Fk(7.)42
+b(Sync)n(hronise)26 b(again)g Ff(u)934 788 y Fe(n)125
+1001 y Fk(The)34 b(ab)r(o)n(v)n(e)f(algorithm)h(lo)r(oks)f(a)h(bit)i
+(di\013eren)n(t)e(from)g(a)h(naiv)n(e)e(implemen)n(tation)i(of)f(the)h
+(midp)r(oin)n(t)h(rule.)57 b(One)0 1100 y(di\013erence)28
+b(is)g(that)h(b)r(oth)f(the)h(\014rst)f(and)g(the)g(second)g(step)g
+(store)f(their)h(result)g(in)n(to)g Ff(u)2751 1070 y
+Fe(n)2796 1100 y Fk(.)38 b(This)29 b(is)f(necessary)e(b)r(ecause)0
+1200 y(it)e(w)n(ould)f(b)r(e)i(incon)n(v)n(enien)n(t)d(to)i(apply)f(b)r
+(oundary)g(conditions)h(to)f(the)h(in)n(termediate)g(v)-5
+b(alue)23 b Ff(v)2956 1170 y Fe(n)3002 1200 y Fk(.)35
+b(Remem)n(b)r(er,)25 b(in)f(order)0 1300 y(to)30 b(apply)g(b)r(oundary)
+g(conditions)f(on)h(the)h(\014ner)f(grids,)g(there)g(ha)n(v)n(e)f(to)h
+(b)r(e)h(sev)n(eral)e(time)h(lev)n(els)g(presen)n(t.)44
+b(With)31 b(the)0 1399 y(ab)r(o)n(v)n(e)26 b(sc)n(heme,)g(only)h
+Ff(u)g Fk(needs)g(sev)n(eral)e(time)i(lev)n(els.)36 b
+Ff(v)31 b Fk(is)c(used)g(only)f(as)h(a)f(temp)r(orary)g(\(and)h(could)g
+(conceiv)-5 b(ably)26 b(b)r(e)0 1499 y(completely)h(eliminated\).)125
+1615 y(Note)e(also)g(that)h(the)h(\014rst)e(step)h(go)r(es)f(all)h(the)
+g(w)n(a)n(y)f(from)g(time)i(lev)n(el)e Ff(n)15 b Fb(\000)f
+Fk(1)26 b(to)g(time)g(lev)n(el)f Ff(n)p Fk(.)37 b(The)25
+b(midp)r(oin)n(t)i(rule)0 1715 y(can)g(b)r(e)g(rewritten)f(\(in)i
+(fact,)f(is)g(usually)f(written\))i(so)e(that)h(the)h(\014rst)e(step)h
+(is)g(only)g(a)f(half)h(step,)h(leading)e(to)h(the)g(time)0
+1814 y(lev)n(el)j Ff(n)20 b Fb(\000)356 1782 y Fc(1)p
+356 1796 34 4 v 356 1843 a(2)400 1814 y Fk(.)44 b(This)31
+b(is)f(not)g(p)r(ossible)g(for)f(FMR,)i(b)r(ecause)f(in)n(terp)r
+(olating)f(to)h(the)h(time)g Ff(n)20 b Fb(\000)2998 1782
+y Fc(1)p 2998 1796 V 2998 1843 a(2)3071 1814 y Fk(is)30
+b(not)g(p)r(ossible,)h(and)0 1914 y(th)n(us)d(there)f(could)g(b)r(e)h
+(no)g(b)r(oundary)f(conditions)g(applied)g(after)h(the)g(\014rst)f
+(step.)125 2030 y(The)i(second)h(thing)g(to)g(note)f(is)h(that)g(the)h
+(application)e(of)h(the)g(b)r(oundary)f(condition)h(and)f(the)i(sync)n
+(hronisation)0 2130 y(ha)n(v)n(e)23 b(b)r(een)h(separated)f(rather)g
+(arti\014cially)-7 b(.)35 b(Normally)23 b(sync)n(hronisation)f(w)n
+(ould)i(b)r(e)g(considered)f(part)h(of)g(the)h(b)r(ound-)0
+2230 y(ary)k(condition.)43 b(In)30 b(this)g(case,)f(ho)n(w)n(ev)n(er,)f
+(the)j(applying)e(the)h(b)r(oundary)f(condition)g(is)h(a)f(lo)r(cal)h
+(op)r(eration,)f(whereas)0 2329 y(sync)n(hronisation)24
+b(coun)n(ts)i(as)g(global)f(op)r(eration.)35 b(\(It)27
+b(is)f(not)h(ob)n(vious)e(that)h(sync)n(hronisation)f(should)h(b)r(e)g
+(global,)g(but)0 2429 y(as)i(the)h(sync)n(hronisation)e(routine)h(is)h
+(a)f(part)g(of)h(Carp)r(et,)f(it)i(w)n(as)d(up)i(to)g(me)g(to)f(decide)
+h(this.\))41 b(As)29 b(explained)f(ab)r(o)n(v)n(e,)0
+2528 y(lo)r(cal)f(and)g(global)g(op)r(erations)f(ha)n(v)n(e)h(to)g(b)r
+(e)h(separated.)125 2645 y(Separating)35 b(the)j(ev)n(olution)e(steps)h
+(and)g(the)h(b)r(oundary)e(condition)h(routines)g(is,)j(on)c(the)i
+(other)f(hand,)i(just)f(a)0 2744 y(notational)27 b(con)n(v)n(enience.)
+35 b(There)27 b(could)h(w)n(ell)f(b)r(e)h(a)f(single)g(routine)h
+(implemen)n(ting)f(b)r(oth.)125 2861 y(F)-7 b(or)26 b(Cactus,)g(the)h
+(order)e(in)i(whic)n(h)g(to)f(call)g(the)h(individual)g(parts)f(of)h
+(the)f(time)i(ev)n(olution)d(routines)h(is)h(describ)r(ed)0
+2960 y(in)c(the)h(sc)n(hedule)e(routines,)i(i.e.)f(in)g(the)h(\014les)f
+(called)f Fh(schedule.ccl)p Fk(.)31 b(By)23 b(default)g(a)g(routine)f
+(is)h(assumed)g(to)g(b)r(e)g(lo)r(cal;)0 3060 y(global)j(routines)h(ha)
+n(v)n(e)g(to)g(b)r(e)h(tagged)f(with)h Fh(OPTIONS:)40
+b(GLOBAL)p Fk(.)125 3176 y(The)g(tag)h Fh(SYNC:)h(groupname)37
+b Fk(indicates)j(that)h(the)g(group)f Fh(groupname)d
+Fk(should)j(b)r(e)h(sync)n(hronised)e(after)h(the)0 3276
+y(sc)n(heduled)35 b(routine)h(has)f(b)r(een)h(called)f(for)h(all)f
+(grid)g(comp)r(onen)n(ts.)61 b(This)36 b(ob)n(viously)e(mak)n(es)g
+(sense)i(only)f(for)g(lo)r(cal)0 3375 y(routines.)72
+b(Using)39 b(the)h Fh(SYNC:)e Fk(tag)h(is)g(preferred)f(o)n(v)n(er)g
+(calling)h(the)h(sync)n(hronisation)d(routine)j Fh(CCTK)p
+3363 3375 27 4 v 29 w(SyncGroup)0 3475 y Fk(directly)-7
+b(.)125 3591 y(The)31 b(example)g(thorn)g(W)-7 b(a)n(v)n(eT)g(o)n(y)30
+b(in)i(Carp)r(et's)f(arrangemen)n(t)e(is)i(a)g(bit)h(simpler)f(than)h
+(what)f(is)h(describ)r(ed)f(here,)0 3691 y(b)r(ecause)k(it)i(uses)e
+(the)h(Leapfrog)f(sc)n(heme)g(whic)n(h)h(consists)f(of)h(only)f(a)h
+(single)f(step.)62 b(I)36 b(w)n(ould)f(suggest)g(lo)r(oking)g(at)0
+3790 y(W)-7 b(a)n(v)n(eT)g(o)n(y)26 b(as)h(an)g(initial)h(FMR)g
+(example.)125 3907 y(The)33 b(thorn)f(SpaceT)-7 b(o)n(y)32
+b(is)h(implemen)n(ted)h(v)n(ery)e(close)g(to)h(the)g(w)n(a)n(y)f
+(describ)r(ed)h(here.)53 b(It)33 b(ev)n(olv)n(es)f(t)n(w)n(o)g(v)-5
+b(ariables)0 4006 y(phi)36 b(and)g(psi,)i(but)e(it)h(is)e(also)g
+(coupled)h(to)g(the)g(thorn)f(HydroT)-7 b(o)n(y)g(.)60
+b(This)36 b(coupling)g(in)n(tro)r(duces)f(some)g(additional)0
+4106 y(complications.)g(The)24 b(thorn)g(HydroT)-7 b(o)n(y)g(,)23
+b(on)h(the)g(other)g(hand)g(uses)g(a)f(predictor-corrector)e(sc)n
+(heme,)j(whic)n(h)g(is)g(also)f(a)0 4205 y(t)n(w)n(o)c(step)i(sc)n
+(heme)f(and)g(th)n(us)g(more)f(complex)h(that)g(W)-7
+b(a)n(v)n(eT)g(o)n(y)g(.)33 b(All)21 b(the)f(coupling)g(b)r(et)n(w)n
+(een)g(SpaceT)-7 b(o)n(y)19 b(and)h(HydroT)-7 b(o)n(y)0
+4305 y(is)27 b(con)n(tained)g(in)h(SpaceT)-7 b(o)n(y)g(.)36
+b(I)28 b(w)n(ould)f(th)n(us)g(suggest)g(lo)r(oking)f(at)i(HydroT)-7
+b(o)n(y)26 b(\014rst.)125 4421 y(I)g(assume)g(that)g(con)n(v)n(erting)f
+(an)h(application)g(to)g(FMR)h(is)f(straigh)n(tforw)n(ard)e(after)i
+(handling)g(the)h(time)f(lev)n(els)g(has)0 4521 y(b)r(een)i(straigh)n
+(tened)e(out.)0 4662 y
+SDict begin H.S end
+ 0 4662 a 0 4662 a
+SDict begin 12 H.A end
+ 0 4662 a 0 4662
+a
+SDict begin [ /View [/XYZ H.V] /Dest (section.6) cvn H.B /DEST pdfmark
+end
+ 0 4662 a 150 x Fm(6)135 b(F)-11 b(urther)44 b(do)t(cumen)l(tation)0
+5011 y Fk(The)35 b(individual)g(thorns)g(in)g(the)g(Carp)r(et)g
+(arrangemen)n(t)e(migh)n(t)i(con)n(tain)f(further)h(do)r(cumen)n
+(tation,)i(whic)n(h)e(is)g(also)0 5110 y(a)n(v)-5 b(ailable)24
+b(in)i(the)h(thorn)e(guide.)36 b(Additionally)-7 b(,)26
+b(there)g(is)f(a)h(do)r(cumen)n(t)g Fh(internals.tex)20
+b Fk(in)26 b(the)g(arrangemen)n(t's)e(do)r(c)0 5210 y(directory)-7
+b(,)26 b(and)i(a)f(do)r(cumen)n(t)h Fh(threelev)p 1340
+5210 27 4 v 28 w(initdata.tex)23 b Fk(in)28 b(thorn)f
+Fh(Carpet)p Fk('s)e(do)r(c)i(directory)-7 b(.)0 5353
+y
+SDict begin H.S end
+ 0 5353 a 0 5353 a
+SDict begin 12 H.A end
+ 0 5353 a 0 5353 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.7) cvn H.B /DEST pdfmark
+end
+ 0 5353 a 148 x
+Fm(7)135 b(F)-11 b(requen)l(tly)45 b(Ask)l(ed)g(Questions)0
+5699 y Fk(Here)27 b(are)g(a)g(few)h(of)f(the)h(more)f(frequen)n(tly)h
+(ask)n(ed)e(questions)h(with)h(some)f(answ)n(ers.)1869
+5989 y(8)p eop end
+%%Page: 9 9
+TeXDict begin 9 8 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a 0
+-137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.9) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 0 71 a
+SDict begin H.S end
+ 0 71 a 0 71
+a
+SDict begin 12 H.A end
+ 0 71 a 0 71 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.14) cvn H.B /DEST pdfmark
+end
+ 0 71 a 101 154 a Fk(1.)42 b Fa(If)32
+b(I)g(run)g(without)f(an)m(y)i(re\014ned)f(grids,)f(wh)m(y)h(don't)g(I)
+g(get)f(the)h(same)f(results)g(as)h(with)f(PUGH?)208
+279 y Fk(There)e(are)f(t)n(w)n(o)h(p)r(ossible)h(reasons.)41
+b(The)30 b(most)f(common)g(is)h(that)g(the)g(y)n(ou)f(are)f(not)i
+(comparing)e(exactly)h(the)208 378 y(same)35 b(output.)61
+b(It)36 b(used)f(to)h(b)r(e)g(the)g(case)e(that)i(norms)f(w)n(ould)g
+(disagree)f(\(this)i(is)g(no)f(longer)f(the)i(case\).)60
+b(If)208 478 y(it)36 b(is)h(the)g(ASCI)r(I)g(output)g(that)g
+(disagress,)f(then)h(y)n(ou)f(should)g(note)h(that)f(the)h(default)g
+(output)g(format)f(for)208 577 y(Carp)r(etIO)n(ASCI)r(I)24
+b(giv)n(es)g(more)g(digits)g(than)h(CactusBase/IO)n(ASCI)r(I.)e(If)j(y)
+n(ou)e(w)n(an)n(t)g(to)h(get)f(\\iden)n(tical")g(results)208
+677 y(for)j(this)h(output,)g(try)f(setting)i Fh(IOASCII::out)p
+1735 677 27 4 v 26 w(format)41 b(=)i(".14f")p Fk(\).)208
+802 y(The)27 b(second)g(reason)f(is)i(subtle)g(di\013erences)f(are)f
+(bugs)i(in)f(the)h(implemen)n(tation.)37 b(Go)r(o)r(d)28
+b(luc)n(k)f(\014nding)h(these...)0 843 y
+SDict begin H.S end
+ 0 843 a 0 843
+a
+SDict begin 12 H.A end
+ 0 843 a 0 843 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.15) cvn H.B /DEST pdfmark
+end
+ 0 843 a 101 951 a Fk(2.)42 b Fa(I)32
+b(switc)m(h)f(on)h(a)g(re\014ned)g(grid.)42 b(Wh)m(y)32
+b(do)g(I)g(not)f(see)g(it)h(output?)42 b(Wh)m(y)33 b(is)e(the)h(output)
+g(strange?)615 2971 y @beginspecial 0 @llx 0 @lly 612
+@urx 461 @ury 3060 @rwi @setspecial
+%%BeginDocument: Grid1.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: Grid1.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3d
+%%CreationDate: Fri May 2 11:09:16 2003
+%%For: hawke@xeon06.aei-potsdam.mpg.de (Ian Hawke)
+%%BoundingBox: 0 0 612 461
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 461 moveto 0 0 lineto 612 0 lineto 612 461 lineto closepath clip newpath
+-49.5 526.5 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+7.500 slw
+n 1200 1200 m 10800 1200 l 10800 8400 l 1200 8400 l
+ cp gs col0 s gr
+% Polyline
+n 3600 1200 m
+ 3600 8400 l gs col0 s gr
+% Polyline
+n 6000 1200 m
+ 6000 8400 l gs col0 s gr
+% Polyline
+n 8400 1200 m
+ 8400 8400 l gs col0 s gr
+% Polyline
+n 1200 3600 m
+ 10800 3600 l gs col0 s gr
+% Polyline
+n 1200 6000 m
+ 10800 6000 l gs col0 s gr
+% Polyline
+15.000 slw
+ [60] 0 sd
+n 3600 3600 m 8400 3600 l 8400 6000 l 3600 6000 l
+ cp gs col1 s gr [] 0 sd
+% Polyline
+ [90] 0 sd
+n 4800 3600 m
+ 4800 6000 l gs col1 s gr [] 0 sd
+% Polyline
+ [90] 0 sd
+n 7200 3600 m
+ 7200 6000 l gs col1 s gr [] 0 sd
+% Polyline
+ [90] 0 sd
+n 6000 3600 m
+ 6000 6000 l gs col1 s gr [] 0 sd
+% Polyline
+ [90] 0 sd
+n 3600 4800 m
+ 8400 4800 l gs col1 s gr [] 0 sd
+% Polyline
+30.000 slw
+ [15 90] 90 sd
+n 6000 4800 m 7200 4800 l 7200 6000 l 6000 6000 l
+ cp gs col2 s gr [] 0 sd
+% Polyline
+ [15 90] 90 sd
+n 6600 4800 m
+ 6600 6000 l gs col2 s gr [] 0 sd
+% Polyline
+ [15 90] 90 sd
+n 6000 5400 m
+ 7200 5400 l gs col2 s gr [] 0 sd
+/Times-Roman ff 360.00 scf sf
+3525 8775 m
+gs 1 -1 sc (4) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+8250 8775 m
+gs 1 -1 sc (12) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+10650 8775 m
+gs 1 -1 sc (16) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+4725 6375 m
+gs 1 -1 sc (6) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+6525 6375 m
+gs 1 -1 sc (9) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+1125 8775 m
+gs 1 -1 sc (0) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+7125 6375 m
+gs 1 -1 sc (10) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+825 8550 m
+gs 1 -1 sc (0) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+825 6150 m
+gs 1 -1 sc (4) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+825 3750 m
+gs 1 -1 sc (8) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+825 1350 m
+gs 1 -1 sc (12) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+3300 4950 m
+gs 1 -1 sc (6) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+5700 5550 m
+gs 1 -1 sc (5) col0 sh gr
+/Times-Roman ff 360.00 scf sf
+5925 8775 m
+gs 1 -1 sc (8) col0 sh gr
+$F2psEnd
+rs
+
+%%EndDocument
+ @endspecial 0 3154 a Fk(Figure)h(1:)380 3054 y
+SDict begin H.S end
+ 380 3054
+a 380 3054 a
+SDict begin H.R end
+ 380 3054 a 380 3054 a
+SDict begin [ /View [/XYZ H.V] /Dest (figure.1) cvn H.B /DEST pdfmark
+end
+ 380 3054 a 100 x Fk(Ho)n(w)g(the)h
+(grids)e(are)g(indexed)h(in)h(Carp)r(et.)53 b(This)34
+b(is)f(an)g(arti\014cial)f(three)h(lev)n(el)g(example)g(using)f(C-st)n
+(yle)0 3253 y(n)n(um)n(b)r(ering)27 b(\(0)h(origin\).)36
+b(Note)27 b(that)h(the)g(n)n(um)n(b)r(ering)f(is)h(with)g(resp)r(ect)f
+(to)g(the)h(\014nest)g(grid.)208 3524 y(As)39 b(so)r(on)g(as)g(y)n(ou)g
+(switc)n(h)g(on)g(re\014nemen)n(t)h(the)g(w)n(a)n(y)e(the)i(grids)e
+(are)h(n)n(um)n(b)r(ered)g(b)n(y)h(index)f(c)n(hanges.)72
+b(The)208 3623 y(n)n(um)n(b)r(ering)34 b(is)g(done)h(with)g(resp)r(ect)
+g(to)f(the)h Fj(\014nest)42 b Fk(grid)34 b(but)h(co)n(v)n(ers)e(the)i
+(en)n(tire)f(domain.)58 b(An)35 b(example)g(of)208 3723
+y(ho)n(w)28 b(the)h(n)n(um)n(b)r(ering)f(w)n(orks)f(is)i(giv)n(en)e(in)
+i(\014gure)1809 3723 y
+SDict begin H.S end
+ 1809 3723 a Fk(1)1851 3669 y
+SDict begin H.R end
+ 1851
+3669 a 1851 3723 a
+SDict begin [ /Color [1 0 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (figure.1) cvn H.B /ANN pdfmark end
+ 1851 3723 a Fk(.)40 b(It)29 b(is)g(imp)r(ortan)n(t)f
+(to)h(note)g(that)g(this)g(also)e(applies)i(to)f(the)208
+3822 y(n)n(um)n(b)r(ering)g(in)i(time.)42 b(So)29 b(with)h(the)g(grid)f
+(structure)f(of)i(\014gure)2259 3822 y
+SDict begin H.S end
+ 2259 3822 a Fk(1)2301
+3769 y
+SDict begin H.R end
+ 2301 3769 a 2301 3822 a
+SDict begin [ /Color [1 0 0] /H /I /Border [0 0 12] /Subtype /Link
+/Dest (figure.1) cvn H.B /ANN pdfmark end
+ 2301 3822 a 29 w Fk(output)g(for)f(the)g
+(coarsest)f(grid)h(only)g(o)r(ccurs)208 3922 y(on)k(iterations)g(0)p
+Ff(;)14 b Fk(4)p Ff(;)g Fk(8)p Ff(;)g(:)g(:)g(:)n Fk(,)36
+b(for)d(the)i(medium)f(grid)g(only)f(on)h(iterations)f(0)p
+Ff(;)14 b Fk(2)p Ff(;)g Fk(4)p Ff(;)g(:)g(:)g(:)n Fk(,)36
+b(and)d(for)h(the)g(\014nest)g(grid)208 4022 y(on)27
+b(iterations)h(0)p Ff(;)14 b Fk(1)p Ff(;)g Fk(2)p Ff(;)g(:)g(:)g(:)n
+Fk(.)38 b(Note)28 b(that)h(here)f(the)g(\014nest)g(grid)g(is)g(not)g
+(the)h(\014nest)f Fj(existing)35 b Fk(grid,)28 b(but)h(the)f(\014nest)
+208 4121 y Fj(p)l(ossible)35 b Fk(grid.)h(This)28 b(is)f(con)n(trolled)
+g(b)n(y)g(the)h Fh(Carpet::max)p 2122 4121 27 4 v 27
+w(refinement)p 2589 4121 V 27 w(levels)d Fk(parameter.)208
+4246 y(So,)i(there)g(are)g(plen)n(t)n(y)g(of)h(reasons)e(wh)n(y)h(the)h
+(output)g(migh)n(t)f(b)r(e)h(strange:)307 4395 y Fb(\017)41
+b Fk(Y)-7 b(ou)22 b(are)f(requesting)h(output)g(on)g(iterations)f(when)
+i(not)f(all)f(grids)h(are)f(output.)35 b(F)-7 b(or)22
+b(example,)h(requesting)390 4495 y(output)35 b(ev)n(ery)f(5)938
+4465 y Fe(th)1040 4495 y Fk(iteration)g(with)h(the)g(ab)r(o)n(v)n(e)e
+(grid)g(structure)h(w)n(ould)h(only)f(output)h(the)g(coarse)d(grid)390
+4595 y(ev)n(ery)27 b(20)f(iterations.)307 4711 y Fb(\017)41
+b Fk(Y)-7 b(ou)32 b(are)g(requesting)f(output)i(along)e(an)h(index)g
+(that)g(do)r(es)g(not)g(in)n(tersect)g(with)h(an)n(y)e(grid)h(p)r(oin)n
+(ts.)50 b(F)-7 b(or)390 4810 y(example,)27 b(the)f(line)h(de\014ned)g
+(b)n(y)f Ff(j)i Fk(=)23 b(6)j(in)g(the)h(example)f(ab)r(o)n(v)n(e)f
+(corresp)r(onds)g(to)h(the)h(cen)n(ter)f(of)g(the)h(b)r(o)n(x,)390
+4910 y(but)h(do)r(es)g(not)f(in)n(tersect)g(the)h(coarse)e(grid)h(at)g
+(all!)307 5026 y Fb(\017)41 b Fk(Requesting)25 b(output)h(along)d(a)i
+(line)g(de\014ned)h(b)n(y)f(a)f(co)r(ordinate)g(v)-5
+b(alue)25 b(will)g(giv)n(e)g(y)n(ou)f(the)h(index)g(closest)g(to)390
+5126 y(it.)37 b(This)24 b(ma)n(y)g(not)h(agree)e(on)h(the)i(di\013eren)
+n(t)e(re\014nemen)n(t)h(lev)n(els.)35 b(In)25 b(the)g(example)f(ab)r(o)
+n(v)n(e)g(the)h(co)r(ordinate)390 5226 y(v)-5 b(alue)33
+b Ff(y)h Fk(=)d(5)p Ff(:)p Fk(1)g(is)i(closest)e(to)i
+Ff(j)j Fk(=)31 b(5)h(on)g(the)h(\014ne)g(grid,)g Ff(j)k
+Fk(=)30 b(6)j(on)f(the)h(medium)g(grid,)g(and)g Ff(j)j
+Fk(=)31 b(4)h(on)390 5325 y(the)g(coarse)e(grid.)48 b(All)32
+b(the)g(di\013eren)n(t)f(lines)h(will)f(b)r(e)h(output)g(but)h(y)n(ou)d
+(should)i(not)f(exp)r(ect)h(p)r(oin)n(ts)f(that)390 5425
+y(app)r(ear)c(to)g(o)n(v)n(erlap)f(in)i(the)g(output)g(to)f(agree)f(as)
+h(they're)h(actually)e(not)i(at)g(the)f(same)h(p)r(oin)n(t.)307
+5541 y Fb(\017)41 b Fk(Carp)r(etRegrid)31 b(\(whic)n(h)g(sets)h(up)g
+(the)f(re\014ned)h(b)r(o)n(xes\))f(kno)n(ws)f(nothing)i(ab)r(out)f
+(symmetries.)48 b(So)31 b(if)h(y)n(ou)390 5641 y(ha)n(v)n(e)k(a)g(sim)n
+(ulation)g(in,)j(for)d(example,)j(o)r(ctan)n(t)d(mo)r(de)g(with)i
+Ff(x;)14 b(y)s(;)g(z)41 b Fb(2)d Fk([0)p Ff(;)14 b Fk(10])35
+b(and)i(y)n(ou)f(lea)n(v)n(e)f(all)h(the)390 5740 y(parameters)26
+b(to)i(b)r(e)g(the)g(defaults,)f(the)h(follo)n(wing)f(will)h(happ)r
+(en:)1869 5989 y(9)p eop end
+%%Page: 10 10
+TeXDict begin 10 9 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 -137 a
+SDict begin H.S end
+ 0 -137 a
+0 -137 a
+SDict begin H.R end
+ 0 -137 a 0 -137 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.10) cvn H.B /DEST pdfmark
+end
+ 0 -137 a 456 154 a Fa({)41
+b Fk(Carp)r(etRegrid)35 b(creates)f(a)h(re\014ned)g(b)r(o)n(x)g(at)h
+(the)f(cen)n(ter)g(of)h(the)f Fj(index)j(sp)l(ac)l(e)p
+Fk(.)61 b(This)35 b(migh)n(t)g(co)n(v)n(er)545 254 y(something)28
+b(lik)n(e)f Ff(x;)14 b(y)s(;)g(z)26 b Fb(2)d Fk([3)p
+Ff(;)14 b Fk(7].)456 370 y Fa({)41 b Fk(When)28 b(the)g(IO)f(thorn)f
+(requests)h(the)g(output)h(lines)f(and)g(planes)g(it)h(do)r(es)f(kno)n
+(w)f(the)i(symmetries,)e(so)545 469 y(tries)i(to)f(put)h(the)g(lines)g
+(and)f(planes)g(as)g(close)g(to)h(the)g(origin)e Ff(x)e
+Fk(=)e Ff(y)k Fk(=)d Ff(z)j Fk(=)d(0)k(as)g(p)r(ossible.)456
+586 y Fa({)41 b Fk(When)31 b(output)h(o)r(ccurs)d(the)i(lines)f(and)h
+(planes)f(don't)g(in)n(tersect)g(the)h(\014ne)g(grid)f(and)g(so)g(y)n
+(ou)g(get)g(no)545 685 y(output.)208 851 y(Morals:)35
+b(Comparing)27 b(1D)g(output)i(on)e(di\013eren)n(t)h(re\014nemen)n(t)g
+(lev)n(els)f(can)g(b)r(e)h(v)n(ery)f(frustrating.)37
+b(2D)27 b(output)i(is)208 951 y(usually)e(m)n(uc)n(h)g(more)g
+(informativ)n(e.)36 b(Using)27 b(symmetry)g(conditions)g(with)i(Carp)r
+(et)e(is)g(tric)n(ky)-7 b(.)0 1242 y Fm(References)0
+1324 y
+SDict begin H.S end
+ 0 1324 a 0 1324 a
+SDict begin 12 H.A end
+ 0 1324 a 0 1324 a
+SDict begin [ /View [/XYZ H.V] /Dest (section*.1) cvn H.B /DEST pdfmark
+end
+ 0 1324 a 0
+1341 a
+SDict begin H.S end
+ 0 1341 a 0 1341 a
+SDict begin 12 H.A end
+ 0 1341 a 0 1341 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__astro-psu-edu) cvn
+H.B /DEST pdfmark end
+ 0 1341 a 100
+x Fk([AA])55 b(Departmen)n(t)27 b(for)h(Astronom)n(y)e(and)h(Astroph)n
+(ysics,)1915 1461 y
+SDict begin H.S end
+ 1915 1461 a -20 x Fj(http://www.astr)l(o.psu.e)l
+(du/)2868 1378 y
+SDict begin H.R end
+ 2868 1378 a 2868 1441 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.astro.psu.edu/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 2868 1441 a
+Fk(.)0 1507 y
+SDict begin H.S end
+ 0 1507 a 0 1507 a
+SDict begin 12 H.A end
+ 0 1507 a 0 1507 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__cactuscode-org)
+cvn H.B /DEST pdfmark end
+ 0 1507
+a 100 x Fk([Cac])41 b(Cactus)27 b(w)n(eb)h(pages,)921
+1627 y
+SDict begin H.S end
+ 921 1627 a -20 x Fj(http://www.c)l(actusc)l(o)l(de.or)l(g/)1915
+1544 y
+SDict begin H.R end
+ 1915 1544 a 1915 1607 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.cactuscode.org/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 1915 1607 a Fk(.)0 1673
+y
+SDict begin H.S end
+ 0 1673 a 0 1673 a
+SDict begin 12 H.A end
+ 0 1673 a 0 1673 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__CVS) cvn H.B /DEST
+pdfmark end
+ 0 1673 a 100 x
+Fk([CVS])42 b(CVS,)475 1793 y
+SDict begin H.S end
+ 475 1793 a -20 x Fj
+(http://www.cvshome.or)l(g/)1397 1710 y
+SDict begin H.R end
+ 1397 1710 a 1397
+1773 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.cvshome.org/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 1397 1773 a Fk(.)0 1839 y
+SDict begin H.S end
+ 0 1839 a 0 1839 a
+SDict begin 12 H.A end
+ 0
+1839 a 0 1839 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__gnuplot-info) cvn
+H.B /DEST pdfmark end
+ 0 1839 a 100 x Fk([gn)n(u])47 b(gn)n(uplot,)550
+1959 y
+SDict begin H.S end
+ 550 1959 a -20 x Fj(http://www.gnuplot.info/)1462
+1876 y
+SDict begin H.R end
+ 1462 1876 a 1462 1939 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.gnuplot.info/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 1462 1939 a Fk(.)0 2005
+y
+SDict begin H.S end
+ 0 2005 a 0 2005 a
+SDict begin 12 H.A end
+ 0 2005 a 0 2005 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__HDF) cvn H.B /DEST
+pdfmark end
+ 0 2005 a 100 x
+Fk([HDF])c(HDF,)498 2126 y
+SDict begin H.S end
+ 498 2126 a -21 x Fj(http://hdf.ncsa.uiuc.e)l
+(du/)1413 2043 y
+SDict begin H.R end
+ 1413 2043 a 1413 2105 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://hdf.ncsa.uiuc.edu/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 1413 2105 a
+Fk(.)0 2171 y
+SDict begin H.S end
+ 0 2171 a 0 2171 a
+SDict begin 12 H.A end
+ 0 2171 a 0 2171 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__psu-edu) cvn H.B
+/DEST pdfmark end
+ 0 2171
+a 100 x Fk([P)n(en])e(P)n(enn)27 b(State)h(Univ)n(ersit)n(y,)1075
+2292 y
+SDict begin H.S end
+ 1075 2292 a -21 x Fj(http://www.psu.e)l(du/)1826
+2209 y
+SDict begin H.R end
+ 1826 2209 a 1826 2271 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.psu.edu/) >> /Subtype /Link H.B /ANN pdfmark
+end
+ 1826 2271 a Fk(.)0 2337
+y
+SDict begin H.S end
+ 0 2337 a 0 2337 a
+SDict begin 12 H.A end
+ 0 2337 a 0 2337 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__erik-schnetter)
+cvn H.B /DEST pdfmark end
+ 0 2337 a 100 x
+Fk([Sc)n(h])52 b(Erik)26 b(Sc)n(hnetter,)803 2453 y
+SDict begin H.S end
+ 803
+2453 a -16 x Ff(<)p Fj(schnetter@uni-tuebingen.de)p Ff(>)1920
+2379 y
+SDict begin H.R end
+ 1920 2379 a 1920 2437 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (mailto:schnetter@uni-tuebingen.de) >> /Subtype /Link H.B
+/ANN pdfmark end
+ 1920 2437 a Fk(.)0 2503
+y
+SDict begin H.S end
+ 0 2503 a 0 2503 a
+SDict begin 12 H.A end
+ 0 2503 a 0 2503 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__FlexIO) cvn H.B
+/DEST pdfmark end
+ 0 2503 a 100 x
+Fk([Sha])45 b(John)27 b(Shalf,)h Fj(FlexIO)h(libr)l(ary:)1236
+2624 y
+SDict begin H.S end
+ 1236 2624 a -21 x Fj(http://zeus.ncsa.uiuc.e)l(du/~jshalf/Fle)q
+(xIO/)2757 2541 y
+SDict begin H.R end
+ 2757 2541 a 2757 2603 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://zeus.ncsa.uiuc.edu/~jshalf/FlexIO/) >> /Subtype /Link
+H.B /ANN pdfmark end
+ 2757 2603 a
+Fk(.)0 2669 y
+SDict begin H.S end
+ 0 2669 a 0 2669 a
+SDict begin 12 H.A end
+ 0 2669 a 0 2669 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.Carpet__tat-physik-uni-tuebingen-de)
+cvn H.B /DEST pdfmark end
+ 0 2669
+a 100 x Fk([T)-7 b(A)g(T])42 b(Theoretisc)n(he)26 b(Astroph)n(ysik)h(T)
+r(\177)-44 b(ubingen,)1602 2790 y
+SDict begin H.S end
+ 1602 2790 a -21 x Fj
+(http://www.tat.physik.uni-tuebingen.de/)3054 2707 y
+SDict begin H.R end
+
+3054 2707 a 3054 2769 a
+SDict begin [ /H /I /Border [0 0 12] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://www.tat.physik.uni-tuebingen.de/) >> /Subtype /Link
+H.B /ANN pdfmark end
+ 3054 2769 a Fk(.)1848 5989 y(10)p
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/Carpet/CarpetWeb/doc/first-steps.ps b/Carpet/CarpetWeb/doc/first-steps.ps
new file mode 100644
index 000000000..d5488a5e8
--- /dev/null
+++ b/Carpet/CarpetWeb/doc/first-steps.ps
@@ -0,0 +1,2719 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software
+%%Title: first-steps.dvi
+%%Pages: 9
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: CMR17 CMR12 CMBX12 CMR10 CMTT10 CMSL10 CMTI10 CMMI10
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips -o first-steps.ps first-steps.dvi
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2004.08.05:1643
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: f7b6d320.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmb10 cmbx10 cmbx12 cmbx5 cmbx6 cmbx7 cmbx8 cmbx9 cmbxsl10
+% cmdunh10 cmr10 cmr12 cmr17cmr6 cmr7 cmr8 cmr9 cmsl10 cmsl12 cmsl8
+% cmsl9 cmss10cmss12 cmss17 cmss8 cmss9 cmssbx10 cmssdc10 cmssi10
+% cmssi12 cmssi17 cmssi8cmssi9 cmssq8 cmssqi8 cmvtt10
+%
+/TeXf7b6d320Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /dollar /percent /ampersand
+/quoteright /parenleft /parenright /asterisk /plus /comma /hyphen
+/period /slash /zero /one /two /three /four /five /six /seven /eight
+/nine /colon /semicolon /exclamdown /equal /questiondown /question /at
+/A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X
+/Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 09fbbfac.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmsltt10 cmtt10 cmtt12 cmtt8 cmtt9
+/TeX09fbbfacEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown
+/dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla
+/germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam
+/quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon /less
+/equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright
+/asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l
+/m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright
+/asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi
+/Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown
+/quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 74afc74c.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmbxti10 cmff10 cmfi10 cmfib8 cmti10 cmti12 cmti7 cmti8cmti9 cmu10
+%
+/TeX74afc74cEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /sterling /percent
+/ampersand /quoteright /parenleft /parenright /asterisk /plus /comma
+/hyphen /period /slash /zero /one /two /three /four /five /six /seven
+/eight /nine /colon /semicolon /exclamdown /equal /questiondown /question
+/at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W
+/X /Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: aae443f0.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmmi10 cmmi12 cmmi5 cmmi6 cmmi7 cmmi8 cmmi9 cmmib10
+%
+/TeXaae443f0Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa
+/lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi
+/omega /epsilon /theta1 /pi1 /rho1 /sigma1 /phi1 /arrowlefttophalf
+/arrowleftbothalf /arrowrighttophalf /arrowrightbothalf /arrowhookleft
+/arrowhookright /triangleright /triangleleft /zerooldstyle /oneoldstyle
+/twooldstyle /threeoldstyle /fouroldstyle /fiveoldstyle /sixoldstyle
+/sevenoldstyle /eightoldstyle /nineoldstyle /period /comma /less /slash
+/greater /star /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /flat /natural /sharp /slurbelow
+/slurabove /lscript /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p
+/q /r /s /t /u /v /w /x /y /z /dotlessi /dotlessj /weierstrass /vector
+/tie /psi /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/.notdef /.notdef /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta
+/theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon
+/phi /chi /psi /tie /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.1: CMMI10 1.100
+%%CreationDate: 1996 Jul 23 07:53:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-32 -250 1048 750}readonly def
+/UniqueID 5087385 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
+990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
+6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
+DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
+59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
+D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
+8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
+6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
+1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
+03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
+95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
+74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
+3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
+47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
+AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
+42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
+40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
+B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
+95601766777978D01677B8D19E1B10A078432D2884BB4F7B8C3293B68BB78100
+16724E495064BA0168CC86D413CB48560D6D318357397832F7A858CD82030C7D
+8A4A1919716E8B26AFF8789AAF489EE4E0A88DC477551A87C7DF2856189E4596
+FE015956AFE5CC019F5CA6323A12B763B7B08B92C1A2940D3C566C43729E5482
+63C6DC5E834AEB4DAFB5AE8F0B8931A4687C94D11587B9071C8D81DA14F12776
+53A1985A3EBE37827656BD4635E03F09C3231F906874645E7DB3E59045A59D67
+E745D8487CF73FC50F64060544F624F357BC998A87FBE468DEBB38A09449EBCA
+D041D7C29225ACD16CB8A59E87924D15A9125F064710A6CCCA3AD3103D8FCC94
+CC3571C6F9192774FCFE5BB42A14B27960903144D28BF047BF4C77646EA7BF6F
+440D4EDEB712C63F2E8080419E42D1D58EED685EB5CDD49F80DB6E5553B519FA
+C6A39A093155802F3EC607721F390307E91ECB597ABA60A537E3F8C045BF5DD3
+D88CF6518D37FCD95D2F295D902D617440D23516D962F47750A682A319ACE1
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMBX12
+%!PS-AdobeFont-1.1: CMBX12 1.0
+%%CreationDate: 1991 Aug 20 16:34:54
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMBX12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-53 -251 1139 750}readonly def
+/UniqueID 5000769 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
+B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
+AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
+7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
+20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
+B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
+68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
+D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
+26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
+F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
+77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
+BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
+C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
+30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
+148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
+E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
+E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
+337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
+0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
+472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
+A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
+326A3828FE972BABBDC761978EB577B7EFE06865DD3A7668059A126B063900E2
+6DD36FBF3B050E0F14DCD8FB0A0D93F30588A01E56F022E88E99DDDC2AB8A953
+6D943F1CEBC66F7EEB259027A42DC747639B16D2B8288EF43501803FB65EB77C
+075A59F0A8C2BCFA0CABCBA3FF622D06B99F18196DC4BBCC264B39D51CF7292D
+E60447A04B22582FBDB940AA3C867D3872AB2767A9056E6F9FB3DF4E1FFCB960
+88710709100E7A44067DC5E4103222E109E7AED84D18568B59D7215DDF8F9494
+17D730DEF1A9FBEF4C99F98901E53E35CD8B61C8D0A81CD471B2266E47729003
+145E31B533C0F5D84640A458F50BEBF122FB257B6229AC0ED5B65E47A9FCC007
+8DC3F3775D9047DF0059EEE4D2DEAF3A42D8C36D4F413E8717EF2F3C3CFF922A
+3730E5BA1FE7EEF81C3AD7FCAC4FDF043ED536928B48A8DDA54C7F37BC234665
+D01BD9B9C7C98321E649C1036B2EFA7116DE41161BA156BE71CDD85EC8066C6A
+F37FC82B6D56EC79AFB23D2580DDE7A6A43588BBEDEACA6949A7172ED8EE13B4
+B3CD8ABDCA42139058372C0FBA26A52E3FBFF2D9BAFE7CA0F22BE6F40C1EBF4E
+40BA8E2E23A4BA38C9DA1BDCE62AE820A41BAA9A84556EB621896308F58989FE
+44DCB1DC9D181B22DAFE5AC6FE397E77FFC4674195E1B332B65CC922E361BAA9
+BAEA7DB3AB7945EAC2A1B48DA0E780789C2C479112C90DE400C2F8FE22A8707B
+6680A4C9211DD012407C66917501FA39902E3FE393CB515FAED4C892AE96125A
+4F1687B8A3FEF53D89D063B5ECA8F8B58A5EFD842DCD9DA17FB3D691A6745C4C
+CA4400377687152A1D12904024DDF2FC802C21CCFD0953790CC8DD335704A24D
+909BBC8322633985F79D61AF228AAA13869E72277A57CC61ACF28EBA081D916B
+0CF53A69F0E19DA4F2BE7C04F28A5179CD8D2237715C4AB690F8F513E0657C3C
+E0CD581D68F565678EC5BE642FAA0608A9B4B8DE2701267906AF73740DCAE4FE
+735912385FA01914A4C662E5C85D0CB3EE56E1847A553F1D47614206E0E17E97
+8CB2563F37D64D7AE95B4CF115FB0C3CE9EBC9A94D6A349029D82BE1B0547866
+FCB97992F1AE29619C26E33A434244F9AC4C8F94B98CA6A18ADCCA3392101098
+A428861588076D543243316C11248C3F980B021EC8DB08BCEBE3F208C889355C
+78C480AFDF7DF8C0C17DC3DD987BA67BBA80C8125E20D48FE73BAD5B74398A69
+27BF90E3484C289BAA4DD04D30BB6B39268DCA7C9C676F442F7F5749A7049DB0
+0F331114597E7B85D3BDE1AF33F42F606EFE20D002461F01996FE7C5E500C6CE
+B054384B21F2D3703B64105AA616B226BA5D9EB1CBB37716F9419F561F3336E1
+54FB3484C9F6F1D57A738F2EE7B1981C6B14B0C64073A1930631A2731B28EEA9
+65AB7561B5FD9F0B97B3C7332FB97879F743C54B6A766149770AFA3A3967D288
+0D9C060EE198271ED5E3B26E02DB27E9049886C1DAC569033DEBFC390E5B3EB4
+A044786380D375EC461249C6BB8A234A7E5880B7860E61555E3C89771DDE503E
+B78B5DE9B325B35E682BB351F1A6657B0A3D6E426816FE9CCD19D3624A61B581
+EAA7ED7C29F3BB9CC5558BBAA95723A8123BC4CF55459B54279BBE6911BBC6F5
+31DA4C88149E94E6FA1A9321B52F8F78842337FD6E5B969064BAB8F3600CC406
+B9E72FABB4E56D282B5D89868259BF551F7881E8AB1CC207950A178E4FA1466B
+F4841E71938892A283A113AC884D8E40B3213C04D77CDE4F845A959CC6728CE1
+269FAAD253B1CE956F20471F7E0197A467F33C39D1B29DDEADC1EA402FD28D13
+AC0444A7785B15F2822FF13525500444A75809725CBFCCDD0F5B6BF5420A7797
+29B603F16B228AE5D2AB7CF1DE7EC56A7687EBE5825D3F62CCC6E6CF60D6A09E
+A91B419366961C98C706B324095A2E2F7B9BAF58626788E6BE5CA67DB4C50936
+93EA3CDF3A1A3355F0DD337CB8474F6E2F83CEDB3C18A1238F0088C627028CC5
+A3D1CF04ABC807AEAD0484136291D5031FAE2B4281A9BBA61B2DE3F37991AC23
+B049F2AAE9F00851CBADA724E76ACE3600B574266A7DA81EA7F601B679E28A34
+0ED005B2DC1F63D40CDCD0D0876E4EF8C6692773DEA8B61305B364DD6C5AEAF7
+75EFF0396D89B5E5F400121442EFC940852E8CF339895ABC3525BDD09D925B9C
+B83D3141111610FF6A2E1CB030B8FE3B212BE863B28A19226606E147315F32D4
+474B8AC1735B0DDA653223423405D8DE81070543EFA352FB6347007177D8E41C
+9BDBE598A8F621629EBB2C5B3233446573C34369FF2BE923D2788A823A6197F5
+8DE62E1F90358A972C9EEF536336D58ED4345C6997DC9ED00457B2B2E628693E
+193778CB0673C44E408259ED2574E7D83470903B3AE6EA3A92C36E7D5FF1B35E
+C4E0580D51F830FE29CEA16B3D99529D07A05DECD8D27648E5338AF5B8384FC9
+287ADBEAD54F87D296E0726F5E4E4519237C684820F6F6B04DCA2A5F28171D11
+25409BC857C62CF335BB7F617B520EF95389494F5F0791713C75AA83007A4FB2
+C9A1231558B04CC8AC1EDF8835171DD0E1A1D8334F8D4395345B16470A40D832
+65AF84DDD9706820E0F748B2A9E99419B0A6B150D64FDF7BF3BE6115F703C45C
+EEC368C30EA993E2FE3883EAB3142A22C93F4E75BBCFE7477460E1F50DAEC7B5
+69CBC67484F544624061EB660307F1256FCB7C00A5875BC9AD6CE560F0E88F8B
+E08C22F152A34D8B6A5A7B8DA9E0EF5576727BD729B752583C47EB0D3C804148
+194D3D1609BFEF0A220878F91EA2A2C36001AB76A209A2CAE5DD348C3F03C9F9
+E3E54B381A7A040A91F445AEED31DF4B8299DF97BAD6109481B7B1C768EA0207
+105401E08EFEC4B69DE297A1F306DCB0C590D8B2B570608F9392922116F92EB4
+79DCA8F908D4E64B1747655FC2115495D4BCB26348238A3CD23B0BC59D0287C0
+EE46A73225D2D05BA2967C4F3FC252BE2CDD21035DA65BCB1916BF7E594AC221
+0813D837AEFC5F674311E3FA42CA3237332E22CD2A33ECA5629AF45E68D2F84F
+FB6CC3ECD43E9D133A1BE7B242CBD99D24407520479600164075879736DD7779
+23A2B34FA590059D184564276E5170EEB185D4A0E25FD39855E154A96234319C
+9B420C6C95995B89A9C46C835F5084EDDCCF865FACC4A26901DB2ECA688D6C07
+C32956F9552B1BBD468A5AC667D834B1C864B229B67340CD5D22B01B24F79849
+3E1124F9A6CCD49E56D4D9165A529F1A8EA9B61169E335FFC274FCC99D98D4FB
+468232F84FC3DD58B7B142291A2024A803C0D71C2A10F3C5A048EB2FA15F1445
+9C8D8F3F7E0CD459BAD1D53C2C358AAC6D0949485EF6000A5FED02DFE7F30847
+74300F971762FD3FB7231B9CD92868AECF5933FE7081BB095C72F2643DBF0D76
+103872C32351FC5E9A7A229BCFFCD80EE0D2C0BA8A6EAC1F7AE4E7194CC38A53
+A4714FB527FFDB199C97C6BF19FC9E8A1A5A725FE5DFC92AA2711454ABD92B55
+951F6CE78AB6022B477D996AE0770F2A0600F7CD9B21365F5D389ACF63A47148
+983FE541998FB2328F245E07577DBF11AAFCEEB626134D4900CF7D40AF0E9588
+38EF6314F33BFCC98868B32223ED4EEEC2DE2ACC1A23BC75B6071344F19B4B7D
+B5A88F63FEA1DDA7BC4029EFFE12D281EBDDE805FA5C53E93A4BF54237077209
+0E7CF8A16E2FA4ACF3DA1E5AD6329968BA2DFE2131A5C7E42E1FDE4D1A8F9BE2
+D64068709EF404D5F1B8989C06DB5CBB3104D3C57A51B1C02C2AB2FA45E0F180
+F79FDB477AFDB19628980810C736073A01CAB49D791F75B2AF387C1300BBE790
+2D0C3B08FF794364DDE78E7AB5F610297E7A4AC90E5A097670646492AF9973D7
+026F330A2BE8F7EA7A65C5E12C8498EEF9EF0596C0B1C68895EE38B22AEEA36A
+2226B0E5ECA6D4B33937A4580C32135DA04B6882D326A355F2BD08D92FAEEEB0
+19C074BAAFA2FF5F91DD888618B342F76DC0540DF5E0869C7593B93E01A20AD1
+93BAE247C022C8B0C168A8687E1278564EC2E7A9B5353CBA13E3CAA7ACB741BA
+0094A2F8D4A2E94A46F8A1441F6C8518B8DD628F2C7AD949833BC6BB3807C47B
+06916F18EC5B0568236626890292FB4413006FF2447C966BF411D3AADF2BA814
+EBFE6AC82EB140CE3905D53C5F76D96BE6EAA296875B84A36CF5E7F9F085A057
+FDD0DBDA97E819B189C34A76B2C7334AE71AAB942D215E5A1D83A472BB84F04A
+A47DC5DEE2FBE8C2D1E8DD894EB5384D5F5F74B8374F1DCCF9D4AB1182709747
+162BC3F52809226AB7BEE6E3C19CCC43CBF84FAD6A21B31C5C67148AC7F4A2FD
+DE6ED7E38EE6126672E1E239EFB8A42761FC438ED656FB91A05FA5DCE995C221
+FADB1B912DD99FB9D3C2A295DC63A363E1622F87C5378F9E24FB18ED9E254E9B
+66112E59EBE1E07AC73125EA7F7E038DDA57C6FCA81B2FCEF8628B27D62720B0
+9C9DD2D3684E20D8A2CF2A1357DD0256EC8E3413DDE9416490B863AA8A638D1C
+4AA8F249CBA0C1BED0FC5DA55F6F1F9B005FE82DEBDF6ADFC44436FAFC1CC06A
+29E50B099CB1E02CEE87D9A74A59459703A8F2285E795C7C80DFFCBAADDE3493
+1673800C06670733C377D5C52BDBE6E110341ACD7C33875D64B96743FB2B8D9E
+FA91541F2DACD0C29DBF74F25D2EC1B42D0E4F8C4BD8B62DC93F49C26D6AEB82
+5124DE1E13889F13BFD4896E891561736D285B44C87667FE19FA66F5137BC3EE
+13E6E2235669F45EC2C435DDC06FF060C3043ADA30AD849752D8691FC62EF47E
+E2083659764C57816987E631F10D8A38BD7F2580BE091248F63E10BC25FF487B
+E78B83244EAF8B975C8E1A64C0BEC59051E8080D435C6EFC926664D3C3A94F64
+206237957C02FA34BB46BC685173A646B6631D159E418A9AE7C682F0F840FF4D
+0EF052630F27BB6AD1284193A35FF4C7735217017FAC5F4A553BEA8EE86AD539
+C33DE0DB15BC65CE96D76943AFE6B93292EB5AB3D52CB3EB5793BAF4C68B3203
+AF13D02A744788B0EC33C79BF49D6725C377914D320E6C95883EB5F46EB8210C
+C86494E59A02240085B5E48E7FDA8EF7DA555F8B15F6E7750A0CB0DAF231807D
+CEA2BDD3947572E1DA338D39CE5E82090D3DF1647AC46AD0EC9D2A98BC0EA65A
+307ECD88E0AA7BE72382D877A63F39103F9EDFBA01DE6831AE4E0BE631C32EB3
+B49CCE6404D2BA960189B74B199E308EEEE27E63E384F39DE3EDB8141347EFF7
+782BC0F1D0BBC1B51C23EC112DAFBEB74694477E34916006F4AFED8AB4A1C7A6
+6B139E3CF78A2E53DCC783305B7EDEC99602E38A462C1CC3DBD546C4FB3BE547
+9AD1EFCB01E8958D97E46EFD4A08FFF6137FBA035477838D755A87215925DA24
+1260BC5E256CE4E59ED96C8723EE8524A9DB23EF0923E2F38FFBE49352478279
+17DD5CAA32009DCED721AB4EF5EEFF41BA43D61EFB397DA7B45E2D6F637AE61C
+50F76DCC4F8E73142E55F0A9760DFF7505B6EF44AEB1CD406225D2FBEEA1A66B
+DC3D8F85B520987D11D777C97D960EE07C3B6C8A77CA51A1694EEDA4706B3318
+F221E7DE0DB4B91A62B0F1ED04B7A8470D0709639D481FC70DD410F6CF016A88
+1C62BE8A3C5C9E83D77C8706F4A503DA39CE44F088338A2A9045A3BA070303E8
+3E3311987414FF0B50B712D373308B9A8FB57E9E26F8CBC967221EB3A69CB06B
+3D31E834F39D4DC17FBB28185F54735FE72A5FA8D11CEFC63142C88869BE4F79
+739A5B8667D288575268931B83B35DFC61F443D218C7B894E953700CD515F36B
+EE73FE06C4F487741B18477F658524500D6FBAFA5E369CC29AAE71EF4B5B2AA1
+051FFF8F7277BE7B0AB7EA54BB274065D703BCC02C84BB5DB89E780E2F84ABB1
+65C0EC14BC116088C10111396EFC0DC0D865F8B292322A4E8244577208F2D4A1
+44720132B0727A54BBC88BADCEF5D8BF8385538DECA18D842302517E1EF6330E
+6356F635FADD4C0D479D02C7F6560B9B07759E13D34FCF2587473C8EE26557CE
+9E445C35A14B8479EACC4BF26123C9AF5964343C64F7A8B563BC584462C85DAD
+399B2D2D7BC70F53B2E86B8B24ACDA6E6D4826C676028CCC276EA60E03FFB116
+648E994C19EF4A1A18B53CD6F02C66B7485856AC183F01D5678CA9E37E8DEE52
+805FBCF13427D9D56699086A39AE55B17112E16A54721FC67E56B045E1EDD238
+5B7A9A9594075ABB5AC597849AB494374326668960288281A343E73FF071CD54
+880C24120538BD664C253297E13C208D97A3A29F059868065ED98F15A66D0F83
+892BE8740630CFFF706642EEBE3DFB3C6640D304E3BC8C4F89D134E724290DD6
+0E403C317BADE2D3176EF099550F20960B326FCAC0D1681EED54F615D48B154C
+793BAB8843A6E14DE5B80F51BBEC5102F5B7AC3CCD9DFAAC10D480CD789FD8F4
+38D449ABF4D7DDD1E4D1316D8926A337F0B132787DE4AD5BA0F7974CEB916A3B
+51FE3544160EB0C80EB1663E75674F3B48CD96D1987093F37A42DB341D24AFA5
+C3E15AF9FC572B8A8003223AA540AD440271BFCA7639B382EA5BA6B495EFC656
+48D9EB85D39DFBA9CE6E46B63E94B97579FD1769A47A85E7A28C430D47A3021B
+9F661EE2ECF5E19B138C800A8F52C560C50AF2CFB637E071222AD9DD1D54C638
+A799E663524776846388238C5707F5DB938E24DD024AD74A95A6CA8F78BD471C
+D693911FA2A076B46FF7BF4F0FD2986B50A1C691793EAEF1FE52E50D2DC63DD8
+84E5DE98F4C2A4FCD3C07395698867E490C1BD3DAE26D76FFFA12C932DE45B4F
+04D2324E5714FB2CA60BD319B15007FAF5AECAFC4EFC3CE7C53FC181250C6F1E
+093794C9EDFFCED2557BCF2E20C635D6BA53D1A5D5B4D521F514A64B3263BA72
+66C7684378E2B53E29C8443CB3E1F5F7CE4E7B45EC9E1C84AA6E9E0E0D92D6D6
+B8677E87F9902B4B48F2F0BD3DD8ABB7D96C7AC9FD874930F590B9FECE52150F
+48E7053D3CAB1BD7A2832C486DBDA626CA46FA8BF71736E631B5250917B6A2A3
+0D4E93B65055FB4A6197192309E28C295A8E98C15F92F82679F718191D21B478
+E9AA44599043144A522493EFB9394D5A938E2EF6ABA420D6CE45E251E00526BF
+4951257E01353E1BC644B2854FAAC6D2E6B02B41CBBF53FD38575EFD6449B649
+00AF0B2B98746454C7D49E1D37DE767B965AAF7122D564BEB298095B979B994B
+51A418F0A5315FD1099A02B97175A352414443B78E619940B6B8BEC2AFE5FF4F
+68A95F71A6CA77ACFF6E6045C34926208B48797554D9C74955A07DB1DE34B2B6
+00B0BE9560D4186DDC28B8889BE03639C916AF16750F59C3BDDB18FC787334F5
+634A4DC7CB1B5C0A74E44576E51FA2271DD71EDECC165C9E96E6004FC8B37DF6
+56B33D3B12B66706C17014697CB0B58E5B94AEE42933830A0C6459DD52FF94E5
+19D392B1078DFA65C725BC606BDDDA243171C28DA61CBC22D427585F285F0B6D
+C78EEE5FDA083E7B245D79FB5215B6AFC3E9F098EB47C2F63BA597854D7DD5A3
+FFAB6029AAA4A812333C7F896F1F7CFDA0D790375A9F1FD7A1C80C3639939427
+EAD48E9A243934C964BF1E86633476695F3C9D6D85E95ECFF5B4B28993508B9A
+004B70AD715E553356185FB460AC3BCCC747AA95C63E3553842201F88AA276AD
+705295E472240DA7D3C54056F4A31698015A20A45FC2CC9047FA6FE149394BC0
+05BF0F15A26C322A215BAA37ACAD34896EED735FB7FD5992819103B8BC0F27E2
+C2EC4579BADB77E1C275FE29AB2080BC4F310B316CBA6103BACE178C52D1FB2F
+B0F5096E5ECB89BA02E217C8235B12EBDC853247AE066E786029EDCCC7E9C6E9
+9DE286BA8CEEE539C2D10D0E5B9F7DD1BEF9EF5F7C52C26B699AD244CC903E91
+248995ED9F8F38B6F550F86A4B990509FF588F4E2B2EAE62B895728E385D01E9
+6712D9E06CBF2A93E2E2B00C53E61B047C6F21860D27FCADBDDAFE2D357C622A
+5E878A609C5997E08560E3A4E34F5068DD4F8F9A114D7A68E353FD54D4001C6E
+E338A30773F6081616260F47E51B9388B1C6784785AFFA00C03440FDADDF9DE7
+8A1F0687908D935FDCFE65BF6429FEC2BC4AC65D1922AB39F7DE4D727B284628
+DAD429B6B9327EC45A77C1868B5F3D63C422FC561F6C210C834AC7EF085DDDBE
+541E6C4C244B14A19B0C87C4CF98E4D637790EF3C999B39859AA9EE2CE6B0CD0
+EE1C12A9CCB174C6777E3C5779A5E01B24865C4DD84B1E27D34A7F4CD10F8214
+15DA8A1A98C22E7077E0127ED84D27793F0B8190AA593BE6FB111CFE487DE241
+AD03DBDF15C6F3E3A38D332B42554B84DBAE2B9DCCC8C7E7A18DFFBD2C661CB9
+06A2B00A5508F0572B7D321095F5B2850920567EB7E3DF22009CCFFDF8D42B7F
+658D9D6D43AED81F0ED5DD1DC052D923428061ACA674984A0072EA610081D3F8
+F7E876501CDB7E568E0CF96B378C22EB54EFAD553DA5A1F4618E2DC7557BF04B
+C19CEAF19BC0D3342E14DAC41ED8C64173719F7A881BF284D9368555B42D76F0
+A9CC63E14D0BC49D734930E62AEE77A44FF1C0101EBE95BBFAC5405A169EFFF7
+2C9DB33663A6CE271E89F78AD5BF38E5A2AC984E9AC9EEFE6376064393559BF3
+9C8E223D27BCE960977D2CE0205702A0AAE02F7E318685FF137BC70AA976C775
+AA3A62D6B27D99AD12C59D9D6DCD165EDFE3D5E79511FF154630328E280DA6FD
+E657E3274DFF4EA2B6D2A4F2B7A20E5D7B48A8CD07C67CD124A92341F9A1640A
+68044FE3CAE4B0E94C1CCA0899F350E8551870878CD6BA9D78EFB900C9618F07
+0E55F956DF0C1859280A4FAE6F257CB0FBD115D13DD7382CB1E72837E93218D3
+75819A264A109DF7FB3728449CCF5BCB9DCBE2ABA3068115CA6FE015CA4BA5A6
+A2D8BDB89DA2F3C5D3ECC6490127D06855D1E5143A92C357CFC8D723BB42F60C
+83B3F4DC88BC3C1628F1562F6098E1EC27DCA5DF416502AA0FC2D40E23235111
+BFF9
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMTI10
+%!PS-AdobeFont-1.1: CMTI10 1.00B
+%%CreationDate: 1992 Feb 19 19:56:16
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMTI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMTI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-163 -250 1146 969}readonly def
+/UniqueID 5000828 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
+21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
+06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
+55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
+B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
+0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
+1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
+7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
+7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
+356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
+19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
+C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
+244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
+AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
+5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC
+D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D
+993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363
+2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B
+E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3
+309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513
+F42EDDCF39AE522A1DC2D80B2772B05DA60F3DC15A815A6BAFEDC399C7956E75
+3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A
+FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472ADBF11
+05A77651F118824F6CD00209EFB60C1D32D46A78E8C8DCB8B0E742828E3B7D17
+DF5200D68189C91FB8489CDEE8BC223C4281DDCA5F7DA80BD5C2D66A14695EA1
+5F05E03500579ADD440ED2C57F535807560C6FE3873143D792734FEAB93AE8DD
+633BA6FC51887E252E8CA463340490CA6634BFA6F5B74354D8087857E9E1724F
+3FF689C0CEAFE3E98D5590D95FF236DAEA305C717390262787DCF2B5D539C589
+F8BDA7F1FE3FEF7CC7CF3B4E33451B7EF31FC38B01ADCC35BFCE72843D2F9E35
+CB11A73E8D78CEE16671D907E735103A94CB0462BFCEC1D0647D0C6097BA849E
+FF60BB827CF5B8A7D71C74418E6E90E83EA97FEDDB89AF3CD82C30646EDFF0DD
+0FEF19F1BF7993439A91B14CA694FABB7EC4BBEE94AC101C413CAF56CD0CAFD3
+069AF507AC635507A0299E27C31B9820711E997D98195572A64C2E305C409921
+59CCB19119EC5A73C1CC98AFC46D944D9E634321BECF9969E4F40691A148BDB7
+D858953AA978FABF4AA88EA60C65FFE7CBA1D6E647C11C29D3799DFEA39CCE2E
+B0349F6A7F19BA37F8360806D7688CCE15E160FB401ED9A3DB8E6652FDEEC161
+444CF0478464B226A01EC4B7DF92C7AA7763485088806C9B116B0FE2A1D99BB7
+21C0C0C17C64A44741911CB4E1BA63455D2F5A07E1108AE8E8E1CF5971121DF7
+7173A9B97152BCFAC5D380BB478452CD474C058C37DD7FAB55E116BDFC359F89
+83668C53ED1E3F877201EA068AB1483F7FEBCB914DCA5DDED1960BE01512D1D0
+29B7CEA5FC59231C0365715E7E70455CFAC735BC9A23FFC6947795CA3ECEF6BE
+32E452490C1B29C434B1181235E04A9C345CC527E37B26720B67B04400798B09
+D711A814519AF422CBC8B29BD21B8E512D7FD8481EAB9198C7992D06629BAF04
+8810FFF7ADE59F42787673CBFF9A7780FBFBFF84B094AAABF81843EE63EB4982
+485DF12E7319DC52ADF0F12F9A78168D466E858C171CF899F7F3FDAA93674515
+BB485EF88A7B7D89E6FAC8890BAC50477930209860C4EA2DCDFB4DA6DCC543E6
+8E2327523B409FE3E49189CBB2A11FD3E4BB0E66753C2128B625FD62B302FDA8
+D7C4153D9FF4BF315DE56D59E83A4ADB8DD26B83FCC628D58BE3FE36B014D9D2
+B4F014E1BA589B3930C38AD1F6BB16F84855A249B6136CAEC08FB20D678C6CEA
+826BD965CE23CD0CBF26123271686587FEB7AC55FD476702651C7A5FA6B0E450
+88C4112A19F287AF9B041B9B6FA3E4EA4C2B39EEF476BCBE12643BA665638845
+FC85821F0C613958DF2AF269344E8064EBBD3C9A99A7E0276458B6DCA480CC81
+9BC6F0A54A8FC117B19D98A10730F6C25DE29874906594F8A5EBCBBC2CFF48F2
+FDAE556D16ADDC870CF1C9D6DA29C5529D566D937E3DCEA7E4AB797532A0411A
+1798C230B45B61BA963FD00936BCE43A81B5677CA8C3FACA5FAC17F91C34FB68
+CD61D7492A8F5289ECC59DB30FA719313491F7DE190CD2B259FCA498AB834519
+7D161DBF1F34BF2B5CAB0B0651D81B087055A1AA9F7DB1903A57BD9580A70B36
+C44E397338628A5A303BDD5D1E20FE464E76552248CC6F1B6EB944A497BBEA5C
+9C448A35883FE9ECCC56493852389D4C4FFDF4B4E21FBE602DF9503E58106B11
+35CA9A3CE723B6F662D9DF9970FADCA2920D527E7BF9D1266D8F6757CCCEEBA9
+3D9DE4E1460FDE45ACAF2D79D36F8FE38480D3AA1320F1E4939E231ADD1992B9
+12F7999E12FF7C992A9DAF141331BE1BAB8D27F25216FC9FA3B85A10241E4470
+01039D758FDA33F5AA1E96853C0B48070280AE5CC4EF39DAAE0DE551E2DB256C
+B3E9E5B2E936BF9824F1C14626E5B589D0BD56D149AAB199DE147B8F943B1D50
+FB1757A96C37DBCBEF052FB42850BE8D5524066B8361646BC8C642BF370B9291
+25879095682AAEA6CE0E6931095C6BAF7DDD66560FC235E1809A6CF8228A7451
+35F5218A857649FB04E9FAD40080E70FC3BFC3D727C5447D0AE04B9587547B7C
+C477D2C7C670640A289060D460FF593EBB897B39BA7D1C1E620876A221BAE9D5
+D42ED6B6ACF8C8F92CEBFCDC5C3E9D14F1175EBF65E40BD23D5B45290133D634
+E606E6BF5C94295D858ADBB5DC952E7D05A70EE02FCED4A6B758251B390C9609
+56D3C5139175A07AFE6CD8E69FCBD97C7A0B5F4ABF3B8F90317D114CE0C64976
+44A8063D7D2C8BD712E069B14449F03E765B80315BCB990D070362F418683AA3
+989BFA70A0BA09C8B937BD316E749025B4CBA49CF244D3ADE123BA3FE68ABAC5
+B2E1AFECB73344B4CB18FBCE6780517D0D2FE3B09551B39C433EE169D7A3F74C
+D15D79BEB5D42E4E85BDDE5CBA8D254FF22011E0E458AE95E6167556A286BC21
+6D217C536917125735A3E52B71C136775FC4FFD08747A960FA069E2A92731E56
+3DBD4F1809510007887A8AC62EC793EA0B0AC68047E8F0075D70CB461E50194B
+319FF3F63F6DCAD2377926717FCC249D94EA3FEB008F74A678B78364290DFDD5
+D557F95815799A88447BE2C9FC49F1568FECD8C46F95B60472A6D5B6152D80B2
+E812420B45D89456915A30984C90E1782E404C46E986F6305320DA40A3BF48DB
+4F3E9DF0406B48ED4B973C707AE6A6DB8F2DF4D31B0FC0EEA946E245234F9C5F
+553181AD20CF39A8BE532D35FFC849C9E5F6E719B3E35E63838895ABEC7D0545
+3C723430A08508308922AAE98CF42008A01D7EA10073D99EF71DED59ACA6408E
+BB8A85915F40B6DB0B0061DCA7A46375BEB2E56552FAB992C7463AE0380D388A
+9157F6CCED86B0680D93919F33A13B656441E31E96218BB5441F36BBC8CD8329
+28179A1A79A2C5AC246AE1D3D1972F0C4EC1617656C02DEA551E63EE06571B80
+1038AF7068344EDCCD7AEF83BD513D2C451E41C82138380091B73208E0A99C53
+38B55A415F9565C578BA6037B06AA6016577F1751D64C1F88BB95DA148C76301
+6C95FE08A2426368A298D73E5EFB738316E163FA9F8600490B4F2482DC737376
+CC175E1DFA11A079858870ED9F62AE641720C1C91839F4D37827D493DAD94E51
+0FF4B62F7ACE1E01B28A261FFD232B8B2B7732D1123295C5F92F01F29CD2DD32
+BB88C76379DB50D037C694F1D8C87A60C6E4E259589580F36197BCA9B4349CAE
+7A731A9593F17A53359C9455A3DA0758A0B673A6756780F6CB7DA25D93AB4E66
+076A0BFAB1E34F98508FF05E3582D730FB54852561170D8CDBEF5DC8C0E70D2F
+1E52AF61A666131882FFFE828EBEF961D5C8747A535F7CA25367AE2BDA892629
+D5F5118290C112AD41CDF88565C9FEE52EA7B9F9826D16D37E2C6F3AB32F91AD
+E9E2B0D6BA7C05263197BE2EF961EE9FEA489302C145D54F03CE180EA91DB85B
+7F4C5027D75306C291834E27F6097A4EF455A1A411C43857131B7F52D869B728
+0D6C7B46AA68E00704ABB95D7BA6E40ADD0B93B195F72F57CE080B4292A16AE4
+1EAF970508F398F1493D7F84FACFA581BE62E6ECB06FB47E9F39B35556FE8AEB
+5D45C61F77F9974ABF17786A96BA4DFAE03ECEEE022D8A1EED85971329ECBB55
+5D829690560CF40C8E6CA34227ACA5D890CF24C25F4A4BB9B6A6B7E990AAD272
+57B7DD0391F8284DD0DE28546829BD2153151D66A6FB5AC458B63C15CB01EE68
+38F8D5D3484C2DBEC38E3FC3E2A510C0B4B2334A471491091B2406BF6F8E43DA
+E1E689704CB9AAD604108FF6D05C075B54CE12564D1817A5D4CF6E79AFEB3C4E
+C46E9D400895C6C0DA82F67B2D2940387081C334943F15F4667F9EFC4CD5F555
+FEC285697CD9CA5E14963AEEC7FF228434316AF56F9866A80424EF07FA4A2457
+F3B6DFDE70DD3B263D61B8C84F626B0E1E8D4F365B2DC1BAC58A082A8E15FCBF
+5C96D0E232CD3F0185AB07E68D9F1A016B923CE91EE21C78CFBA9BCEA358CDEE
+B46E5B9FB34EF2F69FA141D8C3EA0E92480C47C2A6072A6737FF0F2AB65B2412
+DD9F795FB0E35A9D3DC9888D2973D15D584959C2231860F151C3A7E35C7883DF
+E338EEA241B15447F2243D17B688FAD8591B27C72845236F0435CE1F4470C88A
+C15F331E3D2A44F041D787F841CC27244F31A4C88C7D41C750B4BDD8DD8F0F2B
+FAF1F196B0FD86D9BA2CEE99E37D9CC1C4C160B22C6FEF4D795EEDD06F4F0D14
+DAE1D7F5CF0307492F0A41A8F91F6B11C48160F40D24A2CD9FF2AA08CC24CE6B
+8DEA85B667204B8887B0D545EC89F02D21433CBC99E2DB036CA690F8D4958358
+5E9A92C52C75B390DC5D4AE6D45876A5A35844AD4EB03896F35FB7C9ED3CFF13
+D1EE84E5FE2C022E8468CEB011C0AFA57362EDBB3DFE1586CE6035404DF0D530
+D08797C9A4FCE0EA5F26654D45B10C6BF220125EF30C6F2AFE1718FD67BD04D7
+6949B2915D2044B4BB3FBEB963F216CB60DED61AED1A62490638908DC4D8FE89
+8031791840FFB2C5C20C09858663
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMSL10
+%!PS-AdobeFont-1.1: CMSL10 1.0
+%%CreationDate: 1991 Aug 20 16:40:20
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMSL10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSL10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-62 -250 1123 750}readonly def
+/UniqueID 5000798 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
+08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
+30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
+C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
+BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
+5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
+43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
+374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
+DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
+B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
+63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
+89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
+5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
+C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
+7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
+EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
+4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
+7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
+30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
+2E080C10DE923C1E45EC0B7D763D80C9543651FADF6389C92EF4A113933BFB4C
+E6389AECCE95D0D45DBAACC7BA5803A0DE87416F940F8F3BD1EF3B9C8A6727D9
+B5E8C867C3E03C91579A8CB58729B9B1B0C5257DF76B3AFF6ECBF96C615F921B
+1D30CBCD71033C4BFFD8BFC2A9E626CA24F62902AFFDF922022A2F59EB8326C5
+C2E5C34DC1FFDB588254CDE857AF699004F26F694105CE4533D65C90FBB6C726
+A67CB28D1494A6B4C1F7A2C1E18187E21CE23855211295A200FB4544DA7DBDFC
+7069FCB658A8B6BF016A7B25402EBC7FD5D5ACB4FFB029E0935283A8DD569E31
+F897A6CD94075335E4D7A456B8865A37206971472B3A0FFBF0B58AC6CE29AFE2
+C19B9628F1BE03D1DFA46E8B87AB533195931997D584CE8B80DBD4BD273E0AFE
+4BAD797F028065B4F5B091EEEA6A8CE012B9D2378CB05FD521DD7F31E66F6E7C
+564EDD55390F7A91FE973FB1992C6249D38694CED5774FC3A73F314AA28754F8
+D29A098472DD9DEE1A01EE839D45634B330A82BF3A23FA5D62D44471C69F3F08
+10A984475125BD1D66D25FFF3F23A28F34EBDBE4D7E9D8DAB6AAC9821EE8BD3E
+F249BD0B1DF458D69640F4A7DFDC9D4CF3D277A9D2173357C60FDA0AAA18FA08
+A27B767EBA731E81CEE8290E81A4BB70B38EE6AAA72D82183EA6049D777C71CD
+736AD721C58B6B3B621B64A833E4BCF0004721078834098BE74AA81613088D73
+CCC3F95ED1F4E4ACEC672E58EDD03362FAE451E2FB86265D92C51CFA00CD0E9F
+47D507CE95B0F727FF03F6F135B074E3CC93526D1E2081BA80314662DB8D1FD8
+8C5682A0953E11EE77BB35794EB49A733CC8D276C2628F4590DF05FF02571820
+CDBC6A249A3D687B46A0C1E63A27EDF0A955C6391F27D4B6717CC8CCFBE94F88
+A9A771D803F3D42946639B94F1D474A6FBC4F858D4AB6AE1F20C3C88445A0246
+44730F8C5BC4D87A90C2F0E083CED05B7FB5B30ECDF5211905A717E38E43506B
+BE252828D99B9350D099D6A26A23FFE83406FB18B7D78AA0AF99CA16A5FB12E1
+BC80391642832D374D6965E50621D418303FD0F833F7DE4050D577B0C96EE3C1
+5A990FB4F70494D1FEB699BFFB6C628C01DE7EE9BD2331B8F64C8ADC939106D3
+348621769CAF4D039E459F8F7CEBECB590694E5DBE75F0D156CCE899C94E55D9
+CB0CF9F6333269672DBA1A809053F3215B91F06986C0DDE941BEDFF69369091E
+8E0922066052386DA36811B904AB9DF630828D7F65D1335D79636CFB06DD3A70
+AC088B84406B00DC788E2E7FA5F7682FF7A543F527D6BAF81A26D456DF2B5B4D
+E2A75185B30BD85E59971F46BF27A44BF1ADCB6BE609BB9579D5581B792449DE
+675C335CF1C3C972EC18E9FA358E34EEF495C70403410B4C1B9B1D33689D8449
+5C6B4C8C54CFE29972ECA55910705D9E5C438B23C69FE8696403B7D3C435C0D3
+E7361633204D3DC13C1BB86B0E3C5B44FEF02B5E4220734DE3853C519B3224EB
+52999C702596F2EE11B1461624540345D0A19484729CD373CBA2262D6E2B856B
+08F83BBAF6E4E8D8FCBAE69D600DC69E353AC4A0AA968E975A4869B3D3FD1BF4
+0C0FA31E59D3DF0D0B750757FA264739EE21C1E17B7784CD681848E94A73456F
+7C530E144AAA2D227DC7EC8FBE9516E848E9E7436C8F2641CCA71D44D123E0C6
+064A0B8D5740F4610F9E04C9F838F54AA620017AF2DE291E8D9B0549CAA81847
+B32ADEBBCC91D107D9BDC7E476647C5C8716C1B74351C3D7B898386320743045
+515B4E027EEA7C5CDD92E5A5EF14D1DEA1923A6AF8D4EE2D568FCAD873287D48
+E7CC131981D027EC61635E864C9CC9EB41B364CFDA4CFCCC555810B49A6C1474
+DF7E0FA0A26E1CD9FA6B267C19698F4B320771D23DB65236F6283D9EF36FA1E4
+17C8B63105CD03DCFBD53934CB60BD54785B97F7196DDB33D1255E95792DA6D0
+774A39D60D12E24A25D87E0E5DE56AC8434B2ADBF921C14B4DBCF05120FBB1D2
+D7C27DB586F7416A9806AADDA2C3E8C35D90A85A3CB33BAB01286EACCAB8F5E7
+9AE82967BEC550CAEAC4EE4DDA0BB2849C88CD3E385F76EDD743E190077DF36C
+35FC5EAF0FE0BEB51B9E96C084F9837904EA6C6505011085039CA3F8F320802B
+7849333A6648A4A0501E8235B7FE22BEB7FD0E18169DDAE21302D41274FEA66F
+34F76C871479EB56BDFE2C4C392CEABB9338DC7B646B2A9450E1C5F4695870DF
+8DE484D364DECB01543FEA2DB4B3F920DDF473A8B0F1D74FAF5D7B727695D136
+ED2D164F50BE82FD5C2834DA827A78AD2296BBA19AF205F20D2FE7F1901E2FAE
+4F88858047394DB859B89FC9439EF9D6472A636D29FD537D0C03321754BEB67F
+B8BB1CE6A0C67819CE678C053279D3E3B7907034F7AA864486E08A1EC58BA760
+9D580805904BEECBCE53CFD3F5AC8DCF0BDECE30B55C4CC2E2AD194DF84E26A7
+2CD62EA8AEBEE8D3AC2BBA9C80ABA771162440CBD96026469E0CD15D239369CE
+A6E71FD89CC58AB2D0B9442E5C4EB8FAD6DDA534C8007721730ACBAC8776EC91
+3D5176A6951234BD40C7BF5A9EB6D742D59905910BCC2DDAA02F6736882E3591
+C3EA87EDC929AE2C7715D8A8C883D1C103FF115D636CA8C511805985332D5A91
+3870FBC16CD5D0D3ACCB414FAD2C464BECB6D077B59AA46BAB6E42F9A0766613
+FAF20E2B223B9046B4C95BEA66EF1D37F4F30E9DCC88D2DA27240DCBAF587890
+B076985C86EE40F900C0243EDC0AE74384BF8E038659514DECC40148A71CDD1E
+A0FB4C2281FA40F497FAC4BD5DDB3DA4F72AFAF7DD63F597EDC93829410CE362
+958775C70D83179565EAF3C2A8FE3D593C41A6A60C78231289689703A28DB625
+CD8BA6D34D0D21512279F308B09BAE7D09A6915B8D2470BD3C92FEFDA360ADD4
+998DE22C5A8EE6A9174928B337BC4154FE185EAEA6D073AC65B0A87D9CA9CF48
+D990E84DF5EE641B09DCE79221720A6F88962B52573B4B3ADD3AF29394396FE3
+0FE72A5C3EB21A3F57DCB05D870D47E62E36C1EE86B4873DF1576FF9267BE163
+FC8AFC3B17E4C540CF78C02A93C2831CEC7157DF1E52F32429DEAAF5B4FD63C2
+BE2DC6D9F04F586DA7F8BD877157DF58F2A96A67063CFE69EE11EBC80481DD59
+5D27B785BD2BDA34E761B7A186FD2575F5097FE4EA5A6EFD0B8217A37514B991
+017D080672647D13C0994D43268612D3B295234901EE176EFBEEF7BA971354BD
+A727E2EDEB7DF8B47DF726CB664594072F15A61BC9AB3FFB9F7E37BAD66EE3E4
+FAFDCFB90C3ABC16068081D63D0225CDD260948D872B0AF83E56AFDF9280B3A7
+1BFB48783424CC9E46A3531F565B524FC6D1597E62B71423DD71C31DFC096435
+24D52B1768AFB2BE10F0D5A3C55F2F19B31BC71CB84AEF323560994DBC10AAC3
+75F08093A710C518DD62842AC81ED3569DE5738D9EDCE2E111F5A9D66752A736
+DFA4E01B07DA6B1C7CF239E5244103A6DB79F6C3AB925171BF050082A81307EE
+E8BE84BDD97B1F4103D39E7E0F338634BDC86CF3885B9BCE0313816E96838484
+0767E5FBB55E86341FED70BA3185EFDB678F892DB727E0FF9D04AAF0B27C6432
+6F4C4E7192F8BB47917CA209E8809AC4AA83B7C287B39A7021B4E8320D25033F
+7999611F9E6156ABE9DE212E400229C7A4B2FEDB7529B1FCC7033D3095BDAECA
+686CC7A62409EF443D655741758479E0BB1EFDA0C1DF1F83129F063E4A906BD6
+79D4DCE5411C1C443062ED4B7E2916EFE5A0A0A761B99838367703BB0F70CAB3
+E304D2195CE2BC3092D108CA6D292528FED6BCB5053F4B28228EB785F79A5CB6
+295A630E9DCCCEB35FD287E9D598D0B668F28C2FCC98F4DB8DDA05852AF74181
+6CD518C40EEE78EAECB87A55CF8840FDEF36EABBEB8835255EF45EABEBD0B8CE
+1EC4390462CF55DA7A405DAC2AAB45D41B404D1E98B3BF205C15AB1A59DF0144
+E7C1F93C2CA249511A66034F834FBC1A72336AD0F83A76B0B25794F8F93695DB
+8D960AD71CA09FDF7D8BBFEA279F259418F10057B74C8CFC42E877D97EBB3387
+88ECAD938E6FF0EEAB87DDD4E365427E35DC352C30C88934F78007044385BF12
+75005729083A31BE7D56F5576AE3833029C5FD9ABA0DF583E575588BFA11E2C7
+5FB9B23AF8A6B3E789809475E9E4C1181ED9B5ED7966B976310DFF8531B822EF
+367674E5F5C83AD775B119C75E8CE9A7E6185CD0C350FA0D17661C133083A9B1
+2F8897CECC9D8A4B896FE10CDBD6DA30F598951228D427D77653746B5F70ADD7
+2C0D9919E48AEC1053ECC0203AD886E090803D4347F19032927BEDCC10342A96
+7FBC644B99837182212405D3E87658062E564E350BA2DD7311719C6CA9F230A6
+9105283D1AD5D13434BCE3232DAA488E8B2D99C5E270D6D2CE21FA0E17DF63CC
+32AA3147E7C1DB635066F4341613EF6BA1F1E88A68AE7F33070DE49C04F82DFB
+F32472E8B1EEDF0186CCEE5E8A8B3D64B996FE6B28DAD70005CEEE312B6AD9E9
+FF3562E4664547A9279078593484FEFD756A8BE37DFEDAAAA2E6D1E47EFD6C83
+00FFCC6F463B914113CE3B4F0440DB923E47605C606C1CB80631B908B3D97BD2
+2DA5A13F6642BDFACD245FC12938D78C086DBECD0B576D99151FB277ABB709CA
+4EAC92B612250401A3981003AEAF057C566E3344CDB0324B706FBD44FA33CC59
+6CF71D05B082EE0EB0EE0387EDF30E2080FCCEB351BBAC634BC2999FE94CD191
+3582F084EBEFFAA13DFD9544E6498D15B7A2F420875B2BF50AA293313BACD87B
+1FF73E16F50ADB50232A8FD537E24EE956A8FCCFC2D533C47E95C49BA0C3C01D
+2D6C57D455E83BC768EB984E9E5C7293867E2FF9145C09F4614449A74967CA72
+54BB6CE1663ECCBC6B362D1FA39061A53BFAB33259836CFEA813D893EEE72DE7
+534BD2795249F492A1B3B4659254BD4E8FF63502B0B4D0A3FD91A26127B02002
+6A0CB9311B6A9F002CCA6FF47C0EB57E646872DB4DE98EEB1A512DD3D7D61322
+53242F4D61BCFA210BC714AF89D3454EE1E71FA915B0E7685B9EBA6A255D994F
+98A54E6E4A5A11E37B244A6EFD42377318C9306F66B4719EF2ACCFB1BE8AE2B9
+38BAEC8C66087647FF6EA21E57CAD6E5F07A7B841DF6A54B07838A42A643FA74
+6B7603876CE42097CB5F3ABA83E90F9E8CC660502F304042177587266600C8D8
+0C97C4E68F4B31EB586893D3BE8208472B69FAA8424164356261B027F894238E
+C848F252C6C4ACAAD250138F7C4D8CF462B7FDDA0DD119134ACEADE8EF6C485D
+281F8F1C8BE7BF730F95A97BF5CDB6D4FC46DD273417C3C4F8118152BBD25781
+02C467504345C4313932EF9367DD8A639E149307BDADE6EBC2DB7D8AB794E858
+12D0FC8B103E1AEAD9D01C8272481A45DE464864C6CE500E769A0D4B1589B755
+A478DBDB2CDF70D6A1BD9498FBD435F8133FBCE702D708268B101DA1407E7CED
+6456C5E958091C19C562AB3429B46EB9293DFFBCFA57F333172042C518446238
+91192C5378B3370324192B2E6938D16D57FCE13642B31749A78938D4FD6CBD83
+7504286BACAC0B4688F425E5F6BA0534517FF93461F55550726394310B728D4F
+E718F22DAB0C1A4C72318A167FEEB088668FE8E63DBCAC774A4485581B745A0A
+A62A3AFDC241DA276AC37948368BAA8C6A73C0463016E0931F2A49550FE14FC0
+A9445CAE2BF8E8A0759515959E4E821989A96E260F8FA3BFA9707B177B4F6D1A
+3087D9C45CA603E5EEA0FC89D251C8C1B20F93979685B05B6A8D284821D8EA58
+83FB334F6D54C57F8AC7F1CE52CC228354E655FD2BF64631328B940036ACEA18
+DC6A3671688859E666B4569787E6BE9A6998ED8DA360CCECA6FA556F4BFB88F3
+2E9A023EC3B837C03120BDA5F2B1FB6BAEDA67216FFEA6FCC9F7A2359122D361
+FDF89EE24CD742992D9FBA2CBE682FCC84BB77A2115A1096CC8B1BF6B1CA3173
+33BCCB14061FB1B19FB7A63D7075BCA393E300FCF51F5E4E61F91320BCB1B70F
+4A3C8330D2677B373BBB7E5FE6D7C116C85C2F80F1C8FD830C33F2EF9827F2BC
+95A23CE89D2605B4B488820FF3CA01FAEB701C08A66772E63E9D1AB24EC1BD6E
+A95578A114D27C236480B4A3D081D0FDCA448064D1DEC6A69C1CB1587214C498
+1F8B25C9BC9BA5BFDD11104B9B10512E01E999230637943FF4EE2588EF31F711
+123BC5FE9D0F8B685699808459FA75E2B070504FB8F751920133696FF3DD2BAC
+3C69294FC2F17C1ED7A09715E4CDF1A400640CB152F4DFAB82D46D9C73846505
+6503CA88C82B449FC8498E94F59E7FF96BEE75D7FA070087E9D2E5AFE9632ECA
+F4B42D02FD09B4F5641A3CE6FFA057614BE30BA69003ADAD5DDF69E149213440
+C33178362BAA1B7D96B614518E5CFF521C4950C137A8177D0D5AB5CCB41CE908
+D6EDC2C703DF3AE17FD94533387E15D7D00D6F0781CA95AA345515E1E9C186EC
+38719F222D77F58ECA30EC071895CBC372964B9A658F3B2A6871B8CB0E88E598
+A0A07B0A2D70C04DCDA0DEB9F5412535780C89724DE516AA92BC2D70D95351FF
+319F58FEDFBF16738EBC3A181D572560B8F4F9E9C24031D30A80128564EB399F
+A41FA31B6EC7C53301FDD0D071901CC84BDF227F4C49A0A8F40B468982F63155
+C186070C4D8633BF90338456FD89DEDC76F17386AAFFBA0EE1DF410BD81EFC21
+F8DA25B5B7099BE1FFB47CD2DFB9BE864B78C055ADE72F79EDDE2CD76D6BFB44
+9F60CD307D74FF3C0769226A2E101F0E07035F833DCFCE27E08203C1B536F195
+AE7E168DF0F985F738F65FB07C869A3F910E5E933B906B93D0F1231A616F5B93
+B32F1BC18447DAECB6D81EE786D682ADD6392601CFC399A3C9F3DAA2BBB31C25
+1CBEEE8413274C58D09AB617B6CEC570F0DE316EFD331685FB5F4BEF4174FB2C
+70DD36A82A47BD7B9D37FE5ED95DE4B4E83859CFCA8E40ECE618343D85880613
+FD6F623A99C6BB0FBDBE03EEFE9FB5B1F0537B6E15B039970EEB35DDF8C0CABA
+C1BDE150775B68BCCCD34A46A27B9E4727C6E48BFC6E52275F4EB63AC30B7910
+32BA9897FEED0C4E996DB26A00489128EC4766906BF826DEA02E8C72A6C70DEB
+A95B497F58760D81BC80186DFE013061613CF676D96BB3E570887914D00245D7
+288D2AA609B6A635DACE6A003CD5C0F481A14483F131D100AFC2737FD5CE954E
+969C8FC0B9E1FF885E9DFB35A5FB68E98641836F98A6582E1FC412B1BA20
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.1: CMTT10 1.00B
+%%CreationDate: 1992 Apr 26 10:42:42
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-4 -235 731 800}readonly def
+/UniqueID 5000832 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
+38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
+D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
+EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
+A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
+F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
+4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
+6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
+A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
+E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
+1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
+452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
+8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
+5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
+DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
+BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
+741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
+E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
+E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
+D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
+C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DC
+FF798F2ABFC4F3539392985C4CB324B00072295FC160818BB0355FDC4F12E39B
+984826450553E3D271F03D8DC2D12A92A4D32034FD16DA13B876D88C8C097384
+46D8D7E41CA1A8979F9B07EC3337E70CBBE3A377235B04C79BBBDB66CE1C1A41
+89DAB7CE91F2FC0CAF6DDAD09992D56F72299068192610EE3DE5DB7CF6366B4C
+D74F414484DCCDBA449BFAADA39D0F27574E604E31CB513B18E3821A33076151
+C2BCB6E957C77A0AECA48C587ABB5E8C7624D56B32F80BBCFDC874AAD6EA5119
+C9B06886F08CC7DE5400E0F52B07483FD4BAF26C1556CA27B259F845681D61D0
+2D28B185C9F052844D9A5F91CF19210CBFB21B55CDC8C684448E9B5A1D249E15
+56632979760E2CC7075DF794E06EAC2C8E770828837AEBDFF1A5EAE67338CA7D
+F0A477DA679EAC876B6E0F0300ED4D9097E654F197198FD861ECAD138AD5B484
+A28E3CFBEB4CA387F488BDA739EBD767BA225E1E0E7CF5D75C85B4DE5437481B
+011B4B5C9590CB8309079CDE324CE4C2EBC40CD2A6B6F20AF0CA05B89586EB58
+4210AED367DCB3FC3A5845CC77126DF2DAEA475CCB4D94EA9CDFEBFAB137AB61
+D03EE9555BA9C6065EF9ADD376F6ED4971D546608D763570B9ABD3F692D505A6
+49543687AB7A8CD379693F71C6C859796B12E9C834E18DB0FC0063D502AEF1F6
+F5324EBC13AB3FEB378BBF9BA3A9CA9F2DC6C03E2D2102C5F245242F736450A3
+2BDC1E924E1C6F28DDFC3900CDEFC793B94EAFBAB1D8974A95B424C6F9D71EE6
+AB1414BEC47E836BEEAE29C8AA3A1BB09067CBABDE9701D65075D75A43BE26D2
+B0153E6EA2226BDCC9DD52FC8ACD2437BFFA60C48B558A3481CF70EB9B4810DD
+9DDC306C60835972912D1C8B91E37BFBA6D073403B7112D28DAFF0C7EC8C5AEF
+2222EBFA58B67472EBF5CE8986EE3681AB1CA8D16D9A2D6E64C3EA177A19D756
+655231063A387F1BC3EA15A1670867D9025A82421D1DAE6A674D9909398E1199
+49738C66FFDF170D54A748C8F10E22CFF8F0AB6B0C6EE870B589D3E3D9E548FE
+405D01D18D8D883151034AB0973A3E52B2394C2DB707DFBFB26BB937B4F16FEE
+5FD39DCBF8FF3B1A6258B0860829C1923ED50520680FC6AA3409F9BCC0E571A6
+9F9EE2C2838982303318BA603014762E1354039D59AA3A0D6B503AD545050663
+7BF58018253C2E99CBD1868FE34CD15C0F9ACC04AE1DCFA5B0ECFC5DF9D80D15
+4FE32A9AE6E9F87C93076E82523007C23212A8260C8BD482C7D23E30FEF4ACF5
+9A4B94EBF83A4F1B6DB41CDB54EC245E1EC5C4140CB4584F7B6056CE06000501
+FE9C79C1020C6A9EA3FA140CF0B55AFA82F6212024919EF66F56906D41A3B519
+0EFB17D31126A88C873DB1B7A25DC4F296C85F3047F9A9511CC4B32A3789D505
+9A3ECA5740856373192BD49BCA63C46B7DBC002AEBC4F2484BF5DBAC1F9BA370
+670049AB6F2E3AA634257257D168D8082D71B7665CB1890E68521CC7D2116F05
+21B3F4DB70C46070366D3EB6FC298C99DC41E03592BE2EC8AD4FEC813EDA5A18
+6EEB8E07EE584D6DF1F16EE21E6781D640040E2F3D71F9C58F4D0E9A3A34447D
+2E408FF2D02FFEDD33B4ACD8ABFBA9B66373D00B05168B4CAE9A6D8C91B7BD7F
+AE12BEC836733B44F11C516FE27E76190339CF63132727F9B89BC7D6599AA439
+3FEECD1BF36B7656F61A8E29ACB878D911F7A71E5A901BE5AC2F3690271321F5
+F449605B69B0468043A9EBE20CE4A863CCC0B8E283CFE6A3DFAA157D4A82327A
+E2608D0CE94322C23359177DCD061CB606F0961355C418B76B8464FE1B67BA9A
+76FBADDEFD86B2FC6787265104A6015D351CD7F90FF07960959715995DC1C933
+0F25B64AF8ADC5B11FC9647021D1E6DC9FF8E31D6CC6BCDB299A8F2D55DDF895
+1FB07798DA62848ECCA0A1D1B25D4A0A9BFB3AA76981EEE6C9195D9EAF6788D9
+0DC2DBC0F26CE50D9A610D168EE7BEEF19DDC6C9DE03E6F8C479148F0A383BD6
+546B6E91DB135DFDB5BDA10DDBA1800461CB74D777FE7ACF982157DB92A03236
+DC0ECB3E0E18BE59EE8C643D6B9B93E3E2CDA858A9AB0CC8D11B640B8AF4F85F
+8676E8F2AE9BC9203AE0A7BBA69560FEE8C0BECEF7287B0FC459BE49114632C2
+48E7C5E7F6F0D8B05C4C73A1458773B98C53CA1DA273D4BA5D4B3EC7C0A9A268
+55A040631EACDD42E957B42C0F16397179DE1EDB4306501F994B95D8906BB961
+884AC16DB6DE37FABF47FEBAB1889B5969298A4CE1883ABA08D185782BF7E358
+245D7446F7B7D39D4700D388D7552C77CF611AC3F03F1ED5BC00D83EA9B4B873
+05795A8D6429FEF89F51095B7E7DBD1A786024013CA226272D4EC78EC535575E
+14BBDF50E7EBFDC0BF0F8EED69D7C3D5F1D7BE8E1A769B3824EFD5098711B136
+1D09D7C22894430E0E3502BE930F9537738BACBE94F0803A55113297AE1EFAF0
+73287BC008475F9D80852C34564E3E8D8B13A3CC9CC9EAC19C70C907A3C16D07
+93310AB5CF482DCCFC02095BCF401A447EA5539DFB2C1B41A176791A7BAD7270
+C36A9A58102FAA407217960BDD5C8DDE58EFB1F270F511A93812E932CB812FDB
+2A4EFB93F90C29A8A2195FD4D219108BD7B5B08B7FB3D1BF98A8588537E88CAC
+5196388E84219061DF0238DD44F0457C0A56DF926A1F0E7A702BD7DC296F7A9C
+3B5445C38E1ACA49DD56A305F4EA99F110BB19E1AB584413913A36B64400AF52
+F753FD399165717D843F67640CDEAAE00E02BBA23E92B36C6CDF9C31B2A9FE6B
+1F44E26ED3890E41A380A3FF31F75F3829911955F95272427FCB7ED6F9E0B6DB
+A82C21D2E38A5693652ECBD1E93E44A00E730A5C0F9480D46C012FCA9319225A
+123D865C801DCF29A27AA4BB9997DD56D94B45EC376FAA0AFE593EE3621EFBE8
+1496D9E0444C70752C44876E1EAF456C7232FA1635F62414CE4C5898439723DB
+9DC782CEAFA03FE41BC9EBB023A739A7E587E3B8CF64B8BA49677F54743A22D8
+F44AA72319C81EC45BE9924AFA4F435C79640D1BC4DAE1D43C228F8090594808
+6AF5ED36281008A49D1B259F8E34A26B7B98A6C1D6B33A529AB844CAE4A91C58
+4D2C8131A2A8636A494391783DFB5E8462772146EA33790B0332EF0AFA1875C0
+FF76F48FE3F1FC3A474B48B6816A1438672A670CA68DC45F9302656DF972607C
+7A94001AD25ACF95A68480D893CE5F98559455CD63A26DD65BFAFE6998A41482
+F27BF0F09FAA54602E70B6C2D0C3AF11EAE02B6C9A855F63D0688504C71F146C
+9470695028D98A268F5A49ACCE9767E47988A9360D6628434A9DB0406BD31BB3
+55476B7F5D42D0E70E242D1359AB078C8ED3A06AE6CBFB72F15547EA6E0139EE
+6712C2A93549116867CE43A9DFC048900FE20878E36159E41FD6E5E75D1C426A
+09ED02B1666CB47B6C124B003DD8AA5D1D51AF3DF6529A2F4540E7F4384A1114
+0B38D48DFA5F7FEE6FA00FB8AF2A4E4646C1D0D819152DA147B895E57E584474
+86B6921A5D22A16EE5F5B737B660DF7968BA456E5EBEF34270A19964B40429F4
+16083B93233C17E78A5976E8F673523DB86F253CCAEEDEB8FC70768881121540
+16705583769033CDDB1DE142C8D117BF2D817A24C84CDF3451937658A92B5F49
+6E3BD4C91C94C13AC8213AE3F20A6524C675C34FE2317E0F0DACB97080A04634
+721978D1C0C3B9F087FAEAB8DEF57FD1B0FACAC1BE30FD1F7652F491104D5BCA
+6D79285DE55CFE3B27B939A0414EAC360953CA32FCE7BAEE4976AD39CC7AEBF5
+58F9850500497A31C70C16BCBBB56CC418A93EAB6060D5A80C65728FB2CECEBE
+2FC02F4981AC1649733F2469BBA51DC2CD078955E3E14DA9CFAB5C3121564F3D
+33293B93F015A7A23CA470539BB15931E427666BAB3B3EFDF1F7C91ED9027628
+A313E06A021DCB73A192691C810F6FE1DBB9306302632CACFCAB07F1FF911F62
+4DB2ECEADAA3FB343B07BE4BB0EBB3EE66615433BA4B4A4F8B6C77279C0125DE
+9E9A6E78728D05A1B1DD2B84405AE9E0A8D9B48F98C1524AF5AF004FB323CAFA
+572C80F2AE60A3C109623E05C62208DCD91EF74D6216C4BCD1C2C7ADC592B0C0
+44A372CC4094481C30AB534237CCECF417CA529987B4DF62FDF0B99D4D0268AF
+EFCC1DEB65582D49B17EA94B936F78D2337D1FDB666AF779A3D799B387FC3CC0
+074F981DDD0F8DCFB7D8163B6B13C5A0D93240B7277E97E6E97693F4C8F07E23
+29F893C2E350611D25DFD1B6511AED3B34625BCD4ED830CD6BC5E1CBAACDA7BF
+7B30419C9ECF6B19D9B9D38483DAFBD5726CF73AA8E1EE0E28F530115E7C87D6
+0DE4734946B992A1CB10411B9C8672EE7CD9654ADC9D471EAC5203357F521F76
+F5DF604AE47CACC8AB4C6BAD6D33164CD1435D2C3286FDC33C0B382CCD5A65A3
+7A6772A974E4BF1810A1E7EB625D43CCF3D79A2CDEABBBED3E03A39FACF792A1
+B3C606B9A9BE04F46872E1FF7B189EED094E5B772719E6C9F1B35ACF8C86ABB7
+14F8A3B6BC29EBADB1DC4628F52CC28B69F2E93849E19CFF6BF9083E7946F27D
+813B46BCDB237FCF770C085F2667857ED77714DB10C12A2603B784BA9EDCC76F
+6D78A6EF5755CD6124AB838BC30A617B5A70CC56B60AFC9835F953955DB4E9AF
+36577B0F06133A24F1014E9EFAD6B3C61A6B5DFCB261168F0CC3672AE0BC7DC1
+52400D7DB600F6874711027A43504F50DB6640BAC057F66E5CED2930424E12FC
+5E7C06AF7B6CB754DA19F228D8D7FCD42CE7736BA4031ED7CE66A9A7E2F63C4D
+06E81545538914AC860C96EDF5575D97138995D710EB3C3455A45B37EF9ED205
+E62DC5B97CA06C85F68A2BB997220ACEDD7C5663CC5046BA35D9EFDF89321A3B
+15DB5E266FC6B718F749BF053219024F142AB08ABB4B5CA4FC46F0BE33FEBD49
+1CAF4D4D88705BF8104364A3747C22C0F534E7FE185C6344F57860BA6F30F26D
+54B8220576A16150AF93397D065010F51FCFCA9F25B299AF585117047B83A2B1
+8DA384798970A750EB9A0D48E234D1ED0CBD2881A6DE1F30E9F65B98C489632B
+CFB54D7B4B6C66A3DD42BD361CAD9ECE48881D740BD04F895F746D3CF067EFE7
+6F32C41EC405C6755569AB3181E43277CEFCB1D1D0BF0A47AF276E1A5358D129
+3DA5EEB617EC5F047F8C702A7DC2C6F5833E1F474AEE2DCDBD997A81587E091C
+D8F9E9F7B37FB0637D46DB8851CD09B9BE943E24C8F084A864DC105BD482390F
+0C2AC99FC5E0B80C975CAE19E743C3313FE308266B9F716AD419DBED3AC32FFD
+261D5B8B781946BB3F740217BA45D88F0A421CF0CF3F62EF0F9F8D7BA064EA3A
+0B7707568B9E735F30E11C29370522F3233268211479A46F8155A90F4726927D
+D3A3D83A21E090B8F6F7FF784D9C385E8D15DE80C3CC596027679C26C703A527
+A445C32971CBCF21E9F86CBBEE4F7C3F16CEA170DDBB8A9B6C14F4FCC47E7BA6
+A8E42A8FB6A528276A8CE9924177376AE430EB4239A0200EA3BEC776ACA8363F
+6620FDA2B6F92108B349C8C044BD39C360134BD2A269E3449137442FA1817847
+CFABF3160717650B9AEA0437157651249D7E2F2AD4D02611C3E46270FBFE4A9E
+9A36E4BA1B4D78CF662B74AB38127DED2814251720ABF916A18887FA66F26994
+2AF2EABEEAE826CFD438D37ED72CACCF978CD0CF59E18CCC0900C377CCE06BA8
+123F4959D8674334160A7CB516B608D6477955FD8E8EE0159342378EA68A6275
+81B6810503605F81227CFBC99B2EE5B3B6AFD0B12742A12DD7D0A31F1CABD722
+E24903FF815E01A681335D70D5B8ADFCA363411DC101DDF53E6EED56E6C5A3CB
+A2B0914A2E47A9677A0A5D0B3109AF55A823EDAA6A568BC2826534ED563D549F
+DD4E4F578F3E46B74064E9B710D324965EB68812BECF707ABDE547995B48B5DF
+16FE03BCE8128529602FFDCA6055FAF3B604DCB4A0D3F7692237837BD8ADCC08
+722CCC3D26D648740838C5E05834089B3CFA5B0AAD446F416D8B5B0B448D17B4
+2C3ED886647BE375BB21C4235FFC39968B835A1104BFF01642F08C059988C2DF
+D780994E379DE7CB7E8DD5923B5DBDFDAC249E10D1C570AA2B295C145DA331AC
+8F5A9266044FD85250CB703C9F51D77A48BC34BBBFED37C8A2BF3BAEEAE61B00
+53AD07EA0D7C9D16F745BC9FEC8C28A048FEBBD89BC50D26846BF0C33496BDD0
+C9F4F453FB7F4B963964A342C9DF7649AE7B8DFC525E05FEE7BA8D8BFB7D3705
+B2290D51FD5E45CFABB28F6335FE47125A9D9938DD0894F5B7EA224CE04FFE56
+81CD3B6C1D11163E91B47C85185EC13DFAB9C8F90D487A3C5F90746FD58F4556
+0F6E23709307E75FABF476DF7D8E58447056F9D4F87DD43C64327DA7A74177B8
+4C59C7E25D8EF13EC769E5FACB4A227D8D0FBABBAB5B35B9693E314C6BD805B8
+E626322570EBDDF24104B5EAF96F29E7D3191DED0E245E2F36E3C811B3AD89C3
+4501F20FF8CD2F55B68B21EAE312A2484441DA8CF84745F96A229562FE8C3394
+094A13602280D1B14F2610267832251909C75D440742C38E00F9825DDEC2C31C
+AF80EE42E75CA755AB7229073C694D2CF2536FDE08E19D02A32A80801DB87B75
+260CAB10F83796A963F624BB0BFC897727C43E4FFCB8A6CE5FCD9993EA2CB913
+DE5DE94DA9ACFBC9BC66BD4B642FAFF612D804BDFBAD470CAC2E6F29313E0FC1
+B30A319F3B5E57255B8C050863477E88317AE92889E87DA63D6650596BD55F09
+3C49EAF4035159037FA5CAB06C90DC70A415AADC0C0C596931FE391C13100105
+BBA0D04726A561B83E330D1F0FDBD53CE9FE901AE485117C0B1F1AB2BEBBA68F
+66965929CD0A61540D76696718F1C146B51671F2F42B9947FC9D380CF9CF5BE6
+E6AAFDDF9AE42FE10E49C97EEDD35C24EC1C35E217FD0AB2D78EA8E3758B31B0
+562937747411FD02105A77AD598F7DAFC4F125BCD5B8B3AD92BB47CAA5424A2D
+2DEEBFA8F09B5A1B303BA84392348ECDD98B52BAB49470C914CDD33079F094B5
+5D8D1F35FC5122E134D2476B1EAD5A35809D83A6DB7FE011069927943854BBF7
+85BA25D418A669B075530FB3D4212934C46BFC0C22AB20883AAD710EC22F4647
+0DF5AC66FF980CBB11F689FDCF37E8EFAE5CCBE81AD506419119BF80A544DBFB
+24983149DD58E10A4696007DCD06B6B09B1B3A3B01C98CEDD9E19258BF0158D3
+AE4CDA157E23930D86D54E8C187D338229B90507911084F18F2E98B22762650A
+372C591F1972078512BF9814269EED72570B98C7B8F59FCDCB3AB5D889F86A05
+5DF4A8CFE1711A3E5A880B546A6DE4B105A05299E111D4321BB7EC9CBFDFBB2C
+C55003EEB86E0AE25C748BADD6CCD47E392FCCD186FD98D978AF29EDD2CD0046
+4EF977188604469AE4C4FE0548721422428EF59C52E2235037A788C0EFAAA709
+62EEFD6D43D7CC92A0EB4E6C5366D93E3017DA415D2B785E384963D99803EB54
+C5EF81CC98E97EDC17A5AD312A114296A0FAE02CA973D77EAA4AA4603035C2A1
+289DE3B9299A9236716616D94A96207A43EC2810E011F12F870E51B2F4246BB4
+1EADFAF7CAB75ADD29D488CAD4CF93F4D156BB34D931127A42B450ABB03F8FBF
+1F167D4084078FC52801314CA4352A913556F5BDBA8ED21FC35D5AA0DEEA725A
+C7CBD7B1F6A019DCB44E5D01DB9F3E3FD13B061BFBA386A0DE320F50297DDE62
+1ED7C609E6DFC0AF71269D0B196D6A324D6B0F06E62F5F619CAD5780C2784235
+71C405CFE8A3DC7D0DB2434DD52123A56041FEC0524EF3D2D4244FD977E965FB
+B20E843FE6367B07E0F5C2D8EE33EF7D702EE36B0B4C6F67826F8B894632339F
+B3AEC46A8E9F1C10E079BD6745576582500E77AEC87F6515C0B1E5180B66EBC9
+F496852754AF655DF9F8A23AF6DC34A7D91C04BB385D7EA69785E531E4768CC1
+B9480A3D14033509AA89C6F684CDB58E9640C1585BBA92E4791D1D6BC261EB8A
+2F0AF7B7B049AC14362AFE6E0C84543A50ED0F6DBAB92705763B63305EE4013A
+169BDD419CC36EB5C54AC805275B1D3F94466A4198B07EA86C40470A2C213E6C
+82DDDF1C9A7CB3F9D2B5E044954B8ECA69D1CA9740F1D8D92E5520F33BD8FA09
+1B596E38500E80D5D7A7EA32A81D16CC83F31D3F0E8C6E707F6930994026A5B6
+DB3E55537D01E255F04B76083CAB6C82F5B0DDF21EEFF601FCEF44558DDAE2E5
+5E3ADEDF2BB1C8DD93FE250B1829369B5CCDAF908D35AD79D8E2013BAEC1597F
+AE020CCDFD6634BA07600D49F526120CA7698DE44F932EFCEB41E3463230C9A8
+488933C97EAADFDEEDF37E3217AD882030E3373433FBBFBF1A7A332CB93D965C
+5FFFA7F50AA595CB223384A7C65B0268D9A66B4D7B07FD8ADEC8A93B067015F9
+138E1D08341B44D305431D8A145F3ABB361D3272362F32CC451B4D6AF9D7C8AB
+C7BE31CA6919B5ECF7599653E9F7F0169FC3B77E7033DDDCD295E71B747627E4
+F8C1374C162AD302D6266C44557841C203E55EE9134EC853245B0DBB9CC1E882
+4641B51C6D25523C1CEE3EDAFEAD9546DE64887E0FAAF5652FAB6760ECFA30B9
+83FF7B2E96F6271BEAA0A27AB16EF99AEF54E4D223EF7488602095FF153698B4
+096F6A32C400A413A1F79319EB1BED6B96B809C2ED91FDB797B398A4348BC725
+E840B39819F8BB14C513F40911BD0217FB927F46314C512E5AC58FD0FB050F47
+05667F9966B4D49A3B3BE6C595B123C3E135E214B4A8BC1D4FEB2A0914799D8F
+899C07F644FE5237E7600FC2C9E56BBB4C7EBB57C8D35AB47E47D1ECBC9A5F7D
+DB0C03097F557841A90B96980A7ADC64DAAB5C9C983F269A7D68B382C571F90B
+10839A278D2B66144DD827F1483DEB9BED9D564C7417BBD74D38EC5A5F980FF7
+431ACAF8B1C25E97BD2E618563FEC54E6216D8C889375FD52843258B0A4FEAAD
+8C9FC3BC264DD2A0C5DA603E292A0D2AE2015840DE198C621F41B82C06496CD1
+20D66D5EB12AFB2D1EAE11DB7BBFB4D8D01C52D0554A4BED7E7A2775CC5ED363
+BDF308DBBBD0991FA473D67CB7402FE577E6E0FD36EDD49BB0F2D00500688595
+A73113B80D54BADC72706C2D25F4A4E57B14990AA77611F50F2E82DD0B6FEAA5
+A111C01F11E894AE310AF5A29489EE5E2D525BD56D000A28D1D9F3A06A829B89
+7A63793C9B9F548417CFD37511E60B53750CC474080BD2A1D6FB047A8E69FF96
+42BB69D6F537C873EFF26BD2AE730B5806E1A4CA34AEE509318C7B74AE905F23
+BB6B6614BE23AFE70CBFAEA5FABC5C552D62CDBB6DFA567E37B47CA5D58CDF9C
+11AF40E8683E1096AAAAF605BDF6DDCCCFB5ACCDE07A5ED05A3992D8B610A2FF
+84BF85CBDC72C4CB1C13F5B99E5B5382A96428FCE80FBD77F47745F902C4937F
+7F2372D562A8E0D21730727598310237FF8E0B5777F5468E651F39F9CC7AB803
+722494797C2690D07984496A8B01C344920CD0D69336AA9E22F66597AAB9DE36
+847E1408CEDB4EDEECEA5FE4DDE93599A73B7748D493BA5FACC4DEC1F3E041BC
+3434C05F9CEBAD4216351AD2B91D70A284EC0A3DAA64A21CEC0AF197679DB85D
+2C3E2850F92CBD675C60B5D7E98449234B7F055B88BB778AF8A6D087288EF249
+B218BC47F923F9678D1F59CF473C6BAE2517A7549AAEB683ACFAE239C6307DCF
+2F5F4441E66587158F3BD7F8CBCEBC98FB86AB6425DB3853C2D20892774D8EBA
+24E5C1BF43F1E7715AAB440060EB67358117DA2E50E94F236177E05138F31D09
+9123702425C088A2A9874766D9DE8F2A5BA85A50BE7F0E433586C17019344E7E
+AA21C3005A05EA097C9610C8CDA288966C124180A9C02229AE30CA07CD3D49F8
+7FE20D96966FBD8EB2FFCFFBD7186C530A171A959F658D99441F2220CE047ED6
+15872106A563F7D9A9EA96F63EEDF1D3BB72A0E25BF2CE11070261FFB7FB4D7C
+C75DF9E8B671D4C1A01D7F6E4B6F4BEE015FC5F9AC46DD5D1653115CB7820BD2
+DBF46CF8F4D1619BA29EC07988F5D368DC5B3EDE01B84AD865FFC678A8FE075D
+BAF67811FE825D3A45A7F672A3A870EBED0A901DC42D5D645A2C90E12E9EA244
+23E73E6D5FFFBC20E661DF6E014C064FBFEAA09D471F74D8506998CE7E30FD88
+AE5B2C3DA67F179E86CC30DF06945186A64CA9DAE60C36F6643A8C567439AB85
+489BBE34676CAC134777145ED15CC7893E96EF9A2599712F7FECF13EAB5F6FAC
+EE2CD519B3A2D70832C6A70A910C0BFACEE1685BF1D1F130D309A125B352DBFB
+743870849A56054C8C80E9AC9A4B8EA3F53F052A81CE02EB79A269DF90629D32
+1D0AA2B37C0D0EAA79E58E77394E2D2D13C0D89ED9B80A6D6986ADA0F66970BD
+B13DAC056B7C6CF640806733A0B5B3986FC6F7D5F256EDFF419EF0DFB8E96F87
+49F481EC14247B72DF51F08C8E7DB57F34C1E141E22BB7DC480DBFB4B496FE14
+D82A0E32F50668D5B523BEB8691568A434CA7F6FC74872FB41464B005FC97546
+C1D724862B4D377E35192C8A587821C108CAB632CDA4FFA7A6A432FD20776965
+494A2AAC1B2DE27CEACDC36DD8C24C50F94750DDF8F1513EE8B74F810A7F73E2
+17832B8C656A3002427FE13BB6652F8C560236522F827D6629DBF4A7DE91A7AB
+222BCA357F108E23708E166421AE339EE8D39BED32FE7F119EB29BA3D387FCC6
+A9E8BB446B93F30A61551EAF41D2691AC64051AF9C62B5CA634F292971B2A52F
+DCA6631A785B5B8FE4315565128E4355718B13EAD903BE849C49870222DE6CB6
+DBDC2ED4FCF3213B6AD2123DADA51C5370B292DFF210D48DFDD0F177EDF5F4DE
+BC815FF64ECE48DAC060CE24CB4FF4DE718313F8F5D7471FF457062943E81E48
+DA5BDB0EA68654CDF60CD24909AB0C28D794D16C29D545E4776D9E67419DFE23
+FAB5E4DB6834EFE1AA2E911420A9C0A4A1091A205453B1AF2B92F66DE1DD5D27
+A659799F5645BF801B6D5ACEFEBD7AD422BF4A53A3B46CC532E87026BED785B4
+9EBEDF146F38220E3E74D6232DA55FEA2D8BEF37E836C57946AC681877B7E497
+183F6E545967A4911ED99586E6DFD24C043FFA3D779D472756E0C9A091BE37DA
+3CD5FEEB37C9CDA111963503A348268917A42DD084BCADC8F23A7780ECF19797
+15BFDAF5FEAAC92DF90D41DD3AC5995616AF80751C2A3C0C8F318EDD2AE56EA1
+CCFC33C34AD2D4BD047DB89EC699ED3293E2B3F8B381F8152BDF7A0C41437D53
+458C177E7C5E62208E06A32AD8B08BE0FD9853E3BBF28DE6973A425F52102C0A
+E5FAD08FC438D06A83BA49BBADC0AA1ABB9481122B53F8AD867622739277C3AF
+3424751610E75ECBFA93EFDAAB0131DB927E7A88ADF95AF9136FFA2805DB6DC9
+63E0626D7F1E4498B86D2FBDFBAE1E815AA1B7CD45170BA89D3709729EAE82B6
+0CFAC4DD5D4C7DB25B65BDD7A2A977F476F74061D57F3BD805EE17F43E22C054
+D4A5796BA414D5F9A8513EA4988D2587D0CE2A322F1F3C36A8ED33F0D627CC74
+45EB3EE8AEA55F969882AD1446B300783C52BA25D1EF5E0627CCD8A95E0083C7
+50327AB875BBFE2E6775CAEF79067983B9C80B354FC4FB39F3561458A3590A0B
+193824A36CA7FF408D5DC44583D603C44579DF05F583688F59DFF1B9F85B4822
+DFEC44AFD63E20F3DAB490ADBDA7C179ABD2E3E2EF5596B37E39448CC9B2E7CB
+176B3B1D9012DFEE0D8419B2310AFCE83058F683834D3347A8D949C5A4ABE2E3
+3E6CE33BE935943E888ABA165FE509EFEA2ED3AA547A51B20DEE975CBE89F40C
+7ED26D45BE8E0F0F194749B600AEB30EB7D1B149A595211984CE60CC61087D2D
+AED8067995C926FB4A38D9CE9E6DED10EDF9751AC2D8EC7CFE15315ED97A11AD
+00BFE386240B385E41859B0EF0D3BA38D2799380BCA3FDFD6DCD96A3E0C7BC05
+782CCD39FA6CE31660C91DA7468E8F09F6EDBD8BAA3DE69C6300E084E21A3334
+5D01889B87FAF43527419B2A8A62A6CEB60EE8EFC7D905346E6FD7DFD96BA184
+114CDEC8E8261472E5792A589ED4B93BBD7DACAD5CF6F9D5E418D9981A4075B4
+7B1B50D2A177BF089E183B81D17FF69F342A929925B80D475DE83614A03ADDD4
+B1FA1F1EF027CF48EA9004BA981C600B0F6EB3DA0D092E780C6ABFD7A5B2155C
+66B0D68C60473C23BD1A259B64F0E092A0952F887B0026995721EE18F3A5CD80
+D63B8196CEDF3805FF412CD4CF155B266BC5D0127959842BA707C5359DA6AA2A
+8433BFB3DC903935E394487969D06906905D715FD4A21F07C646E32E56DA847A
+FE76852B14833131860DD3212217D7847CDE40D3B0825DA9BC1C8FC598124AE6
+A1AC381B90C5B770AC1BD39D7F567819BDA0E14EA1218E494E90008AAE44436D
+ABCA08FBAAC3B57307817DCAE9EBE36E32266F5248A69E469B479716CDC5E104
+1121BA2CA11638F29BD6F25578A4F16515E90F5180A1DCC72FF3178B7F570979
+B40AE28F3FD18D24B630138DBE04D9944A9012D9410C8609E3D32AFCD0ABFB33
+1D01046E538DBD89E98250F661AE8C309BC6A9D249317CFB6E2FB10A6AB42ECD
+F7D0651B65E1FE7B2E9FEF10B7A94E0C3DD136F85D96579A01B2483C0161F7CC
+53C5D2FB83FE098F3996A8A6536B23A2368FCCD9475E3E8AC8AC01902DB65275
+3BBA04A7E8AF3DF2BC3B7BF942B65605F8E31A2F3C19A1E14BC05678DEC03E32
+E266993924E7A1169AAA80494BDBA286D29B843E5951DA16EDB5C357D7AB9564
+2A00004C9F7ACAFF4D97D169EEAA8C640972832004AF45322A1AF43BD769B323
+EF68D83CC874E4C95A08D026177190C7BCFD73E9F65781B8005D25095E1E0A7A
+A5650B34FC85D676318E9F043A024EE98894E742EAA53020EFE38FAF320191D2
+23496DF2D9B374BB643CD27687DF2D32EEDEF0BC159C41FF6540C453220C4D5C
+0CB6CC9484E95561027B09F01CB3D6E6DFD32C7479B56A8902B46D29ACABCFC4
+095720FB96758B7EB6024F0F6A14B0CA7B74E3D6E773A901523E39A3B9FDCF31
+D0F41F13B6B003FABD50EB692FFE27C2486B6E6E3BCE9A18A68BE7A05344457A
+8CEAC34341863F1D3FEB728A695DE226794C56FDD09E8C0B6AF0B3E3AFBC5E2D
+76D4B0D8B7D0C3923262F1416B21F086405F82CC41C8636701734506D17615D5
+FA9A829925B90841D02D24327CBF1D75329FE213BCD1026ABF8EA98C19CC36D7
+F9D429D15468CC08CCB2080CE82C3EAFD2C965EFCFBDB7B462EB20D6EB239706
+5BA53C0D08CEE85A5CE287A7AC794BE3AA47F1BA9BB3606499A7D00014B70383
+56F71EE693D805F99B6C75CB5F727139C88F2212A335BC7D3AB3169E86DEC401
+0249B7E332EF4A48FD0EF30B1BE6B00C8C11139BFC05C72523BC7BC6538668F4
+6F5E503466BADDB8856DAEF7762726969A3367BF089024DE96BE958B2059E305
+E244EC47A04F7B182B7BE3D4100C0E7BB3DCBC40B6FE3CB9693CA414CFBD74E2
+549A89B9CCCB473112F55E24A07EB37F432BABC8909B22B4563C14DB51062897
+F19BACF4776E50E9D99665392A63E9A341F89703F3FDA3B1BE2E865B3A4BECC5
+5825820E6E2A9585B7F331FBCF910482BFC95995D3266A7493A5F96123FF22FF
+3AA4C30D942340BFC3E92224D94D51EA626974352F1F6D7AFC54BE3D5C50E18B
+4D0B883219662B94DCF4FCE2C96A983F0D8193CACA59B579AE704270FBA7BB55
+DE96525733C4C1EA776767E6167191C7163133F8CF60784369DCB07E0D7244EA
+578AAEB5A9F9C1B1A845AC88BB79ABD941931CA9FF92FFB88D2F5E3ADB218D75
+03E9B2488F7C5E0307382A921FE485B004809F0A7FA4AC17817E4E843C878FA7
+C3F081865569C84B071DD95716908B3E9A016FCEBFC50E0B28EB6B3E18958A26
+288E67A1384CCD0DB027EA2F72D1C5D6221D98A37DCCB851E51616BDC99CB8B8
+61E8411E7AAD6E33B1C51FF1E00EE0A27D1357BB269E7572AEE6E7722D6E5FB7
+16F6DDBFDCC849ACEEB3F83109677DBE07C461C33ACF5337E1393C85AF7F8135
+DEF4536AA7A8870137EC1D91D95B57A3F68D92E41D8FA8986C14A84A1C5F2561
+EC15F27E3A542DAFA80202B6418CDCECAA4932E9A1ED3218A790D6FFD9D89174
+587827577EC71E26F112BEE3C7415BF884E437D5A551E6C54FD021CA28938944
+6821C0D94DBE88CF2ADDBCEAE5D1AB35BEA4A0B26239943AAF1F4602F8BAD9F0
+0AB61FBF4F291D8D26E03AEFAE3A237EFCD9B5DEEE95989C0F5571D050B38162
+99A5860E2A6EF3DCB182F190DF7CA9817EC0AA3C9077C4ED0DEE384DC0AACC4B
+0BEC2E7A6F5A62DEFBCE3360B5165DFAFBED364DFEE1961AEC127E016BC565B5
+2023EA6C5551E64C454D2DB7A3EF07D4CA4F3C9B9A08E6390339630D7719D383
+295FA416F5FDAC2C563F0ED92AB11D8972B902AE1DBC3D3D17DCC06EFF2077B0
+BA2226A5EF618391225E02580426CF35D00CC95A43B6745F5BA1AA6CE7C365D6
+E512B08DF7AE89062093BBC5BC3078FE7222706C207E48A91479DB88F26397AD
+841350C686DE39D81B397AE005FFC24CBE4785B53BD56A2014AAA82B81286520
+9C03DCBC5ECE61419E4460D5EABA14CD060BCC56335C32B1B88E126DA0F450A5
+94EC03EFE8C6FD1A7C05CBE70E189CB320519016C15B7931CFBD1E0D8FB96911
+C2440DD2023CE6067A8965D7C7DB85CD7CEBEAEDE39FF5B3F13ECDDC3B00CE07
+89351DC194A9ECE26A3B67183DAE377409D685460B6BA691ECD6EEE168A0B5C3
+E06436B8026F9D6308AE11B37D487B060F5C6ECC4CC08C9E7A022BA06ADFDC90
+AFDFBBC29194E767AAEA640B4E5EFA2570BD9AEF8EF9D3A1DE990EE225C2FAF3
+5C38782EDD7E1998159ABFEB4B91453DA8382E86B622B08592E8BCFD020EC8CD
+6952F0D422CEE5DE5F6B49D38D8D0FAF0A01327934FFD582BC29E9D9F4E45546
+DF4BE4399D54E050B79E01D34C74D72155A4E0D9775DDD3145B2B3A5FF0B0820
+7AD1F5E08FC7B7FA1B4F04EFD9F83EF42F2A584DE64B4700C59D8FF3725ACC36
+2F8996FC26ED7F0FFB8E7ECBC4B6D27DFFB3811FD6532F84091205FD4306C17E
+49FDD7B4807252C5B2CC214869D837F885352EEF78ECA23E64D62A9BDCF1ABCB
+10C428B8E7BC241875E5F58F090A8665CBC16126258A216524F7963EAB8C5BC6
+8A509E39E1F791DE2B11AF975BF1BD2288C3095B3F9B6827256394B9C9C872A9
+1060215069EAFD87E0B72D814B87E1BAF8DDA1C7C9A0C951F08508D66C046A7C
+1D5168900362CB548633CE1B65134CF8BBE41638CB29B32E4DDB7FC8E27689BF
+8A455D9F00F6
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.1: CMR10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-251 -250 1009 969}readonly def
+/UniqueID 5000793 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
+295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
+409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
+4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
+2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
+0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
+B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
+24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
+43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
+D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
+5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
+96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
+7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
+0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
+B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
+AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
+97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
+FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
+20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
+0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
+F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
+3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
+A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
+5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA1566B96E221864A
+45A24ADAEC63F61C9FD18376D3984449A1F998C318A8FE36D0D5020E18A49625
+0F3BB603BA1F3E66FF412F6A32433FF8BD2968D79CE4273AD0E0CDDA5153C2BF
+F8A46A2244F9394A49D339F763F5A7411A3C29336B21CCB01723705AF589B078
+3763035411FE36AB5D744E81379106890688CB5BC41184548B7FEBA08DE7288E
+E6570FEA20C51FACE8E8F824BB61A4A038AB817C47B87391611B77928B2565A9
+3B27A573C05D36ED01D8F27CB2C793370FA9B90021B5696280A55F2CB6117B64
+293EAE0EA5A243F56FD007773CA35DF71B3D28643C25210CCE25F37A5095D6E5
+9CAFD99DD1DB0D7EAD454C13464DF6FF5DD42339797AE5AE467084550FC00139
+6EE818C6365007B2FD6E26285B832CFE6EA7E99665A224C9813C036CED262639
+3FB39C1F05FF8F31D2DEF37BB9B883334F51EA1243332FE1E3FC91864C8AEA79
+16A726F924AFD84F2F4215FB795FC41DCFFC835C90B9E31D291E47AA4BB8C05C
+620F69DF31E91A0FBA8E217CDBFAD7C4D480EBC1EB396029CDE615C227A367AD
+72834BA95539D39A38EA0CA3CF7F1123F70792CF315BAAA38BBCB6DFA80B4493
+5025F33C3696DAD6A0ADF584C71BCB1D29E523EA4B81FFCE15F3204022BBBEA0
+A9483EE8EAC07D581162672A0D66199174821ABD097561A263C0C0F24066FBE6
+0951F31FBBF2675141F3FB4457CC2A94A40191EA0AB2A606CF540BBB8887B6DE
+715EDB1041EBB9D05D0F4A4672F534397B9529EF8743BE88BBA10C81E0A46259
+2F2AA7B638E20C9C8A3A827977AB58ABF7525BE15DB66CE8E9B81457552073B5
+85DF3FA70B5231C447C5724E14730B90FA35ED1B5723036F1658CA8E19EF5A6D
+D333B78E91E4D7032EFBFD40A5A2269B0DFD9F7C3438DB58F94B507EB93032F9
+99E5F15D9F5D8CB031BBBFBCA8A15A617ACEDDE70DD9C2D9EE21179FB17AD913
+B4BF577A9046994689D1BC6A6985FF5F5A67D699C2FD288FD9E5BCAD5453EEC5
+68287BD7B8872726C28CD288B4DED2246B843577173450B6E5760852CF2E1727
+01FDB0FFFBE12CA13ACF6434AEF4B59EFF3E0DB1E87D35075B1D55AC12633167
+5A83A39056C077EAE6F2F7D1DDED300BA43830B8034F0A6AEC562D3023270601
+6C594D0359DF6F230F7B80B54EBAE4880AF338956B813E3B8DB8BC778BE0F612
+7D84939C2878B43EAA45BF10E257F22C28C2C148FF48843D2B52626148E3CAA7
+4527B9F246C17BDE21C6E7EAB4906BB6D9E84906CD1832C4BD9E405AFFE33AA2
+AE086C25EA26BC23D68986639366B99C87359915EBB76D7162AA667ADE4954D0
+B1E18027FAC2468CB2FEA2568E23DBC201E9B6A1151FBF21129A088D89E3E728
+28B2785C1A8B2637F368A93EAB459F80506435BE23A85396969E2AC4E0D6E4B0
+8B12EACD150049EF8942C108B96843159D4408424394B33603F565D1622FCB77
+51E9A5D061DEDD18017CD2B1DF1394B1944B02AFDC25B8DF87C73771C201B366
+55D9E26FD091501DA8C009A25AF7D2CFC697EEA0D29A3207C42DA93909C75543
+B633A71924238E42ECCA63C26AE73F04DBFB8E6FE86E5AF48E21F06D3A7C12D5
+2E27E292C53DECEAC5849F11C910F3C0FFA8E9BE8D4301ACA5583FB62F635962
+731DF265D9CB3A0B299AB24E29AFE7F127F9E0BC12A106F21E04B71AC3FD5CC2
+7934E6FC44CAFF87E0BA39DD8BF8813AFBFAC1436525F3A2513FABC673975E1B
+321EB89D4E5E0BE59513947310B00B6BF81D43ADF9B3D8EA1DFC8063DE284579
+8A46D36BD199718B233D5779F145CDC968E83A4F5C70167110751D6C0E766D6B
+912FCE96BE10D62C897C4DFD4CDBD92968639B37F45E260BD71F5787099530EE
+7FEAEC22C769CCC47D9CA1A4D207B9924303C3126803C3590509590FAFD72997
+502A21C25B9041E46CE23E0772A12A14CEA6F8962F0EFA0BAC414BF838150050
+B9A1B525D314DEF55D7905A2416501AB6F90BBF393DD044DC6242207726D4117
+8B4CF2E8B88921D0C15F06EDFD337A3500957CB4AE8876D4F4AEB990EE3DA7FF
+67BCC9B285B02EBC9E61714C94A2DFCDB59FEFB7FB51B9033D339DB3BE303D12
+C1DFDE558A90DFCC9C35DD060BD24F0FBE1954060529D826B0B172DE5051DD43
+154649DC5466B09C9F37216AE2C983656E7DA6C5D8C352A86DE04C6DE087E4EF
+3698A08B76E409CFC4B14D220161FA8C3B6289B397C9D39C527B25EFAB6F0E2A
+A0C0173341AC38E4F67E1910A66A97D37C02A998EF8EDB9A84BD5DE317874AD4
+3778ABB1FEE00F15BF740E58F063A07E8BAC0E690D481713E0817402D1C05334
+B31436EB3AE068B1C784D1659AB8A318A474F0253B241C08E7A1C267DB616ED1
+F2F13E860575AC64DFB133B7A01DABDB91A6923F99CD769910E25E195CC4FE85
+5A952A1F13DC00EFBE5A614C96C8F4240C6751D1E7142BE79F309A92E43C2E9D
+554A598A8985E914B8156D065DD56E04A06D392ECF7BC4CD8472EB8FD058CB07
+5550EC31FD5B2CE1272C5A6C94E319FC445783F66DBB9029E1B3FAAA7402E204
+AB3633EE95F982FA7F295794D2AD3E960C4F62C824D7D9CFA1623F5273D570AC
+6A11201216C66FFCA03AF54133677FC8D42909BF200F2E6B786539CADA41B862
+A9F4CF0F76E6CD341CB1057A08ED7B3FF6CB10613431A143C1FDF5DDDF45F96D
+E3B90BAEE6F1E28AF7A7721025F8D26664DC85797D2EC34F07AAEFDF2F3BFC14
+09E82034F38245155CC13FDA43C125CDD70A70238C40DA1BBA0971C5D2B4DD09
+15ACBA579C66F3D3A117C3C3746EF963B58F1F09488D879603C94C026FB5673A
+F16B47C365311AC8DF2C72F60BA235F460CC95F898E8AFAB7088318689003F71
+9ECF94B4543328FEF00CAE907D360D1A211DE800D7C3AEFFFBCC80516A9C17DE
+3F0522F49A24BFC178A3114CA1D4ED0214A8BBD5284FF130CF698609416F2DA6
+D9C98A57CBD37E5151614A771116A9D20AF84A0F1AD7A96641E588C4301CA2A2
+C876FE26EE65621CECCEDE90868FE15D2E7B066CB448F3B691497ACFDBF13AB0
+F0F565B5C22EBBA7DBF3BF0F6D3A3834FA0EFFA650F8201EBEDC5C47ABD8F345
+D7C666186BF98F989C886BEC3BAF08BD37411DB4ED7441D92B1DD155AB3A1F37
+D4A61BDC513F6C506C97D6541A89EDF7C68DFB5F93943F8402C3745C49B725D7
+E18BF1A4C10AE7CB1F9AD9A06F66F81FC6D2E9E896C51B6DCFA9549BDD3FD46A
+096B6BB8C8C713C233FC2F0E608CA27285CD380FFA54A63ED01FA6E4A3ADABC0
+AB5969BA5D42B013B4BFF3911956F26FE02D019B3847EDD9F9C0934393F46110
+2F753FD8BECD49D3176794815B82E527DBF0309EC6490560937AD2DF28D82A2C
+66F2F6A2B7088E34764C90B76239103C2E8CF563AF743B2544DDD39F6F6A5D9F
+F342D318204910CE20A435667460931A7A8C1BED76A7126689CDFFD458B0B8FA
+0CCE233EDD0AF004C488A77A365EA310BE478A7932AE0494757B0A011FBC165D
+8218A5A8D87F2D2E3F6164D9E7D073B01277F2E26A3A9D33767952C1B0219664
+FF7293726AE07C1B92C80926108B1B7D5BA4F9740BFAD282292A9B8256E1C510
+56545EA574B2A77EAC45DBF60788B59115068136E15CCD6026D62ECAD858AF0A
+814F431320E6245EB39A74F332F535760CF6306BE87111B5C44C11C938667DB5
+783193A32C1FC42FEBF7262BBFB376917574437ED4FD29A1912857146295D20B
+796606C8B07F6BF3B39B45C6CF49229418ECE7F4E0355C648B68DD070D48B279
+CCDA0FE6085BC55FF27D02997085B04F471E8BDEF7862BB747E94E9ADCCCA4AC
+6FC5322B9D9CEE6C0BA7C4B5E68316B69730E55224E45F1C7D8FBD1E065A065B
+113CF57E567A3F4E519D13403DC8D7F89BC16E15BAF2AB6E4BC5AEF95CDB8C66
+5BDBD99500D16A24E33C9C3B4592271E54613DB8AA8A3F3D79D616E6122A4162
+E4E4C35B5AF48F5349DCD620736C670FAD2ABCCF10030E81C9A57E858F0DC669
+3B6F9DD553EEC8B7C00E021F1B812CC9359BAC282FC6789BF29A46A72DF9117B
+ADF9E079C3E93DD754CC27A839DAFBBBFB6EA76D8A07B498FB292913E115780A
+9F6F3ABE61E626BAADBEE15381CDEDE9E11556BB4BB31C51C1B1D39AF698063B
+8466410F352D450B4201A834AEB6A1F1758194614E4059868B6926C0E724CFDB
+78E38BFCC42DC0888BF1F4B3D8C0D3BEDF96A7CC488865358992191E02B04144
+A082858E6FA5554EBC0FEED0480F2A3C5795ED7AAEC93973E64755043A77FB3F
+C985B9C2FC94BE21A05D561FE9348BD95E93E8CF0627833EB5EDF5BC4E6CC97F
+1FC8269D8092DC590686BB80F53EE8E452C61B49A7BFF5C353E0111D6EAADD85
+89AB80627A1D744D6A6EE0B34288A4FC74178F6A947C0BB39E3081D4A2FF018C
+E406381B86512BD9F3A44E4980382BA8AD7A08123021B19C1C1F2750DC4A3858
+9DAF269E154502C2AB86616A70298D2B5E5F7F21C32BCBA6C7CDD404D30527D2
+DAF3E3E4D8C969A9C9316730974BADCD6CF9CD8C2A2CFB426E484CFB9C9EAF03
+1CB1636C28EEB03FD24D6AC61892F4712C0640E4FC4A18E59AA5B69578881600
+CF320CB6575CC03031EA337ABEFA117035B7AC0E6032D272AFE5678C5604EF30
+79BBD24811C8FF2E952F978D8DB866F4F5FCE78D545845FE507E06C151408C62
+CA791C15D57FD2629558430220F64DB5D6F88C8B27A96FA3E5BCADE1E052F87C
+AC5846DE37DA5B06FAC2359FE0F9A78E9B4528947C56E438304A2EE83A45ABF2
+EFA34A745E44EE7F57C72AFF58CA9BE25E197F96C25C744F8EF379FD83414DE2
+B2CE967635057A96CB95044370FD52AAF4599F846B78842B067024367F6A8342
+C27AEEFCDC181FF2FBAD7E2E1ADB502DF56DBC1BBB3E333F8D5691BD8D55434F
+273ADD6CD134D36BAFFF565BC0820173EB4C3C06F2AE63F7F1147A6F1CBA65DF
+9B1314F8FD39E7D41D2370FDBFB0CFC3E0D7F5DB6D85E712A22E1663151B68A1
+581CA7AE7A9C6A82758B848EEDAD40F0F665EF1B9CF45B136018C810925A6E0A
+5FE7E0C6562F1893D2CA9700AEE804BBEDFE634A79ACB617E5E0825819AAE090
+E78AC15F7BC65C1B58906A599F1E21C5F2FC836CB57623892458C1BD0B94A489
+6FC504DC9BE0F92CAD20958FBAC4AAD3AB1A3061692C35AE1F11D338D20F64FC
+DC9605AB930D9D1C2B6ACBE4F6BCD6E9C29C41082BE202C410381EAF514C21AB
+222C4F8B7988C75889B0CFA5CC1B3E286ADADBDF1C75082252180653D5406C10
+CC4EED66605DA0639310AE6EFE96A5E8BBE3ADBD1D1A90F9670E3542BAF0E876
+B1F8224C2E79837E20D44C1B1F3CAFB8D3C785D2A65DD0E1C13BD66B030F9B22
+1ABEA1135F489E67BC8BD933AB828EFAD0C3C866CB0608FB863D798E5A5377B1
+19D7128265ED7C17BDF9DE5832548C5F58D9719143EDA3A257DB57FC2D9AC18B
+5E0FFA10B72FA46FF43DE30B385C9AC4916DF31EAE9BFF4E7AFB50B13F96C6BF
+D4988A16A1120CBF28C835A32C7B36D1A4833EA8981FA9CBD1EF9D4256652EFB
+BAB52397D7B0CB363E4AE9BE4D5E5F385A9069F690B7EE4911BE2132F2BDB8C4
+7D524B1A89D04035174608A815052A1C485B7DC301D5F370756ECF6BD53D82F1
+AD04C010C0D4D215B43267B4ECFD7092E0FEC22155597709131C868C89B4099A
+9E210FED9E0F290E9174E188A8DD5392D68C622CD9818CD4A707EAD47470225F
+77A9D2DAA80E968004E71CD1E37EA04E728F3C8BA47AB1571BB59E9DB47FB24C
+F8A2153BF455D65E96588D5C3A7141A210A889A3C3C1A9BB7FCE87B0AD1CF354
+5B8DCE8ADC780954AA892C670C9785C4D88E6053D88F43F9757B12C40E52929D
+D891A73C685501BE6758078F08FBE573F93793643B8D7FF6440A22AD89E3E0CF
+97C9618B9BA9DB2C960B64777607C5D1EE82FBBA1A5B3680712AECAB193C2026
+60DF32457C70822828D45F317095C968C45AC6F01D9897B03159E1975D4B757F
+0C674B3961EF104603634E8D90E18BD15F15E3F029BBB39B6ECFA6FA7D10B3D9
+0396A14B5F1E731BAC583D8F994216C225B13459EF7E18D79284874A6566BE0B
+CE887598D975CFA3770CC8EFB67BC4DC6783F1AC2E826EFEA33C341DDE1A00C8
+1F4C969C3FEDC8EE70BE61612BB447225B9F9174247D430B219E8B2632CE8BB4
+DC418F1B8F68D690E45BA4A3DAF40F8D2EE69AAB03774C2CDD5D215DE3D540BF
+447291271A910B3B44512E199A2AE2481A4557424C7A4245A9244233B8C679B4
+AA1EA48DC839A6033CAF3950B249FD08C22CA9AC911ABB80D3FE986E93C352FC
+D5B5903989AE3855298A063FB3349BCC1BD45AE8B04FC6195816EAFCFD373A5F
+6C4C1F01FAEF637452704C7568F6BCDD96A135ACE024D9DB4401F30B93CBBC2D
+0065639B11FD8DC3FAEB5ABE3DDFAE85F5B9A5AD8A6B86BFF06B51A435A432D1
+87EEAA434F1B92CC6A305995F0C4B26C1648A3B38A3C3CBF889C95A59056E998
+464404B49C3214C8246A2272F25ED65F31B58372FF2D192439D0A45B65717911
+528DF977F05FBE9955CF978F87B421377D011B26CC8D0D53F02E5F50D9632133
+EADCEB9F40D81C2F18F475E2480C21FA98F325FA3A89080FF395D3D8E17AB863
+E8A03178B82DEA5E6C773B6175E02D48BDBE014941F030E80E09FA824155E670
+EA63B8808E63EF7CF97F286C2DEB774C9E4963BE7D035C6F2BF7D5BF8523288C
+50055B844591FB870836FD5FBC828866C9D4963F33F4D8CEDCA505CD93601F0D
+1FAE1467ED835E3E4C4A4FB65BDBD8F12E1D5CAAD48409FFD2AF73D89D0357AC
+58C065D91FCAABA6A1E9527A59CD0D149F88239AEFC82FE5DB4EF14D810E4B70
+3E7A379F110789495B8FCAFAD2667E970EFBA5AC7FBF695E2BBFE06CCD19BBB8
+BB9B1CEE55EDAB9CD7F03882B95514986094FCA796370D34D6E11E0CE5295630
+8983D25CEFA5B03B3C48CBD3859B0F8238DC696D2AA61E61CF87887C0297686C
+177A635A70517FDFE02ECCF7D89B4A3828CB70A7567FF4DB62814C864FC65F64
+E6C93109382C7E5601E67360E94B9F17785320721D6462C69D898922C3B28285
+1BCB95134E4693529BD1D5E071DABCD4BEF282D9D28F13059AFD3EE2700140EE
+3DB6E11989E80F3FFEE40071257D0EA79E98133E0C27500BA4147C3B6098FC1A
+C549B8B11CA5A4809A19460EFD62F3C662D1B6A179BB15760AAB2976E38FFD21
+B0040C1ED1E193C26D826905A3AADA8FB9829E4EF506B26006B582B6B6DB9C46
+6C4347D766DA3B2A57E2D5A9BCE41FED66E2F46C9A51D984601323CD498B2995
+5E8FD462ABEBA365BE3C8D12761079D0514FF753BAE8381B9D0135770F6E7FD9
+8A37C040FB6AC73203B0AF65D7BA8D3E2BC17982DAF6D9C6A8CA54457DEBE309
+46861B355E09C3F3522C1311C410B74A950C561644727D5C6BDD46CC9101D5C6
+E3688887D3A48E818D69265EDCA330D84AB961AA1EEB8DC98FDBC20A85CD225D
+28C0DFFA5A9A12EDED2E3F27DBD540B33E29464BCEE21754A363D094FEFC2C3A
+15E5D7A5F9455CDA0A92AD4209D364373F0A70FD914276990327459B30B711D2
+A6C178F71D5EF68C68253FD063823D9C4ADF1437B9C607B43AAC6FC8553BFE7E
+B6DCBB6F475434C0592EA95BD0A1F69FCC147164745458D7102D90DE4A647826
+E09982D59FA2E1B23FD1338C5BB48A44AB3F364EE3A74CE032783C19CFCE4835
+02AFD15137BA2D1AD05B5CB536CC826BE09F45D8368F41282E88B746F812DC31
+6D6380BC473F0D71505BD984EE04AD85595F3760497CD44E9E7BCE6469A1B7CA
+0590C4B1ED5B8AD47444DE9844492151304099AB42366A919CCAF315398036DE
+D410B85C1789AA150EFB4BFFEE24802F29721F4C423F128CB13A52BF897D728E
+9AE95E847EC1392E3DA525045B6E9155384CB5180F0B49CA07FEB167C3FE1079
+9015F9107318529E4E0EE78B528ADFECC44C4E8DBA62DFABC9E72A6694A23C0C
+DF50EA6C570B4B0D2DE608377B7E8F82317789DF2476D1D4783C39FF5EB4AC6D
+C40B9DB968D1B925BE24ADB334862EDCD62A10952D28E3C5C1FDDB0175420FF7
+40C2D91DC58E1CF0A43A47BA1BA9C12CE6B02AC6FB8FD5AD738A289A1362E65C
+01035158DF2C3D5BFDC6473BF1E4677EA40A23A16D18B6D7022D14111F8E2406
+C5229A9F891BE263F0A915583E6377A0B023D6F8D35E788CC1144EA3DBF68D81
+6836E7BFD1FFD0DD589B95E97336823B5EFC1AFF6FF659B9A720772EFA717CB9
+4EE8D85228474F3D5CDF0CFDEF99874E9D62E5F5FCC1597A91858FFBD732E5A0
+5FF3E125B02B1EDBC9E322AE48E753E8D30ED5CEA418C182A6960A246681B8B5
+39EADF34C7FEE4EB3CAFE157BC98337D8E18BD5B88A4CCCE013C00B8F8897226
+E6ACD0A31BAE70DC7E975244198711A5B211B9DA710838FF5D87C3980F833F52
+871DF8D7EA74D0719F2E329B277BCA003350A45ED58111838703D3E322DE1C2B
+B27CBD2A1834BDEECCF5E243226D5F0A44521670F6F6BB9A2277546BBE872B0F
+0A6D3CC3CCD86D142CE0A2BADDC12A02F30510A41143D5020B58DE90AE7919AD
+BC7332B5D4CB7DDBAB72DC4623CE70437875405E36A3DC5154666C89579828C3
+3FF168A630EC5DD66F32F9FCF78E1BCFA89C5645C941D62C91AE6F8828BB0573
+EC0A6C8E7B3303A87BCB72D02AE151FAA8DE5C699372C3DEC66C44DCB1AA975B
+CC2A1CC433A8DDD08F95A2202767565B3E4CA1ADDD516F37B5FED92C8D20D065
+706DE9BCBC0E47258C9EF1986ADA06273DE29C3BA7145AB7412FED41CE8DC33A
+90C7692866EBD606E96194A41649A3B9B30CA8BC82576430720870634B8B265B
+AC7403FD4C61960D73CBEB01DBA0DED6792873C49064D14E6B31BBAEA3C3975E
+C44AB4926C973CADCFECD266BB699100FDCF1F3C1CFDB7F6AD839F325476BA84
+ECDA187D4F2257C750686E602A17094ECB47C54DB4E468770BC205CBC41D57A8
+84794FD9200C429A437FD53EC9CE767BB01D32613BAA13A593CEE44FFC9C45DE
+DCD1CBD3BC1C7B8F777522C9A6FE7D06DDBD56E71BC8CFF220C6305EE202ABC3
+CC612B277BC158A38958B2BF68F1E25BDEED65D1D95FD0608A32425C89009AB0
+B7893E908FFBE38E4E0A20C1357ADB58CB261BF456FCFEA45A4F919523629EF4
+B41104655060BBF44661F5557989BF37970EF3097A5AB9F2F6C116DA721634BB
+C0E37D0CCC51F96FA4E6C4611021120E4960B7DAC93E4DE5670ACC927B2C06F8
+36173A93F04A9FD99B6B4CCEDCE3B6AD9D268CDE761E3DA251DCE455FCA3135B
+B270517ACEFE44312EB0D9F113E26D67920E45FD591415B449F0A9FF02343A63
+6609C990B444FEB8C42A0B0DE7F954291C1ADEAF91FAC6BFA3D2D7ED9FAA3AC2
+B92AF4A46EF0B9D6C9167798CA1B027C0CE191F77A2C82096BEA50E281EB3797
+A3A7B5B10E9F48732F1DCB23B03F533CE8B6F1A3A04A02D7E0C133D840D315EE
+39B51251B550A1D88D055088382E3BB730E25FCAC0EA0EF9AF7B4B01FC63527C
+4A73B5945CF90363A9E00762CC48CDBBC8997DB95A0BD429C15755EB48616FB4
+6CABEF95AD3F3BB50FCF754C3452E394B6DA0C14D17FE0A0707068F1EE989E31
+D8981CE702E17024BB0DAA233796578A53CFE08A570FA907CF23E3DEB70B0714
+BB79331411CBCFD02794BE7AFC1A84583F13B3BE1F393B112DCFFC5B29A745C0
+FA980F18B0627A5948F2B6EB016406BF0B2337858B9029637F07280A811AC9CC
+0B9B08C3C5D0FDDCDE6E7043589DB481B2EC2ADD9A95A3B1DE93BB13EC380317
+D8D2FD555A94951AE1689A4A5C52875399DCEBAA001D9D3369B8ADA80AAC8718
+369914EE26A28FC7530BE6067763E42F3A6DA059CE1BE3B07ECCF362D5925DC0
+65CC11EA72C749C680F3434D82CBEBF0E3C70196267FA08AEFF88F46FF8A3C2D
+1B4C45504BECFDD0EC7EB39B3374B23D56C59D121ACA8085CF860DA9DD89949F
+1FF41E76F22C052918D2D40E812CF441C06C7744C7FB6F8AA779C2D4068B372C
+0B4B2750A472309E5CD745CF25233B4D8309D7015CBD82407C860F0E60A7B753
+B3D828CA69FA610491A16AC0CAAEEDE48DB1510D3381A93B0E04048425672BEF
+B65E45CA9D44454373BE2ED6735423E3A414EC4E516EABAF634C9E9810774767
+1151005155B475418E5B027412D853E2B520979204ACA7F628995590E72D6BB1
+775E3DB5A2501DAB999D0837961FCFC940BB989477DAAF7FEF4655E59B3D16E0
+209981FDF1E33E899FCD7FB2F8F8BDC4CAC083907328BAF25894716525BC6648
+C11AB5C2056FD7CE9A563EC5F619D01A4395CB63B798431E74002682AAED2A25
+9A06CC30D5C2B8A6795BC216DFA9DA95296EA21FD28C1797AED59CAB43C39988
+DDE1BFF9483C7068CD5895ED7B181162759662E81316CC0958128519FD120A5F
+D62429A4E4313738ED4EAFFBE8E8286CFA1C782FC7141742EEB3AE4603A23944
+83B5C72112939D1CFBAA645CE05A9EACEE5B3E88C91DFF352829C2F330AD7087
+A70A35D1A26F8D55549097548E23A511A32886F9BCCEC4C823F07FB723E2D29F
+FAE3F5B83884B6F0BB9440DFD204D4A69FECED05825F98AE018AE9EDEE6E53A9
+ADAE8891B4893D45F47B2299651C222E43796E3DB850162947F862D6D7C45677
+1E231120301FC99681571746E007E53459B85C68095B840034833BFDD5050091
+FB2432AC4539703DC65B3304770DBA78E6CDBB376826456EEDB2B03752EF9C6D
+F9688F76855F5848FD0991E55C124FE04A8D303D2C708E01396627FD8480EC47
+8047DD9A008D18DE9D1847FBEAC621C79C8D30F87E1D7FAC5DE9DC4315530CFD
+995952599EEB9479E5E14F26634655EB94E245E1E6A2AAC2001870E7E3387086
+6400F430066C7165563A6CEC86CE1AD83F2137F44E32D99F337F04525F88AF61
+8897F6E61674D282E8ED69700F127EF825304EAF4127A1D91D3D7A8CCF3B4B26
+05E498A79F2133E4C3C2507F0C013F3A932E306518F2DEA6D1094C77144087BC
+6151ECD430DE0E8E4CEE2947D1A6C4C5A7CB66362EEC3D1112F51144F27EAE83
+4F171FC917A1D300596CBB0ED4DF1C5A7C76250A6BA0FE7A999609A280E47C96
+75F2289B4B9E05A2A5DE3AB20D0129B74F10B1A4F0429D172A74471FF9740802
+535470291A441AF5A4E874EEFB203CB570C0FA1978302FCCD249ABB2699F56D6
+B85ACA9E1D6304643B809CB8B86AE6CF9EB15503AF4DC518C05D24C7FCD89EE5
+E17D7B185CBD36C99DF26339D41AF089EB62294B8D45EF629F7A2B74305954BA
+5EB8B2F86AB325CBABC83B6AB7AD1289F8B86112A3B502172A23590267AD3DA9
+E036EFE3E2C10E7150DB58001B5D8A921A72F5C33522319E96AA05393470D815
+D861FE1B4034832FAF47069AF4B818A9F16121EDA1D24BF7463343246450B070
+5B899EAB2B1EDC1A133E2ED444EF6A71F961658A5C46161BF9DD3ECE80426874
+DEE96AE9B32B5AD8B7F5CA142AA894C250035D7276332151D20412049AFA6DC2
+9F4450F40601E64CF29248A2CE88FEC9D6FE607540CF45DF6E9EDBC4E5022007
+3A2184F0050FC610A2CF85BED1FB7C1E48D436D84F666D96EA1090FE37D1E506
+DDFB7CE42CAE40C2443ABD6B450A11DDBDAE65B31D14B32C40B9D90477A766FE
+F4EF89C1E985FCB73DE5A7D3F6C152D8D2A0E955C771FBBD28A9A8C3CAB40294
+3693AA00FEE07D4857E2F09FB02AB229D1982FD2DA50E625E532C496282D3BC9
+587C9CAED53936D6FF2772899BB79A4AC0F3692E256D9E3CB222AF826776B0DF
+13B98663CBB0993063AC96E3618A918A3F3145DFDCBF3F1F9E1FD75E6EA274F8
+D4158BEB332DA44D86F2AFBE3DC04959C4280438B8B9486BBBBD42C2B0F17EA0
+E188A8837B58D70B5EFE6B559A53E58F100A97413F5F17D8BC7910BBC341C538
+AD95A5BE0E021D1E69018ED771EC97B8A1F9F9933E15D8A788EFC576E16E5217
+575ACD20DAA7FF073C33592CF1E874D72CC3DA2DE894B165B1D6355B46C6250C
+2B0134840D019F0C81C4826C73952CF0B1199E0E7D870592BF7432448E3D8692
+48F687FD4217787A3803BEDFF9D89540820D8697FD0E5EEF26E2E81C013BB742
+4940FFE3CFD2668AEA6C584621C413AE37D6A6704D8BE8EB2228155B48E74CD9
+F3719E66EE1CC5ADD8FAEDAF2D9F4AFBB5B5A92A609F3103E8169710291B911A
+A05EB4F4BE723C5CE8BA4B6F38E94044CE7FA15C3EE183AA8FFB71208C22F8C5
+73C8A443C44317EBF7C9242D063FF3C9031A33748261DC5D14D84E8D01087EB0
+43FE975B8DAAFCFA4B7CF1274085B9B42F6CEEC85D86EFBF2721F6661E4B1CF6
+C7BBFD874CD84B4592CB5AE4D26C5179D5667E42CC5ADB857F21D62DFB669CFE
+7C2209C449732236B760F9B3B1635FCF47D03EF76628E7A6851FD8F4745D6A98
+B57DB5844C5CF4CDB14539451EE8B3F2B9AB328EE2F0B848DB1FA9245EF3845F
+65137378C9B794AC8DD3389CC601F7E5BE78B97DF765C403B556E2F21C367C41
+3A9F97112AA5A5C711AFA2DAD65B9B86BA5F4AFB1AEC9F1B77B0D9EC1CBDBCFA
+883FE975993A8AD7994FEEF7D5C48804D10FA2340647C3D2425C9328C325E394
+D88AA4C8174FF8CFFF7B5AAC2052F5D6C484235FE3E2D82F3655A92EEF3E2393
+C49F7966F34126A12E0CD0FB8A525603F3239B4992F0F9D307CAE5FC33EF467A
+5350163F0EBDAA3E519679B57057117A485F1B41FE5BDB83E5ACED0B5CB29F48
+BDA164C1DAF1EBAEE24309A241473DEA179A6E80D6BB18536593ACE3DBAC9FD3
+11B1FDC76C06FDD9C03BAD521A961469F5DE3B7F42DEE865356494D718091E4B
+661CB74A2C3E35227A1657B37BD17A373221886A1AD25E6CC1AA210C8B839196
+AA6FED63375D72F268F9D92A0C0693C43E54C1260CC1D27DAAAC92829650921F
+5387C380196D3E58979202A651ECDFEB36415C61B60AF74608219A2B11E25126
+6FAEFA27CC356A1A753A8A158287CC627F5DDBD349F4F9A1DEB07B919C63D012
+CA290783510D7ACC9DEAB8B5A7FAFEF5A53CBBCA0295FFB7CA66CDF3FCD977A2
+EE24D15AB3697D6BC040D0A779454A490031953B85AC398D27CC26A261D68055
+1AE8B556B3C40CE1817523E99B0BB0C390AC569D6EC02DC9D3926E7A51673FD0
+AB53BE45B34E87149FC99107CC7CB58CDBE7E2BB4BCDA689464C0758E512D38D
+C66D57C6BD02BC83321818324FCDACB5BA1701DF424F45E0A1CFC6C951E73E71
+390CB2F6E15DD83E0C8B207A9CB0429B5667EE2CB45AFE9704E960E9569BACDD
+4B05AF6F10B907A76C504EDEABDBB40436E4701725301854767DDFC9EBCBB12D
+579AEED0D20E003B3897BE36BCE1C79C229E980E598063DBFD4CC219B2A86993
+460D1211CD6EF37BDFC59486C6D29A9D332517E62809D666958A0C9A435AB84D
+8203D0C79071BD7E30AEEAD8CC5661FFFF666A8DD552A5D805B82797BF0F5F05
+C93E3F96EDAB59971A5F5C54976D2D3D701A8F9AE81C9356C0B877563B8C68DE
+62302E62F7E2F49508E5597661169DD53F1285DF058352A32211D96708416A85
+C86BD388F85B81393DC3F1437D11DAB4B1D2B7C262E53DA36F6F13DDE097FD5D
+E76BDCEBCF035FEBAA30BE68F94B325620EE9FAF6E14776DE628C3F76DD04549
+9235BD8D231914EAA96818A390DCA0175707C097EBA4C2F6C40D00B2D4BE2CFD
+034DC2B046DA73797DC946E0ED122E78C892F4ADAEB185FA67DD54AB0D726B48
+79FD1B32A1C28367265E31B738C49C12B801E4204FF390125037FA111F64D2D2
+6B5B005E1534C9886FAF82A4653665AFD71D1351871B65E16C105127AE6FCF5C
+1E43678AA44570936B3E77B27A11EACD5559849948D279B76DEF6D33E1910993
+B4DD2E40B18A5F27F79CF0DF6BD0206D179BBB1DBFF6D0ABC888D99B3E9A0D97
+160745D94ED749EA86E0DC89A9EDB63CF235D9F8B6BEC7E1AECB20C1B9EEFAD7
+70E210339DFC7D595F9E70D030F2A1A39A4827C42D97A8BCE1BD0F63EEEE9A49
+B172000195C937958D4CF837F1D85D86F6B28798C1EF5CC3C79C4611AFE79BE3
+F983BF637FCBF40B4C40815EE7E519767934BB4DAB9A0B0D9DF91319B2FC8267
+E005981D5B8A0E1BF252FDE3ABF3ED24232248905869E5A81BD80021D9033FA3
+F6EE4D32469A51356BED9429B280E5B3D87CE8A27194D1EC0000AF45E22BA088
+E504209D3097238BA21AD8EBBF7648304A924139AF0037914DA1C1BCA53B488A
+8C96381FE0878B320C9A97E8F1AB66FED18BE0D974B014E1FC09C4B96151F614
+C6D3A37044BEA1E3111A34FD7C3614FEF2E80E2306D6144D2DA9E4D58ED4406C
+BB50BB35E201D5760A67F6B13148028E333682F0101276E6686BEB09CC56D231
+427E9D75605B8FBC4121126AB4F196D22C7E17589FA0E85BB89362E096C5D563
+7927B84129CB96B1F0D132ED2A1D8D04733D079FDC78811B0FA5BB768AA3B899
+74FADAF242C76F172BF05EBC0F72389D4CD4B51F7CC9C8C134BE95976037B0D9
+87B963A2CFE99CADF8ECF9258AC5526A13CD315A413101A418429810E6EF51A1
+CD6349DF32D8C0FBB11AB677BA9F3DB1C83869A4ADC714293CBCD27183E06648
+CF5FDB2BE9A09250B6031FEB2BE88CFAAEFC340EEBB4025A7D41E69385A937FA
+8AF05601B1E94C950FCF843DE094FDA8ED480C6DD693A661965F76F7BBA3D13D
+BA0983CC7EAA03210CA2047400FB6F90DA2C32A4C60A54D84FEA5E5A4D489180
+58AE7E8C9E5BB330574700CCC43A7A02920874D560CDC1FF5ED7C9D9D8B32905
+8EBE1D5CD48AB169D188B53633FA7D6883100B0D3214720C5EEAFD3ABD3D11EB
+B7CF506372F042039BA0DF7E3886B23F1F46FE99E7BA9CC10E6EFFE7B73374B0
+C1C92D8F0CC383C12BBEF8DEF01DA770AE1EAAC4EDB60A7C5BCC6DEC81A64412
+3FBA9A52E24F2AF2CF218271A1093B676BFB63323F0FB46898A3C65BC0246704
+211F6F006FB349377613E08588AA4DC847B5A546178CE63642044890A857D86A
+CD4D66A6140A407339021F012ECCB21CB8F585574DA9A748F6F0960B307A6A41
+6254F54A3E0369780547DB524295C078536DA6F0F4771CE9EEEB770F0C49FFF6
+7EE6AE8998457C4AA331C73BE96257FBC1868FF987F60840BC2C30D046B43C4B
+4E8C18DDE87F99F69A6B1A6EBDD9A10868285C8DF369FC5421D154E31F5DFF7B
+C771418C55EB2888BE96E80FFD2B212B3D0B74A2D5538D9C1D2783C5E5756249
+2E38309EDFCC6AB901506A165949E660C7081984BD5C1587B48E0B051A232319
+98CD460903634207C0599D62255C27E01D3CF2EA4F566442EB466E958E2C0D6C
+3EACDE49F5FE802865F87BC29CAD97240023612848A79FDC3FD6D885155D50AD
+1A47495DE4C69477894EA66E111B6DC93CEF9417CB7A173868D425233EB19650
+5C0F27B5C2BCA70F762B17BC8C6945E687C9E08F69FB48C4A2F6D3B94E201290
+A2F9391814353276CA71DE1510673372F2DA9602F4B90A8C850B2629CF79052E
+6FAA9CFA3DCF615C6D280567CC00A3C5F4B122954A4744F076941AB2845D957D
+56B30209C2A5AA287D93E9C3F85B92F9708BF6E947E85F5D5827B5766C3CA618
+79115CD207E6E9307F5F12767A579E49E69CFA37C6C9A53E462749998931FA8C
+E6CC38D67F507568EB01DF1EF09AD41F786A0B7F0D28F48F9C8D8C7D6E058406
+EF8614FB990F74A409932B362CF2057751E3BBB9BC0AC7A03AB1654E84748A31
+30119D7F0D405F15E4248F6E11247694CA182325A252F0C0E516920A3138DEC8
+28130E484A3EB074BB646B81EA50C75BF9519C078DDAAB6FEECB1DD3D87CECF6
+0735F4F990B13E4AF4F19AA0E3A07835FD7D53F7644F42AFE3190ED788891A20
+903E93A28D030550C6BFA18C1A2085841CCF3D049D5D6085935F0E7A863FAF2F
+4D9ADCB9CCD20CE0E541A0B849DBD339F3A8392BF7B8CDFC788133F23A82FD26
+797F5487374AACB6B9AFD798BAF3FC3DA26950C871B32B5468047D12752037F3
+D8AB4DEB8F3F3314C458E1E45DDC82A22B18803CFB8C67E3038217FE420E6819
+3AD914B8166A7C511A043B4A72C1E4513D40FCB55EC7B35B7FA51F51C258F7B5
+08B6F30C915776F4DDE9A7BDA4EA7E86DC067912B5D3C47E32611DF742186E3E
+70F87DAE8F3825A6EAC0EE445C2DDFE088661ABE3EC0725C64D60AFECFE33FDC
+1B8C929B2C6F277A1906177B5C6021D65F9B89A2AE42DF386016898F376F4949
+758285BAAD84848C6FE960BC7A324A711261D00CF789CB38BC6068AD246EBE50
+8C8B1E0645D03C9CF4A13CBF36EF9A2CC7B1F83FF5623AB775543C63D7FAFE82
+B89A4E0F7537E271DF8B6CDE9734D5792A7EA3F9AC01956A4423549EEC052B86
+D55546326A8D4E819B9D8B9DD35B405BA209B14A582C0FD30C2DE04E492CEFEA
+ACEEEF25D5FC076EA1362EFE4535E342A1D0706EE00324691720F865E1C8CFFB
+E40C82D32E8861CD8D14CBEBD2747FD21A2F39580D90072F67E6544C83BC1411
+AD2D9FCB7F60C7DDDD5FE437DA77312D8411B36C17290E7E8C7D510EB2EABB36
+1A7A30D1C5CD8D93EBE72B8FF07822AB00E42930978FC88E678B9A334E591777
+06BD6331C27C3763CF47B04278F3D19DFBDF608B9D1501B4C206D01593C57A13
+5517779D7F6C7CE4EE8AEF6123C8A0BEAF8A33E449579E32792D9F1590820F5B
+A88E1568A4D93746227D6F9557C28D643B986C4922045CD3C05F980B22EF6ED3
+302E98E028504CDE790F26C82BB9067D98A82009661B7C9AF6464891CE787B55
+4A6427357E0C3E387BC34688E3DF39FB0BE8108F7C247DD1777CD37DC6F46CB4
+C66900AEE6BE537F53119CE46949097ADAA2A04FFF7EDF46F1A7C018DF504660
+7C35D866A829C690DF52754AE981C83E22643E7F2BB0084D1ABFAF7A9EDC143E
+674528FDD471A47889F7900469C5DEECA99FF824047169677C251A659A9B3FC1
+08C6E522E097B6EBEB7FE56BAAC797D8FA002EA86274336FA35556D1A3965300
+B78C5029045699D6B80C0F5CE7A52C07332ADF17F9215EA233D3B34FDF158CC6
+905E60DB4FDE9FEFF75E9B0839B2B8309F34C838AC844402BBE5942FDD3ECB95
+B59AABED12012046B0AB2FE3785408CFB3955741C266CBA6BEA82EB8D5A119EE
+48BA7922D273196A39B9BB0D9002964F66F44C48BAE04B28DFC60B5E1E096440
+172407EB30F8842A04602185FB73F16BD16BD66B515D67367067F22EE1F08A8D
+665D67420D7076F5C59C5FF52DE87A38CA8E5F62D6371E22A29B5B54AD23C93C
+E8635CFD439B08FAF7B8D72638DA1A0C99F61D6257E52B4956E75A34D2C168A5
+A3BB5EAC545908DAC7691EEA7F0577FBC8A600C1E821E9B73215FE20739E9099
+8ACF17ED23CC445D7BD4D2D9820FC9379C790E0FE6C5A3E21F914989A4F042A8
+9B4712722C1F5FDA319C9B9A2DC05371DB3F77D8AAF47D8DC716D9F4F5CE724A
+C0962C55D16F1E1859C256F70D4F7950B808962C26E766234C3517092FA9CA77
+56431D2EEE84D887DBE22E3B7CFC844708D48476F522C8EE2E5589EDB9F65190
+FAEB43C04BF3ECA7A95DEF7A6DBC5B28FF289FCD2692904E7A37D97BFC3F2236
+0F7D9751CC837EFE6DBB6B4B6F735EE8F61D636F98BBF322C1D42FBA3737F68B
+96E7B6BBF44D8F93A759D49858CA11CE8659C0B1FF0B0D28D4BCB8610543D44D
+3F096A85EE4C57036FAE0CC40F100D750748005C7A84FB1F022A75795221FCB2
+74B8ACCE3421352732F1865D70DB14B178073BDFBC8AF2BF79DB48B078C1FFA6
+A52AC316F8BA68E8AE37BBB3E480FE8FDD6832597F6048B6474CE8C522943A74
+9DDBDB17A8EDB7C6594E
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR12
+%!PS-AdobeFont-1.1: CMR12 1.0
+%%CreationDate: 1991 Aug 20 16:38:05
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-34 -251 988 750}readonly def
+/UniqueID 5000794 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
+68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
+3645B82392D5CAE11A7CB49D7E2E82DCD485CBA04C77322EB2E6A79D73DC194E
+59C120A2DABB9BF72E2CF256DD6EB54EECBA588101ABD933B57CE8A3A0D16B28
+51D7494F73096DF53BDC66BBF896B587DF9643317D5F610CD9088F9849126F23
+DDE030F7B277DD99055C8B119CAE9C99158AC4E150CDFC2C66ED92EBB4CC092A
+AA078CE16247A1335AD332DAA950D20395A7384C33FF72EAA31A5B89766E635F
+45C4C068AD7EE867398F0381B07CB94D29FF097D59FF9961D195A948E3D87C31
+821E9295A56D21875B41988F7A16A1587050C3C71B4E4355BB37F255D6B237CE
+96F25467F70FA19E0F85785FF49068949CCC79F2F8AE57D5F79BB9C5CF5EED5D
+9857B9967D9B96CDCF73D5D65FF75AFABB66734018BAE264597220C89FD17379
+26764A9302D078B4EB0E29178C878FD61007EEA2DDB119AE88C57ECFEF4B71E4
+140A34951DDC3568A84CC92371A789021A103A1A347050FDA6ECF7903F67D213
+1D0C7C474A9053866E9C88E65E6932BA87A73686EAB0019389F84D159809C498
+1E7A30ED942EB211B00DBFF5BCC720F4E276C3339B31B6EABBB078430E6A09BB
+377D3061A20B1EB98796B8607EECBC699445EAA866C38E02DF59F5EDD378303A
+0733B90E7835C0AAF32BA04F1566D8161EA89CD4D14DDB953F8B910BFC8A7F03
+5020F55EF8FC2640ADADA156F6CF8F2EB6610F7EE8874A26CBE7CD154469B9F4
+ED76886B3FB679FFDEB59BB6C55AF7087BA48B75EE2FB374B19BCC421A963E15
+FE05ECAAF9EECDF4B2715010A320102E6F8CCAA342FA11532671CD8D247017F4
+80F3953FA6A64C2753F39AC37ECA3704B5915361ED1A124CDA39E5F743A992D1
+5B0EA869DD4815C2ECBA3B4DECED6B05BAE9FF7C63463A3CBC2506B82FA8C9AA
+F86F320B0CFE0A9AF55CA46FF15F95E9D9E81C1FA0857C0224EE0E2A5721FCEF
+30D43AAC8304E4156E6AE717543A79ADCB8F3A44F84EEBF8AF97DAA325EFA234
+CC099A2C065D3E10261977F5E90DE0955C72EE1B65AF720FEFBF52B5606895A5
+96158609A4C49A16C351ACFBAB56997B501CC226248A8B4D24B7ECD1B9E874E4
+B23DD10CEE8ABB8E87594A4ECA7ACEB6D4526F1DA1210D8A4EE7636B41E16F79
+6F0CCD5D304F07BF955CAD2ABEBE7DC0E40DC68FC9FE60A33DF9EAE3F467434D
+88C723770BCBAA7034DA0C0FD25B568E5F97A492AE95A7B893CB2BFCE42765D5
+BFA77F284C508BC609275E75BA1DCC92609B08D9A6CD3D152F8E14FD29C0E0F4
+CA87655BD992EA44629DEE5843B60B5280429221F218B9EDD385A34DECC6EE36
+FB99C0C4541544507F345188E8A8DA0B2E96CC53CDA170334423B4DA12FE02B2
+2278BDA8775265E624BC22ED3018A15756D6EEB6FF3DF46924088A076CCB36A7
+1CDA080EE7633AF2EBBF3619B1A24063C200F4F660DBB7E027D84E0D872EB188
+F2856FA40DFAADC2B33589A09A616E10C8CF9033A16B30BDA1DD07B2AC9FE513
+DDA6FEF9F0E410D12FEA970B82AA0B1636C5E56464719946326FD757D6C8666C
+9EC2165FA58ACF326DADC611D93F3D1D64E1ADCD426F51B11DF6D3073E679DFA
+D18E1E5934BC17E5F4E3F1F22EE4DD01ADE982624B890D5C10DBBCCF2536E085
+347A6280ABF6D8F7FDE0F1A0CAD86A08148A2ACE13A5A9F8FF3B31660C69122B
+B87282408FC5F9C056913962A6FE7E3114148872CC9EBB1CC95AB910E33C38C7
+000E7A45F9C775F83CAF5ADEF88E4EE67E225271E4D5D754594E228D0F17F839
+19846309A4E64438203C1408F9E0AC24A443D41E126C2234BEF4910303E8D9EB
+0772A85C146013EA88D83847594D91060D040FD6C042EACA55AA3DF639A2724C
+23ED23222B4A3D61AF253F45D5A80C220F63BEF811FAD4AED3A6998DDB34DC64
+42A027E8BAD1988C441BC291637354A16DCB593E985FD7ACD563A2EA42B75083
+C4B767E15603E7B200E6E11CE61892CCD3D7615DC9A335E5701A5D6A36306D80
+0EA31AE0ADFC4F25536590DA27A620035BBA61AB2CF6A521BA6143AD83771ABD
+4D8208B4C2C594E35A9801A5C513E1CBE55B5F274CB686C284AB22C086220C89
+16E1188DAE33D5163B50FDF52AB8EB3F4AFF1FDC0B2039FBBD42627B54954A15
+C2C70B5636711F8DC8C169AE0227C25AD970CACF54DFA5204F5E9E783D6560CB
+1A526688725CD790FD0960FDCCAE63ED38C7F79BDD64FB05449BCBE2B1F3CD3F
+6312E1A2DBB69A699116DA25FAA096D00BB0B5EE423106E84CE36D5712F00ADA
+B54BD70668D37100695736587D562C585D5A3616E91909D1CB9FFBF635DCF010
+5970DFA168CB77899D0F13C04963ADA29F40B3BAD5891B80B183E0406C9A83C2
+B729166909888C20ABFE8F1F18AE280034404499BE09126F309AF8CE8D44D747
+50602DCA970A989EBDB15FFB131EB83F11325A90417335722B9EF30EF914B305
+977FD68160BC7D776507FB91AA612497F19E2A8C2E0AE4D5ACD187930B6AE576
+C87E28E2DF7B783E5B011268486F2FD4E78981E0A37B4EBB06D6D9541CB82447
+A1EA2AECD944951EA8C7367281C764EE621A2BBC55BC94EFAB2A120DC0D225DF
+6ACADAF7FE71CF4E9E60C5E3C12C66445DC6230521BC8279DA3DF28EE19F08CB
+6D7B9B4379057FB70A98AABC8F8B31BECA41CBCE0F969E6392DDFF5EF592E9E6
+B6D04970D381B1F654890447CAE06D76E08861E589F1CE4E2FBB7377DA4C0936
+8B1B143A008F948C54415C00E3D3088C143E7AA33B1BBC0192B1930419CBF128
+643946F579B492BABEB5FF5344178C6228E248C30A432EF963C89C934DD7F941
+8B5F18C639B5AFB2304A230C398E47D59EC0D5BC6F7A263D62E190132251A709
+B05C4DC9C25B96632CE8EC9698425224E57DDF235BE00C08FFC4ECBEF043D7D0
+913B6F8F71E745BDF4AD65015FF0A16BA26E747C0EFAD81C9E223C0327D1FD15
+C4FC3DE6D4D8E99D504BD5D966C62CCA25ACDFE4D8A400093696CAB3932DF964
+6CB53329B317CEF79FBBEE270841C77E730EF1C1D60CB5DB80D82190B8FC25CB
+79C19156126766C00E01C1866FC770A2427751B79D9CE9CD1A5C5A4DD0C0A9F0
+51029696BA84E57E92D29477C7AFCC6DD1DC5BF8CED0667C22677F9D7765768B
+FE05D9847DFC7A8B1A9B3A7A2F8DE11D1BB946BEE4250834BD3E77087C38F973
+8D5B6076EED6EFE579B3A40C6CD0AC1F55FF2F5FB7D26AA7DD5BA781352DAB59
+C0899D93D6A200B46363C18DBF0E022CA522EC8B58D2B9C5E2D07619F5C4EDF3
+A799A694BB017069A1B25B10170520B7C94BB213DDB44A5B46648D24398A1393
+1E08DD8A0107D05EFB3E58A4EDCE5BB13EBFA821B16A3950A0B32F4A2320D69B
+3311D2D5C8419E4AE8D74CDB03D1531840C5515C882E76AC8C1393B2B1142F5C
+CB1881323C9A88246BC295EA05AAD126B6A6F399786AC3BCEA819A798C399930
+65824C283DE98D6AC32C21CC1E4FCD07CD80CAD93CBCC77B6500D449111111DD
+40A38F73F1C63FD25B9245620AF3EED4BBEB5EE268AD6362DDC9ACE2884A9D64
+68EFB4EFA3659F4F113C89B4D7004A851F226E610120FD5044F1709A646B7EB1
+301BE718D5D98C5F5A039A5A08E68AAB9B2935E601E7822CE739C89085E02B50
+582C18527D3D2E1CDEB423DAF7B4890FE4974E8766D1916D98EA6D985C8EACBA
+97E947C96DDC0949F7D139DCCB4EF8D59CBC6F54441EBEF39222C96EBD29C04B
+5AF641E8B2DB79B7080F7AD81F479084D1E89C54E901B48D19268FD0EE1AB25A
+2D9AFA5413E6B173ED6F54C4D1734A40DD61CD2E874E59FEA0E4D63591FE3A0D
+2916CF64A54E5F86506AB0B66CEAEF59A63BF2170CE68B9294ABBA57E9735675
+76303E0878DE1834F3B2C90EA21464823600C03648C6F4617BEB25BAC9F04EC5
+F677EB0BDA2746FEA5D93101CAE0ECBEC2B036B330978B82FF1C77CC2C140504
+A9E17B25012681BCB24AD5426BDCFD117F329AAFE0351F7AE5347EC69E5185CE
+1338F4290B9DAECCEF19227FB696F52851620FFD267FA544FDFC335CFC675A35
+243AB4020C47F4394EA51A6ED0002D0E635E4E3C68281C6D23F59F70E14BE60A
+EF2DE2EBDE4C409F56DCE40CBE71D221A43F1DEFFE0EF9E723FAA2D173A206E8
+82E35FFB0C8EFC74C77B6524DBF907F3BF87DB7454A107950F2B2521480531F1
+359C8C024E4D652BF2B6A619CD2CFB29AEDE09ED9FB79C2AD97351553426C481
+87E353CD26CEB4A17BA46329E79694947A92077942495B9760E78C29255623ED
+100A749C943777F03D5FE21FABFFDFBCBF741ACCEF325C371276266C390F9A16
+A8272E096511A56A887E637E15EE84EB4730BB3D18F9461C79DAB4948D4E13C8
+7341C5FC3480329A0BE56251D2B25C84ED6069059B354631C314A03A11B6A299
+9C052BD3AF064BA64F0D7CA8D1583EA5BACA97A53AEBCF3D3E6453FC27C3FCBD
+FC4C6E6B327B0DC61ACE71250B7BF344F0B4AC77C8FDF6A747F4056284C33343
+71D206F346790E75480C3F663806CF6517168942BDC9DA7C8E8ADA8951B3FBA2
+1BBDB6AA8389D3CA5FA9CB5EB104BAC7845BCCC3C152FCC20CB93CE4F3408489
+CEA23C04898CA14B3178D3403F70C23BE754B2AB0D2186C87F503DCA589BB66E
+BF0ED582D4DB0DF842CE4164B7C925DF4E50D3B21AF6F8921F265AD65730443F
+A7407F55C0727DFE5B033CB478D92577E599639E4F0551A4660470FF70D87E1D
+8FC1DB689A2465148D3DEC9D7712FA16293E3FDAFD508B1CBA825FAFAC161FF8
+42AED83B9AA5C990180D455375D028816329AA52AB725E4958EDD852E2C84095
+1829DA85D95DDC8231A49FADFBF223CF9452BC8E92319563DA451E88F4D65C4C
+9CB61C3B1F92BF25F6A9EC49E650D190EE8B16180D651AB24466AFB43401ACF7
+A8E743FE1EA58CEA36A40B5908E2EE34E6123679061A5F10F7C46C861E5F7CBA
+084D35860E4160983FAC95BEEAC8A12142D5598A32DA4C3EE03C889D8E4C353C
+C1CE185B406F0EC94B369895DE94F9F890FAA67AB834BD9CC5FACD21CB1460B3
+5461231BD38D3F50BBE49D7D9847F6151D5BC0A6F3CD177FAA48879265ECDBCE
+1CE0424903A6B2C71FD760B5519CF4508D103F2540845AD971E7FE6EFA9275D7
+C8CE848C06D70FCCEBA0C27DBB064D06687434911FA5906C01B78D4E19EDDF7A
+CF2F32FE7135E5E42E32A7CF782327EDA6C07E9F46785E6E031E06D6454EF5AD
+AA6B538BD359B9CC4AA7F67D11204112405C6BEA820156C0BEF02EC578D2CD23
+6B2AAF7752D87D3F1B64D9F86E2FEECA2103F81151E2766FA36957720E8D9D27
+D49A55C8BE2462FA4E6AB39E14F39818D2AD0D462A77426CF54ABCA3A1BF75D9
+00D8BD7BCBEEB1B564F8A99F43C575174A1F0F7EDC2054FBEB3336BBABB58728
+629F2099DAE4D464DD09798109A6744B2D229820C1D89F5854F0DDF6926564B1
+7F006BCBEC2ADF20E5BB5A87B7E9DCA62F2E7B7A48533B0CC7B93D781567E37D
+6E52202828DDAD86CAC5F1AE44C48497526ECBDA2F9F802BCFEEE7E71CAF660A
+96894A1CB87B345C0C9A949D25D633CB1CCD16363171936ADC31617A9AE9C44C
+28D8E5BD9868B0A133B1322C55D2FDF91073882BDC0600B2FE550F2CAAA3C190
+F2A30BBCC6E316C7F33B1D71734F1FE7BA762E31EF42B210698E6537AD98FD9C
+7A10B7C9314105A65869D0C8517B2CBA758912296E4616C5748519B63072C48F
+FC638F8C21AD17131313587DC0537ACE3F37005D45CD48EF3D3834252F6A30BC
+22A6E02A14A189C2F9323D7FCEBCE097B28AFB9B054483DD6B5B9CFA691679A0
+443962D22F3277AFFDFEB646FD76254CE3293F64BEADC57F5757E1B74F7CFE00
+3E18DF9E0FD11353E19709BE04595A3614482075CEDDBB50D581D9D64E92EDF0
+6B01B65C0F12D1822431AD8117B91244D06D570B3CD47A7B85237A3A382E977A
+7667BC7873A29A2E5C83902E49F3CD52807A5D9CC6100EAF23FED2533617E888
+9FF279204684A57572A56B024E7CB1F26B7138D276F12F892C93DFEF2D55FC05
+7ABA861B1CDFF7F0D8006A244F02D540FBB479C4A4A79CC3300BA33B07EE7D9E
+D43367FBDEF27AA395F3EA0EA520B1E5B95648AFFAC97C80DF18A05B9798154F
+5B9E31D1574DFF3A3B2C8F68CC902DFE425D832318D727B4F4227FEA537F471C
+438465BC641984D47CC8871B35D54B200F31B7EEA6E41816012C0B569CB0D2A1
+08188A36FA40689628EF7B0D8B131135CB9FA8DE9D
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR17
+%!PS-AdobeFont-1.1: CMR17 1.0
+%%CreationDate: 1991 Aug 20 16:38:24
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR17) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR17 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-33 -250 945 749}readonly def
+/UniqueID 5000795 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F075EA0A10A15B0ED05D5039DA41B32B16E95
+A3CE9725A429B35BAD796912FC328E3A28F96FCADA20A598E247755E7E7FF801
+BDB00E9B9B086BDBE6EDCF841A3EAFC6F5284FED3C634085BA4EE0FC6A026E96
+96D55575481B007BF93CA452EE3F71D83FAAB3D9DEDD2A8F96C5840EAE5BE5DC
+9322E81DFF5E250DEB386E12A49FC9FBF9B4C25C3283F3CEA74B8278A1B09DA7
+E9AE4FBAAF23EDF5A3E07D39385D521547C3AAAB8EB70549756EBA8EF445AF4A
+497CA924ACCC3DD5456F8E2C7E36946A5BF14E2E959895F7C94F49137256BE46
+4A238684D52792234869EAE1A6D8ADF4E138B79472D2A90A6CA99E2394CC20CD
+3841733046175B20CEBE372327BF13428EED6A3E2FDF84C2DBA4B0AD584EE9DF
+B51828D3B8F385846158C29C9AC3496CB9692DD10219697B2ED4D425C3957FD8
+C4600D76E045C561216EF05D38177243C314877A69A1C22E3BEC611A2EE5A216
+9B7C264CF6D1839DBBD78A40610F2C0D7C2FE09FFA9822FF55035AD52546970F
+83EED2D30EABB1F303091EBC11A5379B12BB3F405E371519A53EA9D66174ED25
+A2E55463EC71A97BE4C04B39E68112956117C8252DB6FB14AB64534B4BCD568B
+246DB833982B38CDE7268BBF74B6B0C18091E1B1F87D32D66F4DD023D1F10D2A
+7736A960F72AC01F733A11023832CD68FB6288A5977743F781214D8FA9C0C3F7
+80001321D4397771F728FD9EE57CFE7D9192B887EC883EB1505068261DC40089
+7B7D2820F06515CD74513521F6397FEAB3AD3572D9A8269430E407E357422461
+1785FC2782047F4C0339D79B16862D939F3A37F78E4E2174E4FBF132539CB760
+207999FF86F6A3EBE48EB0A1CA635450FDEEF79EB16D853F3BF4B7A887B6794E
+6C09C4B9C00804F4A8EF339D38CCB41B1883CF72D167D76BED1E9E1D3DFC787D
+E2B5C3CCBB79DB105A4A03AB60F4AC27F74DC9C0FE5985E1D8D133183E4A622C
+C62A0C38B5F56120755C1E54325794C28E7633B088EFAE6D7CF46855B18C8EB7
+01FCC24C8FD6681D09A43236F9012AF1EEFC863AC1F4500795147C932BA52C47
+B12956C00306A22CFE19C97A69ECC174E7197AD0E6F9F78804E592C9CDF97BBD
+F332FE3F1294D636BD3205C9B7EB7DAD5613F0510BB914969B5CD7F695A7E9BC
+C178E60127D70486D86A61676933EDC19388D61AB459C4113ACACE3ADF2D2B07
+2D7FFD17C06BE1CF7BB9355DF476E06CCFA2A43016CCC8F5924953286E66A974
+400E1E4BA50E3E13389064626F7085B1A1F0EA4962DA90863419798217B2F5CF
+5E85B5DA76F4ACC0E1464F4121980CCA282CF164D0B78C8BFF9657C05C6B5C07
+3A8032FD835FC433BCAC796AE88CED8C4CD8B043DECC191F4365108797E323C7
+67E1F937C84EA80BEF6098D36C46A20FF47F19DE8F83D9A40C281AB23133D14C
+B9AFA9CCDEEEF8FFEF6EA8B2DC291855C4DE36A2ABE0599117589227DF6C7BEE
+91A835EEA5EFDAD8E34C485350290AB532E777329B03D524CEE744BEB773789D
+EC3B9CA92F82FDA01B3978B98F2F8A44E1590E6E28F6728BBE78D21F3E1E565B
+A97F367B307A9C1B5ED184CD5C5997DA972DE2AFD7F5F64B0870BFE707A5CA61
+8ED10E3D53FA3B02241935CB4B15A6A1A012A4487F87913643917609CD6E4878
+BB3E88698026A7A4FBF7FE4B5834CB63502A0C96CB8790DEF38971EDAFD3B1D0
+5CEF889ECA3CB099427D1EEAA2DD0AB3FCEF164225244350D61545BB7983E351
+5336E29D0BAA9574CF43D3A48A47AD24C0CC7DB1E45590EDE3C7E283363D0891
+9CEE703F7B55960B7F95D68E8C891F72842A64F537DFA432AD001DA24388996B
+7E53C94B2267BAA5462F47EBB95A53281F7FEBC30CDA011546330D6F859F1072
+AE34BC27AA545B962AE6D01895D2BED9294EB17EDC758D54EAA78A0D816A05A0
+AA137F5CBF1707887FC48D2AD1F9B864B06732253C650B764024BC2FAE350306
+89A797E5648A99D719E00F67D981C2C38E45F317B849874A13F29E8F6B3F9742
+2CE8ACAB4D81B3D93322F63CCD0E3500B5116C7992E3B1D74859EECE6D67B347
+95CB0EE06A618E65162483B5C0DD5A78A4D049295571B536F023CF0D970C241E
+508E3A73B29D98CC2008ED4A58D908EAF63F9DACFB7A1F5EC420E84BB0E2477C
+6625E076BF6A6C5FFE2630C4F8C7783C59A2A26BA716624F96B5B1E36AC44513
+820DAAB27E34ADFC18E9AFF6896A86710153BA9F54517BE3B0A967799CC59475
+98029BF1F0C081016CEF4C7C5524BD8331652CD582B31C9851A48578C859E254
+D96521FE93F3B7C262459AECCF56D5CDE3B28E7E78059ABDB673892EA8156568
+5CC04A336D8ABBFA90C8D1AFDC09E4F15B3ACEBB910285628CB6591C32CCACA5
+CB6CCF06ED3EBA032DD54B867E5CA5DC9F3D38026E41E68E76792C79147FBCDA
+497EE62D48B4E548F173F59A75FC0C0D930A16E7E691733B0FDA7626D3C8ED96
+2A2CD48E85152DFC0B3B81A07408FF23AA11DADA6092209E76D872A116DEC22A
+2CACE366C837EB7DB69339CFAF2016FF9742E3B6D67A677087F0730DF90A9730
+CDB4B3A7A66FBD1977838998C056A333A8985E99DE24DF499D193ED48489D54F
+1923791588FC04AF548B05178D43F4106BD8B7F11695B254C427DFCAF95DA99F
+58577C50CE6805208A2B94CA654A62DAC4369E1B9062A869B4FAE9DDBC649EAC
+F3FFCC63C84EFF948D8668043E72C81EAA54D572500AA8859A3E3F2294375542
+836FA5E43A5F057A10F36E709B92D6068C871F7796B3252A7D58643297CB4010
+225B3295670A95A65DDD6F802BD2DD2FAAC7F8054C32D1E41A14933D1C38B383
+39229E6B76127BC46F966E53FC51E1BDF3BCB6BE426DEFFB4A27405E79FAAB4D
+C6BB575A0EB581551A162342F3828EB6F083EAD7D4C605DB213169D08C17CC2C
+199CE268CD37D6645773353890D751DE0640F73FD16466443443E4AB82DF7A42
+33812BDED7165FD04AC44349B82F48411421A83D65A01434E995C944EDCA458B
+A42BAE838661F3D6AFA96AAC9B40128D5E63C7FB68813047646C6641C8000AD5
+9D6646D60F16ACB29F50ABBB6DAF0B2B5867BFB7F9892C84AA4B38C6ECF0350E
+5A03C74F54C86B5ED002CCD2C62E11204BBC388A8FEC14122925C146E56A81B0
+9DBD49B512F0F870C63EF931B16D5328238A46A90AF5FAB245ED8D9CB3FAC8F4
+C23F873126BB3E01EF4D462B9536F287EF5E341F2A5EF42BA45CF58D6F1A753B
+C0385B7ED5AB05BFAF68CF54F1A36B161E1054732E30FA5B78E82AA8759446FA
+09DA646A140A317757A9DBEEE84AD778F0F93F67449464D94A0DBDE401207BCE
+B2E461883B21C85A19ED5847EAB32C069171FCB8D29EB32DEDDEAA415FE9012A
+BF6F222CAE996419C427C36EC3DFC8C44787415677C4866238FA1C8A46509E50
+FE48A7BD79A59BABF4F9445B14D0546764DE0192D7BF8E5006223FAB0D0E520D
+952BC104C24FF69841ADEE5CBC7E2C2AB2829CAED56769A6FBB49705168E5F6D
+C5FEC43A25F10764AE14EA5CA32C4C48BB4C68BE7D562CC5F17E337F89C0E19E
+8880415D285BE5DF7FD9D49EC3DCAD00BCC7947D38E679A7408DDF38C8475EE8
+0F36BDBA830190AD01BB4FE4173EA2D9CA30AAC643FA0F2C0610236324AB806A
+91468DEEDF522624252E5F919627461CBE9505420CDEB12E7404946A89C38510
+6018AAFDE6E5F88C1D5C4631F5B62510308F92954CF6E0F2A3A45C224F070AC3
+8608E777682ED57C19658BC59E2F9BAE7D8B57C1C932B855A6E6F30436CD169E
+6EE32E7D1DCF3C204F82B6933632C707A4DF21C364CB6EF935D5D90B7F21B12B
+DA3904153564564F70566EB05B34EB806151F7AA31EFE80557D7455741B1D387
+620BC75D667321C6AF5CFB63FE1C2A0208A6E9D1CE2232787C40FF8DF4185171
+1F8A8DA34633B80F4A0778235445B6B78C86CE7F418924A4A6443AE4D2383CCB
+EA2A5D6427A5C9B71EA3DB5E8F0986CA0211185335FB2F12B89090EAD3794975
+395017EE2048D296B18BA11B541ABEB1534063642F2580201F268C9D2681E417
+A70525980915AA3F0ECCF8F19630F84DFBD60131F1C038DABD78CE110C18DE93
+DD59A810AA6B35765F5630568C71216926182F2A97A92592BC56BD164577291E
+8291E149087D102CC1F5AD876FE3D8D39C13EC632C538E8122532A327D5D4E4B
+F373812B8C7C4C8D96789EA68563C9A914159F838C5C9D2295CDB89A2C01A4CC
+6263FE4FAFDD1312A937381CAF85FDCAD36D4A036466453FE6CA2D160BCAE1A4
+0EA2A8F383FE35B0FCF83B184D57BF107AE8B3940D4067A144D3B4163FC23379
+66CF44C5727C5572F569038658F3E9463A179C308894650853517433FA79995B
+AB26DE53B7EDD37573BEB7D5A3A48DD80FAB953960C071E6B636187ED79FFA63
+95EB6D428DC4F53146FEFB6CB2BA2708C1F31AE43C474CC719456C4BCBB6EBD6
+1B940A1F7C8A274CEB6842E361FF085C6C95B8392D97A29797335388B5A5AFEA
+288571FD735061A9CEE603636A2794C412BAE389F18773831A85EE75928148F5
+4734F98218537554C1069389CB2114A10BAAEEFCFD513C2FCF3D318690F3FE96
+7CA81FAB9F6324A8EDAE3895E4064CED5DE5E48C66840288B3008D88C92856C0
+54607F2FD8B4E1F8AFB658E8C57FA366A551FA13A13E23D7654D508095151AA9
+2272B34094568E32578E68A2E8970E1FD89D8042B4405FCB7727DEFCA01C1787
+60AA5FE3FC2617D26B8AA9AED931D06E94350555D561975AF9EF72F2525A4765
+7F06E6CCC3517CE95C66F5CC887E8A5BAE6370903869D3526C0BC9979372B3BD
+DEE70F75614F3B617688DFBD9B04E4A04B00B7400268B7DE5C99AFA4D5D3BAA0
+9EF954EF4DE8E18B3D641A7D872096315510BD21C00C5CD061832CC5705D6DE3
+FBFF4B1A8C1A7D3BCC41A3ACE3984E08838EE3F2D27B5F98F3F0720367684044
+1034177735E07DE40A22E02F5671FC12831FA86A85B8DE157405603BB01E5FE0
+EA5C96C82B1BF2A7FB93B4A505FCE75E6AA8E22A4A36627A4E0E3A18C604C115
+B3D62A94127C9EC329B6F696637A085AD8DF328771141CFAD67F088F944109A7
+C701C7437B01FCC95888DBE70EA60C63EB0F2F1FB6EE56C15EC3D1CA8E088881
+C0D9836D7B6BBE59CB77724371B7A02742041B4BBEB6D455084B39D67A687743
+42B2EE00BCF43C698B0290E533CDC7F34429402301D92F2282F11908B8735013
+00675964D24F74F08F5B00328EC2569F7B2731B36AFFF1EDBF85B8E21F27515A
+C79E4BBCC9D6372191D25FC7A8D3E2AA191538FA8D28E1AD
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+TeXDict begin 39158280 55380996 1000 600 600 (first-steps.dvi)
+@start /Fa 193[71 1[71 60[{ TeXaae443f0Encoding ReEncodeFont }2
+90.9091 /CMMI10 rf /Fb 133[50 59 2[59 62 44 44 46 1[62
+56 62 93 31 59 1[31 62 56 1[51 1[50 62 54 9[116 2[78
+1[84 1[77 7[88 1[70 1[86 81 8[31 2[56 56 56 56 56 56
+56 2[31 37 32[62 12[{ TeXf7b6d320Encoding ReEncodeFont }39
+99.6264 /CMBX12 rf /Fc 134[44 4[30 37 38 3[51 74 5[42
+1[42 3[46 6[56 34[46 3[46 46 1[46 48[{
+ TeX74afc74cEncoding ReEncodeFont }14 90.9091 /CMTI10
+rf /Fd 166[68 1[93 1[68 66 51 67 1[62 71 68 83 57 71
+1[33 68 71 59 62 69 66 64 68 10[45 45 1[45 45 50[{
+ TeXf7b6d320Encoding ReEncodeFont }25 90.9091 /CMSL10
+rf /Fe 133[48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 1[48 48 48 48 48 48 48 48 48 7[48 48 48 48 48 48
+48 48 48 48 48 48 48 48 2[48 48 48 48 48 48 48 48 48
+48 2[48 2[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+2[48 48 5[48 34[{ TeX09fbbfacEncoding ReEncodeFont }68
+90.9091 /CMTT10 rf /Ff 129[45 3[40 48 48 66 48 51 35
+36 36 48 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51
+45 7[68 1[93 1[68 66 51 67 1[62 71 68 83 57 2[33 68 71
+59 62 69 66 64 68 3[71 3[45 45 45 45 45 45 45 45 45 45
+45 25 30 25 71 1[35 35 25 3[76 20[76 51 51 53 11[{
+ TeXf7b6d320Encoding ReEncodeFont }71 90.9091 /CMR10
+rf /Fg 134[71 1[97 1[75 52 53 55 1[75 67 75 112 37 71
+1[37 75 67 1[61 75 60 75 65 20[81 2[50 4[103 97 12[67
+67 67 67 67 67 36[75 12[{ TeXf7b6d320Encoding ReEncodeFont }31
+119.552 /CMBX12 rf /Fh 139[38 1[38 1[54 1[54 1[27 51
+1[27 54 2[43 1[43 1[49 11[73 1[54 13[66 75 9[27 1[49
+2[49 49 49 49 49 49 49 2[27 44[{ TeXf7b6d320Encoding ReEncodeFont }25
+99.6264 /CMR12 rf /Fi 136[96 70 73 51 52 51 1[73 66 73
+4[36 73 66 1[58 73 58 1[66 29[96 1[99 25[36 39[{
+ TeXf7b6d320Encoding ReEncodeFont }19 143.462 /CMR17
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%PaperSize: A4
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 433 763 a Fi(A)44 b(user's)e(p)t(ersp)t(ectiv)l
+(e)i(on)f(getting)g(started)f(with)h(Carp)t(et)1234 1016
+y Fh(Ulric)m(h)34 b(Sp)s(erhak)m(e,)g(Erik)f(Sc)m(hnetter)1326
+1219 y(Date:)43 b(2004/08/05)30 b(14:43:52)-94 1605 y
+Fg(1)134 b(In)l(tro)t(duction)-94 1808 y Ff(These)32
+b(notes)h(pro)m(vide)g(information)g(on)g(ho)m(w)g(to)g(install)h(and)e
+(use)g(the)h(pac)m(k)-5 b(age)35 b(Carp)s(et)d(as)h(seen)g(from)g(a)g
+(user's)-94 1921 y(p)s(oin)m(t)22 b(of)h(view.)38 b(Carp)s(et)22
+b(is)h(a)g(set)g(of)g(Thorns)e(that)i(pro)m(vide)g(\014xed)f(and)g(to)h
+(some)g(exten)m(t)i(adapted)d(mesh)g(re\014nemen)m(t)-94
+2034 y(in)33 b(the)h(Cactus)g(en)m(vironmen)m(t.)51 b(As)34
+b(Cactus)g(is)f(a)h(necessary)h(requiremen)m(t)f(for)f(using)g(Carp)s
+(et,)h(these)h(notes)f(will)-94 2147 y(inevitably)d(con)m(tain)g(some)g
+(information)g(ab)s(out)f(Cactus)h(as)f(w)m(ell.)47 2260
+y(The)i(reader)g(should)g(regard)g(these)h(notes)g(as)g(a)g(\014rst)f
+(draft)g(and)g(the)g(information)h(represen)m(ts)g(the)f(author's)-94
+2373 y(p)s(ersonal)25 b(exp)s(eriences)g(rather)h(than)f(an)h
+(exhaustiv)m(e)g(recip)s(e)g(on)f(getting)j(Carp)s(et)d(to)h(w)m(ork)g
+(on)f(an)h(arbitrary)f(giv)m(en)-94 2486 y(platform.)69
+b(In)39 b(this)h(sense)f(I)h(am)g(hop)s(eful)f(that)h(users)f(as)h(w)m
+(ell)h(as)f(dev)m(elop)s(ers)h(will)f(con)m(tin)m(ue)h(to)f(add)g(to)g
+(this)-94 2599 y(do)s(cumen)m(t)30 b(to)h(mak)m(e)g(it)g(more)g(useful)
+e(in)h(the)h(future.)47 2712 y(Useful)h(starting)h(p)s(oin)m(ts)g(for)f
+(retrieving)h(more)g(detailed)g(information)g(on)f(v)-5
+b(arious)33 b(issues)f(are)h(the)g(pro)5 b(ject's)-94
+2825 y(w)m(eb)30 b(pages)283 3050 y Fe(http://www.cactuscode.or)o(g)283
+3276 y(http://www.carpetcode.or)o(g)-94 3676 y Fg(2)134
+b(Do)l(wnloading)47 b(the)e(necessary)g(pac)l(k)-7 b(ages)-94
+3878 y Ff(One)27 b(\014rst)h(needs)g(to)h(do)m(wnload)g(the)g(Cactus)f
+(v)m(ersion)h(4.0.13)i(\(or)e(alternativ)m(ely)i(for)d(the)h(more)f
+(daring)g(the)h(dev)m(el-)-94 3991 y(opmen)m(t)e(v)m(ersion\).)41
+b(A)28 b(more)g(detailed)g(description)g(ab)s(out)f(ho)m(w)h(this)f(is)
+h(done)f(can)h(b)s(e)f(found)f(on)i(the)f(Cactus)h(w)m(eb)-94
+4104 y(page)1317 4292 y Fe(http://www.cactuscode.or)o(g)-94
+4480 y Ff(Here)46 b(w)m(e)h(will)g(summarize)f(the)h(required)e(steps)i
+(for)f(do)m(wnloading)g(the)h(complete)h(Cactus-4.0.13)h(pac)m(k)-5
+b(age.)-94 4592 y(Change)30 b(to)h(a)g(suitable)g(directory)f(on)h(y)m
+(our)f(system)h(and)e(log)j(on)m(to)f(the)g(Cactus)f(cvs)h(serv)m(er)g
+(via)283 4818 y Fe(cvs)47 b(-d)g(:pserver:cvs)p 1199
+4818 29 4 v 31 w(anon@cvs.cactuscode.org:)o(/cac)o(tus)41
+b(login)47 5044 y Ff(whic)m(h)33 b(will)g(prompt)f(y)m(ou)i(for)f(a)g
+(passw)m(ord)g(whic)m(h)g(is)g Fe(anon)p Ff(.)48 b(F)-8
+b(or)34 b(the)f(dev)m(elopmen)m(t)i(v)m(ersion)e(y)m(ou)h(will)f(need)
+-94 5157 y(to)f(c)m(ho)s(ose)i(the)e(directory)h Fe(/cactusdevcvs)28
+b Ff(instead.)47 b(Next)33 b(c)m(hec)m(k)h(out)e(the)h(Cactus)f
+(\015esh)g(whic)m(h)f(will)i(create)h(a)-94 5270 y(directory)c
+Fe(Cactus)f Ff(under)g(y)m(our)h(curren)m(t)g(lo)s(cation)1891
+5753 y(1)p eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop -94 100 a Fd(2)91 b(DO)m(WNLO)m(ADING)32
+b(THE)e(NECESSAR)-8 b(Y)30 b(P)-8 b(A)m(CKA)m(GES)1754
+b Ff(2)283 399 y Fe(cvs)47 b(-d)g(:pserver:cvs)p 1199
+399 29 4 v 31 w(anon@cvs.cactuscode.org:)o(/cac)o(tus)41
+b(checkout)46 b(Cactus)47 624 y Ff(The)32 b(rest)h(of)g(the)g(cactus)h
+(c)m(hec)m(k)m(out)h(is)e(b)s(est)g(done)g(with)f(the)h(scripts)g(that)
+h(are)f(shipp)s(ed)e(as)i(part)g(of)g(Cactus.)-94 737
+y(Change)d(to)h(that)g(directory)283 963 y Fe(cd)47 b(Cactus)47
+1189 y Ff(and)29 b(en)m(ter)i(the)g(command)283 1415
+y Fe(make)47 b(checkout)47 1641 y Ff(That)39 b(will)h(giv)m(e)i(y)m(ou)
+e(v)-5 b(arious)40 b(options)g(to)g(c)m(ho)s(ose)h(those)f(parts)g(of)g
+(cactus)g(y)m(ou)g(w)m(an)m(t)h(to)f(c)m(k)m(ec)m(k)m(out.)73
+b(The)-94 1753 y(default)28 b(option)g Fc(arr)-5 b(angements)31
+b Ff(is)d(quite)h(satisfactory)h(for)e(this)g(purp)s(ose,)f(so)h(just)g
+(hit)g(return.)39 b(Y)-8 b(ou)28 b(will)h(then)f(b)s(e)-94
+1866 y(giv)m(en)35 b(a)f(list)h(of)f(\(at)h(the)g(time)g(of)f
+(writing\))g(13)h(Cactus)g(arrangemen)m(ts.)53 b(Getting)35
+b(them)f(all)h(is)g(a)f(go)s(o)s(d)g(idea,)i(so)-94 1979
+y(c)m(ho)s(ose)d(once)f(more)g(the)h(default)f(option)g(b)m(y)g
+(pressing)g(return.)44 b(Dep)s(ending)31 b(on)h(y)m(our)g(in)m(ternet)h
+(connection)g(this)-94 2092 y(ma)m(y)d(tak)m(e)h(a)f(while.)40
+b(Once)30 b(all)g(is)g(do)m(wnloaded)f(y)m(ou)h(w)m(an)m(t)h(to)f(quit)
+g(the)f(script.)41 b(This)29 b(is)g(not)h(the)g(default)f(option,)-94
+2205 y(so)h(t)m(yp)s(e)h Fe(q)f Ff(and)f(hit)i(return.)47
+2431 y(In)g(order)g(to)i(run)d(the)i(W)-8 b(a)m(v)m(eT)g(o)m(y)35
+b(example)e(that)f(comes)h(with)e(Carp)s(etExtra)h(\(see)g(b)s(elo)m
+(w\))h(y)m(ou)f(will)g(need)f(to)-94 2544 y(c)m(hec)m(k)g(out)g(Erik)f
+(Sc)m(hnetter's)h(pac)m(k)-5 b(age)32 b(T)-8 b(A)g(T.)31
+b(First)g(switc)m(h)g(the)f(directory)h(to)283 2770 y
+Fe(cd)47 b(arrangements)47 2995 y Ff(then)30 b(c)m(hec)m(k)m(out)283
+3221 y Fe(cvs)47 b(-d)g(:pserver:cvs)p 1199 3221 V 31
+w(anon@cvs.cactuscode.org:)o(/arr)o(ange)o(men)o(ts)42
+b(checkout)j(TAT)47 3447 y Ff(Again)34 b(this)f(ma)m(y)h(tak)m(e)h(a)f
+(little)i(time.)50 b(Finally)35 b(y)m(ou)f(will)f(ha)m(v)m(e)i(to)f(c)m
+(hec)m(k)h(out)f(the)g Fe(Carpet)e Ff(pac)m(k)-5 b(age.)52
+b(As)33 b(of)-94 3560 y(mid)d(April)h(2004)i(Carp)s(et)d(consists)i(of)
+f(4)g(arrangemen)m(ts.)44 b Fe(Carpet)29 b Ff(con)m(tains)j(all)g(the)g
+(necessary)f(thorns)f(y)m(ou)i(will)-94 3673 y(need)27
+b(to)i(run)e(Carp)s(et)h(in)g(the)g(\014rst)g(place.)41
+b(The)27 b(latest)j(cutting)f(edge)g(thorns)e(curren)m(tly)i(under)d
+(dev)m(elopmen)m(t)k(are)-94 3786 y(lo)s(cated)i(in)f
+Fe(CarpetDev)p Ff(.)40 b(Do)32 b(not)f(b)s(e)f(to)s(o)i(surprised,)d
+(though,)j(if)f(y)m(ou)g(\014nd)e(some)j(the)f(to)s(ols)h(in)f(there)g
+(not)g(to)h(b)s(e)-94 3899 y(fully)d(functional.)41 b(P)m(ac)m(k)-5
+b(ages)32 b(not)d(required)g(to)h(run)e Fe(Carpet)p Ff(,)h(but)f
+(probably)h(useful)g(for)g(v)-5 b(arious)29 b(purp)s(oses,)g(suc)m(h)
+-94 4012 y(as)f(scalar)h(w)m(a)m(v)m(e)h(examples,)f(are)f(lo)s(cated)i
+(in)d Fe(CarpetExtra)p Ff(.)37 b(Remain)28 b(in)g(the)g
+Fe(arrangements)d Ff(directory)k(for)e(this)-94 4125
+y(purp)s(ose)h(and)i(log)h(in)m(to)h(the)e(carp)s(et)h(cvs-serv)m(er)
+283 4350 y Fe(cvs)47 b(-d)g(:pserver:cvs)p 1199 4350
+V 31 w(anon@cvs.carpetcode.org:)o(/hom)o(e/cv)o(s/c)o(arpe)o(t)42
+b(login)47 4576 y Ff(the)30 b(passw)m(ord)g(b)s(eing)g(once)h(more)f
+Fe(anon)p Ff(.)40 b(Next)31 b(c)m(hec)m(k)m(out)i(Carp)s(et)d(b)m(y)g
+(t)m(yping)283 4802 y Fe(cvs)47 b(-d)g(:pserver:cvs)p
+1199 4802 V 31 w(anon@cvs.carpetcode.org:)o(/hom)o(e/cv)o(s/c)o(arpe)o
+(t)42 b(checkout)j(Carpet)283 4915 y(cvs)i(-d)g(:pserver:cvs)p
+1199 4915 V 31 w(anon@cvs.carpetcode.org:)o(/hom)o(e/cv)o(s/c)o(arpe)o
+(t)42 b(checkout)j(CarpetExtra)283 5028 y(cvs)i(-d)g(:pserver:cvs)p
+1199 5028 V 31 w(anon@cvs.carpetcode.org:)o(/hom)o(e/cv)o(s/c)o(arpe)o
+(t)42 b(checkout)j(CarpetDev)p eop end
+%%Page: 3 3
+TeXDict begin 3 2 bop -94 100 a Fd(3)91 b(DOCUMENT)-8
+b(A)g(TION)2991 b Ff(3)-94 399 y Fg(3)134 b(Do)t(cumen)l(tation)-94
+601 y Ff(Do)s(cumen)m(tation)36 b(ab)s(out)e(Cactus,)i(Carp)s(et)e(and)
+g(their)g(separate)i(thorns)e(comes)h(in)f(di\013eren)m(t)h(forms.)53
+b(Most)35 b(im-)-94 714 y(p)s(ortan)m(tly)k(y)m(ou)g(generate)i(the)e
+(UsersGuide)f(and)h(ReferenceMan)m(ual)h(for)f(Cactus)g(b)m(y)g(going)h
+(in)m(to)g(the)f Fe(Cactus)-94 827 y Ff(directory)30
+b(and)g(t)m(yping)283 940 y Fe(make)47 b(UsersGuide)283
+1166 y(make)g(ReferenceManual)283 1392 y(make)g(ArrangementDoc)283
+1618 y(make)g(ThornDoc)47 1843 y Ff(\(four)30 b(separate)h(commands\).)
+41 b(They)30 b(will)g(b)s(e)g(created)h(in)g(p)s(ostscript)e(format)i
+(under)e(the)i(directory)283 2069 y Fe(doc)47 2295 y
+Ff(relativ)m(e)k(to)g(y)m(our)e(curren)m(t)g(p)s(osition,)i(i.e.)16
+b(the)34 b(Cactus)g(directory)-8 b(.)51 b(In)33 b(addition)g(eac)m(h)i
+(thorn)e(ma)m(y)h(con)m(tain)h(a)-94 2408 y(sub)s(directory)h
+Fe(doc)g Ff(where)h(the)h(author)f(\(or)h(users\))f(ma)m(y)h(store)g
+(additional)g(do)s(cumen)m(tation,)j(t)m(ypically)e(in)e(the)-94
+2521 y(form)29 b(of)i(a)g(\014le)f Fe(documentation.tex)p
+Ff(.)-94 2807 y Fg(4)134 b(Compilers)-94 3010 y Ff(Before)34
+b(w)m(e)g(indulge)f(in)g(using)g(Cactus/Carp)s(et,)i(w)m(e)f(ha)m(v)m
+(e)g(to)g(address)f(issues)g(concerning)h(the)f(system)h(y)m(ou)g(are)
+-94 3123 y(w)m(orking)c(on.)40 b(W)-8 b(e)32 b(b)s(egin)d(with)h(the)g
+(compilers)h(although)f(w)m(e)h(will)f(not)g(b)s(e)g(able)g(to)h(deal)g
+(with)e(the)i(sub)5 b(ject)30 b(in)f(an)-94 3236 y(exhaustiv)m(e)g
+(fashion.)40 b(Basically)32 b(these)d(notes)g(list)h(our)e(exp)s
+(eriences)h(with)g(lo)s(cal)h(mac)m(hines)f(\(i.e.)42
+b(at)29 b(P)m(enn)g(State\))-94 3349 y(and)f(ma)m(y)i(or)g(ma)m(y)g
+(not)f(b)s(e)g(v)-5 b(alid)30 b(for)f(y)m(our)g(en)m(vironmen)m(t.)41
+b(Users)30 b(are)f(encouraged)h(to)h(add)d(their)i(exp)s(eriences)f(to)
+-94 3462 y(this)h(list.)47 3575 y(A)m(t)i(P)m(enn)f(State)i(w)m(e)f
+(largely)h(w)m(ork)e(with)h(the)f(In)m(tel)i(compilers)f(and)e(the)i
+(success)g(of)g(compilations)h(has)e(b)s(een)-94 3688
+y(found)25 b(to)i(dep)s(end)d(sensitiv)m(ely)k(on)e(whic)m(h)h(v)m
+(ersion)f(of)h(the)g(In)m(tel)g(compilers)f(w)m(e)h(are)g(using.)39
+b(W)-8 b(e)28 b(will)e(discuss)g(some)-94 3801 y(error)j(messages)j
+(encoun)m(tered)f(in)f(the)g(pro)s(cess)g(of)h(compiler)g(testing)g(b)s
+(elo)m(w.)47 3914 y(F)-8 b(ree)35 b(do)m(wnload)g(\(at)g(least)h(for)e
+(Lin)m(ux\))g(of)g(the)h(In)m(tel)g(compiler)g(\(F)-8
+b(ortran)35 b(and)f(C++\))g(for)g(non-commercial)-94
+4026 y(priv)-5 b(ate)30 b(or)h(academic)h(use)e(is)g(a)m(v)-5
+b(ailable)33 b(from)d(the)g(w)m(eb)h(page)488 4214 y
+Fe(http://downloadfinder.int)o(el.c)o(om/s)o(cri)o(pts-)o(df/s)o(upp)o
+(ort)p 2886 4214 29 4 v 28 w(intel.asp)-94 4402 y Ff(\(clic)m(k)d(on)d
+(Soft)m(w)m(are)j(Dev)m(elopmen)m(t,)h(c)m(hec)m(k)f(for)d(the)i
+(compilers)f(on)g(y)m(our)g(system)g(and)f(follo)m(w)j(their)e
+(instructions\).)47 4515 y(In)e(case)j(y)m(ou)f(ha)m(v)m(en't)g(got)h
+(ro)s(ot)f(access,)i(y)m(ou)e(ma)m(y)g(need)f(to)h(install)g(the)g
+(compiler)g(lo)s(cally)h(or)e(y)m(ou)h(will)g(ha)m(v)m(e)g(to)-94
+4628 y(ask)c(y)m(our)h(sys-admin.)38 b(Additional)23
+b(di\016culties)g(ma)m(y)h(arise)f(in)f(case)i(y)m(ou)f(ha)m(v)m(e)h
+(no)f(ro)s(ot)g(access,)i(i.e.)39 b(install)24 b(lo)s(cally)-8
+b(,)-94 4740 y(while)29 b(y)m(our)g(sys-admin)g(k)m(eeps)h(some)g
+(older)f(v)m(ersion)h(installed.)41 b(In)29 b(order)f(to)j(mak)m(e)f
+(sure)f(that)g(no)h(con\015ict)g(arises)-94 4853 y(thereof)d(\(e.g.)41
+b(b)m(y)27 b(linking)g(against)i(old)e(v)m(ersions)g(of)h(the)f
+(library\))g(the)g(en)m(vironmen)m(t)h(v)-5 b(ariable)28
+b Fe(LD)p 3334 4853 V 34 w(LIBRARY)p 3704 4853 V 32 w(PATH)-94
+4966 y Ff(m)m(ust)h(p)s(oin)m(t)g(to)i(y)m(our)e(lo)s(cal)i(new)e(v)m
+(ersion)h(and)f(not)g(to)i(the)e(old)h(v)m(ersion)g(in)f
+Fe(/usr/local)e Ff(or)i(wherev)m(er.)41 b(Y)-8 b(ou)30
+b(will)-94 5079 y(probably)f(end)g(up)f(with)i(error)f(messages)i(suc)m
+(h)f(as)g Fe(undefined)45 b(symbols)h(...)39 b Ff(otherwise.)i(W)-8
+b(e)31 b(decided)f(to)g(use)-94 5192 y(the)e(In)m(tel)h(compiler)g(for)
+f(b)s(oth)g(F)-8 b(ortran)29 b(and)f(C++)f(co)s(de.)40
+b(This)28 b(w)m(as)h(mainly)f(a)h(result)f(of)h(the)f(curren)m(t)g(v)m
+(ersion)h(of)-94 5305 y(g++)h(not)g(ha)m(ving)h(the)g(complete)h(stl)e
+(libraries)h(that)g(are)g(made)f(use)g(of)h(extensiv)m(ely)h(in)e(Carp)
+s(et.)-94 5418 y(An)i(imp)s(ortan)m(t)h(asp)s(ect)g(of)g(the)g(In)m
+(tel)g(compilers)h(is)e(that)i(they)f(come)g(in)g(v)-5
+b(arious)33 b(di\013eren)m(t)g(v)m(ersions.)48 b(Ev)m(en)33
+b(the)p eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop -94 100 a Fd(5)91 b(LIBRARIES)3332
+b Ff(4)-94 399 y(same)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(sa)m(y)j
+(7.1\))f(comes)h(in)e(man)m(y)g(di\013eren)m(t)h(releases.)42
+b(Y)-8 b(ou)31 b(can)f(c)m(hec)m(k)i(this)f(b)m(y)f(t)m(yping)283
+624 y Fe(ifc)47 b(-V)47 850 y Ff(and)35 b(lik)m(ewise)i(for)e
+Fe(icc)p Ff(.)55 b(Note)37 b(in)e(particular)h(the)g(date)g(of)f(build)
+g(giv)m(en)h(in)f(the)h(form)f(of)h Fc(20030307Z)p Ff(.)j(This)-94
+963 y(corresp)s(onds)32 b(to)j(the)g(Marc)m(h)g(2003)h(build)d(of)h(v)m
+(ersion)h(7.1)g(and)f(caused)g(di\016culties)h(for)f(me.)53
+b(I)34 b(encoun)m(tered)g(an)-94 1076 y(error)29 b(message)j(lik)m(e)
+283 1302 y Fe(/home/terminator/sperhak)o(e/s)o(rc/2)o(004)p
+1917 1302 29 4 v 28 w(02)p 2042 1302 V 34 w(16)p 2172
+1302 V 34 w(cactus-FMR/configs/test)o(01/)o(buil)o(d/Ca)o(rpe)o(tLib)o
+(/)283 1415 y(data.cc\(173\):)92 b(error:)i(no)47 b(instance)e(of)i
+(overloaded)e(function)h("dist::datatype")283 1528 y(matches)g(the)h
+(argument)e(list)47 1753 y Ff(This)28 b(can)h(b)s(e)g(recti\014ed)g(b)m
+(y)g(switc)m(hing)g(to)h(a)g(new)m(er)e(release,)j(at)f(least)g(the)g
+(Septem)m(b)s(er)e(2003)j(build)d(of)h(v)m(ersion)-94
+1866 y(7.1)i(\(I'd)f(recommend)g(doing)h(that)g(for)f(b)s(oth)g(the)g
+(F)-8 b(ortran)31 b(and)f(the)h(C++)e(compiler\).)47
+1979 y(Some)d(Cactus-Carp)s(et)g(users)f(ha)m(v)m(e)i(rep)s(orted)e
+(problems,)h(suc)m(h)g(as)g(segmen)m(tation)i(faults,)f(b)m(y)f(using)g
+(the)g(most)-94 2092 y(recen)m(t)39 b(v)m(ersions)f(of)h(the)f(In)m
+(tel)h(compilers,)i(namely)d(the)h(Marc)m(h)g(2004)h(release)f(of)g(v)m
+(ersion)f(7.1)i(and)d(the)i(latest)-94 2205 y(v)m(ersion)32
+b(8.0.)48 b(So)32 b(far)g(w)m(e)h(ha)m(v)m(e)g(b)s(een)f(using)g(the)g
+(former)g(of)h(these)f(without)h(encoun)m(tering)g(an)m(y)f
+(di\016culties,)i(but)-94 2318 y(y)m(ou)c(should)g(probably)f(stic)m(k)
+j(to)f(the)f(Decem)m(b)s(er)i(or)e(Septem)m(b)s(er)g(2003)i(v)m(ersion)
+f(of)f(7.1)i(if)e(y)m(ou)h(can.)47 2431 y(On)h(m)m(y)i(Gen)m(to)s(o)g
+(Lin)m(ux)f(laptop,)i(on)e(the)h(other)f(hand,)h(I)f(exp)s(erienced)g
+(trouble)g(with)g(the)h(Septem)m(b)s(er)e(2003)-94 2544
+y(v)m(ersion)e(of)h(7.1.)42 b(I)30 b(receiv)m(ed)i(error)e(messages)h
+(lik)m(e)283 2770 y Fe(struct)46 b(stat)h(stat)p 1054
+2770 V 33 w(bbox)f(...)283 2883 y(Incomplete)f(components)g(in)i
+(structure)e(not)i(allowed)47 3108 y Ff(at)35 b(compilation)i(\(I)e(ha)
+m(v)m(e)h(forgotten)h(the)e(exact)i(w)m(ording,)f(but)e(y)m(ou'll)i
+(recognize)h(it\).)56 b(I)35 b(managed)g(to)h(w)m(ork)-94
+3221 y(around)g(this)h(b)m(y)g(using)g(the)g(In)m(tel)h(F)-8
+b(ortran)38 b(and)f(C++)f(compilers)i(v)m(ersion)g(8.0)g(\(build)f
+(Octob)s(er)g(2003\).)63 b(As)37 b(I)-94 3334 y(ha)m(v)m(e)g(not)g
+(done)g(extensiv)m(e)h(co)s(de)f(dev)m(elopmen)m(t)h(on)f(this)f
+(laptop,)j(though,)f(I)f(cannot)g(really)h(commen)m(t)f(on)g(the)-94
+3447 y(p)s(oten)m(tial)31 b(issues)f(concerning)h(the)g(8.0)g(v)m
+(ersion)g(men)m(tioned)g(ab)s(o)m(v)m(e.)47 3673 y(T)-8
+b(rouble)35 b(ma)m(y)h(also)h(arise)f(from)f(prepro)s(cessing)g(in)h
+(case)g(y)m(ou)g(are)g(using)g(RedHat)g(7.3)h(\(p)s(ossibly)e(also)h
+(with)-94 3786 y(other)26 b(v)m(ersions\).)40 b(This)26
+b(is)h(essen)m(tially)h(related)g(to)f(the)f(treatmen)m(t)j(of)d(white)
+h(space)g(in)f(F)-8 b(ortran)27 b(\014les.)40 b(Should)25
+b(y)m(ou)-94 3899 y(encoun)m(ter)32 b(rather)g(stupid)f(error)g
+(messages)i(whic)m(h)f(clearly)h(indicate)g(that)f(prop)s(er)f(lines)h
+(of)g(F)-8 b(ortran)33 b(ha)m(v)m(e)g(b)s(een)-94 4012
+y(corrupted)f(b)m(y)g(in)m(tro)s(ducing)h(white)g(space)g(\(e.g.)49
+b(line)33 b(breaks\))g(at)h(prepro)s(cessing,)f(y)m(ou)g(should)f(c)m
+(hec)m(k)i(y)m(our)f(cpp)-94 4125 y(and)c(p)s(ossibly)h(do)m(wnload)g
+(another)h(\(probably)f(older\))h(v)m(ersion.)41 b(Details)32
+b(ab)s(out)e(this)h(can)f(b)s(e)g(found)f(on)386 4289
+y Fe(http://www.cactuscode.org)o(/Do)o(cume)o(ntat)o(ion)o(/Arc)o(hite)
+o(ctu)o(res/)o(Linu)o(x.h)o(tml)-94 4454 y Ff(whic)m(h)34
+b(also)h(giv)m(es)h(a)f(link)f(to)h(the)g(prepro)s(cessor)f(of)g(the)h
+(older)g(RedHat)g(6.2)g(distribution.)53 b(I)34 b(do)m(wnloaded)h(that)
+-94 4567 y(older)30 b(v)m(ersion)h(and)f(it)h(solv)m(ed)g(the)f(prepro)
+s(cessing)g(problems)g(I)g(encoun)m(tered)h(prior)e(to)i(that.)-94
+4962 y Fg(5)134 b(Libraries)-94 5165 y Ff(As)33 b(m)m(uc)m(h)g(as)h
+(the)g(compiler)g(issue)f(is)g(strongly)h(dep)s(enden)m(t)e(on)i(y)m
+(our)f(platform,)h(the)g(exten)m(t)h(to)f(whic)m(h)f(y)m(ou)h(will)-94
+5278 y(ha)m(v)m(e)28 b(to)h(install)g(new)e(libraries)h(will)g(dep)s
+(end)e(on)h(what)h(y)m(our)g(system)g(administrator)g(has)f(already)i
+(done)e(for)h(y)m(ou.)-94 5391 y(Again)35 b(these)g(notes)h(cannot)f(b)
+s(e)f(exhaustiv)m(e)i(and)e(rather)h(fo)s(cus)f(on)h(our)f(exp)s
+(erience.)54 b(F)-8 b(eel)37 b(free,)f(as)f(b)s(efore,)g(to)-94
+5504 y(add)29 b(to)i(our)f(list.)p eop end
+%%Page: 5 5
+TeXDict begin 5 4 bop -94 100 a Fd(5)91 b(LIBRARIES)3332
+b Ff(5)-94 399 y Fb(5.1)112 b(HDF)37 b(library)-94 570
+y Ff(The)31 b(HDF5)j(library)e(is)h(required)f(for)g(handling)g
+(in/output)g(in)g(a)h(particular)g(binary)e(data)j(format.)47
+b(The)32 b(use)g(of)-94 683 y(these)38 b(libraries)g(in)g(Cactus/Carp)s
+(et)g(is)g(en)m(tirely)h(optional,)i(but)c(in)h(the)g(end)f(I)h(found)e
+(it)j(easier)g(to)f(install)h(the)-94 796 y(libraries)34
+b(than)f(to)i(con)m(vince)g(m)m(y)f(system)g(that)h(I)f(do)g(not)g(w)m
+(an)m(t)h(to)f(use)g(them.)51 b(They)34 b(should)f(b)s(e)g(useful)g(in)
+h(the)-94 909 y(long)c(run)f(an)m(yw)m(a)m(y)-8 b(,)33
+b(so)d(I)h(recommend)f(their)g(installation)i(unless)e(they)h(are)f
+(already)h(part)g(of)f(y)m(our)g(system.)47 1022 y(Let)h(us)e(start)i
+(with)f(the)h(hdf5)e(libraries.)41 b(The)30 b(binary)g(v)m(ersion)g
+(can)h(b)s(e)f(obtained)h(from)792 1209 y Fe(ftp://ftp.ncsa.uiuc.edu/)o
+(HDF)o(/HDF)o(5/hd)o(f5-)o(1.6.)o(1/bi)o(n)-94 1397 y
+Ff(As)f(b)s(efore)g(I)g(prefer)g(compiling)h(the)f(source)h(whic)m(h)f
+(y)m(ou)h(can)f(get)i(from)792 1585 y Fe(ftp://ftp.ncsa.uiuc.edu/)o
+(HDF)o(/HDF)o(5/hd)o(f5-)o(1.6.)o(1/sr)o(c)-94 1772 y
+Ff(Again)25 b(the)f(instructions)g(in)g(the)h Fe(INSTALL)d
+Ff(\014le)i(are)h(straigh)m(tforw)m(ard.)40 b(I)24 b(included)f(the)i
+(C++)e(in)m(terface)j(b)m(y)e(setting)-94 1885 y(the)30
+b(options)283 2111 y Fe(./configure)45 b(--enable-cxx)47
+2337 y Ff(and)37 b(used)f(the)i(v)-5 b(ariables)38 b
+Fe(CPPFLAGS)d Ff(and)i Fe(LDFLAGS)f Ff(to)i(ensure)e(that)i(the)g(szip)
+g(libraries)f(w)m(ere)h(found)e(\(see)-94 2450 y Fe(INSTALL)27
+b Ff(\014le\).)41 b(The)30 b(F)-8 b(ortran)30 b(in)m(terface)h(did)e
+(not)h(w)m(ork)g(for)g(me,)g(so)g(I)g(did)f(not)h(enable)g(that.)41
+b(In)29 b(future)g(v)m(ersions)-94 2563 y(of)38 b(this)g(do)s(cumen)m
+(t)g(this)g(issued)g(ma)m(y)h(b)s(e)f(readdressed.)63
+b(Finally)39 b(y)m(ou)g(ma)m(y)g(need)f(to)h(p)s(oin)m(t)f(the)h(en)m
+(vironmen)m(t)-94 2676 y(v)-5 b(ariable)31 b Fe(LD)p
+349 2676 29 4 v 33 w(LIBRARY)p 718 2676 V 33 w(PATH)e
+Ff(in)h(y)m(our)h Fe(.bashrc)d Ff(or)i Fe(.cshrc)f Ff(to)i(the)g
+(directory)g(con)m(taining)g(the)g(hdf5)f(library)-8
+b(.)-94 3032 y Fb(5.2)112 b(P)m(arallelization)-94 3204
+y Ff(This)35 b(subsection)h(is)g(relev)-5 b(an)m(t)37
+b(only)f(if)g(y)m(ou)h(plan)e(to)i(do)f(m)m(ulti)h(pro)s(cessor)e(runs)
+g(\(whic)m(h)h(y)m(ou)g(are)h(rather)f(lik)m(ely)-94
+3316 y(to)31 b(do,)h(though,)f(since)g(it)h(is)f(a)h(k)m(ey)g(feature)f
+(of)g(Cactus/Carp)s(et\).)44 b(There)30 b(are)i(v)-5
+b(arious)31 b(pac)m(k)-5 b(ages)33 b(that)f(tak)m(e)g(care)-94
+3429 y(of)i(parallelization,)k(suc)m(h)c(as)h Fe(MPICH)e
+Ff(or)h Fe(lam)f Ff(and)h(y)m(our)g(mac)m(hine)h(will)g(probably)e
+(come)j(equipp)s(ed)c(with)i(one)h(of)-94 3542 y(these.)47
+3655 y(I)d(ha)m(v)m(e)h(only)f(had)g(the)g(need)g(to)h(install)g(a)g
+(message)g(passing)f(in)m(terface)i Fe(\(MPI\))d Ff(on)h(m)m(y)g
+(laptop.)47 b(It's)32 b(a)h(single)-94 3768 y(pro)s(cessor)f(laptop)h
+(but)f(y)m(ou)h(can)g(em)m(ulate)h(m)m(ulti-pro)s(cessor)f(runs)e(none)
+h(the)h(less.)48 b(F)-8 b(urthermore)32 b(it)i(app)s(ears)d(to)-94
+3881 y(me)j(that)h(Carp)s(et)f(exp)s(ects)h Fe(MPI)f
+Ff(at)h(least)h(in)e(the)h(form)f(of)h(a)g(header)f(\014le)h
+Fe(mpi.h)p Ff(,)f(so)h(y)m(ou'd)g(b)s(etter)f(install)i(it.)53
+b(I)-94 3994 y(c)m(hose)31 b(the)f Fe(lam)g Ff(pac)m(k)-5
+b(age)32 b(for)e(this)h(purp)s(ose,)e(so)h(that)h(is)g(the)f(only)h
+(exp)s(erience)f(I)h(ha)m(v)m(e)g(to)g(rep)s(ort.)47
+4107 y(Installation)g(of)g(this)f(pac)m(k)-5 b(age)33
+b(w)m(as)d(straigh)m(tforw)m(ard)i(on)e(m)m(y)g(Gen)m(to)s(o)i(Lin)m
+(ux)e(laptop)h(b)m(y)f(t)m(yping)283 4333 y Fe(emerge)46
+b(lam-mpi)47 4558 y Ff(Dep)s(ending)31 b(on)h(y)m(our)g(Lin)m(ux)g
+(\015a)m(v)m(or)h(installation)h(ma)m(y)e(b)s(e)g(done)g(di\013eren)m
+(tly)-8 b(,)34 b(for)e(example)g(using)g Fe(rpm)p Ff(.)45
+b Fe(lam)-94 4671 y Ff(is)30 b(started)h(b)m(y)f(t)m(yping)283
+4897 y Fe(lamboot)47 5123 y Ff(and)f(then)h(executables)i(can)f(b)s(e)f
+(started)h(via)283 5349 y Fe(mpirun)46 b(-np)29 b Fa(<)p
+Ff(n)p Fa(>)h(<)p Ff(executable)p Fa(>)p eop end
+%%Page: 6 6
+TeXDict begin 6 5 bop -94 100 a Fd(6)91 b(CREA)-8 b(TING)30
+b(A)h(CONFIGURA)-8 b(TION)2411 b Ff(6)47 399 y(where)38
+b Fa(<)p Ff(n)p Fa(>)g Ff(is)h(the)g(n)m(um)m(b)s(er)f(of)h(pro)s
+(cessors)f(and)h Fa(<)p Ff(executable)p Fa(>)h Ff(the)f(binary)f
+(\014le)h(\(with)g(full)g(path\))g(y)m(ou)-94 511 y(w)m(an)m(t)31
+b(to)g(run.)-94 798 y Fg(6)134 b(Creating)47 b(a)e(con\014guration)-94
+1004 y Fb(6.1)112 b(The)38 b(con\014guration)g(\014le)-94
+1176 y Ff(Ev)m(en)m(tually)29 b(w)m(e)g(can)g(start)g(writing)f(a)h
+(con\014guration)g(\014le)f(for)g(a)h(Cactus-Carp)s(et)f(pro)5
+b(ject.)41 b(In)28 b(this)g(con\014guration)-94 1289
+y(\014le)37 b(the)g(paths)g(to)h(v)-5 b(arious)38 b(\014les,)h(suc)m(h)
+e(as)g(libraries)h(and)e(compilers)i(need)f(to)h(b)s(e)f(sp)s
+(eci\014ed.)60 b(Naturally)39 b(these)-94 1402 y(paths)29
+b(will)i(di\013er)f(from)g(mac)m(hine)h(to)g(mac)m(hine.)42
+b(In)29 b(this)i(subsection)f(I)g(will)h(assume)f(the)h(installation)h
+(path)283 1514 y Fe(/usr/local/)p Fa(<)p Ff(name)p Fa(>)47
+1740 y Ff(for)e(most)h(libraries,)h(where)e Fa(<)p Ff(name)p
+Fa(>)g Ff(is)h(the)g(name)g(of)f(the)h(library)-8 b(,)32
+b(e.g.)42 b Fe(hdf4)30 b Ff(or)h Fe(szip)p Ff(.)40 b(I)31
+b(further)e(assume)-94 1853 y(that)e(eac)m(h)h(of)g(these)f
+(directories)h(con)m(tains)g(sub)s(directories)f Fe(lib)f
+Ff(and)g Fe(include)f Ff(whic)m(h)i(con)m(tain)h(the)g(libraries)f(and)
+-94 1966 y(header)j(\014les.)40 b(Similarly)31 b(I)f(presume)f(that)i
+(all)h(compilers/prepro)s(cessors)e(are)h(installed)g(in)f(the)h
+(directory)283 2192 y Fe(/usr/local/for)p 961 2192 29
+4 v 30 w(carpet/bin)47 2418 y Ff(This)f(is,)h(of)h(course,)f(not)g
+(where)g(they)g(reside)g(on)g(y)m(our)g(mac)m(hine)h(\(nor)e(on)h
+(mine\),)h(but)e(it'll)j(b)s(e)d(su\016cien)m(t)h(for)-94
+2531 y(this)h(do)s(cumen)m(t)h(and)g(y)m(ou)g(will)h(merely)f(ha)m(v)m
+(e)h(to)g(replace)g(eac)m(h)g(of)g(these)f(paths)g(with)f(the)i
+(correct)g(one)f(on)g(y)m(our)-94 2644 y(system.)47 2756
+y(W)-8 b(e)28 b(are)g(no)m(w)g(in)f(the)h(p)s(osition)f(to)i(create)g
+(the)e(con\014guration)h(\014le,)h(sa)m(y)f Fe(mycode)p
+2829 2756 V 33 w(carpet.cfg)d Ff(\(y)m(ou)j(can)g(store)-94
+2869 y(that)g(\014le)f(wherev)m(er)g(y)m(ou)h(think)f(con)m(v)m(enien)m
+(t\).)42 b(W)-8 b(e)29 b(will)f(fo)s(cus)f(on)g(the)h(most)g(imp)s
+(ortan)m(t)f(en)m(tries)h(in)g(this)f(\014le)g(only)-8
+b(.)-94 2982 y(Please)26 b(refer)e(to)i(the)f(Cactus)g(do)s(cumen)m
+(tation)h(for)f(a)g(more)g(detailed)i(description.)38
+b(First)26 b(w)m(e)f(sp)s(ecify)g(information)-94 3095
+y(ab)s(out)30 b(the)g(compilers)283 3321 y Fe(F90)331
+b(/usr/local/for)p 1436 3321 V 30 w(carpet/bin/ifc)283
+3434 y(F77)g(/usr/local/for)p 1436 3434 V 30 w(carpet/bin/ifc)283
+3547 y(CC)378 b(/usr/local/for)p 1435 3547 V 31 w(carpet/bin/icc)283
+3660 y(CXX)331 b(/usr/local/for)p 1436 3660 V 30 w(carpet/bin/icc)283
+3773 y(CPP)g(/usr/local/for)p 1436 3773 V 30 w(carpet/bin/cpp)283
+3886 y(FPP)g(/usr/local/for)p 1436 3886 V 30 w(carpet/bin/cpp)47
+4111 y Ff(\(the)36 b(exact)h(amoun)m(t)f(of)f(white)h(space)g(b)s(et)m
+(w)m(een)g(the)g(v)-5 b(ariables)36 b Fe(F90,)47 b(F77,...)53
+b Ff(and)35 b(their)h(en)m(tries)g(should)-94 4224 y(not)28
+b(matter)i(and)e(y)m(ou)h(ma)m(y)g(ev)m(en)h(put)e(in)g(an)h(=)f
+(sign\).)41 b(Note)30 b(that)f(y)m(ou)g(do)f(not)h(need)g(to)g(sp)s
+(ecify)g(the)f(full)h(path)f(if)-94 4337 y(y)m(our)h(en)m(vironmen)m(t)
+g(v)-5 b(ariable)30 b Fe(PATH)e Ff(p)s(oin)m(ts)h(to)h(the)f(correct)i
+(v)m(ersions)e(of)h(the)f(compilers/prepro)s(cessors)g(already)-8
+b(.)-94 4450 y(Next)34 b(w)m(e)g(need)f(to)h(sp)s(ecify)f(information)h
+(ab)s(out)f(the)h(message)g(passing)g(in)m(terface.)51
+b(In)33 b(m)m(y)g(case)i(that)f(w)m(as)g Fe(lam)p Ff(,)-94
+4563 y(so)c(the)h(next)f(en)m(tries)h(in)f(m)m(y)h(\014le)f
+Fe(mycode)p 1367 4563 V 33 w(carpet.cfg)e Ff(are)283
+4789 y Fe(MPI)685 b(LAM)283 4902 y(LAM)p 433 4902 V 33
+w(INC)p 610 4902 V 34 w(DIR)331 b(/usr/include)283 5015
+y(LAM)p 433 5015 V 33 w(LIB)p 610 5015 V 34 w(DIR)g(/usr/lib)47
+5240 y Ff(In)34 b(case)i(y)m(ou)g(are)f(using)g(a)g(di\013eren)m(t)h
+Fe(MPI)e Ff(pac)m(k)-5 b(age)37 b(refer)e(to)h(the)f(Cactus)h(users)e
+(guide)h(to)h(\014nd)e(the)h(correct)-94 5353 y(en)m(try)j(for)g
+Fe(MPI)p Ff(.)f(Mak)m(e)j(sure)d(that)i(y)m(ou)f(sp)s(ecify)g(the)g
+(correct)h(paths)f(for)g(the)g(corresp)s(onding)f(header)h(\014les)g
+(and)-94 5466 y(libraries)30 b(\(ask)h(y)m(our)f(sys-admin)g(if)g
+(necessary\).)p eop end
+%%Page: 7 7
+TeXDict begin 7 6 bop -94 100 a Fd(6)91 b(CREA)-8 b(TING)30
+b(A)h(CONFIGURA)-8 b(TION)2411 b Ff(7)-94 399 y(Next)32
+b(w)m(e)g(sp)s(ecify)f(the)h(libraries)f(to)h(b)s(e)f(included)g(in)g
+(the)h(compilation.)45 b(F)-8 b(or)33 b(the)e(7.1)i(v)m(ersion)f(of)f
+(the)h(In)m(tel)g(com-)-94 511 y(pilers)e(in)g(com)m(bination)h(with)g
+Fe(lam)e Ff(w)m(e)i(found)e(the)h(follo)m(wing)i(to)f(w)m(ork)g(\014ne)
+283 737 y Fe(LIBS)567 b(crypt)46 b(lapack)g(blas)h(g2c)g(z)g(BINDF90)f
+(CEPCF90)g(F90)h(IEPCF90)e(PEPCF90)1039 850 y(POSF90)h(cprts)g(cxa)h
+(guide)f(imf)h(intrins)f(irc)h(ircmt)f(ompstub)g(svml)1039
+963 y(unwind)g(X11)h(ieeeio)f(df)h(m)g(mpi)g(lam)g(pmpi)47
+1189 y Ff(\(all)30 b(in)f(one)g(line\).)41 b(It)29 b(go)s(es)h(without)
+f(sa)m(ying)h(that)g(all)g(these)g(libraries)f(m)m(ust)g(b)s(e)f
+(installed)i(on)f(y)m(our)g(mac)m(hine.)-94 1302 y(Most)d(of)g(them)f
+(probably)g(are)h(and)f(the)h(installation)h(of)f(some)g(that)g(ma)m(y)
+g(not)g(is)g(describ)s(ed)e(in)i(more)f(detail)i(ab)s(o)m(v)m(e)-94
+1415 y(in)j(Sec.)15 b(5.)-94 1528 y(The)32 b(paths)h(to)g(some)h(of)f
+(these)h(libraries)f(ma)m(y)g(not)h(b)s(e)e(kno)m(wn)h(automatically)i
+(b)m(y)e(the)h(link)m(er)f(and)f(needs)h(to)h(b)s(e)-94
+1641 y(sp)s(eci\014ed)29 b(separately)-8 b(.)43 b(This)29
+b(is)i(done)f(with)g(the)g(v)-5 b(ariable)31 b Fe(LIBDIRS)e
+Ff(whic)m(h)h(I)g(had)g(to)h(set)g(to)283 1866 y Fe(LIBDIRS)424
+b(/usr/local/intel/compiler)o(70/)o(ia32)o(/lib)1039
+1979 y(/usr/X11R6/lib)44 b(/usr/local/IEEEIO/lib)e(/usr/local/hdf4/lib)
+1039 2092 y(/usr/lib/gcc-lib/i386-r)o(edha)o(t-li)o(nux)o(/egc)o(s-2.)o
+(91.)o(66)47 2318 y Ff(\(again)31 b(on)g(all)g(in)f(one)h(line\).)41
+b(As)30 b(b)s(efore)g(y)m(ou)h(will)g(ha)m(v)m(e)g(to)h(adjust)d(this)i
+(line)f(to)h(y)m(our)g(demands.)-94 2431 y(Finally)g(I)f(set)283
+2544 y Fe(PTHREADS)377 b(yes)47 2770 y Ff(though)30 b(I)g(am)g(not)h
+(sure)f(what)g(this)g(is)h(exactly)h(doing.)-94 3013
+y Fb(6.2)112 b(mak)m(e-con\014g)-94 3185 y Ff(In)29 b(order)h(to)h
+(create)h(a)f(con\014guration)g(c)m(hange)g(in)m(to)g(the)g
+Fe(Cactus)e Ff(directory)i(and)e(t)m(yp)s(e)283 3410
+y Fe(make)g Fa(<)p Ff(name)p Fa(>)p Fe(-config)45 b(options=)p
+Fa(<)p Ff(con\014g-\014le)p Fa(>)47 3636 y Ff(where)37
+b(y)m(ou)g(can)h(c)m(ho)s(ose)h(an)e(arbitrary)g Fa(<)p
+Ff(name)p Fa(>)g Ff(for)g(y)m(our)h(con\014guration)g(and)e
+Fa(<)p Ff(con\014g-\014le)p Fa(>)i Ff(is)f(the)h(\014le)-94
+3749 y(\(with)30 b(full)g(path\))h(created)g(in)f(the)h(previous)e
+(subsection.)-94 3993 y Fb(6.3)112 b(Creating)38 b(a)f(thornlist)-94
+4164 y Ff(Next)c(y)m(ou)f(will)h(need)f(to)h(generate)h(a)e(thornlist,)
+h(i.e.)16 b(a)33 b(list)g(of)f(all)i(those)e(thorns)g(y)m(ou)g(w)m(an)m
+(t)h(to)g(compile.)48 b(This)31 b(is)-94 4277 y(done)f(in)g(the)g
+Fe(Cactus)f Ff(directory)i(b)m(y)f(t)m(yping)283 4503
+y Fe(make)f Fa(<)p Ff(name)p Fa(>)p Fe(-thornlist)47
+4729 y Ff(where)k Fa(<)p Ff(name)p Fa(>)h Ff(m)m(ust)g(b)s(e)g(the)g
+(same)h(as)f(in)g(setting)h(up)f(the)g(con\014guration.)53
+b(This)33 b(command)h(will)h(searc)m(h)-94 4842 y(all)f(arrangemen)m
+(ts)h(for)f(all)g(thorns)f(and)h(ev)m(en)m(tually)h(prompt)e(y)m(ou)i
+(whether)e(y)m(ou)h(w)m(an)m(t)h(to)f(mo)s(dify)f(the)h(list.)52
+b(As)-94 4955 y(all)33 b(thorns)e(are)i(activ)-5 b(ated)34
+b(b)m(y)f(default)f(y)m(ou)h(do)f(w)m(an)m(t)h(to)g(mo)s(dify)f(the)h
+(list)g(and)e(t)m(yp)s(e)i Fc(yes)f Ff(and)g(hit)g(return.)46
+b(This)-94 5068 y(will)33 b(op)s(en)f(an)h(editor)h(session)f(where)g
+(y)m(ou)h(can)f(unselect)h(thorns)e(b)m(y)h(putting)g(a)h(hash)e('#')h
+(at)h(the)g(b)s(eginning)e(of)-94 5180 y(the)e(line.)41
+b(Unselect)32 b(all)f(thorns)f(in)g(this)g(w)m(a)m(y)h(except)h(for)e
+(the)g(follo)m(wing)283 5406 y Fe(CactusBase/Boundary)p
+eop end
+%%Page: 8 8
+TeXDict begin 8 7 bop -94 100 a Fd(6)91 b(CREA)-8 b(TING)30
+b(A)h(CONFIGURA)-8 b(TION)2411 b Ff(8)283 399 y Fe
+(CactusBase/CartGrid3D)283 511 y(CactusBase/CoordBase)283
+624 y(CactusBase/IOBasic)283 737 y(CactusBase/IOUtil)283
+850 y(CactusBase/LocalInterp)283 963 y(CactusBase/SymBase)283
+1076 y(CactusBase/Time)283 1189 y(Carpet/Carpet)283 1302
+y(Carpet/CarpetIOASCII)283 1415 y(Carpet/CarpetIOHDF5)283
+1528 y(Carpet/CarpetInterp)283 1641 y(Carpet/CarpetLib)283
+1753 y(Carpet/CarpetReduce)283 1866 y(Carpet/CarpetRegrid)283
+1979 y(Carpet/CarpetSlab)283 2092 y(CarpetExtra/IDScalarWave)283
+2205 y(CarpetExtra/WaveToyF77)47 2431 y Ff(Before)31
+b(y)m(ou)g(compile,)g(y)m(ou)g(need)f(to)h(apply)f(one)h(mo)s
+(di\014cation)g(to)g(the)f(\014le)47 2657 y Fe(arrangements/CarpetExtr)
+o(a/Wa)o(veT)o(oyF7)o(7/co)o(nfi)o(gura)o(tion)o(.cc)o(l)47
+2883 y Ff(namely)e(remo)m(v)m(e)h(the)e(en)m(try)h Fe(Cart3d)e
+Ff(from)h(the)h(list)g(of)g Fe(REQUIRED)d Ff(thorns.)39
+b(This)27 b(thorn)g(is)h(actually)h(required)-94 2995
+y(but,)37 b(for)g(some)g(reason)g(unkno)m(wn)e(to)i(me,)i(m)m(ust)d
+(not)h(b)s(e)f(men)m(tioned)i(here.)59 b(It)37 b(ga)m(v)m(e)i(an)d
+(error)h(message)g(com-)-94 3108 y(plaining)31 b(that)i(there)f(is)g
+(no)g(thorn)f Fe(Cart3d)p Ff(.)43 b(Ha)m(ving)33 b(applied)f(this)g(mo)
+s(di\014cation)g(y)m(ou)g(can)g(start)h(compiling)f(b)m(y)-94
+3221 y(t)m(yping)283 3447 y Fe(make)d Fa(<)p Ff(name)p
+Fa(>)47 3560 y Ff(There)c(is)h(no)g(guaran)m(tee,)j(but)c(at)i(least)g
+(y)m(ou)g(ha)m(v)m(e)g(a)f(c)m(hance)h(of)f(compiling)h(through)f
+(without)g(error)f(messages)-94 3673 y(\(do)h(not)h(b)s(e)e(in)m
+(timidated)j(b)m(y)e(the)g(o)s(dd)g(w)m(arning,)h(though\).)39
+b(In)26 b(case)h(y)m(ou)g(still)g(cannot)g(compile,)h(please)g(add)d(y)
+m(our)-94 3786 y(wisdom)k(to)i(this)g(do)s(cumen)m(t)f(to)h(help)f
+(future)f(users.)-94 4029 y Fb(6.4)112 b(Running)38 b(the)f(\014rst)h
+(application:)51 b(W)-9 b(a)m(v)m(eT)g(o)m(yF77)-94 4201
+y Ff(If)24 b(y)m(ou'v)m(e)i(gotten)g(this)e(far,)i(y)m(ou)f(should)e(b)
+s(e)h(able)h(to)g(run)f(y)m(our)g(\014rst)g(sim)m(ulation)h(with)g
+(mesh)f(re\014nemen)m(t.)38 b(Change)-94 4314 y(to)24
+b(some)g(con)m(v)m(enien)m(t)i(directory)e(for)f(this)h(purp)s(ose)e
+(and)h(cop)m(y)h(o)m(v)m(er)h(from)e(relativ)m(e)j(to)e(the)g(main)g
+Fe(Cactus)e Ff(directory)-94 4427 y(the)30 b(parameter)h(\014le)283
+4653 y Fe(arrangements/CarpetExtra)o(/Wa)o(veTo)o(yF77)o(/pa)o(r/wa)o
+(veto)o(yf7)o(7)p 2681 4653 29 4 v 29 w(rad)p 2854 4653
+V 33 w(full)p 3079 4653 V 33 w(rl2.par)47 4878 y Ff(Y)-8
+b(ou)27 b(will)g(need)g(to)h(adjust)e(this)h(parameter)g(\014le)g(a)g
+(little)i(to)f(get)g(it)f(running)e(\(I)i(am)g(not)h(a)m(w)m(are)g(of)f
+(a)g(W)-8 b(a)m(v)m(eT)g(o)m(y-)-94 4991 y(parameter)36
+b(\014le)g(that)g(do)s(es)f(not)h(require)g(suc)m(h)f(minor)h(mo)s
+(di\014cation\).)57 b(First)36 b(add)f(to)i(the)f(\014rst)f(line)h(b)s
+(eginning)-94 5104 y(with)i Fe(ActiveThorns)e Ff(the)k(thorns)e
+Fe(Slab)47 b(CoordBase)e(SymBase)37 b Ff(\(that)j(is)g(within)e(the)i
+(quotes\).)68 b(Finally)40 b(y)m(ou)-94 5217 y(should)29
+b(b)s(e)h(able)h(to)g(run)e(this)h(example)h(b)m(y)f(t)m(yping)h
+(something)g(lik)m(e)p eop end
+%%Page: 9 9
+TeXDict begin 9 8 bop -94 100 a Fd(6)91 b(CREA)-8 b(TING)30
+b(A)h(CONFIGURA)-8 b(TION)2411 b Ff(9)283 399 y Fe(mpirun)46
+b(-np)h(1)22 b Ff(~)-7 b Fe(/Cactus/exe/cactus-)p Fa(<)p
+Ff(name)p Fa(>)25 b Fe(wavetoyf77)p 2693 399 29 4 v 31
+w(rad)p 2868 399 V 34 w(full)p 3094 399 V 33 w(rl2.par)47
+624 y Ff(where)30 b Fa(<)p Ff(name)p Fa(>)h Ff(is)g(again)h(the)f(name)
+g(of)g(the)g(con\014guration)h(ab)s(o)m(v)m(e.)43 b(In)31
+b(case)h(y)m(ou)f(do)g(not)g(ha)m(v)m(e)h(y)m(our)f(main)-94
+737 y Fe(Cactus)d Ff(directory)j(under)e(y)m(our)h(home)h(directory)f
+(y)m(ou)h(will)g(need)f(to)h(adjust)f(that)h(part)f(in)g(the)h
+(command.)-94 850 y(By)25 b(running)f(this)i(command)f(y)m(ou)h(should)
+e(obtain)i(a)g(directory)g Fe(wavetoyf77)p 2626 850 V
+32 w(rad)p 2802 850 V 33 w(full)p 3027 850 V 34 w(rl2)e
+Ff(with)h(the)h(resulting)-94 963 y(data)31 b(in)f(ascii)h(format.)41
+b(Y)-8 b(ou)31 b(can)g(c)m(hec)m(k)h(for)e(example)h(the)f(\014le)283
+1189 y Fe(wavetoyf77)p 769 1189 V 32 w(rad)p 945 1189
+V 33 w(full)p 1170 1189 V 33 w(rl2/phi.x.asc)47 1415
+y Ff(\(relativ)m(e)i(to)f(the)f(directory)g(where)g(y)m(ou)g(ran)f(the)
+h(co)s(de\))h(whic)m(h)e(lists)i(the)f(data)h(on)e(the)h(separate)h
+(re\014nemen)m(t)-94 1528 y(lev)m(els.)p eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/Carpet/CarpetWeb/doc/internals.ps b/Carpet/CarpetWeb/doc/internals.ps
new file mode 100644
index 000000000..b04971d46
--- /dev/null
+++ b/Carpet/CarpetWeb/doc/internals.ps
@@ -0,0 +1,2859 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software
+%%Title: internals.dvi
+%%Pages: 13
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%DocumentFonts: Palatino-Roman CMMI12 Palatino-Bold CMTT10
+%%+ Palatino-Italic EURM10 CMR10 CMSY10
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips internals.dvi -o internals.ps
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2003.05.03:1529
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: 8r.enc
+% File 8r.enc as of 2002-03-12 for PSNFSS 9
+%
+% This is the encoding vector for Type1 and TrueType fonts to be used
+% with TeX. This file is part of the PSNFSS bundle, version 9
+%
+% Authors: S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry, W. Schmidt
+%
+% Idea is to have all the characters normally included in Type 1 fonts
+% available for typesetting. This is effectively the characters in Adobe
+% Standard Encoding + ISO Latin 1 + extra characters from Lucida + Euro.
+%
+% Character code assignments were made as follows:
+%
+% (1) the Windows ANSI characters are almost all in their Windows ANSI
+% positions, because some Windows users cannot easily reencode the
+% fonts, and it makes no difference on other systems. The only Windows
+% ANSI characters not available are those that make no sense for
+% typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen
+% (173). quotesingle and grave are moved just because it's such an
+% irritation not having them in TeX positions.
+%
+% (2) Remaining characters are assigned arbitrarily to the lower part
+% of the range, avoiding 0, 10 and 13 in case we meet dumb software.
+%
+% (3) Y&Y Lucida Bright includes some extra text characters; in the
+% hopes that other PostScript fonts, perhaps created for public
+% consumption, will include them, they are included starting at 0x12.
+%
+% (4) Remaining positions left undefined are for use in (hopefully)
+% upward-compatible revisions, if someday more characters are generally
+% available.
+%
+% (5) hyphen appears twice for compatibility with both ASCII and Windows.
+%
+% (6) /Euro is assigned to 128, as in Windows ANSI
+%
+/TeXBase1Encoding [
+% 0x00 (encoded characters from Adobe Standard not in Windows 3.1)
+ /.notdef /dotaccent /fi /fl
+ /fraction /hungarumlaut /Lslash /lslash
+ /ogonek /ring /.notdef
+ /breve /minus /.notdef
+% These are the only two remaining unencoded characters, so may as
+% well include them.
+ /Zcaron /zcaron
+% 0x10
+ /caron /dotlessi
+% (unusual TeX characters available in, e.g., Lucida Bright)
+ /dotlessj /ff /ffi /ffl
+ /.notdef /.notdef /.notdef /.notdef
+ /.notdef /.notdef /.notdef /.notdef
+ % very contentious; it's so painful not having quoteleft and quoteright
+ % at 96 and 145 that we move the things normally found there down to here.
+ /grave /quotesingle
+% 0x20 (ASCII begins)
+ /space /exclam /quotedbl /numbersign
+ /dollar /percent /ampersand /quoteright
+ /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
+% 0x30
+ /zero /one /two /three /four /five /six /seven
+ /eight /nine /colon /semicolon /less /equal /greater /question
+% 0x40
+ /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O
+% 0x50
+ /P /Q /R /S /T /U /V /W
+ /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
+% 0x60
+ /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o
+% 0x70
+ /p /q /r /s /t /u /v /w
+ /x /y /z /braceleft /bar /braceright /asciitilde
+ /.notdef % rubout; ASCII ends
+% 0x80
+ /Euro /.notdef /quotesinglbase /florin
+ /quotedblbase /ellipsis /dagger /daggerdbl
+ /circumflex /perthousand /Scaron /guilsinglleft
+ /OE /.notdef /.notdef /.notdef
+% 0x90
+ /.notdef /.notdef /.notdef /quotedblleft
+ /quotedblright /bullet /endash /emdash
+ /tilde /trademark /scaron /guilsinglright
+ /oe /.notdef /.notdef /Ydieresis
+% 0xA0
+ /.notdef % nobreakspace
+ /exclamdown /cent /sterling
+ /currency /yen /brokenbar /section
+ /dieresis /copyright /ordfeminine /guillemotleft
+ /logicalnot
+ /hyphen % Y&Y (also at 45); Windows' softhyphen
+ /registered
+ /macron
+% 0xD0
+ /degree /plusminus /twosuperior /threesuperior
+ /acute /mu /paragraph /periodcentered
+ /cedilla /onesuperior /ordmasculine /guillemotright
+ /onequarter /onehalf /threequarters /questiondown
+% 0xC0
+ /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
+ /Egrave /Eacute /Ecircumflex /Edieresis
+ /Igrave /Iacute /Icircumflex /Idieresis
+% 0xD0
+ /Eth /Ntilde /Ograve /Oacute
+ /Ocircumflex /Otilde /Odieresis /multiply
+ /Oslash /Ugrave /Uacute /Ucircumflex
+ /Udieresis /Yacute /Thorn /germandbls
+% 0xE0
+ /agrave /aacute /acircumflex /atilde
+ /adieresis /aring /ae /ccedilla
+ /egrave /eacute /ecircumflex /edieresis
+ /igrave /iacute /icircumflex /idieresis
+% 0xF0
+ /eth /ntilde /ograve /oacute
+ /ocircumflex /otilde /odieresis /divide
+ /oslash /ugrave /uacute /ucircumflex
+ /udieresis /yacute /thorn /ydieresis
+] def
+
+%%EndProcSet
+%%BeginProcSet: aae443f0.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmmi10 cmmi12 cmmi5 cmmi6 cmmi7 cmmi8 cmmi9 cmmib10
+%
+/TeXaae443f0Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/alpha /beta /gamma /delta /epsilon1 /zeta /eta /theta /iota /kappa
+/lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi
+/omega /epsilon /theta1 /pi1 /rho1 /sigma1 /phi1 /arrowlefttophalf
+/arrowleftbothalf /arrowrighttophalf /arrowrightbothalf /arrowhookleft
+/arrowhookright /triangleright /triangleleft /zerooldstyle /oneoldstyle
+/twooldstyle /threeoldstyle /fouroldstyle /fiveoldstyle /sixoldstyle
+/sevenoldstyle /eightoldstyle /nineoldstyle /period /comma /less /slash
+/greater /star /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /flat /natural /sharp /slurbelow
+/slurabove /lscript /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p
+/q /r /s /t /u /v /w /x /y /z /dotlessi /dotlessj /weierstrass /vector
+/tie /psi /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/space /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/.notdef /.notdef /Omega /alpha /beta /gamma /delta /epsilon1 /zeta /eta
+/theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon
+/phi /chi /psi /tie /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: 09fbbfac.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmsltt10 cmtt10 cmtt12 cmtt8 cmtt9
+/TeX09fbbfacEncoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi
+/Omega /arrowup /arrowdown /quotesingle /exclamdown /questiondown
+/dotlessi /dotlessj /grave /acute /caron /breve /macron /ring /cedilla
+/germandbls /ae /oe /oslash /AE /OE /Oslash /visiblespace /exclam
+/quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft
+/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
+/two /three /four /five /six /seven /eight /nine /colon /semicolon /less
+/equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N
+/O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright
+/asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l
+/m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright
+/asciitilde /dieresis /visiblespace /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /space /Gamma /Delta /Theta /Lambda /Xi /Pi
+/Sigma /Upsilon /Phi /Psi /.notdef /.notdef /Omega /arrowup /arrowdown
+/quotesingle /exclamdown /questiondown /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /visiblespace /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: f7b6d320.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmb10 cmbx10 cmbx12 cmbx5 cmbx6 cmbx7 cmbx8 cmbx9 cmbxsl10
+% cmdunh10 cmr10 cmr12 cmr17cmr6 cmr7 cmr8 cmr9 cmsl10 cmsl12 cmsl8
+% cmsl9 cmss10cmss12 cmss17 cmss8 cmss9 cmssbx10 cmssdc10 cmssi10
+% cmssi12 cmssi17 cmssi8cmssi9 cmssq8 cmssqi8 cmvtt10
+%
+/TeXf7b6d320Encoding [
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /Omega
+/ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute /caron /breve
+/macron /ring /cedilla /germandbls /ae /oe /oslash /AE /OE /Oslash
+/suppress /exclam /quotedblright /numbersign /dollar /percent /ampersand
+/quoteright /parenleft /parenright /asterisk /plus /comma /hyphen
+/period /slash /zero /one /two /three /four /five /six /seven /eight
+/nine /colon /semicolon /exclamdown /equal /questiondown /question /at
+/A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X
+/Y /Z /bracketleft /quotedblleft /bracketright /circumflex /dotaccent
+/quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u
+/v /w /x /y /z /endash /emdash /hungarumlaut /tilde /dieresis /suppress
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space
+/Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon /Phi /Psi /.notdef
+/.notdef /Omega /ff /fi /fl /ffi /ffl /dotlessi /dotlessj /grave /acute
+/caron /breve /macron /ring /cedilla /germandbls /ae /oe /oslash /AE
+/OE /Oslash /suppress /dieresis /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: bbad153f.enc
+% Thomas Esser, Dec 2002. public domain
+%
+% Encoding for:
+% cmsy10 cmsy5 cmsy6 cmsy7 cmsy8 cmsy9
+%
+/TeXbbad153fEncoding [
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /circlemultiply
+/circledivide /circledot /circlecopyrt /openbullet /bullet
+/equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal
+/greaterequal /precedesequal /followsequal /similar /approxequal
+/propersubset /propersuperset /lessmuch /greatermuch /precedes /follows
+/arrowleft /arrowright /arrowup /arrowdown /arrowboth /arrownortheast
+/arrowsoutheast /similarequal /arrowdblleft /arrowdblright /arrowdblup
+/arrowdbldown /arrowdblboth /arrownorthwest /arrowsouthwest /proportional
+/prime /infinity /element /owner /triangle /triangleinv /negationslash
+/mapsto /universal /existential /logicalnot /emptyset /Rfractur /Ifractur
+/latticetop /perpendicular /aleph /A /B /C /D /E /F /G /H /I /J /K
+/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /union /intersection
+/unionmulti /logicaland /logicalor /turnstileleft /turnstileright
+/floorleft /floorright /ceilingleft /ceilingright /braceleft /braceright
+/angbracketleft /angbracketright /bar /bardbl /arrowbothv /arrowdblbothv
+/backslash /wreathproduct /radical /coproduct /nabla /integral
+/unionsq /intersectionsq /subsetsqequal /supersetsqequal /section
+/dagger /daggerdbl /paragraph /club /diamond /heart /spade /arrowleft
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/minus /periodcentered /multiply /asteriskmath /divide /diamondmath
+/plusminus /minusplus /circleplus /circleminus /.notdef /.notdef
+/circlemultiply /circledivide /circledot /circlecopyrt /openbullet
+/bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset
+/lessequal /greaterequal /precedesequal /followsequal /similar
+/approxequal /propersubset /propersuperset /lessmuch /greatermuch
+/precedes /follows /arrowleft /spade /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
+@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+TeXDict begin @defspecial
+
+ /DvipsToPDF { 72.27 mul Resolution div } def /PDFToDvips { 72.27 div
+Resolution mul } def /HyperBorder { 1 PDFToDvips } def /H.V {pdf@hoff
+pdf@voff null} def /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+/H.S { currentpoint HyperBorder add /pdf@lly exch def dup DvipsToPDF
+/pdf@hoff exch def HyperBorder sub /pdf@llx exch def } def /H.L { 2
+sub dup /HyperBasePt exch def PDFToDvips /HyperBaseDvips exch def currentpoint
+HyperBaseDvips sub /pdf@ury exch def /pdf@urx exch def } def /H.A {
+H.L currentpoint exch pop vsize 72 sub exch DvipsToPDF HyperBasePt
+sub sub /pdf@voff exch def } def /H.R { currentpoint HyperBorder sub
+/pdf@ury exch def HyperBorder add /pdf@urx exch def currentpoint exch
+pop vsize 72 sub exch DvipsToPDF sub /pdf@voff exch def } def systemdict
+/pdfmark known not {userdict /pdfmark systemdict /cleartomark get put}
+if
+
+@fedspecial end
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.1: CMSY10 1.0
+%%CreationDate: 1991 Aug 15 07:20:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.0) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMSY10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.035 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMSY10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-29 -960 1116 775}readonly def
+/UniqueID 5000820 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
+7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
+A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
+E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
+221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
+27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
+5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
+0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
+DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
+71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
+4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
+515DB70A8D4F6146FE068DC1E5DE8BC57036431151EC603C8BCFE359BBD953AD
+5F3D999EFA3E40D4C38BED0D7A872251C333BA38795F6783D83611E7CE9E146E
+537483C41D947F2E50AEC949349321A32EFDBAFCA64A0F39824B350F095D4707
+604DA3982669C5EDC911D14FB536BADF6D92EE1FEAEA37FA0314FDF47F478F8B
+82ADE6BB0572B4D59EF1AAE6E422AC4BB5BC4E76480FFFCFD83C24EA5433F2FB
+480085EAF4F909107F2664F8945891393AE01C4E028C48BFE1E057610AA6E687
+1189C983219E05511E24053C8449DEC88BBB16B1DE62526B82A14C2826A92DBC
+92D6F49F965B648EC0A8326E44E86E75E6B22927D200EB2939A8FF1976D83EEA
+05DE5D5C775C3CF2C2851A73DB55850AB9C2664385BDE14390D00580E8C3F927
+766A8BE1042F5E6DBC3647F5B59C4CA091E9E90CD7CBDF4F51E1A35028EE4568
+6D0F6C27727A885B5F4335D4905717AE12C20B066DFB37C2D7EC40878FD9676E
+595A457A1944E84F4D067ADABF3CE385C120C6F4692E482E473041355F9B038E
+0D713B41D9AE558425071A19
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.1: CMR10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-251 -250 1009 969}readonly def
+/UniqueID 5000793 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
+295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
+409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
+4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
+2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
+0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
+B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
+24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
+43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
+D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
+5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
+96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
+7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3C8578EF9A20A0E06E
+4F7ADDAF0E7D1E182D115BF1AD931977325AD391E72E2B13CC108E3726C11099
+E2000623188AAAC9F3E233EB253BDD8B0A4759A66A113E066238B0086AC1B634
+5ABFF90E4B5ED3FA69C22541981B2BFC9710AEF6B50A8BB53431C7B4D380D721
+639E005D6B4688EE16BFF48443E7C9E5FB5BC5883E271CB03428966C96B6988B
+2C9127404E8C64B122D405610B1207E61D6CB678BF414E64299C22D6B8DA233B
+8E0E897EEAF81E43E962BD1DE1D8F24C8350761B0E688E433D01BCC9ADD5857E
+BE9564F01D501D5F99C4272CA490100395D23DEC1BE59A6DE8D20B90C61434C9
+062B6856C5C61184BD58F20E01B447F6140CB149BD370D59069F121FCA8AC937
+4A86AF9E00E141BE1F2B0DEF30A4AC17817E4B58B1A8921B990F237E64A938AD
+284A1DAB4F3BF58231B22F57219F9BF0E38585D631CF24EB1DDCBB1EA6E3DB31
+88D7C3F8D9EAF27F7239557A2D2EA7AC5AED0DC02CDB0A2C9E4D64C24C3616F3
+AA98D473C46596DC975C149FD66CE806C4529D92B0173BBCDA0D18B2956E0F51
+179D7861557A915D2AA59CE21800265DAF737E83C7B4E9C41F80195E51A95158
+F9CEAFA5ABDEBCDF332BC7107FEA70FDE84269ACCD15BB35D961846217D54B02
+88995D6A3304BF88EEA7ACB9C548195606C4E601789F3562E89A69C40BEA9167
+D3F49BF39DB2D57630674554F297DA605A079220182EA752B31072D46E091410
+D021BFC8B8A1E4D6E2AC110AE143BE32F407F6AAD2FEE259839BF6AEE1B7FAC4
+7597F8E3347EFB48F3DDE6E9198354D1D408AD5657D41F5D11FE6B805FBFA2E2
+F92F6332DDAD4AE77D30758E37B67866D6CEA29B6027812977B8D68A570904DF
+47550EA6773ED0DFE830F8B80BBECAA80EC33DC5ACDD4E683E5B688F5D1F14FA
+A5778EE610C3FCF3429021E2A014F8B0B97BEAFFA7F3868E61B35678D54173BC
+93A7BF29949C2814BB364594DA9ABAA2F2AEC654B0FB8C022B5775582D8CBA0D
+D1AD19333BD74415F40C24E839E48B674B003359EAB05AC8A0ABD358DA7E999D
+1AFE8359E410DE798A76FBF289C701E5DC730913F6FC2FD9693C34013B47C8CF
+84670F3925D2FB69CA3C2C61029C9FD1066AD2C1D640A556E226D7056118CBBB
+CB4C859D64B04B08751F3EFBDEF6F1F352DCBD682F73C89910D7A937D07ED50E
+5DCA560DBAD3A96F708B639F62730A566E7D4D3C6C89BF3868707B721ED3ECD8
+F185314C9D5B4E8456BC0B096F99F1A9AD67E40E0EBF19B06BFE1DE82BA32980
+AA
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.1: CMTT10 1.00B
+%%CreationDate: 1992 Apr 26 10:42:42
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+end readonly def
+/FontName /CMTT10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-4 -235 731 800}readonly def
+/UniqueID 5000832 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
+38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
+D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
+EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
+A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
+F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
+4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
+6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
+A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
+E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
+1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
+452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
+8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
+5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
+DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
+BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
+741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
+E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
+E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
+D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
+C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DC
+FF798F2ABFC4F3539392985C4CB324B00072295FC160818BB0355FDC4F12E39B
+984826450553E3D271F03D8DC2D12A92A4D32034FD16DA13B876DF448467B625
+2BA3AEEEC60550844F5300D7FDCBE636D5951411C6F46CF31F03D3517A96309E
+02D0DDC6D8C0C89D2FB8E4412BEC66D17F41F8080421508CCDAAD3FF7A56D365
+2E26AC2815B518D59BE84245FD6631EE73EAF3BE24749C77B73FFBF6CB06BC58
+1C92ABA181B7CF0FF955A8DA29F117536ED7582730146D03BB3BD8F78EE53D23
+FB86AD14321792A02D3AC0B5F092893B8E794A8EBEF6C27AC845341C42B5A3A7
+5F4E0503B689549956E1E8BDB956F8A0DB4097D3F3C3DB7E790548EA563A9064
+13412F7046CE91024D85A7904266ABB0916984F7CC897996403009A0CF038F60
+9691D46D36C9E44B1FCCB664F3C4CE59ECDFEAC5B1328DCE8150A80D8D3EA38F
+D8F7AA322C87DE4B63A466F2DBE6CF06444AF8B04DB5CFFAADC3B41087F68326
+C64397D3FE523A8C633407C74D939BA8D3A59811B2C3BAB68598FE1A396EC727
+BB76DBEEFB43AD7CAF4F67DE5CAF94525A13219303CBBDBFFF5226B37A12A825
+14DB9B144641A5B5FDEA9E0E3729A0C1642F9E92478DA82596ADB0F4D7D3DBB1
+0F7F46B73AE32DBD40DE106093A3E5B1FAE73E36B3DD2B06FDFF75A74D09CC77
+6FE24D7B8570384920F97BB3B61440D03C443B9AB845D74581506FBF42389210
+5CFC9CD11E0B290F32D4FCE38EFF176A3F94B0EE343F97926EB77A87F7C3174A
+EAA273A07D15057253BB7B201D64A88705115E827DAC9484667169699465AD6E
+DC4EBB4807163FEA3BE751DD38532E01152036AF77CAA574919A47D207439C42
+602B573665ED644B3B345FC1E0CEAB244A45B281739E49700D090B27868AE86C
+BD1B709BC93BE9A8A9A6B136D83CEA8D9691E64833B16F5BD0CCBEC9251E35FD
+A90C35BA35FB21D4D69970BD7E1CFBBDD10555C784C633425E9EE81724A19ABB
+7CF38AE2E3CF740BE6BD4E3568281F8095697C65AD47D495CBA676EF40F0B1FD
+936B691C913F9AB2D94C49731AE196BC1E5BDC14475DD84F191537868B71C322
+102F98DD2B2112ED405240A6FD2D978D59C962F462855104EF091F9681798132
+9071596DC768A9A5F97AD6B8E03DA12FCD816FDF771F8841C42568D0865454CE
+5F51B3FF32DD31C08185D082D30084D7A01E6D10225EEF66710E240624D826BB
+1B67FC08FD883CB4F7BF141146E4AAC60518B6A48A442379C909149D9CD3A9DD
+FEB0922413406CB2EFAA92C305CDBAE3999908DAEC0224D3E4058E13234E4D0B
+130B526B32E584A8BD187B402B79B6073AA41E82B2A90CA92B5203FAEB01FB28
+FFC3C40C01964FA951E9355FAB886880B7AC22E4A97E393DE7D944566AEAAD25
+D09B6607A1D36AACCD897AD6326A7CA0CD8E353FCCD311288CEAA0D6B1C07051
+8181E63C7F43591077F094E614FC4B69BBFE316352EC009A548D164DD0644BC1
+855C9B9AA37A4CDA9ED95C25CD349CA2D1CE8702B6225FE4296BDDC3688CD388
+506DA287D773851052881FB94E740E775D8FAF07FBDCF305ABB2A052229FBE92
+92F40FDADEB1F6607D2D97C66C9653CE8BDDCDE8AF24330CB7FC4F25B0AFA2F9
+75CA09BE8722864055FAF1DAFFA43B810E68E68579A50E105B8F14C29C8349A7
+4F0392CAE19BA887801A1F0F6AF05A45311735A1ECDDCD3B82AFBC3FED70A08C
+D0A0DEF6D595576F4F8C5F047EA48200A510327726B7996078820057EA17CB5D
+8272C7C38D6893D0DCB9B56C4969AC413CC888A082CEF94DD0DB518D011F1118
+26FF66E107E88B9187F0F236CA0218CBEF4B532A106ACB6A74FDC8675EF30837
+F6BD9AAFBE6DDB238227BB28D60DBDA3001CB2336BE3C4C263362CAC9023E01C
+E05A32BB68217CE6C1A8CADFCB97DC65C7697790CDD284E2DC8F3CDE3A29548F
+F4A0771F20E5D38CA73585D7C6D20FA7D8D3090D10DC67A131C22D60598426A9
+C98A451F7F2D5BA9E58049B9402510B59AC71928E07B4B101C99DD5113A11059
+A116FD045810A9A3149CF558818E4B3F03C43016C6D3314A68A891B8F5C3A6C9
+E44A12EEB1B8F2C4D317E1E6A23C44B2F838D18B86B0A3378AFD9CD56FFDC5C6
+55FF9BF06EA28AB8DCC1754D59D15478575A70315F97B0045526D664DF74C0AB
+98EDB5BD133C3B102CBB7116C09184603915B00D9236FE8B33C9EBB860A4EF24
+1F1FE86BAB362602865110C9D0FC3657E8365252AA58B663D129994644FA993F
+F5B8085F898315F92F526E704D7991D852C960495A21FB57B431405290016ED8
+155C2FD45EF9FE215F81C3C1968F22E2913A4ABE76AD00DF98B8B866DFEAD42C
+58B62316D39364D53B1B8804B3B86ACDB09D397C30575927539E4D83AC1B11D7
+0BFEB0FAEB5D8134E80AA656F41B75445F01DBC4D991EBCDB3DEF2046A2471A7
+626D356F80672FC100CFB182DC7A71FF2B6F79D09B1753C79A4064C893E2840A
+BE467AEFB649B15BB0414765C2386AD380B490345B3A0A46C3FD6DC04A7B4E99
+52C17712D3A72105993CA807FE2F02E3081DE5F8C0905A7F59B91A29DA17097E
+72D5A3F898EDE207389D5DB7177879A27C09B6088575794FA0E0999A5213C94E
+C1F7D086FE0900F4AD37A73D487E39B3A0F50999AE449300144A8468DEBC88E1
+FC3AA0F37F59741E012787B4B0BDC6FDB9FF67A27546F45ED7772FF4C4FE81A5
+9851ECF941EFA4EA0C6E43BF52229CC80F82C0C39A1546D8F43C420B6517C807
+3A1D3E2F13DE14554ABD965931067FCEB11E000539E3CC0BADC93AD0F4FA5AA3
+CB7AE61C7124AB3C31694CC77C2FCEFB6D4A6C9637BF6D72CD4EF22E699931EC
+F04E82C19F9A758FBE5D99BB035CA5952BBD036288649E4D86E55E9A7362F4D2
+DAB9C9025F7B21C3C4B17A2FC0872DECA91F2A07673184B437423502DD67829C
+466B72C0C5347E396C0447B69FA337DE4C93D2C100BC5ABB8A9C7F770A3406B9
+615991B1CB7D1276C920A556DF22E0B9B4DAACFCABB460F0BA9F7D349F6A5E35
+32932F2A817544DCA54A1CD612656B4A58D07B277AAE7B6CF766A84BA37600F2
+E538AF00CF3F44A6FAF4FE4C16C280367172A1208F6C4E4293C5F9B86948C2DE
+ADC31D00E216F701A0BCF7C05AEC7B869BF309A2723C1114D2258CFE9F23E477
+C3A9163BD7ECA67FA05989BD03DFD449F10B31A5E2ED47FE8A5C728D2D0BE932
+C6D22A6E5AEEF1E36FE833C748ABFD4CD7B47C43C8D5F04931D530041A66413B
+B226D4EA2A4E6DEFB5BB405E6FA9B55E1F38F44AE4B1787404D7B29D53110C96
+6D3B3988863114E8D3DBDCCD340F071F6D0878E052548F071CA5F5E95874A76D
+25F0D549216C3EDA673E7B48179E724B614013FD285C8DF5892D261A3E42F662
+778D6377450226655DA88BDD4DDDC1CE3268A567ABD16D23DCE8DC5EFC65C277
+315D2F52E7D731B3E736DA127083DB6614408B5D3B465629E742AF5617E46614
+E9058174D8FDCDBEA858F8E684256290983F1B6878BE93ADDA0E6F01E1AE9675
+944796E58043AB149240F3A0D67C5722927C9AA8A21F069DFBC9A00DBD7E7D3C
+CCDE58B4B6F7BCA5249F905B4100241E8AA7A8830DFC48AB187993A8EA9C53A2
+A46E553FAB76FD3CF9CEC9AC70768B909599638CC99AB6067AC7F027603C5946
+1111B5F55368FDEE83C9960E02798E5059E9D48E1E7DFAA2F2D34B7E6DCB6CAE
+F8758BD829030798C9E8E535EA232E7E7B9960864A7D5F28B60758016199D1F8
+77BF3113A66B5E93F2ED2B04D74B4223ABD399B84EB964638290930D30396428
+544110D132786A99CFB2C1490297EB89D668968442FED549B7E88ACF226D84BD
+3268C8B71482745D1A8E9AF87A5F05C95AE201D8E7EBCEE7D217DCF6D5BBC1AF
+493800FF3479B6A0C2C1E02E37BC3CAD926BCA7B0E67CD0EB4C55D776B9D6A12
+E26180401CA20E24A54DF615D9075B082C3C63BA818F9B065D373251DFC2A5B0
+8A986ED4DBD70327363A6B630C4D41C5C9E4623467BBA9781572704CA1CB113C
+6F0CC36EC191D7D70A067E6B27D70EE96D514500F15702A4716411E86539936F
+F700CA5916A0171004B2E0658F31280194F8D398899740653FC51109F805D619
+9BF642C34D3FD15C491C05BAEBA41888CACEE664B8DF67FC9ADF74161EBEF2C5
+180C93495F57BEC8578927F431A3EA5B21E59B711D85F22334D9C243033FB80B
+175CE9EFC3655992555766733C9DD39CC0894D1766154240171D324551927215
+65BAA3B03165A680A027513C061383BFC3A4B8441A54725B53E6E95CF20447B5
+1536FC43B32DDC9D621A5E30505DB3B1D6C6E02FB8B746C4AE0FB4F06D0F1E85
+FC386D95D23A8364AAE58AF6D0CD13D5E97B3A4C390D9657B969865C38FEF7E8
+E4B6BA80A368C4BC1A9B97CFFB31B0A85ABA929835919EF2634C60ECEA5B9916
+DC1B4E19AD654D7701A300862770350919CBA6018731C1820943FBC404E7D442
+F52A81C85E8EB59BC393C5A54AC5EACC37B2204E92B6A4EFEE16FC77B19EE1AE
+DC1C08035F3F8ECF7BA0351B36A7C364C01CC7F339267DDF29F87261F8620A49
+DFE9628BC7CF7ACEE45367C88ED142749BEC78F7777118ABC1C95A33BFB3DB24
+3F0FC24FFDA37C5D5CA5CB9A3ACF99318D8FD2CE01E86C1E80D4BB82A3AAAA53
+8783BF1CB9D10C9BE9FBF3DA8F2AF1E8CFEA6668FA79E1E41A89533A3A62FBD2
+1DBB4D5BC2B8EDB3583098E0AB443A6F25631C2D35F215D73C0CCE89B64F430E
+65CCF64B2541D947872BB431495BE97D703E259328A3EF50FFD2FEF59CFDD9E0
+B696D4503EAE2CD38F4C8EB5C8CBB03B89017C0A54DB2F970909554531AD0F67
+58233CC193D8787ADDFB98E0E9A9E26802A784C152AC759ABA8E4D98E7FE40CC
+55605D2FE8C92948D5BBE1AECA3C40952A982A377BCBEA3624002D9648BB154C
+B5C20699C8820358F35FB6133E431E2326DB213F907E59E7C894FDC4B49B72BA
+1896DF74B90D8AA05EDA7631C38C79C813C7ECCC7F5FA5B14B1F41A738C26CF2
+54DC9E38FD8D84EAA2A84F0F70525A33BA8D9923243FE8B83465D202A3BF1C44
+04875959C3EB79F030F539EF0A0D2D0D21EC276E7784AD5451B8190F83BD1915
+7E2F395C3CC8FBE8E7F3EEB3F3B69E19E5CB8EC0E9CF1A5C984DE83570FF2B4C
+C6D63A61B7CEC4ED7476356F9B21D17B0F993EBCCF4BD8996C30C8CA82F25D66
+D405C82ED7CE0B56CEE983E10A6F4D0CE9B4FEC99E730E164A057E5939164AD7
+8AFDDBF963BCA391CD308C56E97E92CD2D8CD6854C10E052A7870C847D389946
+B9933B915C3EB9DDA4F4CEE97293B3584CA896BC32888E066CF965F4BBDC5D53
+E8A1A4638CF9E55EE5F73D8B66ACB3FDD3E172CD3BE30078A61D464B92949ACF
+455B1C18604DE624A0715142A6A4DC415E059184662BCE925E6B4422F509F8D1
+A8C84874089EEB3557E2FC0D9E094138DEF05E5B69D49AAC2AA04AFE06BD442C
+569EFFF978A925DAA3F65B8A06C1FE326EEAA24DF6CF8AEF639B1409A6654BC7
+8B0CE14EA70DF71D051EB0DE8A7843362CA80B80633B7E8CA2261A4441595796
+FF827952F5C69505667EAF6E798C7954559C5EA848CA9D85BF1566E3B6AC7343
+0D5EB2011B74811F8D1E374C0FFFCA027C82082E80EDD7BCE926280236447D74
+D1AF9233DF081D6F4D254553492CAB104D0A1E6DB53D0790B4583C88D3384950
+382795B1DDD1A7F39CC96BCDEDF590F195B96A4E98C85DE8BBA2232080AEF81E
+6696FF64E77CB6B1D111644EDBF33468ED268AC21FC4BA5C45565C2935C92BCC
+A847D435BDB86E63DE92B2AFCF371E6BD25717651FCBDCA81FDBAC9EB15449F0
+7DDAA0F8744C07BA2CADB9175E107BE62258F91BC5C8839563A9B3D2A444A061
+61D20950A6612E7E7CE30050AB22D60B7DF17D8339804BC0C20997262649C2BD
+C3AF4FC2F5D1BA794630D7E9F90DF2E42069468D0DB626679D1170EC00B3B71B
+9EDAAF95632CC143B0537823CC1911CF5016DFBA9B9674EA51C0B8D2F1448DDB
+EFCAC1098D13E900739F0A90CF03BB7381AF4F396EA749E3D560472934FBF960
+C4D0B4E9978A5E3647BB09CE1A626F4ED17E78DF8D214C1CEB514E4C4BAEFC5F
+745A91CE75104303127549C460A0B286F9AECA4DB6D5ACC84FC97D794E08454A
+0510C235C17994D2DE568BCE2E941F6D158CB067388DFCB2915EAEF2FC01ED2D
+3817FD18D9CF55D689CC34D40CEBC318CF89F135BF85F154C5624E495467EBA9
+5CCAF115D50B2B554F49416B2A55E6586BF541619EB20A6D1A39E40F6A5E5909
+A1BB769BB4485A68D97892247B82830E83329A59E4F7AE9CA548312BD2135AF7
+6C07141838A731EDB0405E0524C124BAEFECA98A80A87F76414253BDE99F0701
+0006EE3B407CC5977D6936DA7456DD6DBCA53C63C8BDC59BC746CE9BF7F1EB57
+CD5A192CD1F6BA819EC6E6EE6B98E06049E52F30467C8F9D4AA37B27F9FAAD44
+4C326754751EB155AAC21E6E2D69A4EB8E23FCFE8916B5C66A21A68D071C0BB3
+08E87AC148DC1F9F5769DDE418B68D10C83C1BA0D2E185B3141DB2AC53125B07
+18C6EFA8925A004F760306298207E78A66FA3A365845EA12CD3FC331499933B7
+56B5371BD50CE5E219D91568FAAE4DDDA7060F4809DB3784066803B01A5AFB85
+1E6616B0B7BA0EF7BA4C82E1130A55EEADEA4FE2E84F858A8969153D5B630755
+C5EBBEC208E741940B71DD4BBDE45A5AA65761CFCF3FBC1F3290B5B457313AC0
+9D32C2917140584D93EAC138719027B2D2B1E20F0A1212B2420CC763D54B853B
+E088460ADE436997A1DAD8C2C7154EA35D013A20EF7661F4B213F45A144F6E34
+AC57EE12E732847A1544A1BC43C95EF7A1D50D2EAA078ED86F6B673C5E93DDC1
+B97C67788149520A6809E34F38E06D5E1A0331AA615B189C6C073BA934B4433F
+0C7990584567DC2476F1AFDF42EC19ACCF0558371E340924582B1C237BAF15F2
+89D2A03FA3FF9C41D3084987C7C89A18755896D4BBEF7201125850187DA01715
+7031B2961E047E098BB491E5A51AF3AE1548AAD4B2AAB1B640C3D52F9A82A14F
+3204C6C1A58594CCC5D80E39F49190BDFBF98A844D6067EC97B6D38821818643
+8FA65F2A0A5133DEC9444C71FB20C397C6A8072B92C749EE8F5C3C4BC4D84C95
+7607987589C1955475F8B0B72A7FD4ED5E182C01AC6A3121D8B40C8582AD0905
+72189E1D8EADF6DDEAE5DADED920610D544C52C0F573CF51B43A4C521365DAE1
+C276360A853BA82EF944827942E97178861A2B2E7D58303762AF8456E7B64C93
+28D4394F0D2372E576DC721EF76990C535551FB0D914CAC9893CB8F3BB2DF98F
+6D2FC0A849689939A596B46399E029394793AEAC4B73CE3813E7DFB70188CDBD
+63FB697638B1209DD6376DDA713D630E40DDE68B556E42356F5FED08449A55FB
+1739EDF3B845DCFAC9F6FBFD179E5E96307BC6F3444F05324345D916F5F600CE
+3F20C79B3E3C33A341DAEA005BC51042C62062D781257C8BEBE1CEEBB1FFC37B
+074B5B4755C3D15452385BB2C212886BF386CCE309BE8170DF8E848B56B67131
+8462880F6458A7DE0EB6AFB7EC8090BE3EEB6D10545B8798640D7BE4A97FC77D
+C02CC5F6FB17C1954D25139A8F01FAC3CDC215E5E36A79F9A8149E84154569DB
+AFC3BB344EF9575D887853F7F2B2FC7E81E5C0C2AC593F6A12F34D973C2E4BA7
+027284DFE22FD551592764318381B97DEAC2E810EF0650780F077D955E50B4A2
+67110C6BFDFA2C00DFD3C69CB26FD28EC4A1EBBAA32A45CAFF03443FBEF2EF5F
+0869CA38145B749DE73DAD740FECE007D6144E3BC2DC7A2193C46B7A8EDA8EA5
+B2710D9A4FD7BFCC1B9D47225F1AB38CF7711ED557413064F3FE3A495839EAC3
+528ACAD9B9DF8D11540AA07FE837F2475A9219E173BEED4473CDEB7FFDEC235D
+74BBBFD8EE08402EB0ED2C570BB07CDD5C14FA595CD26AA8EB39149266A157D3
+922220A20C47C0861645728286238E4CCA332D21A956F41F99871D1CE0B990A5
+3A6EE9283E7E8FFA26843D69F47AF6FA6AF504B1722483C3512674009D5633C2
+D2CA89D9BC0F31BF58C37BA760A8F2DA6D3283C61B43BA8DBEE7911065F6D5BF
+C207CE7BE6DF47E92441DF5524201F90149DC055B791F9CBE50CCBA598CA9BAD
+4ED184F75474919F23A9F8DC1447CB8580CA4EED3EB6F7886986C5F13ACD21F2
+26053E43FA67AD442D1917B28B379D77AC0640377815D64E852DFC07E461FD92
+8B8AACC1B6228F5AAF1DAE0ABBF59087DB1AB04C451E7B1D60E68AA1D3CA5FBE
+FAE9EF3780C6569D5CFF64B54B55B15FBE4B40FC34D4FC7B7CE746DAE459B705
+960455D87C0D76AC0A333ACC147638DEB4A43E76E5248D621B0D8D3578A8E5A4
+68F9409554BB4A3C806ABF2C97499F7A22B2665EB995DCC8AECC1BD62CC803D9
+ED18E303EF2535C8A3F85F246F3EFF01898A6F40CBC0EE0A05079556FBBD73B3
+3987255695869DA8BF9856F90E55DBACFB3B5F6C6620FEA578A1B50C09551F8B
+F7D5E3FD74E2A2DD970D9362D4700AFF1F43BF426BE87DF8A93A5837758C1B4E
+D81147F3330B090F9AD54AA393D4D50FDC6399DA5C149050ACD7D7D29108AAC3
+984FA420FFAE2A6CB91E796E94C99648417B0B8215FCF525A517C672924DDCF7
+873C4671DC0BD349F95A7D108FC1771100BE946469DFDB3F32D52991C6855827
+ECBF77DBF62C17F15FE8DCBE71A7E917C04737DDC1E291878F78E4E2F722E6C6
+89DE33A20A2CAE59F5B5D5928E9F2B23A7712E2EBE55415E35BA00587DE8902A
+0CD996541FBAA2E76EEB087354CC53A21D98D8900355271EB825CA853245411D
+A62694CBBBBB1444E6BE25059A98D15B6DE839E1849C2674AB3E55808899F39B
+2BECF86A226967850DEDA652DC2ACA857400F762512CA0DA477C46DBFD12B7C5
+CB80DE66D79B7EB83509108B0F350309C2AA60A2BCC5C93B2546C2B801419F81
+C46FF0E3DE49B873621A048F8E6B4F857184B1B6548B6B33634CA9AE246B79A0
+258D71F2A240973F76C56F8740C4160B2725CA92EFF435BFF652B52864DD04A0
+616831A3F5D7387BF0764A78C4A4F77D400827D73EF74AF40641731A178B35A2
+A891BAA0A6F1561179E368C6D1D854C781458EFE7CF5F7ADD0237E1881B47A28
+320C1A3144CAD6B4E980E1D943460117588E6E32A614CD404E072C489D18938A
+BAF5C33D23684AE07D8FC6B0C71811BDCC6B78C5A772EB4CF405811CA68A8FF2
+19767CA08EE54823ABBB73C7FD60DF82022B73EB3848F13E5B2F7BEF01ED3F8D
+C56A28B9BAF4DAC4AE29170297D6CA1B20128BFEEC98C72B7877B6BA5BFF5381
+61BEB444AE20909C199F425268C4B736FFAD530C0B782F2E661F43836B575DD9
+2D10EDFD8ECBC506AB722B724C91B00BDDE0E68AA46314B4A16650ECE237C136
+5C2108BD40EDFBA1906D33DE973CE4ECFF88B51B405DFD3D002ABE219DCBE5F4
+D75FC766D196ACC672DC6E0BEE6A214031F837889EEE88F666DA270C77A23CBF
+E8DD2CBA9035ACB2B4D65E9F805983751B67524389E7751D525481E1D113EB34
+65C8BBE73C8301CA2326D9B663F25CF977990520EB6DBB54015C5FB5B8416910
+ACFE023BFE08A6947E8DA306485B3158AE8CB01189944E16ED00BDAD5A987C57
+4A63F88A149C3602008C5B20619CE94F0D714907AF91A92F1F5778F3C2285AEB
+9E5FD5FC84DDBBF8154C133CA5B234282E3E3B534B95661E7C1F96014ECFF46F
+511E6310640EFF13047EF3A7274AC01E71420936BAB536733FCEBF27542F1F63
+22870A8D139BE80472AE6A03C7A79483F8823198697066EB5BCB6DA3319D6188
+2CB5617A6F2B665D1BDD9080B5BD8DE3D2FA854A3A8918CABBE5A3F9E1516733
+CBA92C988F6F9958D1E3CDB26B0985727C9708510D2E6AA28DEBD1C132101D7C
+404B62964C802A771897E8E6F272E8D43E96415494F33E48DBB4C6BAB6F27073
+DDFF054F591837F3F176215904185B9BB69632D87EE5E08B497AF5FA1D0FDFF7
+37F94589147A9A45FDC3437CDE7E7E03E87B6F92B5541914DBD0D4CC075AC5B2
+B5174D1541EC0BBE03A436809E1AA0D900A1628DEBB1F2CD7D26A47A58F579BA
+03CDAF4334377C1C2804D01C6F38A661A889A476AE500E79440B2ABCC453F001
+10AED42C4DD7ABB850ECDB821A739CE4FB129A0710580B456791825B2991AA89
+6BF1A6FB8300C2F0EFCEE08CAC6AA7DBB0F0BAE8CB9E71E9967E1D964113B93A
+3B1CE1D373E9191209B1506C5690E6E605E537C2A861B1E8FE203498C6186A9F
+BDBB0AAA95337C493D377B611D3BDDB5B53FE4AB3DE42E348E633C0A5146A75D
+209FC46B0C6F56A14D30FCBE3D1C3D070C7CA0A9BB89F7721CD868D0E5794D02
+F0913D7269B8ECC6497495BB1905EA6305B50C2CD31B772200D141BE816CAE32
+69426AB01DB5E90004EFA596ADA987D509C00ED0B3E8DA50A26AE9D17C80F57F
+4E15B16755085CF7FCE3BF73B954BF85A106018A4E6CD84F18F2624C51F61A23
+C3720757473CFBD2F6013002B622BAAFD178145A178DCA86644E09ED39138BD7
+74FF313F52506B63221AE97BA0070FD0BCC7CF0972A0974C2EAA2F0E2DF27FE7
+E68D499131A2CED3A877795C04E5CE6F79477E4432680B832A81BD73DA305B13
+BF98ADE18C0A8931992778AF8F78F35A054EE81958F494522BB6ACCBC49DDB57
+D24F444ADCE0E423F373A9CCA6924325B52872BBCB4BD4EA5126218CF7A03412
+24A74D50BA9690ED6659230214FD0147C1053E706040952F471E6BC5357A10A1
+8F4B3A35CF3162F225F43A9D8CFB89C078AF751EFBDFAC99C999B72989B18B1F
+4267DA3CB2B891E52147EED2CD8CAD963B093AE9DCD7BDB69922E350EEBB9FA4
+F410DB3EA5429B5A1D2CE1830560B4269AA1141F0E5C90482FE9989021A54AE8
+1ED079FDA5307BA5B0E675D444116F61592DBEC8EF080047AFA55FD37BB10693
+936EC592C5F071EC9D54D3AACF0F3C81B5A8D58139633BC9C7E4E7309B0FAFC6
+A638FD392FF2B777C29390FFA9AD70C1EBFF76E8531A814F6613383AC746E41B
+FD5F47F31AA6F550105F8E2223CD286ACCA40AB62EB6908C0A2448103A6883EC
+E0F9BE0A0AE44A2E5C630E0D83520755C00A1C1102E525EBEF2B4FE3C32273E9
+48BB27F555780BEA1CA81F43595A8A38B386ACD26752B45557205B21B2BDF915
+9B780D070ECA3F6407F581FED7294673DE50563EA3A14E92719E262B5E4E758D
+BB5346408F536E12B15BE38C82AE468224358C57D13EECF17DDC4F7D91C5E7C2
+5B3365C15AF14D577FCBAC6408C14F4134B227885DB8B29474EE7F6B734784FD
+E4FC30545A02CB0B662B04362D16A5FC9CF1B8A327079AA9678EC476740D1788
+550B368AEA021A8FEF0D94EFB1D1776844FBF207CA838D7167C1CBFD1DE4EB53
+85772AB793335C289366555094AE44E3C7FF4AB55613B1522ADFCC9A6E256EE9
+A10930F2F446D266A0AF65BEA12458E3B8E4FFDAFE01B9A8310C364B8AFB1319
+571B81BFB2E666F2C02CC6254E933AD682A465EBD75107074ACBB6792257A5B5
+51BE834759BCA006B863EFAC26A21934E475AAEE037A74775B451192870C7FCB
+DD05DE0389B085A97C88C28F401A6EC1C0F5C96EB3AFDFBF2302925BAF3D4E58
+E9C7C61854DDE0F1AE7D17AC021BBE710552710AFA5218CF9E451FD4B4429DE7
+F558C48556969DD0F5C47D2922A63D2845BDED57B945550C9E0FFA710A9DEB01
+C4BE9B136FD0CB1B63CCA91A17578C15826F3B68938B06A82B36100D13E0005D
+C9AA74AC937C22DAE4C112C16DB83789F578AEB9A7DF5AC4ADE62874AAD48313
+355514D42659FEB39FB17A4F826188944B4218874F376E192DE01FF15C0A6A03
+5180DB62365DCAE97F8D2F6F24C69FAE8021C390785AD47DDF8323B5312A8C2F
+399D777162053F61A0FCE02DC2B5DAB388265FBF7FFB4AAD979E74FDFA5636A0
+1EDA101D8A1ABFC665D7612F3DE4D6B8B7EF4BDB3F05ABE3EE9C8C195EDA3437
+D1183612B07B085D779251C0D4EFF73ED2E370D98A999DA3F1BA20E37B5A6BF3
+9667625F0C03049CD0892A25B2C32659BCA374C63C9566C6B4D4792C5EFE7062
+2E795413192684A6C7A54EA24A5E0338B9A59D6BABC78D664562375FD852FCAA
+5E5E97938ED62F574C347423835A2EC75C016C890296BF36FF1FE82FF83213FF
+394E6E771433547950C38F4AEA43BF939E307168056B2A90DB8ADEFBE1716720
+9B146069323861342B1B9BFDF47E22E6E709A9B19051E49587CCD48CA87701F9
+EFE769BD5CF736B858070FB1F0489C28132AA71F5A62860AD029297E97E8E700
+D95114CFAC26C1D5DB35EA9E3133682779C9A79AB20AFCDBEDA882B88A4514A4
+B75B77F4C8A09D6E2F34E16D65E569A01A43D682F74825E7EECC8508D731121F
+74D82118DA46CB22C3BF0FE22906BB5FDBA561F29EC31A3D4A0C3BBD7475090C
+C58884AC36C8FCB07FDD1EF023D6FA8DE5E9FAFB2945DACD50FC15923106C682
+8F38FC83E5652128ED01EBEAB3236F4FA87B4882D922BDC974601C05D46019CB
+72D459EB3BB41B9D72BE072074ABCF15654803F2030D7D7F0F4C7C20AE6897A5
+152F896389B74F939A8123A7A2494F301D07706B01600ACD60D84236E6D2CDB1
+E5D02AC300216DB172A026C49AD933
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMMI12
+%!PS-AdobeFont-1.1: CMMI12 1.100
+%%CreationDate: 1996 Jul 27 08:57:55
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI12 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /.notdef put
+readonly def
+/FontBBox{-30 -250 1026 750}readonly def
+/UniqueID 5087386 def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
+5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
+4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
+3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
+EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
+4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
+2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
+323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
+2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
+D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
+5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
+0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
+A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
+2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
+00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
+CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
+99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
+C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
+5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
+55B50047CD58E912E67E22C1B92F41D0BEE742201DF198F3766AE35EA71D8195
+A8C94D661C40D718CB09497485FAA34204229AECFE644C93FFDA54C789E4F751
+3D2519F7CB9E79B2ABE3101DF2EBFAD375469CDC687FB3DC2833EDC0F946B41F
+F28D72FFF2A9B8B0D76DC542537612E2BE0F3FB9601C897386359C55E867A547
+F872005F5C56C6EC5E9685E03D7A82653BE8B69741C4DF332AEEB2AA450B23F3
+EABD5ED060606CC7DB1762632EC3C6C4A66ADAF61A97D949DEA5156B4CF34765
+67AC3F10AE17199A710A882D47979F9D41AA2CB794648BE47479F0B00E18BF04
+923F54CEC1214BAFA39BB65ECB013875899E9901B7882D16D2E2C97AD3353668
+A6070081E4DC627AF9192599F5876369908FBDFA11E8D6CB2E83896E9C897CEC
+FD1D25651D66A333AF531FF74E1B0DEB1E3D1B5B7D3FB9D1C8BF60517B31C8D2
+1C264F44BC9AF3D9BA5280D1618EED96C11ED24F789FAA263394C658DFCA8DE9
+D47D9E188E212F9EC1DCF449DFDAB8437FAB9EA9AF01AE1714E8F932855182
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+TeXDict begin 40258437 52099151 1000 600 600 (internals.dvi)
+@start /Fa 134[37 1[55 1[40 22 28 26 1[40 36 39 59 19
+2[19 39 37 22 32 41 29 37 33 12[41 1[44 2[52 55 12[52
+13[33 4[17 22 45[{ TeXBase1Encoding ReEncodeFont }28
+66.4176 /Palatino-Roman rf /Fb 206[25 49[{
+ TeXBase1Encoding ReEncodeFont }1 49.8132 /Palatino-Roman
+rf /Fc 206[32 49[{ TeXBase1Encoding ReEncodeFont }1 63.0968
+/Palatino-Roman rf /Fd 134[55 50 2[61 33 44 39 1[61 55
+61 89 33 2[33 61 55 39 50 61 44 1[50 12[66 61 5[100 3[39
+1[83 55 2[72 11[50 50 50 50 50 50 50 2[25 46[{
+ TeXBase1Encoding ReEncodeFont }34 99.6264 /Palatino-Bold
+rf /Ff 253[67 24 1[{ TeXbbad153fEncoding ReEncodeFont }2
+86.5083 /CMSY10 rf /Fg 162[24 1[24 29[67 17[67 1[34 34
+40[{ TeXf7b6d320Encoding ReEncodeFont }6 86.5083 /CMR10
+rf /Fi 133[37 42 42 60 42 46 28 32 32 1[42 37 46 65 23
+2[23 42 42 1[32 42 34 38 37 51[28 42[44 2[{
+ TeXBase1Encoding ReEncodeFont }24 83.022 /Palatino-Italic
+rf /Fj 134[44 44 44 44 44 44 44 44 1[44 44 44 44 44 44
+44 44 44 44 44 44 44 44 44 44 1[44 10[44 44 44 1[44 44
+44 1[44 44 1[44 44 44 44 44 44 44 44 44 2[44 44 44 1[44
+1[44 44 3[44 44 44 1[44 44 1[44 1[44 44 44 40[{
+ TeX09fbbfacEncoding ReEncodeFont }57 83.022 /CMTT10
+rf /Fk 104[83 2[42 42 24[42 46 43 69 47 50 27 35 33 46
+50 45 48 73 24 46 19 24 48 46 28 40 51 37 46 42 7[55
+1[83 60 65 51 44 55 1[50 65 69 79 51 60 1[28 69 63 46
+51 64 59 51 65 5[21 21 42 42 42 42 42 42 42 42 42 42
+50 21 28 21 50 1[28 28 23 35[50 50 2[{ TeXBase1Encoding ReEncodeFont }
+73 83.022 /Palatino-Roman rf /Fl 134[46 1[69 46 51 28
+37 32 2[46 51 74 28 51 1[28 51 46 32 42 51 37 51 42 12[55
+1[60 1[51 69 2[51 2[32 1[69 1[51 12[42 1[42 42 42 42
+42 42 2[21 1[21 44[{ TeXBase1Encoding ReEncodeFont }38
+83.022 /Palatino-Bold rf /Fm 134[66 1[100 66 1[40 53
+47 2[66 73 106 40 73 1[40 73 66 1[60 73 1[73 60 12[80
+1[86 2[100 11[86 12[60 60 60 60 60 60 4[30 44[{
+ TeXBase1Encoding ReEncodeFont }29 119.552 /Palatino-Bold
+rf /Fn 135[39 62 42 45 24 32 30 1[45 41 43 66 22 42 17
+22 43 42 25 36 46 33 41 37 12[46 10[25 5[53 20[19 25
+19 44[{ TeXBase1Encoding ReEncodeFont }29 74.7198 /Palatino-Roman
+rf /Fo 139[25 33 29 14[33 46 37 31[58 65[{
+ TeXBase1Encoding ReEncodeFont }7 74.7198 /Palatino-Bold
+rf /Fp 193[76 1[76 60[{ TeXaae443f0Encoding ReEncodeFont }2
+99.6264 /CMMI12 rf /Fq 138[60 32 42 39 3[58 2[55 1[29
+58 55 1[48 61 44 55 50 13[52 13[61 77 3[74 5[25 50 3[50
+1[50 50 50 50 60 25 33 45[{ TeXBase1Encoding ReEncodeFont }28
+99.6264 /Palatino-Roman rf /Fr 138[87 47 1[57 1[86 78
+83 5[83 2[69 88 2[72 29[102 67[{ TeXBase1Encoding ReEncodeFont }11
+143.462 /Palatino-Roman rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 0 0 a
+SDict begin [ /Title () /Subject () /Creator (LaTeX with hyperref package)
+/Author () /Producer (dvips + Distiller) /Keywords () /DOCINFO pdfmark
+end
+ 0 0 a 515 232
+a
+SDict begin H.S end
+ 515 232 a 515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.1) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515
+440 a
+SDict begin [ /Count -0 /Dest (section.1) cvn /Title (Overview) /OUT
+pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (section.2) cvn /Title (Terminology)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -7 /Dest (section.3) cvn /Title (The driver) /OUT
+pdfmark end
+ 515 440
+a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.3.1) cvn /Title (Specifying the grid extent)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -2 /Dest (subsection.3.2) cvn /Title (The timeline)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsubsection.3.2.1) cvn /Title (Initialisation)
+/OUT pdfmark end
+ 515
+440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsubsection.3.2.2) cvn /Title (Evolution)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.3.3) cvn /Title (Calling scheduled routines)
+/OUT pdfmark end
+ 515 440 a 515 440
+a
+SDict begin [ /Count -0 /Dest (subsection.3.4) cvn /Title (Grid arrays and grid scalars)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.3.5) cvn /Title (Flesh interfaces)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.3.6) cvn /Title (Interfaces to other thorns)
+/OUT pdfmark end
+ 515 440 a 515
+440 a
+SDict begin [ /Count -0 /Dest (subsection.3.7) cvn /Title (Missing parts)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -3 /Dest (section.4) cvn /Title (The workhorse)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.4.1) cvn /Title (The helpers)
+/OUT pdfmark end
+ 515 440
+a 515 440 a
+SDict begin [ /Count -0 /Dest (subsection.4.2) cvn /Title (The grid hierarchy)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -2 /Dest (subsection.4.3) cvn /Title (The interpolators)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsubsection.4.3.1) cvn /Title (Restriction)
+/OUT pdfmark end
+ 515
+440 a 515 440 a
+SDict begin [ /Count -0 /Dest (subsubsection.4.3.2) cvn /Title (Prolongation)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Count -0 /Dest (section.5) cvn /Title (Regridding, how and where and when)
+/OUT pdfmark end
+ 515 440 a 515 440
+a
+SDict begin [ /Count -0 /Dest (section.6) cvn /Title (Random ramblings)
+/OUT pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ /Page 1 /View [ /Fit ] /PageMode /UseOutlines /DOCVIEW
+pdfmark end
+ 515 440 a 515 440 a
+SDict begin [ {Catalog} << /ViewerPreferences << >> >> /PUT pdfmark
+end
+ 515 440 a 515
+440 a
+SDict begin H.S end
+ 515 440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (Doc-Start) cvn H.B /DEST pdfmark
+end
+ 515 440
+a 1222 872 a Fr(Carpet)35 b(under)g(the)h(hood)931 1168
+y Fq(Erik)25 b(Schnetter)h Fp(<)p Fq(schnetter@uni-tuebingen.de)p
+Fp(>)1357 1367 y Fq(Date:)k(2003/05/03)25 b(13:29:23)1804
+1666 y Fo(Abstract)834 1803 y Fn(This)e(document)g(describes)e(the)j
+(internal)f(workings)f(of)h(the)g(Carpet)g(arrange-)722
+1894 y(ment.)35 b(Its)23 b(intended)g(r)o(eadership)d(ar)o(e)i(people)g
+(who)h(extend)f(Carpet,)h(or)f(who)h(use)722 1985 y(Carpet)18
+b(mor)o(e)f(thant)j(the)f(average)f(user)-6 b(.)22 b(This)c(document)g
+(is)f(supposed)g(to)h(be)g(r)o(ead)722 2077 y(in)h(conjuction)h(with)g
+(and)f(guiding)f(thr)o(ough)g(the)i(sour)o(ce)d(code.)515
+2362 y Fm(Contents)515 2454 y
+SDict begin H.S end
+ 515 2454 a 515 2454 a
+SDict begin 12 H.A end
+ 515
+2454 a 515 2454 a
+SDict begin [ /View [/XYZ H.V] /Dest (section*.1) cvn H.B /DEST pdfmark
+end
+ 515 2454 a 515 2551 a
+SDict begin H.S end
+ 515 2551 a Fl(1)82
+b(Overview)1013 2551 y
+SDict begin 12 H.L end
+ 1013 2551 a 1013 2551 a
+SDict begin [ /Subtype /Link /Dest (section.1) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1013 2551
+a 2324 w Fl(2)515 2734 y
+SDict begin H.S end
+ 515 2734 a Fl(2)g(T)-9 b(erminology)1124
+2734 y
+SDict begin 12 H.L end
+ 1124 2734 a 1124 2734 a
+SDict begin [ /Subtype /Link /Dest (section.2) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1124 2734 a 2213 w Fl(2)515
+2917 y
+SDict begin H.S end
+ 515 2917 a Fl(3)82 b(The)21 b(driver)1039 2917
+y
+SDict begin 12 H.L end
+ 1039 2917 a 1039 2917 a
+SDict begin [ /Subtype /Link /Dest (section.3) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1039 2917 a 2298 w Fl(3)639
+3016 y
+SDict begin H.S end
+ 639 3016 a Fk(3.1)86 b(Specifying)21 b(the)g(grid)f(extent)1773
+3016 y
+SDict begin 12 H.L end
+ 1773 3016 a 1773 3016 a
+SDict begin [ /Subtype /Link /Dest (subsection.3.1) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1773 3016 a 70 w Fk(.)41
+b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f
+(.)g(.)g(.)h(.)165 b(3)639 3116 y
+SDict begin H.S end
+ 639 3116 a Fk(3.2)86
+b(The)21 b(timeline)1290 3116 y
+SDict begin 12 H.L end
+ 1290 3116 a 1290 3116
+a
+SDict begin [ /Subtype /Link /Dest (subsection.3.2) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1290 3116 a 55 w Fk(.)41 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
+g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h
+(.)165 b(4)830 3216 y
+SDict begin H.S end
+ 830 3216 a Fk(3.2.1)98 b(Initialisation)1558
+3216 y
+SDict begin 12 H.L end
+ 1558 3216 a 1558 3216 a
+SDict begin [ /Subtype /Link /Dest (subsubsection.3.2.1) cvn /H /I
+/Border [0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1558 3216 a 36 w Fk(.)41
+b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
+(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(5)830 3315 y
+SDict begin H.S end
+ 830
+3315 a Fk(3.2.2)98 b(Evolution)1457 3315 y
+SDict begin 12 H.L end
+ 1457 3315
+a 1457 3315 a
+SDict begin [ /Subtype /Link /Dest (subsubsection.3.2.2) cvn /H /I
+/Border [0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1457 3315 a 75 w Fk(.)41 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
+g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h
+(.)165 b(6)639 3415 y
+SDict begin H.S end
+ 639 3415 a Fk(3.3)86 b(Calling)21
+b(scheduled)g(r)o(outines)1816 3415 y
+SDict begin 12 H.L end
+ 1816 3415 a 1816
+3415 a
+SDict begin [ /Subtype /Link /Dest (subsection.3.3) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1816 3415 a 27 w Fk(.)41 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h
+(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(6)639
+3514 y
+SDict begin H.S end
+ 639 3514 a Fk(3.4)86 b(Grid)21 b(arrays)f(and)g(grid)h(scalars)
+1857 3514 y
+SDict begin 12 H.L end
+ 1857 3514 a 1857 3514 a
+SDict begin [ /Subtype /Link /Dest (subsection.3.4) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1857 3514 a 48 w
+Fk(.)42 b(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h
+(.)f(.)g(.)g(.)h(.)165 b(7)639 3614 y
+SDict begin H.S end
+ 639 3614 a Fk(3.5)86
+b(Flesh)22 b(interfaces)1399 3614 y
+SDict begin 12 H.L end
+ 1399 3614 a 1399
+3614 a
+SDict begin [ /Subtype /Link /Dest (subsection.3.5) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1399 3614 a 70 w Fk(.)42 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
+(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)
+165 b(8)639 3714 y
+SDict begin H.S end
+ 639 3714 a Fk(3.6)86 b(Interfaces)20
+b(to)h(other)g(thorns)1751 3714 y
+SDict begin 12 H.L end
+ 1751 3714 a 1751 3714
+a
+SDict begin [ /Subtype /Link /Dest (subsection.3.6) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1751 3714 a 30 w Fk(.)41 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)
+f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(8)639
+3813 y
+SDict begin H.S end
+ 639 3813 a Fk(3.7)86 b(Missing)22 b(parts)1330
+3813 y
+SDict begin 12 H.L end
+ 1330 3813 a 1330 3813 a
+SDict begin [ /Subtype /Link /Dest (subsection.3.7) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1330 3813 a 77 w Fk(.)41
+b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f
+(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(8)515
+3996 y
+SDict begin H.S end
+ 515 3996 a Fl(4)82 b(The)21 b(workhorse)1214 3996
+y
+SDict begin 12 H.L end
+ 1214 3996 a 1214 3996 a
+SDict begin [ /Subtype /Link /Dest (section.4) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1214 3996 a 2123 w Fl(8)639
+4096 y
+SDict begin H.S end
+ 639 4096 a Fk(4.1)86 b(The)21 b(helpers)1260 4096
+y
+SDict begin 12 H.L end
+ 1260 4096 a 1260 4096 a
+SDict begin [ /Subtype /Link /Dest (subsection.4.1) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1260 4096 a 23 w Fk(.)41 b(.)g(.)g(.)h(.)f(.)
+g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
+(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(9)639 4195 y
+SDict begin H.S end
+ 639
+4195 a Fk(4.2)86 b(The)21 b(grid)g(hierar)o(chy)1515
+4195 y
+SDict begin 12 H.L end
+ 1515 4195 a 1515 4195 a
+SDict begin [ /Subtype /Link /Dest (subsection.4.2) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1515 4195 a 79 w Fk(.)41
+b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
+(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)165 b(9)639 4295 y
+SDict begin H.S end
+ 639
+4295 a Fk(4.3)86 b(The)21 b(interpolators)1463 4295 y
+SDict begin 12 H.L end
+
+1463 4295 a 1463 4295 a
+SDict begin [ /Subtype /Link /Dest (subsection.4.3) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1463 4295 a 69 w Fk(.)41 b(.)g(.)h(.)f(.)g(.)g
+(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)
+g(.)g(.)h(.)124 b(10)830 4394 y
+SDict begin H.S end
+ 830 4394 a Fk(4.3.1)98
+b(Restriction)1491 4394 y
+SDict begin 12 H.L end
+ 1491 4394 a 1491 4394 a
+SDict begin [ /Subtype /Link /Dest (subsubsection.4.3.1) cvn /H /I
+/Border [0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1491
+4394 a 41 w Fk(.)41 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g
+(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)124
+b(10)830 4494 y
+SDict begin H.S end
+ 830 4494 a Fk(4.3.2)98 b(Pr)o(olongation)1572
+4494 y
+SDict begin 12 H.L end
+ 1572 4494 a 1572 4494 a
+SDict begin [ /Subtype /Link /Dest (subsubsection.4.3.2) cvn /H /I
+/Border [0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1572 4494 a 22 w Fk(.)41
+b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f
+(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)124 b(11)515 4677 y
+SDict begin H.S end
+ 515
+4677 a Fl(5)82 b(Regridding,)19 b(how)i(and)f(where)g(and)g(when)2098
+4677 y
+SDict begin 12 H.L end
+ 2098 4677 a 2098 4677 a
+SDict begin [ /Subtype /Link /Dest (section.5) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 2098 4677 a 1198 w Fl(12)515
+4859 y
+SDict begin H.S end
+ 515 4859 a Fl(6)82 b(Random)20 b(ramblings)1372
+4859 y
+SDict begin 12 H.L end
+ 1372 4859 a 1372 4859 a
+SDict begin [ /Subtype /Link /Dest (section.6) cvn /H /I /Border [0
+0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 1372 4859 a 1924 w Fl(13)1926
+5255 y Fk(1)p eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.2) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.1) cvn H.B /DEST pdfmark
+end
+ 515 440 a 84 x Fm(1)119
+b(Overview)515 713 y Fk(The)22 b(Carpet)f(driver)-6 b(,)21
+b(which)i(lives)f(in)h(the)f(Carpet)f(arrangement,)h(is)g(divided)f
+(into)i(sev-)515 813 y(eral)i(parts.)41 b(The)26 b(thorn)h
+Fj(Carpet)c Fk(is)k(the)f(main)g(driver)f(piece;)j(it)e(pr)o(ovides)g
+(all)f(the)i(r)o(ou-)515 912 y(tines)i(and)f(str)o(uctur)o(es)g(that)g
+(Cactus)h(expects)e(fr)o(om)h(it.)49 b(The)29 b(thorn)g
+Fj(CarpetLib)c Fk(is)k(the)515 1012 y(workhorse)24 b(that)e(does)h(all)
+g(the)g(bookkeeping)h(and)e(data)g(shuf)o(\003ing.)33
+b(Those)23 b(two)h(alone)515 1111 y(form)34 b(a)f(valid)h(Cactus)f
+(driver;)40 b(the)34 b(other)g(thorns)h(pr)o(ovide)e(additional)h
+(functional-)515 1211 y(ity)-9 b(.)66 b(The)34 b(thorns)h
+Fj(CarpetInterp)p Fk(,)d Fj(CarpetReduce)p Fk(,)h(and)h
+Fj(CarpetSlab)c Fk(pr)o(ovide)j(the)515 1311 y(corr)o(esponding)f
+(interpolation,)j(r)o(eduction,)f(and)d(slabbing)h(interfaces.)58
+b(The)32 b(thorns)515 1410 y Fj(CarpetIOASCII)g Fk(and)37
+b Fj(CarpetIOFlexIO)32 b Fk(pr)o(ovide)37 b(I/O)h(methods.)77
+b(Finally)-9 b(,)42 b(thorn)515 1510 y Fj(CarpetRegrid)11
+b Fk(pr)o(ovides)k(a)h(user)g(interface)f(to)h(select)g(wher)o(e)g(and)
+f(what)i(to)f(r)o(e\002ne.)23 b(\(The)515 1610 y(actual)d(r)o
+(e\002nement)g(is)h(handled)g(in)g Fj(CarpetLib)p Fk(.\))515
+1764 y
+SDict begin H.S end
+ 515 1764 a 515 1764 a
+SDict begin 12 H.A end
+ 515 1764 a 515 1764 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.2) cvn H.B /DEST pdfmark
+end
+ 515
+1764 a 131 x Fm(2)119 b(T)-13 b(erminology)515 2084 y
+Fk(Carpet)16 b(is)i(called)f(\223Carpet\224)e(because)i(a)g(carpet)f
+(consists)j(of)e(many)h(individual)g(patches.)639 2184
+y(Carpet)28 b(is)h(a)f(mesh)i(r)o(e\002nement)f(driver)-6
+b(.)48 b(It)29 b(knows)h(about)f(a)f(hierar)o(chy)g(of)h
+Fi(r)o(e\002ne-)515 2284 y(ment)f(levels)p Fk(,)j(wher)o(e)d(each)g
+(level)g(is)h(decomposed)f(into)i(a)e(set)g(of)h(cuboid)f
+Fi(grid)g(patches)p Fk(.)515 2383 y(For)h(historic)h(r)o(easons)f(it)g
+(also)g(has)g(a)g(notion)h(of)f Fi(multigrid)f(levels)p
+Fk(,)k(but)d(those)h(ar)o(e)d(cur)o(-)515 2483 y(r)o(ently)18
+b(unused.)25 b(They)19 b(might)h(conceivably)f(be)f(r)o(eactivated)f
+(to)i(form)g(multigrid)g(stacks)515 2583 y(to)29 b(solve)g(elliptic)g
+(equations.)50 b(The)29 b(grid)f(patch)h(is)g(the)f(smallest)i(unit)f
+(of)f(grid)h(points)515 2682 y(that)22 b(Carpet)f(deals)g(with.)30
+b(Carpet)21 b(parallelises)g(by)h(assigning)h(sets)f(of)g(grid)g
+(patches)g(to)515 2782 y(pr)o(ocessors.)639 2881 y(A)29
+b(multi-patch)g(r)o(un)g(is)g(a)f(r)o(un)i(wher)o(e)e(mor)o(e)g(than)h
+(one)h(grid)e(patch)h(\(of)f(the)h(same)515 2981 y(r)o(e\002nement)24
+b(level\))g(is)h(assigned)g(to)g(a)f(single)h(pr)o(ocessor)-6
+b(.)37 b(This)25 b(is)g(a)f(situation)i(that)e(can)515
+3081 y(occur)f(even)g(without)h(r)o(e\002nement.)32 b(This)24
+b(is)g(also)f(a)g(situation)h(that)f(cannot)g(occur)g(with)515
+3180 y(PUGH,)j(so)g(that)h(most)g(thorns)g(cannot)f(handle)g(this)h
+(situation.)43 b(In)26 b(multi-patch)g(r)o(uns)515 3280
+y(one)19 b(has)g(to)g(distinguish)h(between)f Fi(local)f(mode)p
+Fk(,)g(wher)o(e)g(one)h(has)g(access)f(to)h(a)g(single)g(grid)515
+3380 y(patch,)28 b(and)f Fi(global)h(mode)p Fk(,)g(wher)o(e)f(one)h
+(cannot)g(access)f(individual)g(grid)g(patches,)i(but)515
+3479 y(can)f(instead)h(perfom)g(global)g(operations)g(such)g(as)g
+(synchr)o(onisation,)j(interpolation,)515 3579 y(or)19
+b(r)o(eduction.)24 b(This)19 b(part)f(of)h(Cactus)f(is)h(curr)o(ently)g
+(\(2003-04-30\))13 b(under)o(going)19 b(changes.)639
+3679 y(Carpet)j(uses)h(vertex-center)o(ed)d(r)o(e\002nement.)31
+b(That)23 b(is,)g(each)f(coarse)g(grid)h(point)g(co-)515
+3778 y(incides)17 b(with)g(a)g(\002ne)g(grid)g(point.)25
+b(T)-8 b(o)17 b Fi(r)o(egrid)f Fk(means)h(to)h(select)e(a)h(new)g(set)g
+(of)g(grid)f(patches)515 3878 y(for)22 b(each)f(r)o(e\002nement)h
+(level.)30 b(T)-8 b(o)23 b Fi(r)o(ecompose)e Fk(the)h(grid)g(hierar)o
+(chy)g(means)g(to)h(move)f(data)515 3977 y(ar)o(ound.)47
+b(Regridding)29 b(is)f(only)i(about)e(bookkeeping,)j(while)e(r)o
+(ecomposing)f(is)h(about)515 4077 y(data)19 b(munging.)639
+4177 y(Each)25 b(grid)f(patch)h(can)g(be)f(divided)g(in)i(up)f(to)g
+(four)g(zones:)34 b(the)25 b(interior)-6 b(,)26 b(the)f(outer)515
+4276 y(boundary)-9 b(,)30 b(and)e(the)h(ghost)g(zone,)i(and)d(the)h(r)o
+(e\002nement)f(boundary)-9 b(.)49 b(The)29 b(interior)g(is)515
+4376 y(wher)o(e)23 b(the)i(actual)e(compuations)i(go)g(on.)37
+b(The)24 b(outer)g(boundary)g(is)h(wher)o(e)f(the)g(users')515
+4476 y(outer)17 b(boundary)g(condition)h(is)g(applied;)f(fr)o(om)f
+(Carpet's)h(point)g(of)h(view)-8 b(,)18 b(these)f(two)g(ar)o(e)515
+4575 y(the)22 b(same.)30 b(\(The)21 b(only)i(dif)o(fer)o(ence)d(is)j
+(that)f(Carpet)f(sets)h Fj(cctk)p 2514 4575 27 4 v 30
+w(bbox)e Fk(corr)o(espondingly)-9 b(.\))515 4675 y(The)24
+b(ghost)h(zones)g(ar)o(e)e(boundaries)h(to)h(other)f(grid)h(patches)f
+(on)h(the)f(same)g(r)o(e\002nement)515 4774 y(level)30
+b(\(that)g(might)h(live)f(on)h(a)f(dif)o(fer)o(ent)e(pr)o(ocessor\).)53
+b(The)30 b(r)o(e\002nement)h(boundary)f(is)515 4874 y(the)d(boundary)h
+(of)f(the)h(r)o(e\002ned)e(r)o(egion)i(in)g(a)f(level,)h(and)g(it)f(is)
+h(\002lled)g(by)f(pr)o(olongation)1926 5255 y(2)p eop
+end
+%%Page: 3 3
+TeXDict begin 3 2 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.3) cvn H.B /DEST pdfmark
+end
+ 515 232 a 291 x Fk(\(interpolation\))25
+b(fr)o(om)f(the)h(next)g(coarser)f(level.)38 b(Both)25
+b(the)g(ghost)h(zones)f(and)g(the)g(pr)o(o-)515 623 y(longation)d
+(boundary)e(ar)o(e)g(\002lled)h(by)f Fi(synchr)o(onising)p
+Fk(.)639 722 y(Grid)31 b(patches)f(that)h(ar)o(e)e(on)j(the)f(same)f(r)
+o(e\002nement)h(level)f(never)h(overlap)f(except)515
+822 y(with)e(their)g(ghost)h(zones.)46 b(Conversly)-9
+b(,)30 b(all)e(ghost)g(zones)g(must)h(overlap)e(with)h(a)f(non-)515
+922 y(ghost)c(zone)f(of)h(another)f(grid)g(patch)g(of)g(the)h(same)f
+(level.)30 b(All)22 b(r)o(e\002nement)g(boundaries)515
+1021 y(must)27 b(overlap)g(with)g(a)g(grid)g(patch)f(on)i(the)f(next)g
+(coarser)f(level.)44 b(\(This)27 b(is)h(also)f(called)515
+1121 y Fi(pr)o(oper)20 b(nesting)p Fk(.\))639 1220 y(Except)27
+b(for)h(exceptions,)h(Carpet)e(numbers)h(grid)f(point)i(indices)f(and)f
+(time)h(levels)515 1320 y(with)22 b(integers.)27 b(It)21
+b(counts)i(always)e(in)g(terms)h(of)f(the)g(\002nest)h(grid,)f(so)h
+(that)f(coarser)g(grids)515 1420 y(have)26 b Fi(strides)i
+Fk(that)f(ar)o(e)f(powers)h(of)g(the)h(r)o(e\002nement)f(factor)-6
+b(.)43 b(This)28 b(has)f(the)h(advantage)515 1519 y(that)20
+b(dif)o(fer)o(ent)f(r)o(e\002nement)i(levels)f(can)h(use)g(the)g(same)f
+(global)h(numbering)h(scheme.)639 1619 y(The)74 b(grid)g(patches)g(ar)o
+(e)f(described)g(by)h(a)g Fi(bounding)g(box)g Fk(\(abbr)o(eviated)515
+1719 y(bbox,)g(see)63 b Fj(CarpetLib/src/b)o(box)o(.*)o
+Fk(.\).)147 b(This)64 b(is)g(a)f(triplet)g(of)h Fi(vectors)f
+Fk(\(see)515 1818 y Fj(CarpetLib/src/ve)o(ct)o(.*)o Fk(\),)16
+b(wher)o(e)21 b(each)h(triplet)f(speci\002es)h Fi(lower)g(bound)p
+Fk(,)g Fi(upper)g(bound)p Fk(,)515 1918 y(and)j Fi(stride)p
+Fk(,)h(much)g(as)f(is)g(conventional)i(in)e(Fortran.)39
+b(T)-7 b(riplets)25 b(ar)o(e)f(enclosed)h(in)h(r)o(ound)515
+2017 y(par)o(entheses)f Fg(\()r Ff(\001)32 b Fk(:)g Ff(\001)h
+Fk(:)g Ff(\001)r Fg(\))q Fk(,)25 b(and)f(vectors)h(ar)o(e)e(enclosed)j
+(in)f(squar)o(e)f(brackets)h Fg([)r Ff(\001)r Fk(,)16
+b Ff(\001)r Fk(,)g Ff(\001)g(\001)g(\001)q Fg(])q Fk(.)37
+b(A)515 2117 y(typical)25 b(grid)g(patch)g(might)h(have)e(a)h(bounding)
+h(box)f(which)h(is)g(denoted)f(by)h Fg(\()r([)r Fk(0)r(,)16
+b(0)r(,)g(0)r Fg(])30 b Fk(:)516 2217 y Fg([)r Fk(2)r(0)r(,)16
+b(2)r(0)r(,)g(2)r(0)r Fg(])31 b Fk(:)k Fg([)r Fk(2)r(,)16
+b(2)r(,)g(2)r Fg(])r(\))q Fk(.)39 b(This)26 b(is)h(to)f(be)g(r)o(ead)f
+(as)i Fg(\()q Fk(lower)34 b(:)g(upper)f(:)h(stride)q
+Fg(\))q Fk(,)26 b(meaning)515 2316 y(that)f(the)h(grid)g(patch)f(has)h
+(one)g(corner)f(grid)h(point)g(at)g Fg([)r Fk(0)r(,)16
+b(0)r(,)g(0)r Fg(])q Fk(,)24 b(the)i(diagonally)g(oppo-)515
+2416 y(site)h(corner)g(grid)f(point)i(at)f Fg([)r Fk(2)r(0)r(,)16
+b(2)r(0)r(,)g(2)r(0)r Fg(])q Fk(,)24 b(and)j(the)g(grid)g(points)g(ar)o
+(e)f(spaced)g(two)h(\223\002ne)515 2516 y(grid)19 b(spacings\224)g
+(apart.)24 b(This)c(grid)f(patch)g(contains)i(1)r(1)16
+b Ff(\002)h Fk(1)r(1)e Ff(\002)i Fk(1)r(1)j(grid)f(points.)26
+b(Empty)515 2615 y(bboxes)d(have)h(an)f(upper)h(bound)g(that)g(is)g
+(strictly)g(lower)g(than)g(the)g(lower)g(bound.)35 b(The)515
+2715 y(\002les)24 b Fj(CarpetLib/src/ve)o(ct)o(.*)17
+b Fk(contains)25 b(many)f(useful)f(r)o(outines)h(to)g(deal)f(with)h
+(short)515 2814 y(vectors,)38 b(and)c(the)h(\002les)g
+Fj(CarpetLib/src/b)o(bo)o(x.*)28 b Fk(contain)35 b(r)o(outines)g(deal)f
+(with)h(an)515 2914 y(algebra)26 b(of)h(bboxes.)45 b(The)27
+b(\002les)h Fj(CarpetLib/src/bb)o(oxs)o(et)o(.*)21 b
+Fk(contain)28 b(r)o(outines)f(that)515 3014 y(handle)20
+b(sets)h(of)g(bboxes.)515 3151 y
+SDict begin H.S end
+ 515 3151 a 515 3151
+a
+SDict begin 12 H.A end
+ 515 3151 a 515 3151 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.3) cvn H.B /DEST pdfmark
+end
+ 515 3151 a 148 x Fm(3)119 b(The)30
+b(driver)515 3489 y Fk(The)g(driver)g(consists)i(of)f(the)g(two)g
+(thorns)h Fj(Carpet)c Fk(and)i Fj(CarpetLib)p Fk(.)52
+b Fj(Carpet)28 b Fk(is)j(the)515 3588 y(fr)o(ont)24 b(end)h(to)h
+(Cactus,)f(while)h Fj(CarpetLib)21 b Fk(is)k(the)g(back)g(end)g(to)g
+(the)g(machine.)38 b Fj(Carpet)515 3688 y Fk(speci\002es)27
+b(the)g(grid)g(shape,)i(decides)d(when)i(to)g(allocate)e(and)h
+(deallocate)f(storage,)i(cy-)515 3787 y(cles)22 b(thr)o(ough)i(thes)f
+(schedule)f(bins,)i(and)e(passes)g(all)h(internal)g(information)g(in)g
+(the)g Fj(cGH)515 3887 y Fk(str)o(uctur)o(e)d(to)h(the)g(thorns.)515
+4015 y
+SDict begin H.S end
+ 515 4015 a 515 4015 a
+SDict begin 12 H.A end
+ 515 4015 a 515 4015 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.1) cvn H.B /DEST
+pdfmark end
+ 515
+4015 a 115 x Fd(3.1)99 b(Specifying)25 b(the)g(grid)g(extent)515
+4288 y Fj(Carpet)15 b Fk(de\002nes)k(the)f(usual)g(parameters)f
+(necessary)h(to)h(specify)e(the)i(extent)f(of)g(the)g(grid.)515
+4388 y(Everything)30 b(that)f(has)h(to)g(do)f(with)i(coor)o(dinates)e
+(and)g(symmetries)h(is)g(handled)f(else-)515 4487 y(wher)o(e,)20
+b(and)g(the)h(driver)f(does)h(not)g(know)h(about)e(that.)639
+4587 y(The)g Fj(global)p 1067 4587 27 4 v 29 w(*)g Fk(parameters)e
+(specify)i(the)g(global)h(extent)f(of)g(the)g(coarsest)g(grid.)25
+b(Not)515 4686 y(all)h(of)g(this)h(grid)g(needs)f(to)h(be)f(cover)o(ed)
+f(by)h(grid)h(patches.)42 b(It)26 b(is)h(conceivable)f(to)g(have)515
+4786 y(an)20 b(L-shaped)g(simulation)i(domain)g(without)g(any)f(r)o
+(e\002nement.)k(This)d(situation)g(can)e(be)515 4886
+y(described)h(to)j(Carpet)d(by)i(specifying)g(a)g(global)g(shape)f
+(that)h(is)g(the)g(convex)g(hull)g(of)g(the)515 4985
+y(domain,)e(and)f(then)h(using)h(two)f(cuboid)g(grid)g(patchs)f(to)h
+(\002ll)h(in)f(the)g(shape)f(of)h(the)g(L.)1926 5255
+y(3)p eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.4) cvn H.B /DEST pdfmark
+end
+ 515 232 a 639 523 a Fk(The)19
+b Fj(ghost)p 1022 523 27 4 v 29 w(*)f Fk(parameters)f(specify)i(the)f
+(number)h(of)g(ghost)g(zones.)25 b(The)19 b Fj(periodic*)515
+623 y Fk(parameters)j(ar)o(e)f(unused;)k(they)e(ar)o(e)f(only)i(ther)o
+(e)f(because)f(some)i(thorns)g(look)g(at)f(these)515
+722 y(parameters.)32 b(Carpet)22 b(itself)i(does)f(not)h(supply)g
+(periodic)f(boundary)h(conditions;)i(they)515 822 y(have)19
+b(to)h(be)g(handled)f(by)h(another)g(thorn.)26 b(The)20
+b(size)f(of)h(the)g(pr)o(olongation)h(boundary)f(is)515
+922 y(the)h(same)f(as)h(the)g(number)f(of)h(ghost)h(zones.)639
+1021 y(The)i(parameter)d Fj(max)p 1340 1021 V 31 w(refinement)p
+1811 1021 V 27 w(levels)g Fk(speci\002es)i(the)h(maximum)f(number)h(of)
+515 1121 y(levels)k(that)f(can)h(be)g(pr)o(esent)f(in)h(a)g(r)o(un,)i
+(including)e(the)h(base)e(level.)46 b(This)29 b(parameter)-6
+b(,)515 1220 y(together)30 b(with)h Fj(refinement)p 1495
+1220 V 28 w(factor)p Fk(,)e(de\002ne)h(the)h(grid)f(point)h(numbering)g
+(scheme,)515 1320 y(which)26 b(\(see)f(above\))g(depends)g(on)h(the)g
+(\002nest)g(possible)g(grid.)40 b(However)-6 b(,)26 b(none)g(of)g(the)
+515 1420 y(\002ner)i(levels)g(will)h(be)f(activated)f(automatically)-9
+b(.)47 b(The)28 b Fj(multigrid)p 2730 1420 V 28 w(*)g
+Fk(parameters)e(ar)o(e)515 1519 y(unused.)639 1619 y(The)h(parameter)f
+Fj(base)p 1392 1619 V 30 w(extents)e Fk(speci\002es)j(the)g(shapes)g
+(of)g(the)g(grid)g(patches)g(that)515 1719 y(ar)o(e)e(pr)o(esent)h(on)i
+(the)f(coarsest)g(grid.)44 b(This)27 b(can)g(be)f(used)h(to)g(set)g(up)
+g(e.g.)f(an)h(L-shaped)515 1818 y(domain.)e(The)19 b(parameter)e
+Fj(base)p 1580 1818 V 30 w(outerbounds)d Fk(speci\002es)19
+b(which)h(of)f(the)g(grid)f(patches')515 1918 y(boundaries)42
+b(ar)o(e)e(to)j(be)e(tr)o(eated)f(as)i(outer)g(boundaries,)47
+b(i.e.)42 b(for)f(which)i(of)f(those)515 2017 y Fj(cctk)p
+696 2017 V 29 w(bbox)20 b Fk(should)h(be)g(set)f(to)h(1.)639
+2117 y(Carpet)i(curr)o(ently)h(ignor)o(es)g Fj(enable)p
+1837 2117 V 29 w(all)p 1998 2117 V 31 w(storage)d Fk(and)j(always)g
+(enables)f(all)h(stor)o(-)515 2217 y(age.)57 b(This)32
+b(is)g(because)f(it)g(is)h(not)g(yet)g(clear)f(how)h(individual)f(grid)
+h(function)g(can)f(be)515 2316 y(allocated)f(and)i(deallocated)e(while)
+i(still)g(keeping)g(enough)h(data)d(for)h(the)h(boundary)515
+2416 y(pr)o(olongation.)639 2516 y(Checksumming)21 b(and)d(poisoning)i
+(ar)o(e)e(means)h(to)g(\002nd)g(thorns)h(that)e(alter)g(grid)h(vari-)
+515 2615 y(ables)27 b(that)i(should)g(not)f(be)g(alter)o(ed,)g(or)h
+(that)f(fail)f(to)i(\002ll)g(in)f(grid)g(variables)g(that)g(they)515
+2715 y(should)21 b(\002ll)h(in.)639 2814 y(None)h(of)g(the)g(above)f
+(speci\002es)h(anything)g(about)g(r)o(e\002ned)f(grids.)31
+b(Re\002ned)23 b(grid)f(ar)o(e)515 2914 y(cr)o(eated)16
+b(and)j(destr)o(oyed)f(at)g(r)o(un)h(time,)g(possibly)h(guided)f(by)f
+(the)h(thorn)h Fj(CarpetRegrid)515 3014 y Fk(which)h(pr)o(ovides)f(a)h
+(nice)g(user)f(interface.)515 3164 y
+SDict begin H.S end
+ 515 3164 a 515 3164
+a
+SDict begin 12 H.A end
+ 515 3164 a 515 3164 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.2) cvn H.B /DEST
+pdfmark end
+ 515 3164 a 92 x Fd(3.2)99 b(The)25
+b(timeline)515 3415 y Fk(It)c(is)h Fj(Carpet)p Fk('s)d(task)i(to)h
+(walk)g(thr)o(ough)g(the)f(schedule)h(bins)g(and)e(call)i(all)f(user)g
+(r)o(outines.)515 3514 y(Only)g(some)g(fairly)f(fundamental)g
+(initialisation)i(happens)e(in)h(the)g(\003esh)g(befor)o(e)e(Carpet)515
+3614 y(takes)h(contr)o(ol.)26 b(The)21 b(overall)f(pictur)o(e)g(of)h
+(what)g(happens)f(when)i(is:)515 3670 y
+SDict begin H.S end
+ 515 3670 a 515
+3670 a
+SDict begin 12 H.A end
+ 515 3670 a 515 3670 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.1) cvn H.B /DEST pdfmark
+end
+ 515 3670 a 619 3780 a Fk(1.)40
+b(Startup)20 b(\(see)f(\002le)i Fj(Carpet/src/Carp)o(etS)o(ta)o(rt)o
+(up.)o(cc)o Fk(\).)e(This)i(is)g(the)f(only)h(sched-)722
+3879 y(uled)32 b(r)o(outine;)37 b(everything)32 b(else)g(happens)g(by)g
+(overloading)g(and)f(r)o(egistering.)722 3979 y(This)22
+b(r)o(outine)e(does)h(nothing)i(but)d(r)o(egistering)h(and)f
+(overloading.)515 4036 y
+SDict begin H.S end
+ 515 4036 a 515 4036 a
+SDict begin 12 H.A end
+ 515 4036
+a 515 4036 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.2) cvn H.B /DEST pdfmark
+end
+ 515 4036 a 619 4145 a Fk(2.)40 b(SetupGH)25
+b(\(see)g(\002le)h Fj(Carpet/src/Setu)o(pGH)o(.c)o(c)p
+Fk(\).)33 b(This)26 b(r)o(outine)f(does)g(the)h(bulk)722
+4245 y(of)h(initialising)i(Carpet.)43 b(It)27 b(sets)g(up)g(the)g
+(internal)g(str)o(uctur)o(es)g(for)f(all)h(grid)g(vari-)722
+4344 y(ables.)515 4379 y
+SDict begin H.S end
+ 515 4379 a 515 4379 a
+SDict begin 12 H.A end
+ 515 4379
+a 515 4379 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.3) cvn H.B /DEST pdfmark
+end
+ 515 4379 a 619 4510 a Fk(3.)40 b(Initialise)31
+b(\(see)e(\002le)h Fj(Carpet/src/Initia)o(li)o(se.)o(cc)o
+Fk(\).)47 b(This)31 b(r)o(outine)f(walks)g(the)722 4610
+y(initialisation)22 b(part)e(of)h(the)g(scheduling)g(bins.)515
+4667 y
+SDict begin H.S end
+ 515 4667 a 515 4667 a
+SDict begin 12 H.A end
+ 515 4667 a 515 4667 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.4) cvn H.B /DEST pdfmark
+end
+ 515
+4667 a 619 4776 a Fk(4.)40 b(Evolve)27 b(\(see)g(\002le)g
+Fj(Carpet/src/Evolve)o(.cc)o Fk(\).)39 b(This)28 b(r)o(outine)f(walks)h
+(the)f(evolu-)722 4876 y(tion)21 b(part)f(of)g(the)g(scheduling)h
+(bins.)26 b(It)20 b(also)h(contains)f(the)h(main)f(evolution)i(loop.)
+1926 5255 y(4)p eop end
+%%Page: 5 5
+TeXDict begin 5 4 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.5) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.5) cvn H.B /DEST pdfmark
+end
+ 515 440 a 619 523
+a Fk(5.)40 b(Shutdown)33 b(\(see)f(\002le)g Fj(Carpet/src/Shutdo)o(wn.)
+o(cc)o Fk(\).)54 b(This)33 b(r)o(outine)f(walks)h(the)722
+623 y(shutdown)k(part)d(of)h(the)g(scheduling)h(bins.)69
+b(Normally)-9 b(,)39 b(nothing)e(inter)o(esting)722 722
+y(happens)21 b(her)o(e.)515 888 y(These)f(stages)h(ar)o(e)e(explained)h
+(in)i(the)e(following)j(sections.)515 1038 y
+SDict begin H.S end
+ 515 1038
+a 515 1038 a
+SDict begin 12 H.A end
+ 515 1038 a 515 1038 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsubsection.3.2.1) cvn H.B
+/DEST pdfmark end
+ 515 1038 a 77 x Fl(3.2.1)81
+b(Initialisation)515 1273 y Fk(\(See)23 b(\002le)h Fj
+(Carpet/src/Initia)o(li)o(se.)o(cc)o Fk(.\))30 b(In)25
+b(this)g(stage)f(Carpet)f(initialises)i(the)g(sim-)515
+1372 y(ulation.)56 b(This)31 b(includes)g(setting)g(up)g(the)g(grids,)i
+(calling)e(r)o(outines)g(to)g(r)o(egister)f(sym-)515
+1472 y(metries)24 b(and)f(boundary)h(conditions,)h(as)f(well)g(as)f
+(calculating)h(the)g(actual)f(initial)h(data)515 1571
+y(on)h(several)e(r)o(e\002nement)i(levels.)36 b(It)25
+b(traverses)e(the)i(scheduling)g(bins)g(in)g(the)f(following)515
+1671 y(or)o(der:)515 1706 y
+SDict begin H.S end
+ 515 1706 a 515 1706 a
+SDict begin 12 H.A end
+ 515
+1706 a 515 1706 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.6) cvn H.B /DEST pdfmark
+end
+ 515 1706 a 619 1837 a Fk(1.)40 b(Set)20
+b Fj(cctk)p 1034 1837 27 4 v 30 w(iteration)d Fk(to)k(zer)o(o)515
+1838 y
+SDict begin H.S end
+ 515 1838 a 515 1838 a
+SDict begin 12 H.A end
+ 515 1838 a 515 1838 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.7) cvn H.B /DEST pdfmark
+end
+ 515
+1838 a 619 1970 a Fk(2.)40 b(Set)20 b Fj(cctk)p 1034
+1970 27 4 v 30 w(time)f Fk(to)i(the)g(initial)h(time)515
+1971 y
+SDict begin H.S end
+ 515 1971 a 515 1971 a
+SDict begin 12 H.A end
+ 515 1971 a 515 1971 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.8) cvn H.B /DEST pdfmark
+end
+ 515
+1971 a 619 2103 a Fk(3.)40 b(P)-8 b(ARAMCHECK)515 2104
+y
+SDict begin H.S end
+ 515 2104 a 515 2104 a
+SDict begin 12 H.A end
+ 515 2104 a 515 2104 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.9) cvn H.B /DEST pdfmark
+end
+ 515 2104
+a 619 2236 a Fk(4.)40 b(Loop)21 b(over)g(r)o(e\002nement)f(levels,)h
+(starting)g(fr)o(om)f(coarsest:)515 2259 y
+SDict begin H.S end
+ 515 2259 a
+515 2259 a
+SDict begin 12 H.A end
+ 515 2259 a 515 2259 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.10) cvn H.B /DEST pdfmark
+end
+ 515 2259 a 619 2368
+a Fk(5.)123 b(BASEGRID)515 2369 y
+SDict begin H.S end
+ 515 2369 a 515 2369
+a
+SDict begin 12 H.A end
+ 515 2369 a 515 2369 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.11) cvn H.B /DEST pdfmark
+end
+ 515 2369 a 619 2501 a Fk(6.)g(INITIAL)515
+2502 y
+SDict begin H.S end
+ 515 2502 a 515 2502 a
+SDict begin 12 H.A end
+ 515 2502 a 515 2502 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.12) cvn H.B /DEST pdfmark
+end
+ 515
+2502 a 619 2634 a Fk(7.)g(POSTINITIAL)515 2635 y
+SDict begin H.S end
+ 515
+2635 a 515 2635 a
+SDict begin 12 H.A end
+ 515 2635 a 515 2635 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.13) cvn H.B /DEST pdfmark
+end
+ 515 2635 a 619
+2767 a Fk(8.)g(POSTSTEP)515 2768 y
+SDict begin H.S end
+ 515 2768 a 515 2768
+a
+SDict begin 12 H.A end
+ 515 2768 a 515 2768 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.14) cvn H.B /DEST pdfmark
+end
+ 515 2768 a 619 2900 a Fk(9.)g(Regrid)21
+b(\(possibly)h(cr)o(eating)d(new)j(levels\))515 2923
+y
+SDict begin H.S end
+ 515 2923 a 515 2923 a
+SDict begin 12 H.A end
+ 515 2923 a 515 2923 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.15) cvn H.B /DEST pdfmark
+end
+ 515 2923
+a 577 3033 a Fk(10.)40 b(End)21 b(loop)g(over)g(r)o(e\002nement)f
+(levels)515 3056 y
+SDict begin H.S end
+ 515 3056 a 515 3056 a
+SDict begin 12 H.A end
+ 515 3056 a 515
+3056 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.16) cvn H.B /DEST pdfmark
+end
+ 515 3056 a 577 3165 a Fk(11.)40 b(Restrict)21
+b(fr)o(om)g(\002ner)g(to)g(coarser)f(grids)515 3189 y
+SDict begin H.S end
+
+515 3189 a 515 3189 a
+SDict begin 12 H.A end
+ 515 3189 a 515 3189 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.17) cvn H.B /DEST pdfmark
+end
+ 515 3189
+a 577 3298 a Fk(12.)40 b(If)56 b(desir)o(ed,)63 b(perform)55
+b(Scott)g(Hawley's)h(initialisation)h(scheme)f(for)g(thr)o(ee)722
+3398 y(timelevels)515 3399 y
+SDict begin H.S end
+ 515 3399 a 515 3399 a
+SDict begin 12 H.A end
+ 515
+3399 a 515 3399 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.18) cvn H.B /DEST pdfmark
+end
+ 515 3399 a 577 3531 a Fk(13.)40 b(Loop)21
+b(over)g(r)o(e\002nement)f(levels,)h(starting)g(fr)o(om)f(coarsest:)515
+3554 y
+SDict begin H.S end
+ 515 3554 a 515 3554 a
+SDict begin 12 H.A end
+ 515 3554 a 515 3554 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.19) cvn H.B /DEST pdfmark
+end
+ 515
+3554 a 577 3664 a Fk(14.)123 b(RECOVER)p 1206 3664 25
+4 v 31 w(V)-9 b(ARIABLES)515 3665 y
+SDict begin H.S end
+ 515 3665 a 515 3665
+a
+SDict begin 12 H.A end
+ 515 3665 a 515 3665 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.20) cvn H.B /DEST pdfmark
+end
+ 515 3665 a 577 3796 a Fk(15.)123
+b(CPINITIAL)515 3797 y
+SDict begin H.S end
+ 515 3797 a 515 3797 a
+SDict begin 12 H.A end
+ 515 3797
+a 515 3797 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.21) cvn H.B /DEST pdfmark
+end
+ 515 3797 a 577 3929 a Fk(16.)g(ANAL)-8 b(YSIS)515
+3930 y
+SDict begin H.S end
+ 515 3930 a 515 3930 a
+SDict begin 12 H.A end
+ 515 3930 a 515 3930 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.22) cvn H.B /DEST pdfmark
+end
+ 515
+3930 a 577 4062 a Fk(17.)123 b(OutputGH)515 4085 y
+SDict begin H.S end
+ 515
+4085 a 515 4085 a
+SDict begin 12 H.A end
+ 515 4085 a 515 4085 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.23) cvn H.B /DEST pdfmark
+end
+ 515 4085 a 577
+4195 a Fk(18.)40 b(End)21 b(loop)g(over)g(r)o(e\002nement)f(levels)639
+4361 y(In)k(the)g(beginning,)i(only)e(the)g(coarsest)f(level)h(exists.)
+34 b(The)24 b(\002rst)g(loop)g(starts)g(by)g(ini-)515
+4461 y(tialising)i(this)h(level.)40 b(At)26 b(the)f(end)h(of)g(this)g
+(loop,)i(mor)o(e)d(levels)h(ar)o(e)e(cr)o(eated)g(if)i(desir)o(ed.)515
+4560 y(This)j(makes)f(it)g(possible)h(to)g(make)f(this)h(decision)g
+(depend)f(on)h(an)f(automatic)g(r)o(e\002ne-)515 4660
+y(ment)21 b(criterion.)1926 5255 y(5)p eop end
+%%Page: 6 6
+TeXDict begin 6 5 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.6) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsubsection.3.2.2) cvn H.B
+/DEST pdfmark end
+ 515 440 a 83 x Fl(3.2.2)81
+b(Evolution)515 681 y Fk(\(See)20 b(\002le)i Fj(Carpet/src/Evolve)o(.c)
+o(c)p Fk(.\))g(In)g(this)h(stage)e(Carpet)g(performs)h(the)g(main)g
+(time)515 781 y(evolution)30 b(loop.)53 b(This)31 b(is)f(further)f
+(complicated)g(by)h(the)g(fact)e(that)i(\002ner)g(grids)f(need)515
+880 y(to)d(take)e(mor)o(e)i(and)f(smaller)g(time)h(steps)f(than)h
+(coarser)e(grids.)40 b(In)26 b(Carpet's)e(time)i(step)515
+980 y(counting)d(scheme,)g(which)h(is)e(based)g(on)h(the)g(\002nest)g
+(grid)f(time)h(steps,)f(this)i(means)e(that)515 1080
+y(the)f(coarser)g(grids)h(ar)o(e)e(skipped)h(in)h(the)f(r)o(emaining)h
+(time)g(steps.)28 b(Thus)21 b(the)h(elegant)f(r)o(e-)515
+1179 y(cursive)16 b(scheme)i(is)f(\003attened)g(out.)24
+b(The)17 b(scheduling)h(bins)g(in)f(the)g(main)h(time)f(evolution)515
+1279 y(loop)k(ar)o(e)f(traversed)f(in)i(the)g(following)h(or)o(der:)515
+1332 y
+SDict begin H.S end
+ 515 1332 a 515 1332 a
+SDict begin 12 H.A end
+ 515 1332 a 515 1332 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.24) cvn H.B /DEST pdfmark
+end
+ 515
+1332 a 619 1440 a Fk(1.)40 b(Advance)20 b Fj(cctk)p 1253
+1440 27 4 v 29 w(iteration)515 1441 y
+SDict begin H.S end
+ 515 1441 a 515
+1441 a
+SDict begin 12 H.A end
+ 515 1441 a 515 1441 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.25) cvn H.B /DEST pdfmark
+end
+ 515 1441 a 619 1572 a Fk(2.)40
+b(Loop)21 b(over)g(r)o(e\002nement)f(levels,)h(starting)g(fr)o(om)f
+(coarsest:)515 1596 y
+SDict begin H.S end
+ 515 1596 a 515 1596 a
+SDict begin 12 H.A end
+ 515 1596
+a 515 1596 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.26) cvn H.B /DEST pdfmark
+end
+ 515 1596 a 619 1704 a Fk(3.)123 b(If)21
+b(the)g(curr)o(ent)f(level)g(needs)h(to)g(be)f(tr)o(eated)f(at)h(this)i
+(iteration:)515 1705 y
+SDict begin H.S end
+ 515 1705 a 515 1705 a
+SDict begin 12 H.A end
+ 515 1705
+a 515 1705 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.27) cvn H.B /DEST pdfmark
+end
+ 515 1705 a 619 1836 a Fk(4.)206 b(Calculate)20
+b(curr)o(ent)g Fj(cctk)p 1721 1836 27 4 v 30 w(time)515
+1837 y
+SDict begin H.S end
+ 515 1837 a 515 1837 a
+SDict begin 12 H.A end
+ 515 1837 a 515 1837 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.28) cvn H.B /DEST pdfmark
+end
+ 515
+1837 a 619 1967 a Fk(5.)206 b(Cycle)21 b(time)g(levels)515
+1991 y
+SDict begin H.S end
+ 515 1991 a 515 1991 a
+SDict begin 12 H.A end
+ 515 1991 a 515 1991 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.29) cvn H.B /DEST pdfmark
+end
+ 515
+1991 a 619 2099 a Fk(6.)206 b(PRESTEP)515 2100 y
+SDict begin H.S end
+ 515
+2100 a 515 2100 a
+SDict begin 12 H.A end
+ 515 2100 a 515 2100 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.30) cvn H.B /DEST pdfmark
+end
+ 515 2100 a 619
+2231 a Fk(7.)g(EVOL)515 2232 y
+SDict begin H.S end
+ 515 2232 a 515 2232 a
+SDict begin 12 H.A end
+
+515 2232 a 515 2232 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.31) cvn H.B /DEST pdfmark
+end
+ 515 2232 a 619 2363 a Fk(8.)g(POSTSTEP)515
+2364 y
+SDict begin H.S end
+ 515 2364 a 515 2364 a
+SDict begin 12 H.A end
+ 515 2364 a 515 2364 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.32) cvn H.B /DEST pdfmark
+end
+ 515
+2364 a 619 2494 a Fk(9.)g(Regrid)515 2518 y
+SDict begin H.S end
+ 515 2518
+a 515 2518 a
+SDict begin 12 H.A end
+ 515 2518 a 515 2518 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.33) cvn H.B /DEST pdfmark
+end
+ 515 2518 a 577 2626
+a Fk(10.)40 b(End)21 b(loop)g(over)g(r)o(e\002nement)f(levels)515
+2649 y
+SDict begin H.S end
+ 515 2649 a 515 2649 a
+SDict begin 12 H.A end
+ 515 2649 a 515 2649 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.34) cvn H.B /DEST pdfmark
+end
+ 515
+2649 a 577 2758 a Fk(11.)40 b(Restrict)21 b(fr)o(om)g(\002ner)g(to)g
+(coarser)f(grids)515 2781 y
+SDict begin H.S end
+ 515 2781 a 515 2781 a
+SDict begin 12 H.A end
+ 515
+2781 a 515 2781 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.35) cvn H.B /DEST pdfmark
+end
+ 515 2781 a 577 2890 a Fk(12.)40 b(Loop)21
+b(over)g(r)o(e\002nement)f(levels,)h(starting)g(fr)o(om)f(coarsest:)515
+2913 y
+SDict begin H.S end
+ 515 2913 a 515 2913 a
+SDict begin 12 H.A end
+ 515 2913 a 515 2913 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.36) cvn H.B /DEST pdfmark
+end
+ 515
+2913 a 577 3021 a Fk(13.)123 b(If)21 b(the)g(curr)o(ent)f(level)g
+(needs)h(to)g(be)f(tr)o(eated)f(at)h(this)i(iteration:)515
+3022 y
+SDict begin H.S end
+ 515 3022 a 515 3022 a
+SDict begin 12 H.A end
+ 515 3022 a 515 3022 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.37) cvn H.B /DEST pdfmark
+end
+ 515
+3022 a 577 3153 a Fk(14.)206 b(CHECKPOINT)515 3154 y
+SDict begin H.S end
+
+515 3154 a 515 3154 a
+SDict begin 12 H.A end
+ 515 3154 a 515 3154 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.38) cvn H.B /DEST pdfmark
+end
+ 515 3154
+a 577 3285 a Fk(15.)g(ANAL)-8 b(YSIS)515 3286 y
+SDict begin H.S end
+ 515 3286
+a 515 3286 a
+SDict begin 12 H.A end
+ 515 3286 a 515 3286 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.39) cvn H.B /DEST pdfmark
+end
+ 515 3286 a 577 3416
+a Fk(16.)206 b(OutputGH)515 3440 y
+SDict begin H.S end
+ 515 3440 a 515 3440
+a
+SDict begin 12 H.A end
+ 515 3440 a 515 3440 a
+SDict begin [ /View [/XYZ H.V] /Dest (Item.40) cvn H.B /DEST pdfmark
+end
+ 515 3440 a 577 3548 a Fk(17.)40
+b(End)21 b(loop)g(over)g(r)o(e\002nement)f(levels)639
+3710 y(The)h(condition)i(whether)e(a)f(r)o(e\002nement)h(level)g(needs)
+g(to)g(be)g(tr)o(eated)e(at)i(the)g(curr)o(ent)515 3809
+y(iteration)k(is)g(dif)o(fer)o(ent)d(for)j(the)g(two)g(loops.)38
+b(In)25 b(the)g(\002rst)g(loop,)i(the)d(coarse)h(grids)f(need)515
+3909 y(to)j(be)f(advanced)e(befor)o(e)i(the)g(\002ner)h(grids,)h(so)e
+(the)h(condition)h(is)f Fi(i)s(t)r(e)q(r)16 b Fk(m)r(o)r(d)g
+Fi(s)r(t)q(r)q(i)s(d)r(e)36 b Fg(=)g Fk(1)q(.)515 4009
+y(Her)o(e)20 b Fi(i)s(t)r(e)q(r)i Fk(is)f(the)g(curr)o(ent)g
+(iteration,)f(and)i Fi(s)r(t)q(r)q(i)s(d)r(e)g Fk(the)f(stride)g(of)g
+(the)g(curr)o(ent)f(r)o(e\002nement)515 4108 y(level,)e(i.e.)g(the)h
+(factor)f(by)h(which)g(the)g(\002nest)g(grid)g(is)g(\002ner)g(than)g
+(the)f(curr)o(ent)g(grid.)25 b(In)19 b(the)515 4208 y(second)k(loop)h
+(above,)g(the)f(coarse)g(grids)g(need)g(to)h(be)f(tr)o(eated)f(after)g
+(the)h(\002ner)h(grids,)f(so)515 4308 y(that)d(the)h(condition)h(r)o
+(eads)e Fi(i)s(t)r(e)q(r)c Fk(m)r(o)r(d)g Fi(s)r(t)q(r)q(i)s(d)r(e)25
+b Fg(=)h Fi(s)r(t)q(r)q(i)s(d)r(e)q Fk(.)515 4434 y
+SDict begin H.S end
+ 515
+4434 a 515 4434 a
+SDict begin 12 H.A end
+ 515 4434 a 515 4434 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.3) cvn H.B /DEST
+pdfmark end
+ 515 4434 a 115
+x Fd(3.3)99 b(Calling)25 b(scheduled)g(routines)515 4707
+y Fk(\(See)19 b(\002le)h Fj(Carpet/src/CallFu)o(nc)o(ti)o(on.)o(cc)o
+Fk(.\))f(The)i(pr)o(ocess)e(by)i(which)g(the)f(scheduling)515
+4807 y(bins)e(ar)o(e)f(traversed)f(is)i(dif)o(fer)o(ent)e(fr)o(om)h
+(the)h(pr)o(ocess)g(which)h(actually)e(calls)h(the)g(r)o(outines)515
+4907 y(within)23 b(the)f(scheduling)h(bins.)30 b(The)22
+b(former)g(has)g(to)h(do)f(with)h(mesh)f(r)o(e\002nement,)g(mak-)515
+5006 y(ing)f(sur)o(e)f(that)g(the)h(coarse)f(and)g(\002ne)h(grids)f(ar)
+o(e)f(evolved)h(in)h(the)g(right)g(or)o(der)-6 b(.)24
+b(The)d(latter)1926 5255 y(6)p eop end
+%%Page: 7 7
+TeXDict begin 7 6 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.7) cvn H.B /DEST pdfmark
+end
+ 515 232 a 291 x Fk(has)21
+b(to)g(do)g(with)h(tr)o(eating)e(multiple)i(patches,)e(i.e.)g(with)i
+(local)f(mode)g(and)g(global)g(mode)515 623 y(operations,)g(as)f
+(mentioned)i(above.)639 722 y(In)37 b(the)f(function)h
+Fj(CallFunction)p Fk(,)e(all)h(the)h(ar)o(guments)f(that)g(ar)o(e)f
+(passed)g(to)i(the)515 822 y(scheduled)29 b(r)o(outines)g(have)g(to)g
+(be)g(set)g(up.)51 b(Additionally)-9 b(,)31 b(the)f Fj(cGH)e
+Fk(str)o(uctur)o(e)g(has)i(to)515 922 y(be)c(\002lled)h(in.)45
+b(Some)26 b(\002elds)h(in)h(the)f Fj(cGH)e Fk(str)o(uctur)o(e)i(ar)o(e)
+e(always)i(kept)g(up-to-date)e(dur)o(-)515 1021 y(ing)d(the)g(r)o
+(e\002nement)g(level)f(loops,)i(such)f(as)g(the)g(time)g(step)g(size)f
+(and)h(the)f(grid)h(spacing.)515 1121 y(The)f(\002le)h
+Fj(Carpet/src/helpe)o(r.)o(cc)15 b Fk(contains)22 b(helper)f(r)o
+(outines)h(that)g(allow)g(easy)f(loop-)515 1220 y(ing)h(over)f(r)o
+(e\002nement)g(levels)g(and)g(over)g(grid)g(patches.)27
+b(\(Grid)21 b(patches)f(ar)o(e)g(also)i(called)515 1320
+y Fi(compoments)27 b Fk(in)j(Carpet.)50 b(The)29 b(expr)o(ession)f
+(component)j(seems)e(to)h(be)e(confusing,)k(so)515 1420
+y(that)27 b(I)g(switched)h(to)f(using)i Fi(patch)c Fk(instead.)45
+b(Some)27 b(sour)o(ce)g(code)g(still)h(r)o(e\003ects)e(the)i(old)515
+1519 y(conventsion.\))639 1619 y(The)d(function)h Fj(CallFunction)20
+b Fk(\002rst)25 b(distinguishes)h(between)f(global)g(mode)g(func-)515
+1719 y(tions)d(and)e(local)h(mode)g(functions.)515 1873
+y Fl(Global)e(mode)h(functions)40 b Fk(ar)o(e)24 b(called)f(once)i
+(\(on)g(each)f(pr)o(ocessor\).)36 b(They)25 b(ar)o(e)e(passed)722
+1972 y(all)32 b(the)f(global)h(data,)h(such)f(as)f Fj(cctk)p
+1956 1972 27 4 v 30 w(gsh)f Fk(and)h Fj(cctk)p 2496 1972
+V 30 w(delta)p 2746 1972 V 29 w(space)p Fk(,)h(but)f(none)722
+2072 y(of)25 b(the)f(local)g(data,)g(such)h(as)f Fj(cctk)p
+1839 2072 V 30 w(lsh)f Fk(or)h Fj(cctk)p 2302 2072 V
+30 w(bbox)p Fk(.)35 b(Grid)24 b(functions)h(ar)o(e)e(not)722
+2171 y(accessible,)29 b(and)f(they)g(ar)o(e)f(passed)h(as)f(null)i
+(pointers.)48 b(However)-6 b(,)30 b(grid)e(scalars)722
+2271 y(and)e(grid)f(arrays)g(ar)o(e)f(accessible.)40
+b(Ther)o(e)25 b(is)h(an)g(untested)f(gateway)h(to)g(dir)o(ectly)722
+2371 y(call)21 b(local)g(mode)f(functions)i(fr)o(om)e(global)h(mode)g
+(functions.)515 2531 y Fl(Local)e(mode)h(functions)41
+b Fk(might)21 b(be)g(called)f(several)g(times)h(\(on)g(each)g(pr)o
+(ocessor\),)f(once)722 2630 y(for)29 b(each)g(grid)g(patch)f(that)h(is)
+h(assigned)f(to)g(this)h(pr)o(ocessor)-6 b(.)50 b(They)29
+b(r)o(eceive)f(the)722 2730 y(global)23 b(data)e(as)h(well)g(as)g(data)
+f(for)h(a)g(single)h(grid)f(patch.)30 b(It)22 b(is)h(illegal)f(to)g
+(perform)722 2830 y(global)c(operations,)g(such)g(as)f(synchr)o
+(onisation,)j(interpolation,)e(or)g(r)o(eduction,)g(in)722
+2929 y(local)j(mode.)639 3083 y(The)g(distinction)h(between)e(global)h
+(and)f(local)g(mode)h(is)g(only)g(important)g(for)g(multi-)515
+3183 y(patch)f(r)o(uns.)26 b(For)21 b(single-patch)g(r)o(uns,)g(the)g
+(distinction)h(does)f(not)h(exist.)639 3282 y(Multi-patch)e(r)o(uns)h
+(ar)o(e)e(only)i(necessary)f(when)h(ther)o(e)f(ar)o(e)f(mor)o(e)h(grid)
+g(patches)g(on)h(a)515 3382 y(r)o(e\002nement)29 b(level)g(than)g(ther)
+o(e)f(ar)o(e)g(pr)o(ocessors.)51 b(This)29 b(is)h(normally)g(not)f(the)
+h(case)e(for)515 3482 y(\002xed)34 b(mesh)h(r)o(e\002nement.)66
+b(Things)36 b(ar)o(e)d(dif)o(fer)o(ent)f(for)i(adaptive)f(mesh)i(r)o
+(e\002nement,)515 3581 y(which)21 b(can)g(cr)o(eate)e(many)i(r)o
+(e\002ned)f(r)o(egions.)515 3729 y
+SDict begin H.S end
+ 515 3729 a 515 3729
+a
+SDict begin 12 H.A end
+ 515 3729 a 515 3729 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.4) cvn H.B /DEST
+pdfmark end
+ 515 3729 a 92 x Fd(3.4)99 b(Grid)25
+b(arrays)f(and)h(grid)g(scalars)515 3979 y Fk(Grid)71
+b(scalars)g(ar)o(e)g(implemented)g(as)h(zer)o(o-dimensional)f(grid)h
+(arrays)e(with)515 4079 y Fj(DISTRIB=CONSTANT)o Fk(.)639
+4179 y(Grid)16 b(arrays)f(ar)o(e)f(implemented)j(as)e(grid)h
+(functions,)h(wher)o(e)f(each)f(grid)h(array)e(gr)o(oup)515
+4278 y(has)27 b(their)g(own)i(r)o(e\002nement)e(hierar)o(chy)f(that)i
+(consists)g(of)g(a)e(single)i(level)f(only)i(and)e(is)515
+4378 y(never)k(changed)g(at)g(r)o(un)i(time.)58 b(Grid)32
+b(arrays)e(with)j(less)f(than)f(3)h(dimension)h(ar)o(e)d(ex-)515
+4477 y(tended)e(to)h(have)f(an)g(extent)g(of)h(1)f(\(and)g(no)h(ghost)g
+(zones\))g(in)g(the)g(r)o(emaining)f(dimen-)515 4577
+y(sions,)e(so)f(that)g(all)f(quantities)h(in)g(Carpet)f(have)g(3)g
+(dimensions)2587 4577 y
+SDict begin H.S end
+ 2587 4577 a -30 x Fc(1)2624 4577
+y
+SDict begin 12 H.L end
+ 2624 4577 a 2624 4577 a
+SDict begin [ /Subtype /Link /Dest (Hfootnote.1) cvn /H /I /Border
+[0 0 12] /Color [1 0 0] H.B /ANN pdfmark end
+ 2624 4577 a Fk(.)37 b Fj(DISTRIB=CONSTAN)o(T)
+515 4677 y Fk(grid)22 b(arrays)e(ar)o(e)h(implemented)h(by)g
+(internally)g(enlar)o(ging)g(the)g(grid)g(array)f(in)h(the)i
+Fi(z)f Fk(di-)515 4776 y(r)o(ection,)d(and)g(then)i(distributing)f
+(this)h(array)d(onto)j(the)f(pr)o(ocessors.)p 515 4847
+1146 4 v 605 4903 a Fb(1)634 4848 y
+SDict begin H.S end
+ 634 4848 a 634 4848
+a
+SDict begin H.R end
+ 634 4848 a 634 4848 a
+SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.1) cvn H.B /DEST pdfmark
+end
+ 634 4848 a 79 x Fa(This)g(is)g(set)g(by)f(a)h
+(compile-time)h(constant)e(and)h(could)g(be)g(changed)f(to)h(allow)h
+(for)f(grid)g(functions)h(and)515 5006 y(arrays)17 b(with)g(mor)o(e)f
+(than)g(3)h(dimensions.)1926 5255 y Fk(7)p eop end
+%%Page: 8 8
+TeXDict begin 8 7 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.8) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.5) cvn H.B /DEST
+pdfmark end
+ 515 440 a 83 x Fd(3.5)99
+b(Flesh)25 b(interfaces)515 681 y Fk(The)i(\003esh)g(has)g(many)g
+(interfaces)f(that)h(need)f(to)i(be)e(\002lled)h(in)g(by)g(a)g(driver)
+-6 b(.)43 b(These)26 b(ar)o(e)515 781 y(in)e(particular)e(all)h(the)h
+(r)o(outines)f(that)g(ar)o(e)f(overloaded)h(in)h(the)f(SetupGH)g
+(stage.)33 b(Those)515 880 y(overloaded)27 b(r)o(outines)h(as)g(well)g
+(as)g(other)h(helper)e(function)i(ar)o(e)e(implemented)h(in)h(the)515
+980 y(following)22 b(\002les:)515 1146 y Fj(Carpet/src/Check)o(su)o(m.)
+o(cc)35 b Fk(catching)21 b(illegal)g(changes)g(to)g(grid)g(variables)
+515 1279 y Fj(Carpet/src/Comm.)o(cc)35 b Fk(synchr)o(onisation,)22
+b(pr)o(olongation)515 1412 y Fj(Carpet/src/Cycle)o(.c)o(c)35
+b Fk(time)21 b(level)g(handling)515 1544 y Fj(Carpet/src/Poiso)o(n.)o
+(cc)35 b Fk(catching)21 b(uninitialised)g(grid)g(variables)515
+1677 y Fj(Carpet/src/Restr)o(ic)o(t.)o(cc)35 b Fk(r)o(estriction)21
+b(fr)o(om)f(\002ner)h(to)g(coarser)f(grids)515 1810 y
+Fj(Carpet/src/Stora)o(ge)o(.c)o(c)36 b Fk(enabling)21
+b(and)f(disabling)h(storage)515 1943 y Fj(Carpet/src/helpe)o(rs)o(.c)o
+(c)36 b Fk(small)21 b(low-level)g(helper)f(r)o(outines)515
+2076 y Fj(Carpet/src/varia)o(bl)o(es)o(.cc)35 b Fk(the)42
+b(global)g(variables)f(that)h(keep)g(Carpet's)f(curr)o(ent)722
+2175 y(state)e(\(this)h(is)g(used)f(instead)g(of)g(a)g(GH)g(extension)h
+(\227)g(should)g(pr)o(obably)e(be)722 2275 y(changed)21
+b(some)g(time\))639 2441 y(Most)30 b(of)g(these)g(\002les)g(ar)o(e)e
+(fairly)i(self-contained,)h(and)e(they)h(mostly)h(marshal)f(the)515
+2541 y(actual)20 b(work)h(to)g Fj(CarpetLib)p Fk(.)515
+2686 y
+SDict begin H.S end
+ 515 2686 a 515 2686 a
+SDict begin 12 H.A end
+ 515 2686 a 515 2686 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.6) cvn H.B /DEST
+pdfmark end
+ 515
+2686 a 98 x Fd(3.6)99 b(Interfaces)24 b(to)h(other)g(thorns)515
+2942 y Fk(Some)42 b(other)g(thorns,)48 b(mostly)43 b(fr)o(om)f(the)g
+(Carpet)f(arrangement,)46 b(do)c(need)g(to)g(ac-)515
+3041 y(cess)35 b(internal)f(data)g(of)h(Carpet.)66 b(Carpet)34
+b(keeps)g(its)i(internal)e(state)h(in)g(global)g(vari-)515
+3141 y(ables)h(which)i(ar)o(e)d(declar)o(ed)f(in)k Fj(Carpet/src/carp)o
+(et)p 2364 3141 27 4 v 25 w(public.hh)33 b Fk(and)j(de\002ned)h(in)515
+3240 y Fj(Carpet/src/varia)o(bl)o(es)o(.cc)o Fk(.)30
+b(Entities)24 b(that)g(can)g(be)g(accessed)f(fr)o(om)h(C)g(ar)o(e)e
+(declar)o(ed)515 3340 y(in)i Fj(Carpet/src/carpe)o(t)p
+1363 3340 V 25 w(public.h)p Fk(;)e(some)j(of)f(these)g(would)g(be)g
+(quite)g(useful)g(if)g(they)515 3440 y(wer)o(e)c(pr)o(ovided)f(by)i
+(the)g(\003esh.)515 3590 y
+SDict begin H.S end
+ 515 3590 a 515 3590 a
+SDict begin 12 H.A end
+ 515
+3590 a 515 3590 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.3.7) cvn H.B /DEST
+pdfmark end
+ 515 3590 a 92 x Fd(3.7)99 b(Missing)26
+b(parts)515 3841 y Fj(Carpet)15 b Fk(does)j(not)g(handle)f(stagger)o
+(ed)g(grids.)24 b Fj(Carpet)15 b Fk(does)j(not)g(pr)o(ovide)f
+(cell-center)o(ed)515 3940 y(r)o(e\002nement.)27 b Fj(Carpet)19
+b Fk(always)i(enables)g(all)h(storage.)27 b Fj(Carpet)19
+b Fk(does)i(not)h(r)o(un)g(ef)o(\002ciently)515 4040
+y(in)f(parallel.)515 4199 y
+SDict begin H.S end
+ 515 4199 a 515 4199 a
+SDict begin 12 H.A end
+ 515
+4199 a 515 4199 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.4) cvn H.B /DEST pdfmark
+end
+ 515 4199 a 126 x Fm(4)119 b(The)30
+b(workhorse)515 4515 y Fk(While)24 b Fj(Carpet)d Fk(pr)o(ovides)h(the)i
+(necessary)f(interfaces)g(to)h(the)f(\003esh,)i(the)e(gr)o(unt)i(work)f
+(is)515 4614 y(actually)c(done)i(by)f Fj(CarpetLib)p
+Fk(.)j(This)d(thorn)h(gr)o(ew)f(fr)o(om)g(an)g(earlier)f(mesh)i(r)o
+(e\002nement)515 4714 y(of)j(mine)g(\(Erik)g(Schnetter\))f(library)g
+(that)h(was)g(independent)g(of)g(Cactus.)37 b(It)25 b(has)g(in)h(the)
+515 4814 y(mean)d(time)g(been)f(thor)o(oughly)i(changed,)f(and)g(it)g
+(does)g(not)g(make)g(sense)g(any)g(mor)o(e)g(to)515 4913
+y(use)k(it)g(independent)h(of)f(Cactus.)44 b Fj(CarpetLib)24
+b Fk(contains)k(of)f(thr)o(ee)g(major)g(parts:)38 b(a)27
+b(set)1926 5255 y(8)p eop end
+%%Page: 9 9
+TeXDict begin 9 8 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232 a
+515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.9) cvn H.B /DEST pdfmark
+end
+ 515 232 a 291 x Fk(of)27
+b(generic)f(useful)h(helpers,)h(the)f(grid)g(hierar)o(chy)f(and)g(data)
+g(handling,)j(and)d(interpo-)515 623 y(lation)e(operators.)34
+b(Especially)23 b(the)h(latter)f(could)h(pr)o(obably)f(be)h(separated)e
+(out.)35 b(While)515 722 y Fj(CarpetLib)17 b Fk(is)k(written)g(in)g
+(C++,)g(the)g(interpolators)g(ar)o(e)f(written)h(in)i(F)t
+Fa(O)t(R)r(T)t(R)t(A)t(N)t Fk(7)t(7)r(.)515 872 y
+SDict begin H.S end
+ 515
+872 a 515 872 a
+SDict begin 12 H.A end
+ 515 872 a 515 872 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.4.1) cvn H.B /DEST
+pdfmark end
+ 515 872 a 93 x Fd(4.1)99
+b(The)25 b(helpers)515 1123 y Fk(The)32 b(helpers)f(corr)o(espond)h
+(closely)g(to)g(Carpet's)f(terminology)-9 b(.)61 b(A)31
+b(class)h Fj(vect<T,D>)515 1223 y Fk(pr)o(ovides)22 b(small)g
+Fj(D)p Fk(-dimensional)h(vectors)f(of)h(the)f(type)h
+Fj(T)p Fk(,)f(with)h(all)f(the)h(operators)f(that)515
+1322 y(one)i(has)g(learned)e(to)j(enjoy)f(fr)o(om)g(Haskell)f(and)h
+(Fortran)f(90.)34 b(A)23 b Fj(vect)f Fk(corr)o(esponds)i(to)515
+1422 y(a)h(grid)h(point)g(location.)42 b(The)26 b(class)g
+Fj(bbox<T,D>)c Fk(pr)o(ovides)j Fj(D)p Fk(-dimensional)h(bounding)515
+1522 y(boxes)d(using)h(type)e Fj(T)h Fk(as)g(indices.)32
+b(A)23 b Fj(bbox)e Fk(de\002nes)i(the)g(location)h(and)e(shape)h(of)g
+(a)f(grid)515 1621 y(patch.)42 b(Finally)-9 b(,)28 b
+Fj(bboxset<T,D>)21 b Fk(is)27 b(a)f(collection)i(of)e
+Fj(bbox)p Fk(es.)41 b Fj(bboxsets)23 b Fk(ar)o(e)i(a)h(useful)515
+1721 y(extension)18 b(of)g(the)f(algebra)g(of)g(bboxes,)h(as)f(it)h
+(closes)g(the)g Fj(bbox)e Fk(algebra)g(under)h(the)h(union)515
+1820 y(operation.)639 1920 y(The)29 b(\002les)g Fj(CarpetLib/src/d)o
+(efs)o(.*)22 b Fk(de\002nes)28 b(useful)h(small)f(helpers)h(and)f
+(instan-)515 2020 y(tiates)41 b(the)i(STL)e(templates.)88
+b Fj(CarpetLib/src/dis)o(t.*)35 b Fk(pr)o(ovides)41 b(some)i(r)o
+(outines)515 2119 y(ar)o(ound)20 b(MPI.)g(Carpet)g(is)h(closely)g
+(coupled)g(to)g(MPI)f(and)g(does)h(not)h(work)f(without)h(it.)639
+2219 y(\(Instead)i(of)h(inserting)g(switches)g(into)h(Carpet)d(to)i
+(make)f(it)h(work)g(without)h(MPI,)e(it)515 2319 y(would)g(make)f(mor)o
+(e)g(sense)h(to)g(use)g(a)f(dummy)h(version)g(of)f(MPI.)g(PETSc)g(does)
+g(contain)515 2418 y(such)e(a)f(dummy)i(version.)k(It)21
+b(is)g(also)g(easily)g(possible)g(to)g(use)g(a)f(fr)o(ee)g(MPI)g
+(version)i(such)515 2518 y(as)c(MPICH)h(and)f(use)h(that)f(to)h(r)o(un)
+h(on)f(a)f(single)i(pr)o(ocessor)-6 b(.)24 b(However)-6
+b(,)19 b(I)f(cannot)i(see)e(any)515 2617 y(r)o(eal)h(need)i(for)f
+(making)h(Carpet)f(work)h(without)h(MPI.\))515 2767 y
+SDict begin H.S end
+
+515 2767 a 515 2767 a
+SDict begin 12 H.A end
+ 515 2767 a 515 2767 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.4.2) cvn H.B /DEST
+pdfmark end
+ 515 2767
+a 93 x Fd(4.2)99 b(The)25 b(grid)g(hierarchy)515 3018
+y Fk(The)f(grid)h(hierar)o(chy)f(is)h(described)f(by)g(a)h(set)f(of)h
+(classes.)37 b(Except)24 b(for)h(the)g(actual)e(data,)515
+3118 y(all)d(str)o(uctur)o(es)h(and)f(all)h(information)g(is)g(r)o
+(eplicated)e(on)j(all)e(pr)o(ocessors.)515 3284 y Fj(gh)40
+b Fk(is)29 b(a)e(grid)h(hierar)o(chy)-9 b(.)46 b(It)28
+b(describes,)g(for)g(each)f(r)o(e\002nement)h(level,)h(the)f(location)h
+(of)722 3384 y(the)e(grid)g(patches.)43 b(This)28 b Fj(gh)e
+Fk(does)g(not)i(contain)f(ghost)h(zones)f(or)g(pr)o(olongation)722
+3483 y(boundaries.)f(Ther)o(e)19 b(exists)i(only)h(one)f(common)h
+Fj(gh)e Fk(for)h(all)f(grid)h(functions.)515 3649 y Fj(dh)40
+b Fk(is)21 b(a)e(data)f(hierar)o(chy)-9 b(.)25 b(It)19
+b(extends)h(the)g(notion)h(of)f(a)f Fj(gh)g Fk(by)h(ghost)h(zones)f
+(and)f(pr)o(olon-)722 3749 y(gation)i(boundaries.)26
+b(The)20 b Fj(dh)g Fk(does)h(most)g(of)g(the)g(bookkeeping)g(work,)g
+(deciding)722 3849 y(which)30 b(grid)e(patches)g(interact)g(with)i
+(what)e(other)h(grid)f(patches)h(thr)o(ough)g(syn-)722
+3948 y(chr)o(onisation,)c(pr)o(olongation,)f(r)o(estriction,)f(and)g
+(boundary)g(pr)o(olongation.)33 b(Un-)722 4048 y(expected)23
+b(situations)i(ar)o(e)d(often)i(caught)g(in)g(one)g(of)g
+Fj(dh)p Fk('s)g(many)g(self)f(checks.)35 b(As)722 4147
+y(all)21 b(grid)h(functions)g(have)f(the)g(same)g(number)h(of)f(ghost)h
+(zones,)g(ther)o(e)e(exists)i(also)722 4247 y(only)g(one)f
+Fj(dh)f Fk(for)h(all)f(grid)h(functions.)515 4413 y Fj(th)40
+b Fk(is)29 b(a)f(time)g(hierar)o(chy)-9 b(.)47 b(It)29
+b(extends)f(the)g(notion)i(of)e(a)g Fj(gh)f Fk(by)i(multiple)g(time)f
+(levels.)722 4513 y(Ther)o(e)i(exists)g(one)h Fj(th)f
+Fk(per)g(grid)g(function)h(gr)o(oup.)54 b(This)31 b(is)g(a)f(small)h
+(class)f(that)722 4612 y(keeps)25 b(track)e(of)i(the)g(curr)o(ent)e
+(time)i(on)g(the)g(dif)o(fer)o(ent)d(r)o(e\002nement)j(levels.)36
+b(\(Note)722 4712 y(that)21 b(dif)o(fer)o(ent)e(r)o(e\002nement)h
+(levels)h(usually)g(live)g(at)f(dif)o(fer)o(ent)f(times.\))515
+4878 y Fj(gf)40 b Fk(is)24 b(a)f(grid)g(function)h(of)f(a)g(certain)f
+(variable)g(type.)33 b(Ther)o(e)22 b(is)i(one)f(instance)h(of)f
+Fj(gf)f Fk(for)722 4978 y(every)i(grid)f(function,)i(whether)g(it)f
+(has)g(storage)f(or)h(not.)36 b(Each)23 b Fj(gf)g Fk(is)i(associated)
+1926 5255 y(9)p eop end
+%%Page: 10 10
+TeXDict begin 10 9 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232
+a 515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.10) cvn H.B /DEST pdfmark
+end
+ 515 232 a 722 523 a Fk(with)30
+b(a)e Fj(dh)f Fk(and)h(a)g Fj(th)g Fk(and)g(holds)h(the)g(storage)f
+(for)g(all)h(levels)f(and)g(all)h(patches.)722 623 y(It)c(pr)o(ovides)g
+(interfaces)f(to)i(access)e(and)h(modify)g(these)h(data,)f(either)g
+(dir)o(ectly)f(or)722 722 y(thr)o(ough)18 b(interpolation)g(operators.)
+24 b Fj(gf)16 b Fk(also)h(handles)g(the)h(data)d(movement)j(dur)o(-)722
+822 y(ing)k(a)e(r)o(egridding)g(operation.)515 988 y
+Fj(ggf)40 b Fk(is)25 b(an)f(abstract)g(super)o(class)f(of)i
+Fj(gf)e Fk(which)j(is)f(independent)f(of)g(the)h(variable)e(type.)722
+1088 y(This)31 b(is)f(necessary)g(in)g(C++)h(to)f(pr)o(event)f(egr)o
+(egious)h(code)g(duplication)g(due)g(to)722 1187 y(class)c(templates.)
+41 b(Most)26 b(of)g(the)g(r)o(outines)h(in)f Fj(gf)f
+Fk(ar)o(e)g(actually)g(declar)o(ed)f(in)i Fj(ggf)p Fk(,)722
+1287 y(and)19 b(they)g(either)f(ar)o(e)g(virtual)g(functions)i
+(themselves,)f(or)g(they)h(call)e(virtual)g(func-)722
+1386 y(tions)k(that)f(ar)o(e)e(declar)o(ed)g(in)i Fj(gf)p
+Fk(.)515 1553 y Fj(data)40 b Fk(is)18 b(a)g(container)g(for)g(a)g(grid)
+g(patch)g(of)g(a)g(certain)g(variable)f(type.)24 b(This)19
+b(is)g(a)f(glori\002ed)722 1652 y(multi-dimensional)31
+b(array)d(that)h(knows)i(how)f(to)g(move)f(between)g(pr)o(ocessors.)722
+1752 y Fj(data)e Fk(is)i(not)g(only)h(used)e(to)h(stor)o(e)g(the)f
+(grid)h(patches)f(that)g(make)h(up)f(a)g Fj(gf)p Fk(,)i(it)f(is)722
+1851 y(also)i(used)f(to)g(move)h(parts)e(of)h(patches)g(ar)o(ound,)i
+(e.g.)d(for)h(synchr)o(onisation)i(or)722 1951 y(pr)o(olongation.)515
+2117 y Fj(gdata)39 b Fk(is)24 b(an)g(abstract)f(super)o(class)g(of)h
+Fj(data)e Fk(for)i(much)h(the)f(same)g(r)o(easons)f(as)h(for)f
+Fj(ggf)p Fk(.)722 2217 y(All)e(information)h(that)e(is)h(independent)g
+(of)g(the)g(variable)e(type)i(is)g(kept)g(in)g Fj(gdata)p
+Fk(.)515 2367 y
+SDict begin H.S end
+ 515 2367 a 515 2367 a
+SDict begin 12 H.A end
+ 515 2367 a 515
+2367 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.4.3) cvn H.B /DEST
+pdfmark end
+ 515 2367 a 92 x Fd(4.3)99 b(The)25 b(interpolators)515
+2617 y Fk(Ther)o(e)e(ar)o(e)h(thr)o(ee)g(kinds)h(of)f
+(\223interpolators\224:)33 b(for)25 b(pr)o(olongation,)h(for)e(r)o
+(estricting,)h(and)515 2717 y(for)18 b(copying.)26 b(The)19
+b(latter)f(is)h(only)h(a)f(glori\002ed)g(hyperslabber)f(that)h(moves)g
+(parts)f(of)h(grid)515 2817 y(patches)h(between)h(grid)f(patches.)639
+2916 y(The)28 b(interpolators)g(used)g(for)g(r)o(estriction)g(and)f(pr)
+o(olongation)i(ar)o(e)e(dif)o(fer)o(ent)e(fr)o(om)515
+3016 y(those)36 b(used)f(for)h(the)f(generic)h(interpolation)g
+(interface)f(in)h(Cactus.)69 b(The)36 b(r)o(eason)f(is)515
+3116 y(that)21 b(interpolation)i(is)f(expensive,)g(and)f(hence)h(the)g
+(interpolation)g(operators)g(used)f(for)515 3215 y(r)o(estriction)31
+b(and)g(pr)o(olongation)i(have)d(to)i(be)f(str)o(eamlined)g(and)g
+(optimised.)58 b(As)32 b(one)515 3315 y(knows)22 b(the)g(location)f(of)
+h(the)f(sampling)h(points)g(for)f(the)g(interpolation,)h(one)g(can)f
+(calcu-)515 3415 y(late)16 b(the)g(coef)o(\002cients)g(in)h(advance,)f
+(saving)g(much)h(time)g(compar)o(ed)e(to)i(calling)f(a)g(generic)515
+3514 y(interpolation)21 b(interface.)515 3664 y
+SDict begin H.S end
+ 515 3664
+a 515 3664 a
+SDict begin 12 H.A end
+ 515 3664 a 515 3664 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsubsection.4.3.1) cvn H.B
+/DEST pdfmark end
+ 515 3664 a 76 x Fl(4.3.1)81
+b(Restriction)515 3898 y Fk(Restriction)22 b(operators)f(move)h(data)e
+(fr)o(om)g(\002ner)i(to)f(coarser)g(grids.)27 b(They)21
+b(ar)o(e)f(typically)515 3998 y(called)j(after)f(both)j(the)f(coarse)f
+(and)g(the)h(\002ne)g(grid)g(have)f(been)h(advanced)e(to)i(the)g(same)
+515 4098 y(time,)18 b(and)e(they)h(overwrite)g(parts)g(of)g(the)g
+(coarse)f(grid)h(with)h(information)g(fr)o(om)f(the)g(\002ne)515
+4197 y(grid,)i(coupling)h(the)f(coarse)f(grid)h(evolution)h(to)g(the)f
+(\002ne)g(grid)g(evolution.)26 b(In)19 b(principle,)515
+4297 y(ther)o(e)d(could)h(be)g(r)o(estriction)g(operators)g(with)h(dif)
+o(fer)o(ent)d(or)o(ders)i(of)g(accuracy)-9 b(.)23 b(Curr)o(ently)515
+4396 y(only)e(a)g(single)g(r)o(estriction)g(operator)f(is)h
+(implemented)g(that)g(uses)g(sampling.)639 4496 y(The)165
+b(interface)e(of)i(the)f(r)o(estriction)h(operator)f(\(see)g(\002le)515
+4596 y Fj(CarpetLib/src/re)o(st)o(ri)o(ct)p 1485 4596
+27 4 v 25 w(3d)p 1598 4596 V 31 w(real8.F77)p Fk(\))16
+b(is)515 4762 y Fj(subroutine)39 b(restrict_3d_real8)776
+4861 y(\(src,)j(srciext,)e(srcjext,)g(srckext,)820 4961
+y(dst,)i(dstiext,)e(dstjext,)g(dstkext,)1905 5255 y Fk(10)p
+eop end
+%%Page: 11 11
+TeXDict begin 11 10 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232
+a 515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.11) cvn H.B /DEST pdfmark
+end
+ 515 232 a 820 523 a Fj(srcbbox,)40
+b(dstbbox,)g(regbbox\))645 722 y(integer)172 b(srciext,)40
+b(srcjext,)g(srckext)645 822 y(CCTK_REAL8)g(src\(srciext,srcj)o(ex)o
+(t,s)o(rc)o(kex)o(t\))645 922 y(integer)172 b(dstiext,)40
+b(dstjext,)g(dstkext)645 1021 y(CCTK_REAL8)g(dst\(dstiext,dstj)o(ex)o
+(t,d)o(st)o(kex)o(t\))645 1121 y(integer)172 b(srcbbox\(3,3\),)38
+b(dstbbox\(3,3\),)g(regbbox\(3,3\))515 1256 y Fk(This)33
+b(interpolator)g(assumes)f(that)h(space)f(has)g(thr)o(ee)g(dimensions.)
+62 b(The)33 b(arrays)e Fj(src)515 1355 y Fk(and)22 b
+Fj(dst)g Fk(contain)h(the)g(sour)o(ce)g(\(\002ne\))f(and)h(destination)
+g(\(coarse\))f(grid)h(patches,)g(stor)o(ed)515 1455 y(in)35
+b(Fortran)g(or)o(der)-6 b(,)37 b(as)d(is)h(customary)g(in)g(Cactus.)68
+b(The)34 b(arrays)g Fj(src)g Fk(and)g Fj(dst)f Fk(have)515
+1555 y(the)40 b(shapes)f Fj(\(srciext,srcjext)o(,sr)o(ck)o(ext)o(\))33
+b Fk(and)40 b Fj(\(dstiext,dstjex)o(t,d)o(st)o(ke)o(xt\))o
+Fk(,)515 1654 y(r)o(espectively)19 b(\227)i(this)h(corr)o(esponds)e(to)
+h(the)g Fj(cctk)p 2117 1654 27 4 v 30 w(lsh)f Fk(\002eld)g(in)h(the)g
+Fj(cGH)f Fk(str)o(uctur)o(e.)639 1754 y(The)25 b(thr)o(ee)e(bboxes)i
+(describe)e(the)i(location)g(and)f(shape)g(of)h(the)f(two)i(arrays)d
+(and)h(of)515 1853 y(the)k(r)o(egion)g(that)f(should)i(be)f(pr)o
+(olongated)f(in)h(the)g(global)h(grid)e(point)i(index)f(system.)515
+1953 y(That)22 b(is,)h(while)g(the)f(two)h(arrays)f Fj(src)f
+Fk(and)h Fj(dst)f Fk(ar)o(e)g(stor)o(ed)g(as)i(dense)f(arrays,)f(they)i
+(cor)o(-)515 2053 y(r)o(espond)k(to)h(grid)f(patches)h(which)g(in)g
+(general)f(have)h(non-unit)g(strides)g(in)g(the)g(global)515
+2152 y(index)18 b(system.)25 b(As)18 b(pr)o(olongation)g(is)h(an)f
+(operation)g(that)g(is)g(performed)f(between)h(over)o(-)515
+2252 y(lapping)23 b(grids,)h(the)g(pr)o(olongation)g(r)o(egion)f(is)h
+(the)f(same)g(for)h(both)g(the)f(coarse)g(and)g(the)515
+2352 y(\002ne)e(grids.)639 2451 y(A)32 b(few)f(constraints)i(must)f
+(hold)g(for)g(these)g(data.)57 b(For)32 b(example,)h(the)f(shapes)g(of)
+515 2551 y(the)22 b(arrays)f(must)i(be)f(the)g(same)g(as)g(the)g
+(shapes)g(de\002ned)g(by)g(the)g(bounding)h(boxes;)g(the)515
+2650 y(strides)e(in)h(the)f(bounding)i(boxes)e(must)h(dif)o(fer)e(by)h
+(the)h(r)o(e\002nement)f(factor;)f(the)i(bound-)515 2750
+y(ing)j(boxes)h(must)f(overlap,)h(and)e(the)h(r)o(egion's)h(bounding)g
+(box)f(must)h(be)e(contained)i(in)515 2850 y(the)j(arrays)g(bounding)h
+(boxes,)i(etc.)51 b(Checking)30 b(these)g(constraints)g(makes)g(up)f
+(about)515 2949 y(thr)o(ee)20 b(quarters)g(of)h(the)g(r)o(estriction)g
+(r)o(outine.)639 3049 y(The)f(bboxes)g(themselves)g(ar)o(e)f(her)o(e)g
+(r)o(epr)o(esented)e(as)j(Fortran)g(arrays.)k(Their)19
+b(mean-)515 3149 y(ing)i(is)515 3283 y Fj(bbox\(:,1\))38
+b Fk(lower)21 b(boundary)f(\(inclusive\))515 3408 y Fj(bbox\(:,2\))38
+b Fk(upper)20 b(boundary)g(\(inclusive\))515 3533 y Fj(bbox\(:,3\))38
+b Fk(stride)515 3664 y
+SDict begin H.S end
+ 515 3664 a 515 3664 a
+SDict begin 12 H.A end
+ 515 3664
+a 515 3664 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsubsection.4.3.2) cvn H.B
+/DEST pdfmark end
+ 515 3664 a 88 x Fl(4.3.2)81 b(Prolongation)515
+3910 y Fk(Ther)o(e)20 b(ar)o(e)g(many)i(pr)o(olongation)g(operators)f
+(implemented.)28 b(They)22 b(dif)o(fer)e(in)h(the)h(or)o(der)515
+4010 y(of)c(their)h(interpolation)g(in)g(space)e(\(\002rst)i(and)f
+(thir)o(d,)g(or)g(linear)g(and)g(cubic)g(interpolation\))515
+4110 y(and)i(in)i(time)f(\(\002rst)g(and)g(second,)g(or)g(linear)g(and)
+g(quadratic\).)k(The)c(higher)h(the)f(or)o(der)f(of)515
+4209 y(interpolation,)h(the)g(lar)o(ger)e(is)i(the)f(stencil,)h(i.e.)f
+(the)h(mor)o(e)f(ghost)i(zones)e(and)g(time)h(levels)515
+4309 y(ar)o(e)e(necessary)-9 b(,)20 b(and)g(the)h(mor)o(e)g(expensive)f
+(the)h(operation)g(becomes.)639 4408 y(The)217 b(pr)o(olongation)h
+(operators)f(live)g(in)g(the)h(\002les)515 4508 y Fj(CarpetLib/src/pr)o
+(ol)o(on)o(gat)o(e)p 1572 4508 27 4 v 25 w(3d)p 1685
+4508 V 31 w(real8*.F77)p Fk(,)65 b(and)60 b(the)h(\002le)f(names)g
+(indicate)515 4608 y(their)41 b(or)o(ders:)65 b Fi(n)q
+Fj(tl)40 b Fk(stands)h(for)g Fi(n)h Fk(time)f(levels,)46
+b(and)40 b Fj(o)q Fi(n)h Fk(stands)g(for)g(an)f(or)o(der)h
+Fi(n)515 4707 y Fk(interpolation)21 b(in)h(space)e(\(which)h(uses)g(a)f
+(stencil)h(that)g(is)h Fi(n)d Fg(+)f Fk(1)j(grid)g(points)g(wide\).)639
+4807 y(Apart)30 b(fr)o(om)h(taking)g(mor)o(e)g(than)h(one)f
+Fj(src)f Fk(array)g(ar)o(gument)h(when)g(using)h(mor)o(e)515
+4907 y(than)23 b(one)g(time)g(level,)g(the)g(interface)e(to)j(the)f(pr)
+o(olongation)g(operator)f(is)i(equivalent)f(to)515 5006
+y(that)d(of)h(the)g(r)o(estriction)g(operator)f(described)g(above.)1905
+5255 y(11)p eop end
+%%Page: 12 12
+TeXDict begin 12 11 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232
+a 515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.12) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.5) cvn H.B /DEST pdfmark
+end
+ 515 440 a 86 x Fm(5)119
+b(Regridding,)30 b(how)g(and)g(where)e(and)i(when)515
+715 y Fk(The)25 b(thorn)h Fj(Carpet)d Fk(pr)o(ovides)h(a)h(r)o(outine)g
+Fj(RegisterRegridRou)o(tin)o(e)19 b Fk(wher)o(e)25 b(one)g(can)515
+815 y(r)o(egister)20 b(a)h(r)o(egridding)g(r)o(outine.)27
+b(Such)21 b(a)f(r)o(egridding)h(r)o(outine)g(does)g(not)h(have)f(to)h
+(actu-)515 914 y(ally)k(r)o(egrid)g(anything,)i(it)f(only)g(has)g(to)g
+(r)o(eturn)e(the)i(new)g(desir)o(ed)e(grid)h(hierar)o(chy)-9
+b(,)27 b(i.e.)515 1014 y(basically)20 b(a)g(description)h(of)g(a)f
+Fj(gh)p Fk(.)639 1114 y(Thorn)g Fj(CarpetRegrid)15 b
+Fk(pr)o(ovides)k(a)g(user)g(interface)f(to)i(the)g(r)o(egridding)f(r)o
+(outines)h(in)515 1213 y(Carpet.)j(All)18 b(it)g(does)g(is)h(take)e(a)h
+(r)o(egridding)f(speci\002cation)h(fr)o(om)g(the)g(user)g(and)g
+(translate)515 1313 y(that)24 b(into)i(a)e Fj(gh)p Fk(.)36
+b(As)25 b(usual,)g(the)g(parts)f(wher)o(e)g(the)h(computer)g(has)f(to)h
+(listen)h(to)f(what)f(a)515 1412 y(human)d(being)g(intends)g(ar)o(e)f
+(the)h(most)g(complicated.)639 1512 y(As)26 b(humans)h(ar)o(e)e
+(usually)i(mor)o(e)e(adept)h(at)f(getting)i(used)f(to)h(computers)f
+(than)h(the)515 1612 y(other)e(way)g(ar)o(ound,)g(it)g(is)h(useful)f
+(and)f(pr)o(obably)h(necessary)f(to)i(get)f(acquainted)f(with)515
+1711 y(how)d(Carpet)f(thinks)i(in)f(or)o(der)f(to)h(make)g(it)g(do)f
+(what)h(is)g(intended.)639 1811 y(Carpet)27 b(does)h(not)h(deal)e(with)
+i(r)o(eal-valued)c(coor)o(dinates.)47 b(Carpet)27 b(deals)g(with)i(in-)
+515 1911 y(teger)23 b(grid)h(point)h(locations)g(only)-9
+b(,)26 b(and)e(it)g(counts)h(grid)f(points)h(in)g(terms)f(of)g(the)g
+(\002nest)515 2010 y(possible)e(grid)g(\(not)g(the)g(\002nest)g(curr)o
+(ently)f(existing)i(grid\).)28 b(The)21 b(\002nest)i(possible)f(grid)g
+(is)515 2110 y(de\002ned)j(by)h(the)g(maximum)h(number)f(of)g(r)o
+(e\002nement)f(levels)h(set)g(in)h Fj(Carpet)p Fk(.)38
+b(Chang-)515 2209 y(ing)19 b(this)h(parameter)e(will)i(change)f(the)g
+(meaning)h(of)f(many)g(other)g(values)g(in)h(parameter)515
+2309 y(\002les,)33 b(such)e(as)f(e.g.)h(iteration)f(numbers)h
+(\(termination,)j(output\).)55 b(The)31 b(only)g(param-)515
+2409 y(eter)g(that)h(is)h(speci\002ed)f(in)g(terms)g(of)h(the)f
+(coarsest)g(grid)g(is)g(the)g(shape)g(of)g(the)h(coars-)515
+2508 y(est)38 b(grid)h(in)g(the)f Fj(global)p 1381 2508
+27 4 v 29 w(*)g Fk(parameters)g(of)g Fj(Carpet)p Fk(.)77
+b(I)38 b(ther)o(efor)o(e)f(suggest)i(to)g(set)515 2608
+y Fj(max)p 652 2608 V 30 w(refinement)p 1122 2608 V 27
+w(levels)25 b Fk(to)j(some)f(lar)o(ge)g(number)g(\(e.g.)f(10\),)i(and)e
+(then)i(not)g(chang-)515 2708 y(ing)21 b(it)g(while)h(experimenting)f
+(with)g(other)g(parameter)e(settings.)639 2807 y(Carpet)d(also)i(does)f
+(not)h(know)g(about)g(symmetries.)25 b(When)17 b(specifying)h(the)f
+(location)515 2907 y(of)k(a)g(\002ne)g(grid)h(in)f(terms)h(of)f(grid)g
+(points,)h(it)g(is)g(the)f(r)o(esponsibility)h(of)g(the)f(user)g(to)h
+(place)515 3007 y(the)32 b(\002ne)g(grid)g(corr)o(ectly)-9
+b(.)59 b(For)32 b(that)g(one)h(has)f(to)h(take)e(ghost)i(zones)g(and)e
+(symmetry)515 3106 y(zones)21 b(into)g(account.)639 3206
+y(It)c(is)g(also)f(possible)i(to)e(specify)h(the)f(\002ne)h(grid)g
+(locations)g(in)g(terms)g(of)f(r)o(eal-valued)e(co-)515
+3305 y(or)o(dinates.)32 b(In)23 b(this)h(case,)f Fj(CarpetRegrid)18
+b Fk(translates)23 b(these)g(into)h(integer)f(grid)g(points.)515
+3405 y(A)i(good)g(translation)h(is)g(quite)g(complicated,)f(because)g
+(it)g(has)h(to)f(take)g(many)h(user)f(ex-)515 3505 y(pectations)g(into)
+g(account,)g(such)h(as)e(the)h(location)g(of)g(the)g(origin,)h
+(staggering)f(with)g(r)o(e-)515 3604 y(spect)19 b(to)h(the)g(origin,)g
+(symmetry)g(boundary)g(conditions,)h(the)e(number)h(of)f(ghost)i(zones)
+515 3704 y(etc.)40 b(The)26 b(curr)o(ent)f(translation)h(is)h(naive)e
+(and)g(leads)h(to)g(unexpected)f(r)o(esults)g(in)i(many)515
+3804 y(cases.)32 b(A)23 b(r)o(outine)g(that)h(does)f(most)h(of)f(the)h
+(time)f(what)h(the)f(user)g(expects)g(while)h(being)515
+3903 y(easy)g(to)i(understand)f(is)g(pr)o(obably)f(important)i(for)f
+(the)g(ease)f(of)i(use)f(of)g(Carpet,)g(but)g(it)515
+4003 y(might)d(be)e(some)h(time)g(until)h(it)f(is)g(written.)639
+4102 y Fj(CarpetRegrid)e Fk(contains)25 b(also)f(a)f(r)o(outine)h(that)
+g(measur)o(es)f(the)g(err)o(or)-6 b(,)24 b(as)f(pr)o(ovided)515
+4202 y(in)d(a)g(grid)g(function,)g(and)g(the)g(automatically)g(decides)
+f(wher)o(e)h(to)g(r)o(e\002ne.)25 b(This)20 b(is)h(called)515
+4302 y(AMR)f(\(adaptive)f(mesh)i(r)o(e\002nement\))g(if)f(it)h(works)h
+(ef)o(\002ciently)-9 b(.)639 4401 y(Much)30 b(of)g Fj(CarpetRegrid)24
+b Fk(is)31 b(just)f(slabbed)f(together)h(in)g(an)g(attempt)f(to)h
+(\002nd)h(out)515 4501 y(what)f(people)h(need)f(and)g(expect.)54
+b(The)31 b(thorn)g(is)g(a)g(mess,)i(and)d(a)g(complete)h(r)o(ewrite)515
+4601 y(might)20 b(be)f(a)g(good)h(idea,)e(once)i(one)f(knows)i(what)e
+(exactly)g(the)g(r)o(ewritten)g(thorn)h(should)515 4700
+y(do.)1905 5255 y(12)p eop end
+%%Page: 13 13
+TeXDict begin 13 12 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a 515 232 a
+SDict begin H.S end
+ 515 232
+a 515 232 a
+SDict begin H.R end
+ 515 232 a 515 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.13) cvn H.B /DEST pdfmark
+end
+ 515 232 a 515 440 a
+SDict begin H.S end
+ 515
+440 a 515 440 a
+SDict begin 12 H.A end
+ 515 440 a 515 440 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.6) cvn H.B /DEST pdfmark
+end
+ 515 440 a 86 x Fm(6)119
+b(Random)31 b(ramblings)515 715 y Fk(Carpet)c(uses)i(the)g(STL,)f
+(because)g(the)g(STL)g(pr)o(ovides)g(very)h(useful)f(container)h
+(classes)515 815 y(such)e(as)g(vectors,)i(sets,)f(and)f(lists.)46
+b(W)-6 b(riting)27 b(these)h(abstract)e(datatypes)g(oneself)h(does)515
+914 y(not)21 b(make)f(sense)g(in)h(these)f(times.)26
+b(It)21 b(makes)f(much)h(mor)o(e)f(sense)g(to)h(politick)g(computer)515
+1014 y(administrators)g(to)g(upgrade)e(their)i(softwar)o(e.)639
+1114 y(The)h(STL)f(and)h Fj(CarpetLib)p Fk('s)c(classes)k(need)f(to)h
+(be)g(instantiated)g(explicitly)-9 b(.)29 b(Several)515
+1213 y(compilers)i(have)g(several)f(\223automatic\224)g(schemes)h(that)
+g(handle)g(all)g(template)f(issues)515 1313 y(\223just)g(\002ne\224.)53
+b(Except)29 b(they)h(don't.)54 b(One)30 b(wants)g(to)h(select)f(the)g
+(following:)45 b(No)30 b(auto-)515 1412 y(matic)e(inclusion)h(of)f
+Fj(.cc)f Fk(\002les,)j(no)e(automatic)g(template)g(instantiation)h(at)e
+(link)i(time.)515 1512 y(Instead,)20 b(most)h(templates)f(ar)o(e)f
+(instantiated)h(explicitly)h(by)f Fj(CarpetLib)p Fk(.)i(It)e(is)h(also)
+f(nec-)515 1612 y(essary)27 b(to)g(specify)g(to)g(instantiate)h(used)f
+(templates)f(automatically)-9 b(.)45 b(The)27 b(explicit)g(in-)515
+1711 y(stantiations)32 b(of)f Fj(CarpetLib)p Fk('s)d(classes)j(live)g
+(in)h(the)f Fj(.cc)f Fk(\002les)i(corr)o(esponding)f(to)h(the)515
+1811 y Fj(.hh)18 b Fk(\002le)i(that)g(de\002ne)f(the)h(templates.)25
+b(The)20 b(STL)f(templates)g(ar)o(e)f(instantiated)i(in)g(the)g(\002le)
+515 1911 y Fj(CarpetLib/src/de)o(fs)o(.c)o(c)p Fk(.)639
+2010 y(Carpet)e(makes)h(extensive)f(use)h(of)g(the)g
+Fj(assert\(\))d Fk(macr)o(o)i(in)h(C.)g(This)g(is)g(a)g(quick)g(and)515
+2110 y(easy)j(way)h(to)g(ensur)o(e)f(that)g(a)g(certain)h(condition)g
+(holds.)32 b(Assert)23 b(statements)g(abort)f(the)515
+2209 y(code)c(if)f(the)i(condition)g(does)f(not)h(hold.)25
+b(Although)19 b(I)f(try)g(to)h(pr)o(ovide)e(useful)h(err)o(or)f(mes-)
+515 2309 y(sages)25 b(to)h(the)f(user)-6 b(,)26 b(many)f(unexpected)g
+(cases)g(ar)o(e)f(only)i(caught)f(deep)f(inside)i(Carpet)515
+2409 y(and)g(manifest)g(themselves)h(as)g(assertion)g(failur)o(es.)41
+b(If)27 b(you)g(r)o(eport)f(an)g(assertion)h(fail-)515
+2508 y(ur)o(e,)i(it)f(is)h(vitally)f(important)h(to)f(r)o(emember)g
+(theaccompanying)g(\002le)h(name)f(and)g(line)515 2608
+y(number)-6 b(.)35 b(It)24 b(would)h(also)f(be)g(useful)g(to)h(extract)
+e(fr)o(om)g(the)h(cor)o(e)g(\002le)g(a)g(stack)g(backtrace)515
+2708 y(and)c(the)h(values)f(of)h(the)g(local)g(variables)e(of)i(the)g
+(curr)o(ent)f(stack)h(frame.)639 2807 y(Using)37 b(symmetry)f(boundary)
+g(conditions)h(such)g(as)e(octant)h(mode)g(is)h(curr)o(ently)515
+2907 y(still)e(awkwar)o(d)e(in)h(Carpet.)65 b(Ther)o(e)34
+b(ar)o(e)e(several)i(r)o(easons)g(for)g(this:)53 b Fj(CarpetRegrid)515
+3007 y Fk(does)28 b(not)g(know)h(about)f(symmetries,)i(and)e(hence)g
+(doesn't)g(take)g(them)g(into)h(account)515 3106 y(when)21
+b(choosing)h(r)o(e\002nement)e(r)o(egions.)25 b(The)c(symmetry)g
+(conditions)g(on)g(the)g(\002ner)f(grid)515 3206 y(might)i(be)f(dif)o
+(fer)o(ent)e(fr)o(om)i(the)g(conditions)i(on)e(the)h(coarser)e(grids,)h
+(and)g(the)g(symmetry)515 3305 y(thorns)31 b(cannot)f(cope)f(with)i
+(this,)h(so)f(this)f(situation)h(must)f(be)g(avoided:)42
+b(one)31 b(cannot)515 3405 y(use)24 b Fj(avoid)p 889
+3405 27 4 v 29 w(origin=yes)p Fk(,)d(because)j(the)g(\002ner)h(grids)f
+(all)h(have)e Fj(avoid)p 2797 3405 V 30 w(origin=no)d
+Fk(due)515 3505 y(to)h(the)g(vertex-centr)o(ed)d(r)o(e\002nement.)1905
+5255 y(13)p eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF