Subject: Misc-1.2

From: Rusty Lusk <[email-masked]>
Date: Thu, 19 Sep 1996 23:26:00 -0500

%!PS-Adobe-2.0
%%Creator: dvips 5.528 Copyright 1986, 1994 Radical Eye Software
%%Title: temp.dvi
%%CreationDate: Thu Sep 19 16:46:18 1996
%%Pages: 23
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
%%EndComments
%DVIPSCommandLine: dvips -o temp.ps temp
%DVIPSParameters: dpi=300, comments removed
%DVIPSSource:  TeX output 1996.09.19:1646
%%BeginProcSet: tex.pro
/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get
round 5 exch put setmatrix}N /@landscape{/isls true N}B /@manualfeed{
statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0
0]N /FBB[0 0 0 0]N /nn 0 N /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 /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul add
.99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage
userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
known{start-hook}if pop /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
65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{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 /QV{gsave
transform round exch round exch itransform moveto rulex 0 rlineto 0
ruley neg rlineto rulex neg 0 rlineto fill grestore}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{SS restore}B end
%%EndProcSet
TeXDict begin 40258431 52099146 1000 300 300
(/tmp_mnt/Net/antireo/antireo6/lusk/mpi2/report2/temp.dvi)
@start /Fa 1 106 df<030007800780030000000000000000007F807F80038003800380
038003800380038003800380038003800380FFFCFFFC0E187D9714>105
D E /Fb 12 122 df<387CFEFEFE7C3807077C860F>46 D<00E00001E0000FE000FFE000
F3E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000
03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000FFFF80
FFFF80111D7C9C1A>49 D<01FC0007FF000E0F801E0FC03F07E03F07E03F07E03F07E01E
0FC0000FC0000F80001F0001FC0001FC00000F800007C00003E00003F00003F83803F87C
03F8FE03F8FE03F8FE03F0FC03F07807E03C0FC01FFF8003FC00151D7E9C1A>51
D<FFFFFFE0FFFFFFE007E007E007E001E007E000E007E0006007E0007007E0003007E000
3007E0603007E0603007E0600007E0E00007E1E00007FFE00007FFE00007E1E00007E0E0
0007E0600007E0600C07E0600C07E0000C07E0001807E0001807E0001807E0003807E000
7807E000F807E003F0FFFFFFF0FFFFFFF01E1F7E9E22>69 D<07FC001FFF003F0F803F07
C03F03E03F03E00C03E00003E0007FE007FBE01F03E03C03E07C03E0F803E0F803E0F803
E0FC05E07E0DE03FF8FE0FE07E17147F9319>97 D<01FE0007FF800F83C01E01E03E00F0
7C00F07C00F8FC00F8FFFFF8FFFFF8FC0000FC0000FC00007C00007C00003E00181E0018
0F807007FFE000FF8015147F9318>101 D<FF00FF001F001F001F001F001F001F001F00
1F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00
1F001F001F00FFE0FFE00B207E9F0E>108 D<FE0FE03F80FE1FF07FC01E70F9C3E01E40
7D01F01E807E01F01F807E01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C
01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01
F0FFE3FF8FFEFFE3FF8FFE27147D932C>I<FF1FC0FF7FF01FE1F81F80FC1F007E1F007E
1F003E1F003F1F003F1F003F1F003F1F003F1F003F1F003E1F007E1F007C1F80FC1FC1F8
1F7FE01F1F801F00001F00001F00001F00001F00001F00001F0000FFE000FFE000181D7E
931D>112 D<01800180018003800380038007800F803F80FFFCFFFC0F800F800F800F80
0F800F800F800F800F800F800F860F860F860F860F8607CC03F801F00F1D7F9C14>116
D<FFE1FF00FFE1FF000F80700007C0E00007E0C00003E1800001F3800000FF0000007E00
00003E0000003F0000007F8000006F800000C7C0000183E0000381F0000701F8000E00FC
00FF81FF80FF81FF8019147F931C>120 D<FFE07F80FFE07F801F001C000F8018000F80
180007C0300007C0300003E0600003E0600001F0C00001F0C00001F9C00000F9800000FF
8000007F0000007F0000003E0000003E0000001C0000001C000000180000001800007830
0000FC300000FC600000C0E00000E1C000007F8000001E000000191D7F931C>I
E /Fc 4 103 df<70F8FCFC74040404080810102040060E7C840D>59
D<00F1800389C00707800E03801C03803C0380380700780700780700780700F00E00F00E
00F00E00F00E10F01C20F01C20703C20705C40308C400F078014147E9318>97
D<07803F8007000700070007000E000E000E000E001C001C001CF01D0C3A0E3C0E380F38
0F700F700F700F700FE01EE01EE01EE01CE03CE038607060E031C01F0010207E9F14>I<
00007C0000CE00019E00039E00030C000700000700000700000700000E00000E00000E00
00FFF0000E00000E00001C00001C00001C00001C00001C00003800003800003800003800
00380000700000700000700000700000700000E00000E00000E00000E00000C00001C000
318000798000F300006200003C000017297E9F16>102 D E /Fd
33 122 df<00E001C0038007000E000E001C001C003800380038007000700070007000E0
00E000E000E000E000E000E000E000E000E000E000E00070007000700070003800380038
001C001C000E000E000700038001C000E00B2A7E9E10>40 D<E000700038001C000E000E
000700070003800380038001C001C001C001C000E000E000E000E000E000E000E000E000
E000E000E000E001C001C001C001C0038003800380070007000E000E001C0038007000E0
000B2A7E9E10>I<E0E0E060404040C003087C820C>44 D<001C0000003E0000003E0000
002E0000006700000067000000E7800000C7800000C3800001C3C0000183C0000181C000
0381E0000381E0000700F0000700F0000600F0000E0078000FFFF8000FFFF8001C003C00
1C003C0018003C0038001E0038001E0070001F0070000F0070000F00E0000780191D7F9C
1C>65 D<FFF800FFFF00F00F80F003C0F001E0F000F0F000F0F000F0F000F0F000F0F001
E0F007C0FFFF80FFFE00FFFF80F03FC0F003E0F001F0F000F0F00078F00078F00078F000
78F00078F000F0F001E0F007C0FFFF80FFFC00151D7C9C1C>I<003FC000FFF003C0F007
80300F00001E00003C00003C0000780000780000780000F00000F00000F00000F00000F0
0000F00000F00000F00000F000007800007800007800003C00003C00001E00000F000807
801803C07800FFF0003F80151F7D9D1B>I<FFFC00FFFF00F00F80F003E0F001F0F000F0
F00078F00038F0003CF0003CF0001CF0001EF0001EF0001EF0001EF0001EF0001EF0001E
F0001EF0003CF0003CF0003CF00078F000F0F000F0F003E0F00FC0FFFF00FFFC00171D7C
9C1E>I<FFFFC0FFFFC0F00000F00000F00000F00000F00000F00000F00000F00000F000
00F00000F00000FFFF80FFFF80F00000F00000F00000F00000F00000F00000F00000F000
00F00000F00000F00000F00000FFFFC0FFFFC0121D7C9C19>I<003F8001FFF003C0F807
80380F00181E00003C00003C0000780000780000780000F00000F00000F00000F00000F0
0000F00000F007F8F007F8F000387800387800387800383C00383C00381E00380F003807
803803C0F801FFF0003F80151F7D9D1C>71 D<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F0F0F0F0F0041D7C9C0C>73 D<F000F000F000F000F000F000F000F000
F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000
F000FFFEFFFE0F1D7C9C16>76 D<FC0007E0FC0007E0FC0007E0EE000DE0EE000DE0EE00
0DE0E70019E0E70019E0E70019E0E78039E0E38031E0E3C071E0E3C071E0E1C061E0E1C0
61E0E1E0E1E0E1E0E1E0E0E0C1E0E0F1C1E0E07181E0E07181E0E07181E0E03B01E0E03B
01E0E03B01E0E01E01E0E01E01E0E01E01E0E00001E01B1D7C9C24>I<FC0070FC0070FE
0070EE0070EF0070E70070E70070E78070E38070E3C070E3C070E1E070E1E070E0E070E0
F070E07070E07870E07870E03C70E03C70E01C70E01E70E00E70E00E70E00F70E00770E0
07F0E003F0E003F0141D7C9C1D>I<003F000001FFE00003FFF00007C0F8000F807C001E
001E003E001F003C000F00780007807800078078000780F00003C0F00003C0F00003C0F0
0003C0F00003C0F00003C0F00003C0F00003C0F80007C078000780780007807C000F803C
000F003E001F001F003E000F807C0007C0F80003FFF00001FFE000003F00001A1F7E9D1F
>I<FFFC00FFFF00F00F80F003C0F001E0F000F0F000F0F000F0F000F0F000F0F000F0F0
01E0F003E0F00FC0FFFF80FFFE00F00000F00000F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000141D7C9C1B>I<003F000001FFE00003FFF000
07C0F8000F807C001F003E003E001F003C000F00780007807800078078000780F00003C0
F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C078000780
78000780780E07803C0F0F003E079F001E03DE000F83FC0007C1F80003FFF00001FFF800
003F780000003C0000003E0000001F0000000F801A237E9D1F>I<FFF800FFFF00F00F80
F003C0F001E0F000F0F000F0F000F0F000F0F000F0F001E0F003E0F00FC0FFFF80FFFF00
FFF800F03C00F01C00F01E00F00F00F00F00F00780F00780F003C0F003C0F001E0F000F0
F000F0F00078151D7C9C1B>I<03F8000FFE001C0F00380700700300600000E00000E000
00E00000E00000F000007800007F00003FE0001FFC0007FE0001FF00001F800007800003
C00003C00001C00001C00001C00001C0C00180E00380F007007C0E001FFC0007F000121F
7E9D17>I<FFFFFF80FFFFFF80001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000191D7F9C1C>I<F00070F00070F00070F00070F00070F0
0070F00070F00070F00070F00070F00070F00070F00070F00070F00070F00070F00070F0
0070F00070F00070F00070F00070F000707800E07800E03C01C01E03800F078007FE0001
F800141E7C9C1D>I<78000E007C001E003C003C001E0038000F0070000F00F0000781E0
0003C1C00001C3C00001E7800000F70000007E0000003E0000003C0000003C0000007E00
000077000000E7800001E3800003C1C0000381E0000700F0000F00F8000E0078001C003C
003C003E0078001F0070000F00F0000F80191D7F9C1C>88 D<F80001E07C0001C03E0003
801E0007801F0007000F800E0007801E0007C01C0003E03C0001E0380001F0700000F0F0
000078E000007DC000003FC000001F8000001F0000000F0000000F0000000F0000000F00
00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00001B1D80
9C1C>I<0FC03FF07FF87038401C001C001C00FC0FFC3FFC781CE01CE01CE01CF07C7FFC
7FDC3F1C0E127E9114>97 D<E000E000E000E000E000E000E000E000E000E000E000E3E0
EFF0FFF8F87CF01CE01EE00EE00EE00EE00EE00EE00EE01CF01CF87CFFF8EFF0E3C00F1D
7D9C15>I<000E000E000E000E000E000E000E000E000E000E000E0F8E1FEE3FFE7C3E70
0E700EE00EE00EE00EE00EE00EE00EF00E701E7C3E3FFE1FEE0F8E0F1D7E9C15>100
D<07C01FE03FF078787018601CFFFCFFFCFFFCE000E000E000700070043C1C3FFC1FF807
E00E127E9112>I<E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0
E0031D7D9C0A>108 D<E3E0EFF0FFF8F83CF01CE01CE01CE01CE01CE01CE01CE01CE01C
E01CE01CE01CE01CE01C0E127D9115>110 D<E3E0EFF0FFF8F87CF01CE01EE00EE00EE0
0EE00EE00EE00EE01CF03CF87CFFF8EFF0E3C0E000E000E000E000E000E000E000E0000F
1A7D9115>112 D<1C001C001C001C001C001C00FFE0FFE01C001C001C001C001C001C00
1C001C001C001C001C001C001C201FF00FF007C00C187F970F>116
D<E01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE07CFFFC7FDC3F
1C0E127D9115>I<7003807807003C0E001C1C000E1C0007380003F00001E00001C00001
E00003F0000738000E18000E1C001C0E00380700700380F003C01212809113>120
D<E007E007700E700E780E381C381C1C181C380C380E300E7006700760036003C001C001
C001800180030003000700FE00FC00F800101A7F9113>I E /Fe
24 119 df<00003F03E00000C386700001878CF00003879CF00003031860000700380000
070038000007003800000E003800000E007000000E007000000E00700000FFFFFF80001C
007000001C00E000001C00E000001C00E000001C00E000003800E000003801C000003801
C000003801C000003801C000007001C00000700380000070038000007003800000700380
00006003800000E007000000E007000000E007000000E007000000C006000001C00E0000
01C00E000031860C0000798F180000F31E100000620C6000003C07C000002429829F1C>
11 D<70F8F8F0E005057B840E>46 D<00000200000006000000060000000E0000001E00
00001E0000003F0000002F0000004F0000004F0000008F0000010F0000010F0000020F00
00020F0000040F00000C0F0000080F0000100F0000100F0000200F80003FFF8000400780
00C007800080078001000780010007800200078002000780060007801E000F80FF807FF8
1D207E9F22>65 D<01FFFFFE001E001C001E000C001E0004001E0004003C0004003C0004
003C0004003C00040078080800780800007808000078180000F0300000FFF00000F03000
00F0300001E0200001E0200001E0200001E0001003C0002003C0002003C0004003C00040
078000800780018007800100078007000F001F00FFFFFE001F1F7D9E1F>69
D<01FFFF00001E03C0001E00E0001E0070001E0078003C0078003C0078003C0078003C00
78007800F0007800F0007801E0007801C000F0070000F01E0000FFF00000F0380001E01C
0001E01E0001E00E0001E00F0003C01E0003C01E0003C01E0003C01E0007803C0007803C
0807803C0807803C100F801C10FFF00C20000007C01D207D9E21>82
D<00F1800389C00707800E03801C03803C0380380700780700780700780700F00E00F00E
00F00E00F00E20F01C40F01C40703C40705C40308C800F070013147C9317>97
D<07803F8007000700070007000E000E000E000E001C001C001CF01D0C3A0E3C0E380F38
0F700F700F700F700FE01EE01EE01EE01CE03CE038607060E031C01F0010207B9F15>I<
007E0001C1000300800E07801E07801C07003C0200780000780000780000F00000F00000
F00000F00000F0000070010070020030040018380007C00011147C9315>I<0000780003
F80000700000700000700000700000E00000E00000E00000E00001C00001C000F1C00389
C00707800E03801C03803C0380380700780700780700780700F00E00F00E00F00E00F00E
20F01C40F01C40703C40705C40308C800F070015207C9F17>I<007C01C207010E011C01
3C013802780C7BF07C00F000F000F000F0007000700170023804183807C010147C9315>
I<00007800019C00033C00033C000718000700000700000E00000E00000E00000E00000E
0001FFE0001C00001C00001C00001C000038000038000038000038000038000070000070
0000700000700000700000700000E00000E00000E00000E00000C00001C00001C0000180
003180007B0000F300006600003C00001629829F0E>I<003C6000E27001C1E00380E007
00E00F00E00E01C01E01C01E01C01E01C03C03803C03803C03803C03803C07003C07001C
0F001C17000C2E0003CE00000E00000E00001C00001C00301C00783800F0700060E0003F
8000141D7E9315>I<01E0000FE00001C00001C00001C00001C000038000038000038000
038000070000070000071E000763000E81800F01C00E01C00E01C01C03801C03801C0380
1C0380380700380700380700380E10700E20700C20701C20700C40E00CC060070014207D
9F17>I<00C001E001E001C000000000000000000000000000000E003300230043804300
470087000E000E000E001C001C001C003840388030807080310033001C000B1F7C9E0E>
I<03C01FC0038003800380038007000700070007000E000E000E000E001C001C001C001C
0038003800380038007000700070007100E200E200E200E200640038000A207C9F0C>
108 D<1C0F80F0002630C318004740640C004780680E004700700E004700700E008E00E0
1C000E00E01C000E00E01C000E00E01C001C01C038001C01C038001C01C038001C01C070
8038038071003803806100380380E10038038062007007006600300300380021147C9325
>I<1C0F802630C04740604780604700704700708E00E00E00E00E00E00E00E01C01C01C
01C01C01C01C03843803883803083807083803107003303001C016147C931A>I<007C00
01C3000301800E01C01E01C01C01E03C01E07801E07801E07801E0F003C0F003C0F003C0
F00780F00700700F00700E0030180018700007C00013147C9317>I<01C1E00262180474
1C04781C04701E04701E08E01E00E01E00E01E00E01E01C03C01C03C01C03C01C0380380
780380700380E003C1C0072380071E000700000700000E00000E00000E00000E00001C00
001C0000FFC000171D809317>I<1C1E002661004783804787804707804703008E00000E
00000E00000E00001C00001C00001C00001C000038000038000038000038000070000030
000011147C9313>114 D<00FC030206010C030C070C060C000F800FF007F803FC003E00
0E700EF00CF00CE008401020601F8010147D9313>I<018001C003800380038003800700
0700FFF007000E000E000E000E001C001C001C001C003800380038003820704070407080
708031001E000C1C7C9B0F>I<0E00C03300E02301C04381C04301C04701C08703800E03
800E03800E03801C07001C07001C07001C07101C0E20180E20180E201C1E200C264007C3
8014147C9318>I<0E03803307802307C04383C04301C04700C08700800E00800E00800E
00801C01001C01001C01001C02001C02001C04001C04001C08000E300003C00012147C93
15>I E /Ff 50 123 df<000078007C7800FC7801FC7803C00003800007800007800007
8000078000078000078000078000078000FFFC78FFFC78FFFC7807807807807807807807
807807807807807807807807807807807807807807807807807807807807807807807807
8078078078078078078078152480A31A>12 D<FFE0FFE0FFE00B037F8C10>45
D<F0F0F0F004047B830E>I<00C001C007C0FFC0FFC0FBC003C003C003C003C003C003C0
03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0
03C0FFFFFFFFFFFF10227CA118>49 D<03F0000FFC001FFE003C1F003007807007C06003
C0E003E0C001E04001E04001E00001E00001E00001E00003C00003C0000780000780000F
00001E00003C0000780000F00001E00001C0000380000700000E00001C00003800007000
00FFFFE0FFFFE0FFFFE013227EA118>I<01F00007FC001FFF003E0F003807807003C020
03C02003C00003C00003C00003C0000780000780000F00001E0003FC0003F80003FE0000
0F000007800003C00003C00001E00001E00001E00001E00001E08001E0C003C0E003C070
07803C0F801FFF000FFC0003F00013237EA118>I<001F00001F00002F00002F00006F00
00EF0000CF0001CF0001CF00038F00038F00078F00070F000F0F000E0F001E0F003C0F00
3C0F00780F00780F00F00F00FFFFF8FFFFF8FFFFF8000F00000F00000F00000F00000F00
000F00000F00000F00000F0015217FA018>I<FFFFE0FFFFE0FFFFE00000E00001C00003
80000780000700000E00001E00001C00003C0000380000780000780000F00000F00000E0
0001E00001E00001E00003C00003C00003C00003C00003C0000780000780000780000780
0007800007800007800013217EA018>55 D<01F00007FC000FFE001E0F003C07803C0780
7803C07803C07803C07803C07803C03803803C07801E0F000F1E0007FC0003F8000FFE00
1E0F003C07807803C07803C0F001E0F001E0F001E0F001E0F001E0F001E07803C07803C0
3C07803E0F801FFF0007FC0001F00013237EA118>I<01F00007FC000FFE001E0F003C07
003807807803807803C0F003C0F001C0F001E0F001E0F001E0F001E0F001E0F001E07003
E07803E07803E03C07E03E1FE01FFDE00FF1E003E3C00003C00003C00003800007800007
00000F00101E00183C003FF8001FF00007C00013237EA118>I<001F0000001F0000003F
8000003F8000003B8000007BC0000073C0000071C00000F1E00000F1E00000E0E00001E0
F00001E0F00001C0F00003C0780003C078000380780007803C0007803C0007003C000F00
1E000F001E000FFFFE001FFFFF001FFFFF001C000F003C0007803C000780380007807800
03C0780003C0700003C0F00001E0F00001E0E00001E01B237EA220>65
D<FFFC00FFFF80FFFFC0F007F0F001F0F00078F0003CF0003CF0003CF0003CF0003CF000
38F00078F000F0F003E0FFFFC0FFFF00FFFFC0F00FE0F001F8F00078F0003CF0001CF000
1EF0001EF0001EF0001EF0001EF0003CF0007CF000F8F003F0FFFFE0FFFFC0FFFE001723
7BA220>I<000FF000007FFC0000FFFF0001F01F0003C00700078000000F0000001E0000
003E0000003C0000003C000000780000007800000078000000F0000000F0000000F00000
00F0000000F0000000F0000000F0000000F0000000F00000007800000078000000780000
003C0000003C0000003E0000001E0000000F0000000780008003C0038001F00F8000FFFF
00007FFC00000FF00019257DA31F>I<FFFE0000FFFFC000FFFFE000F003F000F000F800
F0007C00F0003E00F0001E00F0000F00F0000F00F0000780F0000780F0000780F00003C0
F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F0000380
F0000780F0000780F0000780F0000F00F0001F00F0001E00F0003C00F000FC00F003F800
FFFFE000FFFFC000FFFE00001A237BA223>I<FFFFF0FFFFF0FFFFF0F00000F00000F000
00F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFFE0FFFFE0FFFF
E0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F000
00F00000F00000FFFFF8FFFFF8FFFFF815237BA21D>I<FFFFF0FFFFF0FFFFF0F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000FF
FFC0FFFFC0FFFFC0F00000F00000F00000F00000F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F0000014237BA21C>I<000FF000003FFE0000
FFFF8001F80F8003E00380078000000F0000001E0000001E0000003C0000003C00000078
0000007800000078000000F0000000F0000000F0000000F0000000F0000000F0000000F0
00FFC0F000FFC0F000FFC0780003C0780003C0780003C03C0003C03C0003C01E0003C01E
0003C00F0003C0078003C003E003C001F807C000FFFFC0003FFF00000FF8001A257DA321
>I<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F004237CA20D>73 D<F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFFC0
FFFFC0FFFFC012237BA21A>76 D<FC00007EFE0000FEFE0000FEFE0000FEF70001DEF700
01DEF70001DEF78003DEF380039EF380039EF3C0079EF3C0079EF1C0071EF1C0071EF1E0
0F1EF0E00E1EF0E00E1EF0F01E1EF0F01E1EF0701C1EF0783C1EF0783C1EF038381EF03C
781EF03C781EF01C701EF01C701EF01EF01EF00EE01EF00EE01EF00FE01EF007C01EF007
C01EF007C01EF000001E1F237BA22A>I<FC001EFE001EFE001EFE001EF7001EF7001EF3
801EF3801EF3C01EF1C01EF1C01EF1E01EF0E01EF0F01EF0F01EF0781EF0781EF0381EF0
3C1EF03C1EF01E1EF01E1EF00E1EF00F1EF0071EF0071EF0079EF0039EF0039EF001DEF0
01DEF000FEF000FEF000FEF0007E17237BA222>I<001FC000007FF00001FFFC0003F07E
0007C01F000F800F801F0007C01E0003C03C0001E03C0001E0780000F0780000F0780000
F070000070F0000078F0000078F0000078F0000078F0000078F0000078F0000078F00000
78F0000078780000F0780000F0780000F07C0001F03C0001E03E0003E01E0003C01F0007
C00F800F8007C01F0003F07E0001FFFC00007FF000001FC0001D257DA324>I<FFFE00FF
FF80FFFFC0F003E0F000F0F00078F00078F0003CF0003CF0003CF0003CF0003CF0003CF0
0078F00078F000F0F003E0FFFFC0FFFF80FFFE00F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F00000F0000016237BA21F>I<
FFFC00FFFF80FFFFC0F003E0F000F0F00078F00038F0003CF0003CF0003CF0003CF0003C
F00038F00078F000F0F003E0FFFFC0FFFF80FFFE00F01E00F00F00F00700F00780F00380
F003C0F001E0F001E0F000F0F000F0F00078F00038F0003CF0001EF0001EF0000F18237B
A21F>82 D<00FE0003FFC007FFE00F81E01E00603C00003C000078000078000078000078
00007800007C00003C00003F00001FC0000FFC0007FF0001FF80003FC00007E00001F000
00F00000F8000078000078000078000078000078000078C000F0E000F0F801E07E07C03F
FF800FFF0001FC0015257EA31B>I<FFFFFFF0FFFFFFF0FFFFFFF0000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F00001C237EA221>I<F0003CF0003CF0003CF0003CF0003CF0003C
F0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003C
F0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003C780078780078780078
3C00F01E01E01F87E00FFFC003FF0000FC0016247BA221>I<FFFFFEFFFFFEFFFFFE0000
3C00007C0000F80000F00001F00001E00003E00007C0000780000F80000F00001F00003E
00003C00007C0000780000F80001F00001E00003E00003C00007C0000F80000F00001F00
001E00003E00007C0000780000FFFFFFFFFFFFFFFFFF18237DA21E>90
D<07E01FF83FFC381E201E000F000F000F000F00FF07FF1FFF3E0F780FF00FF00FF00FF0
0FF83F7FFF3FEF1F8F10167E9517>97 D<F00000F00000F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F1F000F7FC00FFFE00FC1F00F80F00F0
0780F00780F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F00780F00780F8
0F00FC3E00FFFE00F7F800F1F00012237CA219>I<01FC0007FF000FFF801F03803C0180
780000780000700000F00000F00000F00000F00000F00000F00000780000780000780000
3C00401F03C00FFFC007FF8001FC0012167E9516>I<0003C00003C00003C00003C00003
C00003C00003C00003C00003C00003C00003C00003C00003C003E3C00FFBC01FFFC03F0F
C03C07C07803C07803C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C07803
C07803C03C07C03E0FC01FFFC00FFBC003E3C012237EA219>I<03F00007FC001FFE003E
0F003C0780780380780380F001C0FFFFC0FFFFC0FFFFC0F00000F00000F0000070000078
00007800003C00801F07800FFF8007FF0001F80012167E9516>I<003F00FF01FF03C003
8007800780078007800780078007800780FFF8FFF8FFF807800780078007800780078007
80078007800780078007800780078007800780078007800780102380A20F>I<01F07807
FFF80FFFF81F1F001E0F003C07803C07803C07803C07803C07801E0F001F1F000FFE001F
FC0019F0003800003800003C00001FFE001FFFC01FFFE03FFFF07801F07800F8F00078F0
0078F00078F000787800F03E03E01FFFC00FFF8001FC0015217F9518>I<F0F0F0F00000
00000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F004237DA20B>
105 D<F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F01F80F03F00F03E00F07C00F0F800F1F000F3E000F7C000FFC000FFC000
FFE000FFE000FDF000F8F800F07800F07C00F03E00F01E00F01F00F00F00F00F80F007C0
12237CA218>107 D<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F004237DA20B>I<F0F807C0F3FE1FF0F7FF3FF8FE0F7078FC0FE07CF8
07C03CF807C03CF007803CF007803CF007803CF007803CF007803CF007803CF007803CF0
07803CF007803CF007803CF007803CF007803CF007803CF007803CF007803C1E167C9527
>I<F1F8F3FCF7FEFE1EF80FF80FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F
F00FF00FF00FF00FF00F10167C9519>I<01FC0007FF000FFF801F07C03C01E07800F078
00F0700070F00078F00078F00078F00078F00078F000787800F07800F07C01F03E03E01F
07C00FFF8007FF0001FC0015167F9518>I<F1F000F7FC00FFFE00FC3F00F80F00F00780
F00780F007C0F003C0F003C0F003C0F003C0F003C0F003C0F007C0F00780F00F80F80F00
FC3E00FFFE00F7F800F1F000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F0000012207C9519>I<F0E0F3E0F7E0FF00FE00FC00F800F800F000F000F000F0
00F000F000F000F000F000F000F000F000F000F0000B167C9511>114
D<07F01FFC3FFE3C0E7806780078007C003F003FF01FF80FFC01FE001F000F000F000FC0
0FF81EFFFE3FFC0FF010167F9513>I<0F000F000F000F000F000F00FFF8FFF8FFF80F00
0F000F000F000F000F000F000F000F000F000F000F000F000F000F080F1C07FC07F803E0
0E1C7F9B12>I<F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF0
0FF00FF00FF01FF83F7FFF7FCF1F0F10167C9519>I<F001E0F001E07803C07803C07803
C03C07803C07803C07801E07001E0F001E0F000F0E000F1E000F1E00071C00079C0007BC
0003B80003B80003F80001F00001F00013167F9516>I<7801F07C01E03E03C01E07C00F
0780078F0007DE0003FC0001FC0000F80000700000F80001FC0003DC00039E00078F000F
07801E07801E03C03C01E07800F0F800F81516809516>120 D<F001E0F001E07803C078
03C07C03C03C07803C07801E07801E07001E0F000F0F000F0E00071E00079E00039C0003
9C00039C0001980001D80000F80000F00000F00000F00000E00000E00001E00001C00001
C0000380007F80007F00007E000013207F9516>I<7FFFC07FFFC07FFFC0000F80000F00
001E00003E00007C0000780000F00001F00003E00003C0000780000F80001F00001E0000
3C00007C0000FFFFC0FFFFC0FFFFC012167F9515>I E /Fg 32 90
df<FFC0FFC00A027D8A0F>45 D<3078F8787005057C840D>I<007E0001C3000301800701
C00E00C00E00E01C00E01C00E03C01E03801E07801E07801E07801E07801E07801E0F003
C0F003C0F003C0F003C0F003C0F00380F00780E00780E00700E00700E00E00600E00701C
003038003870000FC000131F7C9D17>48 D<000C001C00FC0F3800380038003800380038
00700070007000700070007000E000E000E000E000E000E001C001C001C001C001C001C0
038003C0FFFE0F1E7C9D17>I<003F8000C1E00100F00200780400780400780F007C0F80
7C0F807C0F00780600780000F80000F00001E00001C0000380000700000E00001C000038
0000600000C0000180000300200600200800401000403FFFC07FFF80FFFF80161E7E9D17
>I<007F000183C00201E00400F00700F00F00F00F01F00F01F00001E00001E00003C000
0380000700000E0000F800000E000007000007800007C00003C00007C03007C07807C0F8
07C0F807C0F00780800F00400E00201C0018780007E000141F7D9D17>I<01803001FFE0
03FFC003FF0003FC00020000020000020000040000040000040000047C00058700060380
0C01800801C00001C00001E00001E00001E00001E07003C0F803C0F003C0E00380800780
400700400E00201C0018700007C000141F7D9D17>53 D<2000003FFFE07FFFC07FFF8040
0100C0020080020080040000080000100000200000400000400000800001800003000003
00000700000600000E00000E00001E00001C00001C00003C00003C00003C000078000078
0000780000300000131F799D17>55 D<003F0000C1C00100600200600400300C00300C00
300C00300C00600E00600F80C00FC18007F60003FC0001FC0001FF00063F800C0F801007
C03003C06001C06000C0C000C0C000C0C000C0C00080C0010060030030040018180007E0
00141F7D9D17>I<007E0001C3000301800601C00E01C01C00C03C00E03C00E03C01E078
01E07801E07801E07801E07803E07803E03803C03807C01C0BC00C13C003E38000078000
0780000700000E00600E00F01C00F01800E0300080600041C0003F0000131F7C9D17>I<
0000100000001800000038000000380000007800000078000000FC000001BC0000013C00
00033C0000023C0000063C0000043E0000081E0000081E0000101E0000101E0000201E00
00200F0000400F0000400F0000FFFF0000800F0001000F80010007800200078002000780
04000780040007800C0007C03E0007C0FF807FFC1E207E9F22>65
D<0001F808000E061800380138007000F801E0007803C0007007800030078000300F0000
301F0000301E0000303E0000203C0000007C0000007C0000007C0000007C000000F80000
00F8000000F8000000F8000000F80000007800004078000080780000803C0000803C0001
001C0002000E00020006000C000300100001C0E000003F00001D217B9F21>67
D<07FFFF00007C01E0003C00F0003C00780078003C0078003C0078001E0078001E007800
1E0078001F00F0001F00F0001F00F0001F00F0001F00F0001F00F0001F01E0001E01E000
3E01E0003E01E0003E01E0003C01E0007C03C0007803C000F003C000F003C001E003C003
C003C0078007800F0007803C00FFFFE000201F7E9E23>I<07FFFFF8007C0078003C0038
003C001800780018007800080078000800780008007800080078080800F0100000F01000
00F0100000F0300000FFF00000F0700001E0200001E0200001E0200001E0200001E00008
01E0001003C0001003C0001003C0002003C0002003C0006003C000C0078001C0078007C0
FFFFFF801D1F7E9E1F>I<07FFFFF8007C0078003C0038003C0018007800180078000800
78000800780008007800080078000800F0100000F0100000F0100000F0300000F0700000
FFF00001E0600001E0200001E0200001E0200001E0200001E0000003C0000003C0000003
C0000003C0000003C0000003C000000780000007C00000FFFE00001D1F7E9E1E>I<0001
FC04000F030C003C009C0070007C00E0003C01C0003803800018078000180F0000181F00
00181E0000183E0000103C0000007C0000007C0000007C0000007C000000F8000000F800
0000F8007FFCF80003E0780001E0780001E0780003C0780003C03C0003C03C0003C01C00
03C00E0007C007000B800380118001E06080003F80001E217B9F24>I<07FFC7FFC0007C
00F800003C007800003C007800007800F000007800F000007800F000007800F000007800
F000007800F00000F001E00000F001E00000F001E00000F001E00000FFFFE00000F001E0
0001E003C00001E003C00001E003C00001E003C00001E003C00001E003C00003C0078000
03C007800003C007800003C007800003C007800003C007800007800F000007C00F8000FF
F8FFF800221F7E9E22>I<07FFE0007C00003C00003C0000780000780000780000780000
780000780000F00000F00000F00000F00000F00000F00001E00001E00001E00001E00001
E00001E00003C00003C00003C00003C00003C00003C00007800007C000FFFC00131F7F9E
10>I<07FFE07FE0007C001F00003C000C00003C00180000780010000078004000007800
800000780100000078020000007804000000F008000000F010000000F060000000F0F000
0000F1F0000000F278000001E478000001E878000001F03C000001E03C000001E01E0000
01E01E000003C00F000003C00F000003C00F000003C007800003C007800003C003C00007
8003C00007C007E000FFFC3FFC00231F7E9E23>75 D<07FFF000007E0000003C0000003C
000000780000007800000078000000780000007800000078000000F0000000F0000000F0
000000F0000000F0000000F0000001E0000001E0000001E0000001E0000001E0008001E0
010003C0010003C0010003C0030003C0020003C0060003C0060007801E0007807C00FFFF
FC00191F7E9E1C>I<07FC0000FFC0007C0000F800003C00017800003C00017800004E00
02F000004E0002F000004E0004F000004E0004F000004E0008F000004E0008F000008700
11E00000870011E00000870021E00000870021E00000870041E00000838041E000010380
83C00001038083C00001038103C00001038203C0000101C203C0000101C403C0000201C4
0780000201C80780000201C80780000201D00780000200F00780000600E00780000600E0
0F00000F00C00F8000FFE0C1FFF8002A1F7E9E2A>I<07FC01FFC0003E003E00003E0018
00003E001800004F001000004F001000004780100000478010000043C010000043C01000
0083C020000081E020000081E020000080F020000080F020000080782000010078400001
007C400001003C400001003C400001001E400001001E400002000F800002000F80000200
0F800002000780000200078000060003800006000300000F00010000FFE0010000221F7E
9E22>I<0003F800001E0E000038070000E0038001C001C003C001E0078000E00F0000F0
0F0000F01E0000F01E0000F83E0000F83C0000F87C0000F87C0000F87C0000F87C0000F8
F80001F0F80001F0F80001F0F80001F0F80003E0780003E0780003C0780007C07C000780
3C000F003C001E001E001C000E0038000700F00003C3C00000FE00001D217B9F23>I<07
FFFF00007C03C0003C01E0003C00F0007800F0007800F8007800F8007800F8007800F800
7800F000F001F000F001E000F003C000F0078000F00F0000FFF80001E0000001E0000001
E0000001E0000001E0000001E0000003C0000003C0000003C0000003C0000003C0000003
C000000780000007C00000FFFC00001D1F7E9E1F>I<07FFFC00007C0700003C03C0003C
01E0007801E0007801F0007801F0007801F0007801F0007801E000F003E000F003C000F0
078000F00F0000F03C0000FFF00001E0300001E0380001E01C0001E01C0001E01C0001E0
1E0003C03E0003C03E0003C03E0003C03E0003C03E0003C03E0207803E0407C01F04FFFC
0F18000003E01F207E9E21>82 D<003F040060CC01803C03801C03001C0700180600080E
00080E00080E00080E00000F00000F80000FE00007FE0003FF8001FFC0007FE00007E000
01E00000E00000F00000F04000E04000E04000E04000E06000C0600180E00380F80300C6
0C0081F80016217D9F19>I<3FFFFFF03C0780F03007803060078030400F0010400F0010
C00F0010800F0010800F0010800F0010001E0000001E0000001E0000001E0000001E0000
001E0000003C0000003C0000003C0000003C0000003C0000003C00000078000000780000
0078000000780000007800000078000000F0000001F800007FFFE0001C1F7A9E21>I<FF
FC3FF80F8007C007800300078003000F0002000F0002000F0002000F0002000F0002000F
0002001E0004001E0004001E0004001E0004001E0004001E0004003C0008003C0008003C
0008003C0008003C0008003C000800380010003800100038001000380020003C0040001C
0040001C0080000E0100000706000001F800001D20799E22>I<FFF003FE1F8000F80F00
00600F0000400F0000400F8000800780018007800100078002000780020007C0040003C0
040003C0080003C0080003C0100003E0100001E0200001E0200001E0400001E0400001F0
800000F1000000F1000000F2000000F2000000FC0000007C000000780000007800000070
000000700000002000001F207A9E22>I<FFF07FF81FF01F000FC007C01F00078003000F
00078003000F00078002000F000F8002000F000F8004000F001F8004000F0017C008000F
8013C00800078023C01000078023C01000078043C02000078043C02000078083C0400007
8083E0400007C101E0800003C101E0800003C201E1000003C201E1000003C401E2000003
C401E2000003C801F4000003E800F4000001F000FC000001F000F8000001E000F8000001
E000F0000001C000F0000001C00060000000C0006000000080004000002C207A9E2F>I<
03FFC0FFC0007F007E00003E003800001E003000001E002000000F004000000F00800000
0F81000000078200000007C600000003C400000003E800000001F000000001F000000000
F000000000F800000000F8000000017C000000023C000000043C0000000C1E000000081E
000000101F000000200F000000400F800000C0078000008007C000010003C000070003E0
001F8007E000FFE01FFE00221F7F9E22>I<FFF003FF1F8000F80F0000600F8000400780
008007C0018003C0010003E0020001E0040001F00C0001F0080000F0100000F820000078
6000007C4000003C8000003F0000001F0000001E0000001E0000001E0000001C0000003C
0000003C0000003C0000003C0000003C00000038000000780000007C00000FFFC000201F
7A9E22>I E /Fh 15 117 df<020408103020604040C0C0C0C0C0C0C0C0404060203010
080402071A7F920C>40 D<8040201018080C0404060606060606060604040C0818102040
80071A7E920C>I<1F00318060C04040C060C060C060C060C060C060C060C060404060C0
31801F000B107F8F0F>48 D<0C003C00CC000C000C000C000C000C000C000C000C000C00
0C000C000C00FF8009107E8F0F>I<1F00618040C08060C0600060006000C00180030006
000C00102020207FC0FFC00B107F8F0F>I<1F00218060C060C000C0008001800F000080
00400060C060C060804060801F000B107F8F0F>I<0300030007000F000B001300330023
004300C300FFE003000300030003001FE00B107F8F0F>I<20803F002C00200020002000
2F0030802040006000600060C06080C061801F000B107F8F0F>I<0780184030C060C060
00C000CF00F080E040C060C060C060406060C030801F000B107F8F0F>I<40007FE07FC0
8080808001000200040004000C0008000800180018001800180018000B117E900F>I<1F
00318060C060C060C071803F000F00338061C0C060C060C060404060801F000B107F8F0F
>I<1F00318060C0C040C060C060C06040E021E01E600060004060C0608043003E000B10
7F8F0F>I<03E0000C1800100400200200600300400100C00180C00180C00180C00180C0
01806003006003003006003006000C180003E00011117E9017>79
D<1F8030C06000C000C000C000C000C000604030801F000A0B7F8A0E>99
D<10103030FE3030303030323232321C070F7F8E0C>116 D E /Fi
3 64 df<03C00FF01FF83FFC7FFE7FFEFFFFFFFFFFFFFFFFFFFFFFFF7FFE7FFE3FFC1FF8
0FF003C010127D9317>15 D<FFFFFFE0FFFFFFE0000C0000000C0000000C0000000C0000
000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000
000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000
000C0000000C0000000C0000000400001B1C7C9B23>62 D<00040000000C0000000C0000
000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000
000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000000C0000
000C0000000C0000000C0000000C0000000C0000FFFFFFE0FFFFFFE01B1C7C9B23>I
E /Fj 60 123 df<00F8F001F8F003F8F00780F00700F00F00F00F00F00F00F00F00F00F
00F00F00F00F00F0FFF8F0FFF8F0FFF8F00F00F00F00F00F00F00F00F00F00F00F00F00F
00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F01420809F
18>13 D<007000E001C00380078007000E001E001E003C003C003C007800780078007800
7000F000F000F000F000F000F000F000F000F000F000F000F00070007800780078007800
3C003C003C001E001E000E0007000780038001C000E000700C2E7EA112>40
D<E000700038001C001E000E0007000780078003C003C003C001E001E001E001E000E000
F000F000F000F000F000F000F000F000F000F000F000F000E001E001E001E001E003C003
C003C00780078007000E001E001C0038007000E0000C2E7DA112>I<7878787818303060
60E0050A7D830D>44 D<FFC0FFC0FFC00A037F8B0F>I<F0F0F0F004047C830D>I<03F000
07F8001FFE001E1E003C0F00380700780780780780700380F003C0F003C0F003C0F003C0
F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0780780780780
7807803807003C0F001E1E001FFE000FFC0003F00012207E9E17>48
D<00C001C00FC0FFC0FFC0F3C003C003C003C003C003C003C003C003C003C003C003C003
C003C003C003C003C003C003C003C003C003C003C0FFFEFFFEFFFE0F1F7C9E17>I<F0F0
F0F0000000000000000000000000F0F0F0F004147C930D>58 D<FFFFFFF0FFFFFFF00000
000000000000000000000000000000000000000000000000000000000000FFFFFFF0FFFF
FFF01C0C7D9023>61 D<001F0000001F0000003F8000003B8000003B8000007BC0000073
C0000071C00000F1E00000E1E00000E0E00001E0F00001E0F00001C0F00003C0780003C0
78000380780007803C0007803C0007003C000FFFFE000FFFFE000FFFFE001E000F001E00
0F003C000F803C0007803C000780780007C0780003C0780003C0F00003E01B207F9F1E>
65 D<FFF800FFFF00FFFF80F00FC0F003E0F001E0F000F0F000F0F000F0F000F0F000F0
F001E0F003C0F01F80FFFF00FFFF00FFFF80F007E0F001E0F000F0F00078F00078F00078
F00078F00078F00078F000F0F001F0F007E0FFFFC0FFFF80FFFC0015207B9F1E>I<001F
C000FFF801FFFC03E03C07800C0F00001E00003E00003C00007C00007800007800007800
00F00000F00000F00000F00000F00000F00000F00000F000007800007800007800007C00
003C00003E00001E00000F000207800E03E03E01FFFC00FFF0001FC017227DA01D>I<FF
FC00FFFF80FFFFC0F007E0F001F0F000F8F00078F0003CF0003CF0001EF0001EF0000EF0
000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0001EF0001EF0001EF0
003CF0007CF000F8F001F0F007E0FFFFC0FFFF80FFFC0018207B9F21>I<FFFFC0FFFFC0
FFFFC0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000
FFFF80FFFF80FFFF80F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000FFFFE0FFFFE0FFFFE013207B9F1B>I<FFFFC0FFFFC0FFFFC0F000
00F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFF00FFFF
00FFFF00F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F000
00F00000F00000F00000F0000012207B9F1A>I<001FE000FFF801FFFE03E03E07800E0F
00001E00003E00003C00007C0000780000780000780000F00000F00000F00000F00000F0
0000F00000F003FEF003FE7803FE78001E78001E7C001E3C001E3E001E1E001E0F001E07
801E03E03E01FFFE00FFF8001FC017227DA01E>I<F00078F00078F00078F00078F00078
F00078F00078F00078F00078F00078F00078F00078F00078F00078FFFFF8FFFFF8FFFFF8
F00078F00078F00078F00078F00078F00078F00078F00078F00078F00078F00078F00078
F00078F00078F0007815207B9F20>I<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F0F0F0F0F004207C9F0D>I<F0003EF0007CF000F8F001F0F003E0F007
C0F00780F00F00F01F00F03E00F07C00F0F800F1F000F3F800F3F800F7FC00FFBC00FF1E
00FE1F00FC0F00F80780F00780F003C0F003E0F001E0F000F0F000F8F00078F0003CF000
3CF0001EF0001F18207B9F20>75 D<F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000
F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000FFFF80FFFF80
FFFF8011207B9F19>I<F80001F8FC0003F8FC0003F8F4000378F6000778F6000778F600
0778F3000E78F3000E78F3000E78F3801E78F3801E78F1801C78F1C03C78F1C03C78F0C0
3878F0C03878F0E07878F0E07878F0607078F070F078F070F078F030E078F039E078F039
E078F019C078F019C078F019C078F00F8078F00F8078F00F8078F00000781D207B9F28>
I<FC0078FE0078FE0078F60078F70078F70078F38078F38078F38078F3C078F1C078F1E0
78F1E078F0E078F0F078F07078F07078F07878F03878F03C78F03C78F01C78F01E78F00E
78F00E78F00E78F00778F00778F00378F003F8F003F8F001F815207B9F20>I<003F0000
00FFC00003FFF00007E1F8000F807C001F003E001E001E003C000F003C000F0078000780
7800078078000780F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0
F00003C0F00003C0F80007C07800078078000780780007803C000F003C000F001E001E00
1F003E000F807C0007E1F80003FFF00000FFC000003F00001A227DA021>I<FFF800FFFF
00FFFF80F00FC0F003E0F001E0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F001
E0F003E0F00FC0FFFF80FFFF00FFF800F00000F00000F00000F00000F00000F00000F000
00F00000F00000F00000F00000F00000F0000014207B9F1D>I<003F000000FFC00003FF
F00007E1F8000F807C001F003E001E001E003C000F003C000F0078000780780007807800
0780F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F00003C0F000
03C0F00003C07800078078000780781E07803C0F0F003C0F8F001E079E001F03FE000F83
FC0007E1F80003FFF00000FFF800003F780000007C0000003E0000001E0000001F000000
0F801A277DA021>I<FFF800FFFF00FFFF80F007C0F003E0F001E0F000F0F000F0F000F0
F000F0F000F0F001E0F003E0F007C0FFFF80FFFF00FFF800F03C00F01E00F01E00F00F00
F00F00F00780F00780F003C0F001C0F001E0F000F0F000F0F00078F00078F0003C16207B
9F1D>I<01FC0007FF800FFFC01F03C03C00C03C00007800007800007800007800007800
007C00003C00003F00001FE0000FFC0007FE0001FF00003F800007C00003C00003E00001
E00001E00001E00001E00001E00001C0C003C0F007C0FC0F807FFF001FFE0003F8001322
7EA019>I<FFFFFFC0FFFFFFC0FFFFFFC0001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E00
00001E0000001E0000001E0000001E0000001E0000001E00001A207E9F1F>I<F000F0F0
00F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F0
00F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F0F000F078
01E07801E03C03C03C03C01F0F800FFF0007FE0001F80014217B9F1F>I<F00001E0F000
01E0780003C0780003C0780003C03C0007803C0007803C0007801E000F001E000F001F00
0F000F001E000F001E0007801C0007803C0007803C0003C0380003C0780003C0780001E0
700001E0F00001E0F00000F0E00000F1E00000F1E0000071C000007BC000003B8000003B
8000003F8000001F0000001F00001B207F9F1E>I<F0007C000FF0007E000FF0007E000F
78006E000E7800EE001E7800E7001E7800E7001E3C00E7003C3C01E7803C3C01C7803C3C
01C3803C1E01C380781E03C3C0781E0383C0780E0381C0700F0381C0F00F0781E0F00F07
01E0F0070700E0E0078700E1E0078F00E1E0078E00F1E0038E0071C0038E0071C003CE00
73C001DC00738001DC003B8001DC003B8001DC003B8000F8003F0000F8001F0000F8001F
0028207F9F2B>I<780007807C000F003E001F001E001E000F003C000F807C0007807800
03C0F00003E1F00001F1E00000F3C000007FC000007F8000003F0000001F0000001E0000
003F0000007F8000007FC00000F3C00001F1E00001E0F00003C0F80007C0780007803C00
0F003E001F001E001E000F003C000F807C0007C0780003C0F00003E01B207F9F1E>I<F8
0000F87C0001F03C0001E03E0003E01F0003C00F0007800F800F8007C00F0003C01F0003
E01E0001F03C0000F07C00007878000078F000003CF000001CE000001FE000000FC00000
078000000780000007800000078000000780000007800000078000000780000007800000
078000000780000007800000078000000780001D20809F1E>I<FFFFF8FFFFF8FFFFF800
00F00001F00001E00003C00007C0000780000F80000F00001E00003E00003C00007C0000
780000F00001F00001E00003E00003C0000780000F80000F00001F00001E00003C00007C
0000780000FFFFFCFFFFFCFFFFFC16207D9F1C>I<07E03FF87FFC701E401F000F000F00
0F003F07FF1FFF7E0FF80FF00FF00FF00FF83F7FFF3FEF1F8F10147E9316>97
D<F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F000
00F1F000F7FC00FFFE00FC3E00F80F00F00F00F00780F00780F00780F00780F00780F007
80F00780F00F00F00F00F81F00FC3E00FFFC00F7F800F1E00011207D9F17>I<03F00FFC
1FFE3E0E3C0278007800F000F000F000F000F000F000780078003C013E0F1FFF0FFE03F0
10147E9314>I<0007800007800007800007800007800007800007800007800007800007
8000078000078007C7800FF7801FFF803E1F807C0780780780F80780F00780F00780F007
80F00780F00780F00780F00780780780780F803E1F801FFF800FF78007C78011207E9F17
>I<03F0000FFC001FFE003E1F003C0700780700700380FFFF80FFFF80FFFF80F00000F0
0000F000007000007800003C01003E07001FFF0007FE0001F80011147F9314>I<007E01
FE03FE078007000F000F000F000F000F000F000F00FFF0FFF0FFF00F000F000F000F000F
000F000F000F000F000F000F000F000F000F000F000F000F000F20809F0E>I<03E0F00F
FFF01FFFF03E3E003C1E00780F00780F00780F00780F00780F003C1E003E3E001FFC003F
F80033E0003000003800003FFE003FFF801FFFC03FFFE07803F0F000F0F000F0F000F0F8
01F07E07E03FFFC00FFF0003FC00141E7F9317>I<F000F000F000F000F000F000F000F0
00F000F000F000F000F1F8F3FCF7FEFC1FF80FF80FF00FF00FF00FF00FF00FF00FF00FF0
0FF00FF00FF00FF00FF00FF00F10207D9F17>I<F0F0F0F00000000000000000F0F0F0F0
F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F004207D9F0B>I<F00000F00000F00000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000F01F00F01E00F03C00F07800F0
F000F1E000F3C000F78000FFC000FFC000FFE000F9F000F8F000F0F800F07C00F07C00F0
3E00F01E00F01F00F00F8011207D9F16>107 D<F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0
F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F004207D9F0B>I<F0FC07E0F3FE1FF0F7FF3FF8FE
0FF07CF807C03CF807C03CF007803CF007803CF007803CF007803CF007803CF007803CF0
07803CF007803CF007803CF007803CF007803CF007803CF007803CF007803C1E147D9325
>I<F1F8F3FCF7FEFC1FF80FF80FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F
F00FF00FF00F10147D9317>I<01F80007FE001FFF803F0FC03C03C07801E07801E0F000
F0F000F0F000F0F000F0F000F0F000F07801E07801E03C03C03F0FC01FFF8007FE0001F8
0014147F9317>I<F1F000F7FC00FFFE00FC3E00F81F00F00F00F00F80F00780F00780F0
0780F00780F00780F00780F00F00F00F00F81F00FC3E00FFFC00F7F800F1E000F00000F0
0000F00000F00000F00000F00000F00000F00000F00000111D7D9317>I<03C7800FF780
1FFF803E1F807C0F80780780780780F00780F00780F00780F00780F00780F00780F80780
7807807C0F803E1F801FFF800FF78007C780000780000780000780000780000780000780
000780000780000780111D7E9317>I<F0E0F3E0F7E0FF00FC00FC00F800F800F000F000
F000F000F000F000F000F000F000F000F000F0000B147D9310>I<07F01FFC3FFC780C78
00780078007C003FC01FF00FF803F8007C003C003CC03CF07CFFF87FF00FC00E147F9311
>I<1E001E001E001E001E001E00FFF0FFF0FFF01E001E001E001E001E001E001E001E00
1E001E001E001E001E001E201FF00FF007C00C1A7F9910>I<F00FF00FF00FF00FF00FF0
0FF00FF00FF00FF00FF00FF00FF00FF00FF00FF01FF03FFFFF7FEF3F0F10147D9317>I<
F003C0F003C07803807807807807803C0F003C0F003C0F001E0E001E1E001E1E000F1C00
0F3C000F3C0007380007380007B80003F00003F00001E00012147F9315>I<F01F00F0F0
1F80F0F01F80F0781B81E0783B81E0783BC1E07839C1E03C31C3C03C71C3C03C71E3C01C
70E3801E60E7801E60E7801EE0E7800EE077000EC077000EC0770007C07E0007C03E0007
803E001C147F931F>I<7801E07C03C03E07801E0F000F0F00079E0003FC0003F80001F8
0000F00001F00001F80003FC00079E000F0F000E0F001E07803C03C07801E0F801F01414
809315>I<F003C0F003C07807807807807C07803C0F003C0F001E0F001E1E000E1E000F
1C000F1C00073C0007380003B80003B80003B00001F00001F00000E00000E00001C00001
C00001C0000380000780007F00007E00007C0000121D7F9315>I<7FFF7FFF7FFF003E00
3C007800F800F001E003E007C007800F001F001E003C007C00FFFFFFFFFFFF10147F9314
>I E /Fk 73 126 df<030600078F00078F00078F00078F00078F00078F007FFFC0FFFF
E0FFFFE07FFFC00F1E000F1E000F1E000F1E000F1E000F1E007FFFC0FFFFE0FFFFE07FFF
C01E3C001E3C001E3C001E3C001E3C001E3C000C1800131C7E9B18>35
D<01C00007E0000FF0000E70001C38001C38001C38001C38001C73F01C73F01CE3F00FE3
800FC7000F87000F07001F0E003F0E007B8E0073DC00E1DC00E0F800E0F800E07070E078
7070FC707FFFE03FCFE00F03C0141C7F9B18>38 D<007000F001E003C007800F001E001C
00380038007000700070007000E000E000E000E000E000E000E000E00070007000700070
00380038001C001E000F00078003C001F000F000700C24799F18>40
D<6000F00078003C001E000F000780038001C001C000E000E000E000E000700070007000
70007000700070007000E000E000E000E001C001C0038007800F001E003C007800F00060
000C247C9F18>I<01C00001C00001C00001C000C1C180F1C780F9CF807FFF001FFC0007
F00007F0001FFC007FFF00F9CF80F1C780C1C18001C00001C00001C00001C00011147D97
18>I<1C3E7E7F3F1F070E1E7CF860080C788518>44 D<3078FCFC78300606778518>46
D<000300000780000780000F80000F00001F00001E00001E00003E00003C00007C000078
0000780000F80000F00001F00001E00003E00003C00003C00007C0000780000F80000F00
000F00001F00001E00003E00003C00003C00007C0000780000F80000F00000F000006000
0011247D9F18>I<01800380038007800F803F80FF80FB80438003800380038003800380
038003800380038003800380038003800380038003807FFCFFFE7FFC0F1C7B9B18>49
D<03F0000FFE003FFF007C0F807003C0E001C0F000E0F000E06000E00000E00000E00001
C00001C00003C0000780000F00001E00003C0000780000F00001E00007C0000F80001E00
E03C00E07FFFE0FFFFE07FFFE0131C7E9B18>I<07F8001FFE003FFF007807807803C078
01C03001C00001C00003C0000380000F0003FF0003FE0003FF000007800003C00001C000
00E00000E00000E0F000E0F000E0F001C0F003C07C07803FFF001FFE0003F800131C7E9B
18>I<001F00003F0000770000770000E70001E70001C7000387000787000707000E0700
1E07003C0700380700780700F00700FFFFF8FFFFF8FFFFF8000700000700000700000700
000700000700007FF000FFF8007FF0151C7F9B18>I<03F8000FFE001FFF003E0F803803
807001C07001C07001C07001C03803803C07801FFF0007FC000FFE001F1F003C07807001
C0F001E0E000E0E000E0E000E0E000E07001C07803C03E0F801FFF000FFE0003F800131C
7E9B18>56 D<3078FCFC783000000000000000003078FCFC78300614779318>58
D<183C7E7E3C180000000000000000183C7E7E3E1E0E1C3C78F060071A789318>I<7FFF
C0FFFFE0FFFFE0FFFFE0000000000000000000000000FFFFE0FFFFE0FFFFE07FFFC0130C
7E9318>61 D<0FF0003FFC007FFF00700F00F00380F00380600780000F00003E00007C00
01F00001E00003C00003C00003C00003C00003C000038000000000000000000000000000
00000003800007C00007C00007C000038000111C7D9B18>63 D<00700000F80000F80000
D80000D80001DC0001DC0001DC00018C00038E00038E00038E00038E0003060007070007
07000707000707000FFF800FFF800FFF800E03800E03801C01C01C01C07F07F0FF8FF87F
07F0151C7F9B18>65 D<FFFC00FFFF00FFFF801C03C01C01C01C00E01C00E01C00E01C00
E01C01E01C01C01C07C01FFF801FFF001FFFC01C03C01C00E01C00F01C00701C00701C00
701C00701C00F01C00E01C03E0FFFFC0FFFF80FFFE00141C7F9B18>I<00F8E003FEE007
FFE00F07E01E03E03C01E03800E07000E07000E0700000E00000E00000E00000E00000E0
0000E00000E00000E000007000007000E07000E03800E03C00E01E01C00F07C007FF8003
FE0000F800131C7E9B18>I<7FF800FFFE007FFF001C0F801C03C01C03C01C01E01C00E0
1C00E01C00F01C00701C00701C00701C00701C00701C00701C00701C00701C00F01C00E0
1C00E01C01E01C01C01C03C01C0F807FFF00FFFE007FF800141C7F9B18>I<FFFFF0FFFF
F0FFFFF01C00701C00701C00701C00701C00001C00001C0E001C0E001C0E001FFE001FFE
001FFE001C0E001C0E001C0E001C00001C00001C00381C00381C00381C00381C0038FFFF
F8FFFFF8FFFFF8151C7F9B18>I<FFFFE0FFFFE0FFFFE01C00E01C00E01C00E01C00E01C
00001C00001C1C001C1C001C1C001FFC001FFC001FFC001C1C001C1C001C1C001C00001C
00001C00001C00001C00001C00001C0000FFC000FFC000FFC000131C7E9B18>I<01F1C0
03FDC00FFFC01F0FC01C03C03803C03801C07001C07001C0700000E00000E00000E00000
E00000E00000E00FF0E01FF0E00FF07001C07001C07003C03803C03803C01C07C01F0FC0
0FFFC003FDC001F1C0141C7E9B18>I<7F07F0FF8FF87F07F01C01C01C01C01C01C01C01
C01C01C01C01C01C01C01C01C01C01C01FFFC01FFFC01FFFC01C01C01C01C01C01C01C01
C01C01C01C01C01C01C01C01C01C01C01C01C07F07F0FF8FF87F07F0151C7F9B18>I<7F
FF00FFFF807FFF0001C00001C00001C00001C00001C00001C00001C00001C00001C00001
C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001
C0007FFF00FFFF807FFF00111C7D9B18>I<7F07F0FF87F87F07F01C03C01C07801C0700
1C0E001C1E001C3C001C38001C70001CF0001DF0001DF0001FB8001FB8001F1C001E1C00
1C0E001C0E001C07001C07001C03801C03801C01C07F03F0FF87F87F03F0151C7F9B18>
75 D<7FE000FFE0007FE0000E00000E00000E00000E00000E00000E00000E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E00000E00000E00700E00700E0070
0E00700E00707FFFF0FFFFF07FFFF0141C7F9B18>I<FC01F8FE03F8FE03F83B06E03B06
E03B06E03B06E03B8EE03B8EE0398CE0398CE039DCE039DCE039DCE038D8E038D8E038F8
E03870E03870E03800E03800E03800E03800E03800E03800E0FE03F8FE03F8FE03F8151C
7F9B18>I<7E07F0FF0FF87F07F01D81C01D81C01D81C01DC1C01CC1C01CC1C01CE1C01C
E1C01CE1C01C61C01C71C01C71C01C31C01C39C01C39C01C39C01C19C01C19C01C1DC01C
0DC01C0DC01C0DC07F07C0FF87C07F03C0151C7F9B18>I<0FF8003FFE007FFF00780F00
700700F00780E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380
E00380E00380E00380E00380E00380E00380F00780700700780F007FFF003FFE000FF800
111C7D9B18>I<FFFE00FFFF80FFFFC01C03C01C01E01C00E01C00701C00701C00701C00
701C00701C00E01C01E01C03C01FFFC01FFF801FFE001C00001C00001C00001C00001C00
001C00001C00001C0000FF8000FF8000FF8000141C7F9B18>I<0FF8003FFE007FFF0078
0F00700700F00780E00380E00380E00380E00380E00380E00380E00380E00380E00380E0
0380E00380E00380E00380E00380E1E380E1E380F0E78070F700787F007FFF003FFE000F
FC00001C00001E00000E00000F0000070000070011227D9B18>I<7FF800FFFE007FFF00
1C0F801C03801C03C01C01C01C01C01C01C01C03C01C03801C0F801FFF001FFE001FFE00
1C0F001C07001C03801C03801C03801C03801C03801C039C1C039C1C039C7F01F8FF81F8
7F00F0161C7F9B18>I<03F3801FFF803FFF807C0F80700780E00380E00380E00380E000
007000007800003F00001FF00007FE0000FF00000F800003C00001C00000E00000E06000
E0E000E0E001E0F001C0F80780FFFF80FFFE00E7F800131C7E9B18>I<7FFFF8FFFFF8FF
FFF8E07038E07038E07038E0703800700000700000700000700000700000700000700000
700000700000700000700000700000700000700000700000700000700000700007FF0007
FF0007FF00151C7F9B18>I<FF83FEFF83FEFF83FE1C00701C00701C00701C00701C0070
1C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C0070
1C00701C00700E00E00F01E00783C003FF8001FF00007C00171C809B18>I<FF07F8FF07
F8FF07F81C01C01C01C01C01C01C01C00E03800E03800E03800E03800F07800707000707
00070700070700038E00038E00038E00038E00018C0001DC0001DC0001DC0000D80000F8
0000F800007000151C7F9B18>I<FE03F8FE03F8FE03F87000707000707000703800E038
00E03800E03800E03800E038F8E038F8E039DCE039DCE019DCC019DCC019DCC0198CC01D
8DC01D8DC01D8DC01D8DC00D8D800D05800F07800F07800E0380151C7F9B18>I<7F8FE0
7F9FE07F8FE00E07000F0700070E00078E00039C0003DC0001F80001F80000F00000F000
00700000F00000F80001F80001DC00039E00038E00070F000707000E07800E03801E03C0
7F07F0FF8FF87F07F0151C7F9B18>I<FF07F8FF07F8FF07F81C01C01E03C00E03800F07
80070700070700038E00038E0001DC0001DC0001DC0000F80000F8000070000070000070
0000700000700000700000700000700000700001FC0003FE0001FC00151C7F9B18>I<3F
FFE07FFFE07FFFE07001C07003C0700780700700000F00001E00001C00003C0000780000
700000F00001E00001C00003C0000780000700000F00001E00E01C00E03C00E07800E070
00E0FFFFE0FFFFE0FFFFE0131C7E9B18>I<FFF8FFF8FFF8E000E000E000E000E000E000
E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000
E000E000E000E000E000E000FFF8FFF8FFF80D24779F18>I<FFF8FFF8FFF80038003800
380038003800380038003800380038003800380038003800380038003800380038003800
38003800380038003800380038003800380038FFF8FFF8FFF80D247F9F18>93
D<7FFF00FFFF80FFFF807FFF0011047D7F18>95 D<1FE0003FF8007FFC00781E00300E00
00070000070000FF0007FF001FFF007F0700780700E00700E00700E00700F00F00781F00
3FFFF01FFBF007E1F014147D9318>97 D<7E0000FE00007E00000E00000E00000E00000E
00000E00000E3E000EFF800FFFC00FC1E00F80E00F00700E00700E00380E00380E00380E
00380E00380E00380F00700F00700F80E00FC1E00FFFC00EFF80063E00151C809B18>I<
01FE0007FF001FFF803E0780380300700000700000E00000E00000E00000E00000E00000
E000007000007001C03801C03E03C01FFF8007FF0001FC0012147D9318>I<001F80003F
80001F8000038000038000038000038000038003E3800FFB801FFF803C1F80380F807007
80700380E00380E00380E00380E00380E00380E00380700780700780380F803C1F801FFF
F00FFBF803E3F0151C7E9B18>I<01F00007FC001FFE003E0F00380780700380700380E0
01C0E001C0FFFFC0FFFFC0FFFFC0E000007000007001C03801C03E03C01FFF8007FF0001
FC0012147D9318>I<001F80007FC000FFE000E1E001C0C001C00001C00001C0007FFFC0
FFFFC0FFFFC001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000
01C00001C00001C00001C0007FFF007FFF007FFF00131C7F9B18>I<01E1F007FFF80FFF
F81E1E301C0E003807003807003807003807003807001C0E001E1E001FFC001FF80039E0
003800001C00001FFE001FFFC03FFFE07801F0700070E00038E00038E00038E000387800
F07E03F01FFFC00FFF8001FC00151F7F9318>I<7E0000FE00007E00000E00000E00000E
00000E00000E00000E3E000EFF800FFFC00FC1C00F80E00F00E00E00E00E00E00E00E00E
00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07FC3FCFFE7FE7FC3FC171C809B
18>I<03800007C00007C00007C0000380000000000000000000000000007FC000FFC000
7FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000
01C00001C00001C000FFFF00FFFF80FFFF00111D7C9C18>I<0038007C007C007C003800
000000000000000FFC1FFC0FFC001C001C001C001C001C001C001C001C001C001C001C00
1C001C001C001C001C001C001C001C001C001C001C6038F078FFF07FE03F800E277E9C18
>I<FE0000FE0000FE00000E00000E00000E00000E00000E00000E3FF00E7FF00E3FF00E
07800E0F000E1E000E3C000E78000EF0000FF8000FFC000F9C000F0E000E0F000E07000E
03800E03C0FFC7F8FFC7F8FFC7F8151C7F9B18>I<7FE000FFE0007FE00000E00000E000
00E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000
00E00000E00000E00000E00000E00000E00000E00000E0007FFFC0FFFFE07FFFC0131C7E
9B18>I<7CE0E000FFFBF8007FFFF8001F1F1C001E1E1C001E1E1C001C1C1C001C1C1C00
1C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C00
7F1F1F00FFBFBF807F1F1F001914819318>I<7E3E00FEFF807FFFC00FC1C00F80E00F00
E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07FC3
FCFFE7FE7FC3FC1714809318>I<01F0000FFE001FFF003E0F803803807001C07001C0E0
00E0E000E0E000E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF000FFE0001
F00013147E9318>I<7E3E00FEFF807FFFC00FC1E00F80E00F00700E00700E00380E0038
0E00380E00380E00380E00380F00700F00700F80E00FC1E00FFFC00EFF800E3E000E0000
0E00000E00000E00000E00000E00000E00007FC000FFE0007FC000151E809318>I<01E3
8007FB801FFF803E1F80380F80700780700780E00380E00380E00380E00380E00380E003
80700780700780380F803C1F801FFF800FFB8003E3800003800003800003800003800003
80000380000380003FF8003FF8003FF8151E7E9318>I<7F87E0FF9FF07FBFF803F87803
F03003E00003C00003C00003800003800003800003800003800003800003800003800003
80007FFE00FFFF007FFE0015147F9318>I<07F7003FFF007FFF00780F00E00700E00700
E007007C00007FE0001FFC0003FE00001F00600780E00380E00380F00380F80F00FFFF00
FFFC00E7F00011147D9318>I<0180000380000380000380000380007FFFC0FFFFC0FFFF
C00380000380000380000380000380000380000380000380000380000380400380E00380
E00380E001C1C001FFC000FF80003E0013197F9818>I<7E07E0FE0FE07E07E00E00E00E
00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E01E00F
03E007FFFC03FFFE01FCFC1714809318>I<7F8FF0FF8FF87F8FF01E03C00E03800E0380
0E0380070700070700070700038E00038E00038E00038E0001DC0001DC0001DC0000F800
00F80000700015147F9318>I<FF8FF8FF8FF8FF8FF83800E03800E03800E01C01C01C01
C01C71C01CF9C01CF9C01CD9C01CD9C00DDD800DDD800DDD800D8D800F8F800F8F800707
0015147F9318>I<7F8FF07F9FF07F8FF0070700078E00039E0001DC0001F80000F80000
700000F00000F80001DC00039E00038E000707000F07807F8FF0FF8FF87F8FF015147F93
18>I<7F8FF0FF8FF87F8FF00E01C00E03800E0380070380070700070700038700038600
038E0001CE0001CE0000CC0000CC0000DC00007800007800007800007000007000007000
00F00000E00079E0007BC0007F80003F00001E0000151E7F9318>I<3FFFF07FFFF07FFF
F07001E07003C0700780000F00001E00003C0000F80001F00003C0000780000F00701E00
703C0070780070FFFFF0FFFFF0FFFFF014147F9318>I<0007E0001FE0007FE000780000
E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00001E0007F
C000FF8000FF80007FC00001E00000E00000E00000E00000E00000E00000E00000E00000
E00000E00000E00000E000007800007FE0001FE00007E013247E9F18>I<7C0000FF0000
FFC00003C00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000
00E00000F000007FC0003FE0003FE0007FC000F00000E00000E00000E00000E00000E000
00E00000E00000E00000E00000E00000E00003C000FFC000FF00007C000013247E9F18>
125 D E /Fl 70 123 df<007E1F0001C1B1800303E3C00703C3C00E03C1800E01C0000E
01C0000E01C0000E01C0000E01C0000E01C000FFFFFC000E01C0000E01C0000E01C0000E
01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E
01C0000E01C0000E01C0000E01C0007F87FC001A1D809C18>11 D<007E0001C180030180
0703C00E03C00E01800E00000E00000E00000E00000E0000FFFFC00E01C00E01C00E01C0
0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C07F87F8151D809C17>I<007FC001C1C00303C00703C00E01C00E01C00E01C00E01
C00E01C00E01C00E01C0FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01
C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07FCFF8151D809C17>I<60
60F0F0F8F86868080808080808101010102020404080800D0C7F9C15>34
D<00E0000001900000030800000308000007080000070800000708000007080000071000
0007100000072000000740000003C03FE003800F00038006000380040005C0040009C008
0010E0100030E010006070200060702000E0384000E03C4000E01C8000E00F0020E00700
20700780403009C0401830E18007C03E001B1F7E9D20>38 D<004000800100020006000C
000C0018001800300030007000600060006000E000E000E000E000E000E000E000E000E0
00E000E000E000600060006000700030003000180018000C000C00060002000100008000
400A2A7D9E10>40 D<800040002000100018000C000C0006000600030003000380018001
80018001C001C001C001C001C001C001C001C001C001C001C001C0018001800180038003
000300060006000C000C00180010002000400080000A2A7E9E10>I<60F0F07010101010
20204080040C7C830C>44 D<FFE0FFE00B0280890E>I<60F0F06004047C830C>I<03C00C
301818300C300C700E60066006E007E007E007E007E007E007E007E007E007E007E007E0
07E00760066006700E300C300C18180C3007E0101D7E9B15>48 D<030007003F00C70007
000700070007000700070007000700070007000700070007000700070007000700070007
000700070007000F80FFF80D1C7C9B15>I<07C01830201C400C400EF00FF80FF807F807
7007000F000E000E001C001C00380070006000C00180030006010C01180110023FFE7FFE
FFFE101C7E9B15>I<07E01830201C201C781E780E781E381E001C001C00180030006007
E00030001C001C000E000F000F700FF80FF80FF80FF00E401C201C183007E0101D7E9B15
>I<000C00000C00001C00003C00003C00005C0000DC00009C00011C00031C00021C0004
1C000C1C00081C00101C00301C00201C00401C00C01C00FFFFC0001C00001C00001C0000
1C00001C00001C00001C0001FFC0121C7F9B15>I<300C3FF83FF03FC020002000200020
002000200023E024302818301C200E000E000F000F000F600FF00FF00FF00F800E401E40
1C2038187007C0101D7E9B15>I<00F0030C06040C0E181E301E300C700070006000E3E0
E430E818F00CF00EE006E007E007E007E007E007600760077006300E300C18180C3003E0
101D7E9B15>I<4000007FFF807FFF007FFF004002008004008004008008000010000010
0000200000600000400000C00000C00001C0000180000180000380000380000380000380
00078000078000078000078000078000078000030000111D7E9B15>I<03E00C30100820
0C20066006600660067006780C3E083FB01FE007F007F818FC307E601E600FC007C003C0
03C003C00360026004300C1C1007E0101D7E9B15>I<03C00C301818300C700C600EE006
E006E007E007E007E007E0076007700F300F18170C2707C700060006000E300C780C7818
7010203030C00F80101D7E9B15>I<60F0F0600000000000000000000060F0F06004127C
910C>I<60F0F0600000000000000000000060F0F0701010101020204080041A7C910C>I<
7FFFFFC0FFFFFFE000000000000000000000000000000000000000000000000000000000
00000000FFFFFFE07FFFFFC01B0C7E8F20>61 D<0FE03038401CE00EF00EF00EF00E000C
001C0030006000C000800180010001000100010001000100000000000000000000000300
0780078003000F1D7E9C14>63 D<000600000006000000060000000F0000000F0000000F
00000017800000178000001780000023C0000023C0000023C0000041E0000041E0000041
E0000080F0000080F0000180F8000100780001FFF80003007C0002003C0002003C000600
3E0004001E0004001E000C001F001E001F00FF80FFF01C1D7F9C1F>65
D<FFFFC00F00F00F00380F003C0F001C0F001E0F001E0F001E0F001E0F001C0F003C0F00
780F01F00FFFE00F00780F003C0F001E0F000E0F000F0F000F0F000F0F000F0F000F0F00
1E0F001E0F003C0F0078FFFFE0181C7E9B1D>I<001F808000E061800180198007000780
0E0003801C0003801C00018038000180780000807800008070000080F0000000F0000000
F0000000F0000000F0000000F0000000F0000000F0000000700000807800008078000080
380000801C0001001C0001000E000200070004000180080000E03000001FC000191E7E9C
1E>I<FFFFC0000F00F0000F003C000F000E000F0007000F0007000F0003800F0003C00F
0001C00F0001C00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F
0001E00F0001C00F0001C00F0003C00F0003800F0007800F0007000F000E000F001C000F
007000FFFFC0001B1C7E9B20>I<FFFFFC0F003C0F000C0F00040F00040F00060F00020F
00020F02020F02000F02000F02000F06000FFE000F06000F02000F02000F02000F02010F
00010F00020F00020F00020F00060F00060F000C0F003CFFFFFC181C7E9B1C>I<FFFFF8
0F00780F00180F00080F00080F000C0F00040F00040F02040F02000F02000F02000F0600
0FFE000F06000F02000F02000F02000F02000F00000F00000F00000F00000F00000F0000
0F00000F8000FFF800161C7E9B1B>I<001F808000E0618001801980070007800E000380
1C0003801C00018038000180780000807800008070000080F0000000F0000000F0000000
F0000000F0000000F0000000F000FFF0F0000F8070000780780007807800078038000780
1C0007801C0007800E00078007000B800180118000E06080001F80001C1E7E9C21>I<FF
F3FFC00F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F
003C000F003C000F003C000F003C000FFFFC000F003C000F003C000F003C000F003C000F
003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C00FF
F3FFC01A1C7E9B1F>I<FFF00F000F000F000F000F000F000F000F000F000F000F000F00
0F000F000F000F000F000F000F000F000F000F000F000F000F000F00FFF00C1C7F9B0F>
I<1FFF00F800780078007800780078007800780078007800780078007800780078007800
780078007800787078F878F878F878F0F040E021C01F00101D7F9B15>I<FFF8000F8000
0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000
0F00000F00000F00000F00000F00080F00080F00080F00180F00180F00100F00300F0070
0F01F0FFFFF0151C7E9B1A>76 D<FF8000FF800F8000F8000F8000F8000BC00178000BC0
0178000BC001780009E002780009E002780008F004780008F004780008F0047800087808
780008780878000878087800083C107800083C107800083C107800081E207800081E2078
00081E207800080F407800080F4078000807807800080780780008078078000803007800
1C03007800FF8307FF80211C7E9B26>I<FF007FC00F800E000F8004000BC0040009E004
0009E0040008F0040008F8040008780400083C0400083C0400081E0400080F0400080F04
00080784000807C4000803C4000801E4000801E4000800F40008007C0008007C0008003C
0008003C0008001C0008000C001C000C00FF8004001A1C7E9B1F>I<003F800000E0E000
0380380007001C000E000E001C0007003C00078038000380780003C0780003C0700001C0
F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0700001C0
780003C0780003C0380003803C0007801C0007000E000E0007001C000380380000E0E000
003F80001B1E7E9C20>I<FFFF800F00E00F00780F003C0F001C0F001E0F001E0F001E0F
001E0F001E0F001C0F003C0F00780F00E00FFF800F00000F00000F00000F00000F00000F
00000F00000F00000F00000F00000F00000F0000FFF000171C7E9B1C>I<FFFF00000F01
E0000F0078000F003C000F001C000F001E000F001E000F001E000F001E000F001C000F00
3C000F0078000F01E0000FFF00000F03C0000F00E0000F00F0000F0078000F0078000F00
78000F0078000F0078000F0078000F0078100F0078100F0038100F003C20FFF01C200000
07C01C1D7E9B1F>82 D<07E0801C1980300580700380600180E00180E00080E00080E000
80F00000F800007C00007FC0003FF8001FFE0007FF0000FF80000F800007C00003C00001
C08001C08001C08001C0C00180C00180E00300D00200CC0C0083F800121E7E9C17>I<7F
FFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F0020800F0020800F002000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000001F800003
FFFC001B1C7F9B1E>I<FFF07FC00F000E000F0004000F0004000F0004000F0004000F00
04000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F00
04000F0004000F0004000F0004000F0004000F0004000F00040007000800078008000380
10000180100000C020000070C000001F00001A1D7E9B1F>I<0808101020204040404080
8080808080B0B0F8F8787830300D0C7A9C15>92 D<1FC000307000783800781C00301C00
001C00001C0001FC000F1C00381C00701C00601C00E01C40E01C40E01C40603C40304E80
1F870012127E9115>97 D<FC00001C00001C00001C00001C00001C00001C00001C00001C
00001C00001C00001C7C001D86001E03001C01801C01C01C00C01C00E01C00E01C00E01C
00E01C00E01C00E01C00C01C01C01C01801E030019060010F800131D7F9C17>I<07E00C
301878307870306000E000E000E000E000E000E00060007004300418080C3007C00E127E
9112>I<003F000007000007000007000007000007000007000007000007000007000007
0003E7000C1700180F00300700700700600700E00700E00700E00700E00700E00700E007
00600700700700300700180F000C370007C7E0131D7E9C17>I<03E00C301818300C700E
6006E006FFFEE000E000E000E00060007002300218040C1803E00F127F9112>I<00F801
8C071E061E0E0C0E000E000E000E000E000E00FFE00E000E000E000E000E000E000E000E
000E000E000E000E000E000E000E000E007FE00F1D809C0D>I<00038003C4C00C38C01C
3880181800381C00381C00381C00381C001818001C38000C300013C00010000030000018
00001FF8001FFF001FFF803003806001C0C000C0C000C0C000C06001803003001C0E0007
F800121C7F9215>I<FC00001C00001C00001C00001C00001C00001C00001C00001C0000
1C00001C00001C7C001C87001D03001E03801C03801C03801C03801C03801C03801C0380
1C03801C03801C03801C03801C03801C03801C0380FF9FF0141D7F9C17>I<18003C003C
0018000000000000000000000000000000FC001C001C001C001C001C001C001C001C001C
001C001C001C001C001C001C001C00FF80091D7F9C0C>I<00C001E001E000C000000000
000000000000000000000FE000E000E000E000E000E000E000E000E000E000E000E000E0
00E000E000E000E000E000E000E000E060E0F0C0F1C061803E000B25839C0D>I<FC0000
1C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C3FC01C0F00
1C0C001C08001C10001C20001C40001CE0001DE0001E70001C78001C38001C3C001C1C00
1C0E001C0F001C0F80FF9FE0131D7F9C16>I<FC001C001C001C001C001C001C001C001C
001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C
001C00FF80091D7F9C0C>I<FC7E07E0001C838838001D019018001E01E01C001C01C01C
001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C00
1C01C01C001C01C01C001C01C01C001C01C01C001C01C01C00FF8FF8FF8021127F9124>
I<FC7C001C87001D03001E03801C03801C03801C03801C03801C03801C03801C03801C03
801C03801C03801C03801C03801C0380FF9FF014127F9117>I<03F0000E1C0018060030
0300700380600180E001C0E001C0E001C0E001C0E001C0E001C060018070038030030018
06000E1C0003F00012127F9115>I<FC7C001D86001E03001C01801C01C01C00C01C00E0
1C00E01C00E01C00E01C00E01C00E01C01C01C01C01C01801E03001D06001CF8001C0000
1C00001C00001C00001C00001C00001C0000FF8000131A7F9117>I<03C1000C3300180B
00300F00700700700700E00700E00700E00700E00700E00700E00700600700700700300F
00180F000C370007C700000700000700000700000700000700000700000700003FE0131A
7E9116>I<FCE01D301E781E781C301C001C001C001C001C001C001C001C001C001C001C
001C00FFC00D127F9110>I<1F9030704030C010C010E010F8007F803FE00FF000F88038
8018C018C018E010D0608FC00D127F9110>I<04000400040004000C000C001C003C00FF
E01C001C001C001C001C001C001C001C001C001C101C101C101C101C100C100E2003C00C
1A7F9910>I<FC1F801C03801C03801C03801C03801C03801C03801C03801C03801C0380
1C03801C03801C03801C03801C07800C07800E1B8003E3F014127F9117>I<FF07E03C03
801C01001C01000E02000E020007040007040007040003880003880003D80001D00001D0
0000E00000E00000E00000400013127F9116>I<FF3FCFE03C0F03801C0701801C070100
1C0B01000E0B82000E0B82000E1182000711C4000711C4000720C40003A0E80003A0E800
03C0680001C0700001C0700001803000008020001B127F911E>I<7F8FF00F03800F0300
07020003840001C80001D80000F00000700000780000F800009C00010E00020E00060700
0403801E07C0FF0FF81512809116>I<FF07E03C03801C01001C01000E02000E02000704
0007040007040003880003880003D80001D00001D00000E00000E00000E0000040000040
00008000008000F08000F10000F300006600003C0000131A7F9116>I<7FFC7038603840
7040F040E041C003C0038007000F040E041C043C0C380870087038FFF80E127F9112>I
E /Fm 17 119 df<78FCFCFCFC7800000000000078FCFCFCFC7806127D910D>58
D<00038000000380000007C0000007C0000007C000000FE000000FE000001FF000001BF0
00001BF0000031F8000031F8000061FC000060FC0000E0FE0000C07E0000C07E0001803F
0001FFFF0003FFFF8003001F8003001F8006000FC006000FC00E000FE00C0007E0FFC07F
FEFFC07FFE1F1C7E9B24>65 D<001FE02000FFF8E003F80FE007C003E00F8001E01F0000
E03E0000E03E0000607E0000607C000060FC000000FC000000FC000000FC000000FC0000
00FC000000FC000000FC0000007C0000607E0000603E0000603E0000C01F0000C00F8001
8007C0030003F80E0000FFFC00001FE0001B1C7D9B22>67 D<FFFFF800FFFFFF000FC01F
C00FC007E00FC001F00FC001F80FC000F80FC000FC0FC0007C0FC0007C0FC0007E0FC000
7E0FC0007E0FC0007E0FC0007E0FC0007E0FC0007E0FC0007E0FC0007C0FC0007C0FC000
7C0FC000F80FC000F80FC001F00FC007E00FC01FC0FFFFFF00FFFFF8001F1C7E9B25>I<
07F8201FFEE03C07E07801E07000E0F000E0F00060F00060F80000FE0000FFE0007FFE00
3FFF003FFF800FFFC007FFE0007FE00003F00001F00000F0C000F0C000F0C000E0E000E0
F001C0FC03C0EFFF0083FC00141C7D9B1B>83 D<0FF8001C1E003E0F803E07803E07C01C
07C00007C0007FC007E7C01F07C03C07C07C07C0F807C0F807C0F807C0780BC03E13F80F
E1F815127F9117>97 D<03FC000E0E001C1F003C1F00781F00780E00F80000F80000F800
00F80000F80000F800007800007801803C01801C03000E0E0003F80011127E9115>99
D<01FC000F07001C03803C01C07801C07801E0F801E0F801E0FFFFE0F80000F80000F800
007800007C00603C00601E00C00F038001FC0013127F9116>101
D<1E003F003F003F003F001E00000000000000000000000000FF00FF001F001F001F001F
001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B1E7F9D0E>105
D<FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F
001F001F001F001F001F001F001F001F001F00FFE0FFE00B1D7F9C0E>108
D<FF0FC0FF31E01F40F01F80F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00
F81F00F81F00F81F00F81F00F8FFE7FFFFE7FF18127F911B>110
D<01FC000F07801C01C03C01E07800F07800F0F800F8F800F8F800F8F800F8F800F8F800
F87800F07800F03C01E01E03C00F078001FC0015127F9118>I<FE3E00FE47001E8F801E
8F801E8F801F07001F00001F00001F00001F00001F00001F00001F00001F00001F00001F
0000FFF000FFF00011127F9114>114 D<1FD830786018E018E018F000FF807FE07FF01F
F807FC007CC01CC01CE01CE018F830CFC00E127E9113>I<030003000300030007000700
0F000F003FFCFFFC1F001F001F001F001F001F001F001F001F001F0C1F0C1F0C1F0C0F08
079803F00E1A7F9913>I<FF07F8FF07F81F00F81F00F81F00F81F00F81F00F81F00F81F
00F81F00F81F00F81F00F81F00F81F00F81F01F80F01F80786FF01F8FF18127F911B>I<
FFC1FCFFC1FC1F00601F80E00F80C00FC0C007C18007C18003E30003E30001F60001F600
01FE0000FC0000FC0000780000780000300016127F9119>I E /Fn
53 123 df<00000F80003F8F80007F8F8000FF8F8001FF8F8003E0000003C0000007C000
0007C0000007C0000007C0000007C0000007C0000007C0000007C0000007C00000FFFF8F
80FFFF8F80FFFF8F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F
8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F
8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F80192B7F
AA20>12 D<FFFEFFFEFFFE0F037F8E14>45 D<F8F8F8F8F805057A8411>I<007F000001
FFC00007FFF0000FFFF8000FC1F8001F007C003F007E003E003E003C001E007C001F007C
001F007C001F0078000F00F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8
000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F8078
000F007C001F007C001F007C001F003E003E003E003E003F007E001F80FC000FC1F8000F
FFF80007FFF00001FFC000007F000019297EA71E>48 D<00180000380000F80007F800FF
F800FFF800F8F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000
F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000
F80000F80000F80000F80000F80000F80000F80000F80000F8007FFFF07FFFF07FFFF014
287BA71E>I<00FE0003FFC007FFE00FFFF01F03F83C00FC38007E78003E70003EF0001F
F0001F60001F20001F00001F00001F00001F00003E00003E00007C00007C0000F80001F0
0001E00003C0000780000F00001E00003C0000780000F00001E00003C0000780000F0000
1E00003C00007FFFFF7FFFFF7FFFFF7FFFFF18287EA71E>I<007F000001FFC00007FFF0
000FFFF8001FC1F8003E007C003C003E0078003E0038003E0010003E0000003E0000003E
0000003C0000007C000000FC000001F8000007F00000FFE00000FFC00000FFE00000FFF0
000001FC0000007C0000003E0000001F0000001F0000000F8000000F8000000F8000000F
8000000F8040000F8060001F00F0001F00F8003F007E007E003F81FC001FFFF8000FFFF0
0003FFE000007F000019297EA71E>I<0003F0000007F0000005F000000DF000000DF000
001DF0000039F0000039F0000079F0000079F00000F1F00000F1F00001E1F00003E1F000
03E1F00007C1F00007C1F0000F81F0000F81F0001F01F0001F01F0003E01F0007C01F000
7C01F000F801F000FFFFFF80FFFFFF80FFFFFF80FFFFFF800001F0000001F0000001F000
0001F0000001F0000001F0000001F0000001F0000001F0000001F00019277EA61E>I<3F
FFFC3FFFFC3FFFFC3FFFFC3E00003E00003E00003E00003E00003E00003E00003E00003E
00003E00003E3F003EFFC03FFFE03FFFF03FE1F83F807C3F003E3E003E00003E00001F00
001F00001F00001F00001F00001F00001F20001F60003E70003EF8007C7C00FC3F03F81F
FFF00FFFE007FF8000FE0018287EA61E>I<000FF000003FFC0000FFFC0001FFFC0003F8
0C0007E000000FC000000F8000001F0000001E0000003E0000003C0000007C0000007C00
00007C3FE000F8FFF000F9FFF800FBFFFC00FF807E00FF003E00FE003F00FC001F00FC00
1F00FC000F80F8000F80F8000F80F8000F80F8000F8078000F807C000F807C000F807C00
0F003E001F003E001F001F003E001F807C000FC1FC0007FFF80003FFF00001FFC000007F
000019297EA71E>I<FFFFFF80FFFFFF80FFFFFF80FFFFFF800000078000000F0000001E
0000003C0000007C00000078000000F0000001F0000001E0000003C0000007C000000780
00000F8000000F0000001F0000001F0000001E0000003E0000003E0000007C0000007C00
00007C00000078000000F8000000F8000000F8000000F8000000F8000001F0000001F000
0001F0000001F0000001F0000001F0000001F0000019277EA61E>I<007F000001FFC000
07FFF0000FFFF8001FC1FC003F007E003E003E007E003F007C001F007C001F007C001F00
7C001F007C001F003E003E003E003E001F007C000FC1F80007FFF00003FFE00003FFE000
0FFFF8001FC1FC003F007E003E003E007C001F007C001F00F8000F80F8000F80F8000F80
F8000F80F8000F80F8000F807C001F007C001F007E003F003F007E001FC1FC000FFFF800
07FFF00003FFE000007F000019297EA71E>I<007F000001FFC00003FFE0000FFFF0000F
C1F8001F007C003E007C007C003E007C001E007C001F00F8001F00F8001F00F8000F00F8
000F80F8000F80F8000F80F8000F80F8001F807C001F807C001F807E003F803E007F803F
00FF801FFFEF800FFFCF8007FF8F8003FE1F0000001F0000001F0000001E0000003E0000
003E0000007C0000007C000000F8001801F0001E07E0003FFFC0001FFF80000FFE000003
F8000019297EA71E>I<0001F000000003F800000003F800000007FC00000007BC000000
07BC0000000F3E0000000F1E0000000F1E0000001F1F0000001E1F0000001E0F0000003E
0F8000003C0F8000003C078000007C07C000007807C00000F803E00000F803E00000F003
E00001F001F00001F001F00001E001F00003E000F80003E000F80003C000F80007FFFFFC
0007FFFFFC000FFFFFFE000F80003E000F80003E001F00003F001F00001F001E00001F00
3E00000F803E00000F803C00000F807C000007C07C000007C078000007C0F8000003E0F8
000003E0232A7EA928>65 D<0001FF00000FFFE0003FFFF8007FFFF800FE01F801F80030
03F0001007C000000F8000001F8000001F0000003E0000003E0000007E0000007C000000
7C0000007C000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
F8000000F8000000F80000007C0000007C0000007C0000007E0000003E0000003E000000
1F0000001F8000000F80000007C0000003F0000401F8001C00FE00FC007FFFFC003FFFF8
000FFFE00001FF001E2C7CAA26>67 D<FFFFF00000FFFFFC0000FFFFFF0000F8003FC000
F80007E000F80003F000F80001F800F80000FC00F800007C00F800003E00F800001E00F8
00001F00F800000F00F800000F80F800000F80F800000780F8000007C0F8000007C0F800
0007C0F8000007C0F8000007C0F8000007C0F8000007C0F8000007C0F8000007C0F80000
07C0F800000780F800000F80F800000F80F800000F80F800001F00F800001F00F800003E
00F800007E00F800007C00F80000F800F80003F000F80007E000F8003FC000FFFFFF0000
FFFFFE0000FFFFF00000222A7BA92B>I<FFFFFFE0FFFFFFE0FFFFFFE0FFFFFFE0F80000
00F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000
00F8000000F8000000F8000000F8000000FFFFFF80FFFFFF80FFFFFF80FFFFFF80F80000
00F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000
00F8000000F8000000F8000000F8000000F8000000F8000000FFFFFFF0FFFFFFF0FFFFFF
F0FFFFFFF01C2A7BA924>I<FFFFFFC0FFFFFFC0FFFFFFC0FFFFFFC0F8000000F8000000
F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
F8000000F8000000F8000000F8000000FFFFFE00FFFFFE00FFFFFE00FFFFFE00F8000000
F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
1A2A7BA922>I<F800003EF800003EF800003EF800003EF800003EF800003EF800003EF8
00003EF800003EF800003EF800003EF800003EF800003EF800003EF800003EF800003EF8
00003EF800003EFFFFFFFEFFFFFFFEFFFFFFFEFFFFFFFEF800003EF800003EF800003EF8
00003EF800003EF800003EF800003EF800003EF800003EF800003EF800003EF800003EF8
00003EF800003EF800003EF800003EF800003EF800003EF800003EF800003E1F2A7BA92A
>72 D<F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8
F8F8F8F8F8F8F8F8F8052A7AA911>I<F800003F80F800007F00F80000FE00F80001FC00
F80003F800F80007F000F8000FE000F8001FC000F8003F8000F8007F0000F800FE0000F8
01FC0000F803F80000F803F00000F807E00000F80FC00000F81F800000F83F800000F87F
C00000F8FFE00000F9FBE00000FBF3F00000FFE1F80000FFC0F80000FF807C0000FF007E
0000FE003E0000FC001F0000F8001F8000F8000F8000F80007C000F80007E000F80003E0
00F80001F000F80001F800F80000FC00F800007C00F800007E00F800003F00F800001F00
F800000F80F800000FC0222A7BA92A>75 D<FE0000007F80FE0000007F80FE0000007F80
FF000000FF80FB000000EF80FB800001EF80FB800001EF80FB800001EF80F9C00003CF80
F9C00003CF80F9C00003CF80F8E000078F80F8E000078F80F8F0000F8F80F8F0000F8F80
F870000F0F80F878001F0F80F878001F0F80F838001E0F80F83C003E0F80F83C003E0F80
F81E007C0F80F81E007C0F80F80E00780F80F80F00F80F80F80F00F80F80F80700F00F80
F80781F00F80F80781F00F80F80381E00F80F803C3E00F80F803C3E00F80F801C3C00F80
F801E7C00F80F800E7800F80F800E7800F80F800E7800F80F8007F000F80F8007F000F80
F8007F000F80F8003E000F80F80000000F80292A7BA934>77 D<FF00003EFF00003EFF80
003EFF80003EFBC0003EFBC0003EF9E0003EF9E0003EF9F0003EF8F0003EF8F8003EF878
003EF87C003EF83C003EF83E003EF81E003EF81F003EF81F003EF80F803EF80F803EF807
C03EF807C03EF803E03EF803E03EF801F03EF801F03EF800F03EF800F83EF800783EF800
7C3EF8003C3EF8003E3EF8001E3EF8001F3EF8000F3EF8000F3EF80007BEF80007BEF800
03FEF80003FEF80001FEF80001FE1F2A7BA92A>I<0001FC0000000FFF8000003FFFE000
007FFFF00001FE03FC0003F800FE0007E0003F0007C0001F000F80000F801F000007C01F
000007C03E000003E03E000003E07C000001F07C000001F07C000001F078000000F0F800
0000F8F8000000F8F8000000F8F8000000F8F8000000F8F8000000F8F8000000F8F80000
00F8F8000000F8F8000000F87C000001F07C000001F07C000001F07E000003F03E000003
E03F000007E01F000007C01F80000FC00FC0001F8007E0003F0007F0007F0003F800FE00
01FE03FC0000FFFFF800003FFFE000000FFF80000001FC0000252C7DAA2C>I<FFFFE000
FFFFFC00FFFFFF00F8003F80F8000FC0F80007E0F80001E0F80001F0F80000F0F80000F8
F80000F8F80000F8F80000F8F80000F8F80000F8F80000F0F80001F0F80001F0F80003E0
F8000FC0F8003F80FFFFFF00FFFFFE00FFFFF000F8000000F8000000F8000000F8000000
F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
F8000000F8000000F8000000F8000000F80000001D2A7BA926>I<FFFFE000FFFFFC00FF
FFFF00F8003FC0F80007E0F80001F0F80000F8F80000F8F800007CF800007CF800007CF8
00007CF800007CF800007CF80000F8F80000F8F80001F0F80007F0F8003FE0FFFFFF80FF
FFFF00FFFFFC00FFFFF000F801F000F800F800F8007800F8007C00F8003C00F8003E00F8
001F00F8001F00F8000F80F8000780F80007C0F80003E0F80003E0F80001F0F80001F0F8
0000F8F800007CF800007CF800003E1F2A7BA927>82 D<007FC00001FFF80007FFFE000F
FFFF001FC07F003F000F007E0006007C0000007C000000F8000000F8000000F8000000F8
000000F8000000FC0000007E0000007F0000003F8000001FF800000FFF800007FFE00003
FFF80000FFFC00000FFE000000FF0000003F0000001F8000000F8000000FC0000007C000
0007C0000007C0000007C0000007C0000007C000000F8060000F80F0001F00FC003F00FF
80FE007FFFFC001FFFF80007FFE00000FF80001A2C7DAA21>I<FFFFFFFFF0FFFFFFFFF0
FFFFFFFFF0FFFFFFFFF00000F800000000F800000000F800000000F800000000F8000000
00F800000000F800000000F800000000F800000000F800000000F800000000F800000000
F800000000F800000000F800000000F800000000F800000000F800000000F800000000F8
00000000F800000000F800000000F800000000F800000000F800000000F800000000F800
000000F800000000F800000000F800000000F800000000F800000000F800000000F80000
0000F800000000F800000000F800000000F80000242A7EA929>I<F8000000F8FC000000
F87C000001F07C000001F03E000003E03E000003E03E000003E01F000007C01F000007C0
1F800007C00F80000F800F80000F8007C0000F0007C0001F0007C0001F0003E0003E0003
E0003E0003E0003E0001F0007C0001F0007C0000F800780000F800F80000F800F800007C
00F000007C01F000007C01F000003E03E000003E03E000001E03C000001F07C000001F07
C000000F078000000F8F8000000F8F800000078F00000007CF00000003DE00000003DE00
000003FE00000001FC00000001FC00000001FC0000252A7FA928>86
D<F80001FC0000F8F80003FC0000F8FC0003FE0000F87C0003FE0001F07C0003DE0001F0
7C0007DE0001F03E0007DF0001E03E00079F0003E03E00078F0003E03E000F8F0003E01F
000F8F8003C01F000F0F8007C01F000F078007C01F001F07C007C00F801F07C007800F80
1E07C00F800F801E03C00F800F803E03E00F8007C03C03E00F0007C03C03E01F0007C03C
01E01F0003C07C01F01E0003E07801F01E0003E07800F03E0003E07800F03E0001E0F800
F03C0001E0F000F83C0001F0F000787C0001F0F000787C0000F0F00078780000F1E0007C
780000F9E0003C780000F9E0003CF8000079C0003CF0000079C0003CF0000079C0001CF0
00007BC0001EF000003B80001EE000003F80001FE000003F80000FE000001F80000FC000
001F00000FC000352A7FA938>I<01FE000FFF803FFFC03FFFE03C03F03001F00001F800
00F80000F80000F80000F80000F8007FF807FFF81FFFF83FE0F87F00F8FC00F8F800F8F8
00F8F800F8FC01F87E07F87FFFF83FFFF81FFCF80FE0F8151B7E9A1D>97
D<F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F800
00F80000F80000F80000F83F00F9FFC0FBFFE0FFFFF0FF07F0FC01F8F800FCF8007CF800
7CF8007EF8003EF8003EF8003EF8003EF8003EF8003EF8003EF8007CF8007CF8007CFC00
F8FC01F8FF07F0FFFFE0FBFFC0F9FF80F87E00172A7BA91F>I<007FC001FFF007FFFC0F
FFFC1FC07C1F00083E00007C00007C00007C0000F80000F80000F80000F80000F80000F8
0000F800007C00007C00007E00003E00001F000C1FC07C0FFFFC07FFFC01FFF0007F8016
1B7E9A1B>I<00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E
00003E00003E00003E00003E00003E00FC3E03FF3E07FFFE0FFFFE1FC1FE3F007E3E003E
7C003E7C003EFC003EF8003EF8003EF8003EF8003EF8003EF8003EF8003EFC003E7C003E
7C003E3E007E3F00FE1FC1FE0FFFFE07FFBE03FF3E00FC3E172A7EA91F>I<007E0003FF
8007FFC00FFFE01F83F03F00F03E00787C00787C003878003CFFFFFCFFFFFCFFFFFCFFFF
FCF80000F80000F800007800007C00007C00003E00003F000C1FC07C0FFFFC07FFFC01FF
F0007F80161B7E9A1B>I<001FC0007FC000FFC001FFC003F00003E00007C00007C00007
C00007C00007C00007C00007C00007C00007C000FFFE00FFFE00FFFE0007C00007C00007
C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007
C00007C00007C00007C00007C00007C00007C00007C00007C00007C000122A7FA912>I<
00F8078003FE7FC00FFFFFC01FFFFFC01F07C0003E03E0003E03E0007C01F0007C01F000
7C01F0007C01F0007C01F0007C01F0003E03E0003E03E0001F07C0001FFFC0003FFF8000
3BFE000038F8000078000000780000003C0000003FFFC0003FFFF8001FFFFC001FFFFE00
3FFFFF007C007F00F8001F80F8000F80F8000F80F8000F80FC001F807E003F003F80FE00
3FFFFE000FFFF80007FFF00000FF80001A287E9A1E>I<F80000F80000F80000F80000F8
0000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F83F00F8
FF80FBFFC0FFFFE0FF07E0FE03F0FC01F0FC01F0FC01F0F801F0F801F0F801F0F801F0F8
01F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F8
01F0F801F0142A7BA91F>I<F8F8F8F8F800000000000000000000F8F8F8F8F8F8F8F8F8
F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8052A7CA90E>I<F8F8F8F8F8F8F8F8F8F8F8
F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8052A7CA90E
>108 D<F83F003F00F8FFC0FFC0FBFFE3FFE0FFFFF7FFF0FF83F783F0FE01FE01F8FC00
FC00F8FC00FC00F8FC00FC00F8F800F800F8F800F800F8F800F800F8F800F800F8F800F8
00F8F800F800F8F800F800F8F800F800F8F800F800F8F800F800F8F800F800F8F800F800
F8F800F800F8F800F800F8F800F800F8F800F800F8F800F800F8F800F800F8251B7B9A30
>I<F83F00F8FF80FBFFC0FFFFE0FF07E0FE03F0FC01F0FC01F0FC01F0F801F0F801F0F8
01F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F8
01F0F801F0F801F0F801F0141B7B9A1F>I<007F000001FFC00007FFF0000FFFF8001FC1
FC003F007E003E003E007C001F007C001F0078000F00F8000F80F8000F80F8000F80F800
0F80F8000F80F8000F80F8000F807C001F007C001F007E003F003E003E003F007E001FC1
FC000FFFF80007FFF00001FFC000007F0000191B7E9A1E>I<F83F00F9FFC0FBFFE0FFFF
F0FF07F0FC01F8F800FCF800FCF8007CF8007EF8003EF8003EF8003EF8003EF8003EF800
3EF8003EF8007CF8007CF800FCFC00F8FC03F8FF07F0FFFFE0FBFFC0F9FF80F87E00F800
00F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F800001727
7B9A1F>I<F838F8F8F9F8FBF8FFC0FF00FE00FE00FC00FC00F800F800F800F800F800F8
00F800F800F800F800F800F800F800F800F800F800F8000D1B7B9A14>114
D<03FC001FFF803FFFC07FFFC07C07C0F80080F80000F80000F80000FC00007F80007FF8
003FFE001FFF0007FF8000FFC0000FE00007E00003E00003E04003E0E007E0FC0FC0FFFF
C07FFF801FFE0003F800131B7E9A17>I<07C00007C00007C00007C00007C00007C00007
C000FFFFC0FFFFC0FFFFC007C00007C00007C00007C00007C00007C00007C00007C00007
C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C04007E1C003
FFE003FFE001FF8000FC0013227FA116>I<F801F0F801F0F801F0F801F0F801F0F801F0
F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0F801F0
F801F0F801F0F803F0F803F0FC0FF0FFFFF07FFDF03FF9F01FC1F0141B7B9A1F>I<F800
0F80FC000F807C001F007C001F007E001F003E003E003E003E001F003C001F007C001F00
7C000F8078000F80F8000F80F80007C0F00007C1F00007C1F00003E1E00003E3E00001E3
C00001E3C00001F3C00000F7800000F7800000F78000007F0000007F0000007F0000191B
7F9A1C>I<F800FC007CF801FC007C7C01FE00787C01DE00F87C01DE00F87C03DE00F83E
03CF00F03E03CF01F03E038F01F03E078F01F01F078F83E01F078783E01F070783E00F0F
0783C00F8F07C7C00F8F03C7C00F8E03C7C0078E03C780079E01C780079E01E78003DC01
EF0003DC01EF0003DC00EF0003D800EF0001F800FE0001F800FE0001F8007E00261B7F9A
29>I<7C000FC03E001F803F001F001F803E000F807C0007C0FC0003E0F80001F1F00001
FBE00000FFC000007FC000003F8000001F0000001F0000003F8000007FC00000FBC00000
F3E00001F1F00003E0F80007C07C000F807C000F803E001F001F003E000F807E000FC0FC
0007E01B1B809A1C>I<F8000F80FC000F807C001F007E001F003E003E003E003E001F00
3E001F007C001F007C000F807C000F80F80007C0F80007C0F00007C1F00003E1F00003E1
E00001E1E00001E3E00001F3C00000F3C00000F38000007380000073800000370000003F
0000003E0000001E0000001E0000003C0000003C0000003C0000007800000078000000F0
000000F000007FE000007FE000007FC000007F00000019277F9A1C>I<FFFFF8FFFFF8FF
FFF8FFFFF00003F00007E00007C0000FC0001F80001F00003E00007E0000FC0000F80001
F80003F00003E00007C0000FC0001F80001F00003F00007E00007FFFFCFFFFFCFFFFFCFF
FFFC161B7E9A1A>I E /Fo 15 122 df<07E00FF03FFC3FFC7FFEFFFFFFFFFFFFFFFFFF
FFFFFF7FFE3FFC3FFC0FF007E01010788F21>46 D<000001E00000000003F0000000000F
C33B>49 D<0000FFE00000000FFFFE0000003FFFFFC00000FFFFFFF00003FFFFFFFC0007
FFFFFFFFE0FFFFFFFFFFE0FFFFFFFFFFE02E447AC33B>I<FFFFFFE0000000000003FFFF
FFF00003C00007FFFFFFFF68477CC671>77 D<0007FFFC000000007FFFFFC0000001FFFF
03FFFC007FFFF001FFFC0003FF80007FF8362E7DAD3A>97 D<00001FFFC0000000FFFFF8
000007FFFFFE00001FFFFFFF80007FFC00FFC000FFE001FFC001FFC003FFE003FF8003FF
E007FF0003FFE00FFE0003FFE00FFE0003FFE01FFC0001FFC01FFC0001FFC03FFC0000FF
803FFC00003E007FF8000000007FF8000000007FF800000000FFF800000000FFF8000000
00FFF800000000FFF800000000FFF800000000FFF800000000FFF800000000FFF8000000
00FFF800000000FFF8000000007FF8000000007FF8000000007FFC000000003FFC000000
003FFC000000001FFC000000F81FFE000000F80FFE000000F80FFF000001F007FF800003
F003FFC00007E001FFE0000FC000FFF0001F80007FFE00FF00001FFFFFFE000007FFFFF8
000000FFFFE00000001FFE00002D2E7CAD35>99 D<00001FFE00000001FFFFE0000007FF
FFF800001FFFFFFE00007FFC07FF0000FFE001FF8001FFC0007FC003FF80003FE007FF00
003FF00FFE00001FF01FFE00000FF81FFC00000FF83FFC00000FFC3FFC000007FC7FFC00
0007FC7FF8000007FC7FF8000007FE7FF8000007FEFFF8000007FEFFF8000007FEFFFFFF
FFFFFEFFFFFFFFFFFEFFFFFFFFFFFEFFFFFFFFFFFCFFF800000000FFF800000000FFF800
000000FFF8000000007FF8000000007FF8000000007FFC000000003FFC000000003FFC00
0000003FFC0000001C1FFE0000003E0FFE0000003E07FF0000007E07FF000000FC03FF80
0001F801FFC00003F0007FF0001FE0003FFE00FFC0001FFFFFFF800007FFFFFE000000FF
FFF80000000FFF80002F2E7DAD36>101 D<000000FFC000000007FFF80000003FFFFC00
3FFFFFF800003FFFFFF800003FFFFFF800002A487DC724>I<00FC0001FE0003FF0007FF
800FFFC01FFFE01FFFE01FFFE01FFFE01FFFE01FFFE00FFFC007FF8003FF0001FE0000FC
00000000000000000000000000000000000000000000000000000000000000000000007F
C0FFFFC0FFFFC0FFFFC0FFFFC0FFFFC003FFC001FFC001FFC001FFC001FFC001FFC001FF
C001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FF
C001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FFC001FF
C001FFC001FFC001FFC001FFC0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18497CC820>105
D<007FC000FFFFC000FFFFC000FFFFC000FFFFC000FFFFC00003FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC00001FFC0
0001FFC00001FFC00001FFC00001FFC000FFFFFF80FFFFFF80FFFFFF80FFFFFF80FFFFFF
8019487CC720>108 D<007FC001FFC00000FFFFC00FFFF80000FFFFC03FFFFE0000FFFF
FFE0FFFFFFC07FFFFFE0FFFFFFC07FFFFFE03B2E7CAD42>110 D<00000FFF0000000000
FFFF80000007FFFFFE00000000FFFFF0000000000FFF000000342E7DAD3B>I<00FF803F
8000FFFF80FFF000FFFF83FFFC00FFFF87FFFE00FFFF8FC3FF00FFFF8F07FF0003FF9E0F
FF8001FFBC0FFF8001FFB80FFF8001FFF80FFF8001FFF00FFF8001FFF007FF0001FFF007
FF0001FFE003FE0001FFE000F80001FFE000000001FFE000000001FFC000000001FFC000
000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000
000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000
000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000000001FFC000
000001FFC000000001FFC000000001FFC000000001FFC0000000FFFFFFE00000FFFFFFE0
0000FFFFFFE00000FFFFFFE00000FFFFFFE00000292E7CAD31>114
D<000FFF00E0007FFFF3E001FFFFFFE007FFFFFFE00FF800FFE01FC0001FE03F80000FE0
3F000007E07F000003E07F000003E0FF000003E0FF000003E0FF800003E0FFC0000000FF
F0000000FFFE000000FFFFF800007FFFFFC0007FFFFFF0003FFFFFFC001FFFFFFF000FFF
FFFF8007FFFFFFC003FFFFFFE000FFFFFFF0003FFFFFF00003FFFFF800001FFFF8000000
FFFC0000001FFC7800000FFCF8000007FCF8000003FCFC000003FCFC000003FCFE000003
F8FE000003F8FF000003F8FF800007F0FFC0000FF0FFF0001FE0FFFC00FFC0FFFFFFFF80
FC7FFFFE00F81FFFF800E003FF8000262E7CAD2F>I<7FFFFFC000FFFF807FFFFFC000FF
000001FE00000000000039427EAD3F>121 D E /Fp 8 117 df<0003FF8000001FFFF000
007FFFFE0000FE03FF0001F000FF8003C000FFC00780007FE00FF0007FF00FF8007FF01F
FC007FF81FFE007FF81FFE007FF81FFE007FF81FFE007FF81FFE007FF80FFC007FF007F8
007FF003F0007FF0000000FFE0000000FFC0000001FF80000001FF00000003FE00000007
FC0000001FF000000FFFC000000FFF8000000FFFF800000003FE00000000FF800000007F
E00000003FF00000003FF80000003FFC0000001FFC0000001FFE0000001FFE0200001FFF
1FC0001FFF3FE0001FFF7FF0001FFF7FF0001FFFFFF8001FFFFFF8001FFFFFF8001FFEFF
F8001FFEFFF0001FFE7FF0003FFC7FE0003FFC3FC0003FF81F80007FF01FE000FFE007FC
03FFC003FFFFFF0001FFFFFE00003FFFF0000007FF800028397CB731>51
D<0000001FFF000030000001FFFFE000F000000FFFFFFC01F000007FFFFFFE03F00001FF
FFFFFC0000000001FFFFF000000000001FFF0000003C3D7BBB47>67
D<001FFF00000001FFFFF0000003FFFFFC000007F007FE00000FF801FF00001FFC00FF80
001FFC007FC0001FFC007FE0001FFC003FE0000FF8003FF0000FF8003FF00007F0003FF0
0001C0003FF0000000003FF0000000003FF0000000003FF0000000FFFFF000000FFFFFF0
00007FF83FF00001FF803FF00007FE003FF0000FF8003FF0001FF0003FF0003FE0003FF0
007FE0003FF0007FE0003FF000FFC0003FF000FFC0003FF000FFC0003FF000FFC0003FF0
00FFC0007FF0007FE0007FF0007FE000DFF0003FF0039FF8001FFC0F0FFFF007FFFE0FFF
F001FFFC07FFF0003FE000FFF02C267DA530>97 D<0001FFC000000FFFF800003FFFFE00
00FF80FF0001FE003F8007FC001FC00FF8000FE00FF8000FF01FF00007F03FF00007F83F
F00007F87FE00007F87FE00003FC7FE00003FC7FE00003FCFFE00003FCFFFFFFFFFCFFFF
FFFFFCFFFFFFFFFCFFE0000000FFE0000000FFE0000000FFE00000007FE00000007FE000
00007FE00000003FE00000003FF000003C1FF000003C1FF000003C0FF800007807FC0000
F803FE0001F001FF0007E000FFC03FC0003FFFFF000007FFFC000000FFE00026267DA52D
>101 D<00FF00000000FFFF00000000FFFF00000000FFFF00000000FFFF0000000007FF
FC3FFFFF303C7CBB37>104 D<00FF01FF8000FFFF0FFFF000FFFF3FFFFC00FFFFFE03FF
00FFFFFC000000FFFFFC000000FFFFFC00000030377DA537>112
D<00FE03F000FFFE0FFE00FFFE1FFF00FFFE3C3F80FFFE707FC007FE60FFE003FEE0FFE0
03FEC0FFE003FFC0FFE003FF807FC003FF807FC003FF803F8003FF800E0003FF00000003
FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF
00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00000003FF00
000003FF00000003FF00000003FF00000003FF00000003FF000000FFFFFE0000FFFFFE00
00FFFFFE0000FFFFFE000023267DA529>114 D<00078000000780000007800000078000
00078000000F8000000F8000000F8000000F8000001F8000001F8000003F8000003F8000
007F800000FF800001FF800007FF80001FFFFFF0FFFFFFF0FFFFFFF0FFFFFFF001FF8000
01FF800001FF800001FF800001FF800001FF800001FF800001FF800001FF800001FF8000
01FF800001FF800001FF800001FF800001FF800001FF800001FF800001FF800001FF8000
01FF803C01FF803C01FF803C01FF803C01FF803C01FF803C01FF803C01FF803C00FF8078
00FFC078007FC070003FE0E0001FFFC00007FF800001FF001E377EB626>116
D E /Fq 83 124 df<001F83E000F06E3001C078780380F8780300F03007007000070070
000700700007007000070070000700700007007000FFFFFF800700700007007000070070
000700700007007000070070000700700007007000070070000700700007007000070070
000700700007007000070070000700700007007000070070007FE3FF001D20809F1B>11
D<003F0000E0C001C0C00381E00701E00701E00700000700000700000700000700000700
00FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700
E00700E00700E00700E00700E00700E00700E00700E07FC3FE1720809F19>I<003FE000
E0E001C1E00381E00700E00700E00700E00700E00700E00700E00700E00700E0FFFFE007
00E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E007
00E00700E00700E00700E00700E00700E07FE7FE1720809F19>I<001F81F80000F04F04
0001C07C06000380F80F000300F00F000700F00F00070070000007007000000700700000
070070000007007000000700700000FFFFFFFF0007007007000700700700070070070007
007007000700700700070070070007007007000700700700070070070007007007000700
700700070070070007007007000700700700070070070007007007000700700700070070
07007FE3FE3FF02420809F26>I<001F81FF0000F06F070001C07C0F000380F80F000300
F00700070070070007007007000700700700070070070007007007000700700700070070
0700FFFFFFFF000700700700070070070007007007000700700700070070070007007007
000700700700070070070007007007000700700700070070070007007007000700700700
070070070007007007000700700700070070070007007007007FE3FE3FF02420809F26>
I<70F8F8F8F8F8F8F8707070707070707070702020202020000000000070F8F8F8700521
7CA00D>33 D<7038F87CFC7EFC7E743A0402040204020804080410081008201040200F0E
7E9F17>I<00780000008400000184000003020000070200000702000007020000070200
00070400000704000007080000070800000310000003A00FFC03C003E0038001C001C000
8001C0010003E0010004E0020008F00200187004003078080070380800701C1000F01E10
00F00E2000F0074000F003C0087003C0087801C010380670301C18386007E00F801E227E
A023>38 D<70F8FCFC74040404080810102040060E7C9F0D>I<00200040008001000200
06000C000C00180018003000300030007000600060006000E000E000E000E000E000E000
E000E000E000E000E000E0006000600060007000300030003000180018000C000C000600
020001000080004000200B2E7DA112>I<800040002000100008000C0006000600030003
0001800180018001C000C000C000C000E000E000E000E000E000E000E000E000E000E000
E000E000C000C000C001C001800180018003000300060006000C00080010002000400080
000B2E7DA112>I<01800180018001800180C183F18F399C0FF003C003C00FF0399CF18F
C1830180018001800180018010147DA117>I<0006000000060000000600000006000000
060000000600000006000000060000000600000006000000060000000600000006000000
06000000060000FFFFFFF0FFFFFFF0000600000006000000060000000600000006000000
060000000600000006000000060000000600000006000000060000000600000006000000
0600001C207D9A23>I<70F8FCFC74040404080810102040060E7C840D>I<FFC0FFC00A02
7F8A0F>I<70F8F8F87005057C840D>I<000100030003000600060006000C000C000C0018
0018001800300030003000600060006000C000C000C00180018001800300030003000600
060006000C000C000C00180018001800300030003000600060006000C000C000C000102D
7DA117>I<03F0000E1C001C0E00180600380700700380700380700380700380F003C0F0
03C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C070
03807003807003807807803807001806001C0E000E1C0003F000121F7E9D17>I<018003
800F80F38003800380038003800380038003800380038003800380038003800380038003
800380038003800380038003800380038007C0FFFE0F1E7C9D17>I<03F0000C1C00100E
00200700400780800780F007C0F803C0F803C0F803C02007C00007C0000780000780000F
00000E00001C0000380000700000600000C0000180000300000600400C00401800401000
803FFF807FFF80FFFF80121E7E9D17>I<03F0000C1C00100E00200F00780F8078078078
0780380F80000F80000F00000F00000E00001C0000380003F000003C00000E00000F0000
07800007800007C02007C0F807C0F807C0F807C0F00780400780400F00200E001C3C0003
F000121F7E9D17>I<000600000600000E00000E00001E00002E00002E00004E00008E00
008E00010E00020E00020E00040E00080E00080E00100E00200E00200E00400E00C00E00
FFFFF0000E00000E00000E00000E00000E00000E00000E0000FFE0141E7F9D17>I<1803
001FFE001FFC001FF8001FE00010000010000010000010000010000010000011F000161C
00180E001007001007800003800003800003C00003C00003C07003C0F003C0F003C0E003
80400380400700200600100E000C380003E000121F7E9D17>I<007C000182000701000E
03800C07801C0780380300380000780000700000700000F1F000F21C00F40600F80700F8
0380F80380F003C0F003C0F003C0F003C0F003C07003C07003C070038038038038070018
07000C0E00061C0001F000121F7E9D17>I<4000007FFFC07FFF807FFF80400100800200
80020080040000080000080000100000200000200000400000400000C00000C00001C000
018000038000038000038000038000078000078000078000078000078000078000078000
030000121F7D9D17>I<03F0000C0C001006003003002001806001806001806001807001
807803003E03003F06001FC8000FF00003F80007FC000C7E00103F00300F806003804001
C0C001C0C000C0C000C0C000C0C000806001802001001002000C0C0003F000121F7E9D17
>I<03F0000E18001C0C00380600380700700700700380F00380F00380F003C0F003C0F0
03C0F003C0F003C07007C07007C03807C0180BC00E13C003E3C000038000038000038000
0700300700780600780E00700C002018001070000FC000121F7E9D17>I<70F8F8F87000
00000000000000000070F8F8F87005147C930D>I<70F8F8F87000000000000000000000
70F0F8F878080808101010202040051D7C930D>I<7FFFFFE0FFFFFFF000000000000000
00000000000000000000000000000000000000000000000000FFFFFFF07FFFFFE01C0C7D
9023>61 D<0FC0307040384038E03CF03CF03C603C0038007000E000C001800180010003
000200020002000200020002000000000000000000000007000F800F800F8007000E207D
9F15>63 D<000100000003800000038000000380000007C0000007C0000007C0000009E0
000009E0000009E0000010F0000010F0000010F00000207800002078000020780000403C
0000403C0000403C0000801E0000801E0000FFFE0001000F0001000F0001000F00020007
800200078002000780040003C00E0003C01F0007E0FFC03FFE1F207F9F22>65
D<FFFFE0000F80380007801E0007801F0007800F0007800F8007800F8007800F8007800F
8007800F8007800F0007801F0007801E0007803C0007FFF00007803C0007801E0007800F
0007800F8007800780078007C0078007C0078007C0078007C0078007C00780078007800F
8007800F0007801F000F803C00FFFFF0001A1F7E9E20>I<000FC040007030C001C009C0
038005C0070003C00E0001C01E0000C01C0000C03C0000C07C0000407C00004078000040
F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
780000007C0000407C0000403C0000401C0000401E0000800E0000800700010003800200
01C0040000703800000FC0001A217D9F21>I<FFFFE0000F803C0007801E000780070007
800380078003C0078001E0078001E0078001F0078000F0078000F0078000F8078000F807
8000F8078000F8078000F8078000F8078000F8078000F8078000F8078000F0078000F007
8000F0078001E0078001E0078003C0078003800780070007800E000F803C00FFFFE0001D
1F7E9E23>I<FFFFFF000F800F0007800300078003000780010007800180078000800780
008007800080078080800780800007808000078080000781800007FF8000078180000780
800007808000078080000780800007800020078000200780002007800040078000400780
0040078000C0078000C0078001800F800F80FFFFFF801B1F7E9E1F>I<FFFFFF000F800F
000780030007800300078001000780018007800080078000800780008007800080078080
000780800007808000078080000781800007FF8000078180000780800007808000078080
000780800007800000078000000780000007800000078000000780000007800000078000
000FC00000FFFE0000191F7E9E1E>I<FFF8FFF80F800F8007800F0007800F0007800F00
07800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F00
07FFFF0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F00
07800F0007800F0007800F0007800F0007800F0007800F000F800F80FFF8FFF81D1F7E9E
22>72 D<FFFC0FC007800780078007800780078007800780078007800780078007800780
07800780078007800780078007800780078007800780078007800FC0FFFC0E1F7F9E10>
I<0FFFC0007C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C
00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00203C
00F83C00F83C00F83C00F0380040780040700030E0000F800012207E9E17>I<FFFE000F
C00007800007800007800007800007800007800007800007800007800007800007800007
800007800007800007800007800007800007800007800207800207800207800207800607
800407800407800C07801C0F807CFFFFFC171F7E9E1C>76 D<FF80001FF80F80001F8007
80001F0005C0002F0005C0002F0005C0002F0004E0004F0004E0004F000470008F000470
008F000470008F000438010F000438010F000438010F00041C020F00041C020F00041C02
0F00040E040F00040E040F00040E040F000407080F000407080F000407080F000403900F
000403900F000401E00F000401E00F000401E00F000E00C00F001F00C01F80FFE0C1FFF8
251F7E9E2A>I<FF803FF807C007C007C0038005E0010005E0010004F001000478010004
780100043C0100043C0100041E0100040F0100040F010004078100040781000403C10004
01E1000401E1000400F1000400F1000400790004003D0004003D0004001F0004001F0004
000F0004000700040007000E0003001F000300FFE001001D1F7E9E22>I<001F800000F0
F00001C0380007801E000F000F000E0007001E0007803C0003C03C0003C07C0003E07800
01E0780001E0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F800
01F0F80001F0780001E07C0003E07C0003E03C0003C03C0003C01E0007800E0007000F00
0F0007801E0001C0380000F0F000001F80001C217D9F23>I<FFFFE0000F80780007801C
0007801E0007800F0007800F8007800F8007800F8007800F8007800F8007800F8007800F
0007801E0007801C000780780007FFE00007800000078000000780000007800000078000
0007800000078000000780000007800000078000000780000007800000078000000FC000
00FFFC0000191F7E9E1F>I<FFFF80000F80F0000780780007803C0007801E0007801E00
07801F0007801F0007801F0007801F0007801E0007801E0007803C00078078000780F000
07FF80000781C0000780E0000780F0000780700007807800078078000780780007807C00
07807C0007807C0007807C0407807E0407803E040FC01E08FFFC0F10000003E01E207E9E
21>82 D<07E0800C1980100780300380600180600180E00180E00080E00080E00080F000
00F000007800007F00003FF0001FFC000FFE0003FF00001F800007800003C00003C00001
C08001C08001C08001C08001C0C00180C00380E00300F00600CE0C0081F80012217D9F19
>I<7FFFFFE0780F01E0600F0060400F0020400F0020C00F0030800F0010800F0010800F
0010800F0010000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F
0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F
0000000F0000000F0000001F800007FFFE001C1F7E9E21>I<FFFC3FF80FC007C0078003
800780010007800100078001000780010007800100078001000780010007800100078001
000780010007800100078001000780010007800100078001000780010007800100078001
00078001000780010007800100038002000380020001C0020001C0040000E00800007018
0000382000000FC0001D207E9E22>I<FFF003FE1F8000F80F0000600F80006007800040
0780004003C0008003C0008003C0008001E0010001E0010001F0010000F0020000F00200
00F806000078040000780400003C0800003C0800003C0800001E1000001E1000001F3000
000F2000000F20000007C0000007C0000007C00000038000000380000003800000010000
1F207F9E22>I<FFF07FF81FF01F800FC007C00F00078003800F00078001000F0007C001
00078007C00200078007C00200078007C0020003C009E0040003C009E0040003C009E004
0003E010F00C0001E010F0080001E010F0080001F02078080000F02078100000F0207810
0000F0403C10000078403C20000078403C20000078C03E2000003C801E4000003C801E40
00003C801E4000001F000F8000001F000F8000001F000F8000001E00078000000E000700
00000E00070000000C000300000004000200002C207F9E2F>I<7FF83FF80FE00FC007C0
070003C0020001E0040001F00C0000F0080000781000007C1000003C2000003E4000001E
4000000F8000000F8000000780000003C0000007E0000005E0000009F0000018F8000010
780000207C0000603C0000401E0000801F0001800F0001000780020007C0070003C01F80
07E0FFE01FFE1F1F7F9E22>I<FFF003FF1F8000F80F8000600780004007C0004003E000
8001E0008001F0010000F0030000F80200007C0400003C0400003E0800001E0800001F10
00000FB0000007A0000007C0000003C0000003C0000003C0000003C0000003C0000003C0
000003C0000003C0000003C0000003C0000003C0000007C000007FFE00201F7F9E22>I<
FEFEC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
C0C0C0C0C0C0C0FEFE072D7CA10D>91 D<080410082010201040204020804080408040B8
5CFC7EFC7E7C3E381C0F0E7B9F17>I<FEFE060606060606060606060606060606060606
0606060606060606060606060606060606060606060606FEFE072D7FA10D>I<1FE00030
3000781800781C00300E00000E00000E00000E0000FE00078E001E0E00380E00780E00F0
0E10F00E10F00E10F01E10781E103867200F83C014147E9317>97
D<0E0000FE00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00
000E3E000EC3800F01C00F00E00E00E00E00700E00700E00780E00780E00780E00780E00
780E00780E00700E00700E00E00F00E00D01C00CC300083E0015207F9F19>I<03F80E0C
1C1E381E380C70007000F000F000F000F000F000F00070007000380138011C020E0C03F0
10147E9314>I<000380003F800003800003800003800003800003800003800003800003
8000038000038003E380061B801C0780380380380380700380700380F00380F00380F003
80F00380F00380F003807003807003803803803807801C07800E1B8003E3F815207E9F19
>I<03F0000E1C001C0E00380700380700700700700380F00380F00380FFFF80F00000F0
0000F000007000007000003800801800800C010007060001F80011147F9314>I<007C00
C6018F038F07060700070007000700070007000700FFF007000700070007000700070007
00070007000700070007000700070007000700070007007FF01020809F0E>I<0000E003
E3300E3C301C1C30380E00780F00780F00780F00780F00780F00380E001C1C001E380033
E0002000002000003000003000003FFE001FFF800FFFC03001E0600070C00030C00030C0
0030C000306000603000C01C038003FC00141F7F9417>I<0E0000FE00000E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E00000E3E000E43000E81800F01C0
0F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E01C0FFE7FC16207F9F19>I<1C001E003E001E001C0000000000000000
00000000000E007E000E000E000E000E000E000E000E000E000E000E000E000E000E000E
000E000E000E00FFC00A1F809E0C>I<00E001F001F001F000E000000000000000000000
0000007007F000F000700070007000700070007000700070007000700070007000700070
00700070007000700070007000706070F060F0C061803F000C28829E0E>I<0E0000FE00
000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0FF00E03
C00E03000E02000E04000E08000E10000E30000E70000EF8000F38000E1C000E1E000E0E
000E07000E07800E03800E03C00E03E0FFCFF815207F9F18>I<0E00FE000E000E000E00
0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00
0E000E000E000E000E000E000E000E00FFE00B20809F0C>I<0E1F01F000FE618618000E
81C81C000F00F00E000F00F00E000E00E00E000E00E00E000E00E00E000E00E00E000E00
E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E0
0E000E00E00E000E00E00E00FFE7FE7FE023147F9326>I<0E3E00FE43000E81800F01C0
0F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E01C0FFE7FC16147F9319>I<01F800070E001C03803801C03801C07000
E07000E0F000F0F000F0F000F0F000F0F000F0F000F07000E07000E03801C03801C01C03
80070E0001F80014147F9317>I<0E3E00FEC3800F01C00F00E00E00E00E00F00E00700E
00780E00780E00780E00780E00780E00780E00700E00F00E00E00F01E00F01C00EC3000E
3E000E00000E00000E00000E00000E00000E00000E00000E0000FFE000151D7F9319>I<
03E0800619801C05803C0780380380780380700380F00380F00380F00380F00380F00380
F003807003807803803803803807801C0B800E138003E380000380000380000380000380
000380000380000380000380003FF8151D7E9318>I<0E78FE8C0F1E0F1E0F0C0E000E00
0E000E000E000E000E000E000E000E000E000E000E000E00FFE00F147F9312>I<1F9030
704030C010C010C010E00078007F803FE00FF00070803880188018C018C018E030D0608F
800D147E9312>I<020002000200060006000E000E003E00FFF80E000E000E000E000E00
0E000E000E000E000E000E000E080E080E080E080E080610031001E00D1C7F9B12>I<0E
01C0FE1FC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E
01C00E01C00E01C00E01C00E03C00603C0030DC001F1FC16147F9319>I<FF83F81E01E0
1C00C00E00800E00800E008007010007010003820003820003820001C40001C40001EC00
00E80000E80000700000700000700000200015147F9318>I<FF9FE1FC3C0780701C0300
601C0380200E0380400E0380400E03C0400707C0800704C0800704E08003886100038871
0003C8730001D0320001D03A0000F03C0000E01C0000E01C0000601800004008001E147F
9321>I<7FC3FC0F01E00701C007018003810001C20000E40000EC00007800003800003C
00007C00004E000087000107000303800201C00601E01E01E0FF07FE1714809318>I<FF
83F81E01E01C00C00E00800E00800E008007010007010003820003820003820001C40001
C40001EC0000E80000E800007000007000007000002000002000004000004000004000F0
8000F08000F100006200003C0000151D7F9318>I<3FFF380E200E201C40384078407000
E001E001C00380078007010E011E011C0338027006700EFFFE10147F9314>I<FFFFFC16
01808C17>I E /Fr 46 122 df<00200040008001000300060004000C000C0018001800
3000300030007000600060006000E000E000E000E000E000E000E000E000E000E000E000
E000E000E0006000600060007000300030003000180018000C000C000400060003000100
0080004000200B327CA413>40 D<800040002000100018000C0004000600060003000300
01800180018001C000C000C000C000E000E000E000E000E000E000E000E000E000E000E0
00E000E000E000C000C000C001C0018001800180030003000600060004000C0018001000
2000400080000B327DA413>I<70F8FCFC7404040404080810102040060F7C840E>44
D<FFE0FFE00B027F8B10>I<70F8F8F87005057C840E>I<008003800F80F3800380038003
800380038003800380038003800380038003800380038003800380038003800380038003
8003800380038003800380038007C0FFFE0F217CA018>49 D<03F0000C1C001007002007
804003C04003C08003E0F003E0F801E0F801E0F801E02003E00003E00003C00003C00007
80000700000E00001C0000180000300000600000C0000180000100000200200400200800
201800603000403FFFC07FFFC0FFFFC013217EA018>I<000200000600000E00000E0000
1E00001E00002E00004E00004E00008E00008E00010E00020E00020E00040E00040E0008
0E00100E00100E00200E00200E00400E00800E00FFFFF8000E00000E00000E00000E0000
0E00000E00000E00001F0001FFF015217FA018>52 D<1000801E07001FFF001FFE001FF8
0013E00010000010000010000010000010000010000010F800130E001407001803801003
800001C00001C00001E00001E00001E00001E07001E0F001E0F001E0E001C08001C04003
C04003802007001006000C1C0003F00013227EA018>I<007E0001C1000300800601C00E
03C01C03C0180180380000380000780000700000700000F0F800F30C00F40600F40300F8
0380F801C0F001C0F001E0F001E0F001E0F001E0F001E07001E07001E07001E03801C038
01C01803801C03000C0600070C0001F00013227EA018>I<01F800060E00080300100180
2001802000C06000C06000C06000C07000C07801803E01003F02001FC4000FF80003F800
03FC00067F00083F80100F803007C06001C06000E0C000E0C00060C00060C00060C00060
6000406000C03000801803000E0E0003F00013227EA018>56 D<01F000060C000C060018
0700380380700380700380F001C0F001C0F001C0F001E0F001E0F001E0F001E0F001E070
01E07003E03803E01805E00C05E00619E003E1E00001C00001C00001C000038000038030
0300780700780600700C002018001030000FC00013227EA018>I<000180000001800000
0180000003C0000003C0000003C0000005E0000005E000000DF0000008F0000008F00000
10F800001078000010780000203C0000203C0000203C0000401E0000401E0000401E0000
800F0000800F0000FFFF000100078001000780030007C0020003C0020003C0040003E004
0001E0040001E00C0000F00C0000F03E0001F8FF800FFF20237EA225>65
D<0007E0100038183000E0063001C00170038000F0070000F00E0000701E0000701C0000
303C0000303C0000307C0000107800001078000010F8000000F8000000F8000000F80000
00F8000000F8000000F8000000F800000078000000780000107C0000103C0000103C0000
101C0000201E0000200E000040070000400380008001C0010000E0020000381C000007E0
001C247DA223>67 D<FFFFF0000F801E0007800700078003C0078001C0078000E0078000
F007800078078000780780007C0780003C0780003C0780003C0780003E0780003E078000
3E0780003E0780003E0780003E0780003E0780003E0780003E0780003C0780003C078000
7C0780007807800078078000F0078000E0078001E0078003C0078007000F801E00FFFFF8
001F227EA125>I<FFFFFFC00F8007C0078001C0078000C0078000400780004007800060
07800020078000200780002007802020078020000780200007802000078060000780E000
07FFE0000780E00007806000078020000780200007802000078020080780000807800008
078000100780001007800010078000300780003007800070078000E00F8003E0FFFFFFE0
1D227EA121>I<FFFFFFC00F8007C0078001C0078000C007800040078000400780006007
800020078000200780002007802020078020000780200007802000078060000780E00007
FFE0000780E0000780600007802000078020000780200007802000078000000780000007
8000000780000007800000078000000780000007800000078000000FC00000FFFE00001B
227EA120>I<FFFC3FFF0FC003F0078001E0078001E0078001E0078001E0078001E00780
01E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E007FF
FFE0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E00780
01E0078001E0078001E0078001E0078001E0078001E0078001E00FC003F0FFFC3FFF2022
7EA125>72 D<FFFC0FC00780078007800780078007800780078007800780078007800780
078007800780078007800780078007800780078007800780078007800780078007800FC0
FFFC0E227EA112>I<FFC00003FF0FC00003F007C00003E005E00005E005E00005E004F0
0009E004F00009E004F00009E004780011E004780011E004780011E0043C0021E0043C00
21E0043C0021E0041E0041E0041E0041E0040F0081E0040F0081E0040F0081E004078101
E004078101E004078101E00403C201E00403C201E00401E401E00401E401E00401E401E0
0400F801E00400F801E00400F801E004007001E00E007001E01F007003F0FFE0203FFF28
227EA12D>77 D<FF8007FF07C000F807C0007005E0002004F0002004F000200478002004
7C0020043C0020041E0020041F0020040F002004078020040780200403C0200401E02004
01E0200400F0200400F8200400782004003C2004003E2004001E2004000F2004000F2004
0007A0040003E0040003E0040001E0040001E0040000E00E0000601F000060FFE0002020
227EA125>I<FFFFF0000F803C0007800F0007800780078007C0078003C0078003E00780
03E0078003E0078003E0078003E0078003E0078003C0078007C00780078007800F000780
3C0007FFF000078000000780000007800000078000000780000007800000078000000780
00000780000007800000078000000780000007800000078000000FC00000FFFC00001B22
7EA121>80 D<FFFFE000000F803C000007800E00000780078000078007C000078003C000
078003E000078003E000078003E000078003E000078003E000078003C000078007C00007
8007800007800E000007803C000007FFE000000780700000078038000007801C00000780
1E000007800E000007800F000007800F000007800F000007800F000007800F800007800F
800007800F800007800F808007800FC080078007C0800FC003C100FFFC01E2000000007C
0021237EA124>82 D<03F0200C0C601802603001E07000E0600060E00060E00060E00020
E00020E00020F00000F000007800007F00003FF0001FFE000FFF0003FF80003FC00007E0
0001E00000F00000F0000070800070800070800070800070C00060C00060E000C0F000C0
C80180C6070081FC0014247DA21B>I<7FFFFFF878078078600780184007800840078008
40078008C007800C80078004800780048007800480078004000780000007800000078000
000780000007800000078000000780000007800000078000000780000007800000078000
000780000007800000078000000780000007800000078000000780000007800000078000
000FC00003FFFF001E227EA123>I<0FE0001838003C0C003C0E00180700000700000700
00070000FF0007C7001E07003C0700780700700700F00708F00708F00708F00F08781708
3C23900FC1E015157E9418>97 D<0E0000FE00001E00000E00000E00000E00000E00000E
00000E00000E00000E00000E00000E00000E00000E1F000E61C00E80600F00300E00380E
003C0E001C0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E001C0E003C0E00380F
00700C80600C41C0083F0017237FA21B>I<01FE000703000C07801C0780380300780000
700000F00000F00000F00000F00000F00000F00000F000007000007800403800401C0080
0C010007060001F80012157E9416>I<0000E0000FE00001E00000E00000E00000E00000
E00000E00000E00000E00000E00000E00000E00000E001F8E00704E00C02E01C01E03800
E07800E07000E0F000E0F000E0F000E0F000E0F000E0F000E0F000E07000E07800E03800
E01801E00C02E0070CF001F0FE17237EA21B>I<01FC000707000C03801C01C03801C078
01E07000E0F000E0FFFFE0F00000F00000F00000F00000F000007000007800203800201C
00400E008007030000FC0013157F9416>I<003C00C6018F038F030F0700070007000700
07000700070007000700FFF8070007000700070007000700070007000700070007000700
07000700070007000700070007807FF8102380A20F>I<00007001F198071E180E0E181C
07001C07003C07803C07803C07803C07801C07001C07000E0E000F1C0019F00010000010
00001800001800001FFE000FFFC00FFFE03800F0600030400018C00018C00018C0001860
00306000303800E00E038003FE0015217F9518>I<0E0000FE00001E00000E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E00000E00000E1F800E60C00E80E0
0F00700F00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070
0E00700E00700E00700E00700E0070FFE7FF18237FA21B>I<1C001E003E001E001C0000
0000000000000000000000000000000E00FE001E000E000E000E000E000E000E000E000E
000E000E000E000E000E000E000E000E000E00FFC00A227FA10E>I<01C003E003E003E0
01C00000000000000000000000000000000001E00FE001E000E000E000E000E000E000E0
00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E060E0
F0C0F18061803E000B2C82A10F>I<0E0000FE00001E00000E00000E00000E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E03FC0E01F00E01C00E01800E0200
0E04000E08000E10000E38000EF8000F1C000E1E000E0E000E07000E07800E03C00E01C0
0E01E00E00F00E00F8FFE3FE17237FA21A>I<0E1FC07F00FE60E183801E807201C00F00
3C00E00F003C00E00E003800E00E003800E00E003800E00E003800E00E003800E00E0038
00E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800
E00E003800E00E003800E0FFE3FF8FFE27157F942A>109 D<0E1F80FE60C01E80E00F00
700F00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00
700E00700E00700E00700E0070FFE7FF18157F941B>I<01FC000707000C01801800C038
00E0700070700070F00078F00078F00078F00078F00078F00078F000787000707800F038
00E01C01C00E038007070001FC0015157F9418>I<0E1F00FE61C00E80600F00700E0038
0E003C0E001C0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E003C0E003C0E0038
0F00700E80E00E41C00E3F000E00000E00000E00000E00000E00000E00000E00000E0000
0E0000FFE000171F7F941B>I<0E3CFE461E8F0F0F0F060F000E000E000E000E000E000E
000E000E000E000E000E000E000E000F00FFF010157F9413>114
D<0F8830786018C018C008C008E008F0007F803FE00FF001F8003C801C800C800CC00CC0
08E018D0308FC00E157E9413>I<02000200020002000600060006000E001E003E00FFF8
0E000E000E000E000E000E000E000E000E000E000E000E040E040E040E040E040E040708
030801F00E1F7F9E13>I<0E0070FE07F01E00F00E00700E00700E00700E00700E00700E
00700E00700E00700E00700E00700E00700E00700E00700E00F00E00F006017003827800
FC7F18157F941B>I<FF8FF8FF1E01E03C1C01C0180E01C0180E01E0100E01E010070260
20070270200702702003843040038438400384384001C8188001C81C8001C81C8000F00D
0000F00F0000F00F0000600600006006000060060020157F9423>119
D<FFC1FE1E00780E00300E00200E002007004007004003808003808003808001C10001C1
0000E20000E20000E2000074000074000038000038000038000010000010000020000020
00002000004000F04000F08000F180004300003C0000171F7F941A>121
D E /Fs 20 118 df<FFFF80FFFF80FFFF8011037F9016>45 D<FFFFFFE00000FFFFFFFC
33>68 D<FFFF80FFFF8007F00003E00003E00003E00003E00003E00003E00003E00003E0
0003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E0
0003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E0
0003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00007F0
00FFFF80FFFF8011317DB017>73 D<FFF00000007FF8FFF00000007FF807F00000007F00
7CB03D>77 D<FFFFFFC000FFFFFFF80007E0007E0003E0001F0003E000078003E00003C0
03E00001E003E00001F003E00001F003E00000F003E00000F803E00000F803E00000F803
E00000F803E00000F803E00000F803E00000F003E00001F003E00001E003E00003E003E0
0003C003E000078003E0001F0003E0007C0003FFFFF00003E000000003E000000003E000
000003E000000003E000000003E000000003E000000003E000000003E000000003E00000
0003E000000003E000000003E000000003E000000003E000000003E000000003E0000000
03E000000003E000000003E000000003E000000007F0000000FFFF800000FFFF80000025
317CB02D>80 D<007F802001FFE02007C078600F001C601E0006E03C0003E0380001E078
0000E0700000E070000060F0000060F0000060F0000020F0000020F0000020F8000020F8
0000007C0000007E0000003F0000003FC000001FF800000FFF800007FFF80003FFFC0000
FFFF00000FFF800000FFC000001FE0000007E0000003F0000001F0000000F0000000F800
0000F88000007880000078800000788000007880000078C0000078C0000070E00000F0E0
0000E0F00000E0F80001C0EC000380C7000700C1F01E00807FFC00800FF0001D337CB125
>83 D<00FE00000303C0000C00E00010007000100038003C003C003E001C003E001E003E
001E0008001E0000001E0000001E0000001E00000FFE0000FC1E0003E01E000F801E001F
001E003E001E003C001E007C001E00F8001E04F8001E04F8001E04F8003E04F8003E0478
003E047C005E043E008F080F0307F003FC03E01E1F7D9E21>97 D<003F8000E060038018
0700040F00041E001E1C003E3C003E7C003E7C0008780000F80000F80000F80000F80000
F80000F80000F80000F80000F800007800007C00007C00003C00011E00011E00020F0002
07000403801800E060003F80181F7D9E1D>99 D<000001E000003FE000003FE0000003E0
000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0
000001E0000001E0000001E0000001E0000001E0000001E0001F81E000F061E001C019E0
078005E00F0003E00E0003E01E0001E03C0001E03C0001E07C0001E0780001E0F80001E0
F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0F80001E0780001E0
780001E03C0001E03C0001E01C0001E01E0003E00E0005E0070009E0038011F000E061FF
003F81FF20327DB125>I<003F800000E0E0000380380007003C000E001E001E001E001C
000F003C000F007C000F0078000F8078000780F8000780F8000780FFFFFF80F8000000F8
000000F8000000F8000000F8000000F8000000780000007C0000003C0000003C0000801E
0000800E0001000F0002000780020001C00C0000F03000001FC000191F7E9E1D>I<0007
E0001C1000383800707C00E07C01E07C01C03803C00003C00003C00003C00003C00003C0
0003C00003C00003C00003C00003C00003C000FFFFC0FFFFC003C00003C00003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00007E0007FFF
007FFF0016327FB114>I<000000F0007F030801C1C41C0380E81C070070080F0078001E
003C001E003C003E003E003E003E003E003E003E003E003E003E003E003E001E003C001E
003C000F007800070070000780E00009C1C000087F000018000000180000001800000018
000000180000001C0000000E0000000FFFF80007FFFF0003FFFF800E000FC0180001E030
0000F070000070E0000038E0000038E0000038E0000038E0000038700000707000007038
0000E01C0001C00700070001C01C00003FE0001E2F7E9F21>I<07000F801F801F800F80
0700000000000000000000000000000000000000000000000780FF80FF800F8007800780
078007800780078007800780078007800780078007800780078007800780078007800780
07800780078007800FC0FFF8FFF80D307EAF12>105 D<0780FE001FC000FF83078060F0
00FF8C03C18078000F9001E2003C0007A001E4003C0007A000F4001E0007C000F8001E00
07C000F8001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E0007
8000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E000780
00F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000
F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0
001E000FC001F8003F00FFFC1FFF83FFF0FFFC1FFF83FFF0341F7E9E38>109
D<0780FE0000FF83078000FF8C03C0000F9001E00007A001E00007A000F00007C000F000
07C000F000078000F000078000F000078000F000078000F000078000F000078000F00007
8000F000078000F000078000F000078000F000078000F000078000F000078000F0000780
00F000078000F000078000F000078000F000078000F000078000F000078000F0000FC001
F800FFFC1FFF80FFFC1FFF80211F7E9E25>I<001FC00000F0780001C01C00070007000F
0007801E0003C01C0001C03C0001E03C0001E0780000F0780000F0780000F0F80000F8F8
0000F8F80000F8F80000F8F80000F8F80000F8F80000F8F80000F8780000F07C0001F03C
0001E03C0001E01E0003C01E0003C00F00078007800F0001C01C0000F07800001FC0001D
1F7E9E21>I<0783E0FF8C18FF907C0F907C07A07C07C03807C00007C00007C000078000
078000078000078000078000078000078000078000078000078000078000078000078000
0780000780000780000780000780000780000FC000FFFE00FFFE00161F7E9E19>114
D<01FC100E03301800F0300070600030E00030E00010E00010E00010F00010F800007E00
003FF0001FFF000FFFC003FFE0003FF00001F80000F880003C80003C80001CC0001CC000
1CE0001CE00018F00038F00030CC0060C301C080FE00161F7E9E1A>I<00400000400000
400000400000400000C00000C00000C00001C00001C00003C00007C0000FC0001FFFE0FF
FFE003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003
C00003C00003C00003C00003C00003C01003C01003C01003C01003C01003C01003C01003
C01001C02001E02000E0400078C0001F00142C7FAB19>I<078000F000FF801FF000FF80
1FF0000F8001F000078000F000078000F000078000F000078000F000078000F000078000
F000078000F000078000F000078000F000078000F000078000F000078000F000078000F0
00078000F000078000F000078000F000078000F000078000F000078000F000078001F000
078001F000078001F000038002F00003C004F00001C008F800007030FF80001FC0FF8021
1F7E9E25>I E /Ft 5 85 df<00000000C00000000000E00000000001E00000000003E0
0000000003E00000000007E00000000007E0000000000FE0000000000FE0000000001FE0
000000001FE00000000037E00000000067E00000000067E000000000C7E000000000C7F0
0000000183F00000000183F00000000303F00000000703F00000000603F00000000C03F0
0000000C03F00000001803F00000001803F00000003003F00000003003F00000006003F0
000000C003F0000000C003F00000018003F00000018003F8000003FFFFF8000003FFFFF8
0000060001F800000E0001F800000C0001F80000180001F80000180001F80000300001F8
0000300001F80000600001F80000E00001F80000C00001F80001C00001F80001C00001F8
0007C00001FC001FC00003FC00FFF8007FFFE0FFF8007FFFE02B327BB135>65
D<000FFFFFFE0000000FFFFFFF800000007F000FE00000007E0003F00000007E0000F800
F8007F000000FFFFFFFC000000FFFFFFE000000031317BB036>68
D<000FFFFFFFFC000FFFFFFFFC00007F0001FC00007E00007C00007E00003C00007E0000
3C00007E0000180000FC0000180000FC0000180000FC0000180000FC0000180001F80000
180001F80000180001F80000180001F80000180003F00080100003F00180000003F00180
000003F00180000007E00300000007E00300000007E00700000007E01F0000000FFFFE00
00000FFFFE0000000FC01E0000000FC00E0000001F800C0000001F800C0000001F800C00
00001F800C0000003F00180000003F00080000003F00000000003F00000000007E000000
00007E00000000007E00000000007E0000000000FC0000000000FC0000000000FC000000
0000FC0000000001F80000000001F80000000001F80000000003F800000000FFFFF00000
00FFFFF00000002E317BB02F>70 D<000FFFFFF000000FFFFFFE0000007F003F8000007E
000FC000007E0007E000007E0003F000007E0001F80000FC0001F80000FC0001F80000FC
0001F80000FC0001F80001F80003F80001F80003F80001F80003F80001F80003F00003F0
0007F00003F00007E00003F0000FC00003F0000FC00007E0001F000007E0007E000007E0
00FC000007E007F000000FFFFFC000000FFFFF0000000FC00F8000000FC003C000001F80
03E000001F8001F000001F8001F000001F8001F800003F0001F800003F0001F800003F00
01F800003F0001F800007E0003F800007E0003F800007E0003F000007E0003F00000FC00
07F00000FC0007F00000FC0007F00800FC0007F00C01F80007F01801F80007F01801F800
03F03003F80003F030FFFFE001F0E0FFFFE000FFC0000000003F002E327BB034>82
D<07FFFFFFFFF00FFFFFFFFFF00FC00FE003F01E000FC000F01C000FC000E018000FC000
E038000FC0006030001F8000E030001F8000E060001F8000C060001F8000C060003F0000
C0C0003F0000C0C0003F0000C0C0003F0000C080007E00008000007E00000000007E0000
0000007E0000000000FC0000000000FC0000000000FC0000000000FC0000000001F80000
000001F80000000001F80000000001F80000000003F00000000003F00000000003F00000
000003F00000000007E00000000007E00000000007E00000000007E0000000000FC00000
00000FC0000000000FC0000000000FC0000000001F80000000001F80000000001F800000
00001F80000000003F00000000003F00000000003F0000000000FF00000000FFFFFF0000
00FFFFFF0000002C3173B033>84 D E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300dpi
TeXDict begin

%%EndSetup
%%Page: 0 1
0 0 bop 795 947 a Ft(D)26 b(R)g(A)f(F)h(T)225 1038 y
Fs(Do)r(cumen)n(t)20 b(for)i(a)f(Standard)g(Message-P)n(assing)f(In)n
(terface)621 1232 y Fr(Message)c(P)o(assing)h(In)o(terface)e(F)l(orum)
766 1359 y(Septem)o(b)q(er)g(19,)h(1996)190 1417 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 1475 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
1 1 bop 166 45 a Fq(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 102 y(Rep)q(ort)d(do)q(cumen)o(t.)969 2828
y(i)p eop
%%Page: 1 3
1 2 bop 75 356 a Fp(Chapter)34 b(3)75 564 y Fo(Miscellan)m(y)41
b(for)g(1.2)75 805 y Fn(3.1)59 b(V)n(ersion)20 b(Numb)r(er)75
953 y Fm(Curren)o(t)12 b(Status:)k Fl(P)o(assed)d(once.)20
b Fq(In)14 b(order)f(to)f(cop)q(e)i(with)g(c)o(hanges)f(to)f(the)i(MPI)
f(Standard,)g(there)g(are)75 1057 y(b)q(oth)j(compile-time)h(and)f
(run-time)g(w)o(a)o(ys)e(to)h(determine)h(whic)o(h)g(v)o(ersion)g(of)f
(the)h(standard)e(is)i(in)h(use)75 1114 y(in)f(the)f(en)o(vironmen)o(t)
h(one)f(is)h(using.)166 1170 y(The)e(\\v)o(ersion")g(will)h(b)q(e)g
(represen)o(ted)f(b)o(y)g(t)o(w)o(o)e(separate)i(in)o(tegers,)g(for)f
(the)h(v)o(ersion)g(and)g(sub)o(v)o(er-)75 1227 y(sion:)166
1283 y(In)i(C,)170 1367 y Fk(#define)23 b(MPI_VERSION)94
b(1)170 1423 y(#define)23 b(MPI_SUBVERSION)f(2)75 1507
y Fq(in)16 b(F)l(ortran,)170 1591 y Fk(INTEGER)23 b(MPI_VERSION,)g
(MPI_SUBVERSION)170 1648 y(PARAMETER)g(\(MPI_VERSION)94
b(=)24 b(1\))170 1704 y(PARAMETER)f(\(MPI_SUBVERSION)f(=)i(2\))75
1788 y Fq(and)15 b(in)h(C++,)170 1872 y Fk(const)24 b(int)f
(MPI::VERSION)f(=)i(1)170 1928 y(const)g(int)f(MPI::SUBVERSION)f(=)i(2)
75 2012 y Fq(F)l(or)15 b(run)o(time)g(determination,)75
2163 y Fj(MPI)p 160 2163 14 2 v 16 w(GET)p 264 2163 V
17 w(VERSION\()h(version,)f(subversion)h(\))117 2240
y Fl(OUT)108 b Fj(version)456 b Fl(v)o(ersion)14 b(n)o(um)o(b)q(er)117
2313 y(OUT)108 b Fj(subversion)393 b Fl(sub)o(v)o(ersion)15
b(n)o(um)o(b)q(er)75 2438 y Fk(int)23 b(MPI)p 245 2438
15 2 v 17 w(Get)p 334 2438 V 17 w(version\()g(int)g(*version,)g(int)g
(*subversion)g(\))75 2524 y(MPI)p 150 2524 V 17 w(GET)p
239 2524 V 17 w(VERSION\()f(VERSION,)h(SUBVERSION,)f(IERROR)h(\))170
2581 y(INTEGER)g(VERSION,)g(SUBVERSION,)f(IERROR)1875
2617 y Fi(>)16 b Fh(\(Oct\))75 2667 y Fk(static)23 b(int)g(MPI::Get)p
532 2667 V 17 w(version\()f(int&)i(version,)e(int&)i(subversion)e(\))
1875 2704 y Fi(?)16 b Fh(\(Oct\))964 2828 y Fq(1)p eop
%%Page: 2 4
2 3 bop 75 -100 a Fq(2)970 b Fg(CHAPTER)15 b(3.)35 b(MISCELLANY)17
b(F)o(OR)e(1.2)75 45 y Fn(3.2)59 b(T)-5 b(reatment)18
b(of)i(MPI)p 670 45 18 2 v 21 w(Status)75 147 y Fq(The)25
b(follo)o(wing)g(prop)q(osals)g(add)g(to,)g(but)g(do)g(not)f(c)o
(hange,)i(the)f(functionalit)o(y)h(asso)q(ciated)f(with)75
203 y Fj(MPI)p 160 203 14 2 v 16 w(ST)l(A)l(TUS)p Fq(.)75
325 y Ff(3.2.1)49 b(P)o(assing)17 b(MPI)p 481 325 15
2 v 18 w(ST)l(A)l(TUS)p 676 325 V 18 w(IGNORE)g(fo)o(r)f(MPI)p
1044 325 V 18 w(Status)75 458 y Fm(Curren)o(t)e(Status:)j
Fl(P)o(assed)e(once.)166 561 y Fq(Ev)o(ery)10 b(call)i(to)e
Fj(MPI)p 507 561 14 2 v 16 w(RECV)h Fq(includes)i(a)e
Fj(status)h Fq(argumen)o(t,)f(where)g(the)f(system)h(can)f(return)h
(details)75 618 y(ab)q(out)18 b(the)g(message)g(receiv)o(ed.)31
b(There)18 b(are)g(also)g(a)g(n)o(um)o(b)q(er)h(of)f(other)g(MPI)g
(calls,)i(particularly)f(in)-1991 b Fi(>)15 b Fh(\(Oct\))75
674 y Fq(MPI-2,)20 b(where)f Fj(status)i Fq(is)f(returned.)33
b(An)19 b(ob)s(ject)g(of)g(t)o(yp)q(e)g Fj(MPI)p 1234
674 V 16 w(ST)l(A)l(TUS)h Fq(is)g(not)f(an)g Fj(MPI)g
Fq(opaque)-117 676 y Fi(?)c Fh(\(Oct\))75 731 y Fq(ob)s(ject;)h(its)h
(structure)g(is)g(declared)h(in)f Fk(mpi.h)f Fq(and)h
Fk(mpif.h)p Fq(,)e(and)i(it)g(exists)g(in)g(the)g(users')f(program.)75
787 y(In)i(man)o(y)e(cases)h(application)i(programs)d(are)g
(constructed)i(so)e(that)h(it)g(is)g(unnecessary)h(for)f(them)g(to)75
844 y(examine)j(the)g Fk(status)f Fq(\014elds.)35 b(In)20
b(these)g(cases)f(it)h(is)g(a)g(w)o(aste)e(for)h(the)h(user)g(to)f
(allo)q(cate)h(a)g(status)75 900 y(ob)s(ject,)f(and)h(it)f(is)h
(particularly)g(w)o(asteful)f(for)g(the)g Fj(MPI)f Fq(implemen)o
(tation)j(to)d(\014ll)j(in)f(\014elds)h(in)f(this)75
957 y(ob)s(ject.)166 1013 y(T)l(o)h(cop)q(e)h(with)g(this)g(problem,)i
(there)d(is)h(a)g(pre-de\014ned)h(constan)o(t,)f Fj(MPI)p
1502 1013 V 16 w(ST)l(A)l(TUS)p 1683 1013 V 17 w(IGNORE)p
Fq(,)75 1070 y(whic)o(h,)i(when)e(passed)g(to)f(a)h(receiv)o(e)h(or)e
(test)g(function,)j(informs)e(the)g(implemen)o(tation)h(that)e(the)75
1126 y(status)13 b(\014elds)h(are)f(not)g(to)g(b)q(e)h(\014lled)i(in.)k
(Note)13 b(that)g Fj(MPI)p 1059 1126 V 15 w(ST)l(A)l(TUS)p
1239 1126 V 18 w(IGNORE)i Fq(is)e(not)h(a)f(sp)q(ecial)i(t)o(yp)q(e)e
(of)75 1183 y Fj(MPI)p 160 1183 V 16 w(ST)l(A)l(TUS)i
Fq(ob)s(ject;)f(rather,)f(it)h(is)h(a)f(sp)q(ecial)i(v)m(alue)f(for)f
(the)g(argumen)o(t.)k(That)c(is,)h(in)f(C)g(one)h(w)o(ould)75
1239 y(exp)q(ect)h(it)f(to)g(b)q(e)h(NULL,)g(not)e(the)i(address)f(of)g
(a)g(sp)q(ecial)i Fj(MPI)p 1179 1239 V 15 w(ST)l(A)l(TUS)p
Fq(.)166 1295 y(In)12 b(general,)h(this)f(optimization)g(can)g(apply)g
(to)f(all)i(functions)f(for)f(whic)o(h)h Fj(MPI)p 1514
1295 V 16 w(Status)i Fq(or)d(an)g(arra)o(y)75 1352 y(of)k
Fj(MPI)p 212 1352 V 16 w(Status)p Fq('s)i(is)f(an)g(argumen)o(t.)k
(These)c(are)f(all)i(the)e(v)m(arious)h(forms)f(of)g
Fj(MPI)p 1493 1352 V 16 w(RECV)p Fq(,)h Fj(MPI)p 1735
1352 V 16 w(TEST)p Fq(,)75 1408 y(and)i Fj(MPI)p 251
1408 V 15 w(W)l(AIT)p Fq(.)f(When)h(an)f(arra)o(y)g(is)g(passed,)h(as)f
(in)h(the)p 1132 1408 V 34 w Fj(ANY)g Fq(and)p 1349 1408
V 34 w Fj(ALL)f Fq(functions,)h(a)f(separate)75 1465
y(constan)o(t,)d Fj(MPI)p 356 1465 V 16 w(ST)l(A)l(TUSES)p
589 1465 V 18 w(IGNORE)p Fq(,)i(is)f(passed)h(for)e(the)i(arra)o(y)e
(argumen)o(t.)166 1521 y Fj(MPI)p 251 1521 V 16 w(ST)l(A)l(TUS)p
432 1521 V 17 w(IGNORE)g Fq(and)e Fj(MPI)p 794 1521 V
16 w(ST)l(A)l(TUSES)p 1027 1521 V 18 w(IGNORE)i Fq(are)e(not)g
(required)h(to)f(ha)o(v)o(e)g(the)g(same)-1992 b Fi(>)15
b Fh(\(Oct\))75 1578 y Fq(v)m(alues)h(in)g(C)f(and)h(F)l(ortran.)166
1634 y(It)d(is)g(not)g(allo)o(w)o(ed)g(to)f(ha)o(v)o(e)g(some)h(of)f
(the)h(statuses)f(in)i(an)f(arra)o(y)e(of)i(statuses)f(for)p
1574 1634 V 28 w Fj(ANY)i Fq(and)p 1782 1634 V 29 w Fj(ALL)75
1691 y Fq(functions)j(set)g(to)f Fj(MPI)p 487 1691 V
16 w(ST)l(A)l(TUS)p 668 1691 V 17 w(IGNORE)p Fq(;)i(one)e(either)i(sp)q
(eci\014es)g(ignoring)f Fe(al)r(l)34 b Fq(of)17 b(the)f(statuses)g(in)
75 1747 y(suc)o(h)e(a)g(call)h(with)f Fj(MPI)p 482 1747
V 16 w(ST)l(A)l(TUSES)p 715 1747 V 18 w(IGNORE)p Fq(,)h(or)f
Fe(none)i Fq(of)e(themm)g(b)o(y)f(passing)i(normal)f(statuses)f(in)75
1804 y(alll)k(p)q(ositions)f(in)g(the)f(arra)o(y)f(of)h(statuses.)-932
b Fi(?)15 b Fh(\(Oct\))75 1925 y Ff(3.2.2)49 b(Non-destructive)16
b(T)l(est)f(of)i(MPI)p 808 1925 15 2 v 18 w(Status)75
2058 y Fm(Curren)o(t)d(Status:)j Fl(P)o(assed)e(once.)166
2162 y Fq(This)22 b(call)g(is)g(useful)g(for)f(accessing)h(the)f
(information)h(asso)q(ciated)f(with)h(a)f(request,)h(without)75
2218 y(deleting)c(the)f(request)f(\(in)h(case)g(the)g(user)f(is)i(exp)q
(ected)f(to)f(access)h(it)g(after)f(the)g(handler\).)25
b(It)17 b(allo)o(ws)75 2275 y(one)11 b(to)e(la)o(y)o(er)i(libraries)h
(more)e(con)o(v)o(enien)o(tly)l(,)i(since)g(m)o(ultiple)g(la)o(y)o(ers)
e(of)h(soft)o(w)o(are)d(ma)o(y)i(access)h(the)f(same)75
2331 y(completed)17 b(request)f(and)g(extract)f(from)g(it)h(the)g
(status)f(information.)21 b(This)c(will)g(also)f(b)q(e)g(imp)q(ortan)o
(t)75 2388 y(for)g(language)i(in)o(terop)q(erabilit)o(y)h(if)e(w)o(e)g
(decide)i(that)d(status)g(ob)s(jects)h(cannot)f(b)q(e)i(transferred)f
(across)75 2444 y(language)d(b)q(oundaries,)g(since)h(with)f(this)g
(function)g(the)g(request)f(ob)s(ject)g(can)h(b)q(e)g(transferred)f
(instead.)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
3 4 bop 75 -100 a Fg(3.3.)34 b(ERR)o(OR)17 b(CLASS)f(F)o(OR)f(INV)-5
b(ALID)16 b(KEYV)-5 b(AL)818 b Fq(3)75 45 y Fj(MPI)p
160 45 14 2 v 16 w(GET)p 264 45 V 17 w(ST)l(A)l(TUS\()16
b(request,)g(\015ag,)f(status)i(\))117 122 y Fl(IN)155
b Fj(request)452 b Fl(an)14 b Fd(MPI)p 1040 122 13 2
v 14 w(REQUEST)f Fl(ob)r(ject)117 197 y(OUT)108 b Fj(\015ag)518
b Fl(\015ag,)13 b(same)g(as)h(from)e Fd(MPI)p 1325 197
V 15 w(TEST)117 273 y Fl(OUT)108 b Fj(status)476 b Fd(MPI)p
982 273 V 15 w(ST)m(A)m(TUS)12 b Fl(ob)r(ject)j(if)e(\015ag)g(is)h
(true)75 397 y Fk(int)23 b(MPI)p 245 397 15 2 v 17 w(Get)p
334 397 V 17 w(status\(MPI)p 591 397 V 16 w(Request)g(request,)f(int)i
(*flag,)f(MPI)p 1347 397 V 17 w(Status)g(*status\))75
483 y(MPI)p 150 483 V 17 w(GET)p 239 483 V 17 w(STATUS\()f(REQUEST,)h
(FLAG,)g(STATUS,)g(IERROR\))170 540 y(INTEGER)g(REQUEST,)g(FLAG,)g
(STATUS\(MPI)p 962 540 V 16 w(STATUS)p 1122 540 V 16
w(SIZE\),)h(IERROR)75 626 y(int)f(MPI::Request::Get)p
581 626 V 15 w(status\(bool&)g(flag,)g(MPI::Status&)f(status\))h(const)
166 713 y Fq(Sets)18 b(\015ag=true)g(if)h(the)f(request)h(has)f
(completed,)h(and,)g(if)g(so,)f(returns)g(in)h(status)f(the)g(request)
75 769 y(status.)34 b(Ho)o(w)o(ev)o(er,)20 b(unlik)o(e)i(test)d(or)h(w)
o(ait,)g(it)h(do)q(es)f(not)g(deallo)q(cate)h(or)f(inactiv)m(ate)h(the)
f(request;)i(a)75 826 y(subsequen)o(t)16 b(call)g(to)f(test,)f(w)o(ait)
h(or)f(free)i(should)g(b)q(e)g(executed)g(with)f(that)g(request)75
969 y Fn(3.3)59 b(Erro)n(r)21 b(Class)f(fo)n(r)h(Invalid)e(Keyval)1875
1026 y Fi(>)d Fh(\(Oct\))75 1118 y Fm(Curren)o(t)e(Status:)j
Fl(P)o(assed)e(once.)166 1221 y Fq(There)d(is)f(a)h(new)f(MPI)h(error)e
(class:)19 b Fj(MPI)p 875 1221 14 2 v 15 w(ERR)p 975
1221 V 18 w(KEYV)l(AL)p Fq(.)11 b(It)h(can)f(b)q(e)h(returned)g(b)o(y)f
Fj(MPI)p 1692 1221 V 16 w(A)o(ttr)p 1785 1221 V 17 w(put)p
Fq(,)75 1278 y Fj(MPI)p 160 1278 V 16 w(A)o(ttr)p 253
1278 V 17 w(get)p Fq(,)16 b Fj(MPI)p 440 1278 V 16 w(A)o(ttr)p
533 1278 V 16 w(delete)p Fq(,)i Fj(MPI)p 772 1278 V 16
w(Keyval)p 915 1278 V 15 w(free)p Fq(,)e Fj(MPI)p 1111
1278 V 16 w(Comm)p 1253 1278 V 14 w(dup)p Fq(,)i(and)e
Fj(MPI)p 1538 1278 V 16 w(Comm)p 1680 1278 V 14 w(free)p
Fq(.)23 b(The)75 1334 y(last)15 b(t)o(w)o(o)f(are)h(b)q(ecause)h
Fj(k)o(eyval)f Fq(is)h(an)f(argumen)o(t)f(to)h(the)g(cop)o(y)g(and)h
(delete)g(functions)g(for)e(attributes.)8 b Fi(?)16 b
Fh(\(Oct\))1875 1393 y Fi(>)g Fh(\(Oct\))1875 1451 y
Fi(>)g Fh(\(Oct\))75 1478 y Fn(A)k(new)f(reduce)g(op)r(eration)75
1626 y Fm(Curren)o(t)14 b(Status:)j Fl(New)d(for)g(Octob)q(er.)166
1730 y Fq(A)e(new)h(prede\014ned)h(op)q(eration,)f Fd(MPI)p
811 1730 13 2 v 14 w(REPLA)o(CE)p Fq(,)d(is)j(de\014ned.)20
b(It)13 b(corresp)q(onds)f(to)g(the)h(asso)q(ciativ)o(e)75
1786 y(function)18 b Fc(f)5 b Fq(\()p Fc(a;)j(b)p Fq(\))15
b(=)h Fc(b)p Fq(;)i(i.e.,)f(the)g(curren)o(t)h(v)m(alue)g(in)g(the)g
(target)e(memory)h(is)h(replaced)g(b)o(y)f(the)h(v)m(alue)75
1843 y(supplied)g(b)o(y)d(the)g(origin.)21 b(This)15
b(op)q(eration)h(can)f(b)q(e)h(applied)h(on)e(an)o(y)g(basic)h(datat)o
(yp)q(e.)166 1947 y Fm(Discussion:)35 b Fl(This)15 b(needs)g(a)f
(rationale.)19 b(It)14 b(can)h(b)q(e)g(used)g(to)f(do)g(one-sided)h
(broadcasts)g(\(should)f(it)g(b)q(e)75 2003 y(f\(a,b\))i(=)h(a\)?)27
b(It)17 b(w)o(ould)f(b)q(e)i(wierd)f(in)f(a)h(reduce)i(op)q(eration,)e
(and)f(could)h(b)q(e)h(easily)e(done)h(b)o(y)g(the)g(user)h(as)f(a)75
2059 y(user-de\014ned)f(function.)1875 2107 y Fi(?)g
Fh(\(Oct\))75 2250 y Fn(3.4)59 b(A)20 b(F)n(o)n(rtran)h(Problem)e(with)
h(Register)e(Optimization)75 2399 y Fm(Curren)o(t)c(Status:)j
Fl(A)d(new)g(discussion.)189 2552 y Fe(A)n(dvic)n(e)h(to)i(users.)189
2627 y Fq(MPI)d(pro)o(vides)g(op)q(erations)g(whic)o(h)h(ma)o(y)e(b)q
(e)i(hidden)h(from)d(the)h(user)g(co)q(de)h(and)f(run)h(in)f(parallel)
189 2684 y(with)g(it,)h(accessing)g(the)f(same)g(memory)g(as)g(user)g
(co)q(de.)20 b(Examples)15 b(include)i(the)d(data)g(transfer)-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
4 5 bop 75 -100 a Fq(4)970 b Fg(CHAPTER)15 b(3.)35 b(MISCELLANY)17
b(F)o(OR)e(1.2)189 45 y Fq(for)10 b(an)h Fj(MPI)p 398
45 14 2 v 16 w(RECV)h Fq(The)f(optimizer)i(of)d(a)h(compiler)i(will)f
(assume)f(that)g(it)g(can)h(recognize)g(p)q(erio)q(ds)189
102 y(when)j(a)g(cop)o(y)g(of)g(a)f(v)m(ariable)j(can)e(b)q(e)h(k)o
(ept)f(in)h(a)e(register)h(without)g(reloading)h(from)f(or)f(storing)
189 158 y(to)e(memory)l(.)18 b(When)13 b(the)g(user)g(co)q(de)g(is)g(w)
o(orking)f(with)h(a)f(register)h(cop)o(y)f(of)g(some)h(v)m(ariable)g
(while)189 214 y(the)i(hidden)i(op)q(eration)f(reads)f(or)g(writes)g
(the)h(memory)f(cop)o(y)l(,)g(problems)h(o)q(ccur.)k(This)c(section)189
271 y(discusses)g(register)f(optimization)h(pitfalls.)189
346 y(When)f(a)f(v)m(ariable)i(is)f(lo)q(cal)h(to)e(a)g(F)l(ortran)f
(subroutine)j(\(i.e.)k(not)14 b(in)h(a)g(COMMON)f(blo)q(c)o(k\),)h(the)
189 403 y(compiler)g(will)i(assume)d(that)g(it)h(cannot)f(b)q(e)h(mo)q
(di\014ed)h(b)o(y)f(a)f(called)i(subroutine)f(unless)h(it)f(is)g(an)189
459 y(actual)g(argumen)o(t)g(of)h(the)f(call.)23 b(In)16
b(the)g(most)e(common)i(link)m(age)h(con)o(v)o(en)o(tion,)e(the)h
(subroutine)189 515 y(is)d(exp)q(ected)i(to)d(sa)o(v)o(e)h(and)g
(restore)g(certain)h(registers.)19 b(Th)o(us,)13 b(the)g(optimizer)i
(will)g(assume)e(that)189 572 y(a)k(register)h(whic)o(h)h(held)g(a)e(v)
m(alid)j(cop)o(y)d(of)h(suc)o(h)g(a)g(v)m(ariable)h(b)q(efore)f(the)g
(call)h(will)g(still)h(hold)e(a)189 628 y(v)m(alid)e(cop)o(y)g(on)f
(return.)189 703 y(Normally)22 b(users)g(are)g(not)g(a\017icted)g(with)
h(this.)41 b(But)22 b(the)g(user)g(should)h(pa)o(y)f(atten)o(tion)g(to)
189 760 y(this)f(section)g(if)g(in)h(his/her)f(program)e(a)i(bu\013er)f
(argumen)o(t)g(to)g(an)h Fj(MPI)p 1498 760 V 16 w(SEND)p
Fq(,)f Fj(MPI)p 1746 760 V 16 w(RECV)189 816 y Fq(etc.)25
b(uses)18 b(a)f(name)g(whic)o(h)h(hides)g(the)f(actual)h(v)m(ariables)g
(in)o(v)o(olv)o(ed.)27 b Fj(MPI)p 1493 816 V 16 w(BOTTOM)18
b Fq(with)f(an)189 873 y(MPI)p 281 873 V 16 w(Datat)o(yp)q(e)i(con)o
(taining)i(absolute)g(addresses)f(is)h(one)f(example.)36
b(Creating)20 b(a)f(datat)o(yp)q(e)189 929 y(whic)o(h)14
b(uses)f(one)g(v)m(ariable)i(as)e(an)g(anc)o(hor)f(and)i(brings)f
(along)h(others)e(b)o(y)h(using)h Fj(MPI)p 1659 929 V
16 w(ADDRESS)189 986 y Fq(to)h(determine)j(their)f(o\013sets)e(from)g
(the)i(anc)o(hor)f(is)h(another.)22 b(The)17 b(anc)o(hor)f(v)m(ariable)
i(w)o(ould)e(b)q(e)189 1042 y(the)g(only)h(one)f(men)o(tioned)h(in)g
(the)g(call.)24 b(Also)16 b(atten)o(tion)g(m)o(ust)g(b)q(e)h(pa)o(y)o
(ed)f(if)h(MPI)f(op)q(erations)189 1099 y(are)f(used)g(that)g(run)g(in)
h(parallel)h(with)f(the)f(user's)g(application.)189 1174
y(The)g(follo)o(wing)h(example)g(sho)o(ws,)e(what)h(F)l(ortran)f
(compilers)i(are)f(allo)o(w)o(ed)h(to)e(do:)224 1299
y(This)i(source)f(...)663 b(can)15 b(b)q(e)h(compiled)h(as:)224
1363 y(call)f(MPI)p 399 1363 V 17 w(ADDRESS\(buf,bufaddr,ierr\))189
b(call)16 b(MPI)p 1344 1363 V 17 w(ADDRESS\(buf,...\))224
1420 y(call)g(MPI)p 399 1420 V 17 w(TYPE)p 545 1420 V
16 w(STR)o(UCT\(1,1,bufaddr,)163 b(call)16 b(MPI)p 1344
1420 V 17 w(TYPE)p 1490 1420 V 16 w(STR)o(UCT\(...\))590
1476 y(MPI)p 682 1476 V 17 w(REAL,t)o(yp,ierr\))224 1533
y(call)g(MPI)p 399 1533 V 17 w(TYPE)p 545 1533 V 16 w(COMMIT\(t)o(yp\))
308 b(call)16 b(MPI)p 1344 1533 V 17 w(TYPE)p 1490 1533
V 16 w(COMMIT\(...\))224 1589 y(v)m(al)p 283 1589 V 17
w(old)g(=)g(buf)681 b(register)15 b(=)h(buf)1169 1646
y(v)m(al)p 1228 1646 V 17 w(old)g(=)f(register)224 1702
y(call)h(MPI)p 399 1702 V 17 w(RECV\(MPI)p 654 1702 V
16 w(BOTTOM,1,t)o(yp,...\))107 b(call)16 b(MPI)p 1344
1702 V 17 w(RECV\(MPI)p 1599 1702 V 16 w(BOTTOM,...\))224
1759 y(v)m(al)p 283 1759 V 17 w(new)g(=)f(buf)664 b(v)m(al)p
1228 1759 V 17 w(new)16 b(=)f(register)189 1884 y(The)j(compiler)g(do)q
(es)g(not)g(in)o(v)m(alidate)h(the)f(register)g(b)q(ecause)g(it)g
(cannot)f(see)h(that)f Fj(MPI)p 1746 1884 V 16 w(RECV)189
1940 y Fq(c)o(hanges)h(the)g(v)m(alue)i(of)e Fj(buf)p
Fq(.)30 b(The)19 b(access)f(of)g Fj(buf)i Fq(is)f(hidden)h(b)o(y)e(the)
h(use)f(of)g Fj(MPI)p 1659 1940 V 16 w(ADDRESS)189 1997
y Fq(and)d Fj(MPI)p 362 1997 V 16 w(BOTTOM)p Fq(.)189
2072 y(The)g(next)g(example)h(sho)o(ws)f(extreme,)g(but)g(allo)o(w)o
(ed)h(p)q(ossibilities!)224 2197 y(Source)424 b(compiled)17
b(as)322 b(or)15 b(compiled)i(as)224 2261 y(call)f(MPI)p
399 2261 V 17 w(IRECV\(buf,..req\))i(call)f(MPI)p 955
2261 V 16 w(IRECV\(buf,..req\))h(call)f(MPI)p 1510 2261
V 16 w(IRECV\(buf,..req\))779 2318 y(register)e(=)h(buf)278
b(b1)15 b(=)h(buf)224 2374 y(call)g(MPI)p 399 2374 V
17 w(W)-5 b(AIT\(req,..\))104 b(call)17 b(MPI)p 955 2374
V 16 w(W)-5 b(AIT\(req,..\))104 b(call)17 b(MPI)p 1510
2374 V 16 w(W)-5 b(AIT\(req,..\))224 2431 y(b1)15 b(=)h(buf)377
b(b1)15 b(:=)g(register)189 2556 y Fj(MPI)p 274 2556
V 15 w(W)l(AIT)e Fq(or)f(a)g(parallel)i(thread)e(mo)q(di\014es)i
Fj(buf)f Fq(b)q(et)o(w)o(een)g(the)f(in)o(v)o(o)q(cation)h(of)f
Fj(MPI)p 1648 2556 V 16 w(IRECV)h Fq(and)189 2612 y(the)j(\014nish)h
(of)f Fj(MPI)p 528 2612 V 16 w(W)l(AIT)p Fq(.)g(But)g(the)g(compiler)i
(cannot)e(see)g(an)o(y)g(p)q(ossibilit)o(y)i(that)e Fj(buf)h
Fq(can)f(b)q(e)189 2669 y(c)o(hanged)g(after)e Fj(MPI)p
557 2669 V 16 w(IRECV)i Fq(has)g(\014nished.)23 b(And)16
b(therefore)f(it)h(can)g(sc)o(hedule)h(the)f(load)g(of)f
Fj(buf)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
5 6 bop 75 -100 a Fg(3.5.)34 b(TR)o(UE)15 b(EXTENT)g(OF)g(D)o(A)l(T)l
(A)l(TYPES)958 b Fq(5)189 45 y(earlier)14 b(than)g(t)o(yp)q(ed)g(in)h
(the)f(source.)20 b(It)13 b(has)h(no)g(reason)f(to)h(a)o(v)o(oid)f
(using)i(a)e(register)h(to)f(hold)i Fj(buf)189 102 y
Fq(across)f(the)h(call)i(to)d Fj(MPI)p 625 102 14 2 v
16 w(W)l(AIT)p Fq(.)h(It)g(also)g(can)h(reorder)f(the)g(instructions)h
(as)f(in)h(the)f(left)h(case.)189 177 y(T)l(o)c(prev)o(en)o(t)h
(instruction)h(reordering)g(or)e(the)h(allo)q(cation)h(of)f(a)g(v)m
(ariable)h(or)f(bu\013er)g(in)h(a)e(register,)189 233
y(there)j(are)g(three)g(p)q(ossibilities)k(in)d(p)q(ortable)f(F)l
(ortran)f(co)q(de:)243 327 y Fi(\017)23 b Fq(One)d(can)f(put)h(the)g(v)
m(ariables)g(and)g(bu\013ers)f(in)o(to)h(common)f(blo)q(c)o(ks;)j(then)
e(they)f(will)i(b)q(e)289 383 y(allo)q(cated)d(in)g(the)g(memory)e
(while)j(an)o(y)e(library)h(subroutine)h(\(e.g.)25 b(an)18
b(MPI)f(routine\))g(is)289 440 y(called)c(pro)o(vided)f(that)f(the)h
(compiler)h(cannot)e(analyze)h(that)f(the)h(library)g(subroutine)h(do)q
(es)289 496 y(not)h(use)i(these)f(common)g(blo)q(c)o(ks,)h(or)243
569 y Fi(\017)23 b Fq(one)11 b(can)h(declare)g(them)f(as)g(V)o(OLA)l
(TILE,)h(but)g(this)g(is)f(not)g(part)g(of)g(the)g(standards)g(F)l
(ortran)289 626 y(77)f(and)h(90,)g(and)g(y)o(our)f(co)q(de)i(will)h
(not)d(b)q(e)i(p)q(ortable)f(b)q(ecause)h(there)f(are)g(compilers)h
(without)289 682 y(V)o(OLA)l(TILE,)k(and)f(normally)h(it)g(prev)o(en)o
(ts)e(an)o(y)h(optimization,)h(or)243 755 y Fi(\017)23
b Fq(one)14 b(can)g(call)h(a)f(dumm)o(y)g(routine)g(with)g(the)h(v)m
(ariable)g(or)e(bu\013er)h(as)g(an)g(actual)g(argumen)o(t;)289
812 y(if)22 b(the)h(dumm)o(y)f(routine)h(is)f(not)g(part)g(of)g(the)g
(application)i(then)f(the)f(compiler)i(m)o(ust)289 868
y(allo)q(cate)16 b(the)f(v)m(ariable)i(or)e(bu\013er)h(in)g(the)f
(memory)g(while)i(that)e(subroutine)h(is)g(executed;)289
925 y Fj(MPI)p 374 925 V 15 w(ADDRESS)h Fq(can)e(b)q(e)h(used)g(as)e
(dumm)o(y)h(routine.)189 1019 y(High)e(qualit)o(y)g(F)l(ortran)f
(implemen)o(tations)i(ma)o(y)e(pro)o(vide)i(mec)o(hanisms)f(to)f(a)o(v)
o(oid)h(the)g(problem,)189 1075 y(without)18 b(disabling)j
(optimizations.)31 b(Ho)o(w)o(ev)o(er,)18 b(co)q(de)h(that)f(do)q(es)h
(not)f(use)h(one)g(of)f(the)h(three)189 1131 y(solutions)d(describ)q
(ed)h(ab)q(o)o(v)o(e)d(ma)o(y)h(not)g(b)q(e)h(p)q(ortable.)189
1207 y(In)h(C,)f(subroutines)i(whic)o(h)g(mo)q(dify)f(v)m(ariables)h
(that)e(are)h(not)f(in)i(the)f(parameter)f(list)i(will)g(not)189
1263 y(cause)e(register)h(optimization)g(problems.)25
b(This)17 b(is)g(b)q(ecause)g(taking)g(p)q(oin)o(ters)g(to)f(storage)f
(ob-)189 1319 y(jects)d(b)o(y)g(using)h(the)g(&)f(op)q(erator)g(and)g
(later)h(referencing)g(the)g(ob)s(jects)f(b)o(y)g(w)o(a)o(y)f(of)h(the)
h(p)q(oin)o(ter)f(is)189 1376 y(an)j(in)o(tegral)g(part)g(of)f(the)i
(language.)k(A)15 b(C)g(compiler)h(understands)g(the)f(implications,)i
(so)e(that)189 1432 y(the)g(problem)h(should)h(not)e(o)q(ccur,)h(in)g
(general.)21 b(Ho)o(w)o(ev)o(er,)14 b(some)i(compilers)g(do)g(o\013er)e
(optional)189 1489 y(aggressiv)o(e)g(optimization)j(lev)o(els)f(whic)o
(h)g(ma)o(y)f(not)f(b)q(e)i(safe.)189 1564 y(\()p Fe(End)f(of)i(advic)n
(e)f(to)g(users.)p Fq(\))p 75 1670 827 2 v 75 1727 a(The)f(follo)o
(wing)h(advice)h(m)o(ust)d(b)q(e)i(added)g(in)75 1795
y(-)f(MPI)g(2,)g(c)o(hapter)g(?.?)21 b(Handlers,)75 1851
y(-)15 b Fj(MPI)p 190 1851 14 2 v 16 w(ADDRESS)h Fq(\(MPI)f(1.1,)f
(page)h(70,)f(line)j(16\),)d(and)h(in)75 1908 y(-)g Fj(MPI)p
190 1908 V 16 w(IRECV)h Fq(\(MPI)f(1.1,)e(\\Non)o(blo)q(c)o(king)k
(comm)o(unication",)e(end)h(of)e(page)h(40\))189 2014
y Fe(A)n(dvic)n(e)i(to)i(users.)53 b Fq(T)l(o)17 b(prev)o(en)o(t)g
(troubles)h(with)g(the)f(register)g(optimization)i(of)e(the)g(F)l
(ortran)189 2071 y(compilers)i(please)g(pa)o(y)e(atten)o(tion)h(to)f
(the)h(hin)o(ts)g(in)h(section)g(3.4)e(\\A)g(F)l(ortran)g(Problem)i
(with)189 2127 y(register)c(optimization")h(on)f(page)g(3.)k(\()p
Fe(End)d(of)g(advic)n(e)g(to)h(users.)p Fq(\))1875 2188
y Fi(?)f Fh(\(Oct\))75 2320 y Fn(3.5)59 b(T)-5 b(rue)20
b(Extent)d(of)k(Datat)n(yp)r(es)75 2469 y Fm(Curren)o(t)14
b(Status:)j Fl(P)o(assed)e(once.)166 2573 y Fq(Supp)q(ose)23
b(w)o(e)f(implemen)o(t)h(gather)f(as)g(a)f(spanning)i(tree)f(implemen)o
(ted)i(on)e(top)g(of)g(p)q(oin)o(t-to-)75 2629 y(p)q(oin)o(t)e
(routines.)34 b(Since)22 b(the)d(recv)h(bu\013er)g(is)g(only)h(v)m
(alid)g(on)f(the)g(ro)q(ot)f(pro)q(cess,)i(one)f(will)h(need)g(to)75
2685 y(allo)q(cate)f(some)f(temp)q(orary)g(space)h(for)f(receiving)i
(data)e(on)g(in)o(termediate)i(no)q(des.)33 b(The)20
b(di\016cultly)-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
6 7 bop 75 -100 a Fq(6)970 b Fg(CHAPTER)15 b(3.)35 b(MISCELLANY)17
b(F)o(OR)e(1.2)75 45 y Fq(is)20 b(in)g(determining)h(the)f(size)g(one)f
(needs)i(to)d(allo)q(ciate.)34 b(This)20 b(o)q(ccurs)g(since)h(the)e
(user)h(can)f(mo)q(dify)75 102 y(the)g(exten)o(t)h(using)g(the)f
Fd(MPI)p 583 102 13 2 v 14 w(UB)g Fq(and)h Fd(MPI)p 841
102 V 14 w(LB)f Fq(v)m(alues.)34 b(The)20 b(writer)f(of)g(the)g(gather)
g(routine)h(could)75 158 y(determine)14 b(this)f(information)g(b)o(y)g
(deco)q(ding)h(the)f(datat)o(yp)q(e.)18 b(Ho)o(w)o(ev)o(er,)12
b(this)h(is)g(more)g(w)o(ork)e(and)i(more)75 214 y(painful)j(than)e
(desired.)20 b(Th)o(us,)14 b(a)g(new)g(function)h(is)g(pro)o(vided)g
(whic)o(h)f(returns)g(the)h(true)e(exten)o(t)h(of)g(the)75
271 y(datat)o(yp)q(e.)75 422 y Fj(MPI)p 160 422 14 2
v 16 w(TRUE)p 294 422 V 17 w(EXTENT\(datat)o(yp)q(e,)j(true)p
775 422 V 17 w(lb,)e(true)p 929 422 V 17 w(extent\))117
499 y Fl(IN)155 b Fj(datat)o(yp)q(e)424 b Fl(datat)o(yp)q(e)14
b(to)g(get)g(information)d(on)117 574 y(OUT)108 b Fj(true)p
396 574 V 17 w(lb)461 b Fl(true)15 b(lo)o(w)o(er)e(b)q(ound)h(of)g
(datat)o(yp)q(e)117 649 y(OUT)108 b Fj(true)p 396 649
V 17 w(extent)379 b Fl(true)15 b(size)g(of)e(datat)o(yp)q(e)75
774 y Fk(int)23 b(MPI)p 245 774 15 2 v 17 w(True)p 358
774 V 17 w(extent\(MPI)p 615 774 V 16 w(Datatype)f(datatype,)h(MPI)p
1156 774 V 17 w(Aint)g(*true)p 1412 774 V 17 w(lb,)g(MPI)p
1596 774 V 17 w(Aint)393 830 y(*true)p 516 830 V 17 w(extent\))75
917 y(MPI)p 150 917 V 17 w(TRUE)p 263 917 V 16 w(EXTENT\(DATATYPE,)f
(TRUE)p 781 917 V 17 w(LB,)h(TRUE)p 989 917 V 17 w(EXTENT,)g(IERROR\))
170 973 y(INTEGER)g(DATATYPE,)g(TRUE)p 699 973 V 17 w(LB,)g(TRUE)p
907 973 V 17 w(EXTENT,)g(IERROR)166 1060 y Fj(true)p
244 1060 14 2 v 17 w(lb)14 b Fq(returns)f(the)g(o\013set)g(of)g(the)g
(lo)o(w)o(est)g(unit)h(of)f(store)g(whic)o(h)h(is)g(addressed)g(b)o(y)f
(the)h(datat)o(yp)q(e.)75 1116 y Fj(true)p 153 1116 V
17 w(extent)k Fq(returns)f(the)g(true)f(size)i(of)e(the)h(datat)o(yp)q
(e.)24 b(The)17 b Fj(true)p 1244 1116 V 17 w(extent)i
Fq(is)e(the)g(minim)o(um)h(n)o(um)o(b)q(er)75 1173 y(of)13
b(b)o(ytes)g(of)h(memory)f(necessary)g(to)g(hold)i(a)e(datat)o(yp)q(e)g
(and)h(ignores)g(the)f Fj(LB)h Fq(and)g Fj(UB)g Fq(that)e(ma)o(y)h(ha)o
(v)o(e)75 1229 y(b)q(een)j(used)g(in)g(creating)g(the)f(datat)o(yp)q
(e.)166 1326 y Fm(Alternativ)o(es)o(:)166 1376 y Fl(If)e(w)o(e)i(w)o
(an)o(t)e(to)h(b)q(e)g(consisten)o(t)h(with)f(the)g(MPI1)g(exten)o(t)h
(functions,)f(w)o(e)g(w)o(ould)f(need)i(three)g(functions:)166
1426 y Fd(MPI)p 243 1426 13 2 v 14 w(TRUE)p 366 1426
V 15 w(LB\(datat)o(yp)q(e,)g(lb\))166 1475 y(MPI)p 243
1475 V 14 w(TRUE)p 366 1475 V 15 w(UB\(datat)o(yp)q(e,)f(ub\))166
1525 y(MPI)p 243 1525 V 14 w(TRUE)p 366 1525 V 15 w(EXTENT\(datat)o(yp)
q(e,)h(extent\))166 1575 y Fl(On)f(the)h(other)f(hand,)f(w)o(e)i(ma)o
(y)c(not)j(w)o(an)o(t)g(to)f(mak)o(e)g(the)h(same)f(mistak)o(e)g(t)o
(wice...)75 1766 y Fn(3.6)59 b(Datat)n(yp)r(e)18 b(extent)75
1914 y Fm(Curren)o(t)c(Status:)j Fl(P)o(assed)e(once.)166
2018 y Fq(MPI)21 b(allo)o(ws)h(one)f(to)g(c)o(hange)h(the)f(exten)o(t)g
(of)g(a)h(datat)o(yp)q(e,)g(using)g(lo)o(w)o(er)f(b)q(ound)h(and)g(upp)
q(er)75 2074 y(b)q(ound)e(mark)o(ers)e(\()p Fd(MPI)p
490 2074 V 14 w(LB)h Fq(and)g Fd(MPI)p 740 2074 V 14
w(UB)p Fq(\).)f(This)h(is)h(useful,)g(as)f(it)g(allo)o(ws)g(to)f(con)o
(trol)h(the)g(stride)g(of)75 2131 y(successiv)o(e)e(datat)o(yp)q(es)e
(that)g(are)g(replicated)i(b)o(y)e(datat)o(yp)q(e)g(constructors,)g(or)
g(are)g(replicated)i(b)o(y)f(the)75 2187 y Fj(count)k
Fq(argumen)o(t)e(in)i(a)e(send)h(or)g(reciev)o(e)g(call.)32
b(Ho)o(w)o(ev)o(er,)19 b(the)f(curren)o(t)h(mec)o(hanism)h(for)e(ac)o
(hieving)75 2244 y(it)h(is)h(painful;)i(also)d(it)h(is)f(restrictiv)o
(e,)i(as)d Fd(MPI)p 906 2244 V 15 w(LB)h Fq(and)g Fd(MPI)p
1157 2244 V 14 w(UB)g Fq(are)f(\\stic)o(ky":)28 b(once)19
b(presen)o(t)g(in)h(a)75 2300 y(datat)o(yp)q(e,)d(they)h(cannot)g(b)q
(e)g(o)o(v)o(eriden)g(\(e.g.,)f(the)h(upp)q(er)h(b)q(ound)f(can)g(b)q
(e)g(mo)o(v)o(ed)g(up,)g(b)o(y)g(adding)g(a)75 2357 y(new)13
b Fd(MPI)p 243 2357 V 14 w(UB)g Fq(mark)o(er,)f(but)h(cannot)g(b)q(e)g
(mo)o(v)o(ed)g(do)o(wn)f(b)q(elo)o(w)i(an)f(existing)h
Fj(MPI)p 1474 2357 14 2 v 15 w(UB)g Fq(mark)o(er\).)k(A)13
b(new)75 2413 y(function)j(is)g(pro)o(vided)g(to)e(facilitate)i(these)g
(c)o(hanges.)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: 7 9
7 8 bop 75 -100 a Fg(3.7.)34 b(MPI-1.0)14 b(AND)i(MPI-1.1)e(CLARIFICA)l
(TIONS)802 b Fq(7)75 45 y Fj(MPI)p 160 45 14 2 v 16 w(SET)p
259 45 V 17 w(EXTENT\(datat)o(yp)q(e,)16 b(lb,)f(extent\))117
122 y Fl(INOUT)62 b Fj(datat)o(yp)q(e)424 b Fl(datat)o(yp)q(e)14
b(to)g(up)q(date)h(exten)o(t)117 197 y(IN)155 b Fj(true)p
396 197 V 17 w(lb)461 b Fl(new)15 b(lo)o(w)o(er)e(b)q(ound)h(of)f
(datat)o(yp)q(e)117 273 y(IN)155 b Fj(true)p 396 273
V 17 w(extent)379 b Fl(new)15 b(exten)o(t)f(of)g(datat)o(yp)q(e)75
397 y Fk(int)23 b(MPI)p 245 397 15 2 v 17 w(Set)p 334
397 V 17 w(extent\(MPI)p 591 397 V 16 w(Datatype)g(datatype,)f(MPI)p
1132 397 V 17 w(Aint)h(lb,)h(MPI)p 1436 397 V 17 w(Aint)f(extent\))75
483 y(MPI)p 150 483 V 17 w(TRUE)p 263 483 V 16 w(EXTENT\(DATATYPE,)f
(LB,)i(EXTENT,)e(IERROR\))170 540 y(INTEGER)h(DATATYPE,)g(LB,)g
(EXTENT,)g(IERROR)166 626 y Fq(Resets)13 b(the)g(lo)o(w)o(er)g(b)q
(ound)h(and)f(the)h(exten)o(t)e(\(and,)h(hence,)h(the)g(upp)q(er)g(b)q
(ound\))f(of)g Fj(datat)o(yp)q(e)p Fq(.)21 b(The)75 683
y(new)e(settings)f(will)i(a\013ect)e(the)h(outcome)f(of)g(send)h(or)f
(receiv)o(e)h(op)q(erations)g(that)e(use)i Fj(datat)o(yp)q(e)p
Fq(,)i(and)75 739 y(a\013ects)14 b(the)i(v)m(alue)g(of)f(datat)o(yp)q
(es)g(constructed)g(using)h Fj(datat)o(yp)q(e)h Fq(as)e(an)g(agumen)o
(t,)f(after)h(the)g(call)i(w)o(as)75 796 y(made.)i(Ho)o(w)o(ev)o(er,)11
b(datat)o(yp)q(es)h(that)f(w)o(ere)h(previously)i(constructed)e(using)h
Fj(datat)o(yp)q(e)h Fq(are)e(not)g(a\013ected.)189 902
y Fe(R)n(ationale.)189 977 y Fq(This)h(is)g(consisten)o(t)f(to)g(the)h
(MPI)f(statemen)o(t)g(that)g(\\the)g(system)g(b)q(eha)o(v)o(es)h(as)f
(if)h(input)g(datat)o(yp)q(e)189 1034 y(argumen)o(ts)h(to)h(deriv)o(ed)
h(datat)o(yp)q(e)e(constructors)h(are)g(passed)g(b)o(y)g(v)m(alue".)189
1109 y(\()p Fe(End)g(of)i(r)n(ationale.)p Fq(\))189 1215
y Fe(A)n(dvic)n(e)g(to)h(users.)51 b Fq(It)17 b(is)g(recommended)h
(that)f(uses)g(use)g(the)g(function)h Fj(MPI)p 1571 1215
14 2 v 16 w(SET)p 1670 1215 V 17 w(EXTENT)p Fq(,)189
1271 y(rather)c(than)h Fd(MPI)p 508 1271 13 2 v 15 w(LB)g
Fq(and)g Fd(MPI)p 751 1271 V 15 w(UB)f Fq(mark)o(ers.)189
1347 y(\()p Fe(End)h(of)i(advic)n(e)f(to)g(users.)p Fq(\))1875
1408 y Fi(?)g Fh(\(Oct\))75 1540 y Fn(3.7)59 b(MPI-1.0)19
b(and)h(MPI-1.1)f(Cla)n(ri\014cations)75 1643 y Ff(3.7.1)49
b(Cla)o(ri\014cation)18 b(of)e(MPI)p 627 1643 15 2 v
18 w(FINALIZE)1875 1672 y Fi(>)g Fh(\(Oct\))75 1776 y
Fm(Curren)o(t)e(Status:)j Fl(Not)d(v)o(oted)g(on.)166
1880 y Fq(This)j(routine)f(cleans)h(up)f(all)h(MPI)f(state.)22
b(Eac)o(h)16 b(pro)q(cess)g(m)o(ust)f(call)i Fj(MPI)p
1485 1880 14 2 v 16 w(FINALIZE)e Fq(b)q(efore)i(it)75
1936 y(exits.)j(Once)c(this)f(routine)g(returns,)f(no)h(MPI)g(routine)g
(\(ev)o(en)g(not)f Fj(MPI)p 1338 1936 V 16 w(INIT)p Fq(\))f(ma)o(y)h(b)
q(e)i(called.)21 b(Eac)o(h)75 1992 y(pro)q(cess)11 b(m)o(ust)e
(complete)j(an)o(y)e(p)q(ending)i(comm)o(unication)f(it)g(initiated)h
(b)q(efore)e(it)h(calls)g Fj(MPI)p 1656 1992 V 16 w(FINALIZE)p
Fq(.)75 2049 y(If)16 b(the)g(call)h(returns,)e(eac)o(h)h(pro)q(cess)g
(ma)o(y)f(con)o(tin)o(ue)i(lo)q(cal)f(computations,)g(or)f(exit,)h
(without)g(partici-)75 2105 y(pating)g(in)g(further)g
Fj(MPI)f Fq(comm)o(unication)h(with)g(other)f(pro)q(cesses.)22
b Fj(MPI)p 1362 2105 V 16 w(FINALIZE)14 b Fq(is)j(collectiv)o(e)g(on)75
2162 y Fj(MPI)p 160 2162 V 16 w(COMM)p 318 2162 V 16
w(W)o(ORLD)p Fq(.)1369 b Fi(>)16 b Fh(\(Oct\))166 2218
y Fq(It)f(is)h(not)f(required)h(that)e Fj(MPI)p 703 2218
V 16 w(Finalize)h Fq(return,)g(ev)o(en)g(on)h(one)f(pro)q(cess.)1875
2220 y Fi(?)h Fh(\(Oct\))189 2325 y Fe(A)n(dvic)n(e)11
b(to)i(implementors.)38 b Fq(Ev)o(en)11 b(though)g(a)g(pro)q(cess)h
(has)f(completed)i(all)f(the)f(comm)o(unication)189 2381
y(it)j(initiated,)h(suc)o(h)g(comm)o(unication)f(ma)o(y)f(not)h(y)o(et)
g(b)q(e)g(completed)h(from)e(the)h(viewp)q(oin)o(t)h(of)f(the)189
2437 y(underlying)j(MPI)f(system.)k(E.g.,)14 b(a)h(blo)q(c)o(king)i
(send)f(ma)o(y)f(ha)o(v)o(e)g(completed,)i(ev)o(en)e(though)h(the)189
2494 y(data)k(is)h(still)h(bu\013ered)f(at)f(the)h(sender.)37
b(The)20 b(MPI)h(implemen)o(tation)h(m)o(ust)e(ensure)h(that)f(a)189
2550 y(pro)q(cess)14 b(has)g(completed)h(an)o(y)f(in)o(v)o(olv)o(emen)o
(t)g(in)h(MPI)f(comm)o(unication)h(b)q(efore)f Fj(MPI)p
1669 2550 V 16 w(FINALIZE)189 2607 y Fq(returns.)26 b(Th)o(us,)17
b(if)h(a)e(pro)q(cess)i(exits)g(after)e(the)h(call)i(to)d
Fj(MPI)p 1271 2607 V 16 w(FINALIZE)p Fq(,)g(this)i(will)h(not)e(cause)
189 2663 y(an)e(ongoing)g(comm)o(unication)h(to)e(fail.)21
b(\()p Fe(End)16 b(of)g(advic)n(e)g(to)h(implementors.)p
Fq(\))-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: 8 10
8 9 bop 75 -100 a Fq(8)970 b Fg(CHAPTER)15 b(3.)35 b(MISCELLANY)17
b(F)o(OR)e(1.2)189 45 y Fe(A)n(dvic)n(e)i(to)i(implementors.)54
b Fq(Although)18 b(it)g(is)g(not)f(required,)i(it)f(has)f(b)q(een)i
(found)f(that)f(users)189 102 y(exp)q(ect)f(that)f(at)f(least)i(one)f
(pro)q(cess)h(return,)f(so)g(that)g(they)h(can)f(kno)o(w)g(that)g(the)g
(MPI)h(p)q(ortion)189 158 y(of)e(the)g(computation)g(is)h(o)o(v)o(er.)k
(In)c(addition,)g(in)g(a)f(POSIX)i(en)o(vironmen)o(t,)e(they)h(ma)o(y)e
(desire)j(to)189 214 y(supply)f(an)f(exit)g(co)q(de)h(for)e(eac)o(h)h
(pro)q(cess)g(that)f(returns)h(from)f Fj(MPI)p 1357 214
14 2 v 16 w(FINALIZE)p Fq(.)g(\()p Fe(End)h(of)h(advic)n(e)189
271 y(to)h(implementors.)p Fq(\))-117 332 y Fi(>)f Fh(\(Oct\))75
464 y Fn(3.8)59 b(Determining)19 b(Whether)g(MPI)h(Has)g(Finished)75
613 y Fm(Curren)o(t)14 b(Status:)j Fl(No)d(v)o(otes.)166
716 y Fq(One)i(of)f(the)h(goals)f(of)h Fj(MPI)f Fq(w)o(as)f(to)h(allo)o
(w)h(for)f(la)o(y)o(ered)h(libraries.)23 b(In)16 b(order)f(for)g(a)h
(library)g(to)f(do)75 773 y(this)k(cleanly)l(,)i(it)e(needs)g(to)f(kno)
o(w)g(if)h Fj(MPI)f Fq(is)i(activ)o(e.)30 b(In)19 b Fj(MPI-1)f
Fq(the)h(function)g Fj(MPI)p 1590 773 V 16 w(Initialized)g
Fq(w)o(as)75 829 y(pro)o(vided)c(to)g(tell)g(if)g Fj(MPI)f
Fq(had)h(b)q(een)h(initialzed.)23 b(The)15 b(problem)g(arises)g(in)g
(kno)o(wing)g(if)g Fj(MPI)f Fq(has)h(b)q(een)75 886 y(\014nalized.)31
b(Once)19 b Fj(MPI)f Fq(has)g(b)q(een)h(\014nalized)h(it)f(is)g(no)f
(longer)g(activ)o(e)h(and)f(cannot)g(b)q(e)h(restarted.)28
b(A)75 942 y(library)16 b(needs)g(to)e(b)q(e)i(able)g(to)e(determine)i
(this)f(to)g(act)f(accordingly)l(.)22 b(Do)14 b(ac)o(hiev)o(e)i(this)f
(the)g(follo)o(wing)75 999 y(function)h(is)g(needed:)75
1150 y Fj(MPI)p 160 1150 V 16 w(FINALIZED\(\015ag\))117
1227 y Fl(OUT)108 b Fj(\015ag)518 b Fl(true)15 b(if)e
Fd(MPI)g Fl(w)o(as)h(\014nalized)g(\(logical\).)75 1351
y Fk(int)23 b(MPI)p 245 1351 15 2 v 17 w(Finalized\(int)f(*flag\))75
1438 y(MPI)p 150 1438 V 17 w(FINALIZED\(flag,)g(IERROR\)\))170
1494 y(FLAG,)i(IERROR)75 1581 y(int)f(MPI::Finalized\(bool)f
(&flag\)\)?????)166 1667 y Fq(This)17 b(function)g(returns)f(true)g(if)
h Fj(MPI)p 833 1667 14 2 v 16 w(FINALIZE)e Fq(has)h(returned.)23
b(Th)o(us,)16 b(it)h(will)h(return)e(false)g(if)75 1724
y(called)k(in)f(a)f(callbac)o(k)h(routine)f(in)o(v)o(ok)o(ed)h(b)o(y)f
Fj(MPI)p 960 1724 V 16 w(FINALIZE)p Fq(.)f(It)h(is)g(legal)h(to)f(call)
h Fj(MPI)p 1636 1724 V 16 w(FINALIZED)75 1780 y Fq(b)q(efore)c
Fj(MPI)p 296 1780 V 16 w(INIT)g Fq(and)g(after)g Fj(MPI)p
694 1780 V 15 w(FINALIZE)p Fq(.)-1030 b Fi(?)15 b Fh(\(Oct\))-117
1839 y Fi(>)g Fh(\(Oct\))75 1902 y Ff(3.8.1)49 b(Cla)o(ri\014cation)18
b(of)e(status)f(after)h(MPI)p 875 1902 15 2 v 18 w(Isend)75
2035 y Fm(Curren)o(t)e(Status:)j Fl(No)d(v)o(otes.)166
2138 y Fq(A)22 b Fj(status)i Fq(returned)e(b)o(y)g(a)g(call)h(to)e
Fj(MPI)p 900 2138 14 2 v 16 w(W)l(AIT)p Fq(,)g Fj(MPI)p
1145 2138 V 16 w(TEST)p Fq(,)h(or)f(an)o(y)h(of)f(the)h(other)g(deriv)o
(ed)75 2195 y(functions,)j(where)f(the)f Fj(request)h
Fq(corresp)q(onds)g(to)e(a)h(send)g(call,)j(is)e(unde\014ned,)i(with)d
(t)o(w)o(o)f(excep-)75 2251 y(tions:)36 b(The)24 b(error)f(status)f
(\014eld)j(will)g(con)o(tain)e(v)m(alid)i(information)f(if)f(the)h(w)o
(ait)f(or)g(test)f(call)j(re-)75 2308 y(turned)20 b(with)g
Fd(MPI)p 411 2308 13 2 v 15 w(ERROR)p 563 2308 V 13 w(IN)p
617 2308 V 15 w(ST)m(A)m(TUS)p Fq(;)f(and)h(the)g(returned)g(status)f
(can)h(b)q(e)g(querried)h(b)o(y)f(the)g(call)75 2364
y Fj(MPI)p 160 2364 14 2 v 16 w(TEST)p 290 2364 V 16
w(CANCELLED)p Fq(.)-690 b Fi(?)15 b Fh(\(Oct\))75 2486
y Ff(3.8.2)49 b(Cla)o(ri\014cation)18 b(of)e(MPI)p 627
2486 15 2 v 18 w(INTERCOMM)p 936 2486 V 20 w(CREA)l(TE)75
2619 y Fm(Curren)o(t)e(Status:)j Fl(P)o(assed)e(once.)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: 9 11
9 10 bop 75 -100 a Fg(3.8.)34 b(DETERMINING)15 b(WHETHER)h
Fj(MPI)e Fg(HAS)i(FINISHED)630 b Fq(9)75 45 y Fj(The)11
b(Problem:)44 b Fq(The)12 b(MPI)e(1.1)g(standard)h(sa)o(ys,)f(in)i(the)
f(discussion)h(of)f Fj(MPI)p 1389 45 14 2 v 16 w(INTERCOMM)p
1679 45 V 16 w(CREA)l(TE)p Fq(,)75 102 y(b)q(oth)k(that)189
195 y(The)g(groups)g(m)o(ust)g(b)q(e)g(disjoin)o(t)75
289 y(and)g(that)189 383 y(The)g(leaders)h(ma)o(y)e(b)q(e)i(the)g(same)
e(pro)q(cess.)75 477 y(T)l(o)d(further)h(m)o(uddy)g(the)g(w)o(aters,)e
(the)i(reason)f(giv)o(en)i(for)e(\\The)g(groups)g(m)o(ust)h(b)q(e)g
(disjoin)o(t")g(is)g(based)g(on)75 533 y(concerns)18
b(ab)q(out)g(the)g(implmen)o(tation)g(of)g Fj(MPI)p 922
533 V 15 w(INTERCOMM)p 1211 533 V 17 w(CREA)l(TE)h Fq(that)e(are)g(not)
h(applicable)75 590 y(for)d(the)g(case)g(where)h(the)f(leaders)h(are)f
(the)g(same)g(pro)q(cess.)75 710 y Fj(The)h(Fix:)45 b
Fq(Delete)15 b(the)h(text:)189 804 y(\(the)f(t)o(w)o(o)e(leaders)j
(could)h(b)q(e)e(the)h(same)f(pro)q(cess\))75 897 y(from)f(the)i
(discussion)h(of)d Fj(MPI)p 610 897 V 16 w(INTERCOMM)p
900 897 V 17 w(CREA)l(TE)p Fq(.)166 954 y(Replace)j(the)e(text:)189
1048 y(All)f(in)o(ter-comm)o(unicator)g(constructors)e(are)h(blo)q(c)o
(king)h(and)g(require)g(that)e(the)i(lo)q(cal)g(and)189
1104 y(remote)g(groups)h(b)q(e)h(disjoin)o(t)g(in)g(order)f(to)f(a)o(v)
o(oid)h(deadlo)q(c)o(k.)75 1198 y(with)189 1292 y(All)f(in)o(ter-comm)o
(unicator)g(constructors)e(are)h(blo)q(c)o(king)h(and)g(require)g(that)
e(the)i(lo)q(cal)g(and)189 1348 y(remote)g(groups)h(b)q(e)h(disjoin)o
(t.)289 1454 y Fe(A)n(dvic)n(e)e(to)h(users.)40 b Fq(The)14
b(groups)g(m)o(ust)f(b)q(e)i(disjoin)o(t)g(for)e(sev)o(eral)h(reasons.)
19 b(Primar-)289 1511 y(ily)l(,)12 b(this)f(is)g(the)f(in)o(ten)o(t)h
(of)f(the)g(in)o(tercomm)o(unicators)h({)f(to)g(pro)o(vide)h(a)f(comm)o
(unicator)289 1567 y(for)17 b(comm)o(unication)i(b)q(et)o(w)o(een)g
(disjoin)o(t)f(groups.)29 b(This)19 b(is)f(re\015ected)h(in)g(the)g
(de\014-)289 1624 y(nition)e(of)f Fj(MPI)p 559 1624 V
15 w(INTERCOMM)p 848 1624 V 17 w(MERGE)p Fq(,)g(whic)o(h)h(allo)o(ws)g
(the)f(user)g(to)f(con)o(trol)h(the)289 1680 y(ranking)k(of)g(the)g
(pro)q(cesses)g(in)h(the)g(created)f(in)o(tracomm)o(unicator;)h(this)g
(ranking)289 1737 y(mak)o(es)c(little)i(sense)f(if)g(the)g(groups)g
(are)f(not)h(disjoin)o(t.)28 b(In)18 b(addition,)h(the)f(natural)289
1793 y(extension)c(of)g(collectiv)o(e)i(op)q(erations)e(to)f(in)o
(tercomm)o(unicators)h(\(b)q(eing)h(considered)289 1850
y(for)i(MPI-2\))h(mak)o(es)f(the)h(most)g(sense)g(when)h(the)f(groups)g
(are)f(disjoin)o(t.)30 b(It)18 b(is)g(the)289 1906 y(in)o(ten)o(t)i(of)
g(the)g(MPI)g(de\014nition)i(not)e(to)f(preclude)j(future)f
(extensions.)35 b(\()p Fe(End)20 b(of)289 1963 y(advic)n(e)c(to)g
(users.)p Fq(\))75 2084 y Ff(3.8.3)49 b(Cla)o(ri\014cation)18
b(of)e(Binding)i(of)f(MPI)p 854 2084 15 2 v 18 w(T)l(yp)q(e)p
971 2084 V 18 w(size)75 2217 y Fm(Curren)o(t)d(Status:)j
Fl(P)o(assed)e(once.)166 2321 y Fq(This)i(clari\014cation)h(is)f
(needed)h(in)f(the)g(MPI-1)f(description)i(of)e Fj(MPI)p
1369 2321 14 2 v 16 w(T)l(yp)q(e)p 1477 2321 V 17 w(size)p
Fq(,)h(since)g(the)g(issue)75 2378 y(rep)q(eatedly)f(arises.)k(It)c(is)
f(a)g(clari\014cation)i(of)e(the)g(binding.)189 2484
y Fe(A)n(dvic)n(e)20 b(to)j(users.)76 b Fq(The)21 b(binding)i(of)e
Fj(MPI)p 1004 2484 V 16 w(T)l(yp)q(e)p 1112 2484 V 17
w(size)p Fq(,)i(sp)q(eci\014cally)l(,)i(whether)d(the)f(output)189
2540 y(argumen)o(t)e(in)i(C)g(is)f(of)g(t)o(yp)q(e)h
Fk(int)f Fq(as)g(in)h(the)f(curren)o(t)h(standard)f(or)f(should)j(b)q
(e)f(c)o(hanged)g(to)189 2597 y(something)14 b(else,)i(has)e(b)q(een)i
(extensiv)o(ely)f(discussed)h(b)o(y)f(the)g(MPI)f(F)l(orum.)19
b(The)c(\014nal)g(decision)189 2653 y(is)g(to)g(lea)o(v)o(e)g(it)h(an)f
Fk(int)p Fq(.)k(\()p Fe(End)d(of)g(advic)n(e)g(to)h(users.)p
Fq(\))-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: 10 12
10 11 bop 75 -100 a Fq(10)952 b Fg(CHAPTER)16 b(3.)29
b(MISCELLANY)17 b(F)o(OR)e(1.2)75 45 y Ff(3.8.4)49 b(Cla)o
(ri\014cation)18 b(of)e(MPI)p 627 45 15 2 v 18 w(REDUCE)75
131 y Fq(The)f(curren)o(t)h(text)e(on)h(p.)20 b(115)15
b(lines)i(25-28)d(from)g(MPI-1.1)h(\(June)h(12,)e(1995\))f(sa)o(ys:)166
187 y(The)j Fj(datat)o(yp)q(e)i Fq(argumen)o(t)e(of)f
Fj(MPI)p 783 187 14 2 v 16 w(REDUCE)i Fq(m)o(ust)f(b)q(e)g(compatible)i
(with)e Fj(op)p Fq(.)23 b(Prede\014ned)18 b(op-)75 244
y(erators)h(w)o(ork)g(only)i(with)f(the)g Fj(MPI)g Fq(t)o(yp)q(es)g
(listed)h(in)g(Sec.)35 b(4.9.2)18 b(and)j(Sec.)35 b(4.9.3.)d
(User-de\014ned)75 300 y(op)q(erators)14 b(ma)o(y)h(op)q(erate)g(on)g
(general,)g(deriv)o(ed)h(datat)o(yp)q(es.)166 357 y(This)g(text)e(is)i
(c)o(hanged)g(to:)166 413 y(The)g Fj(datat)o(yp)q(e)i
Fq(argumen)o(t)e(of)f Fj(MPI)p 783 413 V 16 w(REDUCE)i
Fq(m)o(ust)f(b)q(e)g(compatible)i(with)e Fj(op)p Fq(.)23
b(Prede\014ned)18 b(op-)75 470 y(erators)c(w)o(ork)h(only)h(with)f(the)
h Fj(MPI)f Fq(t)o(yp)q(es)g(listed)i(in)f(Sec.)21 b(4.9.2)14
b(and)h(Sec.)21 b(4.9.3.)e(F)l(urthermore,)c(the)75 526
y Fj(datat)o(yp)q(e)20 b Fq(and)e Fj(op)h Fq(giv)o(en)f(for)g
(prede\014ned)i(op)q(erators)d(m)o(ust)h(b)q(e)h(the)f(same)g(on)g(all)
h(pro)q(cesses.)30 b(User-)75 583 y(de\014ned)15 b(op)q(erators)e(ma)o
(y)g(op)q(erate)g(on)h(general,)g(deriv)o(ed)h(datat)o(yp)q(es)e
(without)g(the)h(restrictions)g(ab)q(o)o(v)o(e)75 639
y(for)h(prede\014ned)h(op)q(erators.)-681 b Fi(>)15 b
Fh(\(Oct\))166 695 y Fq(Note)10 b(that)f(it)i(is)f(p)q(ossible)i(for)e
(users)g(to)f(supply)j(di\013eren)o(t)e(user-de\014ned)i(op)q(erations)
e(to)g Fj(MPI)p 1750 695 V 16 w(REDUCE)75 752 y Fq(in)23
b(eac)o(h)e(pro)q(cess.)40 b Fj(MPI)21 b Fq(do)q(es)h(not)f(de\014ne)i
(whic)o(h)g(op)q(erations)e(are)h(used)g(in)h(this)f(case)f(on)h(whic)o
(h)75 808 y(op)q(erands.)189 915 y Fe(A)n(dvic)n(e)e(to)h(users.)71
b Fq(Users)20 b(should)i(mak)o(e)d(no)i(assumptions)f(ab)q(out)g(ho)o
(w)g Fj(MPI)p 1638 915 V 16 w(RECUCE)h Fq(is)189 971
y(implemen)o(ted.)29 b(Safest)17 b(is)h(to)f(ensure)i(that)e(the)g
(same)h(function)g(is)g(passed)g(to)f Fj(MPI)p 1685 971
V 16 w(REDUCE)189 1028 y Fq(b)o(y)e(eac)o(h)g(pro)q(cess.)20
b(\()p Fe(End)c(of)g(advic)n(e)g(to)h(users.)p Fq(\))-117
1089 y Fi(?)e Fh(\(Oct\))75 1221 y Fn(3.9)59 b(New)20
b(Datat)n(yp)r(es)75 1324 y Ff(3.9.1)49 b(Simple)17 b(Struct)d(T)l(yp)q
(es)75 1457 y Fm(Curren)o(t)g(Status:)j Fl(Not)d(v)o(oted)g(on)f(y)o
(et.)75 1655 y Fj(MPI)p 160 1655 V 16 w(TYPE)p 293 1655
V 17 w(SIMPLE)p 469 1655 V 15 w(STRUCT\(count,)k(a)o(rra)o(y)p
908 1655 V 14 w(of)p 959 1655 V 16 w(blo)q(cklengths,)h(a)o(rra)o(y)p
1334 1655 V 14 w(of)p 1385 1655 V 16 w(t)o(yp)q(es,)e(newt)o(yp)q(e\))
117 1732 y Fl(IN)155 b Fj(count)482 b Fl(n)o(um)o(b)q(er)13
b(of)h(blo)q(c)o(ks)g(\(in)o(teger\))117 1807 y(IN)155
b Fj(a)o(rra)o(y)p 416 1807 V 15 w(of)p 468 1807 V 16
w(blo)q(cklengths)191 b Fl(n)o(um)o(b)q(er)13 b(of)h(elemen)o(ts)f(in)h
(eac)o(h)g(blo)q(c)o(k)g(\(arra)o(y)g(of)f(in)o(teger\))117
1882 y(IN)155 b Fj(a)o(rra)o(y)p 416 1882 V 15 w(of)p
468 1882 V 16 w(t)o(yp)q(es)327 b Fl(t)o(yp)q(e)15 b(of)e(elemen)o(ts)h
(in)f(eac)o(h)h(blo)q(c)o(k)g(\(arra)o(y)g(of)f(handle\))117
1958 y(OUT)108 b Fj(newt)o(yp)q(e)433 b Fl(new)15 b(datat)o(yp)q(e)f
(\(handle\))166 2082 y Fq(Eac)o(h)c(t)o(yp)q(e)h(in)g(the)g
Fj(a)o(rra)o(y)p 592 2082 V 14 w(of)p 643 2082 V 16 w(t)o(yp)q(es)h
Fq(list)g(m)o(ust)e(b)q(e)h(a)f Fe(p)n(ortable)h Fq(datat)o(yp)q(e:)17
b(I.e.,)10 b(a)h(basic)g(datat)o(yp)q(e,)f(or)75 2138
y(a)g(datat)o(yp)q(e)f(constructed)i(from)e(a)h(p)q(ortable)h(datat)o
(yp)q(e)e(using)i(one)f(of)g(the)g(constructors)g Fj(MPI)p
1681 2138 V 15 w(TYPE)p 1813 2138 V 17 w(CONTIGUOUS,)75
2195 y(MPI)p 160 2195 V 16 w(TYPE)p 293 2195 V 17 w(VECTOR,)16
b(MPI)p 600 2195 V 15 w(TYPE)p 732 2195 V 17 w(INDEXED,)f
Fq(or)g Fj(MPI)p 1110 2195 V 16 w(TYPE)p 1243 2195 V
16 w(SIMPLE)p 1418 2195 V 16 w(STRUCT)p Fq(.)166 2251
y(This)22 b(t)o(yp)q(e)g(constructor)f(is)i(similar)f(to)g
Fj(MPI)p 988 2251 V 15 w(TYPE)p 1120 2251 V 17 w(STRUCT)p
Fq(,)g(except)h(that)e(the)h(user)g(do)q(es)75 2308 y(not)e(supply)h
(an)f(arra)o(y)e(of)i(displacemen)o(ts.)35 b(Instead,)22
b(the)e(successiv)o(e)h(blo)q(c)o(ks)f(are)g(assumed)g(to)f(b)q(e)75
2364 y(con)o(tiguous.)g(P)o(adding)11 b(spaces)h(are)e(added,)j
(according)e(to)g(the)g(default)h(alignmen)o(t)g(rules)g(for)e
(structure)75 2421 y(comp)q(onen)o(ts.)21 b(This)c(facilitates)f(the)g
(construction)g(of)f(datat)o(yp)q(es)g(for)g(structures,)g(as)h(the)f
(user)h(need)75 2477 y(not)f(compute)g(displacemen)o(ts.)-743
b Fi(>)15 b Fh(\(Oct\))166 2534 y Fq(This)h(can)f(probably)h(b)q(e)g
(more)e(elegan)o(tly)i(expressed)g(in)g(terms)f(of)g(exten)o(ts.)-117
2536 y Fi(?)g Fh(\(Oct\))75 2640 y Fb(Example)j(3.1)k
Fq(The)14 b(follo)o(wing)g(co)q(de)f(declares)h(a)f(structure)g(t)o(yp)
q(e)g(and)h(creates)f(a)g(datat)o(yp)q(e)f(for)h(that)75
2696 y(structure)i(t)o(yp)q(e.)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: 11 13
11 12 bop 75 -100 a Fg(3.9.)34 b(NEW)15 b(D)o(A)l(T)l(A)l(TYPES)1245
b Fq(11)75 45 y Fk(struct)23 b(record)g({)147 102 y(char)g(name;)147
158 y(double)g(position[3];)147 214 y(float)47 b(mass;)147
271 y(})75 384 y(MPI_Datatype)22 b(record_type;)75 440
y(MPI_datatype)g(types[3])h(=)h({MPI_CHAR,)e(MPI_DOUBLE,)h(MPI_FLOAT};)
75 497 y(int)238 b(lengths[3])23 b(=)g({1,)h(3,)f(1};)75
610 y(MPI_Type_simple_struct\()e(3,)i(lengths,)g(types,)g
(record_type\);)189 704 y Fe(R)n(ationale.)76 b Fq(The)21
b(co)q(de)h(ab)q(o)o(v)o(e)f(is)h(m)o(uc)o(h)f(simpler)h(and)g(more)e
(natural)i(than)f(the)g(curren)o(t)189 760 y(approac)o(h,)14
b(that)h(uses)g Fj(MPI)p 677 760 14 2 v 16 w(TYPE)p 810
760 V 17 w(STRUCT)p Fq(,)g(and)h(requires)g(to)e(compute)h(displacemen)
o(ts.)189 834 y(It)i(also)g(pro)o(vides)h(a)f(de\014nition)i(of)e(the)h
(record)f(t)o(yp)q(e)h(that)e(is)i(arc)o(hitecture)g(indep)q(enden)o(t)
i(\(as-)189 890 y(suming)c(that)e(compilers)j(don't)e(\014ddle)i(with)e
(the)h(order)f(of)g(\014elds,)h(whic)o(h)g(is)g(true)f(in)i(C\))d({)i
(this)189 947 y(facilitates)f(transfer)e(of)h(records)g(using)h(RMA,)f
(an)g(\014ts)g(w)o(ell)h(with)g(v)m(arious)f(prop)q(osals)h(for)e
(third)189 1003 y(part)o(y)h(transfers.)19 b(\()p Fe(End)d(of)g(r)n
(ationale.)p Fq(\))189 1097 y Fe(A)n(dvic)n(e)h(to)h(users.)50
b Fq(Datat)o(yp)q(es)16 b(constructed)h(using)h Fj(MPI)p
1231 1097 V 16 w(TYPE)p 1364 1097 V 16 w(SIMPLE)p 1539
1097 V 16 w(STRUCT)g Fq(should)189 1154 y(b)q(e)i(used)g(only)g(for)f
(structures)g(that)g(use)h(the)g(default)g(alignmen)o(t)g(rules.)34
b(They)20 b(should)g(not)189 1210 y(b)q(e)c(used)h(if)f(alignmen)o(t)g
(rules)h(ha)o(v)o(e)f(b)q(een)h(c)o(hanged,)f(using)g(compiler)h
(options)f(or)g(compilation)189 1267 y(pragmas.)j(\()p
Fe(End)c(of)i(advic)n(e)f(to)g(users.)p Fq(\))189 1361
y Fe(A)n(dvic)n(e)g(to)h(implementors.)47 b Fq(The)16
b(datat)o(yp)q(e)g(constructor)f Fj(MPI)p 1330 1361 V
16 w(TYPE)p 1463 1361 V 17 w(SIMPLE)p 1639 1361 V 15
w(STRUCT)i Fq(is)189 1417 y(most)e(easily)i(implemen)o(ted)h(on)e
(systems)g(that)f(use)h Fe(natur)n(al)g Fq(data)g(alignmen)o(t)h
(rules.)23 b(On)17 b(suc)o(h)189 1474 y(systems,)12 b(eac)o(h)h(basic)g
(datat)o(yp)q(e)f(has)g(an)h(exten)o(t)f(and)h(an)g(alignmen)o(t;)h
(the)e(alignmen)o(t)i(of)e(a)g(com-)189 1530 y(p)q(ound)j(t)o(yp)q(e)g
(is)h(the)f(strictest)f(alignmen)o(t)i(of)e(a)g(comp)q(onen)o(t.)20
b(P)o(adding)c(is)f(added)g(so)g(that)f(eac)o(h)189 1587
y(comp)q(onen)o(t)f(is)h(aligned)g(at)f(its)g(natural)g(alignmen)o(t.)
20 b(W)l(e)13 b(can)g(then)h(deriv)o(e)g(ob)o(vious)f(de\014nitions)189
1643 y(for)h(the)h(exten)o(t)g(and)h(alignmen)o(t)g(of)e(p)q(ortable)i
(MPI)f(datat)o(yp)q(es:)189 1700 y(The)g(exten)o(t)f(and)h(alignmen)o
(t)g(of)f(a)h(basic)g(datat)o(yp)q(e)f(is)i(the)e(exten)o(t)h(and)g
(alignmen)o(t)g(of)f(the)h(cor-)189 1756 y(resp)q(onding)h(language)f
(t)o(yp)q(e.)189 1812 y(The)10 b(alignmen)o(t)h(of)f(a)f(datat)o(yp)q
(e)h(built)i(with)e(one)g(of)g(the)g(constructors)g Fj(MPI)p
1487 1812 V 15 w(TYPE)p 1619 1812 V 17 w(CONTIGUOUS,)189
1869 y(MPI)p 274 1869 V 15 w(TYPE)p 406 1869 V 17 w(VECTOR,)26
b Fq(and)e Fj(PI)p 780 1869 V 16 w(TYPE)p 913 1869 V
17 w(INDEXED)h Fq(is)g(the)f(alignmen)o(t)h(of)f(the)h(comp)q(onen)o(t)
189 1925 y(datat)o(yp)q(e;)14 b(the)h(exten)o(t)g(of)g(the)g(comp)q
(ound)h(datat)o(yp)q(e)f(is)g(as)g(de\014ned)i(in)f(MPI1.)189
1982 y(The)h(alignmen)o(t)g(of)f(a)g(datat)o(yp)q(e)h(built)h(b)o(y)e
(a)h(call)g(to)f Fj(MPI)p 1221 1982 V 16 w(TYPE)p 1354
1982 V 17 w(SIMPLE)p 1530 1982 V 16 w(STRUCT\(n,)h(lens,)189
2038 y(t)o(yp)q(es,)i(newt)o(yp)q(e\))h Fq(is)e(max)643
2045 y Fa(i)672 2038 y Fk(alignment)p Fq(\()p Fk(types)p
Fq([)p Fk(i)p Fq(]\);)e(the)i(exten)o(t)g(is)g(computed)h(b)o(y)f(la)o
(ying)g(out)189 2095 y(the)h(comp)q(onen)o(ts)g(with)h(minimal)h
(padding)f(added)g(so)f(that)g(eac)o(h)h(comp)q(onen)o(t)f(starts)f(at)
h(its)189 2151 y(alignmen)o(t.)189 2225 y(Some)g(compilers)h(treat)f
(the)g(\014rst)g(comp)q(onen)o(t)g(of)g(a)g(structure)g(di\013eren)o
(tly)l(.)33 b(E.g.,)18 b(the)i(IBM)189 2281 y(compiler)d(aligns)h
(doubles)f(at)f(w)o(ord)g(b)q(oundaries,)i(but)f(align)g(a)f(structure)
g(that)g(starts)f(with)i(a)189 2338 y(double)j(comp)q(onen)o(t)f(at)f
(doublew)o(ord)i(b)q(oundaries.)32 b(The)19 b(de\014nition)i(of)d(the)h
(alignmen)o(t)h(of)e(a)189 2394 y(datat)o(yp)q(e)h(built)i(with)f
Fj(MPI)p 690 2394 V 16 w(TYPE)p 823 2394 V 16 w(SIMPLE)p
998 2394 V 16 w(STRUCT)h Fq(is)f(c)o(hanged,)h(accordingly)l(.)34
b(\()p Fe(End)20 b(of)189 2450 y(advic)n(e)c(to)g(implementors.)p
Fq(\))75 2571 y Ff(3.9.2)49 b(Contiguous)17 b(Struct)e(T)l(yp)q(es)75
2704 y Fm(Curren)o(t)f(Status:)j Fl(F)m(ailed)c(6-7-10)f(at)i(Septem)o
(b)q(er)g(meeting.)-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: 12 14
12 13 bop 75 -100 a Fq(12)947 b Fg(CHAPTER)15 b(3.)35
b(MISCELLANY)17 b(F)o(OR)e(1.2)166 45 y Fq(Data)j(structures)i(ma)o(y)f
(con)o(tain)h(padding)g(holes,)i(added)e(for)f(alignmen)o(t.)34
b(The)20 b(de\014nition)h(of)75 102 y(an)f(MPI)g(datat)o(yp)q(e,)g
(done)g(using)g(the)g Fj(MPI)p 865 102 14 2 v 16 w(TYPE)p
998 102 V 17 w(STRUCT)g Fq(constructor,)g(do)q(es)g(not)g(distinguish)
75 158 y(b)q(et)o(w)o(een)15 b(holes)g(that)f(con)o(tains)g(no)h
(signi\014can)o(t)g(data,)f(and)h(are)f(there)h(only)g(for)f(alignmen)o
(t)h(purp)q(oses,)75 214 y(and)k(b)q(et)o(w)o(een)g(holes)g(that)f(ma)o
(y)f(con)o(tain)i(signi\014can)o(t)g(data)f(and)h(w)o(ere)f(purp)q
(osefully)j(left)e(out)f(b)o(y)g(a)75 271 y(user)k(that)e(wishes)i(not)
f(to)g(o)o(v)o(erwrite)g(some)g(of)g(the)g(information)h(in)g(a)f
(structure.)38 b(As)22 b(a)f(result,)75 327 y(MPI)g(cannot)g(o)o(v)o
(erwrite)f(these)h(holes,)i(this)f(prev)o(en)o(ts)e(the)i(ob)o(vious)f
(optimization)h(of)e(shipping)j(a)75 384 y(data)13 b(structure)h(as)g
(a)f(con)o(tiguous)h(blo)q(c)o(k)h(of)f(data,)f(padding)i(holes)f
(included.)22 b(The)15 b(t)o(yp)q(e)f(constructor)75
440 y Fj(MPI)p 160 440 V 16 w(TYPE)p 293 440 V 17 w(CONTIGUOUS)p
598 440 V 18 w(STRUCT)d Fq(marks)f(an)o(y)g(suc)o(h)h(holes)g(as)g
(\\don)o(t-care")e(lo)q(cations,)j(allo)o(wing)75 497
y(the)j(implemen)o(tation)i(to)d(o)o(v)o(erwrite)h(them.)75
648 y Fj(MPI)p 160 648 V 16 w(TYPE)p 293 648 V 17 w(CONTIGUOUS)p
598 648 V 18 w(STRUCT\(count,)j(a)o(rra)o(y)p 1041 648
V 14 w(of)p 1092 648 V 16 w(blo)q(cklengths,)h(a)o(rra)o(y)p
1468 648 V 14 w(of)p 1519 648 V 16 w(displacements,)g(a)o(r-)75
704 y(ra)o(y)p 136 704 V 15 w(of)p 188 704 V 16 w(t)o(yp)q(es,)e(newt)o
(yp)q(e\))117 781 y Fl(IN)155 b Fj(count)482 b Fl(n)o(um)o(b)q(er)13
b(of)h(blo)q(c)o(ks)g(\(in)o(teger\))117 856 y(IN)155
b Fj(a)o(rra)o(y)p 416 856 V 15 w(of)p 468 856 V 16 w(blo)q(cklengths)
191 b Fl(n)o(um)o(b)q(er)13 b(of)h(elemen)o(ts)f(in)h(eac)o(h)g(blo)q
(c)o(k)g(\(arra)o(y)g(of)f(in)o(teger\))117 932 y(IN)155
b Fj(a)o(rra)o(y)p 416 932 V 15 w(of)p 468 932 V 16 w(displacements)164
b Fl(b)o(yte)14 b(displacemen)o(t)g(of)f(eac)o(h)h(blo)q(c)o(k)g
(\(arra)o(y)g(of)f(in)o(teger\))117 1007 y(IN)155 b Fj(a)o(rra)o(y)p
416 1007 V 15 w(of)p 468 1007 V 16 w(t)o(yp)q(es)327
b Fl(t)o(yp)q(e)15 b(of)e(elemen)o(ts)h(in)f(eac)o(h)h(blo)q(c)o(k)g
(\(arra)o(y)g(of)f(handle\))117 1082 y(OUT)108 b Fj(newt)o(yp)q(e)433
b Fl(new)15 b(datat)o(yp)q(e)f(\(handle\))166 1206 y
Fq(The)c(seman)o(tics)h(of)e Fj(MPI)p 587 1206 V 16 w(TYPE)p
720 1206 V 17 w(CONTIGUOUS)p 1025 1206 V 18 w(STRUCT)i
Fq(are)f(iden)o(tical)i(to)d Fj(MPI)p 1611 1206 V 16
w(TYPE)p 1744 1206 V 17 w(STRUCT)p Fq(,)75 1263 y(except)15
b(that,)e(if)h(a)g(receiv)o(e)h(call)g(uses)g(a)e(datat)o(yp)q(e)h
(constructed)g(with)h(this)f(constructor,)f(then)i(the)f(in-)75
1319 y(ternal)f(holes)h(in)f(the)g(structure)g(can)g(b)q(e)g(o)o(v)o
(erwritten.)18 b(The)13 b(same)g(rule)h(\(namely)l(,)f(that)f(holes)i
(b)q(et)o(w)o(een)75 1376 y(comp)q(onen)o(ts)c(can)g(b)q(e)h(o)o(v)o
(erwritten\))e(applies)j(also)e(to)g(datat)o(yp)q(es)f(constructed)h
(using)h Fj(MPI)p 1635 1376 V 16 w(TYPE)p 1768 1376 V
17 w(SIMPLE)p 1944 1376 V 16 w(STRUCT)p Fq(.)166 1479
y Fm(Discussion:)29 b Fl(It)10 b(is)f(reasonable)g(to)g(assume)g(that)h
(holes)f(in)g(la)o(y)o(outs)f(de\014ned)j(using)e Fd(MPI)p
1576 1479 13 2 v 14 w(TYPE)p 1698 1479 V 14 w(SIMPLE)p
1857 1479 V 15 w(STRUCT)75 1536 y Fl(con)o(tain)14 b(no)h(signi\014can)
o(t)f(information,)e(since)k(this)f(datat)o(yp)q(e)g(constructor)h(is)f
(exp)q(ected)i(to)e(b)q(e)g(used)h(for)f(sp)q(ec-)75
1592 y(ifying)f(the)h(la)o(y)o(out)f(of)h(structures.)24
b(Users)16 b(will)e(b)q(e)i(required)g(to)f(use)h Fd(MPI)p
1271 1592 V 14 w(TYPE)p 1393 1592 V 14 w(STRUCT)f Fl(when)g(holes)h
(hold)75 1649 y(signi\014can)o(t)d(information.)189 1802
y Fe(A)n(dvic)n(e)e(to)i(users.)38 b Fq(Users)11 b(should)i(arrange)d
(the)i(\014elds)g(in)g(a)f(C)h(struct)e(t)o(yp)q(e)i(in)g(descending)h
(order)189 1859 y(of)i(their)i(size.)24 b(This)17 b(arrangemen)o(t)e
(has)h(t)o(w)o(o)f(adv)m(an)o(tages:)21 b(\014rstly)c(it)f(ma)o(y)g
(reduce)h(the)f(size)h(of)189 1915 y(the)i(struct)f(b)o(y)h
(eliminating)i(padding)f(b)q(et)o(w)o(een)f(elemen)o(ts)h(with)f
(di\013eren)o(t)g(alignmen)o(ts)h(\(this)189 1972 y(is)c(generally)i
(true)e(for)g(C)g(programs\).)22 b(Secondly)l(,)c(it)e(ma)o(y)g
(increase)h(the)g(n)o(um)o(b)q(er)f(of)g(cases)h(for)189
2028 y(whic)o(h)d(the)f(implemen)o(tation)h(can)g(p)q(erform)f(blo)q(c)
o(k)g(copies)i(b)o(y)e(ensuring)h(that)e(the)h(\014rst)g(elemen)o(t)189
2085 y(of)19 b(the)g(structure)g(has)h(the)f(most)g(stringen)o(t)g
(alignmen)o(t)h(requiremen)o(ts.)33 b(\()p Fe(End)19
b(of)i(advic)n(e)f(to)189 2141 y(users.)p Fq(\))189 2247
y Fe(A)n(dvic)n(e)15 b(to)i(implementors.)39 b Fq(An)16
b(implemen)o(tation)g(ma)o(y)f(ignore)g(the)h(constructor)189
2304 y Fj(MPI)p 274 2304 14 2 v 15 w(TYPE)p 406 2304
V 17 w(CONTIGUOUS)p 711 2304 V 18 w(STRUCT)p Fq(,)21
b(and)f(handle)i(it)e(exactly)h(as)f Fj(MPI)p 1539 2304
V 16 w(TYPE)p 1672 2304 V 17 w(STRUCT)p Fq(.)189 2360
y(Th)o(us,)f(there)g(is)h(\(almost\))d(no)i(o)o(v)o(erhead)g(in)g(supp)
q(orting)h(this)f(constructor,)g(without)g(taking)189
2417 y(adv)m(an)o(tage)f(of)h(it.)32 b(One)20 b(p)q(ossible)h(w)o(a)o
(y)d(of)h(taking)g(adv)m(an)o(tage)g(of)g(it,)h(is)g(to)e(adopt)h(a)g
(canoni-)189 2473 y(cal)d(\\wire")g(represen)o(tation)g(for)g
(structures.)22 b(Supp)q(ose)17 b(that)f(the)g(compiler)h(uses,)g(b)o
(y)f(default,)189 2530 y(natural)g(alignmen)o(t)i(rules)f(for)f
(structures:)23 b(eac)o(h)16 b(basic)i(comp)q(onen)o(t)e(is)i(aligned)g
(at)e(a)g(natural)189 2586 y(b)q(oundary)l(.)k(Supp)q(ose)14
b(that)f(one)h(adopts)f(natural)h(alignmen)o(t)g(rules)h(for)e
(messages)g(on)g(the)h(wire,)189 2642 y(in)19 b(a)f(homogeneous)g(en)o
(vironmen)o(t:)27 b(messages)18 b(are)g(padded)h(so)f(that)g(eac)o(h)g
(basic)h(elemen)o(t)g(is)189 2699 y(aligned)d(at)f(a)g(natural)g(b)q
(oundary)l(.)20 b(Then)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: 13 15
13 14 bop 75 -100 a Fg(3.9.)34 b(NEW)15 b(D)o(A)l(T)l(A)l(TYPES)1245
b Fq(13)189 45 y(\(1\))14 b(A)i(receiv)o(er)g(can)f(alw)o(a)o(ys)g
(deco)q(de)h(an)g(incoming)h(message)d(and)i(retriev)o(e)g(correctly)f
(the)h(ba-)189 102 y(sic)k(comp)q(onen)o(ts.)31 b(This)20
b(b)q(ecause)g(the)g(basic)g(datat)o(yp)q(e)e(of)h(the)g(elemen)o(t)h
(indicates)h(at)e(what)189 158 y(b)q(oundary)c(it)h(is)f(aligned.)189
214 y(\(2\))f(A)h(sender)g(can)h(blo)q(c)o(k)f(cop)o(y)g(a)g(structure)
g(on)o(to)f(the)h(\\wire")g(\(most)f(lik)o(ely)l(,)j(on)o(to)d(a)g
(message)189 271 y(bu\013er\),)19 b(when)g(the)g(structure)g(is)g
(naturally)h(aligned,)h Fe(r)n(elative)e(to)h(the)g(start)g(of)f(the)h
(sending)189 327 y(bu\013er)p Fq(.)26 b(This)18 b(optimization)g(do)q
(es)g(not)e(require)j(that)d(the)h(sending)i(datat)o(yp)q(e)e(b)q(e)h
(built)g(using)189 384 y Fj(MPI)p 274 384 14 2 v 15 w(TYPE)p
406 384 V 17 w(CONTIGUOUS)p 711 384 V 18 w(STRUCT)p Fq(:)c(The)g(MPI)f
(library)i(can)e(scan)h(datat)o(yp)q(es,)f(when)h(they)189
440 y(are)h(committed,)f(and)i(recognize)g(when)g(a)e(datat)o(yp)q(e)h
(\(or)f(a)h(datat)o(yp)q(e)g(fragmen)o(t\))f(is)h(naturally)189
497 y(aligned.)24 b(Blo)q(c)o(k)17 b(cop)o(ying)g(can)g(b)q(e)g(used)g
(ev)o(en)f(if)h(the)g(holes)g(in)g(the)f(datat)o(yp)q(e)g(con)o(tain)g
(signi\014-)189 553 y(can)o(t)e(information.)189 610
y(\(3\))h(A)h(receiv)o(er)h(can)f(blo)q(c)o(k)h(cop)o(y)f(an)g
(incoming)i(message)d(on)o(to)h(the)g(receiv)o(e)h(bu\013er)f(when)h
(the)189 666 y(receiving)e(structure)f(is)h(naturally)g(aligned)h
Fe(r)n(elative)f(to)g(the)h(start)g(of)f(the)h(r)n(e)n(c)n(eiving)d
(bu\013er)i Fq(and)189 723 y(holes)10 b(can)h(b)q(e)g(ignored.)18
b(I.e.,)11 b(when)g(the)f(receiving)i(datat)o(yp)q(e)d(is)i(built)g
(using)g Fj(MPI)p 1597 723 V 16 w(TYPE)p 1730 723 V 17
w(CONTIGUOUS)p 2035 723 V 18 w(STRUCT)189 779 y Fq(or)i
Fj(MPI)p 328 779 V 16 w(TYPE)p 461 779 V 17 w(SIMPLE)p
637 779 V 16 w(STRUCT)h Fq(and)g(is)h(naturally)f(aligned,)i(relativ)o
(e)e(to)g(its)g(\014rst)f(p)q(osition.)189 853 y(The)k(same)h(wire)g
(represen)o(tation)f(ma)o(y)g(b)q(e)h(used)g(in)h(a)e(heterogenous)h
(en)o(vironmen)o(t,)g(in)g(cases)189 909 y(where)h(data)e(con)o(v)o
(ersion)i(is)g(done)g(at)f(the)h(destination;)i(the)e(destination)g
(has)g(to)f(kno)o(w,)g(not)189 966 y(only)c(the)h(basic)g(datat)o(yp)q
(es)e(used)i(b)o(y)f(the)h(source,)f(but)g(also)h(the)f(alignmen)o(t)h
(rules)g(used)g(b)o(y)f(the)189 1022 y(source.)189 1096
y(Example:)34 b(Consider)23 b(a)f(C)g(structure)g Fk(struct)h({char)g
(a[2];)g(float)g(b[2];)h(double)f(c})p Fq(;)189 1153
y(assume)16 b(that)g(\015oats)g(are)g(4)h(b)o(ytes)f(and)h(doubles)h
(are)e(8)g(b)o(ytes,)h(and)g(structures)f(are)g(naturally)189
1209 y(aligned.)36 b(The)20 b(memory)f(la)o(y)o(out)h(is)44
b Fk([c][c]xx[ffff][ffff]xxxx[dddd)o(dddd])p Fq(,)18
b(and)i(the)189 1266 y(structure)15 b(is)g(aligned)i(to)d(an)i(8)e(b)o
(yte)h(b)q(oundary)l(.)189 1340 y(Case)c(1:)18 b(The)12
b(en)o(tire)g(structure)f(is)h(comm)o(unicated.)20 b(Sender)12
b(constructs)f(a)h(datat)o(yp)q(e)f(for)g(struc-)189
1396 y(ture)f(using)h Fj(MPI)p 479 1396 V 15 w(TYPE)p
611 1396 V 17 w(STRUCT,)g(MPI)p 910 1396 V 15 w(TYPE)p
1042 1396 V 17 w(SIMPLE)p 1218 1396 V 16 w(STRUCT)g Fq(or)f
Fj(MPI)p 1554 1396 V 15 w(TYPE)p 1686 1396 V 17 w(CONTIGUOUS)p
1991 1396 V 18 w(STRUCT)p Fq(;)189 1452 y(receiv)o(er)16
b(constructs)g(a)g(datat)o(yp)q(e)g(for)f(this)i(structure,)e(using)i
Fj(MPI)p 1379 1452 V 16 w(CONTIGUOUS)p 1683 1452 V 18
w(STRUCT)189 1509 y Fq(or)12 b Fj(MPI)p 327 1509 V 16
w(TYPE)p 460 1509 V 16 w(SIMPLE)p 635 1509 V 16 w(STRUCT)p
Fq(.)h(Then)g(the)g(la)o(y)o(outs)f(in)h(the)g(sender)g(memory)l(,)g
(on)f(the)h(wire,)189 1565 y(and)i(in)h(the)f(receiv)o(er)h(memory)f
(are)g(iden)o(tical,)h(and)g(data)e(can)i(b)q(e)g(simply)g(copied.)189
1639 y(Case)10 b(2:)17 b(comm)o(unication)12 b(in)o(v)o(olv)o(es)f
(only)h(the)f(second)g(of)f(the)h(t)o(w)o(o)f(c)o(haracters,)g(and)h
(the)g(remain-)189 1696 y(der)f(of)g(the)g(structure.)18
b(Receiv)o(er)11 b(constructs)f(the)g(datat)o(yp)q(e)g(using)h
Fj(MPI)p 1441 1696 V 16 w(CONTIGUOUS)p 1745 1696 V 18
w(STRUCT)p Fq(.)189 1752 y(The)19 b(memory)f(la)o(y)o(out)g(is)h
Fk([c]xx[ffff][ffff]xxxx[dddddd)o(dd])p Fq(,)d(and)j(the)g(wire)g(la)o
(y)o(out)f(is)189 1809 y Fk([c]xxx[ffff][ffff]xxxx[)o(dddddddd)o(])p
Fq(.)e(The)c(datat)o(yp)q(e)f(is)h(not)g(naturally)g(aligned,)h(so)f
(that)189 1865 y(blo)q(c)o(k)k(cop)o(ying)g(cannot)f(b)q(e)h(used)g(at)
f(the)h(sender)g(or)f(the)g(receiv)o(er.)22 b(Ho)o(w)o(ev)o(er,)14
b(a)h(smart)f(imple-)189 1922 y(men)o(tation)h(ma)o(y)g(realize)i(that)
e(the)h(fragmen)o(t)f(starting)g(from)g(the)h(\015oat)f(is)i(naturally)
f(aligned,)189 1978 y(relativ)o(e)e(to)e(the)i(start)e(of)h(the)g
(bu\013er,)h(so)f(that)f(blo)q(c)o(k)j(cop)o(ying)e(can)h(b)q(e)g(used)
g(for)f(this)g(fragmen)o(t.)189 2052 y(Case)f(3:)19 b(comm)o(unication)
14 b(in)o(v)o(olv)o(es)g(only)f(the)g(t)o(w)o(o)f(\015oats)h(and)g(the)
g(double.)21 b(The)13 b(memory)g(la)o(y-)189 2108 y(out)c(is)i
Fk([ffff][ffff]xxxx[dddddddd])o Fq(.)16 b(The)10 b(la)o(y)o(out)g(on)g
(the)g(wire)g(is)h Fk([ffff][ffff][dddddddd])p Fq(.)189
2165 y(The)j(datat)o(yp)q(e)f(is)i(not)f(naturally)g(aligned,)i
(relativ)o(e)e(to)g(its)g(start,)e(so)i(that)f(blo)q(c)o(k)i(cop)o
(ying)g(can-)189 2221 y(not)f(b)q(e)i(used.)21 b(\()p
Fe(End)15 b(of)i(advic)n(e)f(to)g(implementors.)p Fq(\))166
2360 y Fm(Alternativ)o(es)o(:)134 2432 y Fl(1.)22 b(No)14
b(new)h(function)f Fd(MPI)p 581 2432 13 2 v 14 w(TYPE)p
703 2432 V 15 w(CONTIGUOUS)p 985 2432 V 12 w(STRUCT)p
Fl(:)g(instead,)g(holes)h(can)g(b)q(e)g(o)o(v)o(erwritten)g(only)189
2482 y(for)f(datat)o(yp)q(es)i(built)e(with)g Fd(MPI)p
717 2482 V 15 w(TYPE)p 840 2482 V 14 w(SIMPLE)p 999 2482
V 15 w(STRUCT)p Fl(.)f(The)j(argumen)o(t)e(is)g(that,)h(at)g(least)g
(in)f(the)189 2532 y(scenario)f(I)g(presen)o(ted,)i(hole)d(o)o(v)o
(erwriting)h(is)g(tak)o(en)g(adv)n(an)o(tage)f(of)g(only)g(for)h
(structures)i(with)e(a)f(natural)189 2581 y(alignmen)o(t.)j(But,)f
(then,)g(their)h(la)o(y)o(out)d(can)i(b)q(e)h(sp)q(eci\014ed)g(using)f
Fd(MPI)p 1308 2581 V 14 w(TYPE)p 1430 2581 V 15 w(SIMPLE)p
1590 2581 V 14 w(STRUCT)p Fl(.)134 2654 y(2.)22 b(Both)d(sender)h(and)f
(receiv)o(er)h(are)g(required)f(to)g(use)h Fd(MPI)p 1126
2654 V 14 w(TYPE)p 1248 2654 V 14 w(CONTIGUOUS)p 1529
2654 V 13 w(STRUCT)p Fl(,)e(and)g(the)189 2704 y(datat)o(yp)q(es)c(on)f
(b)q(oth)h(ends)g(ha)o(v)o(e)g(to)f(b)q(e)h(structurally)g(equiv)n
(alen)o(t,)f(i.e.,)f(de\014ned)j(b)o(y)e(the)h(same)f(sequence)-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: 14 16
14 15 bop 75 -100 a Fq(14)947 b Fg(CHAPTER)15 b(3.)35
b(MISCELLANY)17 b(F)o(OR)e(1.2)189 45 y Fl(of)e(de\014nitions.)18
b(There)d(are)f(sev)o(eral)h(p)q(ossible)f(v)n(arian)o(ts)f(for)g(suc)o
(h)i(prop)q(osal)189 107 y(\(a\))20 b(This)g(construct)i(can)e(b)q(e)h
(only)e(used)i(in)f(a)g(homogeneous)f(en)o(vironmen)o(t.)36
b(But,)22 b(then,)g(w)o(e)e(lose)189 157 y(p)q(ortabilit)o(y)11
b(to)h(heterogeneous)j(en)o(vironmen)o(t,)c(and)i(w)o(e)g(ac)o(hiev)o
(e)f(little)g(that)h(could)f(not)h(b)q(e)g(ac)o(hiev)o(ed)g(b)o(y)189
207 y(using)g Fd(MPI)p 374 207 13 2 v 15 w(BYTE)p Fl(.)189
269 y(\(b\))18 b(This)g(construct)i(can)e(b)q(e)g(used)h(p)q(ortably)m
(,)f(with)g(enhanced)h(p)q(erformance)f(obtained)g(in)f(a)h(homo-)189
319 y(geneous)i(en)o(vironmen)o(t.)36 b(E.g.,)20 b(a)g(homogeneous)f
(implem)o(en)o(tation)e(will)i(use)h(blo)q(c)o(k)g(cop)o(ying,)g(while)
189 369 y(a)d(heterogeneous)j(implemen)o(tatio)o(n)15
b(will)i(mo)o(v)o(e)f(elemen)o(t)h(b)o(y)h(elemen)o(t)f(\(at)h(least,)g
(for)g(heterogeneous)189 419 y(comm)o(unicators\).)j(This)16
b(assumes)g(that,)g(in)f(a)h(homogeneous)e(en)o(vironmen)o(t,)h
(di\013eren)o(t)i(pro)q(cesses)i(are)189 469 y(compiled)8
b(with)i(the)g(same)f(data)h(alignmen)o(t)d(options.)17
b(Also,)10 b(this)g(runs)g(coun)o(ter)h(the)g(datat)o(yp)q(e)f(matc)o
(hing)189 518 y(rules)k(in)g(MPI,)f(where)i(only)e(signature)i(matc)o
(hing)d(is)h(required.)189 581 y(\(c\))d Fd(MPI)p 326
581 V 14 w(TYPE)p 448 581 V 14 w(CONTIGUOUS)p 729 581
V 13 w(STRUCT)f Fl(can)g(b)q(e)i(matc)o(hed)d(with)h(other)i(datat)o
(yp)q(es,)f(as)g(long)e(as)i(signa-)189 630 y(tures)g(matc)o(h;)f
(impro)o(v)o(ed)f(p)q(erformance)h(is)g(ac)o(hiev)o(ed)h(when)f(b)q
(oth)h(ends)g(use)g Fd(MPI)p 1463 630 V 14 w(TYPE)p 1585
630 V 15 w(CONTIGUOUS)p 1867 630 V 12 w(STRUCT)p Fl(.)189
680 y(But,)i(then,)h(the)g(wire)g(proto)q(col)f(m)o(ust)f(b)q(e)i(so)f
(that)h(individual)d(elemen)o(ts)i(can)h(b)q(e)f(extracted,)i(in)e
(case)h(the)189 730 y(receiv)o(er)k(do)q(es)f(not)f(use)i
Fd(MPI)p 664 730 V 14 w(TYPE)p 786 730 V 14 w(CONTIGUOUS)p
1067 730 V 13 w(STRUCT)p Fl(.)d(In)i(this)f(case,)i(asking)e(the)h
(sender)h(to)189 780 y(use)g Fd(MPI)p 340 780 V 14 w(TYPE)p
462 780 V 15 w(CONTIGUOUS)p 744 780 V 12 w(STRUCT)f Fl(do)q(es)h(not)g
(pro)o(vide)f(additional)f(function)h(o)o(v)o(er)h(the)g(main)189
830 y(prop)q(osal.)g(The)d(di\013erence)h(is)f(only)e(whether)j(the)f
(use)g(asserts)i(that)d(the)h(sending)g(datat)o(yp)q(e)f(has)h(a)f
(nat-)189 879 y(ural)i(la)o(y)o(out)g(\(using)h Fd(MPI)p
608 879 V 14 w(TYPE)p 730 879 V 14 w(CONTIGUOUS)p 1011
879 V 13 w(STRUCT)p Fl(\),)f(or)h(whether)h(MPI)f(disco)o(v)o(ers)h
(that)f(fact)189 929 y(b)o(y)d(itself.)75 1123 y Ff(3.9.3)49
b(Convenient)17 b(F)o(o)o(rm)d(of)j(MPI)p 731 1123 15
2 v 18 w(T)l(yp)q(e)p 848 1123 V 18 w(indexed)p 1018
1123 V 18 w(blo)q(ck)75 1256 y Fm(Curren)o(t)d(Status:)j
Fl(P)o(assed)e(once.)166 1360 y Fq(This)d(prop)q(osal)g(is)g(to)f(allo)
o(w)h(constan)o(t)f(blo)q(c)o(ksize)i(and)f(arbitrary)f(displacemen)o
(ts)i(in)f(the)g(in)o(terface)75 1416 y(to)e Fj(MPI)p
211 1416 14 2 v 15 w(TYPE)p 343 1416 V 17 w(INDEXED)p
Fq(.)g(The)g(routine)h(no)o(w)f(tak)o(es)f Fj(a)o(rra)o(y)p
1114 1416 V 14 w(of)p 1165 1416 V 16 w(blo)q(cklengths)k
Fq(and)d Fj(a)o(rra)o(y)p 1605 1416 V 15 w(of)p 1657
1416 V 16 w(displacements)75 1473 y Fq(as)17 b(argumen)o(ts.)27
b(There)18 b(are)f(man)o(y)h(co)q(des)g(using)g(indirect)i(addressing)e
(arising)g(from)f(unstructured)75 1529 y(grids)f(where)h(the)f(blo)q(c)
o(ksize)i(is)e(alw)o(a)o(ys)f(1)h(\(gather/scatter\).)k(W)l(e)c(prop)q
(ose)g(this)h(in)o(terface,)f(allo)o(wing)75 1586 y(for)f(constan)o(t)f
(blo)q(c)o(ksize)j(and)e(arbitrary)g(displacemen)o(ts.)75
1737 y Fj(MPI)p 160 1737 V 16 w(TYPE)p 293 1737 V 17
w(INDEXED)p 505 1737 V 16 w(BLOCK\()g(count,)i(blo)q(cklength,)h(a)o
(rra)o(y)p 1180 1737 V 14 w(of)p 1231 1737 V 16 w(displacements,)g
(oldt)o(yp)q(e,)f(newt)o(yp)q(e\))117 1870 y Fl(IN)155
b Fj(count)482 b Fl(length)14 b(of)f(arra)o(y)h(of)f(displacemen)o(ts)
117 1945 y(IN)155 b Fj(blo)q(cklength)371 b Fl(size)15
b(of)e(blo)q(c)o(k)117 2021 y(IN)155 b Fj(a)o(rra)o(y)p
416 2021 V 15 w(of)p 468 2021 V 16 w(displacements)164
b Fl(arra)o(y)14 b(of)f(displacemen)o(ts)117 2096 y(IN)155
b Fj(oldt)o(yp)q(e)450 b Fl(old)13 b(datat)o(yp)q(e)117
2171 y(OUT)108 b Fj(newt)o(yp)q(e)433 b Fl(new)15 b(datat)o(yp)q(e)75
2295 y Fk(int)23 b(MPI)p 245 2295 15 2 v 17 w(Type)p
358 2295 V 17 w(Indexed)p 543 2295 V 16 w(Block\()g(int)h(count,)f(int)
g(blocklength,)393 2352 y(int*)g(array)p 635 2352 V 17
w(of)p 700 2352 V 17 w(displacements,)f(MPI)p 1147 2352
V 17 w(Datatype)g(oldtype,)393 2408 y(MPI)p 468 2408
V 17 w(Datatype*)h(newtype)f(\))75 2495 y(MPI)p 150 2495
V 17 w(TYPE)p 263 2495 V 16 w(INDEXED)p 447 2495 V 17
w(BLOCK\(COUNT,)g(BLOCKLENGTH,)g(ARRAY)p 1204 2495 V
17 w(OF)p 1269 2495 V 16 w(DISPLACEMENTS,)g(OLDTYPE,)393
2551 y(NEWTYPE,)h(IERROR\))170 2608 y(INTEGER)g(COUNT,)g(INTEGER)g
(BLOCKLENGTH,)g(ARRAY)p 1153 2608 V 16 w(OF)p 1217 2608
V 17 w(DISPLACEMENT\(*\),)f(OLDTYPE,)170 2664 y(NEWTYPE,)h(IERROR)-117
2700 y Fi(>)15 b Fh(\(Oct\))1967 46 y(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: 15 17
15 16 bop 75 -100 a Fg(3.10.)34 b(MINOR)16 b(CORRECTIONS)1109
b Fq(15)75 45 y Fk(int)23 b(MPI::Datatype::Indexed)p
701 45 15 2 v 15 w(Block\()g(int)g(count,)g(int)h(blocklength,)393
102 y(const)f(int)h(array)p 755 102 V 16 w(of)p 819 102
V 17 w(displacements[],)393 158 y(const)f(MPI::Datatype&)f(oldtype)h
(\))1875 198 y Fi(?)16 b Fh(\(Oct\))75 331 y Fn(3.10)59
b(Mino)n(r)21 b(Co)n(rrections)75 480 y Fm(Curren)o(t)14
b(Status:)j Fl(P)o(assed)e(once.)166 584 y Fq(The)i(follo)o(wing)i
(corrections)e(to)g Fj(MPI-1.1)f Fq(are)h(\(all)h(page)f(and)g(line)i
(n)o(um)o(b)q(ers)f(are)f(for)g(the)g(June)75 640 y(12,)d(1995)g(v)o
(ersion)i(without)f(c)o(hangebars\):)143 746 y Fi(\017)23
b Fq(P)o(age)14 b(19,)g(lines)j(1-2)e(reads)189 803 y(for)f(\(64)g
(bit\))i(C)f(in)o(tegers)g(declared)i(to)d(b)q(e)i(of)f(t)o(yp)q(e)g
Fj(longlong)g(int)189 859 y Fq(but)g(should)h(read)189
916 y(for)e(\(64)g(bit\))i(C)f(in)o(tegers)g(declared)i(to)d(b)q(e)i
(of)f(t)o(yp)q(e)g Fj(long)g(long)g(int)189 1088 y Fm(Discussion)o(:)
189 1156 y Fl(Just)f(to)g(mak)o(e)f(it)g(correct)j(C)d(so)h(it)g(is)g
(long)f(long.)1875 1212 y Fi(>)j Fh(\(Oct\))143 1297
y Fi(\017)23 b Fq(P)o(age)14 b(41,)g(lines)j(16-18)d(reads)189
1354 y(A)19 b Fb(empt)o(y)g Fq(status)g(is)h(a)f(status)g(whic)o(h)i
(is)f(set)f(to)g(return)h Fj(tag)g(=)g(MPI)p 1460 1354
14 2 v 16 w(ANY)p 1568 1354 V 17 w(T)l(A)o(G)p Fq(,)f
Fj(source)i(=)189 1410 y(MPI)p 274 1410 V 15 w(ANY)p
381 1410 V 18 w(SOURCE)p Fq(,)11 b(and)g(is)h(also)e(in)o(ternally)j
(con\014gured)e(so)g(that)f(calls)h(to)g Fj(MPI)p 1601
1410 V 15 w(GET)p 1704 1410 V 17 w(COUNT)189 1467 y Fq(and)k
Fj(MPI)p 362 1467 V 16 w(GET)p 466 1467 V 17 w(ELEMENTS)g
Fq(return)g Fj(count)i(=)e(0)p Fq(.)189 1523 y(but)g(should)h(read)189
1580 y(A)j Fb(empt)o(y)g Fq(status)g(is)h(a)f(status)g(whic)o(h)i(is)f
(set)f(to)g(return)h Fj(tag)g(=)g(MPI)p 1460 1580 V 16
w(ANY)p 1568 1580 V 17 w(T)l(A)o(G)p Fq(,)f Fj(source)i(=)189
1636 y(MPI)p 274 1636 V 15 w(ANY)p 381 1636 V 18 w(SOURCE)p
Fq(,)c Fj(erro)o(r)e(=)i(MPI)p 842 1636 V 16 w(SUCCESS)p
Fq(,)h(and)f(is)g(also)g(in)o(ternally)h(con\014gured)f(so)g(that)189
1693 y(calls)f(to)e Fj(MPI)p 430 1693 V 16 w(GET)p 534
1693 V 17 w(COUNT)i Fq(and)f Fj(MPI)p 893 1693 V 16 w(GET)p
997 1693 V 17 w(ELEMENTS)g Fq(return)g Fj(count)i(=)e(0)p
Fq(.)189 1865 y Fm(Discussion)o(:)189 1933 y Fl(Filling)d(in)h(the)h
(error)h(\014eld)f(got)g(forgotten.)1875 1989 y Fi(?)i
Fh(\(Oct\))143 2074 y Fi(\017)23 b Fq(P)o(age)14 b(71,)g(line)j(10)e
(reads)189 2131 y(and)g(do)g(not)g(a\013ect)f(the)i(the)f(con)o(ten)o
(t)g(of)f(a)h(message)189 2187 y(but)g(should)h(read)189
2244 y(and)f(do)g(not)g(a\013ect)f(the)i(con)o(ten)o(t)e(of)h(a)g
(message)189 2416 y Fm(Discussion)o(:)189 2484 y Fl(This)e(is)h(a)g
(trivial)e(t)o(yp)q(o)i(of)f(ha)o(ving)g(the)h(2)g(times.)143
2626 y Fi(\017)23 b Fq(P)o(age)14 b(74,)g(lines)j(39-45)d(read)189
2682 y(A)i(datat)o(yp)q(e)f(ma)o(y)g(sp)q(ecify)i(o)o(v)o(erlapping)g
(en)o(tries.)22 b(The)16 b(use)g(of)g(suc)o(h)g(a)f(datat)o(yp)q(e)h
(in)g(a)g(receiv)o(e)-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: 16 18
16 17 bop 75 -100 a Fq(16)947 b Fg(CHAPTER)15 b(3.)35
b(MISCELLANY)17 b(F)o(OR)e(1.2)189 45 y Fq(op)q(eration)f(is)h
(erroneous.)k(\(This)14 b(is)h(erroneous)f(ev)o(en)g(if)h(the)f(actual)
g(message)g(receiv)o(ed)h(is)g(short)189 102 y(enough)g(not)g(to)g
(write)g(an)o(y)g(en)o(try)g(more)f(than)h(once.\))189
174 y(A)i(datat)o(yp)q(e)g(ma)o(y)g(sp)q(ecify)i(o)o(v)o(erlapping)g
(en)o(tries.)27 b(If)18 b(suc)o(h)g(a)g(datat)o(yp)q(e)f(is)h(used)g
(in)h(a)e(receiv)o(e)189 231 y(op)q(eration,)d(that)h(is,)g(if)g(some)g
(part)f(of)h(the)f(receiv)o(e)i(bu\013er)f(is)h(written)f(more)f(than)h
(once)g(b)o(y)g(the)189 287 y(receiv)o(e)h(op)q(eration,)f(then)g(the)h
(call)g(is)g(erroneous.)189 359 y(The)i(\014rst)f(part)g(w)o(as)h(an)f
Fj(MPI-1.1)g Fq(addition.)29 b(The)18 b(second)g(part)f(o)o(v)o(erlaps)
h(with)g(it.)28 b(The)18 b(old)189 416 y(text)c(will)j(b)q(e)f(remo)o
(v)o(ed)f(so)g(it)g(no)o(w)g(reads)189 472 y(A)h(datat)o(yp)q(e)f(ma)o
(y)g(sp)q(ecify)i(o)o(v)o(erlapping)g(en)o(tries.)22
b(The)16 b(use)g(of)g(suc)o(h)g(a)f(datat)o(yp)q(e)h(in)g(a)g(receiv)o
(e)189 529 y(op)q(eration)e(is)h(erroneous.)k(\(This)14
b(is)h(erroneous)f(ev)o(en)g(if)h(the)f(actual)g(message)g(receiv)o(ed)
h(is)g(short)189 585 y(enough)g(not)g(to)g(write)g(an)o(y)g(en)o(try)g
(more)f(than)h(once.\))189 698 y Fm(Discussion)o(:)189
764 y Fl(The)f(in)o(ten)o(t)h(is)f(to)g(remo)o(v)o(e)f(duplicate)h
(text)h(whic)o(h)f(seems)h(to)f(ha)o(v)o(e)g(b)q(een)h(left.)k(No)14
b(c)o(hange)h(in)f(meaning)189 814 y(is)f(in)o(tended.)143
950 y Fi(\017)23 b Fq(P)o(age)14 b(90,)g(line)j(3)e(reads)189
1006 y(MPI)p 281 1006 14 2 v 16 w(P)o(ac)o(k)p 393 1006
V 16 w(size\(coun)o(t,)g(MPI)p 724 1006 V 16 w(CHAR,)h(&k2\);)189
1063 y(but)f(should)h(read)189 1119 y(MPI)p 281 1119
V 16 w(P)o(ac)o(k)p 393 1119 V 16 w(size\(coun)o(t,)f(MPI)p
724 1119 V 16 w(CHAR,)h(comm,)e(&k2\);)189 1289 y Fm(Discussion)o(:)189
1355 y Fl(This)f(is)h(a)g(minor)e(\014x)i(to)f(an)h(example)f(for)g(a)h
(missing)e(argumen)o(t.)143 1490 y Fi(\017)23 b Fq(P)o(age)14
b(90,)g(line)j(10)e(reads)189 1547 y(MPI)p 281 1547 V
16 w(P)o(ac)o(k\(c)o(hr,)f(coun)o(t,)g(MPI)p 726 1547
V 17 w(CHAR,)h(&lbuf,)h(k,)f(&p)q(osition,)h(comm\);)189
1603 y(but)f(should)h(read)189 1660 y(MPI)p 281 1660
V 16 w(P)o(ac)o(k\(c)o(hr,)e(coun)o(t,)g(MPI)p 726 1660
V 17 w(CHAR,)h(lbuf,)h(k,)f(&p)q(osition,)h(comm\);)189
1829 y Fm(Discussion)o(:)189 1895 y Fl(This)e(is)h(a)f(minor)f(\014x)i
(to)g(an)f(example)g(for)g(an)g(argumen)o(t)g(that)h(is)g(declared)g
(to)g(b)q(e)g(a)g(p)q(oin)o(ter)g(and)f(then)189 1945
y(passed)h(with)e(&.)143 2081 y Fi(\017)23 b Fq(P)o(age)14
b(109,)g(lines)j(26/27)d(and)h(page)g(110,)f(lines)j(28/29)d(reads)189
2137 y(The)h Fk(j)p Fq(th)g(blo)q(c)o(k)g(of)g(data)f(sen)o(t)h(from)f
(eac)o(h)h(pro)q(cess)g(is)h(receiv)o(ed)g(b)o(y)f(ev)o(ery)f(pro)q
(cess)i(and)f(placed)189 2194 y(in)h(the)f Fk(j)p Fq(th)g(blo)q(c)o(k)h
(of)f(the)g(bu\013er)g Fj(recvbuf)p Fq(.)189 2250 y(but)g(should)h
(read)189 2307 y(The)g(blo)q(c)o(k)i(of)e(data)g(sen)o(t)g(from)g(the)g
Fk(j)p Fq(th)h(pro)q(cess)g(is)g(receiv)o(ed)g(b)o(y)g(ev)o(ery)f(pro)q
(cess)h(and)g(placed)189 2363 y(in)f(the)f Fk(j)p Fq(th)g(blo)q(c)o(k)h
(of)f(the)g(bu\013er)g Fj(recvbuf)p Fq(.)189 2533 y Fm(Discussion)o(:)
189 2598 y Fl(This)e(is)g(related)h(to)f(a)f(subtle)i(p)q(oin)o(t)f(in)
g(usage.)18 b(The)13 b(sendbuf)h(is)f(a)g(single)g(item)f(whereas)i
(the)g(recvbuf)g(is)189 2648 y(an)f(\\arra)o(y")g(of)h(items.)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: 17 19
17 18 bop 75 -100 a Fg(3.10.)34 b(MINOR)16 b(CORRECTIONS)1109
b Fq(17)143 45 y Fi(\017)23 b Fq(P)o(age)14 b(117,)g(lines)j(22/23)d
(reads)189 102 y(MPI)h(pro)o(vides)g(sev)o(en)h(suc)o(h)f(prede\014ned)
i(datat)o(yp)q(es.)189 158 y(but)e(should)h(read)189
214 y(MPI)f(pro)o(vides)g(nine)i(suc)o(h)e(prede\014ned)i(datat)o(yp)q
(es.)189 442 y Fm(Discussion)o(:)189 509 y Fl(This)c(is)h(an)g(ob)o
(vious)f(mistak)o(e.)k(There)e(are)f(nine)g(listed)g(on)f(line)h
(28-40.)143 647 y Fi(\017)23 b Fq(P)o(age)14 b(122,)g(lines)j(35-36)d
(read)204 704 y Fj(MPI)p 289 704 14 2 v 16 w(OP)p 367
704 V 16 w(FREE\()i(op\))230 893 y Fl(IN)156 b Fj(op)541
b Fl(op)q(eration)14 b(\(handle\))189 1035 y Fq(but)h(should)h(read)204
1091 y Fj(MPI)p 289 1091 V 16 w(OP)p 367 1091 V 16 w(FREE\()g(op\))230
1280 y Fl(INOUT)63 b Fj(op)541 b Fl(op)q(eration)14 b(\(handle\))189
1463 y Fm(Discussion)o(:)189 1530 y Fl(This)j(app)q(ears)g(to)g(ha)o(v)
o(e)g(b)q(een)h(a)f(mistak)o(e.)26 b(This)17 b(function)g(frees)h(the)g
(function)e(p)q(oin)o(ter)i(and)f(sets)h(its)189 1580
y(v)n(alue)10 b(to)h(MPI)p 424 1580 13 2 v 15 w(OP)p
499 1580 V 15 w(NULL.)g(Th)o(us,)g(it)g(is)g(b)q(oth)g(input)g(and)f
(output)i(as)f(are)g(the)g(free)h(routines)g(for)e(Groups,)189
1629 y(Comms,)g(etc.)143 1768 y Fi(\017)23 b Fq(P)o(age)14
b(125,)g(line)j(1)e(reads)189 1824 y(CALL)h(MPI)p 420
1824 14 2 v 16 w(ALLREDUCE\(sum,)f(c,)g(n,)g(MPI)p 1040
1824 V 17 w(REAL,)g(MPI)p 1300 1824 V 17 w(SUM,)g(0,)f(comm,)g(ierr\))
189 1881 y(but)h(should)h(read)189 1937 y(CALL)g(MPI)p
420 1937 V 16 w(ALLREDUCE\(sum,)f(c,)g(n,)g(MPI)p 1040
1937 V 17 w(REAL,)g(MPI)p 1300 1937 V 17 w(SUM,)g(comm,)f(ierr\))189
2108 y Fm(Discussion)o(:)189 2175 y Fl(The)g(extra)h(argumen)o(t)e(app)
q(ears)j(to)e(b)q(e)h(left)f(o)o(v)o(er)g(from)f(the)i(previous)f
(example)f(with)h(MPI)p 1670 2175 13 2 v 16 w(REDUCE.)189
2225 y(This)f(is)h(a)g(mistak)o(e.)143 2363 y Fi(\017)23
b Fq(P)o(age)14 b(194,)g(line)j(48)e(reads)189 2420 y
Fj(MPI)p 274 2420 14 2 v 15 w(ERRHANDLER)p 582 2420 V
18 w(CREA)l(TE\(FUNCTION,)h(HANDLER,)g(IERROR\))189 2476
y Fq(but)f(should)h(read)189 2533 y Fj(MPI)p 274 2533
V 15 w(ERRHANDLER)p 582 2533 V 18 w(CREA)l(TE\(FUNCTION,)g(ERRHANDLER,)
h(IERROR\))189 2704 y Fm(Discussion)o(:)-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: 18 20
18 19 bop 75 -100 a Fq(18)947 b Fg(CHAPTER)15 b(3.)35
b(MISCELLANY)17 b(F)o(OR)e(1.2)189 45 y Fl(This)e(is)h(a)g(small)d(t)o
(yp)q(o)j(to)g(matc)o(h)f(all)f(the)j(other)f(names)f(for)h(this)g
(argumen)o(t.)143 186 y Fi(\017)23 b Fq(P)o(age)14 b(196,)g(lines)j
(1-2)e(reads)204 243 y Fj(MPI)p 289 243 14 2 v 16 w(ERRHANDLER)p
598 243 V 17 w(FREE\()h(errhandler)f(\))230 433 y Fl(IN)156
b Fj(errhandler)397 b Fl(MPI)14 b(error)h(handler)f(\(handle\))189
576 y Fq(but)h(should)h(read)204 633 y Fj(MPI)p 289 633
V 16 w(ERRHANDLER)p 598 633 V 17 w(FREE\()g(errhandler)f(\))230
823 y Fl(INOUT)63 b Fj(errhandler)397 b Fl(MPI)14 b(error)h(handler)f
(\(handle\))189 1007 y Fm(Discussion)o(:)189 1075 y Fl(This)c(app)q
(ears)h(to)f(ha)o(v)o(e)h(b)q(een)g(a)f(mistak)o(e.)16
b(This)10 b(function)g(frees)i(the)f(function)f(p)q(oin)o(ter)g(and)h
(sets)g(its)g(v)n(alue)189 1125 y(to)h(MPI)p 321 1125
13 2 v 15 w(ERRHANDLER)p 636 1125 V 14 w(NULL.)g(Th)o(us,)h(it)f(is)g
(b)q(oth)h(input)f(and)g(output)h(as)f(are)h(the)g(free)g(routines)g
(for)189 1175 y(Groups,)g(Comms,)e(etc.)143 1316 y Fi(\017)23
b Fq(P)o(age)14 b(203,)g(line)j(1)e(reads)189 1372 y
Fj(MPI)p 274 1372 14 2 v 15 w(PCONTROL\(level\))189 1429
y Fq(but)g(should)h(read)189 1485 y Fj(MPI)p 274 1485
V 15 w(PCONTROL\(LEVEL\))189 1657 y Fm(Discussion)o(:)189
1726 y Fl(This)d(is)h(a)g(minor)e(t)o(yp)q(o.)143 1867
y Fi(\017)23 b Fq(P)o(age)14 b(210,)g(line)j(44)e(reads)189
1923 y Fd(MPI)p 266 1923 13 2 v 14 w(PENDING)189 1980
y Fq(but)g(should)h(read)189 2036 y Fd(MPI)p 266 2036
V 14 w(ERR)p 359 2036 V 14 w(PENDING)189 2209 y Fm(Discussion)o(:)189
2277 y Fl(This)d(is)h(a)g(t)o(yp)q(o.)k(See)c(page)g(197,)f(line)g(20)h
(for)f(the)i(original)d(de\014nition.)143 2418 y Fi(\017)23
b Fq(P)o(age)14 b(211,)g(line)j(44)e(reads)189 2475 y
Fd(MPI)p 266 2475 V 14 w(DOUBLE)p 445 2475 V 14 w(COMPLEX)189
2531 y Fq(but)g(should)h(b)q(e)g(mo)o(v)o(ed)f(to)f(P)o(age)h(212,)f
(line)j(22)d(since)j(it)e(is)h(an)f(optional)h(F)l(ortran)e(datat)o(yp)
q(e.)189 2647 y Fm(Discussion)o(:)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: 19 21
19 20 bop 75 -100 a Fg(3.10.)34 b(MINOR)16 b(CORRECTIONS)1109
b Fq(19)189 45 y Fl(On)20 b(page)h(19,)f(lines)h(2-3,)f(it)g(clearly)h
(states)g(this)f(is)h(an)f(optional)f(F)m(ortran)h(datat)o(yp)q(e.)37
b(It)21 b(is)f(listed)189 95 y(incorrectly)14 b(in)g(the)g(app)q
(endix.)1875 150 y Fi(>)i Fh(\(Oct\))143 236 y Fi(\017)23
b Fq(P)o(age)14 b(212,)g(add)h(new)h(lines)h(of)d(text)h(at)g(line)i
(22)d(and)i(line)g(25)f(to)g(read:)189 292 y(etc.)189
349 y(Th)o(us,)f(the)i(text)e(will)j(no)o(w)e(read:)189
518 y Fk(/*)23 b(optional)g(datatypes)g(\(Fortran\))f(*/)189
574 y(MPI_INTEGER1)189 631 y(MPI_INTEGER2)189 687 y(MPI_INTEGER4)189
744 y(MPI_REAL2)189 800 y(MPI_REAL4)189 857 y(MPI_REAL8)189
913 y(etc.)189 1026 y(/*)h(optional)g(datatypes)g(\(C\))g(*/)189
1082 y(MPI_LONG_LONG_INT)189 1139 y(etc.)189 1292 y Fm(Discussion)o(:)
189 1360 y Fl(On)15 b(page)g(19,)f(line)g(6,)h(concludes)h(the)f(list)f
(of)h(optional)e(datat)o(yp)q(es)j(with)e(etc.)22 b(It)15
b(w)o(as)g(not)g(in)o(tended)g(to)189 1410 y(b)q(e)f(a)g(complete)g
(list)g(of)f(all)g(p)q(ossible)i(ones.)20 b(Some)13 b(ha)o(v)o(e)h(in)o
(terpreted)i(the)e(app)q(endix)h(to)f(b)q(e)h(a)f(complete)189
1460 y(list)f(since)h(only)f(the)h(ones)h(explictly)e(on)g(page)h(19)f
(are)h(listed.)k(Adding)13 b(etc.,)h(to)g(the)g(F)m(ortran)f(and)h(C)f
(list)189 1510 y(in)g(the)i(app)q(endix)e(will)g(mak)o(e)f(it)i(clear)g
(these)h(are)g(only)e(some)g(of)g(the)i(p)q(ossible)f(optional)e(datat)
o(yp)q(es.)1875 1565 y Fi(?)k Fh(\(Oct\))143 1651 y Fi(\017)23
b Fq(P)o(age)14 b(213,)g(line)j(28.)i(The)d(follo)o(wing)g(text)e
(should)i(b)q(e)g(added:)189 1707 y(/*)9 b(Prede\014ned)j(functions)f
(in)g(C)e(and)i(F)l(ortran)e(*/)g(MPI)p 1137 1707 14
2 v 17 w(NULL)p 1278 1707 V 17 w(COPY)p 1428 1707 V 17
w(FN)g(MPI)p 1607 1707 V 17 w(NULL)p 1748 1707 V 17 w(DELETE)p
1954 1707 V 16 w(FN)189 1764 y(MPI)p 281 1764 V 16 w(DUP)p
397 1764 V 16 w(FN)189 1880 y Fm(Discussion)o(:)189 1948
y Fl(These)15 b(are)f(missing)e(and)i(de\014ned)h(on)e(pages)i(169,)d
(line)i(17)f(and)h(p.)k(170,)13 b(line)g(4.)143 2089
y Fi(\017)23 b Fq(P)o(age)14 b(220,)g(lines)j(19-20)d(reads)189
2146 y Fj(int)i(double)g(MPI)p 479 2146 V 16 w(Wtime\(void\))189
2202 y(int)g(double)g(MPI)p 479 2202 V 16 w(Wtick\(void\))189
2258 y Fq(but)f(should)h(read)189 2315 y Fj(double)g(MPI)p
413 2315 V 16 w(Wtime\(void\))189 2371 y(double)g(MPI)p
413 2371 V 16 w(Wtick\(void\))189 2544 y Fm(Discussion)o(:)189
2612 y Fl(This)d(w)o(as)h(a)g(mistak)o(e)e(caused)j(b)o(y)f(the)g
(macros.)-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: 20 22
20 21 bop 75 -100 a Fq(20)947 b Fg(CHAPTER)15 b(3.)35
b(MISCELLANY)17 b(F)o(OR)e(1.2)143 45 y Fi(\017)23 b
Fq(P)o(age)14 b(222,)g(line)j(34)e(reads)189 102 y Fj(INTEGER)f
(REQUEST,)g(COUNT,)g(D)o(A)l(T)l(A)l(TYPE,)g(DEST,)g(T)l(A)o(G,)f
(COMM,)g(REQUEST,)i(IERROR)189 158 y Fq(but)g(should)h(read)189
214 y Fj(INTEGER)f(COUNT,)h(D)o(A)l(T)l(A)l(TYPE,)g(DEST,)f(T)l(A)o(G,)
g(COMM,)g(REQUEST,)h(IERROR)189 387 y Fm(Discussion)o(:)189
455 y Fl(An)e(extra)g(argumen)o(t)f(got)g(added.)19 b(It)14
b(needs)h(to)f(b)q(e)g(remo)o(v)o(ed.)143 596 y Fi(\017)23
b Fq(P)o(age)14 b(222,)g(line)j(38)e(reads)189 653 y
Fj(INTEGER)f(REQUEST,)g(COUNT,)g(D)o(A)l(T)l(A)l(TYPE,)g(DEST,)g(T)l(A)
o(G,)f(COMM,)g(REQUEST,)i(IERROR)189 709 y Fq(but)g(should)h(read)189
766 y Fj(INTEGER)f(COUNT,)h(D)o(A)l(T)l(A)l(TYPE,)g(DEST,)f(T)l(A)o(G,)
g(COMM,)g(REQUEST,)h(IERROR)189 938 y Fm(Discussion)o(:)189
1006 y Fl(An)e(extra)g(argumen)o(t)f(got)g(added.)19
b(It)14 b(needs)h(to)f(b)q(e)g(remo)o(v)o(ed.)143 1147
y Fi(\017)23 b Fq(P)o(age)14 b(227,)g(lines)j(19-20)d(reads)189
1204 y Fj(MPI)p 274 1204 14 2 v 15 w(INTERCOMM)p 563
1204 V 17 w(MERGE\(INTERCOMM,)i(HIGH,)f(INTRA)o(COMM,)g(IERROR\))189
1260 y(INTEGER)g(INTERCOMM,)h(INTRA)o(COMM,)f(IERROR)189
1317 y Fq(but)g(should)h(read)189 1373 y Fj(MPI)p 274
1373 V 15 w(INTERCOMM)p 563 1373 V 17 w(MERGE\(INTERCOMM,)g(HIGH,)f
(NEWINTRA)o(COMM,)g(IERROR\))189 1430 y(INTEGER)g(INTERCOMM,)h
(NEWINTRA)o(COMM,)f(IERROR)189 1602 y Fm(Discussion)o(:)189
1670 y Fl(This)g(mak)o(es)e(it)i(matc)o(h)f(the)i(de\014nition)e(in)h
(the)g(text)h(on)f(P)o(age)g(159,)f(lines)h(34-36.)20
b(It)15 b(only)g(c)o(hanges)g(the)189 1720 y(name)d(of)i(the)g(argumen)
o(t.)143 1861 y Fi(\017)23 b Fq(P)o(age)14 b(228,)g(line)j(46)e(reads)
189 1918 y Fj(MPI)p 274 1918 V 15 w(ERRHANDLER)p 582
1918 V 18 w(CREA)l(TE\(FUNCTION,)h(HANDLER,)g(IERROR\))189
1974 y Fq(but)f(should)h(read)189 2031 y Fj(MPI)p 274
2031 V 15 w(ERRHANDLER)p 582 2031 V 18 w(CREA)l(TE\(FUNCTION,)g
(ERRHANDLER,)h(IERROR\))189 2203 y Fm(Discussion)o(:)189
2271 y Fl(This)c(c)o(hange)i(mak)o(es)d(the)j(app)q(endix)f(consistan)o
(t)g(with)g(c)o(hange)g(on)g(p.)k(194,)12 b(line)i(48.)143
2412 y Fi(\017)23 b Fq(P)o(age)14 b(229,)g(line)j(33)e(reads)189
2469 y Fj(MPI)p 274 2469 V 15 w(PCONTROL\(level\))189
2525 y Fq(but)g(should)h(read)189 2582 y Fj(MPI)p 274
2582 V 15 w(PCONTROL\(LEVEL\))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: 21 23
21 22 bop 75 -100 a Fg(3.10.)34 b(MINOR)16 b(CORRECTIONS)1109
b Fq(21)189 45 y Fm(Discussion)o(:)189 114 y Fl(This)13
b(is)h(to)g(mak)o(e)e(the)j(language)e(binding)g(the)h(same)f(as)h(the)
h(c)o(hange)f(to)g(P)o(age)f(203,)g(line)g(1.)-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
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF