// ************************************************************************** //
//                                                                            //
//    eses                   eses                                             //
//   eses                     eses                                            //
//  eses    eseses  esesese    eses   Embedded Systems Group                  //
//  ese    ese  ese ese         ese                                           //
//  ese    eseseses eseseses    ese   Department of Computer Science          //
//  eses   eses          ese   eses                                           //
//   eses   eseses  eseseses  eses    University of Kaiserslautern            //
//    eses                   eses                                             //
//                                                                            //
// ************************************************************************** //


[65]int p;
int x,y;
thread EvalPolynomial {
    int t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129;
    t0 = p[0];
    t1 = p[1];
    t2 = p[2];
    t3 = p[3];
    t4 = p[4];
    t5 = p[5];
    t6 = p[6];
    t7 = p[7];
    t8 = p[8];
    t9 = p[9];
    t10 = p[10];
    t11 = p[11];
    t12 = p[12];
    t13 = p[13];
    t14 = p[14];
    t15 = p[15];
    t16 = p[16];
    t17 = p[17];
    t18 = p[18];
    t19 = p[19];
    t20 = p[20];
    t21 = p[21];
    t22 = p[22];
    t23 = p[23];
    t24 = p[24];
    t25 = p[25];
    t26 = p[26];
    t27 = p[27];
    t28 = p[28];
    t29 = p[29];
    t30 = p[30];
    t31 = p[31];
    t32 = p[32];
    t33 = p[33];
    t34 = p[34];
    t35 = p[35];
    t36 = p[36];
    t37 = p[37];
    t38 = p[38];
    t39 = p[39];
    t40 = p[40];
    t41 = p[41];
    t42 = p[42];
    t43 = p[43];
    t44 = p[44];
    t45 = p[45];
    t46 = p[46];
    t47 = p[47];
    t48 = p[48];
    t49 = p[49];
    t50 = p[50];
    t51 = p[51];
    t52 = p[52];
    t53 = p[53];
    t54 = p[54];
    t55 = p[55];
    t56 = p[56];
    t57 = p[57];
    t58 = p[58];
    t59 = p[59];
    t60 = p[60];
    t61 = p[61];
    t62 = p[62];
    t63 = p[63];
    t64 = p[64];
    t65 = +1;
    t66 = x;
    t67 = x;
    t68 = x;
    t69 = x;
    t70 = x;
    t71 = x;
    t72 = x;
    t73 = x;
    t74 = x;
    t75 = x;
    t76 = x;
    t77 = x;
    t78 = x;
    t79 = x;
    t80 = x;
    t81 = x;
    t82 = x;
    t83 = x;
    t84 = x;
    t85 = x;
    t86 = x;
    t87 = x;
    t88 = x;
    t89 = x;
    t90 = x;
    t91 = x;
    t92 = x;
    t93 = x;
    t94 = x;
    t95 = x;
    t96 = x;
    t97 = x;
    t98 = x;
    t99 = x;
    t100 = x;
    t101 = x;
    t102 = x;
    t103 = x;
    t104 = x;
    t105 = x;
    t106 = x;
    t107 = x;
    t108 = x;
    t109 = x;
    t110 = x;
    t111 = x;
    t112 = x;
    t113 = x;
    t114 = x;
    t115 = x;
    t116 = x;
    t117 = x;
    t118 = x;
    t119 = x;
    t120 = x;
    t121 = x;
    t122 = x;
    t123 = x;
    t124 = x;
    t125 = x;
    t126 = x;
    t127 = x;
    t128 = x;
    t129 = x;
    // up-level 0
    t66 = t65 * t66;
    t68 = t67 * t68;
    t70 = t69 * t70;
    t72 = t71 * t72;
    t74 = t73 * t74;
    t76 = t75 * t76;
    t78 = t77 * t78;
    t80 = t79 * t80;
    t82 = t81 * t82;
    t84 = t83 * t84;
    t86 = t85 * t86;
    t88 = t87 * t88;
    t90 = t89 * t90;
    t92 = t91 * t92;
    t94 = t93 * t94;
    t96 = t95 * t96;
    t98 = t97 * t98;
    t100 = t99 * t100;
    t102 = t101 * t102;
    t104 = t103 * t104;
    t106 = t105 * t106;
    t108 = t107 * t108;
    t110 = t109 * t110;
    t112 = t111 * t112;
    t114 = t113 * t114;
    t116 = t115 * t116;
    t118 = t117 * t118;
    t120 = t119 * t120;
    t122 = t121 * t122;
    t124 = t123 * t124;
    t126 = t125 * t126;
    t128 = t127 * t128;
    // up-level 1
    t68 = t66 * t68;
    t72 = t70 * t72;
    t76 = t74 * t76;
    t80 = t78 * t80;
    t84 = t82 * t84;
    t88 = t86 * t88;
    t92 = t90 * t92;
    t96 = t94 * t96;
    t100 = t98 * t100;
    t104 = t102 * t104;
    t108 = t106 * t108;
    t112 = t110 * t112;
    t116 = t114 * t116;
    t120 = t118 * t120;
    t124 = t122 * t124;
    t128 = t126 * t128;
    // up-level 2
    t72 = t68 * t72;
    t80 = t76 * t80;
    t88 = t84 * t88;
    t96 = t92 * t96;
    t104 = t100 * t104;
    t112 = t108 * t112;
    t120 = t116 * t120;
    t128 = t124 * t128;
    // up-level 3
    t80 = t72 * t80;
    t96 = t88 * t96;
    t112 = t104 * t112;
    t128 = t120 * t128;
    // up-level 4
    t96 = t80 * t96;
    t128 = t112 * t128;
    // up-level 5
    t128 = t96 * t128;
    // up-level 6
    // down-level 7
    // down-level 8
    t112 = t96 * t112;
    // down-level 9
    t88 = t80 * t88;
    t104 = t96 * t104;
    t120 = t112 * t120;
    // down-level 10
    t76 = t72 * t76;
    t84 = t80 * t84;
    t92 = t88 * t92;
    t100 = t96 * t100;
    t108 = t104 * t108;
    t116 = t112 * t116;
    t124 = t120 * t124;
    // down-level 11
    t70 = t68 * t70;
    t74 = t72 * t74;
    t78 = t76 * t78;
    t82 = t80 * t82;
    t86 = t84 * t86;
    t90 = t88 * t90;
    t94 = t92 * t94;
    t98 = t96 * t98;
    t102 = t100 * t102;
    t106 = t104 * t106;
    t110 = t108 * t110;
    t114 = t112 * t114;
    t118 = t116 * t118;
    t122 = t120 * t122;
    t126 = t124 * t126;
    // down-level 12
    t67 = t66 * t67;
    t69 = t68 * t69;
    t71 = t70 * t71;
    t73 = t72 * t73;
    t75 = t74 * t75;
    t77 = t76 * t77;
    t79 = t78 * t79;
    t81 = t80 * t81;
    t83 = t82 * t83;
    t85 = t84 * t85;
    t87 = t86 * t87;
    t89 = t88 * t89;
    t91 = t90 * t91;
    t93 = t92 * t93;
    t95 = t94 * t95;
    t97 = t96 * t97;
    t99 = t98 * t99;
    t101 = t100 * t101;
    t103 = t102 * t103;
    t105 = t104 * t105;
    t107 = t106 * t107;
    t109 = t108 * t109;
    t111 = t110 * t111;
    t113 = t112 * t113;
    t115 = t114 * t115;
    t117 = t116 * t117;
    t119 = t118 * t119;
    t121 = t120 * t121;
    t123 = t122 * t123;
    t125 = t124 * t125;
    t127 = t126 * t127;
    t129 = t128 * t129;
    // multiply p[i] with x^i
    t65 = t0 * t65;
    t66 = t1 * t66;
    t67 = t2 * t67;
    t68 = t3 * t68;
    t69 = t4 * t69;
    t70 = t5 * t70;
    t71 = t6 * t71;
    t72 = t7 * t72;
    t73 = t8 * t73;
    t74 = t9 * t74;
    t75 = t10 * t75;
    t76 = t11 * t76;
    t77 = t12 * t77;
    t78 = t13 * t78;
    t79 = t14 * t79;
    t80 = t15 * t80;
    t81 = t16 * t81;
    t82 = t17 * t82;
    t83 = t18 * t83;
    t84 = t19 * t84;
    t85 = t20 * t85;
    t86 = t21 * t86;
    t87 = t22 * t87;
    t88 = t23 * t88;
    t89 = t24 * t89;
    t90 = t25 * t90;
    t91 = t26 * t91;
    t92 = t27 * t92;
    t93 = t28 * t93;
    t94 = t29 * t94;
    t95 = t30 * t95;
    t96 = t31 * t96;
    t97 = t32 * t97;
    t98 = t33 * t98;
    t99 = t34 * t99;
    t100 = t35 * t100;
    t101 = t36 * t101;
    t102 = t37 * t102;
    t103 = t38 * t103;
    t104 = t39 * t104;
    t105 = t40 * t105;
    t106 = t41 * t106;
    t107 = t42 * t107;
    t108 = t43 * t108;
    t109 = t44 * t109;
    t110 = t45 * t110;
    t111 = t46 * t111;
    t112 = t47 * t112;
    t113 = t48 * t113;
    t114 = t49 * t114;
    t115 = t50 * t115;
    t116 = t51 * t116;
    t117 = t52 * t117;
    t118 = t53 * t118;
    t119 = t54 * t119;
    t120 = t55 * t120;
    t121 = t56 * t121;
    t122 = t57 * t122;
    t123 = t58 * t123;
    t124 = t59 * t124;
    t125 = t60 * t125;
    t126 = t61 * t126;
    t127 = t62 * t127;
    t128 = t63 * t128;
    t129 = t64 * t129;
    // sum up p[i]*x^i by a binary tree
    // level 0
    t65 = t65 + t66;
    t66 = t67 + t68;
    t67 = t69 + t70;
    t68 = t71 + t72;
    t69 = t73 + t74;
    t70 = t75 + t76;
    t71 = t77 + t78;
    t72 = t79 + t80;
    t73 = t81 + t82;
    t74 = t83 + t84;
    t75 = t85 + t86;
    t76 = t87 + t88;
    t77 = t89 + t90;
    t78 = t91 + t92;
    t79 = t93 + t94;
    t80 = t95 + t96;
    t81 = t97 + t98;
    t82 = t99 + t100;
    t83 = t101 + t102;
    t84 = t103 + t104;
    t85 = t105 + t106;
    t86 = t107 + t108;
    t87 = t109 + t110;
    t88 = t111 + t112;
    t89 = t113 + t114;
    t90 = t115 + t116;
    t91 = t117 + t118;
    t92 = t119 + t120;
    t93 = t121 + t122;
    t94 = t123 + t124;
    t95 = t125 + t126;
    t96 = t127 + t128;
    t97 = t129;
    // level 0
    t65 = t65 + t66;
    t66 = t67 + t68;
    t67 = t69 + t70;
    t68 = t71 + t72;
    t69 = t73 + t74;
    t70 = t75 + t76;
    t71 = t77 + t78;
    t72 = t79 + t80;
    t73 = t81 + t82;
    t74 = t83 + t84;
    t75 = t85 + t86;
    t76 = t87 + t88;
    t77 = t89 + t90;
    t78 = t91 + t92;
    t79 = t93 + t94;
    t80 = t95 + t96;
    t81 = t97;
    // level 0
    t65 = t65 + t66;
    t66 = t67 + t68;
    t67 = t69 + t70;
    t68 = t71 + t72;
    t69 = t73 + t74;
    t70 = t75 + t76;
    t71 = t77 + t78;
    t72 = t79 + t80;
    t73 = t81;
    // level 0
    t65 = t65 + t66;
    t66 = t67 + t68;
    t67 = t69 + t70;
    t68 = t71 + t72;
    t69 = t73;
    // level 0
    t65 = t65 + t66;
    t66 = t67 + t68;
    t67 = t69;
    // level 0
    t65 = t65 + t66;
    t66 = t67;
    // level 0
    t65 = t65 + t66;
    // final result
    y = t65;
    }