(no subject)

Marc Snir (snir@watson.ibm.com)
Sun, 2 Feb 1997 17:52:53 -0500

%!PS-Adobe-2.0
%%Creator: dvips 5.47 (RS/6000 1.0) Copyright 1986-91 Radical Eye Software
%%Title: temp.dvi
%%Pages: 8 1
%%BoundingBox: 0 0 612 792
%%EndComments
%%BeginProcSet: tex.pro
/TeXDict 250 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch
load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{
isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
Resolution VResolution vsize neg mul TR matrix currentmatrix dup dup 4 get
round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@letter{/vsize 10
N}B /@landscape{/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{
/vsize 15.5531 N}B /@ledger{/vsize 16 N}B /@legal{/vsize 13 N}B /@manualfeed{
statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N
/FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin
/FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array
/BitMaps X /BuildChar{CharBuilder} N /Encoding IE N end dup{/foo setfont}2
array copy cvx N load 0 nn put /ctr 0 N[}B /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 dup definefont
setfont}B /ch-width{ch-data dup length 5 sub get} B /ch-height{ch-data dup
length 4 sub get} B /ch-xoff{128 ch-data dup length 3 sub get sub} B /ch-yoff{
ch-data dup length 2 sub get 127 sub} B /ch-dx{ch-data dup length 1 sub get} B
/ch-image{ch-data dup 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 /sf 0 N /CharBuilder{save 3 1 roll S
dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0
ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice
ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image}
imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr
put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 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}N /eop{clear SI restore
showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256
array N 0 1 255{IE S 1 string dup 0 3 index put cvn put} for}N /p /show load N
/RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X
/rulex X V}B /V statusdict begin /product where{pop product dup length 7 ge{0
7 getinterval(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1
TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1
-.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{
moveto}B /delta 0 N /tail{dup /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{clear SS restore}B end
%%EndProcSet
TeXDict begin 1000 300 300 @start /Fa 8 118 df<387CFEFEFE7C3800000000387CFEFE
FE7C3807127D910D>58 D<FFFFF800FFFFFF000FC01FC00FC007E00FC003F00FC001F80FC001F8
0FC000FC0FC000FC0FC000FC0FC000FE0FC000FE0FC000FE0FC000FE0FC000FE0FC000FE0FC000
FE0FC000FE0FC000FC0FC000FC0FC000FC0FC001F80FC001F80FC003F00FC007E00FC01FC0FFFF
FF00FFFFF8001F1C7E9B25>68 D<03FC000FFE001F1F003E1F007C1F007C0E00FC0000FC0000FC
0000FC0000FC0000FC00007C00007E01803E03801F07000FFE0003F80011127E9115>99
D<1E003F003F007F003F003F001E0000000000000000000000FF00FF001F001F001F001F001F00
1F001F001F001F001F001F001F001F001F00FFE0FFE00B1E7F9D0E>105
D<FF1FC0FF7FE01FE1F01F80F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00
F81F00F81F00F81F00F8FFE7FFFFE7FF18127F911B>110 D<01FC000FFF801F07C03E03E07C01
F07C01F0FC01F8FC01F8FC01F8FC01F8FC01F8FC01F87C01F07C01F03E03E01F07C00FFF8001FC
0015127F9118>I<1FD83FF87038E018E018F000FF807FE07FF01FF807FC007CC01CC01CE01CF0
38FFF0CFC00E127E9113>115 D<FF07F8FF07F81F00F81F00F81F00F81F00F81F00F81F00F81F
00F81F00F81F00F81F00F81F00F81F00F81F01F80F03F80FFEFF03F8FF18127F911B>117
D E /Fb 13 85 df<07F8001FFE00381F80780F80FC0FC0FC0FC0FC0FC0780FC0301F80001F00
003E00007C0000700000E00000E00000C00000C00000C00000C00000C00000C000000000000000
00000000000001C00007F00007F00007F00007F00007F00001C00012207D9F19>63
D<0000E000000000E000000001F000000001F000000001F000000003F800000003F800000007FC
00000007FC0000000FFE0000000CFE0000000CFE000000187F000000187F000000307F80000030
3F800000703FC00000601FC00000601FC00000C01FE00000C00FE00001FFFFF00001FFFFF00001
8007F000030003F800030003F800060003FC00060001FC000E0001FE00FFE01FFFE0FFE01FFFE0
231F7E9E28>65 D<FFFFFFE0FFFFFFE007F007E007F001E007F000E007F0006007F0007007F000
3007F0003007F0603007F0603007F0600007F0600007F1E00007FFE00007FFE00007F1E00007F0
600007F0600007F0600C07F0600C07F0000C07F0001807F0001807F0001807F0003807F0007807
F000F807F003F0FFFFFFF0FFFFFFF01E1F7E9E22>69 D<FFFFFFE0FFFFFFE007F007E007F001E0
07F000E007F0006007F0007007F0003007F0003007F0603007F0603007F0600007F0600007F1E0
0007FFE00007FFE00007F1E00007F0600007F0600007F0600007F0600007F0000007F0000007F0
000007F0000007F0000007F0000007F0000007F00000FFFFC000FFFFC0001C1F7E9E21>I<0007
FC0200003FFF0E0000FE03DE0003F000FE0007E0003E000FC0001E001F80001E003F00000E003F
00000E007F000006007E000006007E00000600FE00000000FE00000000FE00000000FE00000000
FE00000000FE007FFFE0FE007FFFE07E0000FE007E0000FE007F0000FE003F0000FE003F0000FE
001F8000FE000FC000FE0007E000FE0003F001FE0000FE03BE00003FFF1E000007FC0600231F7D
9E29>I<FFFF9FFFF0FFFF9FFFF007F000FE0007F000FE0007F000FE0007F000FE0007F000FE00
07F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007FFFFFE
0007FFFFFE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000
FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE0007F000FE00FFFF9FFFF0FFFF
9FFFF0241F7E9E29>I<FFFF80FFFF8007F00007F00007F00007F00007F00007F00007F00007F0
0007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0
0007F00007F00007F00007F00007F00007F000FFFF80FFFF80111F7F9E14>I<FFF000007FF8FF
F80000FFF807F80000FF0006FC0001BF0006FC0001BF0006FC0001BF00067E00033F00067E0003
3F00063F00063F00063F00063F00061F800C3F00061F800C3F00061F800C3F00060FC0183F0006
0FC0183F000607E0303F000607E0303F000603F0603F000603F0603F000603F0603F000601F8C0
3F000601F8C03F000600FD803F000600FD803F0006007F003F0006007F003F0006003E003F0006
003E003F0006003E003F00FFF01C07FFF8FFF01C07FFF82D1F7E9E32>77
D<FFF800FFF0FFF800FFF007FC00060007FE00060007FF00060006FF800600067F800600063FC0
0600061FE00600060FF00600060FF806000607FC06000603FC06000601FE06000600FF06000600
7F860006007FC60006003FE60006001FE60006000FF600060007FE00060003FE00060003FE0006
0001FE00060000FE000600007E000600003E000600001E000600001E00FFF0000E00FFF0000600
241F7E9E29>I<001FF80000FFFF0001F81F8007E007E00FC003F01F8001F81F0000F83F0000FC
7F0000FE7E00007E7E00007EFE00007FFE00007FFE00007FFE00007FFE00007FFE00007FFE0000
7FFE00007FFE00007F7E00007E7F0000FE7F0000FE3F0000FC3F8001FC1F8001F80FC003F007E0
07E001F81F8000FFFF00001FF800201F7D9E27>I<FFFFFE00FFFFFF8007F00FE007F003F007F0
01F807F001F807F001FC07F001FC07F001FC07F001FC07F001FC07F001F807F001F807F003F007
F00FE007FFFF8007FFFE0007F0000007F0000007F0000007F0000007F0000007F0000007F00000
07F0000007F0000007F0000007F0000007F00000FFFF8000FFFF80001E1F7E9E24>I<FFFFF800
00FFFFFF000007F01FC00007F007E00007F003F00007F003F00007F003F80007F003F80007F003
F80007F003F80007F003F00007F003F00007F007E00007F01FC00007FFFF000007FFFE000007F0
3F800007F01FC00007F01FE00007F00FE00007F00FE00007F00FE00007F00FE00007F00FE00007
F00FE00007F00FE03007F00FE03007F00FF07007F007F860FFFF81FFE0FFFF807F80241F7E9E27
>82 D<7FFFFFFC7FFFFFFC7C0FE07C700FE01C600FE00C600FE00CE00FE00EC00FE006C00FE006
C00FE006C00FE006000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE0
00000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE00007FF
FFC007FFFFC01F1E7E9D24>84 D E /Fc 31 122 df<007000F001F003C007800F001E001C003C
003800780070007000F000E000E000E000E000E000E000E000E000F00070007000780038003C00
1C001E000F00078003C001F000F000700C24799F18>40 D<6000F00078003C001E000F00078003
8003C001C001E000E000E000F00070007000700070007000700070007000F000E000E001E001C0
03C0038007800F001E003C007800F00060000C247C9F18>I<01C00001C00001C00001C000C1C1
80F1C780F9CF807FFF001FFC0007F00007F0001FFC007FFF00F9CF80F1C780C1C18001C00001C0
0001C00001C00011147D9718>I<3C7E7F7F7F3F0F0E1E7CF870080C788518>44
D<3C7E7E7E7E3C0000000000000000387C7E7E7E3E0E1E3C78F060071A789318>59
D<7FFF00FFFF807FFF0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0
0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0007FFF
00FFFF807FFF00111C7D9B18>73 D<FC01F8FE03F8FE03F83B06E03B06E03B06E03B06E03B8EE0
3B8EE0398CE0398CE039DCE039DCE039DCE038D8E038D8E038F8E03870E03870E03800E03800E0
3800E03800E03800E03800E0FE03F8FE03F8FE03F8151C7F9B18>77 D<FFFE00FFFF80FFFFC01C
03C01C01E01C00E01C00701C00701C00701C00701C00701C00E01C01E01C03C01FFFC01FFF801F
FE001C00001C00001C00001C00001C00001C00001C00001C0000FF8000FF8000FF8000141C7F9B
18>80 D<7FF800FFFE007FFF001C0F801C03801C03C01C01C01C01C01C01C01C03C01C03801C0F
801FFF001FFE001FFE001C0F001C07801C03801C03801C03801C03801C03801C039C1C039C1C03
9C7F03FCFF81F87F00F0161C7F9B18>82 D<07F3801FFF803FFF807C1F80700780F00380E00380
E00380E00000F000007800003F00001FF0000FFE0001FF00001F800003C00001E00000E00000E0
6000E0E000E0E001E0F001C0FC07C0FFFF80FFFF00E7FC00131C7E9B18>I<1FE0003FF8007FFC
00783E00300F0000070000070001FF000FFF003FFF007F0700780700F00700E00700E00700F00F
00783F007FFFF03FFBF00FE1F014147D9318>97 D<01FE0007FF001FFF803F07803C0300780000
700000F00000E00000E00000E00000E00000F000007000007801C03C01C03F07C01FFF8007FF00
01FC0012147D9318>99 D<001F80003F80001F8000038000038000038000038000038003F3800F
FB801FFF803E1F80780F80700780F00780E00380E00380E00380E00380E00380E00780F0078070
0780780F803E3F801FFFF00FFBF803E3F0151C7E9B18>I<03F0000FFC001FFE003E1F00780780
700380F003C0E001C0E001C0FFFFC0FFFFC0FFFFC0F000007000007801C03C01C03F07C01FFF80
07FF0001FC0012147D9318>I<001FC0007FE000FFE001F1E001C0C001C00001C00001C0007FFF
C0FFFFC0FFFFC001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0
0001C00001C00001C0007FFF007FFF007FFF00131C7F9B18>I<03F1F007FFF80FFFF81E1F303C
0F003807003807003807003807003807003C0F001E1E001FFC003FF8003BF0003800003C00001F
FF001FFFC03FFFE07801F0F00078E00038E00038E00038F000787800F07E03F03FFFE00FFF8003
FE00151F7F9318>I<03800007C00007C00007C0000380000000000000000000000000007FC000
FFC0007FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000
01C00001C00001C000FFFF00FFFF80FFFF00111D7C9C18>105 D<7FE000FFE0007FE00000E000
00E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000
00E00000E00000E00000E00000E00000E00000E00000E0007FFFC0FFFFE07FFFC0131C7E9B18>
108 D<7DF1F000FFFBF8007FFFFC001F1F1C001E1E1C001E1E1C001C1C1C001C1C1C001C1C1C00
1C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C007F1F1F00FFBFBF
807F1F1F001914819318>I<7E3F00FEFF807FFFC00FE1E00F80E00F00E00F00E00E00E00E00E0
0E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07FC3FCFFE7FE7FC3FC1714809318>
I<01F0000FFE001FFF003E0F803803807001C07001C0E000E0E000E0E000E0E000E0E000E0F001
E07001C07803C03C07803E0F801FFF000FFE0001F00013147E9318>I<7E3E00FEFF807FFFC00F
E3E00F80F00F00700F00780E00380E00380E00380E00380E00380F00380F00780F00700F80F00F
C3E00FFFC00EFF800E7E000E00000E00000E00000E00000E00000E00000E00007FC000FFE0007F
C000151E809318>I<03F3800FFB801FFF803E1F80780F80700780F00780E00380E00380E00380
E00380E00380E00380F00780700780780F803E1F801FFF800FFB8003F380000380000380000380
000380000380000380000380003FF8003FF8003FF8151E7E9318>I<7F87E0FF9FF87FBFF803FC
7803F03003E00003C00003C00003C0000380000380000380000380000380000380000380000380
007FFE00FFFF007FFE0015147F9318>I<0FF7003FFF007FFF00F81F00E00700E00700F007007C
00007FF0001FFC0007FE00001F00600780E00380F00380F00780FC0F00FFFF00FFFE00E7F80011
147D9318>I<0180000380000380000380000380007FFFC0FFFFC0FFFFC0038000038000038000
0380000380000380000380000380000380000380400380E00380E00381E003C3C001FFC000FF80
007E0013197F9818>I<7E07E0FE0FE07E07E00E00E00E00E00E00E00E00E00E00E00E00E00E00
E00E00E00E00E00E00E00E00E00E00E00E01E00F07E007FFFC03FFFE01FCFC1714809318>I<7F
8FF0FF8FF87F8FF01E03C00E03800E03800E0380070700070700070700038E00038E00038E0003
8E0001DC0001DC0001DC0000F80000F80000700015147F9318>I<FF8FF8FF8FF8FF8FF83800E0
3800E03800E01C01C01C01C01C71C01CF9C01CF9C01CD9C01CD9C00DDD800DDD800DDD800D8D80
0F8F800F8F8007070015147F9318>I<7F8FF07F9FF07F8FF0070700078E00039E0001DC0001F8
0000F80000700000F00000F80001DC00039E00038E000707000F07807F8FF0FF8FF87F8FF01514
7F9318>I<7F8FF0FF8FF87F8FF00E01C00E03800E038007038007070007070003870003860003
8E0001CE0001CE0000CC0000CC0000DC0000780000780000780000700000700000700000F00000
E00079E0007BC0007F80003F00001E0000151E7F9318>I E /Fd 24 118
df<001C0000003E0000003E0000002E0000006700000067000000E7800000C7800000C3800001
C3C0000183C0000181C0000381E0000381E0000700F0000700F0000600F0000E0078000FFFF800
0FFFF8001FFFFC001C003C0018003C0038001E0038001E0070001F0070000F0070000F00E00007
80191D7F9C1C>65 D<FFFC00FFFF00FFFF80F00FE0F003F0F000F0F00078F00078F0003CF0003C
F0001CF0001EF0001EF0001EF0001EF0001EF0001EF0001EF0001EF0003CF0003CF0007CF00078
F000F0F001F0F007E0FFFFC0FFFF00FFFC00171D7C9C1E>68 D<FFFFC0FFFFC0FFFFC0F00000F0
0000F00000F00000F00000F00000F00000F00000F00000FFFF80FFFF80FFFF80F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000FFFFC0FFFFC0FFFFC0121D7C9C
19>I<003F8001FFF003FFF807C0F80F00181E00003E00003C0000780000780000780000F00000
F00000F00000F00000F00000F00000F007F8F007F8F007F87800387800387800383C00383E0038
1E00380F003807C07803FFF801FFF0003F80151F7D9D1C>71 D<F000F0F000F0F000F0F000F0F0
00F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0FFFFF0FFFFF0FFFFF0F000F0F000F0F0
00F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0141D7C9C
1D>I<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0041D7C9C0C>I<F0
00F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000
F000F000F000F000F000F000FFFEFFFEFFFE0F1D7C9C16>76 D<FC0007E0FC0007E0FC0007E0EE
000DE0EE000DE0EE000DE0E70019E0E70019E0E70019E0E78039E0E38031E0E3C071E0E3C071E0
E1C061E0E1C061E0E1E0E1E0E1E0E1E0E0E0C1E0E0F1C1E0E07181E0E07181E0E07181E0E03B01
E0E03B01E0E03B01E0E01E01E0E01E01E0E01E01E0E00001E01B1D7C9C24>I<FC0070FC0070FE
0070EE0070EF0070E70070E70070E78070E38070E3C070E3C070E1E070E1E070E0E070E0F070E0
7070E07870E07870E03C70E03C70E01C70E01E70E00E70E00E70E00F70E00770E007F0E003F0E0
03F0141D7C9C1D>I<FFFC00FFFF00FFFF80F007C0F003E0F001E0F000F0F000F0F000F0F000F0
F000F0F001E0F003E0F007C0FFFF80FFFF00FFFC00F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000141D7C9C1B>80 D<FFF800FFFF00FFFF80F007C0F0
01E0F000E0F000F0F000F0F000F0F000F0F000E0F001E0F007C0FFFF80FFFF00FFF800F03C00F0
1C00F01E00F00F00F00F00F00780F00780F003C0F003C0F001E0F000F0F000F0F00078151D7C9C
1B>82 D<03F8000FFE001FFF003E0F00780300780000F00000F00000F00000F00000F800007C00
007F00003FE0001FFC0007FE0001FF00001F800007800007C00003C00003C00003C00003C00003
C0C00780E00780FC1F007FFE001FFC0007F000121F7E9D17>I<FFFFFF80FFFFFF80FFFFFF8000
1E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000
001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000191D7F9C1C>I<07C01FE03FF078
787018601CFFFCFFFCFFFCE000E000E000700070043C1C3FFC1FF807E00E127E9112>101
D<00FC01FC03FC07000E000E000E000E000E000E000E00FFE0FFE0FFE00E000E000E000E000E00
0E000E000E000E000E000E000E000E000E000E000E1D809C0D>I<03C3C00FFFC01FFFC01C3800
381C00381C00381C00381C00381C001C38001FF8001FF0003BC0003800003800001FFC001FFF00
3FFF80700780E001C0E001C0E001C0F003C07C0F803FFF001FFE0007F800121B7F9115>I<E3E0
EFF0FFF8F83CF01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01C0E127D9115
>110 D<03F0000FFC001FFE003C0F00780780700380E001C0E001C0E001C0E001C0E001C0F003
C07003807807803C0F001FFE000FFC0003F00012127F9115>I<E3E0EFF0FFF8F87CF01CE01EE0
0EE00EE00EE00EE00EE00EE01CF03CF87CFFF8EFF0E3C0E000E000E000E000E000E000E000E000
0F1A7D9115>I<078E1FEE3FFE7C3E781E700EE00EE00EE00EE00EE00EE00EF00E701E7C3E3FFE
1FEE0F8E000E000E000E000E000E000E000E000E0F1A7E9115>I<E380E780EF80FC00F800F000
F000E000E000E000E000E000E000E000E000E000E000E00009127D910E>I<1FC03FF07FF0F030
E000E000F0007F003FC01FE000F0003800388038F078FFF07FE01FC00D127F9110>I<1C001C00
1C001C001C001C00FFE0FFE0FFE01C001C001C001C001C001C001C001C001C001C001C001C201F
F00FF007C00C187F970F>I<E01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE0
1CE07CFFFC7FDC3F1C0E127D9115>I E /Fe 39 123 df<003F03F00000FFCFF80003C0FC1C00
0701F03C000701F03C000E00E018000E00E000000E00E000000E00E000000E00E000000E00E000
00FFFFFFFC00FFFFFFFC000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E0
1C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00
E01C007FC7FCFF807FC7FCFF80211D809C23>14 D<00C00180030006000E000C001C0018003800
300030007000700060006000E000E000E000E000E000E000E000E000E000E000E000E000600060
007000700030003000380018001C000C000E0006000300018000C00A2A7D9E10>40
D<C0006000300018001C000C000E000600070003000300038003800180018001C001C001C001C0
01C001C001C001C001C001C001C001C0018001800380038003000300070006000E000C001C0018
0030006000C0000A2A7E9E10>I<70F0F8F8781818183030706040050D7D840C>44
D<FFE0FFE0FFE00B0380890E>I<70F8F8F87005057D840C>I<00030003000700060006000E000C
001C0018001800380030003000700060006000E000C000C001C001800380030003000700060006
000E000C000C001C001800180038003000700060006000E000C000C00010297E9E15>I<FFF0FF
F00F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00
0F000F000F000F000F00FFF0FFF00C1C7F9B0F>73 D<FF00FFC0FF80FFC00F801E000FC00C000F
C00C000DE00C000CF00C000CF00C000C780C000C780C000C3C0C000C1E0C000C1E0C000C0F0C00
0C0F0C000C078C000C07CC000C03CC000C01EC000C01EC000C00FC000C00FC000C007C000C003C
000C003C001E001C00FFC01C00FFC00C001A1C7E9B1F>78 D<003F800000FFE00003E0F8000780
3C000E000E001E000F003C00078038000380780003C0780003C0700001C0F00001E0F00001E0F0
0001E0F00001E0F00001E0F00001E0F00001E0F00001E0780003C0780003C0780003C03C000780
3C0007801E000F000F001E0007803C0003E0F80000FFE000003F80001B1E7E9C20>I<FFFF0000
FFFFE0000F00F0000F0038000F003C000F001E000F001E000F001E000F001E000F001E000F003C
000F0038000F00F0000FFFE0000FFFC0000F01E0000F00F0000F0078000F0078000F0078000F00
78000F0078000F0078000F0078000F0078300F003830FFF03C60FFF01FE0000007C01C1D7E9B1F
>82 D<7FFFFFC07FFFFFC0780F03C0700F01C0600F00C0E00F00E0C00F0060C00F0060C00F0060
C00F0060000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00
00000F0000000F0000000F0000000F0000000F0000000F0000000F000003FFFC0003FFFC001B1C
7F9B1E>84 D<FFF0FFC0FFF0FFC00F001E000F000C000F000C000F000C000F000C000F000C000F
000C000F000C000F000C000F000C000F000C000F000C000F000C000F000C000F000C000F000C00
0F000C000F000C000F000C000F000C0007001800078018000380300001C0300000E0E000007FC0
00001F00001A1D7E9B1F>I<FFE01FF0FFE01FF00F0007800F0003000F00030007800600078006
0007C00E0003C00C0003C00C0003E01C0001E0180001E0180000F0300000F0300000F030000078
60000078600000786000003CC000003CC000003CC000001F8000001F8000001F8000000F000000
0F0000000F0000000600001C1D7F9B1F>I<0FE0001FF8003C3C003C1E00180E00000E00001E00
07FE001FFE003E0E00780E00F00E00F00E60F00E60F01E60783E603FFFC01F878013127F9115>
97 D<FC0000FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C7E00
1DFF001F87801E01C01C01E01C00E01C00F01C00F01C00F01C00F01C00F01C00F01C00E01C01E0
1E01C01F078019FF00187C00141D7F9C17>I<03F00FF81E3C383C78187000F000F000F000F000
F000F000780078063C061E0C0FF803E00F127F9112>I<001F80001F8000038000038000038000
038000038000038000038000038000038003E3800FFB801E0F80380780780380700380F00380F0
0380F00380F00380F00380F003807003807803803807801E1F800FFBF007E3F0141D7F9C17>I<
03E00FF01C38381C781E700EFFFEFFFEF000F000F000F000700078063C061E0C0FF803E00F127F
9112>I<007801FC039E071E0E0C0E000E000E000E000E000E00FFE0FFE00E000E000E000E000E
000E000E000E000E000E000E000E000E000E007FE07FE00F1D809C0D>I<00038007E7C00FFDC0
3C3DC0381C00781E00781E00781E00781E00381C003C3C003FF00037E000700000700000300000
3FFC001FFF003FFF80700780E001C0E001C0E001C0E001C07003803C0F001FFE0007F800121C7F
9215>I<FC0000FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C7C
001DFF001F07001E03801E03801C03801C03801C03801C03801C03801C03801C03801C03801C03
801C03801C0380FF9FF0FF9FF0141D7F9C17>I<18003C007C003C001800000000000000000000
000000FC00FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C00FF80FF80
091D7F9C0C>I<FC0000FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00
001C7FC01C7FC01C3E001C18001C30001C60001CC0001DE0001FE0001E70001C78001C38001C3C
001C1C001C0E001C0F00FF9FE0FF9FE0131D7F9C16>107 D<FC00FC001C001C001C001C001C00
1C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C
00FF80FF80091D7F9C0C>I<FC7E07E000FDFF9FF8001F83B838001E01E01C001E01E01C001C01
C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C
01C01C001C01C01C001C01C01C00FF8FF8FF80FF8FF8FF8021127F9124>I<FC7C00FDFF001F07
001E03801E03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03
80FF9FF0FF9FF014127F9117>I<03F0000FFC001E1E00380700780780700380F003C0F003C0F0
03C0F003C0F003C0F003C07003807807803807001E1E000FFC0003F00012127F9115>I<FC7E00
FDFF001F87801E03C01C01E01C01E01C00F01C00F01C00F01C00F01C00F01C00F01C01E01C01E0
1E03C01F07801DFF001C7C001C00001C00001C00001C00001C00001C0000FF8000FF8000141A7F
9117>I<03E1800FF9801E1F803C0780780780780380F00380F00380F00380F00380F00380F003
807803807807803C07801E1F800FFB8007E380000380000380000380000380000380000380001F
F0001FF0141A7F9116>I<FDE0FFF01F781E781E301C001C001C001C001C001C001C001C001C00
1C001C00FFC0FFC00D127F9110>I<1F903FF07070E030E030E030F8007F803FE00FF000F8C038
C038E038E038F070DFE08FC00D127F9110>I<0C000C000C000C000C001C001C003C00FFE0FFE0
1C001C001C001C001C001C001C001C001C301C301C301C301C301E600FC007800C1A7F9910>I<
FC1F80FC1F801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C0380
1C03801C07800C0F800FFBF003E3F014127F9117>I<FF0FE0FF0FE01C07801C03000E06000E06
000E0600070C00070C00071C0003980003980003F80001F00001F00000E00000E00000E0001312
7F9116>I<FF3FCFE0FF3FCFE01C0F07801C0F03001C1F03000E1B06000E1B86000E1B86000E31
8E000731CC000731CC000760CC0003E0F80003E0F80003E0F80001C0700001C0700001C070001B
127F911E>I<7F8FF07F8FF00F0780070600038E0001DC0001D80000F00000700000780000F800
01DC00038E00030E000607000F0380FF8FF8FF8FF81512809116>I<FF0FE0FF0FE01C07801C03
000E06000E06000E0600070C00070C00071C0003980003980003F80001F00001F00000E00000E0
0000E00000C00000C00000C000F18000F18000C700007E00003C0000131A7F9116>I<7FFC7FFC
7838707060F060E061C063C00380070C0F0C0E0C1C1C3C1838187078FFF8FFF80E127F9112>I
E /Ff 20 121 df<F0F0F0F004047B830E>46 D<00C001C007C0FFC0FFC0FBC003C003C003C003
C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0
03C003C0FFFFFFFFFFFF10227CA118>49 D<03F0000FFC001FFE003C1F003807807007C07003C0
F003E0E001E06001E02001E00001E00001E00001E00003C00003C0000780000780000F00001E00
003C0000780000F00001E00001C0000380000700000E00001C0000380000700000FFFFE0FFFFE0
FFFFE013227EA118>I<01F00007FC001FFF003E0F003807807003C02003C02003C00003C00003
C00003C0000780000780000F00001E0003FC0003F80003FE00000F000007800003C00003C00001
E00001E00001E00001E00001E08001E0C003C0E003C07007803C0F801FFF000FFC0003F0001323
7EA118>I<FFFFE0FFFFE0FFFFE00001E00003C0000380000780000F00000E00001E00001C0000
3C0000380000780000780000F00000F00000E00001E00001E00001E00003C00003C00003C00003
C00003C00007800007800007800007800007800007800007800013217EA018>55
D<000FF000007FFC0000FFFF0001F01F0003C00700078002000F0000001E0000003E0000003C00
00003C000000780000007800000078000000F0000000F0000000F0000000F0000000F0000000F0
000000F0000000F0000000F00000007800000078000000780000003C0000003C0000003E000000
1E0000000F0000800780018003C0038001F00F8000FFFF00007FFC00000FF00019257DA31F>67
D<FC00007EFE0000FEFE0000FEFE0000FEF70001DEF70001DEF70001DEF78003DEF380039EF380
039EF3C0079EF3C0079EF1C0071EF1C0071EF1E00F1EF0E00E1EF0E00E1EF0F01E1EF0F01E1EF0
701C1EF0783C1EF0783C1EF038381EF03C781EF03C781EF01C701EF01C701EF01EF01EF00EE01E
F00EE01EF00FE01EF007C01EF007C01EF007C01EF000001E1F237BA22A>77
D<FFFC00FFFF80FFFFC0F003E0F000F0F00078F00038F0003CF0003CF0003CF0003CF0003CF000
38F00078F000F0F003E0FFFFC0FFFF80FFFE00F01E00F00F00F00700F00780F00380F003C0F001
E0F001E0F000F0F000F0F00078F00038F0003CF0001EF0001EF0000F18237BA21F>82
D<07E01FF83FFC3C1E301E200F000F000F000F01FF0FFF3FFF7F0F780FF00FF00FF00FF80F7C3F
7FFF3FFF1F8F10167E9517>97 D<01FC0007FF000FFF801F07803C0180780000780000700000F0
0000F00000F00000F00000F00000F000007800007800007800403C00C01F07C00FFFC007FF8001
FC0012167E9516>99 D<03F00007FC001FFE003E0F003C0780780380780380F001C0FFFFC0FFFF
C0FFFFC0F00000F00000F000007000007800007800003C00801F07800FFF8007FF0001F8001216
7E9516>101 D<F0F0F0F0000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F004237DA20B>105 D<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F004237DA20B>108 D<F1F8F7FCFFFEFE1EF80FF80FF00FF00FF00FF00FF00F
F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F10167C9519>110
D<01FC0007FF000FFF801F07C03C01E07800F07800F0700070F00078F00078F00078F00078F000
78F000787800F07800F07C01F03E03E01F07C00FFF8007FF0001FC0015167F9518>I<F0E0F3E0
F7E0FFE0FF00FC00F800F800F000F000F000F000F000F000F000F000F000F000F000F000F000F0
000B167C9511>114 D<07F01FFE3FFF3C0F7803780078007C003F003FF01FF80FFC01FE001F00
0F000F400FE00FF81EFFFE3FFC0FF010167F9513>I<0F000F000F000F000F000F00FFF8FFF8FF
F80F000F000F000F000F000F000F000F000F000F000F000F000F000F000F080F1C07FC07F803E0
0E1C7F9B12>I<F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F
F00FF01FF83F7FFF7FEF1F8F10167C9519>I<7801F07C01E03E03C01E07C00F0780078F0007DE
0003FC0001FC0000F80000700000F80001FC0003DC00039E00078F000F07801E07801E03C03C01
E07800F0F800F81516809516>120 D E /Fg 21 91 df<3078F8787005057C840D>46
D<000C001C00FC0FF80F38003800380038003800700070007000700070007000E000E000E000E0
00E000E001C001C001C001C001C001C003C07FFEFFFE0F1E7C9D17>49 D<3000003FFFE07FFFE0
7FFFC0600180E00300C00600C00C0000180000180000300000600000C00001C000018000038000
0300000700000600000E00000E00001E00001C00001C00003C00003C00003C0000780000780000
780000300000131F799D17>55 D<0000180000003800000038000000780000007C000000FC0000
00FC000001BC000001BC0000033C0000033E0000061E0000061E00000C1E00000C1E0000181E00
00181F0000300F0000300F0000600F00007FFF0000FFFF0000C00F000180078001800780030007
800300078006000780060007801F0007C0FFC07FFCFFC07FFC1E207E9F22>65
D<0003F808000FFE18003F0738007801F801F000F803C000F007C00070078000700F0000701F00
00701E0000703E0000603C0000607C0000007C0000007C0000007C000000F8000000F8000000F8
000000F8000000F80000C0780000C0780001807C0001803C0003003C0003001E0006001E000C00
0F80180007E0700001FFC000007F00001D217B9F21>67 D<07FFFF0007FFFFE0003C01F0003C00
F80078007C0078003C0078001E0078001E0078001E0078001F00F0001F00F0001F00F0001F00F0
001F00F0001F00F0001F01E0001E01E0003E01E0003E01E0003E01E0003C01E0007C03C0007803
C000F003C000F003C001E003C003C003C00F8007C03F007FFFFC00FFFFE000201F7E9E23>I<07
FFFFF807FFFFF8003C00F8003C0078007800380078003800780038007800380078003800780C30
00F0183000F0180000F0180000F0380000FFF80000FFF80001E0700001E0300001E0300001E030
1801E0303001E0003003C0003003C0006003C0006003C000E003C001C003C003C007C00FC07FFF
FF80FFFFFF801D1F7E9E1F>I<07FFFFF807FFFFF8003C00F8003C007800780038007800380078
0038007800380078003800780C3000F0183000F0180000F0180000F0380000FFF80000FFF80001
E0700001E0300001E0300001E0300001E0300001E0000003C0000003C0000003C0000003C00000
03C0000003C0000007C000007FFE0000FFFE00001D1F7E9E1E>I<0001FC04000FFF0C003F039C
007800FC00F000FC03E0007803C00078078000380F0000381F0000381E0000383E0000303E0000
307C0000007C0000007C0000007C000000F8000000F8000000F8007FFCF8007FFCF80001E07800
01E0780003C07C0003C03C0003C03C0003C01E0003C00F0007C007800F8003E0398001FFF08000
3F80001E217B9F24>I<07FFC7FFC007FFC7FFC0003C007800003C007800007800F000007800F0
00007800F000007800F000007800F000007800F00000F001E00000F001E00000F001E00000F001
E00000FFFFE00000FFFFE00001E003C00001E003C00001E003C00001E003C00001E003C00001E0
03C00003C007800003C007800003C007800003C007800003C007800003C007800007C00F80007F
FCFFF800FFF8FFF800221F7E9E22>I<07FFE007FFE0003C00003C000078000078000078000078
0000780000780000F00000F00000F00000F00000F00000F00001E00001E00001E00001E00001E0
0001E00003C00003C00003C00003C00003C00003C00007C000FFFC00FFFC00131F7F9E10>I<07
FFF00007FFF000003C0000003C0000007800000078000000780000007800000078000000780000
00F0000000F0000000F0000000F0000000F0000000F0000001E0000001E0000001E0000001E001
8001E0018001E0030003C0030003C0030003C0070003C0060003C00E0003C01E0007C07E007FFF
FC00FFFFFC00191F7E9E1C>76 D<07FC03FFC007FC03FFC0003E007C00003E003800006F003000
006F003000006F003000006780300000678030000063C0300000C3C0600000C3C0600000C1E060
0000C1E0600000C0F0600000C0F060000180F0C000018078C000018078C00001803CC00001803C
C00001803CC00003001F800003001F800003000F800003000F800003000F800007000780000F80
0700007FF0030000FFF0030000221F7E9E22>78 D<07FFFF0007FFFFC0003C03E0003C01F00078
00F0007800F8007800F8007800F8007800F8007800F800F001F000F001F000F001E000F003C000
F00F8000FFFE0001FFF80001E0000001E0000001E0000001E0000001E0000003C0000003C00000
03C0000003C0000003C0000003C0000007C000007FFC0000FFFC00001D1F7E9E1F>80
D<0003F800001FFE00003C1F0000F0078001E003C003C001E0078001E00F8001F00F0000F01F00
00F01E0000F83E0000F83C0000F87C0000F87C0000F87C0000F87C0000F8F80001F0F80001F0F8
0001F0F80001F0F80003E0780003E0780003C0780007C07C1E07803C3F0F003C619E001E61BC00
0FC0F80007E1F00003FFC04000FEC0400000E0400000E0800000E1800000FF800000FF000000FF
0000007E0000003C001D297B9F23>I<07FFFC0007FFFF00003C07C0003C03E0007801E0007801
F0007801F0007801F0007801F0007801E000F003E000F003C000F0078000F01F0000FFFC0000FF
F00001E0380001E03C0001E01C0001E01C0001E01E0001E01E0003C03E0003C03E0003C03E0003
C03E0003C03E0603C03E0607C03E0C7FFC1F18FFFC0FF8000003E01F207E9E21>I<003F04007F
CC01E0FC03807C03003C0700380600180E00180E00180E00180E00000F00000F00000FE00007FE
0003FF8001FFC0007FE00007E00001E00000E00000F00000F06000E06000E06000E06000E07001
C0700180F80380FE0F00C7FC0081F80016217D9F19>I<1FFFFFF81FFFFFF81E03C0F83803C038
380780383007803870078018600780186007803860078030C00F0030000F0000000F0000000F00
00000F0000000F0000001E0000001E0000001E0000001E0000001E0000001E0000003C0000003C
0000003C0000003C0000003C0000003C0000007C00001FFFF0003FFFF0001D1F7B9E21>I<FFFC
7FF8FFFC7FF807800F80078007000F0006000F0006000F0006000F0006000F0006000F0006001E
000C001E000C001E000C001E000C001E000C001E000C003C0018003C0018003C0018003C001800
3C0018003C001800380030003800300038003000380060003C00C0001C00C0001E0180000F0700
0007FC000001F800001D20799E22>I<03FFC1FFC003FFC1FFC0003E007C00001E007000001E00
6000000F00C000000F01C000000F83800000078300000007C600000003CC00000003FC00000001
F800000001F000000000F000000000F800000001F800000003FC000000033C000000063C000000
0C1E0000001C1E000000381F000000300F000000600F800000C007800001C007C000038003C000
0FC003E000FFF01FFE00FFE01FFE00221F7F9E22>88 D<03FFFFC003FFFFC003F0078007C00F00
07001F0007001E000E003C000C0078000C00F8000C00F0001801E0000003C00000078000000F80
00000F0000001E0000003C0000007C00000078030000F0030001E0030003E0060003C006000780
06000F000E001F001C001E001C003C007C007801FC00FFFFF800FFFFF8001A1F7D9E1C>90
D E /Fh 10 58 df<1F003F8060C04040C060C060C060C060C060C060C060C06060C060C03F80
1F000B107F8F0F>48 D<18007800F80098001800180018001800180018001800180018001800FF
80FF8009107E8F0F>I<3F007F80F1C0F0E06060006000E000C00180030006001C0038606060FF
C0FFC00B107F8F0F>I<1F003F8071C071C031C001800F800F0001C000E060E0F0E0F0E0F1C07F
801F000B107F8F0F>I<070007000F001F001B003B0033006300E300FFE0FFE00300030003001F
E01FE00B107F8F0F>I<60807F807F007C00600060006F007F8070C060E000E060E0E0E0E1C07F
803F000B107F8F0F>I<07801FC039C061C06000C000DF80FFC0E060C060C060C060606060C03F
801F000B107F8F0F>I<60007FE07FE0C0C0C1800180030006000E000C000C001C001C001C001C
001C0008000B117E900F>I<1F003F8061C060C060C079C03F801F803FC063E0C0E0C060C06060
C03F801F000B107F8F0F>I<1F003F8060C0C0C0C060C060C060C0E07FE03F60006000C070C071
807F003E000B107F8F0F>I E /Fi 20 119 df<70F8F8F0E005057B840E>46
D<000007000000070000000F0000000F0000001F0000003F0000003F0000006F0000006F000000
CF000000CF0000018F0000038F0000030F0000060F0000060F00000C0F80000C07800018078000
180780003FFF80007FFF800060078000C0078000C0078001800780018007800300078007000780
0F0007807FC07FF8FFC07FF81D207E9F22>65 D<01FFFFFE01FFFFFC001E003C001E001C001E00
1C003C000C003C000C003C000C003C001800780C1800780C1800780C0000781C0000F0380000FF
F80000FFF80000F0380001E0300001E0300001E0303001E0306003C0006003C0006003C000C003
C001C007800180078003800780070007801F00FFFFFF00FFFFFE001F1F7D9E1F>69
D<01FFFF0001FFFFC0001E01E0001E00F0001E0078003C0078003C0078003C0078003C00780078
00F0007800F0007801E0007803C000F00F0000FFFE0000FFF80000F03C0001E01E0001E00E0001
E00F0001E00F0003C01E0003C01E0003C01E0003C01E0007803C0007803C1807803C1807803C30
FFF81E30FFF00FE0000007C01D207D9E21>82 D<00F18003FDC0078F800E07801C07803C07803C
0700780700780700780700F00E00F00E00F00E00F00E30F01C60F03C60707C6078FCC03FCFC00F
078014147C9317>97 D<007E0001FF000383800F07801E07801C07003C02007800007800007800
00F00000F00000F00000F00000F00000700200700700381E001FF80007E00011147C9315>99
D<0000780003F80003F00000700000700000700000E00000E00000E00000E00001C00001C000F1
C003FDC0078F800E07801C07803C07803C0700780700780700780700F00E00F00E00F00E00F00E
30F01C60F03C60707C6078FCC03FCFC00F078015207C9F17>I<007C0001FF000783000F01801E
01803C01803C0300780E007FFC007FE000F00000F00000F00000F000007000007002007807003C
1E001FF80007E00011147C9315>I<0000F80001FC0003BC00033C000718000700000700000E00
000E00000E00000E00000E0001FFE001FFE0001C00001C00001C00003800003800003800003800
00380000700000700000700000700000700000700000E00000E00000E00000E00001C00001C000
01C0000180003380007B8000F300007E00003C00001629829F0E>I<006000F000F000E0000000
00000000000000000000000F001F80318031C063806380C3800700070007000E000E000E001C30
1C601C6038C018C01F800F000C1F7D9E0E>105 D<03C01FC01F80038003800380070007000700
07000E000E000E000E001C001C001C001C0038003800380038007000700070007180E300E300E3
00E6007E003C000A207C9F0C>108 D<1E07C0F8003F1FE1FC0033B8730E0063E076070063C03C
07006380380700C780780E000700700E000700700E000700700E000E00E01C000E00E01C000E00
E01C000E00E038601C01C038C01C01C038C01C01C071801C01C031803803803F001801801E0023
147D9325>I<1E07C03F1FE033B87063E07063C038638038C780700700700700700700700E00E0
0E00E00E00E00E01C31C01C61C01C61C038C1C018C3801F81800F018147D931A>I<007C0001FF
000383800F01C01E01C01C01E03C01E07801E07801E07801E0F003C0F003C0F003C0F00780F007
00700F00701E003838001FF00007C00013147C9317>I<03C1E007E7F8067E3C0C7C1C0C781E0C
701E18E01E00E01E00E01E00E01E01C03C01C03C01C03C01C07803C07803C07003C0E003E3C007
7F80071E000700000700000E00000E00000E00000E00001C0000FFC000FFC000171D809317>I<
1E0F003F3F8033F1C063C1C063C3C06383C0C783800700000700000700000E00000E00000E0000
0E00001C00001C00001C00001C000038000018000012147D9313>114 D<00FC03FE07070E0F0E
0F0E0E1E000F800FF007F803FC003E001E701EF01CF01CE03860703FE01F8010147D9313>I<01
8001C0038003800380038007000700FFF0FFF00E000E000E000E001C001C001C001C0038003800
380038307060706070C071803F001E000C1C7C9B0F>I<0F00601F80703180E031C0E06380E063
80E0C381C00701C00701C00701C00E03800E03800E03800E038C0E07180E07180E0F180E1F3007
F3F003E1E016147D9318>I<0F01C01F83C03183E031C1E06380E06380E0C380C00700C00700C0
0700C00E01800E01800E01800E03000E03000E06000E06000F0C0007F80001E00013147D9315>
I E /Fj 4 107 df<00000C00000C00001C0000180000380000300000700000600000E00000C0
0001C0000180000380000300000700000600000E00000C00001C00001800003800003000003000
00700000600000E00000C00001C0000180000380000300000700000600000E00000C00001C0000
180000380000300000700000600000E00000C00000C00000162C7AA000>54
D<001F003F00F800E001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C0
03800700FE00F800FE000700038001C001C001C001C001C001C001C001C001C001C001C001C001
C001C001C000E000F8003F001F102D7DA117>102 D<F800FE000F00038001C001C001C001C001
C001C001C001C001C001C001C001C001C001C001C000E00070003F000F003F007000E001C001C0
01C001C001C001C001C001C001C001C001C001C001C001C001C003800F00FE00F800102D7DA117
>I<C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
C0C0C0C0C0C0C0C0022D7BA10D>106 D E /Fk 46 121 df<00F8F001F8F003F8F00780F00700
F00F00F00F00F00F00F00F00F00F00F00F00F00F00F0FFF8F0FFF8F0FFF8F00F00F00F00F00F00
F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00
F00F00F01420809F18>13 D<007000E001C00380078007000E001E001E003C003C003C00780078
00780078007000F000F000F000F000F000F000F000F000F000F000F000F0007000780078007800
78003C003C003C001E001E000E0007000780038001C000E000700C2E7EA112>40
D<E000700038001C001E000E0007000780078003C003C003C001E001E001E001E000E000F000F0
00F000F000F000F000F000F000F000F000F000F000E001E001E001E001E003C003C003C0078007
8007000E001E001C0038007000E0000C2E7DA112>I<787878781830306060E0050A7D830D>44
D<FFC0FFC0FFC00A037F8B0F>I<07F0000FFC001FFE00383F00700F00600780E00780E003C040
03C04003C00003C00003C00003C0000780000780000F00000E00001C00003C0000780000E00001
C0000380000700000E00001C0000380000700000FFFFC0FFFFC0FFFFC0121F7E9E17>50
D<FFFFFFF0FFFFFFF0000000000000000000000000000000000000000000000000000000000000
0000FFFFFFF0FFFFFFF01C0C7D9023>61 D<001F0000001F0000003F8000003B8000003B800000
7BC0000073C0000071C00000F1E00000E1E00000E0E00001E0F00001E0F00001C0F00003C07800
03C078000380780007803C0007803C0007003C000FFFFE000FFFFE000FFFFE001E000F001E000F
003C000F803C0007803C000780780007C0780003C0780003C0F00003E01B207F9F1E>65
D<001FC000FFF801FFFC03E03C07800C0F00001E00003E00003C00007C00007800007800007800
00F00000F00000F00000F00000F00000F00000F00000F000007800007800007800007C00003C00
003E00001E00000F000207800E03E03E01FFFC00FFF0001FC017227DA01D>67
D<FFFC00FFFF80FFFFC0F007E0F001F0F000F8F00078F0003CF0003CF0001EF0001EF0000EF000
0FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0001EF0001EF0001EF0003CF000
7CF000F8F001F0F007E0FFFFC0FFFF80FFFC0018207B9F21>I<FFFFC0FFFFC0FFFFC0F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFF80FFFF80FFFF80F0
0000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFFE0FF
FFE0FFFFE013207B9F1B>I<FFFFC0FFFFC0FFFFC0F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000FFFF00FFFF00FFFF00F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000012207B9F1A>I<001F
E000FFF801FFFE03E03E07800E0F00001E00003E00003C00007C0000780000780000780000F000
00F00000F00000F00000F00000F00000F003FEF003FE7803FE78001E78001E7C001E3C001E3E00
1E1E001E0F001E07801E03E03E01FFFE00FFF8001FC017227DA01E>I<F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F004207C9F0D>73 D<F0003EF0007CF000F8
F001F0F003E0F007C0F00780F00F00F01F00F03E00F07C00F0F800F1F000F3F800F3F800F7FC00
FFBC00FF1E00FE1F00FC0F00F80780F00780F003C0F003E0F001E0F000F0F000F8F00078F0003C
F0003CF0001EF0001F18207B9F20>75 D<F00000F00000F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000FFFF80FFFF80FFFF8011207B9F
19>I<F80001F8FC0003F8FC0003F8F4000378F6000778F6000778F6000778F7000F78F3000E78
F3000E78F3801E78F3801E78F1801C78F1C03C78F1C03C78F1C03C78F0C03878F0E07878F0E078
78F0607078F070F078F070F078F030E078F039E078F039E078F019C078F019C078F019C078F00F
8078F00F8078F00F8078F00000781D207B9F28>I<FC0078FE0078FE0078F60078F70078F70078
F38078F38078F38078F3C078F1C078F1E078F1E078F0E078F0F078F07078F07078F07878F03878
F03C78F03C78F01C78F01E78F00E78F00E78F00E78F00778F00778F00378F003F8F003F8F001F8
15207B9F20>I<003F000000FFC00003FFF00007E1F8000F807C001F003E001E001E003C000F00
3C000F00780007807800078078000780F00003C0F00003C0F00003C0F00003C0F00003C0F00003
C0F00003C0F00003C0F00003C0F80007C07800078078000780780007803C000F003C000F001E00
1E001F003E000F807C0007E1F80003FFF00000FFC000003F00001A227DA021>I<FFF800FFFF00
FFFF80F00FC0F003E0F001E0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F001E0F003E0
F00FC0FFFF80FFFF00FFF800F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000F0000014207B9F1D>I<003F000000FFC00003FFF00007E1F8000F807C00
1F003E001E001E003C000F003C000F00780007807800078078000780F00003C0F00003C0F00003
C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C07800078078000780781E
07803C0F0F003C0F8F001E079E001F03FE000F83FC0007E1F80003FFF00000FFF800003F780000
007C0000003E0000001E0000001F0000000F801A277DA021>I<FFF800FFFF00FFFF80F007C0F0
03E0F001E0F000F0F000F0F000F0F000F0F000F0F001E0F003E0F007C0FFFF80FFFF00FFF800F0
3C00F01E00F01E00F00F00F00F00F00780F00780F003C0F001C0F001E0F000F0F000F0F00078F0
0078F0003C16207B9F1D>I<01FC0007FF800FFFC01F03C03C00C03C0000780000780000780000
7800007800007C00003C00003F00001FE0000FFC0007FE0001FF00003F800007C00003C00003E0
0001E00001E00001E00001E00001E00001C0C003C0F007C0FC0F807FFF001FFE0003F80013227E
A019>I<FFFFFFC0FFFFFFC0FFFFFFC0001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E
0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E000000
1E0000001E0000001E0000001E00001A207E9F1F>I<F000F0F000F0F000F0F000F0F000F0F000
F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000
F0F000F0F000F0F000F0F000F0F000F0F000F07801E07801E03C03C03C03C01F0F800FFF0007FE
0001F80014217B9F1F>I<F0007C000FF0007E000FF0007E000F78006E000E7800EE001E7800E7
001E7800E7001E3C00E7003C3C01E7803C3C01C7803C3C01C3803C1E01C380781E03C3C0781E03
83C0780E0381C0700F0381C0F00F0781E0F00F0701E0F0070700E0E0078700E1E0078F00F1E007
8E00F1E0038E0071C0038E0071C003CE0073C001DC007B8001DC003B8001DC003B8001DC003B80
00F8003F0000F8001F0000F8001F0028207F9F2B>87 D<F80000F87C0001F03C0001E03E0003E0
1F0003C00F0007800F800F8007C00F0003C01F0003E01E0001F03C0000F07C00007878000078F0
00003CF000001DE000001FE000000FC00000078000000780000007800000078000000780000007
800000078000000780000007800000078000000780000007800000078000000780001D20809F1E
>89 D<07E03FF87FFC701E401F000F000F000F003F07FF1FFF7E0FF80FF00FF00FF00FF83F7FFF
3FEF1F8F10147E9316>97 D<03F00FFC1FFE3E0E3C0278007800F000F000F000F000F000F00078
0078003C013E0F1FFF0FFE03F010147E9314>99 D<000780000780000780000780000780000780
00078000078000078000078000078000078007C7800FF7801FFF803E1F807C0780780780F80780
F00780F00780F00780F00780F00780F00780F00780780780780F803E1F801FFF800FF78007C780
11207E9F17>I<03F0000FFC001FFE003E1F003C0700780700700380FFFF80FFFF80FFFF80F000
00F00000F000007000007800003C01003E07001FFF0007FE0001F80011147F9314>I<007E01FE
03FE078007000F000F000F000F000F000F000F00FFF0FFF0FFF00F000F000F000F000F000F000F
000F000F000F000F000F000F000F000F000F000F000F20809F0E>I<03E0F00FFFF01FFFF03E3E
003C1E00780F00780F00780F00780F00780F003C1E003E3E001FFC003FF80033E0003000003800
003FFE003FFF801FFFC03FFFE07803F0F000F0F000F0F000F0F801F07E07E03FFFC00FFF0003FC
00141E7F9317>I<F0F0F0F00000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F004207D9F0B>105 D<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F004207D9F0B>108 D<F0FC07E0F3FE1FF0F7FF3FF8FE0FF07CF807C03CF807C03CF00780
3CF007803CF007803CF007803CF007803CF007803CF007803CF007803CF007803CF007803CF007
803CF007803CF007803CF007803C1E147D9327>I<F1F8F3FCF7FEFC1FF80FF80FF00FF00FF00F
F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F10147D9317>I<01F80007FE001FFF803F
0FC03C03C07801E07801E0F000F0F000F0F000F0F000F0F000F0F000F07801E07801E03C03C03F
0FC01FFF8007FE0001F80014147F9317>I<F1F000F7FC00FFFE00FC3E00F81F00F00F00F00F80
F00780F00780F00780F00780F00780F00780F00F00F00F00F81F00FC3E00FFFC00F7F800F1E000
F00000F00000F00000F00000F00000F00000F00000F00000F00000111D7D9317>I<03C7800FF7
801FFF803E1F807C0F80780780780780F00780F00780F00780F00780F00780F00780F807807807
807C0F803E1F801FFF800FF78007C7800007800007800007800007800007800007800007800007
80000780111D7E9317>I<F0E0F3E0F7E0FF00FC00FC00F800F800F000F000F000F000F000F000
F000F000F000F000F000F0000B147D9310>I<07F01FFC3FFC780C7800780078007C003FC01FF0
0FF803F8007C003C003CC03CF07CFFF87FF00FC00E147F9311>I<1E001E001E001E001E001E00
FFF0FFF0FFF01E001E001E001E001E001E001E001E001E001E001E001E001E001E201FF00FF007
C00C1A7F9910>I<F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0
1FF03FFFFF7FEF3F0F10147D9317>I<F01F00F0F01F80F0F01F80F0781B81E0783B81E0783BC1
E07839C1E03C31C3C03C71C3C03C71E3C01C70E3801E60E7801E60E7801EE0E7800EE077000EC0
77000EC0770007C07E0007C03E0007803E001C147F931F>119 D<7801E07C03C03E07801E0F00
0F0F00079E0003FC0003F80001F80000F00001F00001F80003FC00079E000F0F000E0F001E0780
3C03C07801E0F801F01414809315>I E /Fl 17 123 df<F8F8F8F8F805057B8410>46
D<00180000380000F80007F800FFF800FFF800FFF800F8F80000F80000F80000F80000F80000F8
0000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F8
0000F80000F80000F80000F80000F80000F80000F80000F80000F80000F8007FFFF07FFFF07FFF
F07FFFF014287CA71D>49 D<FFFFFFFFFFFFFFFFFFFFFFFF00000F00001E00003C000078000078
0000F00001F00001E00003E00003C00007C0000F80000F80000F00001F00001E00003E00003E00
003C00007C00007C00007C0000F80000F80000F80000F80000F80000F00001F00001F00001F000
01F00001F00001F00001F00018277EA61D>55 D<0003FE00000FFFC0003FFFF8007FFFFC01FE01
FC03F8007C07E0001807C000000F8000001F8000001F0000003E0000003E0000007E0000007C00
00007C0000007C000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8
003FFCF8003FFCF8003FFC7C003FFC7C00007C7C00007C7E00007C3E00007C3E00007C1F00007C
1F80007C0F80007C07C0007C07E0007C03F8007C01FE01FC007FFFFC003FFFF8000FFFC00003FE
001E2C7CAA27>71 D<FFFFE000FFFFFC00FFFFFE00FFFFFF80F8003FC0F8000FE0F80003F0F800
01F0F80000F0F80000F8F80000F8F80000F8F80000F8F80000F8F80000F0F80001F0F80003F0F8
000FE0F8003FC0FFFFFF80FFFFFE00FFFFFC00FFFFE000F801F000F801F000F800F800F800F800
F8007C00F8003C00F8003E00F8001E00F8001F00F8000F80F8000F80F80007C0F80007C0F80003
E0F80001E0F80001F0F80000F8F80000F8F800007C1E2A7BA926>82 D<01FC000FFF003FFF803F
FFC03C07E03003E00001F00001F00001F00001F00001F00003F001FFF007FFF01FFFF03FC1F07E
01F0FC01F0F801F0F801F0F801F0FC03F07E0FF07FFFF03FFFF01FF9F00FE1F0141B7E9A1C>97
D<00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C0000
7C00007C00007C00FC7C03FF7C07FFFC0FFFFC1FC1FC3F00FC3E007C7C007C7C007CFC007CF800
7CF8007CF8007CF8007CF8007CF8007CF8007CF8007C7C007C7C007C7E00FC3F00FC1F83FC1FFF
FC0FFF7C03FE7C01F87C162A7EA91E>100 D<00FC0003FF0007FF800FFFC01F87E03F01E03E00
F07C00F07C0070F80078FFFFF8FFFFF8FFFFF8FFFFF8F80000F80000F800007800007C00007C00
003E00003F00181FC0F80FFFF807FFF801FFE0007F00151B7E9A1A>I<F8F8F8F8F80000000000
0000000000F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8052A7CA90E>
105 D<F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
F8F8F8F8F8F8052A7CA90E>108 D<F87E00F9FF00FBFF80FFFFC0FF0FC0FE07E0FC03E0FC03E0
F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0
F803E0F803E0F803E0F803E0F803E0F803E0131B7B9A1E>110 D<00FC7C03FF7C07FFFC0FFFFC
1FC1FC3F00FC3E00FC7E007C7C007CFC007CF8007CF8007CF8007CF8007CF8007CF8007CF8007C
FC007C7C007C7C007C7E007C3F00FC1FC3FC1FFFFC0FFF7C03FE7C01F87C00007C00007C00007C
00007C00007C00007C00007C00007C00007C00007C00007C00007C16277E9A1E>113
D<F838F8F8F9F8FBF8FFC0FF00FE00FE00FC00FC00F800F800F800F800F800F800F800F800F800
F800F800F800F800F800F800F800F8000D1B7B9A14>I<07F8001FFF003FFF807FFF807C0780F8
0100F80000F80000F80000FC00007F00007FF0003FFC001FFE0007FF0000FF80001FC0000FC000
07C00007C04007C0E007C0FC1F80FFFF807FFF001FFE0007F800121B7E9A16>I<07C00007C000
07C00007C00007C00007C00007C000FFFF80FFFF80FFFF80FFFF8007C00007C00007C00007C000
07C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C000
07C08007E38003FFC003FFC001FF0000FC0012227FA115>I<F803E0F803E0F803E0F803E0F803
E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803E0F803
E0F803E0F803E0F807E0F807E0FC1FE0FFFFE07FFBE03FF3E01F83E0131B7B9A1E>I<FFFFF0FF
FFF0FFFFF0FFFFE00007E00007C0000F80001F80001F00003E00007E00007C0000F80001F80001
F00003E00007E00007C0000F80001F80001F00003E00007E00007FFFF8FFFFF8FFFFF8FFFFF815
1B7E9A19>122 D E /Fm 12 121 df<FFFFFFFFFFFFFFFC00FFFFFFFFFFFFFFFC00FFFFFFFFFF
FFFFFC00FFFFFFFFFFFFFFFC00FFFFFFFFFFFFFFFE00001FFF800003FFFE00001FFF8000003FFE
00001FFF8000000FFE00001FFF80000003FE00001FFF80000001FE00001FFF80000000FE00001F
FF80000000FE00001FFF800000007E00001FFF800000007F00001FFF800000003F00001FFF8000
00003F00001FFF800000001F00001FFF800000001F00001FFF800000001F00001FFF800000001F
00001FFF8000F8001F00001FFF8000F8000F80001FFF8000F8000F80001FFF8000F8000F80001F
FF8000F8000F80001FFF8000F8000000001FFF8001F8000000001FFF8001F8000000001FFF8001
F8000000001FFF8003F8000000001FFF8007F8000000001FFF803FF8000000001FFFFFFFF80000
00001FFFFFFFF8000000001FFFFFFFF8000000001FFFFFFFF8000000001FFFFFFFF8000000001F
FF803FF8000000001FFF8007F8000000001FFF8003F8000000001FFF8001F8000000001FFF8001
F8000000001FFF8001F8000000001FFF8000F80001F0001FFF8000F80001F0001FFF8000F80001
F0001FFF8000F80003E0001FFF8000F80003E0001FFF8000F80003E0001FFF8000000003E0001F
FF8000000003E0001FFF8000000007E0001FFF8000000007E0001FFF8000000007C0001FFF8000
000007C0001FFF800000000FC0001FFF800000000FC0001FFF800000001FC0001FFF800000001F
C0001FFF800000003FC0001FFF800000007F80001FFF80000000FF80001FFF80000001FF80001F
FF80000007FF80001FFF8000001FFF80001FFF800001FFFF80FFFFFFFFFFFFFFFF80FFFFFFFFFF
FFFFFF00FFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFF0044477CC64C>69
D<FFFFFFFFFCFFFFFFFFFCFFFFFFFFFCFFFFFFFFFCFFFFFFFFFC000FFFC000000FFFC000000FFF
C000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000F
FFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC00000
0FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000
000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC0
00000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFF
C000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000F
FFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC000000FFFC00000
0FFFC000000FFFC000000FFFC000000FFFC000FFFFFFFFFCFFFFFFFFFCFFFFFFFFFCFFFFFFFFFC
FFFFFFFFFC26477EC62B>73 D<0003FFF0000000003FFFFF00000000FFFFFFE0000001FFFFFFF8
000003FF003FFC000007FF800FFE000007FF8007FF000007FF8003FF800007FF8003FFC00007FF
8001FFC00007FF8001FFC00003FF0000FFE00001FE0000FFE00000FC0000FFE00000000000FFE0
0000000000FFE00000000000FFE00000000000FFE00000000000FFE000000000FFFFE00000007F
FFFFE0000007FFFFFFE000003FFFFCFFE00000FFFE00FFE00003FFF000FFE00007FFC000FFE000
0FFF0000FFE0001FFE0000FFE0003FFC0000FFE0007FFC0000FFE0007FF80000FFE000FFF80000
FFE000FFF00000FFE000FFF00000FFE000FFF00000FFE000FFF00001FFE000FFF00001FFE000FF
F80003FFE0007FFC0007FFE0007FFC000FFFE0003FFE001F7FF8001FFF80FE7FFFF007FFFFFC3F
FFF003FFFFF01FFFF0007FFFC00FFFF00007FE0003FFF0342E7DAD38>97
D<00001FFF80000001FFFFF8000007FFFFFE00001FFFFFFF00007FF801FF8000FFE003FFC003FF
C003FFC007FF8003FFC007FF0003FFC00FFE0003FFC01FFE0003FFC01FFC0001FF803FFC0000FF
003FFC00007E007FFC000000007FF8000000007FF800000000FFF800000000FFF800000000FFF8
00000000FFF800000000FFF800000000FFF800000000FFF800000000FFF800000000FFF8000000
00FFF800000000FFF800000000FFF8000000007FFC000000007FFC000000007FFC000000003FFC
000000003FFE000000001FFE000001F01FFF000001F00FFF000003F007FF800007E007FFC00007
C003FFE0000FC000FFF8003F80007FFF00FF00001FFFFFFC000007FFFFF0000001FFFFC0000000
1FFC00002C2E7CAD34>99 D<00003FFE00000001FFFFC000000FFFFFF800003FFFFFFC00007FFC
0FFE0000FFE003FF0001FF8000FF8003FF0000FFC007FF00007FE00FFE00003FF01FFE00003FF0
1FFC00003FF03FFC00001FF83FFC00001FF87FFC00001FF87FF800001FFC7FF800000FFC7FF800
000FFCFFF800000FFCFFFFFFFFFFFCFFFFFFFFFFFCFFFFFFFFFFFCFFFFFFFFFFFCFFF800000000
FFF800000000FFF800000000FFF800000000FFF8000000007FF8000000007FF8000000007FFC00
0000007FFC000000003FFC000000003FFC0000007C1FFE0000007C0FFE000000FC0FFF000000F8
07FF800001F803FFC00003F001FFE00007E000FFF8001FC0007FFF00FF80001FFFFFFF000007FF
FFFC000000FFFFF00000000FFF00002E2E7DAD35>101 D<0000007FE000000007FFF80000003F
FFFC000000FFFFFE000001FFC3FF000007FF03FF80000FFE07FF80001FFC07FF80001FFC07FF80
003FF807FF80003FF807FF80007FF003FF00007FF003FF00007FF000FC00007FF0003000007FF0
000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000
007FF0000000007FF0000000007FF0000000007FF0000000FFFFFFFE0000FFFFFFFE0000FFFFFF
FE0000FFFFFFFE0000FFFFFFFE0000007FF0000000007FF0000000007FF0000000007FF0000000
007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0
000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000
007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0
000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000
007FF0000000007FF0000000007FF0000000007FF0000000007FF0000000007FF00000003FFFFF
F800003FFFFFF800003FFFFFF800003FFFFFF800003FFFFFF8000029487DC724>I<007FC000FF
FFC000FFFFC000FFFFC000FFFFC000FFFFC00003FFC00001FFC00001FFC00001FFC00001FFC000
01FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FF
C00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001
FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC000
01FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC000FFFFFF80FFFFFF80FFFF
FF80FFFFFF80FFFFFF8019487CC720>108 D<00FF8007FE0000FFFF803FFFC000FFFF80FFFFF0
00FFFF81FFFFFC00FFFF87F01FFC00FFFF8FC00FFE0003FF9F0007FF0001FF9E0007FF0001FFBC
0007FF0001FFF80003FF8001FFF80003FF8001FFF00003FF8001FFE00003FF8001FFE00003FF80
01FFE00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC000
03FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001
FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003
FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FF
C00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF8001FFC00003FF80FFFFFF81FFFF
FFFFFFFF81FFFFFFFFFFFF81FFFFFFFFFFFF81FFFFFFFFFFFF81FFFFFF382E7BAD41>110
D<00FF807F00FFFF81FFC0FFFF87FFF0FFFF8FFFF8FFFF9F8FFCFFFF9F1FFE03FFBE1FFE01FFBC
1FFE01FFF81FFE01FFF81FFE01FFF01FFE01FFF00FFC01FFE007F801FFE003F001FFE0000001FF
E0000001FFE0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001
FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC00000
01FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC0000001FFC000
0001FFC0000001FFC00000FFFFFFE000FFFFFFE000FFFFFFE000FFFFFFE000FFFFFFE000272E7C
AD2F>114 D<000FFE01C000FFFFC7C003FFFFFFC007FFFFFFC01FF001FFC03FC0007FC03F8000
3FC07F00001FC07E00000FC0FE00000FC0FE000007C0FE000007C0FF000007C0FF800007C0FFC0
000000FFF8000000FFFFC000007FFFFE00007FFFFFE0003FFFFFF8001FFFFFFE000FFFFFFF0007
FFFFFF8001FFFFFFC0007FFFFFE0001FFFFFF00000FFFFF0000007FFF00000007FF80000001FF8
F800000FF8F8000007F8FC000007F8FC000003F8FC000003F8FE000003F8FF000003F0FF000007
F0FF800007F0FFC0000FE0FFF0001FC0FFFC00FF80FFFFFFFF00FC7FFFFC00F01FFFF000E003FF
8000252E7CAD2E>I<0001F000000001F000000001F000000001F000000001F000000001F00000
0003F000000003F000000003F000000007F000000007F000000007F00000000FF00000000FF000
00001FF00000003FF00000003FF00000007FF0000001FFF0000003FFF000000FFFFFFFC0FFFFFF
FFC0FFFFFFFFC0FFFFFFFFC0FFFFFFFFC0007FF00000007FF00000007FF00000007FF00000007F
F00000007FF00000007FF00000007FF00000007FF00000007FF00000007FF00000007FF0000000
7FF00000007FF00000007FF00000007FF00000007FF00000007FF00000007FF00000007FF00000
007FF00000007FF00000007FF00000007FF001F0007FF001F0007FF001F0007FF001F0007FF001
F0007FF001F0007FF001F0007FF001F0007FF001F0007FF003F0003FF803E0003FF807E0001FFC
07C0001FFE0F80000FFFFF800003FFFE000000FFFC0000001FE00024427EC12D>I<FFFFFF003F
FFFCFFFFFF003FFFFCFFFFFF003FFFFCFFFFFF003FFFFCFFFFFF003FFFFC00FFF00003F800007F
F80003F000003FFC0007E000001FFE000FE000000FFE001FC000000FFF003F80000007FF807F00
000003FFC07E00000001FFE0FC00000000FFE1F800000000FFF3F8000000007FFFF0000000003F
FFE0000000001FFFC0000000000FFF80000000000FFF000000000007FF800000000003FFC00000
000001FFE00000000001FFE00000000003FFF00000000007FFF8000000000FFFFC000000001FDF
FE000000003F8FFE000000007F07FF000000007E07FF80000000FC03FFC0000001F801FFE00000
03F800FFE0000007F0007FF000000FE0007FF800000FC0003FFC00001F80001FFE00003F00000F
FE00007F000007FF00FFFFF0007FFFFFFFFFF0007FFFFFFFFFF0007FFFFFFFFFF0007FFFFFFFFF
F0007FFFFF382E7EAD3D>120 D E /Fn 8 117 df<3C00000000003E00000000003FE000000000
3FFFFFFFFF803FFFFFFFFF803FFFFFFFFF803FFFFFFFFF803FFFFFFFFF007FFFFFFFFE007FFFFF
FFFC007FFFFFFFF8007FFFFFFFF0007FFFFFFFF0007FFFFFFFE0007C000007C0007800000F8000
7800000F0000F800001F0000F000003E0000F000007C0000F00000F80000F00001F00000000001
E00000000003E00000000007C00000000007C0000000000F80000000001F80000000001F000000
00003F00000000003F00000000007F00000000007E0000000000FE0000000000FE0000000001FE
0000000001FE0000000001FE0000000003FE0000000003FC0000000003FC0000000007FC000000
0007FC0000000007FC0000000007FC0000000007FC000000000FFC000000000FFC000000000FFC
000000000FFC000000000FFC000000000FFC000000000FFC000000000FFC000000000FFC000000
000FFC0000000007F80000000007F80000000001E0000000293B7BB930>55
D<0000001FFE0000E0000003FFFFE001E000001FFFFFF803E000007FFFFFFE07E00001FFFC00FF
0FE00007FFC0001FDFE0000FFF000007FFE0003FFC000001FFE0007FF0000000FFE000FFE00000
007FE001FFC00000003FE003FF800000001FE007FF800000001FE007FF000000000FE00FFE0000
000007E00FFE0000000007E01FFC0000000007E01FFC0000000003E03FFC0000000003E03FF800
00000003E07FF80000000001E07FF80000000001E07FF80000000001E07FF0000000000000FFF0
000000000000FFF0000000000000FFF0000000000000FFF0000000000000FFF0000000000000FF
F0000000000000FFF0000000000000FFF0000000000000FFF0000000000000FFF0000000000000
FFF0000000000000FFF0000000000000FFF00000000000007FF00000000000007FF80000000000
007FF80000000001E07FF80000000001E03FF80000000001E03FFC0000000001E01FFC00000000
01E01FFC0000000003E00FFE0000000003C00FFE0000000007C007FF0000000007C007FF800000
000F8003FF800000000F8001FFC00000001F0000FFE00000003E00007FF00000007C00003FFC00
0000F800000FFF000003F0000007FFC0000FE0000001FFFC007FC00000007FFFFFFF000000001F
FFFFFC0000000003FFFFE000000000001FFE0000003B3D7BBB46>67 D<003FFF00000001FFFFE0
000007FFFFFC00000FF007FE00001FF801FF80001FF800FFC0001FF8007FE0001FF8007FE0001F
F8007FF0000FF0003FF00007E0003FF00003C0003FF0000000003FF0000000003FF0000000003F
F0000000003FF0000000FFFFF000000FFFFFF000007FF83FF00003FF803FF00007FE003FF0001F
FC003FF0003FF8003FF0007FF0003FF0007FE0003FF000FFE0003FF000FFC0003FF000FFC0003F
F000FFC0003FF000FFC0007FF000FFC0007FF000FFE000FFF0007FE001DFF0003FF003DFFC001F
FC0F9FFFE00FFFFE0FFFE001FFF807FFE0003FE001FFE02B267DA52F>97
D<0003FF8000001FFFF000007FFFFC0000FF83FF0003FE00FF8007FC003F800FF8003FC01FF800
1FE01FF0001FE03FF0001FF03FF0000FF07FE0000FF07FE0000FF87FE0000FF8FFE0000FF8FFE0
000FF8FFFFFFFFF8FFFFFFFFF8FFFFFFFFF8FFE0000000FFE0000000FFE0000000FFE0000000FF
E00000007FE00000007FE00000007FF00000003FF00000783FF00000781FF80000F80FF80000F0
07FC0001F003FE0003E001FF000FC000FFC07F80003FFFFE00000FFFFC000001FFC00025267DA5
2C>101 D<00FF0000000000FFFF0000000000FFFF0000000000FFFF0000000000FFFF00000000
0007FF000000000003FF000000000003FF000000000003FF000000000003FF000000000003FF00
0000000003FF000000000003FF000000000003FF000000000003FF000000000003FF0000000000
03FF000000000003FF000000000003FF000000000003FF000000000003FF000000000003FF0000
00000003FF003FE0000003FF01FFFC000003FF07FFFE000003FF0F81FF800003FF3C00FF800003
FF3800FFC00003FF7000FFC00003FFE0007FE00003FFC0007FE00003FFC0007FE00003FF80007F
E00003FF80007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF
00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE0
0003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00
007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE00003FF00007FE000
03FF00007FE000FFFFFC1FFFFF80FFFFFC1FFFFF80FFFFFC1FFFFF80FFFFFC1FFFFF80313C7DBB
36>104 D<00FF00FF8000FFFF0FFFF800FFFF3FFFFE00FFFFFE03FF00FFFFF000FFC007FFE000
7FE003FFC0003FF003FF80003FF803FF00001FF803FF00001FFC03FF00000FFC03FF00000FFE03
FF00000FFE03FF00000FFE03FF000007FF03FF000007FF03FF000007FF03FF000007FF03FF0000
07FF03FF000007FF03FF000007FF03FF000007FF03FF000007FF03FF000007FF03FF00000FFE03
FF00000FFE03FF00000FFE03FF00000FFC03FF00001FFC03FF00001FF803FF80003FF003FFC000
7FF003FFE000FFE003FFF001FF8003FFFE07FF0003FF3FFFFC0003FF0FFFF00003FF01FF000003
FF0000000003FF0000000003FF0000000003FF0000000003FF0000000003FF0000000003FF0000
000003FF0000000003FF0000000003FF0000000003FF0000000003FF0000000003FF00000000FF
FFFC000000FFFFFC000000FFFFFC000000FFFFFC00000030377EA536>112
D<00FE01F800FFFE07FF00FFFE1FFF80FFFE3E3FC0FFFE787FE007FE707FE003FEE07FE003FEE0
7FE003FFC07FE003FFC03FC003FF801F8003FF800F0003FF80000003FF80000003FF00000003FF
00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003
FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF000000
03FF00000003FF00000003FF000000FFFFFE0000FFFFFE0000FFFFFE0000FFFFFE000023267EA5
28>114 D<000F0000000F0000000F0000000F0000000F0000001F0000001F0000001F0000001F
0000003F0000003F0000007F0000007F000000FF000001FF000003FF000007FF00001FFFFFF0FF
FFFFF0FFFFFFF0FFFFFFF003FF000003FF000003FF000003FF000003FF000003FF000003FF0000
03FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF00
0003FF000003FF000003FF003C03FF003C03FF003C03FF003C03FF003C03FF003C03FF003C03FF
003C01FF807801FF807800FFC0F000FFE1F0003FFFE0000FFF800001FE001E377EB626>116
D E /Fo 65 123 df<000FC3E0007FEFF000E07C7801C0F8780380F83007007000070070000700
700007007000070070000700700007007000FFFFFF80FFFFFF8007007000070070000700700007
007000070070000700700007007000070070000700700007007000070070000700700007007000
0700700007007000070070007FE3FF007FE3FF001D20809F1B>11 D<001F80007FC001E0E00381
E00381E00701E0070000070000070000070000070000070000FFFFE0FFFFE00700E00700E00700
E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700
E07FC3FE7FC3FE1720809F19>I<000F80F800007FE7FE0000E06E060001C0FC0F000380F80F00
0700F00F00070070000007007000000700700000070070000007007000000700700000FFFFFFFF
00FFFFFFFF00070070070007007007000700700700070070070007007007000700700700070070
070007007007000700700700070070070007007007000700700700070070070007007007000700
70070007007007007FE3FE3FF07FE3FE3FF02420809F26>14 D<7038F87CFC7EFC7E7C3E0C060C
060C06180C180C381C3018603040200F0E7E9F17>34 D<006000C001800300070006000C001C00
180038003800300070007000700060006000E000E000E000E000E000E000E000E000E000E000E0
00E0006000600070007000700030003800380018001C000C00060007000300018000C000600B2E
7DA112>40 D<C0006000300018001C000C0006000700030003800380018001C001C001C000C000
C000E000E000E000E000E000E000E000E000E000E000E000E000C000C001C001C001C001800380
03800300070006000C001C00180030006000C0000B2E7DA112>I<70F8FCFC7C0C0C0C18183830
6040060E7C840D>44 D<FFC0FFC0FFC00A037F8A0F>I<70F8F8F87005057C840D>I<0003000300
0700060006000E000C000C001C0018001800380030003000700060006000E000C000C001C00180
018001800380030003000700060006000E000C000C001C00180018003800300030007000600060
00E000C000C000102D7DA117>I<018003801F80FF80E380038003800380038003800380038003
80038003800380038003800380038003800380038003800380038003800380FFFEFFFE0F1E7C9D
17>49 D<03F0000FFC00183E00300F00600F80C00780F007C0F807C0F803C0F803C02003C00007
C0000780000780000F00000E00001C0000380000700000E00001C0000380000300000600C00C00
C01800C03001807FFF80FFFF80FFFF80121E7E9D17>I<03F0000FFC001C1E00300F00780F8078
0F80780780380F80000F80000F00000F00001E00003C0003F80003F000001C00000E00000F0000
07800007800007C02007C0F807C0F807C0F807C0F00780600F80700F003C1E001FFC0003F00012
1F7E9D17>I<000E00000E00001E00003E00003E00006E0000EE0000CE00018E00038E00030E00
060E000E0E000C0E00180E00380E00300E00600E00E00E00FFFFF0FFFFF0000E00000E00000E00
000E00000E00000E00000E0000FFE000FFE0141E7F9D17>I<3803003FFF003FFE003FF8003FE0
0030000030000030000030000030000030000031F00037FC003E0E003C07003807803003800003
800003C00003C00003C06003C0F003C0F003C0F00380C00780600700700E003C1E000FF80007E0
00121F7E9D17>I<007C0001FE000783000E03800C07801C078038030038000078000070000070
0000F3F800F7FE00FC0E00F80700F80380F80380F003C0F003C0F003C0F003C0F003C07003C070
03C07003803803803807001C07000E1E0007FC0001F000121F7E9D17>I<70F8F8F87000000000
00000000000070F8F8F87005147C930D>58 D<70F8F8F8700000000000000000000070F8F8F878
181818183030606040051D7C930D>I<7FFFFFE0FFFFFFF0000000000000000000000000000000
0000000000000000000000000000000000FFFFFFF07FFFFFE01C0C7D9023>61
D<0003800000038000000380000007C0000007C0000007C000000DE000000DE000000DE0000018
F0000018F0000018F00000307800003078000030780000603C0000603C0000603C0000E01E0000
C01E0000FFFE0001FFFF0001800F0001800F0003800F800300078003000780070007C0070003C0
0F8003C0FFE03FFEFFE03FFE1F207F9F22>65 D<FFFFE000FFFFF80007803E0007801F0007800F
0007800F8007800F8007800F8007800F8007800F8007800F0007801F0007803E0007807C0007FF
F80007FFFC0007801E0007800F0007800F8007800780078007C0078007C0078007C0078007C007
8007C00780078007800F8007801F0007803E00FFFFFC00FFFFF0001A1F7E9E20>I<001FC04000
7FF0C001F839C003C00DC0078007C00F0003C01E0003C03E0001C03C0001C07C0001C07C0000C0
780000C0F80000C0F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000
00780000C07C0000C07C0000C03C0000C03E0001801E0001800F0003000780030003C00E0001F8
1C00007FF000001FC0001A217D9F21>I<FFFFFF00FFFFFF0007801F0007800700078003000780
03000780038007800180078001800780C1800780C1800780C0000780C0000781C00007FFC00007
FFC0000781C0000780C0000780C0000780C0600780C06007800060078000C0078000C0078000C0
078001C0078001C0078003C007800F80FFFFFF80FFFFFF801B1F7E9E1F>69
D<FFFFFF00FFFFFF0007801F000780070007800300078003000780038007800180078001800780
C1800780C1800780C0000780C0000781C00007FFC00007FFC0000781C0000780C0000780C00007
80C0000780C0000780000007800000078000000780000007800000078000000780000007800000
FFFE0000FFFE0000191F7E9E1E>I<000FC020007FF86001F81CE003E006E0078003E00F0001E0
1E0001E01E0000E03C0000E07C0000E07C00006078000060F8000060F8000000F8000000F80000
00F8000000F8000000F8000000F8007FFCF8007FFC780001E07C0001E07C0001E03C0001E01E00
01E01E0001E00F0001E0078003E003E003E001F80E60007FFC20000FE0001E217D9F24>I<FFF8
FFF8FFF8FFF807800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007
800F0007800F0007800F0007800F0007FFFF0007FFFF0007800F0007800F0007800F0007800F00
07800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F00FFF8FF
F8FFF8FFF81D1F7E9E22>I<FFFCFFFC0780078007800780078007800780078007800780078007
80078007800780078007800780078007800780078007800780078007800780FFFCFFFC0E1F7F9E
10>I<FFFE00FFFE00078000078000078000078000078000078000078000078000078000078000
07800007800007800007800007800007800007800007800607800607800607800607800E07800E
07800C07801C07803C0780FCFFFFFCFFFFFC171F7E9E1C>76 D<FF80001FF8FFC0003FF807C000
3F0007C0003F0006E0006F0006E0006F0006E0006F00067000CF00067000CF00067000CF000638
018F000638018F000638018F00061C030F00061C030F00061C030F00060E060F00060E060F0006
0E060F0006070C0F0006070C0F0006070C0F000603980F000603980F000603980F000601F00F00
0601F00F000601F00F000F00E00F00FFF0E1FFF8FFF0E1FFF8251F7E9E2A>I<FF807FF8FFC07F
F807C0078007E0030007E0030006F0030006F0030006780300063C0300063C0300061E0300061E
0300060F0300060F0300060783000607C3000603C3000601E3000601E3000600F3000600F30006
007B0006007B0006003F0006001F0006001F0006000F0006000F000F000700FFF00700FFF00300
1D1F7E9E22>I<001F800000FFF00001E0780007C03E000F801F000F000F001E0007803C0003C0
3C0003C07C0003E07C0003E0780001E0F80001F0F80001F0F80001F0F80001F0F80001F0F80001
F0F80001F0F80001F0F80001F0780001E07C0003E07C0003E03C0003C03E0007C01E0007800F00
0F000F801F0007C03E0001F0F80000FFF000001F80001C217D9F23>I<FFFFE000FFFFF8000780
7C0007801E0007801F0007800F0007800F8007800F8007800F8007800F8007800F8007800F0007
801F0007801E0007807C0007FFF80007FFE0000780000007800000078000000780000007800000
07800000078000000780000007800000078000000780000007800000FFFC0000FFFC0000191F7E
9E1F>I<FFFF8000FFFFF0000780F80007803C0007803E0007801E0007801F0007801F0007801F
0007801F0007801E0007803E0007803C000780F80007FFF00007FF80000781C0000780E0000780
70000780700007807800078078000780780007807C0007807C0007807C0007807C0C07807E0C07
803E0CFFFC1F18FFFC0FF0000003E01E207E9E21>82 D<07E0800FF9801C1F80300F8070078060
0380E00380E00180E00180E00180F00000F000007800007F00003FF0001FFC000FFE0003FF0000
1F800007800003C00003C00001C0C001C0C001C0C001C0C001C0E00180F00380F80700FE0E00CF
FC0081F80012217D9F19>I<7FFFFFE07FFFFFE0780F01E0700F00E0600F0060600F0060E00F00
70C00F0030C00F0030C00F0030C00F0030000F0000000F0000000F0000000F0000000F0000000F
0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F000007FFFE0007FFFE001C1F7E9E21>I<FFFC7FF8FFFC7FF80780078007
800300078003000780030007800300078003000780030007800300078003000780030007800300
078003000780030007800300078003000780030007800300078003000780030007800300078003
00078003000380020003C0060003C0060001C00C0000E0180000783000003FE000000FC0001D20
7E9E22>I<FFF07FF83FF0FFF07FF83FF00F0007800F800F00078003000F000780030007800FC0
060007800FC0060007800FC00600078019E00E0003C019E00C0003C019E00C0003C039E00C0001
E030F0180001E030F0180001E030F0180000F06078300000F06078300000F06078300000F0E07C
30000078C03C60000078C03C60000078C03C6000003D801EC000003D801EC000003D801EC00000
3F000FC000001F000F8000001F000F8000001F000F8000000E00070000000E00070000000E0007
00002C207F9E2F>87 D<7FF83FF87FF83FF807C00F8003C0060001E00E0001F00C0000F0180000
783800007C3000003C7000003E6000001EC000000FC000000F8000000780000007C0000007E000
000DE000001DF0000018F8000038780000307C0000603C0000E01E0000C01F0001800F00038007
80030007C00F8007C0FFE01FFEFFE01FFE1F1F7F9E22>I<0804180C3018703860306030C060C0
60C060F87CFC7EFC7E7C3E381C0F0E7B9F17>92 D<1FE0003FF000783800781C00300E00000E00
000E00000E0003FE001FFE003E0E00780E00F80E00F00E30F00E30F00E30F01E30783F703FEFE0
0F878014147E9317>97 D<0E0000FE0000FE00000E00000E00000E00000E00000E00000E00000E
00000E00000E00000E3F000EFF800FC3C00F00E00E00F00E00700E00780E00780E00780E00780E
00780E00780E00780E00700E00F00F00F00F01E00FC3C00CFF800C3E0015207F9F19>I<03F80F
FC1E1E3C1E380C78007000F000F000F000F000F000F0007000780038033C031F0E0FFC03F01014
7E9314>I<000380003F80003F8000038000038000038000038000038000038000038000038000
038003E3800FFB801E0F803C0780780380780380700380F00380F00380F00380F00380F00380F0
03807003807003807807803807801E1F800FFBF803E3F815207E9F19>I<03F0000FFC001E1E00
3C0F00380700780700700380F00380FFFF80FFFF80F00000F00000F00000700000780000380180
1C03800F070007FE0001F80011147F9314>I<003C00FE01CF038F030607000700070007000700
07000700FFF0FFF007000700070007000700070007000700070007000700070007000700070007
007FF07FF01020809F0E>I<0001E003E3F00FFF701C1C703C1E00380E00780F00780F00780F00
780F00380E003C1E001C1C003FF80033E0003000003000003800003FFE001FFF803FFFC07003E0
7000F0E00070E00070E00070F000F07801E03E07C00FFF0003FC00141F7F9417>I<0E0000FE00
00FE00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E3E000EFF000FC3
800F01C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01
C00E01C00E01C0FFE7FCFFE7FC16207F9F19>I<1C001E003E001E001C00000000000000000000
0000000E007E007E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00
FFC0FFC00A1F809E0C>I<00E001F001F001F000E0000000000000000000000000007007F007F0
00F000700070007000700070007000700070007000700070007000700070007000700070007000
7000706070F0E0F1C07F803E000C28829E0E>I<0E0000FE0000FE00000E00000E00000E00000E
00000E00000E00000E00000E00000E00000E1FF00E1FF00E0F800E0E000E0C000E18000E30000E
70000EF0000FF8000F38000E1C000E1E000E0E000E07000E07800E03800E03C0FFCFF8FFCFF815
207F9F18>I<0E00FE00FE000E000E000E000E000E000E000E000E000E000E000E000E000E000E
000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE0FFE00B20809F0C>I<0E
3F03F000FEFF8FF800FFC1DC1C000F80F80E000F00F00E000E00E00E000E00E00E000E00E00E00
0E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E
000E00E00E000E00E00E00FFE7FE7FE0FFE7FE7FE023147F9326>I<0E3E00FEFF00FFC3800F01
C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01
C00E01C0FFE7FCFFE7FC16147F9319>I<01F80007FE001E07803C03C03801C07000E07000E0F0
00F0F000F0F000F0F000F0F000F0F000F07000E07801E03801C03C03C01E078007FE0001F80014
147F9317>I<0E3F00FEFF80FFC3C00F01E00E00F00E00F00E00780E00780E00780E00780E0078
0E00780E00780E00700E00F00F00F00F01E00FC3C00EFF800E3E000E00000E00000E00000E0000
0E00000E00000E0000FFE000FFE000151D7F9319>I<03E1800FF9801E1F803C07807807807803
80700380F00380F00380F00380F00380F00380F003807003807803807807803C0F801E1F800FF3
8003E380000380000380000380000380000380000380000380003FF8003FF8151D7E9318>I<0E
78FEFCFF9E0F1E0F0C0F000E000E000E000E000E000E000E000E000E000E000E000E00FFE0FFE0
0F147F9312>I<1F903FF07070E030E030E030F00078007F803FE00FF000F0C078C038C038E038
E038F070DFE08F800D147E9312>I<06000600060006000E000E001E003E00FFF8FFF80E000E00
0E000E000E000E000E000E000E000E000E180E180E180E180E18073007E003C00D1C7F9B12>I<
0E01C0FE1FC0FE1FC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E03C00E03C0070FC007FDFC01F1FC16147F9319>I<FF87F8FF87F81E01E00E01
C00E01800E0180070300070300070300038600038600038E0001CC0001CC0001FC0000F80000F8
0000700000700000700015147F9318>I<FF9FF3FCFF9FF3FC1C0780F01C0780601C07C0E00E0F
C0C00E0CC0C00E0CE0C0070CE18007186180071871800398730003B0330003B0330003B03F0001
F03E0001E01E0001E01E0000E01C0000C00C001E147F9321>I<7FC7FC7FC7FC0703E007038003
830001C70000EE0000EC00007800003800003C00007C0000EE0001C7000187000303800701C00F
01E0FF87FEFF87FE1714809318>I<FF87F8FF87F81E01E00E01C00E01800E0180070300070300
070300038600038600038E0001CC0001CC0001FC0000F80000F800007000007000007000006000
00600000600000C000F0C000F18000F380007F00003C0000151D7F9318>I<3FFF3FFF380E301C
703C6038607060F001E001C0038007830F030E031C073C063806701EFFFEFFFE10147F9314>I
E /Fp 46 122 df<0030006000C001800300070006000E000C001C001800380038003000700070
0070006000E000E000E000E000E000E000E000E000E000E000E000E000E000E000600070007000
700030003800380018001C000C000E00060007000300018000C0006000300C327DA413>40
D<C0006000300018000C000E000600070003000380018001C001C000C000E000E000E000600070
0070007000700070007000700070007000700070007000700070006000E000E000E000C001C001
C0018003800300070006000E000C00180030006000C0000C327DA413>I<70F8FCFC7C0C0C0C0C
181830306040060F7C840E>44 D<FFE0FFE0FFE00B037F8B10>I<70F8F8F87005057C840E>I<01
8003800F80FF80F380038003800380038003800380038003800380038003800380038003800380
03800380038003800380038003800380038003800380FFFEFFFE0F217CA018>49
D<03F0000FFC001C1F00300F806007806003C0C003C0F003E0F801E0F801E0F801E02003E00003
E00003C00003C0000780000780000F00001E00001C0000380000700000E00001C0000380000700
600E00600C00601800E03000C07FFFC0FFFFC0FFFFC013217EA018>I<000E00000E00001E0000
1E00003E00003E00006E0000EE0000CE0001CE00018E00030E00070E00060E000E0E000C0E0018
0E00180E00300E00700E00600E00E00E00FFFFF8FFFFF8000E00000E00000E00000E00000E0000
0E00000E0001FFF001FFF015217FA018>52 D<1000801C07801FFF001FFE001FFC001FF0001800
0018000018000018000018000018000018F8001BFE001F0F001C07801803801803C00001C00001
E00001E00001E00001E06001E0F001E0F001E0F001C0C003C06003C06003803007001C1E000FFC
0003F00013227EA018>I<6000007000007FFFE07FFFE07FFFC06000C0E00180C00300C00300C0
0600000C00000C0000180000180000300000300000600000600000E00000E00000E00001C00001
C00001C00001C00001C00003C00003C00003C00003C00003C00003C00003C00003C00001800013
237DA118>55 D<01F00007FC000E0F001807803803803001C07001C07001C07001C07801C07803
803E03803F07001FCE000FFC0003F80003FC000F7F001C3F80380F807007C07003C0E001E0E000
E0E000E0E000E0E000E0E000E07001C07001C03803801E0F000FFE0003F00013227EA018>I<01
F00007FC000E0E001C0700380380780380700380F001C0F001C0F001C0F001E0F001E0F001E0F0
01E0F001E07001E07003E07803E03807E01C0DE00FF9E007F1E00081C00001C00003C000038000
0380300700780700780E00701C003838001FF0000FC00013227EA018>I<000180000003C00000
03C0000003C0000007E0000007E0000007E000000FF000000CF000000CF000001CF80000187800
0018780000383C0000303C0000303C0000601E0000601E0000601E0000C00F0000C00F0000C00F
0001FFFF8001FFFF8001800780030003C0030003C0030003C0060001E0060001E0060001E00E00
00F01F0001F0FFC00FFFFFC00FFF20237EA225>65 D<000FE010003FF83000F81C7001E0067003
C003F0078001F00F0000F01E0000F03E0000703C0000707C0000707C0000307800003078000030
F8000030F8000000F8000000F8000000F8000000F8000000F8000000F800000078000030780000
307C0000307C0000303C0000603E0000601E0000600F0000C0078000C003C0018001E0030000F8
0E00003FF800000FE0001C247DA223>67 D<FFFFF000FFFFFE0007801F00078007C0078003C007
8001E0078000F0078000F8078000780780007C0780003C0780003C0780003C0780003E0780003E
0780003E0780003E0780003E0780003E0780003E0780003E0780003E0780003C0780003C078000
7C0780007807800078078000F0078001E0078003E0078007C007801F00FFFFFE00FFFFF8001F22
7EA125>I<FFFFFFC0FFFFFFC007800FC0078003C0078001C0078000C0078000E0078000E00780
0060078060600780606007806060078060000780E0000781E00007FFE00007FFE0000781E00007
80E000078060000780600007806018078060180780001807800030078000300780003007800030
07800070078000F0078001F0078007E0FFFFFFE0FFFFFFE01D227EA121>I<FFFFFFC0FFFFFFC0
07800FC0078003C0078001C0078000C0078000E0078000E0078000600780006007806060078060
6007806000078060000780E0000781E00007FFE00007FFE0000781E0000780E000078060000780
600007806000078060000780000007800000078000000780000007800000078000000780000007
800000FFFE0000FFFE00001B227EA120>I<FFFC3FFFFFFC3FFF078001E0078001E0078001E007
8001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0
07FFFFE007FFFFE0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001
E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0FFFC3FFFFFFC3FFF2022
7EA125>72 D<FFFCFFFC0780078007800780078007800780078007800780078007800780078007
80078007800780078007800780078007800780078007800780078007800780FFFCFFFC0E227EA1
12>I<FFC00003FFFFE00007FF07E00007E007E00007E006F0000DE006F0000DE006F0000DE006
780019E006780019E006780019E0063C0031E0063C0031E0063C0031E0061E0061E0061E0061E0
061E0061E0060F00C1E0060F00C1E006078181E006078181E006078181E00603C301E00603C301
E00603C301E00601E601E00601E601E00601E601E00600FC01E00600FC01E00600FC01E0060078
01E01F807801E0FFF0783FFFFFF0303FFF28227EA12D>77 D<FF800FFFFFC00FFF07C001F807E0
006007F0006006F000600678006006780060063C0060063E0060061E0060060F0060060F006006
0780600607C0600603C0600601E0600601E0600600F060060078600600786006003C6006003C60
06001E6006000F6006000F60060007E0060007E0060003E0060001E0060001E01F8000E0FFF000
E0FFF0006020227EA125>I<FFFFF000FFFFFC0007803F0007800F8007800780078003C0078003
C0078003E0078003E0078003E0078003E0078003E0078003C0078003C00780078007800F800780
3F0007FFFC0007FFF0000780000007800000078000000780000007800000078000000780000007
8000000780000007800000078000000780000007800000FFFC0000FFFC00001B227EA121>80
D<FFFFE00000FFFFF8000007803E000007800F00000780078000078007C000078003E000078003
E000078003E000078003E000078003E000078003E000078007C000078007800007800F00000780
3E000007FFF8000007FFF00000078078000007803C000007801E000007800E000007800F000007
800F000007800F000007800F000007800F800007800F800007800F800007800F818007800FC180
078007C180FFFC03E300FFFC01FE000000007C0021237EA124>82 D<03F0200FFC601C0EE03803
E07001E07001E0E000E0E000E0E00060E00060E00060F00000F000007800007F00003FF0001FFE
000FFF0003FF80003FC00007E00001E00000F00000F0000070C00070C00070C00070C00070E000
60E000E0F000C0F801C0EF0380C7FF0081FC0014247DA21B>I<7FFFFFF87FFFFFF87C0780F870
0780386007801860078018E007801CC007800CC007800CC007800CC007800CC007800C00078000
000780000007800000078000000780000007800000078000000780000007800000078000000780
0000078000000780000007800000078000000780000007800000078000000780000007800003FF
FF0003FFFF001E227EA123>I<0FE0001FF8003C1C003C0E00180700000700000700000F0003FF
000FFF003F07007C0700780700F00700F00718F00718F00F18780F187C3FB83FF3F00FC3C01515
7E9418>97 D<0E0000FE0000FE00001E00000E00000E00000E00000E00000E00000E00000E0000
0E00000E00000E00000E1F800E7FE00FC0F00F00780E00380E003C0E001C0E001E0E001E0E001E
0E001E0E001E0E001E0E001E0E001C0E003C0F00380F80700FC1F00C7FC00C1F0017237FA21B>
I<01FE0007FF000F07801C0780380300780000700000F00000F00000F00000F00000F00000F000
00F000007800007800C03C00C01E01800F030007FE0001F80012157E9416>I<0000E0000FE000
0FE00001E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E003F0E007
FEE01F07E03C01E03800E07800E07000E0F000E0F000E0F000E0F000E0F000E0F000E0F000E070
00E07800E03801E03C03E01E0EF00FFCFE03F0FE17237EA21B>I<01FC0007FF000F07801C03C0
3801C07801E07000E0FFFFE0FFFFE0F00000F00000F00000F00000F000007800007800603C0060
1E00C00F838007FF0000FC0013157F9416>I<003C00FE01CF038F038F07000700070007000700
0700070007000700FFF8FFF8070007000700070007000700070007000700070007000700070007
000700070007007FF87FF8102380A20F>I<0000F001F1F807FFB80F1F381E0F001C07003C0780
3C07803C07803C07803C07801C07001E0F000F1E001FFC0019F0001800001800001C00001FFF00
0FFFC01FFFE03801F0700070E00038E00038E00038E000387000707800F01E03C00FFF8001FC00
15217F9518>I<0E0000FE0000FE00001E00000E00000E00000E00000E00000E00000E00000E00
000E00000E00000E00000E1F800E7FC00FC1E00F80F00F00700E00700E00700E00700E00700E00
700E00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7FFFFE7FF18237FA21B
>I<1C001E003E001E001C00000000000000000000000000000000000E00FE00FE001E000E000E
000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC0FFC00A227FA10E>I<01
C003E003E003E001C00000000000000000000000000000000001E00FE00FE001E000E000E000E0
00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E060
C0F1C0F1807F003E000B2C82A10F>I<0E0000FE0000FE00001E00000E00000E00000E00000E00
000E00000E00000E00000E00000E00000E00000E0FFC0E0FFC0E07E00E03800E07000E0E000E18
000E30000E78000EF8000F9C000F1E000E0E000E07000E07800E03C00E01C00E01E00E01F0FFE3
FEFFE3FE17237FA21A>I<0E1FC07F00FE7FE1FF80FEC0F303C01F807E01E00F003C00E00E0038
00E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E00
3800E00E003800E00E003800E00E003800E00E003800E00E003800E0FFE3FF8FFEFFE3FF8FFE27
157F942A>109 D<0E1F80FE7FC0FFC1E01F80F00F00700E00700E00700E00700E00700E00700E
00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7FFFFE7FF18157F941B>I<
01FC0007FF000F07801C01C03800E07800F0700070F00078F00078F00078F00078F00078F00078
F000787000707800F03800E01C01C00F078007FF0001FC0015157F9418>I<0E1F80FE7FE0FFC1
F00F00780E00780E003C0E003C0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E003C0E00
3C0F00780F80700FC1F00E7FC00E1F000E00000E00000E00000E00000E00000E00000E00000E00
00FFE000FFE000171F7F941B>I<0E3CFEFEFFCF1F8F0F060F000E000E000E000E000E000E000E
000E000E000E000E000E000E00FFF0FFF010157F9413>114 D<0F883FF87078E038E018E018E0
18F0007F003FE01FF001F8003CC01CC01CE01CE01CF018F878DFF08FC00E157E9413>I<060006
000600060006000E000E000E001E003E00FFF8FFF80E000E000E000E000E000E000E000E000E00
0E000E0C0E0C0E0C0E0C0E0C0E08071803F001E00E1F7F9E13>I<0E0070FE07F0FE07F01E00F0
0E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00F0
0E01F007037803FE7F01F87F18157F941B>I<FF8FF9FFFF8FF9FF1E01C07C1C03C0380E03E030
0E03E0300E0660300706706007067060070E7060038C30C0038C38C0039C38C001D8198001D81D
8001D81D8001F00F8000F00F0000F00F0000E007000060060020157F9423>119
D<FFC3FEFFC3FE1E00F80E00600E00600700C00700C00700C003818003818003C38001C30001C3
0000E60000E60000E600007C00007C00007C000038000038000030000030000070000060000060
00F0C000F1C000F380007F00003E0000171F7F941A>121 D E /Fq 20 118
df<FFFF80FFFF80FFFF8011037F9016>45 D<FFFFFFE00000FFFFFFFC000007E0007F000003E0
000F800003E00007C00003E00001E00003E00000F00003E00000780003E000007C0003E000003E
0003E000003E0003E000001F0003E000001F0003E000000F8003E000000F8003E000000FC003E0
00000FC003E0000007C003E0000007C003E0000007E003E0000007E003E0000007E003E0000007
E003E0000007E003E0000007E003E0000007E003E0000007E003E0000007E003E0000007E003E0
000007E003E0000007C003E0000007C003E0000007C003E000000FC003E000000F8003E000000F
8003E000000F8003E000001F0003E000001F0003E000003E0003E000007C0003E00000780003E0
0000F80003E00001F00003E00007E00003E0000F800007E0007F0000FFFFFFFC0000FFFFFFE000
002B317CB033>68 D<FFFF80FFFF8007F00003E00003E00003E00003E00003E00003E00003E000
03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000
03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000
03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00007F000FFFF80FFFF80
11317DB017>73 D<FFF00000007FF8FFF8000000FFF807F8000000FF0003F8000000FE00037C00
0001BE00037C000001BE00037C000001BE00033E0000033E00033E0000033E00033E0000033E00
031F0000063E00031F0000063E00031F0000063E00030F80000C3E00030F80000C3E00030F8000
0C3E000307C000183E000307C000183E000307C000183E000303E000303E000303E000303E0003
03E000303E000301F000603E000301F000603E000301F000C03E000300F800C03E000300F800C0
3E0003007C01803E0003007C01803E0003007C01803E0003003E03003E0003003E03003E000300
3E03003E0003001F06003E0003001F06003E0003001F06003E0003000F8C003E0003000F8C003E
0003000F8C003E00030007D8003E00030007D8003E00030007D8003E00030003F0003E00030003
F0003E00030003F0003E00078001E0003E000FC001E0007F00FFFC01E00FFFF8FFFC00C00FFFF8
35317CB03D>77 D<FFFFFFC000FFFFFFF80007E000FE0003E0001F0003E0000F8003E00007C003
E00003E003E00003F003E00001F003E00001F003E00001F803E00001F803E00001F803E00001F8
03E00001F803E00001F803E00001F003E00001F003E00003F003E00003E003E00007C003E0000F
8003E0001F0003E000FE0003FFFFF80003FFFFC00003E000000003E000000003E000000003E000
000003E000000003E000000003E000000003E000000003E000000003E000000003E000000003E0
00000003E000000003E000000003E000000003E000000003E000000003E000000003E000000003
E000000007F0000000FFFF800000FFFF80000025317CB02D>80 D<007F802001FFE06007C0F860
0F001CE01E000FE03C0007E0380003E0780001E0700001E0700000E0F00000E0F00000E0F00000
60F0000060F0000060F8000060F80000007C0000007E0000003F0000003FC000001FF800000FFF
800007FFF80003FFFC0000FFFF00000FFF800000FFC000001FE0000007E0000003F0000001F000
0000F0000000F8000000F8C0000078C0000078C0000078C0000078C0000078E0000078E0000070
F00000F0F00000E0F80000E0FC0001C0FE000380E7800700C1F01E00C07FFC00800FF0001D337C
B125>83 D<01FE00000FFFC0001C03E0003C00F0003E0078003E003C003E001C0008001E000000
1E0000001E0000001E0000001E000001FE00003FFE0001FF1E0007F01E000F801E001F001E003E
001E007C001E007C001E00F8001E0CF8001E0CF8001E0CF8003E0CF8003E0C7C007E0C3E00DF1C
1F038FB80FFF07F003F803C01E1F7D9E21>97 D<003FC000FFF803E01C07801E0F003E1E003E1E
003E3C00087C00007C0000780000F80000F80000F80000F80000F80000F80000F80000F80000F8
00007C00007C00007C00003E00031E00031F00060F800E07C01C03F03800FFE0003F80181F7D9E
1D>99 D<000001E000003FE000003FE0000003E0000001E0000001E0000001E0000001E0000001
E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00000
01E0003F81E000FFE1E003E079E007800DE00F0007E01E0003E01E0001E03C0001E07C0001E07C
0001E0780001E0F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0
F80001E0780001E07C0001E07C0001E03C0001E03E0003E01E0007E00F000FE007801DE003E071
F001FFE1FF003F01FF20327DB125>I<003F800000FFE00003E0F80007803C000F001E001E001E
001E000F003C000F007C000F007C000F8078000780F8000780FFFFFF80FFFFFF80F8000000F800
0000F8000000F8000000F8000000F8000000780000007C0000003C0000003C0001801E0001800F
0003000F80060007C00E0001F03C0000FFF000001FC000191F7E9E1D>I<0003E0001FF8003C38
00707C00F07C01E07C01E03803C00003C00003C00003C00003C00003C00003C00003C00003C000
03C00003C00003C000FFFFC0FFFFC003C00003C00003C00003C00003C00003C00003C00003C000
03C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C000
03C00003C00003C00003C00003C00007E0007FFF007FFF0016327FB114>I<000000F0007F03F8
01FFCF1C03C1FC1C0780F8180F0078001F007C001E003C003E003E003E003E003E003E003E003E
003E003E003E003E003E003E001E003C001F007C000F0078000780F0000FC1E0000DFFC0001C7F
000018000000180000001C0000001C0000001E0000000FFFF8000FFFFF0007FFFF800FFFFFC01E
0007E0380001F07000007070000078E0000038E0000038E0000038E0000038E000003870000070
780000F03C0001E01E0003C007C01F0001FFFC00003FE0001E2F7E9F21>I<07000F801F801F80
0F800700000000000000000000000000000000000000000000000780FF80FF800F800780078007
800780078007800780078007800780078007800780078007800780078007800780078007800780
078007800FC0FFF8FFF80D307EAF12>105 D<0781FE003FC000FF87FF80FFF000FF8E07C1C0F8
000F9803E3007C0007B001E6003C0007E000FC001E0007C000F8001E0007C000F8001E0007C000
F8001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00
078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0
001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E0007
8000F0001E00078000F0001E00078000F0001E000FC001F8003F00FFFC1FFF83FFF0FFFC1FFF83
FFF0341F7E9E38>109 D<0781FE0000FF87FF8000FF8E07C0000F9803E00007B001E00007E000
F00007C000F00007C000F00007C000F000078000F000078000F000078000F000078000F0000780
00F000078000F000078000F000078000F000078000F000078000F000078000F000078000F00007
8000F000078000F000078000F000078000F000078000F000078000F000078000F0000FC001F800
FFFC1FFF80FFFC1FFF80211F7E9E25>I<001FC00000FFF80001E03C0007800F000F0007801E00
03C01E0003C03C0001E03C0001E0780000F0780000F0780000F0F80000F8F80000F8F80000F8F8
0000F8F80000F8F80000F8F80000F8F80000F8780000F07C0001F03C0001E03C0001E01E0003C0
1E0003C00F00078007C01F0001F07C0000FFF800001FC0001D1F7E9E21>I<0783E0FF8FF8FF9C
7C0FB07C07F07C07E03807C00007C00007C0000780000780000780000780000780000780000780
000780000780000780000780000780000780000780000780000780000780000780000780000FC0
00FFFE00FFFE00161F7E9E19>114 D<01FC100FFF301E03F03800F0700070E00070E00030E000
30E00030F00030F800007E00003FF0001FFF000FFF8003FFE0003FF00003F8000078C0003CC000
3CC0001CE0001CE0001CF0001CF00018F80038FC0070EF01E0C3FFC080FE00161F7E9E1A>I<00
C00000C00000C00000C00000C00001C00001C00001C00003C00003C00007C0000FC0001FC000FF
FFE0FFFFE003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003
C00003C00003C00003C00003C00003C03003C03003C03003C03003C03003C03003C03003C03001
E06001E06000F0C0007F80001F00142C7FAB19>I<078000F000FF801FF000FF801FF0000F8001
F000078000F000078000F000078000F000078000F000078000F000078000F000078000F0000780
00F000078000F000078000F000078000F000078000F000078000F000078000F000078000F00007
8000F000078000F000078000F000078000F000078001F000078001F000078003F000038007F000
03C00EF00001F03CF80000FFF0FF80003FC0FF80211F7E9E25>I E /Fr
5 85 df<00000000600000000000E00000000000E00000000001E00000000001F00000000003F0
0000000003F00000000007F0000000000FF0000000000FF0000000001BF0000000001BF0000000
0033F00000000033F00000000063F00000000063F000000000C3F000000001C3F00000000183F0
0000000303F00000000303F00000000603F80000000603F80000000C01F80000000C01F8000000
1801F80000003801F80000003001F80000006001F80000006001F8000000C001F8000000C001F8
0000018001F8000001FFFFF8000003FFFFF80000070001F80000060001F800000C0001F800000C
0001F80000180001FC0000180001FC0000300000FC0000300000FC0000600000FC0000E00000FC
0000C00000FC0001C00000FC0003C00000FC000FE00003FC00FFFC003FFFE0FFF8003FFFE02B33
7CB234>65 D<000FFFFFFC00000FFFFFFF8000007F000FC000007E0003E000007E0001F000007E
0000F800007E00007C0000FC00007C0000FC00003E0000FC00003E0000FC00003E0001F800001E
0001F800001F0001F800001F0001F800001F0003F000001F0003F000001F0003F000001F0003F0
00001F0007E000003F0007E000003F0007E000003F0007E000003F000FC000003E000FC000007E
000FC000007E000FC000007E001F8000007C001F800000FC001F800000FC001F800000F8003F00
0001F8003F000001F0003F000003F0003F000003E0007E000007E0007E000007C0007E00000F80
007E00000F0000FC00001F0000FC00003E0000FC00007C0000FC0000F80001F80001F00001F800
07C00001F8000F800003F8007E0000FFFFFFF80000FFFFFFC0000030317BB035>68
D<000FFFFFFFF8000FFFFFFFF800007F0003F800007E0000F800007E00007800007E0000780000
7E0000300000FC0000300000FC0000300000FC0000300000FC0000300001F80000300001F80000
300001F80000300001F80000600003F00180600003F00180000003F00180000003F00180000007
E00300000007E00300000007E00700000007E01F0000000FFFFE0000000FFFFE0000000FC01E00
00000FC00E0000001F800C0000001F800C0000001F800C0000001F800C0000003F00180000003F
00180000003F00000000003F00000000007E00000000007E00000000007E00000000007E000000
0000FC0000000000FC0000000000FC0000000000FC0000000001F80000000001F80000000001F8
0000000003F800000000FFFFF0000000FFFFF00000002D317BB02E>70 D<000FFFFFE000000FFF
FFFC0000007F003F0000007E000F8000007E0007C000007E0003E000007E0003F00000FC0001F0
0000FC0001F00000FC0001F00000FC0001F00001F80003F00001F80003F00001F80003F00001F8
0003E00003F00007E00003F00007C00003F0000FC00003F0001F800007E0003F000007E0007C00
0007E000F8000007E007E000000FFFFF8000000FFFFF0000000FC00FC000000FC007E000001F80
03F000001F8001F000001F8001F800001F8001F800003F0001F800003F0001F800003F0001F800
003F0001F800007E0003F000007E0003F000007E0003F000007E0003F00000FC0007E00000FC00
07E00000FC0007E00000FC0007E01801F80007E03001F80007E03001F80007E06003F80003E060
FFFFE001F1C0FFFFC000FF80000000003E002D327BB033>82 D<07FFFFFFFFF007FFFFFFFFF00F
E007F007F00F8007E001F00E0007E000E00C0007E000E01C0007E000E018000FC000E018000FC0
00E030000FC000C030000FC000C030001F8000C060001F8000C060001F8000C060001F8000C0C0
003F00018000003F00000000003F00000000003F00000000007E00000000007E00000000007E00
000000007E0000000000FC0000000000FC0000000000FC0000000000FC0000000001F800000000
01F80000000001F80000000001F80000000003F00000000003F00000000003F00000000003F000
00000007E00000000007E00000000007E00000000007E0000000000FC0000000000FC000000000
0FC0000000000FC0000000001F80000000001F80000000001F80000000003F800000007FFFFF80
00007FFFFF8000002C3174B032>84 D E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300
TeXDict begin
%%EndSetup
%%Page: 0 1
bop 799 949 a Fr(D)25 b(R)g(A)g(F)g(T)225 1041 y Fq(Do)r(cumen)n(t)20
b(for)i(a)f(Standard)g(Message-P)n(assing)f(In)n(terface)621
1235 y Fp(Message)c(P)o(assing)h(In)o(terface)e(F)l(orum)795
1362 y(F)l(ebruary)h(1,)g(1997)190 1420 y(This)h(w)o(ork)f(w)o(as)h(supp)q
(orted)g(in)f(part)g(b)o(y)g(NSF)g(and)h(ARP)l(A)e(under)h(NSF)g(con)o(tract)
283 1478 y(CD)o(A-9115428)j(and)e(Esprit)f(under)h(pro)s(ject)e(HPC)i
(Standards)g(\(21111\).)p eop
%%Page: 1 2
bop 166 49 a Fo(This)20 b(is)h(the)f(result)g(of)f(a)h(LaT)l(eX)g(run)g(of)g
(a)f(draft)g(of)h(a)f(single)j(c)o(hapter)d(of)h(the)g(MPIF)f(Final)75
106 y(Rep)q(ort)d(do)q(cumen)o(t.)969 2828 y(i)p eop
%%Page: 1 3
bop 75 361 a Fn(Chapter)31 b(7)75 568 y Fm(External)40 b(In)m(terfaces)75
809 y Fl(7.1)59 b(Generalized)20 b(Requests)75 910 y Fo(The)11
b(goal)f(of)h(this)g Fk(MPI-2)f Fo(extension)h(is)g(to)f(allo)o(w)h(users)g
(to)f(de\014ne)i(new)f(non)o(blo)q(c)o(king)h(op)q(erations.)18
b(Suc)o(h)75 967 y(an)11 b(outstanding)h(non)o(blo)q(c)o(king)g(op)q(eration)
g(is)f(represen)o(ted)h(b)o(y)f(a)g(\(generalized\))i(request.)18
b(The)12 b(request)75 1023 y(is)j(created)g(b)o(y)g(a)f(call)i(to)e
Fk(MPI)p 602 1023 14 2 v 16 w(GR)p 677 1023 V 17 w(ST)l(ART)p
Fo(.)h(The)g(call)h(asso)q(ciates)e(with)h(the)g(request)g(callbac)o(ks)g
(func-)75 1080 y(tions)f(that)f(are)g(in)o(v)o(ok)o(ed)h(b)o(y)g(MPI)g(for)f
(progressing,)g(cancelling)j(and)e(completing)h(the)f(request.)19
b(Suc)o(h)75 1136 y(request,)f(once)g(created,)h(can)f(b)q(e)g(manipulated)h
(as)f(a)f(regular,)i(nonp)q(ersisten)o(t)f(request:)25 b(The)19
b(main)75 1193 y(user)c(co)q(de)g(determines)g(when)g(a)f(generalized)j
(request)d(is)h(complete,)g(determines)g(the)g(status)f(of)g(that)75
1249 y(request,)h(and)g(deallo)q(cates)i(it,)e(b)o(y)g(using)h
Fk(MPI)p 891 1249 V 16 w Fj(f)p Fk(TEST)p Fj(j)p Fk(W)l(AIT)p
Fj(gf)p Fk(ANY)p Fj(j)p Fk(SOME)p Fj(j)p Fk(ALL)p Fj(g)p Fo(.)j(It)c(can)g
(test)g(the)75 1306 y(status)f(of)h(the)h(request,)f(without)g(deallo)q
(cating)i(it,)e(with)h(a)f(call)h(to)f Fk(MPI)p 1358 1306 V
15 w(REQUEST)p 1576 1306 V 18 w(GET)p 1682 1306 V 17 w(ST)l(A)l(TUS)p
Fo(.)75 1362 y(It)g(can)h(cancel)g(it,)f(with)h(a)e(call)j(to)d
Fk(MPI)p 767 1362 V 16 w(CANCEL)p Fo(.)166 1418 y(A)f(fundamen)o(tal)h(prop)q
(ert)o(y)f(of)g(non)o(blo)q(c)o(king)i(op)q(erations)e(is)h(that)f(progress)g
(to)o(w)o(ard)e(the)j(comple-)75 1475 y(tion)g(of)f(suc)o(h)g(op)q(eration)h
(o)q(ccurs)g(async)o(hronously)l(,)g(with)g(no)f(explicit)j(in)o(v)o(olv)o
(emen)o(t)d(of)g(the)h(main)g(user)75 1531 y(program.)28 b(The)19
b(basic)g(design)h(of)e(generalized)i(requests)e(statis\014es)g(this)h(prop)q
(ert)o(y)l(.)30 b(A)18 b(generalized)75 1588 y(request)d(ma)o(y)l(,)g(at)f
(an)o(y)h(p)q(oin)o(t)h(in)g(time,)f(progress)f(using)i(one)g(of)e(the)i
(follo)o(wing)g(t)o(w)o(o)d(mec)o(hanisms,)131 1676 y(1.)22
b(Progress)d(is)h(triggered)g(b)o(y)g(an)g(\\)p Fk(MPI)f Fo(ev)o(en)o(t";)i
(namely)l(,)h(the)e(completion)h(of)e(a)h(non)o(blo)q(c)o(king)189
1733 y(op)q(eration.)f(The)11 b(generalized)j(request)e(is)g(asso)q(ciated)g
(with)g(another)f(\\trigger")g(request.)18 b(Up)q(on)189 1789
y(completion)23 b(of)f(this)h(trigger)f(request,)h(the)g(progress)e(handler)j
(is)f(in)o(v)o(ok)o(ed.)41 b(This)23 b(handler)189 1846 y(can)17
b(start)f(new)i(comm)o(unications,)g(asso)q(ciate)f(the)h(generalized)h
(request)e(with)h(a)f(new)g(trigger)189 1902 y(request,)d(or)h(mark)g(the)g
(generalized)i(request)e(as)g(done.)131 1994 y(2.)22 b(Progress)17
b(is)i(triggered)g(b)o(y)g(ev)o(en)o(ts)f(that)g(are)g(external)h(to)f
Fk(MPI)p Fo(.)g(E.g.,)g(progress)g(can)h(b)q(e)g(due)189 2050
y(to)f(the)g(completion)i(of)e(an)g(I/O)h(op)q(eration)g(that)f(in)o(v)o(ok)o
(es)g(a)h(signal)g(handler)h(or)e(w)o(ak)o(es)f(up)i(a)189
2107 y(thread;)14 b(or)g(it)h(can)g(b)q(e)g(e\013ected)g(b)o(y)g(a)f(p)q
(olling)j(thread)e(or)f(a)g(timer)h(signal.)21 b(In)15 b(suc)o(h)g(a)f(case,)
h(the)189 2163 y(user)g(will)h(use)f(co)q(de)g(external)g(to)g
Fk(MPI)f Fo(\(signal)h(handler,)h(thread\))e(to)g(\\p)q(ok)o(e")g
Fk(MPI)g Fo(with)h(a)g(call)189 2220 y(to)f Fk(MPI)p 329 2220
V 16 w(GR)p 404 2220 V 17 w(KICK)g Fo(and)h(cause)h(the)f(callbac)o(k)h
(function)g(to)f(execute.)166 2308 y(W)l(e)e(use)h(the)g(follo)o(wing)g
(terminology:)19 b(A)14 b(request)f(is)h Fi(starte)n(d)f Fo(b)o(y)h(the)f
(call)i(that)e(initiates)i(it,)e(e.g.,)75 2365 y Fk(MPI)p 160
2365 V 16 w(ISEND)p Fo(;)k(if)i(the)f(request)g(is)g(nonp)q(ersisten)o(t,)h
(then)g(this)f(call)h(also)f(allo)q(cates)h(the)f(request.)28
b(The)75 2421 y(request)17 b Fi(c)n(ompletes)g Fo(when)h(the)f(op)q(eration)g
(asso)q(ciated)h(with)f(it)h(is)g(done;)g(a)f(call)h(to)f Fk(MPI)p
1660 2421 V 16 w(TEST)g Fo(will)75 2478 y(return)c Fk(\015ag)g(=)g(true)h
Fo(once)f(the)g(request)g(completed.)20 b(The)13 b(request)g(is)h
Fi(terminate)n(d)f Fo(b)o(y)f(the)i(w)o(ait)e(or)h(test)75
2534 y(call)i(that)f(returns)f(success,)i(after)e(the)h(request)g(completed;)
i(if)e(the)g(request)g(w)o(as)f(nonp)q(ersisten)o(t,)i(it)f(is)75
2591 y(deallo)q(cated)e(b)o(y)f(the)h(call)g(that)e(terminates)h(it.)19
b(The)11 b(request)g(is)h Fi(c)n(anc)n(el)r(le)n(d)d Fo(b)o(y)i(a)g(call)h
(to)e Fk(MPI)p 1677 2591 V 16 w(CANCEL)p Fo(.)166 2647 y(Generalized)20
b(requests)d(are)h(nonp)q(ersisten)o(t,)h(so)e(that)h(they)g(are)f(allo)q
(cated)i(when)f(started,)g(and)75 2704 y(deallo)q(cated)f(when)e(terminated.)
-32 46 y Fh(1)-32 103 y(2)-32 159 y(3)-32 215 y(4)-32 272 y(5)-32
328 y(6)-32 385 y(7)-32 441 y(8)-32 498 y(9)-40 554 y(10)-40
611 y(11)-40 667 y(12)-40 724 y(13)-40 780 y(14)-40 836 y(15)-40
893 y(16)-40 949 y(17)-40 1006 y(18)-40 1062 y(19)-40 1119
y(20)-40 1175 y(21)-40 1232 y(22)-40 1288 y(23)-40 1345 y(24)-40
1401 y(25)-40 1457 y(26)-40 1514 y(27)-40 1570 y(28)-40 1627
y(29)-40 1683 y(30)-40 1740 y(31)-40 1796 y(32)-40 1853 y(33)-40
1909 y(34)-40 1966 y(35)-40 2022 y(36)-40 2078 y(37)-40 2135
y(38)-40 2191 y(39)-40 2248 y(40)-40 2304 y(41)-40 2361 y(42)-40
2417 y(43)-40 2474 y(44)-40 2530 y(45)-40 2587 y(46)-40 2643
y(47)-40 2699 y(48)964 2828 y Fo(1)p eop
%%Page: 2 4
bop 75 -100 a Fo(2)894 b Fg(CHAPTER)15 b(7.)35 b(EXTERNAL)16
b(INTERF)-5 b(A)o(CES)75 49 y Ff(7.1.1)49 b(Calls)75 135 y
Fo(A)15 b(new)h(generalized)h(request)e(is)h(started)e(with)75
286 y Fk(MPI)p 160 286 14 2 v 16 w(GR)p 235 286 V 17 w(ST)l(ART\(trigger)p
537 286 V 16 w(request,)k(p)o(rogress)p 873 286 V 16 w(fn,)e(complete)p
1127 286 V 15 w(fn,)g(cancel)p 1324 286 V 18 w(fn,)g(extra)p
1503 286 V 16 w(state,)i(gen)p 1707 286 V 17 w(request\))117
420 y Fe(IN)155 b Fk(trigger)p 446 420 V 16 w(request)311 b
Fe(Request)11 b(whic)o(h)f(completion)e(triggers)j(progress)g(of)e(the)i
(gen-)905 476 y(eralized)k(request)117 548 y(IN)155 b Fk(p)o(rogress)p
475 548 V 17 w(fn)379 b Fe(Request)10 b(progress)h(or)e(completion)f(marking)
f(callbac)o(k)i(func-)905 605 y(tion)14 b(for)f Fd(gen)p 1116
605 13 2 v 16 w(request)i Fe(\(function\))117 677 y(IN)155
b Fk(complete)p 493 677 14 2 v 15 w(fn)363 b Fe(Request)10
b(complete)f(callbac)o(k)g(function)g(for)f Fd(gen)p 1663 677
13 2 v 16 w(request)j Fe(\(func-)905 733 y(tion\))117 805 y(IN)155
b Fk(cancel)p 437 805 14 2 v 18 w(fn)416 b Fe(Request)10 b(cancel/failure)f
(callbac)o(k)g(function)g(for)g Fd(gen)p 1748 805 13 2 v 15
w(request)905 862 y Fe(\(function\))117 934 y(IN)155 b Fk(extra)p
416 934 14 2 v 17 w(state)384 b Fe(extra)15 b(state)117 1006
y(OUT)108 b Fk(gen)p 387 1006 V 17 w(request)369 b Fd(MPI)13
b Fe(generalized)i(request)h(\(handle\))166 1130 y Fo(The)f(call)i(starts)d
(a)g(generalized)j(request)f(and)f(returns)g(a)g(handle)h(to)f(it)g(in)h
Fk(gen)p 1553 1130 V 17 w(request)p Fo(.)166 1187 y(The)h(callbac)o(k)g
(function)h Fk(p)o(rogress)p 773 1187 V 16 w(fn)f Fo(is)g(in)o(v)o(ok)o(ed)g
(when)g Fk(trigger)p 1302 1187 V 15 w(requests)i Fo(completes.)25
b(It)16 b(is)h(de-)75 1243 y(\014ned)f(in)g(C)f(b)o(y)75 1319
y Fc(typedef)23 b(int)g(progress)p 556 1319 15 2 v 16 w(fn\(MPI)p
716 1319 V 17 w(Request)g(old)p 996 1319 V 16 w(trigger,)g(void)h(*extra)p
1491 1319 V 16 w(state,)393 1375 y(MPI)p 468 1375 V 17 w(Request*)f(new)p
772 1375 V 16 w(trigger,)g(int)h(*done\);)166 1462 y Fo(The)19
b(function)g(is)h(passed)f(in)g Fk(old)p 758 1462 14 2 v 17
w(trigger)e Fo(the)i(handle)h(to)e(the)h(previous)h(trigger)e(request)h
(\(this)75 1518 y(is)e(the)f(request)h(that)e(just)h(completed,)i(if)e
Fk(trigger)p 953 1518 V 16 w(request)i Fj(6)p Fo(=)e Fk(MPI)p
1255 1518 V 16 w(REQUEST)p 1474 1518 V 18 w(NULL)p Fo(\).)f(It)i(is)g(passed)
75 1574 y(in)23 b Fk(extra)p 233 1574 V 16 w(state)h Fo(the)e(argumen)o(t)g
(that)f(w)o(as)g(passed)i(to)e(the)i Fk(MPI)p 1241 1574 V 16
w(GR)p 1316 1574 V 17 w(ST)l(ART)g Fo(call.)42 b(It)22 b(returns)g(in)75
1631 y Fk(new)p 152 1631 V 17 w(trigger)14 b Fo(a)h(new)h(request)f(whic)o(h)
h(completion)g(will)h(cause)e(the)h(next)f(in)o(v)o(o)q(cation)h(of)e
Fk(p)o(rogress)p 1773 1631 V 17 w(fn)166 1687 y Fo(The)i(callbac)o(k)h
(function)f(returns)g Fk(done)g(=)g(true)h Fo(if)f(the)g(generalized)h
(request)f(is)g(complete,)g Fk(done)75 1744 y(=)g(false)p Fo(,)f(otherwise.)
166 1800 y(A)c(request)h(can)f(b)q(e)h(used)g(as)f(a)g(trigger)f(for)h(at)g
(most)f(one)i(generalized)h(request;)f(suc)o(h)g(\\trigger")e(re-)75
1857 y(quest)g(should)h(not)f(b)q(e)h(used)g(in)g(a)e(call)j(to)d
Fk(MPI)p 855 1857 V 16 w Fj(f)p Fk(TEST)p Fj(j)p Fk(W)l(AIT)p
Fj(gf)p Fk(ANY)p Fj(j)p Fk(SOME)p Fj(j)p Fk(ALL)p Fj(g)p Fo(,)h
Fk(MPI)p 1631 1857 V 16 w(GET)p 1735 1857 V 16 w(ST)l(A)l(TUS)75
1913 y Fo(or)18 b Fk(MPI)p 219 1913 V 16 w(REQUEST)p 438 1913
V 18 w(FREE)p Fo(;)h(instead,)h(the)g(request)f(status)f(should)i(b)q(e)f
(retriev)o(ed)h(and)f(the)g(request)75 1970 y(should)h(b)q(e)f(deallo)q
(cated)h(b)o(y)e(the)h Fk(p)o(rogress)p 835 1970 V 16 w(fn)g
Fo(callbac)o(k)h(function)f(\()p Fk(MPI)f Fo(do)q(es)h(not)f(deallo)q(cate)i
(suc)o(h)75 2026 y(requests)15 b(automatically\).)166 2083
y(The)k(function)h Fk(MPI)p 530 2083 V 15 w(GR)p 604 2083 V
18 w(ST)l(ART)f Fo(can)g(b)q(e)h(passed)f Fk(trigger)p 1209
2083 V 15 w(request)i(=)e(MPI)p 1516 2083 V 16 w(REQUEST)p
1735 2083 V 18 w(NULL)p Fo(,)75 2139 y(and)13 b(the)g(callbac)o(k)h(function)
f Fk(MPI)p 669 2139 V 16 w(p)o(rogress)p 839 2139 V 16 w(fn)g
Fo(ma)o(y)f(return)h Fk(MPI)p 1220 2139 V 16 w(REQUEST)p 1439
2139 V 17 w(NULL)p Fo(.)f(In)i(suc)o(h)f(a)f(case,)75 2195
y(progress)h(to)o(w)o(ard)g(completion)i(of)f(the)g(generalized)i(request)e
(is)h(not)f(triggered)g(b)o(y)g(the)g(completion)h(of)75 2252
y(a)e(request,)h(but,)g(rather,)f(b)o(y)h(an)g(ev)o(en)o(t)f(external)i(to)e
Fk(MPI)p Fo(.)g(The)h(external)g(ev)o(en)o(t)f(handler)i(will)h(use)e(the)75
2308 y(function)i Fk(MPI)p 338 2308 V 16 w(GR)p 413 2308 V
17 w(KICK)e Fo(to)g(cause)i(execution)g(of)f(the)g Fk(p)o(rogress)p
1214 2308 V 16 w(fn)h Fo(callbac)o(k)g(function.)166 2365 y(The)f(callbac)o
(k)i(function)f Fk(complete)p 787 2365 V 14 w(fn)g Fo(is)f(in)o(v)o(ok)o(ed)h
(b)o(y)f(calls)h(to)75 2421 y Fk(MPI)p 160 2421 V 16 w Fj(f)p
Fk(TEST)p Fj(j)p Fk(W)l(AIT)p Fj(gf)p Fk(ANY)p Fj(j)p Fk(SOME)p
Fj(j)p Fk(ALL)p Fj(g)g Fo(that)g(terminate)i(the)f(generalized)i(request,)e
(b)o(y)g(a)g(call)i(to)75 2478 y Fk(MPI)p 160 2478 V 16 w(REQUEST)p
379 2478 V 18 w(FREE)10 b Fo(that)g(deallo)q(cates)h(the)f(generalized)i
(request,)f(or)f(b)o(y)g(a)g(call)h(to)e Fk(MPI)p 1658 2478
V 16 w(GET)p 1762 2478 V 17 w(ST)l(A)l(TUS)75 2534 y Fo(on)20
b(the)f(generalized)j(request.)33 b(Note)19 b(that)g(the)h
Fk(complete)p 1129 2534 V 14 w(fn)g Fo(callbac)o(k)h(function)f(is)h(not)e
(called)i(b)o(y)75 2591 y Fk(MPI)p 160 2591 V 16 w(TEST)15
b Fo(or)g Fk(MPI)p 443 2591 V 16 w(TEST)l(ALL)g Fo(if)h(this)f(call)i
(returns)e Fk(\015ag)g(=)g(false)p Fo(,)g(and)h(b)o(y)f(calls)h(to)75
2647 y Fk(MPI)p 160 2647 V 16 w Fj(f)p Fk(TEST)p Fj(j)p Fk(W)l(AIT)p
Fj(gf)p Fk(ANY)p Fj(j)p Fk(SOME)p Fj(g)k Fo(that)g(do)g(not)g(inform)h(up)q
(on)g(return)f(that)g(the)h(request)f(com-)75 2704 y(pleted.)h(The)15
b(callbac)o(k)i(function)f Fk(complete)p 850 2704 V 14 w(fn)g
Fo(is)g(de\014ned)g(in)g(C)f(b)o(y)1967 46 y Fh(1)1967 103
y(2)1967 159 y(3)1967 215 y(4)1967 272 y(5)1967 328 y(6)1967
385 y(7)1967 441 y(8)1967 498 y(9)1959 554 y(10)1959 611 y(11)1959
667 y(12)1959 724 y(13)1959 780 y(14)1959 836 y(15)1959 893
y(16)1959 949 y(17)1959 1006 y(18)1959 1062 y(19)1959 1119
y(20)1959 1175 y(21)1959 1232 y(22)1959 1288 y(23)1959 1345
y(24)1959 1401 y(25)1959 1457 y(26)1959 1514 y(27)1959 1570
y(28)1959 1627 y(29)1959 1683 y(30)1959 1740 y(31)1959 1796
y(32)1959 1853 y(33)1959 1909 y(34)1959 1966 y(35)1959 2022
y(36)1959 2078 y(37)1959 2135 y(38)1959 2191 y(39)1959 2248
y(40)1959 2304 y(41)1959 2361 y(42)1959 2417 y(43)1959 2474
y(44)1959 2530 y(45)1959 2587 y(46)1959 2643 y(47)1959 2699
y(48)p eop
%%Page: 3 5
bop 75 -100 a Fg(7.1.)34 b(GENERALIZED)16 b(REQUESTS)1071 b
Fo(3)75 49 y Fc(typedef)23 b(int)g(complete)p 556 49 15 2 v
16 w(fn\(int)g(context,)g(void)h(*extra)p 1218 49 V 16 w(state,)f(MPI)p
1473 49 V 17 w(Status*)g(status\);)166 136 y Fo(The)17 b(function)g(is)g
(passed)g(in)h Fk(context)g Fo(information)f(on)f(the)h(con)o(text)f(of)g
(the)h(call.)25 b(This)18 b(can)e(b)q(e)75 192 y(one)f(of)g(the)g(follo)o
(wing)75 279 y Fb(MPI)p 184 279 16 2 v 18 w(GR)p 282 279 V
19 w(TERMINA)l(TE)23 b Fo(to)15 b(indicate)h(that)f(the)g(callbac)o(k)h(o)q
(ccured)g(within)h(a)e(call)h(to)189 335 y Fk(MPI)p 274 335
14 2 v 15 w Fj(f)p Fk(TEST)p Fj(j)p Fk(W)l(AIT)p Fj(gf)p Fk(ANY)p
Fj(j)p Fk(SOME)p Fj(j)p Fk(ALL)p Fj(g)g Fo(that)f(terminates)i(the)f
(generalized)i(request,)e(or)g(b)o(y)189 392 y(a)11 b(call)i(to)e
Fk(MPI)p 440 392 V 16 w(REQUEST)p 659 392 V 18 w(FREE)p Fo(,)h(after)f(the)h
(request)g(completed.)20 b(In)12 b(b)q(oth)g(cases,)g(the)g(request)189
448 y(can)j(b)q(e)h(deallo)q(cated.)75 539 y Fb(MPI)p 184 539
16 2 v 18 w(GR)p 282 539 V 19 w(FREE)24 b Fo(to)16 b(indicate)j(that)d(the)h
(call)h(o)q(ccurred)g(with)g(a)e(call)j(to)d Fk(MPI)p 1519
539 14 2 v 16 w(REQUEST)p 1738 539 V 18 w(FREE)p Fo(,)189 596
y(b)q(efore)j(the)h(generalized)h(request)f(completed.)33 b(In)20
b(this)g(case,)h(the)e(request)h(can)f(b)q(e)h(mark)o(ed)189
652 y(for)f(deallo)q(cation)i(and)f(no)f(status)g(needs)h(to)f(b)q(e)h
(returned,)h(no)o(w)e(or)g(later;)j(but)d(the)h(request)189
709 y(op)q(eration)15 b(m)o(ust)g(con)o(tin)o(ue.)75 800 y
Fb(MPI)p 184 800 16 2 v 18 w(GR)p 282 800 V 19 w(OTHER)24 b
Fo(to)d(indicate)j(that)d(neither)i(of)f(the)g(\014st)f(t)o(w)o(o)g(cases)h
(hold;)k(e.g.,)c(when)h(the)189 856 y(con)o(text)14 b(is)i(a)f(cll)h(to)f
Fk(MPI)p 635 856 14 2 v 16 w(REQUEST)p 854 856 V 18 w(GET)p
960 856 V 16 w(ST)l(A)l(TUS)p Fo(.)166 943 y(The)20 b(callbac)o(k)h(function)
g(is)g(passed)f(the)g(status)f(argumen)o(t)h(pro)o(vided)h(b)o(y)f(the)g(T)l
(est,)g(W)l(ait)g(or)75 1000 y(Get)p 152 1000 V 16 w(status)9
b(function.)19 b(It)10 b(can)h(use)f(the)g(v)m(arious)h(status)e(setting)i
(functions)f(\()p Fk(MPI)p 1475 1000 V 16 w(ST)l(A)l(TUS)p
1656 1000 V 18 w(SET)p 1757 1000 V 16 w(ELEMENTS,)75 1056 y(MPI)p
160 1056 V 16 w(ST)l(A)l(TUS)p 341 1056 V 18 w(SET)p 442 1056
V 16 w(CANCELLED)p Fo(\))i(to)f(set)h(the)h(status)e(to)g(b)q(e)i(returned)g
(b)o(y)f(these)g(calls.)20 b(If)13 b(no)f(status)75 1112 y(needs)k(to)f(b)q
(e)g(returned,)h(then)f(the)h(callbac)o(k)g(function)g(is)g(passed)f
Fk(status)i(=)f(MPI)p 1502 1112 V 16 w(ST)l(A)l(TUS)p 1683
1112 V 17 w(IGNORE)p Fo(,)75 1169 y(in)g(whic)o(h)g(case,)f(it)g(should)i
(not)d(return)i(an)o(y)e(v)m(alue)j(in)f Fk(status)p Fo(..)166
1225 y(The)f(callbac)o(k)i(function)f Fk(cancel)p 731 1225
V 17 w(fn)f Fo(is)h(in)o(v)o(ok)o(ed)f(b)o(y)h(calls)g(to)e
Fk(MPI)p 1313 1225 V 16 w(CANCEL)i Fo(on)f(the)g(generalized)75
1282 y(request.)20 b(It)15 b(is)h(de\014ned)g(in)g(C)f(b)o(y)75
1360 y Fc(typedef)23 b(int)g(cancel)p 508 1360 15 2 v 17 w(fn\(MPI)p
669 1360 V 16 w(Request)g(trigger)p 1044 1360 V 16 w(request,)g(void)g
(*extra)p 1538 1360 V 17 w(state,)393 1417 y(MPI)p 468 1417
V 17 w(Request)g(*new)p 772 1417 V 16 w(trigger,)g(int)h(*done\)\);)166
1503 y Fo(.)166 1560 y(This)18 b(is)g(the)g(same)g(binding)h(as)f(the)f
Fk(p)o(rogress)p 980 1560 14 2 v 17 w(fn)h Fo(callbac)o(k)g(function.)29
b(In)18 b(e\013ect,)g(the)f Fk(cancel)p 1823 1560 V 18 w(fn)75
1616 y Fo(callbac)o(k)f(replaces)g(the)g Fk(p)o(rogress)p 657
1616 V 16 w(fn)f Fo(function.)166 1673 y(The)24 b(follo)o(wing)h
Fk(MPI)f Fo(function)h(can)f(b)q(e)h(used)f(to)g(c)o(hange)g(the)g(kic)o(k)h
(the)f(execution)h(of)f(the)75 1729 y Fk(p)o(rogress)p 232
1729 V 16 w(fn)16 b Fo(function.)75 1880 y Fk(MPI)p 160 1880
V 16 w(GR)p 235 1880 V 17 w(KICK\(gen)p 442 1880 V 15 w(request\))117
1957 y Fe(INOUT)62 b Fk(gen)p 387 1957 V 17 w(request)369 b
Fe(generalized)15 b(request)g(\(handle\))166 2082 y Fo(This)20
b(function)h(will)h(cause)e(the)g Fk(p)o(rogress)p 914 2082
V 16 w(fn)h Fo(function)f(to)g(b)q(e)g(in)o(v)o(ok)o(ed.)35
b(It)20 b(should)h(b)q(e)f(called)75 2138 y(only)c(if)g Fk(p)o(rogress)p
374 2138 V 16 w(fn)g Fo(is)g(not)f(curren)o(tly)h(attac)o(hed)f(to)g(a)g
(trigger)g(request.)21 b(This)16 b(function)h(is)f(used)g(in)g(a)75
2195 y(situation)g(where)f(progress)g(on)g(the)g(generalized)i(request)e(is)h
(done)g(outsided)g Fk(MPI)p Fo(.)166 2251 y Fk(MPI)f Fo(do)q(es)g(not)g(in)o
(v)o(ok)o(e)g Fk(cancel)p 705 2251 V 17 w(fn)h Fo(while)g Fk(p)o(rogress)p
1047 2251 V 17 w(fn)f Fo(is)h(running.)189 2348 y Fi(A)n(dvic)n(e)e(to)h
(users.)39 b Fo(The)14 b(design)g(implies)i(that,)d(at)g(an)o(y)h(p)q(oin)o
(t)g(in)h(time,)f(progress)f(of)g(a)g(general-)189 2404 y(ized)j(request)f
(is)g(either)g(external)h(to)e Fk(MPI)p Fo(,)g(or)g(is)h(tied)h(to)e(the)h
(completion)h(of)e(an)h Fk(MPI)f Fo(request.)189 2460 y(An)o(y)f(ev)o(en)o(t)
h(that)f(causes)h(progress)f(will)i(in)o(v)o(ok)o(e)f(the)f
Fk(p)o(rogress)p 1270 2460 V 17 w(fn)h Fo(callbac)o(k,)g(that)f(can)h(asso)q
(ciate)189 2517 y(the)19 b(generalized)h(request)f(with)h(a)e(new)i(request,)
f(or)g(mo)o(v)o(e)f(the)h(resp)q(osnibilit)o(y)i(for)e(progress)189
2573 y(outside)c Fk(MPI)p Fo(,)g(b)o(y)g(returning)h(a)e(n)o(ull)j(request.)
189 2647 y(On)e(the)g(face)g(of)g(it,)g(one)g(can)g(not)f(ha)o(v)o(e)h(a)g
(\\select")g(statemen)o(t,)f(where)h(the)g(progress)f(function)189
2704 y(will)20 b(b)q(e)g(in)o(v)o(ok)o(ed)f(when)g(one)g(of)f(sev)o(eral)h
(ev)o(en)o(ts)g(happ)q(ened.)32 b(This)19 b(can)g(b)q(e)h(done)f(indirectly)l
(.)-32 46 y Fh(1)-32 103 y(2)-32 159 y(3)-32 215 y(4)-32 272
y(5)-32 328 y(6)-32 385 y(7)-32 441 y(8)-32 498 y(9)-40 554
y(10)-40 611 y(11)-40 667 y(12)-40 724 y(13)-40 780 y(14)-40
836 y(15)-40 893 y(16)-40 949 y(17)-40 1006 y(18)-40 1062 y(19)-40
1119 y(20)-40 1175 y(21)-40 1232 y(22)-40 1288 y(23)-40 1345
y(24)-40 1401 y(25)-40 1457 y(26)-40 1514 y(27)-40 1570 y(28)-40
1627 y(29)-40 1683 y(30)-40 1740 y(31)-40 1796 y(32)-40 1853
y(33)-40 1909 y(34)-40 1966 y(35)-40 2022 y(36)-40 2078 y(37)-40
2135 y(38)-40 2191 y(39)-40 2248 y(40)-40 2304 y(41)-40 2361
y(42)-40 2417 y(43)-40 2474 y(44)-40 2530 y(45)-40 2587 y(46)-40
2643 y(47)-40 2699 y(48)p eop
%%Page: 4 6
bop 75 -100 a Fo(4)894 b Fg(CHAPTER)15 b(7.)35 b(EXTERNAL)16
b(INTERF)-5 b(A)o(CES)189 49 y Fo(Supp)q(ese)17 b(that)f(w)o(e)g(wish)h(the)f
(progress)g(callbac)o(k)h(of)f(generalized)i(request)e(GA)g(to)g(b)q(e)h(in)o
(v)o(ok)o(ed)189 106 y(when)i(either)g(request)g(B)f(or)g(request)h(C)f
(complete.)31 b(W)l(e)19 b(create)f(a)g(generalized)j(request)d(GB)189
162 y(that)12 b(is)i(asso)q(ciated)f(with)g(B)h(and)f(a)g(generalized)i
(request)e(GC)f(that)h(is)g(asso)q(caited)h(with)f(C.)g(The)189
219 y(progress)h(callbac)o(k)i(function)g(of)f(b)q(oth)h(GB)f(and)g(GC)g
(call)h Fk(MPI)p 1301 219 14 2 v 16 w(GR)p 1376 219 V 17 w(KICK\(GA\))p
Fo(.)189 294 y Fk(MPI)g Fo(sp)q(eci\014es)i(that,)e(when)h
Fk(MPI)p 782 294 V 16 w(CANCEL)g Fo(is)g(in)o(v)o(ok)o(ed,)g(then)g(request)g
(completion)g(b)q(ecomes)189 350 y(lo)q(cal,)i(and)f(do)q(es)g(not)g(dep)q
(end)h(an)o(ymore)e(on)h(the)g(state)f(of)h(other)f(pro)q(cesses.)29
b(Either)18 b(the)g(re-)189 407 y(quest)g(completes)h(normally)l(,)g(or)f
(the)g(request)h(is)f(cancelled)j(and)d(state)g(is)g(restored)g(as)g(if)h
(the)189 463 y(request)f(nev)o(er)g(executed.)30 b(It)18 b(is)h(up)g(to)e
(the)i(user)f(to)g(decide)i(whether)e(he)h(or)e(she)i(w)o(an)o(ts)e(the)189
520 y(same)12 b(seman)o(tics)i(for)e(a)h(generalized)i(request)e(and,)g(if)g
(so,)g(to)g(pro)o(vide)g(appropriate)g(co)q(de)h(in)g(the)189
576 y(cancel)k(and)f(complete)h(callbac)o(k)h(functions.)26
b(Pro)o(viding)18 b(the)f(prop)q(er)h(cancel)g(seman)o(tics)g(ma)o(y)189
632 y(not)g(b)q(e)h(alw)o(a)o(ys)e(p)q(ossible)k(or)c(e\016cien)o(t,)j(for)e
(generalized)i(requests:)26 b(Supp)q(ose,)20 b(e.g.,)e(that)g(the)189
689 y(completion)e(of)f(a)h(generalized)h(request)e(requires)i(the)e
(completion)i(of)e(t)o(w)o(o)f(non)o(blo)q(c)o(king)j(com-)189
745 y(m)o(unications.)i(The)13 b(user)f(ma)o(y)g(attempt)f(to)h(cancel)i
(these)e(t)o(w)o(o)f(non)o(blo)q(c)o(king)j(comm)o(unications;)189
802 y(he)j(or)f(she)i(cannot)e(guaran)o(tee)h(that)f(either)i(b)q(oth)f
(cancelations)h(succeed)g(or)e(b)q(oth)h(comm)o(uni-)189 858
y(cations)g(complete.)27 b(Instead,)18 b(one)f(comm)o(unication)h(ma)o(y)f
(complete)h(and)f(the)h(other)f(ma)o(y)f(b)q(e)189 915 y(cancelled.)22
b(In)15 b(order)f(to)g(implemen)o(t)i(prop)q(er)f(cancelling)i(seman)o(tics,)
d(the)h(user)f(w)o(ould)h(ha)o(v)o(e)g(to)189 971 y(use)j(a)f(complex)h(and)g
(exp)q(ensiv)o(e)h(distributed)g(commit)f(proto)q(col.)26 b(In)19
b(general,)f(the)f Fk(cancel)p 1823 971 V 18 w(fn)189 1028
y Fo(callbac)o(k)c(function)h(will)g(attempt)e(to)g(cancel)i(all)g(p)q
(ending)g(non)o(blo)q(c)o(king)g(comm)o(unications)g(that)189
1084 y(where)i(issued)i(as)e(part)g(of)g(the)g(generalize)i(request;)f(the)f
Fk(complete)p 1384 1084 V 15 w(fn)h Fo(callbac)o(k)g(function)g(will)189
1141 y(test)12 b(whic)o(h)i(of)e(these)h(cancel)h(calls)g(succeeded,)g(p)q
(erform)f(further)g(clean)o(up)h(as)e(needed,)i(and)f(will)189
1197 y(return)i(a)g(suitable)h(status.)189 1272 y(The)i Fk(extra)p
383 1272 V 17 w(state)i Fo(supplied)h(in)e Fk(MPI)p 832 1272
V 16 w(GR)p 907 1272 V 17 w(ST)l(ART)g Fo(will)i(b)q(e)e(passed)g(to)f(the)g
(callbac)o(k)i(routines.)189 1329 y(One)13 b(should)g(tak)o(e)f(care)h(that)f
(an)o(y)g(information)g(attac)o(hed)g(with)h Fk(extra)p 1417
1329 V 17 w(state)g Fo(b)q(e)h(in)f(appropriate)189 1385 y(memory)l(.)18
b(The)11 b(lo)q(cal)i(stac)o(k)d(asso)q(ciated)i(with)f(an)g(earlier)h
(callbac)o(k)h(ma)o(y)d(ha)o(v)o(e)h(disapp)q(eared)i(and)189
1442 y(callbac)o(ks)j(can)g(o)q(ccur)g(on)g(di\013eren)o(t)g(threads.)21
b(As)15 b(a)h(result,)g(the)f(memory)h(used)g(in)g Fk(extra)p
1769 1442 V 17 w(state)189 1498 y Fo(should)21 b(b)q(e)g(globally)g(a)o(v)m
(ailable)h(\(heap\))e(for)f(the)i(duration)f(of)g(time)g(that)g(an)o(y)g
(callbac)o(k)h(can)189 1554 y(o)q(ccur.)27 b(Users)18 b(should)g(also)g(k)o
(eep)g(in)h(mind)f(the)g(p)q(oten)o(tial)g(problem)h(with)f(F)l(ortran)e
(registers)189 1611 y(discussed)g(in)g(Section)g Fb(??)k Fo(on)15
b(P)o(age)g Fb(??)p Fo(.)k(\()p Fi(End)c(of)i(advic)n(e)f(to)h(users.)p
Fo(\))75 1733 y Ff(7.1.2)49 b(Restrictions)75 1818 y Fo(There)20
b(are)f(no)h(restrictions)g(on)g(the)f Fk(complete)p 924 1818
V 15 w(fn)h Fo(function.)34 b(On)20 b(the)g(other)f(hand,)i(v)o(endors)f(ma)o
(y)75 1875 y(imp)q(ose)e(restrictions)g(on)f(the)g Fk(p)o(rogress)p
770 1875 V 17 w(fn)g Fo(and)h Fk(cancel)p 1048 1875 V 17 w(fn)f
Fo(functions.)27 b(Non)o(blo)q(c)o(king)19 b Fk(MPI)d Fo(calls)j(and)75
1931 y(lo)q(cal)c Fk(MPI)e Fo(calls)h(should)h(b)q(e)f(supp)q(orted.)20
b(On)14 b(the)g(other)f(hand,)h(v)o(endors)f(ma)o(y)g(not)g(supp)q(ort)h(blo)
q(c)o(king)75 1988 y Fk(MPI)f Fo(calls)i(in)f Fk(p)o(rogress)p
478 1988 V 16 w(fn)g Fo(and)g Fk(cancel)p 748 1988 V 17 w(fn)p
Fo(.)20 b(Implemen)o(tations)14 b(ma)o(y)f(also)h(prohibit)h(the)e(use)h(of)f
(system)75 2044 y(calls)j(that)f(are)g(not)f(thread-safe.)166
2148 y Fa(Discussion:)60 b Fe(V)m(endors)21 b(should)f(carefully)g(c)o(hec)o
(k)i(whether)f(these)h(restrictions)g(are)f(su\016cien)o(t.)38
b(It)75 2204 y(should)20 b(b)q(e)h(p)q(ossible)g(to)f(call)g
Fd(p)o(rogress)p 721 2204 13 2 v 15 w(fn)h Fe(inside)f(the)h
Fd(MPI)f Fe(progress)h(engine)g(\(as)g(a)f(callbac)o(k...\),)f(without)75
2261 y(risking)14 b(deadlo)q(c)o(k)h(or)g(corrupting)g(in)o(ternal)g(data)g
(structures.)23 b(In)15 b(a)g(m)o(ultithreaded)f(en)o(vironmen)o(t,)g(it)g
(should)75 2317 y(b)q(e)h(p)q(ossible)f(to)f(execute)j(the)f(callbac)o(k)e
(function)g(on)h(an)o(y)f(thread)i(that)f(in)o(v)o(ok)o(es)f(the)i(progress)g
(engine.)189 2471 y Fi(R)n(ationale.)39 b Fo(The)14 b(function)g
Fk(complete)p 873 2471 14 2 v 15 w(fn)g Fo(is)g(called)h(sync)o(hronously)l
(,)g(as)e(a)g(con)o(tin)o(uation)i(of)e(the)189 2527 y(user)19
b(execution)h(thread.)32 b(Th)o(us,)19 b(no)g(sp)q(ecial)i(restrictions)f
(are)f(needed)h(on)f(these)h(calls.)32 b(On)189 2584 y(the)13
b(other)g(hand,)g Fk(p)o(rogress)p 663 2584 V 17 w(fn)g Fo(and)g
Fk(cancel)p 932 2584 V 18 w(fn)g Fo(are)g(called)i(async)o(hronously)l(,)e(p)
q(ossibly)i(while)g(the)189 2640 y(user)j(pro)q(cess)h(\(or)f(some)g(threads)
g(of)g(it\))g(are)g(blo)q(c)o(k)o(ed.)31 b(Also,)19 b(the)g(callbac)o(k)g
(call)h(ma)o(y)e(o)q(ccur)189 2697 y(within)c Fk(MPI)e Fo(co)q(de)i(whic)o(h)
g(is)f(on)g(the)g(critical)i(path)e(of)f(the)i Fk(MPI)e Fo(library:)20
b(namely)l(,)14 b(the)f(progress)1967 46 y Fh(1)1967 103 y(2)1967
159 y(3)1967 215 y(4)1967 272 y(5)1967 328 y(6)1967 385 y(7)1967
441 y(8)1967 498 y(9)1959 554 y(10)1959 611 y(11)1959 667 y(12)1959
724 y(13)1959 780 y(14)1959 836 y(15)1959 893 y(16)1959 949
y(17)1959 1006 y(18)1959 1062 y(19)1959 1119 y(20)1959 1175
y(21)1959 1232 y(22)1959 1288 y(23)1959 1345 y(24)1959 1401
y(25)1959 1457 y(26)1959 1514 y(27)1959 1570 y(28)1959 1627
y(29)1959 1683 y(30)1959 1740 y(31)1959 1796 y(32)1959 1853
y(33)1959 1909 y(34)1959 1966 y(35)1959 2022 y(36)1959 2078
y(37)1959 2135 y(38)1959 2191 y(39)1959 2248 y(40)1959 2304
y(41)1959 2361 y(42)1959 2417 y(43)1959 2474 y(44)1959 2530
y(45)1959 2587 y(46)1959 2643 y(47)1959 2699 y(48)p eop
%%Page: 5 7
bop 75 -100 a Fg(7.1.)34 b(GENERALIZED)16 b(REQUESTS)1071 b
Fo(5)189 49 y(engine)15 b(that)e(p)q(olls)i(for)e(completed)i(requests.)20
b(Restrictions)15 b(on)e(the)h Fk(p)o(rogress)p 1555 49 14
2 v 16 w(fn)h Fo(functions)f(are)189 106 y(required)i(to)e(allo)o(w)i(for)e
(e\016cien)o(t)i(implemen)o(tations.)22 b(\()p Fi(End)15 b(of)h(r)n
(ationale.)p Fo(\))189 206 y Fi(A)n(dvic)n(e)21 b(to)i(users.)82
b Fo(The)22 b(callbac)o(k)h(functions)g Fk(p)o(rogress)p 1240
206 V 16 w(fn)g Fo(and)f Fk(cancel)p 1527 206 V 17 w(fn)h Fo(m)o(ust)e(b)q(e)
i(k)o(ept)189 263 y(short,)12 b(since)i(progress)e(on)h(lo)q(cal)h
(computation)f(and)g(on)g(data)f(mo)o(v)o(emen)o(t)g(to)h(or)f(from)g(the)h
(no)q(de)189 319 y(executing)18 b(the)f(progress)g(handler)h(ma)o(y)f(b)q(e)h
(susp)q(ended)h(while)f(the)g(handlers)g(execute.)27 b(\()p
Fi(End)189 375 y(of)16 b(advic)n(e)g(to)h(users.)p Fo(\))75
496 y Ff(7.1.3)49 b(Mutual)17 b(exclusion)75 582 y Fo(The)c
Fk(p)o(rogress)p 323 582 V 16 w(fn)g Fo(callbac)o(k)h(function)g(ma)o(y)e
(con)o(tain)h(critical)i(co)q(de)e(that)f(up)q(dates,)i(atomically)l(,)g
(shared)75 639 y(data)i(structures.)26 b(It)17 b(ma)o(y)f(b)q(e)i(necessary)g
(to)e(prev)o(en)o(t)h(the)g(execution)i(of)d(other)h(callbac)o(k)h(functions)
75 695 y(or)d(of)f(the)i(main)f(user)h(co)q(de)g(while)g(suc)o(h)g(critical)g
(section)g(executes.)166 752 y(There)f(are)g(t)o(w)o(o)f(situations)i(to)e
(tak)o(e)h(care)g(of:)131 841 y(1.)22 b(A)13 b(m)o(ultithreaded)h(en)o
(vironmen)o(t,)f(where)h(m)o(ultiple)g(callbac)o(k)h(functions)e(ma)o(y)g
(execute)g(concur-)189 898 y(ren)o(tly)l(.)20 b(In)c(suc)o(h)f(a)g(case,)g(m)
o(utexes)g(will)i(b)q(e)f(used)g(to)e(enforce)i(m)o(utual)f(exclusion.)131
990 y(2.)22 b(An)14 b(en)o(vironmen)o(t)h(where)f(only)h(one)f(progress)g
(callbac)o(k)h(function)g(ma)o(y)f(execute)h(at)e(a)h(time.)20
b(In)189 1046 y(suc)o(h)15 b(a)g(case,)g(m)o(utual)g(exclusion)i(is)f(ac)o
(hiev)o(ed)g(b)o(y)f(disabling)i(progress)e(callbac)o(ks.)189
1147 y Fi(R)n(ationale.)38 b Fo(The)13 b Fk(MPI)g Fo(forum)g(has)f(not)h
(found)g(a)g(w)o(a)o(y)f(of)h(de\014ning)h(a)f(common)g(mec)o(hanism)h(for)
189 1203 y(b)q(oth)d(en)o(vironmen)o(ts)h(that)f(w)o(ould)h(not)f(seriously)i
(handicap)g(one)f(or)f(the)g(other.)19 b(Th)o(us,)11 b(p)q(ortable)189
1260 y(co)q(de)21 b(will)i(ha)o(v)o(e)e(to)g(a)o(v)o(oid)g(critical)h
(sections)g(or)f(to)g(use)g(either)h(mec)o(hanism)g(for)f(exclusion,)189
1316 y(according)15 b(to)g(the)g(curren)o(t)g(en)o(vironmen)o(t.)20
b(\()p Fi(End)c(of)g(r)n(ationale.)p Fo(\))166 1416 y(An)10
b(attribute)g(with)h(prede\014ned)h(k)o(ey)e Fd(MPI)p 890 1416
13 2 v 14 w(SINGLE)p 1043 1416 V 15 w(THREAD)g Fo(is)g(asso)q(ciated)h(with)f
Fk(MPI)p 1668 1416 14 2 v 16 w(COMM)p 1826 1416 V 17 w(W)o(ORLD)p
Fo(.)75 1473 y(If)h(set,)h(it)f(indicates)i(that)d(all)i Fk(MPI)f
Fo(calls)h(are)f(executed)h(on)f(a)g(single)h(thread.)19 b(Note)11
b(that)f(it)h(ma)o(y)g(b)q(e)h(p)q(os-)75 1529 y(sible)17 b(for)e(a)h(m)o
(ultithreaded)h(execution)g(that)e(uses)h(a)f(thread-complain)o(t)i
Fk(MPI)e Fo(library)h(to)f(b)q(e)i(\\single)75 1586 y(mpi)f(thread".)166
1642 y(The)f(follo)o(wing)h(t)o(w)o(o)e(functions)i(can)f(b)q(e)h(used)g(in)g
(a)f(single)h Fk(MPI)f Fo(thread)g(en)o(vironmen)o(t.)75 1793
y Fk(MPI)p 160 1793 V 16 w(GR)p 235 1793 V 17 w(LOCK\(\))75
1991 y(MPI)p 160 1991 V 16 w(GR)p 235 1991 V 17 w(UNLOCK)166
2095 y Fo(Progress)g(callbac)o(k)j(functions)f(will)h(not)e(b)q(e)h(in)o(v)o
(ok)o(ed)g(b)o(y)f Fk(MPI)g Fo(after)g Fk(MPI)p 1478 2095 V
16 w(GR)p 1553 2095 V 17 w(LOCK)g Fo(is)h(called,)75 2152 y(un)o(til)h
Fk(MPI)p 269 2152 V 16 w(GR)p 344 2152 V 17 w(UNLOCK)f Fo(is)h(called.)27
b(These)18 b(t)o(w)o(o)d(functions)j(should)g(not)f(b)q(e)h(called)h(from)d
(within)i(a)75 2208 y Fk(p)o(rogress)p 232 2208 V 16 w(fn)e
Fo(callbac)o(k)g(function.)166 2264 y(No)10 b Fk(MPI)f Fo(calls)j(should)f(b)
q(e)g(executed)g(within)g(a)f(critical)h(section)g(delineated)h(b)o(y)e
(calls)i(to)d Fk(MPI)p 1764 2264 V 16 w(GR)p 1839 2264 V 17
w(LOCK)75 2321 y Fo(and)17 b Fk(MPI)p 250 2321 V 16 w(GR)p
325 2321 V 17 w(UNLOCK)p Fo(.)g(Also,)h(callbac)o(k)g(functions)h(that)d
(should)i(not)f(b)q(e)h(concurren)o(t)g(with)f(other)75 2377
y(callbac)o(k)f(functions)g(m)o(ust)f(not)g(include)i Fk(MPI)e
Fo(calls.)166 2434 y(In)22 b(a)g(m)o(ultithreaded)h(en)o(vironmen)o(t,)h
(critical)f(sections)f(in)h(progress)e(callbac)o(k)i(functions,)h(or)75
2490 y(critical)18 b(sections)e(in)i(user)e(trheads)g(that)g(requires)h(m)o
(utual)f(exclusion)i(with)f(sections)f(in)h Fk(p)o(rogress)p
1824 2490 V 17 w(fn)75 2547 y Fo(callbac)o(k)f(functions)g(should)g(not)f
(con)o(tain)h(an)o(y)e Fk(MPI)h Fo(calls.)189 2647 y Fi(R)n(ationale.)39
b Fo(The)15 b(last)g(restriction)g(allo)o(ws)g(one)g(to)f(in)o(v)o(ok)o(e)g
(the)h Fk(p)o(rogress)p 1473 2647 V 16 w(fn)g Fo(callbac)o(k)h(function)189
2704 y(without)i(spa)o(wning)g(a)g(separate)f(thread,)i(in)g(a)e(m)o
(ultithreaded)i(en)o(vironmen)o(t:)26 b(m)o(utexes)18 b(will)-32
46 y Fh(1)-32 103 y(2)-32 159 y(3)-32 215 y(4)-32 272 y(5)-32
328 y(6)-32 385 y(7)-32 441 y(8)-32 498 y(9)-40 554 y(10)-40
611 y(11)-40 667 y(12)-40 724 y(13)-40 780 y(14)-40 836 y(15)-40
893 y(16)-40 949 y(17)-40 1006 y(18)-40 1062 y(19)-40 1119
y(20)-40 1175 y(21)-40 1232 y(22)-40 1288 y(23)-40 1345 y(24)-40
1401 y(25)-40 1457 y(26)-40 1514 y(27)-40 1570 y(28)-40 1627
y(29)-40 1683 y(30)-40 1740 y(31)-40 1796 y(32)-40 1853 y(33)-40
1909 y(34)-40 1966 y(35)-40 2022 y(36)-40 2078 y(37)-40 2135
y(38)-40 2191 y(39)-40 2248 y(40)-40 2304 y(41)-40 2361 y(42)-40
2417 y(43)-40 2474 y(44)-40 2530 y(45)-40 2587 y(46)-40 2643
y(47)-40 2699 y(48)p eop
%%Page: 6 8
bop 75 -100 a Fo(6)894 b Fg(CHAPTER)15 b(7.)35 b(EXTERNAL)16
b(INTERF)-5 b(A)o(CES)189 49 y Fo(enforce)11 b(m)o(utual)h(exclusion)h(with)f
(other)f(threads;)h(the)f(callbac)o(k)i(functions)f(will)h(not)e(b)q(e)h(in)o
(v)o(ok)o(ed)189 106 y(within)h(a)f(critical)i(section,)f(if)g(the)g
Fk(MPI)e Fo(progress)h(engine)i(is)f(kic)o(k)o(ed)g(on)f(threads)g(executing)
i(user)189 162 y(co)q(de)h(only)h(b)o(y)f(explicit)j Fk(MPI)c
Fo(calls.)21 b(\()p Fi(End)16 b(of)g(r)n(ationale.)p Fo(\))189
268 y Fi(A)n(dvic)n(e)i(to)i(implementors.)63 b Fo(In)19 b(a)g(single)h(mpi)g
(thread)f(en)o(vironmen)o(t,)h(a)e(callbac)o(k)i(function)189
325 y(should)j(not)g(b)q(e)g(preempted)h(b)o(y)e(another)h(callbac)o(k)g
(function.)44 b(Ho)o(w)o(ev)o(er,)23 b(if)g(the)g(callbac)o(k)189
381 y(function)d(made)g(an)g Fk(MPI)f Fo(call,)j(then)f(another)e(callbac)o
(k)i(function)g(ma)o(y)e(b)q(e)i(called)g(b)o(y)f Fk(MPI)p
Fo(.)189 438 y(User)14 b(co)q(de)h(ma)o(y)f(b)q(e)i(preempted)f(b)o(y)g(a)f
(callbac)o(k)i(if)f(callbac)o(ks)g(are)g(not)f(lo)q(c)o(k)o(ed.)20
b(Con)o(trol)14 b(is)h(not)189 494 y(returned)h(to)f(the)h(main)h(user)f
(thread)f(while)j(a)d(callbac)o(k)i(is)g(in)f(middle)i(of)e(execution.)23
b(\()p Fi(End)16 b(of)189 551 y(advic)n(e)g(to)g(implementors.)p
Fo(\))1967 46 y Fh(1)1967 103 y(2)1967 159 y(3)1967 215 y(4)1967
272 y(5)1967 328 y(6)1967 385 y(7)1967 441 y(8)1967 498 y(9)1959
554 y(10)1959 611 y(11)1959 667 y(12)1959 724 y(13)1959 780
y(14)1959 836 y(15)1959 893 y(16)1959 949 y(17)1959 1006 y(18)1959
1062 y(19)1959 1119 y(20)1959 1175 y(21)1959 1232 y(22)1959
1288 y(23)1959 1345 y(24)1959 1401 y(25)1959 1457 y(26)1959
1514 y(27)1959 1570 y(28)1959 1627 y(29)1959 1683 y(30)1959
1740 y(31)1959 1796 y(32)1959 1853 y(33)1959 1909 y(34)1959
1966 y(35)1959 2022 y(36)1959 2078 y(37)1959 2135 y(38)1959
2191 y(39)1959 2248 y(40)1959 2304 y(41)1959 2361 y(42)1959
2417 y(43)1959 2474 y(44)1959 2530 y(45)1959 2587 y(46)1959
2643 y(47)1959 2699 y(48)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF