%! /TeXDict 200 dict def TeXDict begin /Mtrx matrix def /@start { /StartTime usertime def vmstatus pop /@VMused exch def pop 72 720 translate } def /@letter { /letter where { pop letter 72 720 translate } if } def /@legal { /legal where { pop legal 72 936 translate } if } def /@note { /note where { pop note 72 720 translate } if } def /@a4 { /a4 where { pop a4 72 765 translate } if } def %*** modified to place NW corner into SW corner ************ %/@landscape { [ 0 1 -1 0 0 0 ] concat 72 -72 translate } def /@landscape { [ 0 1 -1 0 0 0 ] concat -648 0 translate } def %*********************************************************** /@manualfeed { /manualfeed where { /manualfeed true put } if } def /@duplex { /setduplexmode where { /setduplexmode true put } if } def /@copies { /#copies exch def } def /@startdoc { dup 72 exch div dup neg scale 0 0 transform round exch round exch itransform translate Mtrx currentmatrix pop currentdict /isoddpage known { /SecondMtrx matrix def 8.5 exch mul 0 translate SecondMtrx currentmatrix pop }{ pop } ifelse /@TeXSave save def } def /@restore /restore load def /restore { vmstatus pop dup @VMused lt {pop @VMused} if exch pop exch @restore /@VMused exch def } bind def /@pri { ( ) print ( ) cvs print }def /@newfont { /newname exch def newname 7 dict def newname load begin /FontType 3 def dup neg matrix scale /FontMatrix exch def /FontBBox [0 0 1 1] def /BitMaps 256 array def /BuildChar {CharBuilder} def /Encoding 256 array def 0 1 255 {Encoding exch /.undef put} for end newname newname load definefont pop } bind def /ch-image {ch-data 0 get} bind def /ch-width {ch-data 1 get} bind def /ch-height {ch-data 2 get} bind def /ch-xoff {ch-data 3 get} bind def /ch-yoff {ch-data 4 get} bind def /ch-tfmw {ch-data 5 get} bind def /CharBuilder { exch /BitMaps get exch get /ch-data exch def ch-data null ne { ch-tfmw 0 ch-xoff neg ch-yoff neg ch-width ch-xoff sub ch-height ch-yoff sub setcachedevice ch-width ch-height true [1 0 0 1 ch-xoff ch-yoff] {ch-image} imagemask } if } bind def /@dc{ /ch-code exch def dup 0 get length 2 lt { pop [ <00> 1 1 0 0 8.00 ] } if /ch-data exch def currentfont /BitMaps get ch-code ch-data put currentfont /Encoding get ch-code dup ( ) cvs cvn put } bind def /@pc { pop /ch-data exch def currentpoint translate ch-width ch-height true [1 0 0 -1 ch-xoff ch-yoff ] {ch-image} imagemask } bind def /@sf { setfont } def /@flushfonts { @TeXSave restore /@TeXSave save def} def /@bop0 { pop } bind def /@bop1 { pop Mtrx setmatrix /SaveImage save def } def /@eop { showpage SaveImage restore } def /p { moveto } bind def /r { 0 rmoveto } bind def /s { show pop } bind def /ks { 2 1 counttomark 2 sub { -1 roll } for counttomark 2 idiv { show 0 rmoveto } repeat show pop } bind def /m { mark } bind def /ru { /dy exch 1 sub neg def /dx exch 1 sub def gsave currentpoint newpath moveto dx 0 rlineto 0 dy rlineto dx neg 0 rlineto closepath fill grestore } bind def /@end { (Time used: ) print usertime StartTime sub @pri (VM used: ) print @VMused @pri (. Unused: ) print vmstatus @VMused sub @pri pop pop (\n) print flush end } def /DraftFirst { gsave initmatrix newpath /Helvetica-Bold findfont setfont (Draft) dup stringwidth pop 8.875 exch div dup 72 mul dup scale 52.3 rotate 2.5 exch div -.35 translate 0.95 setgray 0 0 moveto show grestore } bind def /DraftMore { gsave initmatrix newpath /Helvetica-Bold findfont 72 scalefont setfont 0.95 setgray 576 702 moveto (Draft) stringwidth exch neg exch neg rmoveto (Draft) show grestore } bind def /@draft { /@bop1 { 1 le {DraftFirst} {DraftMore} ifelse Mtrx setmatrix /SaveImage save def } bind def } bind def /@twoup { initmatrix [ 0 1 -1 0 0 0 ] concat 36 -87 translate 5.5 8.5 div dup scale /isoddpage true def /@eop { isoddpage not {showpage} if SaveImage restore /isoddpage isoddpage not def } def /@bop1 { pop isoddpage { SecondMtrx setmatrix } { Mtrx setmatrix } ifelse /SaveImage save def } def /@end { isoddpage not { showpage } if end } def } def /@beginspecial { SpecialDict begin gsave /SpecialSave save def currentpoint transform initgraphics itransform translate 0 0 moveto SpecialDefaults IfMacSetUp } def /@setspecial { hof vof translate setclipper hsc vsc scale angl rotate } def /@endspecial { SpecialSave restore grestore end } def /@beginfullpage { gsave /SpecialSave save def SpecialDict begin /showpage {} def initgraphics } def /@endfullpage { clear end SpecialSave restore grestore showpage } def /SpecialDict 50 dict def SpecialDict begin /Inch { 72 mul} bind def /SpecialDefaults { /hsi 8.5 Inch def /vsi 11 Inch def /hof 0 def /vof 0 def /hsc 1 def /vsc 1 def /angl 0 def /CLIP false def } def /@hsize {/hsi exch def /CLIP true def} def /@vsize {/vsi exch def /CLIP true def} def /@hoffset {/hof exch def} def /@voffset {/vof exch def} def /@hscale {/hsc exch def} def /@vscale {/vsc exch def} def /@rotate {/angl exch def} def /setclipper { CLIP { newpath 0 0 moveto hsi 0 rlineto 0 vsi rlineto hsi neg 0 rlineto closepath clip } if } def end /IfMacSetUp { userdict /md known { userdict /md get type /dicttype eq { md begin /txpose{ 1 -1 scale } bind def /cp {pop pop} bind def end } if } if } def end /TeXDict where {/TeXDict get begin} { (Need to load basic TeXDict first\n) print currentfile flushfile} ifelse /@texmakefont { /TeXsize exch def [ TeXsize 0 0 TeXsize neg 0 0 ] makefont def } bind def /@ps2texfont { dup FontDirectory exch known { exch pop findfont } { ReEncodeForTeX } ifelse exch @texmakefont } bind def /ReEncodeForTeX { /newfontname exch def /basefontname exch def /TeXstr 30 string def /basefontdict basefontname findfont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall basefontdict /MathFontName known not { /TeXvec basefontname TeXstr cvs (Courier) search { pop pop pop TeXcourvec } { pop TeXnormalvec } ifelse def TeXvec aload pop TeXvec length 2 idiv { newfont /Encoding get 3 1 roll put } repeat } if newfontname newfont definefont } bind def /TeXnormalvec [ 8#014 /fi 8#015 /fl 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#042 /quotedblright 8#074 /exclamdown 8#076 /questiondown 8#134 /quotedblleft 8#136 /circumflex 8#137 /dotaccent 8#173 /endash 8#174 /emdash 8#175 /hungarumlat 8#176 /tilde 8#177 /dieresis ] def /TeXcourvec [ 8#016 /exclamdown 8#017 /questiondown 8#020 /dotlessi 8#022 /grave 8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE 8#036 /OE 8#037 /Oslash 8#074 /less 8#076 /greater 8#134 /backslash 8#136 /circumflex 8#137 /underscore 8#173 /braceleft 8#174 /bar 8#175 /braceright 8#177 /dieresis ] def /ObliqueFont { /ObliqueAngle exch def /ObliqueBaseName exch def /ObliqueFontName exch def /ObliqueTransform [1 0 ObliqueAngle sin ObliqueAngle cos div 1 0 0] def /basefontdict ObliqueBaseName findfont ObliqueTransform makefont def /newfont basefontdict maxlength dict def basefontdict { exch dup /FID ne { dup /Encoding eq { exch dup length array copy newfont 3 1 roll put } { exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall newfont /FontName ObliqueFontName put ObliqueFontName newfont definefont pop } bind def /SmallCapsFont { /SmallCapsBaseName exch def /SmallCapsFontName exch def /basefontdict SmallCapsBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName SmallCapsFontName def /FontBaseDict basefontdict 1000 scalefont def /FontSCDict FontBaseDict .8 scalefont def /FontType 3 def /BuildChar {SmallCapChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def /Encoding dup basefontdict exch get def end SmallCapsFontName newfont definefont pop } bind def /SmallCapChar { /achar (A) def achar exch 0 exch put begin achar 0 get dup 97 ge exch 122 le and { achar 0 achar 0 get 32 sub put FontSCDict } { FontBaseDict } ifelse setfont achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } bind def /MathEncodingVec [ /Gamma /Delta /Theta /Lambda /Xi /Pi /Sigma /Upsilon1 /Phi /Psi /Omega /alpha /beta /gamma /delta /epsilon /zeta /nu /theta /iota /kappa /lambda /mu /nu /xi /pi /rho /sigma /tau /upsilon /phi /chi /psi /omega /epsilon /theta1 /omega1 /rho /sigma /phi1 /arrowleft /arrowleft /arrowright /arrowright /suchthat /congruent /proportional /angle /zero /one /two /three /four /five /six /seven /eight /nine /period /comma /less /slash /greater /asteriskmath /partialdiff /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /registerserif /copyrightserif /trademarkserif /logicalor /logicaland /section /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /dotlessi /j /weierstrass /macron /breve ] def /MathCharVec [ 71 68 81 76 88 80 83 161 70 89 87 97 98 103 100 101 122 110 113 105 107 108 109 110 120 112 114 115 116 117 102 99 121 119 101 74 118 114 115 106 172 172 174 174 39 64 181 208 48 49 50 51 52 53 54 55 56 57 46 44 60 47 62 42 182 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 210 211 212 218 217 167 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 245 106 195 197 198 ] def /MathDictVec [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 ] def /MathOblique { 3 copy ObliqueFont pop pop MathFont } bind def /MathFont { /MathSymName exch def /MathBaseName exch def /MathFontName exch def /basefontdict MathBaseName findfont def /newfont basefontdict maxlength 10 add dict def newfont begin /FontName MathFontName def /FontDictArray [ basefontdict 1000 scalefont MathSymName findfont 950 scalefont /Symbol findfont 950 scalefont ] def /FontType 3 def /BuildChar {MathFontChar} def /FontMatrix dup basefontdict exch get def /FontBBox dup basefontdict exch get def /Encoding dup basefontdict exch get dup length array copy def /WhichFont MathDictVec def /WhichChar MathCharVec def MathEncodingVec Encoding copy pop /achar (A) def end MathFontName newfont definefont pop } bind def /MathFontChar { exch begin achar exch 0 exch put FontDictArray WhichFont achar 0 get get get setfont achar dup 0 get WhichChar exch get 0 exch put achar stringwidth FontBBox setcachedevice newpath 0 0 moveto achar show end } bind def end /psf$TeXscale { 65536 div } def /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def /startTexFig { /psf$SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /psf$ury exch psf$TeXscale def /psf$urx exch psf$TeXscale def /psf$lly exch psf$TeXscale def /psf$llx exch psf$TeXscale def /psf$y exch psf$TeXscale def /psf$x exch psf$TeXscale def currentpoint /psf$cy exch def /psf$cx exch def /psf$sx psf$x psf$urx psf$llx sub div def /psf$sy psf$y psf$ury psf$lly sub div def psf$sx psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def /erasepage { initgraphics } def /copypage {} def } bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto } bind def /doclip { psf$llx psf$lly psf$urx psf$ury clipFig } def /endTexFig { end psf$SavedState restore } def %%Title: ptcover.dvi %%Creator: dvi2ps 3.1 %%EndProlog TeXDict begin @start 300 @startdoc 20 @bop0 1.000000 /cmr10.300 @newfont cmr10.300 @sf [ 11 2 0 -8 14] 45 @dc [ 16 28 -2 0 21] 50 @dc [<07E00C301818300C300C700E60066006E007E007E007E007E007E007E007E007E007E007E007E0 07E00760066006700E300C300C18180C3003C0> 16 29 -2 1 21] 48 @dc [ 7 41 -4 10 12] 91 @dc [ 13 28 -4 0 21] 49 @dc [<07E01830201C401CF00EF80FF80FF80F700F000F000F000E001C001C003007E000600030001800 1C001C381E781E780E781E201C201C183007E0> 16 29 -2 1 21] 51 @dc [ 7 41 0 10 12] 93 @dc [<83F800CC0C00D00200E00300C00180C001808001C08001C08001C00001C00003C00007C0000F80 00FF8007FF001FFE003FF8007FC0007C0000F80000F00000E00080E00080E00080E00180600180 7003803005801C198007E080> 18 30 -2 1 23] 83 @dc [<60F0F060> 4 4 -4 0 12] 46 @dc [<000007C0FFF01C200F003C200F0038100F0078100F0078100F0078000F0078000F0078000F0078 000F0078000F0078000F00F0000F00E0000F03C0000FFF00000F01E0000F0078000F003C000F00 1C000F001E000F001E000F001E000F001E000F001C000F003C000F0078000F01E000FFFF0000> 28 29 -2 1 31] 82 @dc [<03E00C181804300270026000E000E000E000E000FFFEE0066006700E300C18180C3003E0> 15 18 -1 0 18] 101 @dc [ 9 29 -1 0 12] 105 @dc [<07C7E00C3700180F00300700700700600700E00700E00700E00700E00700E00700E00700600700 700700300700180F000C170003E700000700000700000700000700000700000700000700000700 000700000700003F00> 19 29 -2 0 23] 100 @dc [ 9 29 -1 0 12] 108 @dc [ 24 28 -2 0 29] 66 @dc [ 13 18 -1 0 16] 114 @dc [<03F0000E1C00180600300300700380600180E001C0E001C0E001C0E001C0E001C0E001C0600180 7003803003001806000E1C0003F000> 18 18 -1 0 21] 111 @dc [<1F8700304E80603C40E01C40E01C40E01C40601C00701C00381C000F1C0001FC00001C00001C00 301C00781C007838003070001FC000> 18 18 -2 0 21] 97 @dc [<07C00C301808300470046000E000E000E000E000E000E00060007030307818780C3007E0> 14 18 -2 0 18] 99 @dc [<8FC0D060E010C018C0188018803800F80FF03FE07F80F800E010C010C010403030701F90> 13 18 -1 0 16] 115 @dc [<03C00E200C101C101C101C101C101C101C001C001C001C001C001C001C001C001C00FFE03C001C 000C000C000400040004000400> 12 26 -1 0 16] 116 @dc [ 20 18 -1 0 23] 110 @dc [<07F8001C0E00300300600180C000C0C000C0C000C06001C03003801FFF801FFF001FF800180000 30000010000013C0000C30001C3800181800381C00381C00381C00381C001818001C38800C38C0 03C4C0000380> 18 28 -1 9 21] 103 @dc [<3C0000660000F30000F10000F0800000800000800000400000400000E00000E00000E00001D000 01D00003D8000388000388000704000704000704000E02000E02001C01001C01003C0380FF07E0> 19 26 -1 8 22] 121 @dc [ 33 18 -1 0 36] 109 @dc [ 20 29 -1 0 23] 104 @dc [<03FFFC00001F8000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000800F 0020800F0020800F0020C00F0020400F0040400F0040600F00C0700F01C07FFFFFC0> 27 28 -1 0 30] 84 @dc [ 19 26 -1 8 23] 112 @dc [ 33 28 -2 0 38] 77 @dc [<07C018702038401C401E800EF00FF00FF00F600F000F000F000F000E200E301C2818243023E020 00200020002000200020003FC03FF03FF8300C> 16 29 -2 1 21] 53 @dc [<03E00C301818300C300E700660076007E007E007E007E007E007E006F00EF00CE818E430E3E060 0070007000300C301E181E0C0E0604030C00F0> 16 29 -2 1 21] 54 @dc [<804020201010101070F0F060> 4 12 -4 8 12] 44 @dc [<003F800000E0E0000380380007001C000E000E001C0007003C00078038000380780003C0780003 C0700001C0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E07000 01C0780003C0780003C0380003803C0007801C0007000E000E0007001C000380380000E0E00000 3F8000> 27 30 -2 1 32] 79 @dc [ 19 29 -1 0 22] 107 @dc [ 26 28 -2 0 31] 78 @dc [ 21 28 -2 0 26] 76 @dc [<10F8001906001E03001C01801C01C01C00C01C00E01C00E01C00E01C00E01C00E01C00E01C00C0 1C01C01C01801E03001D86001C7C001C00001C00001C00001C00001C00001C00001C00001C0000 1C00001C0000FC0000> 19 29 -1 0 23] 98 @dc [<0F8030C0203070107818780C300C000E0006000607C70C271817300F700F6007E007E007E007E0 07E007E006E006600E700C300C18180C3003C0> 16 29 -2 1 21] 57 @dc [<01FFC0001C00001C00001C00001C00001C00001C00001C00FFFFC0C01C00401C00201C00301C00 101C00081C000C1C00041C00021C00031C00011C00009C0000DC00005C00003C00003C00001C00 000C00000C00> 18 28 -1 0 21] 52 @dc [<001F800000E060800180118007000B800E0007801C0007801C0007803800078078000780780007 8070000780F0000F80F000FFF0F0000000F0000000F0000000F0000000F0000000F00000007000 00807800008078000080380001801C0001801C0003800E000380070007800180198000E0618000 1F8080> 28 30 -2 1 33] 71 @dc 1.000000 /cmti10.300 @newfont cmti10.300 @sf [ 21 28 -3 0 26] 76 @dc [<3C0072007200710071007100380038001C001C001C000E008E008E004700470026001C00000000 0000000000000000000000010003800180> 9 28 -4 0 13] 105 @dc [<300E00701900383880383840381C40381C401C1C001C0E001C0E001C0E000E07000E07008E0700 8E07004707004687002646003C3C00> 18 18 -4 0 23] 110 @dc [<1F0030C060206010E008E000E000E000E000E0007F8070607010381018080C10071001E0> 13 18 -5 0 19] 101 @dc [<3C38626461E4C0E2C0E2E0E2E070E070E070E0707038703830383838181C0C3C063C03CC> 15 18 -5 0 21] 97 @dc [<3000700038003800380038001C001C001C001C000E000E008E008E064707468726C23C3C> 16 18 -4 0 18] 114 @dc [ 26 29 -2 0 31] 65 @dc [<38006800E400E400E400E400700070007000700038003800380038001C001C001C001C000E000E 000E000E000700070007000700038003801F80> 9 29 -4 0 11] 108 @dc [<7E00C300E1C0C0C000E000E0007000700F7018F01878303830383838381C381C381C381C1C0E1C 0E0C0E0E0E0607030F018F00F3> 16 26 -3 8 19] 103 @dc [<3C0063006180C1C0C0C0E0E0E060E070E070E0707038703870387038383038303E6039C01C001C 001C001C000E000E000E000E00070007003F00> 13 29 -5 0 19] 98 @dc [<3C380062640061E400C0E200C0E200E0E200E07000E07000E07000E07000703800703800303800 383800181C000C3C00063C0003DC00000E00000E00000E00000E00000700000700000700000700 000380000380001F80> 17 29 -5 0 21] 100 @dc [ 18 28 -2 0 16] 73 @dc [<0E00190038803840384038401C001C001C001C000E000E000E000E00070007000700FFE0038003 800380038001C001C001C000C0> 11 26 -3 0 14] 116 @dc [<1F0060C08060C030E03060300038007807F00FF01FC01F001C0018180C1C0C08060801F0> 14 18 -3 0 17] 115 @dc [ 19 26 -1 8 21] 112 @dc [<1F0030C06020E010E008E000E000E000E000E0007000700030003838181C0C08070801F0> 14 18 -5 0 19] 99 @dc [<1E00318060C0E060E030E038E018E01CE01CE01C700E700E300E380C180C0C0C071801E0> 15 18 -5 0 21] 111 @dc cmr10.300 @sf [ 26 28 -2 0 31] 72 @dc [<03E3F00E1B800C07801C07801C03801C03801C03801C03801C03801C03801C03801C03801C0380 1C03801C03801C03801C0380FC1F80> 20 18 -1 0 23] 117 @dc [<1F0021C040E0F0F0F878F878F87870780078007800780078007800780078007800780078007800 78007800780078007800780078007800F81FFF> 16 29 -1 1 21] 74 @dc [<00400000E00000E00000E00001D00001D00003D8000388000388000704000704000704000E0200 0E02001C01001C01003C0380FF07E0> 19 18 -1 0 22] 118 @dc [ 12 28 -1 0 15] 73 @dc [ 27 28 -2 0 32] 68 @dc [<001FC00000E0300001800800070004000E0002001C0001001C0001003800008078000080780000 8070000080F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00000007000 00807800008078000080380001801C0001801C0003800E000380070007800180198000E0618000 1F8080> 25 30 -2 1 30] 67 @dc [ 28 29 -1 0 31] 65 @dc [<07E01C10300C60046002C003C003C003C003C007600F601E307E18FC07F807F01FE03FB03E0878 0C70066006600660062006200C10080C3003E0> 16 29 -2 1 21] 56 @dc [ 24 28 -2 0 28] 69 @dc 20 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (20) 14 (-) ks 210 105 p m ([13]) s 295 105 p m (S.) 12 (R.) 12 (Seidel.) 18 (Broadcasting) 13 (on) 12 (lineat) 12 (arra) 0 (ys) 12 (and) 12 (meshes.) 18 (T) -2 (ec) 0 (hnical) 10 (Rep) 1 (ort) 13 (TM-12356,) 11 (Oak) ks 295 175 p m (Ridge) 14 (National) 12 (Lab) 1 (oratory) -2 (,) 12 (Mathematical) 12 (Sciences) 15 (Section,) 14 (Marc) 0 (h) 13 (1993.) ks 210 278 p m ([14]) s 295 278 p m (G.) 17 (Strang.) ks cmti10.300 @sf 31 r m (Line) -1 (ar) 17 (A) 0 (lgebr) -2 (a) 17 (and) 20 (Its) 18 (Applic) -1 (ations) ks cmr10.300 @sf m (.) 29 (Harcourt) 19 (Brace) 19 (Jo) 0 (v) -1 (a) -1 (no) -1 (vic) -1 (h,) 17 (Inc.,) 18 (San) ks 295 348 p m (Diego,) 13 (CA,) 13 (1988.) 17 (Third) 14 (Edition.) ks @eop 19 @bop0 cmr10.300 @sf [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00E000E 000E000E000E000E000E0C061E071E018C00F8> 15 29 0 0 13] 102 @dc [ 21 18 0 0 22] 120 @dc [ 23 28 -2 0 28] 80 @dc cmti10.300 @sf [<83E000CC1800F004006002006003006001806001802000C02000C00000C00000C00001C00001C0 0007C0007F8001FF0003FC0003E000070000070000060000060010060010030018030018010018 00801800403C00304C000F84> 22 30 -3 1 23] 83 @dc [ 26 28 -3 0 28] 80 @dc [ 27 28 -3 0 28] 69 @dc [<060000000600000007000000070000000780000007C0000007400000072000000E2000000E1000 000E1800000E0800000E0400000E0400000E0200000E0200000E0100000E0080001E0080001C00 40001C0040001C0020001C0010001C0010001C0008001C0008001C0004001C000F00FF803FC0> 26 29 -9 1 31] 86 @dc [<60F07830> 5 4 -4 0 13] 46 @dc [<7C0000860000818000E0C000E0C000006000003000003800001800001C00079C000C6C00181E00 181E00380E00380F003807003807003807001C03001C03001C03800C03800E0300060300030300 01830000C600003C00> 17 29 -5 1 21] 57 @dc [<0C00000E00000E000007000007000007000003000003800003800001800001C00000C00000C000 006000006000006000003000001000001800800800800C00400400400600601A003027003C6100 1FE08017E08009C040> 18 29 -7 1 21] 55 @dc [<1F000021C000406000403000803800801800E01C00700C00700E00000E00000E00000600000700 000700080600040600060600058C0004780002000002000002000002000001000001000001FE00 01FF8000FFC000C060> 19 29 -4 1 21] 53 @dc [<804040201010080838783818> 5 12 -3 8 13] 44 @dc [<07800C4018201810380818081C081C041C041C040E020E02870287024706470E270E1E06> 15 18 -4 0 19] 118 @dc [<601C00E03200707100707080703880703880383800381C00381C00381C001C0E001C0E001C0E00 1C0E000E0E000F0E000E8C000E7800070000070000070000070000038000038000038000038000 01C00001C0000FC000> 17 29 -3 0 21] 104 @dc [<300C01C0701C0320380E0710380E0708380E0388380E03881C0703801C0701C01C0701C01C0701 C00E0380E00E0380E08E0380E08E0380E04703C0E04683A0E0266318C03C1E0780> 29 18 -4 0 34] 109 @dc [ 10 3 -3 -7 15] 45 @dc [<078E001C59001839001838803838803838801C1C001C1C001C1C001C1C000E0E000E0E00870E00 870E004707004707002707001E0300> 17 18 -4 0 22] 117 @dc [<780000CC0000E60000C6000007000003000003000003800003800003800001C00001C00001C000 01C00001C00000E00000E00000E00000E00000E00000700000700000700000700000700003FF80 003800003800003800003800003800001C00001C00001C60000C700006700003C0> 20 37 1 8 13] 102 @dc cmr10.300 @sf [<030000078000078000078000078000078000078000038000038000038000038000018000018000 01C00000C00000C0000040000060000020000010000010008008008004008004004002007FFF00 7FFF007FFF80400000> 17 29 -2 1 21] 55 @dc [ 20 1 0 -11 21] 123 @dc [<008020000180300001C0700001C0700003C0680003A0E80003A0E8000720C4000711C4000711C4 000E1182000E0B82000E0B82001C0B01001C0701001C0701803C0F0380FF3FCFE0> 27 18 -1 0 30] 119 @dc cmti10.300 @sf [ 15 28 -4 0 21] 49 @dc [<80E00083F800C7F8007E0C0040060020020010020010010008000006000001000000C000003000 001800000C000E06001107001083801083800841C00841C00841C00441C00441C00201C0020180 01018000C300003C00> 18 29 -4 1 21] 50 @dc [ 31 28 -3 0 31] 72 @dc [<01F80000070600000C01800018004000380020007000100070000800F0000800F0000400F00004 00F0000400F0000000F0000000F0000000F00000007800000078000000780000003C0000003C00 00801C0000801E0000800E000080070000C0038001C001C001C000E003C0003002E0001E0C6000 03F020> 27 30 -6 1 30] 67 @dc cmr10.300 @sf [ 14 18 -1 0 18] 122 @dc [<001800180000180018000018001800003C003C00003C003C00003C003C00003E007C00007A007A 00007A007A00007900FA0000F100F10000F100F10000F100F10001E081E08001E081E08001E081 E08003E043C04003C043C04003C043C04003C02780400780278020078027802007801F00200F00 1F00100F001F00100F001F00101E001E00181F001F003CFFE0FFE0FF> 40 29 -1 1 43] 87 @dc [ 28 28 -2 0 32] 75 @dc [<60F0F0600000000000000000000060F0F060> 4 18 -4 0 12] 58 @dc cmti10.300 @sf [ 26 28 -3 0 27] 70 @dc [<3C0047008180E1C0E0C000E00070007007F01C7018381838383838381C1C1C1C1C1C1C1C0E0E0E 0E870E870E4707470727071E03> 16 26 -4 8 20] 121 @dc [ 37 28 -3 0 37] 77 @dc [<0800080010003000200060006000600060006000E000E000E000E000E000600060006000600070 007000300030003800180018001C000C000C000600060003000300018000C000C0006000300018 000800060003> 16 42 -5 11 17] 40 @dc [ 16 42 0 11 17] 41 @dc [<7FFE000003C0000001C0000001C0000001C0000001C0000000E0000000E0000000E0000000E000 000070000000700000007000000070000000380000003800000038000000380000001C0000801C 0080801C0080401C0080400E0080600E0080200E0080300E00C01C0701C01FFFFFC0> 26 28 -7 0 30] 84 @dc [<700000CC0000E40000C600000600000700000300000380000380380380640380E401C0E201C0E2 01C0E201C07001C07001C07000E07000E03800E03800E03800E03800701C00701C00701C07FFFC 007000003800003800003800003800001800001C03001C07000C030007030001FC> 24 37 1 8 23] 12 @dc [<1000600000180060000018007000001C007000001C007800001E007800001E007400001D007400 001D807200001C807200001C407100001C407180001C207080001C207040001C107040001C1070 20001C087020001C087010001C047010001C047008003802700800380270040038017004003801 7002003800F002003800F0010038007001803C007001C0FF83FF0FF0> 36 29 -9 1 41] 87 @dc [<603800E0640070E40070E20070E20070E20038E00038E00039C0003F80001E00001D00001C8000 1C83000E43800E23800E11000E0F00070000070000070000070000038000038000038000038000 01C00001C0000FC000> 17 29 -3 0 19] 107 @dc cmr10.300 @sf [<001F00000070C00000C02000018010000380100007800800070008000F0004000F0004000F0004 000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F00 04000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F000E00FFF07FC0> 26 29 -2 1 31] 85 @dc [<3E006180F1C0F0C060E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E000E000E000E000E00FE0000000000000000000000000000000C001E001E000C0> 11 37 3 8 13] 106 @dc [<000600000006000000060000000F0000000F0000001F8000001E8000001E8000003C4000003C40 00003C4000007820000078200000F8300000F0100000F0100001F0080001E0080001E0080003C0 040003C0040003C0040007800200078002000F8003000F0001000F0001801F0003C0FFE00FF0> 28 29 -1 1 31] 86 @dc cmti10.300 @sf [<70F0008B0800CB0400E7040067020007020003800003800003800003800001C00001C00041C000 41C30020E38010E380199100070E00> 17 18 -3 0 19] 120 @dc [ 28 28 -3 0 31] 68 @dc [<00001E00FFE079000F0078800700F0800700F0400700F0400700F0000380700003807000038070 000380700001C0700001C0700001C0600001C0C00000FFC00000E0700000E01C0000E00E000070 0F0000700780007007800070078000380380003803800038038000380700003C0E0001FFF800> 26 29 -3 1 30] 82 @dc cmr10.300 @sf [<7F87F80E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C0FFFFC00E00000E00000E00000E00000E00000E01800E03C00703C0 03018001C180007E00> 21 29 0 0 23] 12 @dc cmti10.300 @sf [<3C000047000083800081C000C0C000E0E00060E000007000007000007000007000003800003800 003800003800001C00001C00001C00001C00000E00000E00000E00000E00000700000700000700 000700000780007FF0> 20 29 -5 1 22] 74 @dc [<00600000E000007000007000007000007000003800003800803F0040F8003F1C00181C000C1C00 061C00020E00010E00018E0000C600004000006000003000003000001800001800001C00000C00 000E000006000007000007000003000003800003800003800001C0000180> 18 36 -2 8 21] 52 @dc cmr10.300 @sf [ 22 28 -2 0 27] 70 @dc [<804020101008080868F8F060> 5 12 -4 -17 12] 39 @dc 19 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (19) 14 (-) ks 295 105 p m (for) 16 (matrix) 14 (transp) 1 (osition) 16 (on) 16 (MCAP.) 25 (In) ks cmti10.300 @sf 16 r m (SPIE) 18 (V) -2 (ol.) 15 (975,) 18 (A) -1 (dvanc) -1 (e) -2 (d) 15 (A) 0 (lgorithms) 15 (and) 18 (A) 0 (r) -2 (chi-) ks 295 175 p m (te) -1 (ctur) -1 (e) 13 (for) 14 (Signal) 15 (Pr) -1 (o) -1 (c) -2 (essi) -1 (ng) 14 (III) ks cmr10.300 @sf m (,) 13 (pages) 14 (277{288,) 12 (1988.) ks 231 278 p m ([2]) s 295 278 p m (S.) 20 (H.) 19 (Bokhari) 19 (and) 20 (H.) 19 (Berryman.) 35 (Complete) 18 (exc) 0 (hange) 20 (on) 19 (a) 20 (circuit) 20 (switc) 0 (hed) 19 (mesh.) 35 (In) ks cmti10.300 @sf 295 348 p m (Pr) -1 (o) -1 (c) -2 (e) -2 (e) -2 (dings) 18 (of) 20 (the) 19 (1992) 21 (Sc) -1 (alable) 19 (High) 19 (Performanc) -1 (e) 19 (Computing) 20 (Confer) -1 (enc) -2 (e) ks cmr10.300 @sf m (,) 18 (pages) 20 (300{) ks 295 417 p m (306.) 13 (IEEE) 15 (Press,) 15 (1992.) ks 231 520 p m ([3]) s 295 520 p m (J.) 19 (Choi,) 19 (J.) 19 (J.) 18 (Dongarra,) 19 (R.) 18 (P) 0 (ozo,) 19 (and) 19 (D.) 18 (W.) 18 (W) -2 (al) -1 (k) -1 (er.) 32 (ScaLAP) -2 (A) 0 (CK:) 17 (A) 19 (scalable) 18 (linear) ks 295 590 p m (algebra) 17 (library) 16 (for) 17 (distributed) 18 (memo) -1 (ry) 16 (concurren) 0 (t) 17 (computers.) 28 (In) ks cmti10.300 @sf 17 r m (Pr) -1 (o) -1 (c) -2 (e) -2 (e) -2 (dings) 16 (of) 18 (Fourth) ks 295 660 p m (Symp) -1 (osium) 13 (on) 13 (the) 13 (Fr) -1 (ontiers) 10 (of) 13 (Massively) 13 (Par) -1 (al) 2 (lel) 10 (Computation) 14 (\(McL) -1 (e) -1 (an,) 11 (Vir) -1 (ginia\)) ks cmr10.300 @sf m (.) 9 (IEEE) ks 295 729 p m (Computer) 13 (So) 1 (ciet) 0 (y) 14 (Press,) 15 (Los) 14 (Alami) -1 (tos,) 12 (California,) 11 (Octob) 1 (er) 15 (19-21) 13 (1992.) ks 231 832 p m ([4]) s 295 832 p m (J.) 20 (Choi,) 19 (J.) 20 (J.) 19 (Dongarra,) 20 (and) 19 (D.) 19 (W.) 18 (W) -2 (alk) -2 (er.) 34 (The) 20 (design) 19 (of) 19 (scalable) 20 (soft) 0 (w) -1 (are) 18 (libraries) ks 295 902 p m (for) 15 (distributed) 16 (memo) -1 (ry) 14 (concurren) 0 (t) 16 (computers.) 22 (In) ks cmti10.300 @sf 15 r m (Pr) -1 (o) -1 (c) -2 (e) -2 (e) -2 (di) -1 (ngs) 15 (of) 16 (Envir) -1 (onment) 16 (and) 16 (To) -1 (ols) ks 295 972 p m (for) 17 (Par) -1 (al) 2 (lel) 16 (Scienti\014c) 17 (Computing) 18 (Workshop,) 19 (\(Saint) 18 (Hilair) -2 (e) 16 (du) 17 (T) -2 (ouvet,) 17 (F) -2 (r) -2 (anc) -1 (e\)) ks cmr10.300 @sf m (.) 14 (Elsevier) ks 295 1042 p m (Science) 16 (Publishers,) 14 (Septem) 0 (b) 1 (er) 13 (7-8) 13 (1992.) ks 231 1145 p m ([5]) s 295 1145 p m (J.) 18 (Choi,) 18 (J.) 17 (J.) 18 (Dongarra,) 18 (and) 17 (D.) 17 (W.) 17 (W) -2 (alk) -1 (er.) 28 (PUMMA) 18 (:) 18 (P) 0 (arallel) 16 (univ) 0 (ersal) 16 (matrix) 16 (m) 0 (ul) -1 (-) ks 295 1214 p m (tiplication) 18 (algorithms) 17 (on) 20 (distributed) 20 (mem) -1 (ory) 18 (concurren) 0 (t) 20 (computers.) 35 (T) -2 (ec) 0 (hni) -1 (cal) 18 (Rep) 1 (ort) ks 295 1284 p m (TM-12252,) 12 (Oak) 14 (Ridge) 13 (National) 13 (Lab) 1 (oratory) -2 (,) 11 (Mathematical) 13 (Sciences) 15 (Section,) 14 (April) 13 (1993.) ks 231 1387 p m ([6]) s 295 1387 p m (J.) 12 (J.) 12 (Dongarra,) 11 (R.) 11 (v) -1 (an) 10 (de) 12 (Geijn,) 11 (and) 12 (D.) 11 (W) -2 (alk) -1 (er.) 15 (A) 12 (lo) 1 (ok) 11 (at) 12 (scalable) 12 (linear) 11 (algebra) 12 (libraries.) ks 295 1457 p m (In) s cmti10.300 @sf 14 r m (Pr) -1 (o) -1 (c) -2 (e) -2 (e) -2 (dings) 13 (of) 14 (the) 15 (1992) 16 (Sc) -1 (alable) 14 (High) 14 (Performanc) -1 (e) 14 (Computing) 15 (Confer) -1 (enc) -1 (e) ks cmr10.300 @sf m (,) 11 (pages) 14 (372{) ks 295 1526 p m (379.) 13 (IEEE) 15 (Press,) 15 (1992.) ks 231 1629 p m ([7]) s 295 1629 p m (J.) 16 (O.) 15 (Eklundh.) 24 (A) 15 (fast) 16 (computer) 15 (metho) 1 (d) 15 (for) 16 (matrix) 13 (transp) 1 (osing.) ks cmti10.300 @sf 24 r m (IEEE) 17 (Tr) -1 (ansactions) 15 (on) ks 295 1699 p m (Computers) s cmr10.300 @sf m (,) 13 (21:801{803,) 11 (1972.) ks 231 1802 p m ([8]) s 295 1802 p m (G.) 14 (H.) 15 (Golub) 14 (and) 14 (C.) 15 (V.) 14 (V) -2 (an) 14 (Loan.) ks cmti10.300 @sf 20 r m (Matrix) 16 (Computations) ks cmr10.300 @sf m (.) 21 (The) 16 (Johns) 15 (Hopkins) 15 (Univ) 0 (ersit) 0 (y) ks 295 1872 p m (Press,) 15 (Baltimore,) 12 (MD,) 13 (1989.) 17 (Second) 15 (Edition.) ks 231 1975 p m ([9]) s 295 1975 p m (In) 0 (tel) 13 (Corp) 1 (oration.) ks cmti10.300 @sf 18 r m (T) -2 (ouchstone) 14 (Delta) 15 (F) -2 (ortr) -2 (an) 13 (Cal) 2 (ls) 14 (R) -1 (efer) -1 (enc) -2 (e) 13 (Manual) ks cmr10.300 @sf m (,) 14 (April) 14 (1991.) ks 210 2078 p m ([10]) s 295 2078 p m (S.) 19 (L.) 19 (Johnsson) 20 (and) 19 (C.-T.) 18 (Ho.) 33 (Algorithms) 18 (for) 19 (matrix) 17 (transp) 1 (osition) 19 (on) 19 (b) 1 (o) 1 (olean) 19 (n-cub) 1 (e) ks 295 2147 p m (con\014gured) 15 (ensem) 0 (ble) 13 (arc) 0 (hitecture.) ks cmti10.300 @sf 19 r m (SIAM) 15 (J.) 14 (Matrix) 15 (Anal.) 14 (Appl) ks cmr10.300 @sf m (,) 14 (9:419{45) -1 (4,) 12 (July) 13 (1988.) ks 210 2250 p m ([11]) s 295 2250 p m (R.) 17 (Little\014eld.) 29 (Characterizing) 18 (and) 17 (tuning) 17 (comm) -1 (uni) -1 (cations) 16 (p) 1 (erformance) 17 (for) 17 (real) 18 (applica-) ks 295 2320 p m (tions.) 30 (In) ks cmti10.300 @sf 18 r m (Pr) -1 (o) -2 (c) -2 (e) -2 (e) -2 (dings,) 18 (First) 17 (Intel) 18 (Delta) 19 (Applic) -1 (ation) 17 (Workshop,) 20 (CCSF-14-92,) 20 (Pasadena,) ks 295 2390 p m (California) s cmr10.300 @sf m (,) 13 (pages) 14 (179{190,) 12 (F) -2 (ebruary) 13 (1992.) 17 (presen) 0 (tation) 13 (o) 0 (v) 0 (erheads.) ks 210 2493 p m ([12]) s 295 2493 p m (D.) 15 (P) -2 (.) 14 (O'Leary) -2 (.) 21 (Systolic) 16 (arra) 0 (ys) 14 (for) 16 (matrix) 13 (transp) 1 (ose) 17 (and) 16 (other) 16 (reorderings.) ks cmti10.300 @sf 24 r m (IEEE) 17 (T) -2 (r) -2 (ans-) ks 295 2562 p m (actions) 16 (on) 15 (Computers) ks cmr10.300 @sf m (,) 13 (36:117{122) -1 (,) 12 (Jan) 0 (uary) 13 (1987.) ks @eop 18 @bop0 1.000000 /cmbx10.300 @newfont cmbx10.300 @sf [ 31 28 -2 0 36] 65 @dc 1.000000 /cmmi7.300 @newfont cmmi7.300 @sf [<3FF80003800001C00001C00001C00001C00000E00000E00000E00000E000007000007000007000 807010403810403808203808203818381C181FFFF8> 21 20 0 0 20] 84 @dc 1.000000 /cmsy10.300 @newfont cmsy10.300 @sf [<60F0F060> 4 4 -4 -8 12] 1 @dc cmbx10.300 @sf [ 28 28 -2 0 34] 66 @dc cmr10.300 @sf [<040003C00C00062006000C1003001C08030018080180380400C0380400C0380400603804006038 04003038040018380400181808000C1C0800060C10000606200F0303C018818000304180007020 C00060206000E0106000E0103000E0101800E0101800E0100C00E0100C00E01006006027FB0070 38070030600380188000C00F0000C0> 30 33 -2 2 35] 37 @dc [<7FC7FCFF800E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C 000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E0 1C000E00E01C00FFFFFFFC000E00E000000E00E000000E00E000000E00E000000E00E000000E00 E018000E01E03C000701F03C000380F0180001C09C1800003F07E000> 33 29 0 0 35] 14 @dc 1.000000 /cmmi10.300 @newfont cmmi10.300 @sf [ 28 28 -2 0 27] 80 @dc cmr10.300 @sf [<7FFFFFC0FFFFFFE000000000000000000000000000000000000000000000000000000000000000 00FFFFFFE07FFFFFC0> 27 12 -2 -4 32] 61 @dc cmmi10.300 @sf [<0001E0000001F8000003F8000003FC0000038E00000302000003030001FF0100078781001C83C0 00388270003882380070421C00703C0E00F0000F00F0000780F0000380F00003C0F00003C0F000 01E0F00001E0F00001E0780000F0780000F0780000F03C0000F03C0000F01C0000F01E0000F00F 0000F0070000E0038000E001C001C000E001C000380380000E0E000003F800> 28 37 -2 8 33] 81 @dc cmsy10.300 @sf [<400000C000006000006000003000003000003000001800001800000C00000C0000060000060000 03000003000003000001800001800000C00000C000006000006000003000003000001800001800 001800000C00000C000006000006000003000003000001800001800001800000C00000C0000060 000060> 19 40 -6 10 0] 54 @dc 1.000000 /cmbx12.300 @newfont cmbx12.300 @sf [<03F8000FFF001C1F803007C07007E0FC03F0FC03F0FE03F8FE03F87C03F83803F80003F80003F8 0003F00003F01803E01807E01E0FC01FFF0019FC001800001800001800001800001BC0001FF800 1FFE001FFF001FFF801FFFC01E01E0100020> 21 32 -3 0 28] 53 @dc [<387CFEFEFE7C38> 7 7 -4 0 16] 46 @dc [<0003FE0000001FFFC00000FF00F00001F800380003F0000C0007C00006000F800003001F800003 003F000003803F000001807F000001807E000001807E00000000FE00000000FE00000000FE0000 0000FE00000000FE00000000FE00000000FE00000000FE000000007E000001807E000001807F00 0001803F000003803F000003801F800007800F8000078007C0000F8003E0001F8001F8003F8000 FF01E380001FFF81800003FE0080> 33 34 -3 0 40] 67 @dc [<00FE0007FFC00F83E01F01F03E00F87C007C7C007CFC007EFC007EFC007EFC007EFC007EFC007E FC007E7C007C7C007C7C007C3E00F81E00F00F83E007FFC000FE00> 23 22 -2 0 28] 111 @dc [ 26 22 -2 0 31] 110 @dc [<00FE0007FF800FC0E01F00603E00307E00007E00007C0000FC0000FC0000FC0000FC0000FC0000 FC00007C00007C01E07E03F03E03F01F03F00F83F007FFE000FF80> 20 22 -2 0 25] 99 @dc [ 11 35 -2 0 16] 108 @dc [<01FC3FC007FF3FC00F81BE001F00FE001F007E001F003E001F003E001F003E001F003E001F003E 001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F00 3E00FF01FE00FF01FE00> 26 22 -2 0 31] 117 @dc [ 17 22 -2 0 22] 115 @dc [ 11 36 -2 0 16] 105 @dc [<07E03F1FF87F7E0CF87E02F0FC01F0FC01F0FC01F0FC01F07E01F03F01F01FC1F003FDF0003FF0 0001F00001F01E01F03F01F03F01E03F03E03F07C01FFF8007FC00> 24 22 -2 0 27] 97 @dc [<01FC3FC007FF3FC00F83BE001E00FE003E007E007C003E007C003E00FC003E00FC003E00FC003E 00FC003E00FC003E00FC003E00FC003E00FC003E007C003E007E003E003E003E001F007E000F81 FE0007FFBE0001FC3E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000 003E0000003E0000003E0000003E000001FE000001FE00> 26 35 -2 0 31] 100 @dc [ 39 34 -2 0 42] 82 @dc [<00FF0003FFC00FC0701F00303E00187E00007C00007C0000FC0000FC0000FC0000FFFFF8FFFFF8 FC00F8FC00F87C00F87C00F03E01F01E01E00F87C007FF8000FE00> 21 22 -2 0 26] 101 @dc [ 43 22 -2 0 48] 109 @dc [ 19 22 -2 0 23] 114 @dc [ 26 35 -2 0 30] 107 @dc cmr10.300 @sf [<004000800100020006000C000C0018001800300030007000600060006000E000E000E000E000E0 00E000E000E000E000E000E000E000600060006000700030003000180018000C000C0006000200 010000800040> 10 42 -3 11 16] 40 @dc [<800040002000100018000C000C000600060003000300038001800180018001C001C001C001C001 C001C001C001C001C001C001C001C0018001800180038003000300060006000C000C0018001000 200040008000> 10 42 -2 11 16] 41 @dc cmmi10.300 @sf [<00FE0000070184000E0064001C001E0038000E0030000E0070000E0070000700F0000700F00007 00F0000700F0000780F0007FF0F0000000F00000007800000078000000780000003C0000003C00 00201C0000200E0000200F000020070000300380007001C00070006000F000380138000E061800 01F808> 29 30 -2 1 33] 71 @dc [<00FE0000070180000E0060001C00100038000800300004007000020070000200F0000100F00001 00F0000100F0000000F0000000F0000000F00000007800000078000000780000003C0000003C00 00201C0000200E0000200F000020070000300380007001C00070006000F000380138000E061800 01F808> 29 30 -2 1 30] 67 @dc [ 31 28 -2 0 34] 68 @dc [ 25 24 -3 2 32] 62 @dc cmr10.300 @sf [<7F87FC000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0 000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C000FFFFFC000E01C0000E01 C0000E01C0000E01C0000E01C0000E01C0000E03C1800703C3C00303E3C001C1B180007E1F00> 26 29 0 0 24] 11 @dc cmmi10.300 @sf [ 23 28 -2 0 28] 76 @dc [ 40 28 -2 0 40] 77 @dc [ 16 41 -2 10 21] 61 @dc cmr10.300 @sf [<003FE000070000070000070000070000070000070000070007C7000C3700180F00300F00700700 600700E00700E00700E00700E00700E00700E00700700700700700300F00180B000C330003C100> 19 26 -2 8 22] 113 @dc cmbx10.300 @sf [<001FE00000FFFC0003F80E0007C003000F8001801F0000C03E0000C03E0000607E0000607C0000 60FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC0000007C0000607E00 00603E0000603E0000E01F0000E00F8001E007C003E003F80FE000FFF8E0001FE020> 27 28 -3 0 34] 67 @dc cmr10.300 @sf [<30307878F8F8B0B080808080808040404040202010100808> 13 12 -6 -17 21] 92 @dc 1.000000 /cmtt10.300 @newfont cmtt10.300 @sf [ 15 18 -3 0 22] 115 @dc [<03F00FFC1FFE3C0F78077007E000E000FFFFFFFFFFFFE0077007780E3C1E1FFC0FF803E0> 16 18 -3 0 22] 101 @dc [<7FC7F0FFE7F87FC7F00E03800E03800E03800E03800E03800E03800E03800E03800E03800E0380 0F03800F87807FFF00FEFE007E3C00> 21 18 0 0 22] 110 @dc [<07C7E00FE7F01FFFE03C1F00700F00700F00E00700E00700E00700E00700E00700E00700700700 780F003C1F001FFF000FF70003C700000700000700000700000700003F00007F00003F00> 20 25 -1 0 22] 100 @dc [<7FC000FFE0007FC0000E00000E00000E00000E00000E00000E00000E3C000EFF000FFF800F83C0 0F01E00E00E00E00700E00700E00700E00700E00700E00700E00E00F00E00F83C07FFF80FEFF00 7E3E00> 20 27 0 9 22] 112 @dc [<03E3F007FBF80FFFF00E0F800E03800E03800E03800E03800E03800E03800E03800E03800E0380 0E03800E03807E1F80FE3F807E1F80> 21 18 0 0 22] 117 @dc [ 21 18 0 0 22] 109 @dc [<0F83E03FE7E07FFFE0783E00E00E00E00E00E00E00700E003E0E001FFE0003FE00000E00000E00 300E00783C007FF8003FF0001FE000> 19 18 -2 0 22] 97 @dc [<3FFE007FFF003FFE0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000 01C00001C000FFFF00FFFF007FFF0001C00001C00001C30001E78000FF80007F80001F00> 17 25 -1 0 22] 102 @dc [ 19 18 -1 0 22] 114 @dc [<03E0000FF8001FFC003C1E00780F00700700F00780E00380E00380E00380E00380E00380700700 780F003C1E001FFC000FF80003E000> 17 18 -2 0 22] 111 @dc [<03F00FF81FFC3E0E78077007F000E000E000E000E000E0007000780C3C1E1FFE0FFC03F8> 16 18 -3 0 22] 99 @dc [ 17 25 -2 0 22] 108 @dc [<7F87F0FFCFF07F87F00E07800E07000E0E000F1E000FBC000FF8000FF0000EF0000E78000E3C00 0E1E000E0F000E7FE00E7FE00E7FE00E00000E00000E00000E00007E0000FE00007E0000> 20 25 0 0 22] 107 @dc cmr10.300 @sf [<808040402020101010100808080808086868F8F8F0F06060> 13 12 -1 -17 21] 34 @dc cmtt10.300 @sf [<00F80001FC0003FE00078700070380070380070380070100070000070000070000070000070000 070000070000FFFF00FFFF007FFF00070000070000070000070000030000> 17 23 -1 0 22] 116 @dc [<7FFFFFFF7FFF01C001C001C001C001C001C001C001C001C001C001C001C07FC07FC07FC0000000 0000000000018003C003C00180> 16 26 -3 0 22] 105 @dc [<063C000EFF000FFF800F83C00F01E00E00E00E00700E00700E00700E00700E00700E00700E00E0 0F00E00F83C00FFF800EFF000E3E000E00000E00000E00000E00007E0000FE00007E0000> 20 25 0 0 22] 98 @dc [<00FC0003FF0007FFC00F03C01C3C00387E0078FF0071C38071C380E381C0E381C0E381C0E381C0 E381C0E381C0E381C071C3C071C3C078FF80387F801C3F800F070007FE0003FC0000F800> 18 25 -2 0 22] 64 @dc [<70F8F8F870> 5 5 -8 0 22] 46 @dc [<03F8000FFE003FFF807C07C07001C0E000E0E000E0E000E0E000E07803C03FFF801FFF001FFC00 1800003800001BE0001FF0000FF8001C1C00380E00380E00380E00380E00380E001C1CC00FFFE0 07F7E003E3C0> 19 28 -1 10 22] 103 @dc [<00E00001F00001F00003B80003B80003B800071C00071C00071C00071C000E0E000E0E000E0E00 1E0F001C07007F1FC0FF1FE07F1FC0> 19 18 -1 0 22] 118 @dc cmbx10.300 @sf [<03F8000E0E001C03003C0180780180780000F80000F80000F80000F80000F80000F80000780E00 781F003C1F001C1F000E0E0003FC00> 17 18 -2 0 21] 99 @dc [ 22 29 -1 0 25] 107 @dc [ 24 18 -1 0 27] 110 @dc [<01FC000F07801E03C03C01E07800F07800F0F800F8F800F8F800F8F800F8F800F8F800F87800F0 7800F03C01E01C01C00F078001FC00> 21 18 -1 0 24] 111 @dc [<00E00E0000E00E0000F01E0001F01F0001F83F0001F83F0003F83D8003EC7D8007EC79C007CEF8 C007C6F0C00F86F0600F83F0601F83E0701F03E0301F03E030FF8FF8FEFF8FF8FE> 31 18 -1 0 34] 119 @dc [ 11 29 -1 0 14] 108 @dc [<01FC000F03801E00C03C00607C0060780000F80000F80000F80000FFFFE0F801E0F801E07801E0 7801C03C01C01C03800F070001FC00> 19 18 -1 0 22] 101 @dc [<03F9FE0F0FFE1C03F03C01F07801F07801F0F801F0F801F0F801F0F801F0F801F0F801F07801F0 7801F03C01F01C03F00F07F001F9F00001F00001F00001F00001F00001F00001F00001F00001F0 0001F0000FF0000FF0> 23 29 -2 0 27] 100 @dc [<07FF001E03C07800F0700070F00078F00078F000787801F81FFFF00FFFE01FFFC01FFF00180000 1800001000001BF8000E0E001E0F001C07003C07803C07803C07803C07801C07301E0F380E0F38 03F8F0> 21 27 -1 9 24] 103 @dc [ 37 18 -1 0 40] 109 @dc [<03F007980F081F0C1F0C1F0C1F0C1F001F001F001F001F001F001F001F001F00FFFC3FFC0F000F 00070007000300030003000300> 14 26 -1 0 19] 116 @dc [ 14 18 -2 0 19] 115 @dc cmbx12.300 @sf [<00FF0003FFC00783E00F00F01E00F83E007C3C007C7C007E7C007E7C007EFC007EFC007EFC007E FC007EFE007CFE007CFF00F8FD80F0FCFFE0FC7FC0FC08007C00007C00007E00F03E01F83E01F8 1F01F80F01F807C0F003F07000FFE0001F80> 23 32 -2 0 28] 54 @dc [<7FF8007FF8000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F8000 0F80000F80000F80000F80000F80000F80000F8000FFFC00FFFC000F80000F80000F80000F8000 0F80000F80000F83C00F87E007C7E003C7E001E3E000FFC0003F80> 19 35 -1 0 17] 102 @dc cmr10.300 @sf [<007FF8000007800000078000000780000007800000078000000780000007800000078000000780 000007800000078000000FC000000F4000001F2000001E2000003C1000007C18000078080000F8 040000F0040001F0020003E0020003C0010007C00180078000800F8001E0FFF007FC> 30 28 0 0 31] 89 @dc 18 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (18) 14 (-) ks cmbx10.300 @sf 210 105 p m (A) s cmmi7.300 @sf 246 91 p m (T) s cmsy10.300 @sf 280 105 p m (\001) s cmbx10.300 @sf 8 r m (B) s cmmi7.300 @sf 334 91 p m (T) s cmr10.300 @sf 360 105 p m (.) 18 (Pro) 1 (cessors) 15 (ha) 0 (v) 0 (e) 11 (ab) 1 (out) 13 (85%) 13 (e\016ciency) 14 (for) ks cmbx10.300 @sf 13 r m (A) s cmsy10.300 @sf 8 r m (\001) s cmbx10.300 @sf 7 r m (B) s cmr10.300 @sf m (,) 13 (and) 13 (87%) 13 (for) ks cmbx10.300 @sf 13 r m (A) s cmmi7.300 @sf 1527 91 p m (T) s cmsy10.300 @sf 1561 105 p m (\001) s cmbx10.300 @sf 7 r m (B) s cmmi7.300 @sf 1614 91 p m (T) s cmr10.300 @sf 1654 105 p m (if) s cmmi10.300 @sf 12 r m (P) s cmr10.300 @sf 17 r m (=) s cmmi10.300 @sf 12 r m (Q) s cmr10.300 @sf 11 r m (=) 12 (16.) ks 210 175 p m (The) 17 (routines) 18 (p) 1 (erform) 16 (b) 1 (etter) 18 (on) 17 (templates) 16 (for) 16 (whic) 0 (h) ks cmmi10.300 @sf 16 r m (P) s cmsy10.300 @sf 22 r m (6) s cmr10.300 @sf m (=) s cmmi10.300 @sf 17 r m (Q) s cmr10.300 @sf m (.) 26 (Pro) 1 (cessors) 20 (ac) 0 (hiev) -1 (e) 16 (ab) 1 (out) 16 (89%,) ks 210 245 p m (and) 14 (93%) 13 (of) 13 (e\016ciency) 15 (for) 13 (eac) 0 (h) 14 (case) 14 (if) ks cmmi10.300 @sf 13 r m (P) s cmr10.300 @sf 20 r m (and) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 14 r m (are) 14 (relativ) 0 (ely) 13 (prime.) ks cmbx12.300 @sf 210 370 p m (5.) s 272 370 p m (Conclusions) 19 (and) 19 (Remarks) ks cmr10.300 @sf 210 481 p m (W) -2 (e) 14 (ha) 0 (v) 0 (e) 14 (presen) 0 (ted) 16 (parallel) 15 (matrix) 14 (transp) 1 (ose) 17 (algorithm) -1 (s) 14 (based) 16 (on) 16 (the) 16 (blo) 1 (c) 0 (k) 14 (scattered) 18 (decom-) ks 210 550 p m (p) 1 (osition.) 18 (The) 15 (algorithm) -1 (s) 13 (ha) 0 (v) -1 (e) 13 (go) 1 (o) 1 (d) 14 (p) 1 (erformance) 14 (for) 14 (arbitrary) 14 (pro) 1 (cessor) 16 (con\014gurations) 14 (on) 14 (the) ks 210 620 p m (In) 0 (tel) 13 (Delta) 13 (computer.) ks 272 690 p m (If) s cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 19 r m (and) s cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 13 r m (are) 14 (relativ) 0 (ely) 12 (prime,) 13 (the) 14 (transp) 1 (ose) 15 (routine) 14 (in) 0 (v) -1 (olv) -1 (es) 12 (complete) 13 (exc) 0 (hange) 14 (comm) -2 (u-) ks 210 760 p m (nication) 12 (on) 12 (a) 13 (t) 0 (w) 0 (o) -1 (-dim) -2 (ensional) 11 (template.) 16 (W) -2 (e) 12 (ha) 0 (v) -1 (e) 11 (approac) 0 (hed) 12 (this) 13 (complicated) 11 (problem) 12 (with) 12 (a) ks 210 829 p m (direct) 14 (p) 1 (oin) 0 (t-to-p) 1 (oin) -1 (t) 11 (comm) -2 (unication) 11 (sc) 0 (heme) 12 (\(see) 15 (Section) 14 (2\).) 17 (When) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 19 r m (and) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 13 r m (are) 13 (not) 14 (relativ) 0 (ely) ks 210 899 p m (prime) 11 (\() ks cmmi10.300 @sf m (GC) 3 (D) 12 (>) ks cmr10.300 @sf 12 r m (1\),) 12 (the) 13 (pro) 1 (cessors') 13 (op) 1 (erations) 13 (are) 12 (o) 0 (v) -1 (erlapp) 1 (ed) 11 (o) 0 (v) 0 (er) 10 (di\013eren) 0 (t) 12 (groups,) 12 (so) 13 (that) 12 (only) ks cmmi10.300 @sf 210 969 p m (LC) 3 (M) 2 (=GC) 3 (D) ks cmr10.300 @sf 15 r m (comm) -2 (unicatio) -1 (ns) 13 (are) 14 (required.) ks 272 1039 p m (In) 16 (our) 16 (F) -2 (ortran) 15 (implem) -1 (en) -1 (tatio) -1 (n,) 14 (w) 0 (e) 15 (assume) 16 (that) 16 (the) 16 (\014rst) 17 (dimension) 14 (of) 16 (the) 16 (matrix) 14 (ma) 0 (y) 13 (b) 1 (e) ks 210 1108 p m (di\013eren) 0 (t) 10 (from) 9 (the) 11 (n) 0 (um) -1 (b) 1 (er) 9 (of) 10 (ro) 0 (ws) 10 (of) 10 (the) 11 (matrix) 9 (in) 10 (a) 10 (pro) 1 (cessor.) 19 (Ev) 0 (en) 10 (when) ks cmmi10.300 @sf 11 r m (P) s cmr10.300 @sf 17 r m (=) s cmmi10.300 @sf 11 r m (Q) s cmr10.300 @sf m (,) 11 (the) 11 (pro) 1 (cessor) ks 210 1178 p m (needs) 19 (to) 17 (cop) 0 (y) 16 (blo) 1 (c) 0 (ks) 16 (of) ks cmbx10.300 @sf 17 r m (A) s cmr10.300 @sf 17 r m (to) 17 (a) 17 (comm) -1 (uni) -1 (cation) 15 (bu\013er) 18 (b) 1 (efore) 18 (sending,) 18 (and) 17 (cop) 0 (y) 17 (the) 18 (receiv) 0 (ed) ks 210 1248 p m (bu\013er) 15 (to) 14 (blo) 1 (c) 0 (ks) 13 (of) ks cmbx10.300 @sf 13 r m (C) s cmr10.300 @sf 14 r m (after) 14 (receiving.) ks 272 1317 p m (The) 17 (parallel) 16 (matrix) 14 (transp) 1 (ose) 18 (algorithm) -1 (s) 15 (ha) 0 (v) 0 (e) 15 (b) 1 (een) 17 (com) 0 (bined) 15 (with) 16 (matrix) 14 (m) 0 (ul) -1 (tipli) -1 (cation) ks 210 1387 p m (routines.) 27 (The) 17 (in) 0 (tegrated) 17 (routines) 17 (comprise) 16 (a) 17 (general-purp) 1 (ose) 18 (matrix) 15 (m) -1 (ulti) -1 (pli) -1 (cation) 15 (pac) 0 (k) -2 (age,) ks 210 1457 p m (called) 12 (PUMMA) 12 ([) 0 (5) ks 537 1457 p m (],) 11 (for) 12 (MIMD) 11 (message-passing) 12 (computers.) 17 (The) 13 (pac) 0 (k) -2 (age) 10 (has) 12 (go) 1 (o) 1 (d) 12 (p) 1 (erformance) ks 210 1527 p m (for) 19 (a) 19 (wide) 19 (range) 20 (of) 19 (decomp) 1 (osition) 18 (parameters,) 20 (that) 20 (is,) 20 (its) 19 (p) 1 (erformance) 19 (dep) 1 (ends) 21 (w) 0 (eakly) 18 (on) ks 210 1596 p m (pro) 1 (cessor) 16 (con\014guration) 13 (and) 14 (blo) 1 (c) 0 (k) 12 (size.) ks 272 1666 p m (The) 14 (PUMMA) 14 (pac) 0 (k) -1 (a) -1 (ge) 12 (is) 13 (curren) 0 (tly) 13 (a) 0 (v) -2 (ai) -1 (labl) -1 (e) 12 (only) 12 (for) 13 (double) 14 (precision) 13 (real) 13 (data,) 13 (but) 14 (will) 11 (b) 1 (e) ks 210 1736 p m (implem) -1 (en) -1 (ted) 11 (in) 11 (the) 12 (near) 13 (future) 12 (for) 12 (other) 12 (data) 12 (t) 0 (yp) 1 (es,) 11 (i.e.,) 11 (single) 12 (precision) 12 (real) 12 (and) 12 (complex,) 10 (and) ks 210 1806 p m (double) 14 (precision) 14 (complex.) 16 (T) -2 (o) 12 (obtain) 13 (a) 14 (cop) 0 (y) 13 (of) 13 (the) 14 (soft) 0 (w) 0 (a) -1 (re) 13 (and) 13 (a) 14 (description) 14 (of) 13 (ho) 0 (w) 13 (to) 13 (use) 15 (it,) ks 210 1875 p m (send) 15 (the) 14 (message) 14 (\\) ks cmtt10.300 @sf m (send) 21 (pumma) 20 (from) 21 (scalapack) ks cmr10.300 @sf m (") 12 (to) ks cmtt10.300 @sf 14 r m (netlib@ornl) -1 (.gov) ks cmr10.300 @sf m (.) s cmbx10.300 @sf 210 2002 p m (Ac) 0 (kno) -1 (wled) -1 (gmen) -2 (ts) ks cmr10.300 @sf 210 2099 p m (The) 20 (authors) 20 (w) 0 (ould) 18 (lik) 0 (e) 18 (to) 20 (thank) 20 (Eduardo) 20 (D'Azev) 0 (edo) 19 (at) 19 (ORNL) 20 (for) 19 (his) 20 (helpful) 19 (suggestions) ks 210 2168 p m (to) 20 (impro) -1 (v) -1 (e) 18 (the) 21 (qualit) -1 (y) 18 (of) 19 (the) 21 (pap) 1 (er.) 37 (This) 20 (researc) 0 (h) 21 (w) 0 (as) 18 (p) 1 (erformed) 20 (in) 20 (part) 20 (using) 19 (the) 21 (In) 0 (tel) ks 210 2238 p m (T) -2 (ouc) 0 (hstone) 14 (Delta) 15 (System) 14 (op) 1 (erated) 17 (b) 0 (y) 14 (the) 15 (California) 14 (Institute) 16 (of) 14 (T) -2 (ec) 0 (hnology) 13 (on) 15 (b) 1 (ehalf) 15 (of) 14 (the) ks 210 2308 p m (Concurren) 0 (t) 20 (Sup) 1 (ercomputing) 19 (Consortium.) 35 (Access) 22 (to) 20 (this) 20 (facilit) -1 (y) 18 (w) 0 (as) 19 (pro) 0 (vided) 18 (through) 20 (the) ks 210 2377 p m (Cen) 0 (ter) 14 (for) 14 (Researc) 0 (h) 14 (on) 13 (P) 0 (arallel) 12 (Computing.) ks cmbx12.300 @sf 210 2503 p m (6.) s 272 2503 p m (References) s cmr10.300 @sf 231 2614 p m ([1]) s 295 2614 p m (N.) 14 (G.) 12 (Azari,) 14 (A.) 13 (W.) 13 (Bo) 2 (janczyk,) 13 (and) 14 (S.-Y.) 13 (Lee.) 18 (Sync) 0 (hronous) 13 (and) 14 (async) 0 (hronous) 13 (algorithms) ks @eop 17 @bop0 cmsy10.300 @sf [<400020C000606000C03001801803000C0600060C0003180001B00000E00000E00001B000031800 060C000C06001803003001806000C0C00060400020> 19 20 -6 0 32] 2 @dc cmmi10.300 @sf [<60F0F060> 4 4 -4 0 12] 58 @dc cmsy10.300 @sf [ 25 34 -3 8 32] 21 @dc cmmi10.300 @sf [<804020201010101070F0F060> 4 12 -4 8 12] 59 @dc cmr10.300 @sf [<7FCFF80E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C0FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00703C0 0303C001C1C0007FC0> 21 29 0 0 23] 13 @dc 17 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (17) 14 (-) ks 210 65 p 1710 2 ru cmmi10.300 @sf 235 112 p m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 656 112 p m (Matrix) 13 (Size) ks 1170 112 p m (Blo) 1 (c) 0 (k) 13 (Size) ks 1659 112 p m (Time) 13 (\(second\)) ks 210 133 p 1710 2 ru 1197 168 p m (1) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (1) s 1730 168 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (857) s 234 218 p m (8) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 10 r m (16) s 652 218 p m (4800) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (4800) s 1197 218 p m (5) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (5) s 1730 218 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (612) s 1176 268 p m (300) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (300) s 1730 268 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (564) s 210 285 p 1710 2 ru 1197 319 p m (1) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (1) s 1730 319 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (280) s 214 369 p m (12) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 652 369 p m (4800) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (4800) s 1197 369 p m (5) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (5) s 1730 369 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (893) s 1176 419 p m (100) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (100) s 1730 419 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (882) s 210 436 p 1710 2 ru 1197 470 p m (1) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (1) s 1730 470 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (484) s 214 520 p m (14) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 652 520 p m (5600) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (5600) s 1197 520 p m (5) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (5) s 1730 520 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (193) s 1197 570 p m (50) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (50) s 1730 570 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (161) s 210 587 p 1710 2 ru 1197 621 p m (1) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (1) s 1730 621 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (740) s 214 671 p m (15) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 652 671 p m (6000) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (6000) s 1197 671 p m (5) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (5) s 1730 671 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (437) s 1197 721 p m (25) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (25) s 1730 721 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (426) s 210 738 p 1710 2 ru 1197 773 p m (1) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (1) s 1730 773 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (967) s 214 822 p m (16) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 652 822 p m (6400) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (6400) s 1197 822 p m (5) s cmsy10.300 @sf 30 r m (\002) s cmr10.300 @sf 30 r m (5) s 1730 822 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (967) s 1176 872 p m (400) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (400) s 1730 872 p m (1) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (967) s 210 889 p 1710 2 ru 603 963 p m (T) -2 (able) 12 (2:) 18 (Dep) 1 (endence) 16 (of) 13 (p) 1 (erformance) 14 (on) 13 (blo) 1 (c) 0 (k) 13 (size.) ks 210 1096 p m (transp) 1 (ose) 18 (routine) 18 (has) 17 (excellen) 0 (t) 17 (p) 1 (erformance) 17 (if) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 23 r m (and) s cmmi10.300 @sf 16 r m (Q) s cmr10.300 @sf 17 r m (are) 18 (relativ) 0 (ely) 15 (prime.) 27 (In) 17 (other) 18 (cases) ks 210 1166 p m (\() s cmmi10.300 @sf m (GC) 3 (D) ks cmsy10.300 @sf 12 r m (\025) s cmr10.300 @sf 12 r m (2\),) 14 (net) 0 (w) 0 (ork) 12 (congestion) 14 (ma) -1 (y) 12 (degrade) 14 (the) 15 (p) 1 (erformance) 14 (of) 13 (the) 14 (routine.) ks 210 1277 p 1710 2 ru cmmi10.300 @sf 235 1324 p m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 486 1324 p m (Matrix) 13 (Size) 14 (\() ks cmbx10.300 @sf m (A) s cmmi10.300 @sf m (;) s cmbx10.300 @sf 7 r m (B) s cmr10.300 @sf m (\)) s cmbx10.300 @sf 1120 1324 p m (A) s cmsy10.300 @sf 9 r m (\001) s cmbx10.300 @sf 9 r m (B) s cmr10.300 @sf 55 r m (\(%\)) s cmbx10.300 @sf 1660 1324 p m (A) s cmmi7.300 @sf 1696 1310 p m (T) s cmsy10.300 @sf 1731 1324 p m (\001) s cmbx10.300 @sf 9 r m (B) s cmmi7.300 @sf 1786 1310 p m (T) s cmr10.300 @sf 1826 1324 p m (\(%\)) s 210 1345 p 1710 2 ru 234 1380 p m (1) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 10 r m (1) s 570 1380 p m (500) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 30 r m (500) s 1100 1380 p m (36) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (70) 40 (\(100) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (0\)) s 1632 1380 p m (35) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (04) 40 (\(100) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (0\)) s 234 1430 p m (8) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 10 r m (16) s 550 1430 p m (5600) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 9 r m (5600) s 1100 1430 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (05) 61 (\(87) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (3\)) s 1632 1430 p m (30) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (57) 61 (\(87) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (3\)) s 214 1480 p m (12) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 550 1480 p m (6720) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 9 r m (6720) s 1100 1480 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (09) 61 (\(87) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (4\)) s 1632 1480 p m (31) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (64) 61 (\(90) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (3\)) s 214 1530 p m (14) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 550 1530 p m (6720) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 9 r m (6720) s 1100 1530 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (52) 61 (\(88) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (6\)) s 1632 1530 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (11) 61 (\(91) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (6\)) s 214 1579 p m (15) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 550 1579 p m (7200) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 9 r m (7200) s 1100 1579 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (78) 61 (\(89) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (3\)) s 1632 1579 p m (32) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (43) 61 (\(92) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (6\)) s 214 1629 p m (16) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (16) s 550 1629 p m (8000) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 9 r m (8000) s 1100 1629 p m (31) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (22) 61 (\(85) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (1\)) s 1632 1629 p m (30) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (38) 61 (\(86) ks cmmi10.300 @sf m (:) s cmr10.300 @sf m (7\)) s 210 1646 p 1710 2 ru 210 1720 p m (T) -2 (able) 12 (3:) 17 (P) 0 (erformance) 12 (p) 1 (er) 14 (no) 1 (de) 14 (in) 13 (M\015ops.) 18 (Blo) 1 (c) 0 (k) 12 (size) 14 (is) 13 (\014xed) 14 (to) 13 (5) ks cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 8 r m (5) 13 (elemen) 0 (ts.) 17 (1) ks cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 8 r m (1) 13 (template) ks 210 1770 p m (giv) 0 (es) 12 (p) 1 (erformance) 14 (of) 13 (assem) 0 (bly-co) 1 (ded) 12 (matrix) 12 (m) -1 (ulti) -1 (plicati) -1 (on.) 16 (Num) 0 (b) 1 (ers) 13 (in) 13 (paren) 0 (theses) 15 (represen) 0 (t) ks 210 1820 p m (e\016ciency) 15 (compared) 13 (with) 13 (the) 15 (p) 1 (erformance) 14 (on) 13 (1) 14 (pro) 1 (cessor.) ks 272 1937 p m (T) -2 (able) 16 (2) 18 (sho) 0 (ws) 17 (ho) 0 (w) 17 (the) 19 (blo) 1 (c) 0 (k) 16 (size) 19 (a\013ects) 19 (the) 19 (p) 1 (erformance) 18 (of) 17 (the) 18 (algorithms.) 28 (It) 18 (includes) ks 210 2007 p m (three) 14 (cases) 14 (of) 12 (the) 13 (blo) 1 (c) 0 (k) 11 (size,) 13 (t) 0 (w) 0 (o) 11 (extreme) 12 (cases) 14 ({) 13 (the) 13 (smallest) 11 (and) 13 (largest) 12 (p) 1 (ossible) 13 (blo) 1 (c) 0 (k) 11 (sizes) 14 ({) ks 210 2077 p m (and) 13 (5) ks cmsy10.300 @sf 7 r m (\002) s cmr10.300 @sf 7 r m (5) 13 (blo) 1 (c) 0 (k) 11 (of) 13 (elemen) 0 (ts.) 16 (If) ks cmmi10.300 @sf 13 r m (P) s cmr10.300 @sf 17 r m (=) s cmmi10.300 @sf 11 r m (Q) s cmr10.300 @sf m (,) 13 (pro) 1 (cessors) 15 (directly) 13 (cop) 0 (y) 12 (all) 12 (blo) 1 (c) 0 (ks) 12 (at) 12 (once,) 14 (so) 13 (blo) 1 (c) 0 (k) 11 (size) ks 210 2146 p m (do) 1 (es) 16 (not) 14 (a\013ect) 16 (the) 16 (p) 1 (erformance.) 21 (F) -2 (or) 13 (the) 16 (case) 16 (of) 14 (the) 15 (smallest) 14 (blo) 1 (c) 0 (k) 14 (size) 15 (\(1) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 10 r m (1) 15 (elemen) 0 (t\)) 13 (when) ks cmmi10.300 @sf 210 2216 p m (P) s cmsy10.300 @sf 20 r m (6) s cmr10.300 @sf m (=) s cmmi10.300 @sf 15 r m (Q) s cmr10.300 @sf m (,) 16 (pro) 1 (cessors) 18 (mak) -1 (e) 14 (a) 15 (cop) 0 (y) 15 (elemen) 0 (t) 14 (b) 0 (y) 15 (elemen) 0 (t,) 14 (so) 16 (it) 15 (tak) 0 (es) 16 (a) 15 (little) 15 (more) 15 (time) 14 (to) 16 (mak) -1 (e) 14 (a) ks 210 2286 p m (cop) 0 (y) -2 (.) 15 (The) 13 (routines) 14 (with) 12 (the) 13 (smallest) 12 (blo) 1 (c) 0 (k) 11 (sizes) 14 (are) 13 (slo) 0 (w) -1 (er) 12 (than) 13 (those) 13 (with) 12 (the) 14 (largest) 13 (p) 1 (ossible) ks 210 2356 p m (blo) 1 (c) 0 (k) 16 (sizes) 18 (b) 0 (y) 16 (b) 1 (et) 0 (w) 0 (een) 16 (15%) 16 (and) 17 (31%.) 27 (This) 17 (di\013erence) 19 (is) 17 (negligible,) 16 (compared) 16 (with) 17 (the) 18 (total) ks 210 2425 p m (elapsed) 15 (time) 12 (of) 13 (the) 15 (matrix) 12 (m) -1 (ultipl) -1 (icatio) -1 (n.) ks 272 2495 p m (P) 0 (erformance) 15 (p) 1 (er) 18 (no) 1 (de) 17 (is) 16 (sho) 0 (wn) 15 (in) 16 (T) -2 (able) 15 (3.) 25 (The) 17 (1) ks cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 11 r m (1) 16 (template) 16 (giv) 0 (es) 15 (the) 17 (p) 1 (erformance) 17 (of) ks 210 2565 p m (the) 18 (assem) 0 (bly-co) 1 (ded) 16 (lev) 0 (el) 16 (3) 17 (BLAS) 17 (matrix) 16 (m) -1 (ultipl) -1 (icatio) -1 (n) 16 (routine) 17 (for) 17 (the) 18 (t) 0 (w) 0 (o) 15 (cases) ks cmbx10.300 @sf 18 r m (A) s cmsy10.300 @sf 12 r m (\001) s cmbx10.300 @sf 11 r m (B) s cmr10.300 @sf 17 r m (and) s @eop 16 @bop0 16 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (16) 14 (-) ks 394 160 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 800 1 0 0 8.3 5.2 PlotAxes [ [ 400 1.005 ] [ 800 1.979 ] [ 1600 2.919 ] [ 2400 3.353 ] [ 3200 3.610 ] [ 4000 3.807 ] [ 4800 3.920 ] [ 5600 4.013 ] ] 0 0 3 PlotPoints [ [ 400 0.931 ] [ 800 1.824 ] [ 1600 2.749 ] [ 2400 3.192 ] [ 3200 3.464 ] [ 4000 3.687 ] [ 4800 3.811 ] [ 5600 3.914 ] ] 0 0 0 PlotPoints /Symbol findfont 10 scalefont setfont 20 225 40 sub moveto [3 3] 0 setdash 43 225 40 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 43 sub moveto show 63 225 43 sub moveto (\264 B) show 20 225 54 sub moveto [] 0 setdash 43 225 54 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 57 sub moveto show 63 225 57 sub moveto (\264 B) show /Symbol findfont 8 scalefont setfont 56 225 53 sub moveto (T) show 77.5 225 53 sub moveto (T) show /Times-Roman findfont 12 scalefont setfont (Matrix Size, M) dup stringwidth pop 440.0 exch sub 2 div -30 moveto show 90 rotate (Gflops) dup stringwidth pop 360.0 exch sub 2 div 28 moveto show showpage end endTexFig @endspecial 210 1177 p m (Figure) 13 (18:) 17 (P) 0 (erformance) 12 (comparison) 12 (of) ks cmbx10.300 @sf 12 r m (A) s cmsy10.300 @sf 8 r m (\001) s cmbx10.300 @sf 7 r m (B) s cmr10.300 @sf 13 r m (and) s cmbx10.300 @sf 12 r m (A) s cmmi7.300 @sf 1141 1163 p m (T) s cmsy10.300 @sf 1175 1177 p m (\001) s cmbx10.300 @sf 7 r m (B) s cmmi7.300 @sf 1228 1163 p m (T) s cmr10.300 @sf 1267 1177 p m (on) 13 (8) ks cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 7 r m (16) 13 (template.) 17 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 17 r m (=) 12 (8) ks cmmi10.300 @sf m (;) 7 (Q) ks cmr10.300 @sf 10 r m (=) 12 (16,) ks 210 1226 p m (and) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (8\)) ks 394 1440 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 1600 1 0 0 6.3 9.3 PlotAxes [ [ 400 1.128 ] [ 800 2.796 ] [ 1200 3.895 ] [ 1600 4.672 ] [ 2400 5.663 ] [ 3200 6.334 ] [ 4000 6.816 ] [ 4800 7.131 ] [ 5600 7.390 ] [ 6400 7.595 ] [ 7200 7.759 ] [ 8000 7.964 ] ] 0 0 3 PlotPoints [ [ 400 1.103 ] [ 800 2.596 ] [ 1200 3.645 ] [ 1600 4.385 ] [ 2400 5.373 ] [ 3200 6.058 ] [ 4000 6.560 ] [ 4800 6.891 ] [ 5600 7.189 ] [ 6400 7.390 ] [ 7200 7.568 ] [ 8000 7.778 ] ] 0 0 0 PlotPoints /Symbol findfont 10 scalefont setfont 20 225 40 sub moveto [3 3] 0 setdash 43 225 40 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 43 sub moveto show 63 225 43 sub moveto (\264 B) show 20 225 54 sub moveto [] 0 setdash 43 225 54 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 57 sub moveto show 63 225 57 sub moveto (\264 B) show /Symbol findfont 8 scalefont setfont 56 225 53 sub moveto (T) show 77.5 225 53 sub moveto (T) show /Times-Roman findfont 12 scalefont setfont (Matrix Size, M) dup stringwidth pop 440.0 exch sub 2 div -30 moveto show 90 rotate (Gflops) dup stringwidth pop 360.0 exch sub 2 div 28 moveto show showpage end endTexFig @endspecial 210 2457 p m (Figure) 17 (19:) 23 (P) 0 (erformance) 15 (comparison) 16 (of) ks cmbx10.300 @sf 16 r m (A) s cmsy10.300 @sf 11 r m (\001) s cmbx10.300 @sf 10 r m (B) s cmr10.300 @sf 17 r m (and) s cmbx10.300 @sf 17 r m (A) s cmmi7.300 @sf 1177 2443 p m (T) s cmsy10.300 @sf 1214 2457 p m (\001) s cmbx10.300 @sf 11 r m (B) s cmmi7.300 @sf 1271 2443 p m (T) s cmr10.300 @sf 1313 2457 p m (on) 17 (16) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 12 r m (16) 16 (template.) 25 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 22 r m (=) s cmmi10.300 @sf 17 r m (Q) s cmr10.300 @sf 16 r m (=) s cmmi10.300 @sf 210 2507 p m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (16\).) ks @eop 15 @bop0 15 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (15) 14 (-) ks 394 160 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 1120 1 0 0 7.3 8.7 PlotAxes [ [ 560 1.680 ] [ 1120 3.736 ] [ 2240 5.567 ] [ 3360 6.422 ] [ 4480 6.820 ] [ 5600 7.100 ] [ 6720 7.285 ] ] 0 0 3 PlotPoints [ [ 560 1.464 ] [ 1120 3.534 ] [ 2240 5.386 ] [ 3360 6.257 ] [ 4480 6.703 ] [ 5600 6.985 ] [ 6720 7.192 ] ] 0 0 0 PlotPoints /Symbol findfont 10 scalefont setfont 20 225 40 sub moveto [3 3] 0 setdash 43 225 40 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 43 sub moveto show 63 225 43 sub moveto (\264 B) show 20 225 54 sub moveto [] 0 setdash 43 225 54 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 57 sub moveto show 63 225 57 sub moveto (\264 B) show /Symbol findfont 8 scalefont setfont 56 225 53 sub moveto (T) show 77.5 225 53 sub moveto (T) show /Times-Roman findfont 12 scalefont setfont (Matrix Size, M) dup stringwidth pop 440.0 exch sub 2 div -30 moveto show 90 rotate (Gflops) dup stringwidth pop 360.0 exch sub 2 div 28 moveto show showpage end endTexFig @endspecial 210 1177 p m (Figure) 11 (16:) 16 (P) 0 (erformance) 10 (comparison) 10 (of) ks cmbx10.300 @sf 10 r m (A) s cmsy10.300 @sf 4 r m (\001) s cmbx10.300 @sf 4 r m (B) s cmr10.300 @sf 11 r m (and) s cmbx10.300 @sf 11 r m (A) s cmmi7.300 @sf 1122 1163 p m (T) s cmsy10.300 @sf 1151 1177 p m (\001) s cmbx10.300 @sf 4 r m (B) s cmmi7.300 @sf 1201 1163 p m (T) s cmr10.300 @sf 1238 1177 p m (on) 11 (14) ks cmsy10.300 @sf 4 r m (\002) s cmr10.300 @sf 4 r m (16) 10 (template.) 16 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 17 r m (=) 12 (14) ks cmmi10.300 @sf m (;) 7 (Q) ks cmr10.300 @sf 10 r m (=) 12 (16,) ks 210 1226 p m (and) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (2\)) ks 394 1440 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 960 1 0 0 8.3 7.5 PlotAxes [ [ 480 1.317 ] [ 960 2.907 ] [ 1920 4.438 ] [ 2880 5.156 ] [ 3840 5.538 ] [ 4800 5.810 ] [ 5760 6.030 ] [ 6720 6.162 ] ] 0 0 3 PlotPoints [ [ 480 1.272 ] [ 960 2.755 ] [ 1920 4.299 ] [ 2880 5.042 ] [ 3840 5.450 ] [ 4800 5.716 ] [ 5760 5.935 ] [ 6720 6.075 ] ] 0 0 0 PlotPoints /Symbol findfont 10 scalefont setfont 20 225 40 sub moveto [3 3] 0 setdash 43 225 40 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 43 sub moveto show 63 225 43 sub moveto (\264 B) show 20 225 54 sub moveto [] 0 setdash 43 225 54 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 57 sub moveto show 63 225 57 sub moveto (\264 B) show /Symbol findfont 8 scalefont setfont 56 225 53 sub moveto (T) show 77.5 225 53 sub moveto (T) show /Times-Roman findfont 12 scalefont setfont (Matrix Size, M) dup stringwidth pop 440.0 exch sub 2 div -30 moveto show 90 rotate (Gflops) dup stringwidth pop 360.0 exch sub 2 div 28 moveto show showpage end endTexFig @endspecial 210 2457 p m (Figure) 11 (17:) 16 (P) 0 (erformance) 10 (comparison) 10 (of) ks cmbx10.300 @sf 10 r m (A) s cmsy10.300 @sf 4 r m (\001) s cmbx10.300 @sf 4 r m (B) s cmr10.300 @sf 11 r m (and) s cmbx10.300 @sf 11 r m (A) s cmmi7.300 @sf 1122 2443 p m (T) s cmsy10.300 @sf 1151 2457 p m (\001) s cmbx10.300 @sf 4 r m (B) s cmmi7.300 @sf 1201 2443 p m (T) s cmr10.300 @sf 1238 2457 p m (on) 11 (12) ks cmsy10.300 @sf 4 r m (\002) s cmr10.300 @sf 4 r m (16) 10 (template.) 16 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 17 r m (=) 12 (12) ks cmmi10.300 @sf m (;) 7 (Q) ks cmr10.300 @sf 10 r m (=) 12 (16,) ks 210 2507 p m (and) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (4\)) ks @eop 14 @bop0 cmsy10.300 @sf [<00060000000006000000000C000000000C00000000180000000030000000007FFFFFF000FFFFFF F801C000000003000000000E000000003C00000000F0000000003C000000000700000000038000 000000FFFFFFF8007FFFFFF000300000000018000000000C000000000C00000000060000000006 000000> 37 24 -2 2 42] 40 @dc cmbx10.300 @sf [<07FFFE0007FFFE00001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F80 00001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000C01F8030C01F 8030C01F8030C01F8030E01F8070601F8060701F80E0781F81E07FFFFFE07FFFFFE0> 28 28 -2 0 33] 84 @dc cmsy10.300 @sf [ 25 2 -3 -9 32] 0 @dc cmmi10.300 @sf [ 33 28 -2 0 33] 78 @dc cmmi7.300 @sf [ 15 19 1 6 17] 112 @dc cmsy10.300 @sf [<80007C008000FF008003FF80C00783C0E01F00E0783C00603FF800201FE0002007C00020> 27 9 -2 -6 32] 24 @dc 14 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (14) 14 (-) ks 394 64 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 1200 1 0 0 7.3 9.2 PlotAxes [ [ 1200 3.840 ] [ 2400 5.932 ] [ 3600 6.453 ] [ 4800 7.221 ] %[ 6000 7.078 ] [ 6000 7.178 ] [ 7200 7.867 ] ] 0 0 3 PlotPoints [ [ 1200 3.518 ] [ 2400 5.711 ] [ 3600 6.302 ] [ 4800 7.128 ] [ 6000 7.084 ] [ 7200 7.784 ] ] 0 0 0 PlotPoints /Symbol findfont 10 scalefont setfont 20 225 40 sub moveto [3 3] 0 setdash 43 225 40 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 43 sub moveto show 63 225 43 sub moveto (\264 B) show 20 225 54 sub moveto [] 0 setdash 43 225 54 sub lineto stroke (A ) dup stringwidth pop 60 exch sub 225 57 sub moveto show 63 225 57 sub moveto (\264 B) show /Symbol findfont 8 scalefont setfont 56 225 53 sub moveto (T) show 77.5 225 53 sub moveto (T) show /Times-Roman findfont 12 scalefont setfont (Matrix Size, M) dup stringwidth pop 440.0 exch sub 2 div -30 moveto show 90 rotate (Gflops) dup stringwidth pop 360.0 exch sub 2 div 28 moveto show showpage end endTexFig @endspecial 210 1081 p m (Figure) 11 (15:) 16 (P) 0 (erformance) 10 (comparison) 10 (of) ks cmbx10.300 @sf 10 r m (A) s cmsy10.300 @sf 4 r m (\001) s cmbx10.300 @sf 4 r m (B) s cmr10.300 @sf 11 r m (and) s cmbx10.300 @sf 11 r m (A) s cmmi7.300 @sf 1122 1067 p m (T) s cmsy10.300 @sf 1151 1081 p m (\001) s cmbx10.300 @sf 4 r m (B) s cmmi7.300 @sf 1201 1067 p m (T) s cmr10.300 @sf 1238 1081 p m (on) 11 (15) ks cmsy10.300 @sf 4 r m (\002) s cmr10.300 @sf 4 r m (16) 10 (template.) 16 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 17 r m (=) 12 (15) ks cmmi10.300 @sf m (;) 7 (Q) ks cmr10.300 @sf 10 r m (=) 12 (16,) ks 210 1130 p m (and) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (1\).) ks cmbx10.300 @sf 18 r m (C) s cmsy10.300 @sf 12 r m (\() s cmbx10.300 @sf 11 r m (A) s cmmi7.300 @sf 649 1116 p m (T) s cmsy10.300 @sf 684 1130 p m (\001) s cmbx10.300 @sf 9 r m (B) s cmmi7.300 @sf 739 1116 p m (T) s cmr10.300 @sf 779 1130 p m (is) 14 (impl) -1 (em) -1 (en) 0 (ted) 12 (in) 14 (t) 0 (w) 0 (o) 11 (steps,) ks cmbx10.300 @sf 15 r m (T) s cmsy10.300 @sf 12 r m (\() s cmbx10.300 @sf 11 r m (B) s cmsy10.300 @sf 9 r m (\001) s cmbx10.300 @sf 9 r m (A) s cmr10.300 @sf m (,) 13 (and) 14 (then) ks cmbx10.300 @sf 14 r m (C) s cmsy10.300 @sf 12 r m (\() s cmbx10.300 @sf 11 r m (T) s cmmi7.300 @sf 1839 1116 p m (T) s cmr10.300 @sf 1866 1130 p m (.) s 272 1265 p m (Matrix) 15 (elemen) 0 (ts) 15 (are) 16 (generated) 17 (uniforml) -1 (y) 14 (on) 15 (the) 16 (in) 0 (terv) -1 (al) 13 ([) ks cmsy10.300 @sf m (\000) s cmr10.300 @sf m (1) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (1]) 14 (in) 15 (double) 16 (precision.) 23 (Con-) ks 210 1335 p m (v) 0 (ersions) 12 (b) 1 (et) 0 (w) 0 (een) 13 (measured) 13 (run) 0 (tim) -1 (es) 12 (and) 12 (p) 1 (erformance) 13 (in) 13 (giga\015ops) 11 (\(G\015ops\)) 13 (are) 14 (made) 11 (assuming) ks 210 1405 p m (an) 12 (op) 1 (eration) 13 (coun) 0 (t) 12 (of) 12 (2) ks cmmi10.300 @sf m (M) 5 (N) 5 (L) ks cmr10.300 @sf 13 r m (for) 12 (the) 13 (m) 0 (ul) -1 (tipli) -1 (cation) 10 (of) 13 (a) ks cmmi10.300 @sf 12 r m (M) s cmsy10.300 @sf 12 r m (\002) s cmmi10.300 @sf 7 r m (L) s cmr10.300 @sf 13 r m (b) 0 (y) 11 (a) ks cmmi10.300 @sf 13 r m (L) s cmsy10.300 @sf 7 r m (\002) s cmmi10.300 @sf 7 r m (N) s cmr10.300 @sf 18 r m (matrix.) 15 (In) 13 (our) 13 (test) ks 210 1475 p m (examples,) 15 (all) 15 (pro) 1 (cessors) 19 (ha) 0 (v) -1 (e) 15 (the) 16 (same) 16 (n) 0 (um) -2 (b) 1 (er) 15 (of) 16 (blo) 1 (c) 0 (ks) 15 (so) 16 (there) 17 (is) 17 (no) 15 (load) 16 (im) -1 (ba) -1 (lance.) 23 (The) ks 210 1544 p m (algorithm) -1 (s) 13 (w) 0 (ere) 13 (implem) -1 (en) 0 (ted) 12 (with) 14 (force) 14 (t) 0 (yp) 1 (e) 13 (comm) -1 (uni) -1 (cation) 12 ([) 0 (9) ks 1367 1544 p m (].) s 272 1614 p m (First,) 11 (w) 0 (e) 10 (considered) 11 (ho) 0 (w,) 9 (for) 10 (a) 10 (\014xed) 11 (n) 0 (um) -2 (b) 1 (er) 9 (of) 10 (pro) 1 (cessors) ks cmmi10.300 @sf 12 r m (N) s cmmi7.300 @sf 1340 1620 p m (p) s cmr10.300 @sf 1372 1614 p m (=) s cmmi10.300 @sf 11 r m (P) s cmsy10.300 @sf 8 r m (\002) s cmmi10.300 @sf 2 r m (Q) s cmr10.300 @sf m (,) 10 (p) 1 (erformance) 10 (dep) 1 (ends) ks 210 1684 p m (on) 15 (the) 16 (con\014guration) 15 (of) 14 (the) 16 (pro) 1 (cessor) 17 (template.) 22 (Some) 14 (t) 0 (ypical) 13 (results) 17 (are) 15 (presen) 0 (ted) 17 (in) 15 (T) -2 (able) 13 (1) ks 210 1754 p m (for) 12 (a) 11 (\014xed) 13 (n) 0 (um) -2 (b) 1 (er) 11 (of) 12 (pro) 1 (cessors.) 19 (In) 12 (the) 13 (test,) 13 (the) 13 (blo) 1 (c) 0 (k) 11 (size) 12 (is) 12 (\014xed) 13 (at) 12 (5) ks cmsy10.300 @sf 6 r m (\002) s cmr10.300 @sf 6 r m (5) 11 (elemen) 0 (ts.) 16 (It) 12 (ma) -1 (y) 10 (b) 1 (e) ks 210 1823 p m (seen) 16 (that) 15 (the) 15 (template) 13 (con\014guration) 15 (do) 1 (es) 15 (ha) 0 (v) -1 (e) 13 (some) 14 (e\013ect) 16 (on) 15 (p) 1 (erformance.) 20 (The) 15 (p) 1 (erformance) ks 210 1893 p m (di\013erence) 16 (is) 15 (b) 1 (et) 0 (w) 0 (een) 14 (19) 14 (and) 14 (24) 14 (%.) 20 (F) -2 (or) 13 (rectangular) 15 (templates) 14 (with) 15 (di\013eren) 0 (t) 14 (asp) 1 (ect) 16 (ratios,) 14 (the) ks 210 1963 p m (algorithm) 15 (prefers) 19 (those) 19 (with) 17 (small) ks cmmi10.300 @sf 15 r m (Q) s cmr10.300 @sf 18 r m (to) 17 (those) 19 (with) 17 (small) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 6 r m (.) 28 (On) 18 (the) 19 (Delta,) 17 (comm) -1 (uni) -1 (cation) ks 210 2032 p m (sp) 1 (eed) 15 (along) 13 (v) 0 (ertical) 13 (links) 13 (seems) 14 (faster) 15 (than) 13 (along) 13 (horizon) 0 (tal) 12 (links.) ks 272 2102 p m (Figures) 17 (15) ks cmsy10.300 @sf 15 r m (\030) s cmr10.300 @sf 16 r m (19) 15 (sho) 0 (w) 15 (the) 16 (p) 1 (erformance) 16 (of) 15 (the) 16 (routines) 17 (on) 15 (15) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 11 r m (16) 15 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 16 r m (=) 15 (1,) 15 (i.e.,) ks cmmi10.300 @sf 15 r m (P) s cmr10.300 @sf 21 r m (and) s cmmi10.300 @sf 210 2172 p m (Q) s cmr10.300 @sf 17 r m (are) 17 (relativ) 0 (ely) 15 (prime\),) 16 (14) ks cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 11 r m (16) 17 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 17 r m (=) 17 (2\),) 17 (12) ks cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 11 r m (16) 17 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 17 r m (=) 17 (4\),) 17 (8) ks cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 11 r m (16) 17 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 17 r m (=) 17 (8\),) 17 (and) ks 210 2242 p m (16) s cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 13 r m (16) 17 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 24 r m (=) s cmmi10.300 @sf 19 r m (Q) s cmr10.300 @sf 18 r m (=) s cmmi10.300 @sf 19 r m (GC) 3 (D) ks cmr10.300 @sf 19 r m (=) 19 (16\)) 17 (templates,) 18 (resp) 1 (ectiv) 0 (ely) -2 (.) 29 (In) 18 (all) 17 (cases) 20 (the) 18 (blo) 1 (c) 0 (k) 17 (size) 19 (is) 17 (\014xed) ks 210 2311 p m (at) 19 (5) ks cmsy10.300 @sf 13 r m (\002) s cmr10.300 @sf 14 r m (5) 19 (elemen) 0 (ts.) 34 (The) 20 (solid) 19 (and) 19 (the) 20 (dashed) 21 (lines) 19 (sho) 0 (w) 19 (the) 20 (p) 1 (erformance) 20 (of) ks cmbx10.300 @sf 19 r m (A) s cmmi7.300 @sf 1710 2297 p m (T) s cmsy10.300 @sf 1749 2311 p m (\001) s cmbx10.300 @sf 12 r m (B) s cmmi7.300 @sf 1807 2297 p m (T) s cmr10.300 @sf 1853 2311 p m (and) s cmbx10.300 @sf 210 2381 p m (A) s cmsy10.300 @sf 7 r m (\001) s cmbx10.300 @sf 7 r m (B) s cmr10.300 @sf m (,) 11 (resp) 1 (ec) 1 (tiv) 0 (ely) -2 (.) 16 (The) 13 (di\013erence) 15 (of) 12 (the) 13 (t) 0 (w) 0 (o) 10 (lines) 13 (sho) 0 (ws) 12 (the) 13 (loss) 13 (of) 12 (p) 1 (erformance) 12 (due) 13 (to) 13 (matrix) ks 210 2451 p m (transp) 1 (osition.) ks 272 2521 p m (The) 14 (transp) 1 (osed) 15 (m) 0 (ul) -1 (tipl) -1 (ication) 11 (routine) 14 (sho) 0 (ws) 13 (go) 1 (o) 1 (d) 13 (p) 1 (erformance) 13 (relativ) 0 (e) 12 (to) 14 (matrix) 11 (m) 0 (ul) -1 (tipli) -1 (-) ks 210 2590 p m (cation.) 23 (The) 16 (loss) 16 (of) 15 (p) 1 (erformance) 16 (due) 16 (to) 16 (the) 16 (matrix) 14 (transp) 1 (ose) 17 (routine) 16 (is) 15 (ab) 1 (out) 16 (2) 15 (or) 16 (3) 15 (%.) 23 (The) ks @eop 13 @bop0 cmmi10.300 @sf [<1C003200710070803880388038001C001C001C000E000E00870087004700470027001C00000000 000000000000000000018003C003C001C0> 10 28 -2 0 14] 105 @dc [<7C00E600F300F18061C001C000E000E000E000E000700070007000700038003800380038001C00 1C041C021C020C010C009C00700000000000000000000000000006000F000F0007> 16 36 0 8 17] 106 @dc cmsy10.300 @sf [<008001800300030003000600060006000C000C000C001800180018003000300030006000600060 00C000C0006000600060003000300030001800180018000C000C000C0006000600060003000300 030001800080> 9 42 -4 11 16] 104 @dc cmmi10.300 @sf [ 21 26 1 8 21] 112 @dc [<1FF803C001C001C001C001C000E000E01CE023E060F0E070E070E070E038E038E038E038701C70 1C301C381C181E0C1E062601C2> 15 26 -2 8 19] 113 @dc cmsy10.300 @sf [ 9 42 -2 11 16] 105 @dc cmmi10.300 @sf [<7E0000E18000F0E000F0600060700000700000380000380007380008F800183C00381C00381C00 381C00380E00380E00380E00380E001C07001C07000C07000E0700060780030780018B80007180> 17 26 -1 8 20] 103 @dc 1.000000 /cmsy7.300 @newfont cmsy7.300 @sf [ 7 15 -1 -1 10] 48 @dc cmmi10.300 @sf [<603C00E0620070E20070E10070E10070E10038E00038E00039C0003F80001E00001D00001C8300 1C47800E23C00E21C00E18800E0700070000070000070000070000038000038000038000038000 01C00001C0000FC000> 18 29 -2 0 22] 107 @dc cmmi7.300 @sf [ 13 20 -2 0 18] 107 @dc cmbx12.300 @sf [<00FFFE00FFFE0007E00007E00007E00007E00007E00007E00007E0FFFFFEFFFFFEE007E07007E0 3807E01807E00C07E00E07E00707E00307E00187E001C7E000E7E00077E00037E0001FE0001FE0 000FE00007E00003E00003E00001E00000E0> 23 32 -2 0 28] 52 @dc [<00F80003FE0007C3000F83000F81800F81800F81800F81800F81800F80000F80000F80000F8000 0F80000F80000F80000F80000F80000F80000F8000FFFF00FFFF003F80000F8000078000078000 038000038000018000018000018000018000> 17 32 -1 0 22] 116 @dc cmmi10.300 @sf [<0F80E0306190601B88600780E00380E00380E00380E003C0E003A0E003A0700790700790300708 3807081C07040E0604030C0000F000> 22 18 -2 0 27] 11 @dc cmr10.300 @sf [<000600000006000000060000000600000006000000060000000600000006000000060000000600 00000600000006000000060000FFFFFFE0FFFFFFE0000600000006000000060000000600000006 00000006000000060000000600000006000000060000000600000006000000060000> 27 28 -2 4 32] 43 @dc cmmi10.300 @sf [<80000080000040000040000040000040000020000020000020F800230E001403001401801800C0 1800E00800E0080070080070080070040038040038040030040030020030020FE00210C0020FF0 01003801001801001C00801C00800E00400E00200E00100C00080C0006180001F0> 23 37 -1 8 23] 12 @dc cmr10.300 @sf [<804020201010101070F0F0600000000000000000000060F0F060> 4 26 -4 8 12] 59 @dc 13 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (13) 14 (-) ks 210 105 p m (c) 0 (hanged) 14 (from) ks cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 15 r m (and) s cmmi10.300 @sf 15 r m (P) s cmr10.300 @sf 20 r m (to) s cmmi10.300 @sf 15 r m (LC) 3 (M) 2 (=P) ks cmr10.300 @sf 21 r m (and) s cmmi10.300 @sf 14 r m (LC) 3 (M) 2 (=Q) ks cmr10.300 @sf m (.) 22 (The) 16 (pseudo) 1 (co) 1 (de) 16 (of) 15 (the) 16 (algorithm) 12 (is) 15 (sho) 0 (wn) ks 210 175 p m (in) 13 (Figure) 14 (11.) ks 272 245 p m (Figure) 20 (12) 18 (sho) 0 (ws) 19 (t) 0 (w) 0 (o) 17 (snapshots) 20 (of) 19 (the) 19 (same) 19 (example,) 19 (from) 17 (the) 20 (matrix) 17 (p) 1 (oin) 0 (t-of-view,) 18 (to) ks 210 314 p m (transp) 1 (ose) 15 (the) 15 (zeroth) 15 (and) 14 (the) 15 (\014rst) 15 (diagonal) 12 (blo) 1 (c) 0 (ks) 14 (of) ks cmbx10.300 @sf 13 r m (A) s cmr10.300 @sf 14 r m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (j) ks cmr10.300 @sf 2 r m (\),) 15 (MOD) ks 1489 314 p m (\() s cmmi10.300 @sf m (j) s cmsy10.300 @sf 12 r m (\000) s cmmi10.300 @sf 9 r m (i;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) 12 (=) 12 (0) 7 (and) ks 1888 314 p m (1,) s 210 384 p m (resp) 1 (ectiv) 0 (ely) -2 (.\)) 19 (The) 14 (pro) 1 (cessors) 17 (whic) 0 (h) 13 (ha) 0 (v) 0 (e) 13 (the) 15 (blo) 1 (c) 0 (ks) 13 (to) 14 (send) 15 (out) 15 (are) 15 (shaded) 15 (at) 14 (the) 15 (b) 1 (ottom.) 18 (In) ks 210 454 p m (the) 16 (example,) 15 (only) ks cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 16 r m (\001) s cmmi10.300 @sf 10 r m (Q) 7 (=) 7 (GC) 3 (D) ks cmr10.300 @sf 16 r m (pro) 1 (cessors) 18 (are) 16 (in) 0 (v) -1 (ol) -1 (v) -1 (ed) 14 (in) 16 (blo) 1 (c) 0 (k) 14 (comm) -2 (unicatio) -1 (n) 14 (in) 15 (eac) 0 (h) 15 (step.) ks 210 524 p m (Pro) 1 (cessors) 15 (are) 13 (split) 12 (in) 0 (to) ks cmmi10.300 @sf 11 r m (GC) 3 (D) ks cmr10.300 @sf 14 r m (groups) 13 (of) 12 (pro) 1 (cessors,) 14 (and) 13 (a) 12 (pro) 1 (cessor) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 11 r m (b) 1 (elongs) 13 (to) 13 (a) 12 (group) ks cmmi10.300 @sf 210 593 p m (g) s cmr10.300 @sf 15 r m (if) 13 (it) 14 (has) 14 (the) 15 (same) 13 (v) -1 (alue) 12 (of) ks cmmi10.300 @sf 14 r m (g) s cmr10.300 @sf 13 r m (=) 12 (MOD) ks 909 593 p m (\() s cmmi10.300 @sf m (q) s cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (p;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\).) 17 (Pro) 1 (cessors) 17 (in) 13 (a) 14 (group) ks cmmi10.300 @sf 14 r m (g) s cmr10.300 @sf 15 r m (send) 15 (and) 14 (receiv) 0 (e) ks 210 663 p m (their) 14 (blo) 1 (c) 0 (ks) 12 (to) 13 (other) 14 (pro) 1 (cessors) 15 (in) 13 (another) 13 (group) ks cmmi10.300 @sf 13 r m (g) s cmsy7.300 @sf 1126 649 p m (0) s cmr10.300 @sf 1150 663 p m (=) 12 (MOD) ks 1296 663 p m (\() s cmmi10.300 @sf m (GC) 3 (D) ks cmsy10.300 @sf 8 r m (\000) s cmmi10.300 @sf 9 r m (g) 1 (;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\).) 17 (The) 14 (op) 1 (erations) ks 210 733 p m (of) 13 (eac) 0 (h) 14 (group) 13 (can) 14 (b) 1 (e) 15 (o) 0 (v) -1 (erlapp) 1 (ed.) ks 272 802 p m (The) 22 (problem) 19 (is) 21 (in) 0 (terpreted) 22 (from) 19 (the) 22 (matrix) 19 (p) 1 (oin) 0 (t-of-) -1 (view.) 38 (In) 21 (general,) 22 (for) 21 (transp) 1 (osing) ks 210 872 p m (the) s cmmi10.300 @sf 18 r m (k) s cmr10.300 @sf 1 r m (-th) 18 (diagonal) 15 (blo) 1 (c) 0 (k) 17 (of) ks cmbx10.300 @sf 17 r m (A) s cmr10.300 @sf 17 r m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (j) ks cmr10.300 @sf 2 r m (\),) 19 (MOD) ks 1035 872 p m (\() s cmmi10.300 @sf m (j) s cmsy10.300 @sf 14 r m (\000) s cmmi10.300 @sf 12 r m (i;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) 17 (=) ks cmmi10.300 @sf 18 r m (k) s cmr10.300 @sf 1 r m (\),) 18 (a) 18 (group) 17 (of) 17 (pro) 1 (cessors) ks cmmi10.300 @sf 20 r m (g) s cmmi7.300 @sf 1850 878 p m (k) s cmr10.300 @sf 1888 872 p m (=) s 210 942 p m (MOD) s 312 942 p m (\() s cmmi10.300 @sf m (k) 1 (;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) 18 (send) 19 (the) 19 (blo) 1 (c) 0 (ks) 17 (to) 19 (another) 18 (group) ks cmmi10.300 @sf 18 r m (g) s cmsy7.300 @sf 1165 928 p m (0) s cmmi7.300 @sf 1164 954 p m (k) s cmr10.300 @sf 1204 942 p m (=) 19 (MOD) ks 1357 942 p m (\() s cmmi10.300 @sf m (GC) 3 (D) ks cmsy10.300 @sf 13 r m (\000) s cmmi10.300 @sf 13 r m (g) s cmmi7.300 @sf 1551 948 p m (k) s cmmi10.300 @sf 1571 942 p m (;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\).) 30 (Since) 19 (the) ks 210 1012 p m (op) 1 (erations) 14 (are) 14 (o) 0 (v) -1 (erlapp) 1 (ed) 12 (o) 0 (v) 0 (er) 12 (di\013eren) 0 (t) 13 (groups) 14 (of) 13 (pro) 1 (cessors,) 15 (pro) 1 (cessors) 16 (transp) 1 (ose) ks cmmi10.300 @sf 15 r m (GC) 3 (D) ks cmr10.300 @sf 14 r m (diag-) s 210 1081 p m (onal) 13 (blo) 1 (c) 0 (ks) 12 (sim) 0 (ul) -1 (taneously) -3 (.) 16 (So,) 12 (the) 15 (matrix) 11 (can) 14 (b) 1 (e) 14 (transp) 1 (osed) 15 (with) ks cmmi10.300 @sf 13 r m (LC) 3 (M) 2 (=GC) 3 (D) ks cmr10.300 @sf 15 r m (steps.) 19 (F) -2 (or) 12 (the) ks 210 1151 p m (extreme) 15 (case) 17 (of) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 19 r m (=) s cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 14 r m (=) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 14 r m (=) 14 (3) 15 (as) 15 (sho) 0 (wn) 15 (in) 14 (Figure) 16 (13,) 14 (pro) 1 (cessors) 17 (transp) 1 (ose) 17 (3) 15 (\(=) ks cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) s 210 1221 p m (diagonal) 11 (blo) 1 (c) 0 (ks) 12 (at) 13 (one) 13 (step.) 19 (That) 13 (is,) 13 (the) 13 (transp) 1 (osition) 13 (is) 13 (done) 13 (in) 13 (one) 13 (step.) 19 (A) 13 (pro) 1 (cessor) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 210 1291 p m (exc) 0 (hanges) 20 (data) 20 (with) 19 (pro) 1 (cessor) ks cmmi10.300 @sf 22 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (q) 1 (;) 7 (p) ks cmsy10.300 @sf m (i) s cmr10.300 @sf m (.) 36 (The) 20 (pseudo) 1 (co) 1 (de) 22 (of) 19 (the) 21 (algorithm) 17 (from) 18 (the) 21 (matrix) ks 210 1360 p m (p) 1 (oin) 0 (t-of-vi) -1 (ew) 12 (is) 14 (sho) 0 (wn) 13 (in) 13 (Figure) 14 (14.) 18 (The) 14 (co) 1 (de) 15 (includes) 14 (the) 15 (case) 15 (of) ks cmmi10.300 @sf 13 r m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (1.) ks 210 1463 p 1710 2 ru 341 1506 p m (96) 13 (pro) 1 (cessors) ks 949 1506 p m (64) 13 (pro) 1 (cessors) ks 1566 1506 p m (48) 13 (pro) 1 (cessors) ks 210 1527 p 501 2 ru 809 1527 p 519 2 ru 1426 1527 p 494 2 ru cmmi10.300 @sf 235 1568 p m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 425 1568 p m (Time) 12 (\(second\)) ks cmmi10.300 @sf 843 1568 p m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 1042 1568 p m (Time) 12 (\(second\)) ks cmmi10.300 @sf 1460 1568 p m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 1659 1568 p m (Time) 13 (\(second\)) ks 210 1589 p 1710 2 ru 234 1624 p m (6) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 10 r m (16) s 508 1624 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (404) s 855 1624 p m (4) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (16) s 1125 1624 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (596) s 1472 1624 p m (4) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (12) s 1730 1624 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (652) s 234 1674 p m (8) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 10 r m (12) s 508 1674 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (330) s 855 1674 p m (8) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (8) s 1125 1674 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (572) s 1472 1674 p m (6) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (8) s 1730 1674 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (546) s 214 1724 p m (12) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (8) s 508 1724 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (307) s 834 1724 p m (16) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (4) s 1125 1724 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (475) s 1472 1724 p m (8) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (6) s 1730 1724 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (527) s 214 1774 p m (16) s cmsy10.300 @sf 8 r m (\002) s cmr10.300 @sf 10 r m (6) s 508 1774 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (381) s 1451 1774 p m (12) s cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (4) s 1730 1774 p m (0) s cmmi10.300 @sf m (:) s cmr10.300 @sf m (547) s 210 1791 p 1710 2 ru 210 1865 p m (T) -2 (able) 12 (1:) 18 (Dep) 1 (endence) 16 (of) 13 (p) 1 (erformance) 14 (on) 14 (template) 13 (con\014guration) 13 (for) 14 (\014xed) 14 (n) 0 (um) -1 (b) 1 (er) 12 (of) 14 (pro) 1 (cessors) ks 210 1915 p m (\() s cmmi10.300 @sf m (M) s cmr10.300 @sf 16 r m (=) s cmmi10.300 @sf 12 r m (N) s cmr10.300 @sf 17 r m (=) 12 (2400\).) ks cmbx12.300 @sf 210 2084 p m (4.) s 272 2084 p m (Results) s cmr10.300 @sf 210 2195 p m (In) 16 (this) 16 (section) 16 (w) 0 (e) 16 (presen) 0 (t) 16 (p) 1 (erformance) 16 (results) 17 (of) 15 (the) 17 (parallel) 14 (matrix) 14 (transp) 1 (ose) 18 (algorithm) -1 (s) 14 (on) ks 210 2265 p m (the) 14 (In) 0 (tel) 13 (T) -2 (ouc) -1 (hstone) 13 (Delta) 13 (computer.) 18 (The) 14 (p) 1 (erformance) 13 (of) 13 (the) 14 (transp) 1 (ose) 15 (algorithms) 12 (cannot) 13 (b) 1 (e) ks 210 2335 p m (represen) 0 (ted) 16 (in) 14 (\015oating) 13 (p) 1 (oin) 0 (t) 13 (op) 1 (erations) 15 (p) 1 (er) 15 (second) 15 (\(\015ops\),) 15 (since) 15 (there) 16 (is) 14 (no) 14 (m) -1 (ulti) -1 (plicati) -1 (ons) 13 (or) ks 210 2404 p m (additions) 16 (in) 16 (the) 17 (transp) 1 (ose) 18 (algorithm) -1 (s.) 24 (The) 17 (algorithm) -1 (s) 15 (are) 17 (com) 0 (bi) -1 (ned) 15 (with) 16 (a) 17 (matrix) 14 (m) 0 (ul) -1 (tipli) -1 (-) ks 210 2474 p m (cation) 15 (routine) 15 (in) 15 (the) 15 (PUMMA) 16 (to) 15 (compute) ks cmbx10.300 @sf 14 r m (C) s cmr10.300 @sf 14 r m (=) s cmmi10.300 @sf 14 r m (\013) s cmbx10.300 @sf 7 r m (A) s cmmi7.300 @sf 1169 2460 p m (T) s cmsy10.300 @sf 1205 2474 p m (\001) s cmbx10.300 @sf 9 r m (B) s cmmi7.300 @sf 1260 2460 p m (T) s cmr10.300 @sf 1296 2474 p m (+) s cmmi10.300 @sf 11 r m (\014) s cmbx10.300 @sf 9 r m (C) s cmr10.300 @sf 16 r m (in) 14 (t) 0 (w) 0 (o) 13 (steps) 16 (\() ks cmbx10.300 @sf m (T) s cmsy10.300 @sf 14 r m (\() s cmmi10.300 @sf 13 r m (\013) s cmbx10.300 @sf 7 r m (B) s cmsy10.300 @sf 10 r m (\001) s cmbx10.300 @sf 9 r m (A) s cmr10.300 @sf m (;) s cmbx10.300 @sf 210 2544 p m (C) s cmsy10.300 @sf 12 r m (\() s cmbx10.300 @sf 11 r m (T) s cmmi7.300 @sf 342 2530 p m (T) s cmr10.300 @sf 376 2544 p m (+) s cmmi10.300 @sf 8 r m (\014) s cmbx10.300 @sf 10 r m (C) s cmr10.300 @sf m (\).) 18 (W) -2 (e) 12 (assume) 13 (that) ks cmmi10.300 @sf 13 r m (\013) s cmr10.300 @sf 11 r m (=) 12 (1) 13 (and) ks cmmi10.300 @sf 13 r m (\014) s cmr10.300 @sf 14 r m (=) 12 (0) 13 (in) 13 (our) 13 (test.) 19 (The) 14 (p) 1 (erformance) 13 (of) ks cmbx10.300 @sf 12 r m (A) s cmmi7.300 @sf 1765 2530 p m (T) s cmsy10.300 @sf 1799 2544 p m (\001) s cmbx10.300 @sf 8 r m (B) s cmmi7.300 @sf 1853 2530 p m (T) s cmr10.300 @sf 1892 2544 p m (is) s 210 2614 p m (compared) 13 (with) 14 (that) 14 (of) ks cmbx10.300 @sf 13 r m (A) s cmsy10.300 @sf 9 r m (\001) s cmbx10.300 @sf 9 r m (B) s cmr10.300 @sf m (.) s @eop 12 @bop0 cmmi10.300 @sf [ 33 28 -2 0 35] 75 @dc cmr10.300 @sf [<80E043F03F081C04> 14 4 -3 -24 21] 126 @dc cmmi10.300 @sf [<3E000043800081C00080E000E06000F07000707000203800003800003800003800001C00001C00 001C00001C00000E00000E00000E00000E00000700000700000700000700000380000380000380 0003800003C0007FF8> 21 29 -3 1 23] 74 @dc cmsy10.300 @sf [<00010003000600060006000C000C000C0018001800180030003000300060006000C000C000C001 8001800180030003000300060006000C000C000C00180018001800300030003000600060006000 C000C000> 16 41 -2 10 21] 110 @dc cmr10.300 @sf [<01800180018001804182F18F399C0FF003C003C00FF0399CF18F41820180018001800180> 16 18 -2 -13 21] 42 @dc cmmi10.300 @sf [ 18 28 -2 0 18] 73 @dc cmmi7.300 @sf [<380066004300C100C180C18060C060C060C060C030C038803700300018001800180018000C007C 00> 10 20 -2 0 15] 98 @dc 12 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (12) 14 (-) ks 138 360 p @beginspecial @setspecial 29272883 10853990 1644544 1644544 30917427 12498534 startTexFig %! %%BoundingBox: 25 25 470 190 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def /Proc_Grid{ /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /Helvetica-Oblique findfont Proc_PS scalefont setfont 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub dely mul P_Height sub add def 0 1 nx 1 sub { /colno exch def /X xpos colno delx mul add def X Y moveto P_Space 0 rlineto 0 P_Height rlineto stroke colno Q mod rowno P mod Q mul add 2 string cvs /T exch def X P_Space add 4 sub T stringwidth pop sub Y 1.5 add moveto T show } for } for } def /Proc_Grid2{ /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /Helvetica-Oblique findfont Proc_PS 1.2 mul scalefont setfont 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub dely mul P_Height sub add def 0 1 nx 1 sub { /colno exch def /X xpos colno delx mul add def X Y 4 sub moveto P_Space 1.4 mul 0 rlineto 0 P_Height 1.4 mul rlineto stroke colno Q mod rowno P mod Q mul add 2 string cvs /T exch def X P_Space add T stringwidth pop sub Y 1 sub moveto T show } for } for } def /Label_Grid2{ /Flag exch def /Label exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub 1 sub dely mul add 20 add def 0 1 nx 1 sub { /colno exch def /Times-Roman findfont Label_PS 1.4 mul scalefont setfont /X xpos colno delx mul add delx Label stringwidth pop sub 2 div add Label_Xshift add def X Y moveto Label show X Y moveto Label stringwidth pop 1 add Proc_PS .35 mul neg rmoveto /Times-Roman findfont Proc_PS 1.4 mul scalefont setfont Flag (T) eq { colno 2 string cvs show (,) show rowno 2 string cvs show (T) X 11 add Y 8 add moveto show } {rowno 2 string cvs show (,) show colno 2 string cvs show } ifelse } for } for } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.83 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.98 setgray fill grestore newpath } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def % % Ignore everything above % /M 30 def /N 30 def /r 5 def /s 5 def /P 3 def /Q 3 def /Del 5 def /Proc_PS 8 def /Label_PS 12 def /Label_Xshift -4 def /Label_Yshift 6 def /brsize r Del mul def /bcsize s Del mul def /X_Trans 60 def /Y_Trans 28 def /Sfac 1 def /Bmat { newpath -0.75 -0.75 moveto Del N mul 1.5 add 0 rlineto 0 Del M mul 1.5 add rlineto Del N mul 1.5 add neg 0 rlineto closepath clip newpath % Draw box of blocks 0 setlinewidth 0 0 moveto Del s mul 2 mul % Size of block in column direction Del r mul 2 mul % Size of block in row direction N s 2 mul div ceiling % Number of column blocks M r 2 mul div ceiling % Number of row blocks Grid 1.5 setlinewidth 0 0 moveto bcsize Q mul 2 mul % Size of template in column direction brsize Q mul 2 mul % Size of template in row direction N M Grid % Label blocks with processor number /Helvetica findfont Proc_PS 0.9 mul scalefont setfont (99) stringwidth pop 3 add /P_Space exch def Proc_PS 1.05 Proc_PS mul /P_Height exch def 0 setlinewidth 0 0 moveto Del s mul 2 mul % Size of block in column direction Del r mul 2 mul % Size of block in row direction N s 2 mul idiv % Number of column blocks M r 2 mul idiv % Number of row blocks Proc_Grid2 } def % % Translate and scale % % *************** FIGURE 1 ********************* X_Trans Y_Trans translate Sfac dup scale 2 setlinecap 0 setlinejoin 2 4 2 2 ShadeBigBox 4 2 2 2 ShadeBigBox 0 0 2 2 ShadeBigBox 4 4 2 2 ShadeBigBox2 0 2 2 2 ShadeBigBox2 2 0 2 2 ShadeBigBox2 gsave Bmat % Label blocks with block ID 0 0 moveto Del s mul 2 mul % Size of block in column direction Del r mul 2 mul % Size of block in row direction N s 2 mul idiv % Number of column blocks M r 2 mul idiv % Number of row blocks (A) % Label () Label_Grid2 55 115 35 95 1.5 5 10 arrow fill 105 115 35 45 1.5 5 10 arrow fill 105 65 85 45 1.5 5 10 arrow fill 45 85 65 105 1.5 5 10 arrow fill 45 35 115 105 1.5 5 10 arrow fill 95 35 115 55 1.5 5 10 arrow fill grestore /Times-Roman findfont 12 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -18 moveto show % *************** FIGURE 2 ********************* 220 0 translate 2 4 2 2 ShadeBigBox2 4 2 2 2 ShadeBigBox2 0 0 2 2 ShadeBigBox2 4 4 2 2 ShadeBigBox 0 2 2 2 ShadeBigBox 2 0 2 2 ShadeBigBox gsave Bmat 0 0 moveto Del s mul 2 mul % Size of block in column direction Del r mul 2 mul % Size of block in row direction N s 2 mul idiv % Number of column blocks M r 2 mul idiv % Number of row blocks (A) % Label (T) Label_Grid2 grestore newpath -55 76 -9 76 1 2.5 10 arrow fill /Times-Roman findfont 12 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -18 moveto show /Times-Roman findfont 10 scalefont setfont (transpose) -52 80 moveto show /Times-Roman findfont 8 scalefont setfont (T) dup stringwidth pop 2 div 3 bcsize mul 6 add exch sub -13 moveto show showpage end endTexFig @endspecial 210 1189 p m (Figure) 15 (13:) 20 (Matrix) 14 (transp) 1 (osition) 15 (when) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 19 r m (=) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 13 r m (=) s cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 14 r m (=) 14 (3.) 21 (Pro) 1 (cessors) 17 (transp) 1 (ose) 17 (3) 14 (\(=) ks cmmi10.300 @sf 14 r m (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) s 210 1239 p m (diagonal) 12 (blo) 1 (c) 0 (ks) 13 (at) 14 (one) 14 (step,) 14 (so) 14 (that) 14 (the) 15 (transp) 1 (osition) 13 (is) 14 (done) 14 (in) 14 (one) 14 (step.) ks 242 1444 p 1647 2 ru 242 1494 p 2 50 ru 1888 1494 p 2 50 ru 242 1543 p 2 50 ru 316 1528 p m (P) -2 (ARDO) ks cmmi10.300 @sf 13 r m (K) s cmr10.300 @sf 14 r m (=) 12 (1) ks cmmi10.300 @sf m (;) 7 (GC) 3 (D) ks 1888 1543 p 2 50 ru 242 1593 p 2 50 ru 399 1578 p m (g) s cmr10.300 @sf 13 r m (=) 12 (MOD) ks 578 1578 p m (\() s cmmi10.300 @sf m (q) s cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (p;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) s 1888 1593 p 2 50 ru 242 1643 p 2 50 ru 403 1628 p m (~) s cmmi10.300 @sf 399 1628 p m (p) s cmr10.300 @sf 431 1628 p m (=) 12 (MOD) ks 577 1628 p m (\() s cmmi10.300 @sf m (p) s cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 9 r m (g) 1 (;) 7 (P) ks cmr10.300 @sf 6 r m (\);) 16 (~) ks cmmi10.300 @sf 779 1628 p m (q) s cmr10.300 @sf 810 1628 p m (=) 12 (MOD) ks 956 1628 p m (\() s cmmi10.300 @sf m (q) s cmsy10.300 @sf 11 r m (\000) s cmmi10.300 @sf 9 r m (g) 1 (;) 7 (Q) ks cmr10.300 @sf m (\)) s 1888 1643 p 2 50 ru 242 1693 p 2 50 ru 399 1678 p m (DO) s cmmi10.300 @sf 14 r m (J) s cmr10.300 @sf 15 r m (=) 12 (0) ks cmmi10.300 @sf m (;) 7 (LC) 3 (M) 2 (=P) ks cmsy10.300 @sf 14 r m (\000) s cmr10.300 @sf 10 r m (1) s 1888 1693 p 2 50 ru 242 1743 p 2 50 ru cmmi10.300 @sf 482 1728 p m (K) s cmr10.300 @sf 14 r m (=) s cmmi10.300 @sf 12 r m (J) s cmsy10.300 @sf 136 r m (n) s cmr10.300 @sf m (*) 14 (Deterimine) ks cmmi10.300 @sf 13 r m (K) s cmr10.300 @sf 3 r m (-th) 14 (diagonal) 12 (blo) 1 (c) 0 (k) 12 (to) 14 (transp) 1 (ose) 15 (*) ks cmsy10.300 @sf m (n) s 1888 1743 p 2 50 ru 242 1792 p 2 50 ru cmr10.300 @sf 482 1777 p m (WHILE) 13 (\() 0 (MOD) ks 757 1777 p m (\() s cmmi10.300 @sf m (K) s cmsy10.300 @sf 12 r m (\000) s cmmi10.300 @sf 10 r m (g) 1 (;) 7 (P) ks cmr10.300 @sf 6 r m (\)) s cmsy10.300 @sf 11 r m (6) s cmr10.300 @sf m (=) 11 (0\)) 37 (DO) ks cmmi10.300 @sf 14 r m (K) s cmr10.300 @sf 15 r m (=) 12 (MOD) ks 1353 1777 p m (\() s cmmi10.300 @sf m (K) s cmr10.300 @sf 12 r m (+) s cmmi10.300 @sf 10 r m (Q;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) 13 (END) 14 (DO) ks 1888 1792 p 2 50 ru 242 1842 p 2 50 ru 482 1827 p m (DO) s cmmi10.300 @sf 14 r m (I) s cmr10.300 @sf 15 r m (=) 11 (0) ks cmmi10.300 @sf m (;) 7 (LC) 3 (M) 2 (=Q) ks cmsy10.300 @sf 9 r m (\000) s cmr10.300 @sf 9 r m (1) s 1888 1842 p 2 50 ru 242 1892 p 2 50 ru 564 1877 p m ([) 14 (Cop) 0 (y) 12 (ev) 0 (ery) 14 (\() ks cmmi10.300 @sf m (K) s cmr10.300 @sf 15 r m (:) s cmmi10.300 @sf 11 r m (N) s cmmi7.300 @sf 930 1883 p m (b) s cmr10.300 @sf 958 1877 p m (:) s cmmi10.300 @sf 11 r m (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)-th) 14 (diagonal) 12 (blo) 1 (c) 0 (ks) 13 (in) ks cmmi10.300 @sf 13 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 13 r m (to) 14 (T1) 14 (]) ks 1888 1892 p 2 50 ru 242 1942 p 2 50 ru 564 1927 p m ([) 14 (Mo) 0 (v) -1 (e) 12 (T1) 14 (from) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 13 r m (to) s cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 1101 1927 p m (p) s cmr10.300 @sf 1130 1927 p m (+) s cmmi10.300 @sf 10 r m (I) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 9 r m (GC) 3 (D) 1 (;) ks cmr10.300 @sf 9 r m (~) s cmmi10.300 @sf 1364 1927 p m (q) s cmsy10.300 @sf 1393 1927 p m (\000) s cmmi10.300 @sf 9 r m (J) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 14 r m (]) s 1888 1942 p 2 50 ru 242 1992 p 2 50 ru 564 1977 p m ([) 14 (Cop) 0 (y) 12 (the) 15 (receiv) 0 (ed) 14 (T1) 13 (to) ks cmbx10.300 @sf 14 r m (C) s cmr10.300 @sf 14 r m (]) s 1888 1992 p 2 50 ru 242 2042 p 2 50 ru cmmi10.300 @sf 564 2027 p m (K) s cmr10.300 @sf 15 r m (=) 12 (MOD) ks 760 2027 p m (\() s cmmi10.300 @sf m (K) s cmr10.300 @sf 13 r m (+) s cmmi10.300 @sf 9 r m (Q;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) s 1888 2042 p 2 50 ru 242 2091 p 2 50 ru 482 2076 p m (END) 14 (DO) ks 1888 2091 p 2 50 ru 242 2141 p 2 50 ru 399 2126 p m (END) 14 (DO) ks 1888 2141 p 2 50 ru 242 2191 p 2 50 ru 316 2176 p m (END) 14 (P) -2 (ARDO) ks 1888 2191 p 2 50 ru 242 2241 p 2 50 ru 1888 2241 p 2 50 ru 242 2243 p 1647 2 ru 210 2358 p m (Figure) 15 (14:) 20 (A) 15 (mo) 1 (di\014ed) 13 (matrix) 13 (transp) 1 (ose) 17 (algorithm) 12 (from) 13 (matrix) 13 (p) 1 (oin) 0 (t-of-vi) -1 (ew.) ks cmmi10.300 @sf 20 r m (GC) 3 (D) ks cmr10.300 @sf 16 r m (diagonal) s 210 2408 p m (blo) 1 (c) 0 (ks) 13 (are) 14 (transp) 1 (osed) 15 (sim) 0 (ul) -1 (taneously) -3 (.) ks @eop 11 @bop0 11 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (11) 14 (-) ks 275 124 p 1581 2 ru 275 174 p 2 50 ru 1855 174 p 2 50 ru 275 224 p 2 50 ru 349 209 p m (P) -2 (ARDO) ks cmmi10.300 @sf 13 r m (K) s cmr10.300 @sf 14 r m (=) 12 (1) ks cmmi10.300 @sf m (;) 7 (GC) 3 (D) ks 1855 224 p 2 50 ru 275 274 p 2 50 ru 432 259 p m (g) s cmr10.300 @sf 13 r m (=) 12 (MOD) ks 611 259 p m (\() s cmmi10.300 @sf m (q) s cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (p;) 7 (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) s 1855 274 p 2 50 ru 275 324 p 2 50 ru 435 309 p m (~) s cmmi10.300 @sf 432 309 p m (p) s cmr10.300 @sf 464 309 p m (=) 12 (MOD) ks 610 309 p m (\() s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) s cmmi10.300 @sf 10 r m (g) 1 (;) 7 (P) ks cmr10.300 @sf 6 r m (\);) 16 (~) ks cmmi10.300 @sf 812 309 p m (q) s cmr10.300 @sf 843 309 p m (=) 12 (MOD) ks 989 309 p m (\() s cmmi10.300 @sf m (q) s cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (g) 1 (;) 7 (Q) ks cmr10.300 @sf m (\)) s 1855 324 p 2 50 ru 275 374 p 2 50 ru 432 359 p m (DO) s cmmi10.300 @sf 14 r m (J) s cmr10.300 @sf 15 r m (=) 12 (0) ks cmmi10.300 @sf m (;) 7 (LC) 3 (M) 2 (=P) ks cmsy10.300 @sf 14 r m (\000) s cmr10.300 @sf 10 r m (1) s 1855 374 p 2 50 ru 275 423 p 2 50 ru 515 408 p m (DO) s cmmi10.300 @sf 13 r m (I) s cmr10.300 @sf 15 r m (=) 12 (0) ks cmmi10.300 @sf m (;) 7 (LC) 3 (M) 2 (=Q) ks cmsy10.300 @sf 9 r m (\000) s cmr10.300 @sf 9 r m (1) s 1855 423 p 2 50 ru 275 473 p 2 50 ru 597 458 p m ([) 14 (Cop) 0 (y) 12 (to) 14 (T1) 13 (\(in) 14 (condensed) 15 (and) 14 (transp) 1 (osed) 15 (form\)) 13 (all) 12 (blo) 1 (c) 0 (ks) 13 (of) ks cmbx10.300 @sf 14 r m (A) s 1855 473 p 2 50 ru 275 523 p 2 50 ru cmr10.300 @sf 621 508 p m (required) 15 (b) 0 (y) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 890 508 p m (p) s cmr10.300 @sf 920 508 p m (+) s cmmi10.300 @sf 10 r m (I) s cmsy10.300 @sf 12 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) 1 (;) ks cmr10.300 @sf 9 r m (~) s cmmi10.300 @sf 1154 508 p m (q) s cmsy10.300 @sf 1182 508 p m (\000) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 13 r m (]) s 1855 523 p 2 50 ru 275 573 p 2 50 ru 597 558 p m ([) 14 (Send) 14 (T1) 14 (to) ks cmmi10.300 @sf 13 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 888 558 p m (p) s cmr10.300 @sf 918 558 p m (+) s cmmi10.300 @sf 10 r m (I) s cmsy10.300 @sf 12 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) 1 (;) ks cmr10.300 @sf 9 r m (~) s cmmi10.300 @sf 1152 558 p m (q) s cmsy10.300 @sf 1180 558 p m (\000) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 13 r m (]) s 1855 573 p 2 50 ru 275 623 p 2 50 ru 597 608 p m ([) 14 (Receiv) 0 (e) 13 (T2) 14 (from) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 985 608 p m (p) s cmsy10.300 @sf 1014 608 p m (\000) s cmmi10.300 @sf 10 r m (I) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 9 r m (GC) 3 (D) 1 (;) ks cmr10.300 @sf 10 r m (~) s cmmi10.300 @sf 1248 608 p m (q) s cmr10.300 @sf 1277 608 p m (+) s cmmi10.300 @sf 9 r m (J) s cmsy10.300 @sf 13 r m (\002) s cmmi10.300 @sf 10 r m (GC) 3 (D) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (]) s 1855 623 p 2 50 ru 275 672 p 2 50 ru 597 657 p m ([) 14 (Cop) 0 (y) 12 (T2) 14 (to) ks cmbx10.300 @sf 13 r m (C) s cmr10.300 @sf 15 r m (]) s 1855 672 p 2 50 ru 275 722 p 2 50 ru 515 707 p m (END) 14 (DO) ks 1855 722 p 2 50 ru 275 772 p 2 50 ru 432 757 p m (END) 14 (DO) ks 1855 772 p 2 50 ru 275 822 p 2 50 ru 349 807 p m (END) 14 (P) -2 (ARDO) ks 1855 822 p 2 50 ru 275 872 p 2 50 ru 1855 872 p 2 50 ru 275 874 p 1581 2 ru 210 989 p m (Figure) 10 (11:) 16 (A) 10 (mo) 1 (di\014ed) 9 (matrix) 8 (transp) 1 (ose) 12 (algorithm) 8 (from) 8 (the) 11 (pro) 1 (cessor) 12 (p) 1 (oin) 0 (t-of-v) -1 (iew.) 15 (Op) 1 (erations) ks 210 1039 p m (of) s cmmi10.300 @sf 13 r m (GC) 3 (D) ks cmr10.300 @sf 15 r m (groups) 14 (of) 13 (pro) 1 (cessors) 16 (are) 15 (o) 0 (v) -1 (erlapp) 1 (ed.) ks 2 1076 p @beginspecial @setspecial 33548698 20063436 657817 1644544 34206515 21707980 startTexFig %! %%BoundingBox: 10 25 520 330 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def /Proc_Grid{ /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /Helvetica-Oblique findfont Proc_PS scalefont setfont 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub dely mul P_Height sub add 1 add def 0 1 nx 1 sub { /colno exch def /X xpos colno delx mul add def X Y moveto P_Space 1 sub 0 rlineto 0 P_Height 1 sub rlineto stroke colno Q mod rowno P mod Q mul add 2 string cvs /T exch def X P_Space add 2 sub T stringwidth pop sub Y 0.3 add moveto T show } for } for } def /Proc_Grid2{ /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /Helvetica-Oblique findfont Proc_PS2 scalefont setfont 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub dely mul P_Height sub add 1 add def 0 1 nx 1 sub { /colno exch def /X xpos colno delx mul add def colno Q mod rowno P mod Q mul add 2 string cvs /T exch def X P_Space 4 add add T stringwidth pop sub Y 7 sub moveto T show } for } for } def /Label_Local_Grid{ /Label exch def /pid exch def /bcpos exch brsize mul def /brpos exch bcsize mul def /Times-Roman findfont Label_PS scalefont setfont Label brpos 1 add bcpos 2 add moveto show /Times-Roman findfont Proc_PS scalefont setfont pid brpos 7 add bcpos 1 add moveto show } def /Label_Local_Grid2{ /Label exch def /pid exch def /bcpos exch brsize mul def /brpos exch bcsize mul def /Times-Roman findfont Label_PS scalefont setfont Label brpos 1 add bcpos 2 add moveto show /Times-Roman findfont Proc_PS scalefont setfont (T) brpos 7 add bcpos 5 add moveto show pid brpos 7 add bcpos 1 add moveto show } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.85 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.98 setgray fill grestore newpath } def /ShadeBigBox3{ /brleng exch brsize2 mul def /bcleng exch bcsize2 mul def brsize2 mul exch bcsize2 mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.87 setgray fill grestore newpath } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def % % Ignore everything above % /M 36 def /N 36 def /r 3 def /s 3 def /P 4 def /Q 6 def /Del 5 def /Proc_PS 6 def /Label_PS 9 def /Label_Xshift -4 def /Label_Yshift 6 def /brsize r Del mul def /bcsize s Del mul def /X_Trans 60 def /Y_Trans 130 def /Sfac 1 def /Amat { gsave newpath -0.75 -0.75 moveto Del N mul 1.5 add 0 rlineto 0 Del M mul 1.5 add rlineto Del N mul 1.5 add neg 0 rlineto closepath clip newpath % Draw box of blocks 0 setlinewidth 0 0 moveto Del s mul % Size of block in column direction Del r mul % Size of block in row direction N s div ceiling % Number of column blocks M r div ceiling % Number of row blocks Grid % Draw box of blocks 0.7 setlinewidth 0 0 moveto Del s mul Q mul % Size of template in column direction Del r mul P mul % Size of template in row direction N s div ceiling Q div ceiling % Number of column template blocks M r div ceiling P div ceiling % Number of row template blocks Grid 1.5 setlinewidth 0 0 moveto bcsize P mul Q mul 2 div % Size of template in column direction brsize P mul Q mul 2 div % Size of template in row direction N M Grid % Label blocks with processor number /Helvetica findfont Proc_PS 0.9 mul scalefont setfont (99) stringwidth pop 3 add /P_Space exch def Proc_PS 1.05 Proc_PS mul /P_Height exch def 0 setlinewidth 0 0 moveto Del s mul % Size of block in column direction Del r mul % Size of block in row direction N s idiv % Number of column blocks M r idiv % Number of row blocks Proc_Grid grestore } def /M2 20 def /N2 30 def /r2 5 def /s2 5 def /Del2 4 def /Proc_PS2 10 def /Label_PS2 9 def /Label_Xshift2 -4 def /Label_Yshift2 6 def /brsize2 r2 Del2 mul def /bcsize2 s2 Del2 mul def /Bmat { gsave newpath -0.75 -0.75 moveto Del2 N2 mul 1.5 add 0 rlineto 0 Del2 M2 mul 1.5 add rlineto Del2 N2 mul 1.5 add neg 0 rlineto closepath clip newpath % Draw box of blocks 0 setlinewidth 0 0 moveto Del2 s2 mul % Size of block in column direction Del2 r2 mul % Size of block in row direction N2 s2 div ceiling % Number of column blocks M2 r2 div ceiling % Number of row blocks Grid 1.5 setlinewidth 0 0 moveto bcsize2 Q mul brsize2 P mul N2 M2 Grid % Label blocks with processor number /Helvetica findfont Proc_PS 0.9 mul scalefont setfont (99) stringwidth pop 3 add /P_Space exch def Proc_PS 1.05 Proc_PS mul /P_Height exch def 0 setlinewidth 0 0 moveto Del2 s2 mul % Size of block in column direction Del2 r2 mul % Size of block in row direction N2 s2 idiv % Number of column blocks M2 r2 idiv % Number of row blocks Proc_Grid2 grestore } def % % Translate and scale % % *************** FIGURE 1 ********************* X_Trans Y_Trans translate 0 11 1 1 ShadeBigBox 1 10 1 1 ShadeBigBox 2 9 1 1 ShadeBigBox 3 8 1 1 ShadeBigBox 4 7 1 1 ShadeBigBox 5 6 1 1 ShadeBigBox 6 5 1 1 ShadeBigBox 7 4 1 1 ShadeBigBox 8 3 1 1 ShadeBigBox 9 2 1 1 ShadeBigBox 10 1 1 1 ShadeBigBox 11 0 1 1 ShadeBigBox 0 11 (0,0) (A) Label_Local_Grid 1 10 (1,1) (A) Label_Local_Grid 2 9 (2,2) (A) Label_Local_Grid 3 8 (3,3) (A) Label_Local_Grid 4 7 (4,4) (A) Label_Local_Grid 5 6 (5,5) (A) Label_Local_Grid 6 5 (6,6) (A) Label_Local_Grid 7 4 (7,7) (A) Label_Local_Grid 8 3 (8,8) (A) Label_Local_Grid 9 2 (9,9) (A) Label_Local_Grid 10 1 (10,10) (A) Label_Local_Grid 11 0 (11,11) (A) Label_Local_Grid Amat %/Times-Roman findfont 10 scalefont setfont %((a) zeroth diagonal (A(i,j), MOD(j-i,LCM)=0)) dup stringwidth pop 2 div 6 bcsize mul exch sub -15 moveto show % *************** FIGURE 2 ********************* 230 0 translate 0 0 1 1 ShadeBigBox 1 11 1 1 ShadeBigBox 2 10 1 1 ShadeBigBox 3 9 1 1 ShadeBigBox 4 8 1 1 ShadeBigBox 5 7 1 1 ShadeBigBox 6 6 1 1 ShadeBigBox 7 5 1 1 ShadeBigBox 8 4 1 1 ShadeBigBox 9 3 1 1 ShadeBigBox 10 2 1 1 ShadeBigBox 11 1 1 1 ShadeBigBox 0 10 1 1 ShadeBigBox2 1 9 1 1 ShadeBigBox2 2 8 1 1 ShadeBigBox2 3 7 1 1 ShadeBigBox2 4 6 1 1 ShadeBigBox2 5 5 1 1 ShadeBigBox2 6 4 1 1 ShadeBigBox2 7 3 1 1 ShadeBigBox2 8 2 1 1 ShadeBigBox2 9 1 1 1 ShadeBigBox2 10 0 1 1 ShadeBigBox2 11 11 1 1 ShadeBigBox2 0 0 (11,0) (A) Label_Local_Grid 1 11 (0,1) (A) Label_Local_Grid 2 10 (1,2) (A) Label_Local_Grid 3 9 (2,3) (A) Label_Local_Grid 4 8 (3,4) (A) Label_Local_Grid 5 7 (4,5) (A) Label_Local_Grid 6 6 (5,6) (A) Label_Local_Grid 7 5 (6,7) (A) Label_Local_Grid 8 4 (7,8) (A) Label_Local_Grid 9 3 (8,9) (A) Label_Local_Grid 10 2 (9,10) (A) Label_Local_Grid 11 1 (10,11) (A) Label_Local_Grid 0 10 (0,1) (A) Label_Local_Grid2 1 9 (1,2) (A) Label_Local_Grid2 2 8 (2,3) (A) Label_Local_Grid2 3 7 (3,4) (A) Label_Local_Grid2 4 6 (4,5) (A) Label_Local_Grid2 5 5 (5,6) (A) Label_Local_Grid2 6 4 (6,7) (A) Label_Local_Grid2 7 3 (7,8) (A) Label_Local_Grid2 8 2 (8,9) (A) Label_Local_Grid2 9 1 (9,10) (A) Label_Local_Grid2 10 0 (10,11) (A) Label_Local_Grid2 11 11 (11,0) (A) Label_Local_Grid2 Amat /Times-Roman findfont 10 scalefont setfont () -35 72 moveto show % *************** FIGURE 3 ********************* -200 -100 translate 0 3 1 1 ShadeBigBox3 0 1 1 1 ShadeBigBox3 1 2 1 1 ShadeBigBox3 1 0 1 1 ShadeBigBox3 2 3 1 1 ShadeBigBox3 2 1 1 1 ShadeBigBox3 3 2 1 1 ShadeBigBox3 3 0 1 1 ShadeBigBox3 4 3 1 1 ShadeBigBox3 4 1 1 1 ShadeBigBox3 5 2 1 1 ShadeBigBox3 5 0 1 1 ShadeBigBox3 Bmat /Times-Roman findfont 10 scalefont setfont ((a) transposing the zeroth wrapped block) dup stringwidth pop 2 div 4 bcsize mul exch sub -20 moveto show % *************** FIGURE 4 ********************* 230 0 translate 0 2 1 1 ShadeBigBox3 0 0 1 1 ShadeBigBox3 1 3 1 1 ShadeBigBox3 1 1 1 1 ShadeBigBox3 2 2 1 1 ShadeBigBox3 2 0 1 1 ShadeBigBox3 3 3 1 1 ShadeBigBox3 3 1 1 1 ShadeBigBox3 4 2 1 1 ShadeBigBox3 4 0 1 1 ShadeBigBox3 5 3 1 1 ShadeBigBox3 5 1 1 1 ShadeBigBox3 Bmat /Times-Roman findfont 10 scalefont setfont () -100 35 moveto show ((b) transposing the first wrapped block) dup stringwidth pop 2 div 4 bcsize mul exch sub -20 moveto show showpage end endTexFig @endspecial 210 2488 p m (Figure) 13 (12:) 17 (Tw) 0 (o) 11 (snapshots) 13 (of) 12 (matrix) 11 (transp) 1 (osition) 12 (for) 13 (transp) 1 (osing) 12 (the) 14 (zeroth) 13 (and) 13 (\014rst) 13 (wrapp) 1 (ed) ks 210 2538 p m (blo) 1 (c) 0 (k) 13 (diagonals,) 13 (when) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 18 r m (=) 13 (4,) ks cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 12 r m (=) 12 (6) 14 (and) ks cmmi10.300 @sf 15 r m (M) s cmmi7.300 @sf 1006 2544 p m (b) s cmr10.300 @sf 1035 2538 p m (=) s cmmi10.300 @sf 12 r m (N) s cmmi7.300 @sf 1112 2544 p m (b) s cmr10.300 @sf 1142 2538 p m (=) 12 (12.) 19 (In) 15 (this) 14 (example,) 13 (transp) 1 (osing) 14 (of) 14 (ev) 0 (en) ks 210 2588 p m (n) 0 (um) -2 (b) 1 (ered) 14 (wrapp) 1 (ed) 14 (blo) 1 (c) 0 (k) 13 (diagonals) 12 (can) 14 (b) 1 (e) 15 (o) 0 (v) -1 (erlapp) 1 (ed) 13 (with) 13 (that) 14 (of) 14 (o) 1 (dd) 13 (n) 0 (um) -1 (b) 1 (ered.) ks @eop 10 @bop0 10 @bop1 cmr10.300 @sf 1017 -39 p m (-) 13 (10) 14 (-) ks 2 291 p @beginspecial @setspecial 33548698 12827443 657817 1644544 34206515 14471987 startTexFig %! %%BoundingBox: 10 25 520 220 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 4 add def /brpos exch bcsize mul 2 sub def brpos bcpos moveto /Helvetica-Oblique findfont 9 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 5 add def /brpos exch bcsize mul 2 add def brpos bcpos moveto /Helvetica-Oblique findfont 9 scalefont setfont indx show } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.95 setgray fill grestore newpath } def /WriteBigName{ /pid exch def /bcpos exch brsize mul def /brpos exch bcsize mul 5 add def brpos bcpos moveto /Times-Roman findfont 20 scalefont setfont (P) show /Times-Roman findfont 14 scalefont setfont pid brpos 10 add bcpos 3 sub moveto show } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def % % Ignore everything above % /M 36 def /N 36 def /r 3 def /s 3 def /P 4 def /Q 6 def /Del 5 def /Proc_PS 6 def /Label_PS 9 def /Label_Xshift -4 def /Label_Yshift 6 def /brsize r Del mul def /bcsize s Del mul def /brows M r idiv ceiling def /bcols N s idiv ceiling def /X_Trans 60 def /Y_Trans 15 def /Sfac 1 def /Amat { gsave newpath -0.75 -0.75 moveto Del N mul 1.5 add 0 rlineto 0 Del M mul 1.5 add rlineto Del N mul 1.5 add neg 0 rlineto closepath clip newpath % Draw box of blocks 0 setlinewidth 0 0 moveto Del s mul % Size of block in column direction Del r mul % Size of block in row direction N s div ceiling % Number of column blocks M r div ceiling % Number of row blocks Grid % Draw box of blocks 0.7 setlinewidth 0 0 moveto bcsize 3 mul 2 mul 3 div % Size of template in column direction brsize 3 mul 2 mul 2 div % Size of template in row direction N M Grid 1.3 setlinewidth 0 0 moveto bcsize P mul Q mul 2 div % Size of template in column direction brsize P mul Q mul 2 div % Size of template in row direction N M Grid grestore } def % % Translate and scale % % *************** FIGURE 1 ********************* X_Trans Y_Trans translate 0 9 2 3 ShadeBigBox 2 9 2 3 ShadeBigBox2 0 10 ( 0) WriteBigName 0 7 ( 6) WriteBigName 0 4 (12) WriteBigName 0 1 (18) WriteBigName 2 10 ( 1) WriteBigName 2 7 ( 7) WriteBigName 2 4 (13) WriteBigName 2 1 (19) WriteBigName 4 10 ( 2) WriteBigName 4 7 ( 8) WriteBigName 4 4 (14) WriteBigName 4 1 (20) WriteBigName 6 10 ( 3) WriteBigName 6 7 ( 9) WriteBigName 6 4 (15) WriteBigName 6 1 (21) WriteBigName 8 10 ( 4) WriteBigName 8 7 (10) WriteBigName 8 4 (16) WriteBigName 8 1 (22) WriteBigName 10 10 ( 5) WriteBigName 10 7 (11) WriteBigName 10 4 (17) WriteBigName 10 1 (21) WriteBigName -1 11 ( 0) WriteRowIndex -1 10 ( 4) WriteRowIndex -1 9 ( 8) WriteRowIndex -1 8 ( 1) WriteRowIndex -1 7 ( 5) WriteRowIndex -1 6 ( 9) WriteRowIndex -1 5 ( 2) WriteRowIndex -1 4 ( 6) WriteRowIndex -1 3 ( 10) WriteRowIndex -1 2 ( 3) WriteRowIndex -1 1 ( 7) WriteRowIndex -1 0 ( 11) WriteRowIndex 0 12 ( 0) WriteColIndex 1 12 ( 6) WriteColIndex 2 12 ( 1) WriteColIndex 3 12 ( 7) WriteColIndex 4 12 ( 2) WriteColIndex 5 12 ( 8) WriteColIndex 6 12 ( 3) WriteColIndex 7 12 ( 9) WriteColIndex 8 12 ( 4) WriteColIndex 9 12 (10) WriteColIndex 10 12 ( 5) WriteColIndex 11 12 (11) WriteColIndex Amat newpath 188 89 236 89 2 4 10 arrow fill % *************** FIGURE 2 ********************* 250 0 translate 0 11 1 1 ShadeBigBox 0 4 1 1 ShadeBigBox 8 11 1 1 ShadeBigBox 8 4 1 1 ShadeBigBox 5 11 1 1 ShadeBigBox 5 4 1 1 ShadeBigBox 0 8 1 1 ShadeBigBox2 0 1 1 1 ShadeBigBox2 8 8 1 1 ShadeBigBox2 8 1 1 1 ShadeBigBox2 5 8 1 1 ShadeBigBox2 5 1 1 1 ShadeBigBox2 0 10 ( 0) WriteBigName 0 7 ( 6) WriteBigName 0 4 (12) WriteBigName 0 1 (18) WriteBigName 2 10 ( 1) WriteBigName 2 7 ( 7) WriteBigName 2 4 (13) WriteBigName 2 1 (19) WriteBigName 4 10 ( 2) WriteBigName 4 7 ( 8) WriteBigName 4 4 (14) WriteBigName 4 1 (20) WriteBigName 6 10 ( 3) WriteBigName 6 7 ( 9) WriteBigName 6 4 (15) WriteBigName 6 1 (21) WriteBigName 8 10 ( 4) WriteBigName 8 7 (10) WriteBigName 8 4 (16) WriteBigName 8 1 (22) WriteBigName 10 10 ( 5) WriteBigName 10 7 (11) WriteBigName 10 4 (17) WriteBigName 10 1 (21) WriteBigName -1 11 ( 0) WriteRowIndex -1 10 ( 4) WriteRowIndex -1 9 ( 8) WriteRowIndex -1 8 ( 1) WriteRowIndex -1 7 ( 5) WriteRowIndex -1 6 ( 9) WriteRowIndex -1 5 ( 2) WriteRowIndex -1 4 ( 6) WriteRowIndex -1 3 ( 10) WriteRowIndex -1 2 ( 3) WriteRowIndex -1 1 ( 7) WriteRowIndex -1 0 ( 11) WriteRowIndex 0 12 ( 0) WriteColIndex 1 12 ( 6) WriteColIndex 2 12 ( 1) WriteColIndex 3 12 ( 7) WriteColIndex 4 12 ( 2) WriteColIndex 5 12 ( 8) WriteColIndex 6 12 ( 3) WriteColIndex 7 12 ( 9) WriteColIndex 8 12 ( 4) WriteColIndex 9 12 (10) WriteColIndex 10 12 ( 5) WriteColIndex 11 12 (11) WriteColIndex Amat showpage end endTexFig @endspecial 525 1269 p m (Figure) 14 (9:) 18 (A) 14 (matrix) 12 (transp) 1 (ose) 15 (example) 13 (on) 13 (a) 14 (4) ks cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (6) 14 (template.) ks 263 1431 p @beginspecial @setspecial 25325977 12695879 0 0 25325977 12695879 startTexFig %!PS-Adobe-2.0 EPSF-1.2 %%DocumentFonts: Times-Italic Times-Bold %%Pages: 1 %%BoundingBox: 0 0 385 193 %%EndComments /arrowHeight 10 def /arrowWidth 5 def /IdrawDict 52 dict def IdrawDict begin /reencodeISO { dup dup findfont dup length dict begin { 1 index /FID ne { def }{ pop pop } ifelse } forall /Encoding ISOLatin1Encoding def currentdict end definefont } def /ISOLatin1Encoding [ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright /parenleft/parenright/asterisk/plus/comma/minus/period/slash /zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon /less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N /O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright /asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m /n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve /dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut /ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar /section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot /hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior /acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine /guillemotright/onequarter/onehalf/threequarters/questiondown /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute /Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis /aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave /iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex /otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis /yacute/thorn/ydieresis ] def /Times-Italic reencodeISO def /Times-Bold reencodeISO def /none null def /numGraphicParameters 17 def /stringLimit 65535 def /Begin { save numGraphicParameters dict begin } def /End { end restore } def /SetB { dup type /nulltype eq { pop false /brushRightArrow idef false /brushLeftArrow idef true /brushNone idef } { /brushDashOffset idef /brushDashArray idef 0 ne /brushRightArrow idef 0 ne /brushLeftArrow idef /brushWidth idef false /brushNone idef } ifelse } def /SetCFg { /fgblue idef /fggreen idef /fgred idef } def /SetCBg { /bgblue idef /bggreen idef /bgred idef } def /SetF { /printSize idef /printFont idef } def /SetP { dup type /nulltype eq { pop true /patternNone idef } { dup -1 eq { /patternGrayLevel idef /patternString idef } { /patternGrayLevel idef } ifelse false /patternNone idef } ifelse } def /BSpl { 0 begin storexyn newpath n 1 gt { 0 0 0 0 0 0 1 1 true subspline n 2 gt { 0 0 0 0 1 1 2 2 false subspline 1 1 n 3 sub { /i exch def i 1 sub dup i dup i 1 add dup i 2 add dup false subspline } for n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline } if n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if brushNone not { istroke } if 0 0 1 1 leftarrow n 2 sub dup n 1 sub dup rightarrow } if end } dup 0 4 dict put def /Circ { newpath 0 360 arc patternNone not { ifill } if brushNone not { istroke } if } def /CBSpl { 0 begin dup 2 gt { storexyn newpath n 1 sub dup 0 0 1 1 2 2 true subspline 1 1 n 3 sub { /i exch def i 1 sub dup i dup i 1 add dup i 2 add dup false subspline } for n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline n 2 sub dup n 1 sub dup 0 0 1 1 false subspline patternNone not { ifill } if brushNone not { istroke } if } { Poly } ifelse end } dup 0 4 dict put def /Elli { 0 begin newpath 4 2 roll translate scale 0 0 1 0 360 arc patternNone not { ifill } if brushNone not { istroke } if end } dup 0 1 dict put def /Line { 0 begin 2 storexyn newpath x 0 get y 0 get moveto x 1 get y 1 get lineto brushNone not { istroke } if 0 0 1 1 leftarrow 0 0 1 1 rightarrow end } dup 0 4 dict put def /MLine { 0 begin storexyn newpath n 1 gt { x 0 get y 0 get moveto 1 1 n 1 sub { /i exch def x i get y i get lineto } for patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if brushNone not { istroke } if 0 0 1 1 leftarrow n 2 sub dup n 1 sub dup rightarrow } if end } dup 0 4 dict put def /Poly { 3 1 roll newpath moveto -1 add { lineto } repeat closepath patternNone not { ifill } if brushNone not { istroke } if } def /Rect { 0 begin /t exch def /r exch def /b exch def /l exch def newpath l b moveto l t lineto r t lineto r b lineto closepath patternNone not { ifill } if brushNone not { istroke } if end } dup 0 4 dict put def /Text { ishow } def /idef { dup where { pop pop pop } { exch def } ifelse } def /ifill { 0 begin gsave patternGrayLevel -1 ne { fgred bgred fgred sub patternGrayLevel mul add fggreen bggreen fggreen sub patternGrayLevel mul add fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor eofill } { eoclip originalCTM setmatrix pathbbox /t exch def /r exch def /b exch def /l exch def /w r l sub ceiling cvi def /h t b sub ceiling cvi def /imageByteWidth w 8 div ceiling cvi def /imageHeight h def bgred bggreen bgblue setrgbcolor eofill fgred fggreen fgblue setrgbcolor w 0 gt h 0 gt and { l b translate w h scale w h true [w 0 0 h neg 0 h] { patternproc } imagemask } if } ifelse grestore end } dup 0 8 dict put def /istroke { gsave brushDashOffset -1 eq { [] 0 setdash 1 setgray } { brushDashArray brushDashOffset setdash fgred fggreen fgblue setrgbcolor } ifelse brushWidth setlinewidth originalCTM setmatrix stroke grestore } def /ishow { 0 begin gsave fgred fggreen fgblue setrgbcolor /fontDict printFont printSize scalefont dup setfont def /descender fontDict begin 0 [FontBBox] 1 get FontMatrix end transform exch pop def /vertoffset 1 printSize sub descender sub def { 0 vertoffset moveto show /vertoffset vertoffset printSize sub def } forall grestore end } dup 0 3 dict put def /patternproc { 0 begin /patternByteLength patternString length def /patternHeight patternByteLength 8 mul sqrt cvi def /patternWidth patternHeight def /patternByteWidth patternWidth 8 idiv def /imageByteMaxLength imageByteWidth imageHeight mul stringLimit patternByteWidth sub min def /imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv patternHeight mul patternHeight max def /imageHeight imageHeight imageMaxHeight sub store /imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def 0 1 imageMaxHeight 1 sub { /y exch def /patternRow y patternByteWidth mul patternByteLength mod def /patternRowString patternString patternRow patternByteWidth getinterval def /imageRow y imageByteWidth mul def 0 patternByteWidth imageByteWidth 1 sub { /x exch def imageString imageRow x add patternRowString putinterval } for } for imageString end } dup 0 12 dict put def /min { dup 3 2 roll dup 4 3 roll lt { exch } if pop } def /max { dup 3 2 roll dup 4 3 roll gt { exch } if pop } def /midpoint { 0 begin /y1 exch def /x1 exch def /y0 exch def /x0 exch def x0 x1 add 2 div y0 y1 add 2 div end } dup 0 4 dict put def /thirdpoint { 0 begin /y1 exch def /x1 exch def /y0 exch def /x0 exch def x0 2 mul x1 add 3 div y0 2 mul y1 add 3 div end } dup 0 4 dict put def /subspline { 0 begin /movetoNeeded exch def y exch get /y3 exch def x exch get /x3 exch def y exch get /y2 exch def x exch get /x2 exch def y exch get /y1 exch def x exch get /x1 exch def y exch get /y0 exch def x exch get /x0 exch def x1 y1 x2 y2 thirdpoint /p1y exch def /p1x exch def x2 y2 x1 y1 thirdpoint /p2y exch def /p2x exch def x1 y1 x0 y0 thirdpoint p1x p1y midpoint /p0y exch def /p0x exch def x2 y2 x3 y3 thirdpoint p2x p2y midpoint /p3y exch def /p3x exch def movetoNeeded { p0x p0y moveto } if p1x p1y p2x p2y p3x p3y curveto end } dup 0 17 dict put def /storexyn { /n exch def /y n array def /x n array def n 1 sub -1 0 { /i exch def y i 3 2 roll put x i 3 2 roll put } for } def %%EndProlog %%BeginIdrawPrologue /arrowhead { 0 begin transform originalCTM itransform /taily exch def /tailx exch def transform originalCTM itransform /tipy exch def /tipx exch def /dy tipy taily sub def /dx tipx tailx sub def /angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def gsave originalCTM setmatrix tipx tipy translate angle rotate newpath arrowHeight neg arrowWidth 2 div moveto 0 0 lineto arrowHeight neg arrowWidth 2 div neg lineto patternNone not { originalCTM setmatrix /padtip arrowHeight 2 exp 0.25 arrowWidth 2 exp mul add sqrt brushWidth mul arrowWidth div def /padtail brushWidth 2 div def tipx tipy translate angle rotate padtip 0 translate arrowHeight padtip add padtail add arrowHeight div dup scale arrowheadpath ifill } if brushNone not { originalCTM setmatrix tipx tipy translate angle rotate arrowheadpath istroke } if grestore end } dup 0 9 dict put def /arrowheadpath { newpath arrowHeight neg arrowWidth 2 div moveto 0 0 lineto arrowHeight neg arrowWidth 2 div neg lineto } def /leftarrow { 0 begin y exch get /taily exch def x exch get /tailx exch def y exch get /tipy exch def x exch get /tipx exch def brushLeftArrow { tipx tipy tailx taily arrowhead } if end } dup 0 4 dict put def /rightarrow { 0 begin y exch get /tipy exch def x exch get /tipx exch def y exch get /taily exch def x exch get /tailx exch def brushRightArrow { tipx tipy tailx taily arrowhead } if end } dup 0 4 dict put def %%EndIdrawPrologue %I Idraw 10 Grid 10 10 %%Page: 1 1 Begin %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 0.799705 0 0 0.799705 0 0 ] concat /originalCTM matrix currentmatrix def Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 48.55 226.45 ] concat %I [ (p, q) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 120.55 122.45 ] concat %I [ (p+GCD, q) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 120.55 82.45 ] concat %I [ (p+2 GCD, q) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 136.55 162.45 ] concat %I [ (p, q) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 240.55 162.45 ] concat %I [ (p, q+GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 122.45 ] concat %I [ (p+GCD, q+GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 82.45 ] concat %I [ (p+2 GCD, q+GCD) ] Text End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -50.65 -211.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -50.65 -147.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -50.65 -107.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -50.65 -67.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -210.65 -107.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -210.65 -67.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -210.65 -147.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -210.65 -211.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -330.65 -67.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -330.65 -107.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -330.65 -147.15 ] concat %I 594 284 70 20 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -330.65 -211.15 ] concat %I 594 284 70 20 Elli End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 135.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 123.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 274.95 87.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 162.95 127.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 95.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 19.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 266.95 127.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 146.95 167.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 31.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 175.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 250.95 167.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 87.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 83.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 163.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 187.75 23.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 127.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 120.55 127.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 170.95 87.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 240.55 167.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 136.55 167.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 120.55 87.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 104.55 23.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 31.25 ] concat %I [ (~) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 19.25 ] concat %I [ (~) ] Text End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.8 0 0 0.8 -73.45 -197.95 ] concat %I 163 528 70 20 Elli End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 327.75 167.25 ] concat %I [ (. . . . . . ) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 327.75 23.25 ] concat %I [ (. . . . . . ) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 327.75 87.25 ] concat %I [ (. . . . . . ) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 327.75 127.25 ] concat %I [ (. . . . . . ) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 142.95 58.45 ] concat %I [ (:) (:) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 422.95 58.45 ] concat %I [ (:) (:) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-bold-r-*-140-* Times-Bold 14 SetF %I t [ 0.8 0 0 0.8 262.95 58.45 ] concat %I [ (:) (:) ] Text End Begin %I BSpl %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.4 0 0 0.4 -18.25 -29.15 ] concat %I 3 267 473 187 473 187 593 3 BSpl %I 2 End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 104.55 18.45 ] concat %I [ (p+\(LCM/Q\)GCD, q) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 224.55 26.45 ] concat %I [ (p + \(LCM/Q\)GCD, ) (q+GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 28.05 ] concat %I [ (p+\(LCM/Q\)GCD, ) (q+\(LCM/P\) GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 91.25 ] concat %I [ (p+2 GCD, ) (q+\(LCM/P\) GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 131.25 ] concat %I [ (p+GCD, ) (q+\(LCM/P\) GCD) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-i-*-140-* Times-Italic 14 SetF %I t [ 0.8 0 0 0.8 384.55 171.25 ] concat %I [ (p, ) (q+\(LCM/P\) GCD) ] Text End End %I eop End %I eop showpage %%Trailer end endTexFig @endspecial 210 2376 p m (Figure) 14 (10:) 17 (Pro) 1 (cessor) 15 (map) 12 (for) 13 (comm) -2 (unication.) 15 (A) 14 (pro) 1 (cessor) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 13 r m (starts) 14 (to) 13 (comm) -2 (unicate) 12 (with) ks cmmi10.300 @sf 210 2426 p m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 259 2426 p m (p) s 279 2426 p m (;) s cmr10.300 @sf 10 r m (~) s cmmi10.300 @sf 298 2426 p m (q) s cmsy10.300 @sf 318 2426 p m (i) s cmr10.300 @sf m (,) 12 (then) 12 (it) 11 (comm) -1 (uni) -1 (cates) 11 (with) 12 (other) 12 (pro) 1 (cessors,) 14 (whose) 12 (v) 0 (ertical) 11 (and) 11 (horizon) 0 (tal) 10 (in) 0 (terv) -1 (al) -1 (s) 10 (are) ks cmmi10.300 @sf 210 2476 p m (GC) 3 (D) ks cmr10.300 @sf 15 r m (from) s cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 472 2476 p m (p) s 492 2476 p m (;) s cmr10.300 @sf 10 r m (~) s cmmi10.300 @sf 511 2476 p m (q) s cmsy10.300 @sf 531 2476 p m (i) s cmr10.300 @sf m (.) s @eop 9 @bop0 cmmi7.300 @sf [<80404020202060E040> 3 9 -3 6 10] 59 @dc [<3F80060006000600030003003B0067004380C180C180C18060C060C060C030C010E008E00720> 11 19 -2 6 15] 113 @dc cmr10.300 @sf [<3078F8B08080804040201008> 5 12 -3 -17 12] 96 @dc cmmi10.300 @sf [<1F8060608030F010F0187018201C003803F80FF00FE01F001C00180C0C0E0404060C01F0> 15 18 -2 0 19] 115 @dc [<0F00188038403840382038201C001C001C001C000E000E000E000E00070007000700FFF0038003 800380038001C001C001C000C0> 12 26 0 0 15] 116 @dc [<1E0E00319900607880E03880E03880E03880E01C00E01C00E01C00E01C00700E00700E00300E00 380E00180F000C0F0007170001E300> 17 18 -2 0 22] 97 @dc [<3000700038003800380038001C001C001C001C000E000E008E0C8E1E470F46874E42383C> 16 18 -2 0 19] 114 @dc [<38006400E400E400E400E400700070007000700038003800380038001C001C001C001C000E000E 000E000E000700070007000700038003801F80> 9 29 -2 0 12] 108 @dc [<3003003870070064380380E2380380E138038071380380711C01C0701C01C0381C01C0381C01C0 380E00E01C0E00E01C8E00E01C8F00F01C4680F01C4640E81C4E20C618381F81F0> 32 18 -2 0 36] 109 @dc [<300380700640380E20380E103807103807101C07001C03801C03801C03800E01C00E01C08E01C0 8F01C04701C04681C04E6180381F00> 20 18 -2 0 25] 110 @dc [<07C00C201C101808180818041C041C021C021C020E010E01870187014703470727071C02> 16 18 -2 0 20] 118 @dc [<78780084C600E58100F38100F3808063808001C00001C00001C00001C00000E00000E00040E180 20E3C020F1E010F0C008C840078780> 19 18 -2 0 24] 120 @dc [<3E0000418000E0C000F06000F03000603800001800001C0007DC000C3C001C1E00180E00180E00 180E001C07001C07001C07001C07000E03800E03808703808703804701C04701C02701C01C00C0> 18 26 -2 8 20] 121 @dc 1.000000 /cmr7.300 @newfont cmr7.300 @sf [<0F0030C0606060604020C030C030C030C030C030C030C030C030C03040206060606030C00F00> 12 19 -2 0 17] 48 @dc [ 12 19 -2 0 17] 50 @dc [ 10 19 -3 0 17] 49 @dc [<1F0021C040E0E060E070E07000700070006040E070C04F0040004000400044007F807FC06060> 12 19 -2 0 17] 53 @dc [<03FC00600060006000600060FFFCC06060602060106008600C6006600260016000E000E00060> 14 19 -1 0 17] 52 @dc cmbx10.300 @sf [<07F8001FFE00781F00780F80FC07C0FC07E0FC07E07807E03007E00007E00007C00007C0000F80 001E0003F800003C00001E00000F80000F803807C07C07C07E07C07C07C03C0F803C1F001FFE00 03F800> 19 27 -2 0 24] 51 @dc [<78FCFCFCFC78> 6 6 -3 0 13] 46 @dc [ 19 27 -2 0 24] 50 @dc [<0FE1F83E13F8780BC0F807C0F807C0F807C07C07C03C07C01F07C007E7C0007FC00007C01C07C0 3E07C03E07803E0F801C1E000FF800> 21 18 -1 0 23] 97 @dc [<78FCFCFCFC7800000000000078FCFCFCFC78> 6 18 -3 0 13] 58 @dc [ 17 18 -1 0 20] 114 @dc [ 11 30 -1 0 14] 105 @dc [<00300000780000780000FC0000FC0001FE0001F60001F60003E30003E30007C18007C1800FC0C0 0F80C01F80E01F0060FFC1FCFFC1FC> 22 18 -1 0 25] 118 @dc [<3E0000730000F98000F8C000F8600070600000700000300000300000780000780000FC0000FC00 00FE0001F60001F70003E30003E30007C18007C1800FC0C00F80C01F80E01F0060FFC1FCFFC1FC> 22 26 -1 8 25] 121 @dc [ 23 26 -1 8 27] 112 @dc 9 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (9) 13 (-) ks 243 107 p 1644 2 ru 243 157 p 2 50 ru 1886 157 p 2 50 ru 243 206 p 2 50 ru 318 191 p m (DO) s cmmi10.300 @sf 14 r m (J) s cmr10.300 @sf 16 r m (=) 11 (0) ks cmmi10.300 @sf m (;) 7 (Q) ks cmsy10.300 @sf 9 r m (\000) s cmr10.300 @sf 9 r m (1) s 1886 206 p 2 50 ru 243 256 p 2 50 ru cmmi10.300 @sf 401 241 p m (K) s cmr10.300 @sf 15 r m (=) s cmmi10.300 @sf 11 r m (J) s cmsy10.300 @sf 136 r m (n) s cmr10.300 @sf m (*) 14 (Deterimine) ks cmmi10.300 @sf 13 r m (K) s cmr10.300 @sf 3 r m (-th) 14 (diagonal) 12 (blo) 1 (c) 0 (k) 12 (to) 14 (transp) 1 (ose) 15 (*) ks cmsy10.300 @sf m (n) s 1886 256 p 2 50 ru 243 306 p 2 50 ru cmr10.300 @sf 401 291 p m (WHILE) 14 (\() 0 (MOD) ks 676 291 p m (\() s cmmi10.300 @sf m (K) 1 (;) 7 (P) ks cmr10.300 @sf 6 r m (\)) s cmsy10.300 @sf 10 r m (6) s cmr10.300 @sf m (=) 12 (0\)) 37 (DO) ks cmmi10.300 @sf 14 r m (K) s cmr10.300 @sf 15 r m (=) 11 (MOD) ks 1197 291 p m (\() s cmmi10.300 @sf m (K) s cmr10.300 @sf 13 r m (+) s cmmi10.300 @sf 10 r m (Q;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) 13 (END) 13 (DO) ks 1886 306 p 2 50 ru 243 356 p 2 50 ru 401 341 p m (DO) s cmmi10.300 @sf 14 r m (I) s cmr10.300 @sf 15 r m (=) 11 (0) ks cmmi10.300 @sf m (;) 7 (P) ks cmsy10.300 @sf 14 r m (\000) s cmr10.300 @sf 10 r m (1) s 1886 356 p 2 50 ru 243 406 p 2 50 ru 483 391 p m ([) 14 (Cop) 0 (y) 12 (ev) 0 (ery) 14 (\() ks cmmi10.300 @sf m (K) s cmr10.300 @sf 15 r m (:) s cmmi10.300 @sf 11 r m (N) s cmmi7.300 @sf 849 397 p m (b) s cmr10.300 @sf 877 391 p m (:) s cmmi10.300 @sf 11 r m (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)-th) 14 (wrapp) 1 (ed) 15 (diagonal) 12 (blo) 1 (c) 0 (ks) 13 (in) ks cmmi10.300 @sf 13 r m (P) s cmmi7.300 @sf 1626 397 p m (p;q) s cmr10.300 @sf 1685 391 p m (to) 14 (T1) 13 (]) ks 1886 406 p 2 50 ru 243 455 p 2 50 ru 483 440 p m ([) 14 (Mo) 0 (v) -1 (e) 13 (T1) 13 (from) ks cmmi10.300 @sf 12 r m (P) s cmmi7.300 @sf 809 446 p m (p;q) s cmr10.300 @sf 868 440 p m (to) s cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 8 r m (+) s cmmi10.300 @sf 10 r m (I) 3 (;) 7 (q) ks cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 14 r m (]) s 1886 455 p 2 50 ru 243 505 p 2 50 ru 483 490 p m ([) 14 (Cop) 0 (y) 12 (the) 15 (receiv) 0 (ed) 14 (T1) 14 (to) ks cmbx10.300 @sf 13 r m (C) s cmr10.300 @sf 15 r m (]) s 1886 505 p 2 50 ru 243 555 p 2 50 ru cmmi10.300 @sf 483 540 p m (K) s cmr10.300 @sf 15 r m (=) 12 (MOD) ks 679 540 p m (\() s cmmi10.300 @sf m (K) s cmr10.300 @sf 13 r m (+) s cmmi10.300 @sf 9 r m (Q;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) s 1886 555 p 2 50 ru 243 605 p 2 50 ru 401 590 p m (END) 14 (DO) ks 1886 605 p 2 50 ru 243 655 p 2 50 ru 318 640 p m (END) 14 (DO) ks 1886 655 p 2 50 ru 243 705 p 2 50 ru 1886 705 p 2 50 ru 243 707 p 1644 2 ru 210 822 p m (Figure) 17 (8:) 22 (A) 17 (parallel) 15 (matrix) 15 (transp) 1 (ose) 17 (algorithm) 14 (from) 15 (the) 17 (matrix) 14 (p) 1 (oin) 0 (t-of-vi) -1 (ew,) 15 (when) ks cmmi10.300 @sf 17 r m (P) s cmr10.300 @sf 22 r m (and) s cmmi10.300 @sf 210 872 p m (Q) s cmr10.300 @sf 15 r m (are) 16 (relativ) 0 (ely) 13 (prime.) 21 (One) 17 (diagonal) 13 (blo) 1 (c) 0 (k) 14 (is) 15 (transp) 1 (osed) 17 (at) 15 (one) 15 (step.) 24 (The) 15 (`While') 14 (statemen) 0 (t) ks 210 922 p m (should) 15 (b) 1 (e) 16 (executed) 17 (un) 0 (til) 13 (MOD) ks 775 922 p m (\() s cmmi10.300 @sf m (K) 1 (;) 7 (P) ks cmr10.300 @sf 6 r m (\)) 14 (b) 1 (ecomes) 15 (0.) 22 (\() ks cmmi10.300 @sf m (star) 1 (t) ks cmr10.300 @sf 14 r m (:) s cmmi10.300 @sf 13 r m (l) 1 (imit) ks cmr10.300 @sf 15 r m (:) s cmmi10.300 @sf 13 r m (intv) s cmr10.300 @sf 1 r m (\)) 16 (represen) 0 (ts) 16 (v) -1 (alues) 14 (of) ks cmmi10.300 @sf 15 r m (x) s cmr10.300 @sf m (,) s 210 972 p m (where) s cmmi10.300 @sf 15 r m (x) s cmr10.300 @sf 11 r m (=) s cmmi10.300 @sf 12 r m (star) 1 (t) ks cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 9 r m (intv) s cmsy10.300 @sf 11 r m (\001) s cmmi10.300 @sf 9 r m (y) s cmr10.300 @sf 1 r m (,) s cmmi10.300 @sf 14 r m (y) s cmr10.300 @sf 13 r m (=) 12 (0) ks cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (1) s cmmi10.300 @sf m (;) s cmsy10.300 @sf 7 r m (\001) 7 (\001) 7 (\001) ks cmr10.300 @sf 908 972 p m (,) 13 (and) ks cmmi10.300 @sf 14 r m (x) s cmr10.300 @sf 14 r m (can't) 14 (exceed) ks cmmi10.300 @sf 15 r m (l) 1 (imit) ks cmr10.300 @sf m (.) s 210 1104 p m (to) 16 (an) 17 (in-place) 16 (transp) 1 (ose) 17 (of) 16 (the) 17 (diagonal) 15 (blo) 1 (c) 0 (ks) 15 (of) ks cmbx10.300 @sf 16 r m (A) s cmr10.300 @sf 17 r m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (i) ks cmr10.300 @sf m (\)\)) 17 (\(See) 17 (Fig.) 16 (7\(a\)\).) 25 (Then) 17 (ev) 0 (ery) ks cmmi10.300 @sf 17 r m (P) s cmr10.300 @sf 210 1174 p m (diagonal) 14 (blo) 1 (c) 0 (ks) 16 (of) ks cmbx10.300 @sf 15 r m (A) s cmr10.300 @sf 16 r m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (j) ks cmr10.300 @sf 2 r m (\)) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (MOD) s 866 1174 p m (\() s cmmi10.300 @sf m (j) s cmsy10.300 @sf 13 r m (\000) s cmmi10.300 @sf 11 r m (i;) 7 (P) ks cmr10.300 @sf 6 r m (\)) 15 (=) 16 (0\)) 16 (\(See) 17 (Fig.) 15 (7\(b\)\)) 16 (are) 17 (transp) 1 (osed) 18 (in) 15 (the) 17 (\014rst) ks 210 1244 p m (outer) 17 (lo) 1 (op) 16 (\() ks cmmi10.300 @sf m (J) s cmr10.300 @sf 20 r m (=) 16 (0\)) 17 (of) 15 (Figure) 17 (6.) 26 (In) 16 (the) 17 (next) 17 (outer) 18 (lo) 1 (op) 15 (\() ks cmmi10.300 @sf m (J) s cmr10.300 @sf 20 r m (=) 17 (1\),) 16 (the) 17 (next) ks cmmi10.300 @sf 17 r m (P) s cmr10.300 @sf 22 r m (diagonal) 15 (blo) 1 (c) 0 (ks) ks 210 1313 p m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (j) ks cmr10.300 @sf 2 r m (\)) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (MOD) s 467 1313 p m (\() s cmmi10.300 @sf m (j) s cmsy10.300 @sf 8 r m (\000) s cmmi10.300 @sf 5 r m (i;) 7 (P) ks cmr10.300 @sf 6 r m (\)) 12 (=) 12 (1\)) 11 (are) 13 (transp) 1 (osed.) 19 (In) 12 (Figures) 12 (7) 12 (\(c\)) 13 (and) 11 (\(d\),) ks cmmi10.300 @sf 13 r m (P) s cmr7.300 @sf 1500 1319 p m (0) s cmr10.300 @sf 1530 1313 p m (\() s cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf m (0) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (0) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (\)) 11 (sends) 13 (blo) 1 (c) 0 (ks) ks 210 1383 p m (to) s cmmi10.300 @sf 12 r m (P) s cmr7.300 @sf 286 1389 p m (2) s cmr10.300 @sf 316 1383 p m (\() s cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf m (0) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (2) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (\),) 11 (and) 12 (receiv) 0 (es) 13 (from) ks cmmi10.300 @sf 11 r m (P) s cmr7.300 @sf 851 1389 p m (1) s cmr10.300 @sf 881 1383 p m (\() s cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf m (0) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (1) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (\),) 11 (where) ks cmmi10.300 @sf 13 r m (P) s cmr7.300 @sf 1207 1389 p m (0) s cmr10.300 @sf 1226 1383 p m (,) s cmmi10.300 @sf 12 r m (P) s cmr7.300 @sf 1277 1389 p m (1) s cmr10.300 @sf 1307 1383 p m (and) s cmmi10.300 @sf 12 r m (P) s cmr7.300 @sf 1413 1389 p m (2) s cmr10.300 @sf 1444 1383 p m (are) 12 (in) 12 (the) 13 (same) 11 (ro) 0 (w.) 16 (Then) ks cmmi10.300 @sf 210 1453 p m (P) s cmr7.300 @sf 237 1459 p m (0) s cmr10.300 @sf 268 1453 p m (sends) 14 (blo) 1 (c) 0 (ks) 12 (to) ks cmmi10.300 @sf 13 r m (P) s cmr7.300 @sf 580 1459 p m (5) s cmr10.300 @sf 612 1453 p m (\() s cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf m (1) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (2) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (\),) 11 (and) 13 (receiv) 0 (es) 14 (from) ks cmmi10.300 @sf 11 r m (P) s cmr7.300 @sf 1149 1459 p m (4) s cmr10.300 @sf 1180 1453 p m (\() s cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf m (1) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (1) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (\),) 12 (and) 13 (so) 13 (on.) 17 (The) 14 (pseudo) 1 (co) 1 (de) 14 (for) ks 210 1523 p m (the) 12 (algorithm) 8 (from) 10 (the) 12 (matrix) 9 (p) 1 (oin) 0 (t-of-vi) -1 (ew) 10 (is) 11 (sho) 0 (wn) 10 (in) 11 (Figure) 11 (8.) 17 (Pro) 1 (cessors) 14 (need) 12 (to) 11 (determine) ks 210 1592 p m (a) 15 (diagonal) 14 (blo) 1 (c) 0 (k) 14 (of) ks cmbx10.300 @sf 15 r m (A) s cmr10.300 @sf 15 r m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (i;) 7 (j) ks cmr10.300 @sf 2 r m (\)) s cmmi10.300 @sf m (;) s cmr10.300 @sf 7 r m (MOD) s 882 1592 p m (\() s cmmi10.300 @sf m (j) s cmsy10.300 @sf 13 r m (\000) s cmmi10.300 @sf 11 r m (i;) 7 (LC) 3 (M) ks cmr10.300 @sf 5 r m (\)) 14 (=) ks cmmi10.300 @sf 14 r m (K) s cmr10.300 @sf 3 r m (\)) 16 (whic) 0 (h) 14 (they) 16 (start) 16 (to) 16 (transp) 1 (ose) 16 (in) 15 (the) ks 210 1662 p m (outer) s cmmi10.300 @sf 15 r m (J) s cmr10.300 @sf 19 r m (lo) 1 (op) 14 (in) 15 (order) 15 (to) 15 (comm) -2 (unicate) 13 (with) 15 (other) 15 (pro) 1 (cessors) 17 (in) 15 (the) 15 (same) 14 (ro) 0 (w) 14 (of) 14 (the) 15 (template.) ks 210 1732 p m (The) 14 (t) 0 (w) 0 (o) 12 (lines) 14 (b) 1 (efore) 14 (the) 15 (inner) 14 (DO-lo) 1 (op) 13 (compute) 13 (the) 15 (v) -1 (al) -1 (ue) 13 (of) ks cmmi10.300 @sf 13 r m (K) s cmr10.300 @sf 3 r m (.) s cmbx10.300 @sf 210 1860 p m (3.2.) s cmmi10.300 @sf 300 1860 p m (P) s cmbx10.300 @sf 21 r m (and) s cmmi10.300 @sf 16 r m (Q) s cmbx10.300 @sf 15 r m (:) 22 (not) 15 (relativ) -2 (ely) 14 (prime) ks cmr10.300 @sf 210 1956 p m (In) 11 (the) 12 (previous) 12 (section,) 12 (w) 0 (e) 10 (ha) 0 (v) 0 (e) 9 (in) 0 (v) -1 (estigated) 10 (the) 12 (case) 12 (when) ks cmmi10.300 @sf 12 r m (P) s cmr10.300 @sf 17 r m (and) s cmmi10.300 @sf 11 r m (Q) s cmr10.300 @sf 11 r m (are) 11 (relativ) 0 (ely) 10 (prime,) 10 (whic) 0 (h) ks 210 2026 p m (in) 0 (v) -1 (ol) -1 (v) -1 (es) 13 (complete) 14 (exc) 0 (hange) 14 (comm) -2 (unicatio) -1 (n.) 17 (In) 15 (this) 14 (section) 15 (w) 0 (e) 13 (consider) 16 (the) 14 (case) 16 (of) ks cmmi10.300 @sf 13 r m (GC) 3 (D) 13 (>) ks cmr10.300 @sf 13 r m (1.) s 210 2096 p m (The) 14 (former) 13 (algorithm) 11 (is) 14 (a) 14 (sp) 1 (ecial) 14 (case) 15 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 12 r m (=) 12 (1\)) 14 (of) 13 (this) 14 (algorithm) -1 (.) ks 272 2165 p m (Figure) 16 (9) 15 (sho) 0 (ws) 15 (an) 15 (example) 14 (of) 15 (transp) 1 (osing) 16 (a) 15 (12) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 10 r m (12) 15 (matrix) 14 (on) 15 (a) 15 (4) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 11 r m (6) 15 (template) 15 (from) 13 (the) ks 210 2235 p m (pro) 1 (cessor) 19 (p) 1 (oin) 0 (t-of-vi) -1 (ew.) 27 (Eac) 0 (h) 16 (pro) 1 (cessor) 19 (has) 18 (its) 17 (o) 0 (wn) 16 (3) ks cmsy10.300 @sf 11 r m (\002) s cmr10.300 @sf 12 r m (2) 17 (\(=) ks cmmi10.300 @sf 17 r m (LC) 3 (M) 2 (=P) ks cmsy10.300 @sf 17 r m (\002) s cmmi10.300 @sf 12 r m (LC) 3 (M) 2 (=Q) ks cmr10.300 @sf m (\)) 18 (arra) 0 (y) 16 (of) ks 210 2305 p m (blo) 1 (c) 0 (ks.) 17 (The) 13 (pro) 1 (cessors) 15 (can) 13 (transp) 1 (ose) 14 (the) 14 (matrix) 10 (with) 13 (6) 12 (\(=) ks cmmi10.300 @sf 12 r m (LC) 3 (M) 2 (=P) ks cmsy10.300 @sf 13 r m (\001) s cmmi10.300 @sf 7 r m (LC) 3 (M) 2 (=Q) ks cmr10.300 @sf 11 r m (=) s cmmi10.300 @sf 12 r m (LC) 3 (M) 2 (=GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) s 210 2375 p m (comm) -2 (unications) 18 (steps.) 39 (As) 20 (sho) 0 (wn) 20 (in) 19 (Figure) 21 (10,) 21 (a) 20 (pro) 1 (cessor) ks cmmi10.300 @sf 22 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 19 r m (starts) 21 (to) 20 (comm) -1 (uni) -1 (cate) ks 210 2444 p m (with) s cmmi10.300 @sf 18 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 358 2444 p m (p) s 378 2444 p m (;) s cmr10.300 @sf 10 r m (~) s cmmi10.300 @sf 397 2444 p m (q) s cmsy10.300 @sf 417 2444 p m (i) s cmr10.300 @sf m (,) 19 (where) 23 (~) ks cmmi10.300 @sf 588 2444 p m (p) s cmr10.300 @sf 627 2444 p m (and) 21 (~) ks cmmi10.300 @sf 712 2444 p m (q) s cmr10.300 @sf 750 2444 p m (are) 19 (computed) 18 (from) ks cmmi10.300 @sf 16 r m (p) s cmr10.300 @sf 18 r m (and) s cmmi10.300 @sf 18 r m (q) s cmr10.300 @sf 19 r m (\(details) 18 (are) 19 (explained) 18 (later) 18 (of) 18 (this) ks 210 2514 p m (section\).) 29 (Once) ks cmmi10.300 @sf 18 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 549 2514 p m (p) s 570 2514 p m (;) s cmr10.300 @sf 9 r m (~) s cmmi10.300 @sf 589 2514 p m (q) s cmsy10.300 @sf 608 2514 p m (i) s cmr10.300 @sf 18 r m (is) 17 (determined,) 17 (it) 17 (comm) -1 (uni) -1 (cates) 17 (with) 17 (other) 17 (pro) 1 (cessors) 1 (,) 19 (whose) 18 (v) 0 (ertical) ks 210 2584 p m (and) 13 (horizon) 0 (tal) 10 (in) 0 (terv) -1 (als) 11 (are) ks cmmi10.300 @sf 13 r m (GC) 3 (D) ks cmr10.300 @sf 14 r m (from) s cmmi10.300 @sf 11 r m (P) s cmsy10.300 @sf 6 r m (h) s cmr10.300 @sf 4 r m (~) s cmmi10.300 @sf 977 2584 p m (p) s 997 2584 p m (;) s cmr10.300 @sf 10 r m (~) s cmmi10.300 @sf 1016 2584 p m (q) s cmsy10.300 @sf 1035 2584 p m (i) s cmr10.300 @sf m (.) 18 (The) 13 (t) 0 (w) 0 (o) 11 (lo) 1 (ops) 12 (of) 12 (the) 14 (algorithm) 10 (in) 12 (Figure) 13 (6) 12 (are) ks @eop 8 @bop0 1.000000 /cmsl10.300 @newfont cmsl10.300 @sf [<8FC0D060E0106018400C400C401C003C07F80FF01FE03E0038043004100418060C0E03F2> 15 18 -1 0 16] 115 @dc [ 11 29 -1 0 12] 108 @dc [<3F0E00709D80E05C80E03C40E01C40E01C40701C00301C001C1C000F0E0001FE00000E00000E00 180E001C0E001E0C001C180007F000> 18 18 -3 0 21] 97 @dc [ 20 18 -1 0 23] 110 @dc [<1E00310070807080704070407040704070003800380038003800380038001C001C00FFE03C001C 000C0006000600020002000200> 11 26 -4 0 16] 116 @dc [<07C01C303008300460026000E000E000E00070007FFF7003300338031C070C06070C01F8> 16 18 -2 0 18] 101 @dc [<078FC0186F00301E00700F00600700600700E00700E00700E00700700380700380700380300380 3803801C03800C03C0030DC000F1C00001C00001C00001C00000E00000E00000E00000E00000E0 0000E00000F00003F0> 20 29 -3 0 23] 100 @dc 8 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (8) 13 (-) ks 200 91 p @beginspecial @setspecial 27299430 33877606 1644544 1644544 28943974 35522150 startTexFig %! %%BoundingBox: 25 25 440 540 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def /Proc_Grid{ /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /Helvetica-Oblique findfont Proc_PS scalefont setfont 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub dely mul P_Height sub add def 0 1 nx 1 sub { /colno exch def /X xpos colno delx mul add def X Y moveto P_Space 0 rlineto 0 P_Height rlineto stroke colno Q mod rowno P mod Q mul add 2 string cvs /T exch def X P_Space add 4 sub T stringwidth pop sub Y 1.5 add moveto T show } for } for } def /Label_Grid{ /Flag exch def /Label exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def 0 1 ny 1 sub { /rowno exch def /Y ypos ny rowno sub 1 sub dely mul add Label_Yshift add def 0 1 nx 1 sub { /colno exch def /Times-Roman findfont Label_PS scalefont setfont /X xpos colno delx mul add delx Label stringwidth pop sub 2 div add Label_Xshift add def X Y moveto Label show X Y moveto Label stringwidth pop 1 add Proc_PS .35 mul neg rmoveto /Times-Roman findfont Proc_PS scalefont setfont Flag (T) eq { colno 2 string cvs show (,) show rowno 2 string cvs show } {rowno 2 string cvs show (,) show colno 2 string cvs show } ifelse } for } for } def /Label_Local_Grid{ /Label exch def /pid exch def /bcpos exch brsize mul def /brpos exch bcsize mul def /Times-Roman findfont Label_PS scalefont setfont Label brpos 4 add bcpos 6 add moveto show /Times-Roman findfont Proc_PS scalefont setfont pid brpos 13 add bcpos 3 add moveto show } def /Label_LocalT_Grid{ /Label exch def /pid exch def /bcpos exch brsize mul def /brpos exch bcsize mul def /Times-Roman findfont Label_PS scalefont setfont Label brpos 4 add bcpos 6 add moveto show /Times-Roman findfont Proc_PS scalefont setfont (T) brpos 12 add bcpos 10 add moveto show pid brpos 13 add bcpos 3 add moveto show } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.98 setgray fill grestore newpath } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def % % Ignore everything above % /M 30 def /N 30 def /r 5 def /s 5 def /P 2 def /Q 3 def /Del 5 def /Proc_PS 8 def /Label_PS 12 def /Label_Xshift -4 def /Label_Yshift 6 def /brsize r Del mul def /bcsize s Del mul def /X_Trans 60 def /Y_Trans 390 def /Sfac 1 def /Amat { newpath -0.75 -0.75 moveto Del N mul 1.5 add 0 rlineto 0 Del M mul 1.5 add rlineto Del N mul 1.5 add neg 0 rlineto closepath clip newpath % Draw box of blocks 0 setlinewidth 0 0 moveto Del s mul % Size of block in column direction Del r mul % Size of block in row direction N s div ceiling % Number of column blocks M r div ceiling % Number of row blocks Grid % Draw box of blocks 0.7 setlinewidth 0 0 moveto Del s mul Q mul % Size of template in column direction Del r mul P mul % Size of template in row direction N s div ceiling Q div ceiling % Number of column template blocks M r div ceiling P div ceiling % Number of row template blocks Grid 1.5 setlinewidth 0 0 moveto bcsize P mul Q mul % Size of template in column direction brsize P mul Q mul % Size of template in row direction N M Grid % Label blocks with processor number /Helvetica findfont Proc_PS 0.9 mul scalefont setfont (99) stringwidth pop 3 add /P_Space exch def Proc_PS 1.05 Proc_PS mul /P_Height exch def 0 setlinewidth 0 0 moveto Del s mul % Size of block in column direction Del r mul % Size of block in row direction N s idiv % Number of column blocks M r idiv % Number of row blocks Proc_Grid } def % % Translate and scale % % *************** FIGURE 1 ********************* X_Trans Y_Trans translate Sfac dup scale 2 setlinecap 0 setlinejoin 0 5 1 1 ShadeBigBox 1 4 1 1 ShadeBigBox 2 3 1 1 ShadeBigBox 3 2 1 1 ShadeBigBox 4 1 1 1 ShadeBigBox 5 0 1 1 ShadeBigBox gsave 0 5 (0,0) (A) Label_Local_Grid 1 4 (1,1) (A) Label_Local_Grid 2 3 (2,2) (A) Label_Local_Grid 3 2 (3,3) (A) Label_Local_Grid 4 1 (4,4) (A) Label_Local_Grid 5 0 (5,5) (A) Label_Local_Grid Amat grestore /Times-Roman findfont 10 scalefont setfont ((a) zeroth diagonal (A(i,j), MOD(j-i,LCM)=0)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show % *************** FIGURE 2 ********************* 200 0 translate 0 2 1 1 ShadeBigBox 1 1 1 1 ShadeBigBox 2 0 1 1 ShadeBigBox 3 5 1 1 ShadeBigBox 4 4 1 1 ShadeBigBox 5 3 1 1 ShadeBigBox gsave 0 2 (3,0) (A) Label_Local_Grid 1 1 (4,1) (A) Label_Local_Grid 2 0 (5,2) (A) Label_Local_Grid 3 5 (0,3) (A) Label_Local_Grid 4 4 (1,4) (A) Label_Local_Grid 5 3 (2,5) (A) Label_Local_Grid 73 135 15 77 1.5 5 10 arrow fill Amat grestore /Times-Roman findfont 10 scalefont setfont ((b) third diagonal (A(i,j), MOD(j-i,LCM)=3)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show % *************** FIGURE 3 ********************* -200 -185 translate 0 3 1 1 ShadeBigBox 1 2 1 1 ShadeBigBox 2 1 1 1 ShadeBigBox 3 0 1 1 ShadeBigBox 4 5 1 1 ShadeBigBox 5 4 1 1 ShadeBigBox 2 5 1 1 ShadeBigBox2 3 4 1 1 ShadeBigBox2 4 3 1 1 ShadeBigBox2 5 2 1 1 ShadeBigBox2 0 1 1 1 ShadeBigBox2 1 0 1 1 ShadeBigBox2 gsave 0 3 (2,0) (A) Label_Local_Grid 1 2 (3,1) (A) Label_Local_Grid 2 1 (4,2) (A) Label_Local_Grid 3 0 (5,3) (A) Label_Local_Grid 4 5 (0,4) (A) Label_Local_Grid 5 4 (1,5) (A) Label_Local_Grid 2 5 (2,0) (A) Label_LocalT_Grid 3 4 (3,1) (A) Label_LocalT_Grid 4 3 (4,2) (A) Label_LocalT_Grid 5 2 (5,3) (A) Label_LocalT_Grid 0 1 (0,4) (A) Label_LocalT_Grid 1 0 (1,5) (A) Label_LocalT_Grid 15 102 48 135 1.5 5 10 arrow fill Amat grestore /Times-Roman findfont 10 scalefont setfont ((c) fourth diagonal (A(i,j), MOD(j-i,LCM)=4)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show % *************** FIGURE 4 ********************* 200 0 translate 0 0 1 1 ShadeBigBox 1 5 1 1 ShadeBigBox 2 4 1 1 ShadeBigBox 3 3 1 1 ShadeBigBox 4 2 1 1 ShadeBigBox 5 1 1 1 ShadeBigBox 5 5 1 1 ShadeBigBox2 0 4 1 1 ShadeBigBox2 1 3 1 1 ShadeBigBox2 2 2 1 1 ShadeBigBox2 3 1 1 1 ShadeBigBox2 4 0 1 1 ShadeBigBox2 gsave 0 0 (2,0) (A) Label_Local_Grid 1 5 (3,1) (A) Label_Local_Grid 2 4 (4,2) (A) Label_Local_Grid 3 3 (5,3) (A) Label_Local_Grid 4 2 (0,4) (A) Label_Local_Grid 5 1 (1,5) (A) Label_Local_Grid 5 5 (2,0) (A) Label_LocalT_Grid 0 4 (3,1) (A) Label_LocalT_Grid 1 3 (4,2) (A) Label_LocalT_Grid 2 2 (5,3) (A) Label_LocalT_Grid 3 1 (0,4) (A) Label_LocalT_Grid 4 0 (1,5) (A) Label_LocalT_Grid 73 85 65 77 1.5 5 10 arrow fill Amat grestore /Times-Roman findfont 10 scalefont setfont ((d) first diagonal (A(i,j), MOD(j-i,LCM)=1)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show % *************** FIGURE 5 ********************* -200 -185 translate 0 1 1 1 ShadeBigBox 1 0 1 1 ShadeBigBox 2 5 1 1 ShadeBigBox 3 4 1 1 ShadeBigBox 4 3 1 1 ShadeBigBox 5 2 1 1 ShadeBigBox 4 5 1 1 ShadeBigBox2 5 4 1 1 ShadeBigBox2 0 3 1 1 ShadeBigBox2 1 2 1 1 ShadeBigBox2 2 1 1 1 ShadeBigBox2 3 0 1 1 ShadeBigBox2 gsave 0 1 (4,0) (A) Label_Local_Grid 1 0 (5,1) (A) Label_Local_Grid 2 5 (0,2) (A) Label_Local_Grid 3 4 (1,3) (A) Label_Local_Grid 4 3 (2,4) (A) Label_Local_Grid 5 2 (3,5) (A) Label_Local_Grid 4 5 (4,0) (A) Label_LocalT_Grid 5 4 (5,1) (A) Label_LocalT_Grid 0 3 (0,2) (A) Label_LocalT_Grid 1 2 (1,3) (A) Label_LocalT_Grid 2 1 (2,4) (A) Label_LocalT_Grid 3 0 (3,5) (A) Label_LocalT_Grid 15 52 98 135 1.5 5 10 arrow fill Amat grestore /Times-Roman findfont 10 scalefont setfont ((e) second diagonal (A(i,j), MOD(j-i,LCM)=2)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show % *************** FIGURE 6 ********************* 200 0 translate 0 4 1 1 ShadeBigBox 1 3 1 1 ShadeBigBox 2 2 1 1 ShadeBigBox 3 1 1 1 ShadeBigBox 4 0 1 1 ShadeBigBox 5 5 1 1 ShadeBigBox 1 5 1 1 ShadeBigBox2 2 4 1 1 ShadeBigBox2 3 3 1 1 ShadeBigBox2 4 2 1 1 ShadeBigBox2 5 1 1 1 ShadeBigBox2 0 0 1 1 ShadeBigBox2 gsave % % Label blocks with block ID % 0 4 (1,0) (A) Label_Local_Grid 1 3 (2,1) (A) Label_Local_Grid 2 2 (3,2) (A) Label_Local_Grid 3 1 (4,3) (A) Label_Local_Grid 4 0 (5,4) (A) Label_Local_Grid 5 5 (0,5) (A) Label_Local_Grid 1 5 (1,0) (A) Label_LocalT_Grid 2 4 (2,1) (A) Label_LocalT_Grid 3 3 (3,2) (A) Label_LocalT_Grid 4 2 (4,3) (A) Label_LocalT_Grid 5 1 (5,4) (A) Label_LocalT_Grid 0 0 (0,5) (A) Label_LocalT_Grid 90 52 98 60 1.5 5 10 arrow fill Amat grestore /Times-Roman findfont 10 scalefont setfont ((f) fifth diagoanl (A(i,j), MOD(j-i,LCM)=5)) dup stringwidth pop 2 div 3 bcsize mul exch sub -15 moveto show showpage end endTexFig @endspecial 210 2428 p m (Figure) 18 (7:) 26 (Snapshots) 19 (of) 17 (matrix) 16 (transp) 1 (osition) 18 (when) ks cmmi10.300 @sf 18 r m (P) s cmr10.300 @sf 24 r m (=) 19 (2,) ks cmmi10.300 @sf 18 r m (Q) s cmr10.300 @sf 18 r m (=) 19 (3) 18 (and) ks cmmi10.300 @sf 17 r m (M) s cmmi7.300 @sf 1580 2434 p m (b) s cmr10.300 @sf 1616 2428 p m (=) s cmmi10.300 @sf 18 r m (N) s cmmi7.300 @sf 1699 2434 p m (b) s cmr10.300 @sf 1735 2428 p m (=) 18 (6.) 30 (The) ks 210 2478 p m (small) s cmsl10.300 @sf 12 r m (slan) 0 (ted) ks cmr10.300 @sf 13 r m (n) 0 (um) -1 (b) 1 (er) 13 (in) 14 (the) 15 (upp) 1 (er) 15 (left) 14 (corner) 15 (in) 14 (eac) 0 (h) 14 (blo) 1 (c) 0 (k) 13 (represen) 0 (ts) 16 (pro) 1 (cessor) 16 (iden) 0 (ti\014cation) ks 210 2528 p m (n) 0 (um) -2 (b) 1 (er.) 32 (One) 20 (wrapp) 1 (ed) 19 (blo) 1 (c) 0 (k) 18 (diagonal) 17 (is) 18 (transp) 1 (osed) 20 (in) 19 (eac) 0 (h) 18 (step.) 34 (The) 19 (darkly) 18 (shaded) 20 (area) ks 210 2578 p m (represen) 0 (ts) 16 (blo) 1 (c) 0 (ks) 12 (to) 14 (b) 1 (e) 15 (shifted,) 13 (and) 14 (ligh) 0 (tl) -1 (y) 12 (shaded) 15 (area) 14 (stands) 14 (for) 14 (their) 14 (transp) 1 (ositions.) ks @eop 7 @bop0 cmr7.300 @sf [ 27 20 -1 0 30] 77 @dc [<01F800070E001C03803801C03000C07000E07000E0E00070E00070E00070E00070E00070E00070 6000607000E03000C03801C01C0380070E0001F800> 20 20 -2 0 25] 79 @dc [ 21 20 -1 0 25] 68 @dc [<01020408103020606040C0C0C0C0C0C0C0C0C0C040606020301008040201> 8 30 -2 8 13] 40 @dc cmmi7.300 @sf [ 22 20 -1 0 21] 80 @dc cmr7.300 @sf [<80402010080C0406060203030303030303030303020606040C0810204080> 8 30 -2 8 13] 41 @dc cmmi7.300 @sf [<000E00001F00003F800031800030C000304007F0401C3C003A260071C3806001C0E000C0E000E0 E00070E00070E000707000387000387000383800381800380C00300600700300E001C1C0003F00> 21 26 -2 6 26] 81 @dc cmsy10.300 @sf [ 25 34 -3 8 32] 20 @dc cmmi10.300 @sf [<0000038000000F0000003C000000F0000003C000000F0000003C000000F0000003C000000F0000 003C000000F0000000F00000003C0000000F00000003C0000000F00000003C0000000F00000003 C0000000F00000003C0000000F0000000380> 25 24 -3 2 32] 60 @dc cmbx10.300 @sf [<7FFF807FFF8003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 03E00003E00003E00003E00003E00003E00003E00003E00003E000F3E000FFE0000FE00001E000 006000> 17 27 -3 0 24] 49 @dc 7 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (7) 13 (-) ks 395 107 p 1340 2 ru 395 157 p 2 50 ru 1734 157 p 2 50 ru 395 206 p 2 50 ru 470 191 p m (DO) s cmmi10.300 @sf 14 r m (J) s cmr10.300 @sf 16 r m (=) 11 (0) ks cmmi10.300 @sf m (;) 7 (Q) ks cmsy10.300 @sf 9 r m (\000) s cmr10.300 @sf 9 r m (1) s 1734 206 p 2 50 ru 395 256 p 2 50 ru 553 241 p m (DO) s cmmi10.300 @sf 14 r m (I) s cmr10.300 @sf 15 r m (=) 11 (0) ks cmmi10.300 @sf m (;) 7 (P) ks cmsy10.300 @sf 14 r m (\000) s cmr10.300 @sf 10 r m (1) s 1734 256 p 2 50 ru 395 306 p 2 50 ru 635 291 p m ([) 14 (Cop) 0 (y) 12 (all) 13 (blo) 1 (c) 0 (ks) 13 (of) ks cmbx10.300 @sf 13 r m (A) s cmr10.300 @sf 14 r m (required) 15 (b) 0 (y) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) s cmmi10.300 @sf 10 r m (I) 3 (;) 7 (q) ks cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 9 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 14 r m (to) 14 (T1) ks 1734 306 p 2 50 ru 395 356 p 2 50 ru 647 341 p m (\(in) 14 (condensed) 15 (and) 14 (transp) 1 (osed) 15 (form\)) 13 (]) ks 1734 356 p 2 50 ru 395 406 p 2 50 ru 635 391 p m ([) 14 (Send) 14 (T1) 14 (to) ks cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 8 r m (+) s cmmi10.300 @sf 10 r m (I) 3 (;) 7 (q) ks cmsy10.300 @sf 10 r m (\000) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 13 r m (]) s 1734 406 p 2 50 ru 395 455 p 2 50 ru 635 440 p m ([) 14 (Receiv) 0 (e) 13 (T2) 14 (from) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf 9 r m (\000) s cmmi10.300 @sf 9 r m (I) 3 (;) 7 (q) ks cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 14 r m (]) s 1734 455 p 2 50 ru 395 505 p 2 50 ru 635 490 p m ([) 14 (Cop) 0 (y) 12 (T2) 14 (to) ks cmbx10.300 @sf 14 r m (C) s cmr10.300 @sf 14 r m (]) s 1734 505 p 2 50 ru 395 555 p 2 50 ru 553 540 p m (END) 14 (DO) ks 1734 555 p 2 50 ru 395 605 p 2 50 ru 470 590 p m (END) 14 (DO) ks 1734 605 p 2 50 ru 395 655 p 2 50 ru 1734 655 p 2 50 ru 395 657 p 1340 2 ru 210 772 p m (Figure) 13 (6:) 17 (A) 14 (parallel) 11 (matrix) 12 (transp) 1 (ose) 14 (algorithm) 10 (from) 11 (the) 14 (pro) 1 (cessor) 15 (p) 1 (oin) 0 (t-of-vi) -1 (ew,) 11 (when) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 18 r m (and) s cmmi10.300 @sf 210 822 p m (Q) s cmr10.300 @sf 14 r m (are) 14 (relativ) 0 (ely) 13 (prime.) ks cmmi10.300 @sf 17 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 14 r m (represen) 0 (ts) ks cmmi10.300 @sf 15 r m (P) s cmr7.300 @sf 1003 829 p m (MOD) s 1083 829 p m (\() s cmmi7.300 @sf m (p;P) s cmr7.300 @sf 4 r m (\)) s cmmi7.300 @sf m (;) s cmr7.300 @sf m (MOD) s 1252 829 p m (\() s cmmi7.300 @sf m (q) 1 (;Q) ks cmr7.300 @sf m (\)) s cmr10.300 @sf 1332 822 p m (.) 19 (Pro) 1 (cessor) ks cmmi10.300 @sf 16 r m (P) s cmmi7.300 @sf 1577 828 p m (p;q) s cmr10.300 @sf 1636 822 p m (\(0) s cmsy10.300 @sf 12 r m (\024) s cmmi10.300 @sf 12 r m (p) 12 (<) 13 (P) ks cmr10.300 @sf 19 r m (and) s 210 872 p m (0) s cmsy10.300 @sf 14 r m (\024) s cmmi10.300 @sf 14 r m (q) 14 (<) 14 (Q) ks cmr10.300 @sf m (\)) 16 (comm) -2 (unicates) 14 (with) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) s cmmi10.300 @sf 11 r m (I) 3 (;) 7 (q) ks cmsy10.300 @sf 11 r m (\000) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 16 r m (to) 15 (send,) 16 (and) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf 9 r m (\000) s cmmi10.300 @sf 11 r m (I) 3 (;) 7 (q) ks cmr10.300 @sf 11 r m (+) s cmmi10.300 @sf 10 r m (J) s cmsy10.300 @sf 4 r m (i) s cmr10.300 @sf 16 r m (to) 15 (receiv) 0 (e) 15 (based) ks 210 922 p m (on) 16 (direct) 17 (p) 1 (oin) 0 (t-to-p) 1 (oin) -1 (t) 14 (comm) -2 (unication.) 23 (`) ks cmmi10.300 @sf m (p) s cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 11 r m (I) s cmr10.300 @sf 3 r m (') 17 (and) 16 (`) ks cmmi10.300 @sf m (q) s cmsy10.300 @sf 11 r m (\000) s cmmi10.300 @sf 11 r m (J) s cmr10.300 @sf 4 r m (') 16 (can) 17 (b) 1 (e) 17 (replaced) 17 (with) 16 (a) 16 (di\013eren) 0 (t) ks 210 972 p m (com) 0 (bi) -1 (natio) -1 (n) 12 (of) 14 (signs.) ks cmbx10.300 @sf 210 1104 p m (3.1.) s cmmi10.300 @sf 300 1104 p m (P) s cmbx10.300 @sf 21 r m (and) s cmmi10.300 @sf 16 r m (Q) s cmbx10.300 @sf 15 r m (:) 22 (relativ) -1 (e) -1 (ly) 14 (prime) ks cmr10.300 @sf 210 1201 p m (W) -2 (e) 16 (start) 18 (with) 17 (the) 17 (simple) 16 (case) 18 (where) ks cmmi10.300 @sf 19 r m (P) s cmr10.300 @sf 22 r m (and) s cmmi10.300 @sf 17 r m (Q) s cmr10.300 @sf 17 r m (are) 18 (relativ) 0 (ely) 16 (prime,) 16 (i.) 16 (e.) ks cmmi10.300 @sf 17 r m (GC) 3 (D) ks cmr10.300 @sf 18 r m (=) 18 (1.) 28 (In) 17 (this) ks 210 1270 p m (case) 20 (blo) 1 (c) 0 (ks) 17 (in) ks cmmi10.300 @sf 19 r m (P) s cmr7.300 @sf 514 1276 p m (0) s cmr10.300 @sf 551 1270 p m (are) 19 (scattered) 21 (to) 18 (all) 18 (pro) 1 (cessors) 21 (after) 19 (b) 1 (eing) 18 (lo) 1 (cally) 18 (transp) 1 (osed) 20 (as) 19 (sho) 0 (wn) 17 (in) ks 210 1340 p m (Figure) 13 (4) 13 (\(b\).) 18 (This) 14 (case) 14 (in) 0 (v) -1 (ol) -1 (v) -1 (es) 12 (the) 14 (t) 0 (w) 0 (o) -1 (-dim) -2 (ensional) 11 (complete) 13 (exc) 0 (hange) 13 (comm) -2 (unicati) -1 (on.) 16 (That) ks 210 1410 p m (is,) 13 (ev) 0 (ery) 14 (pro) 1 (cessor) 15 (needs) 15 (to) 14 (comm) -2 (uni) -1 (cates) 13 (with) 14 (ev) 0 (ery) 13 (other) 14 (pro) 1 (cessor.) 20 (The) 14 (complete) 13 (exc) 0 (hange) ks 210 1480 p m (problem) 13 (is) 13 (implem) -1 (en) -1 (ted) 13 (b) 0 (y) 13 (direct) 14 (comm) -2 (unication) 12 (b) 1 (et) 0 (w) 0 (een) 13 (sender) 15 (and) 14 (receiv) 0 (er.) ks 272 1549 p m (Figure) 16 (6) 15 (sho) 0 (ws) 14 (the) 16 (pseudo) 1 (co) 1 (de) 17 (from) 14 (the) 16 (pro) 1 (cessor) 17 (p) 1 (oin) 0 (t-of-) -1 (view,) 13 (where) ks cmmi10.300 @sf 17 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 14 r m (represe) 1 (n) 0 (ts) ks cmmi10.300 @sf 210 1619 p m (P) s cmr7.300 @sf 237 1626 p m (MOD) s 317 1626 p m (\() s cmmi7.300 @sf m (p;P) s cmr7.300 @sf 4 r m (\)) s cmmi7.300 @sf m (;) s cmr7.300 @sf m (MOD) s 486 1626 p m (\() s cmmi7.300 @sf m (q) 1 (;Q) ks cmr7.300 @sf m (\)) s cmr10.300 @sf 581 1619 p m (in) 15 (the) 15 (pro) 1 (cessor) 17 (template.) 21 (Pro) 1 (cessor) ks cmmi10.300 @sf 17 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf 14 r m (\(0) s cmsy10.300 @sf 13 r m (\024) s cmmi10.300 @sf 14 r m (p) 14 (<) 13 (P) ks cmr10.300 @sf 21 r m (and) 15 (0) ks cmsy10.300 @sf 13 r m (\024) s cmmi10.300 @sf 14 r m (q) 14 (<) 14 (Q) ks cmr10.300 @sf m (\)) s 210 1689 p m (starts) 16 (to) 14 (transp) 1 (ose) 16 (blo) 1 (c) 0 (ks) 14 (whose) 15 (transp) 1 (osed) 16 (blo) 1 (c) 0 (ks) 14 (b) 1 (elong) 14 (to) 15 (itself.) 20 (Then) 15 (it) 15 (deals) 15 (with) 14 (blo) 1 (c) 0 (ks) ks 210 1759 p m (whose) 10 (transp) 1 (osition) 9 (are) 10 (in) 9 (pro) 1 (cessors) 11 (in) 9 (the) 10 (same) 9 (column) 7 (of) 9 (the) 10 (template) 8 (\() ks cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf m (\000) s cmmi10.300 @sf m (i;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (,) 10 (0) ks cmsy10.300 @sf 11 r m (\024) s cmmi10.300 @sf 12 r m (i) 12 (<) 12 (P) ks cmr10.300 @sf 6 r m (\).) s 210 1828 p m (The) 13 (pro) 1 (cessor) 14 (sends) 13 (blo) 1 (c) 0 (ks) 12 (to) 12 (its) 12 (top) 13 (neigh) 0 (b) 1 (or,) ks cmmi10.300 @sf 11 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf 6 r m (\000) s cmr10.300 @sf 6 r m (1) s cmmi10.300 @sf m (;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (,) 11 (and) 12 (receiv) 0 (es) 13 (blo) 1 (c) 0 (ks) 11 (from) 11 (its) 12 (b) 1 (ottom) ks 210 1898 p m (neigh) 0 (b) 1 (or,) ks cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) 10 (1) ks cmmi10.300 @sf m (;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (.) 21 (Before) 16 (sending) 15 (the) 16 (blo) 1 (c) 0 (ks,) 14 (it) 14 (is) 15 (necessary) 17 (to) 15 (cop) 0 (y) 14 (the) 16 (blo) 1 (c) 0 (ks) 14 (to) 14 (b) 1 (e) 16 (sen) 0 (t) ks 210 1968 p m (in) 0 (to) 13 (a) 15 (con) 0 (tiguous) 14 (message) 15 (bu\013er.) 22 (Next) 16 (it) 14 (sends) 17 (blo) 1 (c) 0 (ks) 14 (to) 15 (the) 15 (next) 16 (top) 15 (pro) 1 (cessor,) ks cmmi10.300 @sf 16 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf 10 r m (\000) s cmr10.300 @sf 10 r m (2) s cmmi10.300 @sf m (;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (,) s 210 2038 p m (and) 14 (receiv) 0 (es) 14 (blo) 1 (c) 0 (ks) 13 (from) 12 (the) 15 (next) 14 (b) 1 (ottom) 13 (pro) 1 (cessor,) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) 9 (2) ks cmmi10.300 @sf m (;) 7 (q) ks cmsy10.300 @sf 1 r m (i) s cmr10.300 @sf m (.) s 272 2107 p m (After) 14 (it) 12 (completes) 13 (its) 13 (op) 1 (erations) 13 (with) 13 (the) 13 (pro) 1 (cessors) 15 (in) 13 (the) 13 (same) 12 (column,) 11 (it) 13 (sends) 14 (blo) 1 (c) 0 (ks) 12 (to) ks 210 2177 p m (the) 14 (pro) 1 (cessors) 15 (to) 13 (the) 14 (left) 13 (in) 13 (the) 14 (template) 12 (\() ks cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmsy10.300 @sf 8 r m (\000) s cmmi10.300 @sf 8 r m (i;) 7 (q) ks cmsy10.300 @sf 9 r m (\000) s cmr10.300 @sf 8 r m (1) s cmsy10.300 @sf m (i) s cmr10.300 @sf m (,) 13 (0) ks cmsy10.300 @sf 11 r m (\024) s cmmi10.300 @sf 12 r m (i) 12 (<) 12 (P) ks cmr10.300 @sf 6 r m (\),) 12 (and) 13 (receiv) 0 (es) 14 (blo) 1 (c) 0 (ks) 13 (from) ks 210 2247 p m (the) 16 (pro) 1 (cessors) 18 (to) 15 (the) 16 (righ) 0 (t) 14 (\() ks cmmi10.300 @sf m (P) s cmsy10.300 @sf 6 r m (h) s cmmi10.300 @sf m (p) s cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 10 r m (i;) 7 (q) ks cmr10.300 @sf 11 r m (+) 11 (1) ks cmsy10.300 @sf m (i) s cmr10.300 @sf m (\).) 23 (All) 14 (op) 1 (erations) 16 (are) 16 (completed) 15 (in) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 11 r m (Q) s cmr10.300 @sf 14 r m (=) s cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 210 2317 p m (steps.) s 272 2386 p m (W) -2 (e) 9 (in) 0 (terpret) 10 (the) 10 (algorithm) 7 (from) 8 (the) 11 (matrix) 8 (p) 1 (oin) 0 (t-of) -1 (-view.) 15 (In) 10 (the) 10 (\014rst) ks cmmi10.300 @sf 11 r m (LC) 3 (M) ks cmr10.300 @sf 14 r m (blo) 1 (c) 0 (k,) 9 (the) 10 (ab) 1 (o) 0 (v) 0 (e) ks 210 2456 p m (algorithm) 13 (p) 1 (erforms) 16 (the) 17 (op) 1 (eration) 16 (b) 0 (y) 15 (transp) 1 (osing) 16 (one) 16 (\(wrapp) 1 (ed\)) 18 (diagonal) 14 (blo) 1 (c) 0 (ks) 15 (at) 16 (one) 16 (step.) ks 210 2526 p m (\(Actually) 17 (the) 17 (algorithm) 15 (transp) 1 (oses) 19 (ev) 0 (ery) ks cmmi10.300 @sf 16 r m (LC) 3 (M) ks cmr10.300 @sf 22 r m (diagonal) 15 (blo) 1 (c) 0 (ks) 16 (of) 17 (the) 18 (matrix) 15 (at) 17 (eac) 0 (h) 16 (step.\)) ks 210 2595 p m (The) 15 (\014rst) 15 (step) 15 (of) 13 (the) 15 (algorithm) 11 (in) 14 (Figure) 14 (6) 14 (requires) 16 (no) 14 (explicit) 13 (comm) -1 (uni) -1 (cation.) 17 (It) 14 (corresp) 1 (onds) ks @eop 6 @bop0 6 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (6) 13 (-) ks 305 64 p @beginspecial @setspecial 24010342 8880537 1644544 1644544 25654886 10525081 startTexFig %! %%BoundingBox: 25 25 390 160 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def % % Ignore everything above % /Del 10 def % size of each element /br 3 def % block size /bc 4 def % block size /nr 3 def % number processor rows /nc 3 def % number processor columns /Mr 18 def % number of rows in matrix /Mc 24 def % number of columns in matrix /roff 10 def % vertical offset for printing numbers /Mrsize Mr Del mul def /Mcsize Mc Del mul def /brsize br Del mul def /bcsize bc Del mul def /nrsize nr brsize mul def /ncsize nc bcsize mul def /brows Mr br idiv ceiling def /bcols Mc bc idiv ceiling def /trows Mr nr br mul idiv ceiling def /tcols Mc nc bc mul idiv ceiling def /br2 4 def % block size /bc2 3 def % block size /nr2 3 def % number processor rows /nc2 3 def % number processor columns /Mr2 24 def % number of rows in matrix /Mc2 18 def % number of columns in matrix /Mrsize2 Mr2 Del mul def /Mcsize2 Mc2 Del mul def /brsize2 br2 Del mul def /bcsize2 bc2 Del mul def /nrsize2 nr2 brsize2 mul def /ncsize2 nc2 bcsize2 mul def /brows2 Mr2 br2 idiv ceiling def /bcols2 Mc2 bc2 idiv ceiling def /trows2 Mr2 nr2 br2 mul idiv ceiling def /tcols2 Mc2 nc2 bc2 mul idiv ceiling def 60 45 translate /Helvetica findfont brsize 0.8 mul scalefont setfont 0.5 0.5 scale /ShadeBox{ brsize mul exch bcsize mul exch moveto bcsize 0 rlineto 0 brsize rlineto bcsize neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul 5 add exch bcsize mul 5 add exch moveto bcleng 10 sub 0 rlineto 0 brleng 10 sub rlineto bcleng 10 sub neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 7 add def /brpos exch bcsize mul 8 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 10 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteRow2Index{ /indx exch def /bcpos exch bcsize mul 12 add def /brpos exch brsize mul -2 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteCol2Index{ /indx exch def /bcpos exch bcsize mul 8 add def /brpos exch brsize mul 5 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def /Amat { 0 brsize brows mul translate 1 1 trows { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols 1 sub { /colno exch def /colpar colno 2 mod def colpar rowpar eq { gsave 0.8 setgray colno ncsize mul rowno nrsize mul neg moveto ncsize nrsize Box fill grestore } if nr 1 sub -1 0 { /nrpos exch def 1 1 nc { /ncpos exch def nr nrpos 1 add sub nc mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize mul exch sub colno ncsize mul add nrpos 0.5 add brsize mul roff sub rowno nrsize mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize 3 mul brsize 3 mul neg bcols 3 div brows 3 div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def /Bmat { 0 brsize2 brows2 mul translate 1 1 trows2 { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols2 1 sub { /colno exch def /colpar colno 2 mod def colpar rowpar eq { gsave 0.8 setgray colno ncsize2 mul rowno nrsize2 mul neg moveto ncsize2 nrsize2 Box fill grestore } if nr2 1 sub -1 0 { /nrpos exch def 1 1 nc2 { /ncpos exch def nr2 nrpos 1 add sub nc2 mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize2 mul exch sub colno ncsize2 mul add nrpos 0.5 add brsize2 mul roff sub rowno nrsize2 mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize2 Mrsize2 neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize2 3 mul brsize2 3 mul neg bcols2 3 div brows2 3 div Grid stroke 0 setlinewidth 0 0 moveto bcsize2 brsize2 neg bcols2 brows2 Grid } def -1 5 ( 0) WriteRowIndex -1 4 ( 1) WriteRowIndex -1 3 ( 2) WriteRowIndex -1 2 ( 3) WriteRowIndex -1 1 ( 4) WriteRowIndex -1 0 ( 5) WriteRowIndex 0 6 ( 0) WriteColIndex 1 6 ( 1) WriteColIndex 2 6 ( 2) WriteColIndex 3 6 ( 3) WriteColIndex 4 6 ( 4) WriteColIndex 5 6 ( 5) WriteColIndex /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -30 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Amat newpath 280 -90 390 -90 2 5 20 arrow fill 0 -28 translate bcsize bcols 5 add mul brsize brows 1 mul 0 add mul neg translate -1 5 ( 0) WriteRow2Index -1 4 ( 1) WriteRow2Index -1 3 ( 2) WriteRow2Index -1 2 ( 3) WriteRow2Index -1 1 ( 4) WriteRow2Index -1 0 ( 5) WriteRow2Index 0 6 ( 0) WriteCol2Index 1 6 ( 1) WriteCol2Index 2 6 ( 2) WriteCol2Index 3 6 ( 3) WriteCol2Index 4 6 ( 4) WriteCol2Index 5 6 ( 5) WriteCol2Index /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 2 bcsize mul exch sub -30 moveto show /Times-Roman findfont 14 scalefont setfont (T) dup stringwidth pop 2 div 2 bcsize mul 11 add exch sub -22 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Bmat /Times-Roman findfont 20 scalefont setfont (transpose) -145 -114 moveto show ((a) matrix transpose from matrix point-of-view) -320 -290 moveto show showpage end endTexFig @endspecial 305 780 p @beginspecial @setspecial 24010342 8880537 1644544 1644544 25654886 10525081 startTexFig %! %%BoundingBox: 25 25 390 160 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def % % Ignore everything above % /Del 10 def % size of each element /br 3 def % block size /bc 4 def % block size /nr 3 def % number processor rows /nc 3 def % number processor columns /Mr 18 def % number of rows in matrix /Mc 24 def % number of columns in matrix /roff 10 def % vertical offset for printing numbers /Mrsize Mr Del mul def /Mcsize Mc Del mul def /brsize br Del mul def /bcsize bc Del mul def /nrsize nr brsize mul def /ncsize nc bcsize mul def /brows Mr br idiv ceiling def /bcols Mc bc idiv ceiling def /trows Mr nr br mul idiv ceiling def /tcols Mc nc bc mul idiv ceiling def /br2 4 def % block size /bc2 3 def % block size /nr2 3 def % number processor rows /nc2 3 def % number processor columns /Mr2 24 def % number of rows in matrix /Mc2 18 def % number of columns in matrix /Mrsize2 Mr2 Del mul def /Mcsize2 Mc2 Del mul def /brsize2 br2 Del mul def /bcsize2 bc2 Del mul def /nrsize2 nr2 brsize2 mul def /ncsize2 nc2 bcsize2 mul def /brows2 Mr2 br2 idiv ceiling def /bcols2 Mc2 bc2 idiv ceiling def /trows2 Mr2 nr2 br2 mul idiv ceiling def /tcols2 Mc2 nc2 bc2 mul idiv ceiling def 60 45 translate /Helvetica findfont brsize 0.8 mul scalefont setfont 0.5 0.5 scale /ShadeBox{ brsize mul exch bcsize mul exch moveto bcsize 0 rlineto 0 brsize rlineto bcsize neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize2 mul def /bcleng exch bcsize2 mul def brsize2 mul exch bcsize2 mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /WriteBigName{ /pid exch def /bcpos exch brsize mul 20 add def /brpos exch bcsize mul def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 20 add bcpos 3 sub moveto show } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 8 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 10 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteRow2Index{ /indx exch def /bcpos exch bcsize mul 14 add def /brpos exch brsize mul -2 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteCol2Index{ /indx exch def /bcpos exch bcsize mul 8 add def /brpos exch brsize mul 5 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteBigName{ /pid exch def /bcpos exch brsize mul 22 add def /brpos exch bcsize mul 24 add def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 18 add bcpos 3 sub moveto show } def /WriteBigName2{ /pid exch def /bcpos exch brsize2 mul 32 add def /brpos exch bcsize2 mul 20 add def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 18 add bcpos 3 sub moveto show } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def /Amat { 0 brsize brows mul translate 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize 2 mul brsize 2 mul neg bcols 2 div brows 2 div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def /Bmat { 0 brsize2 brows2 mul translate 3 setlinewidth 0 0 moveto Mcsize2 Mrsize2 neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize2 2 mul brsize2 2 mul neg bcols2 2 div brows2 2 div Grid stroke 0 setlinewidth 0 0 moveto bcsize2 brsize2 neg bcols2 brows2 Grid } def 4 4 2 2 ShadeBigBox 0 4 (0) WriteBigName 0 2 (3) WriteBigName 0 0 (6) WriteBigName 2 4 (1) WriteBigName 2 2 (4) WriteBigName 2 0 (7) WriteBigName 4 4 (2) WriteBigName 4 2 (5) WriteBigName 4 0 (8) WriteBigName -1 5 ( 0) WriteRowIndex -1 4 ( 2) WriteRowIndex -1 3 ( 4) WriteRowIndex -1 2 ( 1) WriteRowIndex -1 1 ( 3) WriteRowIndex -1 0 ( 5) WriteRowIndex 0 6 ( 0) WriteColIndex 1 6 ( 3) WriteColIndex 2 6 ( 1) WriteColIndex 3 6 ( 4) WriteColIndex 4 6 ( 2) WriteColIndex 5 6 ( 5) WriteColIndex /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -30 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Amat newpath 280 -90 390 -90 2 5 20 arrow fill 0 -28 translate bcsize bcols 5 add mul brsize brows 1 mul 0 add mul neg translate 0 0 2 2 ShadeBigBox2 0 4 (0) WriteBigName2 0 2 (3) WriteBigName2 0 0 (6) WriteBigName2 2 4 (1) WriteBigName2 2 2 (4) WriteBigName2 2 0 (7) WriteBigName2 4 4 (2) WriteBigName2 4 2 (5) WriteBigName2 4 0 (8) WriteBigName2 -1 5 ( 0) WriteRow2Index -1 4 ( 3) WriteRow2Index -1 3 ( 1) WriteRow2Index -1 2 ( 4) WriteRow2Index -1 1 ( 2) WriteRow2Index -1 0 ( 5) WriteRow2Index 0 6 ( 0) WriteCol2Index 1 6 ( 3) WriteCol2Index 2 6 ( 1) WriteCol2Index 3 6 ( 4) WriteCol2Index 4 6 ( 2) WriteCol2Index 5 6 ( 5) WriteCol2Index /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 2.2 bcsize mul exch sub -30 moveto show /Times-Roman findfont 14 scalefont setfont (T) dup stringwidth pop 2 div 2.2 bcsize mul 10 add exch sub -22 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Bmat /Times-Roman findfont 20 scalefont setfont (transpose) -145 -115 moveto show ((b) matrix transpose from processor point-of-view) -325 -290 moveto show showpage end endTexFig @endspecial 210 1533 p m (Figure) 16 (5:) 21 (An) 16 (example) 14 (of) 15 (matrix) 14 (transp) 1 (ose) 17 (for) 15 (a) 15 (blo) 1 (c) 0 (k) 14 (scattered) 18 (decomp) 1 (osition,) 14 (when) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 20 r m (=) 15 (3,) ks cmmi10.300 @sf 210 1583 p m (Q) s cmr10.300 @sf 11 r m (=) 12 (3,) 13 (and) ks cmmi10.300 @sf 14 r m (M) s cmmi7.300 @sf 465 1589 p m (b) s cmr10.300 @sf 493 1583 p m (=) s cmmi10.300 @sf 12 r m (N) s cmmi7.300 @sf 570 1589 p m (b) s cmr10.300 @sf 599 1583 p m (=) 12 (6.) ks 272 1716 p m (W) -2 (e) 18 (no) 0 (w) 18 (describ) 1 (e) 21 (parallel) 18 (matrix) 17 (transp) 1 (ose) 20 (algorithms.) 32 (A) 19 (matrix) ks cmbx10.300 @sf 17 r m (A) s cmr10.300 @sf m (,) 20 (distributed) 20 (o) 0 (v) -1 (er) 18 (a) ks cmmi10.300 @sf 210 1785 p m (P) s cmsy10.300 @sf 18 r m (\002) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 19 r m (pro) 1 (cessor) 21 (template,) 20 (has) ks cmmi10.300 @sf 19 r m (M) s cmmi7.300 @sf 850 1791 p m (b) s cmsy10.300 @sf 880 1785 p m (\002) s cmmi10.300 @sf 13 r m (N) s cmmi7.300 @sf 958 1791 p m (b) s cmr10.300 @sf 994 1785 p m (blo) 1 (c) 0 (ks) 18 (and) 19 (eac) 0 (h) 19 (blo) 1 (c) 0 (k) 18 (consists) 20 (of) ks cmmi10.300 @sf 19 r m (r) s cmsy10.300 @sf 14 r m (\002) s cmmi10.300 @sf 13 r m (s) s cmr10.300 @sf 20 r m (elemen) 0 (ts,) ks 210 1855 p m (where) s cmmi10.300 @sf 16 r m (r) s cmr10.300 @sf 16 r m (and) s cmmi10.300 @sf 15 r m (s) s cmr10.300 @sf 15 r m (are) 16 (arbitrary) -2 (.) 19 (Figure) 16 (4) 14 (\(a\)) 15 (sho) 0 (ws) 15 (an) 14 (example) 14 (of) 15 (a) 14 (matrix) 13 (transp) 1 (ose) 17 (on) 14 (a) 15 (2) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 10 r m (3) s 210 1925 p m (template.) 24 (If) ks cmbx10.300 @sf 16 r m (A) s cmr10.300 @sf 16 r m (is) 16 (transp) 1 (osed,) 18 (the) 17 (transp) 1 (osed) 17 (matrix) ks cmbx10.300 @sf 14 r m (A) s cmmi7.300 @sf 1228 1911 p m (T) s cmr10.300 @sf 1271 1925 p m (is) 16 (distributed) 17 (o) 0 (v) -1 (er) 15 (the) 17 (same) ks cmmi10.300 @sf 15 r m (P) s cmsy10.300 @sf 16 r m (\002) s cmmi10.300 @sf 11 r m (Q) s cmr10.300 @sf 210 1994 p m (template,) 13 (and) 13 (it) 14 (has) ks cmmi10.300 @sf 14 r m (N) s cmmi7.300 @sf 624 2000 p m (b) s cmsy10.300 @sf 651 1994 p m (\002) s cmmi10.300 @sf 9 r m (M) s cmmi7.300 @sf 732 2000 p m (b) s cmr10.300 @sf 763 1994 p m (blo) 1 (c) 0 (ks) 13 (and) 14 (eac) 0 (h) 13 (blo) 1 (c) 0 (k) 13 (has) ks cmmi10.300 @sf 14 r m (s) s cmsy10.300 @sf 10 r m (\002) s cmmi10.300 @sf 10 r m (r) s cmr10.300 @sf 14 r m (elemen) 0 (ts.) 18 (The) 14 (elemen) 0 (ts) 13 (of) 13 (eac) 0 (h) ks 210 2064 p m (blo) 1 (c) 0 (k) 15 (remain) 15 (in) 16 (the) 17 (same) 15 (blo) 1 (c) 0 (k,) 15 (but) 17 (ma) -1 (y) 14 (b) 1 (e) 17 (in) 16 (a) 16 (di\013eren) 0 (t) 16 (pro) 1 (cessor,) 18 (and) 16 (eac) 0 (h) 16 (blo) 1 (c) 0 (k) 15 (is) 16 (itself) ks 210 2134 p m (transp) 1 (osed.) 23 (Figure) 15 (4) 14 (\(b\)) 16 (sho) 0 (ws) 14 (the) 15 (same) 14 (example) 14 (from) 13 (the) 16 (pro) 1 (cessor) 17 (p) 1 (oin) 0 (t-of) -1 (-view.) 19 (If) ks cmmi10.300 @sf 15 r m (P) s cmr10.300 @sf 20 r m (and) s cmmi10.300 @sf 210 2204 p m (Q) s cmr10.300 @sf 14 r m (are) 14 (relativ) 0 (ely) 13 (prime,) 12 (as) 14 (sho) 0 (wn) 13 (in) 14 (the) 15 (\014gure,) 14 (blo) 1 (c) 0 (ks) 13 (in) 14 (the) 14 (\014rst) 15 (pro) 1 (cessor) ks cmmi10.300 @sf 16 r m (P) s cmr7.300 @sf 1603 2210 p m (0) s cmr10.300 @sf 1635 2204 p m (are) 15 (scattered) 16 (to) ks 210 2273 p m (all) 14 (pro) 1 (cessors.) 24 (As) 16 (sho) 0 (wn) 14 (in) 15 (Figure) 16 (5,) 14 (whic) 0 (h) 15 (is) 15 (the) 16 (same) 14 (example) 14 (on) 15 (a) 15 (3) ks cmsy10.300 @sf 10 r m (\002) s cmr10.300 @sf 10 r m (3) 15 (square) 16 (template,) ks 210 2343 p m (the) 15 (blo) 1 (c) 0 (ks) 13 (in) 13 (eac) 0 (h) 14 (pro) 1 (cessor) 16 (are) 14 (not) 14 (disp) 1 (ersed,) 15 (but) 15 (they) 14 (are) 15 (mo) -1 (v) -1 (ed) 12 (as) 14 (one) 14 (en) 0 (tit) 0 (y) 12 (to) 14 (a) 14 (di\013eren) 0 (t) ks 210 2413 p m (pro) 1 (cessor.) 22 (P) 0 (arallel) 12 (matrix) 13 (transp) 1 (ose) 16 (algorithm) -1 (s) 13 (for) 14 (the) 15 (blo) 1 (c) 0 (k) 13 (scattered) 17 (data) 14 (distribution) 14 (ha) 0 (v) 0 (e) ks 210 2483 p m (sev) 0 (eral) 14 (comm) -2 (unication) 12 (patterns) 16 (determined) 15 (b) 0 (y) 13 (the) 15 (greatest) 16 (comm) -1 (on) 13 (divisor) 14 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) 14 (of) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 20 r m (and) s cmmi10.300 @sf 210 2552 p m (Q) s cmr10.300 @sf m (.) s @eop 5 @bop0 cmbx12.300 @sf [<01FE000FFFC01E07F07801F87E01FCFF00FCFF00FEFF00FEFF00FE7E00FE3C00FE0000FC0000FC 0001F80001F00007C001FF0001FE00001F800007C00003E00003F01F03F01F03F83F81F83F81F8 3F81F83F03F01E03F00F07E007FFC000FE00> 23 32 -2 0 28] 51 @dc [ 27 22 -1 0 30] 120 @dc [<03FFFFF80003FFFFF8000003F800000003F800000003F800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F80000C003F800C0C003 F800C0C003F800C0C003F800C0E003F801C0E003F801C06003F801807003F803807803F807807E 03F80F807FFFFFFF807FFFFFFF80> 34 34 -2 0 39] 84 @dc [ 26 32 -2 10 31] 112 @dc [ 37 34 -2 0 42] 65 @dc [<01FF000FFFE03F01F87C007C78003CF0001EF0001EF0001EF0001E70003E3800FC1FFFFC0FFFF8 1FFFF03FFF8038000030000030000013FC001FFF001F0F803E07C03C03C07C03E07C03E07C03E0 7C03E07C03E03C03C03E07CF1F0F8F0FFF7F03FC1E> 24 33 -2 11 28] 103 @dc [ 26 35 -2 0 31] 104 @dc 5 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (5) 13 (-) ks 305 64 p @beginspecial @setspecial 24010342 8880537 1644544 1644544 25654886 10525081 startTexFig %! %%BoundingBox: 25 25 390 160 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def % % Ignore everything above % /Del 10 def % size of each element /br 3 def % block size /bc 4 def % block size /nr 2 def % number processor rows /nc 3 def % number processor columns /Mr 18 def % number of rows in matrix /Mc 24 def % number of columns in matrix /roff 10 def % vertical offset for printing numbers /Mrsize Mr Del mul def /Mcsize Mc Del mul def /brsize br Del mul def /bcsize bc Del mul def /nrsize nr brsize mul def /ncsize nc bcsize mul def /brows Mr br idiv ceiling def /bcols Mc bc idiv ceiling def /trows Mr nr br mul idiv ceiling def /tcols Mc nc bc mul idiv ceiling def /br2 4 def % block size /bc2 3 def % block size /nr2 2 def % number processor rows /nc2 3 def % number processor columns /Mr2 24 def % number of rows in matrix /Mc2 18 def % number of columns in matrix /Mrsize2 Mr2 Del mul def /Mcsize2 Mc2 Del mul def /brsize2 br2 Del mul def /bcsize2 bc2 Del mul def /nrsize2 nr2 brsize2 mul def /ncsize2 nc2 bcsize2 mul def /brows2 Mr2 br2 idiv ceiling def /bcols2 Mc2 bc2 idiv ceiling def /trows2 Mr2 nr2 br2 mul idiv ceiling def /tcols2 Mc2 nc2 bc2 mul idiv ceiling def 60 45 translate /Helvetica findfont brsize 0.8 mul scalefont setfont 0.5 0.5 scale /ShadeBox{ brsize mul exch bcsize mul exch moveto bcsize 0 rlineto 0 brsize rlineto bcsize neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul 5 add exch bcsize mul 5 add exch moveto bcleng 10 sub 0 rlineto 0 brleng 10 sub rlineto bcleng 10 sub neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 7 add def /brpos exch bcsize mul 8 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 10 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteRow2Index{ /indx exch def /bcpos exch bcsize mul 12 add def /brpos exch brsize mul -2 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteCol2Index{ /indx exch def /bcpos exch bcsize mul 8 add def /brpos exch brsize mul 5 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def /Amat { 0 brsize brows mul translate 1 1 trows { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols 1 sub { /colno exch def /colpar colno 2 mod def colpar rowpar eq { gsave 0.8 setgray colno ncsize mul rowno nrsize mul neg moveto ncsize nrsize Box fill grestore } if nr 1 sub -1 0 { /nrpos exch def 1 1 nc { /ncpos exch def nr nrpos 1 add sub nc mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize mul exch sub colno ncsize mul add nrpos 0.5 add brsize mul roff sub rowno nrsize mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize 3 mul brsize 2 mul neg bcols 3 div brows 2 div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def /Bmat { 0 brsize2 brows2 mul translate 1 1 trows2 { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols2 1 sub { /colno exch def /colpar colno 2 mod def colpar rowpar eq { gsave 0.8 setgray colno ncsize2 mul rowno nrsize2 mul neg moveto ncsize2 nrsize2 Box fill grestore } if nr2 1 sub -1 0 { /nrpos exch def 1 1 nc2 { /ncpos exch def nr2 nrpos 1 add sub nc2 mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize2 mul exch sub colno ncsize2 mul add nrpos 0.5 add brsize2 mul roff sub rowno nrsize2 mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize2 Mrsize2 neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize2 3 mul brsize2 2 mul neg bcols2 3 div brows2 2 div Grid stroke 0 setlinewidth 0 0 moveto bcsize2 brsize2 neg bcols2 brows2 Grid } def -1 5 ( 0) WriteRowIndex -1 4 ( 1) WriteRowIndex -1 3 ( 2) WriteRowIndex -1 2 ( 3) WriteRowIndex -1 1 ( 4) WriteRowIndex -1 0 ( 5) WriteRowIndex 0 6 ( 0) WriteColIndex 1 6 ( 1) WriteColIndex 2 6 ( 2) WriteColIndex 3 6 ( 3) WriteColIndex 4 6 ( 4) WriteColIndex 5 6 ( 5) WriteColIndex /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -30 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Amat newpath 280 -90 390 -90 2 5 20 arrow fill 0 -28 translate bcsize bcols 5 add mul brsize brows 1 mul 0 add mul neg translate -1 5 ( 0) WriteRow2Index -1 4 ( 1) WriteRow2Index -1 3 ( 2) WriteRow2Index -1 2 ( 3) WriteRow2Index -1 1 ( 4) WriteRow2Index -1 0 ( 5) WriteRow2Index 0 6 ( 0) WriteCol2Index 1 6 ( 1) WriteCol2Index 2 6 ( 2) WriteCol2Index 3 6 ( 3) WriteCol2Index 4 6 ( 4) WriteCol2Index 5 6 ( 5) WriteCol2Index /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 2 bcsize mul exch sub -30 moveto show /Times-Roman findfont 14 scalefont setfont (T) dup stringwidth pop 2 div 2 bcsize mul 11 add exch sub -22 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Bmat /Times-Roman findfont 20 scalefont setfont (transpose) -145 -114 moveto show ((a) matrix transpose from matrix point-of-view) -320 -290 moveto show showpage end endTexFig @endspecial 305 780 p @beginspecial @setspecial 24010342 8880537 1644544 1644544 25654886 10525081 startTexFig %! %%BoundingBox: 25 25 390 160 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def % % Ignore everything above % /Del 10 def % size of each element /br 3 def % block size /bc 4 def % block size /nr 3 def % number processor rows /nc 2 def % number processor columns /Mr 18 def % number of rows in matrix /Mc 24 def % number of columns in matrix /roff 10 def % vertical offset for printing numbers /Mrsize Mr Del mul def /Mcsize Mc Del mul def /brsize br Del mul def /bcsize bc Del mul def /nrsize nr brsize mul def /ncsize nc bcsize mul def /brows Mr br idiv ceiling def /bcols Mc bc idiv ceiling def /trows Mr nr br mul idiv ceiling def /tcols Mc nc bc mul idiv ceiling def /br2 4 def % block size /bc2 3 def % block size /nr2 2 def % number processor rows /nc2 3 def % number processor columns /Mr2 24 def % number of rows in matrix /Mc2 18 def % number of columns in matrix /Mrsize2 Mr2 Del mul def /Mcsize2 Mc2 Del mul def /brsize2 br2 Del mul def /bcsize2 bc2 Del mul def /nrsize2 nr2 brsize2 mul def /ncsize2 nc2 bcsize2 mul def /brows2 Mr2 br2 idiv ceiling def /bcols2 Mc2 bc2 idiv ceiling def /trows2 Mr2 nr2 br2 mul idiv ceiling def /tcols2 Mc2 nc2 bc2 mul idiv ceiling def 60 45 translate /Helvetica findfont brsize 0.8 mul scalefont setfont 0.5 0.5 scale /ShadeBox{ brsize mul exch bcsize mul exch moveto bcsize 0 rlineto 0 brsize rlineto bcsize neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /ShadeBigBox2{ /brleng exch brsize2 mul def /bcleng exch bcsize2 mul def brsize2 mul exch bcsize2 mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.8 setgray fill grestore newpath } def /WriteBigName{ /pid exch def /bcpos exch brsize mul 20 add def /brpos exch bcsize mul def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 20 add bcpos 3 sub moveto show } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 8 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 8 add def /brpos exch bcsize mul 10 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteRow2Index{ /indx exch def /bcpos exch bcsize mul 14 add def /brpos exch brsize mul -2 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteCol2Index{ /indx exch def /bcpos exch bcsize mul 8 add def /brpos exch brsize mul 5 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteBigName{ /pid exch def /bcpos exch brsize mul 6 add def /brpos exch bcsize mul 24 add def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 18 add bcpos 3 sub moveto show } def /WriteBigName2{ /pid exch def /bcpos exch brsize2 mul 10 add def /brpos exch bcsize2 mul 20 add def brpos bcpos moveto /Times-Roman findfont 36 scalefont setfont (P) show /Times-Roman findfont 24 scalefont setfont pid brpos 18 add bcpos 3 sub moveto show } def /arrowdict 14 dict def arrowdict begin /mtrx matrix def end /arrow{ arrowdict begin /headlength exch def /halfheadthickness exch 2 div def /halfthickness exch 2 div def /tipy exch def /tipx exch def /taily exch def /tailx exch def /dx tipx tailx sub def /dy tipy taily sub def /arrowlength dx dx mul dy dy mul add sqrt def /angle dy dx atan def /base arrowlength headlength sub def /savematrix mtrx currentmatrix def tailx taily translate angle rotate 0 halfthickness neg moveto base halfthickness neg lineto base halfheadthickness neg lineto arrowlength 0 lineto base halfheadthickness lineto base halfthickness lineto 0 halfthickness lineto closepath savematrix setmatrix end } def /Amat { 0 brsize brows mul translate 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize 2 mul brsize 3 mul neg bcols 2 div brows 3 div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def /Bmat { 0 brsize2 brows2 mul translate 3 setlinewidth 0 0 moveto Mcsize2 Mrsize2 neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize2 2 mul brsize2 3 mul neg bcols2 2 div brows2 3 div Grid stroke 0 setlinewidth 0 0 moveto bcsize2 brsize2 neg bcols2 brows2 Grid } def 0 3 2 3 ShadeBigBox 0 4 (0) WriteBigName 0 1 (3) WriteBigName 2 4 (1) WriteBigName 2 1 (4) WriteBigName 4 4 (2) WriteBigName 4 1 (5) WriteBigName -1 5 ( 0) WriteRowIndex -1 4 ( 2) WriteRowIndex -1 3 ( 4) WriteRowIndex -1 2 ( 1) WriteRowIndex -1 1 ( 3) WriteRowIndex -1 0 ( 5) WriteRowIndex 0 6 ( 0) WriteColIndex 1 6 ( 3) WriteColIndex 2 6 ( 1) WriteColIndex 3 6 ( 4) WriteColIndex 4 6 ( 2) WriteColIndex 5 6 ( 5) WriteColIndex /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 3 bcsize mul exch sub -30 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Amat newpath 280 -90 390 -90 2 5 20 arrow fill 0 -28 translate bcsize bcols 5 add mul brsize brows 1 mul 0 add mul neg translate 0 5 1 1 ShadeBigBox2 0 1 1 1 ShadeBigBox2 3 5 1 1 ShadeBigBox2 3 1 1 1 ShadeBigBox2 4 5 1 1 ShadeBigBox2 4 1 1 1 ShadeBigBox2 0 4 (0) WriteBigName2 0 1 (3) WriteBigName2 2 4 (1) WriteBigName2 2 1 (4) WriteBigName2 4 4 (2) WriteBigName2 4 1 (5) WriteBigName2 -1 5 ( 0) WriteRow2Index -1 4 ( 2) WriteRow2Index -1 3 ( 4) WriteRow2Index -1 2 ( 1) WriteRow2Index -1 1 ( 3) WriteRow2Index -1 0 ( 5) WriteRow2Index 0 6 ( 0) WriteCol2Index 1 6 ( 3) WriteCol2Index 2 6 ( 1) WriteCol2Index 3 6 ( 4) WriteCol2Index 4 6 ( 2) WriteCol2Index 5 6 ( 5) WriteCol2Index /Times-Roman findfont 20 scalefont setfont (A) dup stringwidth pop 2 div 2.2 bcsize mul exch sub -30 moveto show /Times-Roman findfont 14 scalefont setfont (T) dup stringwidth pop 2 div 2.2 bcsize mul 10 add exch sub -22 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Bmat /Times-Roman findfont 20 scalefont setfont (transpose) -145 -115 moveto show ((b) matrix transpose from processor point-of-view) -325 -290 moveto show showpage end endTexFig @endspecial 210 1533 p m (Figure) 16 (4:) 21 (An) 16 (example) 14 (of) 15 (matrix) 14 (transp) 1 (ose) 17 (for) 15 (a) 15 (blo) 1 (c) 0 (k) 14 (scattered) 18 (decomp) 1 (osition,) 14 (when) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 20 r m (=) 15 (2,) ks cmmi10.300 @sf 210 1583 p m (Q) s cmr10.300 @sf 11 r m (=) 12 (3,) 13 (and) ks cmmi10.300 @sf 14 r m (M) s cmmi7.300 @sf 465 1589 p m (b) s cmr10.300 @sf 493 1583 p m (=) s cmmi10.300 @sf 12 r m (N) s cmmi7.300 @sf 570 1589 p m (b) s cmr10.300 @sf 599 1583 p m (=) 12 (6.) ks cmbx12.300 @sf 210 1716 p m (3.) s 272 1716 p save [ 48 34 -2 0 53] 77 @pc restore 53 r m (atrix) 18 (T) -4 (ransp) 2 (ose) 18 (Algorithms) ks cmr10.300 @sf 210 1826 p m (W) -2 (e) 11 (assume) 12 (that) 12 (a) 12 (matrix) 11 (is) 12 (distributed) 13 (o) 0 (v) -1 (er) 11 (a) 12 (t) 0 (w) 0 (o-di) -1 (m) -1 (ensional) 10 (pro) 1 (cessor) 14 (mesh,) 11 (or) 13 (template,) 11 (so) ks 210 1896 p m (that) 13 (in) 13 (general) 13 (eac) 0 (h) 13 (pro) 1 (cessor) 15 (has) 13 (sev) 0 (eral) 13 (blo) 1 (c) 0 (ks) 12 (of) 13 (the) 13 (matrix) 12 (as) 13 (sho) 0 (wn) 12 (in) 13 (Figure) 13 (3) 13 (\(a\),) 13 (where) ks 210 1966 p m (a) 14 (matrix) 12 (with) 13 (12) ks cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (12) 13 (blo) 1 (c) 0 (ks) 13 (is) 14 (distributed) 15 (o) 0 (v) -1 (er) 12 (a) 14 (2) ks cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 9 r m (3) 14 (template.) 17 (Denoting) 13 (the) 15 (least) 14 (comm) -1 (on) ks 210 2036 p m (m) -1 (ultipl) -1 (e) 12 (of) ks cmmi10.300 @sf 12 r m (P) s cmr10.300 @sf 18 r m (and) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 13 r m (b) 0 (y) ks cmmi10.300 @sf 12 r m (LC) 3 (M) ks cmr10.300 @sf 5 r m (,) 12 (w) 0 (e) 12 (refer) 14 (to) 13 (a) 13 (square) 14 (of) ks cmmi10.300 @sf 12 r m (LC) 3 (M) ks cmsy10.300 @sf 12 r m (\002) s cmmi10.300 @sf 8 r m (LC) 3 (M) ks cmr10.300 @sf 17 r m (blo) 1 (c) 0 (ks) 12 (as) 13 (an) ks cmmi10.300 @sf 13 r m (LC) 3 (M) ks cmr10.300 @sf 18 r m (blo) 1 (c) 0 (k.) ks 210 2105 p m (Th) 0 (us,) 11 (the) 12 (matrix) 10 (ma) -1 (y) 10 (b) 1 (e) 12 (view) 0 (ed) 11 (as) 12 (a) 11 (2) ks cmsy10.300 @sf 5 r m (\002) s cmr10.300 @sf 5 r m (2) 11 (arra) 0 (y) 11 (of) ks cmmi10.300 @sf 11 r m (LC) 3 (M) ks cmr10.300 @sf 16 r m (blo) 1 (c) 0 (ks,) 11 (as) 12 (sho) 0 (wn) 10 (in) 12 (Figure) 11 (3) 12 (\(b\).) 17 (The) ks 210 2175 p m (concept) 12 (of) 11 (the) ks cmmi10.300 @sf 11 r m (LC) 3 (M) ks cmr10.300 @sf 16 r m (blo) 1 (c) 0 (k) 10 (w) 0 (as) 10 (in) 0 (tro) 1 (duced) 10 (in) 11 ([) 0 (5) ks 1055 2175 p m (],) 11 (and) 11 (is) 11 (v) 0 (ery) 10 (useful) 11 (for) 11 (impl) -1 (em) -1 (en) 0 (ti) -1 (ng) 9 (algorithms) ks 210 2245 p m (that) 10 (use) 11 (a) 10 (blo) 1 (c) 0 (k) 8 (scattere) 1 (d) 12 (data) 9 (distribution.) 17 (Blo) 1 (c) 0 (ks) 9 (b) 1 (elong) 10 (to) 10 (the) 10 (same) 10 (pro) 1 (cessor) 11 (if) 10 (their) 10 (relativ) 0 (e) ks 210 2315 p m (lo) 1 (cations) 17 (are) 17 (the) 18 (same) 16 (in) 17 (eac) 0 (h) 17 (square) ks cmmi10.300 @sf 18 r m (LC) 3 (M) ks cmr10.300 @sf 21 r m (blo) 1 (c) 0 (k.) 27 (An) 17 (algorithm) 15 (ma) -1 (y) 15 (b) 1 (e) 18 (dev) 0 (elop) 1 (ed) 16 (for) 17 (the) ks 210 2384 p m (\014rst) s cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 18 r m (blo) 1 (c) 0 (k,) 12 (and) 13 (then) 14 (it) 13 (can) 14 (b) 1 (e) 14 (directly) 14 (applied) 12 (to) 14 (the) 14 (other) ks cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 18 r m (blo) 1 (c) 0 (ks,) 12 (whic) 0 (h) 12 (all) 12 (ha) 0 (v) 0 (e) ks 210 2454 p m (the) 19 (same) 17 (structure) 20 (and) 18 (the) 19 (same) 18 (data) 17 (distribution) 18 (as) 18 (the) 19 (\014rst) ks cmmi10.300 @sf 19 r m (LC) 3 (M) ks cmr10.300 @sf 23 r m (blo) 1 (c) 0 (k.) 30 (That) 18 (is,) 18 (when) ks 210 2524 p m (an) 15 (op) 1 (eration) 16 (is) 15 (executed) 17 (on) 15 (a) 16 (blo) 1 (c) 0 (k) 14 (of) 15 (the) 16 (\014rst) ks cmmi10.300 @sf 16 r m (LC) 3 (M) ks cmr10.300 @sf 20 r m (blo) 1 (c) 0 (k,) 14 (the) 16 (same) 15 (op) 1 (eration) 15 (can) 16 (b) 1 (e) 16 (done) ks 210 2593 p m (sim) -1 (ultaneously) 12 (on) 13 (other) 15 (blo) 1 (c) 0 (ks,) 12 (whic) 0 (h) 13 (ha) 0 (v) 0 (e) 12 (the) 14 (same) 13 (relativ) 0 (e) 13 (lo) 1 (cation) 13 (in) 13 (eac) 0 (h) ks cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 18 r m (blo) 1 (c) 0 (k.) ks @eop 4 @bop0 cmsy10.300 @sf [<4000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C0 00C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000 C000FFC07FC0> 10 42 -7 11 18] 100 @dc [<004000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000 C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C0 00C0FFC0FFC0> 10 42 0 11 18] 101 @dc cmsy7.300 @sf [<40C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0FF7F> 8 30 -5 8 15] 100 @dc cmr7.300 @sf [ 6 20 -1 0 9] 108 @dc [<0FC0387060186018C00CC00CC00CC00CC00C6018201018600FC0> 14 13 -1 0 17] 111 @dc [<0FC030306018C00CC00CC00C60183FF03FE0600060002F0030C02040606060606060204030E60F 3C> 15 20 -1 7 17] 103 @dc 1.000000 /cmr5.300 @newfont cmr5.300 @sf [ 10 13 -2 0 14] 50 @dc cmsy7.300 @sf [<01030303030303030303030303030303030303030303030303030303FFFF> 8 30 0 8 15] 101 @dc [ 18 2 -3 -6 26] 0 @dc cmmi7.300 @sf [<3C7062D041C8C0C8C0C8C0C0606060606060306010700C7007B000300018001800180018000C00 7C> 14 20 -2 0 17] 100 @dc 4 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (4) 13 (-) ks 148 64 p @beginspecial @setspecial 28943974 9538355 1644544 1644544 30588518 11182899 startTexFig %! %%BoundingBox: 25 25 465 170 /dwdict 100 dict def dwdict begin /Box { /height exch def /length exch def length 0 rlineto 0 height rlineto length neg 0 rlineto closepath } def /Grid { /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny { pop x y moveto lenx 0 rlineto stroke /y y dely add def} for /y ypos def /x xpos def 0 1 nx { pop x y moveto 0 leny rlineto stroke /x x delx add def} for } def /Gridbox { /ny exch def /nx exch def /dely exch def /delx exch def /ypos exch def /xpos exch def /leny { ny dely mul} def /lenx { nx delx mul} def xpos ypos moveto [2 2] 0 setdash delx dely nx ny Grid newpath xpos ypos moveto [] 0 setdash lenx leny Box stroke } def /Circle { 0 360 arc } def /Ndots { /crad exch def /csep exch def /ndots exch def currentpoint /ymid exch def /xmid exch def 1 1 ndots { newpath xmid ymid crad Circle fill /xmid xmid csep add def} for } def /Cgrid { /crad exch def /ny exch def /nx exch def /dely exch def /delx exch def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def 0 1 ny 1 sub{ pop 0 1 nx 1 sub{ pop newpath x y crad Circle fill /x x delx add def} for /x xpos def /y y dely add def} for } def /PaintCircle { /lh exch def /crad exch def /ymid exch def /xmid exch def newpath xmid ymid crad Circle gsave 1 setgray fill grestore stroke xmid ymid moveto dup stringwidth pop 2 div neg lh neg rmoveto show } def /GridSym { /isymbol exch def /ny exch def /nx exch def /dely exch def /delx exch def /leny { ny dely mul} def /lenx { nx delx mul} def currentpoint /ypos exch def /xpos exch def /y ypos def /x xpos def /dx3 delx 3 div def /dy3 dely 3 div def 1 1 nx { pop /y ypos def 1 1 ny { pop isymbol 1 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { x y PlusSym } if isymbol 3 eq { x y CrossSym } if isymbol 4 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { newpath x delx 2 div add y dely 2 div add delx 3 div Csym fill } if isymbol 6 eq { x dx3 2 div add y dy3 2 div add dx3 2 mul dy3 2 mul TriSym fill } if isymbol 7 eq { 2 copy PlusSym CrossSym } if isymbol 8 eq { x y RectSym gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { x y RectSym fill } if isymbol 10 eq { newpath x delx 2 div add y dely 2 div add delx 5 div gray Cfillsym stroke } if /y y dely add def} for /x x delx add def} for } def /PlusSym { newpath moveto delx 2 div 0 rmoveto 0 dely rlineto delx 2 div neg dely 2 div neg rmoveto delx 0 rlineto stroke } def /RectSym { newpath moveto delx 0 rlineto 0 dely rlineto delx neg 0 rlineto closepath } def /CrossSym { newpath moveto delx dely rlineto delx neg 0 rmoveto delx dely neg rlineto stroke } def /TriSym { /ddy exch def /ddx exch def newpath moveto ddx 0 rlineto ddx 2 div neg ddy rlineto closepath } def /Csym % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def /Cfillsym % stack: xcen ycen radius gray => ??? Draws shaded circle centered % on (xcen ycen) { /gray exch def 0 360 arc gsave gray setgray fill grestore } def % % Ignore everything above % /Del 7 def % size of each element /br 3 def % block size /bc 4 def % block size /nr 2 def % number processor rows /nc 3 def % number processor columns /Mr 36 def % number of rows in matrix /Mc 48 def % number of columns in matrix /roff 10 def % vertical offset for printing numbers /Mrsize Mr Del mul def /Mcsize Mc Del mul def /brsize br Del mul def /bcsize bc Del mul def /nrsize nr brsize mul def /ncsize nc bcsize mul def /brows Mr br idiv ceiling def /bcols Mc bc idiv ceiling def /trows Mr nr br mul idiv ceiling def /tcols Mc nc bc mul idiv ceiling def 60 24 translate /Helvetica findfont brsize 0.8 mul scalefont setfont 0.5 0.5 scale /ShadeBox{ brsize mul exch bcsize mul exch moveto bcsize 0 rlineto 0 brsize rlineto bcsize neg 0 rlineto closepath gsave 0.87 setgray fill grestore newpath } def /ShadeBigBox{ /brleng exch brsize mul def /bcleng exch bcsize mul def brsize mul exch bcsize mul exch moveto bcleng 0 rlineto 0 brleng rlineto bcleng neg 0 rlineto closepath gsave 0.87 setgray fill grestore newpath } def /WriteBigName{ /pid exch def /bcpos exch brsize mul 8 sub def /brpos exch bcsize mul 8 sub def brpos bcpos moveto /Helvetica-Oblique findfont 30 scalefont setfont (LCM) show } def /WriteRowIndex{ /indx exch def /bcpos exch brsize mul 2.5 add def /brpos exch bcsize mul 2 sub def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /WriteColIndex{ /indx exch def /bcpos exch brsize mul 7 add def /brpos exch bcsize mul 2 add def brpos bcpos moveto /Helvetica-Oblique findfont 18 scalefont setfont indx show } def /Tmat { 0 brsize brows mul translate 1 1 trows { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols 1 sub { /colno exch def /colpar colno 2 mod def colpar rowpar eq { gsave 0.87 setgray colno ncsize mul rowno nrsize mul neg moveto ncsize nrsize Box fill grestore } if nr 1 sub -1 0 { /nrpos exch def 1 1 nc { /ncpos exch def nr nrpos 1 add sub nc mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize mul exch sub colno ncsize mul add nrpos 0.7 add brsize mul roff sub rowno nrsize mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.2 setlinewidth 0 0 moveto bcsize nc mul brsize nr mul neg bcols nc div brows nr div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def /Amat { 0 brsize brows mul translate 1 1 trows { /rowno exch def /rowpar rowno 1 sub 2 mod def 0 1 tcols 1 sub { /colno exch def /colpar colno 2 mod def nr 1 sub -1 0 { /nrpos exch def 1 1 nc { /ncpos exch def nr nrpos 1 add sub nc mul ncpos add 1 sub 3 string cvs dup stringwidth pop 0.5 mul ncpos 0.5 sub bcsize mul exch sub colno ncsize mul add nrpos 0.7 add brsize mul roff sub rowno nrsize mul neg add moveto show } for } for } for } for 3 setlinewidth 0 0 moveto Mcsize Mrsize neg Box stroke 1.4 setlinewidth 0 0 moveto bcsize 6 mul brsize 6 mul neg bcols 6 div brows 6 div Grid stroke 0 setlinewidth 0 0 moveto bcsize brsize neg bcols brows Grid } def -1 11 ( 0) WriteRowIndex -1 10 ( 1) WriteRowIndex -1 9 ( 2) WriteRowIndex -1 8 ( 3) WriteRowIndex -1 7 ( 4) WriteRowIndex -1 6 ( 5) WriteRowIndex -1 5 ( 6) WriteRowIndex -1 4 ( 7) WriteRowIndex -1 3 ( 8) WriteRowIndex -1 2 ( 9) WriteRowIndex -1 1 (10) WriteRowIndex -1 0 (11) WriteRowIndex 0 12 ( 0) WriteColIndex 1 12 ( 1) WriteColIndex 2 12 ( 2) WriteColIndex 3 12 ( 3) WriteColIndex 4 12 ( 4) WriteColIndex 5 12 ( 5) WriteColIndex 6 12 ( 6) WriteColIndex 7 12 ( 7) WriteColIndex 8 12 ( 8) WriteColIndex 9 12 ( 9) WriteColIndex 10 12 (10) WriteColIndex 11 12 (11) WriteColIndex /Times-Roman findfont 20 scalefont setfont ((a) block distribution over template) dup stringwidth pop 2 div 6 bcsize mul exch sub -28 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Tmat bcsize bcols 3.4 add mul brsize brows 1 mul 0 add mul neg translate 0 6 6 6 ShadeBigBox 6 0 6 6 ShadeBigBox -1 11 ( 0) WriteRowIndex -1 10 ( 1) WriteRowIndex -1 9 ( 2) WriteRowIndex -1 8 ( 3) WriteRowIndex -1 7 ( 4) WriteRowIndex -1 6 ( 5) WriteRowIndex -1 5 ( 6) WriteRowIndex -1 4 ( 7) WriteRowIndex -1 3 ( 8) WriteRowIndex -1 2 ( 9) WriteRowIndex -1 1 (10) WriteRowIndex -1 0 (11) WriteRowIndex 0 12 ( 0) WriteColIndex 1 12 ( 1) WriteColIndex 2 12 ( 2) WriteColIndex 3 12 ( 3) WriteColIndex 4 12 ( 4) WriteColIndex 5 12 ( 5) WriteColIndex 6 12 ( 6) WriteColIndex 7 12 ( 7) WriteColIndex 8 12 ( 8) WriteColIndex 9 12 ( 9) WriteColIndex 10 12 (10) WriteColIndex 11 12 (11) WriteColIndex /Times-Roman findfont 20 scalefont setfont ((b) LCM block distribution) dup stringwidth pop 2 div 6 bcsize mul exch sub -28 moveto show /Helvetica findfont brsize 0.8 mul scalefont setfont Amat showpage end endTexFig @endspecial 210 834 p m (Figure) 13 (3:) 17 (A) 12 (matrix) 11 (with) 12 (12) ks cmsy10.300 @sf 6 r m (\002) s cmr10.300 @sf 6 r m (12) 12 (blo) 1 (c) 0 (ks) 12 (is) 12 (distributed) 13 (o) 0 (v) 0 (er) 11 (a) 12 (2) ks cmsy10.300 @sf 6 r m (\002) s cmr10.300 @sf 6 r m (3) 13 (pro) 1 (cessor) 14 (template.) 17 (\(a\)) 13 (Eac) 0 (h) ks 210 884 p m (shaded) 20 (and) 18 (unshaded) 20 (area) 19 (represe) 1 (n) 0 (ts) 20 (di\013eren) 0 (t) 19 (templates.) 32 (The) 20 (n) 0 (um) -2 (b) 1 (ered) 19 (squares) 20 (represen) 0 (t) ks 210 933 p m (blo) 1 (c) 0 (ks) 14 (of) 15 (elemen) 0 (ts,) 14 (and) 15 (the) 16 (n) 0 (um) -2 (b) 1 (er) 14 (indicates) 16 (at) 15 (whic) 0 (h) 14 (lo) 1 (cation) 14 (in) 15 (the) 16 (pro) 1 (cessor) 17 (template) 14 (the) ks 210 983 p m (blo) 1 (c) 0 (k) 16 (is) 17 (stored) 18 ({) 18 (all) 16 (blo) 1 (c) 0 (ks) 16 (lab) 1 (eled) 17 (with) 17 (the) 18 (same) 17 (n) 0 (um) -2 (b) 1 (er) 16 (are) 18 (stored) 18 (in) 17 (the) 18 (same) 17 (pro) 1 (cessor.) ks 210 1033 p m (The) s cmsl10.300 @sf 15 r m (slan) 0 (ted) ks cmr10.300 @sf 14 r m (n) 0 (um) -2 (b) 1 (ers,) 14 (on) 15 (the) 15 (left) 14 (and) 15 (on) 14 (the) 16 (top) 14 (of) 15 (the) 15 (matrix,) 12 (represe) 1 (n) 0 (t) 16 (indices) 15 (of) 14 (ro) 0 (w) 13 (blo) 1 (c) 0 (k) ks 210 1083 p m (and) 15 (column) 13 (blo) 1 (c) 0 (k,) 13 (resp) 1 (ect) 1 (iv) 0 (ely) -2 (.) 19 (\(b\)) 15 (The) 16 (matrix) 13 (has) 15 (2) ks cmsy10.300 @sf 9 r m (\002) s cmr10.300 @sf 11 r m (2) s cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 20 r m (blo) 1 (c) 0 (ks.) 20 (Blo) 1 (c) 0 (ks) 14 (b) 1 (elong) 15 (to) 14 (the) ks 210 1133 p m (same) 12 (pro) 1 (cessor) 15 (if) 12 (the) 13 (relativ) 0 (e) 12 (lo) 1 (cations) 13 (of) 12 (blo) 1 (c) 0 (ks) 12 (are) 13 (the) 14 (same) 12 (in) 12 (eac) 0 (h) 13 (square) ks cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 17 r m (blo) 1 (c) 0 (k.) 16 (The) ks 210 1182 p m (de\014nition) 13 (of) 14 (the) ks cmmi10.300 @sf 14 r m (LC) 3 (M) ks cmr10.300 @sf 19 r m (blo) 1 (c) 0 (k) 12 (is) 14 (de\014ned) 15 (in) 13 (the) 15 (text.) ks 210 1307 p m (subblo) 1 (c) 0 (ks) 13 (to) 14 (transmit.) ks 272 1377 p m (The) 14 (binary) 14 (exc) 0 (hange) 13 (sc) 0 (heme) 13 (completes) 14 (in) ks cmsy10.300 @sf 13 r m (d) s cmr10.300 @sf m (log) s cmr7.300 @sf 1119 1387 p m (2) s cmmi10.300 @sf 1138 1377 p m (P) s cmsy10.300 @sf 6 r m (e) s cmr10.300 @sf 13 r m (steps) 16 (and) 13 (the) 15 (amoun) -1 (t) 12 (of) 13 (data) 13 (transmit-) ks 210 1446 p m (ted) 18 (in) 16 (eac) 0 (h) 17 (step) 18 (is) 17 (\014xed) 17 (at) 17 (2) ks cmsy7.300 @sf 747 1432 p m (d) s cmr7.300 @sf m (log) s cmr5.300 @sf 805 1440 p m (2) s cmmi7.300 @sf 821 1432 p m (P) s cmsy7.300 @sf 4 r m (e\000) s cmr7.300 @sf m (1) s cmr10.300 @sf 924 1446 p m (subblo) 1 (c) 0 (ks,) 17 (where) ks cmmi10.300 @sf 18 r m (P) s cmr10.300 @sf 22 r m (is) 17 (the) 18 (n) 0 (um) -2 (b) 1 (er) 16 (of) 17 (pro) 1 (cessors.) 29 (The) ks 210 1516 p m (rotating) 11 (sc) 0 (heme) 11 (can) 12 (a) 0 (v) 0 (oi) -1 (d) 10 (net) 0 (w) 0 (ork) 10 (congestion,) 12 (but) 12 (requires) ks cmmi10.300 @sf 14 r m (P) s cmsy10.300 @sf 10 r m (\000) s cmr10.300 @sf 5 r m (1) 12 (steps) 14 (and) 11 (the) 13 (amoun) -1 (t) 10 (of) 11 (data) ks 210 1586 p m (transmitted) 16 (in) 17 (the) 17 (initial) 15 (steps) 19 (is) 16 (large.) 27 (In) 17 (the) 17 (direct) 18 (p) 1 (oin) 0 (t-to-p) 1 (oin) -1 (t) 15 (comm) -2 (unicatio) -1 (n) 15 (sc) 0 (heme,) ks 210 1656 p m (the) 14 (n) 0 (um) -2 (b) 1 (er) 12 (of) 12 (steps) 14 (is) 13 (the) 14 (same) 12 (in) 12 (the) 14 (rotating) 12 (sc) 0 (heme,) 12 (but) 13 (the) 14 (amoun) -1 (t) 11 (of) 12 (data) 13 (transmitted) 12 (in) ks 210 1725 p m (eac) 0 (h) 13 (step) 15 (is) 14 (only) 13 (one) 14 (subblo) 1 (c) 0 (k.) ks 272 1795 p m (The) 13 (three) 14 (sc) 0 (hemes) 11 (ha) 0 (v) 0 (e) 10 (b) 1 (een) 14 (implem) -1 (en) -1 (ted) 11 (on) 12 (16) 12 (no) 1 (des) 13 (of) 11 (the) 13 (Delta) 12 (and) 12 (their) 13 (p) 1 (erformances) ks 210 1865 p m (are) 18 (compared) 17 (in) 17 (Figure) 18 (2.) 29 (The) 18 (binary) 18 (exc) 0 (hange) 17 (and) 18 (the) 18 (rotating) 17 (sc) 0 (hemes) 17 (are) 18 (implem) -1 (en) -1 (ted) ks 210 1935 p m (with) 11 (an) 12 (o) 1 (dd-ev) 0 (en) 11 (comm) -2 (unicatio) -1 (n) 10 (sc) 0 (heme,) 11 (whic) 0 (h) 10 (is) 12 (preferable) 12 (to) 12 (a) 11 (sim) 0 (ul) -1 (taneous) 10 (comm) -1 (uni) -1 (cation) ks 210 2004 p m (sc) 0 (heme) 13 (on) 14 (the) 14 (Delta) 14 ([) 0 (5) ks 626 2004 p m (,) 0 (11) ks 679 2004 p m (].) 18 (In) 14 (this) 14 (algorithm) -1 (,) 11 (o) 1 (dd-n) 0 (um) -1 (b) 1 (ered) 13 (pro) 1 (cessors) 16 (send) 15 (their) 14 (o) 0 (wn) 13 (blo) 1 (c) 0 (ks) ks 210 2074 p m (and) 18 (ev) 0 (en-n) 0 (um) -2 (b) 1 (ered) 17 (pro) 1 (cessors) 20 (receiv) 0 (e) 18 (them) 17 (in) 17 (the) 19 (\014rst) 19 (step,) 19 (and) 18 (ev) 0 (en-n) 0 (um) -3 (b) 1 (ered) 18 (pro) 1 (cessors) ks 210 2144 p m (send) 13 (and) 12 (o) 1 (dd-n) 0 (um) -2 (b) 1 (ered) 12 (pro) 1 (cessors) 14 (receiv) 0 (e) 12 (in) 12 (the) 13 (next) 12 (step.) 19 (On) ks cmmi10.300 @sf 12 r m (P) s cmr10.300 @sf 17 r m (=) 12 (2) ks cmmi7.300 @sf 1473 2130 p m (d) s cmr10.300 @sf 1504 2144 p m (pro) 1 (cessors,) 14 (as) 12 (sho) 0 (wn) 11 (in) ks 210 2214 p m (Figure) 12 (2,) 11 (the) 13 (binary) 11 (exc) 0 (hange) 11 (sc) 0 (heme) 11 (is) 12 (the) 12 (fastest.) 18 (Ho) 0 (w) 0 (ev) -1 (er,) 10 (if) ks cmmi10.300 @sf 11 r m (P) s cmr10.300 @sf 17 r m (is) 12 (not) 11 (a) 12 (p) 1 (o) 0 (w) 0 (er) 10 (of) 11 (2,) 11 (then) 13 (this) ks 210 2283 p m (sc) 0 (heme) 14 (b) 1 (ecomes) 15 (v) 0 (ery) 15 (complicated) 14 (and) 14 (ma) 0 (y) 12 (b) 1 (e) 16 (slo) 0 (w) -1 (er) 14 (than) 15 (the) 16 (direct) 16 (comm) -2 (unicati) -1 (on) 13 (sc) 0 (heme.) ks 210 2353 p m (The) 17 (direct) 17 (comm) -2 (unicatio) -1 (n) 15 (sc) 0 (heme) 15 (is) 17 (ab) 1 (out) 16 (20%) 15 (slo) 0 (w) 0 (er) 15 (than) 16 (the) 17 (binary) 16 (exc) 0 (hange) 16 (sc) 0 (heme) 15 (for) ks 210 2423 p m (the) 16 (w) 0 (orst) 14 (case) 16 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 19 r m (=) 14 (2) ks cmmi7.300 @sf 614 2409 p m (d) s cmr10.300 @sf 633 2423 p m (\),) 15 (but) 16 (it) 15 (is) 15 (simple) 13 (to) 15 (implem) -1 (en) -1 (t) 13 (on) 15 (an) 15 (arbitrary) 15 (n) 0 (um) -1 (b) 1 (er) 14 (of) 14 (pro) 1 (cessors.) ks 210 2493 p m (W) -2 (e) 17 (adopted) 19 (the) 20 (simple) 17 (direct) 19 (comm) -1 (uni) -1 (cation) 17 (sc) 0 (heme) 17 (for) 19 (the) 19 (implem) -1 (en) -1 (tation) 16 (of) 18 (the) 20 (matrix) ks 210 2562 p m (transp) 1 (ose) 15 (algorithms,) 11 (whic) 0 (h) 13 (are) 14 (explained) 14 (in) 13 (detail) 14 (in) 13 (the) 15 (next) 14 (section.) ks @eop 3 @bop0 3 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (3) 13 (-) ks 259 265 p @beginspecial @setspecial 25654886 9933045 131563 -65781 25786449 9867264 startTexFig %!PS-Adobe-2.0 EPSF-1.2 %%DocumentFonts: Times-Roman %%Pages: 1 %%BoundingBox: 2 -1 392 150 %%EndComments /arrowHeight 10 def /arrowWidth 5 def /IdrawDict 51 dict def IdrawDict begin /reencodeISO { dup dup findfont dup length dict begin { 1 index /FID ne { def }{ pop pop } ifelse } forall /Encoding ISOLatin1Encoding def currentdict end definefont } def /ISOLatin1Encoding [ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright /parenleft/parenright/asterisk/plus/comma/minus/period/slash /zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon /less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N /O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright /asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m /n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve /dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut /ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar /section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot /hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior /acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine /guillemotright/onequarter/onehalf/threequarters/questiondown /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute /Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis /aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave /iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex /otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis /yacute/thorn/ydieresis ] def /Times-Roman reencodeISO def /none null def /numGraphicParameters 17 def /stringLimit 65535 def /Begin { save numGraphicParameters dict begin } def /End { end restore } def /SetB { dup type /nulltype eq { pop false /brushRightArrow idef false /brushLeftArrow idef true /brushNone idef } { /brushDashOffset idef /brushDashArray idef 0 ne /brushRightArrow idef 0 ne /brushLeftArrow idef /brushWidth idef false /brushNone idef } ifelse } def /SetCFg { /fgblue idef /fggreen idef /fgred idef } def /SetCBg { /bgblue idef /bggreen idef /bgred idef } def /SetF { /printSize idef /printFont idef } def /SetP { dup type /nulltype eq { pop true /patternNone idef } { dup -1 eq { /patternGrayLevel idef /patternString idef } { /patternGrayLevel idef } ifelse false /patternNone idef } ifelse } def /BSpl { 0 begin storexyn newpath n 1 gt { 0 0 0 0 0 0 1 1 true subspline n 2 gt { 0 0 0 0 1 1 2 2 false subspline 1 1 n 3 sub { /i exch def i 1 sub dup i dup i 1 add dup i 2 add dup false subspline } for n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline } if n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if brushNone not { istroke } if 0 0 1 1 leftarrow n 2 sub dup n 1 sub dup rightarrow } if end } dup 0 4 dict put def /Circ { newpath 0 360 arc patternNone not { ifill } if brushNone not { istroke } if } def /CBSpl { 0 begin dup 2 gt { storexyn newpath n 1 sub dup 0 0 1 1 2 2 true subspline 1 1 n 3 sub { /i exch def i 1 sub dup i dup i 1 add dup i 2 add dup false subspline } for n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline n 2 sub dup n 1 sub dup 0 0 1 1 false subspline patternNone not { ifill } if brushNone not { istroke } if } { Poly } ifelse end } dup 0 4 dict put def /Elli { 0 begin newpath 4 2 roll translate scale 0 0 1 0 360 arc patternNone not { ifill } if brushNone not { istroke } if end } dup 0 1 dict put def /Line { 0 begin 2 storexyn newpath x 0 get y 0 get moveto x 1 get y 1 get lineto brushNone not { istroke } if 0 0 1 1 leftarrow 0 0 1 1 rightarrow end } dup 0 4 dict put def /MLine { 0 begin storexyn newpath n 1 gt { x 0 get y 0 get moveto 1 1 n 1 sub { /i exch def x i get y i get lineto } for patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if brushNone not { istroke } if 0 0 1 1 leftarrow n 2 sub dup n 1 sub dup rightarrow } if end } dup 0 4 dict put def /Poly { 3 1 roll newpath moveto -1 add { lineto } repeat closepath patternNone not { ifill } if brushNone not { istroke } if } def /Rect { 0 begin /t exch def /r exch def /b exch def /l exch def newpath l b moveto l t lineto r t lineto r b lineto closepath patternNone not { ifill } if brushNone not { istroke } if end } dup 0 4 dict put def /Text { ishow } def /idef { dup where { pop pop pop } { exch def } ifelse } def /ifill { 0 begin gsave patternGrayLevel -1 ne { fgred bgred fgred sub patternGrayLevel mul add fggreen bggreen fggreen sub patternGrayLevel mul add fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor eofill } { eoclip originalCTM setmatrix pathbbox /t exch def /r exch def /b exch def /l exch def /w r l sub ceiling cvi def /h t b sub ceiling cvi def /imageByteWidth w 8 div ceiling cvi def /imageHeight h def bgred bggreen bgblue setrgbcolor eofill fgred fggreen fgblue setrgbcolor w 0 gt h 0 gt and { l b translate w h scale w h true [w 0 0 h neg 0 h] { patternproc } imagemask } if } ifelse grestore end } dup 0 8 dict put def /istroke { gsave brushDashOffset -1 eq { [] 0 setdash 1 setgray } { brushDashArray brushDashOffset setdash fgred fggreen fgblue setrgbcolor } ifelse brushWidth setlinewidth originalCTM setmatrix stroke grestore } def /ishow { 0 begin gsave fgred fggreen fgblue setrgbcolor /fontDict printFont printSize scalefont dup setfont def /descender fontDict begin 0 [FontBBox] 1 get FontMatrix end transform exch pop def /vertoffset 1 printSize sub descender sub def { 0 vertoffset moveto show /vertoffset vertoffset printSize sub def } forall grestore end } dup 0 3 dict put def /patternproc { 0 begin /patternByteLength patternString length def /patternHeight patternByteLength 8 mul sqrt cvi def /patternWidth patternHeight def /patternByteWidth patternWidth 8 idiv def /imageByteMaxLength imageByteWidth imageHeight mul stringLimit patternByteWidth sub min def /imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv patternHeight mul patternHeight max def /imageHeight imageHeight imageMaxHeight sub store /imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def 0 1 imageMaxHeight 1 sub { /y exch def /patternRow y patternByteWidth mul patternByteLength mod def /patternRowString patternString patternRow patternByteWidth getinterval def /imageRow y imageByteWidth mul def 0 patternByteWidth imageByteWidth 1 sub { /x exch def imageString imageRow x add patternRowString putinterval } for } for imageString end } dup 0 12 dict put def /min { dup 3 2 roll dup 4 3 roll lt { exch } if pop } def /max { dup 3 2 roll dup 4 3 roll gt { exch } if pop } def /midpoint { 0 begin /y1 exch def /x1 exch def /y0 exch def /x0 exch def x0 x1 add 2 div y0 y1 add 2 div end } dup 0 4 dict put def /thirdpoint { 0 begin /y1 exch def /x1 exch def /y0 exch def /x0 exch def x0 2 mul x1 add 3 div y0 2 mul y1 add 3 div end } dup 0 4 dict put def /subspline { 0 begin /movetoNeeded exch def y exch get /y3 exch def x exch get /x3 exch def y exch get /y2 exch def x exch get /x2 exch def y exch get /y1 exch def x exch get /x1 exch def y exch get /y0 exch def x exch get /x0 exch def x1 y1 x2 y2 thirdpoint /p1y exch def /p1x exch def x2 y2 x1 y1 thirdpoint /p2y exch def /p2x exch def x1 y1 x0 y0 thirdpoint p1x p1y midpoint /p0y exch def /p0x exch def x2 y2 x3 y3 thirdpoint p2x p2y midpoint /p3y exch def /p3x exch def movetoNeeded { p0x p0y moveto } if p1x p1y p2x p2y p3x p3y curveto end } dup 0 17 dict put def /storexyn { /n exch def /y n array def /x n array def n 1 sub -1 0 { /i exch def y i 3 2 roll put x i 3 2 roll put } for } def %%EndProlog %%BeginIdrawPrologue /arrowhead { 0 begin transform originalCTM itransform /taily exch def /tailx exch def transform originalCTM itransform /tipy exch def /tipx exch def /dy tipy taily sub def /dx tipx tailx sub def /angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def gsave originalCTM setmatrix tipx tipy translate angle rotate newpath arrowHeight neg arrowWidth 2 div moveto 0 0 lineto arrowHeight neg arrowWidth 2 div neg lineto patternNone not { originalCTM setmatrix /padtip arrowHeight 2 exp 0.25 arrowWidth 2 exp mul add sqrt brushWidth mul arrowWidth div def /padtail brushWidth 2 div def tipx tipy translate angle rotate padtip 0 translate arrowHeight padtip add padtail add arrowHeight div dup scale arrowheadpath ifill } if brushNone not { originalCTM setmatrix tipx tipy translate angle rotate arrowheadpath istroke } if grestore end } dup 0 9 dict put def /arrowheadpath { newpath arrowHeight neg arrowWidth 2 div moveto 0 0 lineto arrowHeight neg arrowWidth 2 div neg lineto } def /leftarrow { 0 begin y exch get /taily exch def x exch get /tailx exch def y exch get /tipy exch def x exch get /tipx exch def brushLeftArrow { tipx tipy tailx taily arrowhead } if end } dup 0 4 dict put def /rightarrow { 0 begin y exch get /tipy exch def x exch get /tipx exch def y exch get /taily exch def x exch get /tailx exch def brushRightArrow { tipx tipy tailx taily arrowhead } if end } dup 0 4 dict put def %%EndIdrawPrologue %I Idraw 10 Grid 5 5 %%Page: 1 1 Begin %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 0.799705 0 0 0.799705 0 0 ] concat /originalCTM matrix currentmatrix def Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 31 ] concat %I [ (step 1) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 55 31 ] concat %I [ (step 2) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 100 31 ] concat %I [ (step 3) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 -5 -1 ] concat Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 185 ] concat %I [ (0) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 165 ] concat %I [ (1) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 145 ] concat %I [ (2) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 125 ] concat %I [ (3) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 105 ] concat %I [ (4) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 85 ] concat %I [ (5) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 65 ] concat %I [ (6) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 45 ] concat %I [ (7) ] Text End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 45 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 90 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 63 359 83 339 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 83 339 63 319 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -40 ] concat Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 63 359 83 339 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 83 339 63 319 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -80 ] concat Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 63 359 83 339 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 83 339 63 319 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -120 ] concat Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 63 359 83 339 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 83 339 63 319 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 183 319 153 279 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 153 359 183 319 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 183 279 153 239 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 153 319 183 279 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 183 319 153 279 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 153 359 183 319 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 183 279 153 239 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 153 319 183 279 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 283 279 243 199 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 243 359 283 279 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 283 279 243 199 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 243 359 283 279 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 283 279 243 199 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 243 359 283 279 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 283 279 243 199 Line %I 2 End Begin %I Line %I b 65535 0 1 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 0.5 ] concat %I 243 359 283 279 Line %I 2 End End %I eop Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 355 31 ] concat %I [ (step 1) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 325 -1 ] concat Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 185 ] concat %I [ (0) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 165 ] concat %I [ (1) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 145 ] concat %I [ (2) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 125 ] concat %I [ (3) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 105 ] concat %I [ (4) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 85 ] concat %I [ (5) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 65 ] concat %I [ (6) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 45 ] concat %I [ (7) ] Text End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 180 0 ] concat Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 165 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 0 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -100 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -120 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 172 353 252 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 353 252 373 452 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 30 0 ] concat Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 365 31 ] concat %I [ (step 2) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 355 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 0 -100 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 793 432 773 372 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 773 452 793 432 Line %I 2 End End %I eop Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 723 242 753 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 753 172 723 242 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 723 282 753 452 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 753 212 723 282 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 430 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 624 452 644 422 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 644 422 624 332 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 624 412 644 382 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 644 382 624 292 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -86 ] concat %I 624 452 644 422 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -86 ] concat %I 644 422 624 332 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -86 ] concat %I 624 412 644 382 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -86 ] concat %I 644 382 624 292 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -106 ] concat %I 644 382 624 292 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -106 ] concat %I 624 412 644 382 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 604 252 574 302 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 574 302 604 452 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 604 212 574 262 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -46 ] concat %I 574 262 604 412 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -66 ] concat %I 574 262 604 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 148 -66 ] concat %I 604 212 574 262 Line %I 2 End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 440 31 ] concat %I [ (step 3) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 41.4 176.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 41.4 136.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 41.4 96.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 41.4 56.2801 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 189 31 ] concat %I [ (step 1) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 159 -1 ] concat Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 185 ] concat %I [ (0) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 165 ] concat %I [ (1) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 145 ] concat %I [ (2) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 125 ] concat %I [ (3) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 105 ] concat %I [ (4) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 85 ] concat %I [ (5) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 65 ] concat %I [ (6) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 10 45 ] concat %I [ (7) ] Text End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 14 0 ] concat Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 165 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 0 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -100 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -120 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 172 353 252 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 353 252 373 452 Line %I 2 End End %I eop Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 215.4 181.28 ] concat %I [ (\(7\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 215.4 161.28 ] concat %I [ (\(7\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 215.4 121.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 215.4 141.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 179.9 61.2801 ] concat %I [ (\(7\)) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t u Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 234 31 ] concat %I [ (step 2) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 59 0 ] concat Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 165 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 0 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -100 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -120 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 172 353 252 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 353 252 373 452 Line %I 2 End End %I eop Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 260.4 181.28 ] concat %I [ (\(6\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 260.4 161.28 ] concat %I [ (\(6\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 260.4 141.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 260.4 121.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 224.9 61.2801 ] concat %I [ (\(6\)) ] Text End End %I eop Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 381.4 181.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 426.4 176.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 471.4 171.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 345.9 61.2801 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 385.9 56.2801 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 430.9 51.2801 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 475 31 ] concat %I [ (.....) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 214 11 ] concat %I [ (\(b\) Rotating) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 340 11 ] concat %I [ (\(c\) Direct Communication) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 91.4 166.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 91.4 146.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 91.4 86.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 91.4 66.2801 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 141.9 86.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 141.9 106.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 141.9 126.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 141.9 146.28 ] concat %I [ (\(4\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 381.4 161.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 426.4 156.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 471.4 146.28 ] concat %I [ (\(1\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 381.4 141.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 381.4 121.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 426.4 136.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 426.4 116.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 471.4 126.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 471.4 106.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 23 11 ] concat %I [ (\(a\) Binary Exchange) ] Text End Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 107 0 ] concat Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 165 0 ] concat Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 28.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -51.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -31.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -11.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 8.09999 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 48.1 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 -71.9 ] concat %I 189 373 10 10 Elli End Begin %I Elli %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg none SetP %I p n %I t [ 0.3 0 0 0.3 -31.7 68.1 ] concat %I 189 373 10 10 Elli End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 0 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -20 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -40 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -60 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -80 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -100 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Pict %I b u %I cfg u %I cbg u %I f u %I p u %I t [ 1 0 0 1 9.99998 -120 ] concat Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 383 442 373 412 Line %I 2 End Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 452 383 442 Line %I 2 End End %I eop Begin %I Line %I b 65535 0 0 0 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 373 172 353 252 Line %I 2 End Begin %I Line %I b 65535 0 0 1 [] 0 SetB %I cfg Black 0 0 0 SetCFg %I cbg White 1 1 1 SetCBg %I p 0 SetP %I t [ 0.5 -0 -0 0.5 -1.5 -46 ] concat %I 353 252 373 452 Line %I 2 End End %I eop Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 308.4 141.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 308.4 121.28 ] concat %I [ ( :) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 308.4 181.28 ] concat %I [ (\(5\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 308.4 161.28 ] concat %I [ (\(5\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 0.88 0 0 0.88 272.9 61.2801 ] concat %I [ (\(5\)) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 282 31 ] concat %I [ (step3) ] Text End Begin %I Text %I cfg Black 0 0 0 SetCFg %I f *-times-medium-r-*-120-* Times-Roman 12 SetF %I t [ 1 0 0 1 314 31 ] concat %I [ (.....) ] Text End End %I eop showpage %%Trailer end endTexFig @endspecial 210 1036 p m (Figure) 16 (1:) 22 (Three) 17 (complete) 15 (exc) 0 (hange) 16 (comm) -2 (uni) -1 (cation) 14 (sc) 0 (hemes) 15 (on) 16 (8) 16 (pro) 1 (cessors.) 26 (The) 16 (n) 0 (um) -1 (b) 1 (er) 14 (in) ks 210 1086 p m (paren) 0 (theses) 15 (denotes) 15 (the) 15 (amoun) -1 (t) 12 (of) 13 (data) 14 (to) 13 (transmit.) ks 350 1397 p @beginspecial @setspecial 22588582 13667963 1915123 2119659 24503705 15787622 startTexFig %! %%BoundingBox: 29.1133 32.2226 372.5 240 % Here are David's graph plotting routines % %! %! /dwdict 100 dict def dwdict begin /PlotAxes % ptsize.....point size of numbers on axes { % ticksize...length of tick marks /ytick exch def % xlen.......length of x axis /xtick exch def % ylen.......length of y axis /ystart exch def % xinc.......increment between ticks on x axis /xstart exch def % yinc.......increment between ticks on y axis /yinc exch def % xstart.....starting value on x axis /xinc exch def % ystart.....starting value on y axis /ylen exch def % xtick......number of ticks on x axis /xlen exch def % ytick......number of ticks on y axis /ticksize exch def /ptsize exch def /yflag exch def % yflag......if yflag=1 truncate numbers to integers /xflag exch def % xflag......if xflag=1 truncate numbers to integers /BoxFlag exch def % BoxFlag....if 1 then draw 4 axes, <0 ticks inside. % +/-2 then don't label x ticks, % +/-3 then don't label y ticks. newpath xlen 0 moveto 0 0 lineto 0 ylen lineto stroke BoxFlag 0 ne {newpath xlen 0 moveto xlen ylen lineto 0 ylen lineto stroke} if /Times-Roman findfont ptsize scalefont setfont /xscale xlen xinc xtick 1 sub mul div def /yscale ylen yinc ytick 1 sub mul div def /str 10 string def /xpos 0 def /inc xlen xtick 1 sub div def 1 1 xtick { 1 sub xinc mul xstart add /val exch def newpath xpos 0 moveto 0 ticksize neg BoxFlag 0 lt {neg} if rlineto stroke BoxFlag 0 ne {newpath xpos ylen moveto 0 ticksize BoxFlag 0 lt {neg} if rlineto stroke} if BoxFlag 2 ne BoxFlag -2 ne and{ xflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop 2 div xpos exch sub ptsize ticksize add BoxFlag 0 lt {ticksize sub} if neg moveto show} if /xpos xpos inc add def } for /ypos 0 def /inc ylen ytick 1 sub div def 1 1 ytick { 1 sub yinc mul ystart add /val exch def newpath 0 ypos moveto ticksize neg BoxFlag 0 lt {neg} if 0 rlineto stroke BoxFlag 0 ne {newpath xlen ypos moveto ticksize BoxFlag 0 lt {neg} if 0 rlineto stroke} if BoxFlag 3 ne BoxFlag -3 ne and{ yflag 1 eq { val cvi str cvs} { val str cvs} ifelse dup stringwidth pop ticksize add BoxFlag 0 lt {ticksize sub} if ptsize 3 div add neg ypos ypos 0 eq {ptsize 4 div} {ptsize 3 div} ifelse sub moveto show} if /ypos ypos inc add def } for } def % PlotAxes must be called first and the following variables must not be % changed: % % ticksize xstart ystart xscale yscale % /PlotPoints % stack: PlotArray isymbol LogFlag LineFlag=> nothing { /LineFlag exch def % LineFlag<0 no line, 0 solid, >0 dashed lines /LogFlag exch def % LogFlag = 1 for log10x, 2 for log10y, 3 both, <0 ln /isymbol exch def % isymbol = 1.....open circle /PlotArray exch def % = 2.....plus (+) % = 3.....cross (x) % = 4.....open triangle % = 5.....filled circle % = 6.....filled triangle % = 7.....asterisk (*) % = 8.....square =9...filled square % PlotArray = [ [x0 y0] [x1 y1] [x2 y2]...[xn yn] ] LineFlag 1 eq {[1 1] 0 setdash} if LineFlag 2 eq {[2 2] 0 setdash} if LineFlag 3 eq {[3 3] 0 setdash} if LineFlag 4 eq {[4 4] 0 setdash} if LineFlag 5 eq {[5 5] 0 setdash} if LineFlag 6 eq {[6 6] 0 setdash} if LineFlag 7 eq {[7 7] 0 setdash} if LineFlag 8 eq {[8 8] 0 setdash} if LineFlag 9 eq {[3 2 1 2] 0 setdash} if /icount 1 def PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def LineFlag 0 ge icount 1 gt and { newpath xl yl moveto xv yv lineto stroke} if /icount icount 1 add def /xl xv def /yl yv def } forall [] 0 setdash PlotArray { /xypoint exch def xypoint aload pop /y exch def /x exch def LogFlag 1 eq LogFlag 3 eq or { /x x log def} if LogFlag 2 eq LogFlag 3 eq or { /y y log def} if LogFlag -1 eq LogFlag -3 eq or { /x x ln def} if LogFlag -2 eq LogFlag -3 eq or { /y y ln def} if /xv {x xstart sub xscale mul} def /yv {y ystart sub yscale mul} def xv yv newpath isymbol 1 eq { ticksize 2 div Circle gsave 1.0 setgray fill grestore stroke } if isymbol 2 eq { Plus } if isymbol 3 eq { Cross } if isymbol 4 eq { Triangle gsave 1.0 setgray fill grestore stroke } if isymbol 5 eq { ticksize 2 div Circle fill } if isymbol 6 eq { Triangle fill } if isymbol 7 eq { 2 copy Plus Cross } if isymbol 8 eq { Square gsave 1.0 setgray fill grestore stroke } if isymbol 9 eq { Square fill } if } forall } def /Plus % stack: xcen ycen => ??? Draws + centered on (xcen,ycen) { 2 copy newpath moveto ticksize 2 div 0 rmoveto ticksize neg 0 rlineto stroke newpath moveto 0 ticksize 2 div rmoveto 0 ticksize neg rlineto stroke } def /Square % stack: xcen ycen => ??? Draws square centered on (xcen,ycen) { moveto ticksize 2 div dup rmoveto ticksize neg 0 rlineto 0 ticksize neg rlineto ticksize 0 rlineto closepath } def /Cross % stack: xcen ycen => ??? Draws x centered on (xcen,ycen) { /tinc ticksize 2 sqrt div 2 div def 2 copy newpath moveto tinc tinc rmoveto tinc 2 mul neg dup rlineto stroke newpath moveto tinc neg tinc rmoveto tinc 2 mul dup neg rlineto stroke } def /Triangle % stack: xcen ycen => ??? Draws triangle centered on (xcen ycen) { /tinc ticksize 2 div def /cdis 30 cos tinc mul def /sdis 30 sin tinc mul def moveto cdis neg sdis neg rmoveto cdis 2 mul 0 rlineto cdis neg sdis tinc add rlineto closepath } def /Circle % stack: xcen ycen radius => ??? Draws circle centered on (xcen ycen) { 0 360 arc } def 60 45 translate 0.5 setlinewidth 1 1 0 10.0 5.0 260.0 200.0 20 0.5 0 0 6.3 6.2 PlotAxes [ [ 1 0.013 ] [ 5 0.041 ] [ 10 0.078 ] [ 20 0.153 ] [ 30 0.228 ] [ 40 0.312 ] [ 50 0.396 ] [ 60 0.481 ] [ 70 0.562 ] [ 80 0.646 ] [ 90 0.727 ] [100 0.808 ] ] 2 0 9 PlotPoints /Times-Roman findfont 10 scalefont setfont 72 xscale mul 0.45 yscale mul moveto (Binary Exchange) show [ [ 1 0.060 ] [ 5 0.134 ] [ 10 0.262 ] [ 20 0.506 ] [ 30 0.739 ] [ 40 0.981 ] [ 50 1.223 ] [ 60 1.468 ] [ 70 1.713 ] [ 80 1.950 ] [ 90 2.192 ] [100 2.433 ] ] 2 0 3 PlotPoints /Times-Roman findfont 10 scalefont setfont 79 xscale mul 1.78 yscale mul moveto (Rotating) show [ [ 1 0.013 ] [ 5 0.052 ] [ 10 0.102 ] [ 20 0.207 ] [ 30 0.316 ] [ 40 0.419 ] [ 50 0.523 ] [ 60 0.633 ] [ 70 0.738 ] [ 80 0.843 ] [ 90 0.948 ] [100 1.050 ] ] 2 0 0 PlotPoints /Times-Roman findfont 10 scalefont setfont 75 xscale mul 1.06 yscale mul moveto (Direct Comm) show /Times-Roman findfont 12 scalefont setfont (Block Size (Kbytes)) dup stringwidth pop 405.0 exch sub 2 div -30 moveto show 90 rotate (Time (seconds)) dup stringwidth pop 325.0 exch sub 2 div 30 moveto show showpage end endTexFig @endspecial 315 2404 p m (Figure) 14 (2:) 18 (Compari) -1 (son) 12 (of) 14 (three) 15 (exc) 0 (hange) 14 (comm) -2 (uni) -1 (cation) 12 (sc) 0 (hemes) 13 (on) 14 (16) 13 (pro) 1 (cessors) 1 (.) ks @eop 2 @bop0 cmmi10.300 @sf [<0F800030E000603000601800E01C00E00E00E00E00E00700E00700E00700700380700380300300 1803001C03000E0600030C0000F800> 17 18 -2 0 20] 111 @dc cmbx12.300 @sf [ 21 32 -3 0 28] 50 @dc [ 19 34 -1 0 21] 73 @dc cmsy10.300 @sf [<7FC0FFC0C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C0 00C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000C000 C000C0004000> 10 42 -7 11 18] 98 @dc [ 10 42 0 11 18] 99 @dc 2 @bop1 cmr10.300 @sf 1027 -39 p m (-) 14 (2) 13 (-) ks 272 105 p m (W) -2 (e) 9 (ha) 0 (v) -1 (e) 9 (presen) 0 (ted) 11 (the) 10 (P) 0 (arallel) 8 (Univ) 0 (ersal) 9 (Matrix) 10 (Multiplication) 8 (Algorithm) -1 (s) 9 (\(PUMMA\)) 11 (in) 9 ([) 0 (5) ks 1908 105 p m (]) s 210 175 p m (for) 18 (p) 1 (erforming) ks cmbx10.300 @sf 18 r m (C) s cmsy10.300 @sf 20 r m (\() s cmmi10.300 @sf 19 r m (\013) 7 (op) ks cmr10.300 @sf m (\() s cmbx10.300 @sf m (A) s cmr10.300 @sf m (\)) s cmsy10.300 @sf 13 r m (\001) s cmmi10.300 @sf 12 r m (op) s cmr10.300 @sf m (\() s cmbx10.300 @sf m (B) s cmr10.300 @sf m (\)) 13 (+) ks cmmi10.300 @sf 12 r m (\014) s cmbx10.300 @sf 10 r m (C) s cmr10.300 @sf m (,) 20 (where) ks cmmi10.300 @sf 20 r m (op) s cmr10.300 @sf m (\() s cmbx10.300 @sf save [ 33 28 -1 0 36] 88 @pc restore cmr10.300 @sf 36 r m (\)) 20 (=) ks cmbx10.300 @sf 20 r save [ 33 28 -1 0 36] 88 @pc restore cmr10.300 @sf 55 r m (or) s cmbx10.300 @sf 19 r save [ 33 28 -1 0 36] 88 @pc restore cmmi7.300 @sf 1507 161 p m (T) s cmr10.300 @sf 1533 175 p m (,) 20 (based) 19 (on) 19 (the) 19 (blo) 1 (c) 0 (k) ks 210 245 p m (scattered) 19 (decomp) 1 (osition.) 25 (One) 17 (of) 16 (the) 18 (cases) 18 (in) 16 (the) 17 (PUMMA) 17 (pac) 0 (k) -1 (age,) ks cmbx10.300 @sf 15 r m (C) s cmsy10.300 @sf 17 r m (\() s cmmi10.300 @sf 15 r m (\013) s cmbx10.300 @sf 7 r m (A) s cmmi7.300 @sf 1667 231 p m (T) s cmsy10.300 @sf 1704 245 p m (\001) s cmbx10.300 @sf 11 r m (B) s cmmi7.300 @sf 1761 231 p m (T) s cmr10.300 @sf 1798 245 p m (+) s cmmi10.300 @sf 11 r m (\014) s cmbx10.300 @sf 10 r m (C) s cmr10.300 @sf m (,) s 210 314 p m (is) 20 (implem) -1 (en) 0 (ted) 19 (in) 20 (t) 0 (w) 0 (o) 18 (steps) 22 (\() ks cmbx10.300 @sf m (T) s cmsy10.300 @sf 23 r m (\() s cmmi10.300 @sf 22 r m (\013) s cmbx10.300 @sf 7 r m (B) s cmsy10.300 @sf 14 r m (\001) s cmbx10.300 @sf 13 r m (A) s cmr10.300 @sf m (;) s cmbx10.300 @sf 24 r m (C) s cmsy10.300 @sf 23 r m (\() s cmbx10.300 @sf 22 r m (T) s cmmi7.300 @sf 1231 300 p m (T) s cmr10.300 @sf 1271 314 p m (+) s cmmi10.300 @sf 14 r m (\014) s cmbx10.300 @sf 10 r m (C) s cmr10.300 @sf m (\).) 39 (The) 21 (second) 21 (step) 22 (in) 0 (v) -1 (ol) -1 (v) -1 (es) ks 210 384 p m (parallel) 13 (matrix) 12 (transp) 1 (osition.) 18 (The) 14 (p) 1 (erformance) 14 (of) 13 (this) 14 (algorithm) 12 (for) 13 (ev) -1 (aluating) ks cmbx10.300 @sf 12 r m (C) s cmr10.300 @sf 19 r m (=) s cmbx10.300 @sf 19 r m (A) s cmmi7.300 @sf 1804 370 p m (T) s cmsy10.300 @sf 1839 384 p m (\001) s cmbx10.300 @sf 9 r m (B) s cmmi7.300 @sf 1894 370 p m (T) s cmr10.300 @sf 210 454 p m (is) 20 (compared) 19 (with) 20 (the) 20 (algorithm) 18 (for) 19 (ev) -1 (aluating) ks cmbx10.300 @sf 18 r m (C) s cmr10.300 @sf 29 r m (=) s cmbx10.300 @sf 29 r m (A) s cmsy10.300 @sf 13 r m (\001) s cmbx10.300 @sf 13 r m (B) s cmr10.300 @sf 20 r m (on) 20 (the) 20 (In) 0 (tel) 19 (Delta) 20 (mac) -1 (hine) 18 (in) ks 210 524 p m (Section) 14 (4.) ks cmbx12.300 @sf 210 650 p m (2.) s 272 650 p save [ 37 34 -2 0 43] 68 @pc restore 43 r m (esign) 18 (Issues) ks cmr10.300 @sf 210 761 p m (The) 21 (w) 0 (a) -1 (y) 18 (in) 20 (whic) 0 (h) 19 (an) 20 (algorithm') -1 (s) 19 (data) 20 (are) 20 (distributed) 21 (o) 0 (v) -1 (er) 19 (the) 21 (pro) 1 (cessors) 23 (of) 19 (a) 20 (concurren) 0 (t) ks 210 831 p m (computer) 17 (has) 17 (a) 17 (ma) 2 (jor) 15 (impact) 16 (on) 17 (the) 17 (load) 16 (balance) 17 (and) 17 (comm) -1 (uni) -1 (cation) 15 (c) 0 (haracteristics) 18 (of) 16 (the) ks 210 900 p m (concurren) 0 (t) 14 (algorithm,) 10 (and) 14 (hence) 15 (largely) 12 (determines) 14 (its) 13 (p) 1 (erformance) 13 (and) 14 (scalabilit) -1 (y) -3 (.) 15 (The) 14 (blo) 1 (c) 0 (k) ks 210 970 p m (scattered) 20 (decomp) 1 (osition) 17 (pro) 0 (vides) 17 (a) 18 (simple,) 18 (y) 0 (et) 17 (general-purp) 1 (ose) 20 (w) 0 (a) -1 (y) 16 (of) 18 (distributing) 17 (a) 18 (blo) 1 (c) 0 (k-) ks 210 1040 p m (partitioned) 17 (matrix) 15 (on) 16 (distributed) 18 (memo) -1 (ry) 15 (concurren) 0 (t) 18 (computers.) 28 (In) 16 (the) 18 (blo) 1 (c) 0 (k) 16 (scattered) 19 (de-) ks 210 1110 p m (comp) 1 (osition,) 9 (describ) 1 (ed) 13 (in) 11 (detail) 10 (in) 11 ([) 0 (4) ks 868 1110 p m (,) 0 (6) ks 900 1110 p m (],) 11 (an) ks cmmi10.300 @sf 11 r m (M) s cmsy10.300 @sf 8 r m (\002) s cmmi10.300 @sf 3 r m (N) s cmr10.300 @sf 17 r m (matrix) 9 (is) 11 (partitioned) 10 (in) 0 (to) 10 (blo) 1 (c) 0 (ks) 10 (of) 10 (size) ks cmmi10.300 @sf 12 r m (r) s cmsy10.300 @sf 5 r m (\002) s cmmi10.300 @sf 3 r m (s) s cmr10.300 @sf m (,) s 210 1179 p m (and) 17 (blo) 1 (c) 0 (ks) 16 (separated) 18 (b) 0 (y) 16 (a) 17 (\014xed) 17 (stride) 18 (in) 17 (the) 18 (column) 15 (and) 17 (ro) 0 (w) 16 (directions) 17 (are) 18 (assigned) 17 (to) 17 (the) ks 210 1249 p m (same) 13 (pro) 1 (cessor.) 20 (If) 14 (the) 15 (stride) 15 (in) 13 (the) 15 (column) 12 (and) 14 (ro) 0 (w) 13 (directions) 14 (is) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 20 r m (and) s cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 13 r m (blo) 1 (c) 0 (ks) 13 (resp) 1 (ec) 1 (tiv) 0 (ely) -2 (,) ks 210 1319 p m (then) 13 (w) 0 (e) 11 (require) 13 (that) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 11 r m (\001) s cmmi10.300 @sf 5 r m (Q) s cmr10.300 @sf 11 r m (equal) 12 (the) 13 (n) 0 (um) -2 (b) 1 (er) 11 (of) 11 (pro) 1 (cessors,) ks cmmi10.300 @sf 14 r m (N) s cmmi7.300 @sf 1300 1325 p m (p) s cmr10.300 @sf 1320 1319 p m (.) 17 (Th) 0 (us,) 11 (it) 12 (is) 12 (useful) 12 (to) 12 (imag) -1 (ine) 10 (the) ks 210 1388 p m (pro) 1 (cessors) 14 (arranged) 13 (as) 12 (a) ks cmmi10.300 @sf 12 r m (P) s cmsy10.300 @sf 11 r m (\002) s cmmi10.300 @sf 6 r m (Q) s cmr10.300 @sf 12 r m (mesh,) 11 (or) 12 (template.) 17 (The) 12 (pro) 1 (cessor) 14 (at) 12 (p) 1 (osition) 12 (\() ks cmmi10.300 @sf m (p;) 7 (q) ks cmr10.300 @sf 1 r m (\)) 12 (\(0) ks cmsy10.300 @sf 11 r m (\024) s cmmi10.300 @sf 12 r m (p) 11 (<) 12 (P) ks cmr10.300 @sf 6 r m (,) s 210 1458 p m (0) s cmsy10.300 @sf 11 r m (\024) s cmmi10.300 @sf 12 r m (q) 13 (<) 11 (Q) ks cmr10.300 @sf m (\)) 14 (in) 14 (the) 14 (template) 13 (is) 14 (assigned) 14 (the) 15 (blo) 1 (c) 0 (ks) 12 (indexed) 15 (b) 0 (y) -3 (,) ks 879 1574 p m (\() s cmmi10.300 @sf m (p) s cmr10.300 @sf 9 r m (+) s cmmi10.300 @sf 9 r m (i) s cmsy10.300 @sf 10 r m (\001) s cmmi10.300 @sf 9 r m (P) 1 (;) 13 (q) ks cmr10.300 @sf 10 r m (+) s cmmi10.300 @sf 10 r m (j) s cmsy10.300 @sf 11 r m (\001) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf m (\)) s cmmi10.300 @sf m (;) s cmr10.300 @sf 1867 1574 p m (\(1\)) s 210 1689 p m (where) s cmmi10.300 @sf 17 r m (i) s cmr10.300 @sf 16 r m (=) 16 (0) ks cmmi10.300 @sf m (;) 7 (:) 7 (:) 7 (:) ks 505 1689 p m (;) s cmsy10.300 @sf 7 r m (b) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (M) s cmmi7.300 @sf 598 1695 p m (b) s cmsy10.300 @sf 625 1689 p m (\000) s cmmi10.300 @sf 12 r m (p) s cmsy10.300 @sf 10 r m (\000) s cmr10.300 @sf 11 r m (1\)) s cmmi10.300 @sf m (=P) s cmsy10.300 @sf 6 r m (c) s cmr10.300 @sf m (,) s cmmi10.300 @sf 16 r m (j) s cmr10.300 @sf 18 r m (=) 16 (0) ks cmmi10.300 @sf m (;) 7 (:) 7 (:) 7 (:) ks 1058 1689 p m (;) s cmsy10.300 @sf 7 r m (b) s cmr10.300 @sf m (\() s cmmi10.300 @sf m (N) s cmmi7.300 @sf 1144 1695 p m (b) s cmsy10.300 @sf 1172 1689 p m (\000) s cmmi10.300 @sf 11 r m (q) s cmsy10.300 @sf 12 r m (\000) s cmr10.300 @sf 11 r m (1\)) s cmmi10.300 @sf m (=Q) s cmsy10.300 @sf m (c) s cmr10.300 @sf m (,) 16 (and) ks cmmi10.300 @sf 16 r m (M) s cmmi7.300 @sf 1549 1695 p m (b) s cmsy10.300 @sf 1577 1689 p m (\002) s cmmi10.300 @sf 11 r m (N) s cmmi7.300 @sf 1653 1695 p m (b) s cmr10.300 @sf 1686 1689 p m (is) 16 (the) 17 (size) 17 (in) ks 210 1759 p m (blo) 1 (c) 0 (ks) 13 (of) 13 (the) 15 (matrix) 12 (\() ks cmmi10.300 @sf m (M) s cmmi7.300 @sf 646 1765 p m (b) s cmr10.300 @sf 674 1759 p m (=) s cmsy10.300 @sf 12 r m (d) s cmmi10.300 @sf m (M) 2 (=r) ks cmsy10.300 @sf 1 r m (e) s cmr10.300 @sf m (,) s cmmi10.300 @sf 15 r m (N) s cmmi7.300 @sf 897 1765 p m (b) s cmr10.300 @sf 925 1759 p m (=) s cmsy10.300 @sf 12 r m (d) s cmmi10.300 @sf m (N) 1 (=s) ks cmsy10.300 @sf m (e) s cmr10.300 @sf m (\).) s 272 1828 p m (Blo) 1 (c) 0 (ks) 16 (are) 17 (scattered) 19 (in) 16 (this) 17 (w) 0 (a) 0 (y) 14 (so) 17 (that) 17 (go) 1 (o) 1 (d) 16 (load) 16 (balance) 16 (can) 17 (b) 1 (e) 17 (main) -1 (tained) 15 (in) 16 (parallel) ks 210 1898 p m (algorithm) -1 (s,) 19 (suc) 0 (h) 18 (as) 20 (LU) 19 (factorization) 18 ([) 0 (3) ks 943 1898 p m (,) 0 (6) ks 976 1898 p m (].) 33 (The) 19 (nonscattered) 21 (decomp) 1 (osition) 18 (\(or) 19 (pure) 20 (blo) 1 (c) 0 (k) ks 210 1968 p m (distribution\)) 18 (is) 17 (just) 19 (a) 17 (sp) 1 (ecial) 18 (case) 19 (of) 18 (the) 18 (scattered) 20 (decomp) 1 (osition) 17 (in) 17 (whic) 0 (h) 17 (the) 19 (blo) 1 (c) 0 (k) 16 (size) 19 (is) ks 210 2038 p m (giv) 0 (en) 14 (b) 0 (y) ks cmmi10.300 @sf 14 r m (r) s cmr10.300 @sf 15 r m (=) s cmsy10.300 @sf 14 r m (d) s cmmi10.300 @sf m (M) 2 (=P) ks cmsy10.300 @sf 6 r m (e) s cmr10.300 @sf 16 r m (and) s cmmi10.300 @sf 15 r m (s) s cmr10.300 @sf 15 r m (=) s cmsy10.300 @sf 14 r m (d) s cmmi10.300 @sf m (N) 1 (=Q) ks cmsy10.300 @sf m (e) s cmr10.300 @sf m (.) 23 (A) 15 (purely) 16 (scattered) 17 (decomp) 1 (osition) 14 (\(or) 16 (t) 0 (w) 0 (o) -1 (-dim) -2 (ensional) ks 210 2107 p m (wrapp) 1 (ed) 15 (distribution\)) 13 (is) 14 (another) 14 (sp) 1 (ecial) 14 (case) 15 (in) 14 (whic) 0 (h) 12 (the) 15 (blo) 1 (c) 0 (k) 12 (size) 15 (is) 14 (giv) 0 (en) 12 (b) 0 (y) ks cmmi10.300 @sf 13 r m (r) s cmr10.300 @sf 12 r m (=) s cmmi10.300 @sf 12 r m (s) s cmr10.300 @sf 12 r m (=) 12 (1.) ks 272 2177 p m (If) s cmmi10.300 @sf 13 r m (P) s cmr10.300 @sf 18 r m (and) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf 12 r m (are) 14 (relativ) 0 (ely) 11 (prime,) 11 (the) 14 (matrix) 11 (transp) 1 (ose) 14 (algorithm) 10 (in) 0 (v) 0 (o) -1 (lv) -1 (es) 11 (a) 13 (t) 0 (w) 0 (o) -1 (-dim) -2 (ensional) ks 210 2247 p m (complete) 17 (exc) 0 (hange) 17 (comm) -2 (unication,) 16 (where) 18 (eac) 0 (h) 17 (of) ks cmmi10.300 @sf 17 r m (N) s cmmi7.300 @sf 1180 2253 p m (p) s cmr10.300 @sf 1217 2247 p m (pro) 1 (cessors) 20 (is) 17 (required) 19 (to) 17 (send) 19 (distinct) ks 210 2317 p m (subblo) 1 (c) 0 (ks) 12 (to) 13 (eac) 0 (h) 13 (of) 12 (the) 14 (remaining) ks cmmi10.300 @sf 10 r m (N) s cmmi7.300 @sf 882 2323 p m (p) s cmsy10.300 @sf 909 2317 p m (\000) s cmr10.300 @sf 8 r m (1) 13 (pro) 1 (cessors,) 15 (and) 12 (receiv) 0 (e) 14 (distinct) 13 (subblo) 1 (c) 0 (ks) 12 (from) 11 (eac) 0 (h) ks 210 2386 p m (of) 16 (them.) 24 (W) -2 (e) 15 (implem) -1 (en) -1 (ted) 15 (the) 17 (complicated) 15 (t) 0 (w) -1 (o-dim) -2 (ensional) 14 (complete) 16 (exc) 0 (hange) 16 (algorithm) 13 (b) 0 (y) ks 210 2456 p m (generalizing) 17 (the) 18 (one-dimensional) 15 (complete) 17 (exc) 0 (hange) 17 (algorithm) -1 (.) 27 (Three) 18 (one-dimensional) 15 (com-) ks 210 2526 p m (plete) 14 (exc) 0 (hange) 13 (comm) -2 (unicati) -1 (on) 12 (sc) 0 (hemes) 12 (are) 14 (sho) 0 (wn) 12 (in) 13 (Figure) 13 (1,) 13 (where) 14 (eac) 0 (h) 13 (pro) 1 (cessor) 15 (needs) 15 (one) ks 210 2596 p m (subblo) 1 (c) 0 (k) 18 (from) 17 (eac) 0 (h) 18 (other) 19 (pro) 1 (cessor,) 21 (and) 19 (the) 19 (n) 0 (um) -1 (b) 1 (er) 17 (in) 18 (paren) 0 (theses) 20 (denotes) 20 (the) 20 (n) 0 (um) -2 (b) 1 (er) 18 (of) ks @eop 1 @bop0 cmbx12.300 @sf [<7FFFE07FFFE001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F800FFF800FFF80001F800007800001800> 19 32 -4 0 28] 49 @dc cmr10.300 @sf [ 16 41 -2 10 21] 47 @dc 1 @bop1 cmbx12.300 @sf 210 105 p m (1.) s 272 105 p m (In) -1 (tro) 2 (duction) ks cmr10.300 @sf 210 216 p m (Matrix) 16 (transp) 1 (osition) 17 (is) 16 (a) 17 (fundamen) -1 (tal) 14 (matrix) 15 (op) 1 (eration) 17 (of) 16 (linear) 16 (algebra) 16 ([) 0 (8) ks 1604 216 p m (,) 0 (14) ks 1657 216 p m (]) 17 (and) 16 (arises) 17 (in) ks 210 286 p m (man) -1 (y) 8 (scien) 0 (ti\014c) 11 (and) 10 (engineering) 10 (applications.) 16 (On) 11 (a) 10 (unipro) 1 (cessor,) 12 (an) 10 (algorithm) 8 (in) 0 (v) -1 (o) -1 (lvi) -1 (ng) 9 (a) 10 (trans-) ks 210 355 p m (p) 1 (osed) 16 (matrix) 13 (ma) -1 (y) 13 (not) 15 (actually) 14 (require) 16 (the) 16 (matrix) 13 (data) 15 (to) 15 (b) 1 (e) 16 (transp) 1 (osed) 16 (in) 15 (ph) 0 (ysical) 13 (memory) -4 (.) ks 210 425 p m (Instead,) 15 (it) 15 (ma) -1 (y) 13 (b) 1 (e) 15 (accesse) 1 (d) 16 (simply) 13 (b) 0 (y) 14 (exc) 0 (hanging) 13 (the) 16 (ro) 0 (w) 13 (and) 15 (column) 13 (indices.) 22 (Ho) 0 (w) -1 (ev) 0 (er,) 13 (in) 14 (a) ks 210 495 p m (distributed-memory) 12 (m) -1 (ulti) -1 (pro) 1 (cessor) 14 (en) 0 (vironm) -1 (en) 0 (t,) 11 (w) 0 (e) 13 (cannot) 14 (simply) 11 (in) 0 (terc) 0 (hange) 13 (the) 14 (global) 12 (ro) 0 (w) ks 210 565 p m (and) 11 (column) 10 (indices.) 18 (Instead,) 12 (the) 12 (data) 11 (m) 0 (ust) 10 (b) 1 (e) 12 (ph) 0 (ysically) 9 (mo) -1 (v) -1 (ed) 10 (from) 10 (one) 11 (pro) 1 (cessor) 14 (to) 11 (another.) ks 272 634 p m (T) -2 (ransp) 1 (osition) 15 (of) 16 (a) 17 (matrix) 14 (is) 17 (a) 16 (redistribution) 17 (of) 16 (its) 17 (elemen) 0 (ts.) 25 (Man) 0 (y) 15 (researc) 0 (hers) 18 (ha) 0 (v) 0 (e) 15 (con-) ks 210 704 p m (sidered) 18 (the) 17 (problem) 15 (for) 16 (di\013eren) 0 (t) 17 (arc) 0 (hitectures.) 27 (In) 17 (1972,) 15 (Eklundh) 17 ([) 0 (7) ks 1464 704 p m (]) 16 (considered) 18 (the) 17 (problem) ks 210 774 p m (of) 18 (directly) 19 (accessing) 20 (ro) 0 (ws) 18 (or) 19 (columns) 17 (of) 19 (a) 18 (matrix) 17 (when) 19 (its) 19 (size) 20 (is) 18 (larger) 19 (than) 19 (the) 19 (a) 0 (v) -2 (ail) -1 (able) ks 210 844 p m (high-sp) 1 (eed) 15 (storage.) 20 (O'Leary) 14 ([) 0 (12) ks 792 844 p m (]) 14 (implem) -1 (en) -1 (ted) 13 (an) 14 (algorithm) 12 (for) 14 (transp) 1 (osing) 14 (an) ks cmmi10.300 @sf 14 r m (N) s cmsy10.300 @sf 15 r m (\002) s cmmi10.300 @sf 10 r m (N) s cmr10.300 @sf 19 r m (matrix) s 210 913 p m (on) 15 (a) 14 (one-dimensional) 13 (systolic) 14 (arra) 0 (y) -2 (.) 18 (Azari,) 15 (Bo) 2 (janczyk) 15 (and) 15 (Lee) 16 ([) 0 (1) ks 1402 913 p m (]) 14 (dev) 0 (elop) 1 (ed) 15 (an) 14 (algorithm) 12 (for) ks 210 983 p m (transp) 1 (osing) 12 (an) ks cmmi10.300 @sf 12 r m (M) s cmsy10.300 @sf 10 r m (\002) s cmmi10.300 @sf 6 r m (N) s cmr10.300 @sf 17 r m (matrix) 10 (on) 12 (an) ks cmmi10.300 @sf 12 r m (N) s cmsy10.300 @sf 10 r m (\002) s cmmi10.300 @sf 6 r m (N) s cmr10.300 @sf 17 r m (mesh-connected) 13 (arra) 0 (y) 11 (pro) 1 (cessor,) 13 (and) 12 (Johnsson) 13 (and) ks 210 1053 p m (Ho) 14 ([) 0 (10) ks 329 1053 p m (]) 13 (presen) 0 (ted) 15 (an) 14 (algorithm) 11 (for) 14 (a) 13 (Bo) 1 (olean) 14 (n-cub) 1 (e,) 14 (or) 14 (h) 0 (yp) 1 (ercub) 1 (e.) ks 272 1123 p m (Curren) 0 (t) 16 (adv) -1 (anced) 15 (arc) 0 (hitecture) 17 (computers) 16 (p) 1 (ossess) 18 (hierarc) 0 (hical) 15 (memo) -1 (ries) 15 (in) 15 (whic) 0 (h) 15 (accesse) 1 (s) ks 210 1192 p m (to) 12 (data) 11 (in) 12 (the) 12 (upp) 1 (er) 13 (lev) 0 (els) 11 (of) 11 (the) 13 (mem) -1 (ory) 10 (hierarc) 0 (h) 0 (y) 10 (\(registers,) 14 (cac) 0 (he,) 12 (and/or) 11 (lo) 1 (cal) 11 (memo) -1 (ry\)) 10 (are) ks 210 1262 p m (faster) 13 (than) 11 (those) 13 (in) 12 (lo) 0 (w) -1 (er) 10 (lev) 0 (els) 11 (\(shared) 13 (or) 12 (o\013-pro) 1 (cessor) 14 (mem) -1 (ory\).) 16 (T) -2 (o) 10 (exploit) 11 (the) 13 (p) 1 (o) 0 (w) -1 (er) 11 (of) 11 (suc) 0 (h) ks 210 1332 p m (mac) 0 (hi) -1 (nes,) 13 (blo) 1 (c) 0 (k-partitio) -1 (ned) 13 (algorithm) -1 (s) 13 (are) 14 (preferred) 16 (for) 14 (dense) 15 (linear) 14 (algebra) 13 (computations,) 12 (in) ks 210 1401 p m (whic) 0 (h) 16 (op) 1 (erations) 18 (are) 18 (p) 1 (erformed) 17 (on) 17 (submatrices,) 18 (rather) 19 (than) 17 (individual) 16 (matrix) 15 (elemen) 0 (ts.) 28 (In) ks 210 1471 p m (distributing) 14 (matrix) 13 (data) 14 (o) 0 (v) -1 (er) 13 (pro) 1 (cessors) 17 (w) 0 (e) 14 (therefore) 15 (assume) 14 (a) 15 (blo) 1 (c) 0 (k) 13 (scattered) 16 (decomp) 1 (osition) ks 210 1541 p m ([) 0 (4) ks 242 1541 p m (,) 0 (6) ks 275 1541 p m (].) 23 (The) 16 (blo) 1 (c) 0 (k) 15 (scattered) 18 (decomp) 1 (osition) 14 (can) 16 (repro) 1 (duce) 18 (the) 17 (most) 14 (common) 14 (data) 15 (distributions) ks 210 1611 p m (used) 15 (in) 13 (dense) 15 (linear) 14 (algebra,) 13 (as) 14 (describ) 1 (ed) 15 (brie\015y) 15 (in) 13 (the) 14 (next) 15 (section.) ks 272 1680 p m (In) 18 (this) 17 (pap) 1 (er,) 18 (the) 18 (parallel) 16 (matrix) 16 (transp) 1 (ose) 18 (algorithms) 15 (are) 18 (presen) 0 (ted) 18 (based) 18 (on) 17 (the) 18 (blo) 1 (c) 0 (k) ks 210 1750 p m (scattered) 15 (decomp) 1 (osition.) 16 (The) 14 (algorithm) -1 (s) 12 (are) 13 (implem) -1 (en) -1 (ted) 12 (on) 13 (the) 13 (In) 0 (tel) 12 (T) -2 (ouc) 0 (hstone) 12 (Delta) 12 (com-) ks 210 1820 p m (puter.) 19 (The) 14 (comm) -1 (uni) -1 (cation) 12 (sc) 0 (hemes) 13 (of) 14 (the) 14 (algorithms) 12 (are) 14 (determined) 14 (b) 0 (y) 13 (the) 15 (greatest) 15 (comm) -1 (on) ks 210 1890 p m (divisor) 13 (\() ks cmmi10.300 @sf m (GC) 3 (D) ks cmr10.300 @sf 1 r m (\)) 14 (of) 14 (the) 15 (n) 0 (um) -2 (b) 1 (er) 13 (of) 13 (ro) 0 (ws) 13 (and) 14 (columns) 13 (\() ks cmmi10.300 @sf m (P) s cmr10.300 @sf 20 r m (and) s cmmi10.300 @sf 13 r m (Q) s cmr10.300 @sf m (\)) 14 (of) 14 (the) 14 (pro) 1 (cessor) 16 (template.) 18 (If) ks cmmi10.300 @sf 14 r m (P) s cmr10.300 @sf 210 1959 p m (and) s cmmi10.300 @sf 16 r m (Q) s cmr10.300 @sf 17 r m (are) 16 (relativ) 0 (ely) 15 (prime,) 16 (the) 17 (matrix) 14 (transp) 1 (ose) 18 (algorithm) 14 (in) 0 (v) -1 (ol) -1 (v) -1 (es) ks cmti10.300 @sf 15 r m (c) -1 (omplete) 17 (exchange) ks cmr10.300 @sf 17 r m (com-) s 210 2029 p m (m) -1 (unication.) 17 (This) 15 (is) 14 (called) 14 (all-to-all) 12 (p) 1 (ersonalized) 15 (comm) -2 (unicatio) -1 (n,) 12 (in) 14 (whic) 0 (h) 14 (eac) 0 (h) 14 (of) ks cmmi10.300 @sf 13 r m (N) s cmmi7.300 @sf 1747 2035 p m (p) s cmr10.300 @sf 1779 2029 p m (=) s cmmi10.300 @sf 13 r m (P) s cmsy10.300 @sf 15 r m (\001) s cmmi10.300 @sf 9 r m (Q) s cmr10.300 @sf 210 2099 p m (pro) 1 (cessors) 18 (is) 16 (required) 18 (to) 16 (send) 17 (distinct) 16 (subblo) 1 (c) 0 (ks) 16 (to) 16 (eac) 0 (h) 15 (of) 16 (the) 17 (remaining) ks cmmi10.300 @sf 14 r m (N) s cmmi7.300 @sf 1614 2105 p m (p) s cmsy10.300 @sf 1644 2099 p m (\000) s cmr10.300 @sf 11 r m (1) 16 (pro) 1 (cessors,) ks 210 2169 p m (and) 16 (receiv) 0 (e) 16 (distinct) 16 (subblo) 1 (c) 0 (ks) 15 (from) 14 (eac) 0 (h) 15 (of) 16 (them.) 23 (Bokhari) 15 (and) 16 (Berryman) 15 ([) 0 (2) ks 1616 2169 p m (]) 16 (ha) 0 (v) -1 (e) 14 (dev) 0 (elop) 1 (ed) ks 210 2238 p m (binary) 15 (exc) 0 (hange) 15 (and) 15 (quadran) 0 (t) 14 (exc) 0 (hange) 15 (algorithm) -1 (s) 14 (on) 15 (a) 15 (circuit) 15 (switc) 0 (hed) 15 (mesh,) 15 (where) ks cmmi10.300 @sf 16 r m (P) s cmr10.300 @sf 21 r m (and) s cmmi10.300 @sf 210 2308 p m (Q) s cmr10.300 @sf 15 r m (are) 15 (p) 1 (o) 0 (w) 0 (ers) 14 (of) 14 (2.) 21 (The) 16 (complete) 14 (exc) 0 (hange) 15 (comm) -2 (unication) 13 (in) 14 (our) 15 (transp) 1 (ose) 16 (algorithms) 13 (arises) ks 210 2378 p m (for) 16 (an) 0 (y) 15 (pro) 1 (cessor) 18 (con\014guration,) 16 (and) 16 (is) 16 (not) 17 (lim) -1 (ited) 15 (to) 16 (the) 17 (case) 17 (where) ks cmmi10.300 @sf 18 r m (P) s cmr10.300 @sf 21 r m (and) s cmmi10.300 @sf 17 r m (Q) s cmr10.300 @sf 16 r m (are) 17 (p) 1 (o) 0 (w) -1 (ers) 16 (of) ks 210 2448 p m (2.) 17 (W) -2 (e) 12 (implem) -1 (en) -1 (ted) 12 (the) 14 (complicated) 12 (t) 0 (w) 0 (o) -1 (-dim) -2 (ensional) 11 (complete) 12 (exc) 0 (hange) 13 (comm) -1 (uni) -1 (cation) 11 (prob-) ks 210 2517 p m (lem) 17 (b) 0 (y) 18 (generalizing) 18 (the) 20 (one-dimensional) 17 (complete) 18 (exc) 0 (hange) 18 (comm) -1 (uni) -1 (cation) 17 (based) 19 (on) 19 (direct) ks 210 2587 p m (p) 1 (oin) 0 (t-to-p) 1 (oin) -1 (t) 12 (comm) -2 (uni) -1 (cation.) 16 (Details) 13 (are) 15 (discussed) 15 (in) 14 (Section) 14 (3.1.) ks @eop 5 @bop0 cmbx10.300 @sf [ 27 28 -2 0 33] 80 @dc [ 24 28 -2 0 29] 76 @dc [ 27 28 -2 0 31] 69 @dc [ 16 28 -1 0 18] 73 @dc [ 32 28 -2 0 37] 78 @dc [<83FC00EFFF00FC03C0F001C0E000E0C000E0C000F0C000F00000F00001F00003F0007FE007FFE0 0FFFC03FFF803FFF007FFE00FFE000FE0000F80000F00060F00060F000E07000E07801E03C07E0 1FFEE007F820> 20 28 -3 0 27] 83 @dc [<003FE00001F07C0003C01E000F800F801F0007C03F0007E03E0003E07E0003F07E0003F07C0001 F0FC0001F8FC0001F8FC0001F8FC0001F8FC0001F8FC0001F8FC0001F8FC0001F87C0001F07C00 01F07E0003F03E0003E01E0003C01F0007C00F800F8003C01E0001F07C00003FE000> 29 28 -3 0 36] 79 @dc [<000FF818007FFE7801FC07F807E001F80F8001F81F0001F83F0001F83E0001F87E0001F87C0001 F8FC007FFFFC007FFFFC000000FC000000FC000000FC000000FC000000FC0000007C0000187E00 00183E0000383F0000381F0000780F80007807E001F801FC07F8007FFE38000FF008> 32 28 -3 0 38] 71 @dc 1.000000 /cmbx9.300 @newfont cmbx9.300 @sf [ 30 26 -1 0 33] 65 @dc [<187F001D83C01F00E01E00F01E00781E00781E007C1E007C1E007C1E007C1E007C1E00781E0078 1E00F01F00E01FC3C01E7F001E00001E00001E00001E00001E00001E00001E0000FE0000FE0000> 22 26 -1 0 25] 98 @dc [ 14 17 -1 0 17] 115 @dc [<03E00F301E181E181E181E181E181E001E001E001E001E001E001E001E00FFF03FF01E000E000E 000600060006000600> 13 24 -1 0 17] 116 @dc [ 15 17 -1 0 18] 114 @dc [<1FC3E07C27E0F81700F80F00F80F00F80F007C0F003E0F000FCF0000FF00000F001C0F003E0F00 3E0E003E1E001C3C000FF000> 19 17 -1 0 21] 97 @dc [<03FC000F06001C03003C0180780000780000F80000F80000F80000F80000F80000780E00781F00 3C1F001C1F000F0E0003FC00> 17 17 -1 0 20] 99 @dc 1.000000 /cmr9.300 @newfont cmr9.300 @sf [ 18 26 -1 0 21] 104 @dc [ 9 26 0 0 10] 105 @dc [<8F80F040C020C0308030807000F01FE03FC07F00F000C020C020402060E01F20> 12 16 -1 0 15] 115 @dc [<1E3C71FBE0F1E071E071E070707030701C7007F000700070207070E070C03F80> 16 16 -2 0 19] 97 @dc [<07E00C18380830046000E000E000E000E000FFFCE00C600C701830181C3007C0> 14 16 -1 0 17] 101 @dc [ 12 16 -1 0 15] 114 @dc [<07E00C18380830047000E000E000E000E000E000E00070003008381C0C1C07F8> 14 16 -1 0 17] 99 @dc [<03800E401C201C201C201C201C201C001C001C001C001C001C001C001C00FFC03C001C000C000C 00040004000400> 11 23 -1 0 15] 116 @dc [<07E01C38381C700E6006E007E007E007E007E007E0076006700E300C1C3807E0> 16 16 -1 0 19] 111 @dc [ 10 2 0 -7 13] 45 @dc [<60F0F060> 4 4 -3 0 11] 46 @dc [<8040202010101070F0F060> 4 11 -3 7 11] 44 @dc [ 13 16 -1 0 17] 122 @dc 1.000000 /cmti9.300 @newfont cmti9.300 @sf [<1F0030C06020E010E008E000E000E000E00060007000301018380C18060801F0> 13 16 -4 0 18] 99 @dc 1.000000 /cmsy9.300 @newfont cmsy9.300 @sf [<60F0F060> 4 4 -3 -7 11] 1 @dc 5 @bop1 cmbx10.300 @sf 499 216 p m (P) -3 (A) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ALLEL) s 14 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (A) -3 (T) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (I) s save [ 33 28 -1 0 36] 88 @pc restore 51 r m (T) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ANSPOSE) 16 (ALGO) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (IT) s save [ 32 28 -2 0 37] 72 @pc restore 37 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (S) s 381 286 p m (ON) s 17 r save [ 31 28 -2 0 37] 68 @pc restore 37 r m (IST) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (IB) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r m (TE) s save [ 31 28 -2 0 37] 68 @pc restore 52 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (E) s save [ 40 28 -2 0 45] 77 @pc restore 45 r m (O) s save [ 33 28 -2 0 36] 82 @pc restore 33 r save [<003FFF0000003FFF00000003F000000003F000000003F000000003F000000003F000000003F000 000003F000000003F000000003F000000003F000000007F80000000FF80000000FFC0000001FCE 0000003F860000003F870000007F03000000FE01800000FE01C00001FC00C00003F800600003F8 00700007F00030000FE0003800FFFC01FF80FFFC01FF80> 33 28 -1 0 36] 89 @pc restore 51 r m (CONC) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r save [ 33 28 -2 0 36] 82 @pc restore 36 r save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ENT) 18 (CO) ks save [ 40 28 -2 0 45] 77 @pc restore 45 r m (P) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r m (TE) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (S) s cmr10.300 @sf 931 397 p m (Jaey) 0 (oung) 13 (Choi) ks 909 467 p m (Jac) 0 (k) 13 (J.) 14 (Dongarra) ks 907 537 p m (Da) 0 (vi) -1 (d) 12 (W.) 13 (W) -2 (alk) -1 (er) ks cmbx9.300 @sf 980 820 p m (Abstract) s cmr9.300 @sf 371 890 p save [<03FFE000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C00 00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0080801C 0080801C0080C01C0180401C0100401C0100701C07007FFFFF00> 25 26 -1 0 28] 84 @pc restore 28 r m (his) s 13 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (a) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (er) s 13 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (escri) s save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 22 r m (es) s 15 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ara) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 24 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atri) s save [ 18 16 -1 0 20] 120 @pc restore 34 r m (tra) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (ose) 13 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) 15 (o) ks save [ 18 16 -1 0 21] 110 @pc restore 33 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (istri) s save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 22 r m (te) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 35 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (e) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (or) s save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 33 r m (co) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (-) s 314 940 p m (c) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (rre) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (t) s 17 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessors.) ks 33 r save [<0020004000003000C000007000E000007000E000007801E000007801E00000E801D00000E40390 0000E403900001C403880001C403880001C20708000382070400038207040003810E040007010E 020007010E020007009C020007009C02000E009C01000E007801000E007801001C007800801C00 7800803C007801C0FF83FF0FF0> 36 26 -1 0 39] 87 @pc restore 37 r m (e) 16 (ass) ks save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (e) 19 (that) 18 (the) ks 18 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atri) s save [ 18 16 -1 0 20] 120 @pc restore 38 r m (is) s 19 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (istri) s save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (te) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 41 r m (o) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (er) 16 (a) ks 18 r save [ 26 26 -2 0 25] 80 @pc restore cmsy9.300 @sf 41 r save [<8000C0C001C0600300300600180C000C180006300003600001C00001C0000360000630000C1800 180C00300600600300C001C08000C0> 18 18 -6 0 30] 2 @pc restore 42 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 48 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessor) ks 314 990 p m (te) s save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ate) s 15 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (ith) 15 (a) ks 14 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) 1 (c) ks save [ 18 26 -1 0 20] 107 @pc restore 35 r m (scattere) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 35 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (ata) s 15 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (istri) s save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (ti) 1 (o) ks save [ 18 16 -1 0 21] 110 @pc restore 22 r m (.) s 22 r save [ 26 26 -2 0 25] 80 @pc restore cmr9.300 @sf 30 r m (,) s 14 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 30 r m (,) 14 (a) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 36 r m (the) s 14 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) 1 (c) ks save [ 18 26 -1 0 20] 107 @pc restore 35 r m (size) 15 (ca) ks save [ 18 16 -1 0 21] 110 @pc restore 36 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 22 r m (e) 14 (ar) ks save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r m (i-) s 314 1040 p m (trar) s save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 18 r m (,) 11 (so) 14 (the) 13 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) 15 (ha) ks save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (e) s 11 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (i) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (e) 14 (a) ks save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ica) s 1 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r m (i) s save [ 9 26 0 0 10] 108 @pc restore 11 r m (i) 1 (t) ks save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 18 r m (.) s 371 1091 p save [<03FFE000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C00 00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0080801C 0080801C0080C01C0180401C0100401C0100701C07007FFFFF00> 25 26 -1 0 28] 84 @pc restore 28 r m (he) 12 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (icatio) s save [ 18 16 -1 0 21] 110 @pc restore 34 r m (sc) 0 (he) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r m (es) 10 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 23 r m (the) 12 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) 13 (are) ks 12 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (eter) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (e) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 34 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 30 r m (the) s 12 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (reatest) 11 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (o) s save [ 18 16 -1 0 21] 110 @pc restore 314 1141 p save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (i) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (isor) s 16 r save [<00800100020004000C00080018003000300030006000600060006000E000E000E000E000E000E0 00E000E000E000E0006000600060006000300030003000180008000C000400020001000080> 9 38 -3 10 15] 40 @pc restore 15 r save [<01FC1000070390001C007800380038003000380070003800F0001C00F0001C00F0001C00F0001C 00F001FF80F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 30] 71 @pc restore 30 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 28 26 -2 0 32] 68 @pc restore cmr9.300 @sf 33 r save [<8000400020001000180008000C0006000600060003000300030003000380038003800380038003 80038003800380038003000300030003000600060006000C00080018001000200040008000> 9 38 -2 10 15] 41 @pc restore 29 r m (o) s save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 27 r save [ 26 26 -2 0 25] 80 @pc restore cmr9.300 @sf 44 r m (a) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 36 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 30 r m (.) s 22 r save [ 11 26 -1 0 14] 73 @pc restore 14 r save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 26 r save [ 26 26 -2 0 25] 80 @pc restore cmr9.300 @sf 44 r m (a) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 36 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 45 r m (are) 15 (re) ks save [ 9 26 0 0 10] 108 @pc restore 10 r m (ati) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 36 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ri) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (e,) 15 (the) ks 15 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atri) s save [ 18 16 -1 0 20] 120 @pc restore 35 r m (tra) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (ose) 16 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (o-) s 314 1191 p m (rith) s save [ 29 16 -1 0 32] 109 @pc restore 49 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (o) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (es) s cmti9.300 @sf 15 r m (c) s -1 r save [<1F0030C06060E030E018E01CE00CE00EE00E600E700E300E180E0C0C061801F0> 15 16 -4 0 20] 111 @pc restore 20 r save [<60180700E0380C80701C1C80701C1C40701C0E40701C0E40380E0E00380E0700380E0700380E07 009C0703809C0703809E0703809E07838059866300307C1E00> 26 16 -4 0 31] 109 @pc restore 31 r save [ 19 23 0 7 20] 112 @pc restore 20 r save [<3068E4E4E4E470707070383838381C1C1C1C0E0E0E0E0707073F> 8 26 -3 0 10] 108 @pc restore 10 r save [<1F0030C060206010E008E000E000E000E000FFE07010700838081C08061801E0> 13 16 -4 0 18] 101 @pc restore 18 r save [<38006400E200E100E100E100700070007000700038003800380038001C00FFC01C001C000E000E 000E000E000600> 10 23 -4 0 13] 116 @pc restore 12 r save [<1F0030C060206010E008E000E000E000E000FFE07010700838081C08061801E0> 13 16 -4 0 18] 101 @pc restore 33 r save [<1F0030C060206010E008E000E000E000E000FFE07010700838081C08061801E0> 13 16 -4 0 18] 101 @pc restore 18 r save [<78F000C58800E78400C3820003820003820001C00001C00001C00001C00020E00020E00020E180 10F38008D180078F00> 17 16 -2 0 18] 120 @pc restore 18 r m (c) s save [<600E00E01900703900703880701C80701C80381C00380E00380E00380E001C07001C07001E0700 1E07000F86000E7C000E00000E00000700000700000700000700000380000380000380001F8000> 17 26 -2 0 20] 104 @pc restore 20 r save [<1E18613460F2C072C072C072E038E038E038E038701C301C381C181C0E2E03CC> 15 16 -4 0 20] 97 @pc restore 20 r save [<600E00E01900703900703880701C80701C80381C00380E00380E00380E009C07009C07009E0700 9E0700598600307C00> 17 16 -4 0 22] 110 @pc restore 21 r save [<7F0000C1C000E0E00060700000700000380000380007B800187800183C00301C00301C00301C00 380E00380E00380E00380E001C07000C07000E0700060700038B8000F300> 17 23 -2 7 18] 103 @pc restore 18 r save [<1F0030C060206010E008E000E000E000E000FFE07010700838081C08061801E0> 13 16 -4 0 18] 101 @pc restore cmr9.300 @sf 32 r m (co) s save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (icatio) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (.) s 28 r save [ 11 26 -1 0 14] 73 @pc restore 14 r save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 27 r save [ 26 26 -2 0 25] 80 @pc restore cmr9.300 @sf 46 r m (a) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 38 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 46 r m (are) s 16 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (ot) 17 (re) ks save [ 9 26 0 0 10] 108 @pc restore 10 r m (ati) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 37 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ri) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (e,) s 314 1241 p save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessors) 11 (are) ks 11 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (i) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (i) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (e) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 34 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (to) s 10 r save [<01FC1000070390001C007800380038003000380070003800F0001C00F0001C00F0001C00F0001C 00F001FF80F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 30] 71 @pc restore 30 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 28 26 -2 0 32] 68 @pc restore cmr9.300 @sf 43 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (ro) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (s) 11 (a) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 32 r m (the) 11 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (icatio) s save [ 18 16 -1 0 21] 110 @pc restore 33 r m (o) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (eratio) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) 12 (are) 11 (o) ks save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (er) s save [ 9 26 0 0 10] 108 @pc restore 10 r m (a) s save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 18 23 -1 7 21] 112 @pc restore 22 r m (e) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 314 1291 p save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 12 r m (or) s 12 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (i) s save [<7F0FF00E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E0700 0E07000E0700FFFFF00E07000E07000E07000E07000E07000E070006070407078E0183C600FC7C> 23 26 0 0 22] 11 @pc restore 22 r m (ere) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (t) s 13 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (ro) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (s) 14 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 24 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessors.) ks 18 r save [ 21 26 -2 0 26] 80 @pc restore 26 r m (ro) 1 (cessors) 13 (tra) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (ose) s 14 r save [<01FC1000070390001C007800380038003000380070003800F0001C00F0001C00F0001C00F0001C 00F001FF80F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 30] 71 @pc restore 30 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 28 26 -2 0 32] 68 @pc restore cmr9.300 @sf 45 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (ra) s save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 18 23 -1 7 21] 112 @pc restore 22 r m (e) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 35 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (ia) s save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (o) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (a) s save [ 9 26 0 0 10] 108 @pc restore 25 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) 1 (c) ks save [ 18 26 -1 0 20] 107 @pc restore 20 r m (s) 13 (si-) ks 314 1342 p save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ta) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (eo) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (s) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 18 r m (,) 15 (a) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 36 r m (the) s 14 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atri) s save [ 18 16 -1 0 20] 120 @pc restore 35 r m (ca) s save [ 18 16 -1 0 21] 110 @pc restore 36 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 22 r m (e) 15 (tra) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (ose) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 37 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (ith) s 14 r save [ 21 26 -2 0 26] 76 @pc restore 26 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 36 26 -2 0 37] 77 @pc restore 39 r save [ 14 37 -2 9 19] 61 @pc restore 19 r save [<01FC1000070390001C007800380038003000380070003800F0001C00F0001C00F0001C00F0001C 00F001FF80F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 30] 71 @pc restore 30 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 28 26 -2 0 32] 68 @pc restore cmr9.300 @sf 48 r m (ste) s save [ 18 23 -1 7 21] 112 @pc restore 21 r m (s,) s 15 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (here) s 14 r save [ 21 26 -2 0 26] 76 @pc restore 26 r save [<01FC0000070300001C008000380060003000100070001000F0000800F0000400F0000400F00004 00F0000000F0000000F0000000F00000007800000078000000380001003C0001001C0001800E00 0180070001800380018001C003C000E005C0003C18C00007E040> 26 26 -2 0 27] 67 @pc restore 30 r save [ 36 26 -2 0 37] 77 @pc restore cmr9.300 @sf 55 r m (is) s 314 1392 p m (the) s 13 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (east) 14 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (o) s save [ 18 16 -1 0 21] 110 @pc restore 34 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ti) s save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (e) 15 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 24 r save [ 26 26 -2 0 25] 80 @pc restore cmr9.300 @sf 43 r m (a) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 35 r save [<0003C0000007E0000007F0000007F8000006180000060C000006040003FC04000F0F00001D07C0 003904E0007080700070703800F0001C00F0001E00F0000E00F0000F00F0000700F0000780F000 0780F0000780780003C0780003C0380003C03C0003C01C0003800E0003800F0007800780070001 C0070000E00E0000383800000FE000> 26 33 -2 7 30] 81 @pc restore cmr9.300 @sf 30 r m (.) s 371 1442 p save [<03FFE000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C00 00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0080801C 0080801C0080C01C0180401C0100401C0100701C07007FFFFF00> 25 26 -1 0 28] 84 @pc restore 28 r m (he) 13 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) s 14 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (a) s save [ 18 26 -1 0 20] 107 @pc restore 20 r m (e) s 12 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (se) 13 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 24 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (o) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (-) s save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) 1 (c) ks save [ 18 26 -1 0 20] 107 @pc restore 20 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 22 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (,) s 14 r save [ 18 23 -1 7 21] 112 @pc restore 22 r m (oi) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (t-to-) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (oi) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (t) 13 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (icatio) s save [ 18 16 -1 0 21] 110 @pc restore 35 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 22 r m (et) s save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (ee) s save [ 18 16 -1 0 21] 110 @pc restore 32 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro-) s 314 1492 p m (cessors.) s 17 r save [<03FFE000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C00 00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0080801C 0080801C0080C01C0180401C0100401C0100701C07007FFFFF00> 25 26 -1 0 28] 84 @pc restore 28 r m (he) s 11 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (se) 11 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 23 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (o) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) 1 (c) ks save [ 18 26 -1 0 20] 107 @pc restore 20 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 32 r m (co) s save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (icatio) s save [ 18 16 -1 0 21] 110 @pc restore 34 r m (a) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (o) s save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (s) 11 (a) ks 12 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessor) 12 (to) 11 (o) ks save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (er) s save [ 9 26 0 0 10] 108 @pc restore 10 r m (a) s save [ 18 23 -1 7 21] 112 @pc restore 32 r m (the) s 11 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (essa) s save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (es) s 314 1543 p m (that) 13 (it) 13 (se) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (s) 14 (to) ks 13 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (i) s save [<7F0FF00E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E0700 0E07000E0700FFFFF00E07000E07000E07000E07000E07000E070006070407078E0183C600FC7C> 23 26 0 0 22] 11 @pc restore 22 r m (ere) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (t) s 14 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ro) 1 (cessors,) 14 (there) ks save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 32 r m (a) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (oi) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 21 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 33 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (ecessar) s save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 35 r m (s) s save [<780000E40000E20000E1000001000001000000800000800001C00001C00001C00003A00003A000 0790000710000710000E08000E08001E0C001C04001C04003C0600FF1F80> 17 23 -1 7 20] 121 @pc restore 20 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (c) 0 (hro) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r m (izatio) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (.) s 371 1593 p save [<003F0001C0C00300300E00081C00081C0004380004780002700002700002F00000F00000F00000 F00000F00000F000007000027000027800023800061C00061C000E0E001E03002E01C0C6003F02> 23 26 -2 0 28] 67 @pc restore 28 r m (o) s save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<10F0001B0C001E07001C03001C03801C01C01C01C01C01C01C01C01C01C01C01C01C01801C0380 1E07001F0E001CF8001C00001C00001C00001C00001C00001C00001C00001C00001C0000FC0000> 18 26 -1 0 21] 98 @pc restore 21 r m (i) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (e) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 35 r save [<010040000180C0000380E0000380E00003C1E0000741D000074190000F2398000E2388000E2308 001E170C001C1704001C160400380E06003C0E0700FF3F9F80> 25 16 -1 0 28] 119 @pc restore 28 r m (ith) 13 (the) ks 13 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atri) s save [ 18 16 -1 0 20] 120 @pc restore 34 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ti) s save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ic) 1 (atio) ks 1 r save [ 18 16 -1 0 21] 110 @pc restore 36 r m (ro) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (ti) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (e,) s cmbx9.300 @sf 14 r save [<001FF00000FFFC0003F80F0007C003801F8000C01F0000C03E0000607E0000607C000060FC0000 00FC000000FC000000FC000000FC000000FC000000FC000000FC0000007C0000607E0000603E00 00E01F0000E01F8001E007C003E003F80FE000FFFCE0001FE020> 27 26 -2 0 32] 67 @pc restore cmr9.300 @sf 42 r save [ 25 10 -2 -4 30] 61 @pc restore cmbx9.300 @sf 41 r m (A) s cmsy9.300 @sf 9 r m (\001) s cmbx9.300 @sf 8 r save [ 26 26 -2 0 31] 66 @pc restore cmr9.300 @sf 31 r m (,) 13 (the) 13 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) 15 (are) ks 13 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (se) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 314 1643 p m (to) 12 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 18 23 -1 7 21] 112 @pc restore 21 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (te) s 13 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ara) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 24 r save [ 29 16 -1 0 32] 109 @pc restore 32 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ti) s save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ica) 1 (tio) ks save [ 18 16 -1 0 21] 110 @pc restore 22 r m (s) 14 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 24 r m (tra) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) s save [ 18 23 -1 7 21] 112 @pc restore 22 r m (ose) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 34 r save [ 29 16 -1 0 32] 109 @pc restore 32 r m (atrices,) s cmbx9.300 @sf 13 r save [<001FF00000FFFC0003F80F0007C003801F8000C01F0000C03E0000607E0000607C000060FC0000 00FC000000FC000000FC000000FC000000FC000000FC000000FC0000007C0000607E0000603E00 00E01F0000E01F8001E007C003E003F80FE000FFFCE0001FE020> 27 26 -2 0 32] 67 @pc restore cmr9.300 @sf 43 r save [ 25 10 -2 -4 30] 61 @pc restore cmbx9.300 @sf 40 r m (A) s 1426 1628 p save [<7FE00006000003000003000003000003000001800001800001800001800000C00080C04080C040 40C0404060403060C03FFFC0> 18 17 -2 0 18] 84 @pc restore cmsy9.300 @sf 1457 1643 p m (\001) s cmbx9.300 @sf 7 r save [ 26 26 -2 0 31] 66 @pc restore 1506 1628 p save [<7FE00006000003000003000003000003000001800001800001800001800000C00080C04080C040 40C0404060403060C03FFFC0> 18 17 -2 0 18] 84 @pc restore cmr9.300 @sf 1530 1643 p m (,) 12 (i) ks save [ 18 16 -1 0 21] 110 @pc restore 34 r m (the) s 12 r save [ 21 26 -2 0 26] 80 @pc restore 26 r save [<003E0000C1800180400300400700200600200E00100E00100E00100E00100E00100E00100E0010 0E00100E00100E00100E00100E00100E00100E00100E00100E00100E00100E00100E0038FFE1FF> 24 26 -2 0 29] 85 @pc restore 29 r save [ 30 26 -2 0 35] 77 @pc restore 35 r save [ 30 26 -2 0 35] 77 @pc restore 35 r save [ 26 26 -1 0 29] 65 @pc restore 314 1693 p save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ac) s save [ 18 26 -1 0 20] 107 @pc restore 19 r m (a) s save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (e) s 10 r save [ 7 37 -3 9 11] 91 @pc restore 11 r save [<0F8030E0403040388018E01CE01C401C001C001C001800382030386027C0200020002000200020 003FC03FE03FF03018> 14 24 -2 0 19] 53 @pc restore 485 1693 p save [ 7 37 0 9 11] 93 @pc restore 11 r m (.) s 16 r save [ 24 26 -2 0 29] 68 @pc restore 29 r m (etai) s save [ 9 26 0 0 10] 108 @pc restore 10 r m (s) 13 (o) ks save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 23 r m (the) s 12 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (ara) s save [ 9 26 0 0 10] 108 @pc restore 10 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 24 r m (i) s save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 18 23 -1 7 21] 112 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (e) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (e) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (tatio) s save [ 18 16 -1 0 21] 110 @pc restore 35 r m (o) s save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 23 r m (the) 12 (a) ks save [ 9 26 0 0 10] 108 @pc restore 10 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (orith) s save [ 29 16 -1 0 32] 109 @pc restore 32 r m (s) 13 (are) ks 12 r save [<07E0381C6006C003C003C003C003600F1FFE3FFC3FF07000600020002FC0186030307038703870 387038303018730FCE> 16 24 -1 8 19] 103 @pc restore 19 r m (i) s save [<00800001C00001C00001C00003A00003A0000790000710000710000E08000E08001E0C001C0400 1C04003C0600FF1F80> 17 16 -1 0 20] 118 @pc restore 20 r m (e) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (,) 12 (a) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 33 r m (res) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 9 26 0 0 10] 108 @pc restore 10 r m (ts) s 314 1744 p m (are) s 13 r save [ 18 23 -1 7 21] 112 @pc restore 21 r m (rese) s save [ 18 16 -1 0 21] 110 @pc restore 21 r m (te) s save [<07CFC01C2E00381E00700E00600E00E00E00E00E00E00E00E00E00E00E00E00E00700E00300E00 380E000C3E0003CE00000E00000E00000E00000E00000E00000E00000E00000E00000E00007E00> 18 26 -1 0 21] 100 @pc restore 34 r save [<7FE00E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00E000E000E000E 000E000E000E100738031801F0> 13 26 0 0 12] 102 @pc restore 12 r m (or) 13 (r) ks save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (s) 13 (o) ks save [ 18 16 -1 0 21] 110 @pc restore 35 r m (the) s 13 r save [ 11 26 -1 0 14] 73 @pc restore 14 r save [ 18 16 -1 0 21] 110 @pc restore 21 r m (te) s save [ 9 26 0 0 10] 108 @pc restore 22 r save [<03FFE000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C00 00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000801C0080801C 0080801C0080C01C0180401C0100401C0100701C07007FFFFF00> 25 26 -1 0 28] 84 @pc restore 26 r m (o) s save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (c) 0 (hsto) ks save [ 18 16 -1 0 21] 110 @pc restore 21 r m (e) s 12 r save [ 24 26 -2 0 29] 68 @pc restore 29 r m (e) s save [ 9 26 0 0 10] 108 @pc restore 10 r m (ta) 14 (co) ks save [ 29 16 -1 0 32] 109 @pc restore 32 r save [ 18 23 -1 7 21] 112 @pc restore 21 r save [<07CFC00C2E001C1E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00 1C0E001C0E00FC7E00> 18 16 -1 0 21] 117 @pc restore 21 r m (ter.) s cmr10.300 @sf 1026 2738 p m (-) 14 (v) 14 (-) ks @eop 3 @bop0 3 @bop1 cmbx12.300 @sf 210 296 p m (Con) -1 (ten) -1 (ts) ks cmr10.300 @sf 210 386 p m (1) s 268 386 p m (In) 0 (tro) 1 (duction) ks cmmi10.300 @sf 15 r m (:) s 543 386 p m (:) s 576 386 p m (:) s 608 386 p m (:) s 640 386 p m (:) s 672 386 p m (:) s 705 386 p m (:) s 737 386 p m (:) s 769 386 p m (:) s 802 386 p m (:) s 834 386 p m (:) s 866 386 p m (:) s 898 386 p m (:) s 931 386 p m (:) s 963 386 p m (:) s 995 386 p m (:) s 1027 386 p m (:) s 1060 386 p m (:) s 1092 386 p m (:) s 1124 386 p m (:) s 1157 386 p m (:) s 1189 386 p m (:) s 1221 386 p m (:) s 1253 386 p m (:) s 1286 386 p m (:) s 1318 386 p m (:) s 1350 386 p m (:) s 1383 386 p m (:) s 1415 386 p m (:) s 1447 386 p m (:) s 1479 386 p m (:) s 1512 386 p m (:) s 1544 386 p m (:) s 1576 386 p m (:) s 1609 386 p m (:) s 1641 386 p m (:) s 1673 386 p m (:) s 1705 386 p m (:) s 1738 386 p m (:) s 1770 386 p m (:) s 1802 386 p m (:) s cmr10.300 @sf 1899 386 p m (1) s 210 436 p m (2) s 268 436 p m (Design) 14 (Issues) ks cmmi10.300 @sf 35 r m (:) s 576 436 p m (:) s 608 436 p m (:) s 640 436 p m (:) s 672 436 p m (:) s 705 436 p m (:) s 737 436 p m (:) s 769 436 p m (:) s 802 436 p m (:) s 834 436 p m (:) s 866 436 p m (:) s 898 436 p m (:) s 931 436 p m (:) s 963 436 p m (:) s 995 436 p m (:) s 1027 436 p m (:) s 1060 436 p m (:) s 1092 436 p m (:) s 1124 436 p m (:) s 1157 436 p m (:) s 1189 436 p m (:) s 1221 436 p m (:) s 1253 436 p m (:) s 1286 436 p m (:) s 1318 436 p m (:) s 1350 436 p m (:) s 1383 436 p m (:) s 1415 436 p m (:) s 1447 436 p m (:) s 1479 436 p m (:) s 1512 436 p m (:) s 1544 436 p m (:) s 1576 436 p m (:) s 1609 436 p m (:) s 1641 436 p m (:) s 1673 436 p m (:) s 1705 436 p m (:) s 1738 436 p m (:) s 1770 436 p m (:) s 1802 436 p m (:) s cmr10.300 @sf 1899 436 p m (2) s 210 486 p m (3) s 268 486 p m (Matrix) 14 (T) -2 (ransp) 1 (ose) 13 (Algorithms) ks cmmi10.300 @sf 27 r m (:) s 866 486 p m (:) s 898 486 p m (:) s 931 486 p m (:) s 963 486 p m (:) s 995 486 p m (:) s 1027 486 p m (:) s 1060 486 p m (:) s 1092 486 p m (:) s 1124 486 p m (:) s 1157 486 p m (:) s 1189 486 p m (:) s 1221 486 p m (:) s 1253 486 p m (:) s 1286 486 p m (:) s 1318 486 p m (:) s 1350 486 p m (:) s 1383 486 p m (:) s 1415 486 p m (:) s 1447 486 p m (:) s 1479 486 p m (:) s 1512 486 p m (:) s 1544 486 p m (:) s 1576 486 p m (:) s 1609 486 p m (:) s 1641 486 p m (:) s 1673 486 p m (:) s 1705 486 p m (:) s 1738 486 p m (:) s 1770 486 p m (:) s 1802 486 p m (:) s cmr10.300 @sf 1899 486 p m (5) s 272 536 p m (3.1) s cmmi10.300 @sf 368 536 p m (P) s cmr10.300 @sf 19 r m (and) s cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 13 r m (:) 18 (relativ) 0 (ely) 12 (prime) ks cmmi10.300 @sf 41 r m (:) s 931 536 p m (:) s 963 536 p m (:) s 995 536 p m (:) s 1027 536 p m (:) s 1060 536 p m (:) s 1092 536 p m (:) s 1124 536 p m (:) s 1157 536 p m (:) s 1189 536 p m (:) s 1221 536 p m (:) s 1253 536 p m (:) s 1286 536 p m (:) s 1318 536 p m (:) s 1350 536 p m (:) s 1383 536 p m (:) s 1415 536 p m (:) s 1447 536 p m (:) s 1479 536 p m (:) s 1512 536 p m (:) s 1544 536 p m (:) s 1576 536 p m (:) s 1609 536 p m (:) s 1641 536 p m (:) s 1673 536 p m (:) s 1705 536 p m (:) s 1738 536 p m (:) s 1770 536 p m (:) s 1802 536 p m (:) s cmr10.300 @sf 1899 536 p m (8) s 272 586 p m (3.2) s cmmi10.300 @sf 368 586 p m (P) s cmr10.300 @sf 19 r m (and) s cmmi10.300 @sf 14 r m (Q) s cmr10.300 @sf 13 r m (:) 18 (not) 14 (relativ) 0 (ely) 12 (prime) ks cmmi10.300 @sf 32 r m (:) s 995 586 p m (:) s 1027 586 p m (:) s 1060 586 p m (:) s 1092 586 p m (:) s 1124 586 p m (:) s 1157 586 p m (:) s 1189 586 p m (:) s 1221 586 p m (:) s 1253 586 p m (:) s 1286 586 p m (:) s 1318 586 p m (:) s 1350 586 p m (:) s 1383 586 p m (:) s 1415 586 p m (:) s 1447 586 p m (:) s 1479 586 p m (:) s 1512 586 p m (:) s 1544 586 p m (:) s 1576 586 p m (:) s 1609 586 p m (:) s 1641 586 p m (:) s 1673 586 p m (:) s 1705 586 p m (:) s 1738 586 p m (:) s 1770 586 p m (:) s 1802 586 p m (:) s cmr10.300 @sf 1878 586 p m (10) s 210 635 p m (4) s 268 635 p m (Results) s cmmi10.300 @sf 14 r m (:) s 446 635 p m (:) s 479 635 p m (:) s 511 635 p m (:) s 543 635 p m (:) s 576 635 p m (:) s 608 635 p m (:) s 640 635 p m (:) s 672 635 p m (:) s 705 635 p m (:) s 737 635 p m (:) s 769 635 p m (:) s 802 635 p m (:) s 834 635 p m (:) s 866 635 p m (:) s 898 635 p m (:) s 931 635 p m (:) s 963 635 p m (:) s 995 635 p m (:) s 1027 635 p m (:) s 1060 635 p m (:) s 1092 635 p m (:) s 1124 635 p m (:) s 1157 635 p m (:) s 1189 635 p m (:) s 1221 635 p m (:) s 1253 635 p m (:) s 1286 635 p m (:) s 1318 635 p m (:) s 1350 635 p m (:) s 1383 635 p m (:) s 1415 635 p m (:) s 1447 635 p m (:) s 1479 635 p m (:) s 1512 635 p m (:) s 1544 635 p m (:) s 1576 635 p m (:) s 1609 635 p m (:) s 1641 635 p m (:) s 1673 635 p m (:) s 1705 635 p m (:) s 1738 635 p m (:) s 1770 635 p m (:) s 1802 635 p m (:) s cmr10.300 @sf 1878 635 p m (14) s 210 685 p m (5) s 268 685 p m (Conclusions) 14 (and) 14 (Remarks) ks cmmi10.300 @sf 31 r m (:) s 802 685 p m (:) s 834 685 p m (:) s 866 685 p m (:) s 898 685 p m (:) s 931 685 p m (:) s 963 685 p m (:) s 995 685 p m (:) s 1027 685 p m (:) s 1060 685 p m (:) s 1092 685 p m (:) s 1124 685 p m (:) s 1157 685 p m (:) s 1189 685 p m (:) s 1221 685 p m (:) s 1253 685 p m (:) s 1286 685 p m (:) s 1318 685 p m (:) s 1350 685 p m (:) s 1383 685 p m (:) s 1415 685 p m (:) s 1447 685 p m (:) s 1479 685 p m (:) s 1512 685 p m (:) s 1544 685 p m (:) s 1576 685 p m (:) s 1609 685 p m (:) s 1641 685 p m (:) s 1673 685 p m (:) s 1705 685 p m (:) s 1738 685 p m (:) s 1770 685 p m (:) s 1802 685 p m (:) s cmr10.300 @sf 1878 685 p m (19) s 210 735 p m (6) s 268 735 p m (References) s cmmi10.300 @sf 22 r m (:) s 511 735 p m (:) s 543 735 p m (:) s 576 735 p m (:) s 608 735 p m (:) s 640 735 p m (:) s 672 735 p m (:) s 705 735 p m (:) s 737 735 p m (:) s 769 735 p m (:) s 802 735 p m (:) s 834 735 p m (:) s 866 735 p m (:) s 898 735 p m (:) s 931 735 p m (:) s 963 735 p m (:) s 995 735 p m (:) s 1027 735 p m (:) s 1060 735 p m (:) s 1092 735 p m (:) s 1124 735 p m (:) s 1157 735 p m (:) s 1189 735 p m (:) s 1221 735 p m (:) s 1253 735 p m (:) s 1286 735 p m (:) s 1318 735 p m (:) s 1350 735 p m (:) s 1383 735 p m (:) s 1415 735 p m (:) s 1447 735 p m (:) s 1479 735 p m (:) s 1512 735 p m (:) s 1544 735 p m (:) s 1576 735 p m (:) s 1609 735 p m (:) s 1641 735 p m (:) s 1673 735 p m (:) s 1705 735 p m (:) s 1738 735 p m (:) s 1770 735 p m (:) s 1802 735 p m (:) s cmr10.300 @sf 1878 735 p m (19) s 1020 2738 p m (-) 14 (iii) 12 (-) ks @eop 1 @bop0 1 @bop1 cmbx10.300 @sf 1545 105 p m (O) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (NL) s save [ 17 41 -3 10 24] 47 @pc restore 24 r m (T) s save [ 40 28 -2 0 45] 77 @pc restore 45 r save [ 11 4 -1 -7 16] 45 @pc restore 16 r m (123) s save [<03F8000F1E001C07003C07803803807803C07803C0F803E0F803E0F803E0F803E0F803E0F803E0 F803E0F803E0F803E0F803E0F803E0F803E07803C07803C07803C03803803C07801C07000F1E00 03F800> 19 27 -2 0 24] 48 @pc restore 24 r save [<0FE0001FF800383C00780F007C07007C07803807C00003C00003C00003E003E3E00E1BE03C0BE0 3807E07807E0F803E0F803E0F803E0F803E0F803C0F803C07803C07807803C07801E0F000FFE00 03F800> 19 27 -2 0 24] 57 @pc restore cmr10.300 @sf 638 193 p m (Engineering) 14 (Ph) 0 (ysics) 13 (and) 14 (Mathematics) 13 (Division) ks 786 281 p m (Mathematical) 12 (Sciences) 16 (Section) ks cmbx10.300 @sf 499 517 p m (P) -3 (A) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ALLEL) s 14 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (A) -3 (T) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (I) s save [ 33 28 -1 0 36] 88 @pc restore 51 r m (T) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ANSPOSE) 16 (ALGO) ks save [ 33 28 -2 0 36] 82 @pc restore 36 r m (IT) s save [ 32 28 -2 0 37] 72 @pc restore 37 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (S) s 381 586 p m (ON) s 17 r save [ 31 28 -2 0 37] 68 @pc restore 37 r m (IST) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (IB) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r m (TE) s save [ 31 28 -2 0 37] 68 @pc restore 52 r save [ 40 28 -2 0 45] 77 @pc restore 45 r m (E) s save [ 40 28 -2 0 45] 77 @pc restore 45 r m (O) s save [ 33 28 -2 0 36] 82 @pc restore 33 r save [<003FFF0000003FFF00000003F000000003F000000003F000000003F000000003F000000003F000 000003F000000003F000000003F000000003F000000007F80000000FF80000000FFC0000001FCE 0000003F860000003F870000007F03000000FE01800000FE01C00001FC00C00003F800600003F8 00700007F00030000FE0003800FFFC01FF80FFFC01FF80> 33 28 -1 0 36] 89 @pc restore 51 r m (CONC) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r save [ 33 28 -2 0 36] 82 @pc restore 36 r save [ 33 28 -2 0 36] 82 @pc restore 36 r m (ENT) 18 (CO) ks save [ 40 28 -2 0 45] 77 @pc restore 45 r m (P) s save [<000FF800007FFE0000FC078001F001C003E000E007C0006007C000300FC000300FC000300FC000 300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC000300FC0 00300FC000300FC000300FC000300FC000300FC000300FC00030FFFC03FFFFFC03FF> 32 28 -2 0 37] 85 @pc restore 37 r m (TE) s save [ 33 28 -2 0 36] 82 @pc restore 36 r m (S) s cmr10.300 @sf 914 782 p m (Jaey) 0 (oung) 13 (Choi) ks cmsy10.300 @sf 1196 768 p save [<1F00218041C0C0C0E0E0E0E040E000E000C001C0018003000700198031C070C060E0E0E0E0E0E0 E0E0C061C0718033001C001800300070006000E000E040E0E0E0E06060704030801F00> 11 37 -3 8 18] 120 @pc restore cmr10.300 @sf 883 838 p m (Jac) 0 (k) 13 (J.) 13 (Dongarra) ks cmsy10.300 @sf 1208 824 p save [<1F00218041C0C0C0E0E0E0E040E000E000C001C0018003000700198031C070C060E0E0E0E0E0E0 E0E0C061C0718033001C001800300070006000E000E040E0E0E0E06060704030801F00> 11 37 -3 8 18] 120 @pc restore 1227 824 p save [<020002000200020002000200070007000700070007000700070007000700070007000700070007 00070007000700020002007270FFF872700200020002000700070007000700070007000200> 13 38 -2 9 18] 121 @pc restore cmr10.300 @sf 889 894 p m (Da) 0 (vid) 12 (W.) 13 (W) -2 (alk) -2 (er) ks cmsy10.300 @sf 1220 880 p save [<1F00218041C0C0C0E0E0E0E040E000E000C001C0018003000700198031C070C060E0E0E0E0E0E0 E0E0C061C0718033001C001800300070006000E000E040E0E0E0E06060704030801F00> 11 37 -3 8 18] 120 @pc restore 673 1028 p save [<1F00218041C0C0C0E0E0E0E040E000E000C001C0018003000700198031C070C060E0E0E0E0E0E0 E0E0C061C0718033001C001800300070006000E000E040E0E0E0E06060704030801F00> 11 37 -3 8 18] 120 @pc restore cmr10.300 @sf 707 1042 p m (Mathematical) 12 (Sciences) 16 (Section) ks 707 1092 p m (Oak) 14 (Ridge) 13 (National) 13 (Lab) 1 (oratory) ks 707 1142 p m (P) -2 (.O.) 12 (Bo) 0 (x) 13 (2008,) 12 (Bldg.) 13 (6012) ks 707 1192 p m (Oak) 14 (Ridge,) 13 (TN) 14 (37831-636) -1 (7) ks cmsy10.300 @sf 673 1241 p save [<020002000200020002000200070007000700070007000700070007000700070007000700070007 00070007000700020002007270FFF872700200020002000700070007000700070007000200> 13 38 -2 9 18] 121 @pc restore cmr10.300 @sf 707 1255 p m (Departmen) 0 (t) 12 (of) 14 (Computer) 13 (Science) ks 707 1305 p m (Univ) 0 (ersit) 0 (y) 12 (of) 13 (T) -2 (ennessee) 15 (at) 14 (Kno) 0 (xvill) -1 (e) ks 707 1354 p m (107) 13 (Ayres) 15 (Hall) ks 707 1404 p m (Kno) 0 (xville,) 11 (TN) 14 (37996-1301) ks 791 1594 p m (Date) 14 (Published:) 14 (Octob) 1 (er) 15 (1993) ks 440 1682 p 1250 2 ru 440 1732 p 2 50 ru 1249 r 2 50 ru 440 2039 p 2 307 ru 465 1767 p m (Researc) 0 (h) 11 (w) 0 (as) 10 (supp) 1 (orted) 12 (b) 0 (y) 10 (the) 12 (Applied) 10 (Mathematical) 9 (Sciences) 13 (Re-) ks 465 1817 p m (searc) 0 (h) 12 (Program) 10 (of) 11 (the) 13 (O\016ce) 12 (of) 11 (Energy) 13 (Researc) 0 (h,) 12 (U.S.) 10 (Departmen) 0 (t) ks 465 1867 p m (of) 11 (Energy) -2 (,) 11 (b) 0 (y) 11 (the) 12 (Defense) 13 (Adv) -1 (anced) 12 (Researc) 0 (h) 12 (Pro) 2 (jects) 13 (Agency) 13 (un-) ks 465 1916 p m (der) 19 (con) 0 (tract) 17 (D) 0 (AAL03-91-C-) -1 (0047) -1 (,) 17 (admini) -1 (stered) 18 (b) 0 (y) 16 (the) 19 (Arm) -1 (y) 16 (Re-) ks 465 1966 p m (searc) 0 (h) 13 (O\016ce,) 13 (and) 13 (b) 0 (y) 12 (the) 13 (Cen) 0 (ter) 13 (for) 13 (Researc) 0 (h) 13 (on) 13 (P) 0 (arallel) 11 (Comput-) ks 465 2016 p m (ing) s 1689 2039 p 2 307 ru 440 2089 p 2 50 ru 1249 r 2 50 ru 440 2091 p 1250 2 ru 918 2227 p m (Prepared) 16 (b) 0 (y) 12 (the) ks 775 2277 p m (Oak) 14 (Ridge) 13 (National) 12 (Lab) 1 (oratory) ks 807 2326 p m (Oak) 14 (Ridge,) 13 (T) -2 (ennessee) 15 (37831) ks 955 2376 p m (managed) 13 (b) 0 (y) ks 718 2426 p m (Martin) 13 (Marietta) 14 (Energy) 15 (Systems,) 13 (Inc.) ks 1004 2476 p m (for) 14 (the) ks 735 2526 p m (U.S.) 13 (DEP) -2 (AR) -3 (TMENT) 13 (OF) 14 (ENER) 0 (GY) ks 682 2576 p m (under) 14 (Con) 0 (tract) 14 (No.) 13 (DE-A) 0 (C05-84OR) -1 (2140) -1 (0) ks @eop @end .