%!PS-Adobe-2.0 %%Creator: dvips(k) 5.85 Copyright 1999 Radical Eye Software %%Title: stoc2001.dvi %%Pages: 7 %%PageOrder: Ascend %%BoundingBox: 0 0 596 842 %%DocumentFonts: Helvetica-Bold Helvetica CMSY9 Times-Bold CMR9 CMMI9 %%+ CMMI6 Times-Italic Times-Roman CMSS9 CMTI9 CMR6 CMSY6 CMCSC10 CMMI5 %%+ CMR7 CMMI8 CMR8 CMBX9 CMSS8 CMR5 CMSSBX10 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -o stoc2001.ps stoc2001.dvi %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2001.04.27:1345 %%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 % @@psencodingfile@{ % author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry", % version = "0.6", % date = "1 July 1998", % filename = "8r.enc", % email = "tex-fonts@@tug.org", % docstring = "Encoding for TrueType or Type 1 fonts % to be used with TeX." % @} % % 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. % % 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. % /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 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 /.notdef /.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: 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]/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[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/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/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 %%BeginFont: CMSSBX10 %!PS-AdobeFont-1.1: CMSSBX10 1.0 %%CreationDate: 1991 Aug 20 16:43:06 % 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 (CMSSBX10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Bold) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMSSBX10 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 65 /A put dup 67 /C put dup 70 /F put dup 82 /R put dup 100 /d put dup 101 /e put dup 105 /i put dup 110 /n put dup 111 /o put dup 112 /p put dup 114 /r put dup 116 /t put dup 117 /u put dup 121 /y put readonly def /FontBBox{-71 -250 1099 780}readonly def /UniqueXX 5000806 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacee583a5c939393e012707b47e0c1f a47d284a1edc9d01a497d772bca8c543388e6dc0d1e2c4944740470e0914f65e fb0737b0851b2ba713a9a00b36d07da6bcb52920b9b59efe587734027a3c5e65 66aad332fe6fbcced1417802822a3b81d6187875263d6bbda04bbcf6e4870fee ad60f104bb3c5a766610dd11aea64a6b107b0b04439fa2888b8cc39232bb83f7 695aba81f0260cd5248b9e649cd800bcb325468d2c43f9469c605847b026bcd2 1cbf124128e8ee31aa6d4286fa6d465315407a865001dbf5f9a84d3c7974880b 04bb3fdcc784bea5fdd113f8fbd8a454347aa30bf2f5369abf0829dcd5378296 a42091f24af75e9e8310e61e74704d7d88f586944710ad7adb098ad4ef8fb0f6 34873391837c2456f1126b8b6f2a19c5f43e5c47b746fbfbe14db596bd4a5000 adaba65a30556845ae06c6e20efc20647fd0cc730d587ddcea79c40388105b0c 20782fee3f0f2257b942de0853a1ee99805fe77e1796c3d2420f5658fdf30766 0c5525634b2b530a17b104e9a21ecc2f6a30e22520eefdb6a62600acc6b6e690 358036a18b2f414ae204fd429694fd212be6ede4bf941e3257f88a03a75aaba1 59aac9d0ba10cbbb4d4458c8bb0b3894d367d6256d5577e71a7c409a6f955909 e0f05b89175e89e50d833178e230f23553979497371147f764d7d5f8c7060278 d4ff7b299631604cf2b13e03038c1d2f8a726cff45122f37597dbb6eb8dab326 f200eccbb85c7e45d16c0aef3213e6b9c6190f6cbd1d0c9b24892fe97e57f2f3 a35a9ef6f0564ae852620bbd8d333c1fe8f6423157ad465809c536e9bf60700a 6d86aa05bc4257a31cff4282186a1540d0c9f91526c436def5a58caf23890bd1 e4f862076a77ff2339272d758ade8ce76d712d09a66a486038c7526ba4ec8188 dfcb3554fc97d7896893656c3b0dd357ab78098b97b42d507072e35112e7bade 4f03b0a7802093c546be61c5c9a61562f13364ce4b089a976f9f5cb84f83a077 44631b9532e1532309e42c60407656ee331dc020c2c04dfcaeef8de0145ed640 cc6e4f5111c718d64ffd3b1c32278711bd32e1ae3ef02a322ae3e5d6b22c4376 22f7397f2da6c246972eba1ca77877b3df673d98f89ff3f9f348e432ba11884a 3e1a60b864b6afd4eb259c9753a543659f986008f217974ce8fd69a01f05a5bf 95d5a8eca27bab290cf8ca2c1c25c41948e3fc28f1577bff7dd89ed641155e9a 2d8832debe2a994da03088536b0f61857b957de7cb243f91f091e20e73d9cd9b 38b5bf79fac1c32a51425731e0a7d2c2b68210f5fd087f88702d2fc31ea66669 40041f944d192f247a2422daf5e261a2fcd544086e61acda315f13a75d25a74e 2e44518e20cd034f647b3dece1527174d5e428b42b5636a23ef17759d2d67028 38b057856a9deda028870cb64201a183eeed85c579a09b5297025033ee158911 3cfaa87b3e468956e7999944a4ec26728b4c2ff841627125a9cffbfecef637b6 7a85d49ed5dc74ff04555f83f5dfe3c0d8303f7ae8c88b8f3bc66aa780d8558b 82bd9640fcffae5eeaf4221617e2f689660902c364f74eec2b0015cbb7ce077e 505b632ab89b5a3aaec65bb5bb54e17c15775033882b5b61359552d1983a7496 f30e923f6b868532aba4a47b41c88f8e5e7e153a7937cd171f73389a418cb5dc 19564917a57b53c525ab0c97c2d6f5f198eeadc81d5ec7ab4b3066a3f5deb0d7 0c6ee5e9862009006915d8f7e69031fee8a2524396c3159b579a5f56a76437fc 34f808c6ebf4c9ffa7b9aacdb14237864cf39e3e48a263af8b3f9dce3ee74383 ba92e9f3a415be8d5f570939365523d68ebb60183405723db1fe61b04cf9cfa4 d9c67237b16041cd915cf742025ed9ce085da38a4971eddacc70a0762bacc980 0193b1fe2d5651127a79e3a9559ecd0a0956ac1c7a7e51162daecc03f6d77893 37c3495bdd7b06226760d150c760a3b9e5bbc8fa150ea6791d8c65c67b4ae788 b74169667d7fafa977a8a1dd359a3a04e008f03843a5ba584d88168c5b028568 9b92effaf25a9c258aa22f641ccc7185b93ae714b7b9ef0bff5dd7e70bc68fd9 2a1cccce3820e5820d4c7ea0a6b69b80535e86d090f5dacfab700d5ad0520a8d 02e2eb31a8015a2780e05dbd58c78becd9803794d6b3156df3f47dfb1fdf22c1 c8ed9640d2a52015fd5a96863ed4a8948afca7e4b4ca75164d54e857b50455fa 8c873aac894982c547ec5a775714ecae05a808ef39913527286d6f0317a11046 b1f96cafaddb4d775405d27b44fc015786122eadebdf2dbe7c91e3032801d4da cc286ec285ff419c847089d907899dd43438f38c5ec53f24a8caf9c45eab5e1d da8cb532ac237d46b265aecfda5d1f3af4eb967a1fc6ce8da8281bb771fe806d 25fe9e3588cebd1c7bd9e32b224f9bc9323ecfc73047f4b37b12a7b952e21859 d2dcbfe5aa289e554aa1422add48d35be41153126da4296b2b8c01258abfaffd 9a60f4a29261e226df32bbdd8a86ce368f869a668e55f03c4a8b83f03c0fb095 07a1d77ce7fb33f83e6c32b35162e132cd6819bf21884c91aa9f8fec4ba5fd13 af4b64f43b269c2b3b1bb2e50ed9edd9154cc89c8f8a7e9a968c87f04b242adc c3a3863acb012c457463e30d66e5358ebc7642a4553c7bc74a1e8791742ab11e c6d57270d7ddabed0179dd8ff2e65a07a78b1231d958fac53548c4e7ecf132b0 27a9c16205a1f6a209d37d2c190afe5ebc01dd6ddbd62c8c9915f66f3d453fd2 d495672245529124324011bb8b85a87ce29623392398b3b2395d900f4afa0511 b80dce9847d1c4d33482927876452d77df1337700d28895ed5a4814c47947451 34041af8c84692c0a9b2cfb91c6229fe9046466b645db3b8a58a9cf90c39be89 42d34c3ab9ffad6a236c88e43d7e6c8bfe8001e132a2abb0c89636235fe88ba1 775eca3086ea7903ad10e1314464b6fffb418a17353ffbeb51c0e5fa6fa09f7f 34161d03b8b6a4cab6895ef652b75e31afdbe129c643d8700284491bcf3cfc02 dd6fd06421f06c3d4a062964ac5e0a09f67fb5cef75b133f0228caf49b1c02ed 293a3c55c5c89bb557119a7779d8c6b953a6f41a4f72e6c51a8c540b6cc1fbbb e8a87d9171c9d138efb97e868b39e8d13df8ed7e5a49e8198367c785488dac0c 241a5ffca57d9780023db0eec14e45ef633b59efe8babb2576bcddf83904f852 9fd329fc877eadd9d51f531a67ad89829355f9f538aed4c1003ec64dff24b1e6 9301f8bb1ae49f4088992308cda92a9d0f82218aee7485246023031905604d93 c091f70bce0e67ae09b6af847f31e60caf2d393c20d4d2ad1799280eeddb5043 efeeb0bca9aa3743173e5cde25dd7d7d591b77a90c9c725efba0d2a167e65f0c 89fdb317d03a736392a14e1684d4310a7336436ba8e49cca5358d2a2ab5bfbc9 da308835716b715117f6ef7fc665646757ec19b414d4eb89c598bac0adaec3f0 e25769ce61427cc514db59bccba160185c23606cfaa2e89734337bd14f7ab183 774f1de879ae70c031937dec45b81f6e9ad48dc17a923bb6d763e27d6e6def84 6c3f20b8ba7ba40b16406bf45113313b4b47ff2c85e353fa1f3e33fc48af724c c205b6b63f8d36ce9f0831b84074278272a501240d89b690a62033284c46ab4a 3687f94d639595936d6bd37810e3b0a8555b8aee718e20c558ae672d5acab841 c11f69b452a13cba2d401736e5608f87fd1b4d5421ed1f061dd2ecc068023929 0152acb74dd5effb7d57b8850958c1eec97151c7ad74c7086379d2a82c0b34a8 495ffd04dfc22a52bc748b641adb9b8d5bff4df354055d7112d891eabea9ebfb 41fa07df494f784d7f07095abd804838a8b83494b6c6e4d19addba8011096cd3 2f154ebc13f735f0999709fa9b5c88f1139d25a10d84309a7ff2d6ff0a688721 d0 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR5 %!PS-AdobeFont-1.1: CMR5 1.00B %%CreationDate: 1992 Feb 19 19:55:02 % 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 (CMR5) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR5 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 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put readonly def /FontBBox{-341 -250 1304 965}readonly def /UniqueXX 5000788 def currentdict end currentfile eexec 8053514d28ec28da1630165fab262882d3fca78881823c5537fe6c3dda8ee5b8 97e17cb027f5c73fdbb56b0a7c25fc3512b55fe8f3acfbffcc7f4a382d8299cc 8fd37d3cea49dabdca92847af0560b404ef71134b0f3d99934fc9d0b4e602011 b9cfb856c23f958f3c5a2fbe0ef8587d1f5774879c324e51fcb22888b74f2415 50d7401eb990d4f3a7af635198422283cac1b6cd446ddbcbd915db9bff88844e 784c6bf7389803d9450b0c21756a017306457c7e62c1d269f306bd3402e266de fc3b5e7d8a8d2f5bf0fe6ddd40d07391df4fad4a6018dce29a2b8f692b29f202 3a7c0e66de8ed85c14f1f8492167357f51a7e84cc5d92e0fee4a71813d2ffb26 445026f89b4787516ecd1afc78f8bd19e91e9ccc9402e8c36d2449c1ff850a8a f61165aac3fe931332dd28e261b91b05edd18f44ea7d58a8f35fe88493b64aad 6bfac3a0136215fc2f4ca8e91d70c5010e6f4013e6d63b44f6fb00afdbd7cdb4 5ec5b1d9736f45cefc8a0124b815987cebd81bbe0d44dedb2d5ef37923b3d551 abb6a1cefca7868fc7bf3814ef7d7b6b1ae6e869cb77aa29e3d90b12b0dc3ff6 ec945922b5899bbf2f12e92731486d2ef1230c528bf8d7e0ae09ad7632a38966 5963de49d1ef3d65bc483e4a577b927c940f5e121169ba52f6576c85793e5fd7 7f5863c488e55bdefd5d8b2514795533aabbc12e7f51816c7e1484f1c441aa9a 66a5dc77158e79cd6692d299b95e8058b35e771a6972d2b5eb1cd6d2bb8e835d 361a6eac0c90c906aea1cd75c4412a1339dc1439f93e59917311bf20af4f2bc8 bba5a4626f75f28a47d4595c37f4019df480d9385975159142618e22e964f019 d88125210e2ef21d65baf500adf802297b24eebbf4e93c617a613f856bd0d45f e17a9480980ef83950bdb8ebf208c895ebc4a7132f0765b7c19a332ebbf8a3c9 ab65063a42e19ca9d43dec3de7aba46b9a5d24fb93d615c0a1726ab7e31c378e ab77150858535b91362ab0e2b968dee1c539964126d937f9d4980ccefa92bc81 b054996a65a13995c9c9d819ff05511cfc89cbfe67447c940405001d61be633b b771eff383fc6977ec06af30f981504260de7b9ec97359974734f495ac073935 fb30e3700679092ef5d971b6b2da0e15960f2391fa6b63c33e7f56b4a9b86951 1d3686a5e8e613a69a0add8b8c73b127ddcd397a48d785079e786d24b8638856 f5913f53eeb889f3e35521c26cdc6fd6705c1698b3db36b4bc796af520a9e580 f452cf21ba238e906630df804c33557049912a96fb3f8aaac02f407a6fd4adaf 1f89727b12ea2d85284a39ad849c5735fe523d0454e41789186cbcf2be07f3e0 9c97bb6d5cadaaae78022a4bec32c1b37af598e4116a7d4752d13e89b443a060 794a1406800b29e7614350bc9ba1332f8147c82c8e80ab049e726cdb975ce0ac 47715de4bef1ba2e54c139173e056cff9d24dbc259cc94204cdb387375ff05d3 7f640b69a74ddfeb4930b9836f9ebc23d28e8d6a256f6740cf63e1662dce3c3f 07bb9ba20511eea587d0ccf55f6d787951d8d127dfd074f9a66f643e964ee400 8ee2aa683e32eb4b73d3cbf91772b53b18d14ee7cb3169ec0a83a3c7bd22a1d8 d3973508f64a8df98ba88fe2c5cf8a82348a13eab35678cdfae1ba3ec92ad104 a42e3ad124b168abef34228d61a34ec2fe69aaaaec4e90fa976b57afc4ed2777 479cde540b2db912d8d7c7ea67906b16e7a9a3002766965be418ad319fb5a927 3f2f0bf931d0ad01c03d8d22dbb670c785b12ad5bd91718a684d13ea78630480 e9084ba9edf8666e1177dfc6037d7261e3452ff9739220757d0ff3bf23989ff6 12251d290e7f74498b3a1f955417268f4098b221de1869f0e05e70942d05fc47 e20ec208280e2c2f986af2e28b49ee382ce8e9c35c508301bd391fcaa4b2c298 2f203b641e4437bfafd7a08321b5a52be058c3dcc1dcd1601c02a470022cd3f1 470b1ca89b4f2126c6864619a84301c1a13607d3c77be643d28aa0039e5b85e6 0c0d4f854811e8b60a53cfdf0242adaf74e06c78d99be7bbc155689ab73909bf 0b33212c8856b9354528d1ea523a8fbe0acada1298bf962aabbc907b99f3efa1 7a5290e75964f4b6aab3d6386b31929b66bacb85c4cd71df516346e15ac7eb65 d5a586855d12a52d91964afad9ffc48f4171ba6a1c5a87984c83128f9af2a3b4 f8862e67ff2fbdf2f3bd4bd382c63d7de9f3070f3ea5debe9c1d0618f4d3dc43 0f632eefd41a178ec90f5bfed41115332e90049070635484e8afa0fec5e949d7 535404f03c0cd749f3ee7592e3633edf4db58a7d18fc7cc23a51d48c2a1ec7a9 3794689eb4c8eb07220e88e978abee6db50a8379023cf4e50c945afa355203ea 3ac36102b1c80e98ac17cd92f8800e94d7a5729d5e02c1c985833cfb36adb9ef 35a1fdf21614dd1f0e72c339d474b48728e2726e2cbe6d986987f2db5769c657 2ea4b358b5c1170e11a582317f2a97cf3a1b19c12248bc086af03be51b459ca6 23e8171176464a6939f3cedea6438792b927331963772fae9daec38e146a8f4a 6cc72b8ad1bd405e2cd4594f8ee167eaae211bc1229e1b6e5132b97b4ad27b2c efd8bc7628f06751b4ad07c23806e7f91c3d4551c6916dfa79257d1e1c543c09 24cf17c3cd044b2cb19088e056323effcbd211830b5194676972799cb62eb823 ea2502e9a5fec30bbd537a29c288f4dcf0b7bd558b056699118c0f37dbc0e0fa 8a7dcb5827e9f6e2117586953166dc5d8ea550f06f26ae6766f3b7a973e6bf1a e083a48161ed78c4accf91cf57a0ec44fc83decdda55a52db17bbc7533b34796 f4063af968ba619aecbba4b68f14179869d6fc5c8049ca1b398db7ea1b7980eb 04bcbfb9ba5eda4d983e34074345aca91b1822198bced876b1908e172a1b622e fc1be54ab532ba71be8de9a5bc31df059ead1fb2b72b5f2824ff8d8269871086 059d3fa563ce923eb494b2c96a6c8344e8260189138dd1553d1e73229bbc15c6 6ff0757628f431d08eb7e05d0c5ef1fc5948fc2cb50bee077c0c712f39a07dcb 3894f2bcaf66f9b809869cd1704057a0b329a0efc9d53bc8947155c525060058 1e68a77945dd593da4a9ddfa29163b9ff152052e65668baea3c5cf8b242fd769 9524b5be62c220832ed62bce95370aacd6b9933e20a5c813595d1cde3a14b157 0a0e146810efb1d0ba539951946968c51311443d14120a24bec91734a11e8b9a 487e154f68a416e08ba81869cadae8b035c31ec7eb78a8d42d341b6a3633 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSS8 %!PS-AdobeFont-1.1: CMSS8 1.0 %%CreationDate: 1991 Aug 20 17:34:12 % 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 (CMSS8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMSS8 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 74 /J put dup 76 /L put dup 78 /N put dup 82 /R put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 108 /l put dup 109 /m put dup 112 /p put dup 114 /r put dup 116 /t put dup 117 /u put readonly def /FontBBox{-65 -250 1062 761}readonly def /UniqueXX 5000801 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486858b2a4b5a0cddfaf2ed604ab4eafe1b34aa4 31dcb3f73f83d75ec7227c48db19b78c44fb70b482ee1dbcb1d7fb08e9785c6d a62bee427908096a5b8f86f98d9152081f1747b469511b7f68cc2fda6418133f 75e6ee5850bb15a694473f719dedd4eb3fdc523956ae5514f74fde80f202176d 3e75352d77200ff5199c73b37488f46538df1b6acbc3e17af9850bd8b89fc663 0e6787916e0c266869f1f8202a1cb2f5bf4546ed3de9873bd1e9bb1572197b7e 0fcb8d4c206846f1794d1b79e43c77983b03421deeeb0205c9d8f85b747baf25 c3118fec3dc1a69697e20a28951030a31b5fd44d8400022b2a09032c8f116186 d0b3bf0084651683d1f4353d366419e9aa005f18b37ee47664f1f4761802c131 35ea7a68dfd58cd20584d8b452ff7d6ced0f0f3261ace39c8ed6da7619041f7d 7ed502e80cc367ee7b4789f6fd5f2a08a6d1d8c2890bb58895e89cabc039cd1f 676d04fda04e8074e4afb4af3ed0dd2dc308d7ac12cbc1c86474e6080de6b5ee cf6d60c29277593334367d368e31b49fa6a021ba69434d42bd32f07d145c38dc 8e25e08ac4d21eaad81a51865a6095b275fa248287d5bcf4bb1197f508102c50 e2dc98863474a0ee4ce3f76d3db05a5b9b09603e15dd24621f88cc54a91c3565 cebebf88085c447b7865225ec22e77b3e5e1b040f172fc5e208766916ea0e2da aa12c34ed4cbacd23b756dc57fc0b85554e94385fe48bd972971f482910f9a54 f566833fb543c420b5668e1b128d05cbe166f43e8b4eacde00b8a092ed646f3f d76539e42738796a22da10c0055d5d9d3fdf5cf9c116b9c0f3cb028db9a37021 72617d588e1aa7ddb54971c0ae4c07fc5396228125b962ae6e772a9d03ca3035 ba67911cb8716ecbac2314fade7ef1732e08c6d03973dca95b6abe3db947d3e8 06b20a8a653ad18355789dd38fae7ad5d1559de1472adbbfde0cd934222a72a7 666b86cbc99c20972e6c42478818f637663ebfb236396930e275da277aba802f 24deca288b6fafbdeb13dd37c60d70b7c43cee2d453050b43e8a23c0709725c5 b2f5aab428bdf13281a8bc0bd7c154c9a156f4416be9985740d6aa575f9f6e5a 30d1e38f319de88bf171f80fd92400e4c22ebee912f9e30f49cef59a9e4dffd9 7c452245b1ff25e36f7efdef841c0292c8d855eefbba50d4b9c8b905a9126979 3101f7cea93ca5d3361c75d2b9812054d3d1912ff6d51eb9f91adf50b59cc9be ea1ed49a3e7927d857fd06162bd8117d084bb05222b9afb6e6c0f11fd74459a4 faf0464b332d9906c7b0b0bdf4e42676b767a73e424bf2a8eb738b3502aa3a2d b4d09a0579ed3dcf7a0a38ad498cb3b8d22f98b5e9465232c8a8c3ff79eef4ab e979032f160eb4409d46542cbae7ecc2be8a39abed7e2ee86d15e695a5f6ec12 3f92f5aab86e3125266961b41ac0e0132c8f77b42a75483ac861b5ed632814be 3dae8a11f680f9036da0b0393fdc8431313d8a6c1c8021c58fd40912e66d7c24 e3567078963918aa61b97c8aeacccf3c489ab8970a3fab08aa9a2b7123c85f36 9a415bb88625e46220e8981be77c27643dbe91e757f81fe8bcfcb3c3d669782a 880a5e0f2e6e3bed37133ca0211f497c6a13cf06c243ca9bc4ecc72921491ee1 3025d0ddfae6c33e9f9d484f6cc25daf97483e9d49246f3118d6012214bb8516 987404f612bfdbdd061d00716b1d799c82d5bf77dd6394f8c3dafef966d7701d 5fcfe86894ee8eea41933cecc4d3e2cdd0396ccf3664fc5502b447e0a05b01e1 0a0670dbea5e14ed533755841f420556135fc81ad2a7b4d19c39a16f90e8194b 3f48df9dc63ce2167822624dccb8c7162df592e007125ce18af33e7cbdb7cb34 fa4be344d3f3ce8d4d134688f45b9ef8c6b14e3d5a81a9c2e2734395187d5946 66141fe57ac41e0a6d238f6386497986ef7e68cd9c3a4f540e69b3f709eb0aeb 0a785cdcc497a0261d494efacd8037c8b5809db930aef4c677747388aa55da08 92bebfcb73d96b1fbc823a94c7ddb50248657bec04fa40fb17a0a07ab2826a13 4df9038b333d2ebfd53f5b9c98acaca1bb90619a82d3681b9d41785785a28c96 4f69e8a5b8b2dcc6eab34744dce379c3c78088288ab70c007953fe88029d70fd 961237f12721226bbc5bed1dd658250e00060ed8a2c945bb5abb2c1bd9761d99 868fd15d54aaf6e81d964aae377253ed0f5a594e66ca81c0d89af43a7f37ba7a fe58caa90e2418569d67e0acb1127f95f333ca4206e465f4e74243dfc9a01d98 8186489cbeb69075151175c408149463543f269ebb2b9fe91ce1c5c1ba9dabcd fc9d43952e8aca735de69ffcadf06314de042e86b3c23a46175ef6e8117ad62c 599a2b9f8071bcbc98e7a44d7db2433898b1cc66d4c24395f3b7c1be83894f8e f81a6c63335e82c7662e0b73bc94c33cc52dddc19fc087badf5db7a22600559f 165293e5da6e82c3e8d2fcb04c65fc903a2967846f25b3e0cf8d2371699b4e57 572df36685ce50474701f88eeac29d3765ad438c93fb04ec24c053a323d8238d 894bf9353918389fa593a586b90a3de4c6b54b5b0e0a23a0fcb849b1ebfcc640 102454d35c46ace242e75fbdabf259a685cadb7837d29faa8ce329881c10cf74 dba2ba1931285b5000d5fe11b89276b9e2d3d4e0c627b78c53619221134494e9 2cbfa05cc4def3a4d0282f24e7d84dac16e5da3a1821ea776243d72766ac38ce 50004d12655d0a89ee9eabfe3a1c0a95c3cd40693b8574c3acce6a06fe3649f9 7465ef76ffd70112987f47f451ca23b8d4bf824a8b4549b03a7817bd3b54f2e5 09fbc2216c7b8e489e75a55e8b029b047642496db58d6e0ebd7966e8c4bc601a e15dfd1a0d6c7c56fa027bb41502dd8389f085f4d676197f4a9cfffc3f245250 2c07a5d7083ec0198838faa6ba7c50499a05640e8cce87b8094ba23c4be2217d 4970fbf44170de73af6517dd154bcc101c5c9278b3d5f799b2b0589a03a6d725 8c53bb55446f0322b7801023cbae6755f7ff806fe538c3f743282b0515481a03 e1b1013b260c08c5905946e3522600e1e3309543806a95899587c1374f7c9144 75046e6b6afe069325e01f3069ade028cdf97a3b3bb9d333bec2079d339ec212 20416fcc1aed731d84799dec0dfa4f1e02260d1e192cdd85e5470513e24d8b1a c7d7f634707c0732d5e8508d689f6cdc1bba6fded921a2dfc05f5e6c7258 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 44 /comma put dup 46 /period put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 58 /colon put dup 61 /equal put dup 69 /E put dup 70 /F put dup 73 /I put dup 80 /P put dup 84 /T put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 119 /w put dup 120 /x put dup 121 /y put readonly def /FontBBox{-58 -250 1195 750}readonly def /UniqueXX 5000767 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486be79011d1f5bfae5c1f476ee6f05eb1d2caeb 269958b194521197b312fcced4867f3c8fbd030bd715d8ffda1dcd454b174e7a 1a97b59fe770e67702519d9d9b23d61ac08424d55fd4dda249cff0b56b9f3aff e9d0de215c02a52a6bc77155ff6b8cba5cd6646ba331254ac58ace650a967d3b 272331b87b6df06d5ab9d80fabe9f9ceac10139b61244814dd9fc295ed42d1b5 cd11c2e4beab318b20f51ca2c2930657e5343ab7bcf0e8870a0d12de4ffacb6c b3fdbdda481c2fcb84408d3d902e9a32070b2af6cd9317a33a42a43857c114b3 f4c3005cef9401f1c2bad3e69150d7145b79f95c9cfaf7a335b277e6435ab374 f6a3e78e124ac1e4615511f743ad65c5d778403a840310ac4902985f107fd33c 0049623e4c496cd353d2ae2a4804110c6a420a38ece5d5b235c5e35886a0987d 284e6110527b653b1b2c68c636ef423536180acadb954843eff4d9a82568a713 b682c574e30f793f093aef755c650e0e7175c2e3138695212d9fea7bd4b5805c a90985b134c6bc15a19afae0bfb3066363ca3e2568c2ac4559a69fc32feb443b 61243b4508b7524d974636855c83c8149d489b68fe18bd497116a953431251df bd09fa1d2ef66c85b997ab2f6b7c6d9d096cb43931379ff9782fa00c5f3cbd06 04265d16891ffc4f66e4a0307765d384c32aa83a4e4f89ac79ef8e76eed08450 e3466fbaf54f85324f0a4f04bd00ccc22d32e4132c51749bea28f112c2051857 423ea203df902ae80224d75efeb59094bdc5f4b6784ebeb01c38c34b695e681e 57a93ae18b657d13770300bde28833c732010ded4c8e79078d17acc3d4b521b1 6f2cac338c4f72e2e07c667227ef142d0273e5b501f24b02e9cad75fe9d18741 b36bbb29c9cd3d46964e00d8ba318912e69a6aa7ccf823c12a94fcebe9f6e598 4d574a3ca906f04d35e3640dfda313903fe4291d8b5827097730c57a5f788518 ab5d20be449e15cc6fa0d321c34c918331dfd682ae3a901d61ea33da87d469ad 899a545cdc07397a1655ded9f5428d157e7475d101a9cfac0a310e255b760d86 b672062d3422efc1e0e97fe168728656b077f43db5ab65d56a058a1172505c60 9a4567e84ba8b323a756455ec01d5e70c7918fa8665c737c59de67505cc2556e 7ccacbe9ebb3d8bdcbb2db1e473bb26119abbdf52beed10277e2fdfd6a243a66 673956f0f68c4e7454ab0fe7a9b4b69099c69cfad38624cc27f087496b5ff247 c253221dc06fab8369bf2cd1fd9128efd004dec574332fdcde2af3b1f4efc012 68b75e7459c3efbf2e5c97053fe6d2b13395d18dee58c09bc17c4f10e8a8666b 2a40ed7c18168d1a67e3ff6f2fe2164f5eb4ad6c1133044ab47b2a4209d9ecc2 184cd3dac0604b9d3923531c8ec3d0fc001b901c83a50bcd09c132791dee6c70 134a858338332f8d9c6fac6e8ad4a6af032c71db6a00ea785c80c01e11d97c66 3bcde84c487bca4b3eac295078c68dafcb1fc60fd77c033588c54d0611d19268 6d2d660a375a80c3d63df73e0785c500e3e4849e081515bb23685bd73547fdd6 e961e81174067596df61ae74be355cee4b0c2f9867495e7a2e93ebbc9d9e2894 5c4f238bbcdeb8275f01939aeb8da98e73d43370c574b3d8595fb9ff9f13fefa bd7cab3d48a0c18aaeffc389e497b1a9644e3b39a13ce0105091bca724c65d33 67d42925115a0fa8cdd20a5e0026c75eee8427c488a604a2462063210229bbe5 20cd8cd746bea34c8d5e679bba9b275b8f6da6145030f897f272d4ccf9ffec4e 41e070a4488f2d645bb611ebc94460e939969b452c19e55e5a60251d890d9566 6b1742fd32a6d8349651865d1ee3c95ed3323993ef4c92e9976f47224c1761ac f801c67c873d4021362dc74ed05ae3b9eb5369a10d268e87968364e02dd4c847 6e9038f511e15fc5d9db0cc02fb9659b699d305f6534cb680a50eadc71d65b37 2773edfe22d41198bfd35f9e114b86737eaa425dc5f35c14daebc2e410f07f46 bd07c8688cdd33be40e045e2a04794b1aefcb9c9678800cabe96c99aacbce36f 6080bf66998ad4868188bc92fb7136773599173e7b405213807bcd1365a35f92 77176a1943f9b72b95fdbd825df75aeeabc25b02c08a8917ad7d920814e08206 667891f2ed9ffde7dbfada993d0712a7af811034b1d7d80cc5046ec5afc505e0 001d0bb7cd641a40bdb8a4d5ea743c08befc4881e3360aa34932369ee671bea3 28faaf1f2c9d018d2fd26019da61df4286f67c5020ff8ece9bc63d4d5460a3fd 0b93dde5c0daa30204c139b68fcf247ba904c6ba1ecfa3a011e0ee2cfb1dff61 7ed099039df2f83f3e082dba61f13b8aafa639136a85e401afd7ded594f55c1a f3380107d701df39a7dd58e399e21cde4944f5c7c2e6f0cf2ab15db4f0c0264c 55cce162b3347d5586e7f23f969ad84976df8629617ab81a093f64d1d5ef9c3e 6e260d6e09c4d32d10c8a10c3176ef235c76608a01849bce26a0f53cdde8be7b 23981a6f8510fce89c5984e659fa900ebfc849a3d47e5248070e8efa1806100d d00de601168fb46f82639b3c3b703f009bfa4f9a92dcb9fd3ab6e4095b48c037 b0879f4efc60c379537a421f090fbf2023c4af217d9c5afb94d2ddf2b894a0f6 a3d26260c9fdbf9066c1f603d2e1fdca976eb66a34dd1c86351e5df6b698ea73 68f32b8a85a322f7d3ecf951b1806897a39fbc302d3f80aaa134bd4db67b30cc 5206d94994ce414fb9c4ac0c7991b3448ffe0d7dcc8151c04ba9d65ff47097d0 58999f50aa7292202d53d69b038d3124f3fabfc46dd243aacd7ec24b240b4336 56beec713bce6310ff8891ed4be8cad74174b6ebaceaa3b05727d63655468ea0 a18016fe11fd4c5fc09f1a73d78ee129429740ad6375e62210c5b2f6afcdc981 0c3da5e02bc3ef4b18b9c014facb00445ea815335180c2026c10685da5dff558 e3d7913961947ef5aaf1024eaeb684797a5120e79fefeb17ca426db49c369bbc 995b8654d5028b8c57249082b0ca7279a402e2676ccfa152676f074ea9ca8886 f79971ec6cb24f31d744434fa43300126b2fa4e2c6212e681e831953f94f8109 3b0a759f63e46d3ae93c6bdd00dca98fcc429f312a0f048071301ecb3e905e32 0078885bb60f1deaaddaaed1d79196bfbf04dda1a262fa3a856e460b159de4cb 66750dbb6f55db9457a347d6c1fc12c5ee76e6c509febe1ca9a069aab61d4503 2838dcf98987d2ab630935a0777739a66dffb7eb66eaef801b87bd3115988aea 833be7b84d766cba829932b57d04d2d111a99a7220f50d2d876c0584abbd70d0 05355d76758dd66b61da7f43dde49efd9e6bbc71243db6791619ac9b666055d8 2b14e40f67a71c96c0e446c978e229dc7f055db2468f4eee04e1a157b7180aeb 32c8c6e8f2b77b764fba3b7c4b71adc61bff3eecdd900f22bf230aad2f923180 56f32123930a495942570271c4fe9a4b67070169285966cc6a37bc158cd9e95d fbff1a4e40c3df009963db536cf49bceacaef479e0227e251060f9c1dfded058 834c58939a0e7093c819bed283dc1c0bd0d3d1fb1cd97843d4f82e9f87c3a89d 07ceed88a558984407b675018ff415edc21367fbdce4c905d26ecc2d0ba3c61c 10ae99e5b32d30da882c3989ef25c1b72d7d3eca2d81ed2f681fe990a4052d05 436d2481dc035aed16f2f8d5d18b9729a1fcd29578cc053f9b3aa7889cd64d31 d37084bc91cd769ca3715247ad47180e237cf9a009ff54c7244e43a2c5f3e757 e209a5db9b037517061040bdb391e3baa211a271efa91da65475294685bc129e f81864e31753ef71c5142bc2c2e481e2a33ddc5f715703b76a81144c0e259d14 9a5a5e89758da7468f40f9747918468e33ccf53d73ffbade0144302fecaf98d0 f17e5f8ea334e6b59a886dca188395419ea85d13fec922d8223c90306096951f 0d1c54ab6476c3b13cf54c31279f7fe0cdc533311485bf7e9e8c2a3b4800ff40 838dd137333b1b1e6db6ec4bf336b9fd540d194cd1a40c6708746080ac6f83cd 419291d888761fbcd1a742e43c57501e5a840717443b753af20e7e751959676c 8136f1f42cd17324fd88c516e3ebe0d88d42c529fae50d9ff3fe3ccffbd60ac2 4410f9e982728ec4e9569653013268b6d6cdd17565f57cb3aa43bbcd509362b8 f3409b220c1d8a6dfe174a7461e603030a4371725192e48dd26e0ee19a0cf2cc 4bbdf6fecead4f6e157d87f309f80e9a4d15435d83526c5f1748817c35146841 4296de468fbf2fdc900f542420cd5a462b40f960b9d30edec0eaf070aa7d7345 5cb68f9c453a303685553dc43c75498ccb74307791ae25b3b15109a1afeaef49 7070e9ec8d9e2b8c7217a013eaec5caa42302eda1a1609425b23d05a156a19ef 2a6ea3045db635c9db326fc1f575af1e14ebbce7edd5a9f8005334741f2dff9e 1130670f367f13a4c8750ab8aa43d07e228268456c71d0c892515782abf9f2f2 3d1f5f40869021d58612a2e8a0f2c068ea86329a90dc725158cbf314331b88f7 d47c3d3a79310edf0da5e6ff00295ded7ffae0654d1ae40febe5764610a72235 752c4929d2e9aa6660a1d6415f59a989d49c1e9edfbad3cc6390c9d1c114661a c97c740a2f42107311b2b9967d50c1a3148bc0d96be1d9828d29f6fa48925d0a 35afe76f2b8b182ce178d2b9735dfdbd5c1afb8580048f5fc92faea92be8963d 66b64a79b382ed3bcd025ed2f000e9f800842cf87524f7902a8cd4657c84ab0e 42b0c13e58e8065f67eb987ec221960e8ccf3b4484f6248327c27dd4d1128e83 5126bb93d4abee55c39a6b96896b300ceeb5ce7edf7cd382e4fb4306cd558303 b6dece3432fd361ca44b71437e59f5575d3f4b8481b17363e701f8f02fd84ee2 5eb7162fcb2355d45df09762bc893a29cbc67349d093a7ab1068ccba3b5e452f bf137a4397c123cc9be385a8458dc1a622422e35c96f7e1ff938c3034d437ff6 dcb6a024cddea079ba6a7706ad678012eea21fe31762d0d9b956acfc446594eb 6c481a576ff4a8a56e475686cd6009a33c16e9d4ee8c6d24a69905f438f06fb3 50e7667b51285a0d7599461d658bd9b77ed8f398692069ea2df125cc7a96d14d e9ea88d672bb23bc73b13256a05e4f01438b365486977988ad183c13db44b633 aeaee0a0c3de143615010ea5a5eb81247b813c129c4476692f3955f09a1c6d68 ffb2fcb99d9544b109306cc5f19223893342ccd6f12d901c36102be8107e96ee 781c2a37acdce2670711812b4e6ee51e09adc216d368e119c3ac52e02e0f80db 7516c5737b405144187e9c65c8d935e0310be9d1f4d2befa679a09057ef25248 2357701cfcf3aa28272cc8fc8b53d0b5a82f0c054c69da4b2ec89ae27a893f14 59e552bc5859913caf88963fafc6812401da7e30b352fb8c2731aa8fd41376a3 3fd0eb7052918c18ba1a1657bc41886e9b53672345171ab505bd97daa3f8f75d 1ac7960d1fdcddddc00bc76def92f55fc2eab20a3b824f41d3863f230eb4dd6b 882d976714f762f1129c0d01cc8fa9f72ba90a5cb6af14ef68d64daf966f7701 7a1618e39842ba25095d8eb4f4b19e4e76f72dcd4b7e831ffd8f34bd6bb34259 bdbfc40804f6d948b57bfd422799d4de0237f5d3531439f071ff8138c3a8b33a edf6b96d10c848df7cf2a24204004e464f17ab6232299f08d5059c9310bedd32 1f708f9c252c826e0111291ba8ab9037ca0058883e145a6fcd557e0622651dec bd39e673054838b538f41b411074e65e82aed0e71c6c8ac168d2bc7b04f9603e cdd6a80f1d682f7e9c6dd68169cacb5962456a9953a1c74c7ae75250716057d3 40390cddb17340f4b9ae84d1dc044441ef8ddd966aa2abfc6ff7f0e957970fe5 e42efe239268a352e8754a2040d510461ea92f4de0e2d1d99e0683a679c1512e a33bdccb76f3684995b5f9e32ad395e21e7c54ad138e2639d02deeb1abbbdc88 3d2af1cf50e1d4a3088bd019ad664c17b6be9c2dbeca9fdc032806175a1711d5 701f365db0a83c96f5355df52ac2e899520c8dbe7f26e0bf453967683b6e1ef1 1b60b34a1d01ae76282f0a572fbac525f40260a545a888ff384a64ae222a67e9 3490c7b92b9d18a483989cd7e05ad7eba6b1083d3a152fabca8fbbd11417b85d 494d5f60cac65020a60db784f092297f807fff6ef1bda298439ee298cdfbc569 9f2c9f5bb7bcf3df79d6dbef19a0df52e3fabe2083b1aaf7bb9b3e51ef84ac8e 4839fe089e82b81182a63fe856f02736d27804d9105a97a776df79fce8b0fb01 fd88aaf7aa8cc6e1e700a75afb7c32cec40472fce196e51c5f14f3394a86fc79 7dc60cea4ed520d37a04decea204758d495d6ace6bf055a07173e8984a7dabed 7238983c32af1a7f7d4f24edecb0122639c4888b3544362d8c18dc59bcda28df 7300c47deb6d7b0f4157426e166375af49f1f322b185792f59ff270f3a5a2407 a47cd1b1f8fd11e815dc70be5b51dfd97952f17dd748fbed663cdd390a676c79 dd1c479c18878fb926682eef953949efceb9e0d4347c5f06723bc2f4336168e6 d7ac800fa24e1ba6cfe9e17530593af38d07c0de1c92a5995cfee058caab9829 eacaf0e48567b53e9802c9f1a75dafca8e2cad1940a95d878786f0027ca2d8cd 3ead1cb0a671f47ddcb58ed90ad81c832a1b02fed59bca2f33b0fd3da0801948 18ca4548cad58f26f31ff00e4e76834a08d538b63f110689dc103f750bd69a24 a559db9f0d0e8e540c1758ac06801e1c02fb96de13b13ebc450fa275b9de40b5 600dfbba806b17b70f5ab3c60fa76fbd57388fba2f97820339e4ff2486bab370 48105ab75c97279fb90d0575aafb5f442d524f7311324e8d7d1451e34a5ee104 42004dc8f39f5b9d7db40f7df61b49783810f632e1286819ffbc3d89de578107 08d0ca5add63bc4cec48a33199837a5cf593f8251fde9cb9d6fcf24a1ba3a087 449e3d1b056e655017d2589ea0e88a2462dfcb9b4a7ed44b4c319f3bb8d5fe64 78cfd6e21fb0e70e48306ab33efb0d175d5fbbe94bfe648df41780e54ecd0035 8253a5cea2f2dabf4ed86ba2e5a129e2a7ef7aec3185d9c5e2767268bcf8af33 4b0c8ae82bf21d1d03219408d31d8c82d5bcf40f82f3177b964cfd7f442e6d5a 365dda4f4e4f2e9332b004bc994f57bcc44a7cb08819c3108f6d23344cbfa1de be24bce3cd4c8eaa6bc88f1aca59008b597a9212164de2cced5a9ebbc2ab1180 2cab4d3b57d91c57f59d7d6dad985473dde877362ab53b95e6f802c245c9c4e5 e50d947bfda8a4a6140dffc686a423768bf2d1f845b10c0bb2d6097a4b4706e3 f6cde34777f6c591a92f3d564609edbdcbfda037cf9f7a10a7dadb80cacd068a ba0b7ae0ae0d32d985e2cdd460b1bae3d4c5a0dd6df9d47b4647f49eac042a19 cb3f7e0157d1d9216d0313f255aba5334a6a9cced2c89aedeee62a880a58ffa7 be2fb8185ac0f7aec4478749a6be51448dea42a71ff1932f823c73ce14ea6745 d265e76e417cc489dd59a29269ea6627c4bae9810b058e9effe7df8259d31b2f cc16691ed84e4e8e81138435751aa17968a9935b487db96f5e122a4bb63f2368 2ad4e97eb395ade8ade9f51d45d00adcee38eed29f49dc022abe5da02eac9753 f960d6c18a342b22a91b88049242bfeac86c45bc09b50929f31de4f9fc6389c0 d2a527fa3c73b6ea98e276af33e7aa7dc3339aa4f20b7be7424679c1824bc954 a23133e9057bb55f943db081e93caa96cc938029ba0313e1251dae427042187c c4301a7d8a289f6ba75ff7daaee5a8da3e3af8a8d459f3d883c5d2962b4272bc 63d3a55c5394421050c8aeb6578593fff834fe467a386a2984a0fd8dddd9041d 54ccecb80898a9a66f28a8159578daac5dc67789818980238168f1419c357677 4b2c1142e41e493925096bd0ea762b7926274e43a1bb3c1fd6689a0658ffeed8 f28ff31915ddd9aaf7c909302d23223ad628784d38579c9599467cf99430352f 31234f708a346dd3c49add4267f96ff6fbcd07f04084b504a6 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR8 %!PS-AdobeFont-1.1: CMR8 1.0 %%CreationDate: 1991 Aug 20 16:39:40 % 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 (CMR8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR8 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 48 /zero put dup 49 /one put readonly def /FontBBox{-36 -250 1070 750}readonly def /UniqueXX 5000791 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486858b2a4b5a0cc2e1bf4e2a4a0e748483c3bcf 5de47cc5260a3a967cac70a7a35b88b54315191d0423b4065c7a432987938c6b edad3b72ad63c2918b6e5a2017457e0d4ebc204b094541f345ec367ae85ca9bd 24568a01d3b9f8095f7420e6c423c414b3dcce6da48dd1c89a56d078e0d0e2f2 62a13640a06d17e44ee3866c3471fb58fedf5a3b77294517651c16bdd7267d39 a54e7171752dbde63ac19bb4b3021ce95eb5fe67390b09ae4d9ed4d704a67443 f55dce17acd996c1f5e023c9e5a18cbeecc3097f23763acb86cdd7cd13381ae7 4e48495ec7fa520539d87f8a8dcb3c826275469b6800876a457e7d1e5be867c7 b1ccad69742a8c9b0ad943482bf2a4ad0aed40baeb69a0233bad36b4ca2d2da7 322956c70375d152653500b2f22d2ab6990cadde2da14b4917f7515e64bc3d96 bf775258fc7dae4e42a4c9b6da8eddec4a800c8aadc8d75e48cae52137e05c03 677f5d6a82fa46d9f2fc7f56d62e5c605a1b7898b8d1401c2cac1a0122a2c8a7 aae09607f2c5f29293a09b9959399283be89051452898238b777db9830ff4318 a298b221c4a820c700ca964fc99e6b1d9eb0bafc39be9aa9dffa2fa326b2a466 1e67261bb3dbc85844e76f9313ab533ee16bcb478166de5502b68e6ec1ea6110 f53206cf1cfea419571b0243244b32ea38b828a01e62b03bcf476a32c2341cec b8a0fa2a3f3f339315d5f3aa7704408f6617d026ffee4925aa48537a4b2e556d 225be09392546ad561cd46cf766f0ba14c6854c5af1a528c3842b0c5aeefefcf 19f19cbce5d967153c4f88e51c776cfbe10d39328466f7a3b83d85601ef4d1ce 0cc136610fa6a74d9676e4e99291d565cad27b9eb2337b0eba4148efd0eb2866 ebf0a4209ba135ad1376cf9cc2d4110f36121055caa3f2e7fca0cab342a7d99c c6f6ca9d0ae4f64c218e4a53700cd782804da3d5f9f6c5b8d2cac828e67f1fa0 59704b5b32cda160d999f014cb1397b8cb0dc9c4002a184ca216ef8d25b12cee 8284d49fd1b05502f364b46211e323afc5073a0e59be30243c15ee74062bd8e5 5ca7a883ae35f740a136dc322ff93759f96701c31c42a4e0f93831b57b6bc3e4 65a3f9bbf86446887b768f966d12c01b927b2eb1aee5ff419d51ba168cd22d9e 8e727e320de2939595039ef5eadc12124b5cf54c2ed128aeb28d46cb34ef0d08 e036589862e96706324793f7c786fb09f22975a11d157c82d8e420eb19b6663b 1a732bc9a234ea74e5ea138468f8f32eb99639c27707d42311de7b0d61cc8283 19349e76b5cf59a89c61ebc8fc4d3229f7cef66f2000acb3e8861f6c3614dc8b f1eaf2e0f23860f9a897257d9ba441a7d6560039e4cdb3f964fcec94ee8346ec 270787c3e636c2c218f0d2c6bb2941387a38fdc3096a2fafd2a2169597b5ce31 e61bbfaa97517ef7f4ee8b3cb0ef935ace51dfdd42d920cd8892a686c8d882bf 0b11118ca36a0bac40e184fb3df93abc40b3a03c01fc3795c0d28cceebd3e41e b876b6e8c7 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI8 %!PS-AdobeFont-1.1: CMMI8 1.100 %%CreationDate: 1996 Jul 23 07:53:54 % 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 (CMMI8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI8 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 66 /B put dup 68 /D put readonly def /FontBBox{-24 -250 1110 750}readonly def /UniqueXX 5087383 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930e72218b3075925ce1192f11fc8530fcd5e3 038e3a6a6db2dcfbae3b4653e7e02730314e02b54a1e296d2bef8a79411d9225 dad7b4e6d6f9cf0688b69ba21193bf1495807e7a196cf14c95a4e02f9cd2da8c db2546c6df52e524745992e18d9ff87aa25e4e1800bbe4ebb357c6ef55ed6d03 6d3a00c1ee8073266c21d2f0ac85d656abf61d7e5a4fa87da8ec3b5329e434d0 d2adab706b42a2e5331be5295399d803ccac03f631f01f39a022fcdf63486b68 7d15ef284a77def7fde4898543e7b5f7ec267756103e477f547cfb8d2311c4b0 09deff56085f5d419697af1846c8b88c1bbbae149f0f19ca3c8dafe19cec48fe 6b38357246d8b5cef80b53bab4cbbbe8bc8318cc462a4158258f456e697f6058 86010493f252073ee4e4c9531f23485415ad6bc901bbaea659ef701f825f4b6d 5c9bed0dce7b63810f906b33ea4955531ca1ed1fc120cc56dc1e277a33222cc6 c3a97552607b865783faf0895cbeccd0df54f57bd162a88494768435eda71a39 69718c0c5912d3167bb0971546d733e735aa9bcd89f5aa154656031ab3f6fe41 94ec225ad03ab8b67a9da43ab365c4df17c23e79f685c3b6fd5b654e4a6f2603 6cec3a8641b0b57f93eb95f9e238832aeac2061f3153e0f375513c974f1c38f7 b59edcc94716f2862cf71c9a2be8430985da1cd813b1e1c1b9310564a2eb1aff 52c190f50fc981dccb64bb2c1f7a62c216f211c162c2ed1c554ef49fbaf12b31 aa3b2a80fee259dc0a2a4242869ddec7c29e2941792b28bba7f2c6f77ef69638 12b07d6843f33b51e01c8626b26edc34e1e0fffadede5fb468e8cd5de7e5a64c 366967578f415484d122834de4a647541d66989f7d8b25d1712d8d16729bd9a6 472c2338069b3c63f83a878e9d80592eb2f12293bb8d9fc9a0550c5916f28fd5 1c2490f515a08d4a12d67618e225ef033052d4b34086ed13e22204078ccdee11 9fc58a4999d541cdcdf1e819cc9fc243aff5e5cd4c38feef3b9da6236cd47ab6 b54add77574c2b80b02eab6e005738b282b08047bf362a987a6ca56226a24052 aa4a87996ec6fbba52d0039aa72681722307124d9a1d2dc9c6916ddcdf336b76 f3881e51d3087c9889851adeeab0ad0641203c3ceec4b09f709a5bb1926b937d f4a5478731b028d90820cda1b95b69c2a64eb6230c038fbdd187ba2aa06154bb 22e30228ae8ec9f0b23623b1ca9261fc57ecc70148187a3cf3214b8dafd5132c 05a81ca6cbfbf449c001b442c288cc2e454c034fe0bee455e13189af8b264521 79ec6bd06e70edd1fe16f5882de80651a01caba079eb62bf4d663f0f5293db71 67cf2b97d01c5ef3d22d5ae71a40e7836a5cb2f933c6db317b2c8fd9c1c381fe b74f28f5285185d30268bb379cd7cec2dbf33e1b1606f3a4010ae6a248d1bac3 7b3afbd474c765dfd9f1aa1639103fe4cd246261a57122184a692c8a8cd96938 6578e6ff6293448651215ff36122e94e85575406b3ee726c69d2fa543e6cacca 835adc4ac703e89fc278bbd6d9a9deaf157286f48352ee46d55a83dab2e78a77 db1c057baacfaa385902bf86864dd84ff7146a9a88 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 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put readonly def /FontBBox{-27 -250 1122 750}readonly def /UniqueXX 5000790 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b448685940729e6e22f4be0e08c6505cba868f7950 93f556b64b808dd710eb936d3ac83e5783b5f7e56d363a59a026a5619a357d21 c4e77bea121eb24b09027d1aad93158edf912940e91cd2f17922b35885894644 7773730bb19af9e70453e1b78d5edc123b273a979891d6d5e624f4a388f3897e 13b045e34b4ee2f5e4fc5e996d3549640010c671de14d18b0b3cd300e57dac03 22e59bfbf7b29422230870f5897fcfaad4b50c7c1c58edcd119218163d6f6e56 25ccb882db7b6d09a1586508e8cb642a11c29a46915e4a96e282079cb21922c1 c2e360b487a45302fd22ec8c5fab63e54b5e844d4b17ca2fff37c69c366dd72a d02922c14c0932f65ed03e4219c117962edbad2dcdeaa9c10ce8af38a4ae52e2 b377245b0be19a77d6c936e7530cc4d0b78d0cc4a92698fa2870fa54f2d8503e 2d17b3d52fb2febb09f2b2af0c2a1892039ebe19a690098799a858e3d39631bd 6925a154d161df3918074ada6bd52baddd0adc3f07e2d9f15e27cbf7fe8b98c4 07205c811121fa91e059f2f99322fed63f359ac9da97aec383f067f23e5de331 51e80f0a88ab50fe8fdae4a5de93c1ae2fdca06150b37246140c0e87cb2325a6 0d2349162ae3ac93144eee1e665a1289105318fdfe86b6e76251cb25adc967d3 d0b97fe5e279e1161736ab22b4ca510b964342383a840defd38f96a7280e6ac1 34e48d740607ff2e7804164a16d47735864db847c97335e6d4215cb99911a1ec 015a3edaac1f28fedd56d2467130d07bae9416c15f0827d27c6c79f59054282a 418c12c157c91223a829947f47592f7cafd93ca182b25a73a9419127e3b12a9e 5167ac3963f2b019b338ac46d63880f94dda4b538835884d2a5538c85528d6bd 977f844d32b43b0e48caed5a4bdabcefe71695d69ca784df9e0534b6b46e66a0 cf2fff3b9f9ebc955ffcb67277f7810ca1ba5be246c53a4cb97684ead524ba2e 3f16e73e8bfae82c35c6cf8675e01b9f4001e0919583538809b4f08f241c0f8b 8cd97518b733bf907e314b14b8bf192b462d5767efa68460b3b18692bae2b231 e53b068d269d4bc957754daa09e8b5a6f619e69dd73c989bfebb39ecc762e2d2 c29652b88b8ee44d20a31a6d4e276ec08e67101c94c804ccfee7661ded6912d9 332fdd5e8cbd8899f9b2380e5d0117bf8a4d0e6b69b5e55f891c4051e1505ca0 94b760d9a600697143d23fae65c6631792d7d329027dc9669757a259baeb5541 ffa46c74928f95333a82e0d65138743698b755fb579e01d7d148666460f0b19c e62f85bcd780acdc50c6ddea9a099a14a81192d316ec0cd76de2ca35fad8c81e fe546dd00cd7fd3c55be2786264778464b3071cc3e6b9581e630aaf3ec5cb4fe c4b810cf98aa42eee5aff85a313520b001344a29e75671d8a2f17cdbe45733ef c961a73f6aae95f1d7817aee87131653664808067b1f521d7bf3ae05d4b4b6f8 42a69ace3667d322a1784cc0c71a692a5248db47c61d90a0d634233053f6e10b 1159c39d5618fd3023b06bd432187c3a820eab125e31f825f143044f83d5a534 95146a4551dcbfc89ac4274aefbb7de9c826447005f41c0da5d1e9ed3bead775 ee7fbc0c84c250783e716f9321cafe63e83367734aa648d589528e2eb472af83 5aa9997bae6c4df5305f33b88077e20636271b5fdd5175588256a871702b23e1 831bd2f24eb25590d17f225d78e2da86197700185a135f79f1b876ec436015e5 6d00e53170629481addc9532cecc40eb964c0f3994e7b771933449233845d6b4 f2230c4eb1ca7ba46222b5ca13968c005e7832a0ac561604f871a9ab00ed74e6 9f3f0628037b533b1620101716cf7fada166362f873bab8734e70bd0dfcb5323 bd33ecf2d6ad5fdd9f00dc8609c79115ee7dba32dc6f0221c9131d66d542cc60 53ae6c74328c1dadf35d44f13a86c7520b34455458f5dc2a614a14553e9da539 81c47b22acac7cb00d66b01b5b8fa79a96a2e15b225b7f23cd96317cd288aa19 c4b4f35072a627f57a4289cffc003a56030e207baa63e51ecb4fc5ff676680ab 7bd2a749c5718b42fe7c5a34ad99679e76bddbf301b19c43ff08eaebd0c5a015 82a8748a4d798a0bbacbe3e4b0995dc9a6a9f6dca958a37b77cb9f57c3e4fc65 c1e24f38c4f52d7dba1e1ee23f081c3f5b4e6f06bd899b511b31cda3ca8f8ac5 dbec40456ecf25e9742312c48833ebe7fc29e998c61266527680d25ff1c1f09b 726635b9f12c00f240b693a1e07346d333de37c660bd36fe00913c4a7e876494 e8e38aa8fcb42e3732e74b4c6826af5038daf986ec68823acb95f727beb80f5b 148b56e37844d1b560a7c4357c2cf495653be25fbb3a236f15df847586bb2c05 794ea5a975aebf7c208fb1decdfb7f930adccbab537248856e5ee7658f00b30e 50ee48ec8b587a2ffbfecfc6cba48a9af33a362e9b4fb9730a3e587216c08ac8 e5c90ea88e917a6d29a361dd7ba94313041cb1eced69a2351278ea4c71d4da5f ca65590376e7fff4d621d39c06c541c94144e3b6fee2aeca7cfcc3aad469428f 5996038704cb97185ee203450958cba23290c0b3d1b556d40d790cf2ee57e4dc 7928011af03dfa442d5df5e57e0c77c08c3d56980bbb4f418be451f244e29a23 930759743c9998c94ef8797f6197cd0bbac6f19135ed7c976c9914d441ef65cf e03eac53b7e0272fe54a8fbc5699b45998c86717dbf121dd62cb7a8a05885802 c045ef8e809f0804f50d8f2fe4d6da846f772d00489f2283dd53f4bea2c5205e 2cafbea1338c30d46755f541c92483b8f8e92317ff63baea7432111633525a23 d42d1255bc02697ba7a87a1eb9abfdb366e25ebe1a6eb021d281d83b69e8390b 44cfba7075e77e45ba9dbdce24db97c6646952ed496a651756b5e180f5029477 1b0bde1432bff9534387b05f5e551bfd8a262d04f6d785b82ae8cd0bff01586c d1c6901c8af6275f89f4316d11a35709a2ae79d870a38f62053ef7a8a08d5672 ad198a8ede6316aa7240c747d035c85481f166d94099981128ecb1720aed0b61 130163364384558456ec23dbe3a158d10a19a7fd8fe2da2ef13eb724d5b50a7f 4e4ae0c681f23103e6e8d738e83276e15e7422f0f844833745340c2a040bd6eb 952c987a50dfa7db0d1cc9bfa2385f2b30d09c026c0775ac005159b9d82a2ab6 e2e4f2917e69ad8ba5ba4d45af5d1c2f98b59778f9af9214cf956c324225194b d46e04144e971d67b1b8d8f7f7e3ca9e7f1fe493d3fb8a167ebc9f439e45337a 2228a68fdf3961f2bb9523cc078fc5908bd87d0696d7a406785cb1ce61eed61b 4070500e53143b6e0d18dfe693f863378e13ee700f23d37451ecad1b74f37052 881167554e62e20aa19d69e4cd44c97a5ca01fc851aec425659c545aac108101 a7079a41190d6ce7bb8c97aa60da0beed09e0aba1b2c07e1aa717481e07e361a 0f63cf8659924bf379b129ad7eb31f76d9 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI5 %!PS-AdobeFont-1.1: CMMI5 1.100 %%CreationDate: 1996 Aug 02 08:21:10 % 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 (CMMI5) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI5 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 83 /S put readonly def /FontBBox{37 -250 1349 750}readonly def /UniqueXX 5087380 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311e252234d51741e18db3a68e8ad10242 29e5817a10e796a78d2c7f7c1f50961b9a57aa604c9f821dbf5a9295197bc666 31678d7d2c7e1f8f2151ce0c29efce46270570f4301c5dad1b38884732e53dad 05dfc36b020e726ca575f71f04abf2b49e1f1d6d2a08a477658ca9a48f1c8cce 14382f0a42201de56e2821ee2b0e91a818b1b753d810ec2428dae5153b66af66 9442192024becf743a8f6264a58a0b3aa823510a4957d1bab3e1b83135362888 3e392f49926471a8021fdb48637baf0abcf31204b1b214f48c99f44af7782323 69d772ae4f49be53a1bf584747bf29b94f530d59a5be5370b8dd0691e32a21ba 9d0d592cf3bb50a99a3ecd18d6c4114cb4cfecc49705da90d7edb10e3a28f9eb a49347a09d31eec896f2a28e9607d99d42914aea16545c16e136bdd0b75fe486 61e24c7a9e9b233a76754c760822d0a88c575e08ae3e3f081d7bfb80ec4c03ac a08b65fb6474f71fc95c7c2462f2eb3754e647c29498288f2ced0bd3a2bca5c3 2f80a61fa667802d376cacd34de1f9572d1b3ab09d6f352750db4a768f869638 a87457889aa502850427b40e1294c5ba33e6b17532b2d13b5f50e71582f93daa 231e86597872a2a968127afb0f36257a76ce1eb24e6c4f29fce2aaf6532fb5cf df84da03f03a45b915209f67d398c7c4f7a3b0623750259087a478dca684b29e a8b7f52060bae9394369ed1cecc645d113cca3772a8dc36c6d916b5c5e65454c 0a188a33395fd3da67ad0a31ddab6a8434dd80f0bd0ea1a2a62eecc331d88b3e 369552daa1c575a98fe84383548626b65be7c24ae7eb61159f149872cfd87cf7 6c1a7c155c7186c7600e58cb61b8cb0c5dea98268a39e928bf6fc53985eaa763 2b28c1eb3d82e4d3fe225223f4266d2b6147e344aad2d4884a9308aadc7801af a606838925e3e50ee7aaf73f090baefcfd4e34b795cd92d83c944d91a4940f2f c955d727ea5bd76f0c8057b12621eceb0947b0a5dd10dbcbc52957dd978d7db0 c794660afdd4e946b3d7fc1ba60907fb3f756aab0406c0e7bce5a2238fb3e12e 07e2c0a7f465e90057642d704434ae0b57bd46c8ea91ab2a386e24c6deaf9cb0 8cdaa8fc4ec3fadc06bf28659cb878453db16f4b03925b2127b83be8fc240f33 23ea950b51d70c8fe861e30c346efa0a0125137598caca5478991e35f5bbbc19 4c787488ba339830bca15f8333431902e82b66a514a41c0bff92719a6a0d9587 4cff62c622fc61a0308a69f9fb7ef51bb274ce9e059c04b64e817abdbbb39375 bb4d84ca40de5fa46b84b04f3056d74ace44f25015407acff48ffd7764a9a40a d820c9328a36d837f86d8bf5fe94dd56a49864150703eb0322727dc31f585e8b e050b19b29b247457953838d9a54278196f108253c2f819ac90fb3d21acd4c7f 06d3013670b2396e00ae404696eaa2e66d33d5ee00448a11afed4d59fe255505 ebdf60174b7f79b665cd65b914f46705be9ff167eee030afc72401aec48895df 5ef33316a14248db044378a786ed23a0848c13ba0ca2bfea6f04ddce0749a08a 77f76a502cb7ae898e411543bcec269b918fb3617cebf0f6e63470088f8048ed bd6a828ed24ab41b4e986e01b7f9e667441e56a838cf795eca1c6f39e8336043 a944f8791eae0985d026f3ca87e1f3f8703a26c8d52409d15a9ff4a2a5a5c061 5772b229ee03ecff592ef70d41bed4e6046b1e54b3635c96a9e33a301608fe55 67d044ca735d732dfff297ba63307bc31e877cf541b304a7570c4c316e94adf6 b53b96e9e37e20be76ff5fb1ca3831416a3be5ddc8e315b5b7ccc9804190a07f 791ebdc5c526f4e8db988b6e199f8066ad5a 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 40 /parenleft put dup 41 /parenright put dup 46 /period put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 54 /six put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 74 /J put dup 76 /L put dup 80 /P put dup 84 /T put dup 87 /W put dup 91 /bracketleft put dup 93 /bracketright put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 104 /h put dup 105 /i put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 114 /r put dup 115 /s put dup 116 /t put dup 118 /v put dup 121 /y put readonly def /FontBBox{14 -250 1077 750}readonly def /UniqueXX 5000772 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacee583a5c939393e012707b47e0c1f a47d284a1edc9d01a497d772bca8c543388e6dc0d1e2c4944740470e0914f65e fb0737b0851b2ba713a9a00b36d07da6bcb52920b9b59efe587734027a3c5e65 66aad332fe6fbcced1417802822a3b81d6187875263d6bbda04bbcf6e4870fee ad60f104bb3c5a766610dd11aea64a6b107b0b04439fa2888b8cc39232bb83f7 695aba81f0260cd5248b9e649cd800bcb325468c79ffacb9cd3037a112066957 7889d67fff57549064b985d67ede2fb03272083723541051ebe936eff01a4ab3 cd845d565dfdf25d9ddd2792db17f52f894bea484480f06c832140fdd6c3af0e fef0584c6b78b5e2bbb9a752f10581fd1c48cb498a822afb18cddebba34695b9 b418010368fdfb7bf758d50f3af03360b81c776325c33c9c81130b1e1be840cf 68c71ffd091dccc0df7b507fe8953dc3836af0da08ff9ff3e9cf7288d9eb8baf ffac546a0fd987ae8e0bcf7b759f4408e13524f478de5896d816cb0ad2904271 cbec82a5ca50f0598502b434ecd94531b4a65181b5b3afcb650904b15157737a a4386f1a7f1252caf2adbd5c8162bf3b065c01ca471d520c884ebbe1b29f9549 134e285dea2fe158c15a08a744cdda00bb6c62158262e24702803d9e1dc1d3a3 1383085631154b077fc20488ee3aa03f47ed2766644330b94133f2f9389b99b8 96d3707d1c5bb227fd3bbdf3a6ff572bf07164107c7a1c0710a5c7cfb67282f9 c238100fa138b75c553d7cbef17e2292a320d3d86a6210e6e3a1e590b10dac6e 177094d5dd163db623d7b344478752f6f3d7d5b3fa92e6bc72dc6fc343d2f946 9153e3d14c5a6d6b1d9ca52947b789cb4cf6196a02973aff0b097333f8d615c0 a1726ab7e31c378eab77150faa28cce535afe3ae5798402ca51cbd18dedc2c43 5281d0781351df30f4d11761579676449ae4a47a10f677cdd31ca9120fc2606a 9025d3cc09d58856a9bbfb17669f706ff8c7efe37a3656c9b20609cccb58b309 0595ca5666833f2bbf884aac1cd632fce69b4e0ea2e0a25b9c4d471f0e322e09 4cefda321359fdbe0a82656d3ecaeb68b7e0c7e733d85066ed7474c22b67169a 1bf1bdf7dfd0ce0aaeef78ee393ce6ea65edc1fdcdf3f744f714005d8221a156 4e70f396470c333de0c8cf0251ee4f1ff79132f38e0cc32c9c17ad03c21940c3 b01af8d844bb268819865127f4a3c41e30941fde5f422e955c9ad474e0f384d6 527fab612e41497713cf76f3ca9ff787662096188afabc3f379b9f71cafe4914 c50ed86c53478aea4c47ee1d0c5491af47103b9485eada298001037225ed0115 f9ee1182240c44f444f7348758dfa868da8377c2bb2477b9357c35093a67fbdc 29d042e748ee06dd25a99e6cdd99879967f3ed555ccb13dd5c7b3a1abd37b9c8 98c421abee4926c8b1165686e0d14cb37d0317e64b4285aea53000f172b7a3b8 502b59812e39bb2a284a0a8f23cc548aa87cc2d2d5912b682b912f36d4a799b2 65c430432c4919994a5837c5b6a7b95089a4a227f67478955626e696694ea2fd 052a1a3974cba82f03dca95351ccb6a1c039698b6c9981bd402620aa04f64094 f6d55c2e5c5847fab75e329c628e41c25f1a201d8e40bed7a1e49ccba82bce77 a919813d605f29a12fca32fd5e3fe531b1ccbfce6b981fbe2b4b5854fbf600b0 1966fff98acd4a246e08e52fa3b128fa3a606ff4587a100508462b2ad4c77cfb 5822f2c144ac2bae578e0b7c001a24d508aaa6d702b69620c942975bc8e50b41 9b9475aa7406886f91710d15ce25852184ab5e4d7a5ae0b26e280c7bd65e8e5d 7a5d0c5bb96b1c48c52b25af3503fdb5317c9910c1cb2ecd2eb75afc653980f8 5245ac421b0cdf4d7009507126f2ae9daf28e69479425f49dba8fd82a97cf517 842a6bb5bf82685e604112c4c2f7a043b0b67f832f759015bcb462041d191554 cfaa115c69ef6bf16641099d0fe6bfc289c50666e97cca28e7cdc72ace048c70 c2f6c05bafc1117c7c95f404c749447cae2b7ad3771029eca2831210b13f0f07 f29a77758abc4021a9b438070006bd0246702c383a2ebd328d06dba54e3ba365 67f79d9087624e85c87505a70a5fde59d1d41511279e7d29c72752d32cc1f4a4 df745bdec1e8eed5a46912c6ad10a70e4b2f10619d6b1661c89e2df9505f1264 955372fb735b9a96a082cdb3f92d0fc95e8eaf3d00527542117e4b525560dd2a 659fcaa45cd3c4d9470f82b93a0f5e64bdeddbbdded09b6721e83912f455f930 853b739c45fc5417357b3853c95efaede32cb471a5d7a37d51e3ce82d617ac80 ac7a41411bbd0eafce408132485d141c92f77b7b3c2d6789436eb83d5242fd3a eea031d5415d7a41942d6f4d2a76d0622fa40ead542c69da80c258a55c5afeae 356588c328b4c558e5af38a7a1d1f652e7d9bd9c90829647268725e83209c469 9269892c72576b3ff5d69fabd7ea686f5075604b8bd4a302ed57c94901506ca3 0adaf70215159599e469ca224825afeb3dd74ae05d09a45febbf3c138d6daafd 9ba8f6da26aa68fdd11dc3e746afa3b6b21116760ba6517d9cfbec42d5fb8580 241825cb1669dd9d8401b1531ed289993fa2c8605041dddd440fc29d2a9b71d9 039f376d0411765bbf646fe536fd230136924d1612125f6cb023d32833b78f83 d1435651141698580500cb6fc929e4e4217473a9f54a2047da495102e6a52053 ea883f844a67dbe472683ab0b53f9c11e42183df85efcc1f4771ad5c4b13b2c5 ab417a1b7e9ceff7162320b2af1e24c7cf160322a2d88e4c651f1e8f2dd17acc b6e724ba5fc684ba5a4b5a93c7e97536cea563469990816777e9a94ff4603092 c602edce7bf4ba9c7203a7ba526aaa25fb3f7a7389884aa256d474b887547a79 e858c8a98a81205c212a443b519d9f3d3b93e7f3bbc58151c37bf514bf8e2756 e2f119c3e8d419b84405271bae6f181ddf18019bf1c06686126b98c339f2b806 e997cba3e9fc3d5b983f15fb39b2b231599e97312e3beea945342a791b9d0f1d 044d6f0dd7426ef8fd6b96b4e5bc2f15f30b97ac90cf95b399b017c4e6f7ed54 1c626499915c83b25a99808ac8258adbfa26a6746bb6545c7389828a966032a3 db100392623d7e09992d9959f1e611b73b62f2c00eae32b11b3ab6c1ce8067bd e7e5a7e945527d0dfd8a0a5e6ad1cda558111fe96159f658b5719de117f4697a 2029669c46732392a2851f3318d09a4ce44b2354fc5592674229eda6d06fc169 bfbe689a3accc0a8cbecf3d96e6330388813fd5743ba057ad2863043f356e2d1 4c3e9340711324b0970d64cd62e39ca6e19b57b4f6a2fb897742b37308434e0e d3ddd22b861c58cb596e26661380ccc34c1adf635961a2592919fdb15ee23400 cc32c95f8010e7b3a3f367b560e002e36f1c97c13d2cb236636a80c5aef71c0b 9af86495b6b6f3d9fe193ef30b1e34f7c133c4777877b954a591814125e27a41 a378d2ab16eae28bb0ff0319818613ad6bc2b009e3c65eb5c744eef571f13708 1a408f1f3a0243a8a4fd771009ce784f634c6789b16846b69219fef2fa468fcc e57589d848cece75a0d2c3e094009ba024ff7d675ab21910d6337f9b1a9ab819 368a72e10288774f78348393b53a26f9cb15672ef0ccb2cc4e429b8a373aca0e bd88645301f9a46b6b33ae2ba6f6293d1137cb6fbad2ea85568fd54f0127c7b9 1d499a685010ae02b6e6df59ba01a4c49f9c12c847d039a0e96fc5bbe888c258 dcde59ec05b1a43fee832d74cf5aeaa7031eaaf0d4a128d87d2c66d8227be70c 985586be053da479b04f2e5bc1577b926ae3d684131c2b486374ab8491ca0285 746475f996e7163e4accd31772bf1191e0996c4688015125b9a730b4d88a6eb3 f259f67744212564629683461277376df43a0d68897b29313704a0fd3110d3d1 df6f54fd994787bf09b9fa8669809915f68400822cd067bd2d34f724d2d46a54 bc4ff84e18805354f08f2e33f5f3516ddac8370ccde7b02ef4b58d25b33a71b2 7a47df4a7f30b268fafe9a26e9f48b4bcf3515ef4d275056638c1b32175a8469 731adb85c4556382c91eb03f6a11d24b90b8b145b0ee4d1e3c956d7273c4bde7 a3d88a67f4f338f5e4768389a264ed96c2eb01374daa61e6feaffd061e7309ad b005b69a2ac73e1cfd42de75927c9c4115768bcf829261de60c0409f3af3ebfa 1f5f6bc7fa369e88076736c6a696d90fd78906bde93902840201f36b0bfc9765 fa4a5868ece1de3c9838c48793c5d6c40bab3ec0d71ce86fc48a4b3d462b959b 95e8fb5693a8f12967690fe869b152ab6acd0eaadcce77a534fc72c92cff12ff 9db555e34eeab1532740d2ddb618ae71166ea8ff1ecd2a00dbd30c96d7293743 88f3015c15d92f3a76c6fc69fa5168f0698cd4dced72c078ba969a37062b5623 48f3e1ac93467fb500895e6bb0da828e2c261c52202804c6b93b180c83c0656e d68f68d389d1cce04ef09dadcdf4bafb354af5024d51be6b2109c307eab98ea1 79b9007c796bf902f709b052685e2cb0a8256c8c6fc812a839342b53e978a9dd 1e40c21536ff139413d81553fe480f4bcae9fea54ef07203467359bd774be77c 8058811c62b79c89c8a2a0156e86b00f91193c797a52766089b7ce545907c444 65d5bde178a4efc96cd3b32a1f157beaef95a06cc8440854ded9427ec5eb26b2 ae736b98f01fda8102b96780c2921bb83e48ecd8a2fca417c25f353569ea77b2 efe452b88f5fbf1bc90bac74c12c02e84a363d29cf3ea6727aa3f317e77e001b 97422c781d29e0e545173efc2d4b32a1b9853d58f8fddca11a06c9b079fa98b3 0e8587c369aefa2f8665905a0b4f9488eedcc2422ac4e3c61b7c143ded96eff8 186df8d38b26b39777370e397f34563aee81e66f341f4bb9f98b509d12fefeeb 623e3a36226ec5118420e6f1ea6ff0d7e3cac1ddca6fbfa090a92522a8123cf4 50886287c0cb1fb9d28659c7e7ce9e37a896b59126151ed61a82656ceaf48e64 70b0ed4b3e212c6443f32e757b010266ee82470c19e00a118e42985cddbcf608 4db36e98e45afd5956b450747854ba3a5b5f6635475990c64ad7a4c1a94fffff 052d16d4a6f9929072db2ad065b9d16d135155f9548f559f1e678fdaf5231420 5274a2e00733b74f9befb149792cb2b0288d4867e164748bb3f00cb5f015d398 2d8a11d68250159374caeeabc1fbe18f1930bf85630bb9d622fe9b6fb8890da7 b2d162f6766fc42a71643ab9e24f835fa6a925e30e71e83ddc1f26d1d994f1af 0120f42675ef05ac6f43ac47a8978f594b5d145911b7e3d4f052ecae38958900 898943341571b3c3bb0b4014a380f21bf1483844ed2d4c813b909929411dd4c1 36f13c861a3260bc5098b30480b11689e372840f9b0299b7e06b4a6ac84f6ed4 57b10fe2841b418c1eef124ad067836e245760fd77ae25b8c945f4ba8aecd2bd 7e7a54d4c230662f0be5641520863b25140a6c8db9275500cad0855c8708a82e ce06552bd79e3d76ed881569679061296f6865913e8c00857be426e3164960e7 e512267b31d5dc7568e73afea943e1faa78acb193cdff9975b89276d2494540c 37d36697a6f5a8e1365f29dbfa852cec6013dfbf74a99c9008c774709e7dfb3b ec3fd7559a8a89f623d06b1e8b4f0ec8dd283530907fc74f758a3581da4215eb 79936c93f688417fb13ecb7d69248f6bab9acf791bcf0b096aaa8bcbd030d383 ed4a78f6d76f7d0b8b5008a682b3730a9a3c22d1059f20601d6d6ff84277242e 64ede0cb0a48736d6676af4a6bc25070e93c968fc120346570652e3d8ebef178 4d98e2ab3a4d55e9678e7ee9e9e67ba694709221f7dd24142dedf87ac87882a7 3226c1e91ece7d3d084d330f7365d7a0f199f629853125f9d52436843332ab62 fe8d77eee32e329c18ef5233cb622a229969b437dde03d69a43cb2bac048f0ef 4d14c5755d8b9788856ba2467f76ad10e137aa58118ea060d22c8862f82bf6e7 2008caa35ab604afe9de267863a9e5f45a4fdfdc727693bbfe7f821942e0b64b 23dbc56754eed3281702cfa4ae8e2c2d19ee84768b6e3e7ae7dc0aad4a645793 e9302eb3c8ad168701d26bf0942289411d59defec86593442aa5dd271be36370 fa395049b2b7613924aac0d593c1655a7d2cebe4d49e4ca4cb449555be4378ee 95ae099e2a19266f71becd1400b124f8988eae9dbb52b76ed278c90656bf8fd8 1702c200c7fa167b20bdc8824eb1e7c4832b984e741f6dc8c01662538f64ee34 d20a317fc76c8002c2dd4767aa9647ce1c2c5b0b64755acbc4bce72a8de01482 bddae46f0610a77d73136c3448c5aefc6e565cb4381a5376e4f687f4191891da 6671f8949acd1bcb34b1805337c635cf481027379dd975b1fe337779a9bcb4c3 6b49b3582976ceb6a9de239da4646ea285d51678e32d08de0cb09d77502590ad 8cc9ed43f98620363eec1ce1e164badeed8fde6b03876e735d3ca83578b2e1f2 7db46d570d76846400585204f8452c68e38439be1495f00f2db1fa9a220333d9 85232c2cba8e4270897916eb8a978de14d027f7de06a0f6633d6daa0bb4dcc80 e62e07f9a35fab636da9c567fdd1452ba29b638db03b2490ef9f2a042f578ecc 92ad0aba5d95111e39f90c3fa0ca60c720a6e34545de45a1cb556ed4baef4327 077e44b7f18e95f2ed594cd0f2346166c74483e2287ce1330941858cdc467103 7c43e5ca81dce6f0dab32c505aa08ffd49b2001aeecb841ee2ebaade8e11ae07 34be2a427e236747d94a3bde52e67e137e1a9f453b8297c9e489f3b62f562648 7bf5336873b36c35c0ef7d2183349ba0f46d1f5d50ae8e32ba62df7a5fdfdcc0 123a3adf4e4442b3b922cc001fa6fd8ae735460aa7ca54e4377cc39d0b8c6239 1c56f579e47a49f2b628d3777390b117e207a363828f7da73ecfcf2333f07dce b8fb0b0e36bfbff43fab1b61fe62770b506f796ce9b6c99535d5a3a92df5498f b2355fc465b0f5f646c564e5f0810c8585c83853676d8fa2514456a313618a70 3ae605e615ef6e1c149df01239cadb3a070fb067bf28e4ad9e7e26610042d6b0 feee9b6cf8a48472b12910cb99fc083af4343ce9d9743447f0e79ad0f62ddf5d 046b31aa4baed28febf24f1d7d3998bd1803a7de406416173b344cdb4d494141 d8af8a2dbe7b8d968a0ea1d68626c1c9f6e6d6fbfbecebe7d3ad3464a0a6ca08 8d000fc21bb905621ba51b57424dd5f7d92f9b9bae65b17574e52c0f0d570dd8 7c29f86c0f107f3fa09bf397810d131ede29f05999dbd98412d62758f797e599 9c6ef5b1f3861fbadf6af896a59ba727807041480fa9ac7bad21e1dabea98d09 940ae41f58e5188041376d5d86ffe2045f1f635404cd8bf185fdb80d629919ef 8a4fa65cbd35ec05a17cebc3ab02df5250fe7b368934be86312e0d0ef6a60090 282df307a64b2239264a820ca859b386e7887c6662b77f3b4d40951b5c943465 6702dd3ca8c7b3b74728f6be589b4205d435b97b868e22b923f5944428b1fae6 1c0cd51a04a07fbab6f37e3bc23298ed3d4c916ac5e1400667ed5a837213781a 5046b74633151f28e9fd2a46a3f7039797344c6bef71c5fcbe49f32073e8e749 f46c5c332bf159089d3af7ca58a238e290924be0f17ffc572b6fb965f2a5c047 a33a39c2ec3cf2877fa6c0e60eb3b97e38b6f2148ffdc50a59a0fd02b1a24d93 e00d31635d39fea2136fe85aea20a94a0a412ea28375780516422147e20d6224 e5b598dd2998491286986f11a2535a53c35cfdf5b172b51efc876f5030b0083a 5f433348afd7a72d29ecd1fda3cc909bd5c7fb24475f6cb73fc3a3e892d295bb 21ed15073d5b2a877520bf31c579f8dfdcd9a485a8f60a5590586b7f8b1ccb1e bd78ed445e3dfa91defbe9f136e18288f6fa0cd0064add0ab125a9fdb8b98748 7edc021eda7a1f754a6fb4f7a4bd415c3b3c9776782154878e59d15b26c48bcf d9a0709c6d707b78022a90cbafdd371f87164130889d45e41becc4421bfe9bd2 1e6b77d2845af4c8e8c56b2673352496e037ac0c2185805ff5eac70339573842 037b1e88fe7a6b378fe80332ef3c386af7a76266b2951c55ca0239ffde2a5bfd 32cd3378bdbb21b081ef461e7c8605df2902b3d45b743a4591acfd5019e348a9 22d9b809809000e2474f77e73e10b7b36dd7cb80a2679a9d08f936a09c58b01c 249c677ee87aead32d5f9bf73ad60a34afb8f8b86571f8bf296a65e6c2699aee 5ee1a49c6bbf0d317055ed17a6d52451614ff7904b496e56ba647f345ced9cdc e2dbf5a060f7fcfd6ef8ffcb86056cfe1b426a3c12b29acdc24d6feeafa7c18b c5b11d42038094c2900cbbadc41859d6945a5ad5b86cf48f917c76ca3f2b372b 304df33e01bb7f17d51f8bb7d1e20c64b8b60ac5e8002cd5a9b66dc71fa502a0 4624b6a221261bf50d1f4383f2e9cf6c0a3be0740393bc3a9b3421f4e569b51a 082ec0cb53024ba2d3a944f389c076c5455468b3818e8d87f6e50d7f7bdf98e7 ace411d7bc01295503bcfad1b6ff932399b5faf830c1095dd632b4e62c8bae5a 3c42d51ccdab1007d659b2f1657e80366aaa8e4b8b9ee7f51137fb26ba95cc23 a6f2214c5d54504f5d51d95d01671613216f86226af598f9f5a0d73975b7cdec e5762f6153684eb6fcbe508b0425ca6ebb6cfcb1a7daf451b89939e1a3ecf274 64f81477295f4a4a017edc8f2c0a70929cc0ec6f98f1d770b36e5d9397aa3ea5 fc7ca52b307cd44bbc66ba42edbc5a8115948af979388fe2510280510f404fc9 11404524d665d190ed3c7b393c879e27ce6acd07fbbfcea3684eb708cce14eb1 9b8cfd997ed7e5ce8c00741062bc222521be3acebd39b0e016d1bbacdbba 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSY6 %!PS-AdobeFont-1.1: CMSY6 1.0 %%CreationDate: 1991 Aug 15 07:21:34 % 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 (CMSY6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.035 def /isFixedPitch false def end readonly def /FontName /CMSY6 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 /minus put dup 48 /prime put dup 98 /floorleft put dup 99 /floorright put readonly def /FontBBox{-4 -948 1329 786}readonly def /UniqueXX 5000816 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bac8ced9b09a275ab231194ecf829352 05826f4e975dcecec72b2cf3a18899ccde1fd935d09d813b096cc6b83cdf4f23 b9a60db41f9976ac333263c908dcefcdbd4c8402ed00a36e7487634d089fd45a f4a38a56a4412c3b0baffaeb717bf0de9ffb7a8460bf475a6718b0c73c571145 d026957276530530a2fbefc6c8f059084178f5ab59e11b6a18979f258b8c6ed3 ccafbc21aca420c9c83eea371adc20e038b4d7b8ac303004b0aa205f04135140 76407216032fdd22e6219da8f16b28ca12524deb7bca073cc5eba65c102a5e85 fd48e6d062cd4283ee570a7774597e5bf0e3400b6be72db0115f3cb12db70ce0 83722870cddfadee715f10f1fcaf20e06f3c54afe5ca238539bfe2b596116e83 f5371ff18fa5003d8543226cfd4025f9940365b392a858d27f078d3abcffe4a1 54e78c7692d1a32bf935967c64f01b24788ff8325d61145e2d4a489fd986fb77 38e6b254522c77ca2797a504a9ce4676a77ebacb026eca94dde5922c936f8e90 c43e28519169701856d797b0108d338a1ac7ca5e7ce82bfdaab14993f4291d24 3e7620ad5c7ba78ac94704719bcee0989af4528504a2b239d9315fb537f4d6ba 2fb3ed0c12619bf6762334d9a02a757f59bd6a3100cc8d5ed885ec5a36fa3a67 9bb79f87777378e3c4af1fcfa1c0338f672517937de5a4aee832214f66173597 36e47cfe2d69493448cb7f9c3dafb5812b59af43773eeb66e29ba7377be4c45a 3471d7e2110dc2141532cc48f47016ab39a4523078db26c6f17edf233dc0c260 7fcb9c1906631795f807963c249131c2935bfa6046f8be55ae23b7b6942b6145 4edccda14546f9b5a270fb2390ab3630e233bd0f40aadd77f9679a26bafdab81 6a5e5d5c718737c3dc576de6e5f9888b3892654235e52609ec878a2fc93f3f51 79ba969cf1d39ca8e05760cd912db08ad1c6b8a5d17724b2e139200a7af509a7 99075a1cc91e53b54efb5a4c414c7644ddd6cdf865894b0f1c419e02e321e443 21b73aa5b30d2ed3b2b184b285e87f0d67dfa64e4961bf1771623a697a6df582 c4318e6d7df34700f1b6442dc89e4391c6c5c1752bf44f41bf2836a644e7a064 ebc042af3561022a4a553fb4df69ff683559ebf4ed9f06fa748315beb7aef53e 0721d3ac80b88becdf657ed5c7a4655013c5cf293a1bec471a188e387e1d284f 04ab2f6b6895 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMR6 %!PS-AdobeFont-1.1: CMR6 1.0 %%CreationDate: 1991 Aug 20 16:39:02 % 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 (CMR6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMR6 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 10 /Omega put dup 40 /parenleft put dup 41 /parenright put dup 43 /plus put dup 48 /zero put dup 49 /one put dup 50 /two put dup 52 /four put dup 54 /six put dup 55 /seven put dup 79 /O put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 108 /l put dup 111 /o put dup 116 /t put readonly def /FontBBox{-20 -250 1193 750}readonly def /UniqueXX 5000789 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b4486858b2a4b5a0cc2e1bf4e2a4a0e748483c3bcf 5de47cc5260a3a967cac70a7a35b88b54315191d0423b4065c7a432987938c6b edad3b72ad63c2918b6e5a2017457e0d4ebc204b031f3fc6c13d7da7277a94ba 018e9998b3dd888011a5d7c4204989f30f908b95533bda845746b673ab71ea57 65a0d14f4350707e47c8276305b28513cbe1bb0dbd269a53719bda46e536685d df78ca0146b6b93e760256b74d939d4e35b5e77238f04c92298dfdd188feea30 e053eefbcbb52f2011772b3aae39f5805597bbc1e8bb75a446ce014030f4f2f0 f49f9e962ee4a1024a746fa92a3628db5270732b54e43fe5ecfa524f127e5fcc 788e77e66098336ad67fe4cccaf0253272d5df79864bf4b734cb9a5859d557d8 bc11b8e00221ebc12e97de4b1f466ead83a4c894709363bca9040410a52d592e 34ee40cc7e5efa920546b981aa659513a24b1b85c221a1875b62d0b89e57a368 321b8043a5b094e0379760a443d632892b14ad6d19dacc8c78093243ad67e6a3 08e56e6b68412ee690b10dac6e17708754a00d51fc957b500eb80175716eef4b 2ca1ef867614659bee3f2b7319e97b6fdf1efc847bf3cee3156f72f21751da8e 5fb6898919e6799820d3de0642d756e09d6fae4ff08dd3deda3173bff4bb11f7 9109c97ddc05897af709ea199a90fcee8ce4c7a3c15b18170c41c04de2d3fba8 f34296a95b8e1e8de3739b17273f8f2c85e914615e8eac5e8bd2387ba3b1edf4 7968f06e2067d836d0f9f3e085cdfd2de06a62c81d786b304326f7002e83160a 36598589228b4dddddc43c85e1d126f8fe81b828028e26317af5894aaccf4f69 6301e1a9fc45935d8a414957f08febebbc3a72ada80f101e47447d019ade56e9 f4fab969bba2b44e47399fedf5caa1bcea216d7ba713d523dc23e703fc28e7b9 d79496c05fb0b0b73fc9948a1eb4d610792bd0daef8ec55bda23c6be5fc50839 bb4e0b5b70cd1369dc895f0dfd7f37c458c55e4693fd894f24f67d49c5d5a95e 6b4470f3533c824fd03d4d26268f39002d56d7cc25342a142c83d1a9982a13ec ed20a0bea6b32a05c3c4c38c40bab3eec10b24a9e176031c8e4185448d9c0696 3b9832ca2573a7b06dbd02d4b5fd458c3260e5345966db33d249df7cff920dcb 4ffd59344ec78619c5eed25994595a6a117c01ba4cddeeeb61f899f111094508 294c26ee385ad2e1c9b04b2b5bdcc86a7c033c05cdb2eb3b55de156fea5b7648 82717637f4977948208b43393f2b6a6652d33f0ea94ac99bd4b8961cea136b04 315f973ef9f8aaa5842946f9b63a43d56808435e716180d5c8b182702cd3552c e318eb52405baa9372b2b6b9e7e3fe5fd7c31f54b308b75c1bb8de02dae5d6a1 60bcac41d8ba10e847fdd9747487bcf7a187b42f18718df85606c1c21a842340 4fbe5be70443b902cc51f1a1114e44b51b0c97f41cfbdd297fd3562002fc4df2 3195cc8923c9632307eafdbbf0f80b85a7169d572bd646b31d5fd1b4d09440bb e2b26c9d1b1572b2bde996893af48043faaf44edf9aa511f0d02127481f797e4 e1260f66b9f71063b8b80eb1e3558ca47127d2b9d2f464bbc1243329c85e2be8 eb713928004e87e71b0996e8e5b98074bb82c13f2fdc7bba95a096a78aba3af7 f9bf51c2a48a423b11231eaaeb189bcafae8abc5556b475fa050385bc698bd1d da44a1fa38d9cf388d94226ab789e69140832a5ed1744dfe78435036cd86f1ae 43b933c1822e98105e6aec539e1f7d9328cdc04c6ac73c72fbd40fc97b045ec8 974cec7eaab3e7990662d7acadc84302cca527aea1296d704b9210532e117ec9 3ac94260661abb4f25c9cb80331fbc4e23cd3055f4597806e718e7ec758befcb 19858bc41bd9ba55c555ad72e04c93a6b5f86949b3a1e776e3b5961beaddebd1 fadfc9001b82f851b38f012536f6ce9a2cf5056199130d4efb1fe5b87f3e6565 5831981f5c639e6b1c6ef1764fb09f5be3f3e26ed7195cae060ae9465643a601 3390dab1a3ebd3f19f427195c06ad51befba024ecd72632a5746f2306bad493d 08917738f1dae6f0ea7d3ec1747ca26ef064fe5a8e2d261db8341dd7133ae03f d5f9799503bd18b6d5fd43a432312b45a3f16e1052022fb6368422600f47978a 21f1bd7b1c8b4f535424297122b0a66eb10a219fe40338fe278dd243acfcddb8 47e3337eef5d449b1aa3b8d3cc36033ecac7e4a84adbe44865511f5c8683d599 d076bcb9753a07c45aff7096c7eb1f3ff6dbb798c8ef8a4410dc111c06fa1518 9dd36a767eb9b8fd9d2b4f23c428d93f3c739dc2bcc560b9b8f062412c7e164a 56d10916b0f07adbca8ae6215b264836b66af66d898586c220711c91ebf3bb52 5c4638380dc65c3de049b3d7838af8c0df0faa2524f969f91d946373b231a2c3 64cb76c5e4d13db103226b8fd1c83fdc1116d6f2971d5d0d9e94d4fdce4da41b 870a6101f8a47e9c14532627bf6d882efedda4ed476d032022608fc97d360393 6acec57ad622b38d9b3e49b02b546f4130494f511bb23d647183dc1565cdec7c 7c3096448dc0b9b71ec8935c9350e56d344b0c1fe19fced92218b2a587f80674 3a5602ce8f770522386f2fb8899fde53798f36e2cceb1edb8c25695c7c60b319 9778b07ad46d8a72a7cb33760ef05d8d0b151b64f485ff9e833cc63b78075518 5c4aa71742629df79140eaa5a441183614c68e0f516d759d160b0ff19d513704 414ee56af6a09fe1ca4b42c51551743ec2ac36718100a3501a044827e8855ae7 84fed0b866fd0c7d65c4d635ba0d17f9aa72f86a61a5056dd7997e176b4f3d23 9cecb9b3bde95a60beb9435955682c22581385af8407cd67510d47f73e50f0cc 6b6e74699155c7829a594833a97166b2bdde6978a8a42a65ac2fc668f81118c0 1b0b9c1895c8405500d043e34ce3d2ad1e06a2319014c64c1e735443fdf8985f 76c2f968fb8c91b0c22da257e300ea7ba1f451810c025945593ae2c976cdbb5a a535cfad70db3ef54e676d3c984eba19f6caaa2d34290b33e0d089902436a2d9 d923286a027ba0af5a90981ffa89a9b1fdf01e420ff7ea6b7b91afd97a31174f efc813582b2a4cd93a90777b5b3dc01577e99054caae9f4d2937242b187152cb 1491a0249b649b6af69c0390bba86837efd766f27c0cb468702ca70de3d22ae6 2a53e569d0bd38543627a77a487fb18123345f108a8a044fece44bdf1ce59148 9bc788a237e6fbb42bdef103cc73566e2ce562e85ad7f43f5ca8708866c8b37c bedaa9eef440a83b4cdd6d9816974e60618898aa22dcb4edb500c94056a64f27 f2f99c31a906d496283bd154afb064d6e812bc25a6ed14fd2e268a11e7247d86 d4ed37e0fd85d9f6e398a6b782683129d1ed2b09fc8229fb3501ee288e7eaa29 b0b4c8906cfe1ced22d8eeec37fba6f0e63145c5389634f905516999720d6427 f36e2f1b810c2832490516d36c3d943167534bcb02a24eb97d9337df328b46b4 58c1ad812f3bfe4774978ab94bd48e0346ec2707a20b52557caf0ab3727e3cba 666627fb98db820f0b3be502dba5640e16997b6a9ac2cadf3ba4826cdb319f9b edfb6760b0059c43cf3f56960b12c3256ef98257c62f1d452c8ede1ddc541cb9 eef48d6de6fd2cf1dfc322147d3ed22cd7fdee0de3811520164d8ae6f7b49b37 563b32c98cc15e57e0a19f2cda517f461932bacafce0cc38b205a0ba5c2890e0 25e8740fa3242e2883492645c397daadd7b32c731c7e804c4a3db21fc44521aa 5c542c0246007ec4d3187053d115e9d4b1c12dfd053625db86c1fcac2cbdb374 c74d65e3dff5cd01d013bd20535658575bd0178d71707d7c011c45a501dd23d5 cf295a3a82ad6e7d384ef6f1090d3ca4e9ee608f3f0b688974013dfe85d18247 de6eb09eaa9e85fde8a0d5c212377621e24f4cb12f34fffa72e65a683d6ecfd0 41374f63e8a92f9a5120fbf96c76530c71f687beb797f84d16e2f1f46415c499 c196996bf8374e9ae3ef07076ba67e1420ccc47d25759eb0b6204ee351c0f6c6 80ccbc7402849e1337164b87e658142533fc2ef3e52c9d4ae0db370702d1e360 9176fc2bc861f42a14e9450b3d9689fedeab08db6f6c24638f7d31633e0b4983 8fb9591a863959923eb6a5b614eb55e10954cdd52313da8a8d5b6b564e480272 c306e423bf89b549556b3a1363bfb6766df2037eb8816d8d0647743ddc96e796 63374be70710a97baaf096e8b93d072ff4a76d07b52a38c1bff2ff2bb07e76cb 02fcfe9e8443b6fd682284a9354612cc7e1f35438bec62c226f8eccf752a8550 de66111de5ed0c86f24fee2409ba8207d185d1284a7022117b483812af34a5d3 e3ec96baa68c44de3386fc4533a8fec4331b0e984d69d10acfeec3a13b1e80ac 1bd2814133013d4f5e4c087827933e2b750fa0ad8514b9c43a152315f604d8fb 42aca2f4cdcb811f1e17c9f3a64469e5ac1c0daf13eb976e801224ced9489fc9 ac787465364ca2c68f98d84d9a6a98635404aad605efbe18a253b55297fe7b8f b82bbf38ff876bb4d81f5caf97d70375c49d382f29386f82992f261c85efea87 55702df9208bfe3b054dd4dde2aecca566b93aca730705285e1748ce7a347674 e7bb22d5b157a370a39b4963fcfcace7ef031c9b2fc53db65af1e843c3b8e66c a0370bbeef53cd386e77e93485716bea08a69847081f29d3b6f0d1940f995b1e de20a004d2c99b613bb22e7906bf852ea0d9af026ac37aa3c164 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMTI9 %!PS-AdobeFont-1.1: CMTI9 1.0 %%CreationDate: 1991 Aug 18 21:08:07 % 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 (CMTI9) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMTI9 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 12 /fi put dup 40 /parenleft put dup 41 /parenright put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 57 /nine put dup 58 /colon put dup 65 /A put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 74 /J put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put readonly def /FontBBox{-35 -250 1148 750}readonly def /UniqueXX 5000827 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacee583a5c939393e012707b47e0c1f a47d284a1edc9d01a497d772bca8c543388e6dc0d1e2c4944740470e0914f65e fb0737b0851b2ba713a9a00b36d07da6bcb52920b9b59efe587734027a3c5e65 66aad332fe6fbcced1417802822a3b81d6187875263d6bbda04bbcf6e4870fee ad60f104bb3c5a766610dd11aea64a6b107b0b04439fa2888b8cc39232bb83f7 695aba81f0260cd5248b9e649cd800bcb325468c79ffacb9cd3036f2ed7bb65d cc883aff8d6350d6e8af1a9c1d2d7fcddc4c554c7e350f2420586f43e2124611 487cdb176d453854b51cb8f9100bf241899bbef87d57f1135e589813995c4d86 ce91db2b3757948f365186c2a4f32d845f659a8e95028f9c0168851997135c67 ce7654f2de4f22f51311aa78f440e5fc2c58f6df901fd071b2d53b2697bfcebc 43fe4508828b4756ebbe1f3e8512514162b3bb44493a65f11ab56deaf152fd01 bc8b642e6021af01998edc76b6a1929fbb9fa4fd1a430bfd4464b53f75075f66 c726fc037fc23cf09a178ffc60908f77d8ea9dea79c1e21fcb5a6a994e5a8e5c c6d6291891df7695db58a2dfcf3bc9a17888c29559ce8f37dd35c0ae35def3e8 daa6d8d574f457b0385efd1611c048b9ce76393fbfa006fd23d742cfe7016035 5fe95302b129a824c7794a9de47e463a7fdc42fd72b9da3fabc3e65d90258ac9 c1ecbd3654b103a488715f9e0e649b57146b786aa399c6ff39f362816306a1e0 ac83a4c83410030d740e15165683e843f69579ec1824c36935ed4705962f494c 401400303b590614e5daa8dc53fdda083fc854e535fcd575b38aa43d3d5c4a38 d56bafa926fb9e7fd69be1af2b502849500693dadd5f00b3185a8b18a0b64f28 9f33f5f1eceb14d6945a22d0def259076cb9b11d899318852053d98c36ce0a0b e347edaf1e4e777c303b4a051e3da7ae5140ce9dfa018a8669b0b551696e194d d54ca062ea1ff406ca877790dfd1dc18ac62288cfff849d4a142cb1c1ac5faa0 ae05f039e3cdec6ede558fa3faebb0d3eeb981e561fde8899d5d4effd8610a21 b1ee990d09836d75ca7f8adf56ce3802bb45fa9a0e9449fb97ed1933f3686923 7d6f9b8ba6e7ddd9b21bc2e53af56e28c2dc8ae41f3869a71f23667ab4871f21 2c30e9881b66f717864baee6fe2779ca3c9ca1c7585d6b60595eefedf342b92f 717e5094458d8f40a0a7efa47173c88e3ae948430b4eb8409f1f7307de2888e9 0d1b74df9bbdcb05852b5551829ec8e206645547d47277a6b299e0b94d9a9537 90bf122ad68524aea20c1effa00297c36bea1343cc6952d699b1fe95d67a389b 10f4a99fcf266a447030876f1b8ff3c02113c2dad906c8320bce61dba9cb27f2 a38aff3671147bb50a8a2b16e42120975ba79b2082794a544ddc45b4d3d31bb1 dba0045ac56549efb1ecb08779986e4bd494fc5ec0e17017289722c2b21208ed cdbdc792b0994a2e06194ab0da82ae54eaff506ee58f146212f01ecdca87e9a5 423031175d69d6a4e00b17375e22a80744b829c7f83f86aee39e34e48d15e659 659dfc040b6127a2dd62044ed4c80784983c456499ad5c08ee011c0bd00b1846 7a75616d54dc2fce62794d5464b45b5fb6009b6a1bae0e85c0dd7d06647fdc85 b6c4818fdb44633f8a0edefbeddda7c49730feb1afb6646bae1a22a9f25c1323 0c6b31b715f078cb1a04f1ac420a0ddb0ff5727ca9ada63b8bfa5352453a30ac d04f3ec5787c0753d706fef8f7394ab46f793afdac9acfcfbf6bbb3f3e8b7d51 af17d86a0c8edf4f7dc2fc22a0ff5c8d78c984d2353152de41a4835196409223 e90d7ddeb4df53539e555f2bb892f9b5a43bba2facf6f9aad64f5fdd895f3089 9cd5a8c83999ba432749700a5894f6bb7410c861fbb783630858d485e408cbb6 2636a1900fedea8a06bdc243fc3c2ce100312f84c9856102027aa358e882628e 1bc211f4c73df4d20e8279cae3d2669a0051fbf229536a74825a562464ff2d24 883cf17a48633047018d4f8123f2e5a953450c3f2f27accf1f78ca32501a6b8d 7179a246f901df098409f369aff4f75b30f1c2e0867598d5c3d23cdd1095e6f8 404fd4797e1733e796cbcdfde8aaccd595abf6f4e3587887fc6d4e59e2786cf7 387122773dc51017fed4c98f69dbcb9e078258ee143c68796cfe7cc5d056f837 610379f89448f376253764f7939558b445a6a6971c16a4b8943a01cc62a1d081 4370b2bedec961a2e7215152f3ad606cb8ee8264f6d7190af1eb1740f0cd6fbb f674f16e1e066c1da4c7709863d6caa23d132bea353e53176b2ac830a80b221d 63d68c0c4f941851338e0357f8f8547e5cf7b66d102784b1eda39de932cee465 4697e6394f598238cdcf6698656f6b94fa5f216bf75ecfc0b78e00bf14324bae 83eada36a5626de700936cf20c07f2d97593f30256e7e2db5a8eb7baf05dd11a 3fc8214bdd07439ccd278255a4a74f34c02f1276b71a9bdc72ad8ab2bfade823 afc4a6ea695a4e4763824e1e1de4c5ecfe8d80c5411c886bbd83ca9a0c8239be 7d3f291be8fcfd2f5453e6f0da4f5dbabf5d5f5614bfd0690d856f4803f7ebb8 b738e5d153eebb80ee6225976bae601877e3d9f254eb0dbb5edf5cb31a8fe6db 77232a468e0362d0b9fd35babf273dbb17c8c721d4060a2dffb73a4e636122e3 799026d4633084bf6accc85b55f7c5fb557bb64625ff7e26eda7adb86a8133a4 fb0091c265a4fb48d2dc5e1e0c26edd99705c291645548868ecf06fc43849b3f 2afece9e75ef457ff096e5a210fd1690e333f116e6db049c77d1654e916c02f8 7eeffd251206a807bd5a678837385526fbaa22fc48e64881054d161814761b82 9bdafc048853324b0ae1d105ab1acf7c59857c195858cebae9c8aa297af83479 17eb5d28fb689e15527f01f102cbfe4f23f2b97995034a5432f03316df38426b 03f8e7b02c6f027e89d86d323bccb17d17012ca5a0d19377011b684af59cbd92 1126ba3ddba2d26e6485d22425efe6c777ae3f3a4a8d9e68b48edf9425e6f1e1 2eb6d4b75454a4d77ef8ede712e78ba5759f0d6e529e49985784bd7181d3bfc8 cbb30d853b0fd38b45027fc4ed3238715c626b5063803c38ef8a831d54d08606 d229f18519bbaa56fc41000f0e58f109b089d8ebec7e02df4d2568b4e117d856 10401a886c3e22fbcb5d1456f22b2c0e88fd21615ea56af14f7239c5569172ec 16bfb44a406c4f26410de03d83bf6e990b7103106739c0607dfcb9c3eda7fb9d b5b6f5441b572ff88848390290c9dcb856e91f2128603b45ed08dd0f60a46eaa fa93800e47aa3db8502d9c9b5121d165dc8f5641c15020317675bb67fad21a4d c63927a28f022521c8918296475d9936349312251219552a376664604d739b5e 82704f4447831da0b46c97320332f7f6c965ddde150477b71ad24436b24aae1f 556e527bf319fd206c040d864ff6cc704d20ad840994fa778fedad41197a1a10 b99a1af48f7892210a4e6d08ed51e034cbfc88d19e5810680c6426bc06e2e8e6 b3e98f17761da732516acbbd650d971d6f100fcb670e9f842d141905d5eb49e1 d38a933eb5467a1261b54158c4c05c11f4dc7e98251a4750715e475bc2c8a40f 757bfeb857aaab72ecd2a9ca30c3f171a1dd8d2aff8061739d221b8f509eee0f 7abe026d4443c3b73f5270f69d4e2628e67c4e27e4cbaeef98f6c890adc25a64 1099b9123a699550782f8d946357e6e15b17a0166738bb383f2ce7d1e4f828ef 439e11bca8c506c31483aa1147b07494060eabb74e5ebe97cb685783922bb2f9 f2dbfa40d3a6351307e3f21d85cc13b43cc080e891c01841ba1cf1d0fa1fec1e 67f4d38939f14cd754abcc97fee830894a973ec0886b3a6b8e52535bd9c038e7 24d0752379322e04353b5e46bba33b4a5580c6819d78bd76051a6d8e26f9dd7d c5d8c85a0cbc0bbc2b505ea021f532d77f30449f2d0914b7fb13eedbc4102b50 d3b6e9eb049c52fae496e68b37551ccc4c302233eecf549529b0b6f7ccbedbee fd9a86a6821f133af15d2f19eaee723a5206fdfd3b12aacf2823afb6613153af 645e21add3724a10d0f9dcde705cc08d6565a2f444783368d8e3c3dd43eac1a4 8fc6b0b5a751c335a136ceada84951847c87ebbbd405a2b053e3170a1c90c242 5f02c85023476f585fd0fa26a37c0848eb71358859b84a031738df03a63c568b bd451aa9b3307990172ce241762a5529decf5536d590b57152cdb8a53d4755a1 29e0487a9c43e34e46254ee368c49f6f2ae83dcbdbca3ec37051d066e3b6db2e 0a3cbf0f3049185caa5a0731148810a988bf6ece86bf0427755dfc03d5699deb 3ce5aefa5ae5f297c1d2df690834e37713c8bb5b5050f7e2cd6cad4f9cd41326 75240b468faed1ada526f94e2856d2c07c6a345b0997ef22cbcd353e83098424 e1df233a665ae0bc47be1d09090bcedd953a2f54ea0be0f2f117890d407c080b 5fe9444240c1a9ced812685531363866564ba437b53be512c9ce9228bbeed100 2bff7bdcb5a0a43ebefb2443975a200da021743ff25f402a9b2b78082e3f6112 ec6dd21b7e816f6271735bdfd4f67a8e99e9260f1a30ec17376b3ea682baf985 828e723f6b881b839fb76eb7433b69e4ec8be3031e46dbe9beff4d2fe795626f 7003b0ceab2fe543c095815e1f474268e4ce261733286cc08ba4d9b9ff0a3fd2 95c17b9839dfada8f3849152df0dd26503b82262b6dd50d5babb71ef8b756856 46caa83a2c24269fdb710bbd4bcbd03e2605e7ad9d50a47b5625b5d7f19057bc b91098c5b27eaa83a4794402ad7a2c007ed8039b0354f61af3f4ed85b381d79d 1782e58556e622fd6781e8d6acf0a6f95544cbd403e6ea4f2fbe6da798631f13 d73006b445655d393c7407ac37580ff7891fca710f5df8d95e791152591601c7 f3da585d828bfa7e776d0eee2380ad34cf11356e41170d81259162ae3df546a4 b2d6b806593220822b8ee8fd0942cdacb632874be53f10f004c990ce83e15b28 7d4854aeec95385ba03ce7941c0668d6b7facf700ab05e61862c494702be8f36 e015dd800bc843876e81c97299f42d59eebd3abc6e1beebb55273de46436f847 f30e9dd40ff71a0f8eadc088743ddbcb884f2011c3b032a249aa4f2493a7683c c520364f806015b05ddcb065c605d9d64e360605819c2512593ea64da5642063 b39292ab757e20129b7f4cec5668f393560578867d38d4a3ecd7c9b0a699ac94 9d8f633f514ce48dce891c7fb565019b2d1826ae90bb107655ba3a5216a5fd4c 193d3b2200b4659f42f47a1c9e2c07f37586229172bb68f35dba4e1d27948a02 19043e25e3bf337adafdd420896d5bc258bc2af1ba7d888fb1868765a0d93ea1 fd251b357f8125d971613b62e3d3d77e00314c86d5fe0ac58bcc9ec8794721f8 ccd6a0c92cf6f6d69feb9b0d5760652ce0946af37b5f71e3a2d0fb0dbff9435c 25ebe986a5fda0a0df40aab620dbf386eaeeac2317462c2d7df19bb36c61801e c7140c0f9d3402fea606c3a70649cefaf3517a874caea1f7b06050f3b014beb4 e24216f55640e3ef7f91abb36cba85ee264d4717b43e7d74f6a018952c94cad1 4cb4c9794a9b7123efc4fa385886130d7e1633f3612d196dbe6cdd7d37302f56 ca6ab3e880af6055b0e61fcc0e14aafad5588e2e36953bfdc63dba23b1d7ef09 96f49224652a28bf59f7c9a3fb6a0e73d7648c3d2241f4c989f1af7125648b4d 75f72c7077442865fffbe12e4e274ccd37f7c580daf73adb6fc5f2b862865ef0 25c605271b97a9a98b00edf54779cbd22dfda66a70d8dde8150243d2b74f5d39 bf427a22fd15fef2bdc91fb519ac3eb7deb7de8617a2087a59a5a572564a7380 2d80e4fee663141e1c23c8c73b4934f5b8b2e97789a68bc5c4c352de0fc8eb33 42352879312def5d93b7a9cdb84587b53fe41572f5c07508f9ccd6133ee78798 3834a10739bac0b5e5e32541edfdc6554aa042f35c8033c47714ae225127503a 59c8c926999fc17b90b90d4af160120f91a18e5bb889d2ebc294321613918d76 85bdfa3ce2f6062fe278a43c1730d1f3807ff13bc691a58f8dd45801267c28ce a9ea8bda1c730e5c3e928436ad102afe69d81fbd8c28659612f40184b4258af4 7e46733f2e4d966d44350c464ddfd31cbdcaa2ed90cff482348fbae21c2f57b2 0bf4e4ae3ef5716b9a8a511dc74a6f89044d6c3ad2ab3cc8dde4b20c0cee5f87 e6a0c2571bb66a081f4008d182b0f2062bde5fe4b8580c3bd385bd5851752861 8734cbca1ab6ce285b7d69ef5f22e2daf8883db862f8ba02cf72054355ecf935 d4c06144ab364cc603ff873e11b15c636bfde97e6c1c2ab0895f60a2ccf281e3 b9a3a3232ea8c52985976133d87e5ad96821f46cfafb0ea2aeb6de0b1ebf4e8e 2eb58ceab74e4c00ab08bdaeb82b3e0f1338539ca4dd9ee3b8a68ea16ec08016 2115f396d2fbb63f5a1307fb215104eda7b558eb71bf0e7afe3425340fb2784a a9cc0e25a7b39d937d4d88bb5c66cf380f343924b178034cc051599a85d94de8 31cdc3ff5fd74ae1255780a545c698f93f90d3ecdc0e33e6f7c763e74d023dad 80644bf975b8e763890e5520e8a9781ccb8158d181661c0ac76e724cfea94ff7 035e4b9bc47287f9260659921201cc34c0ac4ebae76d398ffccec4713b03737d b8bcdffa64ef07595cef881a6f53c1c80c630b005d3e08788df3fa7bad4831a0 912fe741cae5ca5a6dd587172b29ca92dce000984f30b605e46380f8aeed21d3 5f85f662fca08794e590cba792a07c4f2e4cdbc25afa39a893d5ce9e2998b9f0 8adf1f91fb7fcc713a31cd290b103312cdbf5ad83f2c21b3929ba0a15e79d51e 922df35ed8bb1fc2b35b297950ff36cb782e115dafb57a51fdc88b55f824617f e3cfe0ecd00a7608759286b6409f7d4c208cf2446c0d65d9fe4e5ebc63853107 c4eaa9c3b72109be7cacc4dcd4c85aefc295a5a1b2b3605712294d558fc4f029 f7724f02568c1010d5d8c55e7d4dccca659fe7d54261a46e1d7a8817c9ab3bf6 1d55cf4205662f38e2f95e42124525793996bf6f85b3531307fba4d044cb3fed 41acdb1b052fc73a5bde1a19f0b07301c21d9834fc556e3f4f345c50da97c86d 82ab0f5edda22af5157cf690163c1ba0f0c53e672bc996fc2b949407e18fc53c 46b5e228347b5691e9f3335075062c6b9f3d70f47066d79d4d242d0c3a227ad4 6b5b9c9a358f6d367e934f5045dfb80914c7969f51bde6e461baed44c55d5e78 40039f8e2eedc8139b90d9ae01469c52a52ee3ea0bf6df1a1493492ad5a2cab8 69b03a5c283f8101b334b7f56a3805e2a6013532fce7a8113be0890b58d43ad9 ad2af2560e5a76d2732d584ddfebef37ad483f2f0e12a85eea298bfe86c8a845 99442809352562c22a20e60b729f6c44152ea082081b2a2fac3aadbdcc2e5860 48577ead10cf18e4897212e0e46799f4d7f62fdc3fc212eef791d9f97d2d0731 99170c6a058a13c06d15e753cd6a4382a198229eb07888178037df3cd8ef179d 08bd7343117a834e7c8dc9fc5b11089b06794dd5860cf205775354fbca2368a1 eda5b28dc9d53f850150f0055d08360c2d2229f66ec707312bcade3b338b7369 fd234fa96879f3f6d1c115ba7a70230f49f7ec5f1a0902809cf1e61c48f9deab 392b195701e72210d2cef970923041e8304e62f26cdf59336ef51819bb9313aa fe7cb8f21ba2653c63f7d14db49a2b7b9ca297e8c4d0134e5fde3b1ef92bd0f6 9443e4a1c7bb5bb2b86d728dd514de65b62610ef10db3229df88280bdf4b0409 383c67d91ef98cbf38708e7ce1f3ace160c2a54323d62c41a7dd9fa954136b59 17eed1c34714ffa5681baadd9b84d3eccec64000153ae9008295263060cbe42c 6ae3805ffd14e02eecb403b46ac0edc95fcbe9d1288c78bbc8e090b5aec0a9fb fd4cfb1cfe980ed6defc6e3e2db11d5752448a1d2733c13d994c9b829ffa82bd fdd9c6f45b1f78a8f3376dbbc21745ec657c799cc2ce95d409226b3e1529d3a2 0a831b0f81745f86eb832f4c4c5e5475e0180769498208e199c7e82d50ca84ab 39235f1b8c470faa290c4e6a9b74396335974e9a5a9b7956f6a2851355acf4fa 80fe0f1b7ae80f52a2b11850ed165f9ee8fe88877ef7d89b4daa9013b120b19d 3893f38265e4917cb58818f4ca1fc61fdbefca2d17b6fcf96c88e5df1da3d892 a2e79f3f664d83bb303f987293286f4c5aab4ced72f4813b88291514fac8e9fd c4516c11518146ffd83c05f2e3427d7dd37592bb3b70a0f9b1d6179724a8935a 99a7051e3144db2ea97916e4cf3dd16eaaf17d0e7a485730f528716df436946e 99bf333b1e1cfc4300a2f793930940205e318ecfae8967e733aa8f49592b34b4 c7d3d11662800e82f28e7b89a1c0dc05a71d98f9a9748eafe309ba310f2840c7 dc7cf1db2a15553220d6f8e0bef6140e656389b4bf319991348a9e3f4998ad07 8f06a878c3241d193f3763ff89bfea6e2549dd9fc3674bc114bd37829a69e2f5 b34d64c7ad4fa9572159dbd0b8c68f7b4035024fc0b1f3722469f0b1dc66349c 01373ae00d0de42ae840855c82517bea825b29076348b627a625288b968b0da5 ba20e496866b436b227116698ec092c440823cc75298938dace0f4c453375a73 16996102c9001d505bee807810d4c2e929b25aa44f09bc9e4b9cce7817f1b193 f6b209046a40b265fa59d679b07bd90c557176cf14cd2a3fa8a5bea3cdb02903 d475a839135a48c23f210e3e234aaa2f057678baa1f9c41746c09d8bd8d2ba96 afad535bacd538395124c12f31cae91bc54f2b0e04fce2018680567785f10ce1 4fb8e5e229cbe5da0862b2360f400d769ee1a76ffc6bfbbc2f1cc4218efe19c0 efe66a742eb0dbb95de79c1538f6ca3a35e1d591d4a5923ff88821474fcb0d17 36dc9e3f24cda1417f797351946ac4b6502de7fa233d340ff1b74aee89c9def4 380072cadf005e4b62620201ea9e5be537cff9899c3198353fd00b70e4f1d844 c647028239cf0346d636782384a5025c0d76d135d3860e40cfe78142dcca33af 05906081135a30f2e4d24a4d725e1d323607f1c1e5a81cd9db8b345647752834 3389da628fad85c658ed529a1b68cd89ac0b98e84b7a0fda4964c659db91ea38 53b8b20299773d13842620b7b0000be2836729cb9a0b9a80ce63b2ffa529a881 0a0658fa4204ab864a98b2023d2f6ad0b7827026a1bb2263adf5fab11a999d50 b2e1faf9ecc6a8963857d93a087e4db0b4c30948919df5429564ecae5d40c6c4 165737cd3bbb073a694b2c8b6590de1dbf5c2c4e460fc3d0e52493fc0302ab52 695dda7ec33c5ece8c9cbc12310a1ad62c36f5465adc2cafec038e1a04c36748 0b4417ab1e7b448714196e8903d33efb198979068c2e166357f81d0005ef2ab0 a3e156af6da97b3d54aa2148db2922c43922cc860acaac39336f0ec2f766efa4 06db855e0966aa7257b9bac2644edb2dd974345ef42b5f10d249c26b607b4307 417fd348a72a4dd337da360141e66939b02bf9ea4e26ba77e5607f6b226ddeaa b7435b3e15e47dd8d90b508f1b28fa9503b920c194223df2154c774df18dc528 bcad03c323e733707b1f5e3424dd9cb4f78dbea64346f8840f54cf0e4059a989 bdd31a49dd3561d477d4f3cf2aa9a127f0354f412f85bc3d516927f3da63506b 02322f5325a99b8c464c2e1216a10b9896c79ffd168ccafb38eb87a484a41c73 4d0cd231500230e56cbe99f4b9b32d3f777243954dc7d0f5cc79be3e7ffa4096 9961b61e39b28c7ab2de9e9aa27451cb73e7dd4eaaa97bdbe7199c689531a26a d81f14ee0c41110839416b2ff0d3bb987e1bb81c6bcbbf03b929d5026e1d27f9 a9f45a6e2bb915f671700b9b22e7b6db9fe8c92d43159b0246359c5482a0db7d 623e4b9e0cdf1d99855b8ecdd8c3637f9d8862a05064a8fdec763e692a4b879f 8cd1e2b6e1d68c034a34f3f7cc0917b7b4f1a9a58e54927d23671c16a16d2da5 3db93c649b1d98249e60fbba287b84a79856007a9c91fcd460bf5bc29eb64b2d e3a97668bec48917e1c6edec94d2e4cfc6974874e271727ce2c032261bfe5897 fe2f723935012196db2da44abe1e7887de6e5d6f10c745d3bf08e3bf7ab92c06 6e6781ba11d955b6f9848e75b8f085da881d5ca9d7182d2df5f48ea13213f58b df55a678b648644c5d306f5da45ffa8aebdaf8aaeefc1bdd5d54db5ca6a76d08 b9a373c4c86801ca222d48eaaf89bc0ed3a04e4e1f3b45cf3a9924ca6cbb1a70 67da114d3530f9aa4a9c25f4b88ca42f04f401c1f2558843102c2d2cf3677d49 e57b08a871993d8db734f4c48ab738a715ed4e124a7c5f625739d37d74c41dba 63ca623af211a72a9e408f7300210cd75b1cc6ca803775f5a2d4c9e552ffba2b 51221fc6e1b8edca53957b2f2cbeff051566200c70634b976aced39c3d048819 b6a9a9cd681bad33231c872f9aabfaad6a7c8dd843b70c565089e6eee9eabf7f c42b6a2a85874dba4c3e2b17ce2df32a607653d03a598e7ee7e4df8bb09fd714 efd6c627cb5216e67bc26f35fb38cc59f4bf136bae66c9a520ef09c7597d1f95 acacd8f8857f45817dc63242acd7ead3c8fd0764da92585443674ea5121b8af5 c9f0b9458c8db3ecfaaa476c758606ba5bf4ec66595c85086eea527bd7a86072 e18d79ec86704052a0a45592db3556960f4cbd8ac6ea9e5d9d088bf991ce0cb5 cf9a81e60b1994bc7a1c675332e73104ba6e23caaa438d451e2c5ba33cb1aecd cd5950394a281a0b6f60cd650956029be7e8620ec90068d99a5c1826be8d248b 080cf6abb77d23d8a1bf5240556e066bdb6915e6f93cbb894db63c63b6cd5122 5c793960ce5919b089807479decf38d98e1d95472d1d18b05242cea6c021b0fa da431aa576ef49ec544f348a70d66d568262569853b29c17c28cbeea20e46d45 49214efd7ab2971127cc5dff420a373656c44bd14651523413e98f5d5c64c903 47fdb0ddc780e79d726c965174334281fe601ea880d23169849c2bd6e1c42f82 6e345b506be99e3aafdcd0b858be2c3b7c0231220fb6319d599dc87cb7417f29 b5ff33afd11b29e1e1d421b1cea3de09b859c19a64b03aacdc08f5b489ccd305 f1ca547bc87a53c2f8798cb3cd2f0d35d9160b6e642ac6e4d1ce91973810de34 155ec58c20113347538b5f465e27188525e59612cc5244c472f32895b476c028 47a844f4457bc2330febe784bee82280c36fc09be86e12ad22e64174689099ed a99db3f5804d4db98c667413b48c6abf1ef67a3813e244e50b060ec8375b1b2a 6c1248770f23dde670476862c12a86c10a6da64e8d0493fb5d771d325a77b6ee 03eb380dcf1a165d3469325589a0c733028501ed684ad5606ee1ffa273b11c27 15e3ff0aa89014f87b4f5b0e044222b650023d2ebec0b23baaa3a75325b6a748 8b92aa93c12e5a4b84336f4cf1439631178d42e3d822172da07d922405a5e783 bb5aea333c367db5fbbf154ee6d6a19f21b90a99f1b5cd336acd44d15e8e5d0c 6bc774bce474784934a7bd59ad045e2c00ef4ffe3845e2964c8034bc92dd44f2 2270acb23a1dec05b3fffa33dd3d34d0b63fbbbb2cd1eaafda6e7d0e2a304a75 155cf362593b121f3bedd82fe2f99bf7e4370613bf6c3d1dde3277d0d76aec79 c7a19131224b266a6071c48ec4ebc216cf394119f4072f2428c669942795c47c 1d9a61706749f87cf096b79e7223a78089b6687886508c11e217a2a33a147401 cfaf886b0a93b4def1445e994b1fc43f5add892c7d7cc0c63917ba8f7851da42 71019b20fc9415b98db0327c10cff4d2b5147bcc967cd5d30a22264991a604ac 5f46f67e14ffe75ca00d9aed7f43966ab8a4493a0f74467a12c3646faf62dde4 3bbabe7c1876b2102fb7c9f42e4810ab04e2aa1ac4e9955f06ff7453eb6a5821 2743b976bfa069347156c1615adba1b3d1988bf714bb3d08ae3eb618354339da 8e0b1af1cd13a323f063466da17d80aa8666241550e9c3192d73edb65232043b 772de60cc16716d7509c92fb4fedde4ce7d40b3fc20402bb343d9f5262f2a1e7 c4a97acdde72ea59bb2b5b04ee38780d660f098c057a6ddb5ae99d4c6c102fde 6d121247596593f6de93f866117eca754428c8458c87ff36a752406dd93a39af 47dc05480863a753d29a4c63f290680e735c6b9983f716cab3a4582ee5189a90 1a7bf7c8716ba8d3531b0d8f5d4828e700d8cef5ab1241761066e7c5592d34e2 92d20493b66225693a09ec4d93f16913e2784acebe3220600eee92ac2e1c2bfa 87acd3bad01b6634cd28dfa891ecd3694119f2b70bf79f3fd9790918207553ad fd636b2486cf098aff621e3a83d71bf8a19f992138ac9f25810c9a95b4aaa476 0ef606b9280d2fed772dd6e0e0584aeb5011e7e87bcc0746205fb9fe54c8e911 b768d88cad9f0f6934b7a239a17649f5e809b75fece3f7d121cdfd802d55987a ac1ef6d8a2ca056b8e55ac44e8c2b6ce7ee1b431ff145b5650057d0ca1ed512f 377db0a129a5c9acea958c1ddc87e960d43c77ba481e2bfc49a7baf38321bd14 e337c3526ed819edd6f3c7e3efc0059d16194e8b01411a3208b2be4fbe6ffe93 1668b0a62018d28b97e3f9487c5b6577210fcd3ee2faf37fad0033b9f8874fc7 608261fd554023c495573443edf30dfe934c488d4efd34ae8428897f38739c84 ca0bbe39038ae01463e725069824b607564e1f21a05eea45cf3b9e3dd1ad2f52 12110e4caacd0edab20898e1be3478bc3450faa78ccae4853aecd46b90fffb5b 473c7bb54f8b297c64341a5efd1ceba70d2cf26456c5cfb4e159923647404d40 b1f4494867126efd5122edb1dd831ea62ce62c5f5ef070a83eb9b1d8ae298e8d 58af8b4d8559f2a591c77424dc43b211a00240cfeaa08b18b182fdd24de89f4f 9982f03651f553f41c71eaaf70ea892636c56ad4829ba06e92f70150fc0d34e8 0c3861820f438598032f1b3460cbeab901d9c66f066938761a29f4fc47e5afff 412cf1de4f1af2d212e3318dd464735b63b14974b91b701de783204b23a72706 a155cc5b21f71f8a14acad2fad2119c87c9c3b9e59ee446debcfd8ec3aa4dbbe f61fdf945f0afca4b939c1d674b504d5fb26a834a391a52875ba67d4fafe924e 0eced87485c78f88cbc1b5852e3cb0a7c0cd1ef679906d27d137a6f8feedea53 006f51cbf2e4ee9b866020b2ff98895fb4adb35a13fcef3b51e8277486f229ad c83755890697de21195dc4740da817cccbd324758887e0b2a99d4279dbfa9e3c 5fe0444eb86939b571238bd77443cae3f09a3d9cb05390cf64ae8aa6830bf0c1 2895402298ba162d04bf30adfc1371427955be4b7750ab13c557150627052587 947dfa097d3be9917a20ddbf97da08284f3d86e36937e0c09641ae493def4ffc 3aaa5e8ad5a936a6b3db9934ba04ec174571c5b466e405892488f1a13c2a2cae 2f30d61ca567dcfa5afeb542772955eed668fdbe3b0c687b218bcce1d954b051 53e65c8d7dc2d07e0a265683b3e86f7a7580ec13902f6ff0edd8660a9a99f976 a9b58a59106b6f187509626b625010c342ec29b1467bbd26ced0c78927abb381 5aadb6d670476fb70a937a4862fa90fe79590e13e0f67a21ca7a2de13d0e8dd4 54be013ceee43f9d6f40b97d55f06c855418c40957faefcdd928747c458c3325 876084f11fffa1d15af5e73cf90ae8d12ff09802550148b04bdd960631296482 9fe96cd26262f328d5dd0f23d05b84c7e141f86d322644fd0f3d248b370951f5 12cfd9e72e0a15fd728162c44663788f0888dcef2a351950176fecd3fead427f f6947c4d9c6be33c950d94281fc62edc57c671be66b3c9ac62353af47c461c65 2c846855c6bc3f5dd83f487e47fbd616d4973adca5794d82e40cc13a801c3209 84c181f7646ecc6057f980851eaf995fdde4390ca4fd72e6c35d0445b0467cf0 714d481f6b1100d4a5660f1fd85ea8746b09598564e33deac63a652d97601bdd c7358d51bcf8d7a3526727e7835259e505a24f968b8cc4e6b8b1c86cc031e0f4 79caa0d873a08d23756524ad42e91df636678f93c7a3556d40bbb0ed2c212166 510b44d20eadc0f1efa51e2a3f2b541fb9a02db901f6b644381a1a27e0d37882 1c78b7780d8a89d6b77b6c6c8cd1c7d95a9ec50493b3abc28d6214938dd2ddba 9a2f561be793465d4e502756df0a37a73f75d8b56f4d0818518058fc2b6731a9 f44442046971865739950de2a0b587c8fc80b63fe60472e7c38caee19b3162a5 4972a48b8b84fde02b7f1d0a1a4aa0c60aff2ba4f4e505a9adadca30f515f5cd 2a4479bd8a2b2b70586029935e912db986e0555ac245423cabc9dbad3626830c 05d259c9e83a0fbfb58c26015b9da6289812d9a7720eee692cc9a5c953565bf9 0d304f05d564f6a791c431c1aa7849bc55e96cd52acf9a7a40262026d368bd28 d6f6353823f365419d246199df101c9a4294cc8ed605a4954e7b49e707fe77ce 4d92c7be95f3336b00302505b4945fe83c64c778f0c3ef8d0a578cf1c9f3b6a7 3a2b6c81497af491e8e395f70662ec7c0dac642eb8bd260471d85a06a9ad272c eb347e7cdd08f2b2c265a9d113ed6d9c6a0f6d1134a9e150338dc6b855264edd 2b2b2233689e8ec641de3ff7f4032a0fc0b2e3e02c27d82252715183b7ce164a 02057ad89db84906a05e56629871bbb84becd5fd54c62733080082d03e6e40a6 14d7963a342a8496e46bd518fb13f3b0a67f4bdaca0470721193c810ecee6559 1439179e07d18407bdee90a5e151709727ec99126209f69c8e8531a4d2590eed 0a136ed62bd2388827524e9ff929ff5ac796e4e03c4c8fb820f2db55bfde9876 3bbb4f8c380cdecbd91d88b0e099004576e4614ee21fb09907fa582d8e2d5e94 b6c70f28a8106413e7232de7ef76e1c9d0a7c67d6e989eede1157297411b75f3 e3a600a51bd763042ce680adfd0826e9f6b7392d40ee0d5dd7535493d99b0820 489b79e14139fe5c3f22a07b5f843883f77cd47131b872eb5455f8a3da3e8854 c296bb1455b84a1710ac20eeb6f4f444639592aed457af0cb4169a16948d1ef1 704251f5e4117cd68e7fbf25a2bc09a0dcc4690c96fc9ca9fcdb7664de8128ed 5568bd05dd4a8f13f5945793be614d4b9fbbcbab447a3ad2ac0e0b377f8c4092 bab2cd2a85b756b666c3a51979685e1817031d28dc27b96e53dacc35ae6db0ea 4b7ebb29ffed8af0ad6cb98cc5128266ddd2778897adbfe7e5b859223af8bb6a cbe2a6269373a1893a89152a14748a1b3db8723393bc8c2e71fbc7a612edca67 e2b95a95897a25d9f66cc69528c004a0deae77f385321312522a19d05463cfd7 9cb489c009862782830ce8e429efa13684a7473829af9caa41cb5718eef8ea7b ac8be39f213a4c1e342b9db74dc670375db72d59a8db63ce65911fe8c83b5c34 13118468670d0966111b5712c09309d15290889250f230e9f2ce1c009751032f 96ef459ab47846e7ba2ce11ff3fd4fe420fe3f0caff6c55af23a0f88af3b94d2 3eee9f3083b1b99589227857717800d04df21c1aee7232132c77ab1d3bbeee4d 9215d74c8917121c09655aef4a575017046cc339d22f3684a0fa925b92b686ca 0cf36ec9264ef933d8aa85144a96e3ed8fe64fbc82c394b8686c4fc5a4e5938c 2aca4aa60870a423f84b7b9470143036b695d430f20abfe9c566b9f410f1e2ca 7172a68143c234e4b0c0b1ce8000886a5b6b5f180937cb86835d172ef0102709 c882b24e48c28e8f004c44fce7e4f0d3d361e54f6bc028ea4580419021dee6b1 dcc87d775398a50fbe36508097e966d071119296e913212d2fe835f124dec54e b39f78d98f1b3ab6c2675d0519664f9d8a842fb3a3b956ec6d1dc334b34f589f 2cabfcbf7c783ef345a6f14bd0a167d707d3174ac05c67711d639d3e33498aa9 ad9566d62c8104a17ee6bcbbb95f7a995b52fb1be665b8cafc671b0ab5c44cd0 5b36a7f5a9e8215796fa272df0af9d3787684e520381d1341a3d652e42bc2cd4 33bb4c6548ccc60cf1d57cb490f292832c535acc885cb7190a50cc2b0f8c189c ccaba50cdb2cd4ecb3603c9b86b5a6f57c1b4b197bc2246c68c2eff754b2a860 58a2d7f60d027ed56175dc4e49fc29503b48126204244a506b23f8ba05a8be65 7bec4aaede827c5ae6a5ef54fa803683af5a907e305abfe8146768455fae82ba b5d093da46b09450b9e807eec8fd746f08ab96234c3a40ea781791687446c0ee f65bd9a34889886b766e3757caa4b09971250ef4bab393e8aea3a6ce0c9c2543 b66a136fca5933a30fa4499fcf83ca777a8c1a8606915713dfbe49d9de4dde43 7915cddc1aa050d9a7383c9c5ccbb1c28f7589157876b2d3bb2928a195a1d50a 57bc6be53990382abecd412e7edbe052256f983de1152a3e61593b3c79735245 20601c16fb882612304a8512a444eabeb5982ce7a49eda4555a4adb86dbf5afd e81f05220c24db52157a1e8d9b3e8f85c40f9292c87e0e9652008f4cf4533e2d 40fd36a512fe92e92010d881c2cdc6975550e01b2cfdca45e51e3f3c1def1f75 29ee4625bb668ecda99ee02a025955f4386e3ad1778cc5ccc1172e2e9202c184 3321a61865c71acb31ffc2be52651e51dfb7f7e3d8e6b31eb9410ba02af4a23a c90d758826062162563ad6022e826e55857bf137c2dd850a0fdaccecec36f18a d8691f1816860064bbaab09ff7ae2e44ea1bd262ad94b2a138691208ebd72eb7 3d8279095b9d39e24ef136d7e79c6305a3a153bf14f57c25aaf1e4be52c94d2d d94b0272a0efd58db547b7b240e93b25adf80182985449f02d961a2c3b23d59c 94790dfef51434f8de435566b168e9873887d2db57deb0e6bd56b70b10b825c0 da7086d87b2d54ecd93bd170670ff916b8c834a276b1eaf58188641a7b40cd0e 6fab1605175ed2e44abd4c47cfa6306395978a2e49ca443c2c378e885a7364a7 4440ae5d6634ee35b0062c336c13c81e78a2e6624287fc31e7e13efa8f30f4cc f899ed1bb138f4883e770cdf30fa22e3f7331072a0ac071ab06c5a6afe293c92 56d9418e5c403e885232f0b7fb7fa71a670293614a18561e99583135b68927c7 1261a0777a875df2594f4b77f0dc58d5f084227d8efcb8792a7d8ae08b584bbf 70274452dfd710b3a00df603 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSS9 %!PS-AdobeFont-1.1: CMSS9 1.0 %%CreationDate: 1991 Aug 20 17:34: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 (CMSS9) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def end readonly def /FontName /CMSS9 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 65 /A put dup 67 /C put dup 70 /F put dup 74 /J put dup 76 /L put dup 77 /M put dup 78 /N put dup 80 /P put dup 82 /R put dup 98 /b put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 114 /r put dup 116 /t put dup 117 /u put dup 121 /y put readonly def /FontBBox{-63 -250 1027 760}readonly def /UniqueXX 5000802 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b448685bdd20eb05d43275929a6669eca687892476 7868f73576f5c7ad5205db1a9c1a6a56e36d0437e383fc6e79be0f2101b1ad49 2956e006c5934dd525b295fbbea391d875577eaf43b92c5f5822650fc8fe8def 32af1ff2aaa741bbaa5c7188bb482eea9fdf154a99c0f963a285af7a9ef2135e 96e03c69db45fe42dd483c44a31086989bec1150db7c28825a741b352734823e ef88baf840e7b1d52481a9ef70d997d4f0f23bbec3bd2d45a8aebda8858d5a54 0bbb6a171e034c8281df7815cf71056426777cebc1fc996718dbf2dbd4479d3c fd6cb606abedf431767af2335db3e51e4d72f918ee74e4d2302a453c6e795f7e 32cb9469221d023775b65f222c5763d872740005b3892c46c56e3f574f673475 c1ea2e5facb3178890a907cda254570000144f959ac399267bfd09f3e0a73f62 4ecb51fbd7a61050f5dfa46dd1488169dae84c82f36935e031b424aebfce68f5 52592fc586e4bb59f15bcaf50ddfd352180855f584599225227bfe8c3b719dc2 4badb65f8283f00d4bd0e597797dddbeca3439348036ff2a35c6cb0bbbbf811a fc9ece5846b0ff18770c81eb888e15b5e7fb352cc4712c71136cbfea437c74e0 1ebf44b394cffd09788eebeef1f2ea6ee4f5dd8d267b544828037c024d025a57 f598f385e8c7e19b26ff09d29c9a310021bdb913dc84be33b1dad4a1a9fe12c1 64b3edc21d0f2a096def85829867405a16fb0472a41763ea02f2c006f2e69ca9 eff01adb9c18729b3d92cfa06d07ade71211e78b0c3f53678f9f95a9e825f611 3ba002015a1c9088775cbe218609648f246aa8fb60c78be37cf775265a02a274 3fbec1ed254636b8eec999da93f9baa26eb30141d204fd721fb18eedb6e38edd d005da79c09b241595d540776a777e4e2b9ce50049bca6b2c1492bcdc15d136e ddc16f00d967e7f92a5159a7511e8e935b9f645a0e1e3880d28ed337bbf976f8 8ba54dbaf93442975a05535c537546a3a3fcc62e686451fb3a91f2a4b3dbf05c da3baf6907893499c453b578f0d88355869b0c6857e8ecd5269092d0cd288229 7c5b5cfc9f8ebf642aa54dc1c7ff8adc9f9f331a41a519de276fa358c1d4d70c dab587f0008bb648a18d5dec59c2b28244b75aead78b7bda937bfdc628a695dc 69708d8c902b42711c2389d5d49dc0ce7bc97b04757d2137617fdc46cf7ab969 ec1d34d539a971fb84ecf001054ebf904e665b1b9c889fff068d4b2a4a87cc1b 13dbcb89d0e5fae7a9dc5a86b7b32f910656a5f0cd47dac2a4aad77f213425c0 ce7452cd82977d8172fdb4ecf3ffe0efab960538f12cc88da81a6da2b946ba45 0979e9323773983e40e598b70bdb34a1d4c3ef358397c546e663afac4d00d1d2 75840346b93b93e5d54f8827aef59489e99df5f5ecedd7e2587404f841a74fdc f717c2aa3d38b6f9bc009c1e0c1b7be281a7e47ee74eb69b12bfec41aaf8f443 d61c538c52b95a40f3a13fe592a85c565244a3a07d69d0e48084f9aa895c37ad dc0c8ced30e0ac2a6151a043512f347a7e16ec633abbf4dcc2b6eec5da50f0fe a9c30b406d6a7a6c8e72df3b7a77c37dc445c2bc789f810b439ed46341753b3d 6e170c56e6e4b4ef42cf8ed9d18d4e5e14a095074ec2f5c5e81cd53826600674 167f2fc180f82e8c30c9b7dd9ceb56fc38cadc462fba5ae230948a688be60ac1 f5ccb3fc3d420df8e22ee02c0e0a53715ecb1ecb21fb7c193ca5f1fcbd716220 e7b3fb027a32308d094c2baae1bfac6b25cb0e6208a03f31618980cc252da842 795efdace783e35ac6503ae51aaf2838706c024656e5ab49a31667e2e7d9bd11 eb82ab468b7d1d4ded952ccce00fdef0b80373c6bdf4b9fa9b624f895f1ad624 4dc8c9314847506d60404a8b81dbe70321f51219177ebac008e927378938fd17 dd91549ef8c9e104d962fa9e5dc7787c4a4edd65a97c0e79bf0cb3a2f53c4dfc b3e6959fe40cd1e777987c25780ecf3cc47b5ccc1c5e6a63b0654480c82dc8af d5f380019e8a4d8e2b8dbce2fac566788a927556f0da8288d230ae562083d726 fe69c719ffe3a4911ce458ff7cda25f7d657b6f0dd2c1f9a6fab3a77d7af1a9e 0032a8b9c9d069b4e3732ad25fa60b3ee612a3ad51181e12daf814b0cc4618f8 40864d4ca90460178e80a347538074809dc7b9a5f3ff3fc88a2e090436200510 5806fb3b872c24ee849c035e614abb3b3c2515cc19a5928260fbc01ddfed8c64 0507d1c1f19a95f9dcb796e3737d6b21cb6b9d0557ecbae663d36ac11bf5f1c0 ff12c7c5bfca9eb9507aa8b371e1531065f6720e7b8645f7484b4745763dfc94 1e9f7e564dfdbcd1a367fcbe1f2b68a1b0b61ab604ca3942bf5da280276ea387 b9361fb00bed6f78c098b9c8fe965ecea1e453a90192e8caa76b35961e0f0ad8 eba973db1554a9ed9e9be338d927701fa38e0d165cb0883295595d1b0bc42ddc 07be72f36262f33ed5ce3f84feea3a9c141170cae6539656925505ea3d1f844b 3a49e112ad7760ce58f35ac2086d8e33e5f062ebeaa7b0665304ae426e2860f0 c7a34f45d6862a6e1c7ed435d1adf42afcb73b030e9ed013aa6c77f7202deb46 9058a9ad7e4fa11fce349ef1c9a00ca527d08c40679f4ec399a08d75d1e7624f 81f826b2a6a747a0c9274f2034d04621de5fdc3feddf8d1392647f718d879002 1c53f80cbcb334503fbf1dca1134502b7bee540a7b9b2317c0b3d26fb6e95ff4 809a4b146c49a415c14d5ba634b4605cc63fac779e3cad788314a9480c2f5ebb 183d8952934ca2e8541fe1850d773d10694b787754a6ac5dcf51367341e65e9e fc349cb44bee56d2549bad626d2cdbd4011927809590485d51a1089f39b0a0e5 27d86b8b497febb8a6189fbcd79b819a316df56693eee935ff7a2fada80ed1c5 b75bdc448da76bda02c212e922c746426b94c587962f907a5678e7aff049ab85 570c1ef6e723cf2afd10d6aaa99a8cffd3641952ecf58e60f7b73cc8c3bdf805 15716024d398ffb67873788809581339b7a9b2c8c5f06e832d8460b47d527a3b be22fb25aaae395e365a199d3f59acbe041133eb458c4c7f48f22f3deeac0dcb 174363cd81d100a4df13e1f805b93e92a26ff2781480c27f0f8a86b85681aa94 522b676acfc914c0680bee745af98819217b7ce4a32944aabc82db94a0d272a2 8364f3dba876453a9e79aff8bba1efcf07541363a1af119dfd65ce8d123fceae 1fe55326d55723cd69fe8710cf127e0d1d93ba977ffbdb4121faa2b7cb95c298 941618e5b97e80a39405cecc6aa7ee0a971b3e83e46ed34d6ede11a9c7b08e92 fc7e27abe5d203290fa5e39fbfd7c3fd8d156884bc5b100350b7a107c512317a 858a89a43952bba9582bdb1ddc68cdd7f26ce880671e57efe6a64e73c1dcef16 8ffd01b31c5a02c8309255f5cb113648b4107bed6dfab40deffee10ec341af8b 6e77850f3353dfdb822650e1521d2249c39fbf4e045e376e9523fcda66fe2500 a0e067985224c0215a8b9ef7e8e018fb955ffc140cf35238987e28d118f24bcd 52210bfeddb0a6d387f725cc2199e12626f488970b4c708997fd5f802ef7bab1 aa2af839c842af6412f294f0d218290561349b0854ec7d1fe510793730c88331 537163b9639c52a51768201442e58874f4aaa9cf2fc4df90a72b5261bf674bd4 58eb0e939737325eaa2bad52e15d614c72dc994ba7bca83d9770da5ee2f3a45c af293d2c28564c66ca68defbb38ffe6f0ebde539b8bf28ebe1ba77133ef51938 226fc901f59ff26d6a1139e6afe4355481d0560d73bc6bfb510122f7c260677a e8af1e0135913e0283f83863d9e711bb346ca4116033134c0db4ddbaeb9590ff 02411c81aac7776f092b393dfc04d389efe5ce2d1368eb80b8c1587647835827 bff26b50ab9f85db645af05f3947d6b2b2a5bc29b7284f429bb748cc0fdfc7e5 81b6cd875e994069d4b053215ba174590ea39c8a6a3e888e5ef1b15ee26aa30f cbecc5fdde7188c546627ee3fc51c2c342dbd2669ec52e0b0466ec7f2a53ed42 0bf7b735ee4120093d061eb3ae68bc4f245a39a7fd0178cc44ec00fadb1066eb d60554e1efa5dcf1017a27e381dd704bf184a5c7738f8b66ca060459eb878d94 eb6306858bef7ba859322de5c6cf8e6f35034f1d35dd6d1b9db5ab4cc1e41dd7 558a0637d72c1959e3462bb6eda34213b497cbab59ac2f46b867088c8545899c f23eabfab5457a3084218d71148e7829575b062ad0a5f1aa80cc6ab03733d1ff f37269b4afaf33e0f53f428025b202a4e692ee74eab2823bdd33153c40eb0c41 2368fd22fc86f8cbc5dade4b6fb02cba46d1b9334ad9609e23b46a7a75136137 53129e58d361a30742756633e5ee20e149843ffe0458a1e92e20e06e59085e86 274ef9a2f76a1649ee533aa2596bc419c9f5dd450b685c66f3d1cc2ca099c2e0 69777a8034c8b93520e95090c786525068a88876acd09623733b55956631ffbe 57dfd69374946554c28792646f1e49b82e45bb0eabc7e056444913faac4032e9 2866e92d8ab1e96f4e68343752be41df78f6dd22ef4f756955074afa1a443ddc ff28ed703f7b55c4b0c54640a2b94eb6af12e0ea0028cba559822092d19ed825 527a326b36f64a904d3cee2bcbd834e48af0f1e43d91b87f010de2051df7ca97 11ca1efa4d162e62183b96568498fa472958ed09b9cf8d80ab70ca76c6de353b 712ef003c9bf64e9f184ee7dc4298be2daaaf6bd200abd71ed90404cf5 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI6 %!PS-AdobeFont-1.1: CMMI6 1.100 %%CreationDate: 1996 Jul 23 07:53:52 % 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 (CMMI6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI6 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 14 /delta put dup 25 /pi put dup 34 /epsilon put dup 58 /period put dup 61 /slash put dup 73 /I put dup 76 /L put dup 78 /N put dup 83 /S put dup 86 /V put dup 96 /lscript put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 105 /i put dup 106 /j put dup 110 /n put dup 117 /u put dup 118 /v put dup 119 /w put dup 122 /z put readonly def /FontBBox{11 -250 1241 750}readonly def /UniqueXX 5087381 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930e72218b3075925ce1192f11fc8530fcd5e3 038e3a6a6db2dcfbae3b4653e7e02730314e02b54a1e296d2bef8a79411d9225 dad7b4e6d6f9cf0688b69ba21193bf1495807e7a1e67ed7e41cc25acc04702f6 8ef703e3d45722c1a91fdef7100a48631a02a6f02a08c6b1f9b4df8310385b86 8632718fd87119a233f219d9411383b7fa9f3e4780d8c27e2e89e0cae883d664 c3eac57a3aef8988a2e9f0f8c7f53e0a80bdfc4620e21287d0390e1975398544 7f3ea66401024bea75e1b4c4437b7bb188f76f96b918ac7c6ad7e8ae7f21d8c2 790f08cccec904fe48ef39e597ed4d4237c1d1f596f5906b19ea308020f7a35c 168e327ec3246b1dfabe912f6b6daac09974876d3996e57d180261110db05f15 e3e8eebba3d90b5764c03df3033a1ed678ebc679569a2fb297378b25434c0f20 5313ecb8a952f07242d3ee731b0cdc086a4481178a3d65129c47c09b22e9c431 e11b3747b94c26a757c38d06001798c6a568303d541385244b967d3b1786edea f65bb53c4c2fe75e4b1b15c2c78d930b4296c80f08bad86012451edc8e9f0854 c3b390a16e27b11b3d45a9f72eff8baded2242dc928a61685d79e09681c97425 5b90a498614cf560fa5b1718981388268ba206a96989e6d0b5d485d9aca5594a e67dd7b34d8a369adb06647f8aff8814d6d9cdc04a4835918e557174c5bc0f3f bcea9907a04cf93c12727ec40db3f2f77596dca477862747435bdedacd9b2311 6cc97fa47ffdd7d897fb6bdd5572e35d34e7e1cb5e7273a4ffd86525323ace4a 84e1297028c2bd5469baa2e75d19360c2c9042139d5e7dd4390a6a3935424711 de21910126d750ae279916ceb71da3591d60dc62db333c5021e2c1cd61ade51e 939154aa4cba7b3ed9bd72961378d537cef84869e0f8a138c8978d073231e35e 93e5fd9a6f465c9a8ce80565e2c5e5362c859b857586665d2ba8c9bc7b725479 95b5f9ef48a8b528ab0d6200fcd89e542b633a96e4558e42d074d92a7287dfc5 417c9fe4c928f1030e7b7a776343edb15120575bb5adf41696ac4ce8e69889cf e75a0a0b1eda2c90274e90b5923eae3215638171730b002c8a365e8662919731 93817e48c0b3e5302ead90b1f9f34224b0aa3454dd58d8309d40e9bb88105241 60682dddccf15fbb54774feef703552948684d17193737e2aa1cefa8db524892 66ca5845809dd8f1481751617142f091fd5b63c85a197495624b67e88040285b 54d8b97e32478f96c7984e6805cce8ac7a5ff1f010f5af3ac4f8a3bc1a78e72a 6a8046993d34e910b839a6ef231d90a779bc18a07e265b4ef1ed4f4c603f9ab0 7d6c1fba9c3abc8f49f8fcc54795b2997b0f9e01d6cba8e8989944b45d557368 5a42513bda163e0b3018037b5aeb6ed12465f6c6f85558d84b8688302b74072e d02603bafe826e800d42ea9a3dddca3e875148836b88b7ec9e275a8a2d1d29aa 4af08214c33eff59cf84a447e1a7868d4b1700656b53049f576ad765e8cb1846 37d2777d34faeac7e2283821ceca8d03c403ab9afd5595955c948d4893116a3c 7e933e692deb90e0354612f3955ad753b6d153f2d774a447c3dc3522b7ed2ef0 ef5c64669f0762a35d81111c4aeba90f1b641547491f965d4ceac9175c185ae2 5901359b8ab02a9075884aacc940fe7861365b66496b06d45cfcd19f446d70df b0a4058b953e90e27a2102c752b8c1324e1ceacb672dfc999b187394ffd98c57 428db35407fbdde25d889989062523422e04e8c6ee9392ee860972333711c95e 977e0b3c035d083b08fae8aee3300940b9b5a8a5b5c929cd9aef0256e6db87e3 47ce84ec0de02f9b9be8318c3befda2104fb29410bed13d8f0cde502ff532c76 9525c74b350200d95bd9b3f5fe23ec029ae9b34ff880da34d53eb266df79be34 6b2c09a4b298c7bc7efeb9ab30bf53c1e176dbceb8045dd10f23f9ab938894a2 3123bb19ba737fb93a16b8b49d6db208781b4a68e219eb8b7b7fa73b8cd0bdfb baaad094da4f6a735d3bfd52d8a8e90bb66c157f3b99904c0874962f05138ea5 faa18445c3fac6f83c6960e1bd9e022b0ea84d793361f657972d00a9447a643d 34353d06acd97094506986adf9a1b6656de4e1a9bd103a14489a71d687b3d7ca b16719353d5655a6cff7adf7a6041dd5b86508d13f06ac535a429f26db4d03fd 17a96bc2b522738641aa346fb0aab846a4806653eff95d4194fef2f69b51684f 0fb40190d0ff6942a0e9787f03f8975b9eed6d94714d79d430a33e11980fe488 baf62d000fb1eab86161686a95bd80ec006adc1c0b2e578782fb2121da45a9f9 cb9bc176b3c0e4f6ebde54759a7602faadd33367ecb7052788b2f1df87be2de6 95e54d8e5100f80d2a406a377609755e790ada45dda02dc09fbc2e349e99355b dccf14abe4563c236197cf768cb178d4ac915895577d1451593aaf6a085d06de c11a209113a525bf77a4df07b151051e2463f5be5a6bd36153ee75bd46678fdc 7289140c80ebdd8163f50e992d1940db0d830d6bfc7bb189a43db9e5327b8b2e 4fb0a5f0d2f834385d3acf87116db29672cbe300bc4926794063678cf2850ab8 72a26d5f0c45af02581ad7972202a44e08dd207481b369ad7e0c96719d266195 91af07d6854c735bb1e390060fb760881fed4540173bae5a270a3262d45f21d4 7f36255a533d7318b79d9c940ad6da0f584f20295f2e8cad89e26c3e219fd816 5b35e60392f45d15b69943b73ca36f538fb6c62c723ff0461d1b208ddd1827d6 f572014ad821f787d2b594b98faf5b1cb6304813e579f57c35a9cddaae742aa6 32c8a85c804c3c9577f1ae84ec62c40dd05ec14990143b7fbd24af8c6221a972 c833ea159941973e653f1d44a3f608c61c305ae334f2e731dac755047611e080 347bcd1a2b341f775f189e4ebd6612fe26eb0a353a7425c1f396e509d3888ac4 312ee70d87033c2de1220acb0107706e3e43cd70471453cd1da32c62bdc791fc a9542d14f99598647fb5d8af4f974f76dfa6eb326b5f741d6062524641a0ff8c 6e5d97e7fd2075c3c9b11e4b77470112ec26a266626358eaf3c22b2817f064fa 4593f654fa8c9c8867a833c24bbe591b21df6b65902dbfab5c709ee0b2662a94 dab8a84a4c60b7cd7e2f6fc869fd31944b287c7f44dc4b10bb3a3f3511a4be0c 6fb54cfa8fba45adcbd63fc0c091139b0f09443e4584e29169c803ada57cb2a2 0a1f13103f99926551014310a208339e5f587c87f5b4ed6df0c1358b065eeb8b c6c14c5d0dab63e24b0aabb060aef922a7119c73c9bb0d878e725f0f64a71485 02668d1f81438db8757d9eaba6c9e6b9c83950ef081ecc01f02b965a192e8e2d 534d4bc658c77fb62a25d84fbe70e47c4522bfffe43f6cd512a4b905ee8fc22f 13dcc2f9304d2d53e037e7ab203858cf8bdaf520684ede6ddf8fd9767bb5c383 7895e5f3dddbaff529bbac2a41da5fd5dfb922c75c115ff9c07e512b5e196c62 04fbe1bd0388374d7dcb9bc88d015f9217a481ad5998b414f0f4f683912e444e 5db2f38ae920d99188d2fc744e50f8704154705034418ff3eeabfd41955d3b49 62d2802c4d71d6c379a0dc8e7555dc5941ebd73d5347777cd711775e1d5e0ea6 b0a47af96d9442348ee10808dc4a73f2aff1a59e8d53019d0bd26b2a6a16cb1e 05fa585385ec2d9183d2bd1cec63c9dc0f295065266184da7a638ddb4b68ab3d d5b0e11054f2f4a9c43d66df53a9b0a30ed8a869af4dc4922ef346e8d40b582f f79059435d9f6a827dde58a337e9267e3f0b29796d437340025b67e9a1174197 20f8df1b2302190e5c3d44fb329d90f174c26b15794a461a1382ae0584e1b0d7 6edc286019d5c4b575743f1f44b4c9a8505995302b804b18b510c58bba75fad2 d687a33520f105263a2371f558b347e683320c432c627f6c42ba311c217f3e68 35906637335a8bdf48febce0e1d23adfcbe8219034ee6347f99da2d8b6a720f0 f8c43dc485470593e84e752778d62ce80c73797d42674bef472395602ce743d8 d9a3e1ab9a719ee067d779ebef0801df65a33786288e5adb40e504ae4f570a56 c3877922aa3b692cc18ff98e00e3bb9c874bb56b11b344024cab74ef569e3f6b 76e51d17be4bbdff0c9340599befe80668aee0fd34c10093474f6c9fd7a37f08 fe71f049c61ed36935695339a62c599ebc9f6a6baf7d800bd8750957fb50027d 0f0c8880bc65d4496f72410e7468c27b287a2cc82ca529e7a8a96f722f9eb40f b4893b3aee82499c1efeb052c8152ba2ea62d090038f1efb47211b91f6a73b56 d218c1d112526c292c2dfba2dad4712bdaa8165827455b36a2eef5e0fc697173 3ecac47ffc7bcd78a3c4f80f2d6376418a2699214beb36ce7793d25b84375787 9d4e7888eb8a9d78d4a5e441c18b7583545dea73533ec9d9d49625da08dce148 424e1131b4c98203e9b27ccba691bd44975e61bea68d6459368d39f48ed87094 e8d1ad108d045e5008ca127dabeeab9576e9b471020c804fa21c8d6ec53a3128 88e81c9562ee15c5632234c14ec8264f247c204b46d8b797d2c1d504a75ba5a1 1ee088699e9ad6cee0daa270169d5d6300f46b8f9b880f76fbeab8cdff00f688 8504cc7bc2f51410a41341c0983069e3ca4ea63bf4868e67701c4d1184e07c7f a346667f8f7046677fdd41067fc944bf30860a54dc84c316980e6ff15c3d0fb7 c9a1b85705736676fd567528a5d0ef52b45aed59fe44c23e1a05f77041af1646 3212ce6219b04cc71516dd447b8ea98e1414b249a5de740ca8d1f98a3bf53b78 fcc95ac8e67143e13dca9260d0860f14597d94326cd2a491e20abf3029268e6e 9af45a1a2c0de4067c0ead3e632d00e7af68a05a9ee0d6ca90e4d65aa10abec9 a3600ec006145f063dad6a56258e901b81af2b5a90e48c431df76c8c65ebdda5 e308013dd39126390c4f6cc14ff28296e978d2806f2944831fcb4e3254cb3cd2 1b6ee1d35e2c17051b6dfb9552ada34881d9dfd7385d4b6d1f0dede79f3eccbc 05b344e92e7a93a2e91652953c1f6bdeb97ce91431f141a81c4dc176a58037c5 b91cd2a18b40eecc4cee003644a092db6eeb114d237dd3e1efbf9d517e1f6269 56360719c4b7e4370c50816a1c41c8b5aea3fffd698acce9ccd87ae21af43394 b6fa393ab6c4b47f0fa53d13d641ad26718c99acd04264a59e011fbb0d04d5b4 27ed02a525b449d53d34d9d707621db43e9ce8552d5d3a9f6a253bda1241c728 2e0f340f4e507432d8d36d7aeaed22671a3c48c862004622209e0a72b112ed23 fc2a833a57e41a4417f016dfd56c5f295a4490426c804e7dda9242aabbd9282d d119e31e298e32a69853e3e681803e8d223fa068ab7a5a2399082055a7e2a665 7fea246c6e594b7b908cbb85d9199551aa434bd52a43188d11d8770721acd0a9 48d82c1834af5f2d7d670f954260f2b43f83e69493c5ba9b54a31735672e8870 46f0a6aa90dfd5b1782ddac4c43c842960e7c1b7d44b5d5710ccd50353350aea 6f156415a65c67c1c4bc8c3ed36d8eead3de2282ea1067850a7d2a82bb71ff72 5ced5b004219228994d72ed35eef4ee8cc53e5faa1272b8839a66e3e3fbe99dc 8762d21a2cb496e18fda11c7913b4d30237e00b0d70e35fc0d13d0f2fd14066a fc51f79c4c00961ea2247ec8622cec46759113068afdead80d64d659b5840092 d56d839fc83b7114e972fe585acc400a5db7718ef116091d8336ee7dc2f3a065 146e15abb34dc6fce52602ac6db0db02639715e3ca1f71b7ae229765dad80387 72c50e9174af4f608eafb1da2403394c95c2a92d70884d0d28e5991b759fb5a7 c3014e6eb9dbf6e03c5862430228b3a14996e8fa08d07a76a47e548d465fd6a6 35ff0c7fdbfedf199a315875c804059f9eb1a6105008638b51576c9c16eaf2d6 76aad5840fcf3ef30b0af8d31d17cae8bd437d4a07910243ca3c641cde4871e9 2c497c782fbae0d484abf1975bda87b98f1a3a0fea81b76b19e51ee70e3f41df 455192ff56d7d1a761b9a25b6dee694d6d419725b36692e46b9a5ba1c2625932 8e35e3d72b1f02e3ed396418b3d71007f890e0b169d22df89d1b750ef5c47960 0350b3d9c6b4522ab909f0c82054bf38cbf4fd4067afc40d44ee5b45490bc17c 3a9109f9975c14cd25d8269219daa0a2a2b076d2dec1ac27f63e82a7a7319c69 9b5cd2055aa6a9299b98d3895ccb940304047b7eee7417809890e2ff91dcf34f 5aeeab72e9793c0f75eb8b502d5dfa690840b1489ec3ef7b32fcb69b72b490a1 177b4f1caa19c2880e98927406f0fe6bda6aaa947f7f6ef92c006d499d4b0d96 82f4c48012c7ddc656f1f21bfc07dcd8ed8d5de40c732b5ef9ac67a8c5322a8a 9b530103373c7c23fac04e6cd31a1b6c7f12974f74344cfdf6735b02e4e6e417 e19b8fd6ae4e325f67a50492e1c07c2e2518248f17bbe081cabcb38b7c4dc512 561914e3dc8bfe5605b0bd84abb5f83295ff5063ebf308548245d04b98a8a914 7fcb4615b05d300f21d2254e464109a4909b0c0bc59a7c02b472fef079245c18 294ff7b9eefae82e04ee31d25796039505f37b95c7cc28e84d881296df60b699 eac3e8c97dfe432588aefb1ad33d50762e41d137745b216e136d4083dcc3eb35 89102bb6d5b169440b21ea52a437a5adc395e80f6a8d9e5365e34b4075808c47 d0d59d2e49ac5009e986ada41964d37aaa9ce12c762c253746489486411adc9a 35aad97edba61796e4f060f186230a5ba90f94fc9aef36ef0789e07c313edd9c 6b9acb8592e77391d1059341b5cb8f6544c5a0936d4604ff4be71a9d1d6ba975 e3396cdeceb86469fcb89b965ea066dbd4d411ed36777967c203663ff1809ef0 19f992ab7ddec2a1a4dc004d1c3d2292cdab05ff7b97b33aad91db5e21b7f3c4 baec0b346227328d9fc29ee4809d372dd73b841329b0eb1fe60f90f373a21b8b 817306f3e5999cfa913255d3911b7ffd347b63bbf2bb4bc5054954f109b0e144 f5946c02461d71cb51b2d72d4a31ffac927eb9a8f251c9898c065fd81da21091 5e146d3f4b5db743070bc39d8952ce419a87796229659c275ab36a9a790c201d 059a01d3145b71e3ee2a545867710c62a454dcc169b5b4b536e0a86be1189026 c34a2638eb48090f 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMMI9 %!PS-AdobeFont-1.1: CMMI9 1.100 %%CreationDate: 1996 Jul 23 07:53: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 (CMMI9) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.04 def /isFixedPitch false def end readonly def /FontName /CMMI9 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 14 /delta put dup 25 /pi put dup 28 /tau put dup 34 /epsilon put dup 58 /period put dup 59 /comma put dup 60 /less put dup 61 /slash put dup 62 /greater put dup 65 /A put dup 66 /B put dup 68 /D put dup 72 /H put dup 73 /I put dup 74 /J put dup 77 /M put dup 78 /N put dup 80 /P put dup 81 /Q put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 96 /lscript put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 102 /f put dup 104 /h put dup 105 /i put dup 106 /j put dup 107 /k put dup 109 /m put dup 110 /n put dup 112 /p put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put readonly def /FontBBox{-29 -250 1075 750}readonly def /UniqueXX 5087384 def currentdict end currentfile eexec 80347982ab3942d930e069a70d0d48311d725e830d1c76fba12e12486e989c98 74c2b527f0925722787027f44470d484262c360cdfdddf3657533a57bb16f730 48bfbbfcb73a650484015441fdc837add94ac8fbd2022e3ec8f115d4b4bb7b7f 15388f22cc6198efe768bd9fceb3446ee4a8dc27d6cd152485384ef5f59381ff da43f2d20c8fb08aa27ab2015b774db10dacfdcd33e60f178c461553146ab427 bdd7da12534ba078ad3d780414930da4f8d58abefd45db119b10eb409dd89792 3c6e705479464a4b33ae3d31bfe98efe259f07f7950237bbaee4f7b64ffea83a 757fa717d50c3298392891bfd60e34a056b0d6021da3fd9b8b01bf78b0b23dc4 ea3b0605150d20b27ff9ea5f2524661019d982a2e47cd7c21ee5ca9ed9227821 f8d07119397de26838c11d7b35bcedc43e011626e300f8249ed846d7b5ccbd89 02550cda17ddf113df658fb13f8162681013766863784efac128e01ef997e1a4 30312afac8f3d948edecd7d5090ab5c864b91d7f6e80256f0e1fc99f1102b74c 61cc456e2e1bedf0e627d5f70f738f963a13666405c51ebf23ca077e97570a2f 1118536b92e585cf1dbd5fbf36a0a5d197538c05304e93a15f3c931168d91d42 483ef428b1a3f1b7e548fd1d23b80f5523c8b8bf450b02804fb689f915c86693 f7dfb1c43f681627c7f027021aa3a8179148f1819cd94b8890a9ac63dc1e8a68 f254b64f6f173c3d02e3ebc037da05074017c8b113e94f4e2d26b467ef9da07e afd7ea7c86e025af52c5ceeb835951e67e02a38daf1e9e698bd21996c1071e84 ff7fbe77f6ddf9d06fa92b16ecebcbe0370b5cd9d450d0f2906a105cadf93ed0 0abc7fcf2c996e7c15e452006e35390d99b9cfc59925f1444c20d9c3e1fc2910 32cf9fa9d580eac1bc956334da391b870a757c3bee6aa3e005b20988d85ad41a 64402a9726e3051fe2207b7521a437931a774cd81bd14357bc48c26aae9dc596 e2ae932d2cdf44be37b4c1e1295b617f8ef63cabc67c8a938b2a220eeea74fed fb346776d18855ecb95cdc8b9db6abb77cff943a70aa730e2c658b257fabc2fe e2ee3e493ef0414cb723b3506c47754012f5f7237a02093880174a792ee5fa8b 752ce148c3c8cbc461a2a99cae1170dbfa4cd9a0705a56226841d063066645e0 20fb6881fe939f56d3fb1d699c40e84959124895b9f3b0325520bf6085607a73 2bea35014e570ad328a021411bac9858189a6c7149bd98ee1e7e81eebbb8dd2f 0be149d45661b5ccf3cebe872b9a4dde5ae3b6b8684a6dce57dba01889f7b651 bb84c2c1b4f899d35fe5595e83f238417f804b0a49f5fcdf3794c4aa56181ada ef55f38c230f0944cafa5de70c3abce3667301d969f02f90453fc02c55f5387d 23f6f65ab4daa279c8f437abd0ce19dee84889bef3966dc15afd247adbba1394 5bb2ebf2a04869aab472966789bb484eab2b643620a2d239b8cac2b95d2e8abc 3ddae2eda1f436be2d6ab9d1c667583de4d5e4dbcb0f392b74c0257e3beaf4f5 ee21e30a78c302c8222e6c4c68eb6df2f8a7a5a73e15d5b2bc1a2a6d2a2c399f d28cd7a66ac975e1367600a84b55e04c23490765ce13d5513da24dc8151d3e84 a369a3cba7f072ca44c51a4a6e64f2abbfa3b719e47a768bebd667379f66680b 441b81ee0b2918a9cd93c782d8761802766f5d852a7e6833ad35b40adba55a36 7af3176240a06eefebe83631e2f3a64a5b429897abaa5563db22ae2fb3b4e057 8238ca7c87d2f76fa9da4630768d307f192dea576c09d4b04c55ef4cdd8c747d fdbd80fe7c9e67480c0cf31abbb3dfba0100d6b16ce9a28715c91ad6f11988c3 dfef4d52fa44814d7c6cd159ccd1d821b0f2c8b252da210fdb76fc6f4e7e2619 edb3e50ca76ac052d923429ca52536e08ca38ab26e4ac8f19915251b09cec537 abbdf1dde8db4b46c327d6f5b8412544e369243842bf605048434398b5a45c9d 78dde141446dffbf1c99de0f37ef2469811dbc2bd06cc8119c5fcdf991fdbd3a c52aab679dac57658e8e6955acba964439a4326fa3f8d9983141168bfb9eec57 a53b6f8ca5c924cec125958c125a18cf35f6c7dc7fbdd7af66cb95a2f8afde36 bd58b5bb4167c539cb6e5b5202ff92c4ee8e52c3834cc199713b2f5447472555 4b0b91617efa51ce23f050d7324a852be29eba9e666f4a83dcaf644f4014a961 a735d560dacecefd5fd65493f749ec850eb1451f1b9c297c8ac72aa21fe8c984 3b0d134fd5f57737d148876a20305e903b8d30c4e10e7b2c4bda78d58327d119 66bf7ee7d6ee20be16bfc6bd3b3c4bf74c08a37c9b6589e40fba59844d322034 5dfba201a346404f728d51ad4a85931d60bd4feaf4d65518a70a2b02806f1d08 5c6dfebfca095a571f750a3b7e08df02fc251b648b85dcbb06020571ada9c867 cd6ae70b3c457ebbd4ae9763b36d37b1fb6817f2af3180da95441c412fa588b1 b1383880f0a075a90036b689e4c327e21cb5f2d0d654d65c0dafef5de4c25695 0b82749307830152f1acaa49b3a344d7e38f609025b1900469f322807f5d7776 90644766c61a9c62a404382c81bfc38b35ed7674e6819e07b681479d06734106 376a92a41a2dedba496e51f84ebf833193ff97c14ecaa4f77ab9c5f6ee59ab66 f94554a811619b02d0c830705fb173318adeeea47ae43f62d8b905f059bfa0e6 1a066958993a1ebc1a4a4d8dde93d904cd0d1bdabdf62b54e9b07338a1f9b2b6 d023cd009679069d6db74bf1a36cbd8cf7d4f17f4cfac5309bcd3283d0dd8ac0 d0383183eb6a88f6efd63362f894d86ad04d9fbcd1a6721cda6b3564f7af0fa9 46af303dfe044689b64faaec6d1b4c8577c9847ad7059ef81c4271837d041f87 526eec6826a3530ca5c62511920f5d07a202a2fd51f7d62951660ffa05b618a1 6ad0b5bf8b2683cb3730b028a6622e55d298e7b2e4af44fa2bb573599fcbf042 7cc170c1b2bf25cd036e28b7c1d6dc911024126fadfeb17e3f7873b6a7d235ba ee0055bcd2b83c77c123cbf5aeb49fc890cff889efb127219cd70e8f4457bfc0 9538d79c772d158063ce89992fc481f38e57eefbca75782bc692e5bd5fc43f55 e1815269444a48bea4c4fd63f481348b759cd783b435ec55554306f066b7e1ba 38c3aee640519ee0a3d5594cc7c7dc93b5eceaa2464734735253116cd8d837e0 b78491340a591596b4517359abd2083fb7f4e6af6214f93c0d08ccb7d196e3fd 37ff8bd6206a3e5b9cd411a3d0ba6331cc1b807f863b75cdd19d34edb7ba72b8 2bb143cc4aab3c0a780276de66b510881d80253484a5238f78d4c13eba40ccd5 2329cec8bc0cc439da6d3bdf3d15fb1bb863eeacd30499b04ffb58148a090ac8 84badc3793264ad79c64ff7739cc2a4b64956559a833781ef73f2553425fc034 bcd15e16160051b28a85c5d25fb7d7c2f2bd1a0cbbe57a1456ade5c06371fec4 17cdf88b93abfc828556b8da1685d4b703830211333430e45966f3021f1c9bcf e3f658913c074e85cdfca56b03ba22eea323b525e8b796bc5e073c9a91d65c66 74669283f5bed85acbc6c3d9dd2b390fd9ef9fefae0b8707ab8e6c1076d8def5 98f8fed2f72159e4a78b54393c8736f282f0cb7da19efc43b39530fb9bb8afe1 e7bf482cf3a057d268fb26362accc111dbc25eb8ed994497b0a9448dd23e0ce0 734c7256289e2470bb5863a1d165d1146e47c15de8dca8b337c4a3b5c56a5143 c55193cecb5bcce666daac89be2251689cc805bc62e0b06fdb296788312347d6 889add0f4b7a0d0e6ba39685ba796963257fa0eb3c89122b335493abb571651c 66963829b36eced903f53d0f8e6dcf35c00444da9829b41ab0687093ab2076d8 2c6f77a34ea1629211c68050a3b3743181db1cd6fe614c6ac7cdd1a8c589faa0 0d4fe498fff11b461ffc2f5079e786c98661ace35a33cbbe8762ca8a2460fdf1 954f3455363f4467a9cb996ed37d01989ba63b6e34ba6ddc19626f90492d8214 e83b112f41dde18e11570467e3aeb095d288911e08ef3acc2e6c1efd87cf9db7 0ea1cd30134d24cb2f4a867b111d751312c0a17dffb336f05c45896b23bab9de 3f77eec7929de225541a38b2db1bc19e9580fd322e46df5edc42f157d35f89a4 e848dd4d0592c76979d2272d2cfc913cb27393155c8e5ab68d8a744c05c9c418 6aedb971cecb6cf41efee7b75f976f9d7a67a7ca049d0c5294cd120c52cdd81d 7bed20b0dcfe3b0a79c7a767bc94593c1d0186f424d14c1875cdb6327d3511a0 220ef053f2dc607efbb364cfbcf47d860005e121ab952d58ca1b15dbcdfb79ba b3313273a3d2879f256c0765871f34dd893238917c4115c0840a0cb1b46a5b6b 984d3adabb24c0d35367f635a8307d9ea897eebe9f2d427b0aa3c1c044277ad3 c93f02eefc3f3db966a6f1d936ec68f7cd35189f9e1312e0820cb1582d7b8e32 1c84d5265dd703c48496234df13ad9bd34cb574c3a40696e89b80bcf11c6df88 80fbaca4f789bfb41a2e76c9f97656972ed6a980efbd031198a44dc9768f8a10 5ef9c0da1840e29228c4e83f9e06acbc0017a2bbaa07cf8a2d302e47aaee1430 168afb42f281332ae20baa405e34cf6af2896fc4fc4bba7fd817e1f3bcbd68b5 93a6db53869e0efd467178829d7f9fe1b644a91a9c3c37d9a635f21255b57097 3dbb53fe61cce15ba830c022571605cd24b709b9a9e7e9d118f6c94a15a727aa e0e717cdb4d6a078acda73d6e76fee08729625856efecc04feaf9d015c67eb84 35f1be747b437746623100d03a549b8cc665a14147ede96611868cd4d4f2da94 3b7c95b6e6e70434a30ef976807c08b3febefabeb562f21ea26a771e4290b774 297ad17aa068d839da00d196ef13c00d7ffa79164785285ab8ab1f3f02a69458 ab8783cd44b48c2c59fcf7750c4162f4ff16f46fdf3b86d37b70b05ae87b7bea af3c07e2db7aeda49c1a3aa8a95aa637c9a1cd9fb85980ebae1b0b90a2c2dd83 21379b900ceab07a36c62a1e0be99dd3feb4b3736a68efb50f8658c86fe6f1d3 0b86c3dcbd7999be985268e2f3b64dcb19556b6f88b3e23fbeee31528045c14d 21899f3fb5c6ee8d3b8982584a4ed78a05924b7951c4e0a79ff7772ed06065b0 10123169edbc8e97f23c3c3222e55e0dc9422beb0ea4af57f0e7279d2164e30e 2a8ac9983e3b83de9caf1a10bb08be1a1eae18275a7e2afda608db6f901b1e07 857e76d464a3ab6ebefd8ad1d683181bf1d9acae61143ab000ef57eab2356934 5bf22facd28a8c426f1a343b0e764c765b651a9f3ea352a072f4650079873970 37436555c1429b5d89d69813f8f90ac3a986ef99c7a7fd3b0b41bbff1fe117d7 4903c8d2f12f15b97bb6fefef1f6c2f2c39f293858a7595c8cc3098da029117e b3eea2641ca5fb41cc1afb9ec3fc5324c1615f63ae9b93b124144806cad7d86e 3afc5b8d9b7f0248eb7ef8ea651e0545a50f3e2d0194c4edfcc9e0cd78845fc4 caba1f23afe4b805dcbc8042eb3094d05e3b7c427133e2600bdaea44f5b2a502 89d1ff2f1b7082fb1456af69bcd84573c6fb06cb9180142dfec10ff237c53931 0f021216c30b6ea978b7bbb6c9a12b4490dbf803b7c57799054cde6c3d7cf622 09ab1b6412951d7e6f34f5aacaab68fd844437f3beb11036f19d229eab3ad724 2f3df4f7c6559459b058e221c640786b07188c9bbac503382b9c1ca63d7245cb ec64f1f33fd84f2320f3e98ad035718198d478fac9a03ed6ae46df275fda64d6 fa65e8972f6e0bd149e9a05f082c309f165e57eba036adf61d0315e916c87a67 4e02db4aa412f12c3f61835ad018dd5d7e8c5bea990e981e2df7aa89c56bc366 17d87786f987cf91c2ee9806c3a2f847d5e12dab8a72683c1572f2dd1c3ea376 23697fd75fe727a5f0c0aaa83dbb593fb985e9b909fc26dfe2eb45fec58d98ab 9b8c98d32eb256610b99f70f75e8e0f57c7a75b8f1ee4bf2925a739eca551026 fe215d2c8aea7608f97347ef5bf55307bbb11b7686000fba7c290a63b2a58715 23874b011dc85f16a5db07f36c0a090d5dfbff4f679fe01836f0b26d3a7251cf a66fef93492c63c46e2d07a360ffbae57b88b994fa0400bb1a6bf63bea7ec106 be2af3996777cded7fa8aae0e332105310fd894526d0f4113f018458ebf67d22 61eea8fbb7aa201be5e736a791a3ac5572e43d3bae70d3b926b8278ff5793cca e1d96d779b65249d99540ab984d6b982ce953e7fb9bb1e85dbfef13c786c7d96 28dde2a8122e63fbbe4e879695144cdc4963722928b0113ab23e36fe11ac4f68 f184844a9ccd7e0391d5f431a5fb224ae444b5cfd4aad17e13e585a263719995 7caa2e3323d2ed5c75ebfc1166f06da5acdf8133e721b6c7088a724e0e321074 d4237e960b4ea1963edc6477ea4ec6e4e08df1469483b7f0589ab8e3883af601 9d73cbbd9fde2229d85ae8940b12e659a6adb279478377d501fc57360d6bca8b f589a38f1b8ac843fc7fafcd93688fb4117ad37be3de5c583bbf26c6892c4e7e ac72176e269a049604c8812ef63aad6001d7e30c9689a605a84e11f128c03dcf 44ebe10e30fe477c12ce672831ca1e478a9065fe5868c76126d273b16ae6b451 48a7fd191d0784dd1763032e41bc74571f0ca37df7bedcc9dc53f5bd2410e882 11da292d4b87d3260d3bbe822e00da5d778f497754059f67f46e5ab0614f5069 c5703ce21f91dcf232240aced3be5213471356dddc3868e4096b0769a96891f2 0db8b048ac46e7626d2f7e203e673f402685d06007a74ccc405a32031430fd99 973765ddd23206d534e9d80a14a2a4bd608c2dc6eb9f0dec8e1e03697438ea23 65d15814f6c5c9125334923c25118b985025754d0fe40384125e384a4049f6f5 3a6d354db802f96d46f6f10fa621c50fd12fac61630dd390810a8c46292bb24e 20379401e69356583350e046bb309614f358758cceb2fb6b99c5a36d0cba6931 ecda56fa84253df41b110f079493442ddb0655e9e6c8838625c55d1fe0903053 c6baa0c1930291bb8e7608dc6805fbfa0439eaeeb4a04627af95b50f178bac21 6c774cdeb77e3c18753effa6db8fbbd50259d78d96bc4c6008b1ae0d0996706e 9e2f99f6d7017d611b4554fe295fd4ed66b5e65938a9a85db530234ed88b4fc7 b683db3145cdeb26fbdfcf8e9353e4f22611c2ea104008ed02edbd968e401618 4e70360558e08f171af50c8027ecea7944bd22c5652927fdf0aee23f7bd9d0e0 082305d10658f4ce0dd057df65b4f22d69eb4837d925f247d7f8e0c33a3cf4b2 35fa0a603c62fa2a8babf10633817e0ad3beb4ea67f8c50563553eb5a3853e37 4af9eb8bf50a2b96d11af5c1733b7bf3868454a28ed7c6bc7a34b869e42269b0 c45a56ad2dd5b575824825ad3a5eb41dc6b1a68a5e89eab5261894064876280d b1a77cbf2e5eeb112809bde2f9be79f8fbe79b348eb0a544c05e46a9b09f77f4 b51754639586c3a98d68e3522c43333f7855ae5d882c08614ac816ef0c9f6a58 5eb7bc0f9e25feede5ad6d4c072fa1714c547e71b07e792a83e2a3f65a1e0f4d 80d5093366c1dab4dc24b0b7ed24f6759313dc61031fd095eabbe3843d800017 c1181d0bd8176a8139342fda12d1bd85fd9686ffb9b71742883c6503afbe0b55 699974cd29bbee1d31b483144a744c1229ebce843246432a10057ee37f4601cc f595f7f0b0a589e9d4f210a09ed850dcaa88483a7cd22c90e89082b5c1ea97b6 609a97bb6826e85741a507a6b66d119319b6863aa2fe74e6b4cc39d76a9b950f b0026bdae00ba6bc573337e997f557927b96f8e4a6a49483fc01ca0d2f5a9a1a 6df7c0bbcf1f615092963dc46245d1a8dd4a1b1a897920f71e62eda84052b8ea 960d6481445e9dd29a54f472bdfbe69eda0d2a51ee4519a297073278f7f1993c 00902afbf5eb15fb31913c7e3c620cd32a5004914b441be89d83db62ebcd0bd1 95bd4be87ccf6096abce7f8a5acd1094db8045a21a0794a7be2cc1dd213b48d2 36fb410593729d0c036c5461ef95406ecb7f1229bc5d35a8c0edfb4bff6d2237 93b3fcd99a64c23ca36f42cbca3795e84e07894edc6b50aedf7e95b6df536617 2184ffd8a8232a71b371c924b3aeb385e9fa7a3d601c4c58355076140bfcd76f 38632189d7556fb73dc9e9dca435e0af2a4861bf6151f9cb0828c94e32a2eaaa 5de9a4b10282e70d5ae2904b95df1d408b72aae616132e89c12b375345fca4c5 3ef80e73f854f41f25e972fe034259cb64e42004c967dcc26a4e9d5d5cd5d3b4 15565a07340f685179d18f5fa1c87af7a54211a7c6c59fd96c6a214ed99d4056 46f8cf38fd86c1f3fca6b1b67629c2ba5faa1aa54cfdc660c8aec30e2184c8c5 fa9a86414322bce898866ed5065671eebd7d2ddb06d4956f8440151463ebd71e 786c30e7972afd2a1ff9c094220886cc517423944458d932d7d0c5f8de1199d4 4c2ee5ef26459ddecce2f938891d38bcc28cac0627624bbf99361eac24e870db 83b96d168ddbf880e4a06a0d67a573868aa6f7bc2a378f4fbb54ade47449853b 3fcf7be8c447a8682a0c41a9dc98316c93414587673e4e33fff3cdc435ec8e39 d63996fef3561c932c02df37fd417cf0d621ceb590ff1e2d0e8ec5b9172ddbbf e5d009abe593ca347444448fabe36a33bb8ab4ed361df9b03f5fe3124d972020 6353fbf13ab9d6450dc4d22d0a259c0c83d03fa11d2fda776fffce949158c992 a174b77ed074cceb0e9ba42c153c08d703bd98019ec67f16b9b4f93961903e6f a04da093f4f6a11bfa7cbfab1bdbc45ca545e80939ab199ef1c31e67b41d3b0c 52c5b2ec8949490ca1de854b523e6604b42ac5b5350cb1c50e1df3d2abddd81b 143c39dd0f6bdcfc59492aba5010862c5edc64808038cb26cc1995854ec658ff 7d26fe1692993c3bece0b8caf48d3f9099e50e868aa5d2eace4b93d7d9432fdf 95cafdb1cb134c3f4b3e43e42e74a80bfac827a7eff9c44af6e0df438b97da87 7dcdce39aee0e9ecd93502ceb0b342d6f986d3c060ac9f11c1715e46fa6d8909 a3fdb5912be666c2b1f3d2187c8438b30cabc707c1031206c31ba5492db8823f 129c46fe8516014b6c59e93227ef5066ce3db008a444cf6357694c33a880e41d f71fadb9e54ce09f1b130b932407f44df21439801369a2de2f1dfacdf11eddba ef169c0c8bdc639e6037c2e1e27120916088e5b98f74b19911ce2b395ffdf9e7 b3186622baba8aaf9b5130d9dfd79519a0be16c9cdaedc45660e5fa0faeef195 034af85ae90abd75e4863bab883befb64c482322d6dd2b161429f616f15541bb 34504d2db37485ddc2da23bb4f155a829a04f3aeadfc3f6db997bfac1a3b19fa bd16daa1296d0171dfd92df73a5a3fe61b381e23387adc877f5912e979949b5f 8381430a161b620f758e4bd1074c29c4c838baf50a6597908e824ac379982251 7dde5f0cd4a2af3ff58d5329646c886654525a6144f271665c3ee5f5cc585c80 a0e578b72ace91174299fefe740ce552cb85d6501d93f1f27c1b7b62fa1dd084 16ab6c263f618d7593aea86028b42227cbf3b8922bf5b88c9a057965e5006dd5 79f1083fbe7e625ace250a607f0fa70ec10f4e79a77323ddb46667fe1562f20f f9a4572cf3b9beb6be68780092deca14909d1430afe928d140c85380d431b6a2 7a0abca8e72284857f8c2effa067c53dd5461b796c8e3fb75c2698b2b588c64e d17e21868424f555872ff705a606d7e1ded9a78275bec33c9d43650ddacf2387 aecfda9d599321dbb1395efe727421cd10945d9e626239844e6772822e14b61c 5ed6753781e6bd7f38c3db2e184f9c8f0919347ed40dae773e9eda67d0324462 2a37c7fbad9554e2caf91258debccc5eb3bb264c44ba1a367c2fa3d2c2d1a4da b3a2f1635c9478264a49e5c09aded51cb58d780f2eae3f9f0e832853a3d06825 7a8b28557c9626d583bd57e3b377ceddd35f8d7cca6717205dc80ac7e9d663c5 f279ff66953ad71b76ff3f351ac82118739902ccf676e63f055a661665fb2e56 fe47d373a7a25cdf6fd3829a355e2420863e89e039ebfef42a398a219c971f7b d3348e65eea0a6610b1442b3c44a56cac84af5c1d71696d1e5155663f0688b7e 1b2fab2fb0515f97016d96b9c5ead4e6cdbce39876ac207ee618ac5472826ba2 882a055402b9b59259ce45c77ecf20215cc6e9def0ac3ce2569fca2b52c85a06 9400d8c3fd936c38449371bdf2510820e80b0abf0b71198d015c3ff8d999f395 c7bfb334503ff714eb3273302db12bf6c272ee41b65a66e2d520a9c0952782a6 2a9c78f27c36440a854dc18bd7851d40f2f57bf888757244594efc69c7531629 459597f8178aa6eb9d6d5c07fdbed736db05d0262ea483a01cf97be1eef33d79 d2392b8cdc69ddc1d4f8683497b848dd67cdf10299fbb79293ff7bab7a0066c3 ce73aada314dc35a8f73b4cd267d97d660a21c0f75ca439caa6d364e40707369 e3d35ee7d12b8377c609a1e1b51833ea22102f8dd75f08a8f7e9ffe5b9d8f05b 4c9bf487cae99ae6a6f7d097ce9c3e7d798c67414531eed54b6763739f62c95e 1e8ad9a62c5d6d4138e2d3bcdc3a986d39549cfa0ccf684b2ce76fffaed1ec5c c89ba2445dde0173201e6de6157d9677c35fc8b6f25523a1448108fd33db79b0 b68e3d76f565a762fbaf3d14271747ff33d58ff295bbb44120019c85f894b7eb 3f7c234d94b590943172ee41f8704b8771a0ac1292e75c4fd88b6b8f81cfebb7 7972db8c97ad43f4a273f96893a18ba347570e64b07fc064c3be8efc084c5670 ee24c6151a90e3c7b1636c9fc4a1c4e70ca3403b9d7cc56ead03a75c3ece9dfd bc41f0680a17fcabdf9d1b94aec93fbee96945ad0a8e1abf8edb2cc0b70648d5 5bfd87e2eeca6ab1b6041138e09665b718ba24f179a2e3870b85d297bc090886 7492d19115991660607c526f599302fd9ce0a26d78106270637ff44f138cd632 bedfbd9ab2dbc08c99ed141c9eba3bf273d7bbd175410c7cb07e12cbd99bad05 c1d49286b8768adedca6aae6d42b136172fb9d89b0f8a42d447adfe8f83dbeae 970335a356c480f4aedcccba7fe44e1c0eff5a579eab95b2e56961f582eb573d 0e428658aa40f27f5246cf70ce2a715eac6e16c12e465ecf7e7cbdb4309ce0b7 310318f3f2920865a901315d7c2a83719b6cfff6e1e35f54509c0a30cfb5404f 5b738a44609dd54d920cd4f3f202b88f29e0f33cc670546a99f54507bfbcad2c c6b9c8e17bcca01fc082e2c7acbac5e74d5e82b7e35294dbc87e131e99d12f03 41acf738e8f7ed55cc4213366241ce3ced1f91b88cb300c530a902aaa4e7f284 38bb1cba975c4071ffa0cc4ec36b51071cb46ab6efce54bde444793de1c9bd89 b1229e5af7a6d224af1b68d4d8e81999a4497cfa45d4e2961b5dac36c9d91e5d c105bdede1bd3f9073031b8cdc07e529f02519e6c32ddc9400518153b5d77da9 5bc20f9a102ffbbc4759145cb2de7057ae3f1b813b7feeda634acf45a84c5be2 94be125deb84152c0cdd6568364a6d71695f42d375c3c20a1aa14eef01d032d8 a15673404a0df99fa8b6c1f1865553698afae6599877e1613cb261fc4c5d83fc a6199b9aae0ac83e99547f74376fa43395e31ae1c29167f38c4034ad15bdcaa9 d15193d9a5df6cb952bbdf2477a6c9cfe8393860c7d2ebe332baf6e043e033e7 7673a0cfd4e3560660bbc1e2e2b5a17c46ace39076b6694f4a914d51963c5d76 5287b98498a1853cb7e4cd720623d9c299ee1042d7a5d0e2fd39545c1b8c5e00 faf35bbe78756492a29ed0cb787a8a82f096e4709c6dd7f9dd9a8c1e15cbbe94 e5e2a17668c58d5723c8c6fc763548489066caf7381e38dcb2bf110e5ffa9e42 222f0ecdeeffc6ee8383852d5418faf26634c3951c8830e2b64907a067791c65 cf3bfd4cf6daf0c737a7afd72df1784488cd6703705e1cdaab0f4f69d14a6f3a 411e4ce5f0bd5a0793d9c90084a05b54889388e405daf86a9c6d2889fcc48628 69b392814af25ef08eb563f981c9ee56f7a85b722d8afc5763692f247661e574 0ed3592b0b26a85de1dfc31dd1c3f6dba217e0422753bc20f542c700cfed12c3 052c87cbe62538b7456c7b614ad48cb37607d33d1fa0d3d7b5bdc89e090e892d c7d840eab05545269c0c05b63302db35df481ca107f9a913515cc829aa3d0a89 1dfa285c73e8b466bf582c75789cabebe404e963b94b3651bdd4be5079df921a 1900453ddf7a60bbb986f6b142fb8e8f899f0f182686c3d14839d819c9e8b638 9991d8be966f4fef44f8baf22b00cb1984e9efa2822bce9fa2ecd397fc32f1b9 4e873e8fbf81d25ca2b89979e202f4d4ec99dc7b30886372ca1948dad06213e7 f77e6bab848b1bab07629d851510d9bb265afd93151ba8f62b4e59d4f39563fb fc2d990f36132110a0f986e7c4af40d0abd915ba42c4c461c98555083792a849 98ec5999c6cc562f362e2c129196f8eb94ff995915b58fb54ce1cd71b0c78eca 0e118a601029f31c0600e370eed207b8afc68a7ea14cde375eb5d99f719e785e c6e370f3aa39f7f96399b10cdef77bbcb730536ad92752427fdeb1a5357f07d9 5f1a3ccbd7a8e8ff5b75187a1a960453bb07e377bc046506cb94a35cc3a05c3b b3af0296257d4b9032ef90365e1eb0a0b0b1965a5a9b4ec7ac9195996907a6db 4494e641785ab47ad860dba9357460d3177477ac020b854ea068971eec798e41 b3a315674f0e54bfb50e7b6213a819f591f1779bb3e5807f90a3128c388610b4 71166fe902d700c2a4ab3a0491bac25682bb5c1559d8cc5d4e64463fe8aea6ea 5eddd49125e1e16c0e34fa398883dde1d737fcfdacc4bfe390852531a8962ef0 e959b539d6926d6349ca126078eb9c47fbc265cdc335b76b311a99477f6d9631 69aead356290e88ec2a6a544903733c466d3884cd4270a54946c6b52320fc528 27b8c89543f3b61f8278203b9ec0a05a066363c9b699a0367fce0457e7eedd03 3ee9f6526cc3e3432ae0f92c39e7b2ab63ef5d1bb572b2257434e97e1d55b31e 478580416643b2a034a22348cc43a381bb86b096e603a39821b02c3e676ae01d e82cd707dfa94b2f3557e0d692f53734d5918eb03b3c8db977600fbf7eb43652 78864d89a0f37b52cbad10fad285e84d6cf54178276766dc146e88f0ee04adf3 3f6b159d66d69be9b8569c2fdd72659bffc00c01dc5dc49ee5cbbf4c064d71fe 192573b4cf222eda5596a1f7af20f395804b4c8b19d8b883861ddf45a14ad98a f8ac7708c3c79da8f023c1606c7f942d9727c774e1fa7e8e6faa4ddaaab9e090 c5bca5934ac7a5b5b2e7c065368862d0165fbb59a7746a5c7a5178e5650f9b45 9c0b5886beadb081812056c5ed6ee4659874275d86b133d5be8525f77ca0ba7f fbc2f5ea4ff2a86531aafbd42c33011872d903aa454077f3e847df5c5d8b8340 423e634dda2ff0e3628220ec020537e0a5d0235266837654d2200e20c1123616 0c5b02de054025cc98858f98978b364c238a5e0692666b9ebdc22d66c821226d ac1a178bacf9cdb1209cc2df3f8616d64b95855236af559c3bdc3795574f1e04 b1c5c274c0b4fc5d89dc3a0f1db065f76c9d68fbf74a6ca9fde9c19b3a22bf7f fb0f924cca6b76ad53d43be0c682f103b86e590265ba100ad7f257c0813e51d4 2fa297bb8d7abfc315e21b1dc1ef86c698ac23e8b9b0b141c4e0119e222e74c0 2e25d8098679866c35d7427524b949d92e0460883886857017d64ffbfddcfcc6 191eefa8cbf3ce9a61860510fdd9080cfa4274ca87c5f378823e984daddcc31e e16b3ab557e9b9c35ef28cec5f22c4d0af91cb421022a3677384aae695a0a3c6 20d15ef29e3708108fb1eee1896520bfbab6d145ad0a1b52a195c11d908d24e7 d957dcf72e04af947e324bc3d5c9cd99e7959c35edb1b562edd5b00b93cc5130 e2bfc66149f2ad116c3f354cd089a3c7da4fcd65e9b050a0d26755a2aea2a161 b597d03553b3bcb7cb15f58235675e698808624dc694f534d505e70390aa2292 a7a2db5ea1b119aee02d1d37cce95fa689ab2c2e195b844bd4974a468a45260c aaaad3534c92fcb17e9d7b8643815c8718c3577540d000e118bf7b9168fd2386 7b704db1e4d5b94ef24d55ffb27f20fbd8174f48ccbf7549c5ba97b003184cd9 23601c128feb9e28d74a9fa898d462d643e7bb70ec6621234b4a6b07d785a4a0 337b649b1613318aba69cf6f7f9e5800fed0bc05bf6701e5872272b05f6e77e8 70c916a7dc9de05c5ad4b7843cdf20b29d51ef8a66b6b2a9441815617988e3dc d97c1404260654033148d24dac8367b60a7cdd1c815e57c277d61fc03c3a256e c08ed5f1df7aaa7bbafc9162b60d3a0107bd3711058955101339c3a1e1f0904a aabe61a5a74bbfc7fe37098d860f8fde981f71ddce4205585a8d84fb79e604f4 c42e9f3c06e244fe5185272979a661314f7d3a07afa61a62e2368d8b1114fe02 17bba88dc967dae91ba1a8098258d6d67ae29aa3c1dd559a3474b515282d14b3 80a0c413e4e678df369279f46a682e4254b48e8dd85e86525c530900c192722a b359884ffc630f8d4a7856e67993 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 2 /Theta put dup 12 /fi put dup 14 /ffi put dup 19 /acute put dup 34 /quotedblright put dup 39 /quoteright put dup 40 /parenleft put dup 41 /parenright put dup 43 /plus put dup 44 /comma put dup 45 /hyphen put dup 46 /period put dup 47 /slash put dup 48 /zero put dup 49 /one put dup 50 /two put dup 51 /three put dup 52 /four put dup 53 /five put dup 54 /six put dup 55 /seven put dup 56 /eight put dup 57 /nine put dup 58 /colon put dup 59 /semicolon put dup 61 /equal put dup 63 /question put dup 65 /A put dup 66 /B put dup 67 /C put dup 68 /D put dup 69 /E put dup 70 /F put dup 71 /G put dup 72 /H put dup 73 /I put dup 74 /J put dup 75 /K put dup 76 /L put dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put dup 81 /Q put dup 82 /R put dup 83 /S put dup 84 /T put dup 85 /U put dup 86 /V put dup 87 /W put dup 89 /Y put dup 91 /bracketleft put dup 92 /quotedblleft put dup 93 /bracketright put dup 97 /a put dup 98 /b put dup 99 /c put dup 100 /d put dup 101 /e put dup 102 /f put dup 103 /g put dup 104 /h put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put dup 111 /o put dup 112 /p put dup 113 /q put dup 114 /r put dup 115 /s put dup 116 /t put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put dup 123 /endash put readonly def /FontBBox{-39 -250 1036 750}readonly def /UniqueXX 5000792 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bacdd6500abda5ed9835f6a016cfc8f0 0b6c052ed76a87856b50f4d80dfaeb508c97f8281f3f88b17e4d3b90c0f65ec3 79791aacdc162a66cbbc5be2f53aad8de72dd113b55a022fbfee658cb95f5bb3 2ba0357b5e050fddf264a07470bef1c52119b6fbd5c77ebed964ac5a2bbec9d8 b3e48ae5bb003a63d545774b922b9d5ff6b0066ece43645a131879b032137d6d 823385fe55f3402d557fd3b448685bdd20eb05d5e7c2126132e33a59a7170609 dcf4871a5d023c9ef57d3362d9f2d7a440bb69bf653364105f16f4d0f03582f9 aced3d05cc76489b16e3fa8a446094d30038b06ecceda269f2eab9d19a99c7f9 39f9548f206c5a457a19270b2b82c43b091dfc5573468eaa3e7a4a32f8042891 d85e4b180fcbcb3091d2800e54c87d84ce9cad6869b5aabbbe47f40c68799893 d22b765295e1e69e33aa048b7ed98ba480ceca91f3ebf8ef85fe9a3976909626 b95ac5940d53f9b02215d84a44837ba25ed15cce0d504f1d335065594f3bc824 5405407591cccb11cfd4645da60d960c0b93f187b0cf7b105543c0b70f89af5d 264b6c026e3ae646acf145950202ec73282111e3e601cf2bcde22ce3edf6db23 516481420f26552ff4472d749811f27768150450d0d0ebe3c79f999e99b5c0f2 2eaebb12d97782b1bd91b2a1f62a76412548ad53c0dd411d4a08c0f071c2c218 63d9adb75a4621803ecb84c2bb235b620b658984b2d8e0c4637e2811bc8f0d04 6c8935afc70141e1b2d9c23bdb251d304b3378faf8928bd09686aa0340fb0cb1 dc48c996ef91530ff078666fad227a3589f50b605267212d3a65ebc1019a8eec 9a0739a00279471a01e1505c17658c10030fae32f274fdc8c8774b0d5406c384 a1d17068dcb0c2575c562fdc5a2176609bad9a2c255e426a4325a4fc3053c7b3 2f35f7bbc9aa50135f30223360fa2fbf019294b2e1d1405e078341097090ddba 1561f22f8738fe105c0e3b84532bed145d51428c9cb1807e655408807dc69161 1109a98af82680d6dccc987cb312835dec4ea0645f47a15b6707d654ae54846b 3d3301d61150fdea8ae2da33e79976812c7764050a3e86a2a819ffd3c64c38ec 16b2d0bec3922847fde375ffdd82f8f8bcdfa39c53068da393b35277ba7af682 9e48b1607f22eeefd7d0eea93ba1e2fb9b5ecc6c6fe1075db980999f0be7add7 af3de5fd9d57419163feb5f8095596c45f5b6ee40f669395cc46d453093da73f 9b0d37f3a5d2eff40e4f1736ac62ea4b1331a0db3144f7613da57f69af7517d1 152329dbc056c019fc4c52b7432ed307bfbe17949a62666819431e7f9d79e373 c660a9ad149ff20ad1812aff7fd0057c519d3df98a5211b60b02acafced6f5d4 c03e48832c3ecc00abd0c830a4383046ddc197e207a794b6387b190852fe49aa 4830f6048d072323e03745052c5c504f68f3846cd82f4b41ea63b042c682129d 6775529936e84c9b95b04f4933c8a233ad3c2a14681e289895af3d48485bc3ea 71460fc4d29e80b8f639889dcf7a01c923de4fdaf5c89e081455cd94a2cefb9e e3fc38a7c621f9e80b24bd86aa7b6f8ddf8e6cca3a1ab72751a8239ed8b179d8 4edaa57b769cca7d4e90d013d24773bec71dbdcf25f6e429d0b9af5eb17e95cb b18be8dbe3a6b747b27efb0f05be63bea0e4dd94ef0f0a271ee00b2c16af1086 66e78a7e53142c332dadf5947cf50906cf44b7f5c2679e7ede8059d41fb8aff1 80201dc7d32910b20f1df9b818abba9df50c1a0da77c82b781366a4f344184c9 5d856caf1cd2156bea0b46516e7811e928b7072610e9e475cdef2afa244e71bc a6568e5762d463db7d59ffaa82a22f78cd4732b708d7eff218d5cc6c0b8a8cee 424f85796e8e37575981112cf729fa5b2e503f080e0507e019c4c022e88450e3 809096ef20455a87b98d5d31c0269f1c61fca159e4da38c6dcfa573b9bf77529 6c29fa3137d4ff025bbe263a8e8609818f5b34a76c2a954b64262f4ac4ee79a7 1a2ad5d949c036cc569dfafea24298db277ec2424dd8c78340195a99557361f1 b04b9a201efa4143cb85b938720ecf7cc51784305253259d754e883b4854a026 728313f23bbbe044ea0c83a7933e59fbabf842e18dcc0ce94aefc93b06e2c0b4 7f663279fc55d42c0534a856351dc1c013e49d3c4c2f403eb1b04420ea8f991b 0a0af3395a9459504dcb4b19c1000e51c463ff7d171f4d4a70c0c21e439a8a54 0d4c1a2bc3eda07bf7cf6c6f77249407267ee64b5cba9b3ea6a47cb00f4874fa f43a18c67577f5b598a1461ad0d87d0c01845e8cfbf01cd5f6379b061e868af2 24e882075ca016579bea69472b045c83c9fa383ef29969bfb0cde35ced16f35b 2ba47f8e22b3640352e489e7ec316bbfebcde423f096e28cb5e5cc2de30a6c98 d44c1dc57690a64ff88041c41807c5d69ce49e95d206e1e89b754726155890c5 f4f7e5ff7c0c3ee74f751224aea8f4c88f4f68dad1e97ca300855bd394b83597 ac15b5fe3f83019c28baae43c0f8af721a2ec27c45873b570275628551ed7198 37dcff115554354f0dbdf136e4f44f1c3a99b57cfc02865dba93ab846d8579f4 ac8636d74cd99cf48ac275b47efe02a1f223e7c24f99ea7f2389ab10fcedb297 b1f277c924b155b3a608cb89a8f517950f27d001bddeff6059db70c420932d4a a5015358c365bd5a95dbd26caf0ace14c5db42c069e8a2602b4801bfa5d9183a 3270722cb41b02895e9b4cdce8ed09fbddd974817c58f84e6f0da506d4c91916 d9b5669cf627c57e3b538dd9208e026e1d80224f5a8e9b05a22f597bb0e26bf9 948bd1d6aeff2299515db08de30c954bac15d07cd1cf7149cdb60264a2d4c193 f3925e30b7b9bbc946aed5816828bd34e76be2d956da324ffba48b98c02f6b21 cc3bacf540d725a05d3810f2b088b800845e960c3f7b59a098840cd97199be79 1beed359b7e37b4fb19dd35c50b8086feca75ba483a7ba4db86f0f592aa30334 2ba71b8531c0069cf4dbdd2d01b41b3feedb2a7ad8eeb39bd54c9f8514bbbab2 ec581d713a6093ab6146d256b8d2fd103211408f4e2efe3ce783f1599dd2891b 61255d879736144bdc7ea8f2ef64581717e450e488a7fc949168afed2e17ff75 63eff132bb3ca4706df501a1870e947dd1ee0ebfcb8fe1f03f8345ec1f381bdf b6371a941aace057a7826e98ffc8ba58f7c6eedbefb9defaf40ec9144a744c12 1c3f1be45eeba50fd6f05aaa709cea1972424840a6b4a892fa6902a7cc488f29 e2194da1e7f67217967cc716d1c927479cd246539268471c4ad448c2d7bac894 86d0d4ea8c92bfe7830650ad03d6d4fdead3e2f9c7d591e9259debb8db6d3bf6 5df02825df7d453f8159eea5af9dd99b47982e0cc9ac78215677898ee2f60d16 edc95221c877e069e8565dc6f9463f8f7965236c53829d05a271e170e89a7b50 6c64da0d72bcf2b67d53fb6e48601b335f325a7c3882e3d8f4d12c732bdaf229 af434790a437ba21f95defa963d9f5a1f4aebeeaa6799b585e29559f266cb622 8c48dfeeb68afefedc6237441ae475d65a19dfa4f8bdd88cdd3e2c842b46e7a6 20eb18800d14e5a568c36ab98f924f4998b94e1a6b9c3ab989aedcdb98a7fe19 45c1def66ef0207d2acb8cf2d7680bccfeaf64bc4a4e725dc39084a9c77e2bad 96cc35f28ffcf34e6339389b3cb693c0da78b04330e7b9ec2274b948be595f8f 34ef429a18cad0ee417159ceaa1d71a038f285d0265ca7ce43705df2b05b8170 8d4d23e66afe112c7af264c2af1fcb4e942e4bc2f9c394b2a95d6df4e7bb32eb 4d382e84acf4326848a6b02b114a32a18185795020df4506bfd2feabfa7bccdc c4fab75696b2b19c6184a2389de0e59f8cc80a2aeb684cc5d0e19999ad898536 17fe8615e0e96894acdc69fd5aa62bb78e7f38df706fdc3bb18251f8b125f810 7663b6081b33eef8b218b53684972b16c9b0582c666cf644c6e9e5c86ec5cd5d a4cc45f2426860ca1413f30d8a9b80b4e3119d4f200a44d8e6cefe1fdaddf4e4 53a871a0eb952d8bd2de539c14bd36019d6e642c71b9632f6589fa696f84b8ff 2846fe00198c40bdecf6878527367664a26becc571b2ecc2bf09eba4b598631d 28a38322a1679eccec0f0a253c6f2522935ab4b05eefb54688e0c8ac59aae221 558f511497a8b8c37b044c17adaf41f1686d8e873da77b96d78537d0608c7b6d 9876913c40252ea1856a9623950d0238ef9dcb7bdaa020b3a91a6f84ed181d88 3f787c70e62333718f94f9f9a3e18c1b6712f636c3b496127d0c167425824368 08ccb7dda547d69f92e17bc3ac1e1cb1be27e9337bc3184bf984089dff2c084e a7778fd6c857cb65bd64346db54701b19435a2327cf49a8b3401af50ca04c1a8 02a42ea0a4733a48d78d48f8dc708ead0713e71e4bee42f24bafcf1bac1b0abb 58a2e38029b512a217fd7ce1f4c7030afdcbea66fdffe450144bba88f002b322 c2583310456c934d5e6d2a40c75bd5e2b338dc8b2ef1bf0765aa4b317b3744e9 2eb1c33df90237e33823fe730358fe11d8bb6576497284b4f19b6fb274f0fe2c d76f167624eda8ef15393deb09b8e3c73b5f77b095dc6ad6592870455b2bafd4 4f201a22be48689566048c2e801529e18eff233d763e3a2eb9b7431a1b897953 1f97655873e1a8bd66457a00ffa5cdf9c9b8a91b5230422040d334f5abe692ef 92c69bbb686cd9604e028a659a6c5ee689cfb9fd6cf1bac2430775c51f144284 f917977059b9b470fb6789384105adebcedb2d0dc680083ffd29545f5f988ffc 08078ff5fa4a8c45d3903bf463116032f3198e0507f296336f267a3f3b4ab0b8 f3712949ca7409e75750c8f54a186e7117b11cb89bdc6162aff608e4e12772eb ab61265f12336a2031d4270af8ab6dd4b39bd172ae1c1ccbb206f9cef560f62a c605cb76e6d4abc6e78631a2012c7f80935d5dbb8134cde468d062930b18959e f695e7985b664368d390ab46ad7189ae1eddd1dd42762b80109485ce5d902bb3 9477706c21983042f58043251010fb32f1963d247391fa926861e064352e41fc 1d0785d4d1ec55431124170c717bf945c34fca970b7fcf99f2325c4646afe634 8001bb885a644952a7baecf0f96b86820602ba5a83b7689b61df3d01e5fa83d5 171dcf5864f2e9c130cdaab4b8feb304da6226b8b359ec06c5c0f7865440c0b5 403fbf7e68d2509b0a2419838037d3f84af62dd7b2c2cdc8589f449ccc466c3b 0a50d199b137595f51c55f0b693b39f0871a9b97be821b9ff092049140b1e6a0 077177ba75b00b692df4dfde8f49de62fdab631c707a21f33508288b08a25c30 42b1fb740badfb5ecf74154d093798d41d9a319be7a4046bc887ccc489fe7f1a a2b3ba1520cb7ae0fbcb78298727b4600b9dac93e278004810e6d65c536e6e37 c7d448ba16c59d6027beed13719b6edc783e982d254fc484d99cfb53f31a5365 e78041638330e46cae4283c514553641e0f8cc47d336c7f96ebe261cbcb4f44d a79e037921137175a4571770fc7b02d85fbd7630e2a28bb8ce40dceb97acc4aa d64783549b4858a26b4d3e86a46d0850b80da09615be58c3a663bb0b7bf9aff1 df01e43faa5099adc741b69281f981256c61428719a30d9de7bb999600ffc015 07d2837a8885ab348065013fef3798ebd23b172cc08ec3422d4c4444182468ae bf6c84248a717099d3595e224300b77b3df1f78dcbd6fa65bf83f29c81b32cfe b1a82acd0f254cbb5deb0530ce9530bad68be5a5c89ff3afb16297f21be24836 5815bad2cecda31185dbc3b41f65ad15ac4c5a7dd144bd28571ebf0c90a39bb0 0f7d48591815543781000c4df0214436952774d925422dd87399aa65b733a17f 24892a4d08cae52a2a0e7726e772c8134d134fb0f1fc0dcb66f67daafabaad5f cc6cd12e2db01a604a101f7c6d7c9ed380a50fc3a19d2e15e2dd482f60d625f4 c6e559ae37e825cdff06242c273e5fd574cdd0be616479c9f8fc72e1fed710df ebd32d3452dc2459c0dc6521c2b383975f5fb1115e70013fdb8a720ef0100e7f 60e9af1adaf93ceb2397ada30aeff084b69e6c3f68ad8d79ea78bb242f3a3bfe 7a5d811528f35eaa21c4273c64bef65cfe1a1481fb8ad4275c1d26e85e7f32da afa46f73cc8737a57ab1b75605559acb066de7e051de81f439547ca702a605cb 72d4e0e32f2fdb90a2c6c65ac480cea951bc0fa7259ca91ed799e23fa79b29b4 27cb9fca7249f5bae653b1c9f9569401103b6748f38bf73a61ccd525d7948145 11f10c4eeadfad31c8dd6661ad7ef53f1589e397c4fe4b4d83acaf2a90d4a679 b6addbcdaf7a629a05ff421f013c4887aea3b0be4e27c226a99f8f1ce3a06e05 334a7c75364386d7c6722d38dde139469c2dee54e92288e686fd998a0105cc87 1d3071557d8ec9991c58a64d44e018e43283701ac4997b168d19ad7d24119e91 3dcd73558141055eaa86377a8d2fc921251c38866f8ee333fd1582aed3126bfd f7d5d18ddf882a06ee3bdaf2301eb9e1f1ae14f93524218b280b2dd53d8931f5 be9d75e402c1376c973cbcb6df11c0ad6c9a7bebfed718cce6ce1772196a81ec 1de49c818eb0d6485587ab7b8e5b9b9edb2fac41d1d9475709f54de4385db32a 8862359c3220abeee8b48609027e9a76a660773075c418129f54f5c2549c05ad 3b0bfe5f4d7c0f11c1fd313dc5230936479825f31afb936402fdf66d8fe7290a 6acc3513951aa38cd2be347165a207954fb7bde5ddfa813d3c60306ee7c17fac 9a44317ffa826f45265476f1ee2ff9989f81d7bf5d2fd6f44d3c18bbee92c9c3 7787e2f36729e1e77393ea1294f6833c545208a97847988565f9726178b10196 78d28ee5f41199d9f91051d313d8a5adcaf6e55ce8665d15b6667a31ee9309da a0705e6ba90163ff532445652311bc5a3723f8c48959d7175c09441535e904c5 dea1d9783fc51836adcb38df65b8a85c1507d734154d8ac1d23549038eaf396b 91fb4941824a5a5f47f8b597f6b698c756c4332eab6ebbe60a1de11f6f462fe7 fc8ab73f933d26ed2076ff3882a36457619d13120584fbe442a27c7bb831cacc 855b1df6c3908af161482093d61dffc8a40dc94c670a17529c495729502ab6de e71b144d8433aef20a075aa8dae66c5140177cfbd73ababc8e134408b78bda5a 8687533bd8d483775e3cbfdd695d251f643f2cf3638cf27c79907c9dfea3687a 1596c8bda251f369e096039321fc394ec821b5a11d811e670267c76616064b25 7ab6a5b4d3e5ac131f0267a5949faeb35f10ff0e7e85dd0561fad599c33a5fb6 7fc1a9e5539b1a4a9c4c797ce2a0953c3b9989fdd42fff2cf7b7eb3fbfc6ee1f 5d07ee93b665d5cf74c39422b1a020a1b7736ba5a12ce6e4ea4f2c1c816d9615 d2dfb1c3ad2bb373d1ee6db582a54e455f5e64d0bb205e82455eec0664b3fc3f 38d51cb23af40a8fc99d5d14d8a6b36a4745dbfd14bfba35394b06ef1a7ff417 cdc16e051d8a74551cd4cc004ed3a783037e840ed757ee35bb2304313a1f06b5 1a625924c0c866a937c1bae404dc2c3f135cbede32f6bd573bbb163ddc24d9d9 37d9556dc707969eb146e3dabc866602fcc664cec5d55439bfafa673500c1d9a bbc1057816b5524b70c902fff33c63f4e4c239175da195d67f94c1aede062878 dbd1a049e3c2478b342688e4860efe30a4a5345e1700904de79e69fa1d65bc4b d93343a5ba6ad535567f519d9e734fc78ec750891b61fbf239f0e02abfad0544 b733764ae6e356c35ffcdb81c90122f608062b60642e60927ebce88a8b372760 71d0120f29feb2929f43a8e24ace3a32a621310fd722b078ef04050c043d6ceb 3da4e8b46f7b54d500fa3e1cb37198c8209a71d9fdf4d9a21c7cf6c858aec8d7 e1fcdfc17b520b692c3f9367fdcf7f1ba4455d36607f86cb066e8386e519399a d3b403c2b9d3f5da621fac73fe55000f81e6f7aafc47712dd55bf8680a157ff0 95af5acda3a0594cb03e3a98d2a4c92a8b8717d249f7474f5803c911c3c7de1f ad356bcf45b27e08d7313148303a137b9dc973b50ac344903b6ca5bd3dfb41b1 d2cd662b3a94d0af01cc48bf8b78dcd8f27a9f89dba29e436d79a023b6c8dec0 b92dc33c0ba9b41808a88a3a93ce6a457fd72e273026c56ddc3b5dba30dd2383 fab8b60ac75d4ecc1bd18f6d9ab97e3f7ef0162724c2ff6c916df05a6ccaab70 029c7fee37084ace5ef086a0e81843c3fca38a842bbf13ae4d8a48aa4b08e91e a083e68e64317385b40a1990a340afbbca642274a78a2cb4660716d34698016d 05631f5ef3a00ccebb47df3315d9d38c1483c684ad7ab484fb86670cfdf8d430 54c91ce1b3bac7f59916c5bb2e16a35b086cbef094ef8b887c601630dbed0360 9c7968fdb43b3b564a43ca2e83cc0c3373fc5b7e14fd687870927505fce6e6fc eef292e543ce8168f441a43eea2968eeacb7912e6e71cbe5104e8d0a4090fffd 56ba67836eef8b2c45f0292210ad3173ec8cf52841f6f03f49951e6731af6ad7 f46bb6da36b9e40b9b436bd5694d605a486bdb6609398ad27164abcff6422109 4d8a0ea3422fa5bb736e18874a26f4f37a3814e857c7f4c7e2b8ac49168ab8ce 9a3eb51ba79826e49128bca6653bdddc61e288962176f369f82b1edc8d6bc8de 5e234dc8393dd73e454db7ed99e29321d44db1835890daf0e9e33f78ec435bf2 546011906521f8ba4e7add87446ccb6b4812f5a1fa51f271faf181cc426eca38 063ba785a10852a824a54e179dbc9088dfc1bcb444a14039dbc60ead9cbc50e5 dfa8269907ab23c6d9a388846cbb60768af70cefadf22a0d67f19cd3986f7404 d1bb00d05ca8f83105074fd2fd720e7f3d8203a5abf9a2e084b573ac6e3f7434 c760b52ea950fb565fc3c4cc9c5d36a19624619958df1063477ad1d0575d597e 004713533463d9a4b9c3018e5d726ff6ef1d4adf020b6d8c872fe492839c51d8 f5a1370e17fdca359eb121004e2c3e6b08637fb3201280de7793b5cef6ea3edc 51fa851c918e06ffaaf9af38c1e0369213c96933943e9d13ddb6c658532f0143 9982f0543770d536729a882d3e4030bc6a5e9bbead5de9d6bbe924d74d75fce8 a3d07de10706f06d78c8b66b0b5b1fb79a9bc66046350eadacc49c95834de64f 611bb47216780c06678cb21dedf647a9e3b3211e621bede8290f1db198f799c2 2977376fcb1232c92507bb4285523127c3df83a8a727971c2ac270c177d9af6c 925bd901a6084031450a1f9352d43f4f7b6f43c41bd8b8fc46dd83dfc1001a2c e5ed86106f2439aab12963b6d64ed462c40443d51c39a0b0878a1f964e855892 e384bdd651c4ee2d2a719b6ed9ec67acc832493f2f5fcb1ab7ebf4e0e1fc2d4d 9b28efd21052ee2397de68fb0a4ae34794b64fce5ba397a507a9e90b14e3d427 f04db69992bb0b1fa64d7b542690faefbdae300e496e18424c4021d1dc2b7408 af83ede5cd579ffe8bc0e006436c35805e9ce81e8a3ab6b98e39c5e32b632944 edab5cf11ab874ef3253676746d5ea7e95d920800307c661957a2166ea1852de 8a0f2406a63a1fb6345cc53f632ed9fef07e195e0c06d1e680d4b1453bc4cb2f 2c920be8a7b6c862f93a958f903ead3fa77b139aa5c282e071df5dec46bae16f fb808ad8d801aa072a0f5cd2229e101acebe10610cd67f37015341bb2d5b67dd ce0031e0c498039d0b9a905caa446295c8cc464793c678eacea9f52524d74194 ca21df18127820e2fc2ee37c506590e79387cf143273db7b16a219dd40e159c2 b2d3f9f87460af1ee833dfab7520444dba25fca80e1a1f7537cfadf709a149b8 0fe05ade43b1e6832ef7cff5f67a4e30a218da325b0557d3231fb3bffbbdf2f1 e788f6d29d7e14d60e8bf22f6509beecf6e7aa84360282053a01f0c3419bddd5 91b664adc6f401e31439c1dc31f65d81a0d09abed6dc6ff863d9586bb22fc6b6 a06855f85717803596132a8ab3da8708348cd6824d931955cb427b4ee3d420dc 48ecafdafb237590e564cee098ab95cb37b5947f5d906047f7317ddba1ed053c 32c31bf602815d11bfe4e84a221f713c38f3a0ba6b1dbcf210fa92d144f6bcd2 1561e1633fbc937105009b23181559a5e10b7977d49ee386b7098d92720990f0 82a3e46dabeedfa0ef0949cdd7fc632ca0309d6b5ec77049336b10d202041323 ea8c6f6fd2ff2e3e7890013f6f54bfec3ea0c3198f4d5834b9230d0ab2ebcad5 40d3251acc345a3f0a53228ed1bf1de9c51ca30890a4d64ae4015c7a8b780b81 f9cc0a293e700946f442e68d2160501b5ba216aeb07795824fd96703090a08fe db692dcecb20b3053fab38b900d2b6233fffe6d7c442acf9ec2bab28994e7242 ac5837a36d0b578323f89448819b4245c3328ed0198c0ad6f1906516878224e5 89141537b55e51f78ba3e8c91511632e62e575e5983e107585b53c701bcd4915 28fc6b8b98ea1ebec366954d37f249150b7d2176fd94b30c25671413082303bc adc959e6ab1708b258e194772ad8fa2841bba9e121a4ddf63fae34386f613097 670b6feaa90e187370b5314e180b37dc96f756d58faf529bba3c510797de78b6 1abe5452a8632035560324d6eb2fcd7841820f1315e75f72b4fa94df5a91e13c c11813d129ba3ddaa93bdfbf39290a0b518fbb23c1ea4cf2cd65e1cfcae86408 71a7ee794abf3f057a38aa03220ed8efaef38a55c5a821c20ea2103d1347dc1e f6e9331094cbfc80d647322a0873556f0d3352332d76f009c3892b4a74fd84a5 87117f11eb6649941eeff48137e85d05e38a3502318917c6e430fe5a98878149 081e5f977dbd8821f582e2cbd3c741650176db6cc8adf0cfa78124317be96dcf e76fd19e78c0dd1b1595307ee7d29ac468729d292ddb410c93be5059492fc65c e160c7469620111919be0a9eb1fcb14c612e5997f7715888f5ed0147d142c76e 98bdf4d14068a05924a897d975ccc67f88c7f859179f35d50ec757f9c8f75dd8 9ab8b496bd65c318651e243ddd2f357b3dd97b42be238300a84bf204dbac3205 37aa3e800cfc531a2296a719773c555f6f0633377c85eed724950abf1f106348 9f6b3e1efb0b01c5af7b69a2bb6123827ec51bc0d168536651908aaccca7826e 7ccba8f5554f6e8fc0aef346b8af8e824b0ef8ab8d8a071b06bf4f78bfecbfdf 32fdeec50b923d2d3d8f30685b8922ed27fa476f1702ef60ad02197a161e6ebc 4ee483e30ae7a732fba2c1b52e949c91c08fadd2e6d2dbd3cdf42e4e75ddb8c5 e00e38f9e67f9c751ca70872cc010346d72c219f50993926499b0e67a5932174 036aab3f983c7bea3ce28229aa0e6b658edcce2468b2580c0a1dcc96ad3bd1ed e8b0e4608f6e7d1782ee4388df5c24a4b57b85bf61ad4333102dea38af4d1e31 f099688178574b90fcef0034007cb93392a60ccfed69072e2e7ad18f3374df46 692eac264b11e7a708dee609bbe036faafb048f62b476acce3df22a7ef8c206c c00f182aa79de2a6b5d8ca0eda32f97d8809151d691fecfaf2118e03ac214db2 7a37137b8e2c103711bb5c7caa4a114b4634bbf46f3c07af61e9012e033c9084 6f57a0fc09e8be09784c7c806e1e5ddbda2750c56b1a2852d72a63af6f3074cd 505f91b9c45553ebd72e08c2cae053a96cf9a9218b03b32224492f257bfd279e e0a893e442c01508c516173bd167c6f452755b41ad09b0eb269d4410a7d30288 2628e6221f11ee1e87dff04ac28e102b5c5e99fab1f8605bf22c727df42ee828 6f25ea437834034ac77d94faa48b96f292b1412aaf7d7dda9adc267dde16c443 3de22725e998a425ab02c65b22baf04db8ab70481a6d7139e5706a2983eb4af3 ae2e4fc6958b941cd3aa2c3d54faae7dc8ffc376e59dbd07190b5b67d6900922 1dce7e6c299ddc271286abc9cfad6b4d8290914de2838894fa5c506d4a65f6eb ab450211f37c59a1976201a03ef11b3cfd1feb8936ab558e541704cfd4769d75 0604e91e2911629520a101b6208b016bb9f0d41685656feee4bb5607335476c4 2853d984a050ba873df846ebb7c8003ea3ed2c906520e49a4a5eda3e9af06921 98269bf07dbca733e132b8f3510dd571b118a4ef832e04e21064e906543a43bb 4da5db7122d7eb7ff14c670eef751acc4812153790378a4b76444c153d2860cd f2e69e72fc3f25b0c48b0b8788371ec248ee16a2b4fc7009079256a684005d9d de85e29d3ac295f42c378332d6fa30699291484eeb02b4f0354dda37444e1c8a 9361ebb5fb60c7938bf1f0df7f49d4b69d08cb7254f762b997737e16368f1a53 17bca03e45c40e73794fc9fd164b3593ca1e1d13daafc997d1393377e4206d46 c85816877c5931f38d8a10d832f2d11524554d58ad0aaab385954f23e33e67bd e1caf37b6b128f797d055ea1b922abffb84e8322de684d37b8410c60e4362cab f0d89d49083d97ca239ba87d1f11f23ec00f43a521df835cf0869ed4a9a55f4b 395238f145aaf5673c9853b96f3c8c275db305f5963b066a938f8f05b85b226f 1b00e55c0483adc31d1671741a6826a0a898f24bde15eefdaa30ba907eeed17b 77751a98de013235a6af6042985f5689eedef4710043d1f079099c3e64bd71a2 456fb6bbc8a54dc12b431fcccd3e96d54f830665c9170496cd6edb53903af274 0d900eb111c87c7e7c0d50479968d55288858477236b3a46d79e0d13518e4e0f e510813b08cda4829363f34454d6ef65f6e262182eea38a7c92352b3d23e1076 a35c2cad549c938c82613ce4472ce47042f5d79de2d52a95c59315a83c5ea54d 052d8d4222cd8aa681dcf88a042006037e2bf48de9f9ab9d617057e1664f6204 872625557192dc80007252d543120a75ce55f2839d1cab254005e0cc7973b286 85ae9d26ca15e0e965e1041d1e0dfb3dcd0e23625a3ba401c65d27fdf6c7c26c 6fae93c537add9680ddab4e1b8b9fff2ae7284b4cd549497df10404c54032a50 624b05c0e483cdcd138075f35ebd0564556f80755e534951a13d387968c9ead3 fc5abed16c3ed4a08b4e7a537d49724c19d76057ff33f2fde0ba175dc9586831 9c2b303bbff1f08087f4e3ea86320ea034f900fa4b3ef914c428a6a8a75f1a50 5ae93e85be13ff60db0f6b23c6bf742a718fe7fe142d24cf3a824c09d1b9f9bc 0c6617a82749458ac883680c6205fab77a28cf0b20afb4c985b46050967f8e13 eee7905449077deb5dd0419d5508444be9477e3c976247b284dcbafbad593ef6 1dc0dc92de5d26edf69670490398bc9911adbb7b96eb2116bc658380f6fb206a bb2967ee5182d97d2d7534c5684a2fb1375b4e57c3cf79a4c249e456019e8d52 819101fc3352f42febf7215777f3a896c2c293b28570f09bfa2e3b23fe654756 decac5c01fa78276c918c0e7a051d89a5c075438b1aaf92cb644f07e1b4ac0bd f1a22c96dd0d3265d595700e30d6f47683f291465d1d8b732a17d056c4d5ab3c e3501c8a283139890c14477c5d97053b668ee1da9e120f171b60a01c9627b161 8cc8ca2cc340beb5c36cd4fa79214123208a0427bfff893b49bd7d44b65ac99b 2d9ad7128dde1a1196ba24be034cfdb39588e44fc89b9547097fee382407f940 94ca4601b05a1aa894af6c476aca2c5e45f945669636d701e9d1d48b81da8f40 fafe90f98a63c53c67d90e0a25d1ab45e040068c3ac6378872f86b75e2b7f49f 0d00269d38ddacd097b7390c7a4ff2ae3bfb1315050115df097f8c2c1657e5ff f950fd8c1d20bb110a3671c659f19315577f70e9f886a81e81e08fa6bb10a4c9 f2b00fde9cb0b4d8f278a59a0ea67597762aff9652d154e905e4d9c1f221978a d6e68f0d9d44e199fe7b73013b55bd4eeddb2553458c0f9dc66420011d5fbf8a fa187f43d15b763758727921e8c7aa5cf1802f0aeac5a1f36f21b6671cb53a59 01b9df491ffeec40945cd71caed6200ec0af652360f3f37e8df3dcdad6d2fd4d 82fadb4558b0d88b119e05602da5af680549782bdeeaeec8fdb0eb27d9768552 cce54834b7f76998e9bceec114f8012d791ca68dbeee60bae96269dde579a04a 887e55fa71ee76050ef7e48b1e6742d818beee3031604a5d77d98ce84689c120 219385be67663b40f24591efbd51da0c6be598055211f932d0c41a7f992e25ed 54f62ab2fbf1132f43be9b52798fc7f59e395ad40f22fd0427388f3e29b11b99 305a11069d8fa351dcb252b6977a19f45d91154282ce2f79c231ba6affb319bb f60b36469190f417ce6f1c8921bebb3f7997dbaba1759d13c99f3d02ef6efaae 2e2713ba56bfec6e2ae089f56d86d78d818c18e9eec5440b96500a2637f6c499 d7e437932d67a1cd738490e567f1c05cab00e119e4b084c76a5e2c4227dc710e 122255f37f56fb37bae29db66e2caf41756640d1c1fca9ad7b9884e6984ff832 6b3bf6b22b139162df7537abd373eac3d26888615c9710f59d5633dbd643a7f4 222ae1d8a215b0899fdf278b4c1b0bbfcddb796a2e7761e5424076f7e728af5f c3c7cff5bc8e3261c618294dae494480ed36f58a902daa9987b916109fc218f7 61a57dfc3ca20f4388db8bd5f2910f6598a7340111448aef40589693b7709ee9 500ca5e6b24f7527e7d2756389ace1bd30b43a001aa239b4d6c5664d5912549e 404b56cebfd3f3ad4b354b35ea53d942853e49784bf88a7453cf896092880bf0 df6dba8bbfad503524db3e68b90c4acd96a719c967c42e2147aaf1dcb677bc1a 8b72411788918c4f09f19c3f20849b1cba0375001409df9dceb5cc4b23c96b63 a67cbb5ad0eca5e95c20cbd5aedd72a9685f69342b213bd6958ae3c8acbeae72 9d22db638ebf603c2e404aa960a99285af56e2bf27fe271335d709a173a9fa28 cc6b96254e4345387f8e9705e3790948c65a91fddcc24f33f4482f736767968c c67b219f4dcb35671a167f9e216876489da2462cffb665aa3b3378628af44b20 6fa6c949f9a6f8dab22833090247477b762080a90acfb69cd33f395b0684d8a6 ee75ae5e3aa58980ecb898949c70b3a2c718e2a91edb53ce8ac71f3b77341cc3 9fc708e640dedfb75b2fdde47cf94e57598f5c70bae6d1f9f1e4c4f5fd948e31 9e724f7f36c4a01831ff459ce9ddda4b2b15621d70c4691095772b72bb51a75d 4dcdcb831a1c226b6b579c95dd263d59829c2eb8aff161d35171e2658b3dc129 127b338d83b0a74bc39dbfe590e030c68613e905a5278b0571467cd6a749b75c 4d3cb78f6a9e512510e7dd46300dca3918d3b2769aa1565142bb66f9afadf4d2 eedf8369e11d236d38ec0790bb4e6ff286bfef6a0861fcfd8f431f905e93829a 5ac147dcbd0a1eca4e8adf97a65fed3a84aede6540827b6957c446654d4c21b8 694a2cfe0c85b5fae5366727a5ac48de60b9747791a78fe06662c5f2c0cb8903 0eaa211e018f27507a5552c529dba8c2b1e70ef20f96b1be974b6639069c4e2a dc58b1b4a77d78d30cb62705ef35beca2951cf443a2d17472eeeab7bcf439ec0 57d6abc7e0f0afe27c05ea5c2e2a3352953dfc059037b6f86e5178160eae6245 d8a76add805c2b52b43f86c52ca0421f29bd1a05cb74778b744b4a5e8a2b0390 a542d07f9047514ce5cee41d9a15a3f9bf335ebde00d6114246efff251202a4b e97c150c89197cef65d69ca28a7c8665f858f4ad6920bc12d7d78978fb6e342c 924eaab57c8be6a05a1599d6341ad4492f7af723409b181b4c2077af7cea7d36 5422654ac766c035d9bf4b1b851361e33360958c581184f76e77c25d6f695db0 296434cceb5460b42a1356885b98e656a2d2c77ec8ce1015c03d1a41b59ddcc2 4ee3856db96440e274b071afd6d65b8d3a1de30baabecc266626d40d7c3fd5a3 72d5862c6abb4e99b7bebb9e7225f8d27552d75be366556d598e23e8e0238089 9c26157433f76747d2dbe6699a41839455aa770dee6150c99f87e89d9c26dfdc d916ff978ec6cb9617e4e9db9bde39aab4ad31ed202963f466f5d0caf44c879e 8970fd2caf733698a56198ed9793bc9cad9490f8e59240bb1bd0a2032f2c6a58 3c4d5cdb0b6f58b9be30bea973df1110c466a7eff13f1c2ad3114161c1d82b2e 1504581d40bab06e291a0ce029439d78cdd38d90b5ab7735159763e7b47d300e 8347d5fae68aff223b09af72a44da1a4bc24452a623dd8060077d743ee471006 01bb2f35d5fee24b9cbe1487c8c31cae3074765c4370cefb37d97ea9e6ff3c80 96b02cb88fbe4906cd0078cbe09c7a240ae4152d6d0753da9a077eeb1eba77de c0e075a7f5c01f7f2f52f4fb07def13e6bd7a239297b8574333ee07c8c8ef3ee 4dd652e35cbe8d465193e3332d5449da4cb44a0214760ad05d541ba450f61818 d3fc0981bdf02e063e5eddce85d5a43860f01f2682effc164e8509ec7593ba2f 3af5a6f305b0e5602ada1b93f63bfe2e3ffea93e1ce73302ded1dabac4bcddcf fc99696fd23f358728ef5f78ef81d3dc8ff560be133f6406bbb0930476d358d5 70b1465396f873505fd018f3540c769540b0b93b10e636336c96568f69f64d0b 470c2cfbaf858b7698cd982f1eb768820387544f1f12bcf185415fb2a5a81e21 71aee5796d08654d0198ae3cc7f33e7a8dabbaca7215104e321a603a8086e08a bcf049f93f77470ebd4afbd9e46cb6f5e18181601f6f8a63da91d18cc5793e22 97305ec7d0169820a8f5ba1d48d3a66c39ac79e1522f5973ca9d051c9926d79b 0e85f694ea38e974096aa24de9279c5ded9ce3b890782457bb48a0cd5befc82d 7b5bfa4bbb29ef02456f9674c24cd56ca270bf648c739fe88a4ed882995f8ad1 176cdae24fa7dcc5da10b918950210c5c3b8dd3186aea24bedf70c9d1fc2c4c0 07e9cf94b07743fdb0d31777f119d64d00440f8712fa0ca7412ddf0e524ede2f e13a30433d09cf1fb444449a7a4d4095743543fcd71cbf24ee3f200ec7229c52 574000590331260504404d250cf704fe5855fbe760bc4f5f81cb6fb24f6faa56 a67b7b08d650f6421cda9efbb76c5e9722dfe72af404a3eab087b2f797961a78 1a749b75d9491dd7ac37333419416919730185c363e2f2780b32f67e14ad19ff 552d37de321dbaf10077afa99f2b7135ee1037570b57c4e9afd43ac5136a750f bbb1baada9e1fdfdba25e5bd03ae04f39ce94d8da7eccaf0f95de4b0d2e0e9aa 59444ca7448e98cfaf874b1391305befdf0878c754c0ffde2268e9f9097336e6 4e2023c080aff90c2de991f96de3452dfb68f9a863879123890811cba800e0d1 6abbf4fe81755b83fe0ea382460118756a84377561033e87dfe6ca0353315e4e e7dda4fd193f122697b37b01a498e02f744716c92670db452ed19766d4a61156 6183465fd74afce1664184b315343155de702e4e10dd1839489e804f39457706 af3a493f19a9e0c024ef482c6b0c4c71dd3dd5cbf10121de4cd4b8567bc121c7 0abda8117f7adfd21d894f2b86072ec6948cd4134c8c5c1dc65e2c58fc8f28ba 1896f03fdc01195a2f5ab0e655ae4478492c5f474fd474e1428f5d4ef8e0d023 5b718b5bb959b2bd4ab3271c15a767c2d329c99f0ef0f13f5e129d7edd26b0c6 f839be80d5ac35082e1f0395282660a2b7a999dcb945dece408bb9aebf27a61e af12fdb0dd1c30c22110a9372fe0c81d9200e67440dd1e52bf67c44d7dd38621 31a260885582332a8fe470135c664daeef9a7929ba050ccc2085f724d4dfdf9d 9cce1c7d3a0b811ef89504a1928f77671c99bae662ff56a869c3cabfcc7bef46 5e09213dd465f33c66b75d88e5362b49dc725c84b7934859c6513a2003100f72 e487a6fd8425b9a72f9e64bc7f0b68dc05d93b295c3309101290e75daa832757 9b26faf775f3dfadc3849bf1dd67598a3682cb65b15b41790514a6372f2500c4 f1eb5988d78ed639fde5c52d503080efe3ac04328b0f45ac7b5b99b0d7c18723 39ecc548653f25995a8beae936457033e65fcafc0706a3bae776d44f103d4dd2 00755e1bc7d7eae4de0ab3c5dbb418b737d6df6184ec44d3a7a83f00f00ff5f2 a9aa0ffab55fe0ee96faf0bbf755020df025f814d27b562debecd553d9522c81 33671454997d95f544bdf9f185bde7d956daa183fae2753382c930eb899aa0ff 0e80a9cdfd3b8066f859fd800749075978391d0dc6c5b4c2d68ae6cb4e72246e 44dbde614dd827f1c718aef79f7aaf565304d1d3970a8c11b14a1dcfaa1b9895 b4483d71ca9af7236bc38e39cd7582f3e5cc5355582925b0a3ce8f18e304116c f5d56df7059220181fd702d01a78cc9b7c94771a66f220f44af231c623ab2a81 ed1ae136d3203f8d2d7b095ae72fefa93a68230163913488502ff147ddb2ead5 c6fbd7d9bb75d2cc48b01f283bace02f5a55c0695b702b845710832720803436 7b07ba59a5b8520cfc56dfe0f6270f4799d7a2f5c1264db20ae2c2c8bfce6266 33285900f6069389ca3036b98ac6a6f81cfae462c6637036c02f1d25b7c3d5f5 48ac61449220c9e2f24e573479e09f1efbe4bac766226d77b5208e227f9178db 3b23b8e23608a7d9d61585eeb0baccaf24608daa1910e772bcdefc33f4d66160 afeb428fcca751cb6517602fa57b2a882fd696764b1ad6c3c3dac00c01392582 64177d8e99b2bcfc842d0db99a4fe7181be9285ae4891f708857bf8c3e7e0830 730c42c67faaa1c4f604936229761e9cee82dabb295b9394ff0c83dc85b8c95b ca5a22d8632df735a216c71d51259911d46a2c988998242544cf6c4907dfbc5d 323ed52413256cb7cca4ba4a3439d486724f6722fe70eedfb3050e9a3be7dbd2 6a3989964b7e5ce1222f1f2271cd1d64765070e446e2e0a7ce5036261678554e a5fdcd5ed25536167c6cb8bd52a6c8563b3a7c603274b1ce68f83138695ca31e e2671ccaf0e30d5fa9180540fd5152707b369c91a2a58fd1001aa384786f0078 0e8dc3232dbddd9559cd1135861fb403dd3a8ba1ca6394bf5c112a4429d07546 c19969230b9604ade2e6487203d0df06df8f5e 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont %%BeginFont: CMSY9 %!PS-AdobeFont-1.1: CMSY9 1.0 %%CreationDate: 1991 Aug 15 07:22:27 % 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 (CMSY9) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle -14.035 def /isFixedPitch false def end readonly def /FontName /CMSY9 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 /minus put dup 1 /periodcentered put dup 2 /multiply put dup 3 /asteriskmath put dup 8 /circleplus put dup 18 /reflexsubset put dup 20 /lessequal put dup 21 /greaterequal put dup 33 /arrowright put dup 34 /arrowup put dup 35 /arrowdown put dup 50 /element put dup 54 /negationslash put dup 59 /emptyset put dup 63 /perpendicular put dup 72 /H put dup 91 /union put dup 92 /intersection put dup 94 /logicaland put dup 100 /ceilingleft put dup 101 /ceilingright put dup 102 /braceleft put dup 103 /braceright put dup 106 /bar put dup 112 /radical put dup 121 /dagger put dup 122 /daggerdbl put readonly def /FontBBox{-30 -958 1146 777}readonly def /UniqueXX 5000819 def currentdict end currentfile eexec 9b9c1569015f2c1d2bf560f4c0d52257bac8ced9b09a275ab231194ecf829352 05826f4e975dcecec72b2cf3a18899ccde1fd935d09d813b096cc6b83cdf4f23 b9a60db41f9976ac333263c908dcefcdbd4c8402ed00a36e7487634d089fd45a f4a38a56a4412c3b0baffaeb717bf0de9ffb7a8460bf475a6718b0c73c571145 d026957276530530a2fbefc6c8f67052788e6703bb5ee49533870bca1f113ad8 3750d597b842d8d96c423ba1273ddc63eb43f34fa90ea73a234af35fd9b24eb7 4f19626e9124df7acb92629cc87b2cf81c4a89b27447806db34393ddf0402958 e2daee0b4bf315f9aa0a2650d2e11ee289ffaec940d0af160fe7f29411c1c458 69d1ac3bcfe2ae4da72422549095f1fc9fec606289316f106e719a4ae2fd45ee 868fddf07a80e9a626bb43cdfdaa9dcd208b88fd99af20b27f9d6b5cda6a3fa8 8d5acfce8b5eebb38854378cecc3bfdac526514f1be9fb28ae628918ba942a3e 05b78c3aff808cf416a5ed01be280231b75a7aee0c66b0549713bef6b3cbc188 e625ba81b8c16450440df3e27d291d129a485fd7cc52af41a4fd09ffc8c87a0c 03ade91ba212cdb02f10b893e718f7f136c59619298fabaee6116781ec25f93b ce96c98bb484a180cdb8b8b3832555564f87c348729c347057781a80da98aaf9 d61e25545e9d4962069491763c669c309846de4f8e7a9ae25035d9eae5ff34cd ff757d89d295808acc692bf2523b30a5329a24133f03d2fffc58e2785f7e3358 ff9c59ee31fb55755b881a81539c5377e338c9f8cf2b7105ac8fddc8a5bb6e94 f81a94e56d334e12a89ce596184ef7e3cd18d3b274cbe320d90f5828574f8540 6f0dca3ae26bc8718d7f9e985c0f0a72868aefa48e9fac4b68cb5c45d8875c3c 7d5183762c17e12acb5cd71953ce0d58dce7d4ffa30fb83074987725831a9d27 01e5cd13bbafef1c1560b9b30102a6f3e7b5be651008a30c396a5706de7b33fa 51f76539876c35cf9a355bfe6d8613a712190c5165ea3cffff0f8b131117e659 5bc5fb927f8a5e27c24320360ec3e2f93c040cf2bd2c8b124adba3e1ab1cb156 d93afb48847999d49141ba975f58a352d303f048a0e1afa61fa60d99043a0a9a d2b2dd967bf9f1a3282a2999aa32f8b38d7a856bd96b128d14f4e0648c4a0a66 52af8beeacc1518b55f2b6a1e36be65eb2c6d5bec60a54a109ba8a6fc2b558cb 3cb39988412a2cb657017d3b25443730764954dfbb19d039c9f2146fcafc12e7 3bb56ebf84f3e1d2b68ee5312b7be3ebfb6b698d67b0b5fdfcc5ef2c7c6a3661 586e9a8abaab30e419c95e19a81fb0f0d4d325d29803a21399a3feb8bf61d340 c3c2f0876a58bacabba26f659817cd5d5ea00247c2436f8a85aee8e4cac66fc5 125f77c54b54a9a5b778e79a6df0536f6ab9bd59c1a4908c92ac13dbdba7f41b 640d81cf1cfdb0cb20a5596519450f3aad36be68a9a95160a2be6f4e3b916025 1263344e58b4fd84adde069981453f3f2e487e7594cd25db8b727628c5a22c14 b1dae2e4e1e3968e53a8a7e05422b2a193dd87b967e01f65ddfdef1514564607 9537141e27a19e666a2ad003d29e692c3bdf07262c3df694226ab6d7eb8b12c4 aea62c1ecb5523ae26466f235006cd6fea5b1661c41540f9e17402565e040447 6bcc99354f58f5520320f337f7d02dc2fd7ed6d4c05e9c9d8a27aff0575d8d5b 510423893ad978dcdb3156b30f00009916493077e743678fed076e5675ec79d0 80d7f045b555b655e67ea62d557178c413272ac81db0bc4ae4a69cb913c95a6e 404e7c4909406293834f26e85941d86c7d740237f951b3f61541bec4eb7e4409 c7f387b4468af78b9e9d899154c0210bf535f451aaa0b6c79154533ea0af5a65 c29499144ca0e8dd30aa75bdfb82652a12c6a1633906acea12a580f87b22ae11 27d229047b4f31bc75301ac8430310d7a1728d58ece8fdadf1d231f97c6d2941 22ddf93950f6067ba61da97bd42054b53f4f8f92cbe9a37170de0de85afbe544 36227a257c57fa6bb4b201a6571b51fc6d9276c2b362560aa965d4ebd2006d4d dc556500bfd0478f9e2e116deb5ab98ebed2747cfc8bb57352f0187e227bd795 3cbd3ea0f36c7a2cd316e2d03eedf6f639f78de4f3dcd7b72c61fbb72e24f396 3bd204a596b8409b6ec17f89807cbbe233441d5561eeedcd88df1614504a83f6 47eb59b858e5341d7bf631a3e42962f4e3f04b962ff77f79a820935947e1fa97 89333baa75c77c0d13c99888e990fe804b94c60079785a23a36d15eaf3b9d2bd e3447a3ca5feb46a48fc556476fe1884d9a573c468af82d9e9b4f284634e59a5 87166b51da33322edfe2af0d3a27729d2ab6a163aad871dfc4a25c6f573e3b93 ceb9ea7472b293e0c890001aa1e6ede30fb88e50a8899dbd377d99f6f855155a 2d0ed122af2cc442e7440fcc36f68e01db8e0d83a51e6c8ea03bbd5180e30793 0303489853e20b0a1873e96f5a784fb345cedbcb6f1ab93934898e2ae591291d 4633350e1d813401288f041ed4a132678b6c22d358c9101d55e5b80f8522eec1 0285f86e29c12376e6507fbae8fe55844b2ab52f990e0af14548cea21df21a26 1060553ba48c08037dc682c456cded0900418ca06946e32bb8dd6f57da5cacb7 ae4755c628f4467904a76c251b15cc4990a109a0e890ea0064ef939f8e13725a 8c95a42c32b0ca64f9f41d1305e9d68c9025819453ab7bcba07caca772a5bff6 bde20eab386e8215ecb170b07160e9c11a5239e312ac4ce317ca82df06134321 f7e306a1028c871f779a45611636b440d20ab22e4385cc34f53964954597c109 8682b1859004e3f5338e686c3feeee1e47346b7978a92befc946cb46241945c5 dcb5ca97358972b1e412f568d10edb45aa9223865ecf12e6249f06850200c6d4 a5a9967261ad795d1d637a747e57735f31e243af698d014afa80dd6e172cc04a 2f53f2fd41461749801bbeaa10fbbc3c7497d4a29d088f040dd0be47812c413b 17b43cfdf3ef4e8d02c5f40b3953815bf7c9390111c858282a82e41478d5266d bdf4c4f2ff7e25f7135df8a86e13528dc333a64138e5f8d7a5f38a2b164431e7 f48925456834c71ad14ae049df7a73db0d3a01449d563515b7779dbdf5c6fc0c 082bfdd69e2ec42feccc8a5dfd037fb1b22cb2769197fe8710cc6c459ad45218 0009af6c025aadbfc522de8df7fefea518b219bdf402b306cd2c22cd05dbb6cb 07df4fa68345b37802636d5be1d118576b6652fc31ff8c3367518ec4ceced953 fc1425afcfeb4c81c061ea005b963d313a35b97f8568ff07aab24660cc2f119e 68899a2bd76ffce098bc38268df081451d59b34cc652cb8756b96267c3228bfa e4057525931026d1ff9664bba05c2609b4c3efd35ac8acb30edd72842eb4144d 1a67575f5482f321cef876da200133702f397f4a17e561648e3fb51140714627 c8709e8fb4f3e6d5d9740adb06ca7d16a30a4499857133e6f00fb83f5768b2d5 22a43da461bf17ed76b63e52dc03e7445fed3fab54da5a3412e57936375a5ab7 1f56fabcba1e31ca06a10c3654065bd5b1a4ef709b8c7159465ffbf565aae30e 8501756d68d5ef3dcebf8f75d0f221d76a59f9fbd56bde641f92111519eaa3c6 a016444488e4cc9a43c88756412a96a9b62ba06ff6f762516366276ff6fad3be 9368627dbfb1084de6f4c9046f1b1a85cb7c6bf00d6ebd12e882afbf92ea38ae 773412983d64c5aa74d4516abd757518e384840904080caece898a7d8f9ee085 499affbb04533d7947840a6f1a6f9665694153bb5dcfe4a617ecbc1374632ea2 10c4c2fbe3efb22de0f80afc0332adaa7e4e01dc949296a6a3b4ce01876a11d4 8050e6a2363b37e74601a5eb3ad04c6fc99ad1e5f51df1e080b5bda9841142ae c07e591c6cef34698894349677b909da0ee60e8350d92e29768c52021cbf31e7 a795d105edb7e381b64bf94090b862977a5ca3f0586571ecfea90e6c61458cb1 19cbaf1757a6b0d423841ab5d4e35e74e193f08c5c0911567805f7a1390e772c e1f6676b944be6f301006ecc203b5fedb469dd9c230567eb30b6fb9c59cdfcd7 057c8ff8aba5011fa065c00e747c5affa451b965f314b971eb2cb1155ca83f57 24927a79730735e56074006a68429554b47acb7683bea675747500cf084b8529 c0c6ea73e3d2ffc97a2907e00f94da27bac94a53cbcaa4961d73b1cb20b098dd 9a632bf066818770463b4ab5cc65b88715f0cfd114ed11ad8c6a94be6e9ecef1 7fe938b69c9f43c9563ef98284f82ff6f6e9173f57be9176f6447107b44c14b7 e6289b995fd2cfb39f17c7eb98e086be1c7b98544e748af223dac43f8937976f b0d8e5fabac6722073a44ecc20648e482f938084c9877598d3d58447d1e641a2 838648c376e434b60033355e231ceb639ded26a7554d77ead912eece0ea65615 8ce5549eee8be54e23435d83463ddc28c7bc8ec9991e19ab0c0e46895118db68 8e4614b8a4ce03f0675518a79a1bb1eb923d7abf9d6ab1fca1c5d2d5b67e7e52 5a74aa3e1754a8f22c32a3e3cad277266a39ead9acb1c3ffccfadf571498ea87 f5ff1050f2d51db2f987ba106f75b982fbc73ecbc0ddcba55d5cd8ca4bb012e0 4f6807134e75e5fc397b9e31c6921eefc72cab2eb828b6e842121f522af77edf 40311ba05a1924bc281516b74347509746c8abd645c0621af0d2256a42394721 73ef09c1227c8f980225f601f3b9efe289bfbd5ed79069ea13f1933e8264050e 4f3e9a31a15e85cae87f734b9029c734969f7329b55e1dc9de84c4a0db8c5557 5eb617af6f4563bb66c2934ac1a0ff82eda88292760b5085777237d414bcd190 4069f2f363ba2b7427be35491fe9153fa01d595f1bce968cb489ba4b507187c0 8e96d5aa0a23f8f0ec75d03e9b027f609949edf07e8bb112cef01c30200288ad 49e087b802f8cc7fd0ab06cb70838184b08711d1b0f60b00271ac1a869a4b9fa 658c675e4ba31119e2bf235b21be994fef450c375ec8c0c50045935dd24b3fc7 e45fc577454aede639582126ba20e145b01b9ed37dfe6565ac1be53c68d6c87f 86a1b6b2d805b9840c0d41373beae1f9d77d4ea923c90e31e6272b97151d4de6 cd460e94b703e3716f8568eb4b5b2cb27b86aaacd3a4d00a9d4737b019024e86 a8eb4410fd9ff213fa0df3054caee231747816dc723bda797373638bd8b61ca0 3d133e5e15e5558cceb5582c08fb0714e9aa50a011d796ad6793f99a802bbe0e b20a6a88809074d6678ed9ddbbc5317704a65e15d9c5acf76564c4f8ac4beddf fd7d635e933b98f603ab05bfbb8c02600da34c98ec55c0b21f45f7e42b0dfe50 1ad301418ca618adb5670e5476bb1c69ec1b817c8d43291553a17b17c2423a47 468be5aec0a0616e46b1cdb15529d4d0dcc2bf2a7fdbcaaa1e04ddfa56c8f3b7 45bf3671f800f9a8e0e6b1c82ed93e5e1142a5c0e58abda8670bf27cf15a91c8 2d7fd1ffae0b9e6a1905c22b0396ef8aa3a05b2945ab50db04ac749ace7ff94f fa152d71998debaddaaed1f55cc2445c2688667d6eef35a38a9cdaebf76d72df fb49d9edff531b1d44ff7ce613df4499f70b0c0f6697b433058a9d8f24bf262f 33af81d03c233a2095fb6c3047f6b0e893ce67640d17dd20d52f108602e2463c 58e2aa5168c48ecf0ab000f634427709d843c62114bb99ff2504b52547184b63 3907827248a9db280267640e2914f2af59e3660632fba40a3ad304f885fea4b2 4d0d01bd09342d94330c1fdd5c74bf911a44f10e5a1e0354e92249b7d3b0e9f4 ff0a1d440964f0b258515d1329a1928b1233b57ca7b236fed728825877726fbb a8e1995a17ac094e6261723c37a63616906b813e3b87ddda9f6df989356d5a72 ec86f36af1fa6239761d7032dcdc1d0dbb84e28ed3141c35271495df5f768504 a44e8408d8745fe63479c99e7db3f30923dd45d56c9a1a79b2a562e850244e5c 9685f3596b292bd7e51f3c10e27142e03ac637a1ecba43c18a69114394c507f8 902ce965459ad50c0a9fda9a2558c9fa10b94f0edfbf7a4aa297e93971a9a6eb 86d24d7da6dbbdbe2ee3e2a47296f1e46686a1f252db75147ae09f674fe2fa01 79cb3eafc22ba6ef7f2f5fd4fc906c5b930a46c0dc1832cbf5e77fef821954eb 3d061f057beaf921bcb794b3d82f94e2d613b1010f1d77725241a7ac7d0853fd eaeb44271c4d2bea01a4323cdc67c40bd7ee2c635b4012345f096c9af9b9e95a 83e066feba52dd0eabdbbf105f512ceabb881aa86872d0ba14fdffffb0d0d347 7d7b94524f1bf7bee8d9499b3ccea394dc1bbdd9f3fab3916774c73b8e0e70e5 a905eecf928cdb1a16b08b26326646d03b58dadc3caba3e882ea0c0a69aff60c d411968277151dd6cacaec57b330463e05da10b09e55cba350951326c6108f46 ec9b3dcee6cf7a36d1fcd9f43d88391775894ac341093d52ad9d1439512ca409 007d5b76ae8e5a3b8516efc92f751f55347dae42d361a7a72fc1e1c97e33b4cb 351d59414669d0d26ef87c72b79d02ee6009e02ca3af8567d5 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont TeXDict begin 39158280 55380996 1000 600 600 (stoc2001.dvi) @start /Fa 134[37 3[42 30 1[28 1[42 41 42 4[19 3[38 42 17[53 11[46 2[53 1[55 65[{}14 74.7198 /CMSSBX10 rf /Fb 200[28 28 28 28 28 28 28 28 48[{}8 41.511 /CMR5 rf /Fc 138[27 19 1[18 1[27 2[42 13 2[13 27 26 16 24 18[34 3[37 1[29 1[25 74[{}15 49.8132 /CMSS8 rf /Fd 134[47 47 64 1[49 34 35 36 47 49 44 49 74 25 2[25 49 44 27 41 49 39 49 43 12[62 3[60 6[33 2[56 58 7[69 2[25 5[44 44 44 44 2[25 1[25 44[{}35 74.7198 /CMBX9 rf /Fe 206[35 35 48[{}2 66.4176 /CMR8 rf /Ff 187[58 1[53 66[{}2 66.4176 /CMMI8 rf /Fg 198[33 33 33 33 33 33 33 33 33 33 48[{}10 58.1154 /CMR7 rf /Fh 172[36 83[{}1 41.511 /CMMI5 rf /Fi 134[46 2[46 1[44 34 45 2[47 46 56 38 2[23 46 1[40 42 47 44 43 46 3[24 1[24 3[83 2[59 3[55 3[51 1[42 3[53 55 62 59 58 11[41 1[41 41 41 41 2[24 4[33 33 40[{}37 74.7198 /CMCSC10 rf /Fj 156[29 29 49[18 47[48{}4 49.8132 /CMSY6 rf /Fk 139[24 4[30 2[18 3[34 30 19 27 21[47 23[30 30 1[30 1[30 30 30 4[47 1[24 24 29[43 10[{}18 49.8132 /CMR6 rf %DVIPSBitmapFont: Fl cmex9 9 3 /Fl 3 113 df<1430147014E0EB01C0EB03801307EB0F00131E133E133C5B13F85B1201 5B1203A2485AA2120F5BA2121F90C7FCA25AA2123EA2127EA5127C12FCB3127C127EA512 3EA2123FA27EA27F120FA27F1207A26C7EA212017F12007F13787F133E131E7FEB078013 03EB01C0EB00E0147014301459758223>0 D<12C07E12707E7E121E7E6C7E7F12036C7E 7F12007F1378137CA27FA2133F7FA21480130FA214C0A21307A214E0A5130314F0B314E0 1307A514C0A2130FA21480A2131F1400A25B133EA25BA2137813F85B12015B485A12075B 48C7FC121E121C5A5A5A5A14597D8223>I<1A0C1A1E1A3EA21A7CA21AF8A2F101F0A2F1 03E0A2F107C0A2F10F80A2F11F00A2193EA261A261A24E5AA24E5AA24E5AA24E5AA24EC7 FCA2183EA260A260A24D5AA24D5AA24D5AA201305E0170150F13F800034CC8FC487E000F 163EEA3CFE00705E12E0D8407F5D12006D6C495AA26D6C495AA24C5A6D7E4C5A6D7E4CC9 FC6D7E163EA26D6C5BA26D6C5BA291387F01F0A24B5AEC3F83ED87C0EC1FC7EDCF80EC0F EF03FFCAFCA26E5AA26E5AA25D14015D6E5A475B78834D>112 D E %EndDVIPSBitmapFont /Fm 133[31 37 35 51 35 41 25 31 32 35 39 39 43 63 20 35 1[24 39 35 24 35 39 35 35 39 11[57 55 43 56 1[52 59 57 69 48 1[40 30 57 59 50 52 58 55 1[57 6[24 39 3[39 39 39 39 39 39 1[24 27 24 2[31 31 27[43 12[{}57 74.7198 /CMTI9 rf /Fn 134[35 3[40 28 1[26 1[40 38 40 61 18 2[18 40 38 23 34 40 1[40 15[50 1[49 1[54 67 42 1[36 3[44 2[49 1[51 65[{}25 74.7198 /CMSS9 rf /Fo 82[22 51[33 3[33 18 26 22 2[33 33 1[18 2[18 3[29 1[29 24[26 1[48 48 3[44 10[33 1[33 3[33 33 33 1[17 1[17 44[{TeXBase1Encoding ReEncodeFont}23 66.4176 /Times-Roman rf /Fp 171[37 33 3[48 11[44 17[33 33 3[17 4[22 39[{TeXBase1Encoding ReEncodeFont}8 66.4176 /Times-Italic rf /Fq 133[30 2[44 31 37 6[38 3[25 22 4[32 28 27 34 26 9[36 2[38 4[48 1[42 2[27 11[32 2[19 23[29 8[36 10[28 14[{}22 49.8132 /CMMI6 rf /Fr 133[36 38 44 55 37 44 28 36 2[39 1[46 68 1[40 31 26 44 1[37 1[40 33 33 41 32 9[45 52 45 47 58 61 49 1[61 74 2[42 34 64 3[63 1[58 58 2[60 38 60 21 21 23[36 5[34 2[44 10[34 14[{}45 74.7198 /CMMI9 rf /Fs 132[38 34 41 41 55 41 43 30 30 30 41 43 38 43 64 21 41 23 21 43 38 23 34 43 34 43 38 3[21 38 21 1[58 1[79 58 58 55 43 57 60 52 60 58 70 48 60 39 28 58 60 50 52 59 55 54 58 1[36 1[60 1[21 21 38 38 38 38 38 38 38 38 38 38 38 21 26 21 60 1[30 30 21 4[38 14[38 4[64 1[43 9[60 2[{}81 74.7198 /CMR9 rf /Ft 133[44 1[50 72 1[55 33 39 44 1[55 50 55 83 28 55 1[28 1[50 1[44 55 44 1[50 8[72 2[72 66 55 72 1[61 78 72 94 66 2[39 1[78 61 66 72 72 66 72 10[50 50 50 50 50 50 2[25 46[{TeXBase1Encoding ReEncodeFont}44 99.6264 /Times-Bold rf /Fu 134[42 2[42 46 23 42 28 1[46 46 46 69 3[18 46 46 23 46 1[42 1[46 11[60 51 55 60 8[23 4[60 60 55 55 18[23 46[{TeXBase1Encoding ReEncodeFont}27 83.022 /Helvetica rf /Fv 133[34 34 8[64 5[21 2[38 38 34 34 5[51 1[51 51 18[65 8[60 3[38 4[0 3[51 14[38 38 77 11[60 60 1[60 9[60 4[38 60 21 60{}27 74.7198 /CMSY9 rf /Fw 7[61 74[33 55[55 28 50 33 1[55 55 55 1[22 50 1[22 55 55 1[55 55 50 55 55 12[61 66 72 10[78 4[66 66 101 17[28 46[{ TeXBase1Encoding ReEncodeFont}27 99.6264 /Helvetica rf /Fx 139[50 83 58 1[91 91 91 133 42 2[42 1[91 1[83 1[83 1[83 13[100 108 2[116 10[108 68[{TeXBase1Encoding ReEncodeFont}17 149.44 /Helvetica-Bold rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%PaperSize: A4 %%EndSetup %%Page: 1 1 1 0 bop 157 108 a Fx(Optimal)41 b(Static)f(Rang)q(e)j(Repor)s(ting)f (in)g(One)g(Dimension)333 528 y Fw(Stephen)30 b(Alstr)q(up)1042 453 y Fv(\003)363 693 y Fu(The)23 b(IT)g(Univ)n(ersity)f(of)484 780 y(Copenhagen)361 913 y Fw(stephen@it\255c.dk)1442 528 y(Ger)t(th)28 b(St\370lting)h(Brodal)2375 453 y Fv(y)1785 684 y Fu(BRICS)2038 610 y Fv(z)1442 772 y Fu(Dept.)24 b(of)f(Computer)h(Science)1570 859 y(Univ)n(ersity)f(of)g(Aarhus)1603 991 y Fw(ger)t(th@br)q(ics)o(.dk)2858 528 y(Theis)28 b(Rauhe)3421 453 y Fv(\003)2800 693 y Fu(The)c(IT)e(Univ)n(ersity)h(of) 2922 780 y(Copenhagen)2871 913 y Fw(theis@it\255c.dk)-152 1292 y Ft(ABSTRA)-5 b(CT)-152 1383 y Fs(W)f(e)35 b(consider)g(static)h (one)f(dimensional)g(range)h(searc)n(hing)f(prob-)-152 1470 y(lems.)g(These)24 b(problems)g(are)g(to)g(build)f(static)h(data)g (structures)f(for)-152 1557 y(an)29 b(in)n(teger)g(set)h Fr(S)g Fv(\022)d Fr(U)8 b Fs(,)30 b(where)f Fr(U)35 b Fs(=)27 b Fv(f)p Fs(0)p Fr(;)13 b Fs(1)p Fr(;)h(:)f(:)g(:)g(;)h Fs(2)1371 1525 y Fq(w)1440 1557 y Fv(\000)19 b Fs(1)p Fv(g)p Fs(,)31 b(whic)n(h)-152 1644 y(supp)r(ort)g(v)l(arious)g (queries)h(for)f(in)n(teger)h(in)n(terv)l(als)f(of)h Fr(U)8 b Fs(.)51 b(F)-6 b(or)31 b(the)-152 1732 y(query)21 b(of)h(rep)r(orting)h(all)f(in)n(tegers)h(in)e Fr(S)26 b Fs(con)n(tained)c(within)g(a)g(query)-152 1819 y(in)n(terv)l(al,)35 b(w)n(e)e(presen)n(t)f(an)h(optimal)h(data)f(structure)f(with)h(linear) -152 1906 y(space)23 b(cost)g(and)f(with)g(query)f(time)i(linear)g(in)f (the)g(n)n(um)n(b)r(er)f(of)i(in)n(te-)-152 1993 y(gers)e(rep)r(orted.) 33 b(This)21 b(result)g(holds)f(in)g(the)g(unit)g(cost)h(RAM)e(mo)r (del)-152 2080 y(with)32 b(w)n(ord)f(size)h Fr(w)h Fs(and)e(a)h (standard)f(instruction)g(set.)52 b(W)-6 b(e)30 b(also)-152 2167 y(presen)n(t)25 b(a)g(linear)h(space)f(data)g(structure)f(for)i (appro)n(ximate)f(range)-152 2255 y(coun)n(ting.)61 b(A)34 b(range)h(coun)n(ting)g(query)e(for)i(an)g(in)n(terv)l(al)f(returns) -152 2342 y(the)d(n)n(um)n(b)r(er)f(of)i(in)n(tegers)g(in)g Fr(S)j Fs(con)n(tained)c(within)h(the)f(in)n(terv)l(al.)-152 2429 y(F)-6 b(or)29 b(an)n(y)g(constan)n(t)g Fr(")d(>)h Fs(0,)j(our)f(range)h(coun)n(ting)f(data)g(structure)-152 2516 y(returns)35 b(in)g(constan)n(t)h(time)f(an)g(appro)n(ximate)h (answ)n(er)g(whic)n(h)f(is)-152 2603 y(within)26 b(a)g(factor)h(of)g (at)e(most)i(1)17 b(+)g Fr(")25 b Fs(of)i(the)e(correct)h(answ)n(er.) -152 2803 y Ft(1.)100 b(INTR)m(ODUCTION)-152 2894 y Fs(Let)35 b Fr(S)k Fs(b)r(e)34 b(a)h(subset)g(of)g(the)f(univ)n(erse)g Fr(U)45 b Fs(=)36 b Fv(f)p Fs(0)p Fr(;)14 b Fs(1)p Fr(;)f(:)g(:)h(:)f (;)g Fs(2)1608 2862 y Fq(w)1681 2894 y Fv(\000)23 b Fs(1)p Fv(g)-152 2981 y Fs(for)32 b(some)g(parameter)f Fr(w)r Fs(.)51 b(W)-6 b(e)30 b(consider)i(static)g(data)f(structures)-152 3068 y(for)25 b(storing)g(the)e(set)h Fr(S)k Fs(suc)n(h)23 b(that)h(v)l(arious)g(t)n(yp)r(es)f(of)i(range)f(searc)n(h)-152 3155 y(queries)37 b(can)g(b)r(e)f(answ)n(ered)h(for)g Fr(S)t Fs(.)68 b(Our)35 b(b)r(ounds)h(are)h(v)l(alid)g(in)-152 3243 y(the)29 b(standard)g(unit)f(cost)i(RAM)e(with)h(w)n(ord)g(size)h Fr(w)h Fs(and)e(a)g(stan-)-152 3330 y(dard)38 b(instruction)f(set.)71 b(W)-6 b(e)37 b(presen)n(t)g(an)h(optimal)g(data)g(struc-)-152 3417 y(ture)28 b(for)h(the)f(fundamen)n(tal)g(problem)g(of)h(rep)r (orting)g(all)g(elemen)n(ts)-152 3504 y(from)20 b Fr(S)k Fs(con)n(tained)19 b(within)g(a)h(giv)n(en)f(query)f(in)n(terv)l(al.)32 b(W)-6 b(e)19 b(also)h(pro-)-152 3591 y(vide)31 b(a)h(data)f(structure) g(that)g(supp)r(orts)g(an)h(appro)n(ximate)f(range)-152 3678 y(coun)n(ting)24 b(query)f(and)g(sho)n(w)i(ho)n(w)f(this)g(can)g (b)r(e)g(applied)g(for)g(m)n(ulti-)-152 3766 y(dimensional)33 b(orthogonal)h(range)e(searc)n(hing.)55 b(In)31 b(particular,)j(w)n(e) -152 3853 y(pro)n(vide)26 b(new)f(results)i(for)f(the)f(follo)n(wing)k (query)24 b(op)r(erations.)p -152 3986 797 4 v -152 4042 a Fv(\003)-113 4075 y Fs(P)n(artially)32 b(supp)r(orted)f(b)n(y)f(a)i (gran)n(t)g(from)g(The)f(Danish)h(Natural)-152 4150 y(Science)26 b(Researc)n(h)g(Council,)h(gran)n(t)f(no.)60 b(51-00-0390.)-152 4225 y Fv(y)-118 4258 y Fs(P)n(artially)19 b(supp)r(orted)e(b)n(y)g (the)g(IST)h(Programme)h(of)f(the)f(EU)h(under)-152 4345 y(con)n(tract)26 b(n)n(um)n(b)r(er)f(IST-1999-14186)j(\(ALCOM-FT\))-152 4424 y Fv(z)-118 4457 y Fs(Basic)21 b(Researc)n(h)e(in)g(Computer)g (Science,)h(www.brics.dk,)j(funded)-152 4532 y(b)n(y)i(the)g(Danish)h (National)g(Researc)n(h)g(F)-6 b(oundation.)-152 5321 y Fp(ST)o(OC'01,)17 b Fo(July)h(6\2558,)e(2001,)h(Hersonissos,)h (Crete,)g(Greece.)2077 1292 y Fn(FindAny)r Fs(\()p Fr(a;)12 b(b)p Fs(\))p Fr(;)34 b(a;)13 b(b)22 b Fv(2)f Fr(U)8 b Fs(:)34 b(Rep)r(ort)24 b(an)n(y)g(elemen)n(t)g(in)h Fr(S)18 b Fv(\\)d Fs([)p Fr(a;)e(b)p Fs(])24 b(or)2227 1379 y Fv(?)h Fs(if)i(there)e(is)h(no)g(suc)n(h)f(elemen)n(t.)2077 1529 y Fn(Rep)r(o)n(rt)p Fs(\()p Fr(a;)13 b(b)p Fs(\))p Fr(;)34 b(a;)13 b(b)21 b Fv(2)h Fr(U)8 b Fs(:)35 b(Rep)r(ort)25 b(all)i(elemen)n(ts)f(in)f Fr(S)d Fv(\\)17 b Fs([)p Fr(a;)c(b)p Fs(].)2077 1680 y Fn(Count)2272 1688 y Fq(")2305 1680 y Fs(\()p Fr(a;)g(b)p Fs(\))p Fr(;)34 b(a;)13 b(b)21 b Fv(2)h Fr(U;)13 b(")21 b Fv(\025)g Fs(0:)33 b(Return)21 b(an)h(in)n(teger)h Fr(k)h Fs(suc)n(h)e(that)2227 1767 y Fv(j)p Fr(S)f Fv(\\)d Fs([)p Fr(a;)13 b(b)p Fs(])p Fv(j)22 b(\024)f Fr(k)i Fv(\024)e Fs(\(1)d(+)f Fr(")p Fs(\))p Fv(j)p Fr(S)k Fv(\\)c Fs([)p Fr(a;)c(b)p Fs(])p Fv(j)p Fs(.)2040 2020 y(W)-6 b(e)23 b(let)g Fr(n)h Fs(denote)f(the)f (size)i(of)g Fr(S)k Fs(and)22 b(let)i Fr(u)d Fs(=)g(2)3464 1989 y Fq(w)3538 2020 y Fs(denote)i(the)g(size)2040 2107 y(of)35 b(univ)n(erse)e Fr(U)8 b Fs(.)59 b(Our)33 b(main)h(result)g(is) g(a)g(static)h(data)f(structure)2040 2195 y(with)h(space)f(cost)h(O\()p Fr(n)p Fs(\))f(that)g(supp)r(orts)g(the)g(query)f Fn(FindAny)j Fs(in)2040 2282 y(constan)n(t)i(time.)73 b(As)37 b(a)i(corollary)-6 b(,)43 b(the)37 b(data)i(structure)f(allo)n(ws)2040 2369 y Fn(Rep)r(o)n(rt)28 b Fs(in)g(time)h(O\()p Fr(k)r Fs(\),)g(where)f Fr(k)j Fs(is)e(the)e(n)n(um)n(b)r(er)h(of)h(elemen)n(ts)f(to)2040 2456 y(b)r(e)e(rep)r(orted.)2040 2631 y(F)-6 b(urthermore,)23 b(w)n(e)f(giv)n(e)g(linear)h(space)f(structures)g(for)h(the)e(appro)n (x-)2040 2718 y(imate)j(range)h(coun)n(ting)e(problem.)34 b(W)-6 b(e)24 b(presen)n(t)f(a)h(data)g(structure)2040 2805 y(that)f(uses)h(space)g(O\()p Fr(n)p Fs(\))f(and)g(supp)r(orts)g Fn(Count)3411 2813 y Fq(")3467 2805 y Fs(in)h(constan)n(t)f(time,)2040 2892 y(for)k(an)n(y)e(constan)n(t)g Fr(")c(>)g Fs(0.)2040 3066 y(The)i(prepro)r(cessing)g(time)g(for)g(the)f(men)n(tioned)g(data) h(structures)f(is)2040 3154 y(exp)r(ected)j(time)h(O\()p Fr(n)2671 3097 y Fv(p)p 2735 3097 157 4 v 57 x Fs(log)15 b Fr(u)p Fs(\).)2040 3356 y Ft(1.1)99 b(Related)26 b(w)o(ork)2040 3448 y Fs(E\016cien)n(t)20 b(static)g(data)g(structures)g(for)g(range)g (searc)n(hing)h(ha)n(v)n(e)e(b)r(een)2040 3535 y(studied)30 b(in)n(tensiv)n(ely)g(o)n(v)n(er)h(the)f(past)h(30)g(y)n(ears,)i(for)e (surv)n(eys)f(and)2040 3622 y(b)r(o)r(oks)f(see)g(e.g.)g([1,)h(18,)g (20].)43 b(In)27 b(one)i(dimension)f(there)g(has)h(b)r(een)2040 3709 y(m)n(uc)n(h)21 b(fo)r(cus)i(on)g(the)e(follo)n(wing)k(t)n(w)n(o)e (fundamen)n(tal)f(problems:)33 b(the)2040 3796 y Fm(memb)l(ership)39 b(pr)l(oblem)44 b Fs(and)36 b(the)h Fm(pr)l(e)l(de)l(c)l(essor)42 b(pr)l(oblem)p Fs(.)69 b(These)2040 3884 y(problems)26 b(address)g(the)g(follo)n(wing)i(queries)e(resp)r(ectiv)n(ely:)2077 4119 y Fn(Memb)r(er)r Fs(\()p Fr(a)p Fs(\))p Fr(;)34 b(a)21 b Fv(2)g Fr(U)8 b Fs(:)35 b(Return)25 b(y)n(es)g(if)h(and)g (only)f(if)i Fr(a)21 b Fv(2)g Fr(S)t Fs(.)2077 4270 y Fn(Pred)q Fs(\()p Fr(a)p Fs(\))p Fr(;)33 b(a)22 b Fv(2)f Fr(U)8 b Fs(:)34 b(Return)23 b(the)h(predecessor)h(of)f Fr(a)p Fs(,)h(i.e.,)h(max\()p Fr(S)17 b Fv(\\)2227 4357 y Fs([0)p Fr(;)d(a)p Fs(]\))25 b(or)h Fv(?)g Fs(if)g(there)f(are)i(no)e (suc)n(h)h(elemen)n(t.)2040 4593 y(The)34 b Fn(Memb)r(er)i Fs(query)d(is)h(easily)h(solv)n(ed)g(b)n(y)e Fn(FindAny)q Fs(,)j Fn(Rep)r(o)n(rt)e Fs(or)2040 4680 y Fn(Count)2235 4688 y Fq(")2298 4680 y Fs(b)n(y)29 b(restricting)i(the)f(query)e(to)j (unit)e(size.)49 b(On)29 b(the)h(other)2040 4767 y(hand,)j(it)g(is)f (straigh)n(tforw)n(ard)i(to)f(compute)e(these)i(three)e(queries)2040 4855 y(b)n(y)21 b(at)i(most)g(t)n(w)n(o)f(predecessor)h(queries)g(giv)n (en)f(an)g(additional)h(sort-)2040 4942 y(ed)30 b(\(relativ)n(e)g(to)h Fr(U)8 b Fs(\))30 b(list)g(of)h(the)f(p)r(oin)n(ts)g Fr(S)t Fs(,)i(where)e(eac)n(h)g(p)r(oin)n(t)g(is)2040 5029 y(asso)r(ciated)e(its)e(list)g(rank.)2040 5203 y(An)h(information) i(theoretic)f(lo)n(w)n(er)g(b)r(ound)f(implies)h(that)f(an)n(y)g(da-) 2040 5290 y(ta)h(structure)e(supp)r(orting)i(an)n(y)e(of)i(the)f(ab)r (o)n(v)n(e)g(queries,)h(including)2040 5378 y Fn(Memb)r(er)r Fs(,)h(requires)f(at)h(least)g(log)3038 5317 y Fl(\000)3074 5344 y Fq(u)3073 5403 y(n)3111 5317 y Fl(\001)3175 5378 y Fs(bits,)g(i.e.,)h(has)f(linear)g(space)p eop %%Page: 2 2 2 1 bop -152 -69 a Fs(cost)22 b(in)f(terms)g(of)g Fr(w)j Fs(=)d(log)15 b Fr(u)21 b Fs(bit)g(w)n(ords)g(for)h Fr(n)f Fv(\024)g Fr(u)1350 -100 y Fk(1)p Fj(\000)p Fk(\012\(1\))1555 -69 y Fs(.)33 b(In)20 b([12],)-152 19 y(F)-6 b(redman,)34 b(Koml\023)-38 b(os)34 b(and)e(Szemeredi)h(giv)n(e)f(an)h(optimal)g (solution)-152 106 y(for)24 b(the)f(static)h(mem)n(b)r(ership)e (problem,)i(whic)n(h)f(supp)r(orts)g Fn(Memb)r(er)-152 193 y Fs(in)i(constan)n(t)f(time)h(and)f(with)g(space)h(cost)g(O\()p Fr(n)p Fs(\).)34 b(In)24 b(con)n(trast,)h(the)-152 280 y(predecessor)j(problem)f(do)r(es)h(not)f(p)r(ermit)g(a)g(data)g (structure)g(with)-152 367 y(constan)n(t)21 b(query)e(time)h(for)h(a)f (space)h(cost)g(b)r(ounded)e(b)n(y)g Fr(n)1508 335 y Fk(O\(1\))1637 367 y Fs(.)33 b(This)-152 454 y(w)n(as)c(\014rst)f(pro)n (v)n(ed)f(b)n(y)f(Ajtai)j([3],)h(and)d(later)i(Beame)f(and)g(Fic)n(h)g ([8])-152 542 y(impro)n(v)n(ed)21 b(Ajtai's)i(lo)n(w)n(er)f(b)r(ound)e (and)h(in)h(addition)f(ga)n(v)n(e)h(a)f(matc)n(h-)-152 629 y(ing)26 b(upp)r(er)f(b)r(ound)g(of)46 770 y(O\(min)o(\(log)15 b(log)g Fr(u=)f Fs(log)h(log)g(log)g Fr(u;)1027 703 y Fl(p)p 1104 703 480 4 v 67 x Fs(log)g Fr(n=)e Fs(log)i(log)g Fr(n)q Fs(\)\))-152 902 y(on)29 b(the)g(query)f(time)i(for)g(space)f (cost)h(O\()p Fr(n)1117 871 y Fk(1+)p Fq(\016)1228 902 y Fs(\))f(for)h(an)n(y)f(constan)n(t)-152 990 y Fr(\016)c(>)c Fs(0.)34 b(Beam)27 b(and)e(Fic)n(h's)i(lo)n(w)n(er)f(b)r(ound)f(holds)h (for)g Fm(exact)35 b Fs(coun)n(t-)-152 1077 y(ing)26 b(queries,)g(i.e.,)h Fn(Count)596 1085 y Fq(")654 1077 y Fs(where)f Fr(")21 b Fs(=)g(0.)35 b(Our)25 b(result)h(sho)n(ws)g (that)-152 1164 y(it)j(is)g(p)r(ossible)h(to)f(circum)n(v)n(en)n(t)f (this)h(lo)n(w)n(er)g(b)r(ound)f(b)n(y)g(allo)n(wing)i(a)-152 1251 y(slac)n(k)c(in)g(the)f(precision)i(of)f(the)g(result)g(of)g(the)f (queries.)-152 1425 y(F)-6 b(or)23 b(data)h(structures)f(with)g Fm(line)l(ar)31 b Fs(space)23 b(cost,)i(Willard)f([24])g(pro-)-152 1513 y(vides)e(a)g(data)g(structure)f(with)h(time)g(O\(log)15 b(log)g Fr(u)p Fs(\))21 b(for)i(predecessor)-152 1600 y(queries.)55 b(Andersson)32 b(and)h(Thorup)f([7])h(sho)n(w)g(ho)n(w)g (to)g(obtain)f(a)-152 1687 y(dynamic)37 b(predecessor)h(query)e(with)i (b)r(ounds)e(O\(min\(log)14 b(log)h Fr(n)26 b Fv(\001)-152 1784 y Fs(log)15 b(log)g Fr(u=)f Fs(log)h(log)g(log)g Fr(u;)582 1720 y Fl(p)p 659 1720 V 64 x Fs(log)g Fr(n=)e Fs(log)i(log)g Fr(n)q Fs(\)\).)67 b(F)-6 b(or)37 b(linear)h(space)-152 1871 y(cost,)29 b(these)f(b)r(ounds)f(w)n(ere)h(previously)g(also)h (the)e(b)r(est)h(kno)n(wn)f(for)-152 1959 y(the)19 b(queries)g Fn(FindAny)r Fs(,)h Fn(Rep)r(o)n(rt)f Fs(and)g Fn(Count)1110 1967 y Fq(")1143 1959 y Fs(.)33 b(Ho)n(w)n(ev)n(er,)20 b(for)g(sup)r(er-)-152 2046 y(linear)28 b(space)f(cost,)g(Miltersen)h Fm(et)h(al.)d Fs([19])i(pro)n(vide)e(a)h(data)f(struc-)-152 2133 y(ture)33 b(whic)n(h)h(ac)n(hiev)n(es)g(constan)n(t)f(time)h(for)g Fn(FindAny)h Fs(with)e(space)-152 2220 y(cost)e(O\()p Fr(n)13 b Fs(log)i Fr(u)p Fs(\).)49 b(Miltersen)32 b Fm(et)h(al.)d Fs(also)h(sho)n(w)h(that)e(testing)h(for)-152 2307 y(emptiness)25 b(of)g(a)f(rectangle)i(in)e(t)n(w)n(o)g(dimensions) h(is)g(as)g(hard)f(as)h(ex-)-152 2394 y(act)30 b(coun)n(ting)g(in)g (one)g(dimension.)47 b(Hence,)31 b(there)e(is)i(no)e(hop)r(e)h(of)-152 2482 y(ac)n(hieving)k(constan)n(t)g(query)e(time)h(for)i(an)n(y)d(of)j (the)e(ab)r(o)n(v)n(e)g(query)-152 2569 y(v)l(arian)n(ts)g(including)g (appro)n(ximate)g(range)h(coun)n(ting)e(for)i(t)n(w)n(o)f(di-)-152 2656 y(mensions)27 b(using)f(space)g(at)g(most)g Fr(n)912 2624 y Fk(O\(1\))1041 2656 y Fs(.)-152 2845 y Ft(1.2)99 b(A)n(ppr)n(oximate)26 b(data)f(structur)n(es)-152 2937 y Fs(Sev)n(eral)e(pap)r(ers)f(discuss)h(the)e(approac)n(h)i(of)g (obtaining)f(a)h(sp)r(eed-up)-152 3024 y(of)k(a)g(data)f(structure)g(b) n(y)f(allo)n(wing)j(slac)n(k)f(of)f(precision)h(in)f(the)g(an-)-152 3111 y(sw)n(ers.)34 b(In)21 b([17],)j(Matias)f Fm(et)i(al.)20 b Fs(study)h(an)g(appro)n(ximate)h(v)l(arian)n(t)f(of)-152 3198 y(the)28 b(dynamic)g(predecessor)g(problem,)i(in)d(whic)n(h)h(an)g (answ)n(er)h(to)f(a)-152 3285 y(predecessor)23 b(query)e(is)i(allo)n(w) n(ed)h(to)e(b)r(e)g(within)g(a)h(m)n(ultiplicativ)n(e)f(or)-152 3373 y(additiv)n(e)g(error)h(relativ)n(e)g(to)f(the)g(correct)g(univ)n (erse)g(p)r(osition)h(of)g(the)-152 3460 y(answ)n(er.)56 b(They)32 b(giv)n(e)h(sev)n(eral)g(applications)h(of)f(this)g(data)f (struc-)-152 3547 y(ture.)48 b(In)30 b(particular,)j(its)e(use)f(for)h (protot)n(ypical)g(algorithms,)i(in-)-152 3634 y(cluding)24 b(Prim's)i(minim)n(um)d(spanning)h(tree)g(algorithm)i(and)d(Dijk-)-152 3721 y(stra's)30 b(shortest)f(path)g(algorithm.)45 b(The)28 b(pap)r(ers)h([4])h(and)e([6])i(pro-)-152 3808 y(vide)j(appro)n(ximate) h(data)g(structures)g(for)g(other)g(closely)g(related)-152 3896 y(problems,)d(e.g.,)g(for)f(nearest)f(neigh)n(b)r(or)g(searc)n (hing,)j(dynamic)c(in-)-152 3983 y(dexed)d(lists,)i(and)e(dynamic)h (subset)f(rank.)-152 4157 y(An)35 b(imp)r(ortan)n(t)h(application)h(of) g(our)f(appro)n(ximate)g(data)g(struc-)-152 4244 y(ture)28 b(is)h(the)g(static)g Fr(d)p Fs(-dimensional)g(orthogonal)h(range)f (searc)n(hing)-152 4332 y(problem.)64 b(The)35 b(problem)g(is)h(giv)n (en)f(a)h(set)f(of)h(p)r(oin)n(ts)f(in)g Fr(U)1677 4300 y Fq(d)1714 4332 y Fs(,)j(to)-152 4419 y(compute)23 b(a)g(query)e(for)j (the)e(p)r(oin)n(ts)h(lying)g(in)f(a)h Fr(d)p Fs(-dimensional)g(b)r(o)n (x)-152 4506 y Fr(R)39 b Fs(=)f([)p Fr(a)105 4514 y Fk(1)140 4506 y Fr(;)13 b(b)207 4514 y Fk(1)242 4506 y Fs(])24 b Fv(\002)g(\001)13 b(\001)g(\001)24 b(\002)g Fs([)p Fr(a)630 4515 y Fq(d)666 4506 y Fr(;)13 b(b)733 4515 y Fq(d)769 4506 y Fs(].)66 b(Kno)n(wn)35 b(data)h(structures)g(pro-) -152 4593 y(viding)27 b(sublinear)h(searc)n(h)f(time)g(ha)n(v)n(e)g (space)g(cost)h(gro)n(wing)g(exp)r(o-)-152 4680 y(nen)n(tial)i(with)f (the)g(dimension)g Fr(d)p Fs(.)45 b(This)29 b(is)h(kno)n(wn)f(as)g(the) g(\\curse)-152 4767 y(of)40 b(dimensionalit)n(y")g([9].)76 b(Hence,)42 b(for)e Fr(d)e Fs(of)i(mo)r(derate)g(size,)j(a)-152 4855 y(query)35 b(is)h(often)g(most)g(e\016cien)n(tly)g(computed)f(b)n (y)g(a)h(linear)g(scan)-152 4942 y(of)j(the)f(input.)70 b(A)37 b(straigh)n(tforw)n(ard)j(optimization)f(of)g(this)f(ap-)-152 5029 y(proac)n(h)c(using)h(space)g(O\()p Fr(dn)p Fs(\))e(is)i(to)f(k)n (eep)f(the)h(p)r(oin)n(ts)g(sorted)h(b)n(y)-152 5116 y(eac)n(h)29 b(of)g(the)f Fr(d)g Fs(co)r(ordinates.)44 b(Then,)29 b(for)g(a)g(giv)n(en)f(query)-6 b(,)28 b(w)n(e)h(can)-152 5203 y(restrict)38 b(the)e(scan)h(to)h(the)e(dimension)h Fr(i)p Fs(,)j(where)e(few)n(est)g(p)r(oin)n(ts)-152 5290 y(in)k Fr(S)j Fs(ha)n(v)n(e)c(the)g Fr(i)p Fs(th)g(co)r(ordinate)i (within)e(the)g(in)n(terv)l(al)g([)p Fr(a)1678 5298 y Fq(i)1705 5290 y Fr(;)13 b(b)1772 5298 y Fq(i)1798 5290 y Fs(].)-152 5378 y(This)26 b(approac)n(h)g(leads)g(to)f(a)h(time)g (cost)g(of)g(O\()p Fr(dt)p Fs(\()p Fr(n)p Fs(\))15 b(+)h(opt\))25 b(where)2040 -69 y(opt)31 b(is)h(the)f(n)n(um)n(b)r(er)f(of)i(p)r(oin)n (ts)g(to)f(b)r(e)g(scanned)g(and)g Fr(t)p Fs(\()p Fr(n)p Fs(\))g(is)h(the)2040 19 y(time)26 b(to)g(compute)f(a)h(range)g(coun)n (ting)g(query)e(for)j(a)f(giv)n(en)f(dimen-)2040 106 y(sion.)42 b(Using)28 b(the)g(previous)f(b)r(est)h(data)g(structures)g (for)h(the)f(exact)2040 193 y(range)34 b(coun)n(ting)g(problem,)i(this) d(approac)n(h)h(has)g(a)g(time)g(cost)g(of)2040 280 y(O\()p Fr(d)12 b Fs(min\(log)j(log)g Fr(u;)2642 216 y Fl(p)p 2719 216 V 64 x Fs(log)g Fr(n=)f Fs(log)h(log)g Fr(n)p Fs(\))j(+)g(opt\).)40 b(Using)28 b(our)f(data)2040 367 y(structure)32 b(supp)r(orting)g Fn(Count)2963 375 y Fq(")3028 367 y Fs(and)g Fn(FindAny)q Fs(,)i(w)n(e)e(impro)n(v)n(e)g (the)2040 454 y(time)26 b(for)g(this)g(approac)n(h)f(to)h(optimal)g (time)g(O\()p Fr(d)16 b Fs(+)g(\(1)h(+)f Fr(")p Fs(\)opt\))21 b(=)2040 542 y(O\()p Fr(d)t Fs(+)t(opt)n(\))e(within)g(the)g(same)h (space)f(cost.)33 b(A)19 b(linear)h(scan)f(b)r(eha)n(v)n(es)2040 629 y(w)n(ell)26 b(in)e(computational)h(mo)r(dels,)h(whic)n(h)f (consider)g(a)g(memory)f(hi-)2040 716 y(erarc)n(h)n(y)-6 b(,)36 b(see)e([2].)60 b(Hence,)36 b(ev)n(en)d(for)i(large)g(v)l(alues) f(of)h(opt,)h(it)e(is)2040 803 y(lik)n(ely)22 b(that)g(the)g (computation)g(needed)g(to)g(determine)g(the)g(dimen-)2040 890 y(sion)k(for)h(the)e(scan)h(ma)t(jorizes)i(the)e(o)n(v)n(erall)g (time)g(cost.)2040 1082 y Ft(1.3)99 b(Or)o(ganization)2040 1173 y Fs(The)33 b(pap)r(er)g(is)h(organized)g(as)g(follo)n(ws:)52 b(In)32 b(Section)h(2)h(w)n(e)f(de\014ne)2040 1260 y(our)i(mo)r(del)g (of)h(computation)f(and)g(the)f(problems)h(w)n(e)h(consider,)2040 1348 y(and)27 b(state)h(de\014nitions)f(and)g(kno)n(wn)g(results)h (needed)f(in)g(our)g(data)2040 1435 y(structures.)43 b(In)28 b(Section)h(3)f(w)n(e)h(describ)r(e)g(our)g(data)g(structure)f (for)2040 1522 y(the)i(range)g(rep)r(orting)h(problem,)g(and)f(in)f (Section)i(4)f(w)n(e)g(describ)r(e)2040 1609 y(ho)n(w)36 b(to)g(prepro)r(cess)h(and)f(build)f(it.)66 b(Finally)-6 b(,)39 b(in)d(Section)g(5)g(w)n(e)2040 1696 y(describ)r(e)31 b(ho)n(w)f(to)h(extend)e(the)h(range)h(rep)r(orting)f(data)h(structure) 2040 1784 y(to)26 b(supp)r(ort)f(appro)n(ximate)h(range)g(coun)n(ting)g (queries.)2040 1975 y Ft(2.)99 b(PRELIMIN)n(ARIES)2040 2067 y Fs(A)29 b(query)g Fn(Rep)r(o)n(rt)p Fs(\()p Fr(a;)12 b(b)p Fs(\))30 b(can)f(b)r(e)h(implemen)n(ted)f(b)n(y)g(\014rst)g (querying)2040 2154 y Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\).)35 b(If)26 b(an)g Fr(x)21 b Fv(2)h Fr(S)g Fv(\\)17 b Fs([)p Fr(a;)c(b)p Fs(])26 b(is)h(returned,)e(w)n(e)i(rep)r(ort)f (the)2040 2241 y(result)k(of)g(recursiv)n(ely)f(applying)h Fn(Rep)r(o)n(rt)o Fs(\()p Fr(a;)13 b(x)19 b Fv(\000)g Fs(1\),)31 b(then)e Fr(x)p Fs(,)h(and)2040 2328 y(the)20 b(result)h(of)g(recursiv)n(ely)f(applying)h Fn(Rep)r(o)n(rt)p Fs(\()p Fr(x)7 b Fs(+)g(1)p Fr(;)k(b)p Fs(\).)33 b(Otherwise)2040 2415 y(the)21 b(empt)n(y)f(set)i(is)g(returned.)32 b(Co)r(de)22 b(for)g(the)f(reduction)h(is)f(giv)n(en)h(in)2040 2502 y(Figure)30 b(2.)46 b(If)30 b Fr(k)h Fs(elemen)n(ts)f(are)g(returned,)g (a)g(straigh)n(tforw)n(ard)h(in-)2040 2590 y(duction)21 b(sho)n(ws)h(that)f(there)g(are)h(2)p Fr(k)10 b Fs(+)e(1)22 b(recursiv)n(e)f(calls)i(to)e Fn(Rep)r(o)n(rt)p Fs(,)2040 2677 y(i.e.)30 b(at)e(most)h(2)p Fr(k)21 b Fs(+)e(1)29 b(calls)g(to)g Fn(FindAny)q Fs(,)g(and)f(w)n(e)h(ha)n(v)n(e)f (therefore)2040 2764 y(the)d(follo)n(wing)k(lemma.)2123 2996 y Fi(Lemma)41 b Fs(1.)d Fm(If)21 b Fn(FindAny)i Fm(is)e(supp)l(orte)l(d)k(in)c(time)h(at)h(most)f Fr(t)p Fm(,)h(then)2040 3083 y Fn(Rep)r(o)n(rt)g Fm(c)l(an)h(b)l(e)g(supp)l (orte)l(d)i(in)d(time)g Fs(O\()p Fr(t)8 b Fv(\001)g Fr(k)r Fs(\))p Fm(,)24 b(wher)l(e)g Fr(k)i Fm(is)d(the)h(num-)2040 3170 y(b)l(er)29 b(of)e(elements)h(r)l(ep)l(orte)l(d.)2040 3402 y Fs(The)g(mo)r(del)g(of)g(computation,)g(w)n(e)g(assume)g (throughout)f(this)g(pa-)2040 3489 y(p)r(er,)33 b(is)f(a)g(unit)f(cost) h(RAM)f(with)g(w)n(ord)h(size)g Fr(w)i Fs(bits,)f(where)f(the)2040 3577 y(set)24 b(of)g(instructions)g(includes)f(the)g(standard)h(b)r(o)r (olean)g(op)r(erations)2040 3664 y(on)j(w)n(ords,)h(the)e(arbitrary)h (shifting)h(of)g(w)n(ords,)g(and)e(the)h(m)n(ultipli-)2040 3751 y(cation)h(of)g(t)n(w)n(o)f(w)n(ords.)39 b(W)-6 b(e)27 b(assume)h(that)f(the)f(mo)r(del)i(has)f(access)2040 3838 y(to)f(a)g(sequence)f(of)i(truly)e(random)h(bits.)2040 4012 y(In)37 b(our)g(constructions)h(w)n(e)f(use)g(the)g(follo)n(wing)j (de\014nitions)d(and)2040 4100 y(results.)44 b(Giv)n(en)28 b(t)n(w)n(o)h(w)n(ords)h Fr(x)e Fs(and)g Fr(y)s Fs(,)h(w)n(e)g(let)g Fr(x)19 b Fv(\010)f Fr(y)31 b Fs(denote)e(the)2040 4187 y(binary)34 b(exclusiv)n(e-or)g(of)h Fr(x)f Fs(and)g Fr(y)s Fs(.)60 b(If)35 b Fr(x)e Fs(is)i(a)g Fr(w)h Fs(bit)e(w)n(ord)h (and)2040 4274 y Fr(i)d Fs(a)f(nonnegativ)n(e)g(in)n(teger,)j(w)n(e)d (let)h Fr(x)e Fv(#)h Fr(i)g Fs(and)g Fr(x)f Fv(")h Fr(i)h Fs(denote)f(the)2040 4361 y(righ)n(tmost)23 b Fr(w)i Fs(bits)d(of)h(the)f(result)h(of)g(shifting)h Fr(x)e(i)g Fs(bits)h(to)f(the)g(righ)n(t)2040 4448 y(and)35 b Fr(i)g Fs(bits)g(to)g(the)f(left)i(resp)r(ectiv)n(ely)-6 b(,)37 b(i.e.)f Fr(x)g Fv(#)h Fr(i)g Fs(=)f Fr(x)59 b Fs(div)i(2)4006 4417 y Fq(i)2040 4535 y Fs(and)30 b Fr(x)f Fv(")h Fr(i)f Fs(=)g(\()p Fr(x)20 b Fv(\001)g Fs(2)2652 4504 y Fq(i)2679 4535 y Fs(\))h(mo)r(d)h(2)2937 4504 y Fq(w)2987 4535 y Fs(.)49 b(F)-6 b(or)30 b(a)h(w)n(ord)g Fr(x)p Fs(,)g(w)n(e)g(let)f (msb\()p Fr(x)p Fs(\))2040 4623 y(denote)h(the)f(most)i(signi\014can)n (t)f(bit)g(p)r(osition)g(in)g Fr(x)f Fs(that)h(con)n(tains)2040 4710 y(a)e(one,)h(i.e.)g(msb\()p Fr(x)p Fs(\))25 b(=)h(max)p Fv(f)p Fr(i)h Fv(j)g Fs(2)3072 4678 y Fq(i)3125 4710 y Fv(\024)f Fr(x)p Fv(g)j Fs(for)g Fr(x)d Fv(6)p Fs(=)g(0.)44 b(W)-6 b(e)28 b(de\014ne)2040 4797 y(msb\(0\))g(=)f(0.)47 b(F)-6 b(redman)29 b(and)g(Willard)h(in)g([13])h(describ)r(e)f(ho)n(w)f (to)2040 4884 y(compute)d(msb)f(in)h(constan)n(t)f(time.)2123 5116 y Fi(Theorem)j(1)98 b(\(Fredman)27 b(and)g(Willard)h([13]\).)2040 5203 y Fm(Given)35 b(a)g Fr(w)i Fm(bit)e(wor)l(d)h Fr(x)p Fm(,)f(the)h(index)f Fs(msb\()p Fr(x)p Fs(\))f Fm(c)l(an)i(b)l(e)f(c)l (ompute)l(d)2040 5290 y(in)h(c)l(onstant)j(time,)g(pr)l(ovide)l(d)f(a)e (c)l(onstant)j(numb)l(er)f(of)e(wor)l(ds)i(is)2040 5378 y(known)28 b(which)g(only)g(dep)l(end)g(on)g(the)h(wor)l(d)f(size)g Fr(w)r Fm(.)p eop %%Page: 3 3 3 2 bop -152 -69 a Fs(Essen)n(tial)27 b(to)f(our)g(range)g(rep)r (orting)h(data)f(structure)f(is)h(the)g(e\016ci-)-152 19 y(en)n(t)18 b(and)g(compact)h(implemen)n(tation)f(of)h Fm(sp)l(arse)k(arr)l(ays)p Fs(.)34 b(W)-6 b(e)18 b(de\014ne)-152 106 y(a)j(sparse)g(arra)n(y)g(to)f(b)r(e)g(a)h(static)g(arra)n(y)g (where)f(only)g(a)h(limited)g(n)n(um-)-152 193 y(b)r(er)31 b(of)g(en)n(tries)f(are)h(initialized)h(to)f(con)n(tain)f(sp)r (eci\014c)h(v)l(alues.)49 b(All)-152 280 y(other)22 b(en)n(tries)g(ma)n (y)f(con)n(tain)h(arbitrary)g(information,)i(and)e(crucial)-152 367 y(for)28 b(ac)n(hieving)e(the)g(compact)h(represen)n(tation:)37 b(It)25 b(is)i(not)g(p)r(ossible)-152 454 y(to)f(distinguish)f (initialized)h(and)f(not)g(initialized)h(en)n(tries.)35 b(F)-6 b(or)25 b(the)-152 542 y(implemen)n(tation)g(of)g(sparse)g(arra) n(ys)f(w)n(e)h(will)g(adopt)f(the)g(follo)n(wing)-152 629 y(de\014nition)f(and)g(result)h(ab)r(out)f Fm(p)l(erfe)l(ct)k(hash) f(functions)p Fs(,)f(where)f([)p Fr(n)p Fs(])-152 716 y(denotes)i Fv(f)p Fs(0)p Fr(;)14 b Fs(1)p Fr(;)g(:)f(:)g(:)g(;)g(n)k Fv(\000)g Fs(1)p Fv(g)p Fs(.)-69 970 y Fi(Definition)41 b Fs(1.)d Fm(A)30 b(function)h Fr(h)d Fs(:)f([)p Fr(m)p Fs(])g Fv(!)g Fs([)p Fr(`)p Fs(])k Fm(is)37 b Fs(p)r(erfect)31 b Fm(for)g(a)-152 1057 y(set)j Fr(S)h Fv(\022)30 b Fs([)p Fr(m)p Fs(])j Fm(if)f Fr(h)h Fm(is)f(1-1)i(on)f Fr(S)t Fm(.)50 b(A)33 b(family)e Fv(H)i Fm(is)g(an)g Fs(\()p Fr(m;)12 b(n;)i(`)p Fs(\))p Fm(-)-152 1144 y(family)31 b(of)h(p)l(erfe)l(ct)i(hash)f(functions,)h(if)d(for)h(al)t(l)f(subsets) k Fr(S)f Fv(\022)c Fs([)p Fr(m)p Fs(])-152 1231 y Fm(of)c(size)g Fr(n)f Fm(ther)l(e)j(is)d(a)h(function)g Fr(h)21 b Fv(2)h(H)g Fs(:)f([)p Fr(m)p Fs(])h Fv(!)f Fs([)p Fr(`)p Fs(])26 b Fm(that)h(is)e(p)l(erfe)l(ct)-152 1319 y(for)j Fr(S)t Fm(.)-152 1572 y Fs(The)35 b(question)g(of)h(represen)n(ting)f (e\016cien)n(tly)g(families)i(of)e(p)r(erfect)-152 1660 y(hash)h(functions)g(has)f(b)r(een)g(throughly)g(studied.)64 b(Sc)n(hmidt)34 b(and)-152 1747 y(Siegel)29 b([21])h(describ)r(ed)e(an) h(\()p Fr(m;)12 b(n;)i Fs(O\()p Fr(n)p Fs(\)\)-family)28 b(of)h(p)r(erfect)g(hash)-152 1834 y(functions)k(where)f(eac)n(h)h (hash)f(function)g(can)g(b)r(e)g(represen)n(ted)g(b)n(y)-152 1921 y(\002\()p Fr(n)17 b Fs(+)f(log)f(log)g Fr(m)p Fs(\))25 b(bits.)34 b(Jacobs)27 b(and)e(v)l(an)g(Emde)g(Boas)i([16])g(ga)n(v)n (e)-152 2008 y(a)c(simpler)g(solution)h(requiring)e(O\()p Fr(n)13 b Fs(log)i(log)g Fr(n)c Fs(+)g(log)j(log)h Fr(m)p Fs(\))22 b(bits)h(in)-152 2095 y(the)34 b(standard)f(unit)g(cost)i(RAM) e(mo)r(del)h(augmen)n(ted)f(with)h(m)n(ul-)-152 2183 y(tiplicativ)n(e)k(arithmetic.)67 b(Jacobs)38 b(and)e(v)l(an)g(Emde)h (Boas)g(result)-152 2270 y(su\016ces)23 b(for)h(our)f(purp)r(oses.)34 b(The)22 b(construction)h(in)g([16])h(mak)n(es)f(re-)-152 2357 y(p)r(eated)k(use)h(of)f(the)g(data)h(structure)e(in)h([12])i (where)e(some)h(primes)-152 2444 y(are)g(assumed)f(to)g(b)r(e)g(kno)n (wn.)38 b(By)27 b(replacing)h(the)f(applications)h(of)-152 2531 y(the)33 b(data)h(structures)g(from)g([12])h(with)f(applications)h (of)f(the)f(da-)-152 2618 y(ta)26 b(structure)f(from)h([10],)h(the)d (randomized)i(construction)f(time)h(in)-152 2706 y(Theorem)h(2)f(follo) n(ws)i(immediately)-6 b(.)-69 2960 y Fi(Theorem)28 b(2)98 b(\(Ja)n(cobs)30 b(and)d(v)-7 b(an)28 b(Emde)g(Bo)n(as)h([16]\).)-152 3047 y Fm(Ther)l(e)g(is)e(an)h Fs(\()p Fr(m;)13 b(n;)g Fs(O\()p Fr(n)p Fs(\)\))p Fm(-family)26 b(of)i(p)l(erfe)l(ct)h(hash)f (functions)g Fv(H)-152 3134 y Fm(such)37 b(that)g(any)f(hash)h (function)f Fr(h)g Fv(2)g(H)h Fm(c)l(an)f(b)l(e)g(r)l(epr)l(esente)l(d) j(in)-152 3221 y Fs(\002\(\()p Fr(n)13 b Fs(log)i(log)g Fr(n)p Fs(\))p Fr(=w)r Fs(\))27 b Fm(wor)l(ds)g(and)g(evaluate)l(d)i (in)d(c)l(onstant)i(time)f(for)-152 3308 y Fr(m)33 b Fv(\024)g Fs(2)80 3277 y Fq(w)131 3308 y Fm(.)54 b(The)34 b(p)l(erfe)l(ct)i(hash)f(function)f(c)l(an)h(b)l(e)g(c)l(onstructe)l(d) i(in)-152 3395 y(exp)l(e)l(cte)l(d)30 b(time)e Fs(O\()p Fr(n)p Fs(\))p Fm(.)-152 3649 y Fs(A)f(sparse)i(arra)n(y)e Fr(A)h Fs(can)f(b)r(e)h(implemen)n(ted)f(using)h(a)g(p)r(erfect)g(hash) -152 3737 y(function)k(as)h(follo)n(ws.)56 b(Assume)32 b Fr(A)f Fs(has)h(size)h Fr(m)e Fs(and)h(con)n(tains)h Fr(n)-152 3824 y Fs(initialized)24 b(en)n(tries)e(eac)n(h)f(storing)i Fr(b)f Fs(bits)f(of)i(information.)35 b(Using)21 b(a)-152 3911 y(p)r(erfect)k(hash)e(function)h Fr(h)g Fs(for)g(the)g Fr(n)g Fs(initialized)h(indices)f(of)g Fr(A)p Fs(,)g(w)n(e)-152 3998 y(can)19 b(store)h(the)e Fr(n)h Fs(initialized)h(en)n(tries)f(of)h Fr(A)e Fs(in)h(an)g(arra)n(y)g Fr(B)j Fs(of)e(size)f Fr(n)p Fs(,)-152 4085 y(suc)n(h)f(that)f Fr(A)p Fs([)p Fr(i)p Fs(])22 b(=)f Fr(B)t Fs([)p Fr(h)p Fs(\()p Fr(i)p Fs(\)])d(for)h(eac)n(h)e(initialized)j(en)n(try)c Fr(A)p Fs([)p Fr(i)p Fs(].)33 b(If)17 b Fr(A)p Fs([)p Fr(i)p Fs(])-152 4172 y(is)28 b(not)e(initialized,)j Fr(B)t Fs([)p Fr(h)p Fs(\()p Fr(i)p Fs(\)])f(is)f(an)g(arbitrary)g(of)h(the)e Fr(n)h Fs(initialized)-152 4260 y(en)n(tries)e(\(dep)r(ending)e(on)h (the)g(c)n(hoice)h(of)g Fr(h)p Fs(\).)34 b(F)-6 b(rom)24 b(Theorem)h(2)f(w)n(e)-152 4347 y(immediately)j(ha)n(v)n(e)e(the)g (follo)n(wing)j(corollary)-6 b(.)-69 4601 y Fi(Cor)n(ollar)h(y)43 b Fs(1.)38 b Fm(A)33 b(sp)l(arse)i(arr)l(ay)g(of)e(size)g Fr(m)g Fm(with)g Fr(n)g Fm(initial-)-152 4688 y(ize)l(d)g(entries)h(e)l (ach)f(c)l(ontaining)g Fr(b)f Fm(bits)h(of)f(information)g(c)l(an)h (with)-152 4775 y(exp)l(e)l(cte)l(d)28 b(pr)l(epr)l(o)l(c)l(essing)f (time)e Fs(O\()p Fr(n)p Fs(\))f Fm(b)l(e)i(stor)l(e)l(d)g(using)g(sp)l (ac)l(e)g Fs(O\()p Fr(n)11 b Fv(\001)-152 4862 y Fr(b=w)r Fs(\))31 b Fm(wor)l(ds,)i(and)e(lo)l(okups)h(ar)l(e)g(supp)l(orte)l(d)h (in)d(c)l(onstant)k(time,)d(if)-152 4949 y Fs(log)15 b(log)g Fr(n)22 b Fv(\024)f Fr(b)g Fv(\024)g Fr(w)30 b Fm(and)e Fr(m)21 b Fv(\024)g Fs(2)798 4918 y Fq(w)848 4949 y Fm(.)-152 5203 y Fs(F)-6 b(or)29 b(the)g(appro)n(ximate)g(range) g(coun)n(ting)g(data)g(structure)g(in)f(Sec-)-152 5290 y(tion)21 b(5)g(w)n(e)f(need)g(the)g(follo)n(wing)j(result)e(ac)n(hiev) n(ed)f(b)n(y)f(F)-6 b(redman)20 b(and)-152 5378 y(Willard)g(for)g (storing)g(small)g(sets)f(\(in)g([14])h(denoted)f(Q-heaps;)i(these)2040 -69 y(are)f(actually)h(dynamic)e(data)h(structures,)h(but)e(w)n(e)h (only)f(need)h(their)2040 19 y(static)30 b(prop)r(erties\).)46 b(F)-6 b(or)29 b(a)g(set)h Fr(S)j Fs(and)c(an)g(elemen)n(t)g Fr(x)g Fs(w)n(e)g(de\014ne)2040 106 y(rank)2192 125 y Fh(S)2238 106 y Fs(\()p Fr(x)p Fs(\))20 b(=)h Fv(jf)p Fr(y)k Fv(2)c Fr(S)26 b Fv(j)c Fr(y)h Fv(\024)e Fr(x)p Fv(gj)p Fs(.)2123 365 y Fi(Theorem)28 b(3)98 b(\(Fredman)27 b(and)g(Willard)h([14]\).)2040 453 y Fm(L)l(et)g Fr(S)k Fm(b)l(e)c(a)f(set)h(of)f Fr(w)i Fm(bit)f(wor)l(ds)g(and)g(an)g(inte)l (ger)g Fr(n)p Fm(,)f(wher)l(e)i Fv(j)p Fr(S)t Fv(j)22 b(\024)2040 549 y Fs(\(log)15 b Fr(n)p Fs(\))2258 517 y Fk(1)p Fq(=)p Fk(4)2396 549 y Fm(and)41 b Fs(log)15 b Fr(n)46 b Fv(\024)g Fr(w)r Fm(.)75 b(Using)42 b(time)e Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))i Fm(and)f(sp)l(ac)l(e)2040 636 y Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))30 b Fm(wor)l(ds,)g(a)g(data) g(structur)l(e)i(c)l(an)e(b)l(e)g(c)l(onstructe)l(d)j(that)d(sup-)2040 723 y(p)l(orts)d Fs(rank)2381 743 y Fh(S)2427 723 y Fs(\()p Fr(x)p Fs(\))d Fm(queries)j(in)e(c)l(onstant)j(time,)d(given)h(the)h (availabil-)2040 810 y(ity)h(of)f(a)h(table)g(r)l(e)l(quiring)g(sp)l (ac)l(e)h(and)f(pr)l(epr)l(o)l(c)l(essing)j(time)c Fs(O\()p Fr(n)p Fs(\))p Fm(.)2040 1070 y Fs(The)37 b(result)g(of)h(Theorem)f(3)g (can)g(b)r(e)g(extended)e(to)i(sets)g(of)h(size)2040 1157 y(\(log)15 b Fr(n)p Fs(\))2258 1126 y Fq(c)2312 1157 y Fs(for)23 b(an)n(y)f(constan)n(t)g Fr(c)f(>)h Fs(0,)h(b)n(y)e(constructing)i(a)f(\(log)15 b Fr(n)p Fs(\))3910 1126 y Fk(1)p Fq(=)p Fk(4)4007 1157 y Fs(-)2040 1244 y(ary)23 b(searc)n(h)h(tree)f(of)h(heigh)n(t)f(4)p Fr(c)g Fs(with)h(the)e(elemen)n(ts)i(of)g Fr(S)j Fs(stored)c(at)2040 1332 y(the)h(lea)n(v)n(es)g(together)h(with)f(their)g(rank)g(in)f Fr(S)t Fs(,)i(and)f(where)g(in)n(ternal)2040 1419 y(no)r(des)h(are)h (represen)n(ted)f(b)n(y)f(the)h(data)g(structures)g(of)h(Theorem)g(3.) 2040 1506 y(T)-6 b(op-do)n(wn)19 b(searc)n(hes)g(then)f(tak)n(e)h(time) g(prop)r(ortional)h(to)f(the)g(heigh)n(t)2040 1593 y(of)27 b(the)e(tree.)2123 1853 y Fi(Cor)n(ollar)-5 b(y)43 b Fs(2.)38 b Fm(L)l(et)c Fr(c)f(>)f Fs(0)h Fm(b)l(e)h(\014xe)l(d)h(c)l (onstant)h(and)d Fr(S)38 b Fm(a)33 b(set)2040 1940 y(of)f Fr(w)j Fm(bit)d(wor)l(ds)i(and)f(an)f(inte)l(ger)i Fr(n)p Fm(,)f(wher)l(e)h Fv(j)p Fr(S)t Fv(j)d(\024)f Fs(\(log)15 b Fr(n)p Fs(\))3847 1908 y Fq(c)3911 1940 y Fm(and)2040 2027 y Fs(log)g Fr(n)37 b Fv(\024)f Fr(w)r Fm(.)59 b(Using)36 b(time)g Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))g Fm(and)g(sp)l(ac)l(e)h Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))f Fm(wor)l(ds,)i(a)2040 2114 y(data)33 b(structur)l(e)i(c)l(an)d(b)l(e)h(c)l(onstructe)l(d)i (that)e(supp)l(orts)h(pr)l(e)l(de)l(c)l(essor)2040 2202 y(queries)27 b(in)f(time)g Fs(O\()p Fr(c)p Fs(\))p Fm(,)f(given)h(the)h (availability)f(of)f(a)h(table)h(r)l(e)l(quir-)2040 2289 y(ing)g(sp)l(ac)l(e)i(and)f(pr)l(epr)l(o)l(c)l(essing)j(time)c Fs(O\()p Fr(n)p Fs(\))p Fm(.)2040 2500 y Ft(3.)99 b(D)m(A)-9 b(T)g(A)25 b(STR)m(UCTURE)2040 2591 y Fs(In)i(this)h(section)g(w)n(e)h (describ)r(e)f(a)g(data)g(structure)f(supp)r(orting)h(the)2040 2679 y(query)c Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))24 b(in)h(constan)n(t)g(time.)35 b(The)25 b(basic)h(comp)r(onen)n(t)2040 2766 y(of)j(the)f(data)g(structure)g(is)h(\(the)e(implicitly)i (represen)n(tation)g(of)6 b(\))28 b(a)2040 2853 y(p)r(erfect)22 b(binary)e(tree)i Fr(T)31 b Fs(with)21 b(2)2962 2821 y Fq(w)3034 2853 y Fs(lea)n(v)n(es,)i(i.e.)f(a)f(binary)g(tree)g(where) 2040 2940 y(all)f(lea)n(v)n(es)g(ha)n(v)n(e)e(depth)h Fr(w)i Fs(\(the)d(ro)r(ot)i(has)g(depth)e(zero\).)33 b(The)19 b(lea)n(v)n(es)2040 3027 y(are)30 b(n)n(um)n(b)r(ered)f(from)h (left-to-righ)n(t)g Fv(f)p Fs(0)p Fr(;)14 b Fs(1)p Fr(;)g(:)f(:)g(:)g (;)g Fs(2)3494 2996 y Fq(w)3564 3027 y Fv(\000)20 b Fs(1)p Fv(g)p Fs(,)32 b(and)d(the)2040 3115 y(in)n(ternal)35 b(no)r(des)g(of)g Fr(T)45 b Fs(are)35 b(n)n(um)n(b)r(ered)e(1)p Fr(;)13 b(:)h(:)f(:)g(;)g(n)23 b Fv(\000)g Fs(1.)61 b(The)35 b(ro)r(ot)2040 3202 y(is)g(the)f(\014rst)g(no)r(de)g(and)g(the)g(c)n (hildren)g(of)h(no)r(de)g Fr(v)i Fs(are)e(no)r(des)f(2)p Fr(v)2040 3289 y Fs(and)c(2)p Fr(v)23 b Fs(+)d(1,)32 b(i.e.)f(lik)n(e)f(the)g(n)n(um)n(b)r(ering)f(of)i(no)r(des)g(in)f(an)g (implicit)2040 3376 y(binary)e(heap)g([11,)j(25].)44 b(Figure)29 b(1)g(sho)n(ws)g(the)f(n)n(um)n(b)r(ering)g(of)h(the)2040 3463 y(no)r(des)36 b(for)g(the)f(case)i Fr(w)i Fs(=)f(4.)64 b(The)36 b(tree)f Fr(T)46 b Fs(has)36 b(the)f(follo)n(wing)2040 3550 y(prop)r(erties)26 b(\(see)h([15]\):)2123 3810 y Fi(F)-9 b(a)n(ct)43 b Fs(1.)38 b Fm(The)28 b(depth)h(of)e(an)i (internal)f(no)l(de)h Fr(v)h Fm(is)e Fs(msb\()p Fr(v)s Fs(\))p Fm(,)f(and)2040 3897 y(the)33 b Fr(d)2212 3866 y Fk(th)2305 3897 y Fm(anc)l(estor)h(of)e Fr(v)i Fm(is)e Fr(v)g Fv(#)d Fr(d)p Fm(,)j(for)g Fs(0)e Fv(\024)e Fr(d)h Fv(\024)g Fs(depth)o(\()p Fr(v)s Fs(\))p Fm(.)47 b(The)2040 3985 y(p)l(ar)l(ent)40 b(of)e(le)l(af)g Fr(a)g Fm(is)g(the)h(internal)f (no)l(de)h Fs(2)3376 3953 y Fq(w)q Fj(\000)p Fk(1)3530 3985 y Fs(+)25 b(\()p Fr(a)40 b Fv(#)h Fs(1\))p Fm(,)g(for)2040 4072 y Fs(0)36 b Fv(\024)e Fr(a)h(<)g Fs(2)2417 4040 y Fq(w)2467 4072 y Fm(.)58 b(F)-6 b(or)36 b Fs(0)f Fv(\024)g Fr(a)g(<)f(b)h(<)g Fs(2)3239 4040 y Fq(w)3290 4072 y Fm(,)h(the)g(ne)l(ar)l(est)h(c)l(ommon)2040 4159 y(anc)l(estor)25 b(of)c(the)j(le)l(aves)f Fr(a)f Fm(and)g Fr(b)g Fm(is)g(the)h Fs(1)5 b(+)g(msb)q(\()p Fr(a)g Fv(\010)g Fr(b)p Fs(\))3671 4127 y Fk(th)3755 4159 y Fm(anc)l(estor)2040 4246 y(of)27 b(the)i(le)l(aves)f Fr(a)f Fm(and)h Fr(b)p Fm(.)2040 4506 y Fs(F)-6 b(or)24 b(a)h(no)r(de)f Fr(v)j Fs(in)d Fr(T)11 b Fs(,)24 b(w)n(e)h(let)f Fn(left)q Fs(\()p Fr(v)s Fs(\))g(and)g Fn(right)p Fs(\()p Fr(v)s Fs(\))g(denote)g(the)g(left) 2040 4593 y(and)33 b(righ)n(t)g(c)n(hildren)h(of)g Fr(v)s Fs(,)h(and)e(w)n(e)h(let)g Fr(T)3324 4601 y Fq(v)3394 4593 y Fs(denote)f(the)g(subtree)2040 4680 y(ro)r(oted)28 b(at)f Fr(v)i Fs(and)e Fr(S)2642 4688 y Fq(v)2706 4680 y Fs(denote)f(the)h(subset)g(of)g Fr(S)k Fs(where)c Fr(x)c Fv(2)h Fr(S)3903 4688 y Fq(v)3966 4680 y Fs(if,)2040 4767 y(and)k(only)h(if,)h Fr(x)25 b Fv(2)i Fr(S)t Fs(,)i(and)g(leaf)g Fr(x)f Fs(is)h(a)g(descenden)n(t)f(of)h Fr(v)s Fs(.)43 b(W)-6 b(e)28 b(let)2040 4855 y Fr(P)34 b Fs(b)r(e)22 b(the)h(subtree)f(of)i Fr(T)33 b Fs(consisting)25 b(of)e(the)g(union)f (of)i(the)e(in)n(ternal)2040 4942 y(no)r(des)i(on)g(the)g(paths)g(from) h(the)e(ro)r(ot)i(to)f(the)g(lea)n(v)n(es)h(in)f Fr(S)t Fs(,)g(and)g(w)n(e)2040 5029 y(let)h Fr(V)41 b Fs(b)r(e)25 b(the)f(subset)h(of)g Fr(P)35 b Fs(consisting)26 b(of)g(the)e(ro)r(ot)h (of)h Fr(T)35 b Fs(and)24 b(the)2040 5116 y(no)r(des)f(where)g(b)r(oth) g(c)n(hildren)f(are)h(in)g Fr(P)11 b Fs(.)33 b(W)-6 b(e)22 b(denote)h Fr(V)39 b Fs(the)23 b(set)g(of)2040 5203 y Fm(br)l(anching)33 b Fs(no)r(des.)h(Since)25 b(eac)n(h)f(leaf-to-ro)r (ot)i(path)f(in)f Fr(T)35 b Fs(con)n(tains)2040 5290 y Fr(w)27 b Fs(in)n(ternal)e(no)r(des,)g(w)n(e)g(ha)n(v)n(e)f Fv(j)p Fr(P)11 b Fv(j)22 b(\024)f Fr(n)15 b Fv(\001)h Fr(w)r Fs(,)25 b(and)f(since)i Fr(V)41 b Fs(con)n(tains)2040 5378 y(the)30 b(ro)r(ot)h(and)f(the)f(set)i(of)g(no)r(des)f(of)h (degree)f(t)n(w)n(o)h(in)f(the)g(subtree)p eop %%Page: 4 4 4 3 bop 3 setlinewidth np 41 -122 a 75 -122 li st 3 setlinewidth np 124 -122 a 158 -122 li st 3 setlinewidth np 206 -122 a 240 -122 li st 3 setlinewidth np 288 -122 a 322 -122 li st 3 setlinewidth np 371 -122 a 405 -122 li st 3 setlinewidth np 453 -122 a 487 -122 li st 3 setlinewidth np 535 -122 a 569 -122 li st 3 setlinewidth np 618 -122 a 652 -122 li st 3 setlinewidth np 700 -122 a 734 -122 li st 3 setlinewidth np 782 -122 a 816 -122 li st 3 setlinewidth np 865 -122 a 899 -122 li st 3 setlinewidth np 947 -122 a 981 -122 li st 3 setlinewidth np 1029 -122 a 1063 -122 li st 3 setlinewidth np 1112 -122 a 1146 -122 li st 3 setlinewidth np 1194 -122 a 1228 -122 li st 3 setlinewidth np 1277 -122 a 1311 -122 li st 3 setlinewidth np 1359 -122 a 1393 -122 li st 3 setlinewidth np 1441 -122 a 1475 -122 li st 3 setlinewidth np 1524 -122 a 1558 -122 li st 3 setlinewidth np 1606 -122 a 1640 -122 li st 3 setlinewidth np 1688 -122 a 1722 -122 li st 3 setlinewidth np 41 102 a 75 102 li st 3 setlinewidth np 124 102 a 158 102 li st 3 setlinewidth np 206 102 a 240 102 li st 3 setlinewidth np 288 102 a 322 102 li st 3 setlinewidth np 371 102 a 405 102 li st 3 setlinewidth np 453 102 a 487 102 li st 3 setlinewidth np 535 102 a 569 102 li st 3 setlinewidth np 618 102 a 652 102 li st 3 setlinewidth np 700 102 a 734 102 li st 3 setlinewidth np 782 102 a 816 102 li st 3 setlinewidth np 865 102 a 899 102 li st 3 setlinewidth np 947 102 a 981 102 li st 3 setlinewidth np 1029 102 a 1063 102 li st 3 setlinewidth np 1112 102 a 1146 102 li st 3 setlinewidth np 1194 102 a 1228 102 li st 3 setlinewidth np 1277 102 a 1311 102 li st 3 setlinewidth np 1359 102 a 1393 102 li st 3 setlinewidth np 1441 102 a 1475 102 li st 3 setlinewidth np 1524 102 a 1558 102 li st 3 setlinewidth np 1606 102 a 1640 102 li st 3 setlinewidth np 1688 102 a 1722 102 li st -66 -103 a Fg(0)-66 9 y(1)-66 121 y(2)-66 233 y(3)-66 383 y(4)p 3 setlinewidth np 5 400 a 78 400 li st 3 setlinewidth np 78 400 a 78 327 li st 3 setlinewidth np 78 327 a 5 327 li st 3 setlinewidth np 5 327 a 5 400 li st 24 461 a(0)p 3 setlinewidth np 117 400 a 190 400 li st 3 setlinewidth np 190 400 a 190 327 li st 3 setlinewidth np 190 327 a 117 327 li st 3 setlinewidth np 117 327 a 117 400 li st 79 w(1)p 3 setlinewidth np 230 400 a 303 400 li st 3 setlinewidth np 303 400 a 303 327 li st 3 setlinewidth np 303 327 a 230 327 li st 3 setlinewidth np 230 327 a 230 400 li st 80 w(2)p 3 setlinewidth np 342 400 a 415 400 li st 3 setlinewidth np 415 400 a 415 327 li st 3 setlinewidth np 415 327 a 342 327 li st 3 setlinewidth np 342 327 a 342 400 li st 3 setlinewidth np 342 400 a 415 327 li st 3 setlinewidth np 342 327 a 415 400 li st 79 w(3)p 3 setlinewidth np 454 400 a 527 400 li st 3 setlinewidth np 527 400 a 527 327 li st 3 setlinewidth np 527 327 a 454 327 li st 3 setlinewidth np 454 327 a 454 400 li st 79 w(4)p 3 setlinewidth np 566 400 a 639 400 li st 3 setlinewidth np 639 400 a 639 327 li st 3 setlinewidth np 639 327 a 566 327 li st 3 setlinewidth np 566 327 a 566 400 li st 79 w(5)p 3 setlinewidth np 678 400 a 751 400 li st 3 setlinewidth np 751 400 a 751 327 li st 3 setlinewidth np 751 327 a 678 327 li st 3 setlinewidth np 678 327 a 678 400 li st 3 setlinewidth np 678 400 a 751 327 li st 3 setlinewidth np 678 327 a 751 400 li st 79 w(6)p 3 setlinewidth np 790 400 a 863 400 li st 3 setlinewidth np 863 400 a 863 327 li st 3 setlinewidth np 863 327 a 790 327 li st 3 setlinewidth np 790 327 a 790 400 li st 3 setlinewidth np 790 400 a 863 327 li st 3 setlinewidth np 790 327 a 863 400 li st 79 w(7)p 3 setlinewidth np 902 400 a 975 400 li st 3 setlinewidth np 975 400 a 975 327 li st 3 setlinewidth np 975 327 a 902 327 li st 3 setlinewidth np 902 327 a 902 400 li st 79 w(8)p 3 setlinewidth np 1014 400 a 1087 400 li st 3 setlinewidth np 1087 400 a 1087 327 li st 3 setlinewidth np 1087 327 a 1014 327 li st 3 setlinewidth np 1014 327 a 1014 400 li st 79 w(9)p 3 setlinewidth np 1126 400 a 1199 400 li st 3 setlinewidth np 1199 400 a 1199 327 li st 3 setlinewidth np 1199 327 a 1126 327 li st 3 setlinewidth np 1126 327 a 1126 400 li st 63 w(10)p 3 setlinewidth np 1238 400 a 1311 400 li st 3 setlinewidth np 1311 400 a 1311 327 li st 3 setlinewidth np 1311 327 a 1238 327 li st 3 setlinewidth np 1238 327 a 1238 400 li st 46 w(11)p 3 setlinewidth np 1350 400 a 1423 400 li st 3 setlinewidth np 1423 400 a 1423 327 li st 3 setlinewidth np 1423 327 a 1350 327 li st 3 setlinewidth np 1350 327 a 1350 400 li st 3 setlinewidth np 1350 400 a 1423 327 li st 3 setlinewidth np 1350 327 a 1423 400 li st 46 w(12)p 3 setlinewidth np 1462 400 a 1535 400 li st 3 setlinewidth np 1535 400 a 1535 327 li st 3 setlinewidth np 1535 327 a 1462 327 li st 3 setlinewidth np 1462 327 a 1462 400 li st 46 w(13)p 3 setlinewidth np 1574 400 a 1647 400 li st 3 setlinewidth np 1647 400 a 1647 327 li st 3 setlinewidth np 1647 327 a 1574 327 li st 3 setlinewidth np 1574 327 a 1574 400 li st 3 setlinewidth np 1574 400 a 1647 327 li st 3 setlinewidth np 1574 327 a 1647 400 li st 46 w(14)p 3 setlinewidth np 1687 400 a 1760 400 li st 3 setlinewidth np 1760 400 a 1760 327 li st 3 setlinewidth np 1760 327 a 1687 327 li st 3 setlinewidth np 1687 327 a 1687 400 li st 47 w(15)p 9 setlinewidth np 881 -121 a 433 -9 li st 9 setlinewidth np 881 -121 a 1329 -9 li st 1 setgray 9 setlinewidth np 882 -122 26 0.00 360.00 arc fil 0 setgray np 882 -122 26 0.00 360.00 arc st 916 -137 a(1)p 0 setgray 3 setlinewidth np 882 -122 11 0.00 360.00 arc fil 0 setgray np 882 -122 11 0.00 360.00 arc st 9 setlinewidth np 433 -9 a 209 103 li st 9 setlinewidth np 433 -9 a 657 103 li st 1 setgray 9 setlinewidth np 434 -10 26 0.00 360.00 arc fil 0 setgray np 434 -10 26 0.00 360.00 arc st 367 -25 a(2)p 0 setgray 3 setlinewidth np 434 -10 11 0.00 360.00 arc fil 0 setgray np 434 -10 11 0.00 360.00 arc st 3 setlinewidth np 1329 -9 a 1106 103 li st 9 setlinewidth np 1329 -9 a 1554 103 li st 945 w(3)p 0 setgray 3 setlinewidth np 1330 -10 11 0.00 360.00 arc fil 0 setgray np 1330 -10 11 0.00 360.00 arc st 3 setlinewidth np 209 103 a 96 215 li st 9 setlinewidth np 209 103 a 321 215 li st 161 87 a(4)p 0 setgray 3 setlinewidth np 209 102 11 0.00 360.00 arc fil 0 setgray np 209 102 11 0.00 360.00 arc st 3 setlinewidth np 657 103 a 545 215 li st 9 setlinewidth np 657 103 a 769 215 li st 479 w(5)p 0 setgray 3 setlinewidth np 658 102 11 0.00 360.00 arc fil 0 setgray np 658 102 11 0.00 360.00 arc st 3 setlinewidth np 1106 103 a 993 215 li st 3 setlinewidth np 1106 103 a 1218 215 li st 352 w(6)p 0 setgray 3 setlinewidth np 1106 102 11 0.00 360.00 arc fil 0 setgray np 1106 102 11 0.00 360.00 arc st 9 setlinewidth np 1554 103 a 1442 215 li st 9 setlinewidth np 1554 103 a 1666 215 li st 1 setgray 9 setlinewidth np 1554 102 26 0.00 360.00 arc fil 0 setgray np 1554 102 26 0.00 360.00 arc st 497 w(7)p 0 setgray 3 setlinewidth np 1554 102 11 0.00 360.00 arc fil 0 setgray np 1554 102 11 0.00 360.00 arc st 3 setlinewidth np 96 215 a 41 327 li st 3 setlinewidth np 96 215 a 153 327 li st 49 199 a(8)p 0 setgray 3 setlinewidth np 97 214 11 0.00 360.00 arc fil 0 setgray np 97 214 11 0.00 360.00 arc st 3 setlinewidth np 321 215 a 265 327 li st 9 setlinewidth np 321 215 a 377 327 li st 254 w(9)p 0 setgray 3 setlinewidth np 322 214 11 0.00 360.00 arc fil 0 setgray np 322 214 11 0.00 360.00 arc st 3 setlinewidth np 545 215 a 489 327 li st 3 setlinewidth np 545 215 a 601 327 li st 96 w(10)p 0 setgray 3 setlinewidth np 546 214 11 0.00 360.00 arc fil 0 setgray np 546 214 11 0.00 360.00 arc st 9 setlinewidth np 769 215 a 713 327 li st 9 setlinewidth np 769 215 a 825 327 li st 1 setgray 9 setlinewidth np 770 214 26 0.00 360.00 arc fil 0 setgray np 770 214 26 0.00 360.00 arc st 272 w(11)p 0 setgray 3 setlinewidth np 770 214 11 0.00 360.00 arc fil 0 setgray np 770 214 11 0.00 360.00 arc st 3 setlinewidth np 993 215 a 937 327 li st 3 setlinewidth np 993 215 a 1049 327 li st 44 w(12)p 0 setgray 3 setlinewidth np 994 214 11 0.00 360.00 arc fil 0 setgray np 994 214 11 0.00 360.00 arc st 3 setlinewidth np 1218 215 a 1161 327 li st 3 setlinewidth np 1218 215 a 1274 327 li st 254 w(13)p 0 setgray 3 setlinewidth np 1218 214 11 0.00 360.00 arc fil 0 setgray np 1218 214 11 0.00 360.00 arc st 9 setlinewidth np 1442 215 a 1386 327 li st 3 setlinewidth np 1442 215 a 1498 327 li st 62 w(14)p 0 setgray 3 setlinewidth np 1442 214 11 0.00 360.00 arc fil 0 setgray np 1442 214 11 0.00 360.00 arc st 9 setlinewidth np 1666 215 a 1610 327 li st 3 setlinewidth np 1666 215 a 1722 327 li st 254 w(15)p 0 setgray 3 setlinewidth np 1666 214 11 0.00 360.00 arc fil 0 setgray np 1666 214 11 0.00 360.00 arc st 134 618 a(1)92 b(2)g(3)g(4)g(5)74 b(6)g(7)h(8)56 b(9)41 b(10)g(11)g(12)24 b(13)41 b(14)59 b(15)p 88 644 1663 4 v -15 693 a Ff(B)p 86 715 4 75 v 95 w Fe(1)340 b(0)90 b(1)179 b(1)p 1749 715 V 88 719 1663 4 v 88 736 V -17 785 a Ff(D)p 86 808 4 75 v 92 w Fe(0)90 b(0)g(1)g(1)g(1)179 b(0)359 b(0)270 b(1)89 b(1)p 1749 808 V 88 811 1663 4 v -152 1031 a Fd(Figure)33 b(1:)46 b(The)32 b(binary)h(tree)g Fr(T)44 b Fd(for)33 b(the)g(case)g Fr(w)r Fd(=4,)h Fr(S)c Fs(=)-152 1118 y Fv(f)p Fs(3)p Fr(;)14 b Fs(6)p Fr(;)g Fs(7)p Fr(;)f Fs(12)p Fr(;)h Fs(14)p Fv(g)p Fd(,)30 b(and)f Fr(H)e Fs(=)21 b(2)p Fd(.)39 b(The)28 b(set)h Fr(S)k Fd(induces)c(the)g(sets)-152 1206 y Fr(P)35 b Fs(=)24 b Fv(f)p Fs(1)p Fr(;)14 b Fs(2)p Fr(;)f Fs(3)p Fr(;)h Fs(4)p Fr(;)f Fs(5)p Fr(;)h Fs(7)p Fr(;)f Fs(9)p Fr(;)h Fs(11)p Fr(;)g Fs(14)p Fr(;)g Fs(15)p Fv(g)32 b Fd(and)g Fr(V)40 b Fs(=)24 b Fv(f)p Fs(1)p Fr(;)14 b Fs(2)p Fr(;)g Fs(7)p Fr(;)f Fs(11)p Fv(g)p Fd(,)33 b(and)-152 1293 y(the)d(t)n(w)n(o)f(sparse)g(arra)n(ys)h Fr(B)j Fd(and)d Fr(D)r Fd(.)-152 1530 y Fs(de\014ned)e(b)n(y)h Fr(P)11 b Fs(,)30 b(w)n(e)f(ha)n(v)n(e)g Fv(j)p Fr(V)17 b Fv(j)28 b Fs(=)f Fr(n)19 b Fv(\000)h Fs(1,)30 b(if)g(b)r(oth)f(c)n(hildren)g (of)h(the)-152 1617 y(ro)r(ot)d(are)f(in)g Fr(P)36 b Fs(and)25 b(otherwise)i Fv(j)p Fr(V)17 b Fv(j)22 b Fs(=)f Fr(n)p Fs(.)-152 1791 y(T)-6 b(o)31 b(answ)n(er)f(a)h(query)e Fn(FindAny)q Fs(\()p Fr(a;)12 b(b)p Fs(\),)31 b(the)f(basic)h(idea)f (is)h(to)f(com-)-152 1878 y(pute)h(the)f(nearest)i(common)g(ancestor)g Fr(v)i Fs(of)d(the)g(no)r(des)g Fr(a)g Fs(and)g Fr(b)-152 1965 y Fs(in)h(constan)n(t)g(time.)53 b(If)32 b Fr(S)25 b Fv(\\)d Fs([)p Fr(a;)13 b(b)p Fs(])32 b Fv(6)p Fs(=)f Fv(;)p Fs(,)j(then)d(either)h(max)12 b Fr(S)1684 1977 y Fc(left)p Fk(\()p Fq(v)r Fk(\))-152 2053 y Fs(or)29 b(min)12 b Fr(S)132 2065 y Fc(right)q Fk(\()p Fq(v)r Fk(\))349 2053 y Fs(is)28 b(con)n(tained)g(in)g([)p Fr(a;)13 b(b)p Fs(],)29 b(since)g([)p Fr(a;)13 b(b)p Fs(])28 b(is)h(con)n (tained)-152 2140 y(within)g(the)e(in)n(terv)l(al)h(spanned)f(b)n(y)g Fr(v)s Fs(,)i(and)f Fr(a)f Fs(and)h Fr(b)g Fs(are)g(spanned)-152 2227 y(b)n(y)40 b(the)g(left)i(and)e(righ)n(t)h(c)n(hild)g(of)g Fr(v)j Fs(resp)r(ectiv)n(ely)-6 b(.)79 b(Otherwise)-152 2314 y(whatev)n(er)31 b(computation)g(w)n(e)g(do)g(cannot)g(iden)n (tify)f(an)h(in)n(teger)g(in)-152 2401 y Fr(S)12 b Fv(\\)c Fs([)p Fr(a;)14 b(b)p Fs(].)33 b(A)n(t)21 b(most)g Fr(nw)j Fs(no)r(des)d(satisfy)h Fr(S)1079 2409 y Fq(v)1138 2401 y Fv(6)p Fs(=)f Fv(;)p Fs(.)33 b(E.g.)23 b(to)e(compute)-152 2488 y Fn(FindAny)q Fs(\(8)p Fr(;)14 b Fs(13\),)35 b(w)n(e)e(ha)n(v)n (e)f Fr(v)k Fs(=)c(3,)j(max)13 b Fr(S)1148 2500 y Fc(left)o Fk(\()p Fq(v)r Fk(\))1337 2488 y Fs(=)33 b(max)13 b Fr(S)1633 2496 y Fk(6)1700 2488 y Fs(=)p Fv(?)p Fs(,)-152 2576 y(and)29 b(min)13 b Fr(S)189 2588 y Fc(right)q Fk(\()p Fq(v)r Fk(\))405 2576 y Fs(=)27 b(min)13 b Fr(S)680 2584 y Fk(7)742 2576 y Fs(=)27 b(12.)46 b(By)30 b(storing)g(these)f(no)r (des)h(in)-152 2663 y(a)d(sparse)g(arra)n(y)f(together)h(with)g(min)12 b Fr(S)1013 2671 y Fq(v)1077 2663 y Fs(and)25 b(max)13 b Fr(S)1429 2671 y Fq(v)1466 2663 y Fs(,)27 b(w)n(e)g(obtain)-152 2750 y(a)i(data)f(structure)g(using)g(space)g(O\()p Fr(nw)r Fs(\))g(w)n(ords,)i(whic)n(h)e(supp)r(orts)-152 2837 y Fn(FindAny)f Fs(in)e(constan)n(t)g(time.)35 b(In)24 b(the)h(follo)n(wing)j(w)n(e)e(describ)r(e)f(ho)n(w)-152 2924 y(to)h(reduce)g(the)f(space)h(usage)h(of)f(this)g(approac)n(h)g (to)g(O\()p Fr(n)p Fs(\))f(w)n(ords.)-152 3099 y(W)-6 b(e)33 b(consider)h(the)f(tree)h Fr(T)44 b Fs(as)34 b(partitioned)f(in) n(to)h(a)g(set)f(of)h(la)n(y)n(ers)-152 3186 y(eac)n(h)i(consisting)h (of)f Fr(H)41 b Fs(consecutiv)n(e)36 b(lev)n(els)g(of)h Fr(T)11 b Fs(,)38 b(where)e Fr(H)43 b Fs(=)-152 3287 y(1)33 b Fv(")g Fs(\(msb\()p Fr(w)r Fs(\))21 b Fv(#)h Fs(1\),)35 b(i.e.)e Fr(H)38 b Fs(=)33 b(2)842 3255 y Fj(b)881 3235 y Fb(1)p 881 3243 29 3 v 881 3276 a(2)929 3255 y Fk(log)12 b Fq(w)r Fj(c)1098 3287 y Fs(,)34 b(or)f(equiv)l(alen) n(tly)e Fr(H)38 b Fs(is)-152 3374 y(the)30 b(p)r(o)n(w)n(er)h(of)g(t)n (w)n(o,)i(where)716 3343 y Fk(1)p 716 3357 31 4 v 716 3399 a(2)756 3320 y Fv(p)p 820 3320 58 4 v 54 x Fr(w)e(<)e(H)35 b Fv(\024)1183 3320 y(p)p 1247 3320 V 54 x Fr(w)r Fs(.)49 b(F)-6 b(or)30 b(a)h(no)r(de)f Fr(u)p Fs(,)-152 3461 y(w)n(e)k(let)g Fr(\031)s Fs(\()p Fr(u)p Fs(\))f(denote)g(the)g (nearest)h(ancestor)g Fr(z)i Fs(of)e Fr(u)p Fs(,)i(suc)n(h)d(that)-152 3548 y(depth)o(\()p Fr(z)s Fs(\))21 b(mo)r(d)h Fr(H)29 b Fs(=)23 b(0.)39 b(If)27 b(depth)o(\()p Fr(u)p Fs(\))22 b(mo)r(d)f Fr(H)29 b Fs(=)24 b(0,)k(then)e Fr(\031)s Fs(\()p Fr(u)p Fs(\))d(=)-152 3635 y Fr(u)p Fs(.)55 b(Since)33 b Fr(H)k Fs(is)c(a)g(p)r(o)n(w)n(er)g(of)g(2,)i(w)n(e)e(can)g(compute)f Fr(x)21 b Fs(mo)r(d)g Fr(H)38 b Fs(as)-152 3723 y Fr(x)c Fv(^)h Fs(\()p Fr(H)27 b Fv(\000)21 b Fs(1\),)34 b(i.e.)g(for)f(an)f (in)n(ternal)h(no)r(de)f Fr(u)p Fs(,)j(w)n(e)d(can)h(compute)-152 3810 y Fr(\031)s Fs(\()p Fr(u)p Fs(\))25 b(=)h Fr(u)g Fv(#)g Fs(\(depth)o(\()p Fr(u)p Fs(\))j Fv(^)h Fs(\()p Fr(H)23 b Fv(\000)17 b Fs(1\)\).)42 b(E.g.)29 b(in)g(Figure)f(1,)i Fr(H)h Fs(=)25 b(2)-152 3897 y(and)h Fr(\031)s Fs(\(9\))21 b(=)g(9)h Fv(#)f Fs(\(3)30 b Fv(^)g Fs(\(2)18 b Fv(\000)f Fs(1\)\))k(=)g(9)h Fv(#)g Fs(1)f(=)g(4.)-152 4071 y(The)37 b(data)g(structure)g(for)g(the)g(set)g Fr(S)k Fs(consists)d(of)f(three) g(sparse)-152 4158 y(arra)n(ys)30 b Fr(B)t Fs(,)g Fr(D)r Fs(,)h(and)e Fr(V)16 b Fs(,)31 b(eac)n(h)e(b)r(eing)g(implemen)n(ted)g (according)i(to)-152 4246 y(Corollary)h(1.)49 b(The)30 b(arra)n(ys)h Fr(B)j Fs(and)c Fr(D)i Fs(will)g(b)r(e)e(used)g(to)g (\014nd)f(the)-152 4333 y(nearest)d(ancestor)h(of)f(a)g(no)r(de)g(in)g Fr(P)36 b Fs(that)25 b(is)i(a)f(branc)n(hing)f(no)r(de.)-107 4571 y Fr(B)g Fs(:)38 b(A)27 b(bit-v)n(ector)h(that)f(for)i(eac)n(h)f (no)r(de)g Fr(z)j Fs(in)c Fr(P)39 b Fs(with)28 b Fr(\031)s Fs(\()p Fr(z)s Fs(\))c(=)h Fr(z)35 4658 y Fs(\(or)c(equiv)l(alen)n(tly) e(depth)o(\()p Fr(z)s Fs(\))i(mo)r(d)h Fr(H)k Fs(=)c(0\),)g(has)e Fr(B)t Fs([)p Fr(z)s Fs(])i(=)f(1)g(if,)35 4745 y(and)k(only)h(if,)h (there)e(exists)h(a)g(no)r(de)g Fr(u)g Fs(in)f Fr(V)43 b Fs(with)26 b Fr(\031)s Fs(\()p Fr(u)p Fs(\))20 b(=)i Fr(z)s Fs(.)-110 4887 y Fr(D)h Fs(:)38 b(A)25 b(v)n(ector)f(that)h(for) h(eac)n(h)f(no)r(de)g Fr(u)g Fs(in)g Fr(P)35 b Fs(where)25 b Fr(\031)s Fs(\()p Fr(u)p Fs(\))c(=)g Fr(u)k Fs(or)35 4974 y Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])c(=)h(1)f(stores)g (the)f(distance)i(to)e(the)h(nearest)g(ancestor)35 5061 y Fr(v)29 b Fs(in)c Fr(V)43 b Fs(of)26 b Fr(u)p Fs(,)g(i.e.)h Fr(D)r Fs([)p Fr(u)p Fs(])c(=)e(depth)o(\()p Fr(v)s Fs(\))c Fv(\000)f Fs(depth)o(\()p Fr(u)p Fs(\).)-107 5203 y Fr(V)38 b Fs(:)g(A)31 b(v)n(ector)g(that)h(for)g(eac)n(h)f(branc)n(hing)h(no)r (de)f Fr(v)j Fs(in)e Fr(V)48 b Fs(stores)35 5290 y(a)30 b(record)f(with)h(the)f(\014elds:)41 b(left)q(,)30 b(righ)n(t)q(,)g Fr(m)f Fs(and)g Fr(M)8 b Fs(,)30 b(where)35 5378 y Fr(V)17 b Fs([)p Fr(v)s Fs(])p Fr(:m)24 b Fs(=)g(min)13 b Fr(S)564 5386 y Fq(v)628 5378 y Fs(and)26 b Fr(V)17 b Fs([)p Fr(v)s Fs(])p Fr(:M)33 b Fs(=)24 b(max)13 b Fr(S)1337 5386 y Fq(v)1401 5378 y Fs(and)26 b(left)i(\(and)2076 -91 y Fd(Pro)r(c)f Fn(Rep)r(o)n(rt)p Fs(\()p Fr(a;)13 b(b)p Fs(\))2197 -3 y Fr(x)21 b Fs(=)g Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))2197 84 y Fd(if)34 b Fr(x)21 b Fv(6)p Fs(=)p Fv(?)k Fd(then)2319 171 y Fn(Rep)r(o)n(rt)p Fs(\()p Fr(a;)13 b(x)j Fv(\000)h Fs(1\))2319 258 y(output\()p Fr(x)p Fs(\))2319 345 y Fn(Rep)r(o)n(rt)p Fs(\()p Fr(x)f Fs(+)h(1)p Fr(;)d(b)p Fs(\))2076 497 y Fd(Pro)r(c)27 b Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))2197 584 y Fd(if)34 b Fr(a)21 b Fv(\024)g Fr(b)26 b Fd(then)2323 671 y Fr(H)54 b Fs(=)21 b(1)g Fv(")h Fs(\(msb\()p Fr(w)r Fs(\))f Fv(#)h Fs(1\))2337 758 y Fr(d)64 b Fs(=)21 b(msb\()p Fr(a)16 b Fv(\010)h Fr(b)p Fs(\))2335 845 y Fr(u)62 b Fs(=)21 b(\(\(1)g Fv(")h Fs(\()p Fr(w)d Fv(\000)e Fs(1\)\))g(+)g(\()p Fr(a)j Fv(#)i Fs(1\)\))g Fv(#)f Fr(d)2338 933 y(z)67 b Fs(=)21 b Fr(u)g Fv(#)h Fs(\(\()p Fr(w)d Fv(\000)e Fs(1)g Fv(\000)g Fr(d)p Fs(\))29 b Fv(^)h Fs(\()p Fr(H)23 b Fv(\000)17 b Fs(1\)\))2337 1020 y Fr(v)67 b Fs(=)21 b Fr(B)t Fs([)p Fr(z)s Fs(])g(?)h Fr(V)17 b Fs([)p Fr(u)22 b Fv(#)f Fs(D[)p Fr(u)p Fs(])q(])43 b(:)g Fr(V)17 b Fs([)p Fr(z)24 b Fv(#)e Fs(D[)p Fr(z)s Fs(]])2319 1107 y Fd(for)k Fr(x)21 b Fv(2)h(f)13 b Fr(v)s(:)p Fs(left)q Fr(:m;)26 b(v)s(:)p Fs(left)q Fr(:M)t(;)g(v)s(:)p Fs(righ)n(t)q Fr(:m;)g(v)s(:)p Fs(righ)n(t)p Fr(:M)c Fv(g)2441 1194 y Fd(if)33 b Fr(x)21 b Fv(2)h Fs([)p Fr(a;)13 b(b)p Fs(])26 b Fd(then)f(return)i Fr(x)2197 1281 y Fd(return)g Fv(?)2040 1531 y Fd(Figure)j(2:)40 b(Implemen)n(tation)29 b(of)h(the)g(queries)f Fa(Rep)r(o)n(rt)g Fd(and)2040 1618 y Fa(FindAny)q Fd(.)2227 1859 y Fs(righ)n(t)38 b(resp)r(ectiv)n(ely\))g(is)g(a)g(p)r(oin)n(ter)g (to)g(the)g(record)g(of)h(the)2227 1946 y(nearest)31 b(descenden)n(t)f Fr(u)h Fs(in)f Fr(V)47 b Fs(of)32 b Fr(v)h Fs(in)e(the)f(left)h(\(and)f(righ)n(t)2227 2033 y(resp)r(ectiv)n(ely\))k(subtree)g(of)h Fr(v)s Fs(.)60 b(If)34 b(no)g(suc)n(h)g Fr(u)g Fs(exists,)j(then)2227 2121 y Fr(V)17 b Fs([)p Fr(v)s Fs(])p Fr(:)p Fs(left)23 b(=)e Fr(v)29 b Fs(\(resp)r(ectiv)n(ely)c Fr(V)17 b Fs([)p Fr(v)s Fs(])p Fr(:)p Fs(righ)n(t)23 b(=)e Fr(v)s Fs(\).)2040 2364 y(Giv)n(en)k(the)h(ab)r(o)n(v)n(e)f(data)h(structure)f Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))25 b(can)h(b)r(e)g(imple-) 2040 2451 y(men)n(ted)h(b)n(y)f(the)h(co)r(de)g(in)g(Figure)h(2.)40 b(If)27 b Fr(a)c(>)h(b)p Fs(,)k(the)f(query)f(imme-)2040 2538 y(diately)f(returns)f Fv(?)p Fs(.)34 b(Otherwise)26 b(the)e(v)l(alue)h Fr(H)30 b Fs(is)25 b(computed,)g(and)2040 2625 y(the)f(nearest)g(common)g(in)n(ternal)g(ancestor)h Fr(u)f Fs(in)f Fr(T)35 b Fs(of)24 b(the)g(lea)n(v)n(es)g Fr(a)2040 2712 y Fs(and)e Fr(b)g Fs(is)g(computed)g(together)g(with)g Fr(z)j Fs(=)c Fr(\031)s Fs(\()p Fr(u)p Fs(\).)32 b(Using)23 b Fr(B)t Fs(,)f Fr(D)r Fs(,)i(and)2040 2799 y Fr(V)38 b Fs(w)n(e)22 b(then)f(compute)g(the)g(nearest)h(common)g(ancestor)h (branc)n(hing)2040 2887 y(no)r(de)k Fr(v)i Fs(in)e Fr(V)44 b Fs(of)27 b(the)f(lea)n(v)n(es)i Fr(a)e Fs(and)g Fr(b)p Fs(.)38 b(In)26 b(the)g(computation)h(of)h Fr(v)2040 2974 y Fs(an)j(error)g(ma)n(y)g(b)r(e)f(in)n(tro)r(duced,)i(since)f (the)g(arra)n(ys)g Fr(B)t Fs(,)h Fr(D)h Fs(and)e Fr(V)2040 3061 y Fs(are)24 b(only)g(w)n(ell)g(de\014ned)f(for)h(a)g(subset)g(of)g (the)g(no)r(des)f(of)i Fr(T)11 b Fs(.)33 b(Ho)n(w)n(ev-)2040 3148 y(er,)28 b(as)g(w)n(e)f(sho)n(w)h(next,)f(this)g(only)g(happ)r (ens)g(when)g Fr(S)22 b Fv(\\)c Fs([)p Fr(a;)13 b(b)p Fs(])24 b(=)g Fv(;)p Fs(.)2040 3235 y(Finally)i(w)n(e)g(c)n(hec)n(k)e (if)i(one)f(of)h(the)f Fr(m)g Fs(and)g Fr(M)33 b Fs(v)l(alues)26 b(of)g Fr(v)s(:)p Fs(left)g(and)2040 3323 y Fr(v)s(:)p Fs(righ)n(t)h(is)f(in)g([)p Fr(a;)13 b(b)p Fs(].)36 b(If)26 b(one)h(of)f(the)g(four)h(v)l(alues)f(b)r(elongs)h(to)f([)p Fr(a;)13 b(b)p Fs(],)2040 3410 y(w)n(e)26 b(return)f(suc)n(h)g(a)h(v)l (alue.)35 b(Otherwise)26 b Fv(?)f Fs(is)i(returned.)2040 3584 y(As)38 b(an)g(example)g(consider)h(the)e(query)g Fn(FindAny)q Fs(\(8)p Fr(;)14 b Fs(13\))38 b(for)h(the)2040 3671 y(set)d(in)f(Figure)h(1.)63 b(Here)35 b Fr(d)i Fs(=)g(2,)h Fr(u)g Fs(=)f(\(8)17 b(+)g(4\))37 b Fv(#)h Fs(3)g(=)e(3,)j Fr(z)h Fs(=)2040 3758 y(3)35 b Fv(#)g Fs(\(\(3)17 b Fv(\000)g Fs(2\))30 b Fv(^)g Fs(1\))35 b(=)f(3)h Fv(#)g Fs(1)g(=)f(1.)59 b(Since)33 b Fr(B)t Fs([1])j(=)e(1,)i(w)n(e)e(ha)n(v)n(e)2040 3846 y Fr(D)r Fs([)p Fr(u)p Fs(])24 b(=)e(1,)28 b(and)e Fr(v)f Fs(=)e Fr(V)17 b Fs([)p Fr(u)23 b Fv(#)g Fr(D)r Fs([)p Fr(u)p Fs(])q(])g(=)g Fr(V)16 b Fs([3)24 b Fv(#)f Fs(1])g(=)g Fr(V)16 b Fs([1].)38 b(The)27 b(four)2040 3933 y(v)l(alues)f(tested)g(are)h(the)e Fr(m)h Fs(and)g Fr(M)34 b Fs(v)l(alues)26 b(of)h Fr(V)17 b Fs([2])27 b(and)e Fr(V)17 b Fs([7],)27 b(i.e.)2040 4020 y Fv(f)p Fs(3)p Fr(;)14 b Fs(7)p Fr(;)g Fs(12)p Fr(;)f Fs(14)p Fv(g)p Fs(,)28 b(and)d(w)n(e)h(return)f(12.)2123 4263 y Fi(Theorem)41 b Fs(4.)d Fm(The)20 b(data)h(structur)l(e)h(supp)l (orts)g Fn(FindAny)f Fm(in)e(c)l(on-)2040 4350 y(stant)j(time)f(and)g Fn(Rep)r(o)n(rt)g Fm(in)f(time)h Fs(O\()p Fr(k)r Fs(\))p Fm(,)g(wher)l(e)h Fr(k)h Fm(is)e(the)g(numb)l(er)h(of)2040 4437 y(elements)29 b(r)l(ep)l(orte)l(d.)39 b(The)29 b(data)g(structur)l (e)i(r)l(e)l(quir)l(es)f(sp)l(ac)l(e)f Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))2040 4524 y Fm(wor)l(ds.)2123 4767 y Fi(Pr)n(oof.)39 b Fs(The)31 b(correctness)g(of)g Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))30 b(can)g(b)r(e)g(seen)h(as)2040 4855 y(follo)n(ws:)61 b(If)38 b Fr(S)29 b Fv(\\)d Fs([)p Fr(a;)13 b(b)p Fs(])41 b(=)g Fv(;)p Fs(,)h(then)37 b(the)g(algorithm)i (returns)f Fv(?)p Fs(,)2040 4942 y(since)c(b)r(efore)h(returning)e(an)h (elemen)n(t)f(there)h(is)g(a)g(c)n(hec)n(k)f(to)h(\014nd)2040 5029 y(if)c(the)f(elemen)n(t)g(is)h(con)n(tained)f(in)g(the)g(in)n (terv)l(al)g([)p Fr(a;)13 b(b)p Fs(].)45 b(Otherwise)2040 5116 y Fr(S)21 b Fv(\\)d Fs([)p Fr(a;)13 b(b)p Fs(])21 b Fv(6)p Fs(=)g Fv(;)p Fs(.)2040 5290 y(If)j Fr(a)d Fs(=)g Fr(b)g Fv(2)h Fr(S)t Fs(,)i(then)f(b)n(y)g(F)-6 b(act)24 b(1)g(the)f(computed)g Fr(u)f Fs(=)f(2)3658 5259 y Fq(w)q Fj(\000)p Fk(1)3800 5290 y Fs(+)12 b Fr(a)22 b Fv(#)f Fs(1)2040 5378 y(is)31 b(the)f(paren)n(t)g(of)h Fr(a)g Fs(and)f Fr(z)i Fs(=)d Fr(u)g Fv(#)h Fs(\(\()p Fr(w)19 b Fv(\000)e Fs(1\))30 b Fv(^)g Fs(\()p Fr(H)22 b Fv(\000)17 b Fs(1\)\))30 b(=)f Fr(u)g Fv(#)p eop %%Page: 5 5 5 4 bop -152 -69 a Fs(\(depth)o(\()p Fr(u)p Fs(\))21 b(mo)r(d)h Fr(H)6 b Fs(\))41 b(=)h Fr(\031)s Fs(\()p Fr(u)p Fs(\).)71 b(W)-6 b(e)37 b(no)n(w)i(argue)f(that)g Fr(v)j Fs(is)d(the)-152 19 y(nearest)23 b(ancestor)g(no)r(de)g(of)g (the)f(leaf)i Fr(a)e Fs(that)g(is)h(a)f(branc)n(hing)g(no)r(de.)-152 106 y(If)28 b Fr(S)-26 118 y Fq(\031)r Fk(\()p Fq(u)p Fk(\))125 106 y Fs(=)c Fv(f)p Fr(a)p Fv(g)p Fs(,)29 b(then)d Fr(T)597 118 y Fq(\031)r Fk(\()p Fq(u)p Fk(\))742 106 y Fv(\\)19 b Fr(V)41 b Fs(=)24 b Fv(;)k Fs(and)f Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])d(=)g(0,)29 b(and)e Fr(v)-152 193 y Fs(is)g(computed)e(as)i Fr(V)17 b Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\))22 b Fv(#)g Fr(D)r Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])q(],)27 b(whic)n(h)f(b)n(y)f (de\014nition)h(of)g Fr(D)-152 280 y Fs(is)37 b(the)f(nearest)h (ancestor)g(of)g Fr(\031)s Fs(\()p Fr(u)p Fs(\))e(that)h(is)h(a)g (branc)n(hing)e(no)r(de.)-152 367 y(Otherwise)19 b Fv(j)p Fr(S)272 379 y Fq(\031)r Fk(\()p Fq(u)p Fk(\))399 367 y Fv(j)j(\025)f Fs(2,)g(implying)d Fr(T)958 379 y Fq(\031)r Fk(\()p Fq(u)p Fk(\))1088 367 y Fv(\\)s Fr(V)38 b Fv(6)p Fs(=)21 b Fv(;)e Fs(and)f Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])j(=)-152 454 y(1.)39 b(By)27 b(de\014nition)g Fr(D)r Fs([)p Fr(u)p Fs(])i(is)e(then)g(de\014ned)f(suc)n(h)g(that)h Fr(V)17 b Fs([)p Fr(u)24 b Fv(#)g Fr(D)r Fs([)p Fr(u)p Fs(])r(])-152 542 y(is)32 b(the)f(nearest)g(ancestor)h(of)g Fr(u)g Fs(that)e(is)i(a)f(branc)n(hing)g(no)r(de.)51 b(W)-6 b(e)-152 629 y(conclude)25 b(that)f(the)g(computed)f Fr(v)k Fs(is)e(the)f(nearest)h(ancestor)g(of)g(the)-152 716 y(leaf)i Fr(a)e Fs(that)g(is)h(a)g(branc)n(hing)f(no)r(de.)34 b(If)26 b(the)f(leaf)h Fr(a)f Fs(is)h(con)n(tained)g(in)-152 803 y(the)e(left)g(subtree)g(of)g Fr(v)s Fs(,)h(then)e Fr(v)s(:)p Fs(left)f(=)f Fr(v)27 b Fs(and)c Fr(v)s(:m)e Fs(=)h Fr(a)p Fs(.)33 b(It)23 b(follo)n(ws)-152 890 y(that)i Fr(v)s(:)p Fs(left)q Fr(:m)c Fs(=)h Fr(a)p Fs(.)33 b(Similarly)-6 b(,)26 b(if)g(the)f(leaf)h Fr(a)f Fs(is)g(con)n(tained)g(in)g(the)-152 977 y(righ)n(t)h(subtree)g(of)g Fr(v)s Fs(,)g(then)f Fr(v)s(:)p Fs(righ)n(t)p Fr(:M)30 b Fs(=)21 b Fr(a)26 b Fs(.)-152 1152 y(F)-6 b(or)41 b(the)g(case)h(where)f Fr(S)31 b Fv(\\)d Fs([)p Fr(a;)13 b(b)p Fs(])47 b Fv(6)p Fs(=)f Fv(;)c Fs(and)e Fr(a)47 b(<)f(b)p Fs(,)f(w)n(e)c(ha)n(v)n(e)-152 1239 y(b)n(y)35 b(F)-6 b(act)35 b(1)g(that)g(the)g(computed)g(no)r(de)g Fr(u)g Fs(is)h(the)f(nearest)h(com-)-152 1326 y(mon)28 b(ancestor)h(of)f(the)g(lea)n(v)n(es)g Fr(a)g Fs(and)f Fr(b)p Fs(,)i(where)f(depth)o(\()p Fr(u)p Fs(\))d(=)g Fr(w)20 b Fv(\000)-152 1413 y Fs(\()p Fr(d)i Fs(+)f(1\),)35 b(and)d(that)g Fr(z)j Fs(=)e Fr(u)g Fv(#)g Fs(\(\()p Fr(w)19 b Fv(\000)d Fs(1)i Fv(\000)f Fr(d)p Fs(\))29 b Fv(^)h Fs(\()p Fr(H)23 b Fv(\000)16 b Fs(1\)\))33 b(=)g Fr(u)f Fv(#)-152 1500 y Fs(\(depth)o(\()p Fr(u)p Fs(\))21 b(mo)r(d)h Fr(H)6 b Fs(\))25 b(=)h Fr(\031)s Fs(\()p Fr(u)p Fs(\).)43 b(Similarly)30 b(to)e(the)h(case)g Fr(a)d Fs(=)g Fr(b)p Fs(,)j(w)n(e)-152 1588 y(ha)n(v)n(e)k(that)f(the)g (computed)h(no)r(de)g Fr(v)i Fs(is)f(the)e(nearest)h(ancestor)h(of)-152 1675 y(the)i(no)r(de)f Fr(u)h Fs(that)f(is)h(a)g(branc)n(hing)f(no)r (de.)65 b(If)35 b Fr(v)41 b Fs(=)d Fr(u)p Fs(,)g(i.e.)f Fr(v)h Fs(is)-152 1762 y(the)d(nearest)h(common)g(ancestor)g(of)h(the)e (lea)n(v)n(es)g Fr(a)g Fs(and)h Fr(b)p Fs(,)h(then)-152 1849 y Fr(S)-105 1861 y Fc(left)p Fk(\()p Fq(v)r Fk(\))75 1849 y Fv(\\)23 b Fs([)p Fr(a;)13 b(b)p Fs(])36 b Fv(6)p Fs(=)f Fv(;)g Fs(or)g Fr(S)653 1861 y Fc(right)p Fk(\()p Fq(v)r Fk(\))864 1849 y Fv(\\)23 b Fs([)p Fr(a;)13 b(b)p Fs(])36 b Fv(6)p Fs(=)g Fv(;)p Fs(.)61 b(If)34 b Fv(j)p Fr(S)1493 1861 y Fc(left)p Fk(\()p Fq(v)r Fk(\))1650 1849 y Fv(j)i(\025)f Fs(2)-152 1936 y(and)27 b Fr(S)46 1948 y Fc(left)o Fk(\()p Fq(v)r Fk(\))220 1936 y Fv(\\)17 b Fs([)p Fr(a;)d(b)p Fs(])23 b Fv(6)p Fs(=)f Fv(;)p Fs(,)28 b(then)d Fr(v)s(:)p Fs(left)f Fv(6)p Fs(=)f Fr(v)29 b Fs(and)e Fr(v)s(:)p Fs(left)q Fr(:M)k Fv(2)23 b Fs([)p Fr(a;)13 b(b)p Fs(].)-152 2023 y(If)31 b Fv(j)p Fr(S)-2 2035 y Fc(left)p Fk(\()p Fq(v)r Fk(\))155 2023 y Fv(j)f Fs(=)g(1)h(and)f Fr(S)566 2035 y Fc(left)p Fk(\()p Fq(v)r Fk(\))743 2023 y Fv(\\)21 b Fs([)p Fr(a;)13 b(b)p Fs(])30 b Fv(6)p Fs(=)g Fv(;)p Fs(,)j(then)d Fr(v)s(:)p Fs(left)h(=)e Fr(v)34 b Fs(and)-152 2111 y Fr(v)s(:)p Fs(left)q Fr(:m)h Fv(2)g Fs([)p Fr(a;)13 b(b)p Fs(].)59 b(Similarly)34 b(if)h Fr(S)918 2123 y Fc(right)p Fk(\()p Fq(v)r Fk(\))1129 2111 y Fv(\\)22 b Fs([)p Fr(a;)13 b(b)p Fs(])35 b Fv(6)p Fs(=)g Fv(;)p Fs(,)h(then)d(ei-)-152 2198 y(ther)39 b Fr(v)s(:)p Fs(righ)n(t)p Fr(:m)44 b Fv(2)g Fs([)p Fr(a;)13 b(b)p Fs(])39 b(or)g Fr(v)s(:)p Fs(righ)n(t)q Fr(:M)52 b Fv(2)44 b Fs([)p Fr(a;)13 b(b)p Fs(].)75 b(Finally)39 b(w)n(e)-152 2285 y(consider)f(the)e(case)i(where)g Fr(v)43 b Fv(6)p Fs(=)c Fr(u)p Fs(,)i(i.e.)d(either)f Fr(u)j Fv(2)g Fr(T)1579 2297 y Fc(left)p Fk(\()p Fq(v)r Fk(\))1772 2285 y Fs(or)-152 2372 y Fr(u)31 b Fv(2)h Fr(T)51 2384 y Fc(right)p Fk(\()p Fq(v)r Fk(\))239 2372 y Fs(.)52 b(If)31 b Fr(u)g Fv(2)h Fr(T)597 2384 y Fc(left)o Fk(\()p Fq(v)r Fk(\))784 2372 y Fs(and)f Fv(j)p Fr(S)1007 2384 y Fc(left)p Fk(\()p Fq(v)r Fk(\))1164 2372 y Fv(j)g Fs(=)g(1,)i(then)e Fr(v)s(:)p Fs(left)h(=)-152 2459 y Fr(v)43 b Fs(and)d Fr(S)139 2471 y Fc(left)p Fk(\()p Fq(v)r Fk(\))341 2459 y Fs(=)46 b Fv(f)p Fr(v)s(:m)p Fv(g)g Fs(=)f Fv(f)p Fr(v)s(:)p Fs(left)r Fr(:m)p Fv(g)h(\022)f Fs([)p Fr(a;)13 b(b)p Fs(].)79 b(Similarly)-152 2547 y(if)40 b Fr(u)45 b Fv(2)f Fr(T)161 2559 y Fc(right)p Fk(\()p Fq(v)r Fk(\))389 2547 y Fs(and)39 b Fv(j)p Fr(S)620 2559 y Fc(right)p Fk(\()p Fq(v)r Fk(\))808 2547 y Fv(j)45 b Fs(=)f(1,)f(then)c Fr(v)s(:)p Fs(righ)n(t)44 b(=)g Fr(v)e Fs(and)-152 2634 y Fr(S)-105 2646 y Fc(right)q Fk(\()p Fq(v)r Fk(\))125 2634 y Fs(=)f Fv(f)p Fr(v)s(:M)8 b Fv(g)42 b Fs(=)f Fv(f)p Fr(v)s(:)p Fs(righ)n(t)q Fr(:M)8 b Fv(g)42 b(\022)f Fs([)p Fr(a;)13 b(b)p Fs(].)70 b(If)38 b Fr(u)j Fv(2)h Fr(T)1685 2646 y Fc(left)o Fk(\()p Fq(v)r Fk(\))-152 2721 y Fs(and)26 b Fv(j)p Fr(S)66 2733 y Fc(left)p Fk(\()p Fq(v)r Fk(\))223 2721 y Fv(j)c(\025)g Fs(2,)27 b(then)e Fr(T)654 2730 y Fq(v)r(:)p Fk(left)824 2721 y Fs(is)h(either)g(a)h(subtree)f(of)g Fr(T)1586 2733 y Fc(left)p Fk(\()p Fq(u)p Fk(\))1772 2721 y Fs(or)-152 2808 y Fr(T)-107 2820 y Fc(right)q Fk(\()p Fq(u)p Fk(\))86 2808 y Fs(,)34 b(implying)f(that)f Fr(v)s(:)p Fs(left)r Fr(:M)41 b Fv(2)33 b Fs([)p Fr(a;)13 b(b)p Fs(])33 b(or)g Fr(v)s(:)p Fs(left)q Fr(:m)g Fv(2)g Fs([)p Fr(a;)14 b(b)p Fs(])-152 2895 y(resp)r(ectiv)n(ely)-6 b(.)34 b(Similarly)25 b(if)g Fr(u)c Fv(2)h Fr(T)867 2907 y Fc(right)p Fk(\()p Fq(v)r Fk(\))1079 2895 y Fs(and)i Fv(j)p Fr(S)1295 2907 y Fc(right)q Fk(\()p Fq(v)r Fk(\))1484 2895 y Fv(j)d(\025)g Fs(2,)k(then)-152 2982 y(either)h Fr(v)s(:)p Fs(righ)n(t)q Fr(:M)k Fv(2)21 b Fs([)p Fr(a;)13 b(b)p Fs(])26 b(or)g Fr(v)s(:)p Fs(righ)n(t)q Fr(:m)21 b Fv(2)g Fs([)p Fr(a;)14 b(b)p Fs(].)-152 3157 y(W)-6 b(e)27 b(conclude)g(that)g(if)g Fr(S)c Fv(\\)18 b Fs([)p Fr(a;)13 b(b)p Fs(])24 b Fv(6)p Fs(=)f Fv(;)p Fs(,)28 b(then)e Fn(FindAny)i Fs(returns)f(an)-152 3244 y(elemen)n(t)f(in)g Fr(S)21 b Fv(\\)c Fs([)p Fr(a;)c(b)p Fs(].)-152 3418 y(The)21 b(fact)f(that)g Fn(FindAny)h Fs(tak)n(es)f(constan)n(t)g(time) h(follo)n(ws)h(from)f(The-)-152 3505 y(orem)35 b(1)g(and)f(Corollary)j (1,)g(since)e(only)f(a)h(constan)n(t)g(n)n(um)n(b)r(er)e(of)-152 3593 y(b)r(o)r(olean)d(op)r(erations)h(and)d(arithmetic)i(op)r (erations)g(is)f(p)r(erformed)-152 3680 y(plus)g(t)n(w)n(o)g(calls)h (to)f(msb)f(and)g(three)h(sparse)g(arra)n(y)g(lo)r(okups.)44 b(The)-152 3767 y(correctness)25 b(of)f Fn(Rep)r(o)n(rt)g Fs(and)f(the)g(time)h(O\()p Fr(k)r Fs(\))f(b)r(ound)g(follo)n(ws)j (from)-152 3854 y(Lemma)g(1.)-152 4028 y(The)35 b(space)f(required)g(b) n(y)e(the)i(data)g(structure)g(dep)r(ends)f(on)h(the)-152 4116 y(size)28 b(required)f(for)g(the)g(three)g(sparse)g(arra)n(ys)h Fr(B)t Fs(,)f Fr(D)r Fs(,)h(and)e Fr(V)17 b Fs(.)39 b(The)-152 4203 y(n)n(um)n(b)r(er)d(of)h(in)n(ternal)g(lev)n(els)g(of)h Fr(T)46 b Fs(with)37 b(depth)21 b(mo)r(d)g Fr(H)45 b Fs(=)39 b(0)e(is)-152 4290 y Fv(d)p Fr(w)r(=H)6 b Fv(e)p Fs(,)25 b(and)g(therefore)g(the)f(n)n(um)n(b)r(er)g(of)h(initialized)h (en)n(tries)f(in)f Fr(B)-152 4377 y Fs(is)34 b(at)f(most)h Fr(n)p Fv(d)p Fr(w)r(=H)6 b Fv(e)34 b Fs(=)g(O\()p Fr(n)773 4323 y Fv(p)p 837 4323 58 4 v 54 x Fr(w)r Fs(\).)56 b(Similarly)-6 b(,)36 b(the)d(n)n(um)n(b)r(er)f(of)-152 4464 y(initialized)26 b(en)n(tries)f(in)g Fr(D)i Fs(due)d(to)h Fr(\031)s Fs(\()p Fr(u)p Fs(\))c(=)g Fr(u)k Fs(is)g(at)g(most)g Fr(n)p Fv(d)p Fr(w)r(=H)6 b Fv(e)p Fs(.)-152 4552 y(F)-6 b(or)26 b(the)f(n)n(um)n(b)r(er)g(of)h(initialized)h(en)n(tries)f(in)g Fr(D)i Fs(due)d(to)h Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])21 b(=)-152 4639 y(1,)41 b(w)n(e)d(observ)n(e)g(that)f (the)g(subtree)g Fr(\034)996 4647 y Fq(z)1069 4639 y Fs(of)h(heigh)n(t)g Fr(H)43 b Fs(ro)r(oted)38 b(at)-152 4726 y Fr(z)33 b Fs(=)c Fr(\031)s Fs(\()p Fr(u)p Fs(\))h(b)n(y)g (de\014nition)g(con)n(tains)h(at)g(least)h(one)f(no)r(de)f(from)i Fr(V)17 b Fs(.)-152 4813 y(If)29 b Fv(j)p Fr(\034)-17 4821 y Fq(z)38 4813 y Fv(\\)19 b Fr(V)e Fv(j)26 b Fs(=)g Fr(s)p Fs(,)j(then)f Fr(\034)601 4821 y Fq(z)665 4813 y Fs(has)h(at)f(most)h Fr(s)19 b Fs(+)g(1)29 b(lea)n(v)n(es)g(whic)n(h) f(are)-152 4900 y(no)r(des)f(in)f Fr(P)11 b Fs(,)26 b(and)f(w)n(e)i(ha) n(v)n(e)e Fv(j)p Fr(\034)757 4908 y Fq(z)811 4900 y Fv(\\)17 b Fr(P)11 b Fv(j)22 b(\024)g Fs(\()p Fr(s)17 b Fs(+)g(1\))p Fr(H)28 b Fv(\024)22 b Fs(2)p Fr(H)6 b(s)p Fs(.)35 b(Since)-152 4987 y Fr(\034)-118 4995 y Fq(z)-47 4987 y Fs(con)n(tributes)g(to)g Fr(B)k Fs(with)c(at)g(most)h(2)p Fr(H)6 b Fv(j)p Fr(\034)1210 4995 y Fq(z)1269 4987 y Fv(\\)24 b Fr(V)16 b Fv(j)36 b Fs(en)n(tries)f(and)-152 5075 y Fv(j)p Fr(V)18 b Fv(j)25 b(\024)f Fr(n)p Fs(,)29 b(the)f(total)h(n)n(um)n(b)r(er)d(of)j (initialized)g(en)n(tries)g(con)n(tributed)-152 5162 y(to)f Fr(B)k Fs(due)27 b(to)h Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])d(=)f(1)k(is)h(b)r(ounded)d(b)n(y)h(2)p Fr(H)6 b(n)p Fs(.)41 b(The)28 b(n)n(um)n(b)r(er)-152 5249 y(of)35 b(initialized)g(en)n(tries)f(in)f Fr(B)38 b Fs(is)c(therefore)g(b)r(ounded)f(b)n(y)g(2)p Fr(H)6 b(n)22 b Fs(+)-152 5336 y Fr(n)p Fv(d)p Fr(w)r(=H)7 b Fv(e)30 b Fs(=)h(O\()p Fr(n)385 5282 y Fv(p)p 449 5282 V 54 x Fr(w)r Fs(\).)51 b(Finally)-6 b(,)33 b(b)n(y)d(de\014nition,)j Fr(V)48 b Fs(con)n(tains)32 b(at)2040 -69 y(most)26 b Fr(n)g Fs(initialized)h(en)n(tries.)2040 106 y(Eac)n(h)i(en)n(try)f(of) h Fr(B)t Fs(,)g Fr(D)r Fs(,)i(and)d Fr(V)45 b Fs(requires)29 b(space:)41 b(1,)30 b Fv(d)p Fs(log)15 b Fr(w)r Fv(e)p Fs(,)30 b(and)2040 193 y(O\()p Fr(w)r Fs(\))37 b(bits)g(resp)r(ectiv)n (ely)-6 b(,)41 b(and)c Fr(B)t Fs(,)j Fr(D)r Fs(,)h(and)c Fr(V)55 b Fs(ha)n(v)n(e)36 b(O\()p Fr(n)3860 139 y Fv(p)p 3924 139 V 54 x Fr(w)r Fs(\),)2040 280 y(O\()p Fr(n)2176 226 y Fv(p)p 2240 226 V 54 x Fr(w)r Fs(\),)24 b(and)e(at)i(most)f Fr(n)g Fs(initialized)i(en)n(tries)e(resp)r(ectiv)n(ely)-6 b(.)33 b(The)2040 367 y(total)24 b(n)n(um)n(b)r(er)e(of)i(w)n(ords)g (for)g(storing)g(the)f(three)g(sparse)h(arra)n(ys)g(b)n(y)2040 454 y(Corollary)k(1)e(is)g(therefore)h(O\(\(log)14 b Fr(w)20 b Fv(\001)d Fr(n)3234 401 y Fv(p)p 3299 401 V 3299 454 a Fr(w)i Fs(+)e Fr(w)i Fv(\001)e Fr(n)p Fs(\))p Fr(=w)r Fs(\))23 b(=)e(O\()p Fr(n)p Fs(\))2040 542 y(w)n(ords.)54 b(It)32 b(follo)n(ws)i(that)e(the)g(total)h(space)f(required)g(for)h (storing)2040 629 y(the)25 b(data)h(structure)g(is)g(O\()p Fr(n)p Fs(\))f(w)n(ords.)p 3241 579 57 4 v 3241 629 4 50 v 3294 629 V 3241 632 57 4 v 2040 834 a Ft(4.)99 b(CONSTR)m(UCTION) 2040 925 y Fs(In)24 b(this)h(section)g(w)n(e)g(describ)r(e)g(ho)n(w)g (to)g(construct)f(the)g(data)h(struc-)2040 1013 y(ture)g(of)i(the)e (previous)h(section)g(in)g(exp)r(ected)f(time)h(O\()p Fr(n)3705 959 y Fv(p)p 3769 959 58 4 v 54 x Fr(w)r Fs(\).)2123 1268 y Fi(Theorem)41 b Fs(5.)d Fm(Given)33 b(an)g(unor)l(der)l(e)l(d)i (set)e(of)f Fr(n)h Fm(distinct)h(inte-)2040 1355 y(gers)k(e)l(ach)g(of) e Fr(w)j Fm(bits,)g(the)f(r)l(ange)g(r)l(ep)l(orting)g(data)g(structur) l(e)i(in)2040 1442 y(Se)l(ction)29 b(3)e(c)l(an)h(b)l(e)h(c)l (onstructe)l(d)h(in)d(exp)l(e)l(cte)l(d)k(time)c Fs(O\()p Fr(n)3714 1389 y Fv(p)p 3778 1389 V 53 x Fr(w)r Fs(\))p Fm(.)2123 1698 y Fi(Pr)n(oof.)39 b Fs(Initially)27 b Fr(S)j Fs(can)c(b)r(e)g(sorted)g(in)g(space)h(O\()p Fr(n)p Fs(\))f(with)g(the)2040 1785 y(algorithm)19 b(of)f(Thorup)e([23])j(in)e (time)g(O\()p Fr(n)p Fs(\(log)e(log)g Fr(n)p Fs(\))3579 1753 y Fk(2)3614 1785 y Fs(\))21 b(=)g(O\()p Fr(n)3882 1731 y Fv(p)p 3946 1731 V 54 x Fr(w)r Fs(\))2040 1872 y(or)26 b(with)g(the)f(randomized)h(algorithm)h(of)f(Andersson)f Fm(et)j(al.)d Fs([5])i(in)2040 1959 y(exp)r(ected)d(time)g(O\()p Fr(n)13 b Fs(log)i(log)g Fr(n)p Fs(\))22 b(=)f(O\()p Fr(n)3220 1905 y Fv(p)p 3284 1905 V 54 x Fr(w)r Fs(\).)34 b(Therefore)25 b(without)2040 2046 y(loss)37 b(of)g(generalit)n(y)f(w)n (e)g(can)g(assume)g Fr(S)43 b Fs(=)38 b Fv(f)p Fr(a)3474 2054 y Fk(1)3508 2046 y Fr(;)13 b(:)h(:)f(:)g(;)g(a)3720 2054 y Fq(n)3762 2046 y Fv(g)36 b Fs(where)2040 2134 y Fr(a)2081 2142 y Fq(i)2128 2134 y Fr(<)22 b(a)2251 2142 y Fq(i)p Fk(+1)2379 2134 y Fs(for)27 b(1)21 b Fv(\024)g Fr(i)h(<)f(n)p Fs(.)2040 2308 y(W)-6 b(e)31 b(observ)n(e)h(that)g Fr(v)i Fv(2)e Fr(V)49 b Fs(if,)34 b(and)d(only)h(if,)i Fr(v)h Fs(is)d(the)g(ro)r(ot)g(or)g Fr(v)s Fs(,)2040 2395 y(is)f(the)f(nearest)h(common)f(ancestor)h(of)h Fr(a)3282 2403 y Fq(i)3338 2395 y Fs(and)e Fr(a)3533 2403 y Fq(i)p Fk(+1)3666 2395 y Fs(for)h(some)g Fr(i)p Fs(,)2040 2482 y(where)23 b(1)f Fv(\024)f Fr(i)h(<)f(n)p Fs(.)34 b(Similarly)23 b(as)h(for)g(the)e Fn(FindAny)i Fs(query)-6 b(,)22 b(w)n(e)h(can)2040 2569 y(b)n(y)g(F)-6 b(act)24 b(1)g(\014nd)f(the)g(nearest)h(common)h(ancestor)f Fr(v)3566 2577 y Fq(i)3614 2569 y Fv(2)e Fr(V)40 b Fs(induced)2040 2657 y(b)n(y)25 b Fr(a)2188 2665 y Fq(i)2239 2657 y Fs(and)h Fr(a)2430 2665 y Fq(i)p Fk(+1)2558 2657 y Fs(in)g(constan)n(t)g(time)g (b)n(y)e(the)i(expression)2227 2797 y Fr(v)2264 2805 y Fq(i)2312 2797 y Fs(=)21 b(\(\(1)g Fv(")h Fs(\()p Fr(w)d Fv(\000)e Fs(1\)\))g(+)g(\()p Fr(a)3016 2805 y Fq(i)3063 2797 y Fv(#)22 b Fs(1\)\))f Fv(#)h Fs(msb\()p Fr(a)3510 2805 y Fq(i)3553 2797 y Fv(\010)16 b Fr(a)3670 2805 y Fq(i)p Fk(+1)3774 2797 y Fs(\))21 b Fr(:)2040 2937 y Fs(The)35 b(no)r(des)h Fr(v)k Fv(2)d Fr(V)51 b Fs(form)36 b(b)n(y)e(the)h(p)r(oin)n(ters)g Fr(v)s(:)p Fs(left)h(and)f Fr(v)s(:)p Fs(righ)n(t)2040 3024 y(a)29 b(binary)f(tree)g Fr(T)2552 3032 y Fq(V)2605 3024 y Fs(.)43 b(The)28 b(de\014ned)f (sequence)h Fr(v)3454 3032 y Fk(1)3489 3024 y Fr(;)13 b(:)h(:)f(:)g(;)g(v)3697 3032 y Fq(n)p Fj(\000)p Fk(1)3846 3024 y Fs(forms)2040 3111 y(an)32 b(inorder)f(tra)n(v)n(ersal)h(of)h Fr(T)2882 3119 y Fq(V)2935 3111 y Fs(.)52 b(F)-6 b(urthermore)31 b(the)g(no)r(des)g(satisfy)2040 3198 y(heap)h(order)f(with)h(resp)r (ect)g(to)g(their)g(depths)f(in)g Fr(T)11 b Fs(.)52 b(Recall)33 b(that)2040 3285 y(depth)o(\()p Fr(v)2299 3293 y Fq(i)2326 3285 y Fs(\))21 b(=)g(msb\()p Fr(v)2662 3293 y Fq(i)2688 3285 y Fs(\))26 b(can)g(b)r(e)f(computed)g(in)h(constan)n(t)g(time.) 2040 3460 y(The)32 b(inorder)f(together)h(with)g(the)f(heap)g(order)g (on)h(the)e(depth)h(of)2040 3547 y(the)24 b Fr(v)2208 3555 y Fq(i)2258 3547 y Fs(no)r(des)h(uniquely)d(de\014nes)i Fr(T)3078 3555 y Fq(V)3155 3547 y Fs(since)g(these)h(are)f(exactly)g (the)2040 3634 y(constrain)n(ts)30 b(determining)e(the)h(shap)r(e)g(of) g(the)f Fm(tr)l(e)l(aps)37 b Fs(in)n(tro)r(duced)2040 3721 y(b)n(y)23 b(Seidel)i(and)f(Aragon)g([22].)36 b(By)24 b(applying)g(an)g(time)h(O\()p Fr(n)p Fs(\))f(treap)2040 3808 y(construction)35 b(algorithm)i([22])f(to)f Fr(v)3143 3816 y Fk(1)3178 3808 y Fr(;)13 b(:)g(:)g(:)g(;)h(v)3386 3816 y Fq(n)p Fj(\000)p Fk(1)3542 3808 y Fs(w)n(e)35 b(get)g(the)g(re-)2040 3896 y(quired)21 b(left)i(and)f(righ)n(t)g(p)r (oin)n(ters)h(for)g Fr(V)16 b Fs(.)34 b(The)22 b Fr(m)g Fs(and)f Fr(M)31 b Fs(\014elds)22 b(for)2040 3983 y(the)i(no)r(des)g (in)g Fr(V)41 b Fs(can)24 b(b)r(e)g(constructed)f(in)h(a)h(b)r (ottom-up)e(tra)n(v)n(ersal)2040 4070 y(of)k Fr(T)2173 4078 y Fq(V)2251 4070 y Fs(in)f(time)g(O\()p Fr(n)p Fs(\).)2040 4244 y(The)f(information)h(to)f(b)r(e)f(stored)h(in)f(the)g(arra)n(ys)i Fr(B)i Fs(and)c Fr(D)j Fs(can)e(b)n(y)2040 4332 y(another)g(tra)n(v)n (ersal)h(of)f Fr(T)2766 4340 y Fq(V)2844 4332 y Fs(b)r(e)g(constructed) g(in)f(time)h(linear)h(in)f(the)2040 4419 y(n)n(um)n(b)r(er)k(of)i(no)r (des)f(to)g(b)r(e)g(initialized.)49 b(Consider)30 b(an)g(edge)h(\()p Fr(u;)13 b(v)s Fs(\))2040 4506 y(in)25 b Fr(T)2174 4514 y Fq(V)2227 4506 y Fs(,)g(where)h Fr(v)i Fs(is)d(the)g(paren)n(t)f(of)i Fr(u)f Fs(in)g Fr(T)3298 4514 y Fq(V)3351 4506 y Fs(,)g(i.e.)h Fr(v)i Fs(is)e(the)e(nearest)2040 4593 y(ancestor)h(no)r(de)g(of)g Fr(u)f Fs(in)h Fr(T)35 b Fs(that)24 b(is)h(a)f(branc)n(hing)h(no)r(de)f (or)h Fr(v)i Fs(is)e(the)2040 4680 y(ro)r(ot.)46 b(Let)29 b Fr(u)e Fs(=)g Fr(u)2588 4688 y Fk(0)2623 4680 y Fr(;)13 b(u)2701 4688 y Fk(1)2736 4680 y Fr(;)g(:)g(:)g(:)g(;)g(u)2950 4689 y Fq(d)3014 4680 y Fs(=)27 b Fr(v)32 b Fs(b)r(e)d(the)g(no)r(des)g (on)g(the)g(path)2040 4767 y(from)34 b Fr(u)f Fs(to)g Fr(v)j Fs(in)e Fr(T)43 b Fs(suc)n(h)33 b(that)f(depth)o(\()p Fr(u)3286 4775 y Fq(i)3313 4767 y Fs(\))22 b Fv(\000)f Fs(depth)o(\()p Fr(u)3712 4775 y Fq(i)p Fk(+1)3816 4767 y Fs(\))33 b(=)h(1.)2040 4855 y(While)j(pro)r(cessing)h(the)d(edge)i (\()p Fr(u;)13 b(v)s Fs(\))36 b(w)n(e)h(will)h(compute)e(the)g(in-)2040 4942 y(formation)g(to)e(b)r(e)h(stored)f(in)g(the)g(sparse)h(arra)n(ys) g(for)g(the)f(no)r(des)2040 5029 y Fr(u)2084 5037 y Fk(0)2119 5029 y Fr(;)13 b(u)2197 5037 y Fk(1)2232 5029 y Fr(;)g(:)g(:)g(:)g(;)g (u)2446 5038 y Fq(d)p Fj(\000)p Fk(1)2561 5029 y Fs(,)21 b(i.e.)e(the)g(no)r(des)g(on)g(the)f(path)g(from)i Fr(u)f Fs(to)g Fr(v)i Fs(exclu-)2040 5116 y(siv)n(e)i Fr(v)s Fs(.)33 b(F)-6 b(rom)23 b(the)f(de\014nition)g(of)h Fr(B)j Fs(and)c Fr(D)j Fs(w)n(e)e(get)g(the)f(follo)n(wing:)2040 5203 y(F)-6 b(or)36 b(the)g(arra)n(y)g Fr(B)k Fs(w)n(e)c(store)h Fr(B)t Fs([)p Fr(\031)s Fs(\()p Fr(u)p Fs(\)])h(=)g(1,)h(if)e(depth)o (\()p Fr(\031)s Fs(\()p Fr(u)p Fs(\)\))h Fr(>)2040 5290 y Fs(depth)o(\()p Fr(v)s Fs(\),)k(and)c Fr(B)t Fs([)p Fr(u)2684 5298 y Fq(i)2711 5290 y Fs(])43 b(=)f(0)d(for)g(all)h Fr(i)j Fs(=)f(0)p Fr(;)14 b(:)f(:)g(:)g(;)g(d)25 b Fv(\000)h Fs(1,)42 b(where)2040 5378 y(depth)o(\()p Fr(u)2306 5386 y Fq(i)2333 5378 y Fs(\))35 b Fr(<)h Fs(depth)o(\()p Fr(\031)s Fs(\()p Fr(u)p Fs(\)\))d(and)h(depth)o(\()p Fr(u)3354 5386 y Fq(i)3380 5378 y Fs(\))22 b(mo)r(d)f Fr(H)41 b Fs(=)36 b(0.)60 b(F)-6 b(or)p eop %%Page: 6 6 6 5 bop -152 -69 a Fs(the)30 b(arra)n(y)h Fr(D)h Fs(w)n(e)f(store)g Fr(D)r Fs([)p Fr(u)727 -61 y Fq(i)754 -69 y Fs(])f(=)e(depth)o(\()p Fr(v)s Fs(\))20 b Fv(\000)g Fs(depth)o(\()p Fr(u)1551 -61 y Fq(i)1578 -69 y Fs(\))30 b(for)h(all)-152 19 y Fr(i)22 b Fs(=)f(0)p Fr(;)14 b(:)f(:)g(:)g(;)g(d)h Fv(\000)h Fs(1)24 b(where)h(depth)o(\()p Fr(u)864 27 y Fq(i)890 19 y Fs(\))d(mo)r(d)f Fr(H)27 b Fs(=)21 b(0)k(or)g(depth)o(\()p Fr(u)1704 27 y Fq(i)1730 19 y Fs(\))c Fr(<)-152 106 y(H)6 b Fv(d)p Fs(depth)o(\()p Fr(v)s Fs(\))p Fr(=H)f Fv(e)36 b Fs(or)f(depth)o(\()p Fr(u)790 114 y Fq(i)816 106 y Fs(\))i Fv(\025)g Fs(depth)o(\()p Fr(\031)s Fs(\()p Fr(u)p Fs(\)\).)61 b(Finally)-6 b(,)38 b(w)n(e)-152 193 y(store)27 b(for)f(the)f(ro)r(ot)i Fr(B)t Fs([1])22 b(=)f(1)26 b(and)f Fr(D)r Fs([1])e(=)e(0.)-152 367 y(Constructing)j(the)e(three)h(sparse)g (arra)n(ys,)h(after)g(ha)n(ving)e(iden)n(ti\014ed)-152 454 y(the)31 b(O\()p Fr(n)122 401 y Fv(p)p 186 401 58 4 v 53 x Fr(w)r Fs(\))f(en)n(tries)h(to)g(b)r(e)g(initialized,)i(b)n(y) d(Corollary)j(1)e(tak)n(es)-152 542 y(exp)r(ected)25 b(time)h(O\()p Fr(n)479 488 y Fv(p)p 543 488 V 54 x Fr(w)r Fs(\).)p 731 492 57 4 v 731 542 4 50 v 784 542 V 731 545 57 4 v -152 776 a Ft(5.)100 b(APPR)m(O)l(XIMA)-9 b(TE)24 b(RANGE)g(COUNTING)-152 868 y Fs(In)h(this)h(section)g(w)n(e)h (pro)n(vide)e(a)h(data)g(structure)f(for)i(appro)n(ximate)-152 955 y(range)i(coun)n(ting.)40 b(Let)27 b Fr(S)i Fv(\022)24 b Fr(U)36 b Fs(denote)28 b(the)f(input)g(set,)h(and)g(let)g Fr(n)-152 1042 y Fs(denote)k(the)g(size)h(of)g Fr(S)t Fs(.)54 b(The)32 b(data)g(structure)g(uses)g(space)h(O\()p Fr(n)p Fs(\))-152 1129 y(w)n(ords)22 b(and)g(supp)r(orts)f Fn(Count)715 1137 y Fq(")769 1129 y Fs(queries)h(in)g(constan)n(t)f (time,)i(for)f(an)n(y)-152 1216 y(constan)n(t)k Fr(")21 b(>)g Fs(0.)-152 1391 y(W)-6 b(e)29 b(assume)i Fr(S)i Fs(has)d(b)r(een)g(prepro)r(cessed)g(suc)n(h)f(that)g(in)h(constan)n(t) -152 1478 y(time)23 b(w)n(e)g(can)g(compute)f Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))22 b(for)h(all)h Fr(a;)12 b(b)22 b Fv(2)f Fr(U)8 b Fs(.)34 b(Next)21 b(w)n(e)-152 1565 y(ha)n(v)n(e)h(a)h(sparse)g(arra)n(y)f(suc)n(h)g(that)g(w)n(e)h (for)g(eac)n(h)f(elemen)n(t)h Fr(x)e Fv(2)g Fr(S)27 b Fs(can)-152 1652 y(compute)c(rank)309 1660 y Fq(S)353 1652 y Fs(\()p Fr(x)p Fs(\))f(in)h(constan)n(t)g(time)g(and)f(can)h (\014nd)f(the)h(succes-)-152 1739 y(sor)30 b(of)g Fr(x)f Fs(in)g Fr(S)k Fs(in)c(constan)n(t)g(time.)45 b(Both)29 b(these)g(data)h(structures)-152 1827 y(use)c(space)g(O\()p Fr(n)p Fs(\).)-152 2001 y(De\014ne)32 b Fm(c)l(ount)9 b Fs(\()p Fr(a;)j(b)p Fs(\))33 b(=)g Fv(j)p Fr(S)27 b Fv(\\)22 b Fs([)p Fr(a;)13 b(b)p Fs(])p Fv(j)p Fs(.)56 b(W)-6 b(e)33 b(need)f(to)h(build)f(a)i(data)-152 2088 y(structure)23 b(whic)n(h)h(for)g(an)n(y)f Fr(a;)13 b(b)21 b Fv(2)h Fr(U)31 b Fs(enables)24 b(the)f(computation)h(of)-152 2175 y(an)i(in)n(teger)g Fr(k)i Fs(suc)n(h)d(that)g Fm(c)l(ount)9 b Fs(\()p Fr(a;)k(b)p Fs(\))21 b Fv(\024)g Fr(k)i Fv(\024)e Fs(\(1)d(+)e Fr(")p Fs(\))p Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\).)-152 2350 y(In)20 b(the)h(follo)n(wing)i(w)n(e)e(will)h (use)f(the)g(observ)l(ation)g(that)f(for)i Fr(a;)13 b(b)21 b Fv(2)g Fr(S)t Fs(,)-152 2437 y Fr(a)27 b Fv(\024)f Fr(b)p Fs(,)k(it)f(is)h(easy)f(to)g(compute)g(the)f(exact)h(v)l(alue)g (of)h Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\).)-152 2524 y(This)25 b(v)l(alue)f(can)g(b)r(e)f(expressed)h(as)h(rank)1047 2532 y Fq(S)1092 2524 y Fs(\()p Fr(b)p Fs(\))13 b Fv(\000)g Fs(rank)1423 2532 y Fq(S)1468 2524 y Fs(\()p Fr(a)p Fs(\))g(+)g(1)24 b(and)-152 2611 y(th)n(us)g(the)f(computation)i(amoun)n(ts)f(to)g(t)n (w)n(o)g(lo)r(okups)g(in)g(the)g(sparse)-152 2698 y(arra)n(y)i(storing) h(the)e(ranks.)-152 2873 y(W)-6 b(e)33 b(reduce)g(the)g(task)g(of)i (computing)e Fn(Count)1228 2881 y Fq(")1262 2873 y Fs(\()p Fr(a;)12 b(b)p Fs(\))33 b(to)h(the)f(case)-152 2960 y(where)i(either)e Fr(a)h Fs(or)g Fr(b)g Fs(are)g(in)g Fr(S)t Fs(.)59 b(First,)37 b(it)c(is)i(easy)f(to)g(c)n(hec)n(k)f(if)-152 3047 y Fr(S)28 b Fv(\\)23 b Fs([)p Fr(a;)13 b(b)p Fs(])35 b(is)g(empt)n(y)-6 b(,)36 b(i.e.,)i Fn(FindAny)q Fs(\()p Fr(a;)13 b(b)p Fs(\))34 b(returns)g Fv(?)p Fs(,)j(in)e(whic)n(h)-152 3134 y(case)f(w)n(e)e(simply)h(return)e(0)i(for)g(the)f(query)-6 b(.)53 b(Hence,)33 b(w)n(e)g(can)g(as-)-152 3221 y(sume)i Fr(S)28 b Fv(\\)23 b Fs([)p Fr(a;)13 b(b)p Fs(])36 b(is)f(non-empt)n(y) e(and)i(let)g Fr(c)g Fs(b)r(e)g(an)n(y)g(elemen)n(t)g(in)-152 3309 y(this)k(set)g(and)f(let)h Fr(d)g Fs(b)r(e)f(the)h(successor)h(of) f Fr(c)g Fs(in)g Fr(S)t Fs(.)73 b(Then)39 b(for)-152 3396 y(an)n(y)32 b(in)n(tegers)g Fr(k)330 3404 y Fq(a)400 3396 y Fs(and)g Fr(k)596 3405 y Fq(b)659 3396 y Fs(suc)n(h)g(that)f Fm(c)l(ount)9 b Fs(\()p Fr(a;)k(c)p Fs(\))32 b Fv(\024)f Fr(k)1530 3404 y Fq(a)1600 3396 y Fv(\024)h Fs(\(1)21 b(+)-152 3483 y Fr(")p Fs(\))p Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(c)p Fs(\))33 b(and)g Fm(c)l(ount)9 b Fs(\()p Fr(d;)k(b)p Fs(\))34 b Fv(\024)g Fr(k)982 3492 y Fq(b)1047 3483 y Fv(\024)g Fs(\(1)23 b(+)f Fr(")p Fs(\))p Fm(c)l(ount)7 b Fs(\()p Fr(d;)13 b(b)p Fs(\),)36 b(it)-152 3570 y(holds)g(that)g Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\))38 b(=)g Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(c)p Fs(\))24 b(+)f Fm(c)l(ount)9 b Fs(\()p Fr(d;)k(b)p Fs(\))38 b Fv(\024)g Fr(k)1720 3578 y Fq(a)1781 3570 y Fs(+)-152 3657 y Fr(k)-112 3666 y Fq(b)-59 3657 y Fv(\024)21 b Fs(\(1)13 b(+)g Fr(")p Fs(\))p Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\))p Fr(:)23 b Fs(Hence,)i(w)n(e)f(can)f(return)g Fn(Count)1567 3665 y Fq(")1600 3657 y Fs(\()p Fr(a;)13 b(c)p Fs(\))g(+)-152 3744 y Fn(Count)43 3752 y Fq(")76 3744 y Fs(\()p Fr(d;)g(b)p Fs(\))31 b(as)h(the)f(answ)n(er)h(for)g Fn(Count)1089 3752 y Fq(")1123 3744 y Fs(\()p Fr(a;)13 b(b)p Fs(\),)32 b(where)g Fr(c)f Fv(2)g Fr(S)25 b Fv(\\)-152 3832 y Fs([)p Fr(a;)13 b(b)p Fs(])29 b(is)g(an)g(in)n(teger)g(returned)f(b)n(y)g Fn(FindAny)q Fs(\()p Fr(a;)12 b(b)p Fs(\).)44 b(Clearly)-6 b(,)30 b(b)r(oth)-152 3919 y(calls)25 b(to)f Fn(Count)303 3927 y Fq(")360 3919 y Fs(satisfy)g(that)f(one)h(of)g(the)f(endp)r(oin) n(ts)g(is)h(in)f Fr(S)t Fs(,)h(i.e.,)-152 4006 y(the)35 b(in)n(tegers)h Fr(c)f Fs(and)g Fr(d)p Fs(.)62 b(In)35 b(the)f(follo)n(wing)k(w)n(e)d(can)h(th)n(us)e(with-)-152 4093 y(out)26 b(loss)h(of)g(generalit)n(y)f(limit)h(ourselv)n(es)f(to)g (the)f(case)i(for)g(a)f(query)-152 4180 y Fn(Count)43 4188 y Fq(")76 4180 y Fs(\()p Fr(a;)13 b(b)p Fs(\))25 b(with)h Fr(a)21 b Fv(2)h Fr(S)t Fs(.)35 b(The)26 b(case)g Fr(b)c Fv(2)f Fr(S)30 b Fs(is)d(treated)e(symmet-)-152 4268 y(rically)-6 b(.)-152 4442 y(W)g(e)25 b(start)h(b)n(y)e (describing)i(the)f(additional)i(data)e(structures)h(need-)-152 4529 y(ed,)e(and)g(then)f(ho)n(w)h(to)g(compute)f(the)g(appro)n(ximate) h(range)h(coun)n(t-)-152 4616 y(ing)h(query)f(using)h(these.)34 b(De\014ne)25 b Fr(p)c Fs(=)g Fv(d)p Fs(log)15 b Fr(n)p Fv(e)p Fs(,)27 b(and)6 4771 y Fr(J)i Fs(=)21 b Fv(f)p Fr(x)g Fv(2)h Fr(S)j Fv(j)d Fs(\(rank)631 4779 y Fq(S)675 4771 y Fs(\()p Fr(x)p Fs(\))16 b Fv(\000)h Fs(1\))22 b(mo)r(d)f Fr(p)g Fs(=)g(0)p Fv(g)d([)f Fs(max)c Fr(S)26 b(:)-152 4926 y Fs(W)-6 b(e)31 b(construct)h(the)f(follo)n(wing)j (additional)e(data)g(structures)f(\(see)-152 5013 y(Figure)c(3)f(for)g (an)g(example\).)-114 5290 y Fn(Jno)r(deR)45 b Fs(:)40 b(F)-6 b(or)40 b(eac)n(h)g(elemen)n(t)g Fr(s)k Fv(2)h Fr(S)f Fs(w)n(e)c(store)h(the)e(in)n(teger)35 5378 y Fn(Jno)r(deR)p Fs(\()p Fr(s)p Fs(\))25 b(b)r(eing)h(the)g(successor)h (of)f Fr(s)f Fs(in)h Fr(J)7 b Fs(.)2077 -69 y Fn(JumpR)21 b Fs(:)26 b(F)-6 b(or)26 b(eac)n(h)g(elemen)n(t)g Fr(j)g Fv(2)21 b Fr(J)33 b Fs(w)n(e)26 b(store)h(the)e(set)2227 19 y Fn(JumpR)o Fs(\()p Fr(j)t Fs(\))d(=)f Fv(f)p Fr(y)j Fv(2)e Fr(S)j Fv(j)d Fm(c)l(ount)8 b Fs(\()p Fr(j;)14 b(y)s Fs(\))21 b(=)g(2)3433 -13 y Fq(i)3476 19 y Fv(^)d Fr(i)j Fv(2)h Fs([0)p Fr(;)14 b(p)p Fs(])p Fv(g)p Fs(.)2077 158 y Fn(LN)23 b Fs(:)j(F)-6 b(or)26 b(eac)n(h)g(elemen)n(t)g Fr(j)h Fv(2)22 b Fr(J)34 b Fs(w)n(e)26 b(store)h(the)e(set)i Fn(LN)p Fs(\()p Fr(j)t Fs(\))22 b(=)g Fv(f)p Fr(i)g Fv(2)2227 246 y Fr(S)j Fv(j)d Fr(j)k Fs(=)21 b Fn(Jno)r(deR)p Fs(\()p Fr(i)p Fs(\))p Fv(g)p Fs(.)2040 479 y(Eac)n(h)30 b(of)g(the)f(sets)h Fn(JumpR)e Fs(and)h Fn(LN)h Fs(ha)n(v)n(e)e(size)i(b)r(ounded)f(b)n(y)f Fr(p)f Fv(\024)2040 566 y Fs(log)15 b Fv(j)p Fr(U)8 b Fv(j)p Fs(,)32 b(and)e(hence)g(using)g(the)g Fr(Q)p Fs(-heaps)f(from)i (Corollary)g(2,)h(w)n(e)2040 653 y(can)j(compute)f(predecessors)h(for)g (these)g(sets)f(in)h(constan)n(t)f(time.)2040 740 y(The)d Fr(Q)p Fs(-heaps)f(ha)n(v)n(e)g(space)h(cost)g(linear)g(in)g(the)f(set) g(sizes.)51 b(Since)2040 827 y(the)17 b(total)h(n)n(um)n(b)r(er)e(of)j (elemen)n(ts)e(in)h(the)f(structures)g Fn(JumpR)f Fs(and)h Fn(LN)2040 914 y Fs(is)25 b(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\),)h(the)e(total)h(space)h(cost)f(for)g(these)g(structures)g(is)g (O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\).)2040 1002 y(F)-6 b(urthermore,)21 b(for)g(the)f(elemen)n(ts)g(in)g Fr(S)k Fs(giv)n(en)c(in)g(sorted)g (order,)i(the)2040 1089 y(total)27 b(construction)f(of)g(these)g(data)g (structures)f(is)i(also)g(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\).)2040 1263 y(T)-6 b(o)28 b(determine)g Fn(Count)2711 1271 y Fq(")2744 1263 y Fs(\()p Fr(a;)13 b(b)p Fs(\),)28 b(where)h Fr(a)24 b Fv(2)i Fr(S)t Fs(,)i(w)n(e)h(iterate)f(the)g(fol-) 2040 1350 y(lo)n(wing)22 b(computation)f(un)n(til)f(the)h(desired)f (precision)i(of)f(the)g(answ)n(er)2040 1438 y(is)k(obtained.)34 b(Initially)24 b(let)g Fr(k)g Fs(=)d(0.)34 b(Let)24 b Fr(j)i Fs(=)21 b Fn(Jno)r(deR)p Fs(\()p Fr(a)p Fs(\).)33 b(If)24 b Fr(j)i Fv(\025)21 b Fr(b)p Fs(,)2040 1525 y(return)i Fr(k)16 b Fs(+)e Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b Fn(Pred)2844 1537 y Fq(LN)5 b Fk(\()p Fq(j)s Fk(\))3020 1525 y Fs(\()p Fr(b)p Fs(\)\).)34 b(Otherwise,)25 b Fr(j)h(<)21 b(b)p Fs(,)j(and)g(w)n(e)2040 1612 y(increase)33 b Fr(k)g Fs(b)n(y)e Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(j)t Fs(\))21 b Fv(\000)g Fs(1.)52 b(Let)32 b Fr(y)h Fs(=)e Fn(Pred)3548 1624 y Fc(JumpR)q Fk(\()p Fq(j)s Fk(\))3785 1612 y Fs(\()p Fr(b)p Fs(\))g(and)2040 1709 y Fr(i)22 b Fs(=)f(rank)2320 1721 y Fc(JumpR)q Fk(\()p Fq(j)s Fk(\))2557 1709 y Fs(\()p Fr(y)s Fs(\))s Fv(\000)s Fs(1.)32 b(No)n(w)19 b Fm(c)l(ount)9 b Fs(\()p Fr(j;)k(y)s Fs(\))21 b(=)g(2)3477 1677 y Fq(i)3525 1709 y Fv(\024)g Fm(c)l(ount)8 b Fs(\()p Fr(j;)14 b(b)p Fs(\))21 b Fr(<)2040 1806 y Fs(2)2078 1774 y Fq(i)p Fk(+1)2182 1806 y Fs(.)83 b(W)-6 b(e)41 b(increase)i Fr(k)h Fs(b)n(y)c(2)2985 1774 y Fq(i)3012 1806 y Fs(.)83 b(No)n(w)42 b Fr(k)50 b Fs(=)e Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(y)s Fs(\))41 b(and)2040 1893 y Fm(c)l(ount)9 b Fs(\()p Fr(y)s(;)j(b)p Fs(\))36 b Fr(<)g Fs(2)2565 1862 y Fq(i)2591 1893 y Fs(.)61 b(If)35 b Fr(y)k Fs(=)c Fr(b)g Fs(w)n(e)g(return)f Fr(k)r Fs(.)61 b(If)34 b(2)3612 1862 y Fq(i)3639 1893 y Fr(=k)39 b(<)d(")p Fs(,)g(w)n(e)2040 1980 y(are)25 b(also)h(satis\014ed)f(and)f (return)g Fr(k)17 b Fs(+)e(2)3166 1949 y Fq(i)3193 1980 y Fs(.)34 b(Otherwise)25 b(w)n(e)g(iterate)g(to)2040 2068 y(determine)h Fn(Count)2593 2076 y Fq(")2627 2068 y Fs(\()p Fr(y)2698 2036 y Fj(0)2719 2068 y Fr(;)14 b(b)p Fs(\),)25 b(where)h Fr(y)3126 2036 y Fj(0)3174 2068 y Fs(is)g(the)f(successor)i(of)g Fr(y)h Fs(in)d Fr(S)t Fs(.)2123 2301 y Fi(Theorem)41 b Fs(6.)d Fm(The)26 b(data)g(structur)l (e)i(uses)f(sp)l(ac)l(e)g Fs(O\()p Fv(j)p Fr(S)t Fv(j)p Fs(\))e Fm(wor)l(ds)2040 2388 y(and)j(supp)l(orts)i Fn(Count)2686 2396 y Fq(")2747 2388 y Fm(in)d(time)h Fs(O\(log)r(\(1)p Fr(=")p Fs(\)\))f Fm(for)h(any)g Fr(")21 b(>)g Fs(0)p Fm(.)2123 2621 y Fi(Pr)n(oof.)39 b Fs(F)-6 b(rom)35 b(the)f(observ)l (ations)i(ab)r(o)n(v)n(e)f(w)n(e)g(conclude)g(that)2040 2708 y(the)e(structure)f(uses)h(space)h(O\()p Fr(n)p Fs(\))e(and)h(exp)r(ected)f(prepro)r(cessing)2040 2795 y(time)j(O\()p Fr(n)p Fs(\).)62 b(Eac)n(h)35 b(iteration)h(tak)n(es)f (constan)n(t)g(time,)j(and)c(next)2040 2882 y(w)n(e)d(sho)n(w)h(that)e (the)h(n)n(um)n(b)r(er)f(of)i(iterations)g(is)f(at)g(most)h Fr(`)d Fv(\024)h Fs(1)21 b(+)2040 2970 y Fv(d)p Fs(log)r(\(1)p Fr(=")p Fs(\))p Fv(e)p Fs(.)36 b(Let)26 b Fr(k)f Fs(=)c(2)2758 2938 y Fq(I)2811 2970 y Fs(+)d Fr(f)8 b Fs(,)26 b Fr(f)31 b(<)22 b Fs(2)3169 2938 y Fq(I)3204 2970 y Fs(,)27 b(after)g(the)e (\014rst)h(iteration.)2040 3057 y(In)f(the)g Fr(`)p Fs(th)g(iteration)i (w)n(e)f(either)g(return)f Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\))26 b(or)g Fr(k)19 b Fs(+)e(2)3925 3025 y Fq(i)3973 3057 y Fr(>)2040 3144 y Fm(c)l(ount)9 b Fs(\()p Fr(a;)j(b)p Fs(\),)28 b(where)f Fr(i)d Fv(\024)f Fr(I)h Fv(\000)18 b Fr(`)f Fs(+)h(1.)39 b(In)26 b(the)h(latter)h(case)g(w)n(e) f(ha)n(v)n(e)2040 3231 y Fr(k)i(<)d Fm(c)l(ount)9 b Fs(\()p Fr(a;)j(b)p Fs(\))27 b Fr(<)f(k)21 b Fs(+)e(2)2841 3199 y Fq(i)2868 3231 y Fs(.)44 b(That)29 b Fr(k)21 b Fs(+)e(2)3306 3199 y Fq(i)3360 3231 y Fv(\024)26 b Fs(\(1)19 b(+)g Fr(")p Fs(\))p Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\))2040 3318 y(follo)n(ws)33 b(from)e Fr(k)f(<)f Fm(c)l(ount)8 b Fs(\()p Fr(a;)13 b(b)p Fs(\))30 b(and)f(2)3218 3287 y Fq(i)3245 3318 y Fr(=k)i(<)e(")p Fs(.)47 b(Since)30 b(2)3790 3287 y Fq(i)3845 3318 y Fr(<)e(k)r(")p Fs(,)2040 3405 y Fr(i)39 b Fv(\024)g Fr(I)29 b Fv(\000)24 b Fr(`)g Fs(+)g(1)36 b(and)g Fr(k)41 b Fv(\025)e Fs(2)2943 3374 y Fq(I)2979 3405 y Fs(,)g(the)d(b)r(ound)f(on)h Fr(`)g Fs(follo)n(ws)j(from)2040 3493 y(2)2078 3461 y Fq(I)t Fj(\000)p Fq(`)p Fk(+1)2286 3493 y Fr(<)21 b Fs(2)2405 3461 y Fq(I)2441 3493 y Fr(")p Fs(.)p 2577 3443 V 2577 3493 4 50 v 2630 3493 V 2577 3496 57 4 v 2040 3685 a Ft(6.)99 b(REFERENCES)2078 3772 y Fs([1])39 b(P)-6 b(.)26 b(K.)f(Agarw)n(al.)j(Range)e(searc)n(hing.)g(In)f Fm(Handb)l(o)l(ok)k (of)2197 3859 y(Discr)l(ete)g(and)f(Computational)g(Ge)l(ometry,)h(CR)n (C)f(Pr)l(ess)p Fs(.)2197 3946 y(1997.)2078 4086 y([2])39 b(A.)25 b(Aggarw)n(al)j(and)d(J.)i(S.)e(Vitter.)h(The)g(input/output) 2197 4173 y(complexit)n(y)f(of)i(sorting)f(and)g(related)g(problems.) 2197 4261 y Fm(Communic)l(ations)i(of)f(the)i(A)n(CM)p Fs(,)c(31\(9\):1116{1127,)31 b(1988.)2078 4400 y([3])39 b(M.)26 b(Ajtai.)h(A)e(lo)n(w)n(er)i(b)r(ound)d(for)j(\014nding)e (predecessors)i(in)2197 4488 y(Yao's)g(cell)f(prob)r(e)g(mo)r(del.)g Fm(Combinatoric)l(a)p Fs(,)h(\(8\):235{247,)2197 4575 y(1988.)2078 4715 y([4])39 b(A.)25 b(Amir,)h(A.)g(Efrat,)h(P)-6 b(.)26 b(Indyk,)e(and)h(H.)g(Samet.)h(E\016cien)n(t)2197 4802 y(regular)h(data)e(structures)h(and)f(algorithms)j(for)e(lo)r (cation)2197 4889 y(and)f(pro)n(ximit)n(y)g(problems.)i(In)e Fm(Pr)l(o)l(c.)j(40th)g(IEEE)2197 4976 y(Symp)l(osium)g(on)g(F)-6 b(oundations)29 b(of)e(Computer)i(Scienc)l(e)2197 5063 y(\(F)n(OCS\))p Fs(,)e(pages)f(160{170,)j(1999.)2078 5203 y([5])39 b(A.)25 b(Andersson,)h(T.)h(Hagerup,)e(S.)h(Nilsson,)h (and)e(R.)h(Raman.)2197 5290 y(Sorting)g(in)f(linear)i(time?)35 b Fm(Journal)28 b(of)f(Computer)i(and)2197 5378 y(System)g(Scienc)l(es) p Fs(,)e(57\(1\):74{93,)i(1998.)p eop %%Page: 7 7 7 6 bop 0.827 setgray 7 setlinewidth np 140 472 a 197 472 li 197 530 li 140 530 li closepath fil 0 setgray np 140 472 a 197 472 li 197 530 li 140 530 li closepath st 7 setlinewidth np 140 472 a 197 472 li 197 530 li 140 530 li closepath st 0.827 setgray 7 setlinewidth np 659 472 a 716 472 li 716 530 li 659 530 li closepath fil 0 setgray np 659 472 a 716 472 li 716 530 li 659 530 li closepath st 7 setlinewidth np 659 472 a 716 472 li 716 530 li 659 530 li closepath st 0.827 setgray 7 setlinewidth np 1638 472 a 1696 472 li 1696 530 li 1638 530 li closepath fil 0 setgray np 1638 472 a 1696 472 li 1696 530 li 1638 530 li closepath st 7 setlinewidth np 1638 472 a 1696 472 li 1696 530 li 1638 530 li closepath st 0.827 setgray 7 setlinewidth np 2100 472 a 2157 472 li 2157 530 li 2100 530 li closepath fil 0 setgray np 2100 472 a 2157 472 li 2157 530 li 2100 530 li closepath st 7 setlinewidth np 2100 472 a 2157 472 li 2157 530 li 2100 530 li closepath st 0.827 setgray 7 setlinewidth np 2792 472 a 2849 472 li 2849 530 li 2792 530 li closepath fil 0 setgray np 2792 472 a 2849 472 li 2849 530 li 2792 530 li closepath st 7 setlinewidth np 2792 472 a 2849 472 li 2849 530 li 2792 530 li closepath st 0.827 setgray 7 setlinewidth np 3599 472 a 3657 472 li 3657 530 li 3599 530 li closepath fil 0 setgray np 3599 472 a 3657 472 li 3657 530 li 3599 530 li closepath st 7 setlinewidth np 3599 472 a 3657 472 li 3657 530 li 3599 530 li closepath st 0.827 setgray 7 setlinewidth np 3657 472 a 3714 472 li 3714 530 li 3657 530 li closepath fil 0 setgray np 3657 472 a 3714 472 li 3714 530 li 3657 530 li closepath st 7 setlinewidth np 3657 472 a 3714 472 li 3714 530 li 3657 530 li closepath st 3 setlinewidth np 140 472 a 197 530 li st 3 setlinewidth np 140 530 a 197 472 li st 3 setlinewidth np 255 472 a 312 530 li st 3 setlinewidth np 255 530 a 312 472 li st 3 setlinewidth np 601 472 a 659 530 li st 3 setlinewidth np 601 530 a 659 472 li st 3 setlinewidth np 659 472 a 716 530 li st 3 setlinewidth np 659 530 a 716 472 li st 3 setlinewidth np 831 472 a 889 530 li st 3 setlinewidth np 831 530 a 889 472 li st 3 setlinewidth np 1004 472 a 1062 530 li st 3 setlinewidth np 1004 530 a 1062 472 li st 3 setlinewidth np 1293 472 a 1350 530 li st 3 setlinewidth np 1293 530 a 1350 472 li st 3 setlinewidth np 1350 472 a 1408 530 li st 3 setlinewidth np 1350 530 a 1408 472 li st 3 setlinewidth np 1638 472 a 1696 530 li st 3 setlinewidth np 1638 530 a 1696 472 li st 3 setlinewidth np 1696 472 a 1754 530 li st 3 setlinewidth np 1696 530 a 1754 472 li st 3 setlinewidth np 1754 472 a 1812 530 li st 3 setlinewidth np 1754 530 a 1812 472 li st 3 setlinewidth np 1869 472 a 1927 530 li st 3 setlinewidth np 1869 530 a 1927 472 li st 3 setlinewidth np 1927 472 a 1985 530 li st 3 setlinewidth np 1927 530 a 1985 472 li st 3 setlinewidth np 2100 472 a 2157 530 li st 3 setlinewidth np 2100 530 a 2157 472 li st 3 setlinewidth np 2157 472 a 2215 530 li st 3 setlinewidth np 2157 530 a 2215 472 li st 3 setlinewidth np 2446 472 a 2504 530 li st 3 setlinewidth np 2446 530 a 2504 472 li st 3 setlinewidth np 2504 472 a 2561 530 li st 3 setlinewidth np 2504 530 a 2561 472 li st 3 setlinewidth np 2619 472 a 2676 530 li st 3 setlinewidth np 2619 530 a 2676 472 li st 3 setlinewidth np 2792 472 a 2849 530 li st 3 setlinewidth np 2792 530 a 2849 472 li st 3 setlinewidth np 3541 472 a 3599 530 li st 3 setlinewidth np 3541 530 a 3599 472 li st 3 setlinewidth np 3599 472 a 3657 530 li st 3 setlinewidth np 3599 530 a 3657 472 li st 3 setlinewidth np 3657 472 a 3714 530 li st 3 setlinewidth np 3657 530 a 3714 472 li st 3 setlinewidth np 3195 472 a 3253 530 li st 3 setlinewidth np 3195 530 a 3253 472 li st 3 setlinewidth np 3023 472 a 3080 530 li st 3 setlinewidth np 3023 530 a 3080 472 li st 3 setlinewidth np 3080 472 a 3138 530 li st 3 setlinewidth np 3080 530 a 3138 472 li st 3 setlinewidth np 197 472 a 255 530 li st 3 setlinewidth np 197 530 a 255 472 li st 3 setlinewidth np 486 472 a 543 530 li st 3 setlinewidth np 486 530 a 543 472 li st 3 setlinewidth np 1120 472 a 1120 530 li st 3 setlinewidth np 1178 472 a 1178 530 li st 3 setlinewidth np 1235 472 a 1235 530 li st 3 setlinewidth np 82 356 a 3758 356 li 3758 414 li 82 414 li closepath st 3 setlinewidth np 486 356 a 486 414 li st 3 setlinewidth np 543 356 a 543 414 li st 3 setlinewidth np 601 356 a 601 414 li st 3 setlinewidth np 312 356 a 312 414 li st 3 setlinewidth np 370 356 a 370 414 li st 3 setlinewidth np 428 356 a 428 414 li st 3 setlinewidth np 140 356 a 140 414 li st 3 setlinewidth np 197 356 a 197 414 li st 3 setlinewidth np 255 356 a 255 414 li st 3 setlinewidth np 1004 356 a 1004 414 li st 3 setlinewidth np 1062 356 a 1062 414 li st 3 setlinewidth np 1120 356 a 1120 414 li st 3 setlinewidth np 831 356 a 831 414 li st 3 setlinewidth np 889 356 a 889 414 li st 3 setlinewidth np 947 356 a 947 414 li st 3 setlinewidth np 659 356 a 659 414 li st 3 setlinewidth np 716 356 a 716 414 li st 3 setlinewidth np 774 356 a 774 414 li st 3 setlinewidth np 1523 356 a 1523 414 li st 3 setlinewidth np 1581 356 a 1581 414 li st 3 setlinewidth np 1638 356 a 1638 414 li st 3 setlinewidth np 1350 356 a 1350 414 li st 3 setlinewidth np 1408 356 a 1408 414 li st 3 setlinewidth np 1466 356 a 1466 414 li st 3 setlinewidth np 1178 356 a 1178 414 li st 3 setlinewidth np 1235 356 a 1235 414 li st 3 setlinewidth np 1293 356 a 1293 414 li st 3 setlinewidth np 2042 356 a 2042 414 li st 3 setlinewidth np 2100 356 a 2100 414 li st 3 setlinewidth np 2157 356 a 2157 414 li st 3 setlinewidth np 1869 356 a 1869 414 li st 3 setlinewidth np 1927 356 a 1927 414 li st 3 setlinewidth np 1985 356 a 1985 414 li st 3 setlinewidth np 1696 356 a 1696 414 li st 3 setlinewidth np 1754 356 a 1754 414 li st 3 setlinewidth np 1812 356 a 1812 414 li st 3 setlinewidth np 2561 356 a 2561 414 li st 3 setlinewidth np 2619 356 a 2619 414 li st 3 setlinewidth np 2676 356 a 2676 414 li st 3 setlinewidth np 2388 356 a 2388 414 li st 3 setlinewidth np 2446 356 a 2446 414 li st 3 setlinewidth np 2504 356 a 2504 414 li st 3 setlinewidth np 2215 356 a 2215 414 li st 3 setlinewidth np 2273 356 a 2273 414 li st 3 setlinewidth np 2331 356 a 2331 414 li st 3 setlinewidth np 3080 356 a 3080 414 li st 3 setlinewidth np 3138 356 a 3138 414 li st 3 setlinewidth np 3195 356 a 3195 414 li st 3 setlinewidth np 2907 356 a 2907 414 li st 3 setlinewidth np 2965 356 a 2965 414 li st 3 setlinewidth np 3023 356 a 3023 414 li st 3 setlinewidth np 2734 356 a 2734 414 li st 3 setlinewidth np 2792 356 a 2792 414 li st 3 setlinewidth np 2849 356 a 2849 414 li st 3 setlinewidth np 3599 356 a 3599 414 li st 3 setlinewidth np 3657 356 a 3657 414 li st 3 setlinewidth np 3714 356 a 3714 414 li st 3 setlinewidth np 3426 356 a 3426 414 li st 3 setlinewidth np 3483 356 a 3483 414 li st 3 setlinewidth np 3541 356 a 3541 414 li st 3 setlinewidth np 3253 356 a 3253 414 li st 3 setlinewidth np 3311 356 a 3311 414 li st 3 setlinewidth np 3368 356 a 3368 414 li st 3 setlinewidth np 775 392 93 202.62 337.38 arc st 0 setgray 3 setlinewidth np 844 340 a 860 356 li 854 334 li closepath fil 0 setgray np 844 340 a 860 356 li 854 334 li closepath st 3 setlinewidth np 1005 560 377 212.78 327.22 arc st 0 setgray 3 setlinewidth np 1304 341 a 1322 356 li 1313 334 li closepath fil 0 setgray np 1304 341 a 1322 356 li 1313 334 li closepath st 3 setlinewidth np 1243 819 722 219.83 320.17 arc st 0 setgray 3 setlinewidth np 1778 343 a 1797 356 li 1787 335 li closepath fil 0 setgray np 1778 343 a 1797 356 li 1787 335 li closepath st 3 setlinewidth np 1755 1230 1379 219.35 320.65 arc st 0 setgray 3 setlinewidth np 2801 343 a 2820 356 li 2810 335 li closepath fil 0 setgray np 2801 343 a 2820 356 li 2810 335 li closepath st 3 setlinewidth np 442 731 a 226 602 li st 0 setgray 3 setlinewidth np 249 608 a 226 602 li 243 619 li closepath fil 0 setgray np 249 608 a 226 602 li 243 619 li closepath st 3 setlinewidth np 442 731 a 284 602 li st 0 setgray 3 setlinewidth np 305 612 a 284 602 li 298 620 li closepath fil 0 setgray np 305 612 a 284 602 li 298 620 li closepath st 3 setlinewidth np 442 731 a 515 602 li st 0 setgray 3 setlinewidth np 508 625 a 515 602 li 498 619 li closepath fil 0 setgray np 508 625 a 515 602 li 498 619 li closepath st 3 setlinewidth np 442 731 a 630 602 li st 0 setgray 3 setlinewidth np 614 619 a 630 602 li 608 610 li closepath fil 0 setgray np 614 619 a 630 602 li 608 610 li closepath st 3 setlinewidth np 442 731 a 687 602 li st 0 setgray 3 setlinewidth np 669 617 a 687 602 li 664 607 li closepath fil 0 setgray np 669 617 a 687 602 li 664 607 li closepath st 3 setlinewidth np 1869 472 a 1869 530 li st 3 setlinewidth np 1927 472 a 1927 530 li st 3 setlinewidth np 1985 472 a 1985 530 li st 3 setlinewidth np 2042 472 a 2042 530 li st 3 setlinewidth np 2100 472 a 2100 530 li st 3 setlinewidth np 2157 472 a 2157 530 li st 3 setlinewidth np 2215 472 a 2215 530 li st 3 setlinewidth np 2273 472 a 2273 530 li st 3 setlinewidth np 2331 472 a 2331 530 li st 3 setlinewidth np 2388 472 a 2388 530 li st 3 setlinewidth np 2446 472 a 2446 530 li st 3 setlinewidth np 2504 472 a 2504 530 li st 3 setlinewidth np 2561 472 a 2561 530 li st 3 setlinewidth np 2619 472 a 2619 530 li st 3 setlinewidth np 2676 472 a 2676 530 li st 3 setlinewidth np 2734 472 a 2734 530 li st 3 setlinewidth np 2792 472 a 2792 530 li st 3 setlinewidth np 2849 472 a 2849 530 li st 3 setlinewidth np 2907 472 a 2907 530 li st 3 setlinewidth np 2965 472 a 2965 530 li st 3 setlinewidth np 3023 472 a 3023 530 li st 3 setlinewidth np 3080 472 a 3080 530 li st 3 setlinewidth np 3138 472 a 3138 530 li st 3 setlinewidth np 3195 472 a 3195 530 li st 3 setlinewidth np 3253 472 a 3253 530 li st 3 setlinewidth np 3311 472 a 3311 530 li st 3 setlinewidth np 3368 472 a 3368 530 li st 3 setlinewidth np 3426 472 a 3426 530 li st 3 setlinewidth np 3483 472 a 3483 530 li st 3 setlinewidth np 3541 472 a 3541 530 li st 3 setlinewidth np 140 472 a 140 530 li st 3 setlinewidth np 197 472 a 197 530 li st 3 setlinewidth np 255 472 a 255 530 li st 3 setlinewidth np 312 472 a 312 530 li st 3 setlinewidth np 370 472 a 370 530 li st 3 setlinewidth np 428 472 a 428 530 li st 3 setlinewidth np 486 472 a 486 530 li st 3 setlinewidth np 543 472 a 543 530 li st 3 setlinewidth np 601 472 a 601 530 li st 3 setlinewidth np 716 472 a 716 530 li st 3 setlinewidth np 774 472 a 774 530 li st 3 setlinewidth np 831 472 a 831 530 li st 3 setlinewidth np 889 472 a 889 530 li st 3 setlinewidth np 947 472 a 947 530 li st 3 setlinewidth np 1004 472 a 1004 530 li st 3 setlinewidth np 1062 472 a 1062 530 li st 3 setlinewidth np 1293 472 a 1293 530 li st 3 setlinewidth np 1350 472 a 1350 530 li st 3 setlinewidth np 1408 472 a 1408 530 li st 3 setlinewidth np 1466 472 a 1466 530 li st 3 setlinewidth np 1523 472 a 1523 530 li st 3 setlinewidth np 1581 472 a 1581 530 li st 3 setlinewidth np 1638 472 a 1638 530 li st 3 setlinewidth np 1696 472 a 1696 530 li st 3 setlinewidth np 1754 472 a 1754 530 li st 3 setlinewidth np 1812 472 a 1812 530 li st 3 setlinewidth np 3599 472 a 3599 530 li st 3 setlinewidth np 3657 472 a 3657 530 li st 3 setlinewidth np 3714 472 a 3714 530 li st 3 setlinewidth np 659 472 a 659 530 li st 3 setlinewidth np 82 472 a 3772 472 li 3772 530 li 82 530 li closepath st 481 269 a Fc(JumpR)q Fk(\(10\))356 803 y Fc(LN)p Fk(\(10\))155 586 y Fb(1)30 b(2)995 b(20)521 b(30)f(40)1098 b(60)-1959 b(27)1097 b(47)751 b(61)r(62)-748 b(50)693 b(63)-3674 b(0)535 b(10)-446 b(3)1803 b(34)155 399 y(1)477 b(10)-114 b(10)-171 b(10)-287 b(10)-113 b(10)1385 b(27)-344 b(27)-114 b(27)-517 b(27)117 b(27)1039 b(34)-229 b(34)-113 b(34)-172 b(34)-113 b(34)1039 b(47)-229 b(47)-171 b(47)-114 b(47)-344 b(47)1385 b(61)-459 b(61)-172 b(61)-113 b(61)578 b(62)-171 b(61)-116 979 y Fd(Figure)29 b(3:)39 b(Extension)29 b(of)h(the)g(data)g (structure)h(to)f(supp)r(ort)h Fa(Count)2166 987 y Fq(")2229 979 y Fd(queries.)37 b Fr(w)24 b Fs(=)d(8)p Fd(,)29 b Fr(n)22 b Fs(=)f Fv(j)p Fr(S)t Fv(j)h Fs(=)f(27)p Fd(,)30 b(and)g Fr(p)21 b Fs(=)g Fv(d)p Fs(log)15 b Fr(n)p Fv(e)22 b Fs(=)f(5)p Fd(.)-113 1306 y Fs([6])38 b(A.)26 b(Andersson)f(and)g(O.) h(P)n(etersson.)h(Appro)n(ximate)e(indexed)5 1394 y(lists.)i Fm(Journal)i(of)e(A)n(lgorithms)p Fs(,)f(29\(2\):256{276,)k(1998.)-113 1565 y([7])38 b(A.)26 b(Andersson)f(and)g(M.)i(Thorup.)e(Tigh)n (t\(er\))i(w)n(orst-case)5 1653 y(b)r(ounds)e(on)h(dynamic)f(searc)n (hing)i(and)e(priorit)n(y)h(queues.)f(In)5 1740 y Fm(Pr)l(o)l(c.)j (32nd)g(A)n(CM)f(Symp)l(osium)h(on)g(The)l(ory)h(of)e(Computing)5 1827 y(\(STOC\))p Fs(,)g(pages)f(335{342,)j(2000.)-113 1999 y([8])38 b(P)-6 b(.)26 b(Beame)h(and)e(F.)h(Fic)n(h.)g(Optimal)g (b)r(ounds)f(for)i(the)5 2086 y(predecessor)g(problem.)f(In)f Fm(Pr)l(o)l(c.)j(31st)h(A)n(CM)e(Symp)l(osium)5 2173 y(on)h(The)l(ory)h(of)e(Computing)h(\(STOC\))p Fs(,)e(pages)h(295{304,) 5 2260 y(1999.)-113 2432 y([9])38 b(K.)26 b(L.)g(Clarkson.)h(An)e (algorithm)i(for)f(appro)n(ximate)5 2519 y(closest-p)r(oin)n(t)g (queries.)g(In)e Fm(Pr)l(o)l(c.)k(10th)g(A)n(nnual)f(Symp)l(osium)5 2606 y(on)h(Computational)g(Ge)l(ometry)p Fs(,)g(pages)f(160{164,)i (Ston)n(y)5 2693 y(Bro)r(ok,)e(NY,)e(USA,)g(1994.)i(A)n(CM)f(Press.) -152 2865 y([10])39 b(M.)26 b(Dietzfelbinger.)i(Univ)n(ersal)e(hashing) g(and)f(k-wise)5 2952 y(indep)r(enden)n(t)f(random)i(v)l(ariables)h (via)e(in)n(teger)i(arithmetic)5 3040 y(without)f(primes.)g(In)f Fm(13th)k(A)n(nnual)f(Symp)l(osium)f(on)5 3127 y(The)l(or)l(etic)l(al)i (Asp)l(e)l(cts)h(of)d(Computer)i(Scienc)l(e)p Fs(,)e(v)n(olume)e(1046)5 3214 y(of)i Fm(L)l(e)l(ctur)l(e)i(Notes)g(in)e(Computer)i(Scienc)l(e)p Fs(,)e(pages)f(569{580.)5 3301 y(Springer)g(Verlag,)h(Berlin,)f(1996.) -152 3473 y([11])39 b(R.)26 b(W.)f(Flo)n(yd.)h(Algorithm)g(245:)36 b(T)-6 b(reesort3.)5 3560 y Fm(Communic)l(ations)28 b(of)f(the)i(A)n (CM)p Fs(,)c(7\(12\):701,)k(1964.)-152 3732 y([12])39 b(M.)26 b(L.)g(F)-6 b(redman,)26 b(J.)g(Koml\023)-38 b(os,)27 b(and)f(E.)g(Szemer)n(\023)-36 b(edi.)26 b(Storing)5 3819 y(a)g(sparse)h(table)f(with)g(O\(1\))f(w)n(orst)h(case)h(access)g (time.)5 3906 y Fm(Journal)h(of)g(the)g(A)n(CM)p Fs(,)e (31\(3\):538{544,)k(1984.)-152 4078 y([13])39 b(M.)26 b(L.)g(F)-6 b(redman)26 b(and)f(D.)h(E.)g(Willard.)h(Surpassing)f(the)5 4165 y(information)h(theoretic)f(b)r(ound)f(with)h(fusion)h(trees.)f Fm(Journal)5 4252 y(of)h(Computer)i(and)f(System)h(Scienc)l(es)p Fs(,)e(47:424{436,)j(1993.)-152 4424 y([14])39 b(M.)26 b(L.)g(F)-6 b(redman)26 b(and)f(D.)h(E.)g(Willard.)h(T)-6 b(rans-dic)n(hotomous)5 4511 y(algorithms)27 b(for)g(minim)n(um)e (spanning)h(trees)g(and)f(shortest)5 4598 y(paths.)h Fm(Journal)i(of)f(Computer)i(and)f(System)h(Scienc)l(es)p Fs(,)5 4685 y(48:533{551,)h(1994.)-152 4857 y([15])39 b(D.)26 b(Harel)g(and)f(R.)h(T)-6 b(arjan.)27 b(F)-6 b(ast)25 b(algorithms)j(for)e(\014nding)5 4944 y(nearest)g(common)g (ancestors.)i Fm(SIAM)f(Journal)h(of)5 5031 y(Computing)p Fs(,)f(13\(2\):338{355,)j(1984.)-152 5203 y([16])39 b(C.)27 b(T.)f(M.)g(Jacobs)h(and)e(P)-6 b(.)26 b(v)l(an)f(Emde)h(Boas.)h(Tw)n (o)g(results)5 5290 y(on)e(tables.)h Fm(Information)h(Pr)l(o)l(c)l (essing)i(L)l(etters)p Fs(,)e(22\(1\):43{48,)5 5378 y(1986.)2040 1306 y([17])39 b(Y.)25 b(Matias,)j(J.)e(S.)g(Vitter,)g(and)f(N.)h(E.)g (Y)-6 b(oung.)2197 1394 y(Appro)n(ximate)25 b(data)h(structures)g(with) f(applications.)j(In)2197 1481 y Fm(Pr)l(o)l(c.)g(5th)g(A)n(CM-SIAM)f (Symp.)h(Discr)l(ete)h(A)n(lgorithms,)2197 1568 y(SOD)n(A)p Fs(,)d(pages)g(187{194,)j(1994.)2040 1715 y([18])39 b(K.)26 b(Mehlhorn.)g Fm(Data)i(Structur)l(es)j(and)d(A)n(lgorithms:)35 b(3.)2197 1802 y(Multidimensional)27 b(Se)l(ar)l(ching)i(and)f (Computational)2197 1889 y(Ge)l(ometry)p Fs(.)g(Springer,)e(1984.)2040 2036 y([19])39 b(P)-6 b(.)25 b(B.)h(Miltersen,)h(N.)e(Nisan,)h(S.)g (Safra,)g(and)f(A.)g(Wigderson.)2197 2123 y(On)g(data)h(structures)f (and)h(asymmetric)g(comm)n(unication)2197 2211 y(complexit)n(y)-6 b(.)25 b Fm(Journal)k(of)e(Computer)i(and)f(System)2197 2298 y(Scienc)l(es)p Fs(,)f(57\(1\):37{49,)i(1998.)2040 2445 y([20])39 b(F.)26 b(P)-6 b(.)26 b(Preparata)h(and)e(M.)h(Shamos.)h Fm(Computational)2197 2532 y(Ge)l(ometry)p Fs(.)h(Springer-V)-6 b(erlag,)26 b(New)g(Y)-6 b(ork,)25 b(1985.)2040 2679 y([21])39 b(J.)26 b(P)-6 b(.)26 b(Sc)n(hmidt)f(and)g(A.)h(Siegel.)h (The)f(spatial)g(complexit)n(y)g(of)2197 2766 y(oblivious)g Fr(k)r Fs(-prob)r(e)g(hash)f(functions.)i Fm(SIAM)g(Journal)h(of)2197 2853 y(Computing)p Fs(,)e(19\(5\):775{786,)k(1990.)2040 3000 y([22])39 b(R.)25 b(Seidel)h(and)g(C.)g(R.)f(Aragon.)i(Randomized) e(searc)n(h)i(trees.)2197 3087 y Fm(A)n(lgorithmic)l(a)p Fs(,)f(16\(4/5\):464{497,)31 b(1996.)2040 3234 y([23])39 b(M.)26 b(Thorup.)g(F)-6 b(aster)26 b(deterministic)h(sorting)f(and)f (priorit)n(y)2197 3321 y(queues)g(in)h(linear)g(space.)h(In)e Fm(Pr)l(o)l(c.)j(9th)g(A)n(CM-SIAM)2197 3409 y(Symp)l(osium)g(on)g (Discr)l(ete)h(A)n(lgorithms)f(\(SOD)n(A\))p Fs(,)e(pages)2197 3496 y(550{555,)j(1998.)2040 3643 y([24])39 b(D.)26 b(E.)g(Willard.)h (Log-logarithmic)g(w)n(orst-case)h(range)2197 3730 y(queries)e(are)g(p) r(ossible)h(in)e(space)i(\002\()p Fr(N)8 b Fs(\).)25 b Fm(Information)2197 3817 y(Pr)l(o)l(c)l(essing)k(L)l(etters)p Fs(,)g(17\(2\):81{84,)g(1983.)2040 3964 y([25])39 b(J.)26 b(W.)g(J.)h(Williams.)g(Algorithm)g(232:)35 b(Heapsort.)2197 4051 y Fm(Communic)l(ations)28 b(of)f(the)i(A)n(CM)p Fs(,)c(7\(6\):347{348,)30 b(1964.)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF