{VERSION 5 0 "IBM INTEL NT" "5.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "" 0 1 0 128 128 1 2 0 1 0 0 0 0 0 0 1 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" 0 21 "" 0 1 0 0 0 1 0 0 0 0 2 0 0 0 0 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 " Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 4 1 0 1 0 2 2 0 1 } {PSTYLE "Heading 2" -1 4 1 {CSTYLE "" -1 -1 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 2 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 3" -1 5 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 1 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Text Output" -1 6 1 {CSTYLE "" -1 -1 " Courier" 1 10 0 0 255 1 2 2 2 2 2 1 2 1 3 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Warning" -1 7 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 1 1 3 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Out put" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Output" -1 12 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Plot" -1 13 1 {CSTYLE "" -1 -1 "Time s" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 3 "" 0 "" {TEXT -1 53 "Solutions to the SIAM 100- Dollar, 100-Digit Challenge" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 207 "Team: Gaston Gonnet, Informatik, ETH, Zurich, \+ and Robert Israel, Mathematics, UBC.\nMost of these solutions are the \+ ones that actually produced the results we sent in, but I (R.I.) have \+ changed a few of them." }}{PARA 0 "" 0 "" {TEXT -1 32 "All these solut ions use Maple. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 99 "Each problem had an answer that was a single real number, of which 10 correct digits were required." }}{PARA 0 "" 0 "" {TEXT -1 28 "The complete results are at " }{URLLINK 17 "http://www.comlab.o x.ac.uk/oucl/work/nick.trefethen/hundred.html" 4 "http://www.comlab.ox .ac.uk/oucl/work/nick.trefethen/hundred.html" "" }{TEXT -1 55 ".\nOur \+ team was one of 20 first prize winners. See our " }{URLLINK 17 "prize " 4 "http://www.math.ubc.ca/~israel/challenge/Prize.jpg" "" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 4 "" 0 "" {TEXT -1 10 "P roblem 1:" }}{PARA 0 "" 0 "" {TEXT -1 8 "What is " }{XPPEDIT 18 0 "lim it(int(x^(-1)*cos(x^(-1)*log(x)), x=epsilon..1), epsilon = 0)" "6#-%&l imitG6$-%$intG6$*&)%\"xG,$\"\"\"!\"\"F--%$cosG6#*&)F+,$F-F.F--%$logG6# F+F-F-/F+;%(epsilonGF-/F:\"\"!" }{TEXT -1 2 " ?" }}}{SECT 1 {PARA 5 " " 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 26 "Us e a change of variables " }{XPPEDIT 18 0 "y = - x^(-1)*log(x)" "6#/%\" yG,$*&)%\"xG,$\"\"\"!\"\"F*-%$logG6#F(F*F+" }{TEXT -1 60 " to make the cosine linear in the variable of integration. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "ti:= time(): Digits:= 20:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 47 "J:= Int(x^(-1)*cos(x^(-1)*ln(x)),x=epsilon..1);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"JG-%$IntG6$*&%\"xG!\"\"-%$cosG6#*& F)F*-%#lnG6#F)\"\"\"F2/F);%(epsilonGF2" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "alias(W=LambertW): xs:= solve(y=-x^(-1)*ln(x),x);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#xsG*&%\"yG!\"\"-%\"WG6#F&\"\"\"" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "simplify(PDEtools[dchange]( x=xs,J));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%$IntG6$**%\"yG!\"\"-%$c osG6#F'\"\"\"-%\"WGF+F,,&F,F,F-F,F(/F';\"\"!,$*&%(epsilonGF(-%#lnG6#F5 F,F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 11 "Of course, " }{XPPEDIT 18 0 "limit(ln(1/epsilon)/epsilon, epsilon=0, right) = infinity" "6#/- %&limitG6%*&-%#lnG6#*&\"\"\"F,%(epsilonG!\"\"F,F-F./F-\"\"!%&rightG%)i nfinityG" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "integrand:= cos(y)*LambertW(y)/(1+LambertW(y))/y;" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%*integrandG**%\"yG!\"\"-%$cosG6#F&\"\"\"-%\"WGF*F+, &F+F+F,F+F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "answer:= Int (integrand,y=0..infinity);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'answe rG-%$IntG6$**%\"yG!\"\"-%$cosG6#F)\"\"\"-%\"WGF-F.,&F.F.F/F.F*/F);\"\" !%)infinityG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 148 "This is still no t a very pleasant oscillatory integral, although the singularity at 0 \+ is removable. We break it up into 3 pieces. For y from 0 to " } {XPPEDIT 18 0 "199*Pi" "6#*&\"$*>\"\"\"%#PiGF%" }{TEXT -1 277 ", use o rdinary numerical integration, (but on the original form of the integr al, to avoid the apparent singularity at y=0 as well as not having to \+ evaluate W numerically; and using the _Dexp method, as otherwise Maple will have trouble because it's close to the singularity at " } {XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 "). " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 88 "Int(1/x * cos(ln(x)/x) , x=subs( y= 199*Pi, xs ) ... 1 ); \nr1:= evalf(Int(op(%),_Dexp)); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%$IntG6$*&%\"xG!\"\"-%$cosG6#*&F'F(-%#lnG6#F'\"\" \"F0/F';,$*&%#PiGF(-%\"WG6#,$F5\"$*>F0#F0F:F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#r1G$\"5q:U$*f:\\pLK!#?" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "For each interval " }{XPPEDIT 18 0 "(2*n-1)*Pi < y" "6#2* &,&*&\"\"#\"\"\"%\"nGF(F(F(!\"\"F(%#PiGF(%\"yG" }{TEXT -1 1 " " } {XPPEDIT 18 0 "`` < (2*n+1)*Pi;" "6#2%!G*&,&*&\"\"#\"\"\"%\"nGF)F)F)F) F)%#PiGF)" }{TEXT -1 5 " for " }{XPPEDIT 18 0 "100 <= n;" "6#1\"$+\"% \"nG" }{TEXT -1 26 ", write the integral as " }{XPPEDIT 18 0 "int(co s(t)*W(t+2*n*Pi)/(t+2*n*Pi)/(1+W(t+2*n*Pi)),t = -Pi .. Pi);" "6#-%$int G6$**-%$cosG6#%\"tG\"\"\"-%\"WG6#,&F*F+*(\"\"#F+%\"nGF+%#PiGF+F+F+,&F* F+*(F1F+F2F+F3F+F+!\"\",&F+F+-F-6#,&F*F+*(F1F+F2F+F3F+F+F+F6/F*;,$F3F6 F3" }{TEXT -1 114 ". Expand this in an asymptotic series in n and int egrate term-by-term. The terms for even n vanish by symmetry." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 72 "map(factor,asympt(cos(t)*W(t +2*n*Pi)/(t+2*n*Pi)/(1+W(t+2*n*Pi)), n, 8));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#,2*,-%$cosG6#%\"tG\"\"\"-%\"WG6#,$*&%\"nGF)%#PiGF)\"\"# F)F0!\"\",&F*F)F)F)F2F/F2#F)F1*&#F)\"\"%F)*0F%F)F(F)F*F1,&F*F)F1F)F)F0 !\"#F3!\"$F/F:F)F2*2#F)\"#;F)F%F)F(F1F*\"\"$,(*$)F*F1F)F1*&\"\")F)F*F) F)\"\"*F)F)F0F;F3!\"&F/F;F)*&#F)\"#'*F)*0F%F)F(F?F*F7,**$)F*F?F)\"\"'* &\"#OF)FBF)F)*&\"#zF)F*F)F)\"#kF)F)F0!\"%F3!\"(F/FTF)F2*2#F)\"$o(F)F%F )F(F7F*\"\"&,,*$)F*F7F)\"#C*&\"$#>F)FMF)F)*&\"$A'F)FBF)F)*&\"$u*F)F*F) F)\"$D'F)F)F0FFF3!\"*F/FFF)*&#F)\"%!o(F)*0F*FNF(FYF%F),.*$)F*FYF)\"$? \"*&\"%+7F)FfnF)F)*&\"%E^F)FMF)F)*&\"&e<\"F)FBF)F)*&\"&VX\"F)F*F)F)\"% wxF)F)F0!\"'F3!#6F/FapF)F2*2#F)\"&g@*F)F*\"\"(F(FNF%F),0Feo\"%S')*&\"$ ?(F))F*FNF)F)*&\"&cd%F)FfnF)F)*&\"'GeDF)F*F)F)\"'\\w6F)*&\"']#[#F)FBF) F)*&\"'7v8F)FMF)F)F)F0FUF3!#8F/FUF)-%\"OG6#*&F)F)*$)F/FDF)F2F)" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "J2:= map(factor,map(int, eva l(%,O=0), t=-Pi..Pi));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%#J2G,(*,%# PiG!\"#-%\"WG6#,$*&%\"nG\"\"\"F'F/\"\"#\"\"$,(*$)F)F0F/F0*&\"\")F/F)F/ F/\"\"*F/F/,&F)F/F/F/!\"&F.!\"$#!\"\"\"\"%*&#F/\"#'*F/*.F)\"\"&,,*$)F) F=F/\"#C*&\"$#>F/)F)F1F/F/*&\"$A'F/F4F/F/*&\"$u*F/F)F/F/\"$D'F/F/,&*$) F'F0F/F/\"\"'F " 0 "" {MPLTEXT 1 0 42 "L:= convert(%, list): evalf(eval(L,n=100));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7%$!5? JC/l7-$G+%!#F$!5'4FCaWtr'Rw!#K$!5+UMh'\\\\`=Z\"!#O" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 14 "Apparently by " }{XPPEDIT 18 0 "n=100" "6#/%\"nG \"$+\"" }{TEXT -1 18 " we only need the " }{XPPEDIT 18 0 "n^(-3)" "6#) %\"nG,$\"\"$!\"\"" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "n^(-5)" "6#)%\" nG,$\"\"&!\"\"" }{TEXT -1 48 " terms. We'll use these for n from 100 \+ to 1000." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "J3:= op(1,J2)+o p(2,J2);\nr2:= add(evalf(J3),n=100..1000);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%#J3G,&*,%#PiG!\"#-%\"WG6#,$*&%\"nG\"\"\"F'F/\"\"#\"\" $,(*$)F)F0F/F0*&\"\")F/F)F/F/\"\"*F/F/,&F)F/F/F/!\"&F.!\"$#!\"\"\"\"%* &#F/\"#'*F/*.F)\"\"&,,*$)F)F=F/\"#C*&\"$#>F/)F)F1F/F/*&\"$A'F/F4F/F/*& \"$u*F/F)F/F/\"$D'F/F/,&*$)F'F0F/F/\"\"'F%#r2G$!5$4GeT 1000, use the asymptotics of the \+ Euler-Maclaurin form for the summation of the " }{XPPEDIT 18 0 "n^(-3) " "6#)%\"nG,$\"\"$!\"\"" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "n^(-5)" " 6#)%\"nG,$\"\"&!\"\"" }{TEXT -1 7 " terms." }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 43 "J4:= map(factor,asympt(eulermac(J3,n),n)); " }} {PARA 12 "" 1 "" {XPPMATH 20 "6#>%#J4G,,*,-%\"WG6#,$*&%\"nG\"\"\"%#PiG F-\"\"#F/,&F'F-F/F-F-F.!\"#,&F'F-F-F-!\"$F,F1#F-\"\"%*.#F-\"\")F-F.F1F '\"\"$,(*$)F'F/F-F/*&F8F-F'F-F-\"\"*F-F-F2!\"&F,F3F-*0#F-\"#KF-F'F5,** $)F'F9F-\"\"'*&\"#OF-FF-F'\"\"&,,*$)F'F5F-\"#C*&FTF-FEF-F-*&\"$ A'F-F " 0 "" {MPLTEXT 1 0 36 "r3:= -evalf(eval(J4,\{O=0, n=1001\}));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%#r3G$!5;c:SwX$*3r@!#F" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 " r:= r1+r2+r3;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"rG$\"5[;!zxnJuOB$ !#?" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "Actual answer, as given by Trefethen to 40 digits:" }}{PARA 0 "" 0 "" {TEXT -1 61 " \+ 0.3233674316 7777876139 9370087952 1704466510..." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "(time()-ti)*seconds;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"&z*[!\"$" }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 2:" }}{PARA 0 "" 0 "" {TEXT -1 34 "A photon movin g at speed 1 in the " }{XPPEDIT 18 0 "x-y" "6#,&%\"xG\"\"\"%\"yG!\"\" " }{TEXT -1 17 " plane starts at " }{XPPEDIT 18 0 "t=0" "6#/%\"tG\"\"! " }{TEXT -1 4 " at " }{XPPEDIT 18 0 "(x,y) = (0.5,0.1)" "6#/6$%\"xG%\" yG6$-%&FloatG6$\"\"&!\"\"-F)6$\"\"\"F," }{TEXT -1 55 " heading due eas t. Around every integer lattice point " }{XPPEDIT 18 0 "``(i,j);" "6# -%!G6$%\"iG%\"jG" }{TEXT -1 43 " in the plane, a circular mirror of ra dius " }{XPPEDIT 18 0 "1/3" "6#*&\"\"\"F$\"\"$!\"\"" }{TEXT -1 61 " ha s been erected. How far from the origin is the photon at " }{XPPEDIT 18 0 "t=10" "6#/%\"tG\"#5" }{TEXT -1 1 "?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 181 "You have to be careful to use enough digits here, because there are 13 reflect ions, and each reflection from a curved surface amplifies the error. \+ We needed 11 additional digits. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 27 "The state of the photon is " }{XPPEDIT 18 0 "[x,y,dx,dy,s]" "6#7'% \"xG%\"yG%#dxG%#dyG%\"sG" }{TEXT -1 7 " where " }{XPPEDIT 18 0 "[x,y] " "6#7$%\"xG%\"yG" }{TEXT -1 18 " is the position, " }{XPPEDIT 18 0 "[ dx,dy]" "6#7$%#dxG%#dyG" }{TEXT -1 15 " the velocity, " }{XPPEDIT 18 0 "s" "6#%\"sG" }{TEXT -1 41 " the distance travelled. We always have " }{XPPEDIT 18 0 "dx^2 + dy^2 = 1" "6#/,&*$%#dxG\"\"#\"\"\"*$%#dyGF'F (F(" }{TEXT -1 3 ". " }}{PARA 0 "" 0 "" {TEXT -1 53 "Starting in thi s state, you hit a mirror centred at " }{XPPEDIT 18 0 "[mx, my]" "6#7$ %#mxG%#myG" }{TEXT -1 4 " if " }{XPPEDIT 18 0 "abs((mx-x)*dy-(my-y)*dx ) < 1/3;" "6#2-%$absG6#,&*&,&%#mxG\"\"\"%\"xG!\"\"F+%#dyGF+F+*&,&%#myG F+%\"yGF-F+%#dxGF+F-*&F+F+\"\"$F-" }}{PARA 0 "" 0 "" {TEXT -1 90 "(ass uming that mirror is in the forward direction, and you don't hit anyth ing else first)." }}{PARA 0 "" 0 "" {TEXT -1 11 "If so, let " } {XPPEDIT 18 0 "p = [px, py]" "6#/%\"pG7$%#pxG%#pyG" }{TEXT -1 38 " be \+ the point where it hits. This is " }{XPPEDIT 18 0 "[x + t*dx, y + t*d y]" "6#7$,&%\"xG\"\"\"*&%\"tGF&%#dxGF&F&,&%\"yGF&*&F(F&%#dyGF&F&" } {TEXT -1 7 " where " }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "(x-mx)^2 + (y-my )^2 + 2*(dx*(x-mx) + dy*(y-my))*t + t^2 = 1/9" "6#/,**$,&%\"xG\"\"\"%# mxG!\"\"\"\"#F(*$,&%\"yGF(%#myGF*F+F(*(F+F(,&*&%#dxGF(,&F'F(F)F*F(F(*& %#dyGF(,&F.F(F/F*F(F(F(%\"tGF(F(*$F8F+F(*&F(F(\"\"*F*" }{TEXT -1 26 ". Then the next state is " }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "[px, py, d x - h*(mx - px), dy - h*(my-py), s + sqrt((px-x)^2+(py-y)^2)] " "6#7'% #pxG%#pyG,&%#dxG\"\"\"*&%\"hGF(,&%#mxGF(F$!\"\"F(F-,&%#dyGF(*&F*F(,&%# myGF(F%F-F(F-,&%\"sGF(-%%sqrtG6#,&*$,&F$F(%\"xGF-\"\"#F(*$,&F%F(%\"yGF -F " 0 "" {MPLTEXT 1 0 230 "plots[display]([plottools[c ircle]([0,0],1), plots[arrow]([2,-2],[-1,2],shape=arrow,colour=blue), \nplots[arrow]([1,0],[1,2],shape=arrow,colour=blue),\nplots[arrow]([1, 0],[2,0],shape=arrow,colour=red)\n],axes=none,scaling=constrained);" } }{PARA 13 "" 1 "" {GLPLOT2D 255 255 255 {PLOTDATA 2 "6(-%'CURVESG6#7U7 $$\"\"\"\"\"!$F*F*7$$\"0yWJ,Z6#**!#:$\"00VcLKLD\"F/7$$\"0J'G6;$eo*F/$ \"0b[;())*o[#F/7$$\"0_#))e[w(H*F/$\"0xYo_X7o$F/7$$\"0kQ/!o1j()F/$\"09< 5uOv\"[F/7$$\"0[\\P%*p,4)F/$\"0tCH__y(eF/7$$\"079UF'o*G(F/$\"0)oGf5ZXo F/7$$\"0!p[(*)RUP'F/$\"0*yvFC80xF/7$$\"0+!z\\zEe`F/$\"08?]DzKW)F/7$$\" 0y]c\"HzdUF/$\"00zi!#;$\"0s#G%Gn-)**F/7$$!04JH&>0ziFao Fbo7$$!0?de98Q(=F/F\\o7$$!0U\\P%*p,4$F/$\"0b^H;l0^*F/7$$!0m]c\"HzdUF/$ \"0BgY_q#[!*F/7$$!0(**y\\zEe`F/$\"0:?]DzKW)F/7$$!0\"o[(*)RUP'F/$\"0'zv FC80xF/7$$!059UF'o*G(F/$\"0\"pGf5ZXoF/7$$!0^\\P%*p,4)F/$\"0pCH__y(eF/7 $$!0hQ/!o1j()F/$\"0@<5uOv\"[F/7$$!0_#))e[w(H*F/$\"0wYo_X7o$F/7$$!0H'G6 ;$eo*F/$\"0k[;())*o[#F/7$$!0yWJ,Z6#**F/$\"01VcLKLD\"F/7$$!0+++++++\"!# 9$!0s;mNP:w'!#H7$Fhr$!0*HkNBL`7F/7$$!0I'G6;$eo*F/$!0e[;())*o[#F/7$$!0b #))e[w(H*F/$!0qYo_X7o$F/7$$!0kQ/!o1j()F/$!0:<5uOv\"[F/7$$!0a\\P%*p,4)F /$!0kCH__y(eF/7$$!099UF'o*G(F/$!0'oGf5ZXoF/7$$!0'o[(*)RUP'F/$!0#zvFC80 xF/7$$!0.!z\\zEe`F/$!06?]DzKW)F/7$$!0s]c\"HzdUF/$!0?gY_q#[!*F/7$$!0d\\ P%*p,4$F/$!0]^H;l0^*F/7$$!0Fde98Q(=F/$!0)oG2D(G#)*F/7$$!0tKH&>0ziFao$! 0r#G%Gn-)**F/7$$\"0xIH&>0ziFao$!0s#G%Gn-)**F/7$$\"0Fde98Q(=F/Ffv7$$\"0 R\\P%*p,4$F/$!0c^H;l0^*F/7$$\"0s]c\"HzdUF/F\\v7$$\"0')*y\\zEe`F/$!0A?] DzKW)F/7$$\"0'o[(*)RUP'F/Fbu7$$\"099UF'o*G(F/F]u7$$\"0V\\P%*p,4)F/$!0z CH__y(eF/7$F=Fct7$$\"0Z#))e[w(H*F/$!0)o%o_X7o$F/7$$\"0I'G6;$eo*F/Fis7$ $\"0wWJ,Z6#**F/$!0>VcLKLD\"F/7$$\"0+++++++\"F_s$!0cmnGDpZ'Fbs-F$6&7$7$ $\"\"#F*$!\"#F*F'7%7$$\"0++++++5\"F_s$!/++++++XF_sF'7$$\"0++++++I\"F_s $!/++++++NF_s-%&STYLEG6#%,PATCHNOGRIDG-%'COLOURG6&%$RGBGF+F+$\"*++++\" !\")-F$6&7$F'7$FdzFdz7%7$$\"0++++++q\"F_s$\"0++++++l\"F_sFa\\l7$$\"0++ ++++!>F_s$\"0++++++b\"F_sFc[lFg[l-F$6&7$F'7$$\"\"$F*F+7%7$$\"0++++++g# F_s$F]zF/F`]l7$Fe]l$F^sF/Fc[l-Fh[l6&Fj[lF[\\lF+F+-%(SCALINGG6#%,CONSTR AINEDG-%*AXESSTYLEG6#%%NONEG" 1 2 0 1 10 0 2 9 1 1 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" }}}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "Global variables: " }{MPLTEXT 0 21 15 "x, y, dx, dy, s" }{TEXT -1 40 " for current state; \nif going m ainly in " }{XPPEDIT 18 0 "x" "6#%\"xG" }{TEXT -1 12 " direction, " } {MPLTEXT 0 21 6 "iy = 0" }{TEXT -1 5 " and " }{MPLTEXT 0 21 2 "ix" } {TEXT -1 21 " is integer to go in " }{XPPEDIT 18 0 "x" "6#%\"xG" } {TEXT -1 26 " direction to next mirror;" }}{PARA 0 "" 0 "" {TEXT -1 19 "if going mainly in " }{XPPEDIT 18 0 "y" "6#%\"yG" }{TEXT -1 12 " d irection, " }{MPLTEXT 0 21 6 "ix = 0" }{TEXT -1 5 " and " }{MPLTEXT 0 21 2 "iy" }{TEXT -1 21 " is integer to go in " }{XPPEDIT 18 0 "y" "6#% \"yG" }{TEXT -1 26 " direction to next mirror." }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 1164 "move:= proc()\n# return true if you hit the \+ mirror or end of path\n# and update state in this case,\n# false if yo u don't (leaving state unchanged)\n local mx, my, t, px, py,h,ds;\n \+ global x,y,dx,dy,s,ix,iy;\n if iy = 0 then # going in x direction\n \+ mx:= round(x+ix-.001);\n my:= round(y+dy/dx*ix);\n ds:= sqrt(1 +(dy/dx)^2)*abs(mx-x);\n else # going in y direction\n my:= round( y+iy);\n mx:= round(x+dx/dy*iy);\n ds:= sqrt(1+(dx/dy)^2)*abs(my -y);\n fi;\n if abs((mx-x)*dy - (my-y)*dx) < 1/3 then\n t:= min(f solve((x+t*dx-mx)^2 + (y+t*dy-my)^2=1/9,t));\n px:= x+t*dx; py:= y+ t*dy;\n ds:= sqrt((px-x)^2+(py-y)^2);\n if s + ds >= 10 then\n \+ x:= x + (10-s)*dx;\n y:= y + (10-s)*dy;\n s:= 10;\n \+ return true;\n else\n h:= 18*((mx-px)*dx+(my-py)*dy);\n \+ s:= s + ds;\n dx:= dx - h*(mx-px);\n dy:= dy - h*(my-py);\n# dx^2 + dy^2 should stay constant, but make sure\n h:= sqrt(dx^2+ dy^2);\n dx:= dx/h; dy:= dy/h;\n x:= px; y:= py;\n retu rn true;\n fi\n # no hit, but maybe we'd go too far\n elif s + ds >= 10 then\n x:= x + (10-s)*dx;\n y:= y + (10-s)*dy;\n s:= 1 0;\n return true;\n fi;\nfalse \nend;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%%moveGf*6\"6)%#mxG%#myG%\"tG%#pxG%#pyG%\"hG%#dsGF&F&C %@%/%#iyG\"\"!C%>8$-%&roundG6#,(%\"xG\"\"\"%#ixGF<$F8%-F86# ,&%\"yGF<*(%#dyGF<%#dxGF@F=F8**&-%%sqrtG6#,&FFB-F86#,&FFFF6-F86#,&F;F<*(FIFFK*&-FN6#,&F8&-%$minG6#-%'fsolveG6$/,&*$),(F;F<*&F`pF8',&F;F8(,&FFFFK-FN6#,&*$),&FdqFF;,&F;F<*&,&FerFFF,&FFF<*&F\\sFFgrFerO%%trueGC,>8),&*&,&F6FFgrFfr>FI,&FIF<*&FesFFH,&FHF<*&FesFFes-FN6#,&*$)F IFRFFI*&FIFFH*&FHFF;Fdq>FFFgqOFbsFdrC&>F; Fjr>FFF^s>FgrFerOFbs%&falseGF&6)F;FFFIFHFgrF=F2F&" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 19 "Initial conditions." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 92 "x,y,dx,dy,s:= 0.5, 0.1, 1, 0, 0; path:= [x,y]; ix:= 1 ; iy:= 0;\n_Envsignum0:= 0; Digits:= 50;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>6'%\"xG%\"yG%#dxG%#dyG%\"sG6'$\"\"&!\"\"$\"\"\"F-F/\"\"!F0" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%%pathG7$$\"\"&!\"\"$\"\"\"F(" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ixG\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#iyG\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%,_Envs ignum0G\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#]" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 288 "while s < 10 do\n if move( ) then # reassess directions\n if abs(dx) >= abs(dy) then\n ix := signum(dx); iy:= 0\n else\n ix:= 0; iy:= signum(dy);\n f i;\n path:= path,[x,y];\n else # go to next mirror in same directi on\n ix:= ix+signum(ix);\n iy:= iy+signum(iy);\n fi\nod:" } {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "The final state: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "x,y,dx,dy,s;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6'$!Swb+!e*=X?v8djjpU'p'F%$\"SpX!)QP$=#R]oQ,)='\\2=P+x`rLd$*F%$\"S&QK'=( =5i_Xj1rSOoi`9nvjsq_$F%\"#5" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 11 "Th e answer:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "ans:=sqrt(x^2+ y^2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$ansG$\"S*)*HG@8H5i@nU4=J!* 3;aLW>HE&**!#]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 123 "with(plo ts): display(\{plot([path]),seq(seq(plottools[circle]([i,j],1/3),i=-1. .1),j=-1..2)\},scaling=constrained,axes=frame);" }}{PARA 7 "" 1 "" {TEXT -1 50 "Warning, the name changecoords has been redefined\n" }} {PARA 13 "" 1 "" {GLPLOT2D 494 396 396 {PLOTDATA 2 "63-%'CURVESG6#7U7$ $!Snmmmmmmmmmmmmmmmmmmmmmmmm!#]$\"\"!F,7$$!SuV.Vac^frSr!>BS$)HsS=c*4&H p'F*$\"S1n)*[F(4)zfp@F`iqd%[ZV@Xux<%!#^7$$!Sr[d'e*zQ&R@%y\"3sF.NHc/HY* QrnF*$\"SOZ\")oC_s%*)f\")o'[7w!3'f^\\0Hm*G)F27$$!S@/Dd\"G/ovpEf9eoz()> ;Rq/X2!pF*$\"S2jCw%GmpF?V;\\!\\cQ')fAGU=3F7F*7$$!S&f]?>J+AZ7$f`OhRcP@r =Lx(*yqF*$\"SO-f'>>%oT& owKI(F*$\"SrZD\"3bK&*edja^'o&*QwV#3V<%Gf>F*7$$!SR/`W4e(G'pC[O*)*3^*eh> EvX5qvF*$\"Sd,4T1lHBktteyFudCi*GkoB=G#F*7$$!SHR2!4O)=o7muF1HWFjnV]nLDv yF*$\"S$)RSA*)QU#Gf?87K+,OuH>fZx$oDF*7$$!SMI\"=#3)yRn'y52TIidgWLS$o5R@ )F*$\"SZQru>s7NQ*)))zo_G=E]+M=kU9GF*7$$!SZAFlvm+K%\\_3=D$e/<\"4$y%pN2e )F*$\"S:9qj/olkecxf@cX!f/yGBN6QFJzx(zaq!>^]wQ)=qJF*7$$!S5WFG\"z`N%G!4&=U;e[c%eZ!=cRv$ *F*$\"Sn6A'4\\H@Z*3b4e!)=Og&Hid$3HuKF*7$$!SVk$*QQeibH7y%esguz?iN#o#)p! z*F*$\"S^+*RQ/Yi5FgoF]o7$$!SVj'>=nG'oR41R6Vn89 \\;zkc+.6FgoFhn7$$!SvFZVK$*zc]Z\">[nT&H)3p@0VE>9\"Fgo$\"S<9qj/olkecxf@ cX!f@gK8#*G*epPURbmf;$*3'y6Fgo$\"S\\Qru>s7NQ*) ))zo_G=E]+M=kU9GF*7$$!S2E*4R;\"=tQ`AP4dDnBj&\\KmuC@\"Fgo$\"S&)RSA*)QU# Gf?87K+,OuH>fZx$oDF*7$$!Scpa0>Cr.`F*7$$!SS\\z!)o*zFvoSYjQgViyG\"oEA5#H\"Fgo$\"SRV-L2a=9.A,Q3'H&\\D*48Fgo$\"S4jCw%G mpF?V;\\!\\cQ')fAGU=3F7F*7$$!S8DMT+7Ygy:#=zAn\\1Pa4P0hGK\"Fgo$\"SpZ\") oC_s%*)f\")o'[7w!3'f^\\0Hm*G)F27$$!SjlpbM%[SGfG4o(f;qFf\"Q/!\\qI8Fgo$ \"SSn)*[F(4)zfp@F`iqd%[ZV@Xux<%F27$$!SLLLLLLLLLLLLLLLLLLLLLLLL8Fgo$!Sx 4'f)[s@tX+qf/z>hSc-=N3IRJ!#**7$Fgr$!SOn)*[F(4)zfp@F`iqd%[ZV@Xux<%F27$F br$!SmZ\")oC_s%*)f\")o'[7w!3'f^\\0Hm*G)F27$F]r$!S4jCw%GmpF?V;\\!\\cQ') fAGU=3F7F*7$Fhq$!SQF*7$F^q$!Sf,4T1lHBktteyFudCi*GkoB=G#F*7$Fip$!S&)RSA*)QU #Gf?87K+,OuH>fZx$oDF*7$Fdp$!S\\Qru>s7NQ*)))zo_G=E]+M=kU9GF*7$F_p$!S<9q j/olkecxf@cX!f/yGBN6QFJzx(zaq!>^]wQ)=qJF*7$Fio$ !Sn6A'4\\H@Z*3b4e!)=Og&Hid$3HuKF*7$$!Sbj5;;uV/x=_TFRD?zPk/yGBN6QFJzx(zaq!>^] wQ)=qJF*7$FW$!S;9qj/olkecxf@cX!fs7NQ*)))zo_G=E ]+M=kU9GF*7$$!SGR2!4O)=o7muF1HWFjnV]nLDvyF*$!S$)RSA*)QU#Gf?87K+,OuH>fZ x$oDF*7$$!SQ/`W4e(G'pC[O*)*3^*eh>EvX5qvF*$!Sd,4T1lHBktteyFudCi*GkoB=G# F*7$FC$!SrZD\"3bK&*edja^'o&*QwV#3V<%Gf>F*7$F>$!SOV-L2a=9.A,Q3'H&\\D*48Fgo$\"SJYiZGmpF? V;\\!\\cQ')fAGU=3F7\"Fgo7$$\"SS\\z!)o*zFvoSYjQgViyG\"oEA5#H\"Fgo$\"Sur Ot%G%y@VSinrRi;40R.eXeg6Fgo7$$\"S5Ij[Q`HN1ws0y4M!3eJe9Ls'p7Fgo$\"Sxa73 bK&*edja^'o&*QwV#3V<%Gf>\"Fgo7$$\"Scpa0>Cr.`fZx$oD\"Fgo7$$\"S(p=y\">@gK8#*G*epPURbmf;$*3 'y6Fgo$\"S&Qru>s7NQ*)))zo_G=E]+M=kU9G\"Fgo7$$\"SvFZVK$*zc]Z\">[nT&H)3p @0VE>9\"Fgo$\"SU,PY!olkecxf@cX!f=nG'oR41R6Vn8 9\\;zkc+.6Fgo$\"S>/yGBN6QFJzx(zaq!>^]wQ)=qJ\"Fgo7$$\"SfD<(3iWcr4\\\"yN =9NaT_>Q/Yi5Fgo$\"S<@i4\\H@Z*3b4e!)=Og&Hid$3HuK\"Fgo7$$\"Scj5;;uV/x=_T FRD?zPkEvX5qvF*Fgz7$$\"S1*p O^hYqk$RsU>-f'>>%oT&owKI(F*Fbz7$$\"S(f]?>J+AZ7$f`OhRcP@r=Lx(*yqF*F]z7$ $\"SA/Dd\"G/ovpEf9eoz()>;Rq/X2!pF*Fhy7$$\"Ss[d'e*zQ&R@%y\"3sF.NHc/HY*Q rnF*$\"S[\")oC_s%*)f\")o'[7w!3'f^\\0Hm*G3\"Fgo7$$\"SuV.Vac^frSr!>BS$)H sS=c*4&Hp'F*F^y7$$\"SnmmmmmmmmmmmmmmmmmmmmmmmmF*$\"S(***************** ********************************F*7$F[_l$\"SE85DF!>?SIysYPHU:Dl&yaDA#e *F*7$$\"Sr[d'e*zQ&R@%y\"3sF.NHc/HY*QrnF*$\"SB&=JvZF0,%=J8vQ#>RS[]%4P.r \"*F*7$Fc^l$\"S\"p`P_rLIszc$3&4N9O,uW:%R)F*7$F]^l$\"SF_u=\\uY5Ck`%[8V5Oiv\"pDerS!)F*7$$\"SS/`W4e(G 'pC[O*)*3^*eh>EvX5qvF*$\"ST)4*e$\\.ndji79AdAax.rNJw\"=xF*7$$\"SIR2!4O) =o7muF1HWFjnV]nLDvyF*$\"S:gfx5hd<2%z'yy'**)Rc-23CDiJuF*7$$\"SOI\"=#3)y Rn'y52TIidgWLS$o5R@)F*$\"S^hGD!ys[;16,7t9V`8MC-%yVa4CoK6D)4R)pF*7$$\"SslL!=G8PJg!R4')oDje3N3_L%*p*)F*$\"S3e> 7nZ')=E(o?A-_%H4)[\\Bh6)HoF*7$$\"S8WFG\"z`N%G!4&=U;e[c%eZ!=cRv$*F*$\"S L)yP!40(y_5\\/>%>\"Q'R/xBk\"4ds'F*7$$\"SYk$*QQeibH7y%esguz?iN#o#)p!z*F *$\"S\\*4g#)p())[J=7xRaDo7GCdQUCtmF*7$Fc\\lFbbl7$F^\\lF]bl7$Fi[l$\"S4e >7nZ')=E(o?A-_%H4)[\\Bh6)HoF*7$Fd[l$\"S%e)HO&>V`8MC-%yVa4CoK6D)4R)pF*7 $F_[l$\"S`hGD!ys[;16,7t9W:%R)F*7$Ffy$\"S$p`P _rLIszc$3&4N9O,uRS[]%4P.r\"*F*7$F\\ y$\"SH85DF!>?SIysYPHU:Dl&yaDA#e*F*7$Fgx$\"S++++++++++++++++++++++++5Fg o-F$6#7U7$F($!\"\"F,7$F.$!SH85DF!>?SIysYPHU:Dl&yaDA#e*F*7$F4$!SE&=JvZF 0,%=J8vQ#>RS[]%4P.r\"*F*7$F9$!S$p`P_rLIszc$3&4N9O,u$!Sk#G jE:d@ycfPKGgP$3\\4m>W:%R)F*7$FC$!SH_u=\\uY5Ck`%[8V5Oiv\"pDerS!)F*7$FH$ !SV)4*e$\\.ndji79AdAax.rNJw\"=xF*7$FM$!SV`8MC-%yVa4CoK6D)4R )pF*7$Ffn$!S4e>7nZ')=E(o?A-_%H4)[\\Bh6)HoF*7$F[o$!SL)yP!40(y_5\\/>%>\" Q'R/xBk\"4ds'F*7$F`o$!S\\*4g#)p())[J=7xRaDo7GCdQUCtmF*7$FeoF_gl7$FioF \\gl7$F\\pFifl7$F_p$!S$e)HO&>V`8MC-%yVa4CoK6D)4R)pF*7$Fdp$!S^hGD!ys[;1 6,7t9W:%R)F*7$F]r$!S\"p`P_rLIszc$3&4N9O,uRS[]%4P.r\"*F*7$Fgr$!SE85DF!>?SIysYPHU:Dl&y aDA#e*F*7$F\\s$!S++++++++++++++++++++++++5Fgo7$Fgr$!Sn)*[F(4)zfp@F`iqd %[ZV@Xux\"Fgo7$F^q$!S;!4T1lHBktteyFudCi*Gko B=G7Fgo7$Fip$!S)RSA*)QU#Gf?87K+,OuH>fZx$oD\"Fgo7$Fdp$!S&Qru>s7NQ*)))zo _G=E]+M=kU9G\"Fgo7$F_p$!SU,PY!olkecxf@cX!f/yG BN6QFJzx(zaq!>^]wQ)=qJ\"Fgo7$Fio$!S<@i4\\H@Z*3b4e!)=Og&Hid$3HuK\"Fgo7$ Fcu$!S0!*RF\\jl7$F9Fiil7$F4$!SZ\")oC_s %*)f\")o'[7w!3'f^\\0Hm*G3\"Fgo7$F.Fcil7$F(F`il-F$6#7U7$FgxF+7$F\\yF07$ FayF67$FfyF;7$F[zF@7$F`zFE7$FezFJ7$FjzFO7$F_[lFT7$Fd[lFY7$Fi[lFhn7$F^ \\lF]o7$Fc\\lFbo7$Fh\\lFbo7$F[]lF]o7$F^]lFhn7$Fa]lFap7$Fd]lFfp7$Fg]lF[ q7$Fj]lF`q7$F]^lFeq7$F`^lFjq7$Fc^lF_r7$Ff^lFdr7$F[_lFir7$F^_lF^s7$F[_l Fbs7$Ff_lFes7$Fc^lFhs7$F`^lF[t7$F]^lF^t7$Fd`lFat7$Fi`lFdt7$F^alFgt7$Fa ]lFjt7$FfalF]u7$F[blF`u7$F`blFeu7$Fc\\lFeu7$F^\\lF`u7$Fi[lF^v7$Fd[lFav 7$F_[lFdv7$FjzFiv7$FezF^w7$F`zFaw7$F[zFdw7$FfyFgw7$FayFjw7$F\\yF]x7$Fg xF`x-F$6#7U7$$\"SLLLLLLLLLLLLLLLLLLLLLLLLLF*$\"\"#F,7$$\"SEc'pbM%[SGfG 4o(f;qFf\"Q/!\\qI$F*$\"Sn)*[F(4)zfp@F`iqd%[ZV@XuxV-L2a=9.A,Q3'H&\\D*4$F*$\"SJYiZGmpF?V;\\!\\cQ')fAGU=3F7#Fgo7$$ \"S0%\\z!)o*zFvoSYjQgViyG\"oEA5#HF*$\"SurOt%G%y@VSinrRi;40R.eXeg@Fgo7$ $\"S'4Ij[Q`HN1ws0y4M!3eJe9Ls'p#F*$\"Sxa73bK&*edja^'o&*QwV#3V<%Gf>#Fgo7 $$\"Sh&pa0>Cr.`fZx$oD#F go7$$\"Smp=y\">@gK8#*G*epPURbmf;$*3'y\"F*$\"S&Qru>s7NQ*)))zo_G=E]+M=kU 9G#Fgo7$$\"S`xsMCL*zc]Z\">[nT&H)3p@0VE>9F*$\"SU,PY!olkecxf@cX!f=nG'oR41R6Vn89\\;zkc+.\"F*$\"S>/yGBN6QFJzx(zaq!>^]wQ) =qJ#Fgo7$$\"S'*eD<(3iWcr4\\\"yN=9NaT_>Q/YiF2$\"S<@i4\\H@Z*3b4e!)=Og&Hi d$3HuK#Fgo7$$\"Ssbj5;;uV/x=_TFRD?zPkQ/YiF2Fhcm7$$!SJMm>=nG'oR41R6Vn89\\;zkc+.\"F*Fccm7$$!S]xsMCL*zc] Z\">[nT&H)3p@0VE>9F*F^cm7$$!Sjp=y\">@gK8#*G*epPURbmf;$*3'y\"F*Fibm7$$! Spg#*4R;\"=tQ`AP4dDnBj&\\KmuC@F*Fdbm7$$!Sf&pa0>Cr.`V-L2a=9.A,Q3'H&\\D*4$F*F`am7$$!SG^U8/?h/ 'y:#=zAn\\1Pa4P0hGKF*$\"S[\")oC_s%*)f\")o'[7w!3'f^\\0Hm*G3#Fgo7$$!SEc' pbM%[SGfG4o(f;qFf\"Q/!\\qI$F*Ff`m7$$!SLLLLLLLLLLLLLLLLLLLLLLLLLF*$\"S+ +++++++++++++++++++++++?Fgo7$Fcfm$\"SL,^s->?SIysYPHU:Dl&yaDA#e>Fgo7$$! SH^U8/?h/'y:#=zAn\\1Pa4P0hGKF*$\"S_=JvZF0,%=J8vQ#>RS[]%4P.r\">Fgo7$F[f m$\"Sp`P_rLIszc$3&4N9O,uW:%R =Fgo7$Feem$\"SBX(=\\uY5Ck`%[8V5Oiv\"pDerS!=Fgo7$$!Sg&pa0>Cr.`@gK8 #*G*epPURbmf;$*3'y\"F*$\"S:'GD!ys[;16,7t9V`8MC-%yVa4CoK6D)4R)p\"Fgo7$$!SGMm>=nG'oR41R6Vn89\\;zkc+.\"F*$\"S\" e>7nZ')=E(o?A-_%H4)[\\Bh6)Ho\"Fgo7$$!SmeD<(3iWcr4\\\"yN=9NaT_>Q/YiF2$ \"S$)yP!40(y_5\\/>%>\"Q'R/xBk\"4ds;Fgo7$$!STbj5;;uV/x=_TFRD?zPkQ/YiF2Feim7$$\"SIMm>=nG'oR41R6Vn8 9\\;zkc+.\"F*F`im7$F\\cmF[im7$FgbmFhhm7$$\"Ssg#*4R;\"=tQ`AP4dDnBj&\\Km uC@F*Fchm7$$\"Si&pa0>Cr.`RS[]%4P.r\">Fgo7$Fd`mF[gm7$F_`mFh fm-F$6$727$$\"\"&F\\el$FjxF\\el7$$\"S#)\\#e)e%[K:\"fD8ZfCG]9N%>m--#oF* F[\\n7$$!SQ\"H*z<><_%>*4F\"oiFyd\"*\\y=(*\\p'F*$\"S'4$*GqD(z85](*ePaC; &zejDvmL/\"Fgo7$$!SHCvQtC[a=71`#[p\")yN#\\peYtQ7F*$\"Sj1&oI%px$Qy0!GEC GMNw]>5%Q0p\"Fgo7$$!S8CpRYt>\\**)H?`v9\")4fO3?#o:y9F*$\"S]@\"fQ>7/1cGp *\\P\"e9rw5w&ow)H\"Fgo7$$!S6I^T`$>mV9&**f\"3\"R&3!eoe6#=%zzF*$\"SN(>) \\8G=96(oWtc]%[Ua9.)ytx/oZ*pF*$\"Sd4Xi )3x:hY6=naw[F.u9\\t8@W\"F*7$$!SQ1k8M^)Q!3]Giw\"p3Inj8Qv!o!e\"F*$\"SDVB Ca'fsma5r\")=\\([FcaS]PGlqF*7$$!SK>sxn`5L'pg0a;u=*RQrF??kZFF*$\"SfkfZ` qm/-\"e1cvaWo+4HfS8s)=F*7$$!Sbf52li@5dLATvF'*Q;+)[V=zDw'F*$!RBepaBoh&= T6&\\f^SK)3t4*RC'QzF*7$$!S(44>tccM`^^L$z-'HG'QsfMk6^FF*$!S\")4ULHM+%f! 3sgSUn:NH$pn3by6)F*7$$!S76\\J#)Q9kKT2,*3MPot8y8![AayF*$!Sgt$)pQ;L-X<\" H@XcOW[Dg1'[;\\uF*7$$!SWK))R!>7*[l%*3dWM23Kj1=9@tq\"*F*$!S9K'GB%omrn5q 5R/bcLZhd&3L&GKF*7$$!Sxvx.oRi*eC_,x(zlf8xN8,t_(Q)F*$!S()[mP=#ok(o&fLC7 9\\mdhPW#3j#3(F*7$$!Swb+!e*=X?v8djjpU'p'F*-%'COLOURG6&%$RGBG$\"#5F\\elF+F+-F$6#7U7$F(Fa`m7$F.Ff`m 7$F4F[am7$F9F`am7$F>Feam7$FCFjam7$FHF_bm7$FMFdbm7$FRFibm7$FWF^cm7$FfnF ccm7$F[oFhcm7$F`oF]dm7$FeoF]dm7$FioFhcm7$F\\pFccm7$F_pF^cm7$FdpFibm7$F ipFdbm7$F^qF_bm7$FcqFjam7$FhqFeam7$F]rF`am7$FbrF`fm7$FgrFf`m7$F\\sFhfm 7$FgrF[gm7$FbrF`gm7$F]rFcgm7$FhqFfgm7$FcqFigm7$F^qF^hm7$FipFchm7$FdpFh hm7$F_pF[im7$F\\pF`im7$FioFeim7$FcuFjim7$F`oFjim7$FiuFeim7$F\\vF`im7$F WF[im7$FRFhhm7$FgvFchm7$F\\wF^hm7$FCFigm7$F>Ffgm7$F9Fcgm7$F4Fa[n7$F.F[ gm7$F(Fhfm-F$6#7U7$F_`mF+7$Fd`mF07$Fi`mF67$F^amF;7$FcamF@7$FhamFE7$F]b mFJ7$FbbmFO7$FgbmFT7$F\\cmFY7$FacmFhn7$FfcmF]o7$F[dmFbo7$F`dmFbo7$Fcdm F]o7$FfdmFhn7$FidmFap7$F\\emFfp7$F_emF[q7$FbemF`q7$FeemFeq7$FhemFjq7$F [fmF_r7$F^fmFdr7$FcfmFir7$FffmF^s7$FcfmFbs7$F^gmFes7$F[fmFhs7$FhemF[t7 $FeemF^t7$F\\hmFat7$FahmFdt7$FfhmFgt7$FidmFjt7$F^imF]u7$FcimF`u7$FhimF eu7$F]jmFeu7$F`jmF`u7$FcjmF^v7$F\\cmFav7$FgbmFdv7$FhjmFiv7$F[[nF^w7$Fh amFaw7$FcamFdw7$F^amFgw7$Fi`mFjw7$Fd`mF]x7$F_`mF`x-F$6#7U7$F_`mF[el7$F d`mF^el7$Fi`mFael7$F^amFdel7$FcamFgel7$FhamFjel7$F]bmF]fl7$FbbmF`fl7$F gbmFcfl7$F\\cmFffl7$FacmFifl7$FfcmF\\gl7$F[dmF_gl7$F`dmF_gl7$FcdmF\\gl 7$FfdmFifl7$FidmFegl7$F\\emFhgl7$F_emF[hl7$FbemF^hl7$FeemFahl7$FhemFdh l7$F[fmFghl7$F^fmFjhl7$FcfmF]il7$FffmF`il7$FcfmFcil7$F^gmFfil7$F[fmFii l7$FhemF\\jl7$FeemF_jl7$F\\hmFbjl7$FahmFejl7$FfhmFhjl7$FidmF[[m7$F^imF ^[m7$FcimFa[m7$FhimFd[m7$F]jmFd[m7$F`jmFa[m7$FcjmF^[m7$F\\cmF[[m7$Fgbm Fhjl7$FhjmFejl7$F[[nFbjl7$FhamF_jl7$FcamF\\jl7$F^amFiil7$Fi`mFa\\m7$Fd `mFcil7$F_`mF`il-F$6#7U7$F(Fix7$F.F^y7$F4Fcy7$F9Fhy7$F>F]z7$FCFbz7$FHF gz7$FMF\\[l7$FRFa[l7$FWFf[l7$FfnF[\\l7$F[oF`\\l7$F`oFe\\l7$FeoFe\\l7$F ioF`\\l7$F\\pF[\\l7$F_pFf[l7$FdpFa[l7$FipF\\[l7$F^qFgz7$FcqFbz7$FhqF]z 7$F]rFhy7$FbrFh^l7$FgrF^y7$F\\sF`_l7$FgrFc_l7$FbrFh_l7$F]rF[`l7$FhqF^` l7$FcqFa`l7$F^qFf`l7$FipF[al7$FdpF`al7$F_pFcal7$F\\pFhal7$FioF]bl7$Fcu Fbbl7$F`oFbbl7$FiuF]bl7$F\\vFgbl7$FWFjbl7$FRF]cl7$FgvF`cl7$F\\wFccl7$F CFfcl7$F>Ficl7$F9F\\dl7$F4F_dl7$F.Fbdl7$F(Fedl-F$6#7U7$F_`mFix7$Fd`mF^ y7$Fi`mFcy7$F^amFhy7$FcamF]z7$FhamFbz7$F]bmFgz7$FbbmF\\[l7$FgbmFa[l7$F \\cmFf[l7$FacmF[\\l7$FfcmF`\\l7$F[dmFe\\l7$F`dmFe\\l7$FcdmF`\\l7$FfdmF [\\l7$FidmFf[l7$F\\emFa[l7$F_emF\\[l7$FbemFgz7$FeemFbz7$FhemF]z7$F[fmF hy7$F^fmFh^l7$FcfmF^y7$FffmF`_l7$FcfmFc_l7$F^gmFh_l7$F[fmF[`l7$FhemF^` l7$FeemFa`l7$F\\hmFf`l7$FahmF[al7$FfhmF`al7$FidmFcal7$F^imFhal7$FcimF] bl7$FhimFbbl7$F]jmFbbl7$F`jmF]bl7$FcjmFgbl7$F\\cmFjbl7$FgbmF]cl7$FhjmF `cl7$F[[nFccl7$FhamFfcl7$FcamFicl7$F^amF\\dl7$Fi`mF_dl7$Fd`mFbdl7$F_`m Fedl-F$6#7U7$FgxF[el7$F\\yF^el7$FayFael7$FfyFdel7$F[zFgel7$F`zFjel7$Fe zF]fl7$FjzF`fl7$F_[lFcfl7$Fd[lFffl7$Fi[lFifl7$F^\\lF\\gl7$Fc\\lF_gl7$F h\\lF_gl7$F[]lF\\gl7$F^]lFifl7$Fa]lFegl7$Fd]lFhgl7$Fg]lF[hl7$Fj]lF^hl7 $F]^lFahl7$F`^lFdhl7$Fc^lFghl7$Ff^lFjhl7$F[_lF]il7$F^_lF`il7$F[_lFcil7 $Ff_lFfil7$Fc^lFiil7$F`^lF\\jl7$F]^lF_jl7$Fd`lFbjl7$Fi`lFejl7$F^alFhjl 7$Fa]lF[[m7$FfalF^[m7$F[blFa[m7$F`blFd[m7$Fc\\lFd[m7$F^\\lFa[m7$Fi[lF^ [m7$Fd[lF[[m7$F_[lFhjl7$FjzFejl7$FezFbjl7$F`zF_jl7$F[zF\\jl7$FfyFiil7$ FayFa\\m7$F\\yFcil7$FgxF`il-F$6#7U7$FgxFa`m7$F\\yFf`m7$FayF[am7$FfyF`a m7$F[zFeam7$F`zFjam7$FezF_bm7$FjzFdbm7$F_[lFibm7$Fd[lF^cm7$Fi[lFccm7$F ^\\lFhcm7$Fc\\lF]dm7$Fh\\lF]dm7$F[]lFhcm7$F^]lFccm7$Fa]lF^cm7$Fd]lFibm 7$Fg]lFdbm7$Fj]lF_bm7$F]^lFjam7$F`^lFeam7$Fc^lF`am7$Ff^lF`fm7$F[_lFf`m 7$F^_lFhfm7$F[_lF[gm7$Ff_lF`gm7$Fc^lFcgm7$F`^lFfgm7$F]^lFigm7$Fd`lF^hm 7$Fi`lFchm7$F^alFhhm7$Fa]lF[im7$FfalF`im7$F[blFeim7$F`blFjim7$Fc\\lFji m7$F^\\lFeim7$Fi[lF`im7$Fd[lF[im7$F_[lFhhm7$FjzFchm7$FezF^hm7$F`zFigm7 $F[zFfgm7$FfyFcgm7$FayFa[n7$F\\yF[gm7$FgxFhfm-%(SCALINGG6#%,CONSTRAINE DG-%+AXESLABELSG6$Q!6\"F\\io-%*AXESSTYLEG6#%&FRAMEG-%%VIEWG6$%(DEFAULT GFeio" 1 2 0 1 10 0 2 9 1 3 1 1.000000 45.000000 45.000000 0 0 "Curve \+ 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve \+ 8" "Curve 9" "Curve 10" "Curve 11" "Curve 12" "Curve 13" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 47 "Just for comparison, here it is with 40 d igits." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 405 "x,y,dx,dy,s:= 0. 5, 0.1, 1, 0, 0: path:= [x,y]: ix:= 1: iy:= 0:\n_Envsignum0:= 0: Digit s := 40:\nwhile s < 10 do\n if move() then # reassess directions\n \+ if abs(dx) >= abs(dy) then\n ix:= signum(dx); iy:= 0\n else\n ix:= 0; iy:= signum(dy);\n fi;\n path:= path,[x,y];\n els e # go to next mirror in same direction\n ix:= ix+signum(ix);\n \+ iy:= iy+signum(iy);\n fi\nod:\nans40:= sqrt(x^2+y^2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&ans40G$\"IkL4A0B%4=J!*3;aLW>HE&**!#S" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "ans40 - ans;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!,Fp6%pO!#S" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 69 "And here's what we would have got with a starting point different \+ by " }{XPPEDIT 18 0 "10^(-10)" "6#)\"#5,$F$!\"\"" }{TEXT -1 20 " in th e y direction." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 403 "path0:= \+ path:\nx,y,dx,dy,s:= 0.5, 0.1+1e-10, 1, 0, 0: path:= [x,y]: ix:= 1: iy := 0:\n_Envsignum0:= 0: Digits := 40:\nwhile s < 10 do\n if move() th en # reassess directions\n if abs(dx) >= abs(dy) then\n ix:= s ignum(dx); iy:= 0\n else\n ix:= 0; iy:= signum(dy);\n fi;\n path:= path,[x,y];\n else # go to next mirror in same direction\n ix:= ix+signum(ix);\n iy:= iy+signum(iy);\n fi\nod:\n" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 147 "display(\{plot([path],colou r=blue),plot([path0],colour=red),seq(seq(plottools[circle]([i,j],1/3), i=-1..1),j=-1..2)\},scaling=constrained,axes=frame);" }}{PARA 13 "" 1 "" {GLPLOT2D 384 384 384 {PLOTDATA 2 "64-%'CURVESG6#7U7$$!Inmmmmmmmmmm mmmmmmmmm!#S$!\"\"\"\"!7$$!Id^frSr!>BS$)HsS=c*4&Hp'F*$!I!>?SIysYPHU:Dl &yaDA#e*F*7$$!I!)Q&R@%y\"3sF.NHc/HY*QrnF*$!Iv_5S=J8vQ#>RS[]%4P.r\"*F*7 $$!IV!ovpEf9eoz()>;Rq/X2!pF*$!IP.B(zc$3&4N9O,uW:%R)F*7$$!Im/ZORsU>-f'>>%oT&owKI(F* $!IvY5Ck`%[8V5Oiv\"pDerS!)F*7$$!Ie(G'pC[O*)*3^*eh>EvX5qvF*$!IOqwNEET@s DUvP5d8j<=xF*7$$!I%)=o7muF1HWFjnV]nLDvyF*$!Ihd<2%z'yy'**)Rc-23CDiJuF*7 $$!I)yRn'y52TIidgWLS$o5R@)F*$!IG([;16,7t9%>\"Q'R/xBk\"4ds'F*7$$!IgibH7y%esguz?iN#o#)p!z*F*$!Ix))[J=7xRaDo7 GCdQUCtmF*7$$!IuV/x=_TFRD?zPkQ/Yi 5FgoF]o7$$!I(G'oR41R6Vn89\\;zkc+.6FgoFhn7$$!I$*zc]Z\">[nT&H)3p@0VE>9\" FgoFY7$$!I@gK8#*G*epPURbmf;$*3'y6FgoFT7$$!I7=tQ`AP4dDnBj&\\KmuC@\"Fgo$ !Iid<2%z'yy'**)Rc-23CDiJuF*7$$!ICr.`W:%R)F*7$$!I'>V-L2a=9.A,Q3'H&\\D*48F go$!IR.B(zc$3&4N9O,uRS[]%4P.r\"*F*7$$!I%[SGfG4o(f;qFf\"Q/!\\qI8Fgo$!I$>?SIysYPHU:Dl&ya DA#e*F*7$$!ILLLLLLLLLLLLLLLLLLL8Fgo$!I'******************************* ********F*7$Far$!I\")zfp@F`iqd%[ZV@Xux\"F go7$Fjp$!I'HBktteyFudCi*GkoB=G7Fgo7$Fep$!ICCGf?87K+,OuH>fZx$oD\"Fgo7$F bp$!IF^$Q*)))zo_G=E]+M=kU9G\"Fgo7$F_p$!IdY'ecxf@cX!f^]wQ)=qJ\"Fgo7$Fio$!II@Z*3b4e!)=Og&Hid$3HuK\"Fgo7$F eo$!I76&o\"yG-cWEvX5 qvF*$!I(HBktteyFudCi*GkoB=G7Fgo7$$!Io/ZORsU>-f'>>%oT&owKI(F*$!IL&*edja ^'o&*QwV#3V<%Gf>\"Fgo7$$!I0?sCJf`OhRcP@r=Lx(*yqF*Fds7$$!IW!ovpEf9eoz() >;Rq/X2!pF*Fas7$$!I\")Q&R@%y\"3sF.NHc/HY*QrnF*$!It%*)f\")o'[7w!3'f^\\0 Hm*G3\"Fgo7$F/F[s7$F($!I+++++++++++++++++++5Fgo-F$6#7U7$$\"ILLLLLLLLLL LLLLLLLLLLF*$\"\"#F-7$$\"IV[SGfG4o(f;qFf\"Q/!\\qI$F*$\"I\")zfp@F`iqd%[ ZV@XuxV-L2a=9.A,Q3'H&\\D*4$F*$\"ImpF?V;\\!\\cQ')fAGU=3F7#Fgo7$ $\"I'*zFvoSYjQgViyG\"oEA5#HF*$\"IVy@VSinrRi;40R.eXeg@Fgo7$$\"IM&HN1ws0 y4M!3eJe9Ls'p#F*$\"IK&*edja^'o&*QwV#3V<%Gf>#Fgo7$$\"IU7PIv^j55*[5%Q!QZ U&*)HCF*$\"I'HBktteyFudCi*GkoB=GAFgo7$$\"I;\"=tQ`AP4dDnBj&\\KmuC@F*$\" ICCGf?87K+,OuH>fZx$oD#Fgo7$$\"I7-EL@*G*epPURbmf;$*3'y\"F*$\"IF^$Q*)))z o_G=E]+M=kU9G#Fgo7$$\"IL*zc]Z\">[nT&H)3p@0VE>9F*$\"IdY'ecxf@cX!f^]wQ)=qJ#Fgo7$ $\"I8Yk:(4\\\"yN=9NaT_>Q/Yi!#T$\"II@Z*3b4e!)=Og&Hid$3HuK#Fgo7$$\"I/uV/ x=_TFRD?zPkQ/YiFj[lF[\\l7$$!ImG'oR41R6Vn8 9\\;zkc+.\"F*Fe[l7$$!IL*zc]Z\">[nT&H)3p@0VE>9F*F`[l7$$!I6-EL@*G*epPURb mf;$*3'y\"F*F[[l7$$!I;\"=tQ`AP4dDnBj&\\KmuC@F*Ffz7$$!IU7PIv^j55*[5%Q!Q ZU&*)HCF*Faz7$$!IM&HN1ws0y4M!3eJe9Ls'p#F*F\\z7$$!I(*zFvoSYjQgViyG\"oEA 5#HF*Fgy7$$!Id>V-L2a=9.A,Q3'H&\\D*4$F*Fby7$$!I?h/'y:#=zAn\\1Pa4P0hGKF* $\"Is%*)f\")o'[7w!3'f^\\0Hm*G3#Fgo7$$!IV[SGfG4o(f;qFf\"Q/!\\qI$F*Fhx7$ $!ILLLLLLLLLLLLLLLLLLLLF*$\"I+++++++++++++++++++?Fgo7$$!IW[SGfG4o(f;qF f\"Q/!\\qI$F*$\"I>?SIysYPHU:Dl&yaDA#e>Fgo7$Fa^l$\"IG0,%=J8vQ#>RS[]%4P. r\">Fgo7$$!Ie>V-L2a=9.A,Q3'H&\\D*4$F*$\"IMIszc$3&4N9O,uW:%R=Fgo7$$!IN&HN1ws0y4M !3eJe9Ls'p#F*$\"Io/TUOX[8V5Oiv\"pDerS!=Fgo7$$!IV7PIv^j55*[5%Q!QZU&*)HC F*$\"I/ndji79AdAax.rNJw\"=x\"Fgo7$$!I<\"=tQ`AP4dDnBj&\\KmuC@F*$\"IwvrS z'yy'**)Rc-23CDiJu\"Fgo7$$!I7-EL@*G*epPURbmf;$*3'y\"F*$\"It[;16,7t9[nT&H)3p@0VE>9F*$\"IV`8MC-%yVa4CoK6D)4R)p\" Fgo7$$!InG'oR41R6Vn89\\;zkc+.\"F*$\"Il)=E(o?A-_%H4)[\\Bh6)Ho\"Fgo7$$!I >Yk:(4\\\"yN=9NaT_>Q/YiFj[l$\"Iqy_5\\/>%>\"Q'R/xBk\"4ds;Fgo7$$!I5uV/x= _TFRD?zPkQ/YiFj[l$\"Iry_5\\/>%>\"Q'R/xBk \"4ds;Fgo7$$\"IpG'oR41R6Vn89\\;zkc+.\"F*F[bl7$$\"IN*zc]Z\">[nT&H)3p@0V E>9F*Ffal7$$\"I3-EL@*G*epPURbmf;$*3'y\"F*Faal7$$\"I8\"=tQ`AP4dDnBj&\\K muC@F*F\\al7$$\"IR7PIv^j55*[5%Q!QZU&*)HCF*$\"I.ndji79AdAax.rNJw\"=x\"F go7$$\"IK&HN1ws0y4M!3eJe9Ls'p#F*$\"In/TUOX[8V5Oiv\"pDerS!=Fgo7$$\"I&*z FvoSYjQgViyG\"oEA5#HF*F]`l7$$\"Ic>V-L2a=9.A,Q3'H&\\D*4$F*Fh_l7$$\"I>h/ 'y:#=zAn\\1Pa4P0hGKF*$\"IF0,%=J8vQ#>RS[]%4P.r\">Fgo7$FfxF`_l7$FaxF[_l- F$6#7U7$Fax$F-F-7$Ffx$\"I'4)zfp@F`iqd%[ZV@Xux<%Fj[l7$F[y$\"I`s%*)f\")o '[7w!3'f^\\0Hm*G)Fj[l7$F`y$\"Ij'pF?V;\\!\\cQ')fAGU=3F7F*7$Fey$\"IH%y@V SinrRi;40R.eXeg\"F*7$Fjy$\"ID`*edja^'o&*QwV#3V<%Gf>F*7$F_z$\"IkHBkttey FudCi*GkoB=G#F*7$Fdz$\"IRU#Gf?87K+,OuH>fZx$oDF*7$Fiz$\"Is7NQ*)))zo_G=E ]+M=kU9GF*7$F^[l$\"Iolkecxf@cX!f^ ]wQ)=qJF*7$Fh[l$\"I&H@Z*3b4e!)=Og&Hid$3HuKF*7$F^\\l$\"IB6^o\"yG-cWfZx$oDF*7$Fe]lFgfl7$Fh]l$\"IC`*edja^'o&*QwV#3V<%Gf>F *7$F[^l$\"IF%y@VSinrRi;40R.eXeg\"F*7$F^^l$\"Ih'pF?V;\\!\\cQ')fAGU=3F7F *7$Fa^l$\"ILs%*)f\")o'[7w!3'f^\\0Hm*G)Fj[l7$Ff^l$\"It!)zfp@F`iqd%[ZV@X ux<%Fj[l7$Fi^l$\"IjtGa8s#p2`\")\\KS>q\"z*z*Q!#z7$F^_l$!Ij!)zfp@F`iqd%[ ZV@Xux<%Fj[l7$Fa^l$!IBs%*)f\")o'[7w!3'f^\\0Hm*G)Fj[l7$Ff_l$!Ig'pF?V;\\ !\\cQ')fAGU=3F7F*7$F[`l$!IE%y@VSinrRi;40R.eXeg\"F*7$F``l$!IC`*edja^'o& *QwV#3V<%Gf>F*7$Fe`l$!IkHBktteyFudCi*GkoB=G#F*7$Fj`l$!IQU#Gf?87K+,OuH> fZx$oDF*7$F_al$!Ir7NQ*)))zo_G=E]+M=kU9GF*7$Fdal$!Inlkecxf@cX!f^]wQ)=qJF*7$F^bl$!I&H@Z*3b4e!)=Og&Hid$3HuK F*7$Fcbl$!IB6^o\"yG-cW^]wQ)=qJF*7$FcclF`[m7$Ffcl$!Iu7NQ*))) zo_G=E]+M=kU9GF*7$Ficl$!ITU#Gf?87K+,OuH>fZx$oDF*7$F\\dl$!InHBktteyFudC i*GkoB=G#F*7$Fadl$!IG`*edja^'o&*QwV#3V<%Gf>F*7$Ffdl$!IJ%y@VSinrRi;40R. eXeg\"F*7$Fidl$!Il'pF?V;\\!\\cQ')fAGU=3F7F*7$F\\el$!Ips%*)f\")o'[7w!3' f^\\0Hm*G)Fj[l7$Ffx$!I8\")zfp@F`iqd%[ZV@Xux<%Fj[l7$Fax$!Ig!3>/w(=([R'H $)R@Pn\"H$H6Ffil-F$6#7U7$$\"ILLLLLLLLLLLLLLLLLLL8FgoF+7$$\"I%[SGfG4o(f ;qFf\"Q/!\\qI8FgoF17$$\"I7Ygy:#=zAn\\1Pa4P0hGK\"FgoF67$$\"I'>V-L2a=9.A ,Q3'H&\\D*48FgoF;7$$\"I+y_(oSYjQgViyG\"oEA5#H\"FgoF@7$$\"I`HN1ws0y4M!3 eJe9Ls'p7FgoFE7$$\"ICr.`[nT&H) 3p@0VE>9\"FgoFY7$$\"I(G'oR41R6Vn89\\;zkc+.6FgoFhn7$$\"IYk:(4\\\"yN=9Na T_>Q/Yi5FgoF]o7$$\"IuV/x=_TFRD?zPkEvX5qvF* FJ7$$\"Im/ZORsU>-f'>>%oT&owKI(F*F_q7$$\"I.?sCJf`OhRcP@r=Lx(*yqF*Fdq7$$ \"IV!ovpEf9eoz()>;Rq/X2!pF*Fiq7$$\"I!)Q&R@%y\"3sF.NHc/HY*QrnF*F^r7$$\" Id^frSr!>BS$)HsS=c*4&Hp'F*Fcr7$$\"InmmmmmmmmmmmmmmmmmmmF*Fhr7$$\"Ic^fr Sr!>BS$)HsS=c*4&Hp'F*F[s7$FgbmF^s7$$\"IU!ovpEf9eoz()>;Rq/X2!pF*Fas7$$ \"I-?sCJf`OhRcP@r=Lx(*yqF*Fds7$$\"Il/ZORsU>-f'>>%oT&owKI(F*Fis7$$\"Id( G'pC[O*)*3^*eh>EvX5qvF*F\\t7$$\"I$)=o7muF1HWFjnV]nLDvyF*F_t7$$\"I)yRn' y52TIidgWLS$o5R@)F*Fbt7$$\"Im+K%\\_3=D$e/<\"4$y%pN2e)F*Fet7$$\"ILr8.1R 4')oDje3N3_L%*p*)F*Fht7$$\"IQbVG!4&=U;e[c%eZ!=cRv$*F*F[u7$$\"IfibH7y%e sguz?iN#o#)p!z*F*F^u7$Ff`mF^u7$Fc`mFfu7$F``mFht7$$\"I%*zc]Z\">[nT&H)3p @0VE>9\"FgoFet7$Fj_mFbt7$$\"I6=tQ`AP4dDnBj&\\KmuC@\"FgoF_t7$Fd_mFgv7$F a_mF\\w7$F^_mFds7$F[_mFas7$Fh^mFgw7$Fe^mF[s7$Fb^mF[x-F$6#7U7$Fb^mFfel7 $Fe^mFhel7$Fh^mF[fl7$F[_mF^fl7$F^_mFafl7$Fa_mFdfl7$Fd_mFgfl7$Fg_mFjfl7 $Fj_mF]gl7$F]`mF`gl7$F``mFcgl7$Fc`mFfgl7$Ff`mFigl7$Fi`mFigl7$F\\amFfgl 7$F_amFcgl7$FbamF`gl7$FeamF]gl7$FhamFahl7$F[bmFgfl7$F^bmFehl7$FabmFhhl 7$FdbmF[il7$FgbmF^il7$FjbmFail7$F]cmFdil7$F`cmFhil7$FgbmF[jl7$FdcmF^jl 7$FgcmFajl7$FjcmFdjl7$F]dmFgjl7$F`dmFjjl7$FcdmF][m7$FfdmF`[m7$FidmFc[m 7$F\\emFf[m7$F_emFi[m7$Ff`mFi[m7$Fc`mF]\\m7$F``mF`\\m7$FeemF`[m7$Fj_mF d\\m7$FiemFg\\m7$Fd_mFj\\m7$Fa_mF]]m7$F^_mF`]m7$F[_mFc]m7$Fh^mFf]m7$Fe ^mFi]m7$Fb^mF\\^m-F$6#7U7$FaxF+7$FfxF17$F[yF67$F`yF;7$FeyF@7$FjyFE7$F_ zFJ7$FdzFO7$FizFT7$F^[lFY7$Fc[lFhn7$Fh[lF]o7$F^\\lFbo7$Fc\\lFbo7$Ff\\l F]o7$Fi\\lFhn7$F\\]lFY7$F_]lFT7$Fb]lFgp7$Fe]lFJ7$Fh]lF_q7$F[^lFdq7$F^^ lFiq7$Fa^lF^r7$Ff^lFcr7$Fi^lFhr7$F^_lF[s7$Fa^lF^s7$Ff_lFas7$F[`lFds7$F ``lFis7$Fe`lF\\t7$Fj`lF_t7$F_alFbt7$FdalFet7$FialFht7$F^blF[u7$FcblF^u 7$FhblF^u7$F[clFfu7$F`clFht7$FcclFet7$FfclFbt7$FiclF_t7$F\\dlFgv7$Fadl F\\w7$FfdlFds7$FidlFas7$F\\elFgw7$FfxF[s7$FaxF[x-F$6#7U7$Fb^mFcx7$Fe^m Fhx7$Fh^mF]y7$F[_mFby7$F^_mFgy7$Fa_mF\\z7$Fd_mFaz7$Fg_mFfz7$Fj_mF[[l7$ F]`mF`[l7$F``mFe[l7$Fc`mF[\\l7$Ff`mF`\\l7$Fi`mF`\\l7$F\\amF[\\l7$F_amF e[l7$FbamF`[l7$FeamF[[l7$FhamFfz7$F[bmFaz7$F^bmF\\z7$FabmFgy7$FdbmFby7 $FgbmFc^l7$FjbmFhx7$F]cmF[_l7$F`cmF`_l7$FgbmFc_l7$FdcmFh_l7$FgcmF]`l7$ FjcmFb`l7$F]dmFg`l7$F`dmF\\al7$FcdmFaal7$FfdmFfal7$FidmF[bl7$F\\emF`bl 7$F_emFebl7$Ff`mFebl7$Fc`mF]cl7$F``mF[bl7$FeemFfal7$Fj_mFaal7$FiemF\\a l7$Fd_mF^dl7$Fa_mFcdl7$F^_mF]`l7$F[_mFh_l7$Fh^mF^el7$Fe^mF`_l7$Fb^mF[_ l-F$6#7U7$F($\"\"\"F-7$F/$\"I\")zfp@F`iqd%[ZV@Xux$\"I Vy@VSinrRi;40R.eXeg6Fgo7$FC$\"IK&*edja^'o&*QwV#3V<%Gf>\"Fgo7$FH$\"I'HB ktteyFudCi*GkoB=G7Fgo7$FM$\"ICCGf?87K+,OuH>fZx$oD\"Fgo7$FR$\"IF^$Q*))) zo_G=E]+M=kU9G\"Fgo7$FW$\"IdY'ecxf@cX!f^]wQ)=qJ\"Fgo7$F[o$\"II@Z*3b4e!)=Og&Hid$3HuK\"Fgo7$F`o$\"I76&o\" yG-cW?SIys YPHU:Dl&yaDA#e*F*7$F\\r$\"Iy_5S=J8vQ#>RS[]%4P.r\"*F*7$Fgq$\"IS.B(zc$3& 4N9O,uW:%R)F*7$Fgs$\"IwY5Ck`%[8V5O iv\"pDerS!)F*7$Fjp$\"IOqwNEET@sDUvP5d8j<=xF*7$Fep$\"Iid<2%z'yy'**)Rc-2 3CDiJuF*7$Fbp$\"IH([;16,7t9%>\"Q'R/xBk \"4ds'F*7$Feo$\"Ix))[J=7xRaDo7GCdQUCtmF*7$FauFafn7$Fdu$\"I1(y_5\\/>%> \"Q'R/xBk\"4ds'F*7$Fiu$\"I\\')=E(o?A-_%H4)[\\Bh6)HoF*7$F\\vFhen7$F_v$ \"IE([;16,7t9W:%R)F*7$Fbw$\"IN.B(zc$3&4N9O,uRS[]%4P.r\"*F*7$F/$\"I*=?SIysYPHU:Dl&yaDA#e*F*7$F($\"I************ ****************************F*-F$6#7U7$F(Ffel7$F/Fhel7$F4F[fl7$F9F^fl7 $F>Fafl7$FCFdfl7$FHFgfl7$FMFjfl7$FRF]gl7$FWF`gl7$FfnFcgl7$F[oFfgl7$F`o Figl7$FeoFigl7$FioFfgl7$F\\pFcgl7$F_pF`gl7$FbpF]gl7$FepFahl7$FjpFgfl7$ F]qFehl7$FbqFhhl7$FgqF[il7$F\\rF^il7$FarFail7$FfrFdil7$FarFhil7$F\\rF[ jl7$FgqF^jl7$FbqFajl7$FgsFdjl7$FjpFgjl7$FepFjjl7$FbpF][m7$F_pF`[m7$F\\ pFc[m7$FioFf[m7$FeoFi[m7$FauFi[m7$FduF]\\m7$FiuF`\\m7$F\\vF`[m7$F_vFd \\m7$FbvFg\\m7$FevFj\\m7$FjvF]]m7$F_wF`]m7$FbwFc]m7$FewFf]m7$F/Fi]m7$F (F\\^m-F$6#7U7$Fb^mFh`n7$Fe^mF[an7$Fh^mF^an7$F[_mFaan7$F^_mFdan7$Fa_mF gan7$Fd_mFjan7$Fg_mF]bn7$Fj_mF`bn7$F]`mFcbn7$F``mFfbn7$Fc`mFibn7$Ff`mF \\cn7$Fi`mF\\cn7$F\\amFibn7$F_amFfbn7$FbamFcbn7$FeamF`bn7$FhamF]bn7$F[ bmFjan7$F^bmFgan7$FabmFdan7$FdbmFaan7$FgbmFicn7$FjbmF[an7$F]cmF]dn7$F` cmF`dn7$FgbmFcdn7$FdcmFfdn7$FgcmFidn7$FjcmF\\en7$F]dmF_en7$F`dmFben7$F cdmFeen7$FfdmFhen7$FidmF[fn7$F\\emF^fn7$F_emFafn7$Ff`mFafn7$Fc`mFefn7$ F``mFhfn7$FeemFhen7$Fj_mF\\gn7$FiemF_gn7$Fd_mFbgn7$Fa_mFegn7$F^_mFhgn7 $F[_mF[hn7$Fh^mF^hn7$Fe^mFahn7$Fb^mFdhn-F$6#7U7$F(Fcx7$F/Fhx7$F4F]y7$F 9Fby7$F>Fgy7$FCF\\z7$FHFaz7$FMFfz7$FRF[[l7$FWF`[l7$FfnFe[l7$F[oF[\\l7$ F`oF`\\l7$FeoF`\\l7$FioF[\\l7$F\\pFe[l7$F_pF`[l7$FbpF[[l7$FepFfz7$FjpF az7$F]qF\\z7$FbqFgy7$FgqFby7$F\\rFc^l7$FarFhx7$FfrF[_l7$FarF`_l7$F\\rF c_l7$FgqFh_l7$FbqF]`l7$FgsFb`l7$FjpFg`l7$FepF\\al7$FbpFaal7$F_pFfal7$F \\pF[bl7$FioF`bl7$FeoFebl7$FauFebl7$FduF]cl7$FiuF[bl7$F\\vFfal7$F_vFaa l7$FbvF\\al7$FevF^dl7$FjvFcdl7$F_wF]`l7$FbwFh_l7$FewF^el7$F/F`_l7$F(F[ _l-F$6#7U7$FaxFh`n7$FfxF[an7$F[yF^an7$F`yFaan7$FeyFdan7$FjyFgan7$F_zFj an7$FdzF]bn7$FizF`bn7$F^[lFcbn7$Fc[lFfbn7$Fh[lFibn7$F^\\lF\\cn7$Fc\\lF \\cn7$Ff\\lFibn7$Fi\\lFfbn7$F\\]lFcbn7$F_]lF`bn7$Fb]lF]bn7$Fe]lFjan7$F h]lFgan7$F[^lFdan7$F^^lFaan7$Fa^lFicn7$Ff^lF[an7$Fi^lF]dn7$F^_lF`dn7$F a^lFcdn7$Ff_lFfdn7$F[`lFidn7$F``lF\\en7$Fe`lF_en7$Fj`lFben7$F_alFeen7$ FdalFhen7$FialF[fn7$F^blF^fn7$FcblFafn7$FhblFafn7$F[clFefn7$F`clFhfn7$ FcclFhen7$FfclF\\gn7$FiclF_gn7$F\\dlFbgn7$FadlFegn7$FfdlFhgn7$FidlF[hn 7$F\\elF^hn7$FfxFahn7$FaxFdhn-F$6$707$$\"\"&F,$\"+,+++5!#57$$\"Izl\"e* )feSkR,a***zDiE??oF*Fdfo7$$!I6Kb934EQ*)>(eF=_)*=(*\\p'F*$\"I)e?]spE;HU KCg_*3anOV5Fgo7$$!I6k:ar0&)yK2->Y*e9vM(Q7F*$\"I&QLtLwOh'*RV!=+$3RTQ0p \"Fgo7$$!I\">]0+/K\\U]ola#45.s:y9F*$\"I6;\"QPA82$pm))G5hvQow)H\"Fgo7$$ !IR41z-8C/OGk,;L2f1UzzF*$\"INE?!3MYOt#*R9WsERE*)[t\"Fgo7$$!IJo4nD\"3sg G=&eu[o!)HH!z#F*$\"H@rJLLID*QE/rwlp.9cB=Fgo7$$!I'\\X8M\\$HlbMM3\"fI0r) o%*pF*$\"I1kz?ro+!G;aGT&)fW\"F*7$$!INzsG)\\!\\W^\\ITambMO!*\\lkqF*7$$!IU(\\70XrE(z]\"QMnfiS[\"QFF*$\"I\"[i&3-M MF*7$$!I!HB\"*[=&>-rH^#)Hzz5vFVnF*$!H[^dak?.5J8PK#3aK'= a5(F*7$$!I#px'=j>Sz$oTDF)\\JCRahBF*$!I0$)>/R&46Tc*R0T)QgS2vk(F*7$$!I8o +`9=;l&p,sh8$z#yZ;N*F*$!I6UbB(=i4&Qh\"zR')GeJr'pKF*7$$!I8gZJ>p,>$pg\"G Cr\\K2%fJ\"Fgo$!ILyi]*ffKGhw*G$Q3!*REgg)F*-%'COLOURG6&%$RGBGFfelFfel$ \"*++++\"!\")-F$6$727$Fbfo$Fi`nF,7$$\"I&[K:\"fD8ZfCG]9N%>m--#oF*Fa[p7$ $!ID<_%>*4F\"oiFyd\"*\\y=(*\\p'F*$\"Itz85](*ePaC;&zejDvmL/\"Fgo7$$!I\" )[a=71`#[p\")yN#\\peYtQ7F*$\"Isx$Qy0!GECGMNw]>5%Q0p\"Fgo7$$!I-A\\**)H? `v9\")4fO3?#o:y9F*$\"I6Tgg&Gp*\\P\"e9rw5w&ow)H\"Fgo7$$!IXwOW^**f\"3\"R &3!eoe6#=%zzF*$\"I=<96(oWtc]%[Ua9.)ytx/oZ*pF*$\"IKz ,m9\"=naw[F.u9\\t8@W\"F*7$$!I2zM2]Giw\"p3Inj8Qv!o!e\"F*$\"IN/IY06<)=\\ ([FcaS]PGlqF*7$$!I6fo!pg0a;u=*RQrF??kZFF*$\"IsbE5\"e1cvaWo+4HfS8s)=F*7 $$!IG$pYMB7axi*Q;+)[V=zDw'F*$!HwU:h8^\\f^SK)3t4*RC'QzF*7$$!ITO\"GH^L$z -'HG'QsfMk6^FF*$!IOHo![?21Cuc^$H$pn3by6)F*7$$!Ie@qOm2,*3MPot8y8![AayF* $!I)*\\fQ'4H@XcOW[Dg1'[;\\uF*7$$!IoZ%*p25dWM23Kj1=9@tq\"*F*$!I&>L8(Rq5 R/bcLZhd&3L&GKF*7$$!Is)y@U2-x(zlf8xN8,t_(Q)F*$!IOY-s!HLC79\\mdhPW#3j#3 (F*7$$!IpCpB!*p=v8djjpU'p'F*-Fgjo6&Fi joFjjoFfelFfel-%(SCALINGG6#%,CONSTRAINEDG-%+AXESLABELSG6%Q!6\"Fd`p-%%F ONTG6#%(DEFAULTG-%*AXESSTYLEG6#%&FRAMEG-%%VIEWG6$Fi`pFi`p" 1 2 0 1 10 0 2 9 1 3 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curv e 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curv e 10" "Curve 11" "Curve 12" "Curve 13" "Curve 14" }}}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 40 "seq(path[i]-path0[i],i=1..nops([path]));" }} {PARA 12 "" 1 "" {XPPMATH 20 "607$$\"\"!F%$\"\"\"!#57$$\"?%4%G%)Rg#pp$ *=^a[9$!#SF&7$$!@'[J+i\"**)pDOW!)pE-?F,$\"@:E)[r%p.ao*ps!Qf_\"!#R7$$!A I:hNf*>jz.R6E-kF*F,$\"@8c\\`0n&)Rv0q#QA8PF27$$!B*)z0,To9d#ola)=F27$$!C%H$pM^8kAD*)y+ek[ZCF,$!B$3R4jM)pLyX/wa)Ql=F 27$$!D#f13q)oc'GJ2'G_\"[s#o#F,$!Ch/%Gzeq)fYqhdT?'[5%F27$$\"Ds.k=m,.a') >![p>VsLzF,$!EE:AXV7rm-Y*)>')[:V`;F,7$$\"Fs*>'y^B8KSpA>166Az;\"F,$!ES^ Oc>5)*QhL%41+U+wG'F,7$$\"FphVRcTt#>m.h\\YF,$\"GG\"zl!\\IY\\?F&f&[clw0K$)F,7$ $\"H\\f8u\\:$***=zG!fD#G5Dd*QF,$\"HJY[wlw\\HyrvH)[I2oZ.ZF,7$$!IbYI;[5: waVO!))*\\T\")HU(\\\"F,$\"I(yS]\"4p;,E/_'3RJ[a$\\zTF,7$$!Ii`\"[a=)fX(> E&\\z0z5_n))RF,$!IQYHzfD:W36T&fBKMJ$\\x`F," }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 97 "plots[logplot]([seq([i,sqrt(%[i][1]^2+%[i][2]^2)],i =1..nops([path]))],style=point,symbol=circle);" }}{PARA 13 "" 1 "" {GLPLOT2D 384 384 384 {PLOTDATA 2 "6&-%'CURVESG6#707$$\"\"\"\"\"!$!I++ +++++++++++++++++5!#Q7$$\"\"#F*$!Ia&GRkVw;T*)>*pq!Rhp?&z**!#R7$$\"\"$F *$!Ivy,WYgCn\\i7\"Qt\")*yhv7))F37$$\"\"%F*$!Iq>f\\tgu@w^B9P(F37$$\"\"'F*$!IPpY&e)**z[o)eod- I*>\"G=^'F37$$\"\"(F*$!Iv'=/**)zm%f6cIpZXySq%4`F37$$\"\")F*$!Iz1CcCxG) \\vjZ*4N4l(=mt%F37$$\"\"*F*$!Iz])\\b^p'>XTZ7Bde?+KxQF37$$\"#5F*$!I'Q'f 4HX7wyPfj=W%)o54xFF37$$\"#6F*$!IM1\"z7-!3xiYJ@*))p>g'*y1#F37$$\"#7F*$! Ic.f&fTtt[B6X\"e,^i#\\T@\"F37$$\"#8F*$!IX?O'f@tQ\"=mo$4[@r>=l_$!#S7$$ \"#9F*$!Ic>@]?+*oJrr=iYt\\N.Bu\"Feo-%&STYLEG6#%&POINTG-%'SYMBOLG6#%'CI RCLEG-%*AXESTICKSG6$%(DEFAULTG7_q/$!#5F*Q&1e-106\"/$!IKK(p]v_5hiy/)=gL /+(*)p*F3Q!F\\q/$!I+3p%)[u'4s\\qivL!GX(yG_*F3F`q/$!Ikk%R,^0@ADd4w.s'3+ %zR*F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I*F3F`q/$!IKSm\"R???L7\\njN;'\\( [=A*F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:*F3F`q/$!I&p>4_EeJ$yeVTc!3I,5p4*F 3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/*F3F`q/$!\"*F*Q&1e-09F\\q/$!IKK(p]v_5hi y/)=gL/+(*)p)F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_)F3F`q/$!Ikk%R,^0@ADd4w.s '3+%zR)F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I)F3F`q/$!IKSm\"R???L7\\njN;' \\([=A)F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:)F3F`q/$!I&p>4_EeJ$yeVTc!3I,5p 4)F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/)F3F`q/$!\")F*Q&1e-08F\\q/$!IKK(p]v_ 5hiy/)=gL/+(*)p(F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_(F3F`q/$!Ikk%R,^0@ADd4 w.s'3+%zR(F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I(F3F`q/$!IKSm\"R???L7\\nj N;'\\([=A(F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:(F3F`q/$!I&p>4_EeJ$yeVTc!3I ,5p4(F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/(F3F`q/$!\"(F*Q&1e-07F\\q/$!IKK(p ]v_5hiy/)=gL/+(*)p'F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_'F3F`q/$!Ikk%R,^0@A Dd4w.s'3+%zR'F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I'F3F`q/$!IKSm\"R???L7 \\njN;'\\([=A'F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:'F3F`q/$!I&p>4_EeJ$yeVT c!3I,5p4'F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/'F3F`q/$!\"'F*Q&1e-06F\\q/$!I KK(p]v_5hiy/)=gL/+(*)p&F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_&F3F`q/$!Ikk%R, ^0@ADd4w.s'3+%zR&F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I&F3F`q/$!IKSm\"R?? ?L7\\njN;'\\([=A&F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:&F3F`q/$!I&p>4_EeJ$y eVTc!3I,5p4&F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/&F3F`q/$!\"&F*Q&1e-05F\\q/ $!IKK(p]v_5hiy/)=gL/+(*)p%F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_%F3F`q/$!Ikk %R,^0@ADd4w.s'3+%zR%F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I%F3F`q/$!IKSm\" R???L7\\njN;'\\([=A%F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:%F3F`q/$!I&p>4_Ee J$yeVTc!3I,5p4%F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/%F3F`q/$!\"%F*Q&.1e-3F \\q/$!IKK(p]v_5hiy/)=gL/+(*)p$F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_$F3F`q/$ !Ikk%R,^0@ADd4w.s'3+%zR$F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I$F3F`q/$!IK Sm\"R???L7\\njN;'\\([=A$F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:$F3F`q/$!I&p> 4_EeJ$yeVTc!3I,5p4$F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/$F3F`q/$!\"$F*Q&.1e -2F\\q/$!IKK(p]v_5hiy/)=gL/+(*)p#F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_#F3F` q/$!Ikk%R,^0@ADd4w.s'3+%zR#F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I#F3F`q/$ !IKSm\"R???L7\\njN;'\\([=A#F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\:#F3F`q/$!I &p>4_EeJ$yeVTc!3I,5p4#F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/#F3F`q/$!\"#F*Q& .1e-1F\\q/$!IKK(p]v_5hiy/)=gL/+(*)p\"F3F`q/$!I+3p%)[u'4s\\qivL!GX(yG_ \"F3F`q/$!Ikk%R,^0@ADd4w.s'3+%zR\"F3F`q/$!Ion-$\\CZ*)QP@&>\")Rm&**H5I \"F3F`q/$!IKSm\"R???L7\\njN;'\\([=A\"F3F`q/$!I;l!QO29u$y(GpJu&)*f>!\\: \"F3F`q/$!I&p>4_EeJ$yeVTc!3I,5p4\"F3F`q/$!I+;Qp(*[$>W*4a7v1c!\\dd/\"F3 F`q/$!\"\"F*Q#.1F\\q/$!I=Btp]v_5hiy/)=gL/+(*)pFeoF`q/$!I,!3p%)[u'4s\\q ivL!GX(yG_FeoF`q/$!IOYYR,^0@ADd4w.s'3+%zRFeoF`q/$!I!on-$\\CZ*)QP@&>\") Rm&**H5IFeoF`q/$!I<.k;R???L7\\njN;'\\([=AFeoF`q/$!Il^1QO29u$y(GpJu&)*f >!\\:FeoF`q/$!H_p>4_EeJ$yeVTc!3I,5p*FeoF`q/$!H(*f\"Qp(*[$>W*4a7v1c!\\d d%FeoF`q/$F*F*Q#1.F\\q/$\"I#on-$\\CZ*)QP@&>\")Rm&**H5IFeoF`q/$\"I**>4` 6bK!z-&HPCm>ZD@rZFeoF`q/$\"Ik``g)*[%*yxuU!RizK\"**f?gFeoF`q/$\"I?Btp]v _5hiy/)=gL/+(*)pFeoF`q/$\"I$ofL3'zzzm(3DjVOQ]7:y(FeoF`q/$\"IN[$>OEfei@ 72$oD9+/)4X)FeoF`q/$\"I[I!3zM<%o;7k&eV>*p)**3.*FeoF`q/$\"I.S=1B5l!e0!f u[KR%4DCa*FeoF`q" 1 5 4 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 3:" }} {PARA 0 "" 0 "" {TEXT -1 20 "The infinite matrix " }{XPPEDIT 18 0 "A" "6#%\"AG" }{TEXT -1 14 " with entries " }{XPPEDIT 18 0 "a[1,1] = 1" "6 #/&%\"aG6$\"\"\"F'F'" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "a[1,2] = 1/2" " 6#/&%\"aG6$\"\"\"\"\"#*&F'F'F(!\"\"" }{TEXT -1 2 ", " }{XPPEDIT 18 0 " a[2,1]=1/3" "6#/&%\"aG6$\"\"#\"\"\"*&F(F(\"\"$!\"\"" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "a[1,3] = 1/4" "6#/&%\"aG6$\"\"\"\"\"$*&F'F'\"\"%!\"\" " }{TEXT -1 2 ", " }{XPPEDIT 18 0 "a[2,2]=1/5" "6#/&%\"aG6$\"\"#F'*&\" \"\"F)\"\"&!\"\"" }{TEXT -1 1 "," }{XPPEDIT 18 0 "a[3,1]=1/6" "6#/&%\" aG6$\"\"$\"\"\"*&F(F(\"\"'!\"\"" }{TEXT -1 33 ", etc., is a bounded op erator on " }{XPPEDIT 18 0 "l^2" "6#*$%\"lG\"\"#" }{TEXT -1 13 ". Wha t is ||" }{XPPEDIT 18 0 "A" "6#%\"AG" }{TEXT -1 4 "||?." }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 57 "The norm is the square root of the largest eigenvalue of " } {XPPEDIT 18 0 "A^T*A;" "6#*&)%\"AG%\"TG\"\"\"F%F'" }{TEXT -1 46 ", whi ch can be computed by a simple iteration:" }}{PARA 0 "" 0 "" {TEXT -1 30 "Start with a \"typical\" vector " }{XPPEDIT 18 0 "x(0)" "6#-%\"xG6 #\"\"!" }{TEXT -1 17 ", normalized so " }{XPPEDIT 18 0 "x(0)[1] = 1" "6#/&-%\"xG6#\"\"!6#\"\"\"F*" }{TEXT -1 14 ", and repeat \n" } {XPPEDIT 18 0 "y := A^T*A*x(n)" "6#>%\"yG*()%\"AG%\"TG\"\"\"F'F)-%\"xG 6#%\"nGF)" }{TEXT -1 1 "\n" }{XPPEDIT 18 0 "x(n+1) := y/y[1];" "6#>-% \"xG6#,&%\"nG\"\"\"F)F)*&%\"yGF)&F+6#F)!\"\"" }}{PARA 0 "" 0 "" {TEXT -1 5 "Then " }{XPPEDIT 18 0 "y[1]" "6#&%\"yG6#\"\"\"" }{TEXT -1 585 " \+ converges to the largest eigenvalue (the second eigenvalue is much sma ller, so it converges quite fast). But we can only work with a finite number of components, so we truncate to an m by m matrix. I did it \+ in Maple for up to a 2500 by 2500 matrix (obtaining 1.274224152 517112 9126 which happens to have 10 correct digits, but I wasn't confident o f the 10th), and Gaston used a C program to get the result for a 32768 by 32768 matrix (of course we don't actually construct the matrix, bu t work directly with vectors). His result was 1.274224152 82109, whic h has 13 correct digits." }}{PARA 0 "" 0 "" {TEXT -1 22 "Here's the Ma ple code." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 389 "mulAA:= proc( V::Array,W::Array,n)\n# multiply the n-component vector V by A^T*A\n# \+ W is another vector of the same size used for\n# intermediate calculat ions\n local i,j;\n for i from 1 to n do\n \+ W[i]:= add(V[j]/((i+j-1)*(i+j-2)/2+i),j=1..n)\n od;\n \+ for j from 1 to n do\n V[j]:= add(W[i]/((i+j-1)*(i+j- 2)/2+i),i=1..n)\n od;\n end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 532 "F:= proc(n)\n# get the approximate eigenvalue for an n x n # truncation\n local V,W,VP,i,eps;\n if not type(n,intege r) then return 'procname(n)' fi;\n eps:= 1.0*10^(-Digits+4);\n V := Array(1..n,datatype=float[8]);\n W:= Array(1..n,datatype=float[8 ]);\n V[1]:= 1.0;\n for i from 2 to n do V[i]:= 0 od;\n do\n \+ VP:= copy(V);\n mulAA(V,W,n);\n if max(seq(abs(V[i]-V[1 ]*VP[i]),i=1..n)) < eps\n then return sqrt(V[1]) fi;\n for i from 2 to n do V[i]:= V[i]/V[1] od;\n V[1]:= 1.0;\n od;\n \+ end:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 95 "Digits:= 15: ti := time(): F(20); (time()-ti)*seconds;\nti:= time():\nF(200);\n(time() -ti)*seconds;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"0(4aS)RQF\"!#9" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"%%y\"!\"$" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#$\"0s_8gBUF\"!#9" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"'!Gu\"!\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 62 "Some groups used various extrapolation techniques. We didn't." }} }}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 4:" }}{PARA 0 "" 0 "" {TEXT -1 42 "What is the global minimum of the function" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "exp(sin(50*x))+sin(60*exp(y))+sin(70*sin(x))+sin(s in(80*y))-sin(10*(x+y))+(x^2+y^2)/4;" "6#,.-%$expG6#-%$sinG6#*&\"#]\" \"\"%\"xGF,F,-F(6#*&\"#gF,-F%6#%\"yGF,F,-F(6#*&\"#qF,-F(6#F-F,F,-F(6#- F(6#*&\"#!)F,F4F,F,-F(6#*&\"#5F,,&F-F,F4F,F,!\"\"*&,&*$F-\"\"#F,*$F4FJ F,F,\"\"%FFF," }{TEXT -1 1 "?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 " Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "Look at the function \+ for reasonably small values of x and y." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 122 "restart;\nF := (x,y) -> exp(sin(50*x)) + sin(60*exp( y)) + sin(70*sin(x)) +\n\011sin(sin(80*y)) - sin(10*(x+y)) + 1/4*(x^2+ y^2);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%\"FGf*6$%\"xG%\"yG6\"6$%)op eratorG%&arrowGF),0-%$expG6#-%$sinG6#,$9$\"#]\"\"\"-F26#,$-F/6#9%\"#gF 7-F26#,$-F26#F5\"#qF7-F26#-F26#,$F=\"#!)F7-F26#,&F5\"#5*&FNF7F=F7F7!\" \"*&#F7\"\"%F7)F5\"\"#F7F7*&FRF7)F=FUF7F7F)F)F)" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 87 "plot3d(F(x,y),x=-2..2,y=-2..2,axes=box,grid=[1 00,100],style=patchcontour,shading=ZHUE);" }}{PARA 13 "" 1 "" {GLPLOT3D 353 265 265 {PLOTDATA 3 "6'-%%GRIDG6%;$!\"#\"\"!$\"\"#F)F&X, %)anythingG6\"6\"[gl'!%\"!!#[\\bm\"_q\"_q4011AF274A81B3944013DA2BC6AE5 9E240102FD456524F144011A2ABF0EDC93440061A48834594534008DD1D68B1399E3FF 244D9F5AE26A93FFDF675973A8C2D3FC073C3E5FA9AF83FF9C469E588EBF43FD9B1186 6D9A3FA4004C8BB7F1474D33FFB3934A019774B4010247AB28A906940066CF18525210 3401245CD66BBFDAA4004DDE84BC13AD7400E1B49ADEBB8B33FF97778D1849AD140076 06902F195743FF658977BFC0ED04009D6DD6AB7FCA940000BEAEA4D26BB4009D3C2023 EAD7C3FF3788E7072A3FD3FF71CEA00978D48BFCDE311F3515C6E3FF06A0BEDAA93783 FF6439D21B500E3400A05C77F8363824008DB77462D57644006082C5F2ADF44400007A EE58621F8400322DF9AA13611400DA765BAD44BE9400AC34C3C9AA83240037E2CC162F 8783FE01A6A05CECA8B4000002594BE8BA53FFA619440C9EB353FF93668D3B2E596BFE 5C0B6C6EB7E544000F0558C833FF63FF72206EA8D4B4E3FFAF916D419AE943FF13B060 F7A435240110B8D98CBEC463FF32C13BA2E8B73400D604A8845B99D4006BB530E02E40 44004A9F8A1B13B6340033D500CD0AF4D40040B98D3C6CC173FEB7B46DBF26F6E40033 4E4D4796DD8BFC414228CCA937440017C06B4DFD6A5BFC0DF5DA13CBC1A4000BEA7D62 D32BE3FF07F6E91EE45783FFE84B50D5B9DF04006584060A026AF40019281761520194 005E509BBAE334040105FE7962C01AB4000365848A2BC234001C7402C74D2EC40095C8 24A4D4C3840063E4D6F08DEFB3FFD376E7D2A95793FD392EBE738311A3FE111A93B626 AC0BFD03D3D3D4370263FEC0F66E67A43063FA0E32583BC53F43FF8D56DC72F58A83FE CCBF162F94670400C2014FA92287F400A34EE3068227B401165874F3B88A23FF7DB1E3 EE4B09040123C08BA39848740008815C34A9EBC40098F278EE3F3803FF69C44F289772 040094EDD2C7FE4F4BFCAF622240D6CD4400521FD804B7C583FFC2E14F3A2695F40098 AB2C4D3B9C03FFABCBE6C099E52400DA063B27BBF3940097F4F8442993C4012E665A67 244DA4001DAAAC72891FF4011F243981FC14F400A0D9593B20A3F4011CE24DF0F65FE3 FFFC28C8BD1CC234006369F10BEBE664011DF5415A6E33D40136E21173F8AB6400E3EC 4AD83702E4010001C87C721AF40020492311FB90640046C0A5C9D2DF03FE367B9FC79E 0053FF6B17262FE40F5BFC929B3508706CC3FF7122B999BDE5A3FD9112253941364400 5C9E97AFEEDD03FFEACBD0FF02D2C4011207FC304A14040081EE9F3BCE9584012BF394 EB6C07B4004B7580600631D400CAE5B2E84F2B13FF42010EC9816A24003B0DE1ED0512 43FEB76C2743D06B040056796569DBCDD3FF7FF3E351C73EC40069E280C9F67843FEEB A0A98252C0A3FF5940A85A7F0C8BFC6CD5ABA0E76D23FF32D7EB2DA181D3FFA0F866C0 1719D400BEE8953DA9D8F400A4524B78EA1524006855ADE32FDCF3FFEA2136D3A93F24 00122A48AA71FD3400A7CE6254EF6074006BDE1EE8182D53FFE20E548834A66BFA3020 8221137E03FF88F49A912A43C3FF4F146BBE790A33FF640AEB57B3872BFE68FA7AC8B5 6D14001D8E309A406343FFA7A76DA0890A53FFEE898207B5DAD3FF4B9012C88C176401 19116FC0DFB763FF31E06EFCD74AC400C15209C24888D40042E2E42841DD7400110DBA 15D5DD13FFDF2C9C0690DB53FFF3316570385313FD615D9C863CAD33FFFCA0E3DFF1D1 0BFDB7C460EC36D6C40009612D71B7976BFB7375C46F3624C40020C552C1F520F3FF43 BDD8EE5A6E0400130ED25AB3A884007D45CCCBEF02640022BC52E577CFF40054F9A441 92624400EE091345248EA3FFA4E9A591D09BC3FFBA6ABB7F470E24004F38239F6AC744 001E2DC0B3FD7CE3FF59C94121AADDFBFA8DD34FCC185843FD53F4E417A5998BFD2DCA 3BD6668883FEF4B6244F8F79A3FCE0F579DF6A2453FFCC195165B48A43FF1FB68279BE C18400D4265A0867EE2400A4CEB32E5FEA54010D0D7895E9D613FF2FF153DCC490C401 07B33B9947CFF3FF8A053222400B440051BB64F9856F33FEC8DFC5A0DB9644005E5A11 FA48E79BFDFEE1561B085A240041A5F8296CDB23FFC9AEDFE8A7FEA400AC33A243FBDE 93FFE67022DFE528E400F93679145D107400B0CACE9048728401340AC33D66E2540016 6282F17D82B401113461926F3A340071AC84C180DD9400FBB0BD214A7483FF6FCBEA91 8E7584001D3B81F624C0B400EDE2C785FD1124010597BEDA6C8314006F13F8725CA164 007E21C695811013FF31631A1F6AC6E3FF8364B19A87718BFD687CB7880255C3FE2D9E DA81ABD36BFEBD082BC3D39283FEDB2C2D95398283F8AEBF24CA466C040037B475ED9F 1B13FFA8C04A9B7C267400FEA91A090B3D24005095B6FA217EC4010A7BE01CE29163FF E840665128C124005FA40E7FE59893FD2C0B9F0D37F7C3FF6B3B953A268AFBFC99FCCB 1B5530C3FFAA5C8659CF21E3FE3067B437A73B6400087FD265F09783FD70D64A4092D8 B3FECCBE9895F3EB1BFE04E0A7465F08E3FEDD136AA0BB56C3FF5D03D6C8F379740094 FD0712B90724006B9ECE28668CD4001C64F5B39CEBF3FF290D0A525B9563FF3DF7D422 2E5C040026F15832579A03FFC8F82FA9FB0FF3FEAD5A6B8D55A7FBFF019DE699BAAE03 FE61C5EF81F37103FE3D57FEB1E6AC53FEB90D335153C23BFF187858424CD0C3FFEF96 95AA2A3A13FF6592B7E4991AE3FFA55C695692DBD3FED7CB422E0A02C400F12C13EDB1 4783FE0EDCCDED4C8D540057F957C956B4D3FF91955DC3FD26C3FF189144161BC9A3FE 9FBC38F7C992D3FEDD4396605241CBFE2562341F6F40E3FF35CB463C6E604BFF0BBC5E 75A43D83FF9C3CEF5CEA62ABFDBA39F02AE96853FFFC44CAD15576B3FF0083624BFCFD E3FFD49467B7359DD4004653A30F0F5FC3FFB1BDEC56431A03FFECFEBF006294D4007C 91FC42DBA943FE4ABF2200E4D463FE587BDDE4D066C3FF91F55043A9C6D3FF41A11034 F19E33FDF808B21179D26BFE8216EBAB2B28DBFCB4695BE56AE87BFE653EFD075DBF13 FE59F6C83F97EA8BF98AE994D7A77183FF84637E459E3633FE85E7996C7D576400951F C4EF403FD40051B25531BD112400B2B443E20AFEF3FCF57A498BBE63E4008B614ECE00 48A3FDEA28FEDB065DF3FF9D159318D6558BFA388D29A0FCC983FFF1DB4833DFB03BFF 21B8DFBF62CD840004865B3FA81E83FF6FB301541DA1E40088FF5B129C0F83FFA3C3D4 371C80A400D185EA1F767E34007B8D3AFBC82AE40110237BDC5E5B33FF73F8DBA2BCB8 4400B2B5896A393CF3FFE624817FB242A40074FBE8CA7DDD23FD8989078FD52003FF3D 427BE8FA0C84016280CA7A8E0FA40168054EF89B01B4011372D058986D2401181ED19A B920F4004D56B2B55D9C340080B74C8C934CD3FF44FFFE736002A4002F02D1A23475E3 FF11562C9363D02400800AF88527DF140016781004B1E28401283112AF0991E400E8AC B9986C8744018381D234CAC2440123ACDFFFA2F874017BAAF2D245583400C292016262 2CE4010EEC36CF81A0B3FFB3899E67D921340067D666BCA13693FF3D9107671B9DF400 9B01B134251F1400246AB14C1B4CE400F565E3EFA5A134002E5D8DE2872E8400827849 B02B0E43FFACA85BC3FB61F4008EFE054ED4646400BE49CFDBC049C4014AFE7E32366E A4012CB0C44D857D5400F58E52152D75E4005B0B99320A5A540057D25290B6C66400D9 42C3C174530400987EFB166FFDB40028FB9C4133BFD3FE336EB7B50708640039F0B84F F1612400454749772C37340075F932079342A3FF0F68C177CB607401083A314CAA4214 00C7E6423BF26C5400DC8C6E74BD4164006EAF7799ABB844016AD34146681234001411 F42498AE44010BCA4A92A564B4007DB909796DF9F4003E54D4E7EF3AC4001F5AB3C022 2A74003B8017A1A88963FF19E02D9133ACC40085B372A3234B23FEE24A36908B682400 DC265A6EC91453FFBF928E871F9834010B1C4E5CD9B12400913085491D042400ED0B7C C0F28B04011B14DC7B783DE400B418240BF7D3F400BEBBBB201FC3F4011B40324E31F7 B400054CD4DC0126A4000994EE9DD594B4008550E22A879474006CA0706E09F964001E 661B38CC3043FF26D10AEC4265C3FFD5ACCA39AC2353FF7367B8B8C416A4006F0BF9EA 7768640012C2B5E87CE5E400CD83D6E3466F04005C26C3E42F0634013DDB6CCA6A62B4 0111FF8D4515E1740139E358974DFDD3FFAA0BDDACC7DBC4011EABA41D3C36D3FFE78F EE20FBCC34009124161FE7B0E3FF9EC9A036B4B89400E1A0D19FD6DB83FEAEDD976304 EDB401089DEF4BCD278400CE58AC1AE660B40150AE5330378D2400E3E4CDC8DF0CC401 6AFDE49696CAC40136B90F6DF73DB4017ECA2A9D6A77540083FCA6B8F083940136E75C 05646FE400A610DF0B43E8D40113FD438AF452A3FFD8949F251490E40068A176DC0F30 740192A6639EF353540191A62C1E3BE334013A38C7AEC7CB340140296D73C4026400A7 CBB8811ABB2400EBB6F4C3B122E400218B2C47E70C6400C26004E948CC84002D5B1575 F8F0840118222DB8BE829400CA95D18193752401800F65DA9790E401463BAB02B22C44 01CC9BDFBD93C044016293FBBB3C844401B09BE2F5630364010E1B3946F6AFD40136C5 ED7EDB2E8400276D7D5FE80C2400BBAEC92E51E29400000C03C738E70401076143BF62 13A400ACC0D4E23DE0A401488C5D4B43FF5400D9164379A2CBF4011ABA59B81705B400 897D6A9510CA24011D1AFDE9443DC4012D5CEB9CF0D4F4018F97E471BF6A940166FD7B 84848744012BC1BC153BC7D400AF5213BE177CC400A593D02C41096401145ADC87AA29 9400F1940E80BBDD840092164F87C062E3FF9395F8D247A22400CB52142711773400E8 6D40B6D812F40112ACE878867274003BCD8A8C92A154016080AD77B3F68401369A4708 E9E50401385C93C7AA018400EE99F845381F2401A0B8AAA1419CB4006F1D438CFA4CC4 0133F980E493DD0400CB354E62BCD9E40091308C768C8A84007EF9F7D623AD7400AD38 CD7E8BBA1400132DF859F37B94010FCA20C742E6E400220A8270E446F401475378E211 CBC400934F90A105FCD401614BC1749FB8B40117B0F01D712524013C28D25AA0988401 56697C721A2664010BE248DC29EBA4010A0D1AC30ACA04014246C1824CB574005432DE 0D102BA400615B3AB2F5CFC400EC90DC8A8648C400E775877114797400ADC46DA625B7 740034F5925DBB7D3400994A12C77D16D4006DB2364361030401102A4A8488939400B9 84DFB561C3B40131D0633C61D4B400DE2DEA963115C40174B9D87CD880A4014040CCF1 9524C401627286BC58C6A400226BFA4F499CD40147A518BE0189040051D155B067F644 01006D967719C5340053880FADAEE9C4013CD25CB25B83E40013DCFB3D20F5F4016195 8E0A6FB46401411304BA937AB401A767CE0D16B8440141E55F7181D6F401B1A85F8CE0 B804017317C7353A1EE401B18250176A500400DA85E765EDB034015E1EB43150989400 F47F8F631C3AF4013F41E3E172E9D40051BA9A8689FCA400E15EE66A94F5E4010113D4 005F310400FA716D606C7BB4004E1FED873B5254006461072ADB1C13FF38C90E5F9D13 23FFE8B69092FC4CA3FDF40C30348AD723FFE152551A4B9943FE9CB67B67903C14006D FB4365F490440003EB9E50456AC40116C1474CDE75B400A844978E8C4CE401504F8EB4 F8486400B8A2FE344A575401223AAEC6F39933FFEB060CC86CE8640044CDAFA147D163 FA37C1924BAC2503FF4D16DF7325E70BF94CFFBB490C20040020B1D18C7CB363FFA419 A4016C6C5400C56A96A53994140015ABD3B13BC104007237169AD71C83FF7C9D0F20B5 B17400603F29A83FD404006D85CA30899A44010EB12EE48970C400B9894395E9211400 3563192E1AAAE3FF0D596FA26F7133FEFA7FAFC6DC0994000B63F2F1362B73FFC88FD0 7DBCF273FF313D88F670D4ABFCB3A81482620B03FFF02263BCA696240021670617E7AD B400630C21394FCDE3FED7CEA568F008B400EFE8CD3CDF42E4008AFA6DA40083D4007A 3CCEB2766243FFC7FBE2E502597401130AE5913D6853FE24535AA1B4D904003F086D2A 0C92C3FF4F5458D1E044D3FEE9A3DC10901893FEE92F50AA735A33FF7A1FAB0EF6AEF3 FDB53F6DE75FB4F40052A55CD2DD32D3FE789100F753083400CBC661992FC023FF928F 3A9050082400EA6204529AAFB40044412EA6C6E8940078940B1A1AFA54009A188D0826 48D3FFED78652BBF40A3FFD780F4CBC210E4005D0CB2AD3E68E3FDAC9284CE32FB43FE 48D16E2A29F263FFE1FE340A4D828400006D005603F8F3FFB1D5420AABF353FEB40999 FFE1E8D3FFADC3264C240CE3FF5127EFB32173840050AFE54D8BFD23FFB275EB84E9EC B4006F4113A25BB173FFAB07D0E546941400CF8F56CA4580B4005B391CA4D5D414009B E43F692D354BF903FAFBCAE2F3040076ECB693831AF3FE2C864BD92720E4000E9792F8 1E1023FED49477A89438C400AB637540ACBA23FE3D957CC7F01E54010048CFF35AFAA4 00B93225A67B43E4013C2759D5F40504009AB8DB472D80A40132D3AA8FEE957400D538 FFD609E80401219383A9B3E2D3FF651B7C6AB7F5340094453F320F7C03FFA943ED0F5E C434006D8D392E7B8083FE5044C23296E9F3FFF09A059D7D978400E7F82B974EDD4400 E2CB39FCB3FCA40040D9883D2A2EB40067A5444C2AB063FF676892506EA5E4001FFD10 7AC43AC3FEEDD868742885C40039272263ACB1E3FF671FEA81EEC01400B5FC7EA7424B D4003FFACFA76EFB34012BFD9F4AC052F400BE5763EFF12324015162C94D2ED2B400AA 8C044A0748F4011636AFEB660633FFB6E092F4C75C240030EAA6FD2A3B5BF898E4B8F4 78D003FF6521B5DCC77363FCE00B909C239B040054A93D1D90CF5400150A1C820391D4 010855CAA7B727C4006119A54E80989400B5B3A208BCF1A3FFE60647B15BEF340081B6 8B11838A34007A63CD88B96C94010BCE0C64475D0400A614530C2801D4001B692BB3D6 AC33FEB991082525DC23FEBFE65118D28094000CC33B21F48D13FFF2F79749E48CA3FF 84896A79147CE3FD0180570DBBCE24003FB665B1FEAC14006DC4C4D2C65D2400ABDDAE 7994F593FF670D14349E3CC4010E2D0DA0D3E16400A3298339BEA8E4007E4C36525B35 C3FFAE9BAB8A29138401075C665844BFD3FD76AD83DF6EA3D4002A28B9A2DBA0D3FF3F 1C0AD246C723FF08CC839671E9D3FF319C954C5073B3FFDE6A72BA1F3123FEE191DDCF 7C87A4009D6A8912697473FF53DE3D0AF96264010834EE5976C6E3FFFF7B1A483E1124 0106F660988D8A0400532F037E3C77E40074850DB0A8BC340087BB9C584DD753FFBA1B CBD08DB453FFA5D63102439784004D1793AC906203FDA8B6FF1FB68F03FE95381DDF1A EB740018A2015CB206B4003A3EA227D00154001FA2E39A2EBD13FF728AAAA252607400 206EC32EDD83A3FFCF356D214EAC34007F1169CD3AF5E3FFE70D62BD5188B40075427F F169AB93FF9495F96BA71E6400B8F247FE8CD0B40040E3BD07ED416400861BBD94E997 DBFB77404DAF3EEF44007EE8624C00B2B3FE9E259DCB404F64003EE00FA72FFA83FF6B 1E90716D0DD400F59747A8239233FF36EEA2ECDCB544012324954553052400F15CABAA D1A364014EF41F4156D16400ABBADFBFE501440131AE1A7F074D7400C406D56D38D304 0114ED264AB8EAC3FF328206EECC160400831314C93E68B3FFA4ADACCBC1A8E4007E8F 3DA7330403FEE6AAED8DAD594400307788D3152DC4010D594F64E00EF4010FF2BDA466 4C64008E7E6BF4A382C400C955ACDABD39940029B6B7EFA727B400A7524B2766C10400 0E54B889BAC66400CFEA1F60E9C2A40045F1D7186EDB44011E362B4A4ACDE400B4D426 395C7564015C3758C6879DD401056F3FDB43FBC4016F879FA3222B2400DCE4AD2915E2 94012E5DA4C19183040011EDE76C6FD7C40074D3629130D1A3FE5334B448183564001D 8C3A04E1CB63FF38B19662002AB400E2072E3507EA5400AAABC1C2620D0401533D06C1 6E736400EEF6D752902D64011A6472739CE814005EDB2BD81B6D9400D8F534FFDD1C34 00BEFE2F1E5F0494012743E76A7BAD0400D67B0C280DC2F4004D815C82122A53FF543D 21E7E1A923FF7773061A3982E4006C57C51E3219F4006D8262FC6DDA3400480FE7FC91 98A3FF646BCA9719342400D674CB03071B4401007B7C549AA2040119E89AE7E8E89400 2A587EB5415E14013F74EBB6C7D3D400F199916FCD3BE400BBFCC13B185224000A517D E94CF884011F6D268D19EEC3FE915A8E2B9A8944006C6D393938A1F3FFE7D7ED8CC424 23FFDA92BDB9DC2FE40015545511E63AB4007B5269AA2C83A4000D8A4A499522D40119 CB06F81D91A40038F34035643E840148A03992872904006DA8F098C92C7401339D9E4F 5D3174009980ACAAF3F98400AC88C396FA0A5400B86DF640DED0F4000E992A99B15D34 000D56A0169D84C40096FCC98CEA9443FF252264CEB99FC3FFAEA32ACAF78004009CD4 49C4A7CED400CB578B52D2849400B64679018932D4004D332BF01E6D1400A9D6287C1D DFA400605CE1A6800EA400E3BDCBFF9883A40043E8C443E07E1400B46A3ACAC3B073FF FC1D2900893DD400E8FD8EF7CDFDD400757BE1C9D363C400C6CA57B52F2613FE1A893F 84B57FE400E5B0DD5EB0BE23FFC4651570177C3400C9AAE08BEB3304004A23C136571E C4014604F0415FD284002B8F82B0882F4401646A2B929314C40130AB6E8BE07E04017C A574C8C771A400F3D066344030C4014E455895B3A2D400F51AC1456CA2A4012D771C36 D2D2D3FFA4DEFF497D6EC400CB289B3D999AD4002DB98174C217D400EE896F14225FA3 FFF86BCFFBD6EFF400C08FBA0D2F03E3FF9C0FB8E3BF3D63FFC78AB6B899A303FE99A7 437CF3C223FF6B262FFC67E5C3FD3A3777C2849723FF60D7CBE03C9543FCB52B1E2FEB BC03FFB10DFB28D04503FE0A72AD87244004002780A98289FAC3FF17052B19E3DF8400 7B30C9AFACF4A3FF7AC6517CEB19D40087A2E48159D503FF06DB2662E781A4000973E3 D136142BFD9F73051C156AA3FE05D1C2E0C8F1ABFF93F8EEF6E9F873FC21F4888268BA 2BFE80391D6E07ABD3FFDBC79FA2DA9553FF6D6A6CA3AF11E400AA923BE2F36033FFC8 8E2D1A27E1140016DBE942AE2AB3FD62A69113DF2153FF279525E31331E3FEB093861B 3A2533FFEA530899C80053FEFB38E5494096EBF712B06E7F27140BFF27CD07D2404B2B FEB9DBDA6A7B3423FE5A656346D24A73FEA6224861F063F3FE4142FB09B6765BFE0342 E41D904693FFBFC3F66AF9CD83FFFE4AF8B6F208D40020DE26C6CAF583F9919B9E9813 C8A4004394E1FFA51F43FF4B0A3169227A53FE94ED96ED5E972BFE3D4815440713F3FF D52C790A67201BFFC653C1056AF003FDB8313793F1A9EBFD67AF7E5F0F325BFCFF59A5 B4D02953FC7AC81BB0A0A583FF0D6671B7D2D2D3FC9F0CB836DB65340038D52BFC2995 33FD8026981C5F3AE4007566D2F5BF5A83FDE99343137AFFD40023C7E22778C913FE1E FD7BB530B133FE4DD8676E47A223FE80D0DD3940E26BFE030145D330149BFD94496D68 0B2393FEAAC861B15DDB8BFF0A60869DCE8CCBFD72092EB43C9983FF48505E97626D33 FFB06C3A2C67BDE3FF80DE97F90AA8B3FE3356366596B6E3FF31A69FDBFAF953FDDA22 01A7240803FF54B5B681AE441BFAAD2121AFA620C3FE79A33BC4EE932BFE6EACA0A9CD 3DC3FF27A1602B7609A3FD632BC230FEB4E3FF1EC34CBFBAC43BFFB8B47160376003FF AD29F9FFE69A1BFCCC7A8073224E23FFA8F4ABCB255EE3FE5B4559B3E8586400925D0E 18E05E33FD22AD5D3879990400AF0984EE1C66C40032F48482A9210400B79B6C61F0F7 53FF4673BD7B3F80040043D9995FA1F9C3FF38D352F34EAE94000A57B0F70536ABFEBC FFF62B7CC7B3FF398C8551038573FC3EEAF3DB857F43FFCE9F301552CBC3F9448ACA06 196003FF9A7A9E87A3F723FFA57A343961E423FFF90C3BBC6EB3C3FF26F93334098923 FFE7F1593C5CF173FEC4D79D6164D923FFFC7E79C166B543FE9313B6B738D934001607 2F751371E3FEBA196F9C3A2604003F04766D708FC3FF1E34168DC186C4006E8AD04EEB A4B3FF4D985721B84CA4006F01282108CD63FEC3EE2C5B5FA6B400046CF95894A9DBFD 33BFA729813F63FE8E00A70821360BFF292816C1BE42F3FE5A364E4BD697DBFC35C482 7CB6FFC4003AC2A1F833E0B3FFF74584927E39E400E0B7D8B4C83E0400072F787FD965 C400252AED245FBC03FD3FFC6D5BCBD953FF038D45E2947093FE4E6FD258312873FFBC A41E1CEEFA53FEC66388C13E09E3F92378418046830BFEF5067FE62A659BFE0D80153F 2CE683FF26E9CB0A27D793FF653D8CEB527113FF3C3EFC0D9C1903FB2E3A984C5A8184 001EE5DC7F11C1D4002D07CAE9C34334003A7E3CE60AD993FB1473ECD2D738A4003855 C6DBBA3B23FF1F323598435603FE31B50061680A2BFE8B02E13AC3DFB3FFC7D62C1DD1 20BBFFAF772A643D9423FE5BE677DE2D5ED3FAA81D24CD0676A3FD19BF7F293F3DB3FE 8F8ABA10602B23FFA7DE2F5A262F13FE80151C9AB50B740070BC1C61A258A3FE540241 AE382A140085C5A856B6A8A3FDD4A35C13F705340012DBF201221673FD7C109649A929 23FDE08DC402A35703FE46C0635C8FC39BFDFE560D08CE9CABFCDFE813643672E3FF27 8C009AC8F67BFE27B683CE65FBA3FC9E81D47D2EF383FFE3B83D4CC757440023344DA8 811B040000E70B3D1DAF93FEF2A04A8A5995B3FF69201827661313FE0ADAB435D0E803 FF4125E01B124C2BFCBE092C8F5898B3FE1611BF7753446BFEC00AA5D4D4B6E3FF171F 4852B12483FDAE912440F96A63FF5A74F6CBCAD9ABFF554176EF100CE400187027D806 84D3FD76E9574E3391740021FD48B386C173FF3BF3C334D7D3E400CBF894A6B87CB3FE 2D80DC1D5A2C4400C17C89F055A66400321A64EA5C4FD400A7DA4282A1A143FF16BC49 12571DA4002BFDDF2B2DC933FF1950FF34B005E400097D915EB8680BFE7333E22297BD 33FF87A19C11923B23FE3628D72E41E394002E7823381B3B53FE403021880114440018 E22234CA91C4009D32170A28152400DB4D21048BC88400839668A58BE52400EF9BDF69 C3B6C40070BD78B47AE0F400F965B3170F6FE40053F959FA06204400F3A51A65E58604 0037BE633D81B93400F4502692EBFE140034284C51AC0E340104D406C66F6C74003FDE A99C17B964010721AD38FCC8B4001DA8DB09C31A1400C3979F8273C9E3FF5A8FFD2065 07A4004A9CD0482AC2E3FE8639E855F250040054F3CD3238BB93FFD66D88D50F816401 18B2342D9407D400E37C9986A09574015AAA3A898D26F400C732B6CD1791A400D289E3 18E9EDA3FF8F5FB02D8D6B14001AF1F06C1493C3FFDCF1738658C3A40082D0F2580375 0400261D65561C3DB3FF95401DBC4567C3FE7E262EF35652B3FF565F839E417484008E 3F544DCDA69400B221C025964234009A16463C218CD3FFF453E0EF08942400FE7C6578 E89B4400F85C1B748FC1C400F1B2DF7AFE0623FF5E317D5C70E0C400D41E035ED743B4 00287F2F94B0A2E3FFD5658F0C6ED573FE21216E9A428C4400A10D9BCB0BD8FBFA84F8 F061433954003C443CC22DF2B3FFF704727E6B3DC40021225719C282D40062D2C7C0CE 539400CBB7CDBBDF3EA40049A071F7B2A0F40123B60A1A988B24001713A03811F36401 1A6DF2F1296203FFB6B96B8F69915400AC52E04897A9D3FF93A3D7B3088453FFBE83A8 E9697BE4000459E31662BD23FF0CE84A826188E3FF7993422CAC6FC40080BCDD143EDD 63FF5FDFB92C9B3C64001950470E11FEF400EE8E89A43D8264010AB023AA53087400E2 6DCAB1DB01F4004A190933D88D04006DB6B357CF5D23FFD545F88B65B174003D1B1C36 DECFC3FEF3BD223CC0F5B3FFC5C251FD3F1AF3FDCB84284FA7D3740046B08AD6E483A4 00055F33F9B3D2B40090A8330A05B113FE23BAA7305F3014010AE49A9A45DB54002E14 5823471EE4010D6D0726429804008949A293D0A31401525BAD394637A4000F8776751C 656401392B5261CAB7F400D40D75769994640120D9615CDD0564002536A4C043F90400 CDF0EFB76B0F84003D829A6D97CEE400CDA4D0CC7E4543FEEFC7350CB818B400AF208F 022DD934004666FB648EE8F40116D7A838CDF424004D6515BE8575E4010638C3BC3531 13FF3E8B7C115D4673FFDD6727D08A0F53FF450C7E92A68524001270149E1780E3FF1E 612586122CC4000BE6C33B797953FE538FA30C294EF3FFC0538B2915AA33FC056B73B2 F46F43FF795616EBD2D09BFBADBA5305D3C903FF8C0E5EE09917A3F936BFE29D4E6A03 FFBC7A9C7A2DC233F501285EA2CC0003FF75486DA01129CBFE213ADC45E39D53FE902F E65AE25D7BFEF2FAA1CC38DDA3FEDB4DF672F82EC3FA494BA96B83B404003C8AE370BB A753FFB6CBB37A4989940098A457388A9943FF2FBCA133A7C643FF2B0DA2B8D28EEBFE EF60DA58F33E2BFD37253474C9A5EBFE26EEFC6C561BC3FE6A886558093EA3FC1C3278 97083F6BFDAA410C9A57F75BFF1D34129818B00BFDB5C95C7F9B60E3FF621DE3ABD99D 13FFA2CA586637C3D3FF5C360B92EA440BF979715B395EB003FFDA3AB3B7CE72C3FFA5 BAC3C36A1C73FF76E94535A3B8EBFF23A4C1ECF0CF63FF20A177FF30B61BFC5EEA5253 FD56CBFE1BDE02B1536B5BFFAE90F58A33E9B3FF2C03E227AF6B1BFFFAF9423D60A5C3 FE51CA9519865B03FCCB9444C02595C3FE0D7C50BAABAB23FEF7A0869F3267B3FFB13F 38CA2D77D3FE0E74368DCDF874002CCBC7D9E71E9BFC6897E641FD1B43FFF1E1A7FF75 974BFE9F7EE0628E0FE3FEA7BD74C4639A6BFEBEC55167A52CEBFE2B1EF5CF6958DBFC 21A922F208B79BFEEDDC52680DF45BFD9796F254EA34B3FF3BCDFCECB033DBFD6ADAAE 5A0997E3FDCA7AAF20EFA7240004072728949764001A33AAA1958283FFA656CA369E92 13FD3462A281380123FDC77D334200DB6BFE5620CEE31577EBFAB2192632526A8BFF84 CEB4EFA5CD0BFE417C12A810AB4BFFD043E0E099E953FDCC51F1055A42E3FB8331EEC0 C6C583FF4F08784BAF455BFF2CD749FE61C62400384D06463E8263FE28F70651DEB284 002976731E1C0873FF0AAA186FAD69E4008C2B3DB884691BFCC51CADF71B1A04003796 592804D413FF2265330BC83B23FFFDAFCD9209290BFC589A6DB4CA1083FF442F5CC5B9 F603FD27B3ED9C7E5CE3FF936074E108B42BFED5C737ACEC7BF3FF9693F0E6BCD0C3FE A3AB31D906D484004E5501A6533853FE91047B695D965400132BE2F4BCC2D3FFC3965A 33E04E84003CC266B994AAF3FFE8F2E1565EA3340060022ADA2DFB43FFA1A13E29F6C8 04003BF04E3205F1B3FEC21E407CDF9FF3FFCFC22B7F814FB3FAF42612ED3D8603FF54 67D1732E01ABFD0F7DA439C536E3FF6F6A038DEF6783F8866FBDE0318003FFDFA728D9 60CB13FD325DC4378B4BA3FFE858FAB7CADDD3F5FB7354E990A003FF69BBA6776C22DB FD5DFFDED8051283FF7FC1C80AD93D93FDFB552F464F5E040063931FD4C81B93FFDBA9 70203AAA4400986EED32CF2FC3FF13F47615B70323FF023B7DB9DC0EABFF1D1FA2C6C4 A70BFD7FD119FA96C74BFE0B2E6FBE399D53FED59B5EDB7B6BA3FE03E7CD162C59C3FB 7668B22B6B33CBFE058FE9F660E5B3FCB356E25B401DF3FFFEE2B421F567A4001488E7 EDF7BC13FFC03A5D920CBFA3FCACD0DDA1425A03FFED7B38ED2994C3FF977C425E2252 53FF5350FE475292CBFF4D0158505E16D3FF0203C6E6604F6BFC879F12A43D60CBFDBB 4AD753B96E4BFF666A529D8BA6A3FF9B705FC86969DBFF6C5E78D9E8D303FF49915901 6D2C83FEB853F639CC1A23FF1B26D48662ECC3FF73DDD8FD18B8D40001BB343E5FDE23 FE606EF5D6C72D54002E4DA56B3D9E5BFD1AACA0C97C2A23FFC9A6C499D5870BFEEC90 FC0A680A33FE7E2C64ACCE782BFEAA6FA853C06A5BFD90E9B45EAACF03FCB193023337 801BFDE0A4BE6B75B463FC9563F45043AE63FFDF759084A31BF3FD0E15A9C29841E3FE F79BBE57F53CF40037F986A30C4E54003A104138920E93FFBD7B58CA4C0233FD07221C 71001A43FD3F1B94BA814BABFEA932E16B94CA7BFC7000B724428E2BFF8D1117E5DCB3 FBFE0B49F7DAF7542BFF8C5281F1FBD5A3FEBD8E572A17C383FE485252FD81B3C3FFEE 91D3102E71ABFE13235EFFD747E40083956BE4F75563FF0FF245272D94740054A0D8EF AA5F63FF37CFD756ADE754008F70F8917E971BFD3F98D26BD044640023DA7964D7A203 FEF5DAE70ADBB043FFE66D2EB5F87E8BFC243EC0252708C3FF71551BACBA7933FE4083 8E147895A400076B9B6FA37A0BFD514B42641254A4001CECC5B29979C3FF715EF3B102 94C400945006EFAD6D43FF3434ED086416D4003524926C0BC9840111ACBE3EFECB4401 411A8A57174304011AC581BD01CC04014A90D9DF6F0A8400F459A69E45A8A4012589B9 1078A904006BBE5CDD2B86C400D2DA7363042303FFD1B1E44440B544008931835D4AC4 43FF867B34C4609B4400AA4D6E525B147400069C32803782040104BF523D45A0F40053 537BA58C0F7401181D0FB55CAA34004490C4A258783400F95BFC668172740010CCE720 6BBD2400EDA5D7DB4647B40059F25EDF942C040134C0BD5D3F3BF400E11ECA9D1FB7A4 013F052A1B4A4D14006910A51E1E0D840061E5A0A2864F73FE6F68B9FA875343FF94EA F8FDE42583FF96F13E0817DFF400981D2005B73964007574D6FCEF3AD4004C68D0F28D 444400040A1BCACD00A4005D1752F37FB2C4011B0A492F4A2D04011D0546C02362F400 F15C9BEC4B0EE40017ECCD077F82D400E31DD856AEB1A400AD717A4AA66244008879B0 84B071B3FDED7FBEF13467740071F61400E9F2E3FFD5276254AF4623FFC052E63D357F 83FEE002485153E0940104428894573533FF1B4C8EC03CC4A400E9A3E255E50F7400AB C8D035B75E2400BD19B1ACAF04E400D68A00EA934A940104DCB051ADFBB4004D1D1799 C61714010A80862475DB63FF7818ED8D7C7D4400C50E57F5B210F3FEB7DBE628FA03B4 0058200002EA9AB3FF431C32CBA55BB3FFDD2C10B278EB54004DFB2982860A940003B4 0254F096F4005EA985A3BB7B0401192C27EC51CA940059D9CB7CF02EB400A558CBA332 D2240125AACCE6635324011C91028A93495400CC951835DCD0340003578C4FEDDD5400 069E6A87EE20D3FEE3EC757976E8C3FFB0BC7F4ABC5F73FDD41BBA98AE3F43FFA54B5C 269E0193FE8CBE4D0E6A272400A8DE17A69DF3B4009558BEB45DCF24011E3599AD080A F3FFF3FE14E3019A04015A6824BB6A1F7400A6A304F7E2ED34012F599A7AF435140092 AD23170EED84013BA792DB1A0603FF6FA105042D22B40101CF0B1A341E44006554E6E7 6C62E400E9FBCEC6B43BD3FFEF9CE007D73A8400D754703AA9626400815BC116FB1164 012319BED08D0D34001AF8E1857692D401301877D3CB6D9400F229FBB4994B54015ED4 6D9622EF9400AF92A28E3EDE24011B184AD907F434006B86DBE274A6F400C60158ECE0 00F4006D653DCE90E6F400BB656CB8058ED40006377BFD0E3DF4004904F04EC225F3FE 65C9AFC130DE93FF6D3AFD529979ABFDAB760E52756103FEC4660EDA43B7FBFE1DBD1E 8A3C71B3FF643BC5091F3473FD180F9FEF7C9A640039411909031CE3FF24379E487A54 64007746271251CF23FF17933E7A021D040038A390D1CB06E3FE053231988A6C24000A E84241EDBD53FE8A6DACD49EF6A4005F863EB75E0FA3FF92E9C62184AF84005FDB6FB9 B45B53FE324CE14E4E2D03FE3C2947D19EB3BBFF4DF700A678149BFD245CB8ECB305EB FBE2CCE7A7CF91E3FF9EA56A59F125E3FF71CA279BFCB543FF292331559F6623FE229A C821D79AA3FF2CEA7961ED1C24005E50E960C09924004E04AC1368AA53FFE26E191327 4283FAC1EE95DDA7D503FF8F17C5C4423FC3FF1DFABA37157F83FEBD9417EB8CFEABFF 9D424C4884E403FEDEF99F158A85C3FA384C28D1B17713FBC33BFE32580EABFE29DF6C DD507664004F1546659E6ACBFD561E8AD6AF7BD4002A12666D069C23FFBC13921E2443 63FFB8DEEF112650A3FFC285BD7ED932340001756C374D7863FDB4597F3A8B27F3FFEE 3B91316D604BFE83F7888274F983FF61C883E4CF93EBFF2D72DC5C5A9A33FE9C12D3B6 2A623BFDD81FB229F26B73FD2195994361EB63FF20FCEA29851A23FE2F07E88E143053 FF48037D53D56E24006D2A178D1DF083FF080CB1F405CD43FF76DF207994BEA4004D22 0F19385FD40029B42255BA9733FF638624CF0FBF9BFCB32CA4F96F5C5BFC35F0E4EF1B CD3BFF29D7CC34456FABFD1ED85D2603C8DBFF5A9356660059CBF846CC403B557E0BFE 826CE5C1C0F923FFDDB9E616F115C3FFBA6B73EC67C284007DEDC6FB63E9F3FD6FA4CB 99D75D7400D634DD4AFD9713FF66E024DBFC5A940058331DD17D9973FEF51806AE8660 440059CD73F5A1DB8BFE96C4BCF9EE7A93FFDC6DE991F5D183FE7B533F0C0652D3FFED 91B8799EFDA3FC93303D814F86C4000B49FF3C638363FF85BCA9709DCDA4008E1078E2 F02CE3FE83DEF3A944A4B4009C6622F38C1114001E3D81610EF26400D5DBB8A62FE713 FF66B2AE884064C400284992398F741400CC2981EF52B224010D58FA87CCF08400B07F 5895E4F12400EA19A3E4FAB4740020FF5BF90BA25400538F61300F6733FE682F641305 8543FF6A585916148CCBFD8582FD16DF94C3FF068606FFFC28ABFD16438D117032A3FF D6B40BA0E877A3FEBE6B296A4FFBC40094DFCE55E0C7E3FFEBFC7134046AA400DB5563 7B26F663FFCFCF2AECEE66840085F997E5AE7573FEED95626BDA8394003067B065ADDF 43FED5DA4400CF96D40064B2B8F92D3FB3FF9038C0C41D518400603464BD566983FE5A 392DCE85E2C3FEA42C13C2D978CBFEE498C8865FB5C3FCDBBC46F4BC31C3FE13D63EE0 BDB654002F9953CC344344001DE43D546D59D3FFEC09216D4A53D3FF3DB5FB2832A4E3 FFB70FEB029EBB04008F2169C20F0DB4006AB57E7EDDCCF3FFFA50B74F6E9C53FB0984 D622B3AC03FF8BDC4F02641B83FF257E28BFD43B33FEFFA9271A9B41BBFF5804E1233A 66D3FF5DC49218FCA943FE3E9FFD11AD5B83FEA1DF51D058EC63FC8EEBBD3C87387400 B3818F78D6A9A3FD9408A453C16D74007929C1148DF034001A35F0B922D5740003FEB7 2B990723FFEBAA98431554F40007B9E653055663FDABF2702A4773F3FFEDD3A2FF0F86 7BFE61465956EBD553FF9214781051189BFEABF95DD582FBD3FF4E920E214C5B63FC76 F16581E0AB63FF0718C111AAA113FFEAC59D63072593FF5BE129EFC1B1D3FFF753D059 23462400B42D06D85D38E3FF6DE6FEC38E0893FFB424CEAED15214005A8A8E27F8F494 002BB87E559236D3FF601E3B2C5F399BFC859E1584A4361BFA1BEBFE5167A9CBFED13B 3E585341B3FC12E33A356224ABFE917F0EE177CAF3FE5F13236799CBA3F91D01E14B74 BB04005390501B7B2D94003B8EAF65B445E400CEB9B7CB4A9933FEB0BE3C5643512400 FFD84C8F456763FF938CBA2F7FD9B4005FA25E343CD423FEF26AC6E4EFDE4400592224 033C3BBBFE7907BB6EF1893400048D3F72BCAAC3FF10F07E0E92D004003503D1DF256A 63FEA7FBD29FEEA8340069A2F4ABE3E964002791B1C85189D400F0E5B615F753D3FF74 06A408E5DF7400E5500A6E2E4894005346C0A9258AC400F678CF2A3DCBA3FF84916B33 989C84002B227B30DC2524019C4ECB499F0B2401BAC7C42C0FB7A4017B7B842205CD74 018E527E3114CE840121A6A2ADC533940135F62362DB0A8400705DFF67B06EE400D1AE 0733AE8403FFF279314F856F8400BFAD520190AE74002E372A2AE81F740127DB2A5725 15C400E2FCF828A32E04018842D8266BABE40138E876C204704401A79B691AE74F9401 26808A85C612F4016BEAEE4DD9FFB400B8A83F3FE846E4012D832758F5C5B400926683 C33499D4013D8ED765D58A9400E038CDE6E23B040140F9782F4AED7400885276F121AD F400AEA3CBA38BFF13FFC1C943D8F7757400898B33E5EB315400BCFFA6D89CA1E40156 2DFAE9EA6374014B8D56F0BA2A640131FE2A61BD0CE400FBB12EE5A3A5F401120DF731 E7AB140161CADA575ADA34014735230F197EF4010B18204143E824001E71E3D1580FD4 00E1735746C2EFC400BB07D0ACDF32F400BA4C77DA7D9363FF45C9D26D6007A40108B6 48176A34C400C1C96C4820560400E3A1E40064509400951E7D68323664019444F6EFAB 256400995BE7B33105C401668CB09FE81404012CC4546EAD1C2401182A4E87744E4401 09EE9F5F3A0644010F383E791731F4004D0DCF6D4B8594010BACCAE5CDC823FFAF2FB8 826EA20401064465A1134F43FFDA12E65DD8B4B40108BFC6179A0504008E8C3C39B8A1 D401001A195363ED340137AA71038871E4010EAE1B7DDCA474012D3827FC8137D4017F 6ED2E0A96D5400ED59CEFD96D21400FF3E5EE75AC1E4013A293154810C240120E40102 B5BC0400CAAB7F0EADD334000E58F57E935EE40033F0DF0BF9CCF3FFB0FBD066669E04 0071DB939F29E0A4000C6F49E2F559D400D25D7E8E1F1EB4007EB0D953CB10440164D6 5F06168B3401520F0C5B663C9401925C12F76902E400AD9676DB0A28B40196F907DD1C 557400E8F915FBB0AB94013B5D4361845BE40093B2DA4807DBC4013C2A6E73967E03FF 9FAFA89E6DC7A40122FA139C1B011400DE76AD2AD0D7A4014EC99D981ED00400E01B62 98AD942401730CE51E8C083401511533BE451A7401B0DA61D8A54F34010D5859002355 B401990E611BBB32940145D3A7D73279A4018E95D3008DB5D400DCE517124A83640120 98FF705AB3240138EE986A766AE4014D349F7FB7A5240103F233DD31DA44010EAA765E E8C984003A0C31EA5A46240060A07421CE53D3FEAD078425F77763FFB3FA0CEEECBF53 FC408EE227E83383FFDE1DE98FA00B23FEC3D600079D014400A17A8975828BD4003D04 E118C2EF0401355D36180399D400C4146337D9BAB40149592C62066184007D3F60BABA E11400F37ACA39CED6A3FF8351C90A9E47E4005658486E1570C3FF0E67011DB7414400 719C2349A7D843FFC0B2C10295BB5400921922D53F4183FF589A893A410073FFCE214D 5591B103FD58B0C2E222CF83FFBFEEA3FF032DD40018244FD96656E40101FA36AD0279 5400E37478E77275C4009F348D0E2D9E840022A72EC14CCFE40036F240499F2E4400C5 AC83473416640085D431F22CB144000AB8049BF37403FC8591A901222AE3FFD03C3519 C26C83FFA7980B73BE4E03FFCF2BB137E7F82BFCC2EC8ADD0B5D140061F0042BB29A14 001B5582CD979C84003E33AC8DF744B3FFD111C58FB611D40136E364009C2A13FF975B 1DAF38DD8400EACE205D30BC1400644095B9D2FEF4002CBE96A4FB2FE40008F5DC56C6 4B6400146205535A2C63FE2F7E6ACA2210640025A50F5BB7082BFAA1E362E85ADEA400 42F29CDF9CE903FDAD0FFA351B40440066FEB909F7D273FFD32C2AA1A8B9E40058884C F57E5C6400BD228B041284F4005A84A5C15346A4008382F5DB2142A40109D2FE2B25EC D3FFE1CF9B0D643853FFEED074C31A2DB40068C3ED52048AA4003AC66A7712DF93FF9F 80B9BD694D93FD28DC5BE7DFDD83FE7C7E7739AC7703FC78D4F28303E9B3FF82195067 4CBCD3FE95A81A415CDBC4002D365B187C76C3FFA65E9C7B4C543401084F172B373D64 00D87E8DD37D17040122408A56BA45B3FF742481FE4D3AF40115C367CBA94D73FFBCE6 8B074B80E4006C34B64AFDCD23FF228F344A439AF40084D0A70B49736BFC05F3CF2269 38C4007A549C54E6A2F40025681D75123E8400F211B01A18BB64003AF43F230AECA401 1F8A43753CF66400F15B7C1106B0A4015062155323C5A40045DF70C2B7F92401246FAC 1AEF7F840090BC2D7E6BC4A4010B150739616903FFA2AD437699EB7400395BDA5AE7BC 64011A68C4D1EB79C40124B8A04EB0D34400A6AEFA3DA5ED5400B22E7B743BB493FF99 B602DC198F63FFF33DEFD66C0AC3FC1AB8274DFFC203FF25C7FC3398DB7BFCE7ACCEFA 7E3083FF9FCFD98CD2D203FE83515BC2E78F0400999D148D3C8F740035543F238D0DB4 012D8C4205B9285400A5AA8BEDB22134013085A34D6AE0740036FEF0806FFB04009A96 11A6CFF653FE6C5601A44D3163FFD27FCEC2AD7463FCBCC973472A64C4000FD7580BAA BE13FF1D346A3F1D0DE400542E92A8D85663FF05A98397EF3893FF9EB97E845774C3FC F9CD89D7502A63FFB26D3A4FCB1CF4000DD7698730C53400EE68DA879D56A400BCC753 59C03D340064452F11710B33FFA730459D6DD533FFAE4762136FA574005B311142C80C D400187698333297B3FF4573BB048F92FBFE0B860008D54F33FF3DF9E382F6DA03FF3E 601145DFA4B3FF8D3991BE1B09BBFD6C85944AC215F4005996BCD8C42344001401ED82 C4D344002FB8B4153A59C3FF97C0BE22AEA9C4011F1988A69EFFE3FF0EF9E0392E8AC4 0093A0AF6143C553FFFD8A62EEFFA993FF7FE3ACC9CF62C3FF3A040DBF18ACF3FF629C E58062DB1BFAEE926570706143FFCB408F6CF11CBBFD9018CE3486F1E40029A5CB1EEE 3953FD49DE72480B99740060233448ADD033FFC009A38E4A4374004470981A1A405400 98659BF146C5540021B1EDCB0C5C34003665EE97B4844400B54E9D07016643FF0E5896 50FD6793FF13E8CE645397A3FFFFB9EFD68C6A13FFBBEBD4DD67EBB3FF093B2A096F0C 7BFC19B1398F870D53FDE24D3758128063FA36417911BFC343FF70440E1144FC53FE79 7615093B4664001FCF7229F1D353FF7076C15F03A27400E319459AB95B540096621EB9 B9DF6400EF1780F92B42F3FE57068C0F6B404400BF1BA146E1F243FEC8205CCCD46224 0007E4184FB20173FDDEF03386C43C740042B437F1863EBBFDEF212D6EDD80A4005F60 AEC6C24C940018013486879CA400EB052ECC1056740032099DF8070B640116301ED348 55A400CE85852D9DE044013506C5C8298DD3FFF57951D175AB4400EC0ED82D8012D400 27D53817AD6DB400A8B63B435F86F3FE9E6C7D74663A03FFB608F6173A96A401617FB3 5601CD540163B0D7456F1524010D57322F252D2401121193311440840044FF60A1AEC4 84007F2E74C0D26EB3FF5370AB02E0AA14003F861E71E05223FF43080CF2579684009E EC9F1F7656D400381CBD72AE31B40138892701207C8401026C1934993A94018DEA4415 C280E4012994AA975AB4F4017CF858E56292D400BD401357AB65E4010994447A6734C3 FF9A45F58D1DC144005CFED971280B23FF325B4EC15FADE4009D3E081428B234002FD5 805D61E6940104EDF5A0F4DE84004A46B5CD94C8F400A3095AED96AD73FFF003FE6026 892400AE0F923FEA47A400D771B21F0373C4015370C83212B45401307EE8639EFA5400 F45BFE891570A40052EF6EF909DA54004BCE1A6F86140400CCF952EE083E04008F9E4C 83C138640026A51E5A3A9DD3FE4C8CCA727CB794004986D014C66334005D5CD45043A6 14009460BA6DC042B3FF5277C31BE722840118B4817C15D24400E4ACD0744232C400F2 360BC8F0F074007B7283C7974B54016C9426FE3990B4000F755A8AE499A40106A59344 95733400711E4CA1A6A144003323DC57E807940019144FB69DE294003CDA69E2217303 FF2ECD945E741EF400994A96E5C36663FF27ABDFC5F5794400FC65758B868F14000186 24F1F1BB34011ADBE6149C6FD400AB12F855FB503400FED9847188CB54011F5C5FB29D 12F400B3BAC1F1D9E8C400B7346AB2A45BF401155C7B09842483FFF1BCA6C6AB67A400 00334D35A5C144008232534D2196240071F8FDFEF12034002D0CD158FD6473FF5569A1 DBB218540008BB3911535B33FFB6288046FAD2C400903B6124D4638400301C77BDFE78 C400E401600607C5140069DC535E06FC9401401158F598375401100F3337D570E40134 F65F340CE053FF90F8A03B48E5440118EB273055CAC3FFD9BAA944472FD40091A06005 A30683FFB1CEE5829F3B6400F4552AA00B6CD3FF0C9B905C74886401188FD0A138FA94 00F01A8EA2B982240160A03485A3600400FE7B301E5814740174581116B112D4013B7A 60C0F1DDC4017F084F90482194007D12044A963484013126DF187E0384009987405284 6DB4010F104A27B33563FFD0D336F012D0F4006D0D4F326ADAE400581F4D24227FD400 5290913624F8C3FF47A50FADB30F93FF66EDFC40D9BEFBFCE41A9FE1270F43FD735602 C029484BFF24EC2337B2C9D3FC6B46A65566234BFEE11F3A8C939543FF1AC8FC581A0D E3FD360B7B92A7E7440057C5B9D288C223FFB9875E27CF106400E082C9F72AAC040003 3E38E94730440097614D2CA2F223FE34080CC130E963FF38CAF7B9D8BF0BFF4FDD353D FADA7BFBCE13BAFF0C5F4BFF847860185FA6C3FE56A32F7279CDEBF9A6D73F75288F03 FFD0FAAF9C529733FDA916501D10ED23FF253BF415AEA30BFCBF5932D45A09A3FF1DB2 A6C4BEAFC3FF4E33C10C5BCF44006247865C4581A400084418C984BBD3FF15C5867C15 840BFD09B578B42C19CBFD59D15AD4BAC903FE6D41FF24E50133FD55C82F32B36F5BFD 6135B3E273F6CBFFD646ED0AE6F4C3FCEE3144CBC98803FE0940F9A6631633FF04B98E 1F5CF0CBFE9F097F200A2E340019435E744B6623FF7CB34165365693FF71EF5213A690 F3FD6CB9C80B76738400785030F562D71BFE7EC2D70A479023FF2DA7747BE8289BFA20 0D382DA9C8EBFDCCD3123320576BFE10C102733EDA4BFB9AA139C80B4C9BFF3B7EDC2D B16DA3FED94C6467C58C8BFF0475DA4B951783FFD7BE897E32728BFC1B5CAA2E0D38A4 0017F56B42B16FE3FEF2AD74E030F463FF78B840E03D1AC3FFCFE2182D5427E3FE2EE2 DA5DB087E3FE0F38F125368053FF6734EDB10354FBFEE6CD383A2FD56BFE991F7B7771 F073FD6B26FB400910A3FD8CBD96EECB0143F7185CD4E286520BFEC6A89184CE1BDBFB 3B42849A7B136BFDAD1769AD727BA3FEE4A730AC99B1A3FB6FBBC496D98A23FF59A396 7E5EA453FCE15383920714E400210E722BC3D293FF644638D27781E3FFE7ADC8190B89 0BFF5B33147BDF11C3FF87B608B478ECABFEC8DBAC752406A3FE17651382F1F8FBFE79 208816234963FF9F6D220D8785CBFF21879996E762C400206873E9463CB3FFBB0A82D9 249B1400A4E173BC3A2AD3FFA3F51A5F97E0C400A84ED70C4A62740022274D9CC34484 009795730D0E0393FB500C5B16914303FFD65E7DECEAD0C3FD31088F496D9743FF6C3D 11E9F14C6BFEB9785F5A1A9A03FD547F59880500E3FFB58F8CC9AEC7A3FFA65C968844 7763FD54FFB1545FDD83FE1EBE285866FDCBFEDE2F1F45C6835BFC64A102FD67B84BFF 879C5E25EA7EFBFB73BA8431871E0BFF24ACB202403FA3FECE0B1B04879DC3FA3B9C76 02B6F30400272ACD12ABEA93FF31D70EE9F68FD400881144472A87C3FF3050D5C12624 64001E9CD39AB1DC0BFD923B9A913DD2A3FCECD7D0CCE26FCC001BE47B52AFC58BFEC9 837ABDA7DFAC001257D5AE4BFCA3FC9FF3395C05168BFD69955AE9E56953FF95A60533 496B53FCC30FFB650D7183FED87FF90BB206FBFE0EC8EDD589EAE3FE57EC617BDF8483 FE67E5B44EF0587400010764F3FA5E43FF2C88E827D04443FBC6C7787D2F3D0BFF418A BC9669B5EBFF4AD2CFD3F0839BFC21B303EC374B5BFD84C9C2D624CB0BFECBCF2423CC 469C001E4D9BB80F2F5BFA2BFAC1200C8703FD3E2F0D07A884C3FEA360713C99C3FBFF 10DCDB6CE96953FFD4D38A9024E7D3FEF2535223AE62F3FE8A57D3646383EBFDDE3A6B 819B34340000A3B73D5A6EEBFFBD5D16F0B54183FC8AECF5104E13DBFEE71373A65290 6BFF3ECAB808C71D4BFF2CCC3B6F86DD0BFE2A06ADFB942D2BFF927AAA9A794943FE5E EF4A9A68C0BBFF368F0EB9939853FFA039D77F697FCBFDBFF4A79FD16E63FFC20ECD74 60E403FD8D3C7E6080A423FE74380EDBF243C3FEDDA25D46A98A1BFD819F09E3E4248B FDDEB562DE574893FDC4135FE070B5BBFFD169C719403A9BFF8737785B1DB59BFCB82D 523A888A6BF9B7ACBDA255DC8BFD22C9827969D44BFF198BB603D94AABFD18BD57448B E08BFE54EBAE67B8C453FE3013249D3355ABFDA1C100659C8AE3FE62111ABEDB715BFE 2615C3C37855A3FF55197D75858E23FD9C36C518AED233FED4EA81197F79EC00241B3D AEF09293FE71016CC0F7C92BFF8D08DF5982E8F3FA88D1ABD488E58BFF16DA4A12C4CD B3FF603D254507C57BFF5402C71E62A90400054CBD488D1D63FF713FC565E79BA4006F DA67631C1C23FF1225B148448504004AFAF9BC9800F3FF664B703D5E34C4001C7D6830 9A6E8BFED49217318FFC73FEBD0A9C8A330C0BFE299D8B6F47F133FE5B41B0EF5AB26B FF72C3CA850597ABFB8BC32AF00B5804010A8F7014A823040109DA8CA7282744007891 E1D6B47AA400A81ECBF9362E73FFFAF18EBA5CB364007217320F894883FFA731E43947 88A400940D0136F42B04000D814F4A705FA40105B4946EA9B284008E0CE4CEA9A2B401 4E8602951DA4A400FA33617B76C2A4016B5A6AFA79045400D91D51051D9B64012C865E 675CC3240009D9ED9435AC94006490FC0F976D93FDCF251C62D223D3FFEE79B6C9EAFB 63FEAEDFC70545FFC400A9D3966DE99414006EDC5F24BA5BD40135CD4C016786C400B9 6C63A4E1A64401040E5AD8A5A324003D28E93DB1AD3400C29404A301AEA400B272AB61 EC91A40124608FFA6CB1F400D3514C504279E4004860EC45B5C103FF3D8989B7CBB763 FF4DC88F890D5114004C4BF1369D22F400425314CF1272D400139B717AECD7E3FEDF63 12B4BE92D4009A7F17E957B76400C7FA9696E8A8240100F2B70B97F35400027158D3CD F7D401312F2C6A6F401400DFEC800EACD02400B2F0CE1DF24B24000645988E3FD0A401 1DAFA09F06A8A3FE7397A544C72D94005D2386FEA28353FFB453121DCEEE63FF903C4D 2E48B0C3FFCB4D409C26FF040043B9CD0132A5C3FFA3C987EBCF8E1400F8689826168E 740002AF7F5A4D59240131C6C0928B8234004ACCC63A0073340127DE7C8257F424008C 12D2C969B6F400A63EEEA8787E9400B5355F343D5B240009E095D4E691740002CAA87E 3D224400833A3634758DC3FECEC27B68A48BE3FF5A6BDDFA8632E400692F7E39B50A34 009164A781987544007A4478C69545B40013B5EDF0D155F4007709B669AA4104003759 7118B3D6B400C6082AAC5E16B4003133BB1A4F97B400AAA2FD3C33F4B3FFF36476A938 FC7400E5A9DAAB187F94006EA3F4936B935400B8724C8BDA73D3FD701BC6EC6442E400 C1AC3657411E63FF66FDE3B09F9F540092B7A361F42DC4000EB43C48D957B401284D2D CAA0EF23FFE9388B0D2255E4014D105F22B51E34011EA91B0828AF040170560946F706 A400E5785B0AEB7FD4014AD961FA7FBAF400F1C70CF8B72484012B48EFA0FEC233FF91 50842C5DF54400B873921408B2E4001003E02187A91400C585FE86562613FF92D2EBD6 EFB0340087127C0DE1EBF400C0AFDB75A3C24400CCB1323C9E376400440B50FBF65374 00882D8869FB92E3FFE1C86DBD670F84007488808147B683FFBC9BE96E932434009EEE D6C4AA14C4001071DEA8C7470400FF91C916179614006EF84A285E6B340134AF06396E 16F400B3E1206B63AD44014159F4ADD0FDA4007E97677B4AAF0401001C257B9E2B83FF 754F33B248B9440025644830C6E183FBD1915C5BE47DC3FFC0ADA02D70C853FE9A5A07 6E80B2E400B0ECCE320606E4007AAE21D00A1D940139F01499C2A38400B673485565D4 8400F40207A684D8440014CC02C3E0E47400861770335793E400653693A4F1011400F0 D825735924840078862A14342A63FFE5EA795DEBC333FE5872873228BDD3FEC15659F0 32A7E4002A426BA29998F40033EC7C9517C6340014CBFF22511623FF0423E9BA59F084 00A5BDFA2170B8C400CC1215A11787C400F7CF61E397FD23FFCAE033457EDC14011860 18CE6290C4009B518695ABA3E4006007E15E8AEBB3FF58169FA230399400E1FDE349BF 26F3FB8C99C81E9AE514001C1C1A39440863FF596E71D9299033FF5E6A23BE416063FF BDD88C20A134E40049E613867C7B93FFBB376D6F131EE40100B4E60FA98EE400012A42 01D507B40128B184CA9B87A400248C85C6A55354010A9934A2177A5400404DEAFD0B0E 64004F15E3CD30E0D4005A540387C5DAC3FF67182FE2280CF3FF71193FF1940624004A A9E5DD6437C3FE3E31DD1C8203E3FF39E4DF398C2C8400690DAC78B79544009B0C7DD9 805FA40085CA6EFB78AB140018E17C85327D14006EA8405E71B2C4001C66FFDFEA81F4 00967E331586A993FFDCB93DD1E433A40058E4D6C3D3F1F3FF3FB3090E2F40B4008BD1 23DD93A244001CE5CE1B0B925400759B305A7CF86BF8867EB94AE1C00400A6B9C51E77 CC83FF563AF79A2E87B40097E331F6555664001A3A327DBCBD74012D2118F694E3E3FF E8F4E78B2768240144EE9F72769B54010C97073EA45C8401540DE11B6E5A24009B3A52 85785E64011FAF23089674E40096E5B14C3FA40400FF68D466B5E7D3FEF38D69274150 84007DE9025387C1F3FFD3873F5C5918C400B35B86F6763403FF8FC87125FF11840090 13B0071E7C63FFD407AA23FC6664000882820FEC9803FF28E3DC35907F93FFD7E1B133 1A91C3FE8EB597F9F9F743FFDF2AC793F41863FE661EABCC300F4400123746D10D8413 FED3C97E3E6000440050D50F1DD8E683FF5744643E17AF84009363AC10D5A053FFA070 2900404FC4009885E07FDB9743FF2C35ACA3B40F8400215DD7EA378F0BFC42D39579FA 79C3FEA99040D561239BFF30033F7AA2DAC3FE2E35037C4E635BFD0FC32D91B6C42400 2D16718B625113FFE697275D99BE1400E13EEE9215FD540012B07AF8ABEE94003BFD01 DAC09773FE229D3C090D46F3FF52667248D116A3FEF695E745F526B4000664E3E5575D 93FF26E4B65701A5A3FCAA4FA4DA6BD44BFEC068BB378D1CBBFE057039A7A96083FF18 67682D56E933FF4AE9D5D5111893FF1EBA2000B5E33BF92BA41E56BF3D04001A2D59D9 AC2064003253EA1B8C2634004B26036095FB33FD214E98C594B9C4005C7D18D1D07D23 FF7180F508A198D3FED895E53DBEFECBFDE7F16BA94C2D340001D4A8E78EBACBFF8895 7BACBA3793FE7C06AB13F78473FA098138A769FF23FC8D2984F6A53053FE55C1B50E9B E0C3FF8BE9CDEC5597C3FE5BD32D7B4A9AC400703C6F74E75433FE7D5EAC800669F400 9B7AA9CFE87743FE69675AD0C39DF40039C56225DCD3B3FE65F3033F3FE233FE9231A3 3B17A183FED15D9947FF5EFBFD32D07F329486ABFBF579F607595E73FF2DBB3DF0D03B CBFE417C9DAD3FE903FBA50FD13AA52853FFC61AC6FD580F440016EA54BC704CE3FFF6 9BBC7BCCB453FF01AFCE500CED73FF881B5FA769CB93FE74D3A3DC7E7313FF87FDEF24 6B6723FB9ECB23D3D3DE63FEBD9002916E704BFE269D466182D403FF54D5BC26805263 FE299A4A5EEA7B83FF6CD232E3642C8BFF58421E880F5754000EB02FC14BC8B3FD0507 587C27A3140013C108D9454403FF2873D307625DA400CA7840DA38D8E3FE523B544C8C D8A400D610F7FFF119940050F59ED443E81400CE359A5F761AD3FF6A7B6A9F64B40400 54D4CB12C1F133FF60290E3E091EC40023FBCD4863C94BFE353D5322905353FF900145 1C725A63FE1FC423316488A400222E2A4C0A6C83FE04F534E9228484000C228376CCCC 64000A112F68B74104003D2529B2293173FFB8E2919B8945F40042F6123CC2EC23FF85 ECA795370184004F0B2489272B23FF62184B05B44094005AF3D23B48EA63FF54E36035 87FB640071BB0197F10033FF73C7B880DFEE640093F6AAA8FCC823FF948C2C4F88E224 00944559D9D59CC3FF36F8DB907FD9E40036C50F3CDE3803FC50E99305C6CF03FF5023 E03124C97BFE223C91C62E2F33FF4E74C7A94E81A3FDF36A415480F6C40089EFEDED8F BF340044E66390C842840110DC15DC636244003EE77FB0525AF4005414589C8DB203FE 3FFC89DAFBD7A3FF4BBC53A8BF0243FEDDB90B1B98BF7400058D1F800EB2B3FF3EBC46 9B38B763FDC551A1B51F9EBBFDEC7E49837CE083FA345123648C3243FFC3F059DF0DCF 14000442064BFD1503FFDE5FBAD3D65043FE595087FBE259440064AB38D78B6C040069 E6961BF4D164006E1BC759F3D193FDA1162689450194005E281743E052D3FF663439F1 409B33FEC5601A32632A4BFDC75AEA9F7A25E40015612753A774FBFF3A52458E712B63 FF3559027CE2DC93FE47FE575947E073FECE4B2818AD77F3FF6B76966D7FEB5400238A 0620DE9053FF5406F26FA3148400B2A5E3167E9413FF1B56ABBC3B5F7400B5840540DE B883FE8CA3686525CF74003730427C0C6B13FE4CBD41533EB513FE8B2F5871AA4A43FE FAB523F80FB68BFB4ACEA17D963363FD061F9F719E41F3FFB65C1592C49FB3FA04BC81 4A717E23FEAD91004CD1233400432744E506A2140070A9CE8248A92400478053642501 13FF74F2C24168ADF3FFD22F46DCA95B73FEBBC6DFDCE54FE3FF8DA9789699CBF3FAEC 6360A43D8B43FEA87CD42137CFCBFE1B46337D260383FF784F5A26B3C5E3FEBDC218C9 69A793FFE01526D4BFF30BFE7FBA687724094400686FA987242683FF017598EBBF1E54 0071FCCA62A462A3FFD15805E855DA140107645655998423FF09FD3163238CA400F214 92DA56F5E4005B4B818047FBC400CC7507AD1AC3A3FF5DE089A9641D6400523FAB68F1 89B3FF71C715083A3BE4003E0528B95A0D8BFCEFBAA0A87FC5C4000A6A162FD07033FF 35FF6D4AB00FE4007FC34976BE3223FF4310565AC33CB40066E2B52D8DD5D4000A7B55 C4471D840050EC031E78D7C3FFFE7C02549B1254006E067EC2333203FFDC67268637C5 640072571DD2488AA3FF8B205F4CD19324005C3AA17FC82AF3FF2E3E429C5EB4D4004B C42A72A862A3FF0C7CB323D4C4B40059CC2B09F45463FF239A1C7623731400656E7009 8EC563FEF2AC8F50E76384002BC8607E2D8F93FCE83F7CCE9CBD23FF8697D43B5712CB FD08D41615250283FFA6CF20D582F663FE9C390D1843400400A7523C88DE6604005127 1F70CC4CB4010CDB5794E039F40022C6552B72B874002733AACA5C9923FC87191E0092 F283FEADB9C60C6EA923FE0977F46BC32083FFBA80CCB6FAFE13FF1255B7DFD9AAB3FD B7E0C46B570FABFD5CD7BBFCFE8133FD32E9E0FE073604000C8CC70A4EB394002FDC52 6EE08E940013A2C65EE47FE3FEB265FED8AC93340068056391475A340058A3D8CEA5EA B40049DC37CBBD1D73F89541FC8BB8CF440024493871831713FEE850A3BC726DF3FE04 C9559C993A3BFE665D80BA0D1DF400084A411C1F3E1BFF2B6D9B28E38B13FF689B21D6 F202C3FEE21D1919991843FF3F4A4D652F3CE3FFBE2FD2358DFA4400426032B330B6D3 FF7068D725781A7400ACC10C8DEDEC53FECDF0C0219CD014008A1A875F4A87E3FD62D9 C946627193FFF954A174BEC593FCD363C5BC79A803FDC749BC0E0F5C13FE99E18A46F4 3F9BFBC3E656855B6AA3FD86DEF3C409EA63FFF6CF45E65EA653FD70B1923EE143F3FF 2E8B4065C44C740068AE3D643241640088A3C261DA9314004CE94C16262443FF5695A6 E94EC3E3FF8D37E24F834FC3FDEC77DB4D1E4AE3FF1AAEDED125005BFD8E5DFB014B77 A3FDC5E3C3D5C3588BFEA534FC97721043FF59F23ECE99E1E3FED365FB916E40B40008 048749F1E5FBFDD33D0CF4EB0C1400945109A6D20453FF557C197123E194009236628C 7163E3FFF187DAFCF0BE8401057FF7817A6DB3FEB326C9152B966400C831F43FAE4C94 0025526D873FE7A40091EF15EB6DBB63FEE08A8F90D3A9040026D62D875D5B63FF3D68 C95CCD4A940038205230C968FBFC0CAB7AF9D7664400294042C2229903FF88B8A912BE 212400ABD5A6232A7263FF901FB73AEBD584008083C4DA95664400482EDB15EA81A400 9DA56760557B7400543B1995118D1400C3306A20075174003B6C387191000400B0C7D3 DB2AF1D3FFE18755A07790640072D4BE988745A3FF3629EC1C74F65400420B53A9768B D3FED8021760D6B224004B3FCF02955B33FF19C5A0A03D4044007089D1FADC6F63FF37 3641F5B9DCE4005F2A6B000EAC23FE8EAA76DD5AB9A40014AD37B1E63253FDA7FAADC6 4ABC240025F5376B95EA53FF5CBA7B8D6668E400DD7FA44E362DE40073124EC719BA24 0113C118451A47A4001FD2533E955E04001992C618FA9053FAFBA15D06459183FE812B 5EF1E80373FE0FF7BF6ECD4973FFE1F395C6436D23FF62D2D8580F02D3FECB76588E39 AE23FCFDDABF7E2A3C83FEEB7A087F71C1C4006213BF1285EA94007E3BE7492DA42400 53D4CFFB6ACC43FF33C0ACAA75A1C40080AF52294C3174005E50F525C2F4B400413B60 DC73F43BFBCB9E1E0FB8A02400152FF04D532323FECF6C8EBBF77783FE29CBF9C79827 CBFDE60CD405BE03A40039A9423439CC3BFE48A4480859D2240004C1ED40E10D13FF9D 0C9DB04C8883FFE5DCE0F7E4C7640027DAC1926CE164007A7DD0F36EF783FFB87881DE FE46C400BC7E929D8B2E93FEC7FD78309B0614007D399254212063FCBC1F34C7304253 FFE13BD14D561C83FCD4049A672B19A3FE2A83F3EB3B2F53FF1938A19DA54803FD5F2B 1DDBB2BC63FEEC088A1E87F904004F578F1B357363FF07C87C99BB8753FFCD72892EC3 068400AA94DD2917E90400B7F966F92F74240067A76A4F6CED43FF65779A26D03463FF 7E4BC0FEFFB6B3FD6FF2D361E90E83FEF71B39ACAF650BFDCA0E804359CD03FE00B5C8 65E497EBFE3A3C83B256DFE3FFB89D87FD43AA23FF6D803D528274A40057782BAE7144 73FCB666A666439FE400E840F5CED823A3FFE9C8A18F655FB400CC3AF8FC1293F4001E E7DBBB8DF054010E5BDA3E00DC63FEB34EFE3FD7E9A400BC258C2BF9F6940014B927AA E69D8400850E20E0445523FEDA97479FD1E874003693B396FAA093FF85787416537D44 00703DF07107ACC3FDBFC10640438144007C898C8B7D5F54001A5B5D1B1F0E8400FC4A 0278927C94000B9D972FD1390400B1E2C5F2AFF0E400A0A6959F1FE84400FE60D61272 42A400B5235B3A3E6F54010E13B2CAEA990400859B44C1CC29C400E7B9A54C56B35400 131C1E3053A5A4008288E99FEB2943FF3A34EB18C2CD84003D8BD6371A98D3FECCCA00 60BDD724005213E75EFB0433FF477911118A19E4009B382568D847C3FFB57703882D9B C400B00F6731D451E3FF81948325D434640076856674ACED73FF2696A601ED12E40079 028833911193FFE091F7A6C77EE401059494F5EE2F04008C9C266EE698640118264272 57FBD4001DEFC4D48C17A40014CE0FF4633A53FB11283E9A05E963FEB6A48312553633 FE8DD6AAAAC133040024F6B166952583FFF2128013079C43FF94291FC4D34543FF003A 907EADE093FFB847A0DED8D58400BC31AA342BC32400CA2C472D0CB384008CD9FCE1D3 3B43FF7C91366930D5C400921AC4C7C1FE2400616E747DD28E24003D078436C3393BFC 1B7E2CD54F6584001AB541548D27F3FF11B446022CB7E3FECC1C699C294F23F66EF37A EE4246840088F5540DEDE013FB413413554B47F400667F4C19F9CE64002D8DEEE8D9CC 9400476F9F3AF10B14006BB6B61A03E52400AA43FC978AD093FFEF703A8CEA50F400C6 C016E8A37EB3FEC372FD215872A400785EA2BF2098F3FCB73E1801772273FFF8CC9871 5DD013FDD5B32B36C2A4F3FEF20D05FCF48B33FFA4BE7B0B9933C3FF0393FC23DFB713 FFB560C9EE01C32400B0E3F1678FD1A3FFBE2C71F16BC77400345E3AA39FEDF400E5A8 D807C58D1400DE75DB79CEFFF4007AD6BA35866853FF6E082564FE20B3FF76A72B92E3 ECD3FD51607DB179EBB3FF041E281485A25BFD309401128DDFE3FE9AA79A6862D32BFC 37B260DE810E640029F3BA0AE042240011F21955195BF400B9048DFACBA303FEEC52B3 570C71A4011F12C812A8D2D4003AA73D7EACA2E400FE1D3D8080E7F4003C5DF77BF390 740114400C0702C823FEB216B70E699C6400B74A9C96F96F1400139688E715F9E4008F 4FA52B5CA7A3FF24435C7DD50484006659DF3B167CB40006982E92C0C54400C4BF1F30 065643FF2DFF81B177F30400DE46EB6496206400768E0FB7DFDBC40125CB0A292346F4 0048BAEE8F4486A400DA76E1E7D437540055145F0C14CAB400B2FB72727740240061CC B16AE46B3400BA08CCA0E8771400103F70EDD00664005DC4736746AC13FEDA0A8FCA3E 9243FFB08187B1D4603BFC3B2AD2B2270F03FF1CE05663D8FAABFD92386684962C63FF 793FF4A4F31883FD10E9B58CC804B4002E0AE0ECEA42A3FEFD4B62C2D23B240060E165 C83FD8C3FED9532C4223C2A4002883BE77B23AB3FDD057F41E4E6274000EA0A0FB19B7 D3FEC69370AF882B940078655C4E815793FFD231AB087437F400821C51357ECCA3FEB3 75A5AB3373A3FEA46C9CBFC9BA5BFF2CCC349078D0BBFCF2CC9B1959CC6BFC4DB14170 429113FF8091BFFDD31AE3FF47E529066E4043FEF81A1B92D82983FDA8A78A4DF82F23 FF13E82C97D4BD24005BD464D2E2EDD40056E3CECE4D3DB40004F49C7C08F093FD1B33 446F3295F3FFD1D53DB5536583FF61D9E525F3DCC3FF1ABDDA2988464BFF71006E1685 AC73FF06CD36C2FB82C3FA48266C44B04193F9EB6640AAE00B6BFE72975A32E1009400 38DA616586CA2BFE021A97459324B400193946E58571E3FFAB82F0C5611E43FFBDFBDC FAC05423FFDE5E78F1EFB2D400197233A958F0D3FE56AFF131964F8400194FD2DFAAF5 1BFE012F5647493E13FF9785D75B3A445BFF0A22C066193173FEB63B0ACFB299DBFDFD A7DACF09C853FC5F888F10F33E23FEEFD8CA5C78E433FDA954D9E136D163FF1FDE43FC 66B624005FC846CE400D03FF00DB137F98D373FF8649207A4B5A74005FD7A7433D3434 004557861AC09633FFA5A2B51EEAF393FAB908ADD251AC43FB6674B9C785ABEBFEF765 3FBF86BD5BFC70F4154CB95E4BFF57C761CDB4238BFB51F8798C311B8BFEC88F551B46 21E3FFB1B01EE320FE03FF8E61ACB897AB84006C652B2502A0B3FD255D0F38A5CDC400 D79AD79723B3E3FF8077B97BE62454006F45B3FBBEA343FF37B16B919F0644007BE460 FC82183BFE128B9C5A3814940009DA588E00E6B3FEC6299FB4199E23FFFCFBB87A5596 03FC59A349DDE79E43FFFBD05CFB0B3D43FF5D9770192F142400777919FB91FAF3FE31 BDE9B2B35744008E2BF8BC2F08D400198C7C4C6C085400DC65C66C91F6C3FF8A02CA7E 81D0B40043283BF4C4CD9400A1427889C15A0400F73845C0C4CD7400974195939F4204 00DC4075EA93E594001DDDBC266791040058BE76472A3CB3FE8F37ED24D8F6A3FF7E0E 3C7E1BD45BFD59D6D89547D1C3FF011436CDA3A79BFD813BE5FB655D63FFA5284B31EA 2383FE320DBD4D4A3524006A35B4F72F9523FF8F70A8C98F4F4400ADFF6C638640A3FF 7FCD40626B9F440066D6E7182D0F03FE9CF251A3E8102400278FFE713F9513FED9D22E B0BA58E4006C7588817C6CA3FFA4F83DE561066400689D72E96723A3FE62F7F7100E8D 63FE86FD204235A2FBFF17510F417F81D3F45F4AA5D7F32003FCE0A979EF7D0B740002 C5B196447153FFDEF01146563363FF95235A198B6303FEE9E2D10F922D33FF82549C10 9235A400801F6991CB09E4006691EB862A84D40001A5E6F2FE6A33FC1C9BFBE7599203 FF9FF9341AF14A23FF31AFB11D44D433FEF8A857D1F7545BFF7076BFC15555B3FF2E81 1E5E4370B3FD6C1E47482DF8B3FDF345B19C4C091BFC52D4C1777C48140085DD98171F 3873FB38DA42F9CD7C140059004D7D03C6440004E344C2C73FC3FFF413E3F3F76023FF EBE1E150DB1704000EF98FCCF0EE23FDFE79AB08A4E113FFFF7576465435EBFE55503E 16B8D1B3FF85A24E3041527BFEF155B2689D21F3FF156DBE21B5551BFBD586D94CF2C4 83FE5C8BEC80219393FF8DD499BDF992B3FF03F9AAC201CAB3FFACCDE9051650440098 B314B2FE24A3FF4D8EB8EDF37593FFA9CDB92C89CC44005E4CCF01D65C540034E5A392 573983FF7489CF63CE83FBFC1A8502644F077BFA4F8F2E8B4B604BFEFD90A0C522125B FA533D3EEB167A0BFF0B13BC5F597B23FD72D850C2E48A0BFD5D601613CDCF340025AA 49966A8A94001224F0A42A652400AD8F9D53FBCFC3FE56D199DA39670400F4C2F3F411 B4E3FF91EFA0ADB0BEB4006653EF664227E3FF0DA0F7A9E739D400624F4940013DEBFE 69FEB8077BEE93FFFEC3696331CCA3FEE1307071F07344001989DFB9C65453FE12F003 F7D4B684003DAF351503F513FFF2325FEB95807400C47C50AD2A68D3FF27D009C3DA9F D400C8BDE26E62C7140041EFAB845F030400F03FBA3A35EA43FF8A8C78D3B221240033 F364D47E7D84011B3E55A91D38E4013ED544B1D5978401053B4F2BBB1D74011D6E104E AB7D440069D51E8076ABA40097072D17FC6033FF37236A530B0363FFF0F89FA365D693 FC7DC749C67E6383FFA74E15E446F023FDB6507009D32154004DF7BDB4DA2893FFB357 45AF86D4740101CC4812B71C340065D3BA7A3999D4012447507F2F5554004F37284BDC 2E7400E505DC7788D163FFA252A2B296D754007D5D0D6BB7AAD3FF77042EB2AA6C4400 A6D6316A1E5E240009FAA020C4642400A57B66BCC97483FF44BEFC3D944F03FF7AF474 646B352BFCB6869CAA11A843FF07F1FFB50A0613FF63099160FC7DE4009F48853063F5 54008D008E45664B440060F2CF8116C1940002AC4B7A6ED224003672B2415CC15400E0 CAE5C3D3DB6400B44095774B89140041069D9DB93B33FE276469ADC057440008E4DF83 4CAB33FFB540C1D10F4CE3FF9ED899328315ABFE4D9032636CA5C40010A11DE14040D3 FF7226242ACA1533FFADBD4045EB0E63FF11A6942898680401109437BD3EFC03FF3516 7052F0954400D91F79574601440070ECA7B98E50340051C905A39CEC94003C75AC4631 1324004A1A285BCB80C3FEDCDDF47AFD3124003BAFE0A979C06BFBA90E941FE45F5400 1C8A7A2B3183DBFBC5FE1861B73D84000CBD031A7FD7E3FF06F735BD7A4A93FFE628E9 C424FF240064B9E67E025F04001972075F843CC400604F21E174CA3401080523722B80 14000987084A447E2400245963CF0998A4009ED84BF3988A04006D56902EF48C23FFE5 6BA89D092A73FD7719665BE9F843FE28D129FA5E1EDBFCCA47C5DFDBE393FEC828F4D6 B21263FA1793CBCF39BDC3FF8BA0782DBFD463FEC88E5B722F700400C19BC35874A454 00A44CC24D4F1E940117CAE0AED07D13FF87B3C49B4FCA4401273E2383914644001103 6B3B876E6400A24914EC91CC23FF7C7187253C9A04009D6FE1CEDBD1BBFC3FAF2641B7 1AC4005720C85B3A25E3FFC8AAFE268661240099A90B940892A3FFAB00CE1F3E1D8400 D8FA0C7862B5D4009719C6218EB8C4012E791D4E4B36C4001F774E0E4C98C401210F38 9040A62400A6C6FECC2E80F40120C0F86F7CCE6400070EC4C3BE4AB4006CDBAA4A5282 C400ED0EAE6295448401107FA8CA7B4CA40099320877ADC11400B6F34264DA8683FFB0 7B297D7A80A3FFFDD54CCB802B03FA49A98A67BD0403FEAECD7BB8E0F40BFE939B71AB 481103FEAAE15480FBE47BFCDB29A756C13784000B3FB0A6BF76F3FF465C7AE6ECFD44 00D1D3B5A8549C44003082AE828674E40103FF74433CBD43FFFB0BBA3158C444007F12 58D54EAA53FE5C587F04DFCAC3FFE514B10CA577E3FD3013FD7B5CC344000E747205A6 B0D3FEDBE14D866C98E4001F3CA6850469F3FD71D17D6F3654D3FE77685DD722C8EBFE 9D967CB4149463FE1E4BC165FF8B53FEF89D6EE048D0A4006CF0CA4013985400538170 272BCCA400194626251579B3FF5028DE41EDD3D3FF8E7BDBC1B40814005E994F226950 A40023C10B8F7ACB23FF526B6F705051DBFE347B82C51DCB13FEEB349D2A996303FE70 095BEAFF35A3FE918D7D3A15F61BFF53C77CF2905F63FF98A04CF627FB13FF035176E4 8B0433FF49FDEB785BE273FE50F783947D93D400E20C94F99C47F3FE2B288DC4BBDC24 0075489BBB8182F3FFF196F5A147FBC3FF90DB015DA9CAD3FF4F6C0885002E03FF6344 5F0DD5443BFCCB39DED7C9D053FF67B675F73A85FBFF06DEC440F3AE43FF759F6ADF7F 077BFE7028352FD06D33FF9E092862320933FE3E335038EEC513FF82079BDD190D1400 2C4ED7E9FA27C3FFA6F3E857C4A0640007C6138042170400A2E9B2251634A3FF12329D E0FB43B3FF2A09405C806F04000768F7FDAA4DD3FFABCE78720CA133FE8D8442B6ECD7 5BFE462A3239266A6BFD176252054A054BFED4B62AFCC1B9D3FD6091501054D3FBFDA0 65FB265A75A3FF277F2A46B3E2F3FDF1A680605339540083E3546F0DCF24005672A5C4 68BA5400CDDAFCA22EF6E3FE36CBD338B4B7C400C6A7A159460CA3FEF46140BD2E0F44 0009D11C17B0ED53FD4BC8DC776A90340014145CDA13CCEBFF18383E9A0B81C3FFE693 D57EEB55A3FF2928D4B5F3C004005A8D311326E4E3FF41D5FBC0E4819400A71A62119B 1FA4005FAF6F7E6F2EC4010C50A19B3513D3FF91EF385BBF1E6400D71583D5C53B8400 2828F4DE66A4C400B36A38A6534833FEC05B269C1B04C3FFAA1588C982E20400F1D964 54E021A401089854BB16C9340076BF180030C0040086D1A664208E23FF432DF79B00D1 23FF93EB0A4DB1F5BBFD3162E7C6E23A43FE4197EE9FF715EBFEB17E91EEDC40C3FEDE C669AA5FD1F3F80B463D78ADA404003638390371FE73FFA5BEA16EB8AB0400FDF89771 A0E9E4005168E3CBA0B7E4010BE1C58A249093FFF2108E6EE35BE400667514FE3AA453 FD6DCAC4E693B303FF7D015D3AD1228BFC0E951F40CA1EC3FFB9D0260EF9CB13FE48BE 03AB563A84000C8D45D5208003FD807FD593CAA9A3FECD4B3F51906A6BFE095703B42B 4A83FED6ADC4884D2C33FF5A8B1D118294640094E799E2D88C84006D4AB48C29F7A400 2024378C9D0463FF34AB3102E73F23FF4D048A00DDD884002F8FB2FB9805A3FFDACC26 D5D25793FECECEA971C04D3BFEE702ACA3B948B3FE76942C7777CAB3FE49BD5DC40CCC 73FEBD666CBC5FA94BFF197D903CEA0013FFECB77B31E7D023FF627DFD98FABE33FFA3 BEF49C012A33FEDA5FD094F49FD400F3C16E02526743FE21A4CE59A7AE34005E9D5C93 96A393FFA1CBC739B6D343FF2A478CD846B853FEC2CFE4BA7AACE3FEFCB408EEB8AF3B FE0C495769669DC3FF3E54767A4403CBFF07687235D8C8A3FF9CD70D4FB12ACBFDC264 73A2DBDBD3FFF91776432E0743FEFBC86B6ED4ACC3FFD41D5A370784840047CCB27757 AE13FFB8CDA7175E1FD3FFF836D904017D140083F1E68C4ECB43FE6CE9E442CECEB3FE 7C2CE7E545B8E3FFA2DF2391770A53FF5010CCB278C863FE11A51453CF3CBBFE74D4CE 322BBFDBFC9FF6AE0DC7DD3BFE66BEC0C74B9673FE547424BC075F2BFA29DE25D4751B C3FF828D7827AFDF33FE87C93B8E8C138400977F25A726DDF400562DCEC9F62A0400B9 29FCE3B3B2A3FD3AA1E70A810864009432740E0994F3FE1859146DA85FE3FFAD0EC3A9 FECAC3F893845B24C03603FFFAD23B6451E13BFF1CFA1E4F9591E40004FEC3C82BCD43 FF6DDCFB362F4AA400876DB5A4F989F3FFA1028275543B0400D125F92F7B0894007CD4 65D9425BC40111CBBF8B7E4883FF7EC9394845E2C400B9ED67A8FCD243FFF70E54CD7F 8624007DE82B4A9B31B3FDCDDE8C13A913E3FF4C02507BE050240102D5023815748401 092E809C622FB4006A3CC4398A95C40073CA55ACF78463FF208245915A3823FF848394 7CE31B3BFCDDA780502F0B83FEB231EF44B21E8BFDDE38B7BA523643FF741D86AF2107 43FE3E8C5B50FC0EC400898894816BA2F40022A37ABABC714401213F0A7A677D740084 CCCE93842CA4011B729EB6911D9400040A4B9A7175F40060B79613E8F623FCD4EF6EDF C1A2D3FF56684A68084A0BFCED668B8229EC03FFB77D11959638D3FE8C7DA1D415CB24 0032025913C6D8B3FEA49FED2CA22EC3FF7803EC9CE47643FBEC4102B38C7D23FF90D1 D859AC5DC3FFF1B74CCB3418A400D2502681EA85940097C80E2DC55064003604A9272D 8833FF3A726FB638ABD3FF362FE22762DEC4001CD403111A34B3FFB7069C9289C8D3FE AAC4A07B74087BFECD25FC6E8BA813FEDEC54F38D49A13FF0209B71752DBF3FF603BB3 87FDCFFBFDF89F46340A3B74004991492D3F93240001BECB9863D0D40017D8D5C83226 03FF57D82AD00E2AC4010A7FE330D094F3FE5574F2A24B6964005A570D99E1DD83FF82 76E3287B5D23FF03820724AB7D33FE87785075D80CB3FEF1B64A2393BE2BFDA1206AF6 08D393FF850958F98685ABFE31E47EA2FE12540015C84DB9850333FC8D9E0B63651884 004F904A29244B83FF973884858069D400292BCFE2F516A4007458DA11383BE3FFE8B6 E98F030AF40000C2E9234D23440079B258E698AB63FE23816C5762E273FE32C46FF9D9 CF23FF8E6008460ACDF3FF595FC5F5119753FE71779943191F8BFD85485F9552F8C3FD 28EDBF34A6C8DBFBA0B11958FB4AE3FF5043306D1E4003FE31FBDA4CFFDE840008A383 25845B53FF325AD0AB9FC34400BAD996E6C81BA400651C17458EB3F400B66A8D30EA73 F3FC87E57D027779B40080CFB1343BF753FDB35E989662F143FFA48225B6954343FBD0 F1ADA9B644C4001EA7761177B6ABFE64A3B7940361B4004AF81F425D60B400076E4A66 FE186400DAA341394534C4001E2C20929DD4740108F51BE23101E400AB69E9F3E89344 011ED1E3E3A9E0A3FF8BB79162DCAC7400B0EAE56B69BEB3FFD348CA8A36F564006B2C 7B601D6103FD728BECADBD3CC3FF51C98F2F31C33400FF6A4C96F2857400FE6E9DD64F 0434004FC963E6925BB4005B086D0C550703FF0242B088ECFCA3FF864F3F2CF766CBFB 2400EEF46BEE83FF2B71F373943FCBF7ABFB4C41D1000400013A845287A853FF370EC5 6CD2EE7400D1E0AEE8FC8E24005FBCE8A21B516401373AF810719F64009C8271508E15 E4011D3D991A296923FFEDC17A28A12E640048E124C94368F3F94B2EF4643E7F03FF2B B5FDA83DEE7BFD3B6014851CC983FFCA84C172579F33FF0250D82FB935040063AE4A10 A6DDF3FF54D62452CEF6B400064DAFB54A4083FE6ACDCE12405B44000C92F46DDFC054 002ED82368DCD49400F5617087B6AD5400A63C702C86A34400317C38E5070DD3FF14C5 A8A51F50B3FF01E0631AC8DAF40003852E53A6BC73FF962978DFC54453FEA6F1124164 E4CBFE82A5181C6B9C53FF3DB5909A1860C3FF74BA1509827563FFECB9530046DF43FB 96B2663F6657440092A5065D56D3F400404C1776C630D40045C0E76F2CE283FF8B7CBC 570D4E24010D43DFEBFD73E3FE26AB784C3B8D240043408BF574F183FF4CD93E3D41C0 63FEADFC3B95779683FE5ECA533B765833FF07DF96D15C974BFC835ABBAEF0A6F3FFE4 A76CA641E35BFB910D065C48F7C4005F82AD48479F53FE91C98087D1A1F40094CE61F4 60245400034D556E625854004E4BE7E10673840084E16BB13B80A3FFE32DC399FD72B3 FFDE2E97C38FA504005FEC2B4FEE7F63FD78D16BF9746A33FDD82BF5E7892593FF88D6 E251053B13FF7A70E9351826E3FF02FBFC9DAF4F93FAC201CE3DF1B763FEA96F3EC742 CDF3FDF497B507B1E7A3FFE3B7EF8AA37663FF18DF5C123A64D40038728CFBE20733FF 6A3793F343DCC400C25BCFC69174C4005AF097F6F6445400A0289883F299ABF9283D52 BAAB78040069B92F8FCF0CA3FD55CBA3EA434CA3FFAF9218A348C563FD42CEB1866A3A 24004C8F87B872761BFCA9BA2069E762C400940BDC7274A2A4005337C65F7A92140110 71087AB4DD440057844F8BB59E84011C89D6219C852400BE0A23087092C4011E57721C 67FAB3FF6ADA6DB01823E400979C10ADF645A3FF9EF94B7D9CF2C400585617D790B573 FD4E486A9C898263FF6EB2532CB4705400C681DB813E3E4400BF012FD017DE7400120D 6D92B0F2240026EE94D4DF7DA3FE74347FA506E123FF65D004E138B1EBFA3B65D0912C B203FF57600AAF6925B3FD0ADDAD0CBA84A4002824C2817330C3FF7DCADED576ECE400 EA000F1D1C82B40066BAB61AF0A9A4013098C295571E24007B1E58647FC14401042BCA FD7983F3FF74207C2CD83C5400092E7E10D0E03BFDBDE6B152DCE583FEA12D5D217C45 2BFE0B88E156074603FFBCA2AD51881793FF1BB49EC2FB6874007FF7533BA6E253FF9F 797BBA012A44002CA50D70FF0823FEE78DB8496AF2A4001D9563BDE39D04002CEF5FBB 6A10D400DEDBC4D33914A4007CB9F237213D23FFF3578F5276E8E3FE2D041C640EEA83 FE0A9D3C72C825D3FF9C391D8E0B1D23FF4A4B965C3FDB73FE5D89BFC689424BFE79E7 7CEE0B2273FF6671D325CA2383FFB743991B4DADA4001D2C17C560FE33FD867A15769C 41B400AC3844887A487400493A1B6A8201B4003A99227F6D88A3FF4C9893DD42F29400 E9DB538F380523FBB349D76C617424000377ABCC993763FEACC272F9A86DE3FDE2CC0F 1C3466A3FDD1D5FFDB403443FEEB907D6505C08BFBAC15F2FA08E534000D4A6015BF43 13FC837E9A8A168EC40086211F00C6CAC3FF096CD473E2AB9400A785676CC35C340003 735FB934C9A40039DA6BCDCACC94005D22CB0379C8F3FF75E26DB074F9A3FF60AE212F BD75A400212BF00605686BFAE2DF5D656B60E3FC346DE0F2F6FA03FF5FF3EA2A8DF363 FF7ABCFDCABD0FB3FF286A078E75C483FD3A608A87A5AE43FF21F482D49FBEC3FE8D4D 21F1E7B2C4000CD2A187F00A83FF2E89545877E574002F66E0EC752873FF2F47EA4C58 B79400933642C4BA1984001FB49596BF7E5400605FB85B16DF6BFDF3084FE9096A7400 390CC3470C2C73FB68EC080C67DD43FF99428EC3CA1863FD8A3ED12448DAD4006622C5 E395ECF3FB2FC1AEC73C0F0400BADB4AB7B2310400747C8868602CA4011AA0191DA14C A40059B3B6574DB96401135CEBD2410F1400981B31C6ADDB240103A322561762B3FEDC 91519D66B46400587A43746A5873FF2F58690605C3E4002ED399E22B5263FC343619F1 39B3C3FF6AE0CBD1CEF043FFFB2FC695C2B2C3FFEF915E98216BA3FE51DC2CAC56A6B3 FEE577492613E1BBFDE5783B661B0923FD6CEF43AEAA330BFEE1CC5751FFFC23FE1194 B9BD1C32EBFE04DA597E8B98C3FF840C8A0B3EE183FE362115BAD6B0540067815265CC 1BC3FF9FF381E92BCFC400B650E20E7A28A3FF7EFC63F5F46F8400420A8CCCE8CFABFB E3DE5A45853903FE157AFF361C1D4BFFDD920FCC82831BFDE53B456527325BFFA69F99 2C1EA903FE861ABF08FD9A63FD053672E2BFCB34001BCC74BF1A3CE3FEB25E45A23E75 E3FF84B0FB9D47DD83F869533238DA0A03FF24602BC0963443FF19DA53AD8D71D4002B DCBCADADEF53FF76D9ED965FC923FD886B81FC4E3C2BFEF211961F51A29BFEF0F76A80 538E43FCEB113551D1AD53FB29ED8BE868BB5BFD7F559B975A814BFFA730904B9F4CC3 FE2C0485AE93BB03FEE3D2C28AFA9903FF6F927A2427290BFDF8D04AB1761494002BA9 BE4C105A13FF692B989539D133FF23550824C5371BFC3DCAC8A47288F400244E3A0766 6E4BFF7756373B3CDB83FDF5F8F9E1E59C0BFE35C5E9CE4BF1DBFEAA6B748053076BFE 6135D910AA50BBF9E1B759E2C5E63BFEEF9A40155ED3B3FF511C4F823A68EBFE2A98BB 3C14AB34001CE89EE89DF8D3FBBE1CB045D9CDC4001E2EE787700E43FE961565D74D8D D3FF113E81DFC6AB43FF3A012BBD1F9A4BFBA971D43A8B41EBFC7E5B4E2301B743FE84 26EB846DB95BFF718D50A6FA439BFF154E506863E6C3FD351BA97F9D7723FE1A63E8B6 700CD3FD57E41D78908FABFDDC9039358EEC83FD61F048AD6E7EABFB6652FE21B066E3 FF1C5626F5D21723FA2F1CFB2A552843FF10E503D1B3AD3BFD07F1105E85F5B3FF9CFB 6C68BB2883FE59BCACF6F81383FF35A53DA68A938BFFF11400EC139983FF203C49B402 855BFF12B9DDBF03AD93FE304B0495EC841BFDF50B8F03C968140000BFEB3048845BFE 64BC39D2B941940052A38290720C43FFFEBC3EFC26980400ADF30ED6B4F4E3FF7BBAAF 10E21BB400774E5C3299A753FFB26C1013CDD804003F80D80B56A15BFE45E80C095FFC F3FF2E5A9010F203BBFCB52D3A28840543FF1DA2C7FB0FFC3BFEE087B0FA139043FDE7 B258462CC4E400FAA0012B26DD5400FE72EB48C21964006B26E70407D0B400A3E24957 CC8B340002477CFCC238C4007E590847E6A603FFC905634EBE4DF400A61380D25981A4 001CEB8A88D605F4010A74DCB6F32924008F4A271BB1F104014A807DD1DF033400E959 BC3CAE8064015F78AD04A0A5A400BD71C7313CAC24011E8DFD244E99F3FFE2A3DA9DAD 53A40052932C75EE0EA3FD8426B4483B98A3FFEE5742EE3485A3FED098AB9EE2C84400 B893CD216657A40080BC8E4417FFE4013E73F3577AF89400C68BA02A81300401070F80 A9675C14003A44A3B8ED033400B66E7E5FF46E74009E2EC015883FF40117682FD304A1 9400B70F3DC5CAE434002D88A202FE50A3FF11AE1E3F62AD63FF312E90A49EAA240047 1B52EA8D1F34004642E75F025134001F378207147E03FF10E11C2E79C50400AC94A3E5 096A1400D7D27453BDE8A401061047B8AEFAE40004980ED1B3FB14012DA306C83BF694 00CFE7CC41DEA7C4009BC22BFDC6A613FFD5ADB0A467D9D4010FA4B70958D0B3FE0F73 D8D946EB14004A5DA66E8C47D3FF9FB589DA3CC243FF8E3B16094A9F43FFDA97342636 37F40051F74F42FFB253FFC73BAC14A5D0C40104F856D6E1A654001061EF7D1EAF4401 3531DC4A940EC40048DB0401282C94012240BFD42DAA2400788ACCFC3898B4008CBDAA 2F4606440099046EC8CDA2B3FFDD709490D2F823FFD87168BA652DE400740F2E6780A6 43FEB62FBF35B89D63FF6085EC958EDBE400741E8EDC7DD62400A1A11879BFDEB4008C 5F099BB82A740023F25EE8F8BEE40081F8C70C730BE4003A667866382A0400BFE37B9F A319C4002208B34D5AAF04009411091B296873FFBD13DF903ED0D400C978EA3FA8C734 005522B01A391BA400A4EA46BEA956A3FD163FFC09BFAD5400BFBA741E68D933FF74AA 5290C1D43400A06A1384C584A400203C51D0861664013129B6D4D67FA40002D9C7C85E 36E40150E2DC0538EBD4011E28CD3EE929F4016B2EA736127AC400D2B27A7AD5434401 3E54E86D0FB25400D5B139CD5B7444011D918F82F8D0A3FF62F33FEC06ACD400A86EDE 473A8BD40008EB94DD21179400C7ACB4843C2AE3FFA7492E8B4BD0C40096EA59CAB72D 340003163E96CE63E40016EEC890AA63E3FF2EEEBF028B0D63FFC9499E609090F3FE53 3A78F726EF53FFBA35A26577DF83FE1FF415E59EFD34000601A329C891A3FEC66C0180 4C2BA40058779C89D8BAE3FF7D2BA39133FDA400B02CF85ACCC263FFE78C6B4CD78CE4 00BEB0F0AE79E303FF749E6C37CE6664003F58DBD8962AE3F6496D98CF50C003FECEB4 3150B39ACBFF33B83BC88680C3FE01B6698F61B38BFD9805B25151CCE4001A758E781C 8173FFC7480345D3AFB400D8A7F6DFDDA78400141E251DA21D240048C653487904E3FE 813C369E31EB43FF92F82C1B5831D3FF45DCC8F9B36E54002C3EA80F9A6603FF6AACE1 F06B2113FDA580C0CBD1993BFE821F31FBD135CBFDE993B54A541A03FF0BB59EB2849B B3FF2E623C8FF08543FEF43166CC5CA94BFC42FEE00687EC64000D3E6904FECFE4002D F5C821FE6D5400519EA90836D6F3FDB002FC288D8C340078640EF6AFCFC3FFB796EB38 71AB43FF388364926FBDABFC861F2338ABCBE400209D815597ED2BFF5D710250D11B03 FEA5D79CF8CF2333F9AF9740674AF713FBD053995C2465F3FE134965E359F663FF668F 6D8340E683FE1B317597BC90B40066C4CD68DD4A43FE7EA42A627BDD9400A719D88317 9F13FEC3E676442657B4005952F49DB6ACF3FEF9D4DEAA45B2A3FF151B0910F3FE13FF 2DA8924403381BFB6BA96127B5C863F80A29528DF23683FF385B8FEEC425CBFE56F7C1 1289501BF6D7BA66E11D7E03FFA1E55D2F2FAA740004CF9FD55C1AE3FFDB5EE234B1D4 F3FEEDE4793AD079C3FF92BBB1A55DB8E3FEB7AB87E7A16E43FFBDF778DE952EE3FD7B 99DF75032123FF2ACA38BC1F65DBFD2576D5ECFA0AD3FF93F0E116340283FE841965D2 4D2F43FF84109049C278BBFF579F5F96D4A0F40005388DB541BD93FC0787D16A171064 000113D8A4BAEB63FF0737AB71C169A400C0284555AFAA53FE4F1FFAC550977400E085 3479270324006687DB8238780400ECFE72CD7F4E53FFB3B3E122A24704007AF1040C8A 1013FFA63F046DD92F04003FE2C36D431A3BFDDBC642E227E2E3FF9CF2906BB40E03FE 0E4B9B4B2D9EE400153F39775D1AD3FD7B253BB46D0483FFF3A39A53120B53FE4F0258 59A80163FEEDB6ED166DAF53FC0685F917495A43FEBD69AAA40C75CBFC4411E9FADA8D C3FEE30E7CF1DF65CBFCFE65DF775DEC03FF25BF267171D08BFC2A8A24C473A943FF7F E382DCE83583FC1F048B75C0CA23FFE58FD7F87AB423FD5DA2341ABD80A3FFE779B3A1 AF77DBFB68ADC38D906F83FF0D0F884F4D4E4BFF4CCA9507B403ABFCE856DE16A7ADEC 00186BAABFD1C46BFD745664B2B9679BFF31E0F577817AC3FF6B16F81D4356B3FEDE4A 302E137F44005E68F60AB1E643FF0DE7E295FF7753FF4DFE6EDD979CEBFE51D381CC22 2383FA9A8D2B2C3879CBFD3BA6C70F0EA263FE8AD155E6E190EBFB6A73D73367626BFE F2012535E07C0BFFFC462285B5A7ABFF8C890005C40543FBDEF00F3D722903FD69A381 5D720873FC89A57D3251B24BFEED5EBAA2FF1C33FF37206E15E54CE3FF5744B7E11540 B3FF766AE7E68FBE8BFED2CC93740C67F3FF78EC65117A9ED3FC479761F5D604EBFD76 44F0269BC7BBFFBDBEC971E23E13FE98DA10BA43DA9C005771C6210DBACBFD56B9A7B3 4583BBFEF435160509127BFE8720A65EC0A4FBFD0D762686AB7CD3FE3A92E153C003BB FD2188453A1C6303FFDC74C57821C8ABFD5B92DA0DF1A8D4000766EC4AAC5A6BFE0819 CD079EFE03FF2ED7B30785A58BFE2E31CF121D228BFDFBA13734F5AD0BFD58968FBF91 E31BFF7CBAB7B85E022BFF3D5185CBBA9EE3FC112621D04E963BFF9C90B5E2DD6EEBFE ADCD529BABD973FEB13EC0AB9D8CF3FF3C9D0317605983FEF592AADF1E700BFA3CD56C D72FC083FDA885E4F092FF8BFDD67317F5E6A5A3FD24A5FA421CF4EBFF2E146D2D8BFF 0BFDAD299F7FDD277BFFD801B474F56AD3FBC15283A4F068EBFE26B4ABB605F2A3FD5C F8987F92408C002E231BFCDE1A43FF2714B7766B2D0BFE5ABD0E46D75883FF3943AD89 91B7F3FC99F279C96B1A44004944F67658EB1BFDAA5055421AE7040042E9EFB5407923 FF6AAEF4368C4584002C54631BAE80C3FC04F9DFB6F21243FF611B8D5B9D0AC3FC00DA 0D5F162783FF163DAAA55C32EBFFBA7FC86BE45E83FE053C518CDEA3EBFDB560D01302 B4A3FF525B87BFF0495BFDAC2B579769AA83FF27C4116FE50124011F32C2A1D864A401 3D425BE7101E040110A1FBC14295D40146385521F0BD040106C6D5F1320154014B831C 21F7FE6400F31D8E8FD03924014A60F6825A321400DAF77F10A9E674014CB91A6AC5F5 0400DAB138D12265D401586DFCA8BF827400E6E62C1E0B4A44015A2719086CE31400C2 0F76AAF9B9D40132FB0D5AF74924004D8E37BEE45DA400E91101BB5CC233FFFD83D57C A8C5F400F1AB6B7068109400884B6F531A2DC40167D00177C93A540141BCC3D7576FF4 01ABB25F5832A3140135A968F4D42354013C30A2E6464614006E9F3AA452017400C22C F3C64B17B4009526D10091EB2401141821201EACE400C9A1FC57C83404006C0A6E66F7 1BB3FFFDE1C3B7C6DBC40048FE2D961D0204011590676AFBA874012774356208F98401 1BCC49D191CA140099201BD589D0F4014FB163A8EA4D64014DAF91A9F8B504014B53F6 04C46A94005584FB2D6026E4013DA517C21BCDA400CF952249A7C9C40090DFEBEE1BE6 03FFD9BF3530BB57840121D19DD720C563FF34CE3445571A7400DAE2537FDC36440098 CDF09482301400BDDCB496F9AAC400FFD4393ACFDF540134E6A7600988D400E96A8924 45CEF40174A27CAD04BC8400BB00B4FE2C4764016D466BF80863240082386E1C7A2794 0129C815467FEF74007097DD44B5C3E40084CABA77C3333400A81319AD7231F4002815 B463BB7E84005C61D3B81B4854010F56F9F4472394004CE03B79B45AD400B60FA964BA 58D40145FA472CC89B44015A14DBD0BA4FD401418F1997063FE400ECE58A905C85C401 093EBA0EE178740090F09C5291F3A400E43D493B32FC3400241175938469F400892EC9 0B7EA843FFBC6E8B9FD11BB400E97D0C33687C1400A60F9C75E550240117B8D1AB6A1F B3FFCCA95D02D6FF940159444BC59A082400CB04B706ADDBB4015C6592906A4D040114 70EA9ACAD9E401A32C74CA8B94E400B340AD0C2BDA84018BEFC56351F2A4013D69B370 E58B44017478067F111FC400CC125D150957A40139D0F0E29488C400E16FAF33B222E4 0137BEDAF8AB53D4001BBBE46FC133C401269B080330D5F400E3686CDE907474016534 D6F769880400EAB0CD13D20714015587CF1B0C5303FE36103F548F20C3FF36CFBB903E 0163FE3987149946DD33FF7C8E059DC2A823FDDEBE979652A383FF742365A8488723FA 41DD992E78E803FF24D338D52767FBFDDC03FBFA80DD43FEC8EACBE101C60BFE5CCCAF 42B70293FEF055B3D483375BFE2203B66411F1C3FF235549C25C648BFE39EA92F740B2 33FEA7C4AC066C81CBFF35A79536CC6CC3FC046254271185CBFFA2009E63FC61D3FD17 771C4189504BFE3661EF0C1B69B3FFD71D19375546F3FF18F9BCBAA0DD24004BCB2D57 FBFFC3FE32F1B9415CCB43FE2DF3BBB35513CBFF8B2CF0724B342BFEC4BF51394BE82B FF2AAB685FF5E0D3FBA5AD6B51DEF1ABFDEE5DEF56D3151BFF0DB420E2B8E7BBFFC389 C5045EBD5BFF15A1EC09D21F73FE73715DDD24C663FEF7B8D273FA6A03FE705FB0A96D 6A3BFE4C17176A983103FF3E4E397C5325E3FF0DB252E6411CA3FEC39E687369125BFF B73EF39C6EBCF3FE19B5A6DDC0CDEBFE82EB16E9EAA29BFF26B30D6F4E414C0025AC1F DF0391B3FE160EA7EBA4052C004FD7CF5E215D73F78A2F3D1DB33FFBFDBC2D199F2E69 9BFC098BF5472D7B23FD5822ED7708F4E3FF0EE0DD2915372BFB706A469A6DB443FFBF 7F2F45C4487BFE8747454E047863FF5DA68EAEC1B7BBFF633765A2B53BC3FCFBC099F2 B19EBBFF764366A7F4494BFF300F97B3D45FBBFE85C92026D47F3BFF99B04DEABB763B FF0BF618E6DA5693FE277861727E206BFF032A70E3704EBBFCA43EA63ADA5643FF63AE A4F087AF93FF93D59C414F6403FF09FD42F567E69BFD2D317F3825D54BFC1BBFE88001 823BFF3EBE976321001BFE427DF24651AF2C000D12FF68131A5BFF392311C25FCBCC00 364EB410E84ABBFC6BE9E6042887CBFE185914E92A2703FE4FC3EF783020EBFFD54B0F 4B4FAF03FFC88840590BE1ABFB194D928B06F9C3FFB02AC185839563FDAFEAB2EA1107 44003EEB2F52748FCBFE9F08A7660A2AF3FFDAC60B2C2E0EF3FE1DDA7B34B40F13FF69 74B44155494BFE8347E72AB7B673FE542DF8AF60017BFD514F1125B90383FEE204327F E0E5ABFF90AB23C84D3543FEDD4893C10296A3FC4ABE4F6598EB03FFF54EE7FD00F6A3 FC1E5F09AE65B183FF855B37B79C1DC40030F524748A1204008B139A115311440042C6 0C56B9168400AF1F1884AF2B040021713C28662044008E89894E757343FF8A7A28E001 7104003E7F8C800136F3FE7F57B5232FC3F40002E43CFBD7D023FDB4A1B3C2DC6AA400 0F3C41E3788C33FE5DA5CF72DDD2740043AE781DCBD133FEE03968CD0F9AC400441D17 4CB81183FE3BBD1E44569324000311D9F7860993FD1688BC59936F84000F98E71777A7 13FF21C7F91CF1B2E400B71FD1EFB3B7140043713BAA4EAD4400EFC2B864127103FFC4 CC0C2C0EE183FFB3AA55698A5CEBFDB32A8D42E13713FD370CA9343D7B83FC235638FB E32493FF909B3F7AA7CC13FF23BB63C47325B3FE6BF86757E112A3FB9F3D1106429503 FEA5E20507415854004E700FF59D5E140064FB7BC99DE61400327FF91F930283FEBD31 F8DC59C404004D2F1182C03C640023A6C62BD982F400025113C6AA444BFE37B943D65D 0543FFB156E0B16A8C43FDECCDB2294EAE83FCCA8AD765F271DBFE84F70BB3D257E400 1DD2AF1F839B8BFE9D9C72681CD3B3FFE5FEE4F71CC2C3FF7925AF0C2A6AD3FFBA4AA7 8A0BD974000B356C28C02DA400551081E0D8E403FF5B0A7572D9856400857AFFF69C43 B3FDA81465C9B3E554003D8D150EF39B8BFD170F28CE3EECF3FF6D20CF57C56CEBFC56 64B004002823FD080608A2B01BA3FEB0B72D0A64AEA3FC358E7848156653FE9F0C1A98 2E6A74003DF693169A8AE3FEC29489AD1D7E03FF9C5990C0D90244008A26579CDE6F64 008E592B12B6AA74003500D5A8BA37F3FEE2B930627F05D3FF0104103289F26BFC1AE2 2D8F062F33FE0327F460EE546BFEC1158ABD688D33FC1766BE366C696BFECFF1BFFCAF 2843FF7F52DD29EA4543FF41EE03E4A98874004584B45C603603FB347DF42231C30400 D302EB36E76293FFB21B7B65F8FC2400A7BED08FD5BD03FFE23B15800E182400E67647 122DAF93FD8279FCDAC0E414007C942C26E079D3FFAB9DB52A39DBC4004A63F1E65AE4 63FE0C964505A219E4000BFFDB78D64243FF42CEC65EA3ECC40056FD84F177F013FD22 A38D58FF22E4006B238BAD71450400077799AB6E7F1400E46A862AFC5463FFD823B9CC 0692440089369ACCE21EC400FA231858284EB4012C7D0C6E124E040106902CD3788CC4 01371D5CAA5A914400CF6B4A3D217BC4011420AF7A133A14004AD53C1FD867C400B358 30E2876FA3FF94035DCD9AF824006A2DD6DF4B4A13FF467A86023AEF440088A8DAF39E A933FFC5DEFD677E7EA400E3B9AEA94A1064002BBC7E18CB03C40103B13089CF0C2400 1B3D33E094C1B400D065784F20D423FFD1FAA569C62DB400C79797036187140035F779 7CEC19240123CB336B8E10E400C0EAFE50CF4AC4012F7743E2166DA4004A4079786186 8400428888DFF8CDF3FDD9727B374574E3FF4FDDC90155FC03FF4DAF9F19DA99540071 794724D20784004D3813C3F8776400233F1C7AC3E3B3FFB58B2ED2AB4C7400348E715A 8EAEA401077FC75E536AD4010A72E02C9FDD2400CE5474CBB9ABE3FFEDAD552C2E8CC4 00C37EE5D5E35D24008E92777013AEB40069847439B48D63FCDD1ED4617FD5E4005082 23F2C3F0A3FF8E3C441B349323FF75328405B09D93FE424DE74840C19400DFC5997E07 F013FE9155D77589FB4400C09A24CFF38FF40083D32239F825E40096D899D94F27D400 B257B70F78A23400E79B4669834054002CC2DAA7910E3400F5D1959DBE0A93FF3A7D24 1666D0B400A5C91A60F087D3FE35D2C23567ABA40035CE079A070493FEF491E621A972 F3FF904617F61CF5C40025E11156E26913FFB5326470C890A400355DB8FA70C9940104 D992C7021EF40032980CC9CBB214007FFE051F7144C401140B7614ABCA04010BEECB6D 938DA400ACD78942C8E023FFC8DD14A89DFD93FFCF6AD1189E8493FE64F639AD2727B3 FF6E33A2D6BD7023FC744C9AFA6B5363FF5A95CF1F1AE653FDDF6EA483B06804008038 ED5BFE9C54006C0CF20B131DC40109A8319EC1E3B3FFA3C9E48BBA575401472EA68C53 2234008239651A7A9C84011E309E46826A2400722ADA1A2A57E4012C04F410B94183FF 32053B8D17764400E46E9F893A90240044FAA9F53759C400C7DDB48CDB8483FFA7384C 51A1E90400B1135867498504005966131B3BD8E4010E94E00D944D63FFE3502005755E C4011BB8BBFE7830B400CABCE3725483D4014C0C550841B744008C1D1371818514010A 5E52D1F4F324004755C052F59F4400A2A08F5C5864E4004B8823A6F2D6C4009B80F099 6C4413FFD0DE92259C84C4002D25AFD3F9E943FDF7D04D92D33343FF39A0376109811B FE3DA238170D1043FE588C326023E91BFE9027EAFB0295B3FF26F61DF5447383F9236F 379CA234040016B3FBBECCF363FEB937C43EB341240052FC769318FB43FE9F73EDA0AD 48C40015DDDCA8CD4303FD02415E8645E4E3FFD7EE7A43A11953FE16E8DE514126D400 445C52AD9884D3FF5EC5EDC1CAF5A4004615245682B6D3FD9200069C875E03FD9B4298 F9CB496BFF88F0701DF0799BFE108A1948A8870BFD8582FEDCC65FC3FF583FA46D1963 D3FF298A7F317FB8C3FEC15BD22F8CECA3FD293D85907E24B3FED1A865464FB014003E 35FC7C446FB40030066535622973FFAA5594B56C8E7BFC38D57E6C9D31B3FF5B6D8094 329D43FED448044C66F6D3FE52436E957E47DBFFD6166BDFBB2483FE654AE3ACC0A8FB FCBA52035F0C8E3BFC449580E2724F6BFEB8B5CA7DBED4E4002ACE55256D69BBFE3B0E BA78F232D400072698B3D24643FF79A522FC7A4D93FF7A8E1BE006C443FF885D49903D 88B3FFCC4A1F0F46A3A3FCC65997EAE9ADA3FFBAB3883F6D783BFEECE4FDCB4F9603FF 2AD7B2701C2C7BFF68030CA90C0223FE1E93D54AB4A6EBFE71B449838597B3F8227B3F 537E2903FEB1B614EB048353FD3C006DE629E913FF00CCE943AC84A4004AF2391C8456 43FE8ED5CAE330EE43FF3A7585B7CC5E640030E78121C3CA94000F0073A5318943FF2F C7E15CE7C6EBFDA88F60455791CBFD7095E7FBD657ABFF624CE8232E9A8BFE083F6416 92A66BFF9B3522E86DB09BFD1BF55586A77F1BFF086D06F1096653FF95360D49717783 FF7249943864EA04005ADD8F124B2AD3FB916FAAF2FA6C4400B6D51DB0202883FF2C4F F48F4AF304003CBAB51723E5D3FE8C2A9165ABC4040040096F7CA1E79BFEFF5B169C79 A2F3FFA5CD3032A183D3FE0702572ECEFED3FFAF40E5487F70BBFB00867718005983FF D0BC63065E5A83FF3DBCEEE9D092D40069C987A2BF2BB3FDEA112C11AC8BE4007A02EA F3D22BF3FFFB6E610FAEC7E400B77009CBFD7033FF2DDE8EF10A2514000D7567E40BC6 E4009BC81E00378E4400EBD440896848F400839A4218B81E8400BF50D69C273103FFF0 3F023F5FBAC4002C1664938A0E13FD99EEDD6B2EE963FF1C638BE2044D3BFE629DC47F DDB8A3FE669ED814E40DBBFE39AF7E2ABBBA93FF7B3CABC654CA23FE00344AC7293614 00641155E2BCE683FF8967DB786BB30400AA682547BDB223FF70428DDDCBCF040057F4 9CF1C10F13FE3DCEE47117A1A4000685E26642E393FE35302A5F6B4D04003DA0326ABC DB13FF42AAF54092F8D40038E092DEC04203FD6F5D91FEFD6853FDF46D96B3351E6BFF 4B7B77697E6CABFC0DECE8DA214443FC4C212633004753FFFCF1CA70C47A23FFD951FD ADDAB473FF8B09EA0356FFF3FEBF3CFF588CA1F3FF5CD8DC7C7F589400642288857505 240041A8A1F16CEB13FFAB255E15C6A7FBFCE89964585BB5C3FF3E0462345B07C3FEAB A93EAF4BA1E3FE59FE7E71E0A23BFFAEDD7394C664F3FF02B6BBA9667BF3FD02216730 EF4CA3FDBE0D156B38DCFBFC858CFCAFC155F400828117D6DC8463F94A56395827ED64 004AF1EF25256D73FFDC19D983FF0ED3FFB3D3C5AB6F5513FF9B08AA2699F7E3FFC127 6B179E0953FBD735E5B6AE5263FF9F5BB39D7B28DBFF019532DD5061E3FF3D83130678 A0DBFF2EBD62DDA36B43FEE37D4259BE354BFC8A1BBEF8E3C4E3FE49EB59410170B3FF 88408FD86077A3FEF552C244E37053FF98E2DEBAC901F40086DB8638930603FF177C2F 449E9893FF61AE7E02C118140032D64518DC5ED40004D8C23DEAB2C3FF125EC2FD1031 3BFE0038A99D9B64FBFD6D56C27A6DDF4BFF3F086EAB19118BFCC234CFC7410EEBFF27 30790F162A33FD39472399F3AFBBFD78441815E36BF400227EC5E2E63974000B7DDD1E 07FEF400A050015113F8F3FDFE79A8E0FEEF5400D58F9A0A592BC3FF429AB3FDA56324 003866668372A573FE57584B86A1EEC40031FBF33C05E9ABFF0D25CBD3F42203FFB4F0 D639B69BC3FE713CEC409866840006CBFFEFBCE743FDD09464819E60040038A27D09E9 C423FFEC944C531A019400C02F844F483433FF153EFF4C4B059400B7C91F3663324400 27DA77705F8C0400CD0E25000F23E3FF34E7E1CB6A327400043684C9D79B64011CC1DE CD5B46C4013C3726B44E55F400FBF21688E226A40111C47E8B3BF3A4004B98244CAF1D 640074E224FC04A023FEE49DD16D4979D3FFB2F5A2887A2F8BF735B28AB0939003FF87 9B7F4D73AAE3FD81FAAE5A42BF14004FEC78932A8913FFC3E4B68652B70401077FA07E 5A85740070A78ADE49ABB401279A2F9DF3B154004EBFF5A548CEE400DBA818AAAD5613 FF7D14999C4EB4D400629FA3D73C8833FF362FB184DC891400841AA4978FF7F3FFD151 AF2BEC45B400891432B87E1EA3FF1B3200C8F805F3FF63A03B3C1D8B0BFCDF21582C80 D803FF1237243D2BAEE3FF774627A4E9562400AAE492E3FED62400965EEDBA24BA1400 64B472932DFF23FFFCB306607C07F40028E0E8B4DF5CF400CA4CB3AEEEE21400969875 0F091304001F1E5F199686D3FD3A4E47BFECA853FFD2C4DC40AB9383FF82C20420B534 83FF7D48145EC3472BFE6B7899CDC40DD40011CC995E310BC3FF81AE2C1E368AF3FFC4 3C67DE93AD73FF27C3C2A7C44154011430B0AA9C3E23FF35CFE2A2E5247400D0B438D6 56E934005F37B01522EAF40037C7818E54FD64001C7AE984E7CA0400276FB9A844F793 FE5656CD28AD9894001EA46E4058644BFD1767D5B056DC14000FEC4CD65FB70BFC19C6 7BDA036D74001132957531D213FF1A7D1B1D9B79E3FFFD6B0EDE3D24F4006E7CD92E12 F614001DE799BA363614005CE2AAE6E24C040101B60CC7C298F3FFE7C5046A7188C400 074DF165E83B84007D36821F04A3A4004AAC217B6E0313FFA576231A769963FC4E1A8B 63550EE3FDC3FA96D1611EEBFD287DE6F766A723FEC99BD9769B3603FB72E8213EED85 03FFA1BDA6ACEBAE23FEF58CAAA380AD8400C95FC7522ADEA400A5783DCA3FE8340114 0DD3C1858F63FF66233FC78FF8D4011A9E74177ABF73FFE301F3B1211874007FB9C379 1F4B33FF38A10A1CF73224007FC7C166995CABFD53C923C8034E2400498EFECEBCC313 FFC0056D9224C784009D6AAEA61FD133FFBDBD8D08BAFC4400E4961A2BFD96C400A138 114385248401310A667053A064001CEDA25625A454011B3A2A462D3AD40092008111E0 5AF401128D5E6D5722E3FFCB79F871E011E4004A201D77C41C6401210870BC7F909401 365C9C6BED726400DC1D5402470DA400F2F4B7428B57D4001056FBB43DDFF40036BED4 A9055203FE018E5AB68600E3FF5AF5003BE0D97BFCA81B8A4C347243FF7CD817F78A99 23FDF4047BD2E56724006DC4D8239DC8140008D35D5C35B0B4011B72FA8EEE86B40091 66DBD1878CB40130E31278AF3D64004E66885D49468400C6B1C35BA2F8E3FF2D2E4A7C 6A5FA4002C5E8900E42A73FE761587B9564924004761188C50CF53FF699F1CDD906084 0064B497DC2EA533FEF33A08ACE15503FF6B1DB59E343DCBFB0093BAEF7E27C3FF57DF 5519DD5CF3FFC803B0FA4AE93400D08D98C64A66A400B181824ABB69D4006F31CCEC5D 0B33FFE982294BE3CA94000AFE2ADD6D6A54009B2F9DCB9F3A94005C173C1CD076B3FF C1C9AAAC5C0FFBFC262E302C5F4533FF77986F07E358A3FF4AF10744B08BE3FF6E4F69 0AD0069BFE39E74FAB7C1444002E529986429823FFCE4D7CA0246264000A4BFC0D3C3D 53FF6B6A83A2A49204011E53DE998777A3FF393AA403707D7400BDD213288E7D840039 0865CCD46E740002B12CFF03FC13FFBE940940E3DB63FFD47DA9879E37A3FD03FAF5D6 D334E3FFF0EA47F013D4BBFDAE79031E9A21A40011A1AD86A56683F954FA101B1F4F64 003305F5F2A1FBF3FF6AD8AB598047B40025052FB0157D44008B02D9562480B4002A4B EC42C831B4005566553CE8A89400E7839B2182DAA3FF8C989731A94913FF9B428AD649 61A4003EFCF85B9C248400102AE8893567D3FF473BF753D74F2BFB2022A42793D503FD 7737227F00437BFCA926285BDC5FB3FF1B1315DC7AFE63FD8A02376217ED73FFF27B30 024D40C3FF406E862E7201E400DF4D3EFD76F87400A936FAFB4B3E94010BA894A4E3B6 F3FF1D640A0EF100A40100B1CF83E3C533FF698EDB9AA2C5940042274CA5069953FE98 3DA8E08CF3840057D499D6A7349BFDFB7BCE40561FA40049359186BD3DC3FFE528F8FD 12FC9400BE29FF995DB3E40006C57AA58581440105BB8E2284F59400BF1070D3F861A4 01382B0347DDC98400178BEEAB311854010E46BA9677BAA40066002FEB93AD9400EC56 DF2CFD6633FF4F3357CBE17544000EDEF4DF52E02400150E37FE38DBC4002B96E1673B 4DA3FF1476F288AC00A3FF2CCBF3802B393BFE3C67A62317B01BFD1A94EF758051AC00 0CEA4F62AFA8EBFF1B73E856FE1DDC0041310139BC4E7BFE52813CFCAB746BFF89E94B BE6925A3FECD61154A967B63FBED8F926B26A344003657B127167043FF05561939F44C E400401F22BF5A7403FC8229E243A6AEA3FEF5C41B86B13F8BFF81EF15044F593BFD94 0C15E9C833FC000081BF06EE150BFBB8B8B09C343C0BFF21BB42AF178F63FD94E425C7 33C8ABFF4180AB1B819F7BFE574509BE790C8C00067E1A5327985BFE33FC96C99418AB FC7A2B68A93791D3FF94C530D9B93023FF35628F73CBEF23FE112F25E031B8EBFE29BC F86E122E6BFE15B1FFBF9AEDB3FDFB067F7B10FE6BF9B7F1484E434F8BFEE855AE3A67 FEFC006146AE892E903BFF02D3B7A82A4CCBFF06A2CDE34BB17BFE7706377029F2EC00 534168ACD1F703FD9AA566E9A82C3BFC1F90E7BFFE6AA3FB5A38F414FCEAEBFE5D47DC EB6F0964001D0F88F9501D6BFF2F24D12C2956E3FED954CFD8EE0ABBFCD5B83AC81112 4BFE6F35333DD97AABFEFCD1D4B821B1FBFEB09452D619884C0026FD80777891ABFDDD D4B4FE17E5CC005567549D921323FA269D1E9DD766EBFFF9A08098BC2BA3FDCF314934 7F240BFE16465BF135BEC3FD01ECD771144C33FED8665BD2C7F813F88201AECA0FE383 FC83041E4E1D3053FF313F9F363478FBFF295BEA97E6C91BFF23CBB28490990BFCCD1D 580A0F4FEBFE00FF09107AEE6BFF3724AE2F158CDC0033E718958D387BFFCFD2AC81EA CDBC0020BD62DF2B928BFEB86C1065EDB5CBFF8F5D12A6216E4BFA4EF91EA1420C0BFE ACA3689DFD8DA3FF837CCE88FBA123FEDC7B9F600C3E03FFA347F306E6E6DBFF8CE9B2 1373E563FF46B8FC2507C4BBFF54313BE1979B2BFC567631B564164BFFC662A483A6D3 33FD0C857CECC2DF7C0061167BFA0EC793FDD3CE12917ECF9BFBBF38EF07A3A883FF89 863DA10271A3FB8B1CFA91AAE104000801E6EB78A9A3FF58082B32106AC40049A6BDFA C288ABFD1D442CF1F331E3FF9E7F1E393C93A3FB7DD7AA7BC9FF03FF19CBF3DFF3341B FF69EA233909FF2BFE0C0B977A78AC2401784F3EB408C804017B33D1C1E145B401252F AC4E2C48040129D3D8AEC50DE400738740B9FD02E400AC1218DB7717E3FFA927B25CB2 4D74006849601A003523FF90EA80CB97A6E400C49D1841BC2F04005D51642A4B8F6401 4B5200B220B7540115C86ABB8571A401A2273F6680AAA4013EDB53A2B735A4019346EA B061F20400EB947E84BC0D7401214A79FDE3DF93FFF9B60D3466DC84008C29F927FB9D F3FF8E13FF84AF8AE400C93FA78F42B1D40059BCE85FA457B40118E024ED32CFB40070 922A0DFF198400C867DDEF2E6104001D45B247FCFE4400D40EE8205A578400FEE4E5F6 7703B40168227D5B3FB8A401463EF09006D3040110E709C88724740081D8B3F19F9A34 007B774F0E54756400FC8C4E1C6D6E0400BE48796513BD440053B965C575AFE3FEF8D7 6BE50BA2F400727ED672650674008477F3875FF2C400BA297A3C7ADCE3FF9CE68F0931 83D4012B73BE75CD9C9401059FACF8F20774010D3E95B77913C400A5C87165DDB73401 82C9359DFDBF64003DA3551210A524011E51F3ABAF274400A0D89F5F7CDFA4006266D6 3C8792B400471A3E331A6114006910A8F29EF123FF830AC39665A56400C15FD200F67F D3FF74881E61705EF40110E96E742DAA640026C28FC2081E34012DCD6CABFD4E5400D2 59711C37E7E40114037AB3942934013501249D9613F400E0FE8B313B85D400E5FF1338 F18054012D2C15C8653F7400287D88E117E9B4002EFDF5BBF2E57400AF761C8C833304 009D4287D4E321E400563A424E9CEB13FFA3F693682B4724002E9E4640151804000050 AAF393CC2400B5A8C881A9290400568A970BBBEB9401060B4D909D6F640093FAEAF9FF C02401562C787DD6F6940127122A7613B054014C97DC265CA603FFF06D45B6F561F401 309787976F7ED4001B0B4F294FA35400BE0A7D452B63B400033D605F960954010E4E25 230651E3FF59C0A357B83FC4012B4F0D9AF0C4D4010AA8FA4CAF5984017384946D00AD 040112CB27AABA30A40188D41445806484015103B4EF43BB640195927345E5AAB400AB BC312BE8B9940148F05CAFB09BB400C93074F152CED4012684ECA3FE15640015DBB080 02404400988D5F8B3A8C04003F1A58AD4588A4003A369C0471D5F3FF169852C4F393A3 FF33E7E991F38A8BFDCB477A99790223FC13B5A952CA214BFF637B72C6F5B51BFB4CA8 A3B95DC58BFF35447DE140CB73FEAA38EDCFA42FE3FA120E592506840400367373709F D7A3FF7A65788B45064400C305329E2254C3FFCFA0E61F092C04007DAACEE9F24123FD A31C263C21BAC3FF08253C819F28FBFF819CC8AFD665ABFD44F977308E68BBFFBC8AF4 01AE58A3FDBC2A5378FC5F3BFD1BA1CAB17E3A33FF8D7BC53DA48743FC276639578789 A3FEBF5B0ECBFECA5BFDF00935E4B74973FEB9067728463CA3FF10E4C2D18D2F740045 BCAD4553DA73FFDB5688C37876C3FEC7047B1B7CA58BFDCCC31F3BC3D2EBFE0EC8666F CE06C3FE07BF0CEB29B1F3FBF84C7C3A04EDCBFE247BDE3DB0723C000A365997962FCB F9065AF5F439AE03FD0070A644903873FE7E250E5A4941BBFF149D9E88A89F63FFEF95 FD0457D303FF3D2BADD1B61383FF36855A70B0B7A3FC1F66CD135D35D4005E73420CCD 8A1BFEE18B79907F50F3FEFA0C8E3023E7DBFCD48246BD8745ABFE4E7D74E6A3941BFE 8013ABF04E43FBFD560ADD10477DEBFF7B6A38D6CDEBF3FE52D93BDFB5F47BFF49B0DE 716E3DA3FF92218C3EDC86EBFD9EED371F0378F3FFEE61F532595DC3FE773792F7A9AD D3FF3F3581AC9E6D93FF9A53D7CC94B0D3FD93C3AD6FBF6E83FD5B1442BA73EC73FF36 5D85CD050FBBFF25E71DF000536BFF021DFE1C786FC3FC0A37FCE31CB243FC2BA3A63B 78E3FBFD01C211F89BF04BFF27A4014466459BFD65449623F673EBFE6101BD226B8A13 FE5E3408248A1A8BFC477D02FD772A33FF1DCAF2D6CD7A43F92046ECEE4B9304000709 77387EF8C3FF32B659BC33E7A3FFB70C9AB535549BFF8C9765BEFAF273FF53FC2AE34E 525BFF1BAF6E9B03FA23FD4122487A0C89CBFEF82FAF3D23D083FF5C7C6229488BFBFF 66A0788F8AEB23FFFB29E0E0542973FF76862F97171E240083F1A983951F03FF65CF54 3B5276A4008B5695F92CC514000730AB983CFE44007E34B67E9F300BFBBEF16D14F3C4 03FFA59B144B04E1E3FB9FEDAE40434983FF370B691A604ACBFF15D1E1DAF09C23FB7D 0D827329FA04007D4E100B5A3A240075882BA7F876D3FF97FA57569DB523FFCED10732 661283FD31288A1F5E8AC3FF0A9D0DC17C100BFD503CFDEF04B5C3FF19CFF4D25C7F93 FA6CE8C7BC779804000BE9CF8B96FDC3FF3CF8D49CAFD46400C27A191C9CDE8400364E 2EF428E9E40113C1DEA2CEF3540039522B76185A5400C0DE940A1FD223FEC117B7A7C5 CF43FF819BE4582CB52BFEECCB36224CDAC3FD63B0B1A12542FBFED66C610E53AC53FF 6971CF2D61A843FEAFB8792E890FE4006306DB03B109B3FF6894106D5E6294000EF4A9 8BD13243FE5A59372A16D623FFE467B0338D1483FFF09DA5AA00D02400A14ECF6467D6 E40038030E74F28303FF61698B9658F803F8A2F24BA4F5B90BF9F4F2D0188E0F83FF1B 9CD929D87BC3FEB53B15A94F0833FD46CC95E901908BFF08BA4E30FC84A3FF27DC5465 5E1023FF7FA53A001DC38400012BEBAB0AA5F3FC0F9712FA1C7A140085863A56884B74 0019C0178FA6A5240001D5678115DF03FE94F009FDB5175400A2D1CD740277CBFDE0F7 1A907E0D73FF758E3D3C321A43FD38B337DAE3D8BBF6671E2DC5BFD3C3FAA373D32A7D 50E3FE41A394130ABA9BFD7FCF04B8548CD3FFDFFD1ED7C72C0BF99AE3921F64789400 68D54E56EB1D23FE8874E4EADC2954007D0A2D18449963FF9F8CDE14ED6E03FFFA4E44 BDA59D3400190895406C2793FEC902A6A6E94893FE9A777A29AFB643FFB444D3D59FB7 4BFE226F1393277FABFD2BE6E77941C4C3FF00FFE274D73D03FF2D58E966D91843FED1 7CC920248A13FB697CA6D3CBB5D3FED4AC4772DFA703FE102224710F8913FFCDDEB355 E91F23FEA2EF33DEE74AD3FFEF1FB65151F6D3FE5D574BD04C2864004CA50E07D6F303 FFAC2D0192C17264001768B67D07E73BFF062FDB7E9FCD53FFF6FF9BB075DFFBFD4AC9 6530334313FF427F777B8FF583FBBF573B9682A6C400487261FE6817ABFC1F4A830178 3504009DEAD27FBC5804005290575284BB240105D3E19497B0240026FAD6693A9E4400 EAE4969047B3D40054A53A6876400400BEE5B8C7743F63FD6AD021D6F8148400110141 83972393FE57801E526DF013FFEA4BA3FA35FC8BFCD292587B423003FF1BD4DFD0CFAA C4008C3B5AD49216C40089D4E9167EC353FFDA1AEB4272B484001A923F55FF36A3FEB7 4FE2D4B9CCF3FFC140B758130F23FE03856BBB274C040000D9979E71BF63FEEAABC971 442EA40079B9BB9B0C0973FFFC3D96400C59A4010798A3786A4094006E6874C155B784 0126509868F17364005021ABBBF7274400D05CB8523E4AA3FF0139F9F5D2EBC3FFB40A 88423F254BFE4A073522AE1563FEA2F0CC5C6094FBFD265DFFB29338E40017B6FA5E34 1B33FFB7A5A3AC648B6400D8763ACA98FDF4002703A93531EC84007727D9389F0CA3FF 5C48867FD7D8B40035AC04ABB1968400277CB019C5A06400BF42549D4F5A54004A9270 9EF11183FF7F17AE47F64FC3FC506E16D1897103FCB907EDFA1F1163FF7DED12864228 B3FF65C615B92298E3FF049D00C3D2B66BFCAC68BD4358B0C400074E6D8FDD1E940035 11003A38731400700FE744B1F913FEC941A0A6BD959400D44C36230522940053EE8CFE 1564240028B6B854FE8D53FEF4D924314DBD1400B2B183ABC3C61BFD61F968D27395E3 FFA582CA55FE70B3FE37DEDF3D14AF83FDCEA56F17EA9093FE554F2C649B3DB3FF637F B7FDA09D93FDF750D814E6187400653CF2A60D27A3FEC0A9F0E3BD32B400D26BE99B33 D263FF77244DBF00616400C29E728A8220C40000EE8BB8AB8A84001CA186DEA5D99400 2C6C8461DFC7C3FF022F760511FBE3FEE4B502D1A9F463FFF02BDE476EC23BFC96DE7A 004A4DE3FCDFB4FA2C2D6983FFB01BCD5FA3B073FFFDBF48C074D163FFCE31A68D17BD F3FF017689FB0CA3E3FFCA1F8ACE8FD4A3FF4E0D37C78E4DC40037BEB1F83710B3FF4A 03D3B55A9964002040DB6890AA03FEC23493A47100C4005CFC1D18CEF473FFCB294A22 FE6424002E3836C2E6B5BBFE77E9E8CC2B8FC400339A13A567C083FD1AF0097189E7A4 0000E21C8F764003FEEF2A97B0A48AB400BD69B13BC74573FE87F3D414AFEF34010469 E69633600400ADE22C1DD038240129AB554D38FF64005A24922606C8940105FA704319 18A40068F1F7D6FC8B2400CDD30390AC1BE3FDF94BB5F5278754002D7D96CBE1C103FF 0637C0546F214400368158889064F3FDC3A4CB965CF283FFE953833C646484004EAF3C 38E594B400590C5702367453FF9CBCAAA7A571840010684ABD0F0963FEDD33C5D91C8E 93FFF360F49D0243C3FE8BE870676A0E940023F80AD19E1E03FF2D4404C32691540087 834062877D53FFF1FA39D41600A400F572B0B3CE7FC40041AD0C4367E8A40108CBEA86 C77244000DC6F3F9E2D094008EDAEB59037D83FE1FEDCB96FF7AE3FF61BAD0ADA8E99B FEA05231BFAB5D63FE9ECABD689F692BFC3A6893901EF0840035C2D1DE914E23FFFED2 AB25CED66400F956FFBEE8EA74003D5DFCD7CCF824007CDCF2A3D27493FF3F87278F48 530400130105E643FFC3FFE72EB290F4A984007FF8DABD1B19B4000790A5ED8CEE53FF 022DD47677F43BFCD57961D472AD6BFA48101F1701DFC3FF6563E556579F63FF74FE38 EE4F4D33FF34187F37FE86F3FAB036DFB16F1F64002AB3F4BFD3E0E400521C1FC9ACF7 44007F8E02348CC7D3FEBCF61FAFE5B65400BCA1CF874112A40028F701C7CB4363FFDD B045AF63CF73FDD9E919CF0F74F40070B85DD952461BFE98770A5E6C5A13FF4F93B3E9 6A3473FDB26A899C08F783FDB60E6D2A3AEA13FE93479824068273FF9D95F71C89A903 FE893E88CA4E17340086C459F9086E43FF0FD076E60A65D400DA07FB35CA29D3FF5E9B 208F15D21400A1EDB32E842553FF9D20285C978D03FFBC5933EBCD5553FFD2D57360F7 48E3FE0739048952F993FE151FA78C7CCE53FFAAD5E0BC939A6BFD3E74B8C26325B3FD 1D83486FB20A53FFDCD074A4D9CB24001FC069548A55E4000AAF5703410443FF3D8E38 FBC70713FFEC69F84930C023FF4BFA304DADB24400222BF2D0F7BBB3FEEF68384188B0 F3FFCF3EA2A6CE2263FD785ABF7F0B9284001AA16556BA9E23FF5516929A5662C40001 7CCE44F8E94BFEDEE441C0438A04002E78656F6C96F3FD893C2FAD659964001CD92C94 B87E83FF3DD2323EAB037400DF827266D7F553FEEC344E9E8E518401092662F6BFB6E4 00A3B83784E007F4011A53C52685AD4400295C0011BE775400CE68C1EA85ADF4002606 6696019924008DC99A0A3F3BB3FB399DFF9797F8040008E093574B06C3FECA7A2AADE8 A144003A463B78DD5713FE356C3C798CAF440014CEE3C9FBC9A3FF873A26D67A1243FF C0273FF6DF2CA3FEA7AB2806093D13FF7F2F59898EFB83FDB09BCAFAF41193FF82FF49 80632CF3FD5E77C49D352E23FFCB4B083B003D13FE2887C1BEBA00D4002817FB732C14 A3FF09E9DFE7498584006E6DB17C8074D3FF58B4338B6754B40074F386921A51C3FEC7 EE411D1F1D93FFF7DF9514F3549BFDDBAFFCEF5BD9C3FE040449D8D39A3BFF86CF4DCC 76BD33FCE8E4F5E1815E8BFE3F9121C813E223FFFE1F7DC3CC6E43FF8C01079BAE3684 00B567BCA823B9B3FFD192FF134047A4001432AC722A7593FD1677F246B2B4F3FF09A4 30B730F043FE681122BB976033FFC55AF2A4AD74E3FEBB48892DB6116BFB7224811080 7CCBFF30A3D8654ABF3BFEAEB9B736C62153FE8011B63187B6A3FEDFCD13DF754A33FE 852840D6693B0BFD8119A0551DEB63FFDAEAFB2BD051A4000750A4002789C40022318B 3D7693DBF95B3AB4956F53A4003760AD9796B5A3FF299DAB223CC353FE4A55992F80AB 7BFE84166547BF3663FFB92063454ACC3BFFD6BDC90E8AE1D3FDAEAEE4FC86882BFD38 792E1CA890DBFC409AE243E0DC33FD3C9B76F8AF50D3FF2FCDD809B6B5E3FD4C6B9661 7481340044388279BE1853FDA9D5B2A1DA70A4007379CDE474A5F3FDA299D191658A44 001545A4EAC42503FDAE8C846162DB13FE0384E22C892CA3FE3F5EA45B9CA37BFE3182 B1A15B1CCBFDBD655CDD74E513FEB302A8B28744BBFEF18C5199E4D9ABFD01F6D04677 6C63FF69FED11AB92DB3FFD21AACAFBE7E03FF9CE32F947BF2D3FE568AF2074EF3C3FF 35C3C35C8FABE3FDB1061231BA3FE3FF3D75009A98BE5BFC71112BE27A8B13FE2F4FB6 83301D3BFEB663DA2E4C7FE3FF0A9CE5B20CC2D3FD1C3250AEE946A3FF1AE9429D255C FBFFAE48AABED890C3FFC3F0A6FB0FA1CBFBA56017CE295843FFCB5C121D094203FE9A E10E4417D684009E48FA4FEF5233FD51E3AD7AE0324400ADD93A9B2F0184002ABF807E 19273400A995617F62CCC3FF230C9579636E8400313399F02A7F43FF1766CCAC68F873 FFFC46F91DED9BCBFED466A8C4E8DC33FF3C334E3E5AC443FCC19D6E266DE403FFE9C6 34D6295143FC3369A90CC87683FFBC6D416DFD5873FFD9DCB7548697F4001DEA13EEEC 4DB3FF76C8569E0FC9040020A833F3ABFD23FF4059462DB82F64002C9E807FCAD9B3FF 1F8CE24AAB8EE4003B6F7171687723FF1A01558C4070E4005659CDC292F7E3FF4073E0 0447B104007B64BE44995743FF63FF9520187094007B7222254C6943FF02B4DD7D1629 C4001AC8574C9B710BFB210AC717BD1603FF0FEFEE8B63006BFEA9081E71F807A3FF09 351ED5C45AE3FCBB2A3D71D119840067F0EC62A3085400245B3FFCDF0B9401018E9F4F E20334002269389DC545B4003988163929C383FDB750801FBF7CE3FF1B120E0FA23833 FE7C0B9A27BA65C3FFD871E9EC08E2B3FF08E8269AF54E53FCBBE8527EAE80FBFE7258 68F8B6FE7BFCC11F3A6AE49893FF7F852AA5C97503FFC2F629AE8AFD63FF995FFFE3FB EB83FDA742A089ED5AD40044F401122FDC34004C3E2C4EDE76940052878D2E1F6863FC A5267ECF7E532400458280A6B6F4B3FF35AC3096338B53FE6272A4176E3DCBFE4B8F19 0B3E3323FFF3321DF190593BFF7611C52D393263FEEB0D93B91F0383FD837AEDC5951E 43FE440767DE8D7263FF25F2BD36F322E400016EBBE4438633FF1297352562B6240093 D4FCA0C15453FEC3DA2122CBAC24009AC97714E38F13FE27D4ACD0E74744001ED1208E 71DAB3FDD6817339A8E703FE26609CDD6BC143FE8FCAEB48230FDBFD385A150ABBB4A3 F8F30D7876881F83FF74EC58488440BBFCE0858377144323FE22894DDFB79234002096 54D67EA0C4004F199664A955340027973713FB53E3FF393342A2A0A793FF9A9F1626EA CB33FE53E53C21643113FF5C32BD891F55EBFC092772AF591F13FE45E679AC9256ABFE 8287A70DE8F003FF4126E5CF0AF303FE47207195103B63FFA0A6B74A08D30BFF02B4D0 1707DB040045EFCC0F36F403FE77CF6C049FE394004FC732C60235A3FF8F91957FD4E6 6400EFC25B9D74E4E3FEA04BA68B62EB8400D72A82DA3541A40041F756F63DBA6400B4 09AB70232D93FF2D3644104752C400392A98F62A8333FF3CAE9041725E94002186E1A6 CCF7FBFDECB4B91C55D663FFD3BDE537CE71E3FEE402D469AD42A4005D08A5234B2513 FEFBA15B0E722B5400452FD2029B5FE400B3E71E8D8EFFD400F885C42C40DF7400A597 016DBB60740109F1D64D7C47A400946DCDC6445774010CDC2400A47C04006EB2AD690D 1C840103B83D5BD495F4004464CC0556184400FAC11CC0E10A240036534BBA0BB78401 05165EFF6071040041A0B5130D4C840109F9A7C62F59C40029554A707BD82400D6584F A1980003FF8E21BB0D1B5B04006A3FE57F3DD973FF09D90EC0362494007953CAA3D333 E4000DB62047A8DF240127B6FBC0BCFA7400FB3310E44E54D40162EFA351DC127400D0 E0F15493903400D6C576E41A5923FF91869B3FFF2084001BA9F3D2A8DA33FFE361623A D69A14008AFD34E7E090B40034E60B6DB88FC3FFC1394C18630933FEF0A2BB6291EEE3 FF999D061F46FFF400B26CB4221BE34400D603538378224400BADDD6FDAE5B14001589 267D545B44010981EC285AE2D40102DB3E97AB23E400F8B2B9741128E3FF632D13D7CE 41D400D4AC12508155440029FFA9F4E426D3FFDFC196099599E3FE4D1D980C88D92400 B3115FD94000D3FC306F4A7E953354005B64375A5E7344001E9D34C4630AA400458A18 A3D600740085A37D6AB0B93400EA4F329A954D9400620A63A98393A4012C598EC283F6 E40021688068F0D0C4011CC6DB835FD623FFB945EB8F6D086400ACF20D594998C3FF99 52D806797D03FFCDAB0FC497104400126A7388D71123FF376D8AC5395593FFB195BCBF CBA7F400A1F33743190F03FFA7F64872351504003D5B8EB0DEEB140107E271E98BD9B4 0118B0C24F1AD61400F7B06AD346E75400582999A64CE02400754A66C5662693FFDAF4 F8DED6A944003DBA494790BE53FEF8D6223CC7E403FFCF25F44618ECC3FE0F1594EB4F 63740057F79426BB5C14001DC925AB84C66400AF3F97E8BBC0E3FEAEFD7DD7E8C8F401 1D187B5F4F9A2400512F53A87489F4011CFD04725AD7E400A2647AFD3F0234015B5D8F 40604B24001A8680D1ADF7A4013BC254211468B400D58DEFD6CD17B401212068D5B20E 240027B46FFDF2A9F400D4F0C9B07E32D4004ADCFC285E55F400E22C43A44B70C3FF2E A20691FC311400CFE81FC3BAA7E4006A488EC270C9C40128EE5822F51284006F03D6FF 083B24011488554A1CA423FD8FAC42A5E354E3FF0C56A7A99A6873FDE2299CF7065C23 FF572F21A8735003FD27D2768CDA7563FF382E7B9DB24C7BFD0ECC7E36CAAB03FE891D 5602DF946BFECF04ADCA0BF003FDA26990150E14FBFF2EE3F603E7C923FDEA03105CD6 7A1BFF04D6C7F80F2073FE7D839320A1402BFEDEA00EC2BAFE33FE2790F3AAF1BDCBFF 6668F56C1A404BF98F68FD281CAD0BFFC5CF07BA361C13FBD94013C6FB5C8BFE9D686C 3E9D6B53FF937103E5842EE3FE859F49C86D32340017C9B8E45F48B3FC1910B895CFF3 83FB822DC13F5A616C0005A90C0B4FD87BFF5C6B102003322BFF9830AACDBF74EBFD08 F0CB70456BCBFE8B2468909FEA0BFF4663AEA646CDDBFFEF0841CE61C34BFF3A29492E 98FC73FE299EB1609D7FB3FE9E8F9064058323FDF78B179CEF21DBFEE3D122E93388D3 FEBFBB8AEC19C013FE3D518BFC8385F3FD9B4CA7E6C9EE9C001BCD2AE075A543FAD217 610923F3CBFF3692F504A784FBFF8D029E56D52D9C004FCD8F928D1C43FD249F850CF6 337C0068E57F6227213BFC2FB3810184CAFBFE259F4C1645E13BFD22C87818CFF4A3FC 1F6ADAADB59EE3FE9A02D4ED017DEBFDAD260F42E7CCC3FF592F9E5E3D59ABFF38C10C 36B471A3FEBEB8EC9054DEDBFFE392C7C731C8EBFCDC1FB80D5EC2CBFFE54CF38FF3A0 DBFF8E800BBA1AA2FBFF0EC195D2B7E8BBFFD3FD605836606BFF388AB9EED4C893FDBB 4B69EBEDB61BFF27B1CE08372C2BFD801946457948F3FF2AFF172CF9C713FF49DAE3CE B43173FE5ACC72C871337BFE71A34477A6172BFE3B06C926BADF7BFFBEE3BF07757D2B FF2015FAE8DDBABC00483E622F0D4D0BFFA125FAA999377C006163BFFC1D6B5BFDC4A5 48495899ABFE7F5F921BAC2493FDFE60C7A095CD2BFFF91978A1896903FFA1BE51DF89 3CCBFD0958E577F913F3FF7010E557C630E3FB99FEED4C719284000CA16F396EAC4BFF 435940790B3E23FF5D1BF5592210E3FACDF3E6F9B80A03FEDB3364AC2FDA2BFF32254B 7BC19983FD2749BA0FE1965BFE442BA1412960A3FE6A1A5E6AB4746BFFBE662C0AAB3F 63FE928ACBD663E6C3F947A9B774513803FFCAD5D4165D5C5BFB3512DCB0207403FF3D 3F428E48867400D04449BCFAF9A40116C15BE2D26CB400E4A24997D41E44012666A1CF A16C9400B802765EDDB6E4010E1A192F5277240049A67CC1E79DD400BACA8FC8910AE3 FFACE8371DDFECE40077311D06546083FF5895B5953085C40089DD7ABC382C93FFB356 C5FEE88CC400CF0CC866AFF244000C8D1B5827E9B400E048166DD3DBA3FFE02BFF202E 0DE400A5B654882BE033FF866FC7B9F7A56400AA62F70699DAD4002399A1215301A401 204B3AA020A48400C3FB767274AA64013491826C6D78E4005786346EEFB324004E4E46 1E5DA473FE0482A746DFB9B3FF49554656CB3313FF30EB1C05D282A40057DBF2BFC902 24002A119A3C3553F3FFF395155972EB53FF5E83D26322B464000B8F855E71388400EC B16EAD62D88400FC60A1CEA323F400C11D257BAEE0C3FFE93FE6DF6C044400CA35FA4A 8343B4009AB470479B30540076AF11F02EB1A3FD3BC29096FE79340052A86ACC9EE063 FF7DFB3A1A5227B3FF4E25D9FD30A143FD92F197AC1F1AB400B950AE57408C13FDCB22 1798A2C6F40095A8F1E5A56A54005D5E371330C2A40078A352FCC2DC04009ED1620B38 A5A400DF7AC169120C24002EE921816BFF5400FF77FA6A85DD23FF54D25F835B196400 B1EB13387808F3FE50AF1407E741540033975073A5BEB3FEBFB4A8E17E3FE3FF5F3BDA E0E3C614000392F1479E6A93FF63348C788DA3340009DA0AC2AC7D8400E03E93BFF9D0 64000F719342088FD4006660B0BA6840F4010CDA554FA9C524010A4CAAC2F0DC2400B2 C9E3AD982113FFE0688F2567ABE3FFE9F64705BADDC3FE8DC82DFFDF7F13FF7454931A 082D23FC044D818CBDB073FF35DA1E67E8B403FCEB93493AE5F504005A737E84175714 00415DCE441E298400E8292EED060CD3FF55954F4025DF84013796F52C0195E4006D8C 7ED7E07FF401198E906C5CEE6400735F79E2C3DC8401308BBFF576A7A3FF4C0BC7DB29 A32400F0E10C315D0A54004C6D08DB40F3E400C6AEF52EEAB953FF8F1DF3269EDA2400 99AA848905BE840037F89D65C98E4400F4ABB00C0B9F23FF8C615DD875D9040106C954 B0E1867400A6C6BEF3DF6604013EB3D6F32BD4E4007C8F918D1C31A4010832DE2F41B8 84009FAF3A4E5054C400FDF35A5F15E24400ADEB89035B05940103F47BE6817BB40060 32F78F2734B400AFC7CB87E39763FF947A87547CF2C4002D13636A81B303FE05AE4CCC 812803FFC602FEE6BC7B33FD07DC00DD9AAFC4000E07CE5831B8F3FEC5AB4CF9E679A4 007B557410045163FF960902F77A17E400ABA61D5475B8C3FF81FD656621AD440073E9 48E2C07713FF0DC8CDCBB71124005D6A3FD811ED23FF8516421E9FD26400CB3DA5E118 5CE4003D684F076E095400D72BBA5EEB5B93FF83AD3247A074C3FF7A571137C6422BFE 0FAE79498CA4E3FD8A6099AD625863FDCC193689C536E4000CCA33C0A40683FFDE4311 B91FCCA3FF914842CBF2CE93FEFFE67F1F331AB3FFABD9A8A854CDC400A981B9038251 9400A69FF0F731D6840056C4EE462F7B13FEDBEA5E7EC22EB4003DA994337B48840006 0D79DB6E5A13FFC410370803B7CBFE94505010A0A933FFAA061DF932D933FE5295975E A6C453FE4548F09C9C182BFC0D182B45CA14B40083ADFD4CF9BBD3FB437F3129F8B754 006482889EE55B2400226E25B38B5344002D9193FD9DDDC4003FDEFAD9880854006C1C 317358BB13FF53B9B2BAA1CB54006E553CE80B58C3FC4B994768E13CA4001FF3C8BE88 73EBFD933B13486675B3FF7C7D0228F9AA03FBDBD544CB8F4A43FE8A94D907A7DF13FF 8E7EE8A0FC4423FEFF34EA5B6DA3D3FFB5857BCB4C99C400AB9C9AA69BAC43FF9BD1F2 CB3B5FF40012A95C63BC9DA400B1741ADE58DFC40098C3A921DB424400277A88FEB332 C3FE7012A7FEF6CA73FE7FCA6C9C370C6BFD522906F0BBB5E3FDD60883AAD7A2BBFE70 9E3AF7D5E553FE0C764190F769EBFD3158B9F48C03940023BCBDEF9E3FE40011CE70DD 8F32C400B7941F7E5B6753FEC4B3D6A33CCC440112FC893FB042240010B4B9A534FA54 00C1C02FF197E2D3FFDFD22E69806B3400D0DD90B58575E3FC06C8212DE89584005E29 D21134D3F3FF88C562FF3AD924004F64212098A903FE918F4DEB5ABBF4004AC196DF97 5AE3FFF46284EF4B8C3400C223019E19E123FF2E6863F1C56B2400D9DDA18737865400 66D70F6F8617940115D9B17CB94A740016693944F9154400966AC8E10AE984003E7511 2CB725E4009591CE0F9291F400375C717610EC34007E6EAD42423DC3FF843789FAB74C 73FFFD678D6A607763FB5B6972249D4983FE99803D4E9F3D6BFF08DDAC35C02063FD30 3AC84B78CB1BFF1909F006BAAA23FED071CB70B3660BFC3F74CD33C39F840008220E78 8F3C23FE92DEF29D52C534004AE404BC6550C3FE761B6D4A6CD7240005EB003095F563 FB081C7F892C6C43FF9561E816093AC3FCB8785F51CC58B40012FFB2BB078433FEE718 E349D0EEC4000FD15358C1AB3BF7EDE03369012003FA9D1D2F2F7477CBFFD1E9F4064D 5E5BFE7D447EDC3A1BDBFE0CE58FA3DA31A3FF405EAD4BE8C2E3FF18A0A7B58B4123FE 9EC43104AA71A3FC8AC23027BBDAC3FE84494BBCFEA1F40022163C7106CC94000A9CEE 06A83953FF4EE98D763F9A4BFE1CF268C9869C43FEDD5F483110EAA3FDFDDDBDA1BA67 13FD1E874D8F7D579C0014643B8F37D5B3FDC80060607E92DBFD9630B5D68E883BFD1C 4229EE1DB03BFEE07BFDE6B6A3640022BAE8282AF13BFE62D4EDE1EA0383FFEFCF5708 6B6893FF4B6335F2B83AE3FF39E8C221C611E3FF35AB3E5188FF63FF6ACA3B2866D3CB FC8F0AFE033D6663FF4DF5ABC3C3506BFF5DD1037CD77183FE9ED75661DE74BBFFB2D5 FB067FDFD3FD5C29AA3B7C3F8BFEBF13630CD6A19BFB6B224E08110613FE8F1E73C022 0903FCF0B21FECB01123FED1D7E444F7C574003869350F2694E3FE221B654F9F5463FE E2F8039EDEEE540003F3A2BF483263FFB793056FD83913FE86807EC2CB5EFBFEAABAA8 5C70C39BFE7DBD73C82F2B6BFFB6B24B6195A0CBFE8D588871C25E2BFFCB43B2916C60 8BFD9B8C394861E57BFF1D19471C299E83FF8505299C0A22C3FF5F1D2B67B4AB64004C 4BA1CC0D72CBFB3655BD5BB580040097768191AAC703FEB6B3F40C232324000C9F0188 8A0443FD7022E2227125A4000999631FC4F62BFF67EB0790A7C823FF48E95DF50E2A43 FCB6D11B64124E23FF751C5E9A2B66EBFCC2FE5E9A1EC603FFB69EE06CD2B5A3FF2BFB 909D53A16400617BB8EFB77243FD8EA2F31A67BC140068432647D40013FFC6EFF18F2D 96440093E23EF6454143FEAB0DE831D95903FFB57ED3988ECFC40110ACF10BC4772401 352489DE4EC8B400F9288425A54B440115CEEBF565E3E4005C4E1D64FD62D4008A982B D66BC503FF1EDCA969403E03FFD798067FF91B03FB3BAC16B0BC7E83FF879A7C49670D 93FD26B04DD79720C4003A00B004CC19B3FF8837559F4792A400ED1BA6DE7BFA64004F 3C0149996224011959454B226464003ACEEFDAC5CCF400D28DDA8158E8E3FF819BEAD3 225844006EF3B62B269243FF5D1FE012C20AC4009AA3F9C062CF03FFFB645E0D3F47A4 00984A27559208D3FF2730B282F69183FF5962EC8C9EC92BFD725E7DAC6343D3FEBCE2 CB245D79A3FF36E4386D5DCE840088A47EDE7F34640076A39BF04BEE74004BA9ECB62E AC23FFDE2FFDAFCC30040024ED3397193C3400D15996BAD2480400A69323B5EDA40400 3483F22362B2F3FDEDC00705E31C83FFF898DA3EC48BE3FF9995C638F468D3FF7F8E3E C26A302BFE94838515B15D33FFF9B5D967D2D1F3FF474B8A35311773FF80E1366E80B6 43FEC8D1226F62953401059808305AE1B3FF0BEC894E55E1D400C6717E045B97240060 5AC546F66134004331629A7498E4002F64E883F446F4003DDDF19103C653FEABED194F DE46C4002E9F1CE73CF41BFCBE017AA2776EF4000BF897B899948BFD06EF60AFC123B3 FFF0501F3064FBE3FEB60CEF13D3C1F3FFB8EAE6D33DE144004E4BE1924D32F4000404 BA64B7BE24004C88F0B41DF2A400FE4D7237C5D2A3FFF3C3B624701774001683E602FC 26C400923FD98FAE251400613576A440DA13FFCC6651A85C19B3FD09ADD850FACE03FD D617DBACAFA00BFD714FD8420A1DC3FE79D7C24C8F288BFC0EA939BAB2EBF3FF5EE693 838B1A43FE6DFE422A9C6C8400AB8916DEA54D34008F8C753BE179D4010E592DB95AD6 53FF66223CC3835EC4011FDA9114E9D6E40003D22BD45002D4009600A3D26D0BF3FF64 0D17D1C57B3400907DBA7EE7A15BFD13224D256456040046C56C6B7FE613FFA3BAFA3A 268F84008540D322F230A3FF7F48A14F0A5A0400C2625347C27E6400809CDCDA9C7A64 0123B1214A3B66A4000B80405E3E89E4011815366D1CE6540096ED31FEBE90240119C1 6E7C0BCD53FFF4BCF0640FDA740060B849D56D1FD401050A2CC551AEA401200C2C1920 B01400BA5AE0943E452400D9D362187CF463FFF86B689890B7E400232E66BFF669A3FD 46EBD338226893FF1C36D7ACE3E30BFE116621A498FB83FF1256E352265F4BF8428756 5E6BFC04002616D96DBB8CB3FF7A30E9F73FEE9400EBA31D46D01B04004B0DB8E98849 940111FEE8723F67B4001B74FBF1983024009F1E1DB4B02163FEE44FA53F0A42B40015 FF52057A4203FE28DDA3532F000400329321BA9DA703FF345C6992FEE2540040DCA276 D141E3FE37623244712C83FEED774967E46B5BFE2EFB2DBD5C4D83FE879D92BB310663 FF2FD4EC6A9253840086FAF8BA14F1D4006E9FAE2B5F6DB4003618FA51A87613FF8DEC 228B9E36A3FFD0677F4DE84E84008152FE302722640047A580E43FF993FF9AF77DF920 5ABBFD4A819230B10A83FF3ABD949B693AA3FEF3112A473C4573FF061B56E2200C8BFF 1A859DAF06A203FFCE93F49EC66A73FF3743AEAB5818C3FF7D8E2A25AC31C3FEBAB28A 69CB9C1400FDDEC2466AA4B3FEA20D23B5810D7400951DDA18054A94001A9AF8969760 D3FFD787BB77679FC3FF97C1DC8DA82663FFAB9A33167D3C73FAA8AFC7D8935363FFAB 557183214B9BFE8E688F0FD83F73FFB111B5D7E19F8BFE00DF7FFC96FB03FFD2E6ABCC D90CA3FEA553CD938F63E3FFB5F9D3A3E62204004748ABBE495FB3FFE035C79B4E5E44 0026705FA2CCA01400C3ABA5BC2578E3FF5755E3E717CD63FF71A69D32E31274002BAE FF42125253FFF397631B96FDC3FF0C357F76F20E5BFD84A5D6417BBD8BFA02AA06F443 E34BFE616ADA4A75C9E3FE1CC1A018F8ECCBFCA0290EAC9F56D3FF5B055F4121CE63FE 622511855B19A4009F8A282CBBE1040073F660A899233400ED7959856477C3FEBD4BC2 FFE818B400E9DD82C12A57D3FF426DFFC884F474002E06053D111483FE33B85438535F F400361226689E6AABFEB04169B69128540011390998617883FF6126A571FE69740075 183B7A28B963FF7574CAFDDB7EE400C1049999C497D4007A8698456B44C4011A88AB2A BBE7B3FFCED5716D678BF400F7A2D7D7710134004A9101C6A0598400D7210CE3B8A153 FF28B514027A2AB3FFF205C7E49919040106A5FFC26D0C240117598B12B6A3140095F8 CC46825DA400A7235A845AD973FF8468A174CBD8D3FFD40BDBEDDB072BFADAAEDF7CD8 C403FEB53390F162EA7BFE464BCD80CEA7E3FF20F68438A99763FC83C039723F31C400 4C7C051E4AA6C3FFD21099D10E07E4010A6E9B35A8F7640069C160BC553C940119061F 3FF20F7400156DA0A98254B40084CC731F7471F3FE361F9ABAA4B143FFBE1E58AAEFD1 23FBF1DE4A73307E83FFF8EF120420C0B3FEC0A445BD465904002885374B053043FE27 B528A563B623FF16A6704982B80BFD5D3DC0287A1F73FF17904063F2E0A3FF8752A32A E3A6C400AC5F6C79BB5D440086771D4B6C23D4003B5F6E44246593FF6F49FDB479E513 FF8B2B1141B7DB34004FCDBCE30C63F4000E05AF42006003FF27B7DAB4A128DBFE6B55 CE4CC377E3FEEB024D1E719923FEB5CCE098F3AE63FF10A83EC717F14BFED5AD7EDDDA 6244000CAE6E0F09A223FF8EC1656BA96CB3FFD14FA12C068D73FF1D876C0975692401 06EA14089971A3FE92601A16738BA4007CC66EEC393633FFE12BAA78D307B3FF6B508A 064D1013FF2270EF8B43AE33FF3DB9E7B6788BABFD274A1C0DB8A873FF76B21C58A9F1 EBFEA685FC302FA213FFCD2E910EAC431BFD0C21C162C650340012AD6F0AEE5AF3FF2A 8996A395CAE400016215828229D40060C736ABCBBCD3FFEED56881D19154001936F4AB BF326400A2DD1E220C3FC3FEED8AF03A50D463FEFEAB5741A28A23FFE35B37605FC663 FF8E3753F352CAA3FE86E2ADB6F4872BFE07E7F3540E3C9BF7A6044334A4060BFE08DF 766BC054E3FEAE0330EEC98303FC17536789450C13FFAFE989F7A6FD23FEE7CADCD001 1A8400B15C751E067674007225C03FDADA8400D7238D682FBA93FE1B8ECB6F8E700400 B4AAB855AFBB43FE9A930B4DE5BB63FFECABDFCDAC3603FCFEAE27C5E8D9240019CE77 2439972BFED0D16EF0BF2E34001D5740B8E051B3FF9BA63929915314009D96B1D62438 53FFCD8A1AAB058AE400E856B689264E4400959E0D8AFF3364011F3218193FFBC3FFB8 970A70FBCDA400D8AF0923E5B6B4001B979336D44BF4009E85803780B583FE6836168A BDB6A3FF8A75B908838B0400BDB6FB13C8EFB400CC213F73744FF4002519024E233404 002EF2348E3B5B43FE2B7056347FDEF3FEEE37D6B6E3131BFE99A415F126A283FD0F1D B7087206ABFF10E5CAA25E3943FEAF282A96687063F6C5B38DD7F9F004003A3C1AA6F4 A483FFA825475197919400F5611BD9E1D2C40039A00BF37D7D5400EDD520D39134E3FF 79D86760132D64001B10AE1A1DFF2BFD3CC00B2CB1DD63FE98DBCDC02277EBFE92F1A3 24C344F3FF288546874AEDC3FC9A1E3DF4876023FFCCD464FE0987F3FCBB2ED8FE4200 23FEB4EA24AB3072DBFDFFB5F730F91FD3FEE55CE4B7942CB3FF55BC05E1B660240086 0719358B04A4004D8DCED9AB0483FFDBBD32E8AA5C33FE5B5C15BF9EA933FE578213BE 108263FFAFFC51B91F7793FF2C6C36770770F3FD21374D47C649CBFF7746D9FB0C4703 FD69FDF3BE698F03FDA44F4DA3DE7A23FE87EF307D6E89BBFF1C6D5CB81A74C3FFF47B 0E15EA7AB3FF662357A989AAE3FF951E43381C0B03FE822565AD1791A400CBB9234532 7433FBC21B1EB277FCE4001491892DCE4AB3FEF129E87E7CB5D3FDE68060EDB9EB33FC C188FB16270283FDA90976AF2EA72BFEF5AAC1ECBF41E3FEDC87C20008465BFF3385A7 A9C74AF3FF8E365BEBCC0F3BFDB3CF0B60A0205400006D84939858C3FEF5E8D27873BD A3FFB961BC178EF0840029E744BAD047A3FF58030DCB3C98B3FF7471555AD1D5B40034 6525D8D77FC3FA02A038538FF1C3FADE6BF692493143FF019BA36FA175F3FE92274D1E C1C513FC223A6FCABFBAEBFEF3C864FC27817BFD46FF5C71501B8BFE705CEF26E3F933 FE632344EB4E612BF9243B4833134783FF765CEAD47FDF93FE3655070437352400715C 12510B1F34001DA031BE690EC40070848D1FDC41CBFD63F6CF9EA079D4003BE8B8E0A9 A15BFBE7629CDFD31BC3FF1645F5E1C583DBFDD44479621AA2F3FFA6F566E2E20E0BFF 4C8BCDFFDC0223FFF8CE9060D96FB3FF7043A1190E33A4008B7197487C2FA3FF9FCECF C14EDA3400C53E696A7D2E240060C12503CA4CC400F5153A500D09C3FEFC9FD082D636 94006B85D82FDC9A83FF4998884CBEA304002608B974B5FF3BFC7EA442F9868083FE83 C6F8ECDBA024011E36308BF2E984011E445918957FF4008E2F190E198F640098E13617 0B4013FF7B56B3F4022543FFFBADD0CAF0B1A3FD7BA84EF40DB943FF9896034C514F83 FDA118FF71606AE4003546B0A8020103FF9EF17E446BAC14010346D70EA7A1A40095DD C5CD7186A401534381E38FF68400D6B02AFD406CD4013B4D7848172834003477AB60C8 FD5400873802BBF47093FE035C09AC414CB3FFA665AA12A84463FC455EE2E7A1EC4400 1F02B269B23043FF719C3792BBC674009977129BA5D003FFBDC2F6980974A4003A32BE FFD21653FF1DBF2D97C4A1140041D3273F6441940065CCEC62C0B11401173283BCEFDF 7400E15436BFF1A6A4006E57DCC015BF73FF90D27CE94B6D83FF7EB05B3E3AA3E40041 75D18C28EDD40007C8544041C6C3FF494059E972BA5BFD3EE828B9FBF203FFAB3B5978 43DE83FFDEF1A64CC2A574002A77BA30DADA43FE027E9D57D0EA0400C735BCDFFB3614 0076403990E56DD4007D9C01B8AF0F03FFFF6B22AAB69DB4012B3C99359F9563FF0E46 5FDA7D5B9400818D6AC719CDB3FFC972FBE08B7873FF51EEC17F1B5FE3FF27480EC443 B173FF7BCDFD2505E613FCFA56E8E9321BF4002847D86D402E53FD4042727E10D12400 936CC16C40A723FF311AE1A557A6A400C9EA2A96003C74003A1039DD78175400871828 D0E1DCB400BFC554159BA4F4002E4A799D5DDE34002D07EF1A4A0434009E542761A763 E3FEB4825E85126E53FEDF848A5FFF5883FFFF066F77DB4103FFEC7817196A4973FF70 E58E91770803FDE241D053E23EE3FF3D0FE5F245DA43FEC9E017ADF84B1400265260E7 EEFA93FF8470ED283849240070183CAD635053FFDDB83754509EB400FE1DC085AF2CF4 0098486E2C2B6F7400DE693D063A7013FDE0331A69DD82E400A7501DDC4772B3FE9B64 CB648F9CC40011F6C5FE56B993FE81ABA75C27D4A40082B064E3C8AB13FCA115D2DB43 EA8400C7FD38DE4101A4008743F2B4F4EAA4012AED9744DB5864008E16577814267401 38D45ECCAF109400F8B96BD76D3884013C9C72F72D4503FFE68BFFC584960400D601C5 D57D7994000D96BA19AA74C40095582C58840313FE944F68F5CA5043FFE1284A01EBBD E400DB4D087E07D41400D417FD998CAC540026974F3F54C564003A29AF2C57AC13FEB9 B60568AFDFB3FF845C58D15E1363FB0AB12980EDE583FF6EB4771BDE45A3FD60C7D4C7 FA1B440032C7378F2D29B3FF94870E81F78B8400F6D204EA6051E400757CE2631AF1E4 0139082BBCA716C4008DEF2F6248D9A4010E4FCE74AC8413FF9E306956158004001E20 3B350650ABFD1D9F3A99C6BAE3FEEAF982A5A98DABFD938670186EB603FFD9503DF865 DD43FF34A8611CD48094008B1ED50031BB53FFB4A5CB92EC09E4003782495A3EDBE3FF 0BA9730B99AFC4002B3B4559B513A4003CA40F4F80BC8400F0A4A40891B214009046AE B41D8914000E634A6D3F1D23FE81686F32A8E543FE5D242BDC875483FFC3027E72A49A 73FF6D759868DB5793FE9B7F260DAD4E0BFE441788A9FDBF03FF7E0B95ACE58763FFCC DBEBC097B7240027C7448B47A023FDE0888E9B2C21E400B8DD7F44871F840057C64E55 F1C854004B416E4B2FCA73FF71DDAA47A6AD0400FE04BE0B5569E3FD14C23177AC1154 001875A3402BADB3FEFD681CEA1E0013FE3BF03462E1A6F3FE2B8C2F1CA92033FF12E0 A489626CCBF776E9B786E0A24400188C2F3A513EF3FD1698B3744056A40090ED48536B CFA3FF210696FAFE0FD400B4F9647DC6B5540012F0B94AFDCCE4004B6F6CD4188B0400 70877B75C687F3FF9F25E565549193FF8AE04A970A73240035E372CA0910E3FB8027E0 ECD3C093FD287DEA24406603FF7F5D4952BB4A23FF9608C1025FFC43FF404C9E7559FA 63FD914A69D1A44A23FF3720D2AD8A9E13FEB9EB29041318A400194C82B4DC96C3FF4B 36E4FF55ABC4003FD84B3EE92373FF542DFD0E6F5C7400A73F319BDCDEB40034A652BA F4EEF4007567AEEFB580CBFD50C81875D96914004BDD9A44D54443FCC26328F032FE63 FFB6C6E7541EA823FDF0CE7F8E675234007180DDB9D63BD3FC4208283F3D998400C598 8FAF1A2394008026BE9E9ABCF4012141A964C75DA40068F9E04F606A74011C0D1C8AB6 2F0400AB564C1E260A04010DE8132C694C43FF187644619CF684006D45707133EDF3FF 56BEC34BC793640040CF7F6DFA5043FD197BAD5CE6E0C3FF86923D006815E400103FEA E4367BA40009E3CAC894DD63FE950D7D49B8B1B3FF109EDB149F18DBFD7EBD1D2682DF E3FDC39216A00DE5ABFEBCDE9739946AC3FE32CEB4DA3D4FABFDC8173C1044C743FF95 EB2D578028E3FE5FADD42F673E840073D4B87DD6B853FFBCD39A262C5B0400C6B2F2DC 239523FFA2AEE5728118A40054A3BD3167C5C3F9B20210F4CD7A03FE5BE3A1D228840B FFBD89896AAB365BFD7526245284B99BFF8ECF94E5803AA3FEAE472AFC311B83FD4AFC 4F861935E40023F3D67B700113FED4181C86BF1643FF97B60623ECBCA3FB940DD3BD54 9EA3FF3EEBFE88843433FF388E85B7FF5574003CFAB2FA8A8F73FF9B6B66BE27C353FE 0EDEFB0C426A4BFEA945BF7611225BFEAD1FC1779F4203FD6EBA715A596A03FC65DFFC 0EC9D22BFD272BE4903D17ABFF94745A24C34043FE4D7A1238A91ED3FF02422E710B39 33FF81388C0D0BC9FBFDA71CA6520CBA340037C72B07607503FF859EA3CC7EFDA3FF43 BC922EE99A3BF911041F24B7C0340036DD6B4AD9390BFF5237D4B45745E3FE41E70E20 E9B19BFDE9EDAB740659DBFE71855E11C8B00BFE30C0262369E633FA9CC17609E7D3BB FECC4E1C43959203FF61751CADC8553BFE09232EB1FF46B4002646B9FC0BFF63FC8F61 C63127BED4002B3D7AE91965E3FED2AE513005D8E3FF332A566420D1F3FF5E671711BF DAD3FA57AFF86C9E480BFA673E139307A4A3FEC89EC4B7E0392BFF52D91E9C8860ABFE F584FB40EBCEC3FD8ED484DD2BCC03FE406DFDC3B9CA43FD9B57CB4191CE5BFD9B552B 52E0CC43FDA7B62550C7EB6BF8277CF440A29C03FF34262B3C708633FC2BF180EFDA40 43FF30ED8A338AFADBFBEC7F2C99B49DC3FFC2015A50E6B283FEA4216E88F3EA83FF59 57BF23173C9BFFD04FDF50C0C123FF3D1C61F1030FEBFEF426231DDCEA03FE59D7C30A 7D112BFDAD9101D2C44F340008F39A0DE2D1DBFE43823EB5982594005BDEF2968CF0F4 000A3279DC3FC28400BACA729EA7FA43FF999DE59277442400881AB059F22A83FFD6A2 470CD62704005228DFA4ABC3DBFDF8ECE1AD70ABA3FF50E35DF6747BEBFB78B688DB1D C283FF389D63B3E326ABFEB2DFE75D5FF3A3FE1A7BA7713A68A400C8AA3755D5432400 CB2E5A1E44DAF40036079CF2FCA324006CA8C7CDE9CEE3FF9215E41231DAF400438392 FC2BC903FF51809639A35914006A364A5E1E0DC3FFC393EDBA41D00400DB3C03B934B4 8400578CA7E1E6CC34012FB0113834453400B5AAE7B8822B8401465CDABAD8EF34008B FA1243E5E0640105C705F56E9BA3FF7DB661480803C4001E868A5503F3ABFA625AA99E 7FD203FF7E057C91277123FDD10304957E8964007D3BA363FBC3A40044D30AAE9802B4 0120A2BB8B202C04008BFD401BFDDE5400D545376CAAC1C4000379A7CB0E41C40081B7 B213579EC4006B3BD1108F1E9400FD0836E8177E940085A8A6F77BF5A3FFF75564B6F1 5E43FE56F0504022A113FE8EB2775A9E983400101900FA60B504000D3738EE103D03FF C9096F915985E3FE32F42F9FB1E8C40070B02528FA9EF4009C9497F65A77B400D2461E AB755FB3FF99492C765CA9440112B756ED2260F4009C0AABF51B17D400696BEAF7EE9D 93FF72AA4887A1EC8400EDC7BA044EAA63FC186B53079B22440016808621C8B793FF34 06CA6DD66AF3FF1E5424DC3F51A3FF66E2529A650B740016B972E59C4143FF4F72AE9C 883AA400CE3D2B7E72E483FFAB5E4A7D6DE8840118AC05121B04E40011D8B210FBC2B4 0107CB6A9659D2D400456FD1EC8FEA94005ADFBA87C0650400679DD7FA7EB433FF79E0 4314EF6EE3FF728B8AB072EA94003F58621AE3D663FDB6079EFC7B2CE3FEDDA4B1928D DCB40039902ECDFA84040065FEA8E10A45440050758606382D53FFD1346A571C568400 47F2FCB76A2B1400023D9537B1A0140089D53A7021A7B3FFDBF82258E1285400619A4C 7056C093FF59F802D4BED7F4009801355251FB440022EB0B86A9AF0400713B723A7D01 5BFC2D8D9B21D866640087FCF4E49DB413FF014EE7275E98240065487FD9106683FFC8 BE36B89544D4011348838F8FC263FF9008A4F946B4C4013444968B64465401028C0C79 F7CBE401509F022D8CE444009F6DE9505804C401255A038266E53400A4485C14DAD5A4 0104B7504062E4C3FEFAB4865BBB45240073EB1851141C93FFA4AFFACF69D6B4008F05 C1999350B3FF3278A18EB250B4005B5B23A0927504005B8419C54CE184006D81EAD89A F283FFD7E094A0BD0D1400371AB0959AB953FF4B572A96153604002D0AD7012A3153FF 2FA476BC500F040056927BD70F2FD3FF873F6E08BA529400AC6C89A90952440014A764 EE403F240104184817CE14C4004D40FD6BD815A4010C75D40D0F69A4001473B41722F2 C40098948B86BF3F03FE5FE0967915D543FF92A26EFB4E60EBFE194A52E73839D3FF24 3478CF969033FCD598C5166EEF94006A3E773B9840C40033B3FE632FFAC40114E60195 2B08E40066F6C79079E2D4009DADC3B395FF93FF6E955B67D6CE8400223B9361AEB393 FFF9B1502FC75D0400868A7D9A473364000F2AEDA9ABAB13FF1A8F12C59A81BBFB3801 5434080A93FC77DA3BF84CEBE3FFB1031A8297EBC3FFD06180C51887D3FF9A1687B984 FC93FDDCEFFCE4239434005DB2F900971B34007FCDC3B511939400A55D9CCAACECA3FF 17B6D84FB484B400D0395B02E7FBD4003527A0EF5C8933FFECE4D527A14823FE073B18 5C3821B40079F9ACA8BBA07BFE5B8CD470C186F3FF7EA1E7C1F8B293FE5C78890D12AD 53FE816A6177D12453FF2A8DD2E8DD91B4000315A45E8D6443FF2D968F1F34F05400B7 C46F83714BA3FF649F9101513F5400FBC9F2EBE6F163FF8F82BEDCBB46C400B1EA65E7 09BAD3FFB09368B80F0EA3FFC9B2B4264D9953FFE17D197A1726E3FE3588C92B13B0E3 FE6017257BB37923FFE22A70C4FE1A6BF972A6E8E5474A43FE42B876C3008B74002102 AB57DDF8040054988898D7D9E4003E09B3B5EA1313FF9A4B80A54DF394001CE761FD24 0EC3FF871E1A46C54B540036A186A75C38C3FF115DD73992F113FFDF1334B296E4E3FD AC5EE5702D77D400237338508650A3FF7213E292C56504001819DB4A877C5BFE5F6B0A B0E6E58400573D44598BDB93FE8425570FA03CE40050E90E897B33D3FFA717B70E9DED 840108829E317844F3FF4C7BC02D4D2DC4011A7F0FA42001A400BD1AFDCA2906F40122 B626FDFEE6040033969314FB45F400D53A92AD052D84002D1D700ABC7BD40098C8B167 2A5143FCBB5DE0690508040023981D196996E3FF2D3CC0823C93640066895F520C16E3 FEFE1F7695929214004997F6ADFCF1A3FF8B09A1DF00A363FFD62F7D4BB45D03FEF83D 661FB32683FFB6D0F48ED37F03FE5B7FFEFF9970A3FFC793DB64BBCA13FE2F6E4D1BDA 0934000015626E28C9C3FE71F58D903C7E840031346D25401DC3FF0A49F23AA26D6400 6773CC52CF6C23FF42402D0044C684006912705D393E23FEA49D688B894C63FFF2BD4D E1BC165BFDAC803649CFA9E3FE40D4CF68C1E7BBFF571BE055724C63FDE80474B2FDF4 6BFD6FB3CB38F9DA440020CC91600D9153FFC7CF61CE461A9400CC72B10EAF6F03FFEE 18F48E84F29400192BF00C507DB3FCF7BB5721FD49F3FEEE164363827083FE382054E7 C2EFD3FFAF73D578A882F3FEA1D3AC837655ABFB50EDDBDFC9E22BFF1C83BC91CB7DEB FE61B2A626CA5EC3FEECA0EC96955603FF30C8E5CCFEAFE3FF0732BC026F9EABFBF640 C3803714E40008994B2F2B8FA4001A926844267904002C41992736331BF8ACC03FA52B 11C4003103766D06C5C3FF13B68DF637D0A3FE1A64CB5BAC3BEBFEA94883529EA393FF B279D197DDCAABFFCCCB41DA3ECEC3FE10635D74CC9F1BFC004315D095BB53FB3BAFDE A1BC9BD3FE25410574F51253FF73A9761F822F93FE1FFEC811D8DFD4005C123935404F 93FE11BB5EE0DB807400795FC6B9262AB3FD8E10B4C48889F4000C716EC65EB023FD4F 83D2BA5A3D93FDAD39AA2C8824C3FE23770FB4D883BBFE30C28CFAA9487BFD7481CF4C D49153FEFC70748409C74BFE87CCD8574228EBF591FAABF883B403FFAE9362FF11CA74 0009D9DCB8671843FFD484CA99C074B3FEA71D3020F8D8A3FF4BCC00B164D9C3FDC043 FE53D47A93FF32030F0F24EB8BFD0DA5005323EBC3FDFE34E06678713BFEDD53E78FA2 8E03FF027E8906395993FD3CAC064A543223FF358A318091441BFF81DA998EDC7293FF FE9899F343EFA3FC4570AE430352E40007C2F5245CE0D3FF0B5A6E75FAA84400B6EBF0 6CD11F23FDD2FFC5BFDB312400B4AE2A8E56CB040028F66DDAEA634400A1421E307E65 E3FF0B948A5A2001640025BCCD12C42C43FF08494EC1FCB843FFFAFD288D52522BFEB3 BFDB04F371D3FF5F174CC5609BD3FDAE79234BA34464001482129FF4EBC3FDAB8EB915 63CE83FFFEAA3A706955340058BD181F7AE9C40092D9414023CD840037FF969C772BB4 00A23F581F00DC7400234189D3D56BA400AD75B8FDE7BBB4000B00ED40CB782400AE95 8230961C23FFEDCF7486028E8400B75474B70C7183FFF41551467FAB2400D0F558C9D5 15F40006E95225F82A8400D36889CBB3FAC3FFBF27D1DF78F6E4008178EDEC19FCA3FE 9BD9A3D82AC0A400009C4BCC00BE13FC4FAD56696AC234000752FC4094F013FF3C7428 4022E24400E6A2B746BBFFB4009C30D22E37C6440139156B9419B0B400882D1A02B853 840096FF6B2D404753FF1CD04C981A32D3FFC4AEE2BB520BB3FF69B3EB7D724CB40046 A65B96418813FFCC90CC839AC343FF0D3261B8EF1C93FC77647D09E36863FE7F71DEF5 888F540040FE610C53C564006495006DB004C4004DEBCBAB6CFFF3FF61AD7EEA9C2F44 00B9006320FBD10400B718D8036B1B6400B45BE0227221A3FED2FF3A34D3EC34009B59 8FDB818123FFDF490541E35F03FF60357E9BE173E3FB5271D628DF01B4005F5CF05DBB 3BBBFE2FED2838B4F353FFE531EE3F40F963FF5E425139973813FFA71294812F78C400 15B1CB712C53D40080AB98E75833940001EFEF190097D40101E9DDE7C4F5F3FFAF4E3D D062EAE400F902F14614F493FF43D725B542C5340073BAA8245DCCB3FF20C191D8E1B7 C3FF46D1BFB0EDDC43FF89DAC38D047D63FE0B6F336E2665E3FED46478DE90B8F40035 B0A83FB7D1E3FE8B3B811AAE7903FF976E7469CE711400A22D7901D37FA400CBB501B2 189B74009C86646532D2B40008685DC687F064003001E66285B2B3FF6015E81AD850D4 0004406F431FDC53FE10AB542F69EB03FF511071BB38305BF9F33D274B756F0400056D 4765BFDC93FF7FC663438E0FC40047550207CF7E3BF99DE8624E60B70400C83C757CA5 7953FFC1A6C9C39A7B9400CF86C43AC69A340041365EA79945640130583E3870A523FF 9F64EEC19B13E4011B160700E9C1C4009A6EB17226590401048C21D5A73E83FFD7DDE5 EB14B92400926677CBC168C3FFFCF9FB46712074008A7B32E1975833FDA5302F5629B3 0400645EDDEDC1C8E3FFF2D496343131E400E00E7F7FF81D140000D1710F9F8E5400C2 7102FC405DC400149CD0CF15F8440060E7B469FF9F340012F4AA895FB8440082BF1848 415BB400010B8B34B0B1F40080B9490D0E2133FF9B3E8631147434005D1E0F24D9B343 FF224BEFD43E14F40040585A524C7FC3FEDEA9ACBE5BBAC4004ADCCA84FC4C83FF0ABB 435388ACC4005DF34EADDF9283FEEF31980127714400321D93C0B01183FD5BDDB7E963 1F53FFAA868EE544002BFB9290DB3C565303FFCF437FBA2E1873FEE0B9C070453CD400 B30A0EA32228540056072E5D0D2864010BB4D67C7D55A4001A1ECB38F98C84001A0A12 1C7EFB63FB2B079CC4DE4CC3FE751E1FDF0B7DE3FDBF24E56FBEE1A3FFB13019990587 63FF170E7825295D03FE01BE342D33CD5BFCC2260D2FB9E5A3FDCE869DCB101B040021 4D24A8D5E1F4004305A42D36A524002292C7520E3FF3FED57035F1BF22340069A508F5 91E2E40053515513F87984003EE6A5049DB73BFB997C3DDFDB48E40015410196A8B793 FEB51114B52326F3FDC8F527498651DBFE6CB8CE9E6D0834000DE57D51FED5BBFF12B9 E86CDCF0A3FF8BB90E5D8DC813FF19D653FB4DC673FF681214D3B076C3FFE14DBEBC29 BE64004EBA0C11340313FF7B9F4F9137479400AB2A3914D5F0B3FEADA1FE29C6BB3400 7D4AA39D76B573FCD53024DF1EE703FFDC92599DA9A053FC240A994A834E43FD9CB59E 38A3DA33FEA0601FD81E66DBFA57293B798DA243FDFE5EFB5D57F064000E90F4B1856A 23FE0B5A3F998D5BE3FF55726F990684E4007826D410D6727400921736DFBCA364004F 45AC38CDFC73FF4D44F3CB594B23FF78452175917673FD7B408EF257F383FEF8F869BA C10E0BFDF7AAC0703861A3FD80A77441F9FEABFEAE69055A892E63FF63B25CA71B9B63 FF0122A1FD3EA724001924B41FF2658BFD316B91623E7F9400A8D7058F93F1E3FF796A D41B10CE34009F2E21BCB3FAF3FFFE324181F5C0440105109897826EE3FE953A43A66E C80400BBC287AE60E8940016630D0247DFD400835B27891A4803FEB2DB4F0F64204400 20DD04234D0C43FF3F2FA4A6F05D3400402F65A2EADA8BF934463A6BEF8604003C183A B3B768B3FFB229DC1EDA748400BF8C4F823CA123FFB01719D1F962F4008AA53FE5643F F40064A2A57572FB7400BDD429D3695D4400756BCC2F21690400E2807B259DD3640056 467CC05848D400C54F00614E14A3FFFC3E63129E0584007953AE4878A803FF38427E03 C09464003FEF7E5B24CA63FECE24F99CFD5AC4004B487B8549A9E3FF23BF9010E23F24 007C232D3AEE2503FF5CD0DAA2C2456400789A434452F6C3FF043428409DAEC40035AB 4CAEA9D2D3FE56C678FC826C5400438D7D55981BC3FF8D1A51E9F152A400EED7CC4E78 BBC4007D3D65AA55A3B40115A95FD5DE8AD4001F20D3A4B972240016F18A331A05E3FA 8FED3F307F60C3FE8926418E0B1B63FE2F36BD82E92523FFFF9C8833968433FF8EA9F3 7BD68A23FF1D9C8BC8689FE3FDFE4AE52C2B9583FF382DF1A4CAA2D40081B529E4DDB3 C40099A401505916A400690F76D5B12263FF4FF0299B0E17C40087D4E782A07274005F D37B72A54064003F525604EB134BFC0ED0EB756725E40014D8259F810353FEE0FE3114 282E03FE555110333F065BFD557229B6B3B46400527B34A63ECBBBFDA110155636FB34 00259DEA0C235CC3FFDEC49746D127840010F57FD341F8340040ACB40471E014008C91 263D504073FFCE3B0D14D1B40400C0E2FB33975B83FEC69E4D795284A4007AA9748D48 72D3FC9D8E874EA23673FFE440DDE71AB563FD232EF7FE379C93FE62E2EDCC6C1F73FF 43ADEF5231F663FE1D35F70A872B63FF35471AB3F38F5400709005CDBE5443FF479FDD F50124C40002A9F4580766B400C0806ABAFBABC400C6CDE02FD8FE84006F7729D473E3 23FF69750B74E1BF53FF7AEE2010518483FD5AE8F432E4B943FEF4553B453FB82BFDAB 8A07371594A3FE296223F2D4426BFDE9B7C762994713FFE8FD5E59CE95C3FFA8B0C926 86D8E400782A7434C88873FDE323FB193ED0A4010358361BE82624000E54290BF6F954 00DF08455296C734002A8136FB9FA5040110DA561A2A1BA3FEB371B04AA9220400B9AE 44BB03A0D400129D525C94DC3400861A69D3EA2503FEF493065F9775440043EF3A500D DC23FFAE86CD2299C4E4008B1834BFCEF683FE5D20C7367BC974009DBA3F258D3B7400 3A8A1F8E32EFC4010C5EE66C0D7AD40022372B4EA1C52400C1742B3A49899401000F56 67D4B094012F6D6EB4FBDAD40109DE607EA54444013B257F5109090400D96BC60564E3 F4011A2F40616FC2A40058E4629DBA9F8400C2DE8751068FE3FFB48FE9F70A7A04007A 5DE38399DA83FF650902B0B2B88400965A33D4C31B23FFDD3E710C98B3F400ED4EC67C D21344003374AEC5D0AFA40106E4192C2108F4002111AB4D2351E400D68103B879C823 FFE059DB50DCA4A400D07BC81F4C1DB40040EA78911BE4B4012A4ECAC646EF8400CFB6 0A4DE4B6340137722D0424D1C4005A97DDAC2124B4005268943A81B913FE27453D653A 3433FF69846A0E23B7E3FF6326F13D9EDF34007A2B93B5EE807400544344879F497400 2949954D8208A3FFC13E275EAAD0E4003B0E8FFF39CAF4010B718C7C666674010F5821 6264507400DA3B1017950D940004B7854B62436400D2E69FD219E174009ECEBE63BF44 B40079C0BB2D602353FD69CD3A12740C64005E62FEA80EED33FFA6097AB2EB55F3FF88 C788DCC26A33FE61DC1038D89DD400E645B822B30C53FEA8BBC88D89043400C6A49DA2 B1B4E4008ADE52FD9EF834009F8AE66A6BA0F400BD1360215AC56400F46E96EFEA1EA4 003B65DA99F6ECE40102D8D07C237AE3FF5B2BEC7DE60D5400B5BEECA50D4FE3FE70FE F229BD59340042D5364F78C173FF102EF139345023FFA20E7A2DF22274002D10AC4A6D A443FFC1697B437A7884003B323066FF59D401080C7B69541BC4003A503D76D15E4400 89931CF2F947F40119E352FDF257840112C777DE25C6C400BC1EC79A04C513FFE93D2D F13B1E33FFEFF75D420E06D3FEA30F936723A833FF8A51EFD281DF43FD1B0F5BF2FE31 23FF6E96C6AFA1B653FE0FF867774BF0A40086D554B2580B340071EDB698E63744010C A5FBDA826CF3FFB19AEFF861B8D4014B6F5E9385C334008CBDDE92A66D7401247FF6BF 041A040080A443F1BBA6640133E90CA717BAE3FF52AF762033526400F4781C061D4514 0053EC269831617400D517E998C3A223FFBD8D136AE6AAA400BA2A607EAF37C40060BB C79EFDA6840111AC42798937B3FFEEF3906082DA24011EDF814A8FCC3400D24B2ED4DD EC440150BC7E97465894009795A89453B6A401111EAD9A3BF7E400078CADCD0682E400 63931F9EEF9E84000DEE91E08D9074005FD7954DED7683FF5DC5279B8A3B23FFEB15FE 7C33D643FB1AD121A2EA0D03FE9DB22AC5E92E2BFF09C4B0EA6DD3F3FCFC073DB82A8F EBFF3804F1E2BCD303FE6603C6E5B47A2BFDCE6F0688077503FFB184AAB020D323FD78 4F5A0474A0E400132716EBE555B3FD42757DEE108473FFAEC741112C918BFCC7D7A270 EE2803FF6280CA447C44B3FBA2F1E6BFFA22C4000D7D8796EBBA73FEE6BBC8450033C4 0010C2B176801F0BF9C4E572D42F8A0BF9CF42011177390BFFFA9D7D38A7299BFEFC42 D15028D2EBFEB69FA978FA2393FEB604AF99C53883FE5497855EEF2E03FD8434CDF106 3DCBFCA0207BD0754A63FDB51E63CFBD6BC4000256A7D40B2073FFEC8652DAF6AAA3FF 3AC39BF87E1C6BFE273DD3F95612D3FEE124C0A80ABA73FDFD23879818ED13FCE4EBE8 DD3E029C0022D4324E54CB93FCF8F7D234955B1BFE5E11D378A8621BFE483E93970D8F 6BFF5AAE561D0D9D43FFD5FBF4AF55EC4BFF1CC619BE813AD3FF910FE4C76DC593FEFF 6C1BEE5DA903FF04B1BFDC469EF3FF16B03C7586D953FF5E3C70CC8DF52BFC964323A8 AAFB53FF500EA27F68489BFF61DA8884F2A6B3FE7A343885852E0BFFD9485D65ACF403 FB9DC3AA6357E48BFF326570B1720ACBFDEABE07071BE3C3FD66F9CC82BEF7DBFC8555 1EA6E68813FE0489BB4AE01924000D0092B5C7CCE3FD3D059BC4904793FE8D02966AC4 50E3FFF1DE05DE4C0DB3FFB13BB5D15670C3FE89A898FC00F6BBFEA9D5F41ED59C9BFE 90D8F692F7844BFFD182494EEE974BFEEE72392AB73A6C000943ECBFB5A61BFE8460F1 DCE8DA6BFF8687E66BDAF3E3FF15A3E83D933F63FEE5DA1DFFC54794001C1C3DB4DCA5 EBFD84E74D6E2902D4007BAFC01489C3C3FE747350939A8D7400058A47DAF2FE83FD69 47F3932D6FD4000AB4B5B26D9F8BFF6AEE407BFBD3E3FF385C7B51112713FB2A1E787B 34EC03FF3A41FE3A3FC68BFE125C0AD4721673FF54141DE65D8A13FE7D8D94E43FA1A4 0029F168BC83B3BBF90D137CAEB66E04003BE75F42995EA3FF82DB59243CE1A4007D3E C7DB0D6C03FE7B1897D54397A3FFADE104BD025E8400734E3BBF6B6E1400C4CE3C3F9F A8D4005E847449D5F754009C57AED3BAB2A3FFAE30BC0CD90BC4000C86716AE39EB3FC 46DD82AF80EDC3FEBD2E23F8AC9D6BFEE1D9F17F846383FDC2162A79BF2EEBFEC749BD 3D1D8DF3FF303A483F19B0D3FC8AEF9C7AA6A084003B60DD903B5063FF36E437233DB4 6400816D6719F116A3FF207530969726E40031C28476861653FD5A8374CA812403FFC8 ED8F091E22A3FD680667EE557A24001E7FBB17B413E3FF052D2A79C716840019AA54A2 239DE3FBAF0D1363FF80C3FCC4AB9C5A7F24CBFF9430B8740545DBFDBA165C9D59562B FC34906704EB8E73FFAADA28E7F5A503FF86D8630B8F19A3FF39DD941E6219E3FE2272 01EC8E40C3FF12414E254606D40040F2DA3A2AD774002073330F925883FF6BC83EDFE8 91CBFDEB1CC747FDA6C3FF00505CED6714B3FE2CEF00438F74B3FDAA5185D4ECADBBFF F53CD02B5AC123FE703E5AA45A533BFABBA49D386BB7F3FBE56EF75D950CEBFE065674 70878B4400597547127519FBFD2BB36306736A3400248DF21F1C5733FF936498797836 63FF6F4DD389F1F2A3FF5A2216DD1A9653FF82BAEE9E64C0FBFC0053635B07E8D3FF61 1AC4F7699A2BFF422BAE1170AA23FEF2C9BA8621F7ABFF7703F7E38EF3B3FE4AB4E06C D250CBFE0221AA4CA24283FD4C00C1139E05D3FF35BCEB83327903FE5290E0FADD19D3 FF4A26ACE6893B8400615A5474F579C3FEA15E1F76DB5EF3FF1EE49C96BEDD84001307 39D8F2B453FFCBE50A962766F3FEA97D77F06927EBFE7E78764035224BFE3AC7EDA244 4F5BFF84FABE3BF20ECBFE04E46B2D58E1ABFF753C81A2A76B0BF850FDCD8DAA9E0BFE 60F820303B8D83FFF2C82186837983FFC6A0327A6C3FE40079BB27C853ABA3FCB3D64F D261F72400B318016436FC13FF0160F47E7CE1A40019184E190A08A3FDB8A734A086D2 840012EF2621C30F6BFF4D6F65BC4B31E3FF7138AD233BB843FDC31AA82D175823FFC1 997CDFFA1563FC251F77CD009D44000FBAF84AAE0983FF9A0B297FDC5D64009766C550 51DC53FE8C5E05C6256DE400921328BD46E5A400043CC2FC0C2E4400AB7890F9779DB3 FEEA0A63731CA193FFCA83AF47FA0C9401887FBB50F34BA401A8ED1E75599744016BBD 5608B72914018081CBA7169CC4011544F73A80ABD4012A49EF6547BDC40058C2F4B974 090400B82D83554C16C3FFB903E6AB3E84C4009EE8ED331A0A5400093FE158A3750401 13880E7D01A7D400B7C3A041A06F8401721F96118B5AB40123174500BADD040192E7B6 F4A2DC24011387CD3D833FE4015B0345BC581E04009AFCEF3D6C31E401206B11C71287 04007A791EC05E27040131EEBE4291583400C7F456AA52287401339153325B8BA40069 D7C4A4B5FB14008BF73A69C402A3FF745755904F0B74005F92369C0FC3D4009119005F 05EA34014014C171E8D954013625400C517874011E01B84493885400D78F79559A04D4 0102197BDD46EC740153CC810F067C84013AB5D1628958D400FEC619C71537140006F1 83A57C453400C8359BD65F6834009EAD507F78B1340099F61935101F33FEF95F3EC7AB F45400E91B97542A1CD40096C2A86D997C1400B76323EF1CB344006957CDE0735FD401 7F6C02E9593474007305B19C6225C401556DAAD1061364011DBB3A2AAE71C4010AEAFA 9D46FB3400FBC6689943CF9401039948CAEBD8040034F6F9481B487400FCDAEDF740E9 A3FF730B4F7273F78400EA4ABFA4629C93FF8D667A303AF3B400E7CDA4229027B40062 C58CB1F9CB0400D3F57295803D140122270F1645053400F50B3E210EFC84011AF19B3A 1EB4B4016F43A38DF2B38400D0FF4ED03050D400E600A376F73AB4012E69013E932704 01152EEDA4FC6F3400B1ACDBB58D8703FFE4B885DBD54574001407E862B84F13FF68B8 6546535AC40049E2AF64D6D6E3FFC33E383447EB2400A62B0B9E1C0AD40052CA32DA34 5844014FD9E06128D4B4013EB290C93C2254018105CA5A8504F4008F1BC48E9E766401 8990E2E02CF3D400D0B49EBF209914012FBD2A3E4029C4007BC57545316844012F1258 E1B33F43FF64590899759C840112126B0A991F0400B885329A4B3104013A15EB71DA5C 6400B478FF161A6D54015CE9A309ABB724013B7887CAC3BB44019C8745FE81E18400F5 B9692E0201540188AC2EB47FE0D4013776552E20BF340181D591115C7F6400C54A0C64 0E1D940114ECCB72C76654013ED3D24D483BD401553650FFF0F204010DE160ECBB99D4 011A08AA852C33040052338922438F3400788528A6A1D063FF028238BC56A653FFD984 40B0C59993FD16224438BE0D33FFF32ED651367B33FEDF3C1E02C11C8400A5C0F0C18F AFE400403E1C22122F2401374BE3F041F7E400CA2CBE1E60B684014E204EB34B7FC400 8AEFCECAC700540102A79CB5315223FFADF0F129311294006DEAA29E4EE083FF3EE61A F6C63CE40088D76B4027A883FFEA11AB74F7F94400A31E2FBBE37133FF7240E52CD0CC A3FFDFAEDD73090C43FD84E6D22BC679C3FFC720D571F58384001B719C1C7325240104 51FF6221B8B400EAFB53E02F4F4400AA9296B133E00400323DF74B1B3524004A754CEC 06556400DC2D9F2123ACF4009DE9CA69C9FAB40022B763A3278BE3FD74D8F295F3EEF3 FFF686B325152E03FFC5EACC8F032AD3FFE510FC947DAF5BFC50002556B20014006668 FF843BA2C4001E9681EF5FE1C40041ECBC394850B3FFDCAD73DC8E1314013B78288EBC AB53FFB1DE84D9D0A02400FC3BAB084349E4007941AD18883B340044277FB2DAD59400 2137B02D7F79E4002BCAEE6139D1D3FE8382C844F6FFC40037129A06C99563FAAE8982 6A9D4E64004C1C25FBDDEB13FDDB7EB3687B41C4006AB7C8B548DE43FFD9AE28E53944 84005D01484E07656400C451515C781B240065774B6F9E23240092AC5668C3B1B40113 659DADFA9D74000729D1495E7794000F679968C12F240080D985C9A1D3840051478651 0275B3FFC686D302379A73FDA592A036530303FEA9F69DC5C57AA3FCF142A20ED17733 FF8B78733BC9B953FEA2DD4B4D9015840030CF73D1F5A153FFB16C204DB53FF4010CB2 7B3295147400E551BBCCC4FDC4012AC310CA0C5DD3FF9D836C70AF79B40121610BC6E9 3593FFED65A4E05A7D940083C7107B373C43FF4D2E5C68D665240096A5163BDD406BF9 5767710D3A82040083E2E0F770DEE4002B80785B9939E400F5EF0BCA957724003E2D7A 2C5A2D040121AD771B43886400F835038FCFB8040155A650838961E400549ACB275138 24012DD2390B65B65400A6BB68D3193A54011707617BCB2753FFD2FBF1E66C7D640050 1842A76E8F1400B95040FB6D2D5400D1CAEF1398C5C40031E6B6E1506084003ED12703 489DC3FE64EC29280F9103FF08330F2E0E358BFE9C503D4C3FDAC3FC61AACD5894C30B FF3EEE046F7215C3FE2CF32271583F8BFD334F6B60AAC2E4001151A3EDAF6FC3FF5B59 DE565AD3C400D5AC33491CEC640023B424E75FFDB400E3370902058023FF7A9D68104E D124002460FA0D3CFBBBFC8DCD10F8FA4103FED7EB229407604BFE61F331F7A7A593FF 32044337FEF9D3FC41A965D5656B03FFAAFA29F287B913F46DE31D6E9D8003FE257B56 0A0F3EEBFEA13AE947B8CAE3FE43FCF70857F353FF0E049E9125C824006A6B09D77DCF F4003CA0B153EA1EC3FFD0AE97E4C620E3FE6E5A0F2106C6B3FE888084EB2C2513FFCF 83FC2311EC23FF49E29723149F33FD6BB9ACE0BE25FBFF7681D94AD0A643FD150D3532 0BDBD3FCE9E02A85E4E263FE091B8E3A5AEB7BFF6938C5B3573423FFA2A620A3601113 FF186CA30A72FEB3FF5403BF2593F4E3FE2614F212EFDE1400BFF01939AD8133FBACB9 E3D9AE6714001D1D1B171CA1B3FF1552DDB9063503FE32BBFA4B11FFE3FD473222247C DF13FDD656F3B0524B9BFF03A2D527172883FE9D753E8BA03C3BFF68BC78A6587853FF 47DDED38FBB33BFE7A3F36D22783F3FFAFBF0F83336B03FE63E485DB472AB3FF803565 9346ED540017D395F6B541D3FF4AAD455FA4D6B3FF7C0D03E9030B5400400BF520D161 E3FC3A6FE86D66C143FC6855400EAB4DE3FF15B2D038B2D643FE97D12DA0FAF183FB15 F63CB5315F6BFF23836B3D9D1FCBFE1ED0A71474DCEBFF03F828B4ADC543FD7F553D16 97656BFD4C706D68A31C63FF33A310D493D273FDABEBE8AB08FA24006467C7EB24E224 001BE27FF781AFB40078424A8980025BFCE87C0AE81BFA24004BD6828A8D107BF8EA3A 456DD85803FF235E016C3E0D4BFDEE91B03B805C33FF89BFF4B16BFA9BFF7FB519685B A843FFB3E8BC08D9CFF3FF20B3C91C4FF0B40062B9BE2C8336F3FF5596B3366F9F2400 A7B5197C7D5294004D894FE58CB8E400ED443A4C0FFAC3FF03FA2E4195C6A400768967 D9512893FF686A81E74914E4003558E6D26C700BFBA5A47FE77FD603FE8D78A60751A8 04010F171EF34435A40112B749F96B2774007A2638B1A4F47400835858026D4F33FF44 9E32239B1623FFB288177A605A8BF5DE97F428D70003FF22BE23DC39B80BFC051F4EC9 9DC483FFD507070DE99983FF054CEB2EDD87A400BC4026CE2F06C40052410A6B2AC2C4 013659A4F4C0480400A82A405A32DAA401298ACF0B6522740019E02482661C8400720B 6040792AB3FD659826743D7E93FF77153D0632592BFB5A4CC955B714C3FFEB27242C7C 66E3FF07F256E4363CB40059F3306C16BC63FF2E3BE9A4751FC3FFDBE5E185025463FE 0A7F223A459303FFF41F418B3430340026490A33319EF400F99017229CFBC400B7E516 6C7DAB84004F2F8846EDE953FF61820FDCD58403FF56686005295D94002C492F10ADA7 73FFDA619AC3BDC983FF0235B4F6AAA03BFE598BBEE9344893FF3793E5BD052123FF57 B82F88351B93FFC05465C3753A7BFB8654469A5AFBA4007C728FBEEE02640031CB24B6 1F85640042B01200A344C3FFA00968F0A8FCB40118F32AE17B8053FEAF1BBC142C9D74 006C048CB27BDD73FFA1613B27A24273FF23BA850271FCB3FED59790C311BF83FF2B30 E3514AA37BFC407052008BE333FFD3893A3AEB747BFCF0BBBDB27F142400476F025248 ECB3FE305E84BCAD4A94008181449D333A03FFF3247793A470A400511CA73B44F97400 95329D0E4DE664000E307E12F49B740014C6EB90C208E4008A08D235ADB2C3FE6111A3 D99138F3FE781398AC1AA363FFBA0BBA15F41C53FF91C0874861ACE3FEFEED605DD3DC 3BFA9CF5BF7E3256C3FE52ED1E5C0CADF3FD2D904C0FDC4DE3FFB649EDF37DC043FEF3 CEDB0A9100F4003418A53034C4D3FF7BFFFCE58069E400D8783BED45F054007C1E58C4 4D529400C878837A0AE243FD4062D12CEA10A40090B925AC565633FE25F597337939E3 FFD58A98A35049E3FD6F42EF66686F64004533EC5E06FA8BFD624AFE7E6B7524007C4D 7A0E6002C4003AA446C77A148401066BA6B9629AE4004CA534B8926D94011D448AD4CF 57F400CD009901EE4C24012C131B0E770123FFB4C3797569F74400C182EFD140D513FF F1FE294BBE1024007C2D79B75E8EF3FE0E61CACA38E263FF88C25E9C9D8B34008DAF55 972F001400898B889493EE93FFB515B904656313FFD093B337400333FC35710095FA93 C3FE6FE6EB8C9051CBFEA467EC5221FF43FDE30C905528AEDBFE54B71CC2485103FF5E E2B2B7C3E823FE25C9AD255D9824007CB1B4DF956AF400052593DCF771A40106836C16 DE3C140033E6484060AAD400CB848162720443FF06CFFB0E16AE23FFA6F151DFF3148B FEC77ECA07DFC023FD2893BC3DF3474BFF24C705FE0BED43FF029F33F8D80D33FD2265 CDB2B84C64000CD7B9DDE36DA3FE5E3E0B8E83D5E3FF697DCCE8D39983FAE36798DFA2 CB03FF6A679D0343BC73FFA297149F73AC440090B1EF0C9993D4003A9AC592718FF3FF 806EFE7D000A73FC5B289879D731E3FB731A7A644D7723FF20CC4764D69063FE72C794 4A15EE93F8D64A37D99C838BFF82BA616145E343FE1395EB2E9F6DC3FE967367A29DEC D3FF48E2CCAFF8D52BFE14D6BFD8AF4A84003DE4D5C13D13B3FFCCAD93EAC3B5A3FFCA 19F98B49AD93FE77618F4C1C24D400AC24E87A9DC05BFD4BA16471648B63FF9BD25C76 65DFA3FD8DE2A29D7559ABFA716AB04A4886ABFC3EF15CB377C623FCF4049ED913346B FED7091350481F23FF35E920CDC620BBFE7EB8F54FCF4BD4000DF3E407672B83FC196D 0DC2DE2584003DF7D1C19CB323FF4CE34619B98D03FFD4B242488D52D40019E9EB42D9 2223FF019CB5013C54B3FEEA84EDDC1D94E3FFD5075EED4940ABFE117A48385AC80BFD 9F8990A77D4603FE6F3D206154CEE3FE6F25729D953803FD37354C4D9E47EBFE389BCB 41BD6ED3FC846D844BEA2D3BFC3363455AF77F13FF3B085C75C11E83FD98C232CFC13A 03FFB0F132BDF9CBC3FE37B79519293A24005491878B7A9F03FFD064090C827BE4002A EA111F92EFDBFEDCCE3F9CC1B323FFEFFC71201710EBFE063B6F18BE1EA3FEC9754C5D 39272BFDAF31E9E3C74B33FFE9451827A0D6CBFEB84B43D1C523B40042754F191B2A64 00009F48DF251E6400CA8E9B6188DF43FFF6AD476E39ABC400D5DDD197694E740053C0 07A4355F1400CC684E88412663FE04E2DE1036CE2400222A3654E45EA3FE6EC46970E8 C9A3FFD1A1067523A48BFDFC38A57C730343FE54B7FC74A7B92400089ED80273BCD400 00C2BA2EA8C893FE593BAF93B203C3FEC0917972E4F32BFE4C82CC1C954913FB3DC412 D4F9990BFF4E89DA5CF25153FBCB09B2067F698BFEE5B58E48773E03FF1A1FB9AEA367 83FD05B43922273C84004668CC1AE93733FF78975FD574EE7400AF956DDD716583FF86 4F72AB1F0EE4004BDEE8309E5BEBFA160AFFFB4B1903FE2EE1FDA4041D8BFFE30A9767 972D5BFE2EB05D8C4AE04BFFDFA9DA9EA20CC3FDC3ADB05178789BFC1FC2F0E5527E63 FFC837AB71A1E173FDA97032F885AC33FF20FE9425BC214BFD33DD30B7948AD3FEDC23 719EC4CB13FEFCFFC00CF62E04002A3A2BFC149573FF84EA94A71591B3FDDFDC7509CE 9B3BFECC59137936CBDBFEE5DEA7066359C3FC6B9C92C98FC1DBFB7803ACEDE35B3BFE 4945A3D3D4972C00016F1AF9F68973FC578CAB9BBE66C3FE02DA6CA1C197D3FF0481CC C0551A3BFEB3C370A9568F7400094308CA0686A3FF3F0C8507D51463FF136673D3BCFD DBFC1167BABCB1A134002DBC5AB0ED24ABFF6179FA77DCC423FE171DCB125E5B1BFE3C 502C94B1609BFEE1205BCE77C55BFECDD2BEF311F6BBFD5D433FE787C92BFF5B7F8782 3B28A3FEC49272DE79305BFF04AD9BAA9CED83FFD48B42FBE1B16BFCB201435E1875E4 0001A9C6CE2E5E83FE5A02AAFD964EB3FF0BC5FA44B204C3FF46B4AAF4139C2BF94263 E7CAAE178BFBC22B2FCF520233FE92CD08EEC2F38BFF7F0439090BCD9BFF3CAA727C1A CBE3FA62BBB944321603FC9C73BE32B3D2DBFB3F3C8FE77584EBFECF235164B31ADBFB 39DAF92CA823EBFDD0237A583558C3FEA9ED2E6EEE4E0BFC1B537ADB89A6F3FEFCE437 F03872EBFCF264151F9E5E63FFAEEF822DEB4E83FE85D87FD541A2E3FF44F969B898BB 5BFFF237DE73E83AA3FF0789098D099E9BFF46488E6E048B93FD2B0A2DBC7B7D2BFEBE 943EF4A16D63FF93575171675CABFF2230DC405E0744001F42DEFA4D5173FFAA52492E DFCAF400901298299A64D3FF5AFBDADCDD236400736FCE03377EA3FFBDA95BB21F40B4 004A11D71B20FB2BFE1D35D0BB1E96B3FF375D93A98D4B6BFD06CA72B85B68A3FEF20E 2687F1575BFF2FCF6E2E583503FC133404FEB187C400C5084B7E8F2CA400C1B90B7369 2DD400235BB2880C51E4004EDEDD2E3AD723FF400BE91CC9F8240010F5705EBDB9C3FE BF9040E4714A54002F4AF310AED5D3FF52C6C396B10C0400A9863A9445CB24002F9FE0 419F4994012160950559695400A40C877C75FA64014204906A536BF40088B46205C274 F40104A88045D63723FF7233D8B641CD24001145281933F69BFCD1198BC9621C03FF38 29805D519C23FB906E140F12FE4400475F0F27897394000A7A2EAE9EF0F40103764D8B 23A344005620ABDF8B8F4400A7A8477A738A03FFC117536246B1E4006A2F83FD3B7E04 005DFA6ED4BF22F400F746F29F34643400836B9B984B2CE3FFF0CA043AAA8653FE342D FDBBF682B3FE4838F66A6DCD43FFE6F4112955F703FFCA94E29B917163FF659DDD477B B083FC45676D624177640035C4CDDB8B67240063B85D12A51E64009FB7FC0E0751B3FF 473F3180F4C9940103D2619D4AE5E400895EC18A2AC824005FF69C4D12F183FF6B6670 D915C01400EBA5CBE531E9D3FB8A7125EF9B5814000A29552DC32933FF07379514CADD 03FEB59243F36E8CC3FF0DA9C0757FD7C3FFC318B5F0142063FEB68A29C690F5240093 AE4E184A3E33FF3E5A63068399740101607F26F40293FFDB8845716D73A400F6EB1062 BDC19400373CC89F7E8254005485A93B904414006539750BDCDD63FF73F5CA39DE88E3 FF62A0F6513044B4002EC1F9A7481E63FCB4C1E3462F1CE3FE4262BDC2D312440008BB 1002DD4D64002E18EFBC425DE40015967BDA0D7EB3FF5EA77AF56BD6440014952F234A 2113FFB049DFEFB5DE04006AE00F761167A3FFB47AFDA2BE64640057572945D07E23FF 51E474370F70E40095EE1E680B67E4001E3B0594106C740065C6976B8F42FBFD411B09 0BA205540067615B37B8A733FE5447B52D15D7940030D4B518E69393FF552C9D9382FB D400EBD84D6EFC8973FF21CEC746137264011C7F7E4A4F573400DFDF63418800E40143 B611E1795B440090422BBC4357B40121DB5B0D0C2AE400A1B0784DF60B0401035EF6A5 291BE3FEDDA584CC84DCC4006456A303879C03FF7017F3E4CB58C4006955291C653193 FEA53F2FF66E960400240144C018ACE400CA105E9156EAB400D2D793E4905774004627 F3279545040086174691CC7DF3FFD63E0C49048354006C302F945A8D53FFA9D0EF0F3D 0B0400962D7A3C2C83C40009EB815653F5D400FC81557FA78594007009FFFF703D8401 3749E1B53AD74400BC91FC41B2C5840146D3C5A9708F04008A383C2ED7E03401056A6D 5A60ED03FF8570ADB2B65D040029CA9CDE70C433FBD820146597A383FFB8FDBFD8F389 C3FE7DFA2E2F69535400A7E72EB284E4D400715CB5DA1C9F240135F8813264BC4400B1 5B6B152860F400F2C1591090CCD40017C41314B4FCC4008CFBC49CC46E14006F18F745 E64A7400FC4F05B1FC20F40083E6D0E26DF563FFF93110714FDF43FE728CA264E50CC3 FECB80FB42D32DA40028965917EA27B4002E7C8AB4830F44000CA64241DFD183FEE2D0 EF17EBC204009CD85193C777D400C541348E893B7400F45A32C6DEB2C3FFCC2629FE22 04C4011AC782076EB13400A3B3E5BB669354006AD21233704463FF6F5CD6DDADFC8400 ECC8141EA47F73FC4C72D66AFC60B40020EAECAB5C4893FF5AB46891CCB7A3FF577FC5 84CECA73FFB036C9FB849B640041006AF8D33A53FFA87BFB40AF0F6400F9440F3EE1D9 93FFF774A04280A1E40127DB7B8543CF640027172E1B4D7574010DDC78086F04840049 F13686BD1CC4005A768A9B6AAC140065CAE3C668D693FF7ADCF724129FC3FF7EE1E8C4 6DB974004DA1F62E384FA3FE392F22C4B1D373FF2FB524B911445400611E85A9FBC6B4 0091BB11E392E134007CC4CF7BF788A40011C986356CA5F4006AD050343313C4001C9B 75A0381BB4009AE487C3308CE3FFECDAB7D251D8640063816681597513FF56F4B27549 A3540096C4C5D4D2C494002596A9F15AAA44007AD0E75216788BF6D32388E440980400 A3A9518807BB83FF492E3CF547E4C4008F21D56DD7C4E40010D4B54E11B1240128F4F0 801E4F83FFDD6A8616C4DCC40143E37E865F1124010DA5585473D58401572111EF676A 8400A49AD5A12B8714012552212E830CC400A26E504B2EA0240104C3423D2136D3FF08 45F85FD30C4400814DAD1B000E13FFD1DEB675ABC16400AE9E6DFF3449B3FF805F2477 A125240086D314E871C5A4002AF943E45DC78400456E3165F8FDA3FF9A5572DA0D3E24 0020FAB509C97703FF2C484477FD91D40020FEF3C4BC73E3FF172AB729F7CE0400467F F6A907A723FF5961F2472AC7A4008CB5D21F582D03FFD74DEC8225992400D6E3951192 2CC40015FAC3A1CCBEE400DEF5C25DD63C63FFB70CE67399FE0400643DA214DBD523FD 58414403BD7AC3FF4ACF264026AC9BFE842A0AF48A6263FEFD115EE6ECD4E3FBFA20FF 16AF3404005E9412BFE246A400262B7A0A7E84E4010B7B0F3E22FF04004C3ED98D2557 540079C41F56022403FF14B5612C3B4013FFDBC953DF9691C3FF87D6CE751B74C4004C 9497DDFE9CA3FFAFC967BF40A9E3FE6FEA39130D150BFD9603CA766D8C0BFB07227945 8AA4A3FF83259EC1086353FFB03C76690977F3FF819CC8272CBC43FD7C90E300B5A644 004E2B85F18B48540069ADC8294050140086980BE75503E3FE8F1ECAD4E13124009FAE 8521F8E0D3FFFCB371074732B3FF792F442F382AF3FB1362114528E0940045061537B7 1DDBFF0959BC73AECEA3FF34E7669779D233FDDBFF17828E89B3FE3343119D25EA03FF 0EB3A3C0D65663FFEECC7612CC70D3FF133C37519DAE4400A59B8ABEC01193FF30F54B 7F7F3C4400D8D45F4EFE0D93FF375ED5569ADFF4007E37BAD9FC56A3FF3F58E990EE70 33FF55A4AC6FACB113FF7211AE3AC52AA3FCB5951AD87BCD53FD70DA6E583607F3FFA0 D7FB19C30BFBFCAA7F7811FFA243FE002193961B3B2400148B04B32BFD740048B3C267 5C9F14002F04F5188DF753FF6F9E08506A97F3FFFE22657CDFE7B3FF38D4959E6DE8A4 0006DEC1BCD9FA43FE4987D81A4659F3FF6BA7C504AC835BF9F2513B5A0F5703FFDBD5 8E27F96AC3FF14D6AD73832643FFE493B8E662B84BFED189D6C02922040042F8DF9945 EB53FE4ABA6EC5D35C8400452A98D407AC03FF8D614B8262F3F400FF821D4A750773FF 1A8F40CAC32C2401097E53AAFEBFF40091EB0DA6A37D040109329552CB5BE3FFF6A57D 8BF1FC04009B2C773C1E6183FFEA0288B9FD12C400660A7C58EA6F8BFBE3739AD7CA90 040001FB6B454FF5C3FEF80BF3FE12B0A4005548911F48EA93FECB2EFD18257A94003D D05D1870252400B9EED07DEC8A6400E8CFE6C390748400846D16FD29B4C400E85EC039 6C1AE4006751D58486CC2400F40AC6EA3FF214005846C719FD27140102D22EC73798E4 00594464DB6C27E4011258DBBC906C64007055B700556784012655A5C4E921740083A7 E9C4E7F9E4012651744078BC0400514E29B20D16D400E8EC62D41E72A3FF86081BB480 BC440051FAFED7EA1D43FE786790A113D1E4004BF5C33EBC76B3FFC5B9B63C71F04401 17E0E30435247400ED8F853A2126D401671C3E0634888400EFA08EEABCCB2401045CD5 F7C872040007A285014A9774005F1608FC98D57400308FE87EB652D400BCF169F35718 E40053A5A903E1C763FFD1EBB6E9C4DA73FEBA148CB9DD2AA3FF5A44A32D27A3140087 936EF8ABFB4400A8A54C1E61654400940B33C5D83F23FFFA887FAC0143C401077B8452 343CD4010C254830EE5EE4011055CC5AD13533FFD48C45C0F3CEE4010B59A3812E01C4 006C7E377FF587240029E3364B147AF3FEF4E002ED88086400C7F0F8AF560D23FC13AD 77EAF55EF40044F8510B4E7B43FFF1DF675AB4068400186E20621874B4005A1E910924 45F400C925482A03A4340052548640D32BC4012F5D67BAB2BDA4003DF6FD1C5C29C401 34E5C57B921274001A8D248C91DA2400F051E833DC8E94000C672F7D090144001A6F38 A6F633940033529C51071F03FF4CC5345CFB7C43FF9A888883AC28140083D72C72BB33 A3FF53C99440089E54000FD3D306DD224400E7E2A44F1BD7F4010BA96B8E0C950400F1 6962237CBA0400686ED5CA9848C4009B3EF70594E9240024C373E1067E64007F324AF2 68C133FF8226C23F68FE840022D3D5E9236DF3FEBE8137826FBCC4006F1E62F489BAE4 001E433AF3029384009ABB1EBD864063FE1D301DE56810240106B7A5F41E76A4002516 4E2FCADAD4010BB2BC2FA6C8C40090A7D1238FFF84015D39B4DE4D25E40034DC39C6C7 10540152FDF9B5EFB74401093681C2C8BE340142BE01714525A4006839E2BD3762B401 050F2D330A33C4006DE42B53CCA7E400EF2AD26A68B193FF1BE220D76F5FC400B36DFC 2224DDF400410C0F37BF69B4011221D6A0D3E9B4004627F68E2DDAE40106A41AE80419 C40109A9861F46C5A4012B0A655B5E8A140100E9D447EAF1540137C77CF27ED40400F0 602F0D13D444013B5F5C69255E1400CD6DB4626E3BA401341D27D4A7BFE400A742D098 3E5D94012FB17F4DB67EC4009C1FF3DB9F078401382D7C07FB83E400A757964B0CBF84 013C3692AE1D8CE4008BFF70D4593E44011B7567487855B4002599FFF520AEF400C721 EC205B3433FFC19BAC209F7FD400D5041CC7497F14006A0D14C9CA84640156942BCD8B 3A64012D6A3496A6E1F40193CE5BE6850764011A4C50F3AA8A94011E02035EE3B2A400 2ED66A7121ADF40081BD10A3CAF7D40056EF40F71858E400EEB4E57AA215440096A37C 970A794400403DFE5530F343FFB3C61DE481F6940029257791C524F401070E8322C917 340118F25119D66804010BDFEECF65DB2400741248EBE75D140139CB2BA00738940134 3051C999D704012E9647A1F6C7B400174D6B23E69414011D6D2630DBBD94008FCC5216 777684005482ACDF56C003FF6C4AD52C14F6A40109ED9A65732A33FEC707EE8529C864 00B86AA82B603724007A8F960B32878400A13565EDDB196400E1E0248CCB3BA40123EF 1C9288C16400C176515A821F54015D1CD69A85C8740084F0AF278BCAF4014F55E59DB9 0C840042A9D8497B9BF401098794A5BBF0E4003206984F326634004ABB843DA447A400 745E6B3506AA43FFF71C2E10AD36640036B1F98AB94BA400FE667476E906E4002FB2BE A4642C9400992DF905D686A40136421FB370F6640147DCE54508BB64012C05DD1474A0 6400BA9F2074C6C7F400D99AA67A6DFCC400531983799ECF4400A3E63C6E9533E3FFC8 2BB5D3166C04004C5B4CA37D05C3FF4DACE04864FCE400B8F8CD90D44534007CB703A0 6101C40106361124FA0B63FF8F89F456B51FA4014AECC264CE3D2400AD53B41E1A4A34 014BAF95125AD0740100CDD1FC5F66B4018C0544C084A804007DDE0C3FB288E4016E40 37D6EB7BE4011DC33112C74D04015432D69E691D04008D2E4C4A36F2B4011C81E3DFF6 07E400AD0707C85473E401211D0307F41FE3FFEACC4F572C43E401163CCA5EB492B400 C609B1BD27DC740156D135766AECC400CBA255A8CF731401439C98954DD694005FA1E4 DF8CE32400B28550F73BFA5400680DD6E93A282400D7A7481B5D687400521E15A2F156 6400CAEF9AC88E88E4000F0D9B2B2141F4009542B013F46DC3FF81FC18D0BA7564006A 3730248955E3FF3DB32A1F2D09540073149943EE8593FF64578FA85232D4009228612C 59F983FF720FA27DFC5E6400788AB559A3B483FEE72B87AD91F9340028DFD2B638B7F3 FE2398911ABE0294003B3E4B20ADC3A3FF8CFB361492D12400F977303C15CA04009342 999BC179D40125CF5FBBBA88840046ECF1635E4EA4004241E0DB713403FD843B363134 4403FF0E4CBB93FF6C83FE9EF2C4B0D836140010BCADBB9D7F83FF99EB284A576F63FF 154BBD8D9AB873FDA7814CDA2837C3FF1D720718FC21040076665108B051940094A340 BA72FF84006D97DB62852993FF6F77186AC019A400A2B65F1F3819C40083EB8ECF518B 5400693DCC352CF443FCA7E653114C4114003D325BA60C22E3FF32EB7AB118E7C3FEB1 E82D9F47C66BFCEE664A0928537400536C4D9B5428CBFDDE0DC48688CCB40019147F37 0B73A3FFC4C1A0898FC8D4000800EE1F54C764003FA30A35ABD274009609F8EC932E93 FFF7FE478FF5D9E400E03D53EE0DEA73FF31B5C83358EE8400A5D273A62E92F3FE11C4 383BA69D640017B886CB73FEF3FE0573624ECCCA33FEAB451F3DDA2BD3FF5127B97964 7F13FE101703FC322BD3FF20966C7973AE6400633E5DA91B9C83FF302DB2A2609283FF F9B31196DEA76400C3F52782ACF1E400D566173D50B584008945F980EA7823FFB00989 2EE527B3FFCDF55581B20C73FE5B5DA68E77E8C3FF4BE555CC7D45CBFC358B9AE487A5 33FE8A6D8E5399354BFD8229848D81F673FFECED15D80AD763FF9AE3F7B54320E4006B EF09A9C75AF3FD79C93DD466AA3400FD20DF65BEA294000C575A9155121400E75CF1A7 B72734003E3CB86B0089E401200B2853E3C063FF26D8FA5EF9950400E4A3C2FBA6CD94 003D7A012DA940D400AC640B77A48233FF363B5CA3C2A66400573098E2469423FFBE40 60374D75040088B911FD996A33FE35EED3D2B486D40090812BF0A45054002E72641628 9AD40109135F5AA5150400249D45B135A50400CEE1554DCF2C7400E107B99D6D167401 1EDA66E700C68400F51B739CFB35A4012F2D3E974E1BE400CB4446169670540118C268 07516E3400610B4A13277D2400D3F33A61749823FFE18F18DDB5C0640091E61FD5E220 43FF8D110981DE9F5400A2DE194A6C2CD3FFE1B8A443528CD400E42610146037C4001F 9D068512859400F1B0E5CD48D10400007E16FEA34F3400B5ED6F69F9C5D3FFA82B423A EA24B400BCA41FDE8DF5040037C1C228AA0AE4012B6D5793F5668400DC39EFC38DC944 0141742EB86FCBD400722019FE696AA40068E82BADD75BD3FE6B9809A6F250C3FF79D2 38F8FD7023FF5D738FD5258A04006C0413C7200B34003C52C314296DC4000AA847ED32 B523FF7EF20826BE7F64001BF79CCCFD80D400FE1A3E0CD7CE240107B8467DC6E00400 D6366D295F2684000BD0E291EB028400E33698D8B7442400B4F21A3DF23D4400916414 BFBC7163FE072F0BCB2AE3C4006BD11565826D83FFACC4D4BCD1E593FF78C7155D2C7C B3FE16800AB4F271C400CADDE7E699EA53FE2775B3E0EDC09400A5DB07EE021DD4006E 21A6F3A2DF64008AB9224596AB6400B2C4187A8ECB9400F58819D76D49740046F818FE 5E9364010C8E6BAEC7F1F3FF89EDB603947D2400CC8EF7E8FDEB83FEB83EE8311C4764 004C04158D561873FF0CCFD545CD8633FF87F80FA906DB44001600D530C97C93FF8528 985CDCC844001A186DEC4DBA0400F097C6D34906640020B7B7942A638400793FBF649B A61401174B6159A6BEE40115CAD289599D0400CBA0EC20F79144000A5A175B3EEA9400 0FADDF68397DE3FEF7649A62A2D9B3FFA6F2C997987F83FD3EE55E0410D643FF60EA22 B8C9BA93FD916EDA3711A8D4006C26D1A3A747940051EA31B7D621B400F85885B65AED A3FF76EBA1A820955401408CEA2B2D5B8400814A7091B7E564012479AA4BAD1864008B 3DCE0F2007F4013D4D080A7987C3FF810A3DF55BDAE40105C658409160E400666DADE5 DCD65400DF48BBFCB02FF3FFBC7F9BE33A4A8400AE3F0FB2FA27E4004A948A86B93204 0102E1F6E208DB93FFACF1354A9333C4010EEF9663832E0400B7EC065BFE389401480B 7E9D88D49400913AB851CA718401139660DAC35694014879242CECC7C40177BEBE33B4 C064015044DD4AF075C4017E1DDFC3F41C24012B4A46A128D53401541EC86E27FF5400 C476E6464E8EA401143BE626CC9274003D318E05DA91E400DE50216CE1D284001B0D16 AD13DE24010324DABEC9A07400679512EF566B840137BB2BA00DBA6400BD7E48DE5E88 84014E8F966317442400B246C5980B43640132EBFF13331F14007A3687C0FC2A240129 51AC714ABF0400B9E052FA25F4F40162468B9AAF01C4011C1F4FD14F9BA401696B4BF8 C8CD8400BD8176B67679B400B801D937144EC3FF6AC7A603C4FA540028A14520825674 002EBC3FDBBC377401000E2A4DE253F400E1103E2035AD1400B9EC344AF3D424007172 AF3985967400C8669BB6CBE3D4014ED14E19CCBA94014E6518540751E40127836AB5C8 81A400710C2E31111404011C7C1B167F6EB40100E9BA571450D400DD6C8467194D93FF 2A4B1D2FCFD58400CD78D45105D364004B06FB8AD426740045A503E20C46D3FFC3995D BC5288E4013A9C0FAAA6AD33FFF6BE0F29B20134012B2B784141FFD4010ACA767FC5D4 F401114AA138104594011B7EA5A587E6B401329E1079BBEB8400A492AE538774040134 F9F015AA494400106E712A407E84010D745AE6011EB3FF8E2CB567A0255400B5CA3982 308FE400044DBC8D9A8C84005624122E41917400B94A7245D23BB400711C95C3A92D64 00CC2CE8FC220A54014EF9DB7DF5038400C1D90012FD9C8401044E363D718C640154C0 B1372B74A4014955D4CC339D44011158A8653567740057C85DE8464A14005B6AAE42EB 2183FFA035E4C7BA7524003369DC203DBC03FF34E2D6DB4F23340037A32F1A9E37A3FF 993267C855EF74010AAD0CB3415FA40101875FD5084D640154A8205AC2A4A4006429D7 AA5345B4018D63FE1E3238A40103CDF2B380EB04015D57BE10904AE400EA7C9F61F27D F4016636E1E2E58D04000C291E65D0C8E4012C9DB78F7E9F4400BE0D70508F6B740123 92F6C1097474005A0956A7F79FE4011F373E01D9C32400EC5A7832D865040159BDF2AD 2A8A94008891AD61528C44016609F079417044012D4BAB63B64EF40190B7C0E0A6AE24 0107209B4F946C84014813DD95E5F00400AD0063432C209401029897D81CE9F400A8B0 693F17892400F1D173038E0F74003792BA5FE969340075EE995F61ACA3FF0681C904BB 6FA3FFBE4E746906E5BBFB83E0826763F303FF3A343F51E1FAABFC741E0CFDA715C3FF CE8FC5365604E3FE74AB19ABF1156400779D05E95214C3FFA663F84E5DB9C400B92D47 AF8119C3FF98ED8148C4B1A400763E5119D7F2F3FEE9ECB453B940A4003F075603FC04 F3FF23B04EAF079014008AD733645A0DF3FFE4E48CE677ADE400887D60F9894663FEDB 82423E7823E3FEF314587C93506BFED27A6028BD1F83FC2E929619665803FD68CF6802 5B87A4000F1F3BF7BB8463FFF5332D9BC2D293FFAC569782099043FF104E34E67D2D33 FFA468CC5AF05024009541AC3004F5F4007FE0053A2B1D54001E878D5AA1B143FD8899 BEAA1A4D23FFE03DF9DA3FBC63FF7042A14AE03443FF361778B842376BFF3DDA8C5954 25F3FF58C5A39AB74743FDF46F0871A65DA3FE305C718B8E2F1BFB3275AC6715CB7400 90FF2641D58823FC6205C79457F77400680FA2DE5767340017B6797A0026C4001113E1 908C29C40010F6BEB704F774002D1C22988B5423FE7EBC8DC4DAFBB4001FB0E2A3B56E DBFDB7932516849BE3FFBC698586EBB4CBFE9378541DAB6513FF3BEAEF799DEC03F776 666E869A6383FE8ECC6E4CD3B703FFA4305055EF4523FF1AECFA46D034D3FFC79C8AE9 5B507400A95A6BCAA7DD43FF76F632F25F5843FFDB98F10BAE4214007ADCD343F58654 0054017A91C51473FFB4CA074EB99613FBB953225C512B63FC7F1E65E0A4249BFE96BC A7DF1AB3B3FC044081D4DCF4ABFED06C2A10D1DC73FDE29FA03E8CBABBFCFEE18090EF 3EE40030C413A8A7D574001E4BE6F92593C400BC49B3DBB2E193FEA075AF811E73E401 05AF6EB0CC7F43FFC73AF28165AF34008433B9C3DDA883FF4D2B7EC56A48440082572F 80D8919BFDDF15B56350F0E4001B209DD99A6FF3FF20601C4BB98104002D34E2885800 43FE51F8BD226E6BF4004A79D5FFBD5604000457DC190660A400CFDA646648A573FF42 179BB9735B4400D9049DADDBE2B4005635479D92EE7401045DB62F4B3063FFC30338CA B151640052DD7E869AF94400E2552F258DFEF401167C7B7980FE7400BDE735544EEB84 00F270B8BAB759840024E4DB7C8CA264005459B035026123FE6645AC0B664473FF6AEF 8169FE997BFD6D9F69ECD34C03FF14D8818B28724BFC6A29B18B124503FFF8FD5D60C4 CF43FF09E51B5B88E14400ACF1D1CBB3F4A4000EE12FAA12F9B400F2FE5B5569BA63FF F8FC5862CB32440096240F075BA453FF0D00859FCCC4A40036A042FAEB6363FEDF0D70 804577140064ABF2CE8838E3FF8F7450298A1B4400617D936C4260F3FE6D1398450066 83FEC98F0EB292698BFEAAD66CBE26B5A3FD873F78FDB95323FE6EF7B3D74F62D40048 49AD3EF8CBE4003679C6DD83E894000C80CF944F53A3FF632BFB06F8CC63FFD2E91D86 EA68140097F8995BB2FA94006F01D5C2CD56C3FFFC5F5F30CAE483FAF6C5CBBD756D03 FF8C1BE2FBF1C3E3FF2AC3426812E733FF0D3400624152CBFF40C4602D856EC3FF7F15 9FD49BA873FE928448A2767063FF00AFB1762648B3FD8EA3911708554400CB6193BFD3 9243FE1DE89DBAA9C9840089D247F25D6F240025D63133FD50B4000AAE6D9612DF53FF F0EFB1EB53FFF40007D9B04FCC2A53FDA869F419493353FFEFE24AE06BD04BFE5014FC 472DAC43FFA3C2D74398F3CBFE7446F8CCEB9EC3FF74080E001283E3FD6F5AA9AE41A6 B3FF3843D423D7BF04000E132824481AE3FF8971E46B0A8814000ED612DCFD09A400C2 9D9DCA6B7843FF80987C3B6A7F93FFBD9203EA0E92C4005BD3BCD6E4EB94002B564608 489B83FF6010AED7152B6BFC60D16386CCA793F8C8E29BF7E5F10BFEA4CF9584943913 FD0AC556281A8F3BFE3F24B3F5BE3123FEBDB702D0A4DC43FCB1CFAD2A7AE1A4006BA2 53914E59D40050E672B8E4B73400DFDE60AB38C443FEE155967C36D644010380C4EA6D C5C3FF99859EFA02EB54005FEDF25E31D9F3FEF0810EDD509E840059EC73082F35EBFE 6971BD60ED8554000CE45448795043FF2BC0378B66C66400474AD3C28D86B3FF005543 BC6DEDC4008218527F7CDCF400405773BE8B7C240103FACEBDA0A903FF9B3B46634876 2400F443A71D93BE84005D224AD46D7E3400FB9CEABE57BBB3FF87B0F0B3729A84002A D48C615442C4014D78A8A53AE0240169820EF52C7BD40127AD6AF6CBE70401384B9A5C BD15840094244D344CEF3400BB7E91979DD2E3FF816C98CAEA06C40024B7326CBF9B43 FE41CA3B04A1AAD4001BDFE15EDD1E83FF1ED117BD4BB2C400B51AD0D54A2B44004B1B B47245E8E4013CBAB0185BD4F400D9869E321B32C40159ED10E246499400AD38450108 E2E401197EBFD239A774000EED8AA8F5590400AD5FD2A5989183FFC4D8ECD8BE422400 CAC82F5231080400318EB5699DC08400D6B643D00409F3FFC36FDD01BEF094000D211B 6969CD43FE107615C2DAC003FFE0C093EEBE55040025BCB91F30B8B4010A7F1C185D71 D400FDA3A592EE0C8400C6C40D86ACBB940059AA80FB990A84007CFFD6D142D124010B F762633A662400DF7E52E2B0B0240065CBE9D43796B3FEBA799A87B9C7B40034229CEE B1D3E40011C43FEB2899E40015F97129279D63F9CD14742788C8A40076725BE6D63CF4 0029B62962ECCD24004C9453234C75D3FFFA167505FD5A740146C7DCCBAC0ED3FFF422 4EC9A025640114632D473D18B400B045181BA39E94008303E2B6D78034006409C18F0A 6E84006E0C2643DE2A33FF3C43B863927064006BB2A5E35AA8F3FD83DE25755665E400 6A821D581C03D3FE3F44AFC87BF39400780883E0ADC1F3FFEE5CFD2D3D7DF40068F144 ED5BF0C400D629F81884DCE40080951A7FF43D7400B8ED9FBEE03D04012C218EA88852 2400421D226F050094005094466A16471400C3FCE32F880B040091CDF4AE95FF04001D 0503025ADA33FE9279039E81C643FF1E310429723A73FDC5A8C1458065C3FFACFDC65B CFAA53FED093EA441EB134003B4D2E71FF7173FFCD9F2B3ADB94B40117889D19968AE4 0102A7BD354519240140755AA60F3A940004CC6CF46FDAE401407D9D79A4E0D4003951 62F9753F9400C64CD194F075E3FFC913C44194C7B400CC47153E7D8B13FD41DD0FC618 BB8400A368BCCA6F8B640040CA67E20882040101E5D09D243D7400489D794016165401 2776228390C8640104A383DAD1E0940162ADE6D925BBE40079B107837BAF4401460282 9B46F36400E0D824164E718401376410CA6BFC54002CA3E116922F24009116AC18761F 240089A3A6F1C9114400AD1EED339E3054001628809C56F5C400287DD52136CE13FE0F C1751B92DC03FEAD2A86A8D66D0BFF0EC626659CAFFBFC47B22E4813A6CBFFAAE543EB 24B363FB5246E0C60E4C8BFEBD508D31D832B3FF87D64C938FF363FE8119C61D17D0D4 008CC1FD68BC3903FFC61326A274C36400AD3B69442C3303FF2571C89C39C734000411 F62D7E9BCBFD8D5DB7E30915A3FE82C06E878AAC0BFEBB40797FEEE6B3FEF50FAD5C18 446BFC0916B82A4403E3FF4BA0F5DF3F7DBBFDD71C5892F7F573FA26DAAE69A0340BFF 6785E20F49F353F98322685C305603FDD8C396077934440024CF4596215D9400008E12 3547CAA3FF6EFF7F5D8B6C43FDAEE7BDCB17EE83FE1674C3B003E433FFA224E12CA8F7 53FF1F83779CFE5563FC53667F72C8918BFFB54B7E7AB88C0BFAB4E56A8CABF30BFC63 5206CD41BD03F94E7C6C1ADE576BFFF9AE38D6585EE3FF085D43A2438873FDF4CE93D9 13A623FE81C928CD99BAC3FAF823C29FE3AB240088CDE83D7A141BFCE53974F16D4F93 FFF7B8E04C39AA73FEC506EFB19256B3FDB9E7D001A227C3FC2E3663318C49C3FCFC7F 2A27A9238BFF4AEAE9562B6163FDC6D6C29E69B77BFFDC78B5D612A623FE8030D8B5C8 FA6BFF530650FA805973FF13E5B7E30144B3FB94A1044164CB43FEE6BD0E465421D3FF B55A9E25E058E3FECD4F58474F1C33FF2E749BEB037E840022BB30525CBB2BF9B83535 F7D5D1C3F8649B72B5BCB883FECC6F02174712F3FE1DC73BD58A65ABFCFA8772D9B938 7BFF8AD5E1DF44021BFF0CAEA362EAE2DBFF92FB017CDE33ABFCCEBC693A49C1ABFEDD 51A404970E53FE3E9BDFB3078F8BFBA34AA216E46744002C217094CEE6F3FFDE05FB76 D872E4005608EB517CF0BBFDC49599E92CC6F4003630FD1FB9E20BFC7A88F1FCFCE5E3 FEDD767AB98C212BFE81D133E3ABC123FF2F0CAA7EF0B41BFFF1318DAA94AEA3FF2DF4 6F2D8200C3FE17C99026FF31D40014E5A74C23F0A3FE786269DEDC7DB400608307AE36 2C04000F54669CAA3D2400BA1660B41F4243FE68665131C8B6740058620D286B3023FF 3955133996096400203AB901AD30CBFD239684127CF283FE16D71879DD681400D15207 8F74D42400E1802936C3E264003BA2B2587A22F40045DD7688352023FE853FFAB78C26 D3FF2189A6CCB1945BFE4C075CBEA28D63FD9999EDC9545B6BFEE4B2EBE761EE43FEE5 A464BDEC5A63FBA1F86F8DC97E040046A974B32E8F43FFC24D4027621B540101EC41EE 20F9040049FE6C25408BD4010027CCF2D35F03FFA2C1D8571D756400310C45DC8EAA3B FC0C7DCABB07F0C3FEF41C60A7B96A0BFE3B03441B009943FF516EB77E553533FD60E2 E78AEFF673FFED9125618FA433FD5152AC9221F8D3FEE93A1656C5859BFD9C4B26CF29 C9D3FF0BEB1F8DBAB183FF70FA22F578559400954D438CE1A5E4005EDD55B1C74F7400 0145C7C0F633A3FEB0378CA21EBFA3FEB151B8411CCAC3FFDDD2D5AD130103FF597F96 8BB54E93FDCC2E9B6242DB4BFF5010C103B47EA3FDF634DA91B92603FE1007E25A8236 E3FEBEFD13648417EBFF030E8A58F43C240006A5DC3DBDF603FF8016B5BF45EF53FFB1 B6601E9BB3E3FEC2C93C14203DC400DDFCBADDF9B6A3FD12B07CE792C974002A6CA54B 445653FF261CC9144FC953FE4EA8BFE2A494F3FD91961F30DDB663FE2710CC6808CE2B FEAAE6C398F26113FF0F6C941CFF42ABFF163D6182991C43FFA896E624F33E5BFD5029 F8C03610F4000CFCF6D15393F3FF15ED3035559093FFD78C57C0CDC504003AFF9BF936 4053FF7E682B39B7A6E3FF9E8BE49668C0C4004AC134CBCE9943FCAF37BF11654343FC E170A1D66009C3FF2CA6584209D2A3FEE15F98674AD8F3FD1F0F427C4420CBFEB51CCD 85A8159BFCAF659442E0DFBBFE3D5264AE540383FE94B99CBA51F8E3FB531E39C06731 23FF92A13D26070113FE7625CA9544DF84008368853A1778540031B4C515313F240086 3D5C744E073BFC5C95FBC4EEE2E40052CA9C5ADB5DD3FABEF3D382539083FF3FE601D2 287CABFD3D0BDD1C4CB913FFC88AFB8BA2EB0BFF2EE7756924B0240009B5C512DED503 FF893FF6E00398A40097F459D82B83E3FFBA85DCE66489C400D423F7E9A332440071A2 8AF2E491C40104093F68BE2563FF28145B256C02B40081C804034E4D83FF776164BC0D 8E04003CB798BD31ED8BF9201293F3EC9A03FED3C7A5D99F91540190A9196352EC2401 914CA5137930D4013A50A179C1E394013F6E03919F628400A2691F9E118AD400E0C4FE 9D89D0F400104B78A20E749400AB1813E8EFBBA400114916637D7AB40108B5F7963560 A400AB6D0119E033A40171944939D27D840139EE0ADDA10C7401C33625F229B724015C 58C5FD63346401AD4B487B91F3A4010CFD1587550DB40136C787B0A5500400272E0F10 66828400B8B554B7353FF3FFF0A31D2ADF6AA401008209B39C15F40098B363E6916434 013BBAB144BB310400BB7C5FA25A71D4010B13807BBE39F4006B04D5504B10F4010F7C 8EDA5AD78401224CFF52C3E29401879DBB1EB63E64016221267C018F8401298AD13213 1BF400AE640F80D93BB400A5CA57848789B40113C334C0F827A400ECAE25EF01CBD400 87C2215BD5B433FF72617F5D35CEE400B49CA389B7208400CCC333CB97294401035705 A5EF34D4001C8EE4742D65E40151DB29EB24E584012A0997F7CADAB4012EA5EF9EF0D6 7400E18010D9930424019D22A87F071B84006C8533F6252C640133EC1E8E897BB400CB 1A89B6A81704008E987CDFB769940077CDF391AEAA4400A01EE612E69E23FFFF816011 0248C401033971B623DC240004BF7B57C624940137B425D5DF2DF40074A3CAFBD78194 015376BAFEFF4404010C5637CEC3FA340133DBB3FD5C242401513F655C24CF7401096F 54934CE32401097572FC58C844014262052E6FF594005344D9CFD1EA54005CED64ECA4 776400E2D8327980585400D78134CB021FF40097A49511CBD1D40019B8B43FE8B02400 7AD17D82B75D94004E6483CAAF6B9401015D5898E466C4009FE187A85027D40127C9AA BE8B96E400D06F767EA51B540170DC9DE3F3E824013EC412B606D3E4016252CF949801 F400226F2EB2DDDFB4014686F4FE5FE694004B3020BCC5D67400F464C17280E9A40040 BC9C16DAD674013084BC8D4A6363FFEDCD83F72D9D6401520125D69613840131A6CE98 0A58E401995ECE83D8FDC401364166F1554EE401A90885B9F46C84016D9ECC22267644 01AED103A5E5B85400D90F13A1A470D4015E368DFC4AB0F400F3CC814D96D5E4013D44 99A5D2825400489AED6414033400D210A93525D2640126B25AD17297140123489E5706 6E34009899357A9E428400AAEE89FF7E1C93FFBAC55982A6D0A4002F0BB05B51BF73FE CCA6C2F791ED840020874732568883FF288A9C98FBF824009AC28EB5ED7FB40032E580 C66775D401306BB503A36E5400E1693FAF646BA401700C66D2F510E400FDF1E4F85468 B401471498E3280F34004176567F76E7A400907E5D09727833FE3756B626F8FAA3FFD5 822C7EEBE463FDDCBD414C70E9A40058947C487C67F400045995AB50CAA400F3C0CE85 9D6B5400424E3CF0365B04009FAE9D0DBD94B3FFDE038A54687BB400960F6CCB922024 00A9819342237294012FCCE7B7DC9164010085C4C3A1FCE400806530A8889A53FFA5A6 B5C254D283FF92C17037FE5DF400526E2617284A740025E3D5CA9FFB23FFA7E946F0B7 6313FCA0029D22BB9CC400285740AABE9284004EAB5C2A656374008FBD96D896C433FF 49317BF194230401115BC56926AFB400C37D410A3A5EA400B91302FE7D78140028C208 E5B85AF40137B6EBA1A8F063FF29D45B68094804008ADDC435A40053FFE20471138E63 E3FF7E5A1CEEB66723FF724410ED47D6E3FFEB2551DB6A62C3FEA5DAAD496849440081 4A71716B41B3FF15AB6BBA376FD400F90AB7ABAD7623FFF31B5829269854010FCE57B6 764564007F970DA3EA30C400BA2FF8A5DC7D2400E122C02E18685400417CFEC027CD74 0037E71D75D3B92400A80ECA27AC57E3FEF4525A2C84DE33FF28D79A626179B4002CFA E316C098A400363D437956444400099DDE9F2F5E03FF34F3D9E5BDE494000383FC650C A033FFADD45F73E922D40082FCA8F826926400111DA07E74ABD400AD72BB427BE7C400 19B98EF88649D4010C42FF056A87B400A6E9CA0D007B2400E7D78F846DA883FE1EAF79 034C966400BC3B9D578D2B43FF1536866486B0940047BC3B18F62DC3FF50F3F2AF5DFD E400DA5D57B6CEC433FEF0B2AA07D3DD440116D4A7ACA7F18400E910424BABFFE40156 7B6F319D958400D5694359011AC4015352BD58B10524010DE341555674740146D027A3 655B53FFFD5B1B05F8B7C400DF824CD4364764001C977DC81AC3B400B05DA7C3B1B7C3 FF21661E1DC58FA4002EB5B4E42D9114010522CA025318640101B90D87E6EFD4005D94 A431842214007ED102FD6681E3FF892494B383BDC4002AD2D451CE4E03FF03039FC3E3 A034003C6C6AF5FD91A3FF6D09B3614E846400BB23FA3D1B49A400497D4434AFDF5401 33A6BFEB07DBA400D3FEAD4BA1A704015F21093F0F54B400CA6D71A22727B401274724 88E1B953FFFA9D20048A8F6400500EE75D70BC23FC8CA5AECA578C83FF8DE0375C75C3 C3FD6087E72BC708E4005D2399E7E2566400198DED821E5BE40109BDCBD70FEE240064 BEC4E11E039400BC9478C24D4973FFFE0200376E6D440093DFED42D455540092C8D84F 16A084011AA5FBECD042B400C74403A64CE414003DBD67E3804FB3FF1EA54EA6912CD3 FF1A62C117BB63C400248CC1CD6D01B4000AFF43C1CC8053FF9B59F2ED261773FD351D 966ECD9E6400432854E43354940070A3D391C445E400B0B05C37D9F753FF7905C19EE8 5B4401158543E3CC483400B82D50A57CB18400993DE6E5495683FFEDA6F60B45193401 185DDE6DEBF013FE4362829CF0D3640049AE5EE369A323FF74FF6BF82307A3FF32D41E 6DEDF913FF4EFD6E58320D23FFF0632024694E23FEF4DC94C8908E4400A04997D1675C D3FF5AC21B6F62B404010B6EC24F87E454000B25D15E27D694010FB81CA6FAA784006A F88A29B4ED840091BCD9F651CEA400A8AA01A24CF753FFFEC4442FE0FAC3FFE8359236 8D5B24006AC772BDA22D03FE35EFAAA95013A3FEDDDDA6A45E141400249FDD9FBB44D4 00411F78E1605894002348032CCC27F3FF782AAF5FB579740024F2942EF84E43FFE02A 26B5F1BC44008D21ADA8F19E340007E5F21E7FED84008FA5BF97039E13FFD2DE7A2C34 20E400DAD08E866E6A84006304A642E4A78400A5FD2AED097623FBF84FAEC8E172C400 948FABA7B13583FEDB6EA2CD7C9144004862843470DE13FF756D879D1F074400F88C2C 17D374B3FF3D7934117E764401262A7027C6DC8400FC326F81DBB7440157631FDA1C17 E400C2E69E7120D3A401400BA87934474400E4ADB68052B6C4012613DA816494C3FF75 57547287924400A136352960BCF3FFD6A9BC359BFD1400915EB549270433FF0C820D31 221CD40037CA9BC05BB1E-%'COLOURG6#%%ZHUEG-%*AXESSTYLEG6#%$BOXG-%&STYLEG 6#%-PATCHCONTOURG-%+AXESLABELSG6%%\"xG%\"yGQ!F/" 1 4 0 1 10 0 2 4 1 2 2 1.000000 75.000000 113.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 161 "It looks like a nightmare for someone trying to find \+ the global minimum: there are huge numbers of local minima. Note howe ver that there's an easy lower bound: " }{XPPEDIT 18 0 "exp(-1)-4+(x^2 +y^2)/4 <= F(x,y);" "6#1,(-%$expG6#,$\"\"\"!\"\"F)\"\"%F**&,&*$%\"xG\" \"#F)*$%\"yGF0F)F)F+F*F)-%\"FG6$F/F2" }{TEXT -1 114 ". From the graph it looks like there are points where F(x,y) is below -2. In fact, th e minimum value plotted is " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "P:= %:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "G:= op([1,3],P );" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"GG-%'RTABLEG6+\"))Q:'G&%&flo atG6#\"\")%&ArrayG%,rectangularG%(C_orderG7\"\"\"#;\"\"\"\"$+\"F2" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "CurrMin:=min(seq(seq(G[i,j], i=1..100),j=1..100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(CurrMinG$! 3]!Qw1r.&>G!#<" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "For any point d oing better than that, " }{XPPEDIT 18 0 "exp(-1)-4+(x^2+y^2)/4 < CurrM in;" "6#2,(-%$expG6#,$\"\"\"!\"\"F)\"\"%F**&,&*$%\"xG\"\"#F)*$%\"yGF0F )F)F+F*F)%(CurrMinG" }{TEXT -1 4 " so " }{XPPEDIT 18 0 "x^2 + y^2 < 4* (CurrMin + 4 - exp(-1))" "6#2,&*$%\"xG\"\"#\"\"\"*$%\"yGF'F(*&\"\"%F(, (%(CurrMinGF(F,F(-%$expG6#,$F(!\"\"F3F(" }{TEXT -1 1 " " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "rmax:=sqrt(4*(CurrMin+4-exp(-1.0))) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%rmaxG$\"+l_!H!=!\"*" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 144 "So we c ertainly don't have to search farther away from the origin than that. \+ Now suppose we search in a rectangular grid such that every point " } {XPPEDIT 18 0 "[x,y]" "6#7$%\"xG%\"yG" }{TEXT -1 23 " in the disk of r adius " }{XPPEDIT 18 0 "rmax" "6#%%rmaxG" }{TEXT -1 11 " is within " } {XPPEDIT 18 0 "dx/2" "6#*&%#dxG\"\"\"\"\"#!\"\"" }{TEXT -1 8 " in the \+ " }{XPPEDIT 18 0 "x" "6#%\"xG" }{TEXT -1 15 " direction and " } {XPPEDIT 18 0 "dy/2" "6#*&%#dyG\"\"\"\"\"#!\"\"" }{TEXT -1 8 " in the \+ " }{XPPEDIT 18 0 "y" "6#%\"yG" }{TEXT -1 27 " direction of a grid poin t " }{XPPEDIT 18 0 "[x[i],y[j]]" "6#7$&%\"xG6#%\"iG&%\"yG6#%\"jG" } {TEXT -1 6 ". If " }{XPPEDIT 18 0 "[x[0],y[0]]" "6#7$&%\"xG6#\"\"!&% \"yG6#F'" }{TEXT -1 41 " is the actual minimum (so in particular " } {XPPEDIT 18 0 "F(x[0],y[0]) <= CurrMin" "6#1-%\"FG6$&%\"xG6#\"\"!&%\"y G6#F*%(CurrMinG" }{TEXT -1 24 "), how much bigger than " }{XPPEDIT 18 0 "CurrMin" "6#%(CurrMinG" }{TEXT -1 5 " can " }{XPPEDIT 18 0 "F(x[i], y[j])" "6#-%\"FG6$&%\"xG6#%\"iG&%\"yG6#%\"jG" }{TEXT -1 77 " be? Well , from Taylor's Theorem (remembering that the first derivatives of " } {XPPEDIT 18 0 "F(x,y)" "6#-%\"FG6$%\"xG%\"yG" }{TEXT -1 24 " at the mi nimum are 0), " }{XPPEDIT 18 0 "F(x[i],y[j]) = F(x[0],y[0]) + F[x,x](x ,y)*(x[i]-x[0])^2/2 + F[x,y](x,y)*(x[i]-x[0])*(y[j]-y[0]) + F[y,y](x,y )*(y[j]-y[0])^2/2" "6#/-%\"FG6$&%\"xG6#%\"iG&%\"yG6#%\"jG,*-F%6$&F(6# \"\"!&F,6#F4\"\"\"*(-&F%6$F(F(6$F(F,F7*$,&&F(6#F*F7&F(6#F4!\"\"\"\"#F7 FDFCF7*(-&F%6$F(F,6$F(F,F7,&&F(6#F*F7&F(6#F4FCF7,&&F,6#F.F7&F,6#F4FCF7 F7*(-&F%6$F,F,6$F(F,F7*$,&&F,6#F.F7&F,6#F4FCFDF7FDFCF7" }{TEXT -1 16 " for some point " }{XPPEDIT 18 0 "(x,y)" "6$%\"xG%\"yG" }{TEXT -1 26 " on the line segment from " }{XPPEDIT 18 0 "[x[i],y[j]]" "6#7$&%\"xG6# %\"iG&%\"yG6#%\"jG" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "[x[0],y[0]]" "6 #7$&%\"xG6#\"\"!&%\"yG6#F'" }{TEXT -1 20 ". In particular if " } {XPPEDIT 18 0 "F[x,x] <= a" "6#1&%\"FG6$%\"xGF'%\"aG" }{TEXT -1 2 ", \+ " }{XPPEDIT 18 0 "abs(F[x,y]) <= b" "6#1-%$absG6#&%\"FG6$%\"xG%\"yG%\" bG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "F[y,y] <= c" "6#1&%\"FG6$%\"yG F'%\"cG" }{TEXT -1 10 ", we have " }{XPPEDIT 18 0 "F(x[i],y[j]) <= Cur rMin + a*dx^2/8 + b*dx*dy/4 + c*dy^2/8" "6#1-%\"FG6$&%\"xG6#%\"iG&%\"y G6#%\"jG,*%(CurrMinG\"\"\"*(%\"aGF1*$%#dxG\"\"#F1\"\")!\"\"F1**%\"bGF1 F5F1%#dyGF1\"\"%F8F1*(%\"cGF1*$F;F6F1F7F8F1" }{TEXT -1 4 ". " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 99 "a:= op([1,2],evalf(evalr(sub s(x=INTERVAL(-rmax..rmax),y=INTERVAL(-rmax..rmax),diff(F(x,y),x$2))))) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"aG$\"+94>m=!\"&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 104 "b:= op([1,2],evalf(evalr(subs(x=IN TERVAL(-rmax..rmax),y=INTERVAL(-rmax..rmax),abs(diff(F(x,y),x,y)))))); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"bG$\"$+\"\"\"!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 99 "c:= op([1,2],evalf(evalr(subs(x=INT ERVAL(-rmax..rmax),y=INTERVAL(-rmax..rmax),diff(F(x,y),y,y)))));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"cG$\"+-QrZ9!\"%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 36 "With dx = .006 and dy = .002, I get " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "dz:=eval(a*dx^2/8 + b*dx*dy/ 4 + c*dy^2/8,\{dx=.006,dy=.002\});" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%#dzG$\"+7Gkm:!#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 471 "ti:= time():\ndx:= .006: dy:= .002:\ncandidates:= NULL;\nimax:= ceil(rmax/ dx);\nfor i from -imax to imax do\n xi:= i*dx;\n if abs(xi) > rmax t hen jmax:= 1 \n else jmax:= ceil(sqrt(rmax^2-xi^2)/dy)\n fi;\n for \+ j from -jmax to jmax do\n yj:= j*dy;\n Fij:= evalhf(F(xi,yj));\n if Fij < CurrMin + dz then\n candidates:= candidates,[xi,yj,F ij];\n if Fij < CurrMin then \n CurrMin:= Fij;\n be stcand:= [xi,yj];\n fi\n fi\n od\nod:\n(time()-ti)*seconds;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#>%+candidatesG6\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%imaxG\"$,$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"'Jw?!\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "nops([candidates]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#v" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 " CurrMin;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!3kV4\\>_`/L!#<" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 110 "We've come down quite a bit from \+ the previous CurrMin. Now we can search closer to each of the 75 cand idates." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 80 "dx:= .0006; dy:= .0002; dz:= a*dx^2/8 + b*dx*dy/4 + c*dy^2/8;candidates2:= NULL:" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#dxG$\"\"'!\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#dyG$\"\"#!\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# dzG$\"+7Gkm:!#7" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 411 "ti:= ti me():\nfor cand from 1 to 75 do\n for i from -5 to 4 do\n xi:= can didates[cand][1]+(i+1/2)*dx;\n for j from -5 to 4 do\n yj:= ca ndidates[cand][2]+(j+1/2)*dy;\n Fij:= evalhf(F(xi,yj));\n if F ij < CurrMin + dz then\n candidates2:= candidates2,[xi,yj,Fij];\n if Fij < CurrMin then \n CurrMin:= Fij;\n bestcand := [xi,yj];\n fi\n fi\n od\nod\nod:\n(time()-ti)*seconds;\n \+ " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"%@P!\"$" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "nops([candidates2]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"#;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "candidates2;" }}{PARA 12 "" 1 "" {XPPMATH 20 "627%$!+ +++]D!#6$\"++++0@!#5$!3`)zFn$\\@.L!#<7%F$$\"++++2@F)$!3OV-W:2E.LF,7%$! ++++!\\#F&$\"++++*4#F)$!3NmC\"fpjNI$F,7%F3$\"++++,@F)$!33v\"Gvs*z/LF,7 %F3$\"++++.@F)$!3&o6-E:KcI$F,7%F3F'$!3&ob+8(R11LF,7%F3F.$!3\")[.0G#)41 LF,7%F3$\"++++4@F)$!3_\"[gM+QdI$F,7%$!++++ICF&F:$!3!fce%>T`0LF,7%FOF?$ !30y#*HH]N1LF,7%FOF'$!3gs*R&R`x1LF,7%FOF.$!3DONl%4)z1LF,7%FOFJ$!3'e'\\ HvjU1LF,7%$!++++qBF&F'$!3)*R`%*p5L0LF,7%FjnF.$!3vfJ;WBM0LF,7%FO$\"++++ 6@F)$!3Pf(*Q!HjcI$F," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 237 "pl ots[display](\{\n plots[implicitplot](diff(F(x,y),x),x=-.0255-dx/2 .. \+ -.0237+dx/2, y=0.2099-dy/2 .. 0.2111+dy/2, colour=red), plots[implicit plot](diff(F(x,y),y),x=-.0255-dx/2 .. -.0237+dx/2, y=0.2099-dy/2 .. 0. 2111+dy/2, colour=blue) \});" }}{PARA 13 "" 1 "" {GLPLOT2D 354 266 266 {PLOTDATA 2 "6%-%'CURVESG6U7$7$$!3ts%e5h1!RC!#>$\"3')***********z4 #!#=7$$!3L'>S#R].RCF*$\"3%znbR/x\")4#F-7$7$$!3ec&oR^'4RCF*$\"3')****** ***f&)4#F-F.7$7$$!3$pboR^'4RCF*F77$$!3![]juyD\"RCF*$\"3aP?gPBu)4#F-7$7 $$!3sAOm-k=RCF*$\"3')*********>\"*4#F-F=7$FC7$$!3ehG0@l@RCF*$\"3)*\\ZR IwI*4#F-7$7$$!3tEn6xiFRCF*$\"3')*********z'*4#F-FI7$7$$!33Fn6xiFRCF*FR 7$$!3uS.)*RsIRCF*$\"3I'=KB#H()*4#F-7$7$$!3XI4IPhORCF*$\"3;+++++C+@F-FX 7$7$$!36I4IPhORCF*$\"3))*********R-5#F-7$$!3\\>!=U%zRRCF*$\"3`jN'RCF*$\"3! **********>>5#F-F^q7$Fdq7$$!3X*48&o*p'RCF*$\"3?(f'\\\"3M@5#F-7$7$$!3'[ 05[VD(RCF*$\"3!**********zC5#F-Fjq7$7$$!3?b+\"[VD(RCF*Fcr7$$!3_UCr81wR CF*$\"3vDK8p$*p-@F-7$7$$!3;ydCB_\")RCF*$\"3\"**********RI5#F-Fir7$F_s7 $$!3]RC3W7&)RCF*$\"3/4[!flkK5#F-7$7$$!3IO5D(*\\!*RCF*$\"3\"*********** f.@F-Fes7$7$$!3gN5D(*\\!*RCF*F^t7$$!3e#>&ff=%*RCF*$\"3]>(4=%*HQ5#F-7$7 $$!3,9*)zcZ**RCF*$\"3#**********fT5#F-Fdt7$Fjt7$$!3=5GAgC.SCF*$\"3NIj% oA&R/@F-7$7$$!3@,D'=]%3SCF*$\"3#**********>Z5#F-F`u7$Ffu7$$!3([SPf/B,W #F*$\"37:I,60'\\5#F-7$7$$!3(4*[TKUv5#F-F_y7$7$$!3\\bW( *3I`SCF*Fhy7$$!3LZ#R)\\ddSCF*$\"3&GiS(=py2@F-7$7$$!3#pPnlmA1W#F*$\"3&* *********z!3@F-F^z7$Fdz7$$!3y%H!\\XimSCF*$\"3V+Ol(>_$3@F-7$7$$!39Mx[4B rSCF*$\"3'**********R'3@F-Fjz7$F`[l7$$!3IBK.EnvSCF*$\"3Lr_ovu\"*3@F-7$ 7$$!3eY'3x$>!3W#F*$\"3'***********>4@F-Ff[l7$F\\\\l7$$!3`!=S9>Z3W#F*$ \"3V5S$Gv#[4@F-7$7$$!3UOK?^:*3W#F*$\"3(**********f(4@F-Fb\\l7$Fh\\l7$$ !3(oJ$oTw$4W#F*$\"3A$>)4H![+6#F-7$7$$!3MHY%*\\6)4W#F*$\"3(**********>. 6#F-F^]l7$Fd]l7$$!3#zyMn2G5W#F*$\"3*f>wWI816#F-7$7$$!3]bf!Rtq5W#F*$\"3 )**********z36#F-Fj]l7$F`^l7$$!3w_nc'\\=6W#F*$\"3%RRm*y&y66#F-7$7$$!3! *[.1..;TCF*$\"3)**********R96#F-Ff^l7$F\\_l7$$!3,w8:,*37W#F*$\"3Njrc_Q u6@F-7$7$$!3IY4Qd)\\7W#F*$\"3*************>6#F-Fb_l-%'COLOURG6&%$RGBG$ \"*++++\"!\")$\"\"!Fe`lFd`l-F$6U7$7$$!3O++++++!e#F*$\"3>lnr6*fi5#F-7$$ !31*\\]/!ybxDF*$\"3W7'f$QvD1@F-7$7$$!3[+++++SqDF*$\"3.P/U$e]i5#F-F^al7 $7$$!37+++++SqDF*Fgal7$$!3%)y\\`*=&znDF*$\"3&Q(Gs_![i5#F-7$7$$!3!***** ******zgDF*$\"3+$yLwDTi5#F-F]bl7$7$$!3C+++++!3c#F*Ffbl7$$!3Y(\\3RiK!eD F*$\"3h&*zsp&Qi5#F-7$7$$!3O+++++?^DF*$\"3lo^OM>B1@F-F\\cl7$Fbcl7$$!3S# yBP5q#[DF*$\"3D()QQ*3Hi5#F-7$7$$!3\"3+++++;a#F*$\"3gbHi8EA1@F-Fhcl7$F^ dl7$$!3M:N8Hw]QDF*$\"3*\\X*p6'>i5#F-7$7$$!3B++++++KDF*$\"3%Q]:aH8i5#F- Fddl7$Fjdl7$$!3aK.H+_uGDF*$\"3!Gg$oO,@1@F-7$7$$!3.,++++SADF*$\"3or6vzR ?1@F-F`el7$Ffel7$$!36DoM1@F-F\\fl7$Fbfl7$$!31QbX![?#4DF*$\"3iRKp%>\">1@F-7$7$$!3E,++++ ?.DF*$\"3!*)G&3c`=1@F-Fhfl7$7$$!3\"4+++++K]#F*Fagl7$$!3_p*o(*=e%*\\#F* $\"3,BltF<=1@F-7$7$$!3o+++++g$\\#F*$\"3^V/5[g<1@F-Fggl7$7$$!3/,++++g$ \\#F*$\"3zV/5[g<1@F-7$$!3)=dRa%fp*[#F*$\"3ouR[jA<1@F-7$7$$!3],+++++%[# F*$\"3*)H@pUn;1@F-Fhhl7$7$$!39,+++++%[#F*Fail7$$!3O_(>wuL*zCF*$\"3d&[W >!G;1@F-7$7$$!3E,++++SuCF*$\"3(\\po)Ru:1@F-Fgil7$F]jl7$$!3Kp=Y'fr,Z#F* $\"3>Up7VL:1@F-7$7$$!3Q,++++![Y#F*$\"38&[Q'R\"[h5#F-Fcjl7$Fijl7$$!3OP# =@\\4/Y#F*$\"3[I-/()Q91@F-7$7$$!3[,++++?bCF*$\"39V)4?%)Qh5#F-F_[m7$Fe[ m7$$!3[@6uMuk]CF*$\"3%>B$pLW81@F-7$7$$!3g,++++gXCF*$\"3m56*paHh5#F-F[ \\m7$Fa\\m7$$!3HUF[Ca)3W#F*$\"3VE[4$)\\71@F-7$7$$!3r,+++++OCF*$\"38F1f a-71@F-Fg\\m7$F]]m7$$!38r_\\hM7JCF*$\"3s!*QDNb61@F-7$7$$!3#=+++++kU#F* $\"3@Hn\"['461@F-Fc]m7$Fi]m7$$!3`L3$fah8U#F*$\"3G)Hz,41h5#F-7$7$$!3$>+ ++++oT#F*$\"3#>vxwn,h5#F-F_^m7$Fe^m7$$!382:%zn*f6CF*$\"3!4#*zyk'41@F-7 $7$$!30-++++?2CF*$\"3dG?=$R#41@F-F[_m7$Fa_m7$$!33A$zw&y$=S#F*$\"3/FYO3 s31@F-7$7$$!3;-++++g(R#F*$\"3<*)yL6J31@F-Fg_m7$F]`m7$$!3%4E'H&3w?R#F*$ \"3$=GU;xxg5#F-7$7$$!3G-+++++)Q#F*$\"3*Gm`@$Q21@F-Fc`m7$Fi`m7$$!3ydU%4 O9BQ#F*$\"3<[ " 0 "" {MPLTEXT 1 0 119 "Digits:= 30; fsolve(\{diff(F(x,y),x), di ff(F(x,y),y)\},\{x,y\},x=-.0255-dx/2 .. -.0237+dx/2,\ny=0.2099-dy/2 .. 0.2111+dy/2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#I" }} {PARA 12 "" 1 "" {XPPMATH 20 "6#<$/%\"yG$\"?b05\"f\"fqdNbrU71@!#I/%\"x G$!?(H$3Lh.> " 0 "" {MPLTEXT 1 0 15 " eval(F(x,y),%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!?*3x8h2!GP_ZZ'ooI $!#H" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "All 30 digits here are co rrect." }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 5:" }}{PARA 0 "" 0 "" {TEXT -1 4 "Let " }{XPPEDIT 18 0 "f(z) = 1/GAMMA(z)" "6#/-%\"f G6#%\"zG*&\"\"\"F)-%&GAMMAG6#F'!\"\"" }{TEXT -1 8 ", where " } {XPPEDIT 18 0 "GAMMA(z)" "6#-%&GAMMAG6#%\"zG" }{TEXT -1 32 " is the ga mma function, and let " }{XPPEDIT 18 0 "p(z)" "6#-%\"pG6#%\"zG" } {TEXT -1 48 " be the cubic polynomial that best approximates " } {XPPEDIT 18 0 "f(z)" "6#-%\"fG6#%\"zG" }{TEXT -1 39 " on the unit disk in the supremum norm " }{XPPEDIT 18 0 "abs(abs(`.`))[infinity]" "6#&- %$absG6#-F%6#%\".G6#%)infinityG" }{TEXT -1 11 ". What is " }{XPPEDIT 18 0 "abs(abs(f - p))[infinity] " "6#&-%$absG6#-F%6#,&%\"fG\"\"\"%\"pG !\"\"6#%)infinityG" }{TEXT -1 1 "?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 140 "Since the func tions are analytic, the supremum will occur on the unit circle. So wr ite f(z) and p(z) as functions of t where z = exp(I*t). " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "restart;\nF:= t -> 1/GAMMA(exp(I*t) );\nF(Pi):= 0;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"FGf*6#%\"tG6\"6$ %)operatorG%&arrowGF(*&\"\"\"F--%&GAMMAG6#-%$expG6#*&9$F-^#F-F-!\"\"F( F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>-%\"FG6#%#PiG\"\"!" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "P:= (a,t) -> \na[0] + a[1]*e xp(I*t)+\na[2]*exp(2*I*t)+a[3]*exp(3*I*t);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"PGf*6$%\"aG%\"tG6\"6$%)operatorG%&arrowGF),*&9$6#\" \"!\"\"\"*&&F/6#F2F2-%$expG6#*&9%F2^#F2F2F2F2*&&F/6#\"\"#F2-F76#*&^#F? F2F:F2F2F2*&&F/6#\"\"$F2-F76#*&^#FGF2F:F2F2F2F)F)F)" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 10 "Note that " }{XPPEDIT 18 0 "f(z)" "6#-%\"fG6#% \"zG" }{TEXT -1 18 " has the symmetry " }{XPPEDIT 18 0 "f(conjugate(z) ) = conjugate(f(z))" "6#/-%\"fG6#-%*conjugateG6#%\"zG-F(6#-F%6#F*" } {TEXT -1 122 ". It is easy to show that the best approximation must h ave that symmetry too, which means we can assume the coefficients " } {XPPEDIT 18 0 "a[0]" "6#&%\"aG6#\"\"!" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "a[3]" "6#&%\"aG6#\"\"$" }{TEXT -1 21 " are real. And then " } {XPPEDIT 18 0 "abs(F(t)-P(a,t)) = abs(F(-t)-P(a,-t));" "6#/-%$absG6#,& -%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF+!\"\"-F%6#,&-F)6#,$F+F1F,-F.6$F0,$F+ F1F1" }{TEXT -1 25 ", so it suffices to take " }{XPPEDIT 18 0 "t" "6#% \"tG" }{TEXT -1 17 " in the interval " }{XPPEDIT 18 0 "[0,Pi]" "6#7$\" \"!%#PiG" }{TEXT -1 3 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 68 "It's convenient to have the conjugates of these f unctions available." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "Fbar := t -> 1/GAMMA(exp(-I*t));Fbar(Pi):= 0;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%FbarGf*6#%\"tG6\"6$%)operatorG%&arrowGF(*&\"\"\"F--%&GAMMAG6# -%$expG6#*&^#!\"\"F-9$F-F6F(F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>- %%FbarG6#%#PiG\"\"!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "Pbar := (a,t) -> P(a,-t); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%PbarGf*6$% \"aG%\"tG6\"6$%)operatorG%&arrowGF)-%\"PG6$9$,$9%!\"\"F)F)F)" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 36 "We have to minimize with respect t o " }{XPPEDIT 18 0 "a" "6#%\"aG" }{TEXT -1 29 " the maximum with respe ct to " }{XPPEDIT 18 0 "t" "6#%\"tG" }{TEXT -1 5 " of " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))^2" "6#*$-%$absG6#,&-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"a GF+!\"\"\"\"#" }{TEXT -1 36 " (this is a quadratic polynomial in " } {XPPEDIT 18 0 "a[0]" "6#&%\"aG6#\"\"!" }{TEXT -1 5 ",...," }{XPPEDIT 18 0 "a[3]" "6#&%\"aG6#\"\"$" }{TEXT -1 42 ", so it's a bit simpler to deal with than " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))" "6#-%$absG6#,&-%\" FG6#%\"tG\"\"\"-%\"PG6$%\"aGF*!\"\"" }{TEXT -1 92 "). I can change th is from a min-max question to a constrained minimization by writing it as" }}{PARA 0 "" 0 "" {TEXT -1 9 "minimize " }{XPPEDIT 18 0 "v" "6#% \"vG" }{TEXT -1 18 " (with respect to " }{XPPEDIT 18 0 "a" "6#%\"aG" } {TEXT -1 5 " and " }{XPPEDIT 18 0 "v" "6#%\"vG" }{TEXT -1 13 ") subjec t to " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))^2 - v <= 0" "6#1,&*$-%$absG6#, &-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF-!\"\"\"\"#F.%\"vGF3\"\"!" }{TEXT -1 10 " for each " }{XPPEDIT 18 0 "t" "6#%\"tG" }{TEXT -1 1 " " } {XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 1 " " }{XPPEDIT 18 0 "[0, Pi]" "6#7$\"\"!%#PiG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 44 "Now write the Karush-Kuhn-Tucker c onditions:" }}{PARA 0 "" 0 "" {TEXT -1 18 "The Lagrangian is " } {XPPEDIT 18 0 "H(v,a,lambda) = v+sum((abs(F(t)-P(a,t))^2-v)*lambda[t], t);" "6#/-%\"HG6%%\"vG%\"aG%'lambdaG,&F'\"\"\"-%$sumG6$*&,&*$-%$absG6# ,&-%\"FG6#%\"tGF+-%\"PG6$F(F9!\"\"\"\"#F+F'F=F+&F)6#F9F+F9F+" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 29 "Formally the sum is over all " }{XPPEDIT 18 0 "t*epsilon*[0,Pi]" "6#*(%\"tG\"\"\"%(epsilonGF%7$\"\"!% #PiGF%" }{TEXT -1 81 ". In general this might run into technical prob lems, but they won't occur here: " }{XPPEDIT 18 0 "lambda[t];" "6#&%'l ambdaG6#%\"tG" }{TEXT -1 40 " will be nonzero for only finitely many \+ " }{XPPEDIT 18 0 "t" "6#%\"tG" }{TEXT -1 40 ". The Karush-Kuhn-Tucker conditions say" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "diff(H(v,a,lambda),v) = ``" "6#/-%%diffG6$-%\"HG6%%\"vG %\"aG%'lambdaGF*%!G" }{XPPEDIT 18 0 "1-sum(lambda[t],t) = 0;" "6#/,&\" \"\"F%-%$sumG6$&%'lambdaG6#%\"tGF,!\"\"\"\"!" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "diff(H(v,a,lambda),a[j]) = ``" "6#/-%%diffG6$ -%\"HG6%%\"vG%\"aG%'lambdaG&F+6#%\"jG%!G" }{XPPEDIT 18 0 "sum(2*Re((P( a,-t)-F(-t))*exp(j*I*t))*lambda[t],t) = 0;" "6#/-%$sumG6$*(\"\"#\"\"\" -%#ReG6#*&,&-%\"PG6$%\"aG,$%\"tG!\"\"F)-%\"FG6#,$F4F5F5F)-%$expG6#*(% \"jGF)%\"IGF)F4F)F)F)&%'lambdaG6#F4F)F4\"\"!" }{TEXT -1 5 " for " } {XPPEDIT 18 0 "j = 0,1,2,3" "6&/%\"jG\"\"!\"\"\"\"\"#\"\"$" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "diff(H(v,a,lamb da),lambda[t]) = ``;" "6#/-%%diffG6$-%\"HG6%%\"vG%\"aG%'lambdaG&F,6#% \"tG%!G" }{TEXT -1 1 " " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))^2-v <= 0;" " 6#1,&*$-%$absG6#,&-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF-!\"\"\"\"#F.%\"vGF 3\"\"!" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "lambda[t] >= 0" "6#1\"\"!&%'l ambdaG6#%\"tG" }{TEXT -1 6 ", and " }{XPPEDIT 18 0 "lambda[t]*(abs(F(t )-P(a,t))^2-v) = 0" "6#/*&&%'lambdaG6#%\"tG\"\"\",&*$-%$absG6#,&-%\"FG 6#F(F)-%\"PG6$%\"aGF(!\"\"\"\"#F)%\"vGF7F)\"\"!" }{TEXT -1 5 " for " } {XPPEDIT 18 0 "t*epsilon*[0,Pi]" "6#*(%\"tG\"\"\"%(epsilonGF%7$\"\"!%# PiGF%" }}{PARA 0 "" 0 "" {TEXT -1 38 "Note that this last condition im plies " }{XPPEDIT 18 0 "lambda[t] <> 0" "6#0&%'lambdaG6#%\"tG\"\"!" } {TEXT -1 24 " for only finitely many " }{XPPEDIT 18 0 "t" "6#%\"tG" } {TEXT -1 8 ", since " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))^2 = v;" "6#/*$- %$absG6#,&-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF,!\"\"\"\"#%\"vG" }{TEXT -1 24 " for only finitely many " }{XPPEDIT 18 0 "t" "6#%\"tG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 215 "Also, since the objective is \+ linear and the constraints are convex, we don't have to worry about lo cal minima. The Karush-Kuhn-Tucker conditions should have a unique so lution, which will give us the global minimum." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 329 "Finding the solution is not so easy, however. I sp ent some time exploring the parameter space, looking for approximate s olutions.\nFor a starting point, we can use a Taylor polynomial for f( z), corresponding to a partial sum of the Fourier series for F(t). Th is will give us the best approximation in the L^2 norm on the circle. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "ptayl:= taylor(1/GAMMA( z),z=0,4);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&ptaylG++%\"zG\"\"\"F' %&gammaG\"\"#,&*$)%#PiGF)F'#!\"\"\"#7*&#F'F)F')F(F)F'F'\"\"$-%\"OG6#F' \"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "a0:= table([seq(j= evalf(coeff(ptayl,z,j)),j=0..3)]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%#a0G-%&TABLEG6#7&/\"\"!$F*F*/\"\"\"$F-F*/\"\"#$\"+\\m:sd!#5/\"\"$$!+ <2yelF3" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "plot(abs(P(a0,t) -F(t))^2,t=0..Pi);" }}{PARA 13 "" 1 "" {GLPLOT2D 353 265 265 {PLOTDATA 2 "6%-%'CURVESG6$7S7$$\"\"!F)$\"+GUx(='!#77$$\"+LzxZo!#6$\"+ %Gqm@'F,7$$\"+!H*f!G\"!#5$\"+V8<*G'F,7$$\"+xGm]>F6$\"+4_]CkF,7$$\"+#3o ^i#F6$\"+(>7.i'F,7$$\"+![nkH$F6$\"+I#Hv(oF,7$$\"+bz%)=RF6$\"+03%\\<(F, 7$$\"+()oGjXF6$\"+&R/oa(F,7$$\"+`lwH_F6$\"+=^/0!)F,7$$\"+4)3T*eF6$\"+o &QEa)F,7$$\"+ykYxlF6$\"+FvO(=*F,7$$\"+&Go$zrF6$\"+3w5R)*F,7$$\"+gr'p&y F6$\"+!f3v1\"F07$$\"+?$[t`)F6$\"+$zyK;\"F07$$\"+S;-$>*F6$\"+zGrn7F07$$ \"+HeV)y*F6$\"+tyht8F07$$\"+*3W'\\5!\"*$\"+\"*[89:F07$$\"+/9i46Fgp$\"+ hM>Y;F07$$\"+\"G*Qz6Fgp$\"+G(3a\"=F07$$\"+tc9T7Fgp$\"+j&\\%z>F07$$\"+B A!*38Fgp$\"+m4yu@F07$$\"+#[AMP\"Fgp$\"+)yb_P#F07$$\"+.EuS9Fgp$\"+!yr%) f#F07$$\"+!\\jD]\"Fgp$\"+)=*o9GF07$$\"+ocCp:Fgp$\"+\"*\\&y0$F07$$\"+5( 4&Q;Fgp$\"+(zK$=LF07$$\"+iU!))p\"Fgp$\"+s;h[NF07$$\"+IS#Rw\"Fgp$\"+tyS (z$F07$$\"+B\"*>J=Fgp$\"+Q%p-0%F07$$\"+wY,(*=Fgp$\"+!3S!*G%F07$$\"+3Yp g>Fgp$\"+%)=y2XF07$$\"+:.SJ?Fgp$\"+ml#>t%F07$$\"+QD$\\4#Fgp$\"+HZ)H\" \\F07$$\"+Ynwi@Fgp$\"+Om3#3&F07$$\"+@YBCAFgp$\"+D![?@&F07$$\"+W_V\"H#F gp$\"+Q%)*zK&F07$$\"+$zlYN#Fgp$\"+3%4CT&F07$$\"+O*f2U#Fgp$\"+:4JwaF07$ $\"+U!z`[#Fgp$\"+l)[o^&F07$$\"+d#HIb#Fgp$\"+Sg5RbF07$$\"+bW==EFgp$\"+b H]WbF07$$\"+b]\"[o#Fgp$\"+3whPbF07$$\"+?R*3v#Fgp$\"+ysIAbF07$$\"+MNh6G Fgp$\"+cN-/bF07$$\"+k]?\")GFgp$\"+9ij\"[&F07$$\"+f&[M%HFgp$\"+'[LIY&F0 7$$\"+1J\")4IFgp$\"+6g.ZaF07$$\"+XCLtIFgp$\"+)3dqV&F07$$\"+]EfTJFgp$\" +/!pKV&F0-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$Q\"t6\"Q!Fe[l -%%VIEWG6$;F($\"+aEfTJFgp%(DEFAULTG" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 48 "Here's a fast way to approximate the maximum of " }{XPPEDIT 18 0 " abs(F(t) - P(a,t))" "6#-%$absG6#,&-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF*! \"\"" }{TEXT -1 88 ". Instead of all t, I'll just look at 90 of them. \nIt's more convenient to use the list " }{XPPEDIT 18 0 "[a[0],a[1],a[ 2],a[3]]" "6#7&&%\"aG6#\"\"!&F%6#\"\"\"&F%6#\"\"#&F%6#\"\"$" }{TEXT -1 23 " rather than the table " }{XPPEDIT 18 0 "a" "6#%\"aG" }{TEXT -1 28 " (whose indices start at 0)." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 202 "eits:= evalf([seq(exp(I*i*Pi/90),i=0..90)]):\nfvals: = evalf([seq(F(i*Pi/90),i=0..90)]):\nappnorm:= proc(L) local i;\n max (seq(\nabs(fvals[i]-L[1]-eits[i]*(L[2]+eits[i]*(L[3]+eits[i]*L[4]))),i =1..91)) end:\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 93 " Now we genera te random steps from the current L, accepting the step if it improves \+ the norm." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 498 "ti:= time(): \nbestL:= [a0[0],a0[1],a0[2],a0[3]]:\nbestnorm:= appnorm(bestL);\nfor \+ iter from 1 to 5000 do\n L:= bestL + .01*exp(-.001*iter)*[stats[rando m,normald](4)];\n newnorm:= appnorm(L);\n if newnorm < bestnorm then \n bestL:= L; bestnorm:= newnorm;\n print (\"iteration\",iter,be stnorm,L);\n else\n L:= 2*bestL-L;\n newnorm:= appnorm(L);\n \+ if newnorm < bestnorm then\n bestL:= L; bestnorm:= newnorm;\n \+ print (\"iteration\",iter,bestnorm,L);\n fi\n fi\nod:\n(time()- ti)*seconds; \n " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%)bestnormG$\" +&exYN#!#5" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"\"#$\"+K ]]JB!#57&$!+nD&>5%!#7$\"+!3CR*)*F($\"+.L_LdF($!+gvg%G'F(" }}{PARA 12 " " 1 "" {XPPMATH 20 "6&Q*iteration6\"\"\"'$\"+Gbi!G#!#57&$!+HH'34&!#7$ \"+U!on()*F($\"+G<%))z&F($!+#)RJpiF(" }}{PARA 12 "" 1 "" {XPPMATH 20 " 6&Q*iteration6\"\"\"($\"+o/QhA!#57&$!+A!#57&$\"+2^XT>!#7$\"+E\"R++\"!\"*$\"+\\#Q&QfF($!+%)p\"zD'F(" }} {PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"#L$\"+p*Gz@#!#57&$!+qP l?E!#7$\"+q^1g**F($\"+p6H\"*eF($!+j[R$G'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"$f\"$\"+t@t)>#!#57&$\"*tG(zi!#7$\"+kV-gF($!+py;#>'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*ite ration6\"\"$2#$\"+iyNx@!#57&$\"+p^_-?!#7$\"+3r\"z+\"!\"*$\"+&y'=wgF($! +2pJghF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"$D$$\"+Q(G X<#!#57&$\"+(pG*>I!#7$\"+^$eZ,\"!\"*$\"+TR^jhF($!+x6k2hF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"$r$$\"++&[n:#!#57&$\"+T'ySS&!#7 $\"+0ND<5!\"*$\"+KiELiF($!+r(QI.'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6 &Q*iteration6\"\"$2%$\"+)RT]:#!#57&$\"+Kz=;R!#7$\"+s,)p,\"!\"*$\"+)G4I @'F($!+oZ@!#57&$\"+/nU%H&!#7$\"+`VF=5 !\"*$\"+?E*pB'F($!+^P+SgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iterat ion6\"\"%\"3\"$\"+8$Ho9#!#57&$\"+9JF;Y!#7$\"+$>Hq,\"!\"*$\"+')ec=iF($! +L*G@0'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%q<$\"+E> OY@!#57&$\"+[w**3W!#7$\"+SIc<5!\"*$\"+%=r5B'F($!+p6$o/'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%!H#$\"+=H$e9#!#57&$\"+NZHrW!#7 $\"+@_/=5!\"*$\"+FxiLiF($!+I8-WgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6& Q*iteration6\"\"%yC$\"+=5!\"*$\"+q7YNiF($!+CL[RgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%JH$\"+s@QW@!#57&$\"+(3.m<&! #7$\"+!e_\">5!\"*$\"+nntWiF($!+>CCQgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%'3$$\"+S7/W@!#57&$\"+j;o+^!#7$\"+&=='=5!\"*$\"+ #yS'RiF($!+Mw&*QgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\" \"%)H$$\"+bn!R9#!#57&$\"+]wU_\\!#7$\"+!oM$=5!\"*$\"+y1*pB'F($!+l)p,/'F (" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%LQ$\"+3C$Q9#!#57 &$\"+UYH0]!#7$\"+-'f#=5!\"*$\"+TLTOiF($!+^`%*RgF(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%lX$\"+v:yV@!#57&$\"+!\\V<'\\!#7$\"+smS =5!\"*$\"+[AvPiF($!+5'y//'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iter ation6\"\"%aY$\"+#HCP9#!#57&$\"+qr*=&\\!#7$\"+;?S=5!\"*$\"+x6#zB'F($!+ &H0+/'F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%SZ$\"+xmi V@!#57&$\"+SF`()\\!#7$\"+1i[=5!\"*$\"+Se*)QiF($!+[WdRgF(" }}{PARA 12 " " 1 "" {XPPMATH 20 "6&Q*iteration6\"\"%,\\$\"+sWgV@!#57&$\"+n6fi\\!#7$ \"+%*4Y=5!\"*$\"+z4kQiF($!+@V%*RgF(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #,$%(secondsG$\"()\\49!\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 74 "The last solution turns out to have 4 correct digits of the actual answer ." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "a1:= table([seq(j=best L[j+1],j=0..3)]);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%#a1G-%&TABLEG6# 7&/\"\"!$\"+n6fi\\!#7/\"\"\"$\"+%*4Y=5!\"*/\"\"#$\"+z4kQi!#5/\"\"$$!+@ V%*RgF7" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "In our approximate sol ution, " }{XPPEDIT 18 0 "abs(F(t) - P(a,t))" "6#-%$absG6#,&-%\"FG6#%\" tG\"\"\"-%\"PG6$%\"aGF*!\"\"" }{TEXT -1 33 " is close to constant from about " }{XPPEDIT 18 0 "t=1.1" "6#/%\"tG-%&FloatG6$\"#6!\"\"" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "Pi" "6#%#PiG" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "plot(abs(F(t)-P(a1,t)),t=0..Pi);" } }{PARA 13 "" 1 "" {GLPLOT2D 353 265 265 {PLOTDATA 2 "6%-%'CURVESG6$7Y7 $$\"\"!F)$\"++^KHV!#67$$\"+:Csf&)!#7$\"+(*=&\\L%F,7$$\"+$[W>r\"F,$\"+7 hy^VF,7$$\"+Cn\"zc#F,$\"+H.pzVF,7$$\"+m*))QU$F,$\"+W:W=WF,7$$\"+\\M$e8 &F,$\"+ka@FXF,7$$\"+LzxZoF,$\"+0'o\\n%F,7$$\"+;a)o#)*F,$\"+GVZ8]F,7$$ \"+!H*f!G\"!#5$\"+n\"4nV&F,7$$\"+xGm]>FT$\"+3*[%)f'F,7$$\"+#3o^i#FT$\" +9jpIzF,7$$\"+![nkH$FT$\"+8.X>$*F,7$$\"+bz%)=RFT$\"+qlFh5FT7$$\"+()oGj XFT$\"+\"p2E>\"FT7$$\"+`lwH_FT$\"+**\\KB8FT7$$\"+4)3T*eFT$\"+)RemW\"FT 7$$\"+ykYxlFT$\"+oJzk:FT7$$\"+&Go$zrFT$\"+\"ps0m\"FT7$$\"+gr'p&yFT$\"+ $R1$e*FT$\"+Fg\\<>FT7$$\"+HeV) y*FT$\"+nont>FT7$$\"+*3W'\\5!\"*$\"+fOtG?FT7$$\"+/9i46Fer$\"+Dztl?FT7$ $\"+\"G*Qz6Fer$\"+,(z$)4#FT7$$\"+tc9T7Fer$\"+FD!)=@FT7$$\"+BA!*38Fer$ \"+BLGL@FT7$$\"+#[AMP\"Fer$\"+zM9#FT7$$\"+! \\jD]\"Fer$\"+/q#H9#FT7$$\"+ocCp:Fer$\"+KI\\S@FT7$$\"+5(4&Q;Fer$\"+^!f t8#FT7$$\"+iU!))p\"Fer$\"+K$G]8#FT7$$\"+IS#Rw\"Fer$\"+q'>N8#FT7$$\"+B \"*>J=Fer$\"+()\\JL@FT7$$\"+wY,(*=Fer$\"+KoNM@FT7$$\"+3Ypg>Fer$\"+'Q0i 8#FT7$$\"+:.SJ?Fer$\"+xZoQ@FT7$$\"+QD$\\4#Fer$\"+bT!39#FT7$$\"+Ynwi@Fe r$\"+g;`U@FT7$$\"+@YBCAFer$\"+/'3M9#FT7$$\"+W_V\"H#Fer$\"+M/dV@FT7$$\" +$zlYN#Fer$\"+\\P2V@FT7$$\"+O*f2U#Fer$\"+sg6U@FT7$$\"+U!z`[#Fer$\"+mo- T@FT7$$\"+d#HIb#Fer$\"+ze,S@FT7$$\"+bW==EFer$\"+9?QR@FT7$$\"+b]\"[o#Fe r$\"+\\$)>R@FT7$$\"+?R*3v#Fer$\"+W-\\R@FT7$$\"+MNh6GFer$\"+^J5S@FT7$$ \"+k]?\")GFer$\"+'\\c59#FT7$$\"+f&[M%HFer$\"+c\"o>9#FT7$$\"+1J\")4IFer $\"+s<#G9#FT7$$\"+XCLtIFer$\"+1HQV@FT7$$\"+]EfTJFer$\"+q7gV@FT-%'COLOU RG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$Q\"t6\"Q!Fc]l-%%VIEWG6$;F($\"+ aEfTJFer%(DEFAULTG" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 96 "On clo ser inspection, it achieves its maximum at three points in this interv al, one of which is " }{XPPEDIT 18 0 "Pi" "6#%#PiG" }{TEXT -1 1 "." }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "plot(abs(F(t)-P(a1,t)),t=1. .Pi,0.21 .. 0.21437 );" }}{PARA 13 "" 1 "" {GLPLOT2D 353 265 265 {PLOTDATA 2 "6%-%'CURVESG6$7hn7$$\"+,+++5!\"*$\"+@!#57$$\"+e,n65 F*$\"+)yq2+#F-7$$\"+9.MB5F*$\"+hpu4?F-7$$\"+q/,N5F*$\"+SDQ=?F-7$$\"+E1 oY5F*$\"+&4!oE?F-7$$\"+2*))p1\"F*$\"+O@KS?F-7$$\"+)=(H(3\"F*$\"+\"QmH0 #F-7$$\"+uf856F*$\"+.'=g1#F-7$$\"+hZ(H8\"F*$\"+^a'y2#F-7$$\"+Q\\'f:\"F *$\"+K'4')3#F-7$$\"+9^&*y6F*$\"+X\"4#)4#F-7$$\"+Ag$=?\"F*$\"+)eqm5#F-7 $$\"+IprC7F*$\"+B)*39@F-7$$\"+h/$fC\"F*$\"+O=3?@F-7$$\"+#*R9n7F*$\"+^^ ED@F-7$$\"+cZ268F*$\"+!QEO8#F-7$$\"+;!3lN\"F*$\"+80HR@F-7$$\"+%z^\"z8F *$\"+P]8T@F-7$$\"+rbz,9F*$\"+_TTU@F-7$$\"+![(3D9F*$\"+)43K9#F-7$$\"+)Q z$[9F*$\"+yCaV@F-7$$\"+9\\*)o9F*$\"+D;^V@F-7$$\"+R/T*[\"F*$\"+xYAV@F-7 $$\"+%o,c`\"F*$\"+QL(=9#F-7$$\"+&f#)>e\"F*$\"+ZW#*R@F-7$$\"+(>zmi\"F*$ \"+FQ)y8#F-7$$\"+%*zEn;F*$\"+W1;O@F-7$$\"+**>`:F*$\"+z^UN@F-7$$\"+*)*R@)>F*$\"+9#F-7$$\"+4nLuCF*$\"+::@T@ F-7$$\"+^(Qi^#F*$\"+LN`S@F-7$$\"+_([?c#F*$\"+qW!*R@F-7$$\"+#R_^g#F*$\" +8]ZR@F-7$$\"+;\"3-l#F*$\"+))>BR@F-7$$\"+@$eUp#F*$\"+4A@R@F-7$$\"+/[PS FF*$\"+-ZTR@F-7$$\"+e/z%y#F*$\"+E')zR@F-7$$\"+z=@IGF*$\"+a$R.9#F-7$$\" +)=d_(GF*$\"+d%p49#F-7$$\"+\\\"\\m\"HF*$\"+Z(z:9#F-7$$\"+2!*3kHF*$\"+/ XDU@F-7$$\"+#y>l+$F*$\"+(y%yU@F-7$$\"+P)f<0$F*$\"+*QFK9#F-7$$\"+V.1&4$ F*$\"+K*)\\V@F-7$$\"+]EfTJF*$\"+q7gV@F--%'COLOURG6&%$RGBG$\"#5!\"\"$\" \"!Fg^lFf^l-%+AXESLABELSG6$Q\"t6\"Q!F\\_l-%%VIEWG6$;$\"\"\"Fg^l$\"+aEf TJF*;$\"#@!\"#$\"&P9#!\"&" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 101 "peak1:= fsolve(diff((F(t)-P(a1,t))*(Fbar(t)-Pbar(a1,t)),t), t= 1.4 .. 1.5); peak1:= simplify(%,zero);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>% &peak1G^$$\"+e-Dc9!\"*$\"\"!F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&p eak1G$\"+e-Dc9!\"*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 125 "peak 2:= simplify(fsolve(diff((F(t)-P(a1,t))*(Fbar(t)-Pbar(a1,t)),t), t= 2. 2 .. 2.3),zero); v1:= evalf(abs(F(Pi)-P(a1,Pi))^2);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%&peak2G$\"+1S9rA!\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#v1G$\"+0k-&f%!#6" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "So w e should expect " }{XPPEDIT 18 0 "lambda[t] <> 0;" "6#0&%'lambdaG6#%\" tG\"\"!" }{TEXT -1 21 " for three values of " }{XPPEDIT 18 0 "t" "6#% \"tG" }{TEXT -1 6 ", say " }{XPPEDIT 18 0 "t[1]" "6#&%\"tG6#\"\"\"" } {TEXT -1 2 ", " }{XPPEDIT 18 0 "t[2]" "6#&%\"tG6#\"\"#" }{TEXT -1 5 " \+ and " }{XPPEDIT 18 0 "t[3] = Pi;" "6#/&%\"tG6#\"\"$%#PiG" }{TEXT -1 79 ". We write the KKT equations with this assumption; note that in o rder to have " }{XPPEDIT 18 0 "abs(F(t)-P(a,t))^2 <= v" "6#1*$-%$absG6 #,&-%\"FG6#%\"tG\"\"\"-%\"PG6$%\"aGF,!\"\"\"\"#%\"vG" }{TEXT -1 9 " fo r all " }{XPPEDIT 18 0 "t" "6#%\"tG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "``=v" "6#/%!G%\"vG" }{TEXT -1 5 " for " }{XPPEDIT 18 0 "t=t[i]" "6# /%\"tG&F$6#%\"iG" }{TEXT -1 9 " we need " }{XPPEDIT 18 0 "diff(abs(F(t )-P(a,t))^2,t) = 0;" "6#/-%%diffG6$*$-%$absG6#,&-%\"FG6#%\"tG\"\"\"-% \"PG6$%\"aGF/!\"\"\"\"#F/\"\"!" }{TEXT -1 5 " at " }{XPPEDIT 18 0 "t= t[i]" "6#/%\"tG&F$6#%\"iG" }{TEXT -1 24 ". This is automatic at " } {XPPEDIT 18 0 "t=Pi" "6#/%\"tG%#PiG" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 313 "t[3]:= Pi:\nkkt:= [ 1 - (lambda[1]+lambd a[2]+lambda[3]),\nseq(\nadd(((Pbar(a,t[i])-Fbar(t[i]))*exp(j*I*t[i])+( P(a,t[i])-F(t[i]))*exp(-j*I*t[i]))*lambda[i],i=1..3),j=0..3),\nseq(\n( F(t[i])-P(a,t[i]))*(Fbar(t[i])-Pbar(a,t[i])) - v, i=1..3),\nseq(eval(d iff((F(t)-P(a,t))*(Fbar(t)-Pbar(a,t)),t), t=t[i]),i=1..2)]; \n \+ " }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$kktG7,,*\"\"\"F'&%'lambdaG6#F'! \"\"&F)6#\"\"#F+&F)6#\"\"$F+,(*&,4&%\"aG6#\"\"!F.*&&F6F*F'-%$expG6#*&^ #F+F'&%\"tGF*F'F'F'*&&F6F-F'-F<6#*&^#!\"#F'F@F'F'F'*&&F6F0F'-F<6#*&^#! \"$F'F@F'F'F'*&F'F'-%&GAMMAG6#F;F+F+*&F:F'-F<6#*&F@F'^#F'F'F'F'*&FCF'- F<6#*&^#F.F'F@F'F'F'*&FJF'-F<6#*&^#F1F'F@F'F'F'*&F'F'-FR6#FUF+F+F'F(F' F'*&,4F5F.*&F:F'-F<6#*&F?F'&FAF-F'F'F'*&FCF'-F<6#*&FGF'FfoF'F'F'*&FJF' -F<6#*&FNF'FfoF'F'F'*&F'F'-FR6#FcoF+F+*&F:F'-F<6#*&FfoF'FXF'F'F'*&FCF' -F<6#*&FgnF'FfoF'F'F'*&FJF'-F<6#*&F\\oF'FfoF'F'F'*&F'F'-FR6#FcpF+F+F'F ,F'F'*&,*F5F.*&F.F'F:F'F+*&F.F'FCF'F'*&F.F'FJF'F+F'F/F'F',(*&,&*&,,F5F 'F9F'FBF'FIF'FPF+F'FUF'F'*&,,F5F'FTF'FYF'FhnF'F]oF+F'F;F'F'F'F(F'F'*&, &*&,,F5F'FboF'FgoF'F[pF'F_pF+F'FcpF'F'*&,,F5F'FbpF'FfpF'FjpF'F^qF+F'Fc oF'F'F'F,F'F'*&,*F5FH*&F.F'F:F'F'*&F.F'FCF'F+*&F.F'FJF'F'F'F/F'F',(*&, &*&FjqF'FZF'F'*&F\\rF'FDF'F'F'F(F'F'*&,&*&F`rF'FgpF'F'*&FbrF'FhoF'F'F' F,F'F'FaqF',(*&,&*&FjqF'FinF'F'*&F\\rF'FKF'F'F'F(F'F'*&,&*&F`rF'F[qF'F '*&FbrF'F\\pF'F'F'F,F'F'FcrF',&*&,,F]oF'F5F+FTF+FYF+FhnF+F',,FPF'F5F+F 9F+FBF+FIF+F'F'%\"vGF+,&*&,,F^qF'F5F+FbpF+FfpF+FjpF+F',,F_pF'F5F+FboF+ FgoF+F[pF+F'F'F^tF+,&*$),*F5F+F:F'FCF+FJF'F.F'F'F^tF+,&*&,***F?F'F^oF+ -%$PsiGF_oF'FUF'F'*(F?F'F:F'FUF'F'*(FGF'FCF'FZF'F'*(FNF'FJF'FinF'F'F'F ]tF'F'*&F\\tF',***FQF+-F\\uFSF'F;F'FXF'F'*(F:F'F;F'FXF'F'*(FgnF'FCF'FD F'F'*(F\\oF'FJF'FKF'F'F'F',&*&,***F?F'F_qF+-F\\uF`qF'FcpF'F'*(F?F'F:F' FcpF'F'*(FGF'FCF'FgpF'F'*(FNF'FJF'F[qF'F'F'FbtF'F'*&FatF',***F`pF+-F\\ uFapF'FcoF'FXF'F'*(F:F'FcoF'FXF'F'*(FgnF'FCF'FhoF'F'*(F\\oF'FJF'F\\pF' F'F'F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Here's what we have for these equations at our approximate solution." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "evalf(eval(kkt,\{a=a1,t[1]=peak1, t[2]=peak2, v \+ = v1\}));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7,,*$\"\"\"\"\"!F&*&$F&F' F&&%'lambdaG6#F&F&!\"\"*&$F&F'F&&F+6#\"\"#F&F-*&$F&F'F&&F+6#\"\"$F&F-, (*&^$$!+xe;EI!#5$F'F'F&F*F&F&*&^$$!*!)>EE\"!\"*F>F&F0F&F&*&$\"*a-sG%FC F&F5F&F&,(*&^$$!+1lriLF=F>F&F*F&F&*&^$$\"+S'Hk%RF=F>F&F0F&F&*&$FFFCF&F 5F&F-,(*&^$$\"+3vZdAF=F>F&F*F&F&*&^$$!+5$)>CQF=F>F&F0F&F&*&FEF&F5F&F&, (*&^$$\"+[mvyQF=F>F&F*F&F&*&^$$\"+QIOG)*!#6F>F&F0F&F&*&$FFFCF&F5F&F-^$ $!'u.;F_oF>^$$\"&Gb\"F_oF>F>^$$\"+37dbI!#?F>^$$\"+#>w,$=!#>F>" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "simplify(fnormal(%),zero);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7,,*$\"\"\"\"\"!F&*&$F&F'F&&%'lambda G6#F&F&!\"\"*&$F&F'F&&F+6#\"\"#F&F-*&$F&F'F&&F+6#\"\"$F&F-,(F*$!+xe;EI !#5*&$\"*!)>EE\"!\"*F&F0F&F-*&$\"*a-sG%F?F&F5F&F&,(F*$!+1lriLF;*&$\"+S 'Hk%RF;F&F0F&F&*&$FBF?F&F5F&F-,(F*$\"+3vZdAF;*&$\"+5$)>CQF;F&F0F&F-*&F AF&F5F&F&,(F*$\"+[mvyQF;*&$\"+QIOG)*!#6F&F0F&F&*&$FBF?F&F5F&F-$!+++u.; !#:$\"+++!Gb\"!#;$F'F'F[oF[o" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 44 "W e need values for the Lagrange multipliers " }{XPPEDIT 18 0 "lambda[1] , lambda[2], lambda[3]" "6%&%'lambdaG6#\"\"\"&F$6#\"\"#&F$6#\"\"$" } {TEXT -1 65 ", from an overdetermined system with\n5 equations involvi ng these." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "remove(type,%, constant);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7',*$\"\"\"\"\"!F&*&$F&F 'F&&%'lambdaG6#F&F&!\"\"*&$F&F'F&&F+6#\"\"#F&F-*&$F&F'F&&F+6#\"\"$F&F- ,(F*$!+xe;EI!#5*&$\"*!)>EE\"!\"*F&F0F&F-*&$\"*a-sG%F?F&F5F&F&,(F*$!+1l riLF;*&$\"+S'Hk%RF;F&F0F&F&*&$FBF?F&F5F&F-,(F*$\"+3vZdAF;*&$\"+5$)>CQF ;F&F0F&F-*&FAF&F5F&F&,(F*$\"+[mvyQF;*&$\"+QIOG)*!#6F&F0F&F&*&$FBF?F&F5 F&F-" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 93 "lambdas:=linalg[lea stsqrs](convert(%,set),\{lambda[1],lambda[2],lambda[3]\});\nsubs(lambd as,%%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lambdasG<%/&%'lambdaG6# \"\"\"$\"+y[9B@!#5/&F(6#\"\"#$\"+]Imp[F-/&F(6#\"\"$$\"+jI`0IF-" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7'$\"(4!f;!#5$\")T2=JF&$!)r!32)F&$!)Uw U%*F&$\")'\\\"f8F&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 98 "Now using t his approximate solution as a starting point, we solve the KKT equatio ns using fsolve. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 82 "approx sol:= lambdas union \{seq(a[i]=a1[i],i=0..3),t[1]=peak1, t[2]=peak2, v = v1\};" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%*approxsolG<,/&%'lambdaG 6#\"\"\"$\"+y[9B@!#5/&F(6#\"\"#$\"+]Imp[F-/&F(6#\"\"$$\"+jI`0IF-/&%\"t GF0$\"+1S9rA!\"*/%\"vG$\"+0k-&f%!#6/&F " 0 "" {MPLTEXT 1 0 50 "Digits:= 30: \nfsolve(conver t(kkt,set), approxsol);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#<,/&%'lambd aG6#\"\"\"^$$\"?sz2E9U:7z&)**)3P6#!#I$!?r-fYS%\\:&=U\\<](z\"!#w/&F&6# \"\"#^$$\"?SA7b%)>!*4f&)pi9c[F,$\"?G!G\\(\\[<@@Ou]Od6F//&F&6#\"\"$^$$ \"?)y*z=,Q%z<'GI[9IIF,$\"?ICi;2fu.tf]nO,k!#x/&%\"aGF'^$$\"?=eP;ZjCaQ)H &=w>5!#H$\"?%\\cs8-*3e'pe(HsLcFB/&FEF2^$$\"?8`Mv>')3BSLk\">@D'F,$\"?gu qy3(y.6e\"G\"*4[GF//&FE6#\"\"!^$$\"?XguIZHZaa7L2&>a&!#K$\"?-2GZ[kO^BC$ ))>gM\"F//&FEF;^$$!?)e0vwtC7'y2/AVLgF,$\"?(3it=n/_)z,!*o3f=F//&%\"tGF2 ^$$\"?(pm&=GQ4(*Gh\\uPiAFI$\"?cYU\"Gi.j\"HwQFd!G)FB/%\"vG^$$\"?YzvjsJj OZpy#fRf%!#J$\"?\"4kC&GUhjS&*yCe%f(FB/&F`oF'^$$\"?;zfR^V'H,;3<*>.9FI$! ?$*4Rhji7pYR*o9;9\"F/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "so l:=simplify(fnormal(%),zero);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$so lG<,/&%\"aG6#\"\"#$\"?8`Mv>')3BSLk\">@D'!#I/&%\"tGF)$\"?(pm&=GQ4(*Gh\\ uPiA!#H/&F06#\"\"\"$\"?;zfR^V'H,;3<*>.9F3/%\"vG$\"?YzvjsJjOZpy#fRf%!#J /&%'lambdaGF6$\"?sz2E9U:7z&)**)3P6#F-/&FAF)$\"?SA7b%)>!*4f&)pi9c[F-/&F A6#\"\"$$\"?)y*z=,Q%z<'GI[9IIF-/&F(FJ$!?)e0vwtC7'y2/AVLgF-/&F(6#\"\"!$ \"?XguIZHZaa7L2&>a&!#K/&F(F6$\"?=eP;ZjCaQ)H&=w>5F3" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "And the answer is:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "ans:= subs(sol,sqrt(v));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$ansG$\"?&=+k_h%R'f/fM_L9#!#I" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "This is actually correct to 30 digits." }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 6:" }}{PARA 0 "" 0 "" {TEXT -1 173 "A flea starts at (0,0) on the infinite 2D integer lattice and exe cutes a biased random walk: At each step it hops north or south with p robability 1/4, east with probability " }{XPPEDIT 18 0 "1/4 + epsilon " "6#,&*&\"\"\"F%\"\"%!\"\"F%%(epsilonGF%" }{TEXT -1 28 ", and west wi th probability " }{XPPEDIT 18 0 "1/4 - epsilon" "6#,&*&\"\"\"F%\"\"%! \"\"F%%(epsilonGF'" }{TEXT -1 98 ". The probability that the flea ret urns to (0,0) sometime during its wanderings is 1/2. What is " } {XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 1 "?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "If " }{XPPEDIT 18 0 "u(x,y)" "6#-%\"uG6$%\"xG%\"yG" }{TEXT -1 47 " is the probability that the flea, starting at " }{XPPEDIT 18 0 "` `(x,y);" "6#-%!G6$%\"xG%\"yG" }{TEXT -1 27 ", ever reaches (0,0), then " }{XPPEDIT 18 0 "u(0,0) = 1" "6#/-%\"uG6$\"\"!F'\"\"\"" }{TEXT -1 16 " and otherwise \n" }{XPPEDIT 18 0 "u(x,y) = u(x,y+1)/4+u(x,y-1)/4+ (1/4+epsilon)*u(x-1,y)+(1/4-epsilon)*u(x+1,y);" "6#/-%\"uG6$%\"xG%\"yG ,**&-F%6$F',&F(\"\"\"F.F.F.\"\"%!\"\"F.*&-F%6$F',&F(F.F.F0F.F/F0F.*&,& *&F.F.F/F0F.%(epsilonGF.F.-F%6$,&F'F.F.F0F(F.F.*&,&*&F.F.F/F0F.F8F0F.- F%6$,&F'F.F.F.F(F.F." }{TEXT -1 44 ". The probability that the flea r eturns is " }{XPPEDIT 18 0 "v(epsilon) = u(0,1)/4+u(0,-1)/4+(1/4+epsil on)*u(-1,0)+(1/4-epsilon)*u(1,0);" "6#/-%\"vG6#%(epsilonG,**&-%\"uG6$ \"\"!\"\"\"F.\"\"%!\"\"F.*&-F+6$F-,$F.F0F.F/F0F.*&,&*&F.F.F/F0F.F'F.F. -F+6$,$F.F0F-F.F.*&,&*&F.F.F/F0F.F'F0F.-F+6$F.F-F.F." }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 19 "We can't calculate " }{XPPEDIT 18 0 "v " "6#%\"vG" }{TEXT -1 4 " or " }{XPPEDIT 18 0 "u(x,y)" "6#-%\"uG6$%\"x G%\"yG" }{TEXT -1 113 " directly, but we can approximate it by taking \+ solving the equations in a finite region with boundary conditions " } {XPPEDIT 18 0 "u(x,y)=0" "6#/-%\"uG6$%\"xG%\"yG\"\"!" }{TEXT -1 159 " \+ on the boundary of the region. This corresponds to looking at the sit uation where the flea is killed if it hits the boundary of the region. We want to find " }{XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 33 " (in this approximation) so that " }{XPPEDIT 18 0 "v(epsilon) = 1/ 2" "6#/-%\"vG6#%(epsilonG*&\"\"\"F)\"\"#!\"\"" }{TEXT -1 77 " . This \+ can be done by Newton's method: for this we need the derivatives of " }{XPPEDIT 18 0 "v" "6#%\"vG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "u(x,y )" "6#-%\"uG6$%\"xG%\"yG" }{TEXT -1 17 " with respect to " }{XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 30 ", which satisfy the equati ons " }}{PARA 0 "" 0 "" {TEXT -1 54 "obtained by differentiating the e quations for u and v:" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "`u'`(0,0) = 0 " "6#/-%#u'G6$\"\"!F'F'" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "`u'`(x,y) = \+ `u'`(x,y+1)/4 + `u'`(x,y-1)/4 + (1/4+epsilon)*`u'`(x-1,y) + u(x-1,y) + (1/4-epsilon)*`u'`(x+1,y) - u(x+1,y)" "6#/-%#u'G6$%\"xG%\"yG,.*&-F%6$ F',&F(\"\"\"F.F.F.\"\"%!\"\"F.*&-F%6$F',&F(F.F.F0F.F/F0F.*&,&*&F.F.F/F 0F.%(epsilonGF.F.-F%6$,&F'F.F.F0F(F.F.-%\"uG6$,&F'F.F.F0F(F.*&,&*&F.F. F/F0F.F8F0F.-F%6$,&F'F.F.F.F(F.F.-F=6$,&F'F.F.F.F(F0" }{TEXT -1 10 " o therwise" }}{PARA 0 "" 0 "" {XPPEDIT 18 0 "`v'`(epsilon) = `u'`(0,1)/4 +`u'`(0,-1)/4+(1/4+epsilon)*`u'`(-1,0)+u(-1,0)+(1/4-epsilon)*`u'`(1,0) -u(1,0);" "6#/-%#v'G6#%(epsilonG,.*&-%#u'G6$\"\"!\"\"\"F.\"\"%!\"\"F.* &-F+6$F-,$F.F0F.F/F0F.*&,&*&F.F.F/F0F.F'F.F.-F+6$,$F.F0F-F.F.-%\"uG6$, $F.F0F-F.*&,&*&F.F.F/F0F.F'F0F.-F+6$F.F-F.F.-F<6$F.F-F0" }{TEXT -1 0 " " }}{PARA 0 "" 0 "" {TEXT -1 37 "I'll solve the system by iteration: \+ \n" }{XPPEDIT 18 0 "u[n+1](x,y) = u[n](x,y+1)/4+u[n](x,y-1)/4+(1/4+eps ilon)*u[n](x-1,y)+(1/4-epsilon)*u[n](x+1,y);" "6#/-&%\"uG6#,&%\"nG\"\" \"F*F*6$%\"xG%\"yG,**&-&F&6#F)6$F,,&F-F*F*F*F*\"\"%!\"\"F**&-&F&6#F)6$ F,,&F-F*F*F6F*F5F6F**&,&*&F*F*F5F6F*%(epsilonGF*F*-&F&6#F)6$,&F,F*F*F6 F-F*F**&,&*&F*F*F5F6F*F@F6F*-&F&6#F)6$,&F,F*F*F*F-F*F*" }{TEXT -1 1 " \+ " }}{PARA 0 "" 0 "" {TEXT -1 36 "I'll take advantage of the symmetry \+ " }{XPPEDIT 18 0 "u(x,y) = u(x,-y)" "6#/-%\"uG6$%\"xG%\"yG-F%6$F',$F(! \"\"" }{TEXT -1 44 ", and also the fact that (if you colour the " }} {PARA 0 "" 0 "" {TEXT -1 88 "lattice as a checkerboard) the flea alter nates between black and white sites, so we only" }}{PARA 0 "" 0 "" {TEXT -1 69 "update, say, the black sites for odd n and the white ones for even n." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "getflea:= p roc(eps,M)\n" }{TEXT -1 62 "Procedure to do one Newton iteration for ( 2M+1) by (2M+1) grid" }{MPLTEXT 1 0 47 "\nlocal A,dA,i,j,iter,pp,pm,R, dR,Rp,ip,ip0,iip;\n" }{TEXT -1 19 "u(x,y) = A[x+M,y+1]" }{MPLTEXT 1 0 27 "\nA:= hfarray(1..2*M,1..M);\n" }{TEXT -1 23 "u'(x,y) = dA[x+M,y+1] " }{MPLTEXT 1 0 28 "\ndA:= hfarray(1..2*M,1..M);\n" }{TEXT -1 47 "us e R to check convergence by changes in u(1,0)" }{MPLTEXT 1 0 8 "\nR:= \+ 0;\n" }{TEXT -1 38 "Probabilities for east and west hops. " }{MPLTEXT 1 0 29 "\npp:= 1/4+eps; pm:= 1/4-eps;\n" }{TEXT -1 21 "Initialize the \+ arrays" }{MPLTEXT 1 0 91 "\nfor i from 1 to 2*M do for j from 1 to M d o A[i,j]:= 0;\n dA[i,j]:= 0;\nod od:\nA[M,1]:= 1;\n" }{TEXT -1 71 "ip =0 or 1 depending whether this iteration is for black or white sites " }{MPLTEXT 1 0 42 " \nif (-1)^M=1 then ip:= 0 else ip:= 1 fi;\n" } {TEXT -1 42 "ip = ip0 on iterations that update u(1,0)." }{MPLTEXT 1 0 32 "\nip0:= 1-ip;\nfor iter from 1 do " }{TEXT -1 18 "for each itera tion" }{MPLTEXT 1 0 14 "\n ip:= 1-ip;\n" }{TEXT -1 25 " update si tes on y=0\n" }{MPLTEXT 1 0 196 " for i from 2+ip to 2*M-1 by 2 do if i <> M then\n A[i,1]:= 0.5*A[i,2]+pp*A[i+1,1]+pm*A[i-1,1];\n \+ dA[i,1]:= 0.5*dA[i,2]+A[i+1,1]+pp*dA[i+1,1]-A[i-1,1]+pm*dA[i-1,1] \+ fi od:\n iip:= ip;\n " }{TEXT -1 23 "update sites not on y=0" } {MPLTEXT 1 0 320 "\n for i from 2 to 2*M-1 do\n iip:= 1-iip;\n fo r j from 2+iip to M-1 by 2 do\n A[i,j]:= 0.25*(A[i,j-1]+A[i,j+1])+ pp*A[i+1,j]+pm*A[i-1,j];\n dA[i,j]:= 0.25*(dA[i,j-1]+dA[i,j+1])+pp *dA[i+1,j] +A[i+1,j]+pm*dA[i-1,j]-A[i-1,j];\n od od; \n i f ip=ip0 then\n Rp:= A[M+1,1];\n if abs(Rp-R) <= 1e-15 then \n" }{TEXT -1 65 "if no significant change in u(1,0), calculate v(eps) and next eps" }{MPLTEXT 1 0 201 "\n R:= pp*A[M+1,1]+pm*A[M-1,1]+0.5* A[M,2];\n dR:= pp*dA[M+1,1]+A[M+1,1]+pm*dA[M-1,1]-A[M-1,1]+0.5*dA [M,2];\n print(R,dR);\n return eps - (R-0.5)/dR;\n else\n R:= Rp;\nfi fi;\nod\nend;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%(getfleaGf*6$%$epsG%\"MG6/%\"AG%#d AG%\"iG%\"jG%%iterG%#ppG%#pmG%\"RG%#dRG%#RpG%#ipG%$ip0G%$iipG6\"F7C,>8 $-%(hfarrayG6$;\"\"\",$9%\"\"#;F?FA>8%F;>8+\"\"!>8),&#F?\"\"%F?9$F?>8* ,&FLF?FN!\"\"?(8&F?F?F@%%trueG?(8'F?F?FAFUC$>&F:6$FTFWFH>&FEFenFH>&F:6 $FAF?F?@%/)FRFAF?>8.FH>F_oF?>8/,&F?F?F_oFR?(8(F?F?F7FUC'>F_oFco?(FT,&F BF?F_oF?FB,&FAFBF?FRFU@$0FTFAC$>&F:6$FTF?,(&F:6$FTFB$\"\"&FR*&FJF?&F:6 $,&FTF?F?F?F?F?F?*&FPF?&F:6$,&FTF?F?FRF?F?F?>&FEF`p,,&FEFcpFdpFgpF?*&F JF?&FEFhpF?F?F[qFR*&FPF?&FEF\\qF?F?>80F_o?(FTFBF?FjoFUC$>Fgq,&F?F?FgqF R?(FW,&FBF?FgqF?FB,&FAF?F?FRFUC$>FZ,*&F:6$FT,&FWF?F?FR$\"#D!\"#*&FerF? &F:6$FT,&FWF?F?F?F?F?*&FJF?&F:6$FipFWF?F?*&FPF?&F:6$F]qFWF?F?>Fgn,.&FE FcrFer*&FerF?&FEFjrF?F?*&FJF?&FEF^sF?F?F]sF?*&FPF?&FEFasF?F?F`sFR@$/F_ oFboC$>8-&F:6$,&FAF?F?F?F?@%1-%$absG6#,&F_tF?FGFR$F?!#:C&>FG,(*&FJF?F` tF?F?*&FPF?&F:6$F^rF?F?F?*&FdpF?&F:6$FAFBF?F?>8,,,*&FJF?&FEFatF?F?F`tF ?*&FPF?&FEFauF?F?F`uFR*&FdpF?&FEFduF?F?-%&printG6$FGFfuO,&FNF?*&,&FGF? $FepFRFRF?FfuFRFR>FGF_tF7F7F7" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 206 "Digits:= 15; \nti:= time(): lasteps:= 0; eps:= 0.1: N:= 5:\nfor iter from 1 while abs(lasteps - eps) > 1e-14 do\n N:= floor(3/2*N); \n lasteps:= eps:\n eps:= evalhf(getflea(eps,N));\n (time()-ti)*sec onds;\nod;\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#:" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"\"(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(laste psG$\"\"\"!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3*RwFL'z4+T!#=$! 3!fR&yps!f)>!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3miMNL'f& oa!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"$E'!\"$" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"#5" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"3miMNL'f&oa!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3-2y#zF!>M^!#=$!37Q9fL*ypH#!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3kIqgzHw_g!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"%>M!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG \"#:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"3kIqgzHw_g!#>" } }{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3V3\\>cJUK]!#=$!35(=DLg.V^#!#<" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3#4#\\'pz<<='!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"&FE\"!\"$" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%\"NG\"#A" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(last epsG$\"3#4#\\'pz<<='!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3_\\eiN8 Q-]!#=$!3u!*>-J$*)>_#!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\" 3G4lg(3g6>'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"&)eO! \"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"#L" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"3G4lg(3g6>'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3zfW@]\"f++&!#=$!3RW]BxQY@D!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3)*HuSuYR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"&Wk*!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"#\\" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"3)* HuSuYR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3'RK^[>+++&!#=$!37 %*fKY1V@D!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3;\\#)=ZaR\" >'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"']NB!\"$" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"#t" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"3;\\#)=ZaR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3W%y_+++++&!#=$!3!p(=0A0V@D!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"37#f(RZaR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"'!3V&!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"NG\"$4\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(lastepsG$\"37 #f(RZaR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$$\"3W*)************ \\!#=$!32dm,A0V@D!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"3]]v RZaR\">'!#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"(&=V7!\" $" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 11 "The latest " }{XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 10 " value of " }{XPPEDIT 18 0 ".61 9139544739755050e-1;" "6#-%&FloatG6$\"3]]vRZaR\">'!#>" }{TEXT -1 323 " should have more than 10 correct digits (actually it has 12, not coun ting the initial 0). \n\nBut this method might be very slow if we wan ted, say, 30 digits. Here's a different method that I thought of late r, which works directly with the infinite lattice. First of all, acco rding to probability theory, the probability " }{XPPEDIT 18 0 "p" "6#% \"pG" }{TEXT -1 45 " of return is related to the expected number " } {XPPEDIT 18 0 "mu" "6#%#muG" }{TEXT -1 61 " of times the flea is at (0 ,0) [including the first time] by " }{XPPEDIT 18 0 "mu = sum((k+1)*p^k *(1-p),k=0..infinity)" "6#/%#muG-%$sumG6$*(,&%\"kG\"\"\"F+F+F+)%\"pGF* F+,&F+F+F-!\"\"F+/F*;\"\"!%)infinityG" }{XPPEDIT 18 0 "``=1/(1-p)" "6# /%!G*&\"\"\"F&,&F&F&%\"pG!\"\"F)" }{TEXT -1 25 ". So we are looking f or " }{XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 9 " to make " } {XPPEDIT 18 0 "mu = 2" "6#/%#muG\"\"#" }{TEXT -1 238 ". We can write \+ this as the sum of the probabilities that the flea is at (0,0) at each time. Noting that this means making the same number of hops north as south and the same number east as west, we can write this as a conver gent series\n" }{XPPEDIT 18 0 "mu = sum(sum((2*j+2*k)!/(j!^2)/(k!^2)*( 1/16-epsilon^2)^j*(1/4)^(2*k),k = 0 .. infinity),j = 0 .. infinity);" "6#/%#muG-%$sumG6$-F&6$*,-%*factorialG6#,&*&\"\"#\"\"\"%\"jGF1F1*&F0F1 %\"kGF1F1F1*$-F,6#F2F0!\"\"*$-F,6#F4F0F8),&*&F1F1\"#;F8F1*$%(epsilonGF 0F8F2F1)*&F1F1\"\"%F8*&F0F1F4F1F1/F4;\"\"!%)infinityG/F2;FHFI" } {XPPEDIT 18 0 "``=sum(c[j]*q^j,j=0..infinity)" "6#/%!G-%$sumG6$*&&%\"c G6#%\"jG\"\"\")%\"qGF,F-/F,;\"\"!%)infinityG" }{TEXT -1 7 " where " } {XPPEDIT 18 0 "q = 1/16 - epsilon^2" "6#/%\"qG,&*&\"\"\"F'\"#;!\"\"F'* $%(epsilonG\"\"#F)" }{TEXT -1 49 ". All we need to do is compute the \+ coefficients " }{XPPEDIT 18 0 "c[j]" "6#&%\"cG6#%\"jG" }{TEXT -1 31 ", sum the series and solve for " }{XPPEDIT 18 0 "mu = 2" "6#/%#muG\"\"# " }{TEXT -1 87 ". The series doesn't converge very quickly: the radi us of convergence is 1/16 (since " }{XPPEDIT 18 0 "mu = infinity" "6#/ %#muG%)infinityG" }{TEXT -1 5 " for " }{XPPEDIT 18 0 "epsilon = 0" "6# /%(epsilonG\"\"!" }{TEXT -1 7 ", i.e. " }{XPPEDIT 18 0 "q=1/16" "6#/% \"qG*&\"\"\"F&\"#;!\"\"" }{TEXT -1 117 "), and we will be looking at v alues of q rather close to 1/16. So we'll need lots of terms to get a n accurate value." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 159 "Maple calculates c[j] as an expression involving a hyper geometric function. Maple 8 can convert this to an expression involvi ng associated Legendre functions." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 80 "cj:= sum((2*j+2*k)!/(j!)^2/(k!)^2*(1/4)^(2*k),k=0..in finity) assuming j::posint;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#cjG* (-%*factorialG6#,$%\"jG\"\"#\"\"\"-F'6#F*!\"#-%*hypergeomG6%7$,&F*F,F, F,,&F*F,#F,F+F,7#F,#F,\"\"%F," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "convert(%,`2F1`); # Maple 8 required " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&#\"\"#\"\"$\"\"\"*2-%*factorialG6#,$*&F&F(%\"jGF(F( F(-F+6#F/!\"#-%&GAMMAG6#,&*&F&F(F/F(F(F(F(!\"\"%#PiG#F8F&-%*LegendreQG 6%F:,&*&F&F(F/F(F(#F(F&F(F&F()F&F>F()F',&F/F(#F'\"\"%F8F8-%$expG6#*(^# F@F(,&*&FEF(F/F(F(F(F(F(F9F(F8F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "We want to calculate " }{XPPEDIT 18 0 "c[j]" "6#&%\"cG6#%\"jG" }{TEXT -1 55 " numerically, which Maple can do quite nicely for each \+ " }{XPPEDIT 18 0 "j" "6#%\"jG" }{TEXT -1 98 " using the hypergeom expr ession. If we want, say, about 30 digits, we'll want enough terms unt il " }{XPPEDIT 18 0 "c[j]*q^j < 10^(-31)" "6#2*&&%\"cG6#%\"jG\"\"\")% \"qGF(F))\"#5,$\"#J!\"\"" }{TEXT -1 9 " for the " }{XPPEDIT 18 0 "q" " 6#%\"qG" }{TEXT -1 58 " we'll be using. I'll do the calculations with 40 digits." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 139 "Digits:= 40 : ti:= time():\nq0:= 1/16 - .06^2:\nfor j from 0 do c[j]:= evalf(cj); \nif c[j]*q0^j < 1e-31 then break fi;\nod:\n(time()-ti)*seconds;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"'Ckc!\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "j;" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#\"%n5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "c[j]*q0^j;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"I/A:%)*>U3()oSr$>?o'e*4J'*!#r" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "Newt:= proc(eps) local q,j,v ,vp; \n" }{TEXT -1 47 "This does one iteration of Newton's method for \+ " }{XPPEDIT 18 0 "sum(c[j]*q^j,j = 1 .. 1067) = 2;" "6#/-%$sumG6$*&&% \"cG6#%\"jG\"\"\")%\"qGF+F,/F+;F,\"%n5\"\"#" }{MPLTEXT 1 0 115 "\n q: = evalf(1/16 - eps^2);\n v:= add(c[j]*[1,j/q]*q^j,j=0..1067);\n q:= \+ q - (v[1]-2)/v[2];\n sqrt(1/16-q);\n end;\n" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%%NewtGf*6#%$epsG6&%\"qG%\"jG%\"vG%#vpG6\"F-C&>8$-%&ev alfG6#,&#\"\"\"\"#;F6*$)9$\"\"#F6!\"\">8&-%$addG6$*(&%\"cG6#8%F67$F6*& FFF6F0FF0,&F0F6*&,&&F>6#F6F6F;F6#F;F " 0 "" {MPLTEXT 1 0 177 "epsilon:= 0.06; ti:= time():\ndo\n oldepsilon:= epsilon:\n epsi lon:= Newt(epsilon);\n print(epsilon);\n if abs(oldepsilon-epsilon) \+ < 1e-30 then break fi;\nod:\n(time()-ti)*seconds;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(epsilonG$\"\"'!\"#" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#$\"I)[W(p%yBn$Q'4G\\Bftxka='!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$ \"Im\"=i'!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$ \"I&>\"f.P`m)>'zbtzORZaR\">'!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\" IhtU\\En]o^<[G%4*RZaR\">'!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"I5G J45KZ;_<[G%4*RZaR\">'!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"IEGJ45K Z;_<[G%4*RZaR\">'!#T" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$ \"%!Q&!\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 27 "This has 31 correct digits." }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 7:" }}{PARA 0 "" 0 "" {TEXT -1 4 "Let " }{XPPEDIT 18 0 "A" "6#%\"AG" }{TEXT -1 173 " be the 20,000 x 20,000 matrix whose entries are zero everywhere \+ except for the primes 2, 3, 5, 7, ..., 224737 along the main diagonal \+ and the number 1 in all the positions " }{XPPEDIT 18 0 "a[i,j]" "6#&% \"aG6$%\"iG%\"jG" }{TEXT -1 6 " with " }{XPPEDIT 18 0 "abs(i-j) = 1" " 6#/-%$absG6#,&%\"iG\"\"\"%\"jG!\"\"F)" }{TEXT -1 46 ",2,4,8,...,16384. What is the (1,1) entry of " }{XPPEDIT 18 0 "A^(-1)" "6#)%\"AG,$\"\" \"!\"\"" }{TEXT -1 1 "?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Soluti on:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 32 "This is equivalent to compu ting " }{XPPEDIT 18 0 "x[1]" "6#&%\"xG6#\"\"\"" }{TEXT -1 15 " after s olving " }{XPPEDIT 18 0 "A*x=b" "6#/*&%\"AG\"\"\"%\"xGF&%\"bG" }{TEXT -1 8 ", where " }{XPPEDIT 18 0 "b = [1,0,0,`...`]" "6#/%\"bG7&\"\"\"\" \"!F'%$...G" }{TEXT -1 69 ". The system is diagonally dominant, and we use an iterative method: " }{XPPEDIT 18 0 "x(n+1) = D^(-1)*(b - (A-D) *x(n))" "6#/-%\"xG6#,&%\"nG\"\"\"F)F)*&)%\"DG,$F)!\"\"F),&%\"bGF)*&,&% \"AGF)F,F.F)-F%6#F(F)F.F)" }{TEXT -1 29 ", where D is the diagonal of \+ " }{XPPEDIT 18 0 "A" "6#%\"AG" }{TEXT -1 119 " (but without actually c onstructing the matrices). Gonnet used a Darwin program, equivalent t o the following in Maple." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 185 "b:= Array(1..20000,datatype=float[8]): b[1]:= 1: \nx:= Array(1..2 0000,datatype=float[8]):\nprimes:= Array(1..20000,datatype=float[8]): \nfor i from 1 to 20000 do primes[i]:= ithprime(i) od:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 507 "solvproc:= proc(N)\nlocal iter, to terr, i, rhs, ij, newxi;\nglobal x;\nfor i from 1 to N do x[i]:= 0 od: \nfor iter to 40 do\n toterr := 0;\n for i to N do\n\011 rhs := b[i];\n \011ij := 1;\n\011 while ij < N do\n\011 if \+ i-ij > 0 then rhs := rhs - x[i-ij] fi;\n\011 if i+ij <= N then r hs := rhs - x[i+ij] fi;\n\011 ij := 2*ij\n\011 od;\n\011 \+ newxi := rhs/primes[i];\n\011 toterr := toterr + abs(newxi-x[i]); \n\011 x[i] := newxi\n\011 od;\n if toterr=0 then break fi;\n lprint(toterr);\nod:\nx[1]; \nend;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%)solvprocGf*6#%\"NG6(%%iterG%'toterrG%\"iG%$rhsG%#ijG%&newxiG6 \"F/C%?(8&\"\"\"F39$%%trueG>&%\"xG6#F2\"\"!?(8$F3F3\"#SF5C&>8%F:?(F2F3 F3F4F5C(>8'&%\"bGF9>8(F3?(F/F3F3F/2FHF4C%@$2F:,&F2F3FH!\"\">FD,&FDF3&F 86#FNFO@$1,&F2F3FHF3F4>FD,&FDF3&F86#FVFO>FH,$FH\"\"#>8)*&FDF3&%'primes GF9FO>F@,&F@F3-%$absG6#,&FinF3F7FOF3>F7Fin@$/F@F:[-%'lprintG6#F@&F86#F 3F/6#F8F/" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "ti:= time(): \+ \nevalhf(solvproc(20000));\n(time()-ti)*seconds ;" }}{PARA 6 "" 1 "" {TEXT -1 19 ".887865995381123986" }}{PARA 6 "" 1 "" {TEXT -1 19 ".2786 58134431981340" }}{PARA 6 "" 1 "" {TEXT -1 22 ".873116873307076269e-1 " }}{PARA 6 "" 1 "" {TEXT -1 22 ".280984403047528780e-1" }}{PARA 6 "" 1 "" {TEXT -1 22 ".896168412303717000e-2" }}{PARA 6 "" 1 "" {TEXT -1 22 ".282597754444424655e-2" }}{PARA 6 "" 1 "" {TEXT -1 22 ".8857087172 67995350e-3" }}{PARA 6 "" 1 "" {TEXT -1 22 ".276700748083163562e-3" }} {PARA 6 "" 1 "" {TEXT -1 22 ".862812417589902238e-4" }}{PARA 6 "" 1 " " {TEXT -1 22 ".268719686136664988e-4" }}{PARA 6 "" 1 "" {TEXT -1 22 " .836254516891092076e-5" }}{PARA 6 "" 1 "" {TEXT -1 22 ".26011174730884 4605e-5" }}{PARA 6 "" 1 "" {TEXT -1 22 ".808810146402529806e-6" }} {PARA 6 "" 1 "" {TEXT -1 22 ".251448343535394878e-6" }}{PARA 6 "" 1 " " {TEXT -1 22 ".781623535215165102e-7" }}{PARA 6 "" 1 "" {TEXT -1 22 " .242947694034407002e-7" }}{PARA 6 "" 1 "" {TEXT -1 22 ".75510388082236 6756e-8" }}{PARA 6 "" 1 "" {TEXT -1 22 ".234685997925699352e-8" }} {PARA 6 "" 1 "" {TEXT -1 22 ".729389779125172184e-9" }}{PARA 6 "" 1 " " {TEXT -1 22 ".226686206265103620e-9" }}{PARA 6 "" 1 "" {TEXT -1 23 " .704513858008347722e-10" }}{PARA 6 "" 1 "" {TEXT -1 23 ".2189541217695 08914e-10" }}{PARA 6 "" 1 "" {TEXT -1 23 ".680502535422857584e-11" }} {PARA 6 "" 1 "" {TEXT -1 23 ".211472595988469877e-11" }}{PARA 6 "" 1 " " {TEXT -1 23 ".656998092145587618e-12" }}{PARA 6 "" 1 "" {TEXT -1 23 ".204068598900091197e-12" }}{PARA 6 "" 1 "" {TEXT -1 23 ".635341005751 694184e-13" }}{PARA 6 "" 1 "" {TEXT -1 23 ".199326919187803528e-13" }} {PARA 6 "" 1 "" {TEXT -1 23 ".616146405998221652e-14" }}{PARA 6 "" 1 " " {TEXT -1 23 ".163608756217164570e-14" }}{PARA 6 "" 1 "" {TEXT -1 23 ".409211670512742128e-15" }}{PARA 6 "" 1 "" {TEXT -1 23 ".708330759345 821984e-16" }}{PARA 6 "" 1 "" {TEXT -1 23 ".934890384403199346e-19" }} {PARA 6 "" 1 "" {TEXT -1 23 ".545716338525474910e-22" }}{PARA 6 "" 1 " " {TEXT -1 23 ".355549011630070350e-29" }}{PARA 6 "" 1 "" {TEXT -1 23 ".173686262298320443e-34" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3I2SoiM y]s!#=" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$%(secondsG$\"'D4=!\"$" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 36 "This answer is correct to 14 digit s." }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 8:" }}{PARA 0 "" 0 "" {TEXT -1 15 "A square plate " }{XPPEDIT 18 0 "[-1,1]" "6#7$,$\"\" \"!\"\"F%" }{TEXT -1 3 " x " }{XPPEDIT 18 0 "[-1,1]" "6#7$,$\"\"\"!\" \"F%" }{TEXT -1 19 " is at temperature " }{XPPEDIT 18 0 "u=0" "6#/%\"u G\"\"!" }{TEXT -1 11 ". At time " }{XPPEDIT 18 0 "t=0" "6#/%\"tG\"\"! " }{TEXT -1 33 " the temperature is increased to " }{XPPEDIT 18 0 "u=5 " "6#/%\"uG\"\"&" }{TEXT -1 49 " along one of the four sides while bei ng held at " }{XPPEDIT 18 0 "u=0" "6#/%\"uG\"\"!" }{TEXT -1 78 " along the other three sides, and heat then flows into the plate according t o " }{XPPEDIT 18 0 "u[t]=Delta*u" "6#/&%\"uG6#%\"tG*&%&DeltaG\"\"\"F%F *" }{TEXT -1 35 ". When does the temperature reach " }{XPPEDIT 18 0 " u=1" "6#/%\"uG\"\"\"" }{TEXT -1 28 " at the center of the plate?" }}} {SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 " " {TEXT -1 170 "This is a standard heat-equation problem with homogene ous boundary conditions. It will be slightly more convenient to take \+ the plate as [0,2] x [0,2], and the side with " }{XPPEDIT 18 0 "u=5" " 6#/%\"uG\"\"&" }{TEXT -1 18 " will be taken as " }{XPPEDIT 18 0 "x=2" "6#/%\"xG\"\"#" }{TEXT -1 67 ". The solution is obtained as the sum o f a steady-state solution v" }{XPPEDIT 18 0 "(x,y) = sum(a[j]*sinh(j*P i*x/2)*sin(j*Pi*y/2),j=1..infinity)" "6#/6$%\"xG%\"yG-%$sumG6$*(&%\"aG 6#%\"jG\"\"\"-%%sinhG6#**F.F/%#PiGF/F%F/\"\"#!\"\"F/-%$sinG6#**F.F/F4F /F&F/F5F6F//F.;F/%)infinityG" }{TEXT -1 6 " with " }{XPPEDIT 18 0 "a[j ] = int(5/sinh(j*Pi)*sin(j*Pi*y/2),y=0..2)" "6#/&%\"aG6#%\"jG-%$intG6$ *(\"\"&\"\"\"-%%sinhG6#*&F'F-%#PiGF-!\"\"-%$sinG6#**F'F-F2F-%\"yGF-\" \"#F3F-/F8;\"\"!F9" }{TEXT -1 9 " so that " }{XPPEDIT 18 0 "v(2,y) = 5 " "6#/-%\"vG6$\"\"#%\"yG\"\"&" }{TEXT -1 71 ", and a solution of the e quation with homogeneous boundary conditions, " }{XPPEDIT 18 0 "w(x,y, t) = sum(sum(b[i,j]*sin(i*Pi*x/2)*sin(j*Pi*y/2)*exp(-Pi^2*(i^2+j^2)/4* t),i=1..infinity),j=1..infinity)" "6#/-%\"wG6%%\"xG%\"yG%\"tG-%$sumG6$ -F+6$**&%\"bG6$%\"iG%\"jG\"\"\"-%$sinG6#**F3F5%#PiGF5F'F5\"\"#!\"\"F5- F76#**F4F5F:F5F(F5F;F " 0 " " {MPLTEXT 1 0 67 "aj:= int(5/sinh(j*Pi)*sin(j*Pi*y/2),y = 0 .. 2) ass uming j::posint;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ajG,$**,&)!\"\" %\"jG\"\"\"F+F)F+-%%sinhG6#*&F*F+%#PiGF+F)F*F)F0F)!#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 84 "bij:= -aj*int(sin(i*Pi*x/2)*sinh(j* Pi*x/2),x = 0 .. 2) assuming i::posint,j::posint;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$bijG,$*4,&)!\"\"%\"jG\"\"\"F+F)F+-%%sinhG6#*&F*F+%#P iGF+F)F*F)F0!\"#,2*(F*F+))F)%\"iG\"\"#F+^#F+F+F+*&-%$expG6#,$F/F7F+F6F +F+*&F6F+F4F+F)**F*F+F:F+F4F+F8F+F+*(F6F+F:F+F4F+F+*&^#F)F+F*F+F+F6F)* (FBF+F:F+F*F+F+F+,&*&F*F+F8F+F+F6F+F),&FEF+F6F)F)-F;6#,$F/F)F+F5F)\"\" &" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 67 "bij:= simplify(evalc(c onvert(%,exp))) assuming i::posint,j::posint;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$bijG,$*,,&)!\"\",&%\"iG\"\"\"%\"jGF,F,)F)F+F)F,F+F,, &*$)F+\"\"#F,F,*$)F-F2F,F,F)%#PiG!\"#F-F)!#?" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 84 "We want to evaluate this at x=1, y=1. By symmetry it i s obvious that v(1,1) = 5/4. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 7 "A s for " }{XPPEDIT 18 0 "w(x,y,t)" "6#-%\"wG6%%\"xG%\"yG%\"tG" }{TEXT -1 13 ", the factor " }{XPPEDIT 18 0 "exp(-Pi^2*(i^2+j^2)/4*t) < 10^(- 31);" "6#2-%$expG6#,$**%#PiG\"\"#,&*$%\"iGF*\"\"\"*$%\"jGF*F.F.\"\"%! \"\"%\"tGF.F2)\"#5,$\"#JF2" }{TEXT -1 5 " for " }{XPPEDIT 18 0 "t > 1/ 4" "6#2*&\"\"\"F%\"\"%!\"\"%\"tG" }{TEXT -1 116 " (some preliminary in vestigation assured us that the answer we want should be somewhere bet ween about 1/4 and 1) if " }{XPPEDIT 18 0 "i^2 + j^2 > 116" "6#2\"$;\" ,&*$%\"iG\"\"#\"\"\"*$%\"jGF(F)" }{TEXT -1 28 ". So this approximatio n to " }{XPPEDIT 18 0 "u(1,1,t)" "6#-%\"uG6%\"\"\"F&%\"tG" }{TEXT -1 54 " should be accurate to approximately 30 decimals when " }{XPPEDIT 18 0 "t > 1/4" "6#2*&\"\"\"F%\"\"%!\"\"%\"tG" }{TEXT -1 2 " :" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 111 "U:= 5/4 + add(add(bij*sin(i *Pi*1/2)*sin(j*Pi*1/2)*exp(-Pi^2*(i^2+j^2)/4*t),j=1..floor(sqrt(116-i^ 2))),i=1..10);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%\"UG,<#\"\"&\"\"% \"\"\"*(\"#?F)%#PiG!\"#-%$expG6#,$*&)F,\"\"#F)%\"tGF)#!\"\"F4F)F7*(#\" #S\"\"$F)F,F--F/6#,$F2#!\"&F4F)F)*(\"\")F)F,F--F/6#,$F2#!#8F4F)F7*(#\" $s\"\"#NF)F,F--F/6#,$F2#!#DF4F)F)*&#F:\"\"*F)*&F,F--F/6#,$F2#!#TF4F)F) F7*&#F+FSF)*&F,F--F/6#,$F2#!\"*F4F)F)F7*(#FBF;F)F,F--F/6#,$F2#!# " 0 "" {MPLTEXT 1 0 36 "Digits:= 40: fsolve(U=1,t=1/4 .. 1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"IyC^kD$foOV(zj$)oLqQ6SU!#S" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 36 "This actually has 39 correct digits." }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 10 "Problem 9:" }}{PARA 0 "" 0 "" {TEXT -1 13 "The integral " }{XPPEDIT 18 0 "I(alpha) = int((2+sin(10*alpha))*x^ alpha*sin(alpha/(2-x)),x = 0 .. 2);" "6#/-%\"IG6#%&alphaG-%$intG6$*(,& \"\"#\"\"\"-%$sinG6#*&\"#5F.F'F.F.F.)%\"xGF'F.-F06#*&F'F.,&F-F.F5!\"\" F:F./F5;\"\"!F-" }{TEXT -1 26 " depends on the parameter " }{XPPEDIT 18 0 "alpha" "6#%&alphaG" }{TEXT -1 21 ". What is the value " } {XPPEDIT 18 0 "alpha*epsilon* [0,5]" "6#*(%&alphaG\"\"\"%(epsilonGF%7$ \"\"!\"\"&F%" }{TEXT -1 10 " at which " }{XPPEDIT 18 0 "I(alpha)" "6#- %\"IG6#%&alphaG" }{TEXT -1 22 " achieves its maximum?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 142 "This is rather different from Gaston's solution. The numerica l integration works in Maple 8, but not Maple 7.\nWe want to be able t o evaluate " }{XPPEDIT 18 0 "`I'`(alpha)" "6#-%#I'G6#%&alphaG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "`I''`(alpha)" "6#-%$I''G6#%&alphaG" } {TEXT -1 80 " so that we can use Newton's method to find the location \+ of the maximum. Write " }{XPPEDIT 18 0 "J(alpha) = int(x^alpha*sin(al pha/(2-x)),x=0..2)" "6#/-%\"JG6#%&alphaG-%$intG6$*&)%\"xGF'\"\"\"-%$si nG6#*&F'F.,&\"\"#F.F-!\"\"F5F./F-;\"\"!F4" }{TEXT -1 4 " so " } {XPPEDIT 18 0 "I(alpha) = (2+sin(10*alpha))*J(alpha)" "6#/-%\"IG6#%&al phaG*&,&\"\"#\"\"\"-%$sinG6#*&\"#5F+F'F+F+F+-%\"JG6#F'F+" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "`I'`(alpha) = 10*cos(10*alpha)*J(alpha) + (2+sin( 10*alpha))*`J'`(alpha)" "6#/-%#I'G6#%&alphaG,&*(\"#5\"\"\"-%$cosG6#*&F *F+F'F+F+-%\"JG6#F'F+F+*&,&\"\"#F+-%$sinG6#*&F*F+F'F+F+F+-%#J'G6#F'F+F +" }{TEXT -1 6 ", and " }{XPPEDIT 18 0 "`I''`(alpha) = -100*sin(10*alp ha)*J(alpha) + 20*cos(10*alpha)*`J'`(alpha) + (2+sin(10*alpha))*`J''`( alpha)" "6#/-%$I''G6#%&alphaG,(*(\"$+\"\"\"\"-%$sinG6#*&\"#5F+F'F+F+-% \"JG6#F'F+!\"\"*(\"#?F+-%$cosG6#*&F0F+F'F+F+-%#J'G6#F'F+F+*&,&\"\"#F+- F-6#*&F0F+F'F+F+F+-%$J''G6#F'F+F+" }{TEXT -1 44 ".\n \nWe break the i nterval up into pieces. " }}{PARA 0 "" 0 "" {TEXT -1 16 "On the inter val " }{XPPEDIT 18 0 "0 .. 1/3" "6#;\"\"!*&\"\"\"F&\"\"$!\"\"" }{TEXT -1 30 " we use a series in powers of " }{XPPEDIT 18 0 "x" "6#%\"xG" } {TEXT -1 6 ". On " }{XPPEDIT 18 0 "1/3 .. 2 " "6#;*&\"\"\"F%\"\"$!\" \"\"\"#" }{TEXT -1 27 " we use the transformation " }{XPPEDIT 18 0 "y \+ = alpha/(2-x)" "6#/%\"yG*&%&alphaG\"\"\",&\"\"#F'%\"xG!\"\"F+" }{TEXT -1 28 " , obtaining an integral on " }{XPPEDIT 18 0 "3*alpha/5 .. infi nity" "6#;*(\"\"$\"\"\"%&alphaGF&\"\"&!\"\"%)infinityG" }{TEXT -1 19 " . On the interval " }{XPPEDIT 18 0 "3*alpha/5 .. 2*Pi " "6#;*(\"\"$\" \"\"%&alphaGF&\"\"&!\"\"*&\"\"#F&%#PiGF&" }{TEXT -1 50 " we use Maple' s own numerical integration, and on " }{XPPEDIT 18 0 "2*Pi .. infinity " "6#;*&\"\"#\"\"\"%#PiGF&%)infinityG" }{TEXT -1 62 " we expand the in tegrand in negative powers of y times sin(y)." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "restart: ti:= time():" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 23 "First for the interval " }{XPPEDIT 18 0 "0 .. 1/3" "6#; \"\"!*&\"\"\"F&\"\"$!\"\"" }{TEXT -1 72 ": J1 is the integral, dJ1 its derivative and d2J1 its second derivative." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 320 "f:= x^alpha*sin(alpha/(2-x));\nS:= convert(series (sin(alpha/(2-x)),x,40),polynom):\nintp:= proc(t) local c,xp,n; \n if has(t,x) then xp,c := selectremove(has,t,x); \n if xp = x then n:= 1 else n:= op(2,xp) fi;\n else n:= 0; c:= t \n fi;\n collect(expan d(c),[cos,sin])*3^(-n-alpha-1)/(n+alpha+1);\nend:\nJ1:= map(intp,S): \+ " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"fG*&)%\"xG%&alphaG\"\"\"-%$sin G6#*&F(F),&\"\"#F)F'!\"\"F0F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "dJ1:= diff(J1,alpha):\nd2J1:= diff(J1,alpha$2):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "length(J1),length(dJ1),length(d2J1) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%\"&5_$\"'R!R\"\"'zCM" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 52 "How big is the last term in dJ1 for a typ ical alpha?" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "evalf(eval(s elect(has,dJ1,3^(-40-alpha)),alpha=0.8));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+CyW*)>!#T" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 25 " \+ Next the transformation." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 229 "xy := expand(solve(alpha/(2-x)=y,x));\ng:= subs(x=xy,f)*diff(xy,y );\ng1:= eval(g,y=3*alpha/5);\nga:= normal(diff(g,alpha));\nga1:= norm al(eval(ga,y=3*alpha/5));\ngy:= normal(eval(diff(g,y),y=3*alpha/5));\n gaa:= normal(diff(g,alpha$2));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#x yG,&*&%\"yG!\"\"%&alphaG\"\"\"F(\"\"#F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"gG**),&*&%\"yG!\"\"%&alphaG\"\"\"F*\"\"#F,F+F,-%$sinG6#F)F,F )!\"#F+F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#g1G,$*()#\"\"\"\"\"$%& alphaGF)-%$sinG6#,$F+#F*\"\"&F)F+!\"\"#\"#D\"\"*" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%#gaG*,)*&,&%&alphaG!\"\"*&\"\"#\"\"\"%\"yGF-F-F-F.F*F )F-F.!\"#-%$sinG6#F.F-,,*&-%#lnG6#F'F-)F)F,F-F***F,F-F)F-F5F-F.F-F-*$F 8F-F*F)F**&F,F-F.F-F-F-F(F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$ga1G ,$**)#\"\"\"\"\"$%&alphaGF)-%$sinG6#,$F+#F*\"\"&F)F+!\"#,(*&-%#lnG6#F* F)F+F)F)*&F1F)F+F)F)F)!\"\"F)#!#D\"\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#gyG,$*()#\"\"\"\"\"$%&alphaGF),(*&-%$sinG6#,$F+#F*\"\"&F)F+F) \"#D*(F*F)-%$cosGF0F)F+F)F)*&\"#5F)F.F)!\"\"F)F+!\"##F4\"#F" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$gaaG*,)*&,&%&alphaG!\"\"*&\"\"#\"\"\"%\"y GF-F-F-F.F*F)F-F.!\"#-%$sinG6#F.F-,8*&)-%#lnG6#F'F,F-)F)\"\"$F-F-**\" \"%F-F5F-)F)F,F-F.F-F**(F,F-F6F-F9F-F-**F " 0 "" {MPLTEXT 1 0 84 "dH:=diff( int(h(a,y),y=3*a/5 .. 2*Pi),a);\nd2H:=diff(int(h(a,y),y=3*a/5 .. 2*Pi) ,a$2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#dHG,&-%$intG6$-%%diffG6$- %\"hG6$%\"aG%\"yGF//F0;,$F/#\"\"$\"\"&,$%#PiG\"\"#\"\"\"*&#F5F6F:-F-6$ F/F3F:!\"\"" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$d2HG,*-%$intG6$-%%di ffG6$-%\"hG6$%\"aG%\"yG-%\"$G6$F/\"\"#/F0;,$F/#\"\"$\"\"&,$%#PiGF4\"\" \"*&#F9F:F=-F*6$-F-6$F/F7F/F=!\"\"*&#F9F:F=--&%\"DG6#F=6#F-FCF=FD*&#\" \"*\"#DF=--&FJ6#F4FLFCF=FD" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "J2:= a -> evalf(Int(subs(alpha=a,g),y=3*a/5 .. 2*Pi));\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#J2Gf*6#%\"aG6\"6$%)operatorG%&arrowGF(-%& evalfG6#-%$IntG6$-%%subsG6$/%&alphaG9$%\"gG/%\"yG;,$F7#\"\"$\"\"&,$%#P iG\"\"#F(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 193 "dJ2:= a - > evalf(Int(subs(alpha=a,ga),y=3*a/5 .. 2*Pi) - 3/5*subs(alpha=a,g1)); \nd2J2:= a -> evalf(Int(subs(alpha=a,gaa),y=3*a/5 .. 2*Pi,epsilon=10^( -Digits/2)) - subs(alpha=a,6/5*ga1+9/25*gy));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$dJ2Gf*6#%\"aG6\"6$%)operatorG%&arrowGF(-%&evalfG6#,& -%$IntG6$-%%subsG6$/%&alphaG9$%#gaG/%\"yG;,$F8#\"\"$\"\"&,$%#PiG\"\"# \"\"\"*&#F?F@FD-F46$F6%#g1GFD!\"\"F(F(F(" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%%d2J2Gf*6#%\"aG6\"6$%)operatorG%&arrowGF(-%&evalfG6#,&-%$IntG6 %-%%subsG6$/%&alphaG9$%$gaaG/%\"yG;,$F8#\"\"$\"\"&,$%#PiG\"\"#/%(epsil onG)\"#5,$%'DigitsG#!\"\"FC\"\"\"-F46$F6,&%$ga1G#\"\"'F@*&#\"\"*\"#DFL %#gyGFLFLFKF(F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "J2(0.8 ),dJ2(0.8),d2J2(0.8);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%$\"+iI&)z%*!# 5$!*o%oKZF%$!+>yqn=!\"*" }}}{PARA 0 "" 0 "" {TEXT -1 18 " For the inte rval " }{XPPEDIT 18 0 "2*Pi .. infinity" "6#;*&\"\"#\"\"\"%#PiGF&%)inf inityG" }{TEXT -1 27 ", we will use a series for " }{XPPEDIT 18 0 "(2- alpha/y)^alpha;" "6#),&\"\"#\"\"\"*&%&alphaGF&%\"yG!\"\"F*F(" }{TEXT -1 23 " in negative powers of " }{XPPEDIT 18 0 "y" "6#%\"yG" }{TEXT -1 32 ", relying on Maple to integrate " }{XPPEDIT 18 0 "int(y^(-n)*si n(y),y = 2*Pi .. infinity);" "6#-%$intG6$*&)%\"yG,$%\"nG!\"\"\"\"\"-%$ sinG6#F(F,/F(;*&\"\"#F,%#PiGF,%)infinityG" }{TEXT -1 11 ". We have " }{XPPEDIT 18 0 "g = sum(2^(2+alpha-n)*(-alpha)^(n)*pochhammer(alpha-n+ 3,n-3)/(n-2)!/y^n, n=2..infinity)" "6#/%\"gG-%$sumG6$*,)\"\"#,(F*\"\" \"%&alphaGF,%\"nG!\"\"F,),$F-F/F.F,-%+pochhammerG6$,(F-F,F.F/\"\"$F,,& F.F,F6F/F,-%*factorialG6#,&F.F,F*F/F/)%\"yGF.F//F.;F*%)infinityG" } {TEXT -1 7 " where " }{XPPEDIT 18 0 "pochhammer(t,m) = t*(t+1)*`...`*( t+m-1)" "6#/-%+pochhammerG6$%\"tG%\"mG**F'\"\"\",&F'F*F*F*F*%$...GF*,( F'F*F(F*F*!\"\"F*" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 112 "J3:=add(2^(2+alpha-n)*(-alpha)^n*pochhammer(alpha-n+ 3,n-3)/(n-2)!*int(sin(y)/y^n,y=2*Pi..infinity),n = 2 .. 30):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "dJ3:= diff(J3,alpha): d2J3:= diff(J3,alpha$2):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "evalf (eval([J3,dJ3,d2J3],alpha=0.8));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7% $\"+)o-l*H!#6$\"+!*H(4Y&F&$\"+MC+(z%F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 177 "t30:= add(2^(2+alpha-n)*(-alpha)^n*pochhammer(alpha- n+3,n-3)/(n-2)!*int(sin(y)/y^n,y=2*Pi..infinity),n = 30..30); evalf(ev al([t30,diff(t30,alpha),diff(t30,alpha$2)],alpha=0.8));" }}{PARA 12 " " 1 "" {XPPMATH 20 "6#>%$t40G,$*,)\"\"#,&!#Q\"\"\"%&alphaGF+F+F,\"#S-% +pochhammerG6$,&!#PF+F,F+\"#PF+,J\"C+DJXe.\"z,x;B8\\BY?$F+*&\"%g7F+)%# PiG\"#IF+!\"\"*&\"2]irkvh<')*F+)F9\"#9F+F;*&\"+]d-x7F+)F9\"#AF+F;*&\"& !oAF+)F9\"#GF+F+*&\",+5vPo)F+)F9\"#?F+F+*&\"faSu$z'R\\B'*F+)F9F(F+F;*&\".+0rFYU( F+)F9\"#=F+F;*&\"#CF+)F9\"#MF+F;*&\"$?\"F+)F9\"#KF+F+*&\"'+PiF+)F9\"#E F+F;*&\"7]7Gb6R#y3hf#F+)F9\"#5F+F;*&FenF+)F9\"#OF+F+*&\">+]P9hcHL#Q))y yMKF+)F9\"\"%F+F+*&\")+VKCF+)F9FboF+F+*&\"9]P4AXSDG35q_F+)F9\"\")F+F+F +F9F*#F+\"hp++++++++C5SE>D\"p!e![!\\6]9RRG0'Q)*R``6F?+lP*40KNuy#o" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7%$!+SLM*>)!#i$!+s?VFM!#g$!+p+&*f8!#e " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 89 "Jp:= a -> evalf(eval(J1 +J3,alpha=a))+J2(a):\nIp:= a -> evalf(2+sin(10*a))*Jp(a):\n Jp(0.8);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+HnJ65!\"*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 41 "Here it is plotted (with low precision), " } {XPPEDIT 18 0 "J(alpha)" "6#-%\"JG6#%&alphaG" }{TEXT -1 12 " in red an d " }{XPPEDIT 18 0 "I(alpha)" "6#-%\"IG6#%&alphaG" }{TEXT -1 32 " in g reen. The maximum is near " }{XPPEDIT 18 0 "y = 0.78" "6#/%\"yG-%&Flo atG6$\"#y!\"#" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "plot([Jp,Ip],0..5);" }}{PARA 13 "" 1 "" {GLPLOT2D 430 234 234 {PLOTDATA 2 "6&-%'CURVESG6$7jn7$\"\"!$F(F(7$$\"+sUkCF!#6$\"+h24)H\"!#5 7$$\"+X&)G\\aF-$\"+.+-IAF07$$\"+VB$)F0$\"+`()355Fap7$$\"+ j()4_))F0$\"+?:6/5Fap7$$\"+Mbw!Q*F0$\"+&yP^$**F07$$\"+#HkX#**F0$\"+1%) \\\"y*F07$$\"+0j$o/\"Fap$\"+$*y9'e*F07$$\"+_>jU6Fap$\"+S'46:*F07$$\"+j ^Z]7Fap$\"+ht8U&)F07$$\"+)=h(e8Fap$\"+pWtFyF07$$\"+Q[6j9Fap$\"+WG-kqF0 7$$\"+\\z(yb\"Fap$\"+`HvBjF07$$\"+b/cq;Fap$\"+R]$fS&F07$$\"+Fap$\"+Vly\")GF07$$\" +\"f#=$3#Fap$\"+181D?F07$$\"+t(pe=#Fap$\"+vpMZ7F07$$\"+uI,$H#Fap$\"*&H [g[F07$$\"+rSS\"R#Fap$!*eVBg\"F07$$\"+`?`(\\#Fap$!*k_*QzF07$$\"++#pxg# Fap$!+.oow8F07$$\"+g4t.FFap$!+$3k\"==F07$$\"+!Hst!GFap$!+n<7CAF07$$\"+ ERW9HFap$!+^`]lDF07$$\"+KE>>IFap$!+X#RL#GF07$$\"+#RU07$Fap$!+[C\"G+$F0 7$$\"+?S2LKFap$!+u%\\Y7$F07$$\"+$p)=MLFap$!+$[A%oJF07$$\"+*=]@W$Fap$!+ `pV^JF07$$\"+]$z*RNFap$!+7y,%3$F07$$\"+kC$pk$Fap$!+R!p&fHF07$$\"+3qcZP Fap$!+02!**z#F07$$\"+/\"fF&QFap$!+.DK&f#F07$$\"+0OgbRFap$!+R[\\kBF07$$ \"+nAFjSFap$!+m'or4#F07$$\"+&)*pp;%Fap$!+yU\\@=F07$$\"+ye,tUFap$!+=&yw _\"F07$$\"+fO=yVFap$!+E(H1B\"F07$$\"+E>#[Z%Fap$!*ENrd*F07$$\"+(G!e&e%F ap$!*_R]]'F07$$\"+&)Qk%o%Fap$!*Q*R_QF07$$\"+UjE!z%Fap$!*lWr@F0$\"+cM/y;Fap7$$\"+YW4QAF0$\"+o:;'o\"Fap7$$\"+0pu/BF0$\"+ _.i!p\"Fap7$$\"+?=0QCF0$\"+EQw)o\"Fap7$FK$\"+]T3t;Fap7$$\"+ml'z$GF0$\" ++ZD/;Fap7$FP$\"+-L%\\\\\"Fap7$FU$\"+_w\"R@\"Fap7$FZ$\"+4(>?r*F07$$\"+ Wbj6VF0$\"+(4T\"H$*F07$$\"+;j=XWF0$\"+=9yp!*F07$$\"+)3P(yXF0$\"+M@MZ*) F07$$\"+hyG7ZF0$\"+4![A(*)F07$$\"+0%*Qz\\F0$\"+MP\\*[*F07$Fin$\"+#puP1 \"Fap7$$\"+t#GT\\&F0$\"+p'HKA\"Fap7$F^o$\"+t/IE9Fap7$$\"+>HS*)fF0$\"+ \"QwAm\"Fap7$Fco$\"+fmu<>Fap7$$\"+ZVX$\\'F0$\"+hOj'=#Fap7$Fho$\"+`_cUC Fap7$$\"+cDG1qF0$\"+Ni\\oEFap7$F]p$\"+'*\\@\\GFap7$Fcp$\"+QrdvHFap7$Fh p$\"+\"f(QJIFap7$$\"+&Gg$fyF0$\"+&eKP.$Fap7$$\"+VilDzF0$\"+G]QJIFap7$$ \"+-A&>*zF0$\"+u!eV-$Fap7$F]q$\"+!\\'o7IFap7$$\"+w+%3>)F0$\"+,`lvHFap7 $Fbq$\"+2>*4#HFap7$$\"+y`w(e)F0$\"+nDwjFFap7$Fgq$\"+UnL_DFap7$$\"+\\@V ;\"*F0$\"+*oG?I#Fap7$F\\r$\"+%RS2.#Fap7$$\"+8\\m_'*F0$\"+8\"4*\\5Fap$\"+#>>@E\"Fap7$Ffr$\"+6q)**F07$$\"+bFfp6Fap$\"+Hw086Fap7$$\"+eNb'>\"Fap$\"+W9Dr7Fap7$$\"+ gV^B7Fap$\"+]x*yX\"Fap7$F`s$\"+#*\\#el\"Fap7$$\"+w\"=YI\"Fap$\"+:Dh<*fAFap7$$\"+1Q*yR\"Fap$\"+eiAbAFap7$$\"+5fT/9Fap$\" +D;>ZAFap7$$\"+8!Q4T\"Fap$\"+))z%eB#Fap7$$\"+Ek-P9Fap$\"+t3ee@Fap7$Fjs $\"+XzvM?Fap7$$\"+%R'\\5:Fap$\"+*ov&>Uh\"Fap$\"+WRJo#*F07$$\"+G)*QU;Fap$\"+mjv vvF07$Fdt$\"+%oM)piF07$$\"+qYU%p\"Fap$\"+wK+(\\&F07$$\"+')))G=Fap$\"+i`MZvF07$$\"+;0?E>Fap$\"+iKi!)yF07$$\"+gl[Q>Fa p$\"+4Si')zF07$$\"+/Ex]>Fap$\"+$RPx/)F07$$\"+['eI'>Fap$\"+;Q'=1)F07$Fc u$\"+cq!z-)F07$$\"+UOEH?Fap$\"+kX=FtF07$Fhu$\"+Kp:1fF07$F]v$\"+wMUfEF0 7$$\"+B9WRAFap$\"+4J.#Q\"F07$Fbv$\"+PLw)z&F-7$$\"+t&3AM#Fap$\"+o'))pd \"F-7$Fgv$!+^Tk+Y\"y#Fap $!+$phS?&F07$F[x$!+W+W\"*[F07$$\"+3\"34'GFap$!+UJT>SF07$F`x$!+3k%*pJF0 7$$\"+:v`FHFap$!+A&HG,$F07$$\"+.6jSHFap$!+(y:o)GF07$$\"+#pCP&HFap$!+g= a'z#F07$$\"+z#=o'HFap$!+Ht'fu#F07$$\"+o=\"*zHFap$!+c@GQFF07$$\"+ca+$*H Fap$!++(Hex#F07$$\"+W!*41IFap$!+:o/gGF07$Fex$!+CDU\"*HF07$$\"+7v')pIFa p$!+!H,F#RF07$Fjx$!+!*G=y`F07$$\"+1#3o<$Fap$!+Hw\\2sF07$F_y$!+LTUD()F0 7$$\"+)o_$eKFap$!+#zx=<*F07$$\"+c8j$G$Fap$!+pE_E%*F07$$\"+!pqiH$Fap$!+ &>mhZ*F07$$\"+C+\"*3LFap$!+B!pEZ*F07$$\"+e$\\:K$Fap$!+?j7;%*F07$Fdy$!+ `W_2$*F07$$\"+S%p\")Q$Fap$!+X\"QsJ)F07$Fiy$!+LL?InF07$$\"+pZ1\"\\$Fap$ !+l%[p;&F07$F^z$!+Gt'o'QF07$$\"+HwrmNFap$!+F#=qP$F07$$\"+2fX$f$Fap$!+( G#p%3$F07$$\"+Z]#og$Fap$!+qV[?OFap$!+9>U.IF07$$\"+DLcLOF ap$!+qKdTIF07$Fcz$!+fz)*HJF07$$\"+O(\\sp$Fap$!+Z\"HF&QF07$Fhz$!+I%z$z \\F07$$\"+cI;+QFap$!+t/.4iF07$F][l$!+z*[J5(F07$$\"+mYhlQFap$!+ZGJNsF07 $$\"+H-ZyQFap$!+3/YFtF07$$\"+\"zD8*QFap$!+@#yyP(F07$$\"+a8=/RFap$!+(e< cQ(F07$$\"+%Fap$!+=u)Q%>F07 $$\"+JH**>UFap$!+4]08#>F07 $Fe]l$!+J,**f()F-7$$\"+8^XPZFap$!+u_LfVF-7$Fj]l$!+zxB7:F-7$$\"+FM\"3%[ Fap$\"+JK0>g!#87$F_^l$\"+Bc)[E\"F-7$Fd^l$\"+r/N\\iF--Fh^l6&Fj^lF)F[_lF )-%+AXESLABELSG6$Q!6\"F^^o-%%VIEWG6$;F)$Fd^lF(%(DEFAULTG" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" }}}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 59 "Here is a Newton iteration procedu re. It takes an initial " }{XPPEDIT 18 0 "alpha" "6#%&alphaG" }{TEXT -1 29 " value, prints the values of " }{XPPEDIT 18 0 "I(alpha)" "6#-% \"IG6#%&alphaG" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "`I'`(alpha)" "6#-%#I' G6#%&alphaG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "`I''`(alpha)" "6#-%$I ''G6#%&alphaG" }{TEXT -1 52 ", and returns the new alpha for the next \+ iteration: " }{XPPEDIT 18 0 "alpha - `I'`(alpha)/`I''`(alpha)" "6#,&%& alphaG\"\"\"*&-%#I'G6#F$F%-%$I''G6#F$!\"\"F-" }{TEXT -1 2 ". " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 331 "Newt:= proc(a) \n local J,d J,d2J,Ia,dI,d2I;\n J:= evalf(eval(J1+J3,alpha=a)+J2(a));\n dJ:= evalf( eval(dJ1+dJ3,alpha=a)+dJ2(a));\n d2J:= evalf(eval(d2J1+d2J3,alpha=a)+d 2J2(a));\n Ia:= (2+sin(10*a))*J;\n dI:=10*cos(10*a)*J+(2+sin(10*a))*dJ ;\n d2I:= -100*sin(10*a)*J+20*cos(10*a)*dJ+(2+sin(10*a))*d2J;\n print( [Ia,dI,d2I]);\n a-dI/d2I;\n end; \n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%%NewtGf*6#%\"aG6(%\"JG%#dJG%$ d2JG%#IaG%#dIG%$d2IG6\"F/C*>8$-%&evalfG6#,&-%%evalG6$,&%#J1G\"\"\"%#J3 GF8%-F46#,&-F86$,&%$dJ1GF<%$dJ3GFF<-%$dJ 2GFCF<>8&-F46#,&-F86$,&%%d2J1GF<%%d2J3GFF<-%%d2J2GFCF<>8'*&,&\"\"#F <-%$sinG6#,$F@\"#5F8(,&*&-%$cosGF]oF8),( *&F[oF " 0 "" {MPLTEXT 1 0 15 "a1:=Newt(0.8);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%$\"+/!)= BI!\"*$!+uSS'\\\"F&$!+4X(e0\"!\"(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %#a1G$\"+F#y#ey!#5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 80 "Digit s:= 36: for i from 2 to 5 do a||i:= Newt(a||(i-1)) od;\n(time()-ti)*se conds;" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7%$\"E#45(p`cgKIuyp6))>tLI!# N$\"EU'\\j$p%#a2G$\"EPxvpdT:pg*Rfs(RnLfy!#O" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7%$\"E(>2Fy(oQ.^i$\\&['eKP.$!#N$\"?j#Qh@N%Ga3iuA7&)R !#P$!E'yJ'zK$**=`hkD(*f_w!o5!#L" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# a3G$\"EU0hp>>\"4gXXr.NuO$fy!#O" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7%$ \"E]DG^$osy`KO\\&['eKP.$!#N$\"4)H&Q\\opyN]&!#P$!E5&p23jao6;bvnf_w!o5!# L" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#a4G$\"EmaaFj)RClXXr.NuO$fy!#O " }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7%$\"E_DG^$osy`KO\\&['eKP.$!#N$\"$ \"Q!#P$!E,Z@S8sW;h^bx'f_w!o5!#L" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# a5G$\"EmaaFj)RClXXr.NuO$fy!#O" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&$ \"(N9v#!\"$\"\"\"%(secondsGF(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 27 "This has 33 correct digits." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{EXCHG {PARA 4 "" 0 "" {TEXT -1 11 "Problem 10:" }}{PARA 0 "" 0 "" {TEXT -1 243 "A particle at the center of a 10 x 1 rectangle undergoes Brownian motion (i.e. 2D random walk with infinitesimal ste p lengths) till it hits the boundary. What is the probability that it hits at one of the ends rather than at one of the sides?" }}}{SECT 1 {PARA 5 "" 0 "" {TEXT -1 9 "Solution:" }}{PARA 0 "" 0 "" {TEXT -1 252 "This is another standard heat equation problem, this time just for th e steady state. The probability is the temperature at the centre in t he steady-state solution of the heat equation on the rectangle, where \+ the temperature is fixed at 1 on the ends (" }{XPPEDIT 18 0 "x=0" "6#/ %\"xG\"\"!" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "x=10" "6#/%\"xG\"#5" } {TEXT -1 22 ") and 0 on the sides (" }{XPPEDIT 18 0 "y=0" "6#/%\"yG\" \"!" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "y=1" "6#/%\"yG\"\"\"" }{TEXT -1 39 "). The solution with temperature 1 at " }{XPPEDIT 18 0 "x=10" "6#/%\"xG\"#5" }{TEXT -1 38 " and 0 on the rest of the boundary is " } {XPPEDIT 18 0 "u[1](x,y) = sum(a[j]*sinh(j*Pi*x)*sin(j*Pi*y),j=1..infi nity)" "6#/-&%\"uG6#\"\"\"6$%\"xG%\"yG-%$sumG6$*(&%\"aG6#%\"jGF(-%%sin hG6#*(F3F(%#PiGF(F*F(F(-%$sinG6#*(F3F(F8F(F+F(F(/F3;F(%)infinityG" } {TEXT -1 7 " where " }{XPPEDIT 18 0 "a[j]*sinh(10*j*Pi)=2*int(sin(j*Pi *y),y=0..1)" "6#/*&&%\"aG6#%\"jG\"\"\"-%%sinhG6#*(\"#5F)F(F)%#PiGF)F)* &\"\"#F)-%$intG6$-%$sinG6#*(F(F)F/F)%\"yGF)/F9;\"\"!F)F)" }{TEXT -1 2 ": " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "restart;\naj:= 2/sinh (10*Pi*j)*int(sin(j*Pi*y),y=0..1) assuming j::integer;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ajG,$*,\"\"#\"\"\"-%%sinhG6#,$*(\"#5F(%#PiGF(% \"jGF(F(!\"\",&)F1F0F(F(F1F(F0F1F/F1F1" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "u1:= Sum(aj*sinh(j*Pi*x)*sin(j*Pi*y),j=1..infinity); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#u1G-%$SumG6$,$*0\"\"#\"\"\"-%%s inhG6#,$*(\"#5F+%#PiGF+%\"jGF+F+!\"\",&)F4F3F+F+F4F+F3F4F2F4-F-6#*(F3F +F2F+%\"xGF+F+-%$sinG6#*(F3F+F2F+%\"yGF+F+F4/F3;F+%)infinityG" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 48 "By symmetry, the solution with tem perature 1 at " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 38 " an d 0 on the rest of the boundary is " }{XPPEDIT 18 0 "u[2](x,y) = u[1]( 10-x,y)" "6#/-&%\"uG6#\"\"#6$%\"xG%\"yG-&F&6#\"\"\"6$,&\"#5F/F*!\"\"F+ " }{TEXT -1 69 ". By superposition, the solution with temperature 1 a t both ends is " }{XPPEDIT 18 0 "u[1](x,y) + u[2](x,y)" "6#,&-&%\"uG6# \"\"\"6$%\"xG%\"yGF(-&F&6#\"\"#6$F*F+F(" }{TEXT -1 26 ". At the centr e, we have " }{XPPEDIT 18 0 "u[1](5,1/2) + u[2](5,1/2) = 2 u[1](5,1/2) " "6#/,&-&%\"uG6#\"\"\"6$\"\"&*&F)F)\"\"#!\"\"F)-&F'6#F-6$F+*&F)F)F-F. F)*&F-F)-&F'6#F)6$F+*&F)F)F-F.F)" }{TEXT -1 73 ". The series converge s rapidly. Here it is calculated with Digits = 40." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "Digits:= 40; ans:= 2*evalf(eval(u1,\{x=5, y=1/2\}));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#S" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$ansG$\"I%z+\"R[?'=LrS.hA^#zzePQ!#Y" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 27 "This has 39 correct digits." }}}}}{MARK "19" 0 } {VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }