Subject: Proposal V

From: L J Clarke <[email-masked]>
Date: Fri, 19 Mar 93 12:38:51 GMT

PostScript of LaTeX-ified Proposal V of Rik

----------------------------------------------------------------------
%!PS-Adobe-2.0
%%Creator: dvips 5.495 Copyright 1986, 1992 Radical Eye Software
%%Title: context-rik.dvi
%%CreationDate: Fri Mar 19 12:37:44 1993
%%Pages: 7
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%EndComments
%DVIPSCommandLine: dvips context-rik
%DVIPSSource:  TeX output 1993.03.19:1234
%%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 /@rigin{isls{[0 1 -1 0 0 0]
concat}if 72 Resolution div 72 VResolution div neg scale isls{0 Resolution
vsize 72 div mul 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 39158280 55380996 1000 300 300
(/a/obsidian/disk/home/u36/lyndon/mpi/context-rik.dvi) @start
/Fa 11 119 df<0020004001800380030006000E001C001C003C0038003800780078007800F800
F000F000F000F000F000F000F000F000F000F800780078007800380038003C001C001C000E0006
00030003800180004000200B297C9E13>40 D<800040003000380018000C000E00070007000780
0380038003C003C003C003E001E001E001E001E001E001E001E001E001E003E003C003C003C003
8003800780070007000E000C00180038003000400080000B297D9E13>I<7FFFFFE07FFFFFE078
1F81E0701F80E0601F8060E01F8070C01F8030C01F8030C01F8030C01F8030001F8000001F8000
001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F80
00001F8000001F8000001F8000001F800007FFFE0007FFFE001C1C7E9B21>84
D<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F3F801FE1
E01F80701F00781F003C1F003C1F003E1F003E1F003E1F003E1F003E1F003E1F003C1F003C1F00
781F80701EC1E01C3F00171D7F9C1B>98 D<000FF0000FF00001F00001F00001F00001F00001F0
0001F00001F00001F00001F001F9F00F07F01C03F03C01F07801F07801F0F801F0F801F0F801F0
F801F0F801F0F801F07801F07801F03C01F01C03F00F0FFE03F9FE171D7E9C1B>100
D<01FC000F07001C03803C01C07801C07801E0F801E0F801E0FFFFE0F80000F80000F800007800
007C00603C00601E00C00F038001FC0013127F9116>I<1E003F003F003F003F001E0000000000
0000000000000000FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F
00FFE0FFE00B1E7F9D0E>105 D<01FC000F07801C01C03C01E07800F07800F0F800F8F800F8F8
00F8F800F8F800F8F800F87800F07800F03C01E01E03C00F078001FC0015127F9118>111
D<FF3F80FFE1E01F80F01F00781F007C1F003C1F003E1F003E1F003E1F003E1F003E1F003E1F00
3C1F007C1F00781F80F01FC1E01F3F001F00001F00001F00001F00001F00001F0000FFE000FFE0
00171A7F911B>I<FE3E00FE47001E8F801E8F801E8F801F07001F00001F00001F00001F00001F
00001F00001F00001F00001F00001F0000FFF000FFF00011127F9114>114
D<FFC1FCFFC1FC1F00601F80E00F80C00FC0C007C18007C18003E30003E30001F60001F60001FE
0000FC0000FC0000780000780000300016127F9119>118 D E /Fb 11 119
df<000070000000007000000000F800000000F800000000F800000001FC00000001FC00000003
FE00000003FE00000003FE00000006FF000000067F0000000E7F8000000C3F8000000C3F800000
183FC00000181FC00000381FE00000300FE00000300FE00000600FF000006007F00000E007F800
00FFFFF80000FFFFF800018001FC00018001FC00038001FE00030000FE00030000FE000600007F
000600007F00FFE00FFFF8FFE00FFFF825227EA12A>65 D<FFFFFF8000FFFFFFF00007F003FC00
07F0007E0007F0003F0007F0001F8007F0000FC007F00007E007F00007E007F00007F007F00003
F007F00003F007F00003F007F00003F807F00003F807F00003F807F00003F807F00003F807F000
03F807F00003F807F00003F807F00003F807F00003F007F00003F007F00003F007F00007E007F0
0007E007F0000FC007F0001F8007F0003F0007F0007E0007F003FC00FFFFFFF000FFFFFF800025
227EA12B>68 D<07FC001FFF803F07C03F03E03F01E03F01F01E01F00001F00001F0003FF003FD
F01FC1F03F01F07E01F0FC01F0FC01F0FC01F0FC01F07E02F07E0CF81FF87F07E03F18167E951B
>97 D<0001FE000001FE0000003E0000003E0000003E0000003E0000003E0000003E0000003E00
00003E0000003E0000003E0000003E0001FC3E0007FFBE000F81FE001F007E003E003E007E003E
007C003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E007C00
3E007C003E003E007E001E00FE000F83BE0007FF3FC001FC3FC01A237EA21F>100
D<00FE0007FF800F87C01E01E03E01F07C00F07C00F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC00
00FC00007C00007C00007E00003E00181F00300FC07003FFC000FF0015167E951A>I<03FC1E0F
FF7F1F0F8F3E07CF3C03C07C03E07C03E07C03E07C03E07C03E03C03C03E07C01F0F801FFF0013
FC003000003000003800003FFF801FFFF00FFFF81FFFFC3800FC70003EF0001EF0001EF0001EF0
001E78003C7C007C3F01F80FFFE001FF0018217E951C>103 D<1C003F007F007F007F003F001C
000000000000000000000000000000FF00FF001F001F001F001F001F001F001F001F001F001F00
1F001F001F001F001F001F001F001F00FFE0FFE00B247EA310>105 D<FF07E000FF1FF8001F30
7C001F403C001F803E001F803E001F003E001F003E001F003E001F003E001F003E001F003E001F
003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E00FFE1FFC0FFE1FFC0
1A167E951F>110 D<0FF3003FFF00781F00600700E00300E00300F00300FC00007FE0007FF800
3FFE000FFF0001FF00000F80C00780C00380E00380E00380F00700FC0E00EFFC00C7F00011167E
9516>115 D<0180000180000180000180000380000380000780000780000F80003F8000FFFF00
FFFF000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F8180
0F81800F81800F81800F81800F830007C30003FE0000F80011207F9F16>I<FFE01FE0FFE01FE0
0F8006000F8006000FC00E0007C00C0007E01C0003E0180003E0180001F0300001F0300000F860
0000F86000007CC000007CC000007FC000003F8000003F8000001F0000001F0000000E0000000E
00001B167F951E>118 D E /Fc 69 124 df<007E1F0001C1B1800303E3C00703C3C00E03C180
0E01C0000E01C0000E01C0000E01C0000E01C0000E01C000FFFFFC000E01C0000E01C0000E01C0
000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01
C0000E01C0000E01C0000E01C0007F87FC001A1D809C18>11 D<007E0001C1800301800703C00E
03C00E01800E00000E00000E00000E00000E0000FFFFC00E01C00E01C00E01C00E01C00E01C00E
01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07F87F8151D809C
17>I<007FC001C1C00303C00703C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0FFFFC0
0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E01C07FCFF8151D809C17>I<003F07E00001C09C18000380F018000701F03C00
0E01E03C000E00E018000E00E000000E00E000000E00E000000E00E000000E00E00000FFFFFFFC
000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E0
1C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00
E01C007FC7FCFF80211D809C23>I<6060F0F0F8F8686808080808080810101010202040408080
0D0C7F9C15>34 D<60F0F8680808081010204080050C7C9C0C>39 D<004000800100020006000C
000C0018001800300030007000600060006000E000E000E000E000E000E000E000E000E000E000
E000E000600060006000700030003000180018000C000C00060002000100008000400A2A7D9E10
>I<800040002000100018000C000C000600060003000300038001800180018001C001C001C001
C001C001C001C001C001C001C001C001C0018001800180038003000300060006000C000C001800
10002000400080000A2A7E9E10>I<60F0F0701010101020204080040C7C830C>44
D<FFE0FFE00B0280890E>I<60F0F06004047C830C>I<00010003000600060006000C000C000C00
18001800180030003000300060006000C000C000C0018001800180030003000300060006000C00
0C000C00180018001800300030003000600060006000C000C00010297E9E15>I<03C00C301818
300C300C700E60066006E007E007E007E007E007E007E007E007E007E007E007E007E007600660
06700E300C300C18180C3007E0101D7E9B15>I<030007003F00C7000700070007000700070007
0007000700070007000700070007000700070007000700070007000700070007000F80FFF80D1C
7C9B15>I<07C01830201C400C400EF00FF80FF807F8077007000F000E000E001C001C00380070
006000C00180030006010C01180110023FFE7FFEFFFE101C7E9B15>I<07E01830201C201C781E
780E781E381E001C001C00180030006007E00030001C001C000E000F000F700FF80FF80FF80FF0
0E401C201C183007E0101D7E9B15>I<000C00000C00001C00003C00003C00005C0000DC00009C
00011C00031C00021C00041C000C1C00081C00101C00301C00201C00401C00C01C00FFFFC0001C
00001C00001C00001C00001C00001C00001C0001FFC0121C7F9B15>I<300C3FF83FF03FC02000
2000200020002000200023E024302818301C200E000E000F000F000F600FF00FF00FF00F800E40
1E401C2038187007C0101D7E9B15>I<00F0030C06040C0E181E301E300C700070006000E3E0E4
30E818F00CF00EE006E007E007E007E007E007600760077006300E300C18180C3003E0101D7E9B
15>I<60F0F0600000000000000000000060F0F06004127C910C>58 D<60F0F060000000000000
0000000060F0F0701010101020204080041A7C910C>I<0FE03038401CE00EF00EF00EF00E000C
001C0030006000C000800180010001000100010001000100000000000000000000000300078007
8003000F1D7E9C14>63 D<000600000006000000060000000F0000000F0000000F000000178000
00178000001780000023C0000023C0000023C0000041E0000041E0000041E0000080F0000080F0
000180F8000100780001FFF80003007C0002003C0002003C0006003E0004001E0004001E000C00
1F001E001F00FF80FFF01C1D7F9C1F>65 D<FFFFC00F00F00F00380F003C0F001C0F001E0F001E
0F001E0F001E0F001C0F003C0F00780F01F00FFFE00F00780F003C0F001E0F000E0F000F0F000F
0F000F0F000F0F000F0F001E0F001E0F003C0F0078FFFFE0181C7E9B1D>I<001F808000E06180
01801980070007800E0003801C0003801C00018038000180780000807800008070000080F00000
00F0000000F0000000F0000000F0000000F0000000F0000000F000000070000080780000807800
0080380000801C0001001C0001000E000200070004000180080000E03000001FC000191E7E9C1E
>I<FFFFC0000F00F0000F003C000F000E000F0007000F0007000F0003800F0003C00F0001C00F
0001C00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F0001C0
0F0001C00F0003C00F0003800F0007800F0007000F000E000F001C000F007000FFFFC0001B1C7E
9B20>I<FFFFFC0F003C0F000C0F00040F00040F00060F00020F00020F02020F02000F02000F02
000F06000FFE000F06000F02000F02000F02000F02010F00010F00020F00020F00020F00060F00
060F000C0F003CFFFFFC181C7E9B1C>I<001F808000E0618001801980070007800E0003801C00
03801C00018038000180780000807800008070000080F0000000F0000000F0000000F0000000F0
000000F0000000F000FFF0F0000F80700007807800078078000780380007801C0007801C000780
0E00078007000B800180118000E06080001F80001C1E7E9C21>71 D<FFF00F000F000F000F000F
000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00
0F000F00FFF00C1C7F9B0F>73 D<FFF8000F80000F00000F00000F00000F00000F00000F00000F
00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00080F00080F00080F
00180F00180F00100F00300F00700F01F0FFFFF0151C7E9B1A>76 D<FF8000FF800F8000F8000F
8000F8000BC00178000BC00178000BC001780009E002780009E002780008F004780008F0047800
08F0047800087808780008780878000878087800083C107800083C107800083C107800081E2078
00081E207800081E207800080F407800080F407800080780780008078078000807807800080300
78001C03007800FF8307FF80211C7E9B26>I<FF007FC00F800E000F8004000BC0040009E00400
09E0040008F0040008F8040008780400083C0400083C0400081E0400080F0400080F0400080784
000807C4000803C4000801E4000801E4000800F40008007C0008007C0008003C0008003C000800
1C0008000C001C000C00FF8004001A1C7E9B1F>I<003F800000E0E0000380380007001C000E00
0E001C0007003C00078038000380780003C0780003C0700001C0F00001E0F00001E0F00001E0F0
0001E0F00001E0F00001E0F00001E0F00001E0700001C0780003C0780003C0380003803C000780
1C0007000E000E0007001C000380380000E0E000003F80001B1E7E9C20>I<FFFF800F00E00F00
780F003C0F001C0F001E0F001E0F001E0F001E0F001E0F001C0F003C0F00780F00E00FFF800F00
000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000FFF000171C
7E9B1C>I<003F800000E0E0000380380007001C000E000E001C0007003C000780380003807800
03C0780003C0700001C0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F0
0001E0700001C0780003C0780003C0380003803C0E07801C1107000E208E000720DC0003A0F800
00F0E020003FE0200000602000007060000078E000003FC000003FC000001F8000000F001B257E
9C20>I<FFFF00000F01E0000F0078000F003C000F001C000F001E000F001E000F001E000F001E
000F001C000F003C000F0078000F01E0000FFF00000F03C0000F00E0000F00F0000F0078000F00
78000F0078000F0078000F0078000F0078000F0078100F0078100F0038100F003C20FFF01C2000
0007C01C1D7E9B1F>I<07E0801C1980300580700380600180E00180E00080E00080E00080F000
00F800007C00007FC0003FF8001FFE0007FF0000FF80000F800007C00003C00001C08001C08001
C08001C0C00180C00180E00300D00200CC0C0083F800121E7E9C17>I<7FFFFFC0700F01C0600F
00C0400F0040400F0040C00F0020800F0020800F0020800F0020000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000
000F0000000F0000000F0000000F0000001F800003FFFC001B1C7F9B1E>I<FFE0FFE0FF1F001F
003C1E001E00180F001F00100F001F00100F001F001007801F00200780278020078027802003C0
27804003C043C04003C043C04003E043C04001E081E08001E081E08001E081E08000F100F10000
F100F10000F100F100007900FA00007A007A00007A007A00003E007C00003C003C00003C003C00
003C003C00001800180000180018000018001800281D7F9B2B>87 D<FEFEC0C0C0C0C0C0C0C0C0
C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0FEFE07297C9E0C>91
D<08081010202040404040808080808080B0B0F8F8787830300D0C7A9C15>I<FEFE0606060606
0606060606060606060606060606060606060606060606060606060606060606FEFE0729809E0C
>I<1FC000307000783800781C00301C00001C00001C0001FC000F1C00381C00701C00601C00E0
1C40E01C40E01C40603C40304E801F870012127E9115>97 D<FC00001C00001C00001C00001C00
001C00001C00001C00001C00001C00001C00001C7C001D86001E03001C01801C01C01C00C01C00
E01C00E01C00E01C00E01C00E01C00E01C00C01C01C01C01801E030019060010F800131D7F9C17
>I<07E00C301878307870306000E000E000E000E000E000E00060007004300418080C3007C00E
127E9112>I<003F00000700000700000700000700000700000700000700000700000700000700
03E7000C1700180F00300700700700600700E00700E00700E00700E00700E00700E00700600700
700700300700180F000C370007C7E0131D7E9C17>I<03E00C301818300C700E6006E006FFFEE0
00E000E000E00060007002300218040C1803E00F127F9112>I<00F8018C071E061E0E0C0E000E
000E000E000E000E00FFE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00
0E000E007FE00F1D809C0D>I<00038003C4C00C38C01C3880181800381C00381C00381C00381C
001818001C38000C300013C0001000003000001800001FF8001FFF001FFF803003806001C0C000
C0C000C0C000C06001803003001C0E0007F800121C7F9215>I<FC00001C00001C00001C00001C
00001C00001C00001C00001C00001C00001C00001C7C001C87001D03001E03801C03801C03801C
03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C0380FF9FF0141D7F9C
17>I<18003C003C0018000000000000000000000000000000FC001C001C001C001C001C001C00
1C001C001C001C001C001C001C001C001C001C00FF80091D7F9C0C>I<00C001E001E000C00000
0000000000000000000000000FE000E000E000E000E000E000E000E000E000E000E000E000E000
E000E000E000E000E000E000E000E060E0F0C0F1C061803E000B25839C0D>I<FC00001C00001C
00001C00001C00001C00001C00001C00001C00001C00001C00001C3FC01C0F001C0C001C08001C
10001C20001C40001CE0001DE0001E70001C78001C38001C3C001C1C001C0E001C0F001C0F80FF
9FE0131D7F9C16>I<FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C00
1C001C001C001C001C001C001C001C001C001C001C001C001C00FF80091D7F9C0C>I<FC7E07E0
001C838838001D019018001E01E01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C0
1C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01
C01C00FF8FF8FF8021127F9124>I<FC7C001C87001D03001E03801C03801C03801C03801C0380
1C03801C03801C03801C03801C03801C03801C03801C03801C0380FF9FF014127F9117>I<03F0
000E1C00180600300300700380600180E001C0E001C0E001C0E001C0E001C0E001C06001807003
803003001806000E1C0003F00012127F9115>I<FC7C001D86001E03001C01801C01C01C00C01C
00E01C00E01C00E01C00E01C00E01C00E01C01C01C01C01C01801E03001D06001CF8001C00001C
00001C00001C00001C00001C00001C0000FF8000131A7F9117>I<03C1000C3300180B00300F00
700700700700E00700E00700E00700E00700E00700E00700600700700700300F00180F000C3700
07C700000700000700000700000700000700000700000700003FE0131A7E9116>I<FCE01D301E
781E781C301C001C001C001C001C001C001C001C001C001C001C001C00FFC00D127F9110>I<1F
9030704030C010C010E010F8007F803FE00FF000F880388018C018C018E010D0608FC00D127F91
10>I<04000400040004000C000C001C003C00FFE01C001C001C001C001C001C001C001C001C00
1C101C101C101C101C100C100E2003C00C1A7F9910>I<FC1F801C03801C03801C03801C03801C
03801C03801C03801C03801C03801C03801C03801C03801C03801C07800C07800E1B8003E3F014
127F9117>I<FF07E03C03801C01001C01000E02000E0200070400070400070400038800038800
03D80001D00001D00000E00000E00000E00000400013127F9116>I<FF3FCFE03C0F03801C0701
801C0701001C0B01000E0B82000E0B82000E1182000711C4000711C4000720C40003A0E80003A0
E80003C0680001C0700001C0700001803000008020001B127F911E>I<7F8FF00F03800F030007
020003840001C80001D80000F00000700000780000F800009C00010E00020E000607000403801E
07C0FF0FF81512809116>I<FF07E03C03801C01001C01000E02000E0200070400070400070400
03880003880003D80001D00001D00000E00000E00000E000004000004000008000008000F08000
F10000F300006600003C0000131A7F9116>I<7FFC70386038407040F040E041C003C003800700
0F040E041C043C0C380870087038FFF80E127F9112>I<FFFFF01401808B15>I
E /Fd 1 16 df<03C00FF01FF83FFC7FFE7FFEFFFFFFFFFFFFFFFF7FFE7FFE3FFC1FF80FF003C0
10107E9115>15 D E /Fe 33 122 df<0003E0000000000FF0000000003E380000000078180000
0000780C00000000F80C00000000F00C00000001F00C00000001F00C00000001F01C00000001F8
1800000001F83000000001F87000000001F86000000001F8C001FFE000FD8001FFE000FF00001C
0000FE0000180000FE00003000007E00003000007F0000600000FF0000600001FF8000C00003BF
80018000071FC00180000F0FE00300001E0FE00600003E07F00600007E03F80C0000FE03FC1800
00FE01FE300000FE00FE600000FE007FC00000FE003F8000C07F001FC000C07F000FF001C03F80
1FF803801FC0F0FE0F0007FFC03FFE0001FE0007F8002B287DA732>38 D<3C7EFFFFFFFF7E3C08
087B8712>46 D<000C00001C0000FC000FFC00FFFC00F0FC0000FC0000FC0000FC0000FC0000FC
0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC
0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC00FFFFFCFFFF
FC16257BA420>49 D<00FF000007FFE0001E07F8003801FC007800FE007E00FF00FF007F00FF00
7F80FF007F80FF003F807E003F803C003F8000007F8000007F0000007F000000FE000000FE0000
01FC000001F8000003F0000007C00000078000000F0000001E0000003800000070018000E00180
01C001800380030007000300060003000FFFFF001FFFFF003FFFFF007FFFFE00FFFFFE00FFFFFE
0019257DA420>I<00FF800007FFF0000F03F8001800FC003E00FE007F00FF007F007F007F807F
007F007F003F00FF001E00FE000000FE000000FC000001F8000003F0000007E00000FF800000FF
00000003E0000001F8000000FC000000FE0000007F0000007F0000007F8018007F807E007F80FF
007F80FF007F80FF007F80FF007F00FE00FF007C00FE003801FC001E03F8000FFFE00001FF0000
19257DA420>I<0000380000007800000078000000F8000001F8000003F8000003F8000007F800
000FF800001DF8000019F8000031F8000071F8000061F80000C1F80001C1F8000381F8000301F8
000601F8000E01F8001C01F8001801F8003001F8007001F800E001F800FFFFFFE0FFFFFFE00001
F8000001F8000001F8000001F8000001F8000001F8000001F8000001F800007FFFE0007FFFE01B
257EA420>I<08000C000F007C000FFFF8000FFFF0000FFFE0000FFFC0000FFF80000FFE00000C
0000000C0000000C0000000C0000000C0000000C0000000C7F80000DFFE0000F81F8000E007C00
0C007E0000003E0000003F0000003F0000003F8000003F8038003F807C003F80FE003F80FE003F
80FE003F80FE003F007C003F0060007E0030007C001800F8000F03F00007FFC00001FF00001925
7DA420>I<000FE000007FF80001F81C0003E00E0007C03F000F807F001F807F001F007F003F00
7F003F003E007E0000007E0000007E000000FE040000FE3FE000FE7FF000FEC0F800FE807C00FF
003E00FF003F00FF003F00FE003F80FE003F80FE003F80FE003F807E003F807E003F807E003F80
7E003F803E003F003E003F001F003E001F007E000F807C0007C1F80001FFE000007F800019257D
A420>I<00000600000000000F00000000000F00000000001F80000000001F80000000001F8000
0000003FC0000000003FC0000000007FE0000000006FE0000000006FE000000000CFF000000000
C7F000000001C7F80000000183F80000000183F80000000303FC0000000301FC0000000701FE00
00000600FE0000000600FE0000000C007F0000000C007F0000001C007F80000018003F80000018
003F8000003FFFFFC000003FFFFFC0000070001FE0000060000FE0000060000FE00000C00007F0
0000C00007F00001800007F80001800003F80001800003F80003000001FC0007000001FC00FFF8
003FFFF0FFF8003FFFF02C287EA731>65 D<0000FF80080007FFF018003FC03C38007E000E7801
FC0003F803F00001F807E00000F80FE00000781FC00000781FC00000383F800000383F80000038
7F800000187F000000187F00000018FF00000000FF00000000FF00000000FF00000000FF000000
00FF00000000FF00000000FF00000000FF00000000FF000000007F000000007F000000187F8000
00183F800000183F800000181FC00000301FC00000300FE000006007E000006003F00000C001FC
000180007E000700003FC03C000007FFF8000000FFC00025287CA72E>67
D<FFFFFFF00000FFFFFFFE000003F8007F800003F8000FE00003F80007F00003F80003F80003F8
0001FC0003F80000FC0003F80000FE0003F800007F0003F800007F0003F800003F8003F800003F
8003F800003F8003F800003F8003F800003FC003F800003FC003F800003FC003F800003FC003F8
00003FC003F800003FC003F800003FC003F800003FC003F800003FC003F800003FC003F800003F
8003F800003F8003F800003F8003F800003F8003F800007F0003F800007F0003F800007E0003F8
0000FE0003F80001FC0003F80001F80003F80007F00003F8000FE00003F8007F8000FFFFFFFE00
00FFFFFFF000002A287EA731>I<FFFFFFFF80FFFFFFFF8003F8003F8003F80007C003F80003C0
03F80001C003F80001C003F80000C003F80000C003F80000C003F800006003F803006003F80300
6003F803000003F803000003F807000003F807000003F81F000003FFFF000003FFFF000003F81F
000003F807000003F807000003F803000003F803000003F803001803F803001803F800001803F8
00003803F800003003F800003003F800003003F800007003F800007003F80000F003F80001F003
F80003E003F8001FE0FFFFFFFFE0FFFFFFFFE025287EA72A>I<FFFFE0FFFFE003F80003F80003
F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003
F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003
F80003F80003F80003F80003F80003F80003F80003F800FFFFE0FFFFE013287EA718>73
D<FFFC0001FFF8FFFE0001FFF803FE0000060003FF00000600037F80000600033FC0000600031F
E0000600030FE0000600030FF00006000307F80006000303FC0006000301FE0006000300FE0006
000300FF00060003007F80060003003FC0060003001FC0060003000FE0060003000FF006000300
07F80600030003FC0600030001FC0600030001FE0600030000FF06000300007F86000300003FC6
000300001FC6000300001FE6000300000FF60003000007FE0003000003FE0003000001FE000300
0001FE0003000000FE00030000007E00030000003E00030000001E00030000001E00FFFC00000E
00FFFC000006002D287EA732>78 D<FFFFFFF000FFFFFFFE0003F8007F0003F8001FC003F8000F
E003F8000FE003F80007F003F80007F003F80007F803F80007F803F80007F803F80007F803F800
07F803F80007F803F80007F003F80007F003F8000FE003F8000FE003F8001FC003F8007F0003FF
FFFE0003FFFFF00003F800000003F800000003F800000003F800000003F800000003F800000003
F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8000000
03F800000003F8000000FFFFE00000FFFFE0000025287EA72C>80 D<00FF004007FFE0C00F80F9
C01E001FC03C000FC07C0003C0780003C0780001C0F80001C0F80000C0F80000C0FC0000C0FC00
0000FE0000007F8000007FF800003FFFC0003FFFF8001FFFFC000FFFFE0003FFFF0000FFFF8000
0FFFC00000FFC000001FC000000FE0000007E0000007E0C00003E0C00003E0C00003E0C00003E0
E00003C0E00003C0F0000780F8000780FE000F00E7C03E00C1FFF800803FE0001B287CA724>83
D<03FF00000FFFE0001F03F0003F80F8003F80FC003F807C001F007E001F007E0000007E000000
7E0000007E00000FFE0001FFFE0007F07E001FC07E003F807E007F007E00FE007E00FE007E18FE
007E18FE007E18FE00BE187F01BE183F873FF01FFE1FE003F80F801D1A7E9920>97
D<00007FE000007FE0000007E0000007E0000007E0000007E0000007E0000007E0000007E00000
07E0000007E0000007E0000007E0000007E0007F87E001FFE7E007E077E00FC01FE01F800FE03F
0007E03F0007E07E0007E07E0007E0FE0007E0FE0007E0FE0007E0FE0007E0FE0007E0FE0007E0
FE0007E0FE0007E07E0007E07E0007E07F0007E03F0007E01F000FE00F801FE007E077E003FFC7
FE007F07FE1F287EA724>100 D<007F8003FFE007E1F00F80F81F007C3F007E7E003E7E003E7E
003FFE003FFE003FFFFFFFFFFFFFFE0000FE0000FE0000FE00007E00007E00003F00003F00031F
80060FC00607F01C01FFF0003FC0181A7E991D>I<00FE03E007FFCFF00F83F8F01F01F0F03E00
F8E03E00F8007E00FC007E00FC007E00FC007E00FC007E00FC003E00F8003E00F8001F01F0000F
83E0000FFFC00010FE00001000000038000000380000003C0000003FFFF0001FFFFE001FFFFF00
0FFFFF801FFFFFC03C001FC07C0007E0F80003E0F80003E0F80003E0F80003E07C0007C07C0007
C03E000F801FC07F0007FFFC0000FFE0001C267E9920>103 D<0F001F801FC03FC03FC01FC01F
800F000000000000000000000000000000FFC0FFC00FC00FC00FC00FC00FC00FC00FC00FC00FC0
0FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC0FFFCFFFC0E297FA811>105
D<FFC0FFC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC0
0FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC0FF
FCFFFC0E287FA711>108 D<FFC0FE003F8000FFC3FF80FFE0000FC60FC183F0000FC807E201F8
000FD003E400F8000FF003FC00FC000FE003F800FC000FE003F800FC000FC003F000FC000FC003
F000FC000FC003F000FC000FC003F000FC000FC003F000FC000FC003F000FC000FC003F000FC00
0FC003F000FC000FC003F000FC000FC003F000FC000FC003F000FC000FC003F000FC000FC003F0
00FC000FC003F000FC000FC003F000FC000FC003F000FC00FFFC3FFF0FFFC0FFFC3FFF0FFFC032
1A7E9937>I<FFC0FC00FFC3FF000FC60F800FC80FC00FD007E00FE007E00FE007E00FE007E00F
C007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E0
0FC007E00FC007E00FC007E00FC007E00FC007E00FC007E0FFFC7FFEFFFC7FFE1F1A7E9924>I<
007FC00001FFF00007E0FC000F803E001F001F003F001F803E000F807E000FC07E000FC0FE000F
E0FE000FE0FE000FE0FE000FE0FE000FE0FE000FE0FE000FE0FE000FE07E000FC07E000FC07F00
1FC03F001F801F001F000F803E0007E0FC0001FFF000007FC0001B1A7E9920>I<FFC1FC00FFCF
FF800FDC0FC00FF007E00FE003F00FC001F80FC001FC0FC001FC0FC000FC0FC000FE0FC000FE0F
C000FE0FC000FE0FC000FE0FC000FE0FC000FE0FC000FE0FC000FC0FC001FC0FC001F80FC003F8
0FE003F00FF007E00FDC1FC00FCFFF000FC3FC000FC000000FC000000FC000000FC000000FC000
000FC000000FC000000FC000000FC00000FFFC0000FFFC00001F257E9924>I<FF83E0FF8FF80F
8C780F90FC0FB0FC0FA0FC0FA0780FE0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000F
C0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC000FFFE00FFFE00161A7E991A>
114 D<03F8C01FFFC03C07C07801C07001C0F000C0F000C0F800C0FC0000FFC0007FFC003FFF00
1FFF800FFFC001FFE0000FF00003F0C001F0C000F0E000F0E000F0F000E0F801E0FE03C0E7FF80
C1FC00141A7E9919>I<00600000600000600000600000E00000E00001E00001E00003E00007E0
001FE000FFFFC0FFFFC007E00007E00007E00007E00007E00007E00007E00007E00007E00007E0
0007E00007E00007E00007E00007E06007E06007E06007E06007E06007E06003F0C001F0C000FF
80003E0013257FA419>I<FFC07FE0FFC07FE00FC007E00FC007E00FC007E00FC007E00FC007E0
0FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007
E00FC007E00FC007E00FC007E00FC00FE00FC00FE007C017E003E067E001FFC7FE007F07FE1F1A
7E9924>I<FFF803FEFFF803FE0FC000E00FE000E007E000C007F001C003F0018003F8018001F8
030001F8030000FC060000FC060000FE0E00007E0C00007F1C00003F1800003F9800001FB00000
1FB000000FE000000FE000000FE0000007C0000007C00000038000000380001F1A7F9922>I<FF
F81FFCFFF81FFC0FE0038007F0030003F0060001F80E0001FC1C0000FE3800007E7000003F6000
001FC000001FC000000FE0000007E000000FF000000FF8000019FC000038FC0000707E0000E03F
0001C03F8001801F8003000FC0070007E0FFC03FFEFFC03FFE1F1A7F9922>120
D<FFF803FEFFF803FE0FC000E00FE000E007E000C007F001C003F0018003F8018001F8030001F8
030000FC060000FC060000FE0E00007E0C00007F1C00003F1800003F9800001FB000001FB00000
0FE000000FE000000FE0000007C0000007C0000003800000038000000300000003000000060000
30060000780E0000FC0C0000FC1C0000FC380000787000003FE000001F8000001F257F9922>I
E /Ff 8 116 df<FFFFFFFFFFF80000FFFFFFFFFFFFC000FFFFFFFFFFFFF000001FFC00007FFC
FC0000000000FFFFFFFF80000000FFFFFFFF80000000FFFFFFFF8000000040477CC64B>80
D<FFFFFFFC0000007FFFFCFFFFFFFC0000007FFFFCFFFFFFFC0000007FFFFC007FF80000000001
000000078000000000000000000780000000004E487EC653>86 D<0007FFC0000000003FFFFC00
7CAD37>97 D<00FF80FFFF80FFFF80FFFF8003FF8001FF8001FF8001FF8001FF8001FF8001FF80
01FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF80
01FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF80
01FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF80
01FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF8001FF80
01FF8001FF8001FF8001FF8001FF8001FF80FFFFFFFFFFFFFFFFFF18487DC71F>108
D<00003FFC00000001FFFF8000000FFFFFF000003FF00FFC00007F8001FE0001FE00007F8003FC
00003FC007F800001FE007F800001FE00FF000000FF01FE0000007F81FE0000007F83FE0000007
FC3FE0000007FC7FC0000003FE7FC0000003FE7FC0000003FE7FC0000003FEFFC0000003FFFFC0
000003FFFFC0000003FFFFC0000003FFFFC0000003FFFFC0000003FFFFC0000003FFFFC0000003
FFFFC0000003FFFFC0000003FF7FC0000003FE7FC0000003FE7FC0000003FE7FE0000007FE3FE0
000007FC3FE0000007FC1FE0000007F81FF000000FF80FF000000FF007F800001FE007FC00003F
E003FE00007FC001FF0000FF80007F8001FE00003FF00FFC00000FFFFFF0000003FFFFC0000000
3FFC0000302E7DAD37>111 D<00FF801FF80000FFFF80FFFF0000FFFF83FFFFC000FFFF8FC07F
FFFFFF0000000035427DAD3D>I<00FF007F00FFFF01FFC0FFFF03FFE0FFFF0787F003FF0E0FF0
01FF1C1FF801FF381FF801FF301FF801FF701FF801FF600FF001FF600FF001FFE003C001FFC000
0001FFC0000001FFC0000001FFC0000001FF80000001FF80000001FF80000001FF80000001FF80
000001FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF
80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001
FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF800000FFFFFFC000
FFFFFFC000FFFFFFC000252E7DAD2C>114 D<001FFC030000FFFF870003FFFFCF000FE007FF00
1F8000FF003E00003F003E00001F007C00001F007C00000F00FC00000F00FC00000700FC000007
00FE00000700FF00000700FF80000000FFE00000007FFE0000007FFFF800003FFFFF00003FFFFF
C0001FFFFFF0000FFFFFF80007FFFFFC0001FFFFFE00007FFFFF00001FFFFF000000FFFF800000
07FF80000000FFC0E000007FC0E000003FC0E000001FC0F000000FC0F000000FC0F800000FC0F8
00000FC0F800000F80FC00000F80FE00001F80FF00001F00FF80003E00FFC0007C00F9F803F800
F0FFFFF000E03FFFC000C007FE0000222E7CAD2B>I E /Fg 8 117 df<00003000000070000001
F0000007F000007FF000FFFFF000FFFFF000FF8FF000000FF000000FF000000FF000000FF00000
0FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000
000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0
00000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000F
F000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF00000
0FF0007FFFFFFE7FFFFFFE7FFFFFFE1F3779B62D>49 D<000000FFE0001800000FFFFC00180000
000000FFE00000353B7BB940>67 D<003FFC00000001FFFF80000007E00FE000000FC003F80000
0FE001FC00001FF001FE00001FF000FF00001FF000FF00001FF0007F00000FE0007F800007C000
7F80000000007F80000000007F80000000007F80000000007F80000000007F800000000FFF8000
0007FFFF8000003FE07F800001FF007F800007FC007F80000FF0007F80001FE0007F80003FE000
7F80007FC0007F80007FC0007F8380FF80007F8380FF80007F8380FF80007F8380FF8000BF8380
FF8000BF83807FC0013F83807FC0033F83803FE0061FC7001FF81C0FFE0007FFF007FC00007FC0
03F00029257DA42D>97 D<0003FF0000001FFFE000007F07F00001FC01FC0003F000FE0007E000
7F000FE0003F001FC0003F801FC0003F803FC0001FC03F80001FC07F80001FC07F80001FE07F80
001FE0FF80001FE0FF80001FE0FFFFFFFFE0FFFFFFFFE0FF80000000FF80000000FF80000000FF
80000000FF800000007F800000007F800000007F800000003FC00000003FC00000001FC00000E0
1FE00000E00FE00001C007F000038003F800070000FE000E00007FC07C00001FFFF0000001FF80
0023257EA428>101 D<01FC00000000FFFC00000000FFFC00000000FFFC0000000007FC000000
F8FFFFF07FFFF82D3A7EB932>104 D<01FC03FE0000FFFC1FFFC000FFFC780FF000FFFDE003F8
0007FF8001FC0003FF0000FE0003FE0000FF0003FC00007F8003FC00007FC003FC00003FC003FC
00003FE003FC00003FE003FC00001FE003FC00001FE003FC00001FF003FC00001FF003FC00001F
F003FC00001FF003FC00001FF003FC00001FF003FC00001FF003FC00001FF003FC00001FF003FC
00001FE003FC00003FE003FC00003FE003FC00003FC003FC00003FC003FC00007F8003FC00007F
8003FE0000FF0003FF0001FE0003FF8003FC0003FDC007F80003FCF81FE00003FC3FFF800003FC
07FC000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000000
0003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC
00000000FFFFF0000000FFFFF0000000FFFFF00000002C357EA432>112
D<01F80FC0FFF83FF0FFF870F8FFF8C1FC07F883FE03F983FE03F903FE03FB03FE03FA01FC03FA
00F803FA007003FE000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003
FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0000
03FC000003FC000003FC000003FC000003FC0000FFFFF800FFFFF800FFFFF8001F257EA424>
114 D<001C0000001C0000001C0000001C0000001C0000003C0000003C0000003C0000003C0000
007C0000007C000000FC000000FC000001FC000003FC000007FC00001FFFFFC0FFFFFFC0FFFFFF
C003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC
000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003
FC00E003FC00E003FC00E003FC00E003FC00E003FC00E003FC00E003FC00E001FC00C001FC01C0
01FE01C000FE0380007F8700001FFE000007F8001B357EB423>116 D E
/Fh 17 117 df<001FC0000070200000C010000180380003807800070078000700300007000000
070000000700000007000000070000000700000007000000FFFFF8000700780007003800070038
000700380007003800070038000700380007003800070038000700380007003800070038000700
38000700380007003800070038000700380007003800070038007FE1FF80192380A21B>12
D<008003800F80F380038003800380038003800380038003800380038003800380038003800380
03800380038003800380038003800380038003800380038007C0FFFE0F217CA018>49
D<03F8000C1E001007002007804007C07807C07803C07807C03807C0000780000780000700000F
00000E0000380003F000001C00000F000007800007800003C00003C00003E02003E07003E0F803
E0F803E0F003C04003C0400780200780100F000C1C0003F00013227EA018>51
D<01F000060C000C0600180700380380700380700380F001C0F001C0F001C0F001E0F001E0F001
E0F001E0F001E07001E07003E03803E01805E00C05E00619E003E1E00001C00001C00001C00003
80000380300300780700780600700C002018001030000FC00013227EA018>57
D<FFFE00000FC00000078000000780000007800000078000000780000007800000078000000780
000007800000078000000780000007800000078000000780000007800000078000000780000007
800000078000000780000007800080078000800780008007800080078001800780018007800100
078003000780030007800F000F803F00FFFFFF0019227EA11E>76 D<FFC00003FF0FC00003F007
C00003E005E00005E005E00005E004F00009E004F00009E004F00009E004780011E004780011E0
04780011E0043C0021E0043C0021E0043C0021E0041E0041E0041E0041E0040F0081E0040F0081
E0040F0081E004078101E004078101E004078101E00403C201E00403C201E00401E401E00401E4
01E00401E401E00400F801E00400F801E00400F801E004007001E00E007001E01F007003F0FFE0
203FFF28227EA12D>I<FFFFE000000F803C000007800E00000780078000078007C000078003C0
00078003E000078003E000078003E000078003E000078003E000078003C000078007C000078007
800007800E000007803C000007FFE000000780700000078038000007801C000007801E00000780
0E000007800F000007800F000007800F000007800F000007800F800007800F800007800F800007
800F808007800FC080078007C0800FC003C100FFFC01E2000000007C0021237EA124>82
D<0FE0001838003C0C003C0E0018070000070000070000070000FF0007C7001E07003C07007807
00700700F00708F00708F00708F00F087817083C23900FC1E015157E9418>97
D<01FE000703000C07801C0780380300780000700000F00000F00000F00000F00000F00000F000
00F000007000007800403800401C00800C010007060001F80012157E9416>99
D<0000E0000FE00001E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000
E00000E001F8E00704E00C02E01C01E03800E07800E07000E0F000E0F000E0F000E0F000E0F000
E0F000E0F000E07000E07800E03800E01801E00C02E0070CF001F0FE17237EA21B>I<01FC0007
07000C03801C01C03801C07801E07000E0F000E0FFFFE0F00000F00000F00000F00000F0000070
00007800203800201C00400E008007030000FC0013157F9416>I<0E0000FE00001E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E1F800E60C00E80E0
0F00700F00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070
0E00700E00700E00700E0070FFE7FF18237FA21B>104 D<1C001E003E001E001C000000000000
00000000000000000000000E00FE001E000E000E000E000E000E000E000E000E000E000E000E00
0E000E000E000E000E000E00FFC00A227FA10E>I<0E0000FE00001E00000E00000E00000E0000
0E00000E00000E00000E00000E00000E00000E00000E00000E03FC0E01F00E01C00E01800E0200
0E04000E08000E10000E38000EF8000F1C000E1E000E0E000E07000E07800E03C00E01C00E01E0
0E00F00E00F8FFE3FE17237FA21A>107 D<0E00FE001E000E000E000E000E000E000E000E000E
000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00
0E000E000E000E00FFE00B237FA20E>I<0E3CFE461E8F0F0F0F060F000E000E000E000E000E00
0E000E000E000E000E000E000E000E000F00FFF010157F9413>114 D<02000200020002000600
060006000E001E003E00FFF80E000E000E000E000E000E000E000E000E000E000E000E040E040E
040E040E040E040708030801F00E1F7F9E13>116 D E /Fi 24 121 df<7803C0FC07E0FC07E0
FE07F0FE07F07A03D0020010020010020010020010020010040020040020040020080040080040
10008020010020010040020014147EB020>34 D<00003FC0020001FFF8060007E01C06001F0007
0E003C00018E00780000DE00F000005E01E000003E03C000001E078000001E0F0000000E0F0000
000E1E000000061E000000063E000000063C000000027C000000027C000000027C000000027800
000000F800000000F800000000F800000000F800000000F800000000F800000000F800000000F8
00000000F800000000F80000000078000000007C000000007C000000027C000000023C00000002
3E000000021E000000021E000000040F000000040F0000000C078000000803C000001801E00000
1000F00000200078000040003C000180001F0003000007E01E000001FFF80000003FC00027327C
B02F>67 D<FFFF80FFFF8007F00003E00003E00003E00003E00003E00003E00003E00003E00003
E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003
E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003
E00003E00003E00003E00003E00003E00003E00003E00007F000FFFF80FFFF8011307DAF17>73
D<FFF0000000FFF0FFF0000000FFF007F0000000FE0002F80000017C0002F80000017C0002F800
00017C00027C0000027C00027C0000027C00023E0000047C00023E0000047C00023E0000047C00
021F0000087C00021F0000087C00021F0000087C00020F8000107C00020F8000107C00020F8000
107C000207C000207C000207C000207C000207C000207C000203E000407C000203E000407C0002
03E000407C000201F000807C000201F000807C000200F801007C000200F801007C000200F80100
7C0002007C02007C0002007C02007C0002007C02007C0002003E04007C0002003E04007C000200
3E04007C0002001F08007C0002001F08007C0002001F08007C0002000F90007C0002000F90007C
0002000F90007C00020007E0007C00020007E0007C00020003C0007C00020003C0007C00070003
C0007C000F80018000FE00FFF801801FFFF0FFF801801FFFF034307CAF3C>77
D<FFFFFF8000FFFFFFF00007E000FC0003E0003E0003E0000F0003E000078003E00003C003E000
03E003E00003E003E00001E003E00001F003E00001F003E00001F003E00001F003E00001F003E0
0001F003E00001E003E00003E003E00003C003E00003C003E000078003E0000F0003E0003E0003
E000F80003FFFFE00003E000000003E000000003E000000003E000000003E000000003E0000000
03E000000003E000000003E000000003E000000003E000000003E000000003E000000003E00000
0003E000000003E000000003E000000003E000000003E000000003E000000007F0000000FFFF80
0000FFFF80000024307CAF2C>80 D<007F004001FFC0400780F0C00F0018C01C000DC03C0007C0
380003C0780001C0700001C0F00000C0F00000C0F00000C0F0000040F0000040F0000040F80000
40F80000007C0000007E0000003F0000003FE000001FFE00000FFFE00007FFF80001FFFE00007F
FF000007FF8000007F8000000FC0000007E0000003E0000003E0000001F0000001F0800000F080
0000F0800000F0800000F0800000F0C00000F0C00000E0E00001E0E00001E0F00001C0F8000380
EC000780C7000F00C1E03E0080FFF800801FE0001C327CB024>83 D<FFFE00000FFEFFFE00000F
FE07F0000003F003E0000001C003E00000008003F00000008001F00000010001F00000010001F8
0000030000F80000020000F800000200007C00000400007C00000400007E00000400003E000008
00003E00000800001F00001000001F00001000001F80001000000F80002000000F80002000000F
C00060000007C00040000007C00040000003E00080000003E00080000003F00080000001F00100
000001F00100000001F80300000000F80200000000F802000000007C04000000007C0400000000
7E04000000003E08000000003E08000000001F10000000001F10000000001F90000000000FA000
0000000FA0000000000FE00000000007C00000000007C000000000038000000000038000000000
038000000000010000002F317FAF31>86 D<040020080040080040100080200100200100400200
400200400200800400800400800400800400800400BC05E0FE07F0FE07F07E03F07E03F03C01E0
141476B020>92 D<00FE0000070380000801E0001000F0003C0078003E0078003E003C003E003C
001C003C0000003C0000003C0000003C000007FC00007C3C0003E03C0007803C001F003C003E00
3C003C003C007C003C0078003C08F8003C08F8003C08F8003C08F8007C08F8007C087C00BC083E
011E100F060FE003F807C01D1E7D9D20>97 D<018000003F800000FF800000FF8000000F800000
078000000780000007800000078000000780000007800000078000000780000007800000078000
00078000000780000007800000078000000781F80007860700079803C007A000E007C000F007C0
0078078000380780003C0780003E0780001E0780001E0780001F0780001F0780001F0780001F07
80001F0780001F0780001F0780001F0780001E0780003E0780003C0780003C0780007807C00070
074000F0072001C006100380060C0E000403F80020317EB024>I<001FC00000F0380001C00400
078002000F000F001E001F001E001F003C001F007C000E007C00000078000000F8000000F80000
00F8000000F8000000F8000000F8000000F8000000F8000000780000007C0000007C0000003C00
00801E0000801E0001000F0001000780020001C00C0000F03000001FC000191E7E9D1D>I<003F
800000E0F0000380380007001C000E001E001E000E003C000F003C000F007C000F807800078078
000780F8000780FFFFFF80F8000000F8000000F8000000F8000000F8000000F800000078000000
780000007C0000003C0000801C0000801E0001000F0002000700020001C00C0000F03000001FC0
00191E7E9D1D>101 D<0007E0001C1000383800707C00E07C01E07C01C03803C00003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C000FFFFC0FFFFC003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00007E0007FFF007FFF
0016317FB014>I<07000F801F801F800F80070000000000000000000000000000000000000000
00000001801F80FF80FF800F800780078007800780078007800780078007800780078007800780
0780078007800780078007800780078007800FC0FFF8FFF80D2F7EAE12>105
D<01803F80FF80FF800F8007800780078007800780078007800780078007800780078007800780
078007800780078007800780078007800780078007800780078007800780078007800780078007
8007800780078007800780078007800FC0FFFCFFFC0E317EB012>108 D<0181FE003FC0003F86
0780C0F000FF8801C1003800FF9001E2003C000FA000E4001C0007A000F4001E0007C000F8001E
0007C000F8001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000
F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00
078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0
001E00078000F0001E00078000F0001E00078000F0001E000FC001F8003F00FFFC1FFF83FFF0FF
FC1FFF83FFF0341E7E9D38>I<0181FC003F860F00FF880380FF9003C00FA001C007C001E007C0
01E007C001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E007
8001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0
078001E00FC003F0FFFC3FFFFFFC3FFF201E7E9D24>I<003FC00000E0700003801C0007000E00
0E0007001E0007803C0003C03C0003C07C0003E0780001E0780001E0F80001F0F80001F0F80001
F0F80001F0F80001F0F80001F0F80001F0F80001F0780001E0780001E07C0003E03C0003C03C00
03C01E0007800E00070007000E0003801C0000E07000003FC0001C1E7E9D20>I<0181F8003F86
0F00FF9803C0FFA001E007C000F007C00078078000780780003C0780003E0780003E0780001E07
80001F0780001F0780001F0780001F0780001F0780001F0780001F0780001F0780001E0780003E
0780003C0780003C0780007807C000F007C000F007A001C007900380078C0E000783F800078000
000780000007800000078000000780000007800000078000000780000007800000078000000780
00000FC00000FFFC0000FFFC0000202C7E9D24>I<0183E03F8C18FF907CFF907C0FA07C07C038
07C00007C00007C000078000078000078000078000078000078000078000078000078000078000
0780000780000780000780000780000780000780000780000FC000FFFE00FFFE00161E7E9D19>
114 D<03FC200E02603801E03000E0600060E00060E00020E00020F00020F000207C00007F8000
3FFC001FFF0007FF8001FFE0000FE00001F08000F8800078800038C00038C00038C00038E00030
F00070F00060C800C0C6038081FE00151E7E9D19>I<00400000400000400000400000400000C0
0000C00000C00001C00001C00003C00007C0000FC0001FFFE0FFFFE003C00003C00003C00003C0
0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C01003C0
1003C01003C01003C01003C01003C01003C01001C02001E02000E0400078C0001F00142B7FAA19
>I<018000603F800FE0FF803FE0FF803FE00F8003E0078001E0078001E0078001E0078001E007
8001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0078001E0
078001E0078001E0078001E0078003E0078003E0078003E0038005E003C009E001C019F000F021
FF001FC1FF201E7E9D24>I<FFF007FE00FFF007FE000FE003F00003C003C00003E003000001E0
02000000F006000000F8040000007C080000003C100000001E300000001F200000000FC0000000
078000000003C000000003E000000003E000000004F00000000878000000187C000000103C0000
00201E000000400F000000C00F80000180078000010003C000070003E0001F8003F000FFC00FFF
80FFC00FFF80211E7F9D22>120 D E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300dpi
TeXDict begin
%%PaperSize: A4

%%EndSetup
%%Page: 0 1
0 0 bop 302 1086 a Fi(\\Prop)r(osal)24 b(V")e(for)f(MPI)i(Comm)n(unication)d
(Con)n(text)774 1178 y(Sub)r(committee)829 1360 y Fh(Rik)15
b(Little\014eld)853 1481 y(Marc)o(h)h(1993)p eop
%%Page: 1 2
1 1 bop 262 619 a Fg(Chapter)28 b(1)262 826 y Ff(Prop)s(osal)36
b(V)262 1067 y Fe(1.1)64 b(Summary)324 1158 y Fd(\017)20 b
Fc(Group)i(ID's)g(ha)o(v)o(e)g(lo)q(cal)f(scop)q(e,)k(not)d(global.)41
b(Groups)22 b(are)h(represen)o(ted)i(b)o(y)365 1208 y(descriptors)f(of)d
(inde\014nite)h(size)g(and)g(opaque)f(structure,)k(managed)20
b(b)o(y)i(MPI.)365 1257 y(Group)13 b(descriptors)j(can)d(b)q(e)h(passed)h(b)q
(et)o(w)o(een)g(pro)q(cesses)h(b)o(y)d(MPI)h(routines)g(that)365
1307 y(translate)h(them)e(as)h(necessary)m(.)365 1374 y(\(This)j(satis\014es)
g(the)g(same)e(needs)j(as)e(global)f(group)h(ID's,)g(but)g(its)h(p)q
(erformance)365 1423 y(implications)11 b(are)k(easier)f(to)g(understand)h
(and)f(con)o(trol.\))324 1506 y Fd(\017)20 b Fc(Arbitrary)14
b(pro)q(cess-lo)q(cal)h(info)e(can)h(b)q(e)h(cac)o(hed)g(in)e(group)h
(descriptors.)365 1573 y(\(This)i(allo)o(ws)e(collectiv)o(e)h(op)q(erations)h
(to)f(run)h(quic)o(kly)e(after)i(the)g(\014rst)g(execution)365
1623 y(in)e(eac)o(h)g(group,)f(without)h(complicating)d(the)k(calling)d
(sequences.\))324 1706 y Fd(\017)20 b Fc(There)15 b(are)g(restrictions)g
(that)f(p)q(ermit)f(groups)h(to)g(b)q(e)g(la)o(y)o(ered)g(on)g(top)g(of)f
(pt-pt.)324 1789 y Fd(\017)20 b Fc(Pt-pt)c(comm)o(unications)d(use)k(only)e
(TID,)g(con)o(text,)h(and)g(tag,)f(and)h(are)g(sp)q(eci\014ed)365
1839 y(to)e(b)q(e)h(fast.)324 1922 y Fd(\017)20 b Fc(Group)c(con)o(trol)g(op)
q(erations)g(\(forming,)e(disbanding,)i(and)g(translating)f(b)q(et)o(w)o(een)
365 1971 y(rank)f(and)g(TID\))f(are)i(NOT)f(sp)q(eci\014ed)h(to)f(b)q(e)h
(fast.)262 2109 y Fe(1.2)64 b(Detailed)24 b(Prop)r(osal)324
2200 y Fd(\017)c Fc(Pt-pt)d(uses)h(only)e(\\TID",)g(\\con)o(text",)h(and)f
(\\message)h(tag".)25 b(TID's,)17 b(con)o(texts,)365 2249 y(and)12
b(message)f(tags)h(ha)o(v)o(e)g(global)e(scop)q(e;)j(they)f(can)g(b)q(e)h
(copied)f(b)q(et)o(w)o(een)h(pro)q(cesses)365 2299 y(as)i(in)o(tegers.)21
b(TID's)14 b(and)h(con)o(texts)h(are)f(opaque;)f(their)h(v)n(alues)g(are)g
(managed)e(b)o(y)365 2349 y(MPI.)h(Message)h(tags)f(are)g(con)o(trolled)g(en)
o(tirely)g(b)o(y)g(the)g(application.)967 2574 y(1)p eop
%%Page: 2 3
2 2 bop 324 307 a Fd(\017)20 b Fc(Pt-pt)15 b(comm)o(unication)c(is)j(sp)q
(eci\014ed)i(to)e(b)q(e)h(fast)g(in)f(all)f(cases.)21 b(\(E.g.,)13
b(MPI)i(m)o(ust)365 357 y(initialize)i(all)h(pro)q(cesses)j(suc)o(h)e(that)f
(an)o(y)g(required)i(translation)e(of)g(the)h(TID)f(is)365
407 y(faster)d(than)f(the)g(fastest)h(pt-pt)f(comm)o(unication)c(call.\))324
490 y Fd(\017)20 b Fc(A)h(group)f(is)g(represen)o(ted)j(b)o(y)d(a)g(\\group)f
(descriptor",)k(of)c(inde\014nite)i(size)g(and)365 540 y(opaque)c(structure,)
j(managed)15 b(b)o(y)i(MPI.)f(The)i(group)f(descriptor)h(can)f(b)q(e)h
(refer-)365 589 y(enced)e(via)e(a)h(\\pro)q(cess-lo)q(cal)g(group)f(ID",)g
(whic)o(h)h(is)f(t)o(ypically)g(just)g(a)h(p)q(oin)o(ter)g(to)365
639 y(the)g(group)f(descriptor.)19 b(\(Group)14 b(ID's)f(with)h(global)e
(scop)q(e)j(do)e(not)h(exist.\))324 722 y Fd(\017)20 b Fc(Group)f
(descriptors)i(can)e(b)q(e)h(copied)f(b)q(et)o(w)o(een)i(arbitrary)e(pro)q
(cesses)i(via)e(MPI-)365 772 y(pro)o(vided)14 b(routines)g(that)g(translate)g
(them)f(to)g(and)g(from)f(mac)o(hine-)g(and)i(pro)q(cess-)365
822 y(indep)q(enden)o(t)e(form.)j(A)10 b(pro)q(cess)i(receiving)f(a)f(group)g
(descriptor)i(do)q(es)f(not)f(b)q(ecome)365 872 y(a)h(mem)o(b)q(er)f(of)h
(the)h(group,)f(but)h(do)q(es)g(b)q(ecome)f(able)g(to)h(obtain)e(information)
f(ab)q(out)365 922 y(the)15 b(group)f(\(e.g.,)e(to)i(translate)g(b)q(et)o(w)o
(een)i(rank)d(and)h(TID\).)324 1005 y Fd(\017)20 b Fc(Arbitrary)15
b(information)d(can)i(b)q(e)i(cac)o(hed)f(in)f(a)g(group)h(descriptor.)21
b(This)14 b(is,)g(MPI)365 1054 y(routines)d(are)f(pro)o(vided)g(that)g(allo)o
(w)f(an)o(y)g(routine)h(to)g(augmen)o(t)f(a)g(group)h(descriptor)365
1104 y(with)17 b(arbitrary)g(information,)e(iden)o(ti\014ed)i(b)o(y)g(a)g(k)o
(ey)g(v)n(alue,)g(that)g(subsequen)o(tly)365 1154 y(can)f(b)q(e)g(retriev)o
(ed)h(b)o(y)e(an)o(y)h(routine)f(ha)o(ving)g(access)i(to)f(the)g(descriptor.)
24 b(Cac)o(hed)365 1204 y(information)10 b(is)j(not)g(visible)f(to)h(other)h
(pro)q(cesses)h(and)e(is)g(stripp)q(ed)h(when)f(a)g(group)365
1254 y(descriptor)18 b(is)e(sen)o(t)h(to)g(another)f(pro)q(cess.)28
b(Retriev)n(al)15 b(of)h(cac)o(hed)h(information)d(is)365 1303
y(sp)q(eci\014ed)d(to)f(b)q(e)g(fast)g(\(signi\014can)o(tly)f(c)o(heap)q(er)i
(than)e(a)h(pt-pt)g(comm)o(uni)o(cation)d(call\).)324 1386
y Fd(\017)20 b Fc(Group)e(descriptors)h(con)o(tain)e(enough)h(information)d
(to)i(async)o(hronously)h(trans-)365 1436 y(late)c(b)q(et)o(w)o(een)h
(\(group,rank\))f(and)g(TID)g(for)f(an)o(y)h(mem)o(b)q(er)e(of)h(the)i
(group,)e(b)o(y)h(an)o(y)365 1486 y(pro)q(cess)j(holding)c(a)h(descriptor)h
(for)g(the)g(group.)k(MPI)c(routines)g(are)f(pro)o(vided)h(to)365
1536 y(do)f(these)h(translations.)j(T)m(ranslation)13 b(is)g(not)h(sp)q
(eci\014ed)i(to)d(b)q(e)i(fast.)324 1619 y Fd(\017)20 b Fc(A)o(t)14
b(creation,)g(eac)o(h)h(group)f(is)f(assigned)i(a)f(globally)d(unique)j
(\\default)g(group)g(con-)365 1669 y(text")g(whic)o(h)g(is)g(k)o(ept)g(in)f
(the)i(group)e(descriptor)j(and)d(can)h(b)q(e)h(quic)o(kly)d(extracted.)365
1719 y(This)i(extraction)g(is)g(sp)q(eci\014ed)i(to)d(b)q(e)i(fast)f
(\(comparable)e(to)i(a)g(pro)q(cedure)h(call\).)324 1802 y
Fd(\017)20 b Fc(The)d(default)g(group)f(con)o(text)h(can)g(b)q(e)g(used)h
(for)e(pt-pt)h(comm)o(unicati)o(on)d(b)o(y)i(an)o(y)365 1851
y(mo)q(dule)8 b(op)q(erating)h(within)g(the)h(group,)f(but)h(only)e(for)h
(exactly)h(paired)f(send/receiv)o(e)365 1901 y(with)i(exact)g(matc)o(h)e(on)i
(TID,)f(con)o(text,)h(and)g(message)f(tag.)17 b(Call)9 b(this)i(the)g
(\\paired-)365 1951 y(exact-matc)o(h)k(constrain)o(t".)22 b(This)15
b(constrain)o(t)h(allo)o(ws)e(indep)q(enden)o(t)j(mo)q(dules)d(to)365
2001 y(use)19 b(the)f(same)f(con)o(text)i(without)e(co)q(ordinating)g(their)i
(tag)e(v)n(alues.)30 b(\(Assumes:)365 2051 y(tigh)o(t)12 b(sequencing)g
(constrain)o(ts)h(for)e(b)q(oth)h(blo)q(c)o(king)f(and)h(non-blo)q(c)o(king)f
(comms)e(in)365 2100 y(pt-pt)14 b(MPI.\))324 2183 y Fd(\017)20
b Fc(A)f(mo)q(dules)f(that)h(do)q(es)g(not)g(meet)f(the)h(paired-exact-matc)o
(h)g(constrain)o(t)g(m)o(ust)365 2233 y(use)e(a)f(di\013eren)o(t)h(globally)d
(unique)i(con)o(text)g(v)n(alue.)24 b(An)16 b(MPI)g(routine)h(will)d(exist)
365 2283 y(to)h(generate)i(suc)o(h)f(a)f(v)n(alue)g(and)g(broadcast)h(it)f
(to)g(the)h(group.)22 b(The)16 b(cost)g(of)f(this)365 2333
y(op)q(eration)e(is)f(sp)q(eci\014ed)i(to)e(b)q(e)h(comparable)e(to)h(that)g
(of)g(an)g(e\016cien)o(t)h(broadcast)g(in)365 2383 y(the)h(group,)f(i.e.)k
(log\(G\))c(pt-pt)g(startup)h(costs)h(for)e(a)g(group)g(of)g(G)g(pro)q
(cesses.)20 b([See)365 2433 y(Implemen)o(tation)11 b(note)j(1.])967
2574 y(2)p eop
%%Page: 3 4
3 3 bop 324 307 a Fd(\017)20 b Fc(Con)o(text)c(v)n(alues)g(are)g(a)g(plen)o
(tiful)e(but)i(exhaustible)g(resource.)26 b(If)15 b(further)i(use)g(is)365
357 y(an)o(ticipated,)i(a)f(con)o(text)g(ma)o(y)e(b)q(e)j(cac)o(hed;)i
(otherwise)e(it)f(should)g(b)q(e)g(returned.)365 407 y(\(Note:)g(the)c(n)o
(um)o(b)q(er)e(of)h(a)o(v)n(ailable)e(con)o(texts)j(should)e(b)q(e)i(sev)o
(eral)g(times)e(the)h(n)o(um-)365 457 y(b)q(er)i(of)e(groups)h(that)g(can)g
(b)q(e)h(formed.\))324 540 y Fd(\017)20 b Fc(When)g(a)e(group)h(disbands,)h
(its)f(group)g(descriptor)i(is)d(closed)i(and)f(an)o(y)g(cac)o(hed)365
589 y(information)e(is)j(released.)37 b(\(The)21 b(MPI)f(group-disbanding)f
(routine)h(do)q(es)h(this)365 639 y(b)o(y)15 b(calling)e(destructor)j
(routines)f(that)g(the)g(application)e(pro)o(vided)h(when)h(the)g(in-)365
689 y(formation)d(w)o(as)i(cac)o(hed.\))19 b(Copies)14 b(of)f(the)i(group)f
(descriptor)h(m)o(ust)e(b)q(e)i(explicitly)365 739 y(released.)j(It)11
b(is)f(an)g(error)i(to)e(mak)o(e)f(an)o(y)h(reference)i(to)f(a)f(descriptor)h
(of)f(a)g(disbanded)365 789 y(group,)k(except)h(to)f(release)h(that)f
(descriptor.)324 872 y Fd(\017)20 b Fc(All)11 b(pro)q(cesses)i(that)f(are)f
(initially)e(allo)q(cated)i(b)q(elong)f(to)h(the)h(INITIAL)f(group.)17
b(\(In)365 922 y(a)e(static)h(pro)q(cess)h(mo)q(del,)c(this)i(means)f(all)g
(pro)q(cesses.\))25 b(An)15 b(MPI)h(routine)f(exists)365 971
y(for)j(obtaining)f(a)g(reference)k(to)d(the)h(INITIAL)f(group)g(descriptor)h
(\(i.e.,)f(a)f(lo)q(cal)365 1021 y(group)d(ID)g(for)f(INITIAL\).)324
1104 y Fd(\017)20 b Fc(Groups)10 b(are)h(formed)e(and)h(disbanded)g(b)o(y)g
(sync)o(hronous)h(calls)f(on)g(all)f(participating)365 1154
y(pro)q(cesses.)21 b(In)14 b(the)h(case)g(of)e(o)o(v)o(erlapping)g(groups,)g
(all)g(pro)q(cesses)k(m)o(ust)c(form)f(and)365 1204 y(disband)i(groups)g(in)g
(the)g(same)f(order.)19 b([See)14 b(Implemen)o(tation)d(Note)j(2.])324
1287 y Fd(\017)20 b Fc(All)f(group)h(formation)e(calls)h(are)i(treated)g(as)f
(a)f(partitioning)g(of)g(some)g(group,)365 1337 y(INITIAL)c(if)f(none)h
(other.)20 b(The)15 b(calls)g(include)f(a)h(reference)i(to)d(the)h
(descriptor)h(of)365 1386 y(the)g(group)f(b)q(eing)h(partitioned,)f(the)h
(TID)f(of)f(the)i(new)g(group's)f(\\ro)q(ot)g(pro)q(cess",)365
1436 y(the)d(n)o(um)o(b)q(er)e(of)h(pro)q(cesses)i(in)e(the)h(group,)f(and)f
(an)h(in)o(teger)h(\\group)e(tag")h(pro)o(vided)365 1486 y(b)o(y)h(the)h
(application.)j(The)d(group)f(tag)g(m)o(ust)f(discriminate)g(b)q(et)o(w)o
(een)j(o)o(v)o(erlapping)365 1536 y(groups)i(that)f(ma)o(y)f(b)q(e)i(formed)e
(concurren)o(tly)m(,)i(sa)o(y)f(b)o(y)g(m)o(ultiple)e(threads)j(within)365
1586 y(a)e(pro)q(cess.)20 b([See)14 b(Implemen)o(tation)d(Note)j(2.])324
1669 y Fd(\017)20 b Fc(Collectiv)o(e)c(comm)o(unication)d(routines)k(are)g
(called)f(b)o(y)g(all)f(mem)o(b)q(ers)g(of)h(a)g(group)365
1719 y(in)e(the)g(same)f(order.)324 1802 y Fd(\017)20 b Fc(Blo)q(c)o(king)f
(collectiv)o(e)g(comm)o(unicati)o(on)d(routines)k(are)f(passed)h(only)e(a)h
(reference)365 1851 y(to)g(the)h(group)e(descriptor.)35 b(T)m(o)18
b(comm)o(unicate,)g(they)h(can)g(either)h(use)g(the)f(de-)365
1901 y(fault)14 b(group)h(con)o(text)g(or)g(in)o(ternally)e(allo)q(cate)h(a)h
(new)g(con)o(text,)g(with)f(or)h(without)365 1951 y(cac)o(heing.)324
2034 y Fd(\017)20 b Fc(Non-blo)q(c)o(king)13 b(collectiv)o(e)h(comm)o(uni)o
(cation)d(routines)j(are)g(passed)h(a)f(reference)i(to)365
2084 y(the)h(group)f(descriptor,)i(plus)e(a)f(\\data)h(tag")f(to)h
(discriminate)f(b)q(et)o(w)o(een)j(concur-)365 2134 y(ren)o(t)13
b(op)q(erations)g(in)f(the)h(same)f(group.)17 b(\(Question:)h(is)13
b(sequencing)g(enough)g(to)f(do)365 2183 y(this?\))18 b(An)11
b(implemen)o(tatio)o(n)e(is)i(allo)o(w)o(ed)e(but)j(not)f(required)h(to)f
(imp)q(ose)f(sync)o(hron-)365 2233 y(ization)g(of)h(all)f(co)q(op)q(erating)h
(pro)q(cesses)j(up)q(on)d(en)o(try)g(to)g(a)g(non-blo)q(c)o(king)f(collectiv)
o(e)365 2283 y(comm)o(unication)h(routine.)967 2574 y(3)p eop
%%Page: 4 5
4 4 bop 262 307 a Fe(1.3)64 b(Adv)l(an)n(tages)22 b(&)g(Disadv)l(an)n(tages)
262 406 y Fb(Adv)m(an)n(tages)324 483 y Fd(\017)e Fc(This)14
b(prop)q(osal)g(is)g(implemen)o(tabl)o(e)e(with)i(no)f(serv)o(ers)j(and)e
(can)g(b)q(e)h(la)o(y)o(ered)f(easily)365 533 y(on)g(existing)g(systems.)324
616 y Fd(\017)20 b Fc(Cac)o(heing)c(auxiliary)e(information)e(in)j(group)h
(descriptors)h(allo)o(ws)d(collectiv)o(e)i(op-)365 666 y(erations)d(to)g(run)
g(at)g(maxim)n(um)c(sp)q(eed)14 b(after)f(the)g(\014rst)h(execution)g(in)e
(eac)o(h)h(group.)365 715 y(\(Assumes)i(that)f(su\016cien)o(t)g(con)o(text)g
(v)n(alues)g(are)g(a)o(v)n(ailable)e(to)i(p)q(ermit)f(cac)o(heing.\))324
799 y Fd(\017)20 b Fc(Sp)q(eed)c(of)e(cac)o(hed)i(collectiv)o(e)e(op)q
(erations)h(do)q(es)h(not)e(dep)q(end)i(on)f(sp)q(eed)h(of)e(group)365
848 y(op)q(erations)g(suc)o(h)h(as)f(formation)d(or)j(translation)f(b)q(et)o
(w)o(een)j(rank)e(and)f(TID.)324 931 y Fd(\017)20 b Fc(Requires)13
b(explicit)e(translation)h(b)q(et)o(w)o(een)h(\(group,rank\))f(and)g(TID,)f
(whic)o(h)h(mak)o(es)365 981 y(pt-pt)j(p)q(erformance)g(predictable)g(no)g
(matter)f(ho)o(w)g(the)h(functionalit)o(y)e(of)h(groups)365
1031 y(gets)h(extended.)324 1114 y Fd(\017)20 b Fc(Comm)o(unicatio)o(n)7
b(b)q(oth)i(within)g(and)g(b)q(et)o(w)o(een)h(groups)g(seems)f(conceptually)h
(straigh)o(t-)365 1164 y(forw)o(ard.)262 1280 y Fb(Disadv)m(an)n(tages)324
1357 y Fd(\017)20 b Fc(Requires)d(explicit)f(translation)g(b)q(et)o(w)o(een)i
(\(group,rank\))e(and)g(TID,)f(whic)o(h)i(ma)o(y)365 1406 y(b)q(e)e
(considered)g(a)o(wkw)o(ard.)324 1489 y Fd(\017)20 b Fc(Comm)o(unicatio)o(n)
11 b(b)q(et)o(w)o(een)16 b(di\013eren)o(t)e(groups)g(ma)o(y)e(b)q(e)j
(considered)g(a)o(wkw)o(ard.)324 1572 y Fd(\017)20 b Fc(No)d(free-for-all)f
(group)h(formation.)24 b(A)17 b(pro)q(cess)i(m)o(ust)d(kno)o(w)g(something)g
(ab)q(out)365 1622 y(who)e(its)g(collab)q(orators)f(are)h(going)f(to)h(b)q(e)
g(\(minimal)o(ly)l(,)d(the)j(ro)q(ot)g(of)f(the)i(group\).)324
1705 y Fd(\017)20 b Fc(Requires)15 b(explicit)f(coherency)j(of)d(group)g
(descriptors,)i(whic)o(h)e(is)h(not)f(con)o(v)o(enien)o(t)365
1755 y({)f(application)f(m)o(ust)g(k)o(eep)i(trac)o(k)f(of)g(whic)o(h)f(pro)q
(cesses)k(ha)o(v)o(e)d(copies)h(and)f(what)g(to)365 1805 y(do)h(with)g(them.)
324 1888 y Fd(\017)20 b Fc(Static)13 b(group)f(mo)q(del.)k(Pro)q(cesses)f
(can)e(join)f(and)g(lea)o(v)o(e)g(collab)q(orations)f(only)h(with)365
1938 y(the)k(co)q(op)q(eration)f(of)f(the)h(other)h(group)e(mem)o(b)q(ers)g
(in)g(forming)f(larger)h(or)h(smaller)365 1988 y(groups.)324
2071 y Fd(\017)20 b Fc(No)c(direct)g(supp)q(ort)g(for)f(iden)o(tifying)f(the)
i(group)g(from)d(whic)o(h)j(a)f(message)g(came.)365 2120 y(The)j(sender)g
(cannot)g(em)o(b)q(ed)e(its)h(group)g(ID)g(in)f(its)h(message,)g(since)h
(group)f(ID's)365 2170 y(are)h(not)f(globally)e(meaningful.)25
b(One)17 b(metho)q(d)g(to)g(address)h(this)f(problem)f(is)h(to)365
2220 y(ha)o(v)o(e)11 b(the)h(sender)h(em)o(b)q(ed)d(its)h(group)g(con)o(text)
h(as)f(data)g(in)f(the)i(message,)f(then)h(ha)o(v)o(e)365 2270
y(the)k(receiv)o(er)g(use)g(that)f(v)n(alue)f(to)g(select)j(among)12
b(group)j(descriptors)h(that)f(it)g(had)365 2320 y(already)f(b)q(een)h(sen)o
(t.)967 2574 y(4)p eop
%%Page: 5 6
5 5 bop 262 307 a Fe(1.4)64 b(Commen)n(ts)20 b(&)i(Alternativ)n(es)324
398 y Fd(\017)e Fc(The)13 b(p)q(erformance)g(of)f(group)g(con)o(trol)h
(functions)f(is)h(explicitly)e(unsp)q(eci\014ed)k(in)d(or-)365
448 y(der)g(to)f(pro)o(vide)g(p)q(erformance)h(insurance.)18
b(The)11 b(in)o(ten)o(t)h(is)f(to)g(encourage)h(program)365
498 y(designs)17 b(whose)g(p)q(erformance)f(w)o(on't)f(b)q(e)i(killed)e(if)g
(the)h(functionalit)o(y)f(of)g(groups)365 548 y(is)f(expanded)h(so)f(as)g(to)
f(b)q(e)i(unscalable)f(or)g(require)g(exp)q(ensiv)o(e)h(services.)324
631 y Fd(\017)20 b Fc(Adding)13 b(global)f(group)h(ID's)f(w)o(ould)h
(seriously)g(in)o(terfere)h(with)f(la)o(y)o(ering)f(this)i(pro-)365
680 y(p)q(osal)d(on)g(pt-pt.)17 b(The)11 b(problem)f(is)h(not)g(generating)g
(a)g(unique)g(ID,)f(but)h(using)g(it.)17 b(If)365 730 y(just)e(holding)e(a)g
(global)g(group)h(ID)g(w)o(ere)h(to)f(allo)o(w)f(a)g(pro)q(cess)j(to)e(async)
o(hronously)365 780 y(ask)i(questions)h(ab)q(out)f(the)h(group)f(\(lik)o(e)f
(translating)h(b)q(et)o(w)o(een)h(rank)f(and)g(TID\),)365 830
y(then)e(a)e(group)h(information)d(serv)o(er)k(of)e(some)g(sort)i(w)o(ould)e
(b)q(e)h(required,)h(and)e(MPI)365 880 y(pt-pt)i(do)q(es)h(not)f(pro)o(vide)g
(enough)g(capabilit)o(y)e(to)i(construct)h(suc)o(h)g(a)e(b)q(east.)324
963 y Fd(\017)20 b Fc(The)c(restriction)g(that)f(only)f(paired-exact-matc)o
(h)g(mo)q(dules)g(can)h(run)g(in)g(the)g(de-)365 1012 y(fault)j(group)g(con)o
(text)h(could)g(b)q(e)g(relaxed)g(to)f(something)f(lik)o(e)h(\\a)g(mo)q(dule)
f(that)365 1062 y(violates)g(the)h(paired-exact-matc)o(h)f(constrain)o(t)h
(can)g(run)f(in)h(the)g(default)f(group)365 1112 y(con)o(text)e(if)f(and)g
(only)g(if)g(it)g(is)g(the)h(only)f(mo)q(dule)f(to)h(run)h(in)f(that)g(con)o
(text".)21 b(This)365 1162 y(seems)11 b(to)q(o)g(error-prone)h(to)e(b)q(e)i
(w)o(orth)e(the)i(trouble,)f(since)g(ev)o(en)h(the)f(standard)g(col-)365
1212 y(lectiv)o(e)g(ops)g(migh)o(t)e(b)q(e)i(excluded.)18 b(\(It)11
b(w)o(ould)f(also)g(con\015ict)h(with)g(Implemen)o(tation)365
1262 y(Note)k(1.])324 1345 y Fd(\017)20 b Fc(Group)d(formation)d(can)j(b)q(e)
g(faster)h(when)f(more)f(information)d(is)k(pro)o(vided)g(than)365
1394 y(just)i(the)f(group)g(tag)g(and)g(ro)q(ot)g(pro)q(cess.)32
b(E.g.)e(if)17 b(all)g(mem)o(b)q(ers)g(of)g(the)i(group)365
1444 y(can)c(iden)o(tify)e(all)g(other)h(mem)o(b)q(ers)f(of)g(a)h(P-mem)o(b)q
(er)f(group,)g(in)h(rank)g(order,)g(then)365 1494 y(O\(log)h(P\))h(time)e(is)
i(su\016cien)o(t;)g(if)f(only)g(the)h(ro)q(ot)f(is)h(kno)o(wn,)f(O\(P\))h
(time)e(ma)o(y)g(b)q(e)365 1544 y(required.)24 b(This)16 b(asp)q(ect)h
(should)e(b)q(e)h(considered)h(b)o(y)f(the)g(groups)g(sub)q(committee)365
1594 y(in)e(ev)n(aluating)e(scalabilit)o(y)m(.)262 1731 y Fe(1.5)64
b(Implemen)n(tation)21 b(Notes)312 1822 y Fc(1.)f(T)m(o)f(generate)h(and)f
(broadcast)g(a)g(new)h(con)o(text)f(v)n(alue:)28 b(Generate)20
b(the)g(con)o(text)365 1872 y(v)n(alue)9 b(without)g(comm)o(unicatio)o(n)e(b)
o(y)i(concatenating)g(a)g(lo)q(cally)f(main)o(tained)f(unique)365
1921 y(v)n(alue)j(with)g(the)g(pro)q(cess)i(n)o(um)o(b)q(er)e(in)f(some)g
(0..P-1)g(global)g(ordering)h(sc)o(heme.)17 b(This)365 1971
y(assumes)g(that)g(con)o(text)g(v)n(alues)f(can)h(b)q(e)h(signi\014can)o(tly)
d(longer)i(than)f(log\(P\))h(bits)365 2021 y(for)i(an)f(application)f(in)o(v)
o(olving)g(P)i(pro)q(cesses.)35 b(If)18 b(not,)h(then)h(a)e(serv)o(er)i(ma)o
(y)d(b)q(e)365 2071 y(required,)d(in)f(whic)o(h)g(case)i(b)o(y)e(sp)q
(eci\014cation)h(it)f(has)g(to)g(b)q(e)h(fast)g(\(comparable)e(to)h(a)365
2121 y(pt-pt)i(call\).)i(There)f(is)e(no)f(need)i(to)f(generate)i(a)d(new)i
(con)o(text)g(for)e(the)i(broadcast)365 2171 y(since)20 b(it)e(can)h(b)q(e)g
(co)q(ded)h(to)f(use)g(the)h(default)e(group)g(con)o(text)i(b)o(y)e(meeting)g
(the)365 2220 y(paired-exact-matc)o(h)13 b(constrain)o(t.\))312
2303 y(2.)20 b(The)e(follo)o(wing)d(is)j(in)o(tended)g(only)f(as)h(a)f(sanit)
o(y)g(c)o(hec)o(k)i(on)e(the)h(claim)e(that)i(this)365 2353
y(prop)q(osal)f(can)g(b)q(e)g(la)o(y)o(ered)g(on)f(MPI.)h(Impro)o(v)o(emen)o
(ts)e(to)h(impro)o(v)o(e)f(e\016ciency)j(or)365 2403 y(to)c(use)h(few)o(er)f
(con)o(texts)h(will)e(b)q(e)h(greatly)g(appreciated.)967 2574
y(5)p eop
%%Page: 6 7
6 6 bop 365 307 a Fc(In)16 b(addition)f(to)h(a)f(default)h(group)f(con)o
(text,)i(eac)o(h)f(group)g(descriptor)h(con)o(tains)f(a)365
357 y(\\group)f(partitioning)g(con)o(text")h(and)f(a)g(\\group)h(disbanding)e
(con)o(text")j(that)e(are)365 407 y(obtained)h(and)g(broadcast)h(at)f(the)h
(time)d(the)j(group)f(is)g(created.)26 b(In)16 b(the)h(case)g(of)365
457 y(the)f(INITIAL)g(group,)f(this)h(is)f(done)h(using)g(paired-exact-matc)o
(h)e(co)q(de)j(and)e(an)o(y)365 506 y(con)o(text,)g(immediately)d(after)j
(initialization)c(of)k(the)g(MPI)g(pt-pt)g(lev)o(el.)20 b(\(A)o(t)15
b(that)365 556 y(time,)c(no)g(application)f(co)q(de)i(will)e(ha)o(v)o(e)i
(had)f(a)g(c)o(hance)i(to)e(issue)i(wildcard)e(receiv)o(es)365
606 y(to)j(mess)g(things)f(up.\))365 672 y(Group)g(partitioning)e(is)i
(accomplished)f(using)h(pt-pt)g(messages)g(in)f(the)i(partition-)365
722 y(ing)k(con)o(text)h(of)f(the)i(curren)o(t)g(group)e(\(i.e.,)g(the)i(one)
e(b)q(eing)h(partitioned\),)g(with)365 772 y(message)d(tag)h(equal)f(to)g
(the)h(group)f(tag)g(pro)o(vided)h(b)o(y)f(the)h(application.)25
b(In)16 b(the)365 822 y(w)o(orst)g(\(least)g(scalable\))g(case,)g(the)h(ro)q
(ot)e(of)g(the)i(new)f(group)f(m)o(ust)g(wildcard)g(the)365
872 y(source)22 b(TID.)d(\(This)h(violates)f(the)h(paired-exact-matc)o(h)g
(constrain)o(t,)h(whic)o(h)f(is)365 922 y(wh)o(y)14 b(group)g(formation)d(m)o
(ust)i(happ)q(en)h(in)g(a)f(sp)q(ecial)h(con)o(text.\))365
988 y(Group)k(disbanding)e(is)i(done)g(with)f(pt-pt)h(messages)g(in)f(the)h
(group)f(disbanding)365 1038 y(con)o(text.)25 b(This)15 b(k)o(eeps)i(group)f
(con)o(trol)f(from)f(b)q(eing)i(messed)g(up)f(no)h(matter)f(ho)o(w)365
1088 y(the)g(application)d(uses)j(wildcards.)262 1225 y Fe(1.6)64
b(Examples)262 1316 y Fa(\(T)l(o)15 b(b)q(e)h(pro)o(vided\))967
2574 y Fc(6)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF
----------------------------------------------------------------------

         /--------------------------------------------------------\
    e||) | Lyndon J Clarke    Edinburgh Parallel Computing Centre | e||) 
    c||c | Tel: 031 650 5021  Email: [email-masked]  | c||c 
         \--------------------------------------------------------/