{VERSION 7 1 "Linux" "7.1" } {USTYLETAB {PSTYLE "Heading 4" -1 20 1 {CSTYLE "" -1 -1 "MS Serif" 1 12 0 0 0 1 1 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered List 5" -1 200 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 144 2 0 2 2 -1 1 }{PSTYLE "Ordered List 1 " -1 201 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 } 1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Bullet Item" -1 15 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Left Justified Maple Output" -1 12 1 {CSTYLE "" -1 -1 "" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Help" -1 10 1 {CSTYLE "" -1 -1 "" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Author" -1 19 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 8 8 2 0 2 0 2 2 -1 1 }{PSTYLE "Diagnostic" -1 9 1 {CSTYLE "" -1 -1 "Courier" 1 12 40 120 40 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 2" -1 4 1 {CSTYLE "" -1 -1 "MS Serif" 1 16 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 8 2 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered List 3" -1 202 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 72 2 0 2 2 -1 1 }{PSTYLE "Maple Plot" -1 13 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Norm al" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 } 1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Dash Item" -1 16 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 3" -1 5 1 {CSTYLE "" -1 -1 "MS Serif" 1 14 0 0 0 1 1 1 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Orde red List 4" -1 203 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 108 2 0 2 2 -1 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Line Printed Output" -1 6 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "List Item" -1 14 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Wa rning" -1 7 1 {CSTYLE "" -1 -1 "Courier" 1 12 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Error" -1 8 1 {CSTYLE "" -1 -1 "Courier" 1 12 255 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Fixed Width" -1 17 1 {CSTYLE "" -1 -1 "" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "He ading 1" -1 3 1 {CSTYLE "" -1 -1 "MS Serif" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 8 4 2 0 2 0 2 2 -1 1 }{PSTYLE "Title" -1 18 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }3 1 0 0 12 12 2 0 2 0 2 2 -1 1 }{PSTYLE "Ordered List 2" -1 204 1 {CSTYLE "" -1 -1 "Times " 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 36 2 0 2 2 -1 1 } {CSTYLE "Equation Label" -1 200 "Courier" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Text" -1 201 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 } {CSTYLE "Page Number" -1 33 "Times" 1 10 0 0 0 1 2 2 2 2 2 2 0 0 0 1 } {CSTYLE "Maple Input" -1 0 "Courier" 1 12 255 0 0 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Output" -1 20 "Times" 1 12 0 0 255 1 2 2 2 2 2 1 0 0 0 1 }{CSTYLE "Dictionary Hyperlink" -1 45 "MS Serif" 1 12 147 0 15 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "2D Input" -1 19 "Times" 1 12 0 0 0 1 2 2 2 2 1 2 0 0 0 1 }{CSTYLE "Maple Input Placeholder" -1 202 "Courier" 1 12 200 0 200 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "MS Serif" 1 12 0 128 128 1 2 2 1 2 2 2 0 0 0 1 }{PSTYLE "" -1 205 1 {CSTYLE "" -1 -1 "Times" 1 12 255 0 0 1 2 1 2 2 1 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }} {SECT 0 {EXCHG {PARA 18 "" 0 "" {TEXT 203 66 "Sz\303\241m\303\255t\303 \263g\303\251pes sz\303\241melm\303\251let" }}}{EXCHG {PARA 19 "" 0 "" {TEXT 204 18 "J\303\241rai Antal" }}}{EXCHG {PARA 19 "" 0 "" {TEXT 204 68 "Ezek a programok csak szeml\303\251ltet\303\251sre szolg\303\2 41lnak" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 59 "1. A pr\303\255mek el oszl\303\241sa, szit\303\241l\303\241s" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 63 "2. Egyszer\305\261 faktoriz\303\241l\303\241si m\303\263 dszerek" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 64 "3. Egyszer\305\261 p r\303\255mtesztel\303\251si m\303\263dszerek" }}{EXCHG {PARA 0 "" 0 "" {XPPEDIT 2 0 "" "%#%?G" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 18 "4. \+ Lucas-sorozatok" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 23 "5. Alkalmaz \303\241sok " }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 36 "6. Sz\303\241mok \303\251s polinomok" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 45 "7. Gyors F ourier-transzform\303\241ci\303\263" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 38 "8. Elliptikus f\303\274ggv\30 3\251nyek" }}}{SECT 0 {PARA 3 "" 0 "" {TEXT 205 59 "9. Sz\303\241mol\3 03\241s elliptikus g\303\266rb\303\251ken" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}} {SECT 0 {PARA 4 "" 0 "" {TEXT 206 16 "9.1. Elliptikus " }{TEXT 206 21 "g\303\266rb\303\251k." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 64 "# This routin e randomly choose an elliptic \"curve\" modulo n,\n" }{MPLTEXT 1 0 53 "# where gcd(n,6)=1. The coordinates x,y are choosen\n" }{MPLTEXT 1 0 55 "# randomly, the parameter a too, and b is calculated.\n" }{MPLTEXT 1 0 57 "# The list [x,y,a,b] is given back or a divisor d of n.\n" } {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 39 "ellrand:=p roc(n) local x,y,a,b,r,d,f;\n" }{MPLTEXT 1 0 19 "r:=rand(n); d:=0;\n" }{MPLTEXT 1 0 14 "while d=0 do\n" }{MPLTEXT 1 0 52 " x:=r(n); y:=r(n) ; a:=r(n); b:=y^2-x^3-a*x mod n;\n" }{MPLTEXT 1 0 36 " d:=4*a^3+27*b^ 2 mod n; gcd(d,n);\n" }{MPLTEXT 1 0 5 "od;\n" }{MPLTEXT 1 0 34 "if %1 then return % fi;\n" }{MPLTEXT 1 0 15 "[x,y,a,b]; end;" } {MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"nG6\"6)I\"xGF %I\"yGF%I\"aGF%I\"bGF%I\"rGF%I\"dGF%I\"fGF%F%F%C'>F+-I%randGF%F#>F,\" \"!?(F%\"\"\"F5F%/F,F3C(>F'-F+F#>F(F9>F)F9>F*-I$modGF%6$,(*$)F(\"\"#F5 F5*$)F'\"\"$F5!\"\"*&F)F5F'F5FGF$>F,-F>6$,&*&\"\"%F5)F)FFF5F5*&\"#FF5) F*FCF5F5F$-I$gcdGF%6$F,F$@$32I\"%GF%F$2F5FYOFY7&F'F(F)F*F%F%F%" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "ellrand(97); " }{MPLTEXT 1 0 13 "ellrand(97); " }{MPLTEXT 1 0 13 "ellrand(97); " }{MPLTEXT 1 0 13 "ellrand(97); " }{MPLTEXT 1 0 12 "ellrand(97);" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"\"&\"#e\"#V\"#<" }}{PARA 11 "" 1 " " {XPPMATH 20 "7&\"#P\"#o\"#E\"#a" }}{PARA 11 "" 1 "" {XPPMATH 20 "7& \"#&*\"#;\"#*)\"#a" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"#L\"#<\"#^\"#9 " }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"#b\"#U\"##)\"#Z" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 12 "9.2. Hasse t" }{TEXT 206 8 "\303\251" } {TEXT 206 5 "tele." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 61 "# This brute force pr ocedure calculate the number of points\n" }{MPLTEXT 1 0 55 "# on an el liptic curve modulo p>3, a prime. The curve\n" }{MPLTEXT 1 0 25 "# par ameters are a, b. \n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" } {MPLTEXT 1 0 34 "ellcount:=proc(a,b,p) local x,c;\n" }{MPLTEXT 1 0 7 " c:=1;\n" }{MPLTEXT 1 0 67 "for x from 0 to p-1 do c:=c+numtheory[jacob i](x^3+a*x+b,p)+1; od;\n" }{MPLTEXT 1 0 7 "c; end;" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"aG6\"I\"bGF%I\"pGF%6$I\"xGF%I \"cGF%F%F%C%>F*\"\"\"?(F)\"\"!F-,&F'F-F-!\"\"I%trueG%*protectedG>F*,(F *F--&I*numtheoryGF%6#I'jacobiGF%6$,(*$)F)\"\"$F-F-*&F$F-F)F-F-F&F-F'F- F-F-F*F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "ellrand(97) ; ellcount(%[3],%[4],97);" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 38 "ellr and(97); ellcount(%[3],%[4],97);\n" }{MPLTEXT 1 0 38 "ellrand(97); ell count(%[3],%[4],97);\n" }{MPLTEXT 1 0 38 "ellrand(97); ellcount(%[3],% [4],97);\n" }{MPLTEXT 1 0 36 "ellrand(97); ellcount(%[3],%[4],97);" }} {PARA 11 "" 1 "" {XPPMATH 20 "7&\"#f\"##*\"#8\"\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#))" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"#\\\"#Y\"\"( \"#R" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$:\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"#X\"#V\"\")\"#*)" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$ 7\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"#w\"#e\"#:\"#R" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"$0\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7&\"\"!\"#p \"#w\"\")" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#(*" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 15 "9.3. Gyakorlat." }}{PARA 0 "" 0 "" {TEXT 201 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "with(plots);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7gnI,InteractiveG6\"I(animateGF$I*animate3dGF$I- animatecurveGF$I&arrowGF$I-changecoordsGI(_syslibGF$I,complexplotGF$I. complexplot3dGF$I*conformalGF$I,conformal3dGF$I,contourplotGF$I.contou rplot3dGF$I*coordplotGF$I,coordplot3dGF$I-cylinderplotGF$I,densityplot GF$I(displayGF$I*display3dGF$I*fieldplotGF$I,fieldplot3dGF$I)gradplotG F$I+gradplot3dGF$I,graphplot3dGF$I-implicitplotGF$I/implicitplot3dGF$I (inequalGF$I,interactiveGF$I2interactiveparamsGF$I-listcontplotGF$I/li stcontplot3dGF$I0listdensityplotGF$I)listplotGF$I+listplot3dGF$I+loglo gplotGF$I(logplotGF$I+matrixplotGF$I)multipleGF$I(odeplotGF$I'paretoGF $I,plotcompareGF$I*pointplotGF$I,pointplot3dGF$I*polarplotGF$I,polygon plotGF$I.polygonplot3dGF$I4polyhedra_supportedGF$I.polyhedraplotGF$I'r eplotGF$I*rootlocusGF$I,semilogplotGF$I+setoptionsGF$I-setoptions3dGF$ I+spacecurveGF$I1sparsematrixplotGF$I+sphereplotGF$I)surfdataGF$I)text plotGF$I+textplot3dGF$I)tubeplotGF$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "implicitplot(y^2=x^3-10*x+10,x=-5..10,y=-20..20,numpo ints=10000);" }}{PARA 13 "" 1 "" {TEXT 207 0 "" }{GLPLOT2D 400 400 400 {PLOTDATA 2 "6$-%+AXESLABELSG6$Q\"x6\"Q\"yF'-%'CURVESG6ggl7$7$$!3C)** **********\\$!#<$!3*R(G9dGkW9F07$$!3nPSR)QkT_$F0$!3;/++++++7F07$F37$$! 3UItivUwHNF0$!39>d&Q_NF0$!3iU++++++!)!#=F97$F?7 $$!3XUge&f^!fNF0$!3e*>sVy!HDkFD7$7$$!3w_a.#G=$pNF0$!3KT++++++SFDFF7$FL 7$$!30q>]\"fG?d$F0$!3Sau%*fvBz?FD7$7$$!3wH1u=D'\\d$F0$!3?zI6\">Dy5%!#K FR7$FX7$$!3Zh^1+TCsNF0$\"3su42N$4l#>FD7$7$FM$\"3;f************RFDFin7$ F_o7$$!3-<#)\\FqGiNF0$\"3OdC&**R()4m&FD7$7$F@$\"3Ce************zFDFco7 $Fio7$$!3#fm\"F0F]p7$Fcp7$$!3$>NG&4l7>NF0$\"3&)R*3a-/5D\"F07$7$F.$\"3btG9dG kW9F0Fip7$7$$!3J)***********\\LF0$!3P3+++D\"yU#F07$$!3#[(>rc'RdN$F0$!3 O/++++++CF07$7$Fiq$!3#R++++++S#F07$$!3Q#f$Gu9ugLF0$!3p'3x&ogNrBF07$7$$ !3c)3Qf&yeDMF0$!3+/++++++?F0Far7$Fgr7$$!3Vr2@:46sMF0$!3[v7x#*3Pu;F07$7 $$!3IOwd#QOF[$F0$!33/++++++;F0F]s7$FcsF-7$F_q7$$!3(ow%GaEo'[$F0$\"3/7F 4yq[k:F07$7$$!3>Pwd#QOF[$F0$\"33'************f\"F0Fjs7$F`t7$$!3j;:Jc=F07$7$$!3X*3Qf&yeDMF0$\"3+'*************>F0Fft7$F\\u7 $$!3y\")*)))fFd,MF0$\"3Z^Rqft_P@F07$7$$!3rv>rc'RdN$F0$\"3#f*********** *R#F0Fbu7$Fhu7$$!3vsw.UAq`LF0$\"3([zLaks)4CF07$7$Fdq$\"3.2+++D\"yU#F0F ^v7$7$$!3S)************>$F0$!3O0+++++KIF07$$!3I&)H]p@viKF0$!3#Q++++++! GF07$7$$!3v&)H]p@viKF0F`w7$$!3(y***********\\LF0Ffq7$Fdv7$$!39#)[)f!HJ 'H$F0$\"3%[offTMol#F07$7$$!3_()H]p@viKF0$\"3%e************z#F0Fjw7$F`x 7$$!3Eg$[=\\ckB$F0$\"37Ecf6t@(*GF07$7$Fiv$\"3O0+++++KIF0Ffx7$7$$!30)** *********\\IF0$!3'z#)eq9bvZ$F07$$!3Ee98&yyx9$F0$!3s.++++++KF07$FeyFhv7 $F\\y7$$!3E?%*Q\"yY9<$F0$\"3U?^q$3eQ7$F07$7$$!3#4YJ^yyx9$F0$\"3s&***** *******>$F0F\\z7$Fbz7$$!3rug$yE;/5$F0$\"3H*>'*3QVWL$F07$7$Fay$\"3TG)eq 9bvZ$F0Fhz7$7$$!3e)*************GF0$!3#eE0@%oBPF07$7$Fc[l$\"3Em_5UoB% F07$7$Fh`l$\"3/I9dG9d)G%F0F`al7$7$$!3S)***********\\CF0$!3mdp3E.;ZWF07 $$!3G\\rz'*)3v\\#F0$!3#R++++++S%F07$F_blFg`l7$Ffal7$$!3\\MQGSjJqDF0$\" 3CC-4uN%3K%F07$7$$!3Gdrz'*)3v\\#F0$\"3#f************R%F0Ffbl7$F\\cl7$$ !3U\")*R_p()GY#F0$\"3R;mI(=nVV%F07$7$$!3%))***********\\CF0$\"3mdp3E.; ZWF0Fbcl7$Fjal7$$!3;NmHzhNDCF0$!3Lu*3_&orlWF07$7$$!3%*)************H#F 0$!3eu@l&p3,c%F0F^dl7$7$Ficl$\"3xcp3E.;ZWF07$$!3.W`D?,#oM#F0$\"35]U,aO &[_%F07$7$Fedl$\"3pt@l&p3,c%F0F]el7$Fddl7$$!3(e1y))eO^A#F0$!3UD=*HwN'* f%F07$7$$!3-************\\@F0$!36\"R<_12$RYF0Fgel7$Fcel7$$!3CZ^#*f&3 \\A#F0$\"3)3R+)fhv*f%F07$7$F^fl$\"3+#R<_12$RYF0Fcfl7$F]fl7$$!33gn(=,C \"[?F0$!3-v>m,$p;n%F07$7$$!37**************>F0$!3YI\"R<_cpo%F0F]gl7$Fi fl7$$!3sn=%)HW:'4#F0$\"3&ek6H\"=TcYF07$7$Fdgl$\"3YI\"R<_cpo%F0Figl7$Fc gl7$$!30D#GZpJs)=F0$!3LNZs![:2q%F07$7$$!3?************\\=F0$!3>8R<_\"e _q%F0Fchl7$F_hl7$$!3P%z!))4MYf>F0$\"3i$y[jU->p%F07$7$Fjhl$\"3>8R<_\"e_ q%F0F_il7$Fihl7$$!3pw*=!>Z+Q]ToO\"=F0$\"3xocQtd6.ZF07$7$$!3_ *************p\"F0$\"3gh#yM/8kp%F0Fejl7$F_jl7$$!3S=1F!o.vf\"F0$!3a`$y# >NKtYF07$7$$!3Q************\\:F0$!3P&p3EGAEm%F0Fa[m7$7$F`jl$\"3sg#yM/8 kp%F07$$!3$>gMeeqvl\"F0$\"3vN*eb*[&oo%F07$7$Fh[m$\"3P&p3EGAEm%F0F`\\m7 $7$Fh[m$!3\\%p3EGAEm%F07$$!3s`u*FD$!3C'>Gm^\"eMVF07$7$$!37&************\\*FD$!3x8dG9#)f9VF0 Fdbm7$7$$!3A'************\\*FD$\"3x8dG9#)f9VF07$$!3,A:'o1T[0\"F0F_cl7$ FecmFaam7$Fjbm7$$!3]\\'['p&y>i)FD$!3,'p$4[!RTB%F07$7$$!3+'************ *zFD$!3:cG9dG9xTF0Fjcm7$F`cm7$$!3!)o'Qnxs?,*FD$\"3Fvpztg))pUF07$7$Fadm $\"3:cG9dG9xTF0Ffdm7$F`dm7$$!3XJeBfu:S F07$7$$!3&QF0F`gm7$7$Fggm$\"3mD0@%ot>&QF0 7$$!37r:?uGl\\iFDF__l7$F_hm7$$!3o%************\\'FD$\"34cG9d.$o-%F07$F fgm7$$!3vzoT\"pMcN%FD$!3v+b&*[2$=x$F07$7$$!3M&************\\$FD$!3pD0@ %=6am$F0Fihm7$7$Fggm$\"35E0@%ot>&QF07$$!3B;=5FzpfRFD$\"369Q*Q6'eAPF07$ 7$F`im$\"3DD0@%=6am$F0Fhim7$F_im7$$!3i]eNv,[MLFD$!3!*3^!*>'QTk$F07$7$$ !3s)y*)*>FD$!3&)GN#)eqkdMF0F^[n7$7$$!3S&*************> FD$\"3&)GN#)eqkdMF07$$!3+J(*)*>3?*o3w8FD$!3&o\"yzGoPmLF07$7$$!3[a****** ******\\!#>$!310Zw6p@QKF0Fh\\n7$7$$!3o&*************>FDF]\\n7$$!3HOBF \\?pu\")Fa]n$\"3\")eska%eYG$F07$7$F_]n$\"3h/Zw6p@QKF0Fh]n7$F^]n7$$!3/n m'pPFg2%Fa]n$!3!zbZ*p#RYA$F07$7$$!3W,igu%*H*R#Fa]nFhyFb^n7$Fh^n7$$\"3) eX&zd.CL_Fa]n$!3t97a4k)G2$F07$7$$\"3]/++++++5FD$!3;**********\\$*HF0F \\_n7$7$Fc_n$\"3;**********\\$*HF07$$!3c.dgu%*H*R#Fa]nFez7$7$$!3#Rq0YZ *H*R#Fa]nFezF^^n7$Fb_n7$$\"3b/H&QG>#[9FD$!34x2OU^_>HF07$7$$\"3oK8C/7Vs @FDF`wFc`n7$Fi`n7$$\"36y\"f`=JNO#FD$!3R$y&4;$3Ow#F07$7$$\"3W/++++++DFD $!3F\"p2B>?wt#F0F]an7$7$Fdan$\"3s\"p2B>?wt#F07$$\"3Ew8C/7Vs@FDFcx7$7$F ]bn$\"3Q&************z#F0Fh_n7$Fcan7$$\"3Q_L(e-tcC$FD$!3%o*GBSh%))f#F0 7$7$$\"37/++++++SFD$!3\"y`h%Q:YeCF0Fdbn7$Fian7$$\"3^\\E8z'=VF$FD$\"3+d z*)=]^$f#F07$7$$\"3o/++++++SFD$\"3OP:YQ:YeCF0F`cn7$7$Fgcn$!3DQ:YQ:YeCF 07$$\"3vh45rR7JTFD$!3Y#f$H#Rm\\V#F07$7$$\"3h%)3pvxEEVFDF_rF_dn7$Fedn7$ $\"3H5Ol\\P[!)\\FD$!3Nl4CLBYhAF07$7$$\"3)[++++++]&FD$!3oijjj)[9:#F0Fid n7$7$F`en$\"3oijjj)[9:#F07$$\"3eC4pvxEEVFDF[v7$7$$\"3-C4pvxEEVFDF[v7$F [cnFicn7$F_en7$$\"3yXzk^!yT#eFD$!3ga%R/[Zk3#F07$7$$\"3alR')>JJbiFDFjrF afn7$Fgfn7$$\"3)pV-!y3PVmFD$!3]_1!3!*)*[!>F07$7$$\"350++++++qFD$!3,*** *******\\<=F0F[gn7$7$$\"3+/++++++qFD$\"3y)*********\\<=F07$$\"3=-S')>J JbiFDF_u7$F\\hn7$F`en$\"3Bijjj)[9:#F07$7$FhgnFdgn7$$\"31iM\\kI2SuFD$!3 Ff#)>-'p?8F07$7$$\"3[V\\Pmog2%*FDF6Ffjn7$F\\[o7$$\"3v k.TK\\>b'*FD$!36+h(>)>036F07$7$$\"3W+++++++5F0$!3S&)***********z*FDF`[ o7$7$Fg[o$\"3%)z***********z*FD7$$\"37q\\Pmog2%*FDFfp7$F_\\oF[jn7$Ff[o 7$$\"3Q^e())*>NI5F0$!3Z-%*oOmQ4))FD7$7$$\"3i>L.$G^^0\"F0FBFd\\o7$Fj\\o 7$$\"38$f!fAJN'3\"F0$!3T$=\\d$*\\FI'FD7$7$$\"3TZx2FjoG6F0FOF^]o7$Fd]o7 $$\"3QNtb<+oJ6F0$!3L3B'[8n9^$FD7$7$$\"3O++++++]6F0$!3p&*)******\\(=_Fa ]nFh]o7$7$F_^o$\"3I[#******\\(=_Fa]n7$$\"3I[x2FjoG6F0F`o7$Fg^o7$$\"3*y #)H8L*=36F0$\"36$*y`k6&\\6&FD7$7$$\"3i@L.$G^^0\"F0$\"3Of************zF DF[_o7$7$Fb_oFjo7$Fg[o$\"33#)***********z*FD7$7$F_^o$!33(*)******\\(=_ Fa]n7$$\"3#z*Q#*oD=`6F0$!3%f0JPY]o[)!#?7$7$$\"3(**eKsj+Q:\"F0FenF_`o7$ Ff`oFd^o7$7$$\"3c*************\\#F0$!3#)\\*********\\(yFD7$$\"31Agi:e> RCF0FO7$F`ao7$$\"3nRLzb-MHCF0$!3H3\"*[a,u:@FD7$7$$\"3?+RtXRF=CF0FenFda o7$Fjao7$$\"3Vn=r3xFGCF0$\"3`],NMWf7>FD7$7$$\"3<@gi:e>RCF0F`oF^bo7$Fdb o7$$\"3Z'H\\*zH8dCF0$\"3cs`oM07V^FD7$7$F\\ao$\"3C%)*********\\(yFDFhbo 7$7$$\"3Z************\\EF0$!3P%G9dy^\"R9F07$$\"3_g#pi-WBe#F0F67$Fgco7$ $\"39QcpqkG.DF0$!3p3/b=#Rw3)FD7$7$$\"3_:eAMb^,DF0$!3_T++++++!)FDF[do7$ FadoF[ao7$F^co7$$\"3t#QGnDX6]#F0$\"366kd?)f%pzFD7$7$$\"3>9eAMb^,DF0Fd_ oFhdo7$7$$\"3u8eAMb^,DF0Fd_o7$$\"3H&=+e()4Nb#F0$\"3Lnh'y*pId5F07$7$$\" 3ue#pi-WBe#F0$\"3s&************>\"F0Feeo7$7$F\\foFfp7$$\"3e_e>(QO9h#F0 $\"3&R063IOGI\"F07$7$Fcco$\"3:%G9dy^\"R9F0Fbfo7$7$$\"3Q*************z# F0$!39kmmmmm')>F07$$\"3MH3hB!omo#F0Ffs7$FagoFbco7$Fhfo7$$\"3\"3]%pfZ!G n#F0$\"3:D8[2t=R:F07$7$$\"3dF3hB!omo#F0FctFfgo7$7$F]ho$\"3K'********** **f\"F07$$\"3j*QxU_(QOFF0$\"3!=i$foKjpF0Fcho7 $7$$\"3%))***********\\HF0$!3S#Q:Y)GIzCF07$$\"3+Op9I:9AHF0F_r7$Fbio7$$ \"3T/BQC%Rc\"GF0$!3J]hoJ^qT?F07$7$$\"3xF1\\&pUK!GF0FjrFfio7$F\\jo7$$\" 3%*)************z#F0F_go7$7$F]go$\"39kmmmmm')>F07$$\"3r\"ow:,n>!GF0$\" 3G4bzNYv%*>F07$7$$\"3bD1\\&pUK!GF0F_uFgjo7$F][p7$$\"3KS+$QGM\"oGF0$\"3 m?KXw&3$=AF07$7$$\"3MLp9I:9AHF0F[vFa[p7$Fg[p7$$\"3(G-$**zghNHF0$\"3R*f =+7d$QCF07$7$$\"3H************\\HF0$\"3S#Q:Y)GIzCF0F[\\p7$7$$\"3?***** ********4$F0$!3C(*********\\eHF07$$\"3v0Z0Y[_XIF0F`w7$F\\]p7$Fb\\pF`io 7$7$Fb\\p$\"3'>Q:Y)GIzCF07$$\"3k(H7$\\wB.IF0$\"3j*>n^$H.eEF07$7$$\"33. Z0Y[_XIF0FcxFe]p7$F[^p7$$\"3`mv%)zedrIF0$\"3b:)RPl(zvGF07$7$Fh\\p$\"3C (*********\\eHF0F_^p7$7$$\"36************\\KF0$!3VWw6%zZNV$F07$$\"34:b m!Rk:<$F0Fhy7$F^_pFg\\p7$Fe^p7$$\"3^E9qq^(*RJF0$\"3G*='zW&*R$4$F07$7$$ \"3K8bm!Rk:<$F0FezFc_p7$7$$\"3(G^l1Rk:<$F0Fez7$$\"3apf+D>i3KF0$\"3L2uJ L:M5LF07$7$Fj^p$\"3VWw6%zZNV$F0F``p7$7$$\"3Y*************R$F0$!3pv:j_5 U3RF07$$\"3AQOT9c%))H$F0$!3k.++++++OF07$F_ap7$Fj^p$!3*Rk `EMF0F\\^l7$Fecp7$F[ap$!38w:j_5U3RF07$7$$\"3-*************R$F0F]cp7$$ \"3W#Rz,,o\\T$F0$\"3.z#)=1`3gRF07$7$$\"3y[npt>`EMF0F__lF`dp7$Ffdp7$$\" 3Fky$y,,M[$F0$\"3+)oldG(fxTF07$7$$\"3\\)***********\\NF0$\"3*R&G9d.e&Q %F0Fjdp7$7$$\"3%))************p$F0$!3S'*********Hh[F07$$\"3s*o2X9p\"zO F0$!3G/++++++[F07$F[fp7$$\"3>#es1&)[Zd$F0$!3*G*o7Np*fY%F07$7$$\"3>nV\" z/;Tb$F0FbblFafp7$FgfpF`cp7$7$FacpFcep7$$\"3PgctzqL_NF0$\"3![crtynPR%F 07$7$$\"3(\\O9z/;Tb$F0F_clF]gp7$Fcgp7$$\"3[J)4hHU/i$F0$\"3AU//xQ:7YF07 $7$$\"31(o2X9p\"zOF0$\"3G'************z%F0Fggp7$F]hp7$$\"3o$Gpu%>2*o$F 0$\"3\"eB:MZT\"H[F07$7$Fgep$\"3S'*********Hh[F0Fchp7$7$$\"3v)********* **\\QF0$!3jimmmTNT`F07$$\"3Q.j\")ohR.QF0$!3g/++++++_F07$Fbip7$Fgep$!3H (*********Hh[F07$Fihp7$$\"3_g(**H,(*pv$F0$\"3zlRLlz+[]F07$7$$\"3s+j\") ohR.QF0$\"3i'************>&F0F\\jp7$7$$\"3F+j\")ohR.QF0Fejp7$$\"3_t\\C ;+?DQF0$\"39)R8+HLhE&F07$7$F^ip$\"3jimmmTNT`F0F[[q7$7$$\"3C)********** ***RF0$!30[l*o?'eFeF07$$\"3MX\\LBr6FRF0$!3'\\++++++g&F07$7$$\"3*[%\\LB r6FRF0F]\\qF]ip7$Fa[q7$$\"3%)\\g=H,'H*QF0$\"3[gQ]b'Ra[&F07$7$$\"3nU\\L Br6FRF0$\"3)p************f&F0Fd\\q7$Fj\\q7$$\"3Vj!4&[%)ogRF0$\"3)R#e(R !3$[q&F07$7$Ff[q$\"3;Zl*o?'eFeF0F`]q7$7$$\"3e)***********\\TF0$!3$4$>u nMV?jF07$$\"3#*=)eR'GA]SF0$!3K0++++++gF07$F_^q7$$\"3o)*************RF0 Fh[q7$Ff]q7$$\"3q;&)o?iEGSF0$\"3+#G(\\6MiCfF07$7$$\"3E;)eR'GA]SF0$\"3M (*************fF0Fi^q7$7$$\"39<)eR'GA]SF0$\"3C)*************fF07$$\"33 Rx(4W([&4%F0$\"3'oNfS#oOXhF07$7$F[^q$\"3$4$>unMV?jF0Fj_q7$7$$\"3%*)*** *********H%F0$!3oC9dG92>oF07$$\"3;RAhr,(QH%F0$!3/1++++++oF07$Fi`q7$$\" 3XyFKZE0oUF0$!3'*=u_fq![r'F07$7$$\"3l7BQ$4^E<%F0$!3o0++++++kF0F_aq7$Fe aq7$F[^q$!3#=$>unMV?jF07$7$F[^q$\"3#=$>unMV?jF07$$\"3<=-hfh(G;%F0$\"3K YFPuNmljF07$7$$\"3**4BQ$4^E<%F0$\"3o(************R'F0Fbbq7$Fhbq7$$\"38 $48Dho&HUF0$\"3G7%)HLq\"ye'F07$7$$\"3]OAhr,(QH%F0$\"3/)************z'F 0F^cq7$Fdcq7$$\"3k-!p^D*p'H%F0$\"3(y)f@')>!)3oF07$7$Fe`q$\"3oC9dG92>oF 0Fjcq7$7$$\"3H************\\WF0$!30#y$y$GY.K(F07$$\"3IkXE6`W7WF0$!3G2+ +++++sF07$7$$\"3TjXE6`W7WF0$!3S1++++++sF0Fd`q7$F`dq7$$\"3r,[/6#=HO%F0$ \"3/C0)Q5=A.(F07$7$$\"3jhXE6`W7WF0$\"3S)************>(F0Feeq7$7$$\"3ug XE6`W7WF0F^fq7$$\"3$=%o)RO-&HWF0$\"3__ZIXF0$!3w1+ +++++wF07$7$$\"3UG]$y(>ZIXF0Ffgq7$Fedq$!3;\"y$y$GY.K(F07$7$Fedq$\"3%Hy $y$GY.K(F07$$\"3]!pTcfKb\\%F0$\"3<*[b\\uz&yuF07$7$$\"3vD]$y(>ZIXF0$\"3 w)************f(F0Fchq7$7$Fjhq$\"3k*************f(F07$$\"3?dTz>=chXF0$ \"3?VA)Q\"=]-xF07$7$F_gq$\"3+n2Bp2BHyF0Fbiq7$7$$\"3+++++++]ZF0$!3sl`eO g%eM)F07$$\"3aw$*4zt$zk%F0$!372++++++!)F07$FajqF^gq7$7$F_gq$\"3)ywI#p2 BHyF07$$\"3[x^vj^TFYF0$\"37fGl'*G*o#zF07$7$$\"3xu$*4zt$zk%F0$\"3C)**** *********zF0F[[r7$7$$\"3)QP*4zt$zk%F0Fd[r7$$\"3g\"[Z^x%)Gp%F0$\"3()yLF msI_\")F07$7$F]jq$\"3sl`eOg%eM)F0Fj[r7$7$$\"3O+++++++\\F0$!3vnmmmm;n)) F07$$\"3(od9\\l)zz[F0$!3#y++++++!))F07$Fi\\r7$$\"3(fq@!oW_8[F0$!3,@7R \"e)Rp&)F07$7$$\"3#pGh6!)R[w%F0$!3Y2++++++%)F0F_]r7$Fe]rF\\jq7$F`\\r7$ $\"3ts7U@UdeZF0$\"3^pKa4a8x$)F07$7$$\"3D%Gh6!)R[w%F0$\"3e)************ R)F0F\\^r7$Fb^r7$$\"3:.REYB[B[F0$\"37\"fHm2ZSg)F07$7$$\"3KtX\"\\l)zz[F 0$\"3;(************z)F0Fh^r7$7$$\"3?uX\"\\l)zz[F0$\"3%*)************z) F07$$\"3.-QBE(*y))[F0$\"3QGlPjS*)H))F07$7$Fe\\r$\"3vnmmmm;n))F0Fi_r7$7 $$\"3r++++++]]F0$!3e#)HQ1E-%R*F07$$\"3+f4\"GDMK*\\F0$!3;3++++++#*F07$F h`rFd\\r7$7$$\"3Y**************[F0F``r7$$\"3$*3P#=PoL&\\F0$\"3^UM!=M%o d!*F07$7$$\"3Yb4\"GDMK*\\F0$\"3G*************>*F0Fbar7$Fhar7$$\"3KqY+6 E6=]F0$\"3q#)3KPI.&G*F07$7$Fd`r$\"3!3)HQ1E-%R*F0F^br7$7$$\"31,++++++_F 0$!3hRn$=fz*G**F07$$\"31e2?vCG1^F0$!3_3++++++'*F07$F]cr7$Fd`r$!3!3)HQ1 E-%R*F07$7$Fd`r$\"3e#)HQ1E-%R*F07$$\"36$e_C_eD3&F0$\"3$*z(fMFxJ^*F07$7 $$\"3Sb2?vCG1^F0$\"3k*************f*F0Fjcr7$7$$\"3Hc2?vCG1^F0Fcdr7$$\" 38m%))y=Tn9&F0$\"3/\"4k*)\\B?u*F07$7$Fibr$\"3hRn$=fz*G**F0Fidr7$7$$\"3 U,+++++]`F0$!3*f2K6tNp/\"!#;7$$\"3$oI0P8!**H`F0$!3v++++++S5Fher7$7$Fje r$!3#4++++++/\"Fher7$$\"3:0T(oTYHF&F0$!3P&4LyP_%>5Fher7$7$$\"39`j\"eGV *=_F0$!3)3+++++++\"FherFbfr7$Fhfr7$Fibr$!3%ytO=fz*G**F07$F_er7$$\"3oID 'elp5@&F0$\"3&)>**p<4[q**F07$7$$\"3O^j\"eGV*=_F0$\"#5\"\"!Fbgr7$Fhgr7$ $\"3'\\ufjc$pu_F0$\"3%=SPcr\"3?5Fher7$7$$\"3)Qly:I/\"Fher7$7$Fder$\"3*f2K6tNp /\"FherF[ir7$7$$\"3y,++++++bF0$!3-GFFFF_,6Fher7$$\"3J%)\\jFb_RaF0$!3'4 ++++++3\"Fher7$FjirFcer7$Fair7$$\"3f7L(RH))>S&F0$\"3J]/%\\XOh1\"Fher7$ 7$$\"3a#)\\jFb_RaF0$\"32++++++!3\"FherFajr7$Fgjr7$$\"3qq'))Q\"*GaY&F0$ \"3:bjHc*=#*3\"Fher7$7$Ffir$\"3-GFFFF_,6FherF][s7$7$$\"38-+++++]cF0$!3 \"G%otW\"Rp:\"Fher7$$\"3oiS?&HI)[bF0$!3*4++++++7\"Fher7$F\\\\sFeir7$Fc [s7$$\"3%G]jZ2W'GbF0$\"3nmI1!ehB6\"Fher7$7$$\"3!41/_HI)[bF0$\"36++++++ ?6FherFc\\s7$Fi\\s7$$\"3S%\\^qIK:f&F0$\"3yoiy%Q\"fN6Fher7$7$Fh[s$\"3)H %otW\"Rp:\"FherF_]s7$7$$\"3[-++++++eF0$!3%olg$)4aF@\"Fher7$$\"3P^t&*y% pZw&F0$!33,++++++7Fher7$F^^s7$$\"3hXS:&Hwun&F0$!37z5/7qKn6Fher7$7$$\"3 zq:BY0!zl&F0$!3.,+++++g6FherFd^s7$Fj^sFg[s7$Fe]s7$$\"35MaZj&zYl&F0$\"3 c^lS;@ve6Fher7$7$$\"3-p:BY0!zl&F0$\"39++++++g6FherFa_s7$Fg_s7$$\"3%*=E $oD?qr&F0$\"3C-8^Jz7#=\"Fher7$7$$\"3r[t&*y%pZw&F0$\"3=+++++++7FherF]`s 7$Fc`s7$$\"3DU0)z08(zdF0$\"3e*=07&)4a?\"Fher7$7$Fj]s$\"3mc1O)4aF@\"Fhe rFi`s7$7$$\"3%G++++++&fF0$!3a5Q_f]Ip7Fher7$$\"3xm;K.<1reF0$!35,+++++S7 Fher7$FhasFi]s7$F_as7$$\"3R`4w1<\">%eF0$\"3_YP'[aB)G7Fher7$7$$\"3*\\m@ Lqh5(eF0$\"3@++++++S7FherF_bs7$Febs7$$\"3S\"[P+fgS!fF0$\"3KRLK40D_7Fhe r7$7$Fdas$\"3a5Q_f]Ip7FherF[cs7$7$$\"3?.++++++hF0$!3`%QC*H\"Fher7$7$$\"3zje\"[p(R#3'F0$\"36++++++?8FherF_fs7$7$Fffs$ \"3G++++++?8Fher7$$\"3W!\\bYJ\"y*3'F0$\"3'p`eF)\\sA8Fher7$7$Ffcs$\"3q< nloi\\E8FherF^gs7$7$$\"3c.+++++]iF0$!3uzM/j^?%Q\"Fher7$$\"3aa.q1y+'='F 0$!3@,+++++g8Fher7$F]hs7$Ffcs$!3qZF7+sdA'*G'F0$!3C,++++++9FherF^[t7$Fd[tFhgs7$7$Figs$\"3u zM/j^?%Q\"Fher7$$\"3#pE,?xDi*G'F 0$\"3O+++++++9FherF^\\t7$Fd\\t7$$\"3TLfecQiMjF0$\"3s_PCQOV<9Fher7$7$$ \"3#>$e#[=uGR'F0$\"3d++++++S9FherFj\\t7$7$Fa]t$\"3R++++++S9Fher7$$\"3Y 72GFt#eR'F0$\"3sW^s7F6T9Fher7$7$Fajs$\"3*3&o]J\\oU9FherFi]t7$7$$\"3E/+ ++++]lF0$!3r,++]7d,:Fher7$$\"3)o/>g[2T\\'F0$!39,+++++![\"Fher7$7$Fi^t$ !3J,+++++![\"FherF`js7$7$Fajs$\"3r]o]J\\oU9Fher7$$\"3%ytSAqmiX'F0$\"3/ Q\"pga&*\\Y\"Fher7$7$$\"33X!>g[2T\\'F0$\"3V++++++![\"FherFe_t7$F[`t7$$ \"3.!z-45Yp^'F0$\"3&4f#4tV\"))[\"Fher7$7$Fd^t$\"3r,++]7d,:FherFa`t7$7$ $\"3g/++++++nF0$!35)pbkJv7c\"Fher7$$\"3G/+9mzo'p'F0$!3@,+++++g:Fher7$7 $Faat$!3R,+++++g:Fher7$$\"31]q]j)3)*o'F0$!38ud'F0$\"3aON= 9)*o7:Fher7$7$$\"3O7/p2nV&f'F0$\"3Y++++++?:FherFfbt7$F\\ct7$$\"3\"4?>l Yuvj'F0$\"3s9#G*3okO:Fher7$7$$\"3]-+9mzo'p'F0$\"3]++++++g:FherFbct7$Fh ct7$$\"3O/o%*eJ/)p'F0$\"3%Q&3GC=_g:Fher7$7$F\\at$\"3$zpbkJv7c\"FherF^d t7$7$$\"3(\\++++++&oF0$!3\"e2uSKb8i\"Fher7$$\"3gc)G rcg%e\"Fher7$7$$\"3#\\,xt_?ez'F0$\"3O+++++++;FherFget7$F]ft7$$\"3^3]vt Qo4C^*oF0$!3G,+++++S;FherFh gt7$F^htFhdt7$Fift7$$\"3*G$yn`XUxoF0$\"3x7fo&y'oK;Fher7$7$$\"3+mJ&>4C^ *oF0$\"3@++++++S;FherFeht7$F[it7$$\"3.;$y$f@(o$pF0$\"3Y]C$34Mol\"Fher7 $7$$\"3MtWacHK%*pF0$\"32++++++!o\"FherFait7$Fgit7$$\"3amV$)*G:m*pF0$\" 3*R]x$*e-4o\"Fher7$7$F^gt$\"3O\\w6%HNAo\"FherF]jt7$7$$\"3p0+++++]rF0$! 3eZ.JHE_V9g\"4(F0$!3*4++++++s\"Fher7$7$$\"3yD$z'>9g\" 4(F0F_[uF]gt7$Fcjt7$$\"3uou4VJibqF0$\"3Zw1%=;n^q\"Fher7$7$$\"37B$z'>9g \"4(F0$\"3$*************>Cx@C'G(F0$!3s+++++++=Fher7$Fa]u7$$\"3$pa4k&p'4E(F0$!3_yeP )=\"f*y\"Fher7$7$$\"3eK)))\\37\"*=(F0$!3&3++++++w\"FherFg]u7$7$$\"3pJ) ))\\37\"*=(F0F`^u7$$\"3![++++++:(F0$!3BZ.JHE_VCx@C 'G(F0$\"#=F]hrFh_u7$7$$\"3+b>Cx@C'G(F0$\"3k*************z\"Fher7$$\"3a 'R**HbAt?-=Fher7$7$F]]u$\"3O67z37a0=FherFi`u7$7$$\"3R1++ +++]uF0$!3%3EK!zt/o=Fher7$$\"3[\"R&R%R&)=Q(F0$!3d++++++S=Fher7$FhauF \\]u7$F_au7$$\"3Ni7\\YI7]tF0$\"3%z**oU&QjE=Fher7$7$$\"3r*Q&R%R&)=Q(F0$ \"3]************R=FherF_bu7$Febu7$$\"3uK(zhle'3uF0$\"3gs?NeV-^=Fher7$7 $Fdau$\"3%3EK!zt/o=FherF[cu7$7$$\"3w1++++++wF0$!3kh>td_Fher7$$\"3J \\:\"Q3!)Gd(F0$!3G++++++?>Fher7$Fjcu7$$\"3W\\#oQeUf_(F0$!3X)>)pb8D+>Fh er7$7$$\"3emZ\"pE5yZ(F0$!3V++++++!)=FherF`du7$FfduFcau7$Facu7$$\"35X3Q /?;nuF0$\"3DU%)\\lMUv=Fher7$7$$\"3#Rw9pE5yZ(F0$\"3O************z=FherF ]eu7$7$$\"3\"[w9pE5yZ(F0Ffeu7$$\"3%Hc\\;F6__(F0$\"3c]M*3mV***=Fher7$7$ $\"3lY:\"Q3!)Gd(F0$\"3A************>>FherF\\fu7$Fbfu7$$\"33;$*=n^`$e(F 0$\"3I]G3A1RC>Fher7$7$Ffcu$\"3kh>td_FherFhfu7$7$$\"362+++++]xF0$!3s !zyy.5\\*>Fher7$$\"3:D#)oF:3nwF0$!39++++++g>Fher7$FgguFecu7$F^gu7$$\"3 `heT@KRTwF0$\"3;QCi2='*[>Fher7$7$$\"3f@#)oF:3nwF0$\"33************f>Fh erF^hu7$7$Fehu$\"3s)***********f>Fher7$$\"3!QD(p\"GN#*p(F0$\"3jmS@es`t >Fher7$7$Fcgu$\"33\"zyy.5\\*>FherF]iu7$7$$\"3gsstDUghxF0$Fd`oF]hr7$Fcg u$!33\"zyy.5\\*>Fher7$Fciu7$$\"3iut1nn@dxF0$\"3/M?yGb2)*>Fher7$7$$\"3% *pstDUghxF0$\"3#*)*************>FherF_ju-%&COLORG6&%$RGBG$F\\hr!\"\"$F ]hrF_[vF`[v" 1 2 2 1 10 1 2 6 1 4 2 1.0 45.0 45.0 1 0 "Curve 1" }} {TEXT 207 0 "" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 206 15 "9.4. Gyakorla t." }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 65 "# Doubling on an elliptic \"cur ve\" modulo n, where gcd(n,6)=1.\n" }{MPLTEXT 1 0 57 "# P is the point to double and a, b are the parameters.\n" }{MPLTEXT 1 0 52 "# The ret urn value is the double of the point P or\n" }{MPLTEXT 1 0 21 "# a div isor d of n.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 34 "elldou:=proc(P,a,b,n) local l,d;\n" }{MPLTEXT 1 0 29 "if P[3]= 0 then return P fi;\n" }{MPLTEXT 1 0 35 "if P[2]=0 then return [0,1,0] fi;\n" }{MPLTEXT 1 0 26 "d:=igcdex(2*P[2],n,'l');\n" }{MPLTEXT 1 0 34 "if 1F+-I'igcdexGF%6%,$*&F8F;F6F;F;F(.F*@$32F;F+2F+F(OF+>F*-I$modGF% 6$*&,&*&F1F;)&F$6#F;F8F;F;F&F;F;F*F;F(-FJ6$,&*$)F*F8F;F;*&F8F;FPF;!\" \"F(7%I\"%GF%-FJ6$,&*&F*F;,&FPF;FZFXF;F;F6FXF(F;F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 65 "# Addition on an elliptic \"curve\" modulo n, where gcd(n,6)=1.\n" }{MPLTEXT 1 0 61 "# P and Q are the points to add and a,b are the parameters.\n" } {MPLTEXT 1 0 66 "# The return value is the sum of the points or a divi sor d of n.\n" }{MPLTEXT 1 0 3 "#\n" }{MPLTEXT 1 0 2 "\n" }{MPLTEXT 1 0 36 "elladd:=proc(P,Q,a,b,n) local l,d;\n" }{MPLTEXT 1 0 29 "if P[3]= 0 then return Q fi;\n" }{MPLTEXT 1 0 29 "if Q[3]=0 then return P fi;\n " }{MPLTEXT 1 0 40 "if P=Q then return elldou(P,a,b,n) fi;\n" } {MPLTEXT 1 0 38 "if P[1]=Q[1] then return [0,1,0] fi;\n" }{MPLTEXT 1 0 29 "d:=igcdex(P[1]-Q[1],n,'l');\n" }{MPLTEXT 1 0 34 "if 1F,-I'igcdexGF%6%,&FAFCFD! \"\"F).F+@$32FCF,2F,F)OF,>F+-I$modGF%6$*&,&&F$6#\"\"#FC&F&FZFLFCF+FCF) -FU6$,(*$)F+FenFCFCFAFLFDFLF)7%I\"%GF%-FU6$,&*&F+FC,&FAFCF]oFLFCFCFYFL F)FCF%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "n:= 97; P:=[5 9,92,1]; a:=13; b:=4;" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#(*" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#f\"##*\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"#8" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "elldou(P,a,b,n); elldou(%,a,b,n); e lldou(%,a,b,n);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#!)\"#g\"\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "7%\"#x\"#f\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#n\"#H\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "elladd(P,P,a,b,n); " }{MPLTEXT 1 0 19 "elladd(%,P,a,b,n); " } {MPLTEXT 1 0 19 "elladd(%,P,a,b,n); " }{MPLTEXT 1 0 18 "elladd(%,P,a,b ,n);" }{MPLTEXT 1 0 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#!)\"#g\" \"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#n\"#o\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"#x\"#f\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "7% \"#\"*\"#'*\"\"\"" }}}}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 65 "10. Faktoriz\303\241l\303\241s elliptiku s g\303\266rb\303\251kkel" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 55 "11. Pr\303\255mteszt elliptikus g\303\2 66rb\303\251kkel" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 37 "12. Polinomfaktoriz\303\241l\303\241s" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 16 "13. A z AKS-teszt" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT 205 36 "14. A szita m\30 3\263dszerek alapjai" }}{PARA 0 "" 0 "" {TEXT 201 0 "" }}}{EXCHG {PARA 205 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 201 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {XPPEDIT 19 1 "" "%#%?G" }}}} {MARK "0 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }