From 6dd6de8e052da23ebd254828437f47d2d610a9c5 Mon Sep 17 00:00:00 2001
From: Rob van Nieuwpoort <nieuwpoort@astron.nl>
Date: Wed, 24 Jun 2009 13:27:27 +0000
Subject: [PATCH] Bug 1198: performance results

---
 .gitattributes                                |    1 -
 doc/papers/2010/SPM/Makefile                  |    2 +-
 .../2010/SPM/figures/correlation-triangle.fig |   88 --
 .../2010/SPM/figures/correlation-triangle.pdf |  Bin 6558 -> 9631 bytes
 .../2010/SPM/figures/correlation-triangle.svg | 1043 +++++++++--------
 doc/papers/2010/SPM/spm.tex                   |  156 +--
 6 files changed, 604 insertions(+), 686 deletions(-)
 delete mode 100644 doc/papers/2010/SPM/figures/correlation-triangle.fig

diff --git a/.gitattributes b/.gitattributes
index 35b3d0bdb39..00f10aea77e 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1526,7 +1526,6 @@ doc/papers/2009/SC-09/transpose.fig -text
 doc/papers/2010/SPM/IEEEbib.bst -text
 doc/papers/2010/SPM/Makefile -text
 doc/papers/2010/SPM/figures/LBA-small.jpg -text
-doc/papers/2010/SPM/figures/correlation-triangle.fig -text
 doc/papers/2010/SPM/figures/correlation-triangle.pdf -text
 doc/papers/2010/SPM/figures/correlation-triangle.svg -text
 doc/papers/2010/SPM/figures/pastedpic_11252008_163347.png -text
diff --git a/doc/papers/2010/SPM/Makefile b/doc/papers/2010/SPM/Makefile
index 8368724ca36..eba742c283b 100644
--- a/doc/papers/2010/SPM/Makefile
+++ b/doc/papers/2010/SPM/Makefile
@@ -2,7 +2,7 @@ TEX_SOURCES =	spm.tex
 
 BIB_SOURCES =	spm.bib
 
-FIG_SOURCES =	figures/correlation-triangle.fig
+FIG_SOURCES =	
 
 JGR_SOURCES =	
 
diff --git a/doc/papers/2010/SPM/figures/correlation-triangle.fig b/doc/papers/2010/SPM/figures/correlation-triangle.fig
deleted file mode 100644
index 2f05d430cde..00000000000
--- a/doc/papers/2010/SPM/figures/correlation-triangle.fig
+++ /dev/null
@@ -1,88 +0,0 @@
-#FIG 3.2  Produced by xfig version 3.2.5
-Landscape
-Center
-Inches
-Letter  
-100.00
-Single
--2
-1200 2
-0 32 #c0ffc0
-0 33 #ffffc0
-0 34 #c0c0ff
-0 35 #c0c0c0
-0 36 #f0c0c0
-2 1 0 3 0 35 40 -1 -1 0.000 0 0 -1 1 0 2
-	2 1 3.00 150.00 150.00
-	 6000 9075 6675 9075
-2 1 0 3 0 35 40 -1 -1 0.000 0 0 -1 1 0 2
-	2 1 3.00 150.00 150.00
-	 9900 4275 9900 3600
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 2400 8100 2400 7500 9000 7500
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 3000 8100 3000 6900 9000 6900
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 3600 8100 3600 6300 9000 6300
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 4800 8100 4800 5100 9000 5100
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 5400 8100 5400 4500 9000 4500
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 6000 8100 6000 3900 9000 3900
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 7200 8100 7200 2700 9000 2700
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 7800 8100 7800 2100 9000 2100
-2 1 0 2 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 8400 8100 8400 1500 9000 1500
-2 1 0 5 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 4200 8100 4200 5700 9000 5700
-2 1 0 5 0 7 40 -1 -1 0.000 0 0 -1 0 0 3
-	 6600 8100 6600 3300 9000 3300
-2 3 0 5 0 31 60 -1 20 0.000 0 0 -1 0 0 27
-	 9000 8100 9000 900 8400 900 8400 1500 7800 1500 7800 2100
-	 7200 2100 7200 2700 6600 2700 6600 3300 6000 3300 6000 3900
-	 5400 3900 5400 4500 4800 4500 4800 5100 4200 5100 4200 5700
-	 3600 5700 3600 6300 3000 6300 3000 6900 2400 6900 2400 7500
-	 1800 7500 1800 8100 9000 8100
-2 2 0 5 0 4 50 -1 20 0.000 0 0 -1 0 0 5
-	 6600 3300 9000 3300 9000 5700 6600 5700 6600 3300
-4 1 0 40 -1 18 30 0.0000 4 360 360 2100 7950 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 2700 7350 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 3300 6750 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 3900 6150 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 4500 5550 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 5100 4950 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 5700 4350 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 6300 3750 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 6900 3150 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 7500 2550 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 8100 1950 A\001
-4 1 0 40 -1 18 30 0.0000 4 360 1605 5100 9225 station\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 2100 8625 0\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 2700 8625 1\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 3900 8625 3\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 4500 8625 4\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 5100 8625 5\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 5700 8625 6\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 6300 8625 7\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 6900 8625 8\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 7500 8625 9\001
-4 1 0 40 -1 16 30 0.0000 4 345 540 8100 8625 10\001
-4 1 0 40 -1 16 30 0.0000 4 345 270 3300 8625 2\001
-4 1 0 40 -1 18 30 1.5708 4 360 1605 10050 5175 station\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 7950 0\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 7350 1\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 6150 3\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 4950 5\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 4350 6\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 3750 7\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 3150 8\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 2550 9\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 5550 4\001
-4 0 0 40 -1 16 30 0.0000 4 345 270 9225 6750 2\001
-4 0 0 40 -1 16 30 0.0000 4 345 540 9225 1950 10\001
-4 0 0 40 -1 16 30 0.0000 4 345 540 9225 1350 11\001
-4 1 0 40 -1 16 30 0.0000 4 345 540 8700 8625 11\001
-4 1 0 40 -1 18 30 0.0000 4 360 360 8700 1350 A\001
diff --git a/doc/papers/2010/SPM/figures/correlation-triangle.pdf b/doc/papers/2010/SPM/figures/correlation-triangle.pdf
index 7f09c44dd1adee0b07988f8c0ea05f589a5150fa..72721e6fd0f263fa4515e0c9fee7fc035c9ce1f8 100644
GIT binary patch
literal 9631
zcmY!laB<T$)HC5y-THRjZ!Tj61BLvgEG`=x1%02?y!4U`1rr4Wg&-~k1qFS#%$$<c
zA_aZ7oWzn;m(=9^lvFM|JFeoAqSVA(u8KKpYfty-?C!g3vrno1!4l{97q+Og@l;%R
zxA0-3Alog2Rcv?VetbW>RqX4DHMb6&J+_lwJTz+Q0+lW$&8|!TwkzA5dp@;_=WC(e
zzrXSF|6kV6>#zU2|M<@X_5a`6+h5uoqj}`ZkNUR1;=lj@xBU0}|Azc?$NyV>dc5E6
z-&?_mulj#9((CTrclUcKSylgJ%KW8Yj(<;9a$9S+Pj2P*^i^-uf7U!JkStgtHBWVF
zE6;+f>1Y0^O-r}F?XS@C!$x}Lk=6F=!^|?2cG^}m1bq5@=B4-puk+KCPqw_4biT2m
z@yLbwOH-W>iOzrNwO?_m&1X+1#qh@-Hx_h$`OwojzxDG?r~j;;8*R^bEtJ!>U%xu{
z1VdI$+}uB}&TpO)-%w{8t<*i=a9e0t;hCG)AJ>ZQm;3*F`pmz}kK4;nVi2CEX}aI@
zsPyyc0Y2yW6MAcEHcu!wdU2Ki)SD}tzXoI(9Q?c0-0t+w<LSG*YDLz6^4aV2<n>2=
zw`YIYk58NT^2qkLlDT$0QRaM0Hw4ZuU3a>!OsRFzrdNLymOR`meEdgUY(;qOx12Xt
zuZ@?m$yp2e*hTrs^J+<7E?)C3w>D1k-Ic7$Ydi~2sXgBLE%N#6rAMoZ0^YZ1c-nU)
z2Q2HZ%Dg^b?W}8s=l$J2{G786?Eljkye~#<sr>8oNwZGO&**)+v*T~fhRL^F{&}3;
zdd%%@yWC9fRHgbwW?!x>`W9U5n<e~HdF#duv90o_iq^gA{L^{s!u8uF|1LZLYsr=9
zaeaF?i6=?;hw|FQJ~PK^<A7jcK87u3$v<CT*|qNevTyC*{;y>IZy~wv>$Z~>;l1`I
zZ{BzRH%XmnxXXUUsXsj178Gw;I*(cXZ|3Q1440Xv?5nW-JhfaQ@YLs<^JPy9OiHav
z5EHIj_v)aCwAckEAGhdPzEX}~AKnny9Byj2X=0vg^YqxgMGR(9A#1lv{r>eNBJ|%&
z`LMR5yYg(kmfd~DnKrv%?(@`!i&<`~o~0Y9XH7fpx^<$@#yKJK?Yh^dJZei>o%J_z
zzQlDOiLje&xl$!tIEB{l-JrFMq1x<#h15dVwSuMI4OcUiZq1TB^33I1zTHD7{qx+m
zTFdV1bvT*7ottyz+ShZLoXb5Y&unX*q3AOG@>90A1}E7Tt1)PI{5zw6#vyLmdozZj
z;<IUvkGCr4ES+uX`Sa0(HR);IpLC*IH5OUgR4<LJ`u#-Mu0>?tRh}F!H|1j0<v-S3
z{gtsu+QL+EYI;5Ex%7iI^VJS_DhV!<JiX6Z@swWP{F!gI2gFTaVwCJ{J{MhoMIz<S
z6~WefRT;Tg#nhRsrfXb|^-%iq>!!QU%HDkrIopJo_w)zoM}NQgCVYuQyI95>^Ce+c
zv1*)$qd5$A80H5UNcKIg`gtZ|=56kzQ}=GzN~tfr{%?h8j>V!#2IHs~2`=oRNACMh
zy_LUl?z2Kx!OEXcgzJtNPxLyoto%vRyqQ`D*7Ro@TD7Jd`)ln{FjFyB6f{<Jx1C`g
z?0t8^1>evG;h#4rXd503zBi#wuK(J@n0=)ly$5Stjgue9ZF%uDR;0;lxyJ0dCtqFo
zoi1N^v}RkvD+%TEtdkkEj#Xa1{(N(rOYZy|SK4N5YgjJ6A!DU5-?!(x%rs`%l$T`x
zJ~Jbe?`Yo%j-F?pFSfd8>5BP<Pd3lb-Pql?z)Lmt+}RfwPKV1I9?fyuzL!hPqgP~V
z*b2!PJF?gL^laq4G0|nY=?u5&X%-qgm&J;U_%6GBI((bP`77}Pku4XkUhXO5=$(0U
zm(q2UDId-4U+?u}DP81|%-PSkx9%HfxX_)9Vvz-&A1~k8Ah1HZY2&WqRY4keUgdOD
zN*3&6KC^cXtLPlbrL3yLubT35=Svz#S2(69xP4ama!q;bwU42T)^5|Amp1E>sbEOv
zBA!(L)Y3h*Uj>768k60sp0h+YKfB{-%_7|p$#0SowlO()+k}`G>2YcgH%V-1zRoo1
zWHDdm|6|i!tuJ$nO0wtA3W>8?-1gvW^6Fa_$=CR*o-<_4uuikn+{5r{<>R-r`)4%1
zP0uXYx1nkO%PS6=GhUhJOPrm#nq_}FbJNPr|1_@Y-{jokw!ur-Q|;JAt1bIB9_={$
zhwX$`#cqX9w}iJg-<@((weoC6TP*jxgHie(qIHQYls<hr>wfI|E{^|d-;dZfWELrK
z==JoLJ=$k;c;=~yo9a(XrsPZdT#^Vq^KI_7%`;TeEGH&@Z_}9MUM%_W_UvXc?*Dv}
zPJ;FyT^A>vN?ZS7vfC{&)>9Yq*lXM7aUO`>=$~W7<esFbbCaLtl*;T+wr9hVavB%T
z_Llp{XL8&1ZuC^YdrdA{TE*v6-n>|P*62p!gj-*=mc4(le_>Aq*Qq;&4Jo=Zb1K)l
znhN+lP6!bFyTELI^X?sU_oQp2D#W{7c%G!SYJTWtCifKwj5h>2t2-Zai<CLU6=f<U
z>R`#tq$T0?EQPt@>Ml*$ue)w|b@Ci`@w<|6UL$^v*rsHMXP@UciX`Y6ZV&IuG6|cu
z@j%`uky*@_9_n#au<`P|FyUKxX0DRUswvYq3D5LUiS}TM;%IpD&@<WiRFb<+bnA;?
z?&Cp6xdT@|G5))+%r2@tz(Tb5pf?xKb(ULK8*6l*G|8Xt$TQyAaK-=0j0?Zch_qe1
z<genFQe!%ycS7gu%G{|2zn48<dnf)V>tAEdSf;0eE4GDp&WV}Q+t_cIquty%nRD)^
zZ>}tSml;>^GsSv0_q9%S*ALuxv%4-=^vITEz3nH%KkxYU!|6oI@i!-|i*)qr40fuW
zx-o5HVef65$<aBlH|8i9X>4B<nzHI(cXq&WmrFBx7*G5=IJy15QE8sN`Ba%RRk6$B
z`+uh2)-m?!{}AA<GoQzJ`N?BxJm-ZOx%KkI`1BSQ32MBZ6|>1KxASPEnUaG1<uK)f
z{d+wu4iql^c+%lP%i<XSnQb1|SftJ~J52LCCbxGbSIL9^O}titDk5|C-YiyTQF`{R
za>WU;eEtyYJA5%SXD>;#5Bs_3)(&;0lcz#`bZ+YyDIJXDFP7TCxYVvSzdd!g*l|IL
zOZ>atwym4KbdjNv2`AIlo#IO$J!}o~V-v|JiFoI@==#S_F}YI_yC2*W^0QxFHU0Yf
z+%T!f%kN7U1xiPqe<7Ce@>YrL3(Ie1%mSA`N2)hn%)VJ#kSMx#R!W^xuM<C0!u=O4
zGmB3hiNDC&xH0<7%s-kX!oLF?KJW*eGhH#~lUa|~$6fV2UpKF<DoK=$lGz=nyLh3Q
z+NLc#wz_n0&-}=!JGYnb`3G&IsaO7FWq#!J)qQv3%A*+v_O<Z+J#3bI`O(J^mYPsU
z5nF#<yEa|jeKQQUSP003`s(sE+&U#HBjvzTsA;26;1|YQn7iuZ(Hjeoi3_Q(cK5$G
z@&5#=<HzplY9ETZzt6Q__~)z>Q9l1JZrgS5#2GD%k5;$+!VX+#i@7pOdSd4up`RHM
z+rBPUezJ`*-I}YMhb6J!_@vAs#^}`SHNj45muyRvxPp@|xZRFro+I>j*Sn63Ejm{;
z%~r>}l)Epzs8-Z7X7y})x1#f9?JNm7Jn6g)$0IH&7RmIpYRst24}EgDiD`DJ?Y3JI
zv(9y-tojqG`cw0xg5jxi2Ut&(-qGl(+sF6hUrJMQQc1ONjJug(@6_3g=5wq`3*M3F
z*!jHmnPb4O3z|L=*Bv>%%@6kkSpK`7!oADo=jooMmImKyzPoI*tJw2Ky+~(&io>0_
zMd6y4Wc*)lt@|L7;mOK$Ej{X;0NbLw!sUk9a}JuX;GWriEwV!A#bniX*IB1eM%bU9
zb7K#)S^?+ohe9uw&E6yWCZ@}`c3F79&b{_Iw_VH^7@17-{`hx^xNpwnZFWqnuI3fo
z-ueF2w&iV>a&tdE>NPgX<CE#wXZn4;`^6QDSAS>VGl{R9;S<kNyLjHYQ@%6ivfp2@
zqRZyIgsO_&7xQZgsVml;7j&v^o1oUfY@5UDU1#*??4`zgH*Z}^_)+d6<oxtHXYy&A
ze5S&RgK;e%>lx3mR?fR%Av*imagD~!u6n)9H|MN2*e_R`e7)cF3x6MH;k;;zr5`l*
z%QJ8At>rHeG&pppo^ejG#e(cx8U8FT3zif*bU1{jUJ-D$VEV@VFDfwR?YB>czdn4e
zczwm)S|K_iVs?V;9DW&PQ#n&!m*XA<Cp%84`^WS#KlmteSZ=AYozZF20JHbJo*!mA
zGI(wI^rpb1pyFqmhUl%5Fpa2+P#Xuy-Qq_s>h1cYX0Pf0;D=Jv3^7%fm9b&#a*Qr!
zJh<|<<)edx|L(IIwOuovT_(4eZ&;OlaN+D%S0X0Lh>D$DF|lVyx2D>ch=xT=zOM?Z
zxjwsQeotxl-z2NbL+wUR@dex0auo}EJq{CBdBBi9yZpxP&}~NpCz~s!<Rnb0Ikob{
zvnhQ~Z6a;59emfA7EfrL>eSYGMcnxf*ZJ_yfaNL61HX7qYju>IogLn9cQ)|vk$D<g
zPG`&txf<f8nVsH#PJg9_+tekwX4kzsq9Zr{t#*E8V`6*2>Yc;lJ4#ao_wMM-a5S0w
z-^EoTvhCb=)?x+^u1WjWE<ArOq&HPD$Y*2guR5I+4S}|R^Y;a7pEhofGEZSzp8kDp
zf1QH2so{g&EC1@xGdbxsxA~JxSoHeE3JV$MDvKYh%jS5M_qJMgwhh1b-rBD>^%Opz
zsn~u`v}jxJQt?@F=R)4@dzrMSNXe#m>D!Da-)^)mJQE^!`|KRu^P9efTGY#NoKM`j
zkS%c8>&l&MTK}q@h06aI-&d_IKjXH{>B+O-v$zD)_Xnkkzl{!M*^+g?Tsx#-mjlD4
z2OCp91g0?@pBX5)Ds^Lg7UMzXODnj_!(|_Qc(X&lv^}oq!D-inkwN!sXIz##yDn{~
zvTSOr>bus4`*)hu^u_baPjd6!Wi(j4KSZ%u;6(ewmY*+sE8R36=e)SK<kT}azNl*R
z&eQ%WCr+~;n(n`GmByB(!TF_Hn}RKD!*~OaGa3tfEa!UG`8|88%U$m2JPY+LF3eoj
z^D3xsXNjzunCef{sqTt#a*JyH8CHq}_Ss#{cGa1FB{jvky!iN8z7H%%SQ%vRyp=t6
zKzNEO!-*SvUa2uy7CdsCYALsw$9!_%0_G2sg*XqSBns$+ZL6q|)D@9@7pQ2fzcPD=
zpT?{8;)g|~n0Z!KFG?x8^Cx6ZcTm_g`8zR>`=w5uJMm@rrcVqzZq=-NfBg5G>R$~N
z@-zI7v9RB=Q#>w}@%;<8{^54c>7Ro<f=;!S_N+S?AT)20!BiGwH3fMli|XZj)cn3{
zu$jjkZ|O>EQh6|q=f`agyIZ%nr6ujR>C1oiTfsP6cYW&_)f-)#^wg7Dn%-}k^-cHf
zoNpZG)Gx_el`dTK_^gzQ^;^}>jC@fEKle0Nqs0m?W=mIZzS!LR{_cO1wT+fLuO-hg
zU20menBV+x+Ju|odp#3-r>xcMyj1vXqk^Ym$EEpS`4nF^c%BTdRWN*bN90sv4||&y
zTW6%)S{;`z;ndEmrRv2E%dRYITjVdXT=&cYzn<HLX4~$!U$+;q`Zn{b@!pRM<(_FQ
zV@hN@cI!zK@0}06Tzne@^V-FVCSAO{H#4kmF6W2RPq{fU6IUPf_;T!Ji12l5n|-0z
z{yhkr)uE6XHR*v>)|2O1OMY@P8;3k{IuW^3u=$8ay8W?;j_=8n3i|)lYJ9(@*S>zE
z;e}m4F7DhX`p#A@;m(ov@2i5g`p*<u5`4jFscXU9;+~ork&e;xH=d7rdh?J&nmSvn
zVvv6G50{q;&qJbjtoUR9WCzRjj*evG!%KDhSx;&`e|9m!#&Un?%AR(o*)vLA%=&!d
z(*Aur`zPqw=?#~UJY#Yw<Xt)?MBm?Zm%!4u6I`zAvE81?y!L@XZ`A}Y&btpXYcBfn
zd75%<*kR}36<b%RZV*wqJ5Dv$uj%=d)e$x}y9D04dMaL=Yt6Yp@D;cI;^@l0P}8nO
z>|d8`ILEW-A$PXQRdfAUm4)krn5O()bZOFtH9GB)jyL@e|8$isskvm@<I6Rpu_eJ_
z&hBIR8_(}GR(K)ee50c;wpLqQ?e|?N&yT%~#f8Naf0q8|>NR+r@+<m9Md#{ckJLRL
zY&)SN&d;yo5@@w7Ja+SJd$&&)UuAe+&rbW0rF1z+sdDb|R{M!tJ&&YseXpo1<n_wz
zjzLPqN#<}4?L^~U$2atK_RP3i{oc-7SbJT6`{sjBzOTLRaeq>3@C&h-5#cvWmkVC}
zIm=x=;E3ewj(h7qaoqPiqP*dZ;O(s^-(1_2XE8JWncl+<tB>>^Vn`DySL}MEc8~F;
zx5EUV`-fgT=$XrOJyCM)V_!a5eEpqW<|z`c%9m>RUx$7C#Jl3oi%=QHyPXv-(^)3*
zn6DRD(7U6x#L)Fte;?Pxx|PRE(l0jeI=<JD>$M-(=Kl4Ef20(ato6ui%e2xvxqN!1
zdt;5;`!o8lxdI{t&G}6NBG3K47^^<*UAyw$S4trhZ@oYJ+_`#Mq)rj<yVe&MR_Z4=
z2wz>dL4H~IPv0{=7iyFr<)2lKsp$Fn*6VHL<=!a`*+*RqqWYt~H|Tt`^wVo*@!CC`
z*;CTDTk_*^Z|TzME#B)ytNMK}@)r5<6*$a!%sBb@lY(uF&lf&Pn|skrW2fk=B8KjF
z#U)Gid|5kW)^E&P`Cn}_>lY(&LpIaypzq%q`UGuU=XI7?UD5LU>9_KOL;Xhfa$hUe
z{_^k&rIdF(PV&c>#&RBE`c$CFvc*g}cwL)at?(B6l{=?fN7vt+#{PeE(WW@I6Ysf=
zj{aC*@o>tD&kVnO3`$#qj%k|uHE=Q9zLuyPx1&LX;l_uAAB+jd{&!iNQk7Jwf4EKi
z-CkWGVS~hkBbm)U4G(N3n*Mw}$Gk76*jvH;>5{ms`<+%qxqrP_x9Mq_)?U5G4j=Vn
zrfN^;W7L196xqHuGL3KM{`0)%3ujDC74RvrI92yD#Om>fm#jOhgcdT+WHS?+bmr)u
z9-n^`%`Z-t@qc@^qtrhpXldVX_IZ}og(5rbo|R}WZ<*vb>1<6##LdmQ&Yb<ZbJV<h
zV*f9VK9=be-(<8Xgy)0k{MDCA6z2PwZmdp!CtT3>^vZWDHRgl<ySQ)iynXp|-pW;#
zv;Uqcxt8;dQ<!7(sWY2Su48mLH*JTpfkoD$OKxgK{P)T(Iu;~eVwB`4JJ^wucazhz
z?{MhRxdJ77fAOTU=bU|N5uvl9sL54j^V?JZJg-!~h}nBsNX<fjbzi5@8?Khch3gs;
zgdeOvRk>Mz%l=wLb7Luvb#VfW>mIj#$d)~Ey-y)cg=4=G!?Oz?o6hp<XIy{He#!FL
zC%4WM+=@Q-lV_Tr=m}U}WY|~D*QK&HR_{3zpF#h2(Zg{oJyjS~CP*H3-{pQaYHq-^
z6Ll|l7bi3ae0b9#5E}MBV&7Hyb4w>A7Z&Q><2-Pq<>N#P+ndJEk57~j{<htl<(qxv
z8ofOWlPA1&oDrCLO2M7cQnPaLQF8}J`*tRAztmM%*>2u?zH8mF@Ox?!YE36UB{Hd8
zc~JkhjHR0O#|QBfj_k_wmYZ77=oeX-t?)={Puj+9?0$+y-j^S&nZ*}u;>c>a-)Lg9
z!zUf>i!&I`y#1k8nRe~w9<NNVdquw+zWmc$vZHoI$D0!?VxNDNzEI#A8mW`M?wo|N
z_onKNT?ctJKY4Yo+SzIRGsZ2K`AjVL$(KB5OkPFKnZGgja&`&#<#oA_jwGbK^!8Yg
zbM(I4qkY%TtlW9+(QZ?YiISyR-=|IdbDzCCQ%<2ZaZ^b|&m0z)^H+7B3Kgun(|#c*
z=#KyNec=cH-Ae1e{$zGatU&P;>$QS<(ki-l;*Q5$v1yEM&Yid5ZK+bYk?_<QkH<0Z
zj<%*cHFo(KOMQOBKYP{Npjm<WwH)4Oz4&sk%N(CNb$&>&=!Hc^`xKIYZ}2<y@Ne;#
z`rT>=JyW}P=Nhtyzb=w$>D0M>=<(guygu=qx`>YkNAeGZ%>6ujsTKQ{$Z4Fsr<;@)
zi!XLuUo$zm=glY08KnXx*|QTRlkfAKZb^x_q1e(BeT#=%$Y_Sg+qR_-^e*Lv7wEj>
zb}36OD7ZD1Q)jo)PMev=&(jQ_m+tykmw6yJexiAN(4z#K_!HNiwuM^T6~DN#@$X^A
z#Kqs8<{WU74)@rwyy~ad4S%P4Yw@Bo|G;BBvPU;d>7Ck?&)P5VQSfk?9>ebGcVb!C
zr`^54V>HEcg@TFeQ!R#~2H_(sC+kl*xG{Ncu!i}AB`Wu&TmEfm?#Tb1x~-n?^}Sis
zTM8F&#QM+t&7Hn!YwYFgc4AG9WhZ~PEZTi`!KLz0>*JPJ3^{JrDYx&PWSO(_eF~dF
z#V&>KTg{C&AJ<R*75wD6y^f59YF(rP)3&P(n}5mGx9Y|8=0%+n&gOaZ|EO{8{p>4D
zi`!T>%u;K3=)PGy_o`*b91HGUQs1+r7o7dR*YVB7Yf42<&a*FUOg^l9d%~kym!{xb
za~+rX&h=jL;*#?01+mdfMYfikE+}%gJ06#ICc){Ej`f#Auj?~r{{OU1l+SO2_c718
z^Hylr6&{>8$9nzwM|-&Ki^CV0%PBp2WmR--HcLf9TV;J@@igbePiJ-FY&Pr=Z_06T
zd$8$#8;kqyLqFb3ou2PH{io2m6&Fh^%shD-b{=n?&$HyrVU~OExH`@E2;Mx@ZSdQ}
z>msWx&o(WqV;m129F^Ywj#qGEe(U>y>w;`c1RuFO{gK@M>FL64ofTS!nh&P7_1sB5
zubaZOe|mnK%FG0#ED2`8xM!Ok47(PyFx^ku5#Bq&_UT2<GkN>?o=l!$aGCMUb^o_X
zAKv{oocOVYzpbV6H>XMO1MkXX;rA4uu{``LWz%;}r0VHvof~_cnxAzix=)#Up+@J$
zCx=JX@9iuN64!{IU)Xve*hQCr&ShSgFM=1;7p0$6V6?bg+EUaSV<>ZQ{+T&aPYb`6
zDIQ&XXy!Lv*7F7tYeW2R9N}@g#NH(7woTl_;8Kt4(eFhz-CqvudaO8ag1(-MOwfa^
zGA>g;G%+1tW-K!0r<VVU7{_yQb3Uu8Jgnvt^V{!x=G6&4t<-6z8+@duFSkgDe01k<
zM_)_eRAJ3~(n4vMH1D@_Rh-hOZm>!9kG^2EChL2M(Q^H-C2@OZZ9LUG@qhGPfho3!
zrytilab!nU^yF7ht2bU3ED~mCuvy;jc4k-e!Q!8*f2&(CNuQW5FsE<+RLv7H%We40
z8Z>h*Y_s4#9=YH9*vSdIE`|LGa@~0)r{v&?#3}h*d`|E943@}S?++JxsbS8wVYRK}
z^mNfwxf2U&Qd7eY@HFjyILXQ{N<3XYa$lhSU&b9%y3Dm4&fe+&zVypYqbtAK-yRA2
z$2LFBvxuimNtkDT$Hl4TnQVuW<z)UJki6pBeBkTBp3Q|um)1v$sT=D*;80vVYt~7t
z$*w2=?4Gu4;w5kAyTUIEKJ!1n|M(Yo%r(Z0yqWqIs~)JD2%I>TShU%r{iDn@VeO9+
z7p{v~Z;QJ0h}DR%t3>4qdoIf{ZwImGA?$OUpH7@#cXg?j>lxRqDY3S#yRL3<D}2!q
zHcQ=(k-_-W)9x7zJ7P<1))dWszEt9uA%o|M6F)*kZ8I8-=4CkSU-)9e{dN}>^X7{9
zrjy-OM+&=6`KNT8R&Tn#<Hc0Z>cIc6KT19Qb863Ow~3#dC;zqRj){G^wM|A#fJ0`g
z9E+1t-pP~dGy79YVvk$4?LRVmZ9!d{<<H9s+$()<ojKKTWUg1ZvDd2Jba^RZ?j^5!
zHJ%=R&=>c?<oJr!L2+@<UPgr0RGmL<yEIU*W@f%{!{zllnS~$p)}4B3Sa<!-VcW?1
zsn?uma(2Air@;8<(VgH@C$)oWcUMdjX`cAy^#ebHm(i(f(<>G*PkeOxk?nlP){RE{
zdS71CC}W(kGe5Mv?Q6p84?oz9t{kwm(bW&TzFm07ozIh|SsGa06way?JbQXl@za{>
z-i3E_>SjKA{FJ%(fz$Q9p(l<1cWw_#SC4Q1ICKB?8M_*|`Bc4SPZvv^xb8G#nfE@?
zc^>`_dCK?gR@P~I-I~BZ+d=oIz%l07?<M=LO^!9HuTW#|FPJ;;^Mx-a`O=!bFS277
zeY^Gh{1?ZI#_K)9w=U&>u=;b`nWep)Ihh@w_J!>%40u<?p*3&8f>`$TLX~ceF&_i3
zrA#XC3sC-$y4o>mn!7gl%Uzihrv5%(_epj_k&$R7&(k!~xVxSQf8PIcgdrsJRkUSw
z*Q1RK)Se%*oyWjE^ZL4^DY28Mgg%z2N}4p|sm<9}4twNXE3FpKw@-U|FGAyA&1vmb
z`Zny*6`QqoW{NAk+_7D2u4K=W2}d^+<T@vR6my?=(oieK^U0sOY0~$7cAKY^9nw4#
zw~sGbdPe`>>Q(*Xc_y(lg1gp>m$LqkbNE{G@#Efi_kYKI{;+8Z|NYR<TpyaVFMqep
zeR{J&`S`0t3m!CmHS6dv;op<DIP=$zSE>0=S{D7^BempTgT}n<)sD=E+={2<$6D8|
z4VtlwODK2A?Bum`61{R4FZ^&^W=p5x-M;eeDLj#vnA5&9eevMg@8%?A6R&#tGpoeg
z*7uoZ1#_m|E_pC9@#3#9$M)>lCd!u~ILp*E%VCOMf}wBl1BZ#nCw+azkP~-NDAj7}
z^rv_FzpPgJ9n!n8;%DUVB~mkEL{CMiUAXkm;)Y?_x`cU`=Et0_{yA@1#<c@R4~%P*
zcfZ-!d48kY2H#(|ij55y^*qfDes;i6CQQcatJUA|c^ym7E<D<86`3u)Z=wBFgKZm+
z*X&BHn6>!OgT%UT8@%+Zk9METx2<ft`Q}aZeS70Qo_^80EjaJ@cb;KSXm9$<`f>d}
zxyw!Z8H!i+)7PD^Q?U5rmshtkOuT93qh`sqznW)qN9OM3d;EH1@0wqKvv#f7yT`=-
zRgd(v_wlu_ZW*6q_^aTmBz~FkzH?kv-p{U2{u7ROZTeHxQFiV0$)Fd?S<aPT_p;}+
zKY8_?Tgts>PR5K)$&5Rq&DP3Je8A^>`Stai@z?dM>i9H&do8wU`{(sIXr?}!O2zfK
zXK~q6-tXKhb;7X3%;Utu9eW-xzaKdBpu(FE0$s->1iMdHZK^!#yg@KD;j-+G#+tLS
z>~@#Zwgx|5WTUI_UzPdErsX?7bzQo?+o_>v<&%l;SMNQgao?MHtya~e{>*3ZCaj)Q
z@%rh#31=>BQ1bEJ`MOI~#r4>R<i6y?i(Kkf9o4st5Ow&jeruz;w~#p7!cFte$)B&x
zZ(R5D!1vh!b!z9iipBPFZ%x|pdE+_3qQ8tHuBzJw-nh82Tr=);XV{i<f2!sUuK(TP
ziR=Xx`e9#6ndEy;=toqg@0<B=?^p4iO9hg=8s0to5XzxibAL~CqjWF3@zc_3extLj
zqTw5>xn413eN6d(;A-sb{rjKa{b=;UTu+<5D0D?;-Mgcc=k8T+NY~w=f26su>f4mN
zj$9|a-%Gomz1%%hB75D!{=aiAzwhaL#j<av4S()ih8G9#H-B&6qp$x+wC1ju9EW_>
zg>1eE-HH<?FM>GVO|ATRZS6!>nLYiP`vmR2-=3`T>*>;J#$6glcJudsKE0**&wTGX
zo0YlSF0<dgeV0%AUgLsu`IGD?D*klL{ObIv`Q8)xCONCrl*u*kk52l-S)=xI7ptAy
zlLJx=_vBaXXSm%_5Z_>Z-%v^5VR6&EN%OzhZRzJY&-Z0p?}^4-m-TmlWw>yt{@&+Z
zo~34FysvPTnVeXq^R>BBe{M_uF8!b{_^G-h;=hJ=&mwD6$;S7ep9Y<6Iwm{o`@dR~
zZ5DZ^=Qr}E^s1a<`QMb2+|AXLo6NjW<ob;@bGH9>vi!07;O!e~Cda>B+uwhz?X&Zq
z8D$@*y*2+IIdRMBxxCE&qIwPgJ34cho#MIpU<arFHXfEUZaHPY)jl|#V*7FUSJpI_
zIIBfv72Egyuy;B1__@WYc&qPgJJ^jre0;hla()N@|C&GbzXH<FbEW2`K-Z3>=B4B(
zWpRO)nt*5p1qBOpQxlK^5Z4I4C<VL>#kHcuJ-8&XBvrx21|*=MprD^<pa5F3;_Rqk
zsGy&ms9>mIX9tqAvjeSAff{cLH%CD~q_QAYK|dfdJr$%(KOnIvHLpa$5Wd#MH#H?Q
z(J8+|AzHye!9c;p(oE0X($dnxLc!F)L?ITe$vHo-BsH(3SOK(Z2C_uPy(qu50Lfht
zYrvu)Eg+``E9i$5CFT_ufUHcegb6zbE9kqVmSrZV2Dv+d1R);K4@xc0FD*(=Emi;p
zLlBa8K#m0k56I&XdqCbP2I<xJ&P*v*h*kjkI0)|AQjiak3@}3q59gxP#FG3X1&!py
z%%Xe+Lp=*UGX;%|l9B=|eSNT4dQoCQMrLxcUVc%!rY6{yfTH}A(&SVUblKU#BGnwp
za)|4l6H5|v^3x$EC#I(sL!$$sr=ln|jmtp6g3AC76wFLbjZGEO6rf_3h9>3;U|EGc
zn3#oynFYF-fq|hZx|oH938t8(i2=GgOCv)g3^8M4BzsGW5;JpBi@?jMf-|d96)eEM
q3d+wfQ2==yl2|<R(()BRkpPa>;*!Lo60i>~jV&y>R8?L5-M9eH-NdN?

literal 6558
zcmY!laB<T$)HC5yJ^rSD5tpfgfkJ*#7MG2UzE5gidP#<YnSy~rkiJ`HPDyH!g1%c$
zVo9n?YI1%`s+}EIaY<2XVlG$3oVTIA`ND<*dw+-ja0|-ZE?51hl!a4KQSa=!BaDR(
zt;-fH(a2T(XZKiAfA_sMXF+y8jnGeNf3F#TezsUWx9Y;Onpf|?2FAWybkAO6)9)um
zPD_q|uWmgTEi3eDu|q!3tL7rh?GnsJe0i<8Njb^gvD;X0^Ju?ePJSPLW0OAj&ZA}<
z^*!=hC)P3^6J`6x%AnhJV&9^C#cMp#87li#x!yc_*0kxGy-4=z^8A0Nzw7+WySiYB
z;>yn!^4}Oc-1fcOFVb0GY_vj{^F42*`?>>;6OV8oa6j7ZJ7KH7>qg6#CcdVI#}6Mb
zH?V#&`CMhy8`US@#eem=EMB$wQc2vpuYog~cP)ze)_eM@?PPVEV%t>h@c%boZ$B@<
zy1Dy`w8XD~T~l?Z%gzn_8y*qizxGn>Id!fl7w&xbR$q2QrrTrcxvBa_Ynd|itskFg
zEAI2yxW72?qTb{$OH)&u#Lu2S9P{zOUcD)<*STFkC<H6bd3u1u^Mk_TaL;bdl%S){
zXVy-brmV9hMEOzJnk7g77_WTfXy)mgyD_9irDB3<h-Y{2ktJR1Hxnm&e6|t}I`C30
zX!3Rs-@=UnDpf1&Di36T>0YbW_)}}zOtGV$jSqem*Irrg_N#u{mfos8E2UXY9QyAy
z_HA^xmAm@vY1yB!MT_=-{JcN4Ol-sVW3TyQU)ajq*wj`1`So|5O#C~I@RRG9OZG0!
zoPOOt=ghY5DT|7CH0s`EUdCVec-iv2X5%l$=4TAf8Jso9w>~p7;a<bdI+^=gTJs;C
zSaZaLGw#T{u2(aH{onfLv-;@#{3)}HOL3Xqxvz$;X=<?!Iz>@B*CX~NwjJy0ohqd*
z&MlPs(Ql%jzLytkRFg=I*P}{N4);qJXMJEOj8wFo+4^BGZ)#3DoA~#y9=G3l{biYB
z`eb5iUJ5j|rsk!9QaC7GgK2X!E~t<RBJqb*7NqJ2B&Mh8`=+L3COYL;C`2157$}$;
zfUrp{mwrHEQEFa^f-xw2aOnr77U!21C8rkK*yslo<tGQHmPG3ZxVS0khon}N#B%Ao
zR+P90mn4>?Di|6;w7BKxl_(fO^xN5S={x7=m89mC6f1!8U=Wv`9n4uEB_NmD*eK|O
z+@%0^Sh0e>cV<elLNpi1*+E>f3i{6Zr641bv>KxNNI~B@u_Q4kKOJTS$mk$0ec#lQ
z#FWI6L<K`os36;Ij%onH8(jMS0lo@`c6QLP1N#c%O8p>nE|9(;gcrcxgvlBja2bNa
zGDttjg3AIF7)T015>SOsiN&d)K+<>eaCC9?()LKrDN8NMOit7XiMpf~Cl_TFl;jsF
z7=pYR1P&Xp6qmkRW>Im8b4Fs3f{BH`Pa>3UYOWuinNpHb9L;5FYNkL021Q(6a(+r?
zUb=pGW}ahSai%MbA6%ML0!k&IC^1C%0OTQb4}^vW1%x{xJfQ28pOXT1Dv~cOK_P+N
z6K19ePZ%1S!F-`$ZUjn8pdiDFxv+{Vz(u(Xz+nLAgJq1&K|X+pnHd@?m>C*E%>jj%
zv9U23VFHdIXrO?C3(f0bu3utqD)yLma>}oWHc-$tGFC7(GEgu#u#5%OL+Ql|W~QcQ
z7F_y{#mS(oXl`K1rSF_r;E|e{o>2l)$E6PnUyz)xkujIPXGvmCX0l^mdQPf>0hfMo
zNosDGg1I@DzHer6ab{jRIB_T#nOkt_gVIiLYKewE*ew0D%(7JdwEWT{{k+V)RQ>$C
zRQ=-AveZ2N;>-&Dl8mC%RQ;0jeEq7_qI^xTZ`?9-QjHZ1!C4cLHo$ynI6!JtkVjw@
zDwjS=l5&RCz=nn<=5}__(yL-l=%iYo;Bbj!=a&}jWZLDpv!mgT^;r=erl;PkHG2#M
zJ+vdXu&^C=(hkuN$ZULAax-bp?Bo5qfj4;A*bF7^DjBqDKKPKVl;^zsN1<b9_S)c<
z%sZ35&pIr>+hbbl|2>w^ZQq~#{N%fx$fqw3BCbDEB3h!l4@YIq+PQK`fEU;231V6s
zoU^K?zTYbFa+cirqjg+wp5K&uR;j|U?^AnhzQf(w9*%+XZ|o<9rLJDTZQ4}pA054I
zdpxFUz1rUwwfN!()vy2eeRv=B=GrE&y3U#vTRB3vad|IIHl45L&)u|jioWox+^1#t
zQp}>y7~k(vJGg18|8}mh*=tu#>-Xq>@;E8^>glJGcASd}3`%}p>^rqA?zps0s%g{8
zU-iB%6Z|iAO`R1{8dKw><n%evAgaM>f<2dmmq<s1NJ~vBONU$Oin&o<rUB<|o>kqj
zStgRNS$2T)jitX-K}SKTO#aW<B~@~c+oKh0wYF}!-RQZ~QQ+DmQ?beGEcWU#3X2Kf
zU#yv4GPh09@d!_gpB+12(^dbDqO)w#^IC7Sube(_?*Zo>xBq;NYWp$S<=aCCzmS-+
zYg)bkekEUj5UQ@u{YWhHl;_;3TB623ZoWLl;^`@@dvmUzQcsHd=PB=+cDYYr=S)aV
z<DIvMx6E+C;ki%S_7=@tKWB>5Qp-0U{<k%4&NL`FsxTh0kMkCpnVY)(9)I}0m{h&9
z7uzN*&@}yUz<*~WZ@Ay1i<h)#>9rYLIB@T!uHShb4L@Jq7n1w#T`!)k{CD1|>FW;O
znX0|1_-g0P>Bo<=>+jqVS=-Fv{C$Prcb@r-9!aw~ip^yO#6F%qclmnVj*D-O97y`G
zc7OJ+w0&#r7arx|jNLY+K;?!kZ{y+GT=DZo)t*`FvN*3j_Kme(Z!DmZn<&q-w%0Ra
zxxbH5+{^<0e?|Yd-sw>33fV4gb%!fsI%DdiH>b|Bx>mW1sC|~)l-;AD$TiKDLG?|`
zhgtSq^?dj5%)dOZQF86`BbK6u6BaFcI`Lv_a01KYot>T6&%{3szVIT*VeyvvbML*c
zn!5j9v_i;TKA~-MFIJxSu~=&SUBgqE{XxUzx$~Umf4xj;|NQ4O_rdx&3;U+IKf3-d
zT6y`(%yJXv)rH5xip#b>ef;SBWeM@x1>a9U?p?d~ZhAj&LR!v+36pj|wT+b&pX{y_
zmUHTcYm&GJlP&kAuY7NIh$|GnE2-@CPmu1&VZOWZeD<dO7Mgj@hHjxZeixaG`^%fi
z+`F^o>y=ygPpLm$qFec@MWDR0{!*de&qvpj?|-|`(^$FM%|jz{&LY)S=MTkx+4rtF
zm-oI&`PVJ6M|vvOy_oyw7uV<ZIe&!{`|I>STa^k}YQ3DLDKXiw$I-}pQtX63-(M(Y
z22V5JX`K6^>sy<=dt{KWvuVudS*CA96pwj&u1?k2HgiMOg<~%j*8l$Ua^L$|DN8#K
zu5rzO{vz~bYi#n?P4AC=ZC@R=t#<#%X$ES)<No~7k6^3$Vk|T*{#T$Y=XE~TxC`Fr
zi??{`o?VcCZR@2)=bhs}a@+53Z~ya5=?nj+iKf>;?Gb1x1g-QzRTi{33jtMysP!_q
zAOsidxa&WpvfbRkSi#%~UbY(=8yXszAPRRQ)WRLaC0w{08knM$?xqF?T>25vD#FwR
zWN1cW5xA&#)KApU)X&q;*DuyDK`F+;Ei$BH9K?tEoA_ef!q61C6c4QS2o997D=#j0
zzMgeTb@83P#?xL)**m2s{gl{y#^dx0$2GZUuikAg+q{-%j#$d_<<q*2*3aB)a%jSV
zSu^)?XnFnD?Cy9qUrEDh)qUCJi;R^P)${HDJokOgpMCEi2Q+aN%9z(p3|>>}mA6}W
z_YHNcM;CZfjh6caYG!6B9o0&f^OcIa_AOE7;_6Pjhc$0fjbsd+Dr{KP6-<w_es}k(
z`FFu=`)apCGgpU&`OmjBel2fgZEr81&-J(V;L>vqx1SyrGrMBtI{*ITFJ7MuIg`5=
z-R_G`IuS2?z^wi7%Z~c!T;aLV8?Wl_`db&TdroI&-}5uGOs!|jexA15cJ?;*f~9Ar
z51cNj`Tbv@WkT7)>*5n~@>-TH;@ZL#x-fKwgs!7inyl&qr7InB#ZT|pg>KRcznR{V
zt7f#MLD28?1l3|MVISc|C9~LyDymwZI&fD={d{@R!OWh4XC3omhwxAG4_6&qz%X&D
zjK`-_C;1r<yB!b?{w1%q_fUUane5eNJ$A45fBSN9sjj#07hUJNOvTKP!K-xRUa#LU
zJLpqf#>^HLsUJL2@3@prn8Oa|KHcT;S$E3f)GNPQl{6am7(Pf))H(adkNYh93O9+p
znZDaYri<!E7#o?HS$w*a6VRp-a4<ZeFi<VzXv>u5F0Txxx_1U=6|81W%U+rlzWPR7
zb{_vW(>u2~Kd%m6f5rXP$+Ej*$NN<E@{3hcR%PG4z3aPD^5^!<N4twoD4##EH@Mce
z);2wVlA=-2<@j5Ur`dvKCl+v9F5Z1bncrroOhom8l!on>%zu1qtp0oau;oGlBaLN}
z*XAVtYCHdS``-8Otgc*2{k7!o-77oneM)9aM=eg<A;_QjBA-M2#yimo%fhT~wdBsN
z_M60QC2^@~)eF6?0jHaavT_U#rtJHf_xxqzqTRK2Pq<9qtjacFKim@WTKn)yi;!5?
zv<bZGb7KF!TWj7F_^IKJrMZDeP5UABvX=_o%Ud4^a=nrEx?a8e*SfhA-@E%<Ox}Ce
zoqt}|%#?<_YcI47iu@nxy;<Yc^*HsDp+A#xa>``KS0PoY8dI*9ewr|Y<E7_>3ZM1u
zUmpJ|<oL_R_M_Duv*ZDHRG?W9T=c-YFo;G}gs%_01!ZE2$a^;S6$OdO*{LN8NvY|X
zdA92BckfqM$V{<S4>$ES@GWpo&B*kqDoPEm@(W3>%1*XSQMb3_vawH0$xlkvtw=1;
zO#=^x6f2|_C)+AH2l==uffQ6&Rpb`rrj{fsROII56<bx<s)Myy<rQ0jg!R=Gz)DK8
zZPg=u0~AW~^K-H@OB9UsEcFa^4UKga(uxvuQ_J&<vK0*V%+&3;Y>HCStb$zJpavGD
zq}i%xl#~=$>Fbx5m+O@q>*W`v>l<2HTIw4Z=^Gj87Nw-=7FXt#Bv$C=6)USl^<_rD
zwdED-f!(B+oS&<o8KG~eXP^(W2vnMaI#ikYc?uwl6O-~wOKjCsO;XL14NcN?EiF=v
zbPWwtEp-hH3=DKlEmD(BQd3hbk`2vZHWeVb5XGv3lr()qJ!5@!g@TkctAL{Xl+xtX
zB3pI$03QYSjQrvfNMBCDLeI=ZT_5UmDmbVjw*b4}D-sK!p0}yUEwJ*<PsvQHbV)2p
zwKFm>u+%j$(={>)F*LR^wXiZa)iyA)GBB{wM^niK*6Li83K|k4LMxI=B(3>HA^G_^
zc4?XEMk%Rf3Sp^5#h@54)-zHFNGwUt$Vn|r%~3Fg*bX)Vs>4Pf6iY~fM8#lBEb#Tk
zA8@(3p!5t<XXTQgT$-DjSK{eHWNM*e1g9j!omo&?lmpHXDarb&IjJBQ73&-78S1Mm
zq$FFV<rn29me{H%78K-UCMT9;=I7}bq@=0a*`y>}m1LIWq}qYAn`2H1gprd8%05;(
ziFxU^>J_>vscDI&IVI|#h$<~gE!I!YFDgpS0UM-SQk0np>Q(BcWu`--B`4Dk!T_76
zkFX;p*(w>7V)Bb1)&!>(LKr!jc18I~4rTe3iRr0D3Nac%`AG_8iFpcsnW?4a1^M|!
zB|17fF`5u#;pT(&gUpAUiX~Zqg@Rn%?6_?7D`3Tx9hU-?0QC$)l+CGmDYok6ppqA3
z<PJ3E0WJDrC5Z;Mf<%)`ADmw@^YcJCTf@Z)l(!Acj7$uTO)bFLTHU}vU6V`SH$R1d
ziV#o=(MZco#~b%B8}o}mO7Z4rO)h=M(vpn)A`PNqT@yagR#B9i#$}*jXwC&Hh9MX<
z5Mpeqkfs0=v$Ql&081(4!Ng20K%+1qL4=rrrLiHpIs<bH47~;hhNhV6%rNvC8kl0J
zGc?9jXKZL}jBcKxp_w^`n3*xAn1Q7khB`wdOfgFX4EGruWBSd+$lMZPUP)16W=?7m
z7ig?CII}8M!O&bmKPW%HL;*a;sG#qemzJ*pN`XOK`kpQd(KZHdj+Q3IMvevsmS!eS
wZsw*Yj?PX-1_q8shDL@4Muv8TRm6fuY>P`0i%P(eYi3|(%B8C6>hHz{006{;!2kdN

diff --git a/doc/papers/2010/SPM/figures/correlation-triangle.svg b/doc/papers/2010/SPM/figures/correlation-triangle.svg
index 8c07803588b..981cb9c2397 100644
--- a/doc/papers/2010/SPM/figures/correlation-triangle.svg
+++ b/doc/papers/2010/SPM/figures/correlation-triangle.svg
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!-- Creator: fig2dev Version 3.2 Patchlevel 5 -->
-<!-- CreationDate: Tue Nov 25 14:11:34 2008 -->
+<!-- CreationDate: Wed Jun 24 14:57:21 2009 -->
 <!-- Magnification: 1.000 -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
@@ -10,16 +10,16 @@
    xmlns="http://www.w3.org/2000/svg"
    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="6.4in"
-   height="6.5in"
-   viewBox="1746 1446 7719 7794"
+   width="6.9in"
+   height="7.0in"
+   viewBox="1746 846 8319 8394"
    id="svg2"
    sodipodi:version="0.32"
    inkscape:version="0.46"
    sodipodi:docname="correlation-triangle.svg"
    inkscape:output_extension="org.inkscape.output.svg.inkscape">
   <metadata
-     id="metadata143">
+     id="metadata121">
     <rdf:RDF>
       <cc:Work
          rdf:about="">
@@ -30,18 +30,18 @@
     </rdf:RDF>
   </metadata>
   <defs
-     id="defs141">
+     id="defs119">
     <inkscape:perspective
        sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 292.5 : 1"
+       inkscape:vp_x="0 : 315 : 1"
        inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="576 : 292.5 : 1"
-       inkscape:persp3d-origin="288 : 195 : 1"
-       id="perspective145" />
+       inkscape:vp_z="621 : 315 : 1"
+       inkscape:persp3d-origin="310.5 : 210 : 1"
+       id="perspective123" />
   </defs>
   <sodipodi:namedview
-     inkscape:window-height="1125"
-     inkscape:window-width="1920"
+     inkscape:window-height="726"
+     inkscape:window-width="645"
      inkscape:pageshadow="2"
      inkscape:pageopacity="0.0"
      guidetolerance="10.0"
@@ -52,495 +52,546 @@
      pagecolor="#ffffff"
      id="base"
      showgrid="false"
-     inkscape:zoom="1.5264957"
-     inkscape:cx="288"
-     inkscape:cy="292.5"
+     inkscape:zoom="0.78412698"
+     inkscape:cx="310.5"
+     inkscape:cy="315"
      inkscape:window-x="0"
-     inkscape:window-y="25"
+     inkscape:window-y="49"
      inkscape:current-layer="svg2" />
-  <rect
-     id="rect2449"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="4497.5557"
-     x="4803.749" />
-  <rect
-     id="rect2447"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="600"
-     width="600"
-     y="3892.5679"
-     x="5421.3672" />
-  <rect
-     id="rect6"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="6300"
-     x="7200" />
-  <rect
-     id="rect8"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="6300"
-     x="6000" />
-  <rect
-     id="rect10"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="6300"
-     x="4800" />
-  <rect
-     id="rect12"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="6300"
-     x="3600" />
-  <polygon
-     id="polygon14"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     points="2400,8100 2400,6900 3000,6900 3000,6300 3600,6300 3600,8100 2400,8100 " />
-  <rect
-     id="rect16"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="600"
-     width="600"
-     y="7500"
-     x="1800" />
-  <polygon
-     id="polygon18"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     points="3600,6300 3600,5700 4200,5700 4200,5100 4800,5100 4800,6300 3600,6300 " />
-  <rect
-     id="rect24"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="4500"
-     x="6000" />
-  <rect
-     id="rect26"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="4500"
-     x="7200" />
-  <rect
-     id="rect28"
-     style="fill:#6c6753;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     rx="0"
-     height="1800"
-     width="1200"
-     y="2700"
-     x="7200" />
-  <polygon
-     id="polygon30"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     points="6000,4500 6000,3300 6600,3300 6600,2700 7200,2700 7200,4500 6000,4500 " />
-  <polygon
-     id="polygon32"
-     style="fill:#c8c4b7;stroke:#000000;stroke-width:60;stroke-linecap:butt;stroke-linejoin:miter"
-     points="7200,2700 7200,2100 7800,2100 7800,1500 8400,1500 8400,2700 7200,2700 " />
-  <polyline
-     id="polyline34"
-     style="stroke:#000000;stroke-width:30;stroke-linecap:butt;stroke-linejoin:miter"
-     points="6000,9075 6525,9075 " />
-  <polygon
-     id="polygon36"
-     style="fill:#000000;stroke:#000000;stroke-width:30"
-     points="6490,9150 6678,9075 6490,9000 6528,9075 6490,9150 " />
-  <polyline
-     id="polyline38"
-     style="stroke:#000000;stroke-width:30;stroke-linecap:butt;stroke-linejoin:miter"
-     points="9300,4275 9300,3749 " />
-  <polygon
-     id="polygon40"
-     style="fill:#000000;stroke:#000000;stroke-width:30"
-     points="9375,3784 9300,3597 9225,3784 9300,3747 9375,3784 " />
-  <polyline
-     id="polyline42"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="3000,6900 3000,8100 " />
-  <polyline
-     id="polyline44"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="2400,7500 8400,7500 " />
-  <polyline
-     id="polyline46"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="3000,6900 8400,6900 " />
-  <polyline
-     id="polyline48"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="4200,5700 4200,8100 " />
-  <polyline
-     id="polyline50"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="5400,4500 5400,8100 " />
-  <polyline
-     id="polyline52"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="6600,3300 6600,8100 " />
-  <polyline
-     id="polyline54"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="7800,2100 7800,8100 " />
-  <polyline
-     id="polyline56"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="4200,5700 8400,5700 " />
-  <polyline
-     id="polyline60"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="6000,3900 8400,3900 " />
-  <polyline
-     id="polyline62"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="5400,4500 6000,4500 " />
-  <polyline
-     id="polyline64"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="6600,3300 8400,3300 " />
-  <polyline
-     id="polyline66"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="7800,2100 8400,2100 " />
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text68"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="7950"
-     x="2100"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text70"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="7350"
-     x="2700"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text72"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="6750"
-     x="3300"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text74"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="6150"
-     x="3900"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text76"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="5550"
-     x="4500"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text78"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="4950"
-     x="5100"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text80"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="4350"
-     x="5700"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text82"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="3750"
-     x="6300"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text84"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="3150"
-     x="6900"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text86"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="2550"
-     x="7500"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text88"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="1950"
-     x="8100"
-     xml:space="preserve">A</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text90"
-     font-size="360"
-     font-weight="bold"
-     font-style="normal"
-     y="9225"
-     x="5100"
-     xml:space="preserve">station</text>
   <g
-     style="stroke:#000000;stroke-width:0.025in"
-     id="g92"
-     transform="matrix(-3.6732199e-6,-1,1,-3.6732199e-6,9450,5175)">
-    <text
-       style="font-size:360px;font-style:normal;font-weight:bold;text-anchor:middle;fill:#000000;stroke:#000000;font-family:Helvetica"
-       id="text94"
+     style="stroke-width:.025in; stroke:black; fill:none"
+     id="g4">
+<!-- Line -->    <polygon
+       points="9000,8100 9000,900 8400,900 8400,1500 7800,1500 7800,2100 7200,2100 7200,2700 6600,2700 6600,3300 6000,3300 6000,3900 5400,3900 5400,4500 4800,4500 4800,5100 4200,5100 4200,5700 3600,5700 3600,6300 3000,6300 3000,6900 2400,6900 2400,7500 1800,7500 1800,8100 9000,8100 "
+       style="stroke:#000000;stroke-width:60; stroke-linejoin:miter; stroke-linecap:butt; fill:#ffd600; "
+       id="polygon6" />
+<!-- Line: box -->    <rect
+       x="6600"
+       y="3300"
+       width="2400"
+       height="2400"
+       rx="0"
+       style="stroke:#000000;stroke-width:60; stroke-linejoin:miter; stroke-linecap:butt; fill:#ff0000; "
+       id="rect8" />
+<!-- Line -->    <polyline
+       points="6000,9075 6525,9075 "
+       style="stroke:#000000;stroke-width:30; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline10" />
+<!-- Arrowhead on XXXpoint 6000 9075 - 6720 9075-->    <polygon
+       points="6490 9150 6678 9075 6490 9000 6528 9075 6490 9150  "
+       style="stroke:#000000;stroke-width:30; fill:#000000;"
+       id="polygon12" />
+<!-- Line -->    <polyline
+       points="9900,4275 9900,3749 "
+       style="stroke:#000000;stroke-width:30; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline14" />
+<!-- Arrowhead on XXXpoint 9900 4275 - 9900 3555-->    <polygon
+       points="9975 3784 9900 3597 9825 3784 9900 3747 9975 3784  "
+       style="stroke:#000000;stroke-width:30; fill:#000000;"
+       id="polygon16" />
+<!-- Line -->    <polyline
+       points="2400,8100 2400,7500 9000,7500 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline18" />
+<!-- Line -->    <polyline
+       points="3000,8100 3000,6900 9000,6900 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline20" />
+<!-- Line -->    <polyline
+       points="3600,8100 3600,6300 9000,6300 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline22" />
+<!-- Line -->    <polyline
+       points="4800,8100 4800,5100 9000,5100 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline24" />
+<!-- Line -->    <polyline
+       points="5400,8100 5400,4500 9000,4500 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline26" />
+<!-- Line -->    <polyline
+       points="6000,8100 6000,3900 9000,3900 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline28" />
+<!-- Line -->    <polyline
+       points="7200,8100 7200,2700 9000,2700 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline30" />
+<!-- Line -->    <polyline
+       points="7800,8100 7800,2100 9000,2100 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline32" />
+<!-- Line -->    <polyline
+       points="8400,8100 8400,1500 9000,1500 "
+       style="stroke:#000000;stroke-width:15; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline34" />
+<!-- Line -->    <polyline
+       points="4200,8100 4200,5700 9000,5700 "
+       style="stroke:#000000;stroke-width:60; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline36" />
+<!-- Line -->    <polyline
+       points="6600,8100 6600,3300 9000,3300 "
+       style="stroke:#000000;stroke-width:60; stroke-linejoin:miter; stroke-linecap:butt; "
+       id="polyline38" />
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="2100"
+       y="7950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text40">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="2700"
+       y="7350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text42">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="3300"
+       y="6750"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text44">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="3900"
+       y="6150"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text46">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="4500"
+       y="5550"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text48">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="5100"
+       y="4950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text50">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="5700"
+       y="4350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text52">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="6300"
+       y="3750"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text54">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="6900"
+       y="3150"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
        font-size="360"
+       text-anchor="middle"
+       id="text56">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="7500"
+       y="2550"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
        font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text58">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="8100"
+       y="1950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text60">A</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="5100"
+       y="9225"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text62">station</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="2100"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text64">0</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="2700"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text66">1</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="3900"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text68">3</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="4500"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text70">4</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="5100"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
        font-style="normal"
-       y="0"
-       x="0"
-       xml:space="preserve">station</text>
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text72">5</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="5700"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text74">6</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="6300"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text76">7</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="6900"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text78">8</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="7500"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text80">9</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="8100"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text82">10</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="3300"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text84">2</text>
+<!-- Text -->    <g
+       transform="translate(10050,5175) rotate(-90.00021046)"
+       id="g86">
+      <text
+         xml:space="preserve"
+         x="0"
+         y="0"
+         stroke="#000000"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="360"
+         text-anchor="middle"
+         id="text88">station</text>
+    </g>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="7950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text90">0</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="7350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text92">1</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="6150"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text94">3</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="4950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text96">5</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="4350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text98">6</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="3750"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text100">7</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="3150"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text102">8</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="2550"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text104">9</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="5550"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text106">4</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="6750"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text108">2</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="1950"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text110">10</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="9225"
+       y="1350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="start"
+       id="text112">11</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="8700"
+       y="8625"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="normal"
+       font-size="360"
+       text-anchor="middle"
+       id="text114">11</text>
+<!-- Text -->    <text
+       xml:space="preserve"
+       x="8700"
+       y="1350"
+       stroke="#000000"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="360"
+       text-anchor="middle"
+       id="text116">A</text>
   </g>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text96"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="7950"
-     x="8625"
-     xml:space="preserve">0</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text98"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="7350"
-     x="8625"
-     xml:space="preserve">1</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text100"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="6150"
-     x="8625"
-     xml:space="preserve">3</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text102"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="4950"
-     x="8625"
-     xml:space="preserve">5</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text104"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="4350"
-     x="8625"
-     xml:space="preserve">6</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text106"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="3750"
-     x="8625"
-     xml:space="preserve">7</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text108"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="3150"
-     x="8625"
-     xml:space="preserve">8</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text110"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="2550"
-     x="8625"
-     xml:space="preserve">9</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text112"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="5550"
-     x="8625"
-     xml:space="preserve">4</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text114"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="6750"
-     x="8625"
-     xml:space="preserve">2</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:start;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text116"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="1950"
-     x="8625"
-     xml:space="preserve">10</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text118"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="2100"
-     xml:space="preserve">0</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text120"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="2700"
-     xml:space="preserve">1</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text122"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="3900"
-     xml:space="preserve">3</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text124"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="4500"
-     xml:space="preserve">4</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text126"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="5100"
-     xml:space="preserve">5</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text128"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="5700"
-     xml:space="preserve">6</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text130"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="6300"
-     xml:space="preserve">7</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text132"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="6900"
-     xml:space="preserve">8</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text134"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="7500"
-     xml:space="preserve">9</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text136"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="8100"
-     xml:space="preserve">10</text>
-  <text
-     style="font-size:360px;font-style:normal;font-weight:normal;text-anchor:middle;fill:#000000;stroke:#000000;stroke-width:0.025in;font-family:Helvetica"
-     id="text138"
-     font-size="360"
-     font-weight="normal"
-     font-style="normal"
-     y="8625"
-     x="3300"
-     xml:space="preserve">2</text>
-  <polyline
-     transform="translate(0.8238523,-608.65589)"
-     id="polyline2453"
-     style="stroke:#000000;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter"
-     points="4200,5700 8400,5700 " />
 </svg>
diff --git a/doc/papers/2010/SPM/spm.tex b/doc/papers/2010/SPM/spm.tex
index 6f59ccb2820..e38bf8b8dfd 100644
--- a/doc/papers/2010/SPM/spm.tex
+++ b/doc/papers/2010/SPM/spm.tex
@@ -586,126 +586,82 @@ that share a cache should be tailored accordingly. On GPUs, for
 example, this can be done by \emph{coalescing} memory accesses.  This
 means that different concurrent threads read subsequent memory
 locations.  This can be counter-intuitive, since traditionally, it was
-better to have linear memory access patterns within a thread.
-In the next section, we explain the techniques described above by applying them to the correlator application.
+better to have linear memory access patterns within a thread.  In the
+next section, we explain the techniques described above by applying
+them to the correlator application.
 
 
 \section{Optimizing the correlator}
+% TODO add text about mapping from alg to arch
+
+\begin{figure}[t]
+\begin{center}
+\includegraphics[width=4.2cm]{figures/correlation-triangle.pdf}
+\end{center}
+\vspace{-0.5cm}
+\caption{An example correlation triangle.}
+\label{fig-correlation}
+\end{figure}
 
+Although in reality the receivers are dual-polarized, and the samples are complex numbers, 
+we use single-polarized real samples in the following example for simplicity.
 An unoptimized correlator would read the samples from two receivers and
-multiply them, requiring two memory reads for one complex multiplication.
+multiply them, requiring two memory loads for one multiplication.
 The correlator can be optimized by reusing a sample that is read from memory
 as often as possible, by using it for multiple correlations (see
-Figure~\ref{fig:correlator-triangle}).
+Figure~\ref{fig-correlation}).
+The figure is triangular, because we compute
+the correlation of each pair of receivers only once. The squares labeled \emph{A} are
+autocorrelations.
+
 For example, the samples from receivers 8, 9, 10, and 11 can be correlated
 with the samples from receivers 4, 5, 6, and 7 (the red square in the figure),
-using each fetched sample for four complex multiplications.
-This way, eight memory accesses are required for sixteen complex
+reusing each fetched sample four times.
+This way, eight samples are read from memory for 16
 multiplications, reducing the amount of memory operations already by a factor
 of four.
-Correlating even higher numbers of receivers at one go would reduce the
+Correlating even higher numbers of receivers simultaneously would reduce the
 memory bandwidth usage further, but the maximum number of receivers that can
-be correlated this way is quite limited by the size of the register file.
-The accumulated correlations are best kept in registers, and the number of
+be correlated this way is limited by the number of registers that an architecture has.
+The accumulated correlations are also best kept in registers, and the number of
 required registers grows rapidly with the number of receiver inputs.
-The example above already requires sixteen complex accumulators.
-Additional registers are needed to load samples from memory.
+The example above already requires 16 accumulators.
+Additional registers are needed to load samples from memory (8 in this case).
 To obtain good performance, it is important to tune the tile size to the
 architecture.
 
-Caches and memory prefetch units can also improve the performance.
-However, a cache-size dependent tradeoff must be made.
+%Caches and memory prefetch units can also improve the performance.
+%However, a cache-size dependent tradeoff must be made.
 %On the one hand, correlating and integrating over long periods of time
 %is good for pipelined FPU operation, on the other hand, the 
 
-
-%- optimaliseren van het algorithme: tiles, etc
-
-% TODO add text about mapping from alg to arch
-
-\begin{figure}[t]
-\begin{center}
-\includegraphics[width=4.2cm]{figures/correlation-triangle.pdf}
-\end{center}
-\vspace{-0.5cm}
-\caption{An example correlation triangle.}
-\label{fig-correlation}
-\end{figure}
-
-An important optimization that we implemented is the reduction
-of memory loads by the correlator. 
-A sample can be used multiple times by correlating it
-with the samples from multiple other receivers in the same loop iteration.
-For example, a sample from receiver A in the X polarization
-that is loaded into a register pair can be correlated with the X and
-Y polarizations of receivers B, C and D, using it six times. 
-Figure~\ref{fig-correlation} shows how we correlate multiple
-receivers at the same time. Each square represents the XX, XY,
-YX, and YY correlations of the receivers as indicated by row and
-column number. The figure is triangular, because we compute
-the correlation of each pair of receivers only once. The squares labeled \emph{A} are
-autocorrelations, which can be treated specially since they require only half
-the amount of computations.
-The triangle is divided into larger tiles, in this case 
-2x3 tiles (the dark gray boxes), but arbitrary sizes are possible.
-A tile is correlated as a unit. For example, the lower
-right-hand-side rectangle correlates receivers 9 and 10 with receivers
-0, 1, and 2.
-
-It is important to tune the tile size to the architecture. We want to
-make the tile size as large as possible, while still fitting in the
-register file. This offers the highest level of data reuse.  
-If we have a $w \times h$ tile size, the number of operations is given by $flops = 32wh$.
-The number of bytes that has to loaded from memory is $16(w+h)$.
-The minimum number of registers that is required is $4 (1 + min(w,h)) + 8 w h$.
-This is the total number of registers, including accumulators, while reusing
-registers if a value is no longer needed (hence the $min$ operation). However,
-this formula does not count additional registers that could be needed for data prefetching,
-address calculations and loop counters.
-The number of registers is expressed in single-precision float registers. If an architecture has vector
-registers, the result can be divided by the vector length.
-Table~\ref{tile-size-table} shows the properties of different tile sizes. 
-
-Despite the division of the correlation triangle in tiles, there
-still is opportunity for additional data reuse \emph{between} tiles. 
-The tiles
+Even when dividing the correlation triangle in tiles there still is
+opportunity for additional data reuse \emph{between} tiles.  The tiles
 within a row or column in the triangle still need the same samples.
-In
-addition to registers, caches can thus also be used to increase data
-reuse.  Since we know exactly what data can be reused at what moment, we
-found it is important to have direct influence on the caches and the thread scheduler.  This
-way, we can make sure that tiles in same row or column are calculated
-at the same time by different threads. 
-Because the algorithm is
-extremely data intensive, the resulting optimized implementation on
-many-cores is typically limited by the architecture's memory
-bandwidth. The memory aspects of the algorithm are twofold.
-There is an algorithmic part, the tile size, which is limited
-by the number of registers. The second aspect is architectural in nature: the cache
-sizes, cache hierarchy and hit ratio. Together, these two aspects dictate the
-memory bandwidth that is needed to keep the FPUs busy.
-
-\begin{table}
-\begin{center}
-{\small
-\begin{tabular}{l|r|r|r|r}
-tile & floating point & memory loads & arithmetic     &  minimum nr.           \\
-size & operations     & (bytes)      & intensity      &  registers (floats)    \\
-\hline
-1x1  &  32            &   32         &   1.00         &  16                    \\
-1x2  &  64            &   48         &   1.33         &  24                    \\
-2x2  & 128            &   64         &   2.00         &  44                    \\
-3x2  & 192            &   80         &   2.40         &  60                    \\
-3x3  & 288            &   96         &   3.00         &  88                    \\
-4x3  & 384            &  112         &   3.43         & 112                    \\
-4x4  & 512            &  128         &   4.00         & 148                    \\
-\end{tabular}
-} %\small
-\end{center}
-\vspace{-0.5cm}
-\caption{Properties of different tile sizes.}
-\label{tile-size-table}
-\end{table}
+In addition to registers, caches can thus also be used to increase
+data reuse. 
+
+%% \begin{table}
+%% \begin{center}
+%% {\small
+%% \begin{tabular}{l|r|r|r|r}
+%% tile & floating point & memory loads & arithmetic     &  minimum nr.           \\
+%% size & operations     & (bytes)      & intensity      &  registers (floats)    \\
+%% \hline
+%% 1x1  &  32            &   32         &   1.00         &  16                    \\
+%% 1x2  &  64            &   48         &   1.33         &  24                    \\
+%% 2x2  & 128            &   64         &   2.00         &  44                    \\
+%% 3x2  & 192            &   80         &   2.40         &  60                    \\
+%% 3x3  & 288            &   96         &   3.00         &  88                    \\
+%% 4x3  & 384            &  112         &   3.43         & 112                    \\
+%% 4x4  & 512            &  128         &   4.00         & 148                    \\
+%% \end{tabular}
+%% } %\small
+%% \end{center}
+%% \vspace{-0.5cm}
+%% \caption{Properties of different tile sizes.}
+%% \label{tile-size-table}
+%% \end{table}
 
 It is important to realize that the
 correlator itself is \emph{trivially parallel}, since tens of thousands of
-- 
GitLab