From d8621c2ace41a0eb1ef1f7825309fb75c73d3f80 Mon Sep 17 00:00:00 2001 From: Audric Schiltknecht Date: Sun, 14 Oct 2012 20:48:52 +0200 Subject: Initial import of schiltknecht.fr --- TIPE_2007/Maple/TFD - Old.mw | 496 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 496 insertions(+) create mode 100644 TIPE_2007/Maple/TFD - Old.mw (limited to 'TIPE_2007/Maple/TFD - Old.mw') diff --git a/TIPE_2007/Maple/TFD - Old.mw b/TIPE_2007/Maple/TFD - Old.mw new file mode 100644 index 0000000..950dcc2 --- /dev/null +++ b/TIPE_2007/Maple/TFD - Old.mw @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +restart: + + +
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure "na\303\257ve"</Font></Text-field> +Cette proc\303\251dure calcule les coefficients de Fourier par une m\303\251thode dite "naive". + + +TFDSimple:=proc(x) + +local n,X: +n:=nops(x): + +X:=[seq(sum(x[j]*exp(-2*I*(j-1)*(k-1)*Pi/n),j=1..n),k=1..n)]; + + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par une proc\303\251dure r\303\251cursive</Font></Text-field> +Cette proc\303\251dure prend en entr\303\251e une liste repr\303\251sentant les coefficients d'un polyn\303\264me dont on cherche \303\240 calculer les coefficients de Fourier. + + +TFDRecur:=proc(x) + +local N,CoefFFT,xp,xi,u,v,omega: +N:=nops(x): + +if N=1 then CoefFFT:=x: +else + +xp:=[seq(x[2*i],i=1..N/2)]: +xi:=[seq(x[2*i-1],i=1..N/2)]: +u:=TFDRecur(xp): +v:=TFDRecur(xi): + +omega:=exp(-2*I*Pi/N): + +CoefFFT:=[seq(omega^(k-1)*u[k]+v[k],k=1..N/2),seq(-omega^(k-1)*u[k]+v[k],k=1..N/2)]; +end if: +CoefFFT; + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la TFD par it\303\251ration</Font></Text-field> +On va utiliser l'\303\251criture des divers coefficients en binaire. + + + +TFDIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=x; +p:=n/2; #p: puissance max dans d\303\251composition. + +while p>=1 do +#On fait les signaux jusqu'a 2^p + z:=1; #premi\303\250re valeur de omega. + w:=exp(-I*Pi/p); #c'est omega. + + for h from 1 to p do #Variable servant \303\240 la d\303\251composition + for m from 1 to n/(2*p) do + #On va calculer le signal xm + #prendre l'exemple du Butterfly pour illustrer + a:=h+2*(m-1)*p:#indice du signal pour j_(r-1) + b:=a+p; + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: + l[b]:=tmp: + end do: + #On passe au signal m+1 -> w<-w^(m+1) + z:=z*w: + end do: + p:=p/2: +end do: + +#On a maintenant notre liste contenant les signaux x_r +#Il reste \303\240 remettre les signaux dans le bon ordre. + +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +return l; + + +end proc: + + +
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Calcul de la Transform\303\251e Inverse.</Font></Text-field> +De m\303\252me, il est possible d'effectuer deux m\303\251thodes pour calculer la transform\303\251e inverse de Fourier : +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode na\303\257ve</Font></Text-field> +En utilisant le m\303\252me algorithme, on obtient : + + +TFDISimple:=proc(X) + +local n,F: +n:=nops(X): + +F:=[seq((1/n)*sum(X[i]*exp(2*I*(j-1)*(i-1)*Pi/(n)),i=1..n),j=1..n)]; + +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode r\303\251cursive</Font></Text-field> +Attention : Pour que l'on puisse retrouver les valeurs initiales, +il ne faut pas oublier de diviser par le nombre de valeurs. + + +TFDIRecur:=proc(X) +local Coef,N,Xi,Xp,U,V,Omega,k; +N:=nops(X); + +if N=1 then Coef:=X: +else + Xi:=[seq(X[2*k-1],k=1..N/2)]; + Xp:=[seq(X[2*k],k=1..N/2)]; + U:=TFDIRecur(Xi); + V:=TFDIRecur(Xp); + Omega:=exp(2*I*Pi/N); + Coef:=[seq(U[k]+Omega^(k-1)*V[k],k=1..N/2),seq(U[k]-Omega^(k-1)*V[k],k=1..N/2)]: + end if; +Coef; +end proc: + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">La m\303\251thode it\303\251rative</Font></Text-field> + + + +TFDIIter:=proc(x) +local n,i,j,k,a,b,p,l,z,w,h,m,tmp: +n:=nops(x): +l:=x; +p:=n/2; + +while p>=1 do + z:=1; + w:=exp(I*Pi/p); #C'est la diff\303\251rence + + for h from 1 to p do + for m from 1 to n/(2*p) do + a:=h+2*(m-1)*p: + b:=a+p; + tmp:=(l[a]-l[b])*z: + l[a]:=l[a]+l[b]: + l[b]:=tmp: + end do: + z:=z*w: + end do: + p:=p/2: +end do: + +j:=1: +for i from 1 to n do + if j>i then tmp:=l[j]: + l[j]:=l[i]: + l[i]:=tmp: + end if: + p:=n/2: + while p>=2 and j>p do + j:=j-p: + p:=p/2: + end do: + j:=j+p: +end do: +return l/n; +end proc: + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1">Mesure du temps de calcul</Text-field> +On va ici s'inter\303\251sser \303\240 la mesure du temps pris pour calculer les coefficients de Fourier (Transform\303\251e Directe) par la m\303\251thode na\303\257ve et la m\303\251thode r\303\251cursive pour n grand, par exemple n=2^5, n=2^10, n=2^20. +Pour cela, on va d\303\251finir la liste de nos coefficients, entiers compris entre -50 et 50 par exemple, par une m\303\251thode "pseudo-al\303\251atoire" : + + + +with(RandomTools[MersenneTwister]); +A:=[seq(GenerateInteger32(),i=1..2^5)]: + + +NiQtSShtZmVuY2VkRzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiwtSSNtaUdGJTY5US5HZW5lcmF0ZUZsb2F0RigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUYtNjlRMEdlbmVyYXRlRmxvYXQ2NEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMEdlbmVyYXRlSW50ZWdlckYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUYtNjlRMkdlbmVyYXRlSW50ZWdlcjMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVE2R2VuZXJhdGVVbnNpZ25lZEludDMyRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRi02OVEpR2V0U3RhdGVGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5US1OZXdHZW5lcmF0b3JGKEYwRjNGNkY5RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZpbkZcby1GLTY5USlTZXRTdGF0ZUYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLyUlb3BlbkdRJyZsc3FiO0YoLyUmY2xvc2VHUScmcnNxYjtGKDcjNypJLkdlbmVyYXRlRmxvYXRHRihJMEdlbmVyYXRlRmxvYXQ2NEdGKEkwR2VuZXJhdGVJbnRlZ2VyR0YoSTJHZW5lcmF0ZUludGVnZXIzMkdGKEk2R2VuZXJhdGVVbnNpZ25lZEludDMyR0YoSSlHZXRTdGF0ZUdGKEktTmV3R2VuZXJhdG9yR0YoSSlTZXRTdGF0ZUdGKA== + + +
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode na\303\257ve</Font></Text-field> +On effectue le calcul pour la m\303\251thode it\303\251rative : + + +t:=time(): +N:=TFDSimple(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wOTZGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiMnKiEiJDcjRmhy + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode r\303\251cursive</Font></Text-field> +Calcul pour la m\303\251thode r\303\251cursive : + + +t:=time(): +R:=TFDRecur(A): +Temps := time()-t; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEmMC4wMDRGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIlISIkNyNGaHI= + + +
+
+<Text-field style="Heading 2" layout="Heading 2"><Font encoding="UTF-8">M\303\251thode it\303\251rative</Font></Text-field> + + + +t:=time(): +I:=TFDIter(A): +Temps:= time()-t; + + +Error, illegal use of an object as a name + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USZUZW1wc0YoLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRigvJSVzaXplR1EjMTJGKC8lJWJvbGRHUSZmYWxzZUYoLyUnaXRhbGljR1EldHJ1ZUYoLyUqdW5kZXJsaW5lR0Y4LyUqc3Vic2NyaXB0R0Y4LyUsc3VwZXJzY3JpcHRHRjgvJStmb3JlZ3JvdW5kR1EqWzAsMCwyNTVdRigvJStiYWNrZ3JvdW5kR1EuWzI1NSwyNTUsMjU1XUYoLyUnb3BhcXVlR0Y4LyUrZXhlY3V0YWJsZUdGOC8lKXJlYWRvbmx5R0Y4LyUpY29tcG9zZWRHRjgvJSpjb252ZXJ0ZWRHRjgvJStpbXNlbGVjdGVkR0Y4LyUscGxhY2Vob2xkZXJHRjgvJTBmb250X3N0eWxlX25hbWVHUSoyRH5PdXRwdXRGKC8lKm1hdGhjb2xvckdGRC8lL21hdGhiYWNrZ3JvdW5kR0ZHLyUrZm9udGZhbWlseUdGMi8lLG1hdGh2YXJpYW50R1EnaXRhbGljRigvJSltYXRoc2l6ZUdGNS1JI21vR0YlNjNRKSZBc3NpZ247RigvJSVmb3JtR1EmaW5maXhGKC8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUnbHNwYWNlR1EvdGhpY2ttYXRoc3BhY2VGKC8lJ3JzcGFjZUdGW3AvJSlzdHJldGNoeUdGOC8lKnN5bW1ldHJpY0dGOC8lKG1heHNpemVHUSlpbmZpbml0eUYoLyUobWluc2l6ZUdRIjFGKC8lKGxhcmdlb3BHRjgvJS5tb3ZhYmxlbGltaXRzR0Y4LyUnYWNjZW50R0Y4LyUwZm9udF9zdHlsZV9uYW1lR0ZYLyUlc2l6ZUdGNS8lK2ZvcmVncm91bmRHRkQvJStiYWNrZ3JvdW5kR0ZHLUkjbW5HRiU2OVEjMC5GKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkmVGVtcHNHRigkIiIhRmlyNyNGaHI= + + + + + + + +
+
+
+<Text-field style="Heading 1" layout="Heading 1"><Font encoding="UTF-8">Multiplication de polyn\303\264mes</Font></Text-field> +
+<Text-field style="Heading 2" layout="Heading 2">Algorithme</Text-field> +On va prendre en entr\303\251e deux listes contenant les coefficients des deux polyn\303\264mes dont on cherche \303\240 calculer le produit. +Utilise la m\303\251thode simple, car sinon impose en plus une condition sur le degr\303\251 des polyn\303\264mes. + + +Multiplication:=proc(P,Q) + +local n,N,R,A,B,i,j,k: + +n:=nops(P): + +#On cr\303\251e la liste des coefficients \303\251tendus \303\240 2n \303\251l\303\251ments. +A:=[seq(P[k],k=1..n),seq(0,k=n+1..2*n)]; +B:=[seq(Q[k],k=1..n),seq(0,k=n+1..2*n)]; + +#On calcule la TFD de chacune de ces listes. +A:=TFDIter(A): +B:=TFDIter(B): + +#On effectue les produits +R:=[seq(A[k]*B[k],k=1..2*n)]: + +#On r\303\251cup\303\250re les coefficients. +TFDIIter(R); + +end proc: + + + + + + + +
+
+<Text-field style="Heading 2" layout="Heading 2">Exemple</Text-field> +
+<Text-field style="Heading 3" layout="Heading 3">Maple</Text-field> +On va poser LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUEYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2Jy1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYnRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbb0ZncS1GIzYjLUZpczY5USMxMEYnRi9GMkY1Rlx0RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRl10RltvRltxLyUsYWNjZW50dW5kZXJHRjdGZ3EtSSVtc3VwR0YkNiUtRiw2OVEjaVhGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3FGZ3E= et LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2OVEiUUYnLyUnZmFtaWx5R1EwVGltZXN+TmV3flJvbWFuRicvJSVzaXplR1EjMTJGJy8lJWJvbGRHUSZmYWxzZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUqdW5kZXJsaW5lR0Y3LyUqc3Vic2NyaXB0R0Y3LyUsc3VwZXJzY3JpcHRHRjcvJStmb3JlZ3JvdW5kR1EoWzAsMCwwXUYnLyUrYmFja2dyb3VuZEdRLlsyNTUsMjU1LDI1NV1GJy8lJ29wYXF1ZUdGNy8lK2V4ZWN1dGFibGVHRjcvJSlyZWFkb25seUdGNy8lKWNvbXBvc2VkR0Y3LyUqY29udmVydGVkR0Y3LyUraW1zZWxlY3RlZEdGNy8lLHBsYWNlaG9sZGVyR0Y3LyUwZm9udF9zdHlsZV9uYW1lR1EoMkR+TWF0aEYnLyUqbWF0aGNvbG9yR0ZDLyUvbWF0aGJhY2tncm91bmRHRkYvJStmb250ZmFtaWx5R0YxLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy8lKW1hdGhzaXplR0Y0LUkjbW9HRiQ2M1EjOj1GJy8lJWZvcm1HUSZpbmZpeEYnLyUmZmVuY2VHRjcvJSpzZXBhcmF0b3JHRjcvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYnLyUncnNwYWNlR0Zqby8lKXN0cmV0Y2h5R0Y3LyUqc3ltbWV0cmljR0Y3LyUobWF4c2l6ZUdRKWluZmluaXR5RicvJShtaW5zaXplR1EiMUYnLyUobGFyZ2VvcEdGNy8lLm1vdmFibGVsaW1pdHNHRjcvJSdhY2NlbnRHRjcvJTBmb250X3N0eWxlX25hbWVHRlcvJSVzaXplR0Y0LyUrZm9yZWdyb3VuZEdGQy8lK2JhY2tncm91bmRHRkYtRiM2KS1GLDY5USFGJ0YvRjJGNUY4RjtGPUY/RkFGREZHRklGS0ZNRk9GUUZTRlVGWEZaRmZuRmhuRltvLUkrbXVuZGVyb3ZlckdGJDYnLUZebzYzUSYmU3VtO0YnL0Zib1EncHJlZml4RidGZG9GZm8vRmlvUSQwZW1GJy9GXHBRLnRoaW5tYXRoc3BhY2VGJy9GXnBGOkZfcEZhcEZkcC9GaHBGOi9GanBGOkZbcUZdcUZfcUZhcUZjcS1GIzYmRmdxLUYsNjlRImlGJ0YvL0YzUSMxMEYnRjVGOEY7Rj1GPy9GQlEsWzIwMCwwLDIwMF1GJ0ZERkdGSUZLRk1GT0ZRL0ZURjpGVS9GWUZhc0ZaRmZuRmhuL0Zcb0Zfcy1GXm82M1EiPUYnRmFvRmRvRmZvRmhvRltwRl1wRl9wRmFwRmRwRmdwRmlwRltxRl1xRl9xRmFxRmNxLUkjbW5HRiQ2OVEiMEYnRi9GMkY1L0Y5RjdGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm4vRmluUSdub3JtYWxGJ0Zbby1GaXM2OVEjMTBGJ0YvRjJGNUZcdEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZddEZbb0ZbcS8lLGFjY2VudHVuZGVyR0Y3RmdxLUklbXN1cEdGJDYlLUYsNjlGXXNGL0YyRjVGOEY7Rj1GP0ZBRkRGR0ZJRktGTUZPRlFGU0ZVRlhGWkZmbkZobkZbb0ZndC8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGZ3EtRmV0NiUtRiw2OVEiWEYnRi9GMkY1RjhGO0Y9Rj9GQUZERkdGSUZLRk1GT0ZRRlNGVUZYRlpGZm5GaG5GW29GZ3RGaXRGZ3FGZ3E= + + +P:=sum(i*X^i,i=0..15); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2QC1GLTY5USJYRihGMEYzRjZGOUY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaW5GXG8tRl9vNjNRJyZwbHVzO0YoRmJvRmVvRmdvL0Zqb1EwbWVkaXVtbWF0aHNwYWNlRigvRl1wRl9yRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtSSNtbkdGJTY5USIyRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1ExJkludmlzaWJsZVRpbWVzO0YoRmJvRmVvRmdvL0Zqb1EkMGVtRigvRl1wRl5zRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUklbXN1cEdGJTYlRmhxRmNyLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGKC9JK21zZW1hbnRpY3NHRiVRIipGKEZbci1GJDYmLUZkcjY5USIzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlt0RmNzRmZzRltyLUYkNiYtRmRyNjlRIjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYnRGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZpdEZjc0Zmc0Zbci1GJDYmLUZkcjY5USI2RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmB1RmNzRmZzRltyLUYkNiYtRmRyNjlRIjdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGZ3VGY3NGZnNGW3ItRiQ2Ji1GZHI2OVEiOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocUZedkZjc0Zmc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmV2RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRlx3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzExRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmN3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmp3RmNzRmZzRltyLUYkNiYtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmF4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmh4RmNzRmZzRltyLUYkNiYtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRl95RmNzRmZzL0Znc1EiK0YoL0Znc1EjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKCxASSJYR0YoIiIiKiYiIiNGYnopRmF6RmR6RmJ6RmJ6KiYiIiRGYnopRmF6Rmd6RmJ6RmJ6KiYiIiVGYnopRmF6Rmp6RmJ6RmJ6KiYiIiZGYnopRmF6Rl1bbEZiekZieiomIiInRmJ6KUZhekZgW2xGYnpGYnoqJiIiKEZieilGYXpGY1tsRmJ6RmJ6KiYiIilGYnopRmF6RmZbbEZiekZieiomIiIqRmJ6KUZhekZpW2xGYnpGYnoqJiIjNUZieilGYXpGXFxsRmJ6RmJ6KiYiIzZGYnopRmF6Rl9cbEZiekZieiomIiM3RmJ6KUZhekZiXGxGYnpGYnoqJiIjOEZieilGYXpGZVxsRmJ6RmJ6KiYiIzlGYnopRmF6RmhcbEZiekZieiomIiM6RmJ6KUZhekZbXWxGYnpGYno3I0Zgeg== + + + + +Q:=sum(i^i*X^i,i=0..15); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2Qi1JI21uR0YlNjlGZ3BGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GX282M1EnJnBsdXM7RihGYm9GZW9GZ28vRmpvUTBtZWRpdW1tYXRoc3BhY2VGKC9GXXBGYnJGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvRl5yLUYkNiYtRmlxNjlRIjRGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZgc0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZkci1GaXE2OVEiMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcby8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRigvSSttc2VtYW50aWNzR0YlUSIqRihGXnItRiQ2Ji1GaXE2OVEjMjdGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEkMjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyRmlyRmhzRlt0Rl5yLUYkNiYtRmlxNjlRJTMxMjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEmNDY2NTZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIjZGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEnODIzNTQzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI3RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKTE2Nzc3MjE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USI4RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRKjM4NzQyMDQ4OUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEiOUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5USwxMDAwMDAwMDAwMEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zccy1GY3M2JUZkci1GaXE2OVEjMTBGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GaHNGW3RGXnItRiQ2Ji1GaXE2OVEtMjg1MzExNjcwNjExRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMUYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5US44OTE2MTAwNDQ4MjU2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxMkYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTAzMDI4NzUxMDY1OTIyNTNGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzEzRihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0Rl5yLUYkNiYtRmlxNjlRMjExMTEyMDA2ODI1NTU4MDE2RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRlxzLUZjczYlRmRyLUZpcTY5USMxNEYoRjBGM0Y2RltyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZcckZcb0Zoc0ZbdEZeci1GJDYmLUZpcTY5UTM0Mzc4OTM4OTAzODA4NTkzNzVGKEYwRjNGNkZbckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXHJGXG9GXHMtRmNzNiVGZHItRmlxNjlRIzE1RihGMEYzRjZGW3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRlxyRlxvRmhzRlt0L0ZcdFEiK0YoL0ZcdFEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUUdGKCxCIiIiRmpcbEkiWEdGKEZqXGwqJiIiJUZqXGwpRltdbCIiI0ZqXGxGalxsKiYiI0ZGalxsKUZbXWwiIiRGalxsRmpcbComIiRjI0ZqXGwpRltdbEZdXWxGalxsRmpcbComIiVESkZqXGwpRltdbCIiJkZqXGxGalxsKiYiJmNtJUZqXGwpRltdbCIiJ0ZqXGxGalxsKiYiJ1ZOIylGalxsKUZbXWwiIihGalxsRmpcbComIik7c3g7RmpcbClGW11sIiIpRmpcbEZqXGwqJiIqKls/dVFGalxsKUZbXWwiIipGalxsRmpcbComIiwrKysrKyJGalxsKUZbXWwiIzVGalxsRmpcbComIi02MW42YEdGalxsKUZbXWwiIzZGalxsRmpcbComIi5jI1svNTsqKUZqXGwpRltdbCIjN0ZqXGxGalxsKiYiMGBBZjFeKEdJRmpcbClGW11sIiM4RmpcbEZqXGwqJiIyOyFlYiNvKzc2IkZqXGwpRltdbCIjOUZqXGxGalxsKiYiM3YkZjNRISpRKnlWRmpcbClGW11sIiM6RmpcbEZqXGw3I0ZpXGw= + + + + +R:=expand(P*Q); + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctRiQ2aG4tRi02OVEiWEYoRjBGM0Y2RjlGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmluRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZfckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUkjbW5HRiU2OVE0NjI5NzE5NDU2NzcxNTQwMTQ5MEYoRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG8tRl9vNjNRMSZJbnZpc2libGVUaW1lcztGKEZib0Zlb0Znby9Gam9RJDBlbUYoL0ZdcEZec0ZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1JJW1zdXBHRiU2JUZocS1GZHI2OVEjMjlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG8vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYoL0krbXNlbWFudGljc0dGJVEiKkYoRltyLUYkNiYtRmRyNjlRNDE4MDkwMTc2MzU1NTY1NzQ2NzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRNDIyNTgzMzU2MTk2ODY3NzAzNzhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzIwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzkxMDM4MTY2NzI5NjE3NTUyNEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MTM1OTY5OTY1MTQyNjM3NTI4N0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMThGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEiM0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USI5RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxRmZ2RmZzRmlzRltyLUYkNiYtRmRyNjlRIzQyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USI0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRJDMzMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USo0MjM2NDk1NzVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLDEwODI4NzIwODkzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMxMUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USc5Mjc0MjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIjhGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEpMTg1NzgyNTdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHFGYHdGZnNGaXNGW3ItRiQ2Ji1GZHI2OVElMzc0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiNkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5USY1MzgxNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEiN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1NDAzNTU2NzY2MzAxNTgyMDkwRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5UTQ1ODUyNzMxNzk3MTA3ODY3ODk0RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmpyLUZhczYlRmhxLUZkcjY5USMyOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zmc0Zpc0Zbci1GJDYmLUZkcjY5US0zMDY1NDU0NjI4MjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEyRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRLjk1MTgzNjI2NTMwMDdGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzEzRihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMDMyMTYwNTI4NjQzNTQ0NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NjU2ODQwODM1NTcxMjg5MDYyNUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMzBGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVEyMTE3NDU2OTkwMzU3NzU4OTlGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GanItRmFzNiVGaHEtRmRyNjlRIzE1RihGMEYzRjZGZ3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmhyRlxvRmZzRmlzRltyLUYkNiYtRmRyNjlRMzQ2MTA2MzY4MzE2NTk3NTcxMkYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMTZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MjcwNzY1MzYwMzgxNjkxOTkxOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjFGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzE1Njk3MTU4Nzk0NjM2OTgzN0YoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjJGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0MzYwNjI4OTU3MjA2MzM0MjkwOEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjNGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDA1NTYwNzU1NTkyNDIzMzY2OEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjRGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDUwNDkyNTUzMzgzODA1NDg0NEYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjVGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXNGW3ItRiQ2Ji1GZHI2OVE0NDk1NDI0MzM1NzU2MzE4MzM1NUYoRjBGM0Y2RmdyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZockZcb0Zqci1GYXM2JUZocS1GZHI2OVEjMjZGKEYwRjNGNkZnckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GaHJGXG9GZnNGaXMvRmpzUSIrRigvRmpzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoLGhuSSJYR0YoIiIiKiYiNCFcLGFyblg+KEgnRlxmbClGW2ZsIiNIRlxmbEZcZmwqJiI0eVlkY2JqPCE0PUZcZmwpRltmbCIjPkZcZmxGXGZsKiYiNHkueCdvPmNMZUFGXGZsKUZbZmwiIz9GXGZsRlxmbComIjNDYjwnSG47UTUqRlxmbClGW2ZsIiM8RlxmbEZcZmwqJiI0KEd2alVeJypwZjhGXGZsKUZbZmwiIz1GXGZsRlxmbComIiIkRlxmbClGW2ZsIiIjRlxmbEZcZmwqJiIiKkZcZmwpRltmbEZiZ2xGXGZsRlxmbComIiNVRlxmbClGW2ZsIiIlRlxmbEZcZmwqJiIkSiRGXGZsKUZbZmwiIiZGXGZsRlxmbComIip2JlxPVUZcZmwpRltmbCIjNUZcZmxGXGZsKiYiLCQqM3NHMyJGXGZsKUZbZmwiIzZGXGZsRlxmbComIidHdSMqRlxmbClGW2ZsIiIpRlxmbEZcZmwqJiIpZCN5Jj1GXGZsKUZbZmxGZmdsRlxmbEZcZmwqJiIlWFBGXGZsKUZbZmwiIidGXGZsRlxmbComIiY6USZGXGZsKUZbZmwiIihGXGZsRlxmbComIjQhNCNlLGp3Y05TJkZcZmwpRltmbCIjRkZcZmxGXGZsKiYiNCUqeSd5NSh6SkYmZUZcZmwpRltmbCIjR0ZcZmxGXGZsKiYiLUFHWVhsSUZcZmwpRltmbCIjN0ZcZmxGXGZsKiYiLjJJbGkkPSYqRlxmbClGW2ZsIiM4RlxmbEZcZmwqJiIwWGFWJ0cwO0tGXGZsKUZbZmwiIzlGXGZsRlxmbComIjREMSpHcmIkMyVvbEZcZmwpRltmbCIjSUZcZmxGXGZsKiYiMioqZXhOISpwWDwiRlxmbClGW2ZsIiM6RlxmbEZcZmwqJiIzN2QoZjskb2o1WUZcZmwpRltmbCIjO0ZcZmxGXGZsKiYiND0qPnAiUWdgd3EjRlxmbClGW2ZsIiNARlxmbEZcZmwqJiI0UClwaiV6ZXJwOiRGXGZsKUZbZmwiI0FGXGZsRlxmbComIjQzSE1qP2QqRzFPRlxmbClGW2ZsIiNCRlxmbEZcZmwqJiI0b09CQ2ZiMmMwJUZcZmwpRltmbCIjQ0ZcZmxGXGZsKiYiNFdbMFFRYERcXSVGXGZsKUZbZmwiI0RGXGZsRlxmbComIjRiTD1qdk5WVSZcRlxmbClGW2ZsIiNFRlxmbEZcZmw3I0ZqZWw= + + + + + + + +
+
+<Text-field style="Heading 3" layout="Heading 3">Algo</Text-field> + + + +P:=[seq(i,i=0..15)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJQRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5USIwRihGMEYzRjYvRjpGOEY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ24vRmpuUSdub3JtYWxGKEZcby1GanE2OUZncEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjNGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjRGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjZGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjdGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjhGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIjlGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEwRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxMUYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTJGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8tRmpxNjlRIzEzRihGMEYzRjZGXXJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl5yRlxvLUZqcTY5USMxNEYoRjBGM0Y2Rl1yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZeckZcby1GanE2OVEjMTVGKEYwRjNGNkZdckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXnJGXG8vJSVvcGVuR1EnJmxzcWI7RigvJSZjbG9zZUdRJyZyc3FiO0YoL0krbXNlbWFudGljc0dGJVEjOj1GKDcjLV9GKUksbXByaW50c2xhc2hHRig2JDcjPkkiUEdGKDcyIiIhIiIiIiIjIiIkIiIlIiImIiInIiIoIiIpIiIqIiM1IiM2IiM3IiM4IiM5IiM6NyNGXXY= + + + + +Q:=[seq(i^i,i=0..15)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJRRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjQtSSNtbkdGJTY5RmdwRjBGM0Y2L0Y6RjhGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduL0ZqblEnbm9ybWFsRihGXG9GaXEtRmpxNjlRIjRGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRIzI3RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USQyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJTMxMjVGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRJjQ2NjU2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USc4MjM1NDNGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRKTE2Nzc3MjE2RihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5USozODc0MjA0ODlGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLDEwMDAwMDAwMDAwRihGMEYzRjZGXHJGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRl1yRlxvLUZqcTY5US0yODUzMTE2NzA2MTFGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRLjg5MTYxMDA0NDgyNTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMDMwMjg3NTEwNjU5MjI1M0YoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby1GanE2OVEyMTExMTIwMDY4MjU1NTgwMTZGKEYwRjNGNkZcckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GXXJGXG8tRmpxNjlRMzQzNzg5Mzg5MDM4MDg1OTM3NUYoRjBGM0Y2RlxyRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZdckZcby8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvSSttc2VtYW50aWNzR0YlUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJRR0YoNzIiIiJGW3YiIiUiI0YiJGMjIiVESiImY20lIidWTiMpIik7c3g7IioqWz91USIsKysrKysiIi02MW42YEciLmMjWy81OyopIjBgQWYxXihHSSIyOyFlYiNvKzc2IiIzdiRmM1EhKlEqeVY3I0ZqdQ== + + + + +R:=evalf(Multiplication(P,Q)): + + + + +R:=[seq(round(R[j]),j=1..20)]; + + +NiQtSSVtcm93RzYjL0krbW9kdWxlbmFtZUc2IkksVHlwZXNldHRpbmdHSShfc3lzbGliR0YoNiYtSSNtaUdGJTY5USJSRigvJSdmYW1pbHlHUTBUaW1lc35OZXd+Um9tYW5GKC8lJXNpemVHUSMxMkYoLyUlYm9sZEdRJmZhbHNlRigvJSdpdGFsaWNHUSV0cnVlRigvJSp1bmRlcmxpbmVHRjgvJSpzdWJzY3JpcHRHRjgvJSxzdXBlcnNjcmlwdEdGOC8lK2ZvcmVncm91bmRHUSpbMCwwLDI1NV1GKC8lK2JhY2tncm91bmRHUS5bMjU1LDI1NSwyNTVdRigvJSdvcGFxdWVHRjgvJStleGVjdXRhYmxlR0Y4LyUpcmVhZG9ubHlHRjgvJSljb21wb3NlZEdGOC8lKmNvbnZlcnRlZEdGOC8lK2ltc2VsZWN0ZWRHRjgvJSxwbGFjZWhvbGRlckdGOC8lMGZvbnRfc3R5bGVfbmFtZUdRKjJEfk91dHB1dEYoLyUqbWF0aGNvbG9yR0ZELyUvbWF0aGJhY2tncm91bmRHRkcvJStmb250ZmFtaWx5R0YyLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGKC8lKW1hdGhzaXplR0Y1LUkjbW9HRiU2M1EpJkFzc2lnbjtGKC8lJWZvcm1HUSZpbmZpeEYoLyUmZmVuY2VHRjgvJSpzZXBhcmF0b3JHRjgvJSdsc3BhY2VHUS90aGlja21hdGhzcGFjZUYoLyUncnNwYWNlR0ZbcC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobWF4c2l6ZUdRKWluZmluaXR5RigvJShtaW5zaXplR1EiMUYoLyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJTBmb250X3N0eWxlX25hbWVHRlgvJSVzaXplR0Y1LyUrZm9yZWdyb3VuZEdGRC8lK2JhY2tncm91bmRHRkctSShtZmVuY2VkR0YlNjgtRiQ2Ji1JI21uR0YlNjlRKy0zMDAwMDAwMDBGKEYwRjNGNi9GOkY4RjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbi9Gam5RJ25vcm1hbEYoRlxvLUZfbzYzUScmcGx1cztGKEZib0Zlb0Znby9Gam9RMG1lZGl1bW1hdGhzcGFjZUYoL0ZdcEZmckZecEZgcEZicEZlcEZocEZqcEZccUZecUZgcUZicUZkcS1GJDYmLUZccjY5USsxMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvLUZfbzYzUTEmSW52aXNpYmxlVGltZXM7RihGYm9GZW9GZ28vRmpvUSQwZW1GKC9GXXBGYXNGXnBGYHBGYnBGZXBGaHBGanBGXHFGXnFGYHFGYnFGZHEtRlxyNjlRLSZJbWFnaW5hcnlJO0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby9JK21zZW1hbnRpY3NHRiVRIipGKC9GZ3NRIitGKC1GJDYmLUZccjY5USsyMzYwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmJyLUYkNiYtRlxyNjlRKzQwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErNTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmcy1GJDYmLUZccjY5USwtMjMwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USsyMzAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRKy05MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnJGYHRGaXMtRiQ2Ji1GXHI2OVErLTgwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USwtMTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZickZldEZpcy1GJDYmLUZccjY5USozMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErMTE0MjAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5USs0NTM3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzLUYkNiYtRlxyNjlRKzEwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNDU2ODc1MDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmRmR3RmJyLUYkNiYtRlxyNjlRKzUxNTYyNTAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVErOTAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs1Mzg3NTAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLTMwNzAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zici1GJDYmLUZccjY5USs4ODUwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRLjk1MjAwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzcwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTAzMjE2MDgwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYnItRiQ2Ji1GXHI2OVErNzY1NzUxNzk1N0YoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0Zdc0Zjc0Zmc0Zpcy1GJDYmLUZccjY5UTIxMTc0NTY5ODM1MDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcby1GX282M1EoJm1pbnVzO0YoRmJvRmVvRmdvRmVyRmdyRl5wRmBwRmJwRmVwRmhwRmpwRlxxRl5xRmBxRmJxRmRxLUYkNiYtRlxyNjlRKzIyMjQyOTM1ODlGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzNDYxMDYzNjg0MDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USo5MDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVEzOTEwMzgxNjY5MTAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRmBbbC1GJDYmLUZccjY5USsyMDAwMDAwMDAwRihGMEYzRjZGX3JGPEY+RkBGQkZFRkhGSkZMRk5GUEZSRlRGVkZZRmVuRmduRmByRlxvRl1zRmNzRmZzRmlzLUYkNiYtRlxyNjlRNDEzNTk2OTk2NTMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GYFtsLUYkNiYtRlxyNjlRKzMwMDAwMDAwMDBGKEYwRjNGNkZfckY8Rj5GQEZCRkVGSEZKRkxGTkZQRlJGVEZWRllGZW5GZ25GYHJGXG9GXXNGY3NGZnNGaXMtRiQ2Ji1GXHI2OVE0MTgwOTAxNzYzNDAwMDAwMDAwMEYoRjBGM0Y2Rl9yRjxGPkZARkJGRUZIRkpGTEZORlBGUkZURlZGWUZlbkZnbkZgckZcb0ZgW2wtRiQ2JkZldkZdc0Zjc0Zmc0Zpcy8lJW9wZW5HUScmbHNxYjtGKC8lJmNsb3NlR1EnJnJzcWI7RigvRmdzUSM6PUYoNyMtX0YpSSxtcHJpbnRzbGFzaEdGKDYkNyM+SSJSR0YoNzYsJiIqKysrKyQhIiIqJiIrKysrKzgiIiJeI0ZjX2xGY19sRmNfbCwmIisrKytnQkZjX2wqJiIrKysrK1NGY19sRmRfbEZjX2xGY19sKiYiKysrKytdRmNfbEZkX2xGY19sLCYiKysrKytCRmBfbComRlxgbEZjX2xGZF9sRmNfbEZjX2wsJiIqKysrKypGYF9sRmdfbEZjX2wsJiIqKysrKylGYF9sRmlfbEZjX2wsJiIrKysrKzVGYF9sRmlfbEZjX2wsJkZfX2xGY19sKiYiKysrK1U2RmNfbEZkX2xGY19sRmNfbComIisrK11QWEZjX2xGZF9sRmNfbCwmRmNgbEZjX2wqJiIrKyt2b1hGY19sRmRfbEZjX2xGY19sLCZGY2BsRmNfbComIisrK0RjXkZjX2xGZF9sRmNfbEZjX2wsJiIrKysrKyEqRmNfbComIisrK10oUSZGY19sRmRfbEZjX2xGY19sLCYiLSsrKytxSUZjX2wqJiIrKysrXSkpRmNfbEZkX2xGY19sRmNfbCwmIi4rKysrK18qRmNfbComIisrKysreEZjX2xGZF9sRmNfbEZjX2wsJiIwKysrKyEzO0tGY19sKiYiK2R6XmR3RmNfbEZkX2xGY19sRmNfbCwmIjIrKytdJClwWDwiRmNfbComIisqZSRIQ0FGY19sRmRfbEZjX2xGYF9sLCYiMysrKytTb2o1WUZjX2wqJkZfYGxGY19sRmRfbEZjX2xGYF9sLCYiMysrKysicDtRNSpGY19sKiYiKysrKys/RmNfbEZkX2xGY19sRmBfbCwmIjQrKysrSWwqcGY4RmNfbComIisrKysrSUZjX2xGZF9sRmNfbEZgX2wsJiI0KysrK1NqPCE0PUZjX2wqJkZfX2xGY19sRmRfbEZjX2xGYF9sNyNGXV9s + + + + + + + +
+
+
+
\ No newline at end of file -- cgit v1.2.3-70-g09d2